/* Inter — sitenin kendi sunucusundan (Google Fonts yerine) */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/inter-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
  :root{
    --bg:#FFFFFF;
    --bg-alt:#F1F6F5;
    --navy:#0B3B5C;
    --navy-ink:#08172f;
    --blue:#146FB5;
    --accent:#2E7D4F;
    --accent-light:#4FAF74;
    --text:#33404D;
    --border:#D6E3DE;
    --tbd-bg:#fdf6ef;
    --tbd-border:#d9a066;
    --tbd-label:#a5590f;
    color-scheme: light;
  }

  *{box-sizing:border-box;}
  html{-webkit-text-size-adjust:100%; text-size-adjust:100%;}
  body{
    background:var(--bg);
    color:var(--text);
    font-family:"Inter",-apple-system,"Segoe UI",sans-serif;
    font-size:16px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4{
    color:var(--navy);
    font-family:"Inter",-apple-system,"Segoe UI",sans-serif;
    font-weight:800;
    line-height:1.18;
    text-wrap:balance;
    margin:0;
  }
  p{margin:0;}
  a{color:var(--blue); text-decoration:none;}
  a:hover{text-decoration:underline;}
  img,svg{max-width:100%; display:block;}
  button{font-family:inherit; cursor:pointer;}
  ul{margin:0; padding:0; list-style:none;}
  table{border-collapse:collapse; width:100%;}
  :focus-visible{outline:3px solid var(--blue); outline-offset:2px;}
  .eyebrow{
    text-transform:uppercase; letter-spacing:.09em; font-size:.72rem; font-weight:700;
    color:var(--accent); margin:0 0 .5rem;
  }
  .wrap{max-width:1180px; margin:0 auto; padding-inline:20px;}
  .section{padding-block: clamp(2.5rem, 5vw, 4.5rem);}
  .section-alt{background:var(--bg-alt);}
  .section-head{max-width:640px; margin-bottom:2.2rem;}
  .section-head h2{font-size:clamp(1.5rem,3vw,2rem);}
  .section-head p{margin-top:.65rem; color:var(--text);}

  /* ---- placeholder / TBD marker ---- */
  .tbd{
    position:relative;
    border:1.5px dashed var(--tbd-border);
    background:var(--tbd-bg);
    border-radius:8px;
    padding:.6rem .75rem;
    color:var(--tbd-label);
    font-size:.85rem;
  }
  .tbd-inline{
    border:1.5px dashed var(--tbd-border);
    background:var(--tbd-bg);
    color:var(--tbd-label);
    border-radius:5px;
    padding:.05rem .4rem;
    font-size:.9em;
    white-space:nowrap;
  }
  .tbd::before{
    content:"YER TUTUCU";
    position:absolute; top:-.6rem; left:.6rem;
    background:var(--tbd-bg); padding:0 .4rem;
    font-size:.62rem; font-weight:800; letter-spacing:.08em;
    color:var(--tbd-label);
  }

  /* ---- buttons ---- */
  .btn{
    display:inline-flex; align-items:center; gap:.5rem;
    padding:.85rem 1.4rem; border-radius:9px; font-weight:700; font-size:.95rem;
    border:2px solid transparent; white-space:nowrap;
  }
  .btn-primary{background:var(--accent); color:#fff;}
  .btn-primary:hover{background:#ad4310; text-decoration:none;}
  .btn-secondary{background:transparent; color:var(--navy); border-color:var(--navy);}
  .btn-secondary:hover{background:var(--navy); color:#fff; text-decoration:none;}
  .btn-ghost{background:transparent; color:#fff; border-color:rgba(255,255,255,.55);}
  .btn-ghost:hover{background:rgba(255,255,255,.12); text-decoration:none;}
  .btn-sm{padding:.55rem 1rem; font-size:.85rem;}

  /* ---- icons ---- */
  .icon{width:1.1em; height:1.1em; flex:none; stroke:currentColor; fill:none; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round;}

  /* ---- topbar + header (real site chrome) ---- */
  .topbar{
    background:var(--navy); color:#dce6f2; font-size:.82rem;
    padding:.45rem 0;
  }
  .topbar .wrap{display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap;}
  .topbar-contact{display:flex; gap:1.1rem; align-items:center; flex-wrap:wrap;}
  .topbar-contact a{color:#dce6f2; display:inline-flex; align-items:center; gap:.4rem;}
  .topbar-contact a:hover{color:#fff;}
  .topbar .tbd-inline{background:#132c53; border-color:#3a5a89; color:#bcd0ea; font-size:.8rem;}

  .site-header{
    position:sticky; top:0; z-index:100;
    background:#fff; border-bottom:1px solid var(--border);
  }
  .header-inner{display:flex; align-items:center; justify-content:space-between; padding-block:.85rem; gap:1rem;}
  .logo-img{
    height:5.8rem; width:auto; display:block; border-radius:16px;
    box-shadow:0 1px 3px rgba(11,59,92,.18);
    transition:transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s ease;
  }
  a:hover > .logo-img, a:focus-visible > .logo-img{ transform:scale(1.04); box-shadow:0 6px 14px rgba(11,59,92,.24); }
  .footer-logo-img{
    height:5rem; width:auto; display:block; border-radius:14px; margin-bottom:.9rem;
    box-shadow:0 0 0 1px rgba(255,255,255,.1), 0 2px 8px rgba(0,0,0,.25);
  }
  @media (max-width:860px){ .logo-img{height:4.4rem;} }
  .nav-links{display:flex; gap:1.5rem; align-items:center;}
  .nav-links a{color:var(--navy); font-weight:600; font-size:.92rem;}
  .nav-links a:hover{color:var(--accent); text-decoration:none;}
  .nav-links a[aria-current="page"]{color:var(--accent);}
  .header-cta{display:flex; align-items:center; gap:.9rem;}
  .hamburger{display:none; background:none; border:none; color:var(--navy); padding:.3rem;}
  .mobile-menu{display:none; flex-direction:column; gap:.2rem; padding:.6rem 0 1rem; border-top:1px solid var(--border);}
  .mobile-menu.open{display:flex;}
  .mobile-menu a{color:var(--navy); font-weight:600; padding:.6rem .2rem;}

  @media (max-width:860px){
    .nav-links{display:none;}
    .header-cta .btn-secondary{display:none;}
    .hamburger{display:inline-flex;}
  }

  /* ---- hero (home) ---- */
  .hero{
    position:relative; color:#fff; overflow:hidden;
    background-size:cover; background-position:center 62%; background-repeat:no-repeat;
  }
  .hero-grid{
    display:block; max-width:640px;
    padding-block:clamp(3.2rem,9vw,6.2rem);
  }
  .hero h1{color:#fff; font-size:clamp(1.5rem,3.1vw,2.2rem);}
  .hero-sub{color:#e9f0f7; margin-top:1.05rem; max-width:46ch; font-size:1.05rem;}
  .hero-badges{display:flex; gap:.6rem; flex-wrap:wrap; margin-top:1.3rem;}
  .hero-badge{background:rgba(11,25,46,.42); border:1px solid rgba(255,255,255,.32); border-radius:99px; padding:.35rem .8rem; font-size:.78rem; font-weight:600; display:flex; align-items:center; gap:.4rem; backdrop-filter:blur(2px);}
  .hero-cta-group{display:flex; gap:.8rem; flex-wrap:wrap; margin-top:1.7rem;}
  .hero-caption{position:absolute; right:1.1rem; bottom:.9rem; font-size:.72rem; color:rgba(255,255,255,.75); background:rgba(8,17,31,.4); padding:.3rem .7rem; border-radius:99px; backdrop-filter:blur(2px);}
  .hero-logo-overlay{
    /* safe default: flows normally with the text, cannot overlap it regardless of
       screen size, font metrics, or how a page embed reports viewport width */
    display:block; height:4.4rem; width:auto; margin:0 0 1.1rem;
    border-radius:14px; box-shadow:0 8px 22px rgba(0,0,0,.35);
  }
  @media (min-width:861px) and (pointer:fine){
    /* only escalate to the floating overlay for a real desktop/laptop (wide screen
       AND a mouse-precision pointer) — a touchscreen phone keeps the safe flow layout
       above even if something mis-reports its viewport width as wide */
    .hero-logo-overlay{
      position:absolute; left:3.2rem; top:6.26rem; height:17.24rem; width:auto; margin:0;
      border-radius:18px;
    }
  }
  @media (max-width:860px){
    .hero-grid{max-width:100%;}
    .hero-caption{left:1.1rem; right:1.1rem; text-align:center; bottom:.6rem;}
  }

  /* ---- solution cards ---- */
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:1.15rem;}
  .grid-2{display:grid; grid-template-columns:repeat(2,1fr); gap:1.15rem;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:1.1rem;}
  .grid-6{display:grid; grid-template-columns:repeat(6,1fr); gap:1rem;}
  @media (max-width:940px){ .grid-3,.grid-4{grid-template-columns:repeat(2,1fr);} .grid-6{grid-template-columns:repeat(3,1fr);} }
  @media (max-width:560px){ .grid-2,.grid-3,.grid-4,.grid-6{grid-template-columns:1fr;} }

  .card{
    background:#fff; border:1px solid var(--border); border-radius:12px;
    padding:1.4rem; display:flex; flex-direction:column; gap:.7rem; height:100%;
  }
  .card .ic-badge{
    width:2.5rem; height:2.5rem; border-radius:9px; background:var(--bg-alt); color:var(--blue);
    display:flex; align-items:center; justify-content:center; flex:none;
  }
  .card h3{font-size:1.02rem;}
  .card p{color:var(--text); font-size:.92rem;}
  .card .card-link{margin-top:auto; font-weight:700; font-size:.86rem; display:inline-flex; align-items:center; gap:.3rem;}

  /* image header on a card (illustration, not a photo) */
  .card-media{
    aspect-ratio:16/10; margin:-1.4rem -1.4rem .3rem;
    background:linear-gradient(160deg,var(--bg-alt) 0%,#e3f1ec 100%);
    border-radius:12px 12px 0 0; display:flex; align-items:center; justify-content:center; overflow:hidden;
  }
  .card-media svg{width:62%; height:62%;}

  /* unified "photo needed" placeholder slot */
  .placeholder-photo{
    aspect-ratio:4/3; border:1.5px dashed var(--tbd-border); background:var(--tbd-bg); border-radius:10px;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.55rem;
    color:var(--tbd-label); text-align:center; padding:.9rem;
  }
  .placeholder-photo svg{width:2.3rem; height:2.3rem; opacity:.9;}
  .placeholder-photo span{font-size:.72rem; font-weight:700; max-width:24ch; line-height:1.35;}

  .need-card{align-items:flex-start; text-align:left;}
  .need-card .ic-badge{background:#e6f4ea; color:var(--accent);}

  /* ---- featured products (scroll) ---- */
  .scroll-row{display:flex; gap:1.1rem; overflow-x:auto; padding-bottom:.6rem; scroll-snap-type:x proximity;}
  .scroll-row::-webkit-scrollbar{height:8px;}
  .scroll-row::-webkit-scrollbar-thumb{background:var(--border); border-radius:99px;}
  .product-card{
    flex:0 0 240px; scroll-snap-align:start; background:#fff; border:1px solid var(--border);
    border-radius:12px; overflow:hidden; display:flex; flex-direction:column;
  }
  .product-thumb{aspect-ratio:4/3; background:linear-gradient(160deg,var(--bg-alt) 0%,#e3f1ec 100%); display:flex; align-items:center; justify-content:center; color:var(--blue); border-bottom:1px solid var(--border);}
  .product-thumb svg{width:62%;}
  .product-card .pc-body{padding:1rem; display:flex; flex-direction:column; gap:.35rem; flex:1;}
  .product-card h4{font-size:.95rem;}
  .product-card p{font-size:.83rem; color:var(--text);}
  .product-card .card-link{margin-top:auto; font-size:.82rem; font-weight:700;}

  /* ---- process timeline ---- */
  .process-row{display:grid; grid-template-columns:repeat(6,1fr); gap:0; position:relative;}
  .process-row::before{
    content:""; position:absolute; top:1.35rem; left:8%; right:8%; height:2px; background:var(--border);
  }
  .process-step{position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; gap:.65rem; padding-inline:.4rem;}
  .process-step .num{
    width:2.7rem; height:2.7rem; border-radius:50%; background:var(--navy); color:#fff;
    display:flex; align-items:center; justify-content:center; font-weight:800; position:relative; z-index:1;
    font-variant-numeric:tabular-nums;
  }
  .process-step h4{font-size:.86rem;}
  @media (max-width:860px){
    .process-row{grid-template-columns:1fr; gap:1.4rem;}
    .process-row::before{display:none;}
    .process-step{flex-direction:row; text-align:left;}
  }

  /* ---- projects ---- */
  .project-card{border:1px solid var(--border); border-radius:12px; overflow:hidden; background:#fff;}
  .project-card .placeholder-photo{border-radius:0; border-width:0 0 1px; aspect-ratio:4/3;}
  .project-card .pj-body{padding:1rem;}
  .project-card h4{font-size:.95rem; margin-bottom:.25rem;}
  .project-card p{font-size:.82rem; color:var(--text);}

  /* ---- trust ---- */
  .trust-item{display:flex; gap:.9rem; align-items:flex-start;}
  .trust-item .ic-badge{background:var(--bg-alt); color:var(--navy);}
  .trust-item h4{font-size:.98rem; margin-bottom:.3rem;}
  .trust-item p{font-size:.88rem; color:var(--text);}

  /* ---- CTA band ---- */
  .cta-band{background:var(--navy); color:#fff;}
  .cta-band-inner{display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap; padding-block:2.4rem;}
  .cta-band h2{color:#fff; font-size:1.5rem;}
  .cta-band p{color:#c8d5e6; margin-top:.4rem;}
  .mini-form{display:flex; gap:.6rem; flex-wrap:wrap; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.2); padding:1rem; border-radius:12px; flex:1; min-width:280px; max-width:480px;}
  .mini-form input,.mini-form textarea{
    flex:1; min-width:150px; background:rgba(255,255,255,.95); border:1px solid transparent; border-radius:7px;
    padding:.6rem .7rem; font:inherit; color:var(--text);
  }
  .mini-form .full{flex-basis:100%;}

  /* ---- FAQ ---- */
  .faq{border:1px solid var(--border); border-radius:10px; overflow:hidden; margin-bottom:.7rem; background:#fff;}
  .faq summary{
    padding:1rem 1.2rem; font-weight:700; color:var(--navy); cursor:pointer; list-style:none;
    display:flex; justify-content:space-between; align-items:center; gap:1rem; font-size:.95rem;
  }
  .faq summary::-webkit-details-marker{display:none;}
  .faq summary::after{content:"+"; font-size:1.3rem; color:var(--accent); font-weight:400; flex:none;}
  .faq[open] summary::after{content:"–";}
  .faq .faq-a{padding:0 1.2rem 1.1rem; color:var(--text); font-size:.92rem; max-width:70ch;}

  /* ---- regions ---- */
  .region-list{display:flex; flex-wrap:wrap; gap:.7rem;}
  .region-pill{
    display:flex; align-items:center; gap:.4rem; background:#fff; border:1px solid var(--border);
    padding:.55rem 1rem; border-radius:99px; font-weight:600; font-size:.88rem; color:var(--navy);
  }
  .region-pill.primary{background:var(--navy); color:#fff; border-color:var(--navy);}
  .region-pill .icon{color:var(--accent); width:1em; height:1em;}
  .region-pill.primary .icon{color:#ffcb9e;}

  /* ---- footer ---- */
  .site-footer{background:var(--navy); color:#c7d3e2; padding-block:3rem 1.2rem;}
  .footer-grid{display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr; gap:2rem;}
  .footer-grid h5{color:#fff; font-size:.85rem; letter-spacing:.05em; text-transform:uppercase; margin-bottom:.9rem;}
  .footer-grid a{color:#c7d3e2; font-size:.9rem; display:block; margin-bottom:.55rem;}
  .footer-grid a:hover{color:#fff;}
  .footer-grid p{font-size:.88rem; margin-bottom:.55rem; color:#c7d3e2;}
  .footer-bottom{border-top:1px solid #1c3a63; margin-top:2.2rem; padding-top:1.2rem; display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; font-size:.8rem; color:#8fa3c0;}
  @media (max-width:860px){ .footer-grid{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .footer-grid{grid-template-columns:1fr;} }

  /* mobile sticky bar */
  .mobile-sticky{
    display:none; position:fixed; bottom:0; left:0; right:0; z-index:150;
    background:#fff; border-top:1px solid var(--border); padding:.6rem .8rem;
    gap:.6rem; box-shadow:0 -4px 14px rgba(11,36,71,.12);
  }
  .mobile-sticky a{flex:1; text-align:center; justify-content:center;}
  @media (max-width:640px){ .mobile-sticky{display:flex;} .page{padding-bottom:4.2rem;} }

  /* ===== inner pages (product / service / project / doc) ===== */
  .page-hero{background:var(--bg-alt); border-bottom:1px solid var(--border);}
  .page-hero-inner{padding-block:2.2rem 2rem;}
  .breadcrumb{display:flex; gap:.4rem; flex-wrap:wrap; font-size:.82rem; color:var(--blue); margin-bottom:.9rem;}
  .breadcrumb span{color:#8b98a6;}
  .page-hero h1{font-size:clamp(1.5rem,3vw,2.1rem); max-width:34ch;}
  .page-hero .lede{margin-top:.8rem; max-width:64ch; color:var(--text); font-size:1.02rem;}
  .page-hero-grid{display:grid; grid-template-columns:1.4fr .8fr; gap:2rem; align-items:center;}
  .page-hero-illus{
    background:linear-gradient(160deg,#fff 0%,#e3f1ec 100%); border:1px solid var(--border);
    border-radius:14px; padding:1.4rem; display:flex; align-items:center; justify-content:center;
  }
  .page-hero-illus svg{width:100%; max-width:210px;}
  @media (max-width:760px){ .page-hero-grid{grid-template-columns:1fr;} .page-hero-illus{max-width:220px; margin-inline:auto;} }

  .content-layout{display:grid; grid-template-columns:2fr 1fr; gap:2.5rem; align-items:start;}
  @media (max-width:900px){ .content-layout{grid-template-columns:1fr;} }

  .prose h3{font-size:1.15rem; margin-bottom:.7rem;}
  .prose h3 + p, .block + .block{margin-top:.3rem;}
  .block{margin-bottom:2.1rem;}
  .prose p{color:var(--text);}
  .check-list li{display:flex; gap:.6rem; padding:.4rem 0; font-size:.94rem; color:var(--text); align-items:flex-start;}
  .check-list .icon{color:var(--accent); margin-top:.2rem;}
  .ref-list li{font-size:.82rem; padding:.32rem 0 .32rem 1.5rem; border-bottom:1px dashed var(--border); position:relative;}
  .ref-list li:last-child{border-bottom:none;}
  .ref-list li::before{content:"\2713"; position:absolute; left:0; top:.32rem; color:var(--accent); font-weight:700;}
  .ref-list .icon{width:.9em; height:.9em; flex-shrink:0;}

  .spec-table th,.spec-table td{border:1px solid var(--border); padding:.7rem .8rem; text-align:left; font-size:.88rem;}
  .spec-table th{background:var(--bg-alt); color:var(--navy); width:40%;}
  .spec-table-wrap{overflow-x:auto; border-radius:10px;}

  .safety-box{
    background:#eaf6ee; border:1px solid #bfe0c8; border-left:4px solid var(--accent); border-radius:8px;
    padding:1rem 1.1rem; font-size:.9rem; color:#5c3a1a;
  }
  .safety-box strong{color:#3f2711;}

  .sidebar-card{border:1px solid var(--border); border-radius:12px; padding:1.2rem; background:#fff; margin-bottom:1.3rem;}
  .sidebar-card h4{font-size:.95rem; margin-bottom:.9rem;}
  .sidebar-card .form-field{display:flex; flex-direction:column; gap:.3rem; margin-bottom:.85rem;}
  .sidebar-card label{font-size:.78rem; font-weight:700; color:var(--navy);}
  .sidebar-card input,.sidebar-card textarea,.sidebar-card select{
    border:1px solid var(--border); border-radius:7px; padding:.6rem .7rem; font:inherit; color:var(--text);
  }
  .sidebar-card .btn{width:100%; justify-content:center;}
  .form-note{font-size:.74rem; color:#8b98a6; margin-top:.6rem;}

  .gallery-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:.9rem;}
  .gallery-photo{aspect-ratio:4/3; border-radius:10px; overflow:hidden; border:1px solid var(--border);}
  .gallery-photo img{width:100%; height:100%; object-fit:cover; display:block;}

  .related-list a{display:flex; align-items:center; gap:.5rem; font-weight:700; font-size:.88rem; padding:.6rem 0; border-bottom:1px solid var(--border);}
  .related-list a:last-child{border-bottom:none;}

  .summary-box{border:1px solid var(--border); border-radius:10px; overflow:hidden;}
  .summary-box .row{display:flex; justify-content:space-between; gap:1rem; padding:.65rem 1rem; font-size:.88rem;}
  .summary-box .row:nth-child(odd){background:var(--bg-alt);}
  .summary-box .row span:first-child{color:#66727d; font-weight:600;}
  .summary-box .row span:last-child{text-align:right; color:var(--navy); font-weight:700;}

  .doc-download{
    display:flex; align-items:center; gap:1rem; background:var(--bg-alt); border:1px solid var(--border);
    border-radius:12px; padding:1.1rem 1.3rem; margin-top:1.2rem;
  }
  .doc-download .icon-wrap{width:2.8rem; height:2.8rem; border-radius:9px; background:#fff; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; color:var(--accent); flex:none;}
  .doc-download .dd-meta{font-size:.78rem; color:#66727d; margin-top:.15rem;}

/* Harita kutusu (Google Haritalar yerine hafif bağlantı) */
.map-facade{display:flex;align-items:center;justify-content:center;gap:.6rem;height:150px;padding:0 1rem;background:linear-gradient(135deg,#123a5c,#0e2c46);color:#c7d3e2;font-size:.88rem;line-height:1.35;text-align:left;border-radius:inherit}
.map-facade b{color:#fff;font-weight:600}
a:hover > .map-facade{background:linear-gradient(135deg,#17507d,#123a5c)}

/* TekyöN ek stiller — 2026-09-28 (panjur markaları, harici alıcılar, garanti, kış bakımı, blog) */
.brand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.7rem;margin-top:.9rem}
.brand-tile{border:1px solid var(--border);border-radius:10px;background:var(--bg-alt);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.25rem}
.brand-tile strong{font-size:1.15rem;color:var(--navy);font-weight:800;letter-spacing:.01em}
.brand-tile span{font-size:.78rem;color:#66727d}
.rx-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1rem 0 .6rem}
.rx-grid-2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.rx-card{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.rx-thumb{aspect-ratio:4/3;background:#fff;border-bottom:1px solid var(--border)}
.rx-thumb img{width:100%;height:100%;object-fit:contain;display:block}
.rx-body{padding:1rem;display:flex;flex-direction:column;gap:.35rem}
.rx-model{font-size:.72rem;font-weight:700;letter-spacing:.08em;color:var(--accent);margin:0}
.rx-body h4{font-size:.98rem;color:var(--navy)}
.rx-body p{font-size:.85rem;color:var(--text)}
.rx-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.2rem}
.rx-tags span{font-size:.72rem;border:1px solid var(--border);border-radius:999px;padding:.15rem .55rem;color:#66727d}
.warranty-box{display:flex;gap:1.2rem;align-items:flex-start;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:10px;padding:1.2rem;background:var(--bg-alt)}
.warranty-seal{flex:none;width:5rem;height:5rem;border-radius:50%;border:3px solid var(--accent);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--accent);line-height:1}
.warranty-seal strong{font-size:2rem;font-weight:800}
.warranty-seal span{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.warranty-box h3{margin-bottom:.4rem}
@media (max-width:560px){.warranty-box{flex-direction:column}}
.kb-grid .card h3{font-size:1rem;color:var(--navy)}
.kb-grid .check-list li{font-size:.88rem}
.post-body h2{font-size:1.25rem;color:var(--navy);margin:1.6rem 0 .6rem}
.post-body p{margin:0 0 .9rem}
.post-list{margin:0 0 1rem;padding-left:1.2rem}
.post-list li{margin-bottom:.4rem}
.post-list li::marker{color:var(--accent)}
.post-table{width:100%;border-collapse:collapse;min-width:520px}
.post-table th{width:auto}
.post-body .spec-table-wrap{margin:0 0 1rem;border:1px solid var(--border)}
.post-cta{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;background:var(--bg-alt);border:1px solid var(--border);border-radius:10px;padding:1rem 1.1rem;margin-top:1.4rem}
.post-cta p{flex:1 1 100%;margin:0;font-weight:600;color:var(--navy)}
/* 2026-09-28 düzeltme: mobilde yatay taşma */
.content-layout>*{min-width:0}
@media (max-width:760px){.process-row{grid-template-columns:1fr!important}}

/* 2026-10-10: içerik ızgarası mobilde taşmasın */
@media (max-width:900px){.content-layout{grid-template-columns:minmax(0,1fr)}}
.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.placeholder-photo{min-width:0}

/* ---- Teklif formu (2026-10-10) ---- */
.quote-form{display:flex;flex-direction:column;gap:1.4rem}
.q-step{border:1px solid var(--border);border-radius:14px;padding:1.2rem 1.2rem 1.3rem;margin:0;background:#fff;min-width:0}
.q-step legend{display:flex;align-items:center;gap:.6rem;font-weight:800;color:var(--navy);font-size:1.05rem;padding:0 .4rem}
.q-num{display:inline-grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--accent);color:#fff;font-size:.85rem;font-weight:800}
.q-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem}
.q-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:640px){.q-grid,.q-grid-3{grid-template-columns:minmax(0,1fr)}}
.quote-form .form-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}
.quote-form label{font-weight:600;color:var(--navy);font-size:.9rem}
.quote-form label b,.q-consent b{color:#c0392b}
.q-opt{font-weight:400;color:#7a8794;font-size:.8rem}
.quote-form input[type=text],.quote-form input[type=tel],.quote-form input[type=number],.quote-form select,.quote-form textarea{width:100%;font:inherit;font-size:1rem;padding:.7rem .8rem;border:1.5px solid var(--border);border-radius:10px;background:#fff;color:var(--text);min-height:46px}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,111,181,.15)}
.quote-form .is-invalid{border-color:#c0392b!important;background:#fff6f5}
.q-help{font-size:.88rem;color:#5d6b78;margin:0 0 .9rem}
.q-unit{position:relative}
.q-unit input{padding-right:3rem}
.q-unit span{position:absolute;right:.9rem;top:50%;transform:translateY(-50%);color:#7a8794;font-weight:600;pointer-events:none}
.q-measure{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1rem;align-items:center;background:var(--bg-alt);border-radius:12px;padding:1rem;margin:1rem 0}
.q-measure svg{width:100%;height:auto}
.q-measure p{font-size:.86rem;margin:0}
@media (max-width:640px){.q-measure{grid-template-columns:minmax(0,1fr)}}
.q-upload{position:relative;display:block;border:2px dashed #b9cbd8;border-radius:12px;background:var(--bg-alt);min-height:150px;cursor:pointer;overflow:hidden;transition:border-color .15s}
.q-upload:hover{border-color:var(--blue)}
.q-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.q-upload-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;min-height:150px;padding:1rem;text-align:center;color:var(--navy)}
.q-upload-empty svg{width:34px;height:34px;color:var(--blue)}
.q-upload-empty small{color:#7a8794;font-weight:400}
.q-preview{display:block;width:100%;height:190px;object-fit:cover}
.q-upload.has-file{border-style:solid;border-color:var(--accent)}
.q-upload.is-busy{opacity:.6}
.q-remove{position:absolute;top:.5rem;right:.5rem;z-index:2;width:34px;height:34px;border-radius:50%;border:0;background:rgba(8,23,47,.75);color:#fff;font-size:1.3rem;line-height:1}
.q-choice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
@media (max-width:640px){.q-choice{grid-template-columns:minmax(0,1fr)}}
.q-choice label{display:flex;gap:.6rem;align-items:flex-start;border:1.5px solid var(--border);border-radius:10px;padding:.75rem .8rem;cursor:pointer;font-weight:400}
.q-choice label:has(input:checked){border-color:var(--accent);background:#f1f8f3}
.q-choice input{margin-top:.25rem;accent-color:var(--accent);width:18px;height:18px;flex:none}
.q-choice span{display:flex;flex-direction:column}
.q-choice small{color:#7a8794;font-size:.8rem}
.q-brand{margin-top:1rem}
.q-concrete{margin-top:1.3rem}
.q-concrete .q-help{margin:.1rem 0 .5rem}
.q-consent{display:flex;gap:.6rem;align-items:flex-start;margin-top:1rem;font-weight:400!important;font-size:.88rem!important}
.q-consent input{width:20px;height:20px;margin-top:.1rem;accent-color:var(--accent);flex:none}
.q-error{background:#fff1ef;border:1px solid #f0b4ab;color:#9b2c1f;border-radius:10px;padding:.8rem 1rem;font-size:.92rem}
.q-submit{justify-content:center;font-size:1.05rem;padding:1rem 1.4rem;width:100%}
.q-submit[disabled]{opacity:.7;cursor:wait}
.q-done{border:1px solid var(--border);border-radius:14px;padding:1.5rem;background:#f1f8f3}
.q-done h3{margin-bottom:.5rem}
.q-how{margin:0;padding-left:1.2rem;list-style:decimal;display:grid;gap:.45rem;font-size:.9rem}
.quote-form [hidden],.q-done[hidden],.quote-form[hidden]{display:none!important}
.q-choice label b{color:var(--navy)}
.q-upload-empty b{color:var(--navy)}
.q-yaya{margin-top:1.2rem}
.q-yaya-width{margin-top:.8rem}
.q-choice strong{color:var(--navy)}
.q-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.q-actions{display:grid;grid-template-columns:2fr 1fr;gap:.7rem}
@media (max-width:640px){.q-actions{grid-template-columns:minmax(0,1fr)}}
.q-actions .btn{justify-content:center;font-size:1.02rem;padding:1rem 1.2rem;width:100%}
.q-actions .btn[disabled]{opacity:.65;cursor:wait}
.q-done-icon{width:52px;height:52px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;margin-bottom:.8rem}
.q-done-icon svg{width:30px;height:30px}
.q-done p{margin:.4rem 0}
.q-no{font-size:1.15rem;letter-spacing:.03em;color:var(--navy)}
.quote-form .q-upload-empty b,.quote-form .q-choice b{color:var(--navy)}
