:root{
    --warm-white:#F7F5F0;
    --sand-beige:#E6E0D3;
    --stone:#C8C2B4;
    --sage:#A6AE9A;
    --olive:#6B7057;
    --deep-olive:#3E4636;
    --deep-olive-2:#31392f;
    --terracotta:#C47A5A;
    --charcoal:#2B2B2B;

    --serif:'Cormorant Garamond', serif;
    --sans:'Montserrat', sans-serif;

    --container: 1180px;
    --edge: 6vw;
  }

  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;overflow-x:hidden;width:100%;}
  body{
    font-family:var(--sans);
    color:var(--charcoal);
    background:var(--warm-white);
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;}
  button{font-family:inherit;cursor:pointer;}

  .eyebrow{
    font-family:var(--sans);
    font-size:11px;
    letter-spacing:.28em;
    text-transform:uppercase;
    font-weight:600;
    color:var(--olive);
  }
  .eyebrow.light{color:var(--sand-beige);}

  h1,h2,h3{
    font-family:var(--serif);
    font-weight:500;
    line-height:1.08;
    color:var(--deep-olive);
    letter-spacing:.01em;
  }

  .rule{
    display:flex;align-items:center;gap:14px;
    color:var(--stone);
  }
  .rule::before,.rule::after{content:'';flex:1;height:1px;background:currentColor;opacity:.5;}
  .rule-dot{width:5px;height:5px;border-radius:50%;background:var(--terracotta);flex:none;}

  /* ---------- Olive-ring signature motif ---------- */
  .ring-mark{
    width:38px;height:38px;
    border:1px solid var(--olive);
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    flex:none;
  }
  .ring-mark svg{width:20px;height:20px;}
  .arc-divider{
    width:64px;height:64px;
    margin:0 auto;
    opacity:.85;
  }

  /* ---------- Layout helpers ---------- */
  .wrap{max-width:var(--container);margin:0 auto;padding:0 var(--edge);}
  section{position:relative;}
  .reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease, transform .9s ease;}
  .reveal.in{opacity:1;transform:translateY(0);}

  /* ---------- Nav ---------- */
  header{
    position:fixed;top:0;left:0;right:0;z-index:100;
    display:flex;align-items:center;justify-content:space-between;
    padding:16px var(--edge);
    background:linear-gradient(180deg, rgba(20,23,15,.62) 0%, rgba(20,23,15,.34) 75%, rgba(20,23,15,0) 100%);
    backdrop-filter:blur(3px);
    transition:background .4s ease, padding .4s ease, box-shadow .4s ease, backdrop-filter .4s ease;
  }
  header.solid{
    background:rgba(247,245,240,.96);
    backdrop-filter:blur(10px);
    box-shadow:0 1px 0 rgba(43,43,43,.08), 0 8px 24px rgba(43,43,43,.06);
    padding:12px var(--edge);
  }
  .brand{display:flex;align-items:center;gap:10px;}
  .brand img{width:34px;height:34px;object-fit:contain;border-radius:50%;}
  .brand-text{font-family:var(--serif);font-size:19px;letter-spacing:.12em;color:var(--warm-white);line-height:1;}
  header.solid .brand-text{color:var(--deep-olive);}
  .brand-text span{display:block;font-family:var(--sans);font-size:8px;letter-spacing:.3em;font-weight:600;margin-top:3px;color:var(--sand-beige);}
  header.solid .brand-text span{color:var(--olive);}

  nav.links{display:none;gap:20px;align-items:center;}
  nav.links a{
    font-size:11px;letter-spacing:.11em;text-transform:uppercase;font-weight:600;
    color:var(--warm-white);
    padding-bottom:3px;border-bottom:1px solid transparent;
    transition:border-color .3s;
    white-space:nowrap;
  }
  header.solid nav.links a{color:var(--deep-olive);}
  nav.links a:hover{border-color:var(--terracotta);}

  .btn{
    display:inline-flex;align-items:center;gap:10px;
    font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;
    padding:14px 26px;border-radius:2px;
    border:1px solid var(--terracotta);
    background:var(--terracotta);color:var(--warm-white);
    transition:background .3s,color .3s,border-color .3s,transform .3s,box-shadow .3s;
    white-space:nowrap;
    box-shadow:0 6px 20px rgba(0,0,0,.28);
  }
  .btn:hover{background:transparent;color:var(--terracotta);}
  .btn.ghost{background:rgba(12,14,8,.38);color:var(--warm-white);border-color:rgba(247,245,240,.6);backdrop-filter:blur(6px);}
  .btn.ghost:hover{border-color:var(--warm-white);background:rgba(12,14,8,.55);}
  .btn.nav-cta{
    background:transparent;
    border:1px solid rgba(247,245,240,.55);
    color:var(--warm-white);
    padding:11px 22px;
    box-shadow:none;
  }
  .btn.nav-cta:hover{background:rgba(247,245,240,.12);border-color:var(--warm-white);color:var(--warm-white);}
  header.solid .btn.nav-cta{border-color:var(--deep-olive);color:var(--deep-olive);}
  header.solid .btn.nav-cta:hover{background:rgba(62,70,54,.08);}

  .burger{
    display:flex;flex-direction:column;gap:5px;
    width:26px;background:none;border:none;padding:6px;
  }
  .burger span{height:1px;background:var(--warm-white);display:block;transition:.3s;}
  header.solid .burger span{background:var(--deep-olive);}

  .mobile-menu{
    position:fixed;inset:0;background:var(--deep-olive);z-index:99;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;
    transform:translateY(-100%);transition:transform .5s cubic-bezier(.6,0,.2,1);
  }
  .mobile-menu.open{transform:translateY(0);}
  .mobile-menu a{font-family:var(--serif);font-size:28px;color:var(--warm-white);}
  .mobile-menu .btn{margin-top:10px;}

  /* ---------- Hero ---------- */
  .hero{
    height:100svh;min-height:560px;
    position:relative;
    display:flex;align-items:flex-end;
    color:var(--warm-white);
    overflow:hidden;
  }
  .hero-media{position:absolute;inset:0;overflow:hidden;}
  .hero-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);animation:heroZoom 16s ease-out forwards;}
  @keyframes heroZoom{to{transform:scale(1);}}
  .hero-media::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(180deg, rgba(18,20,13,.42) 0%, rgba(18,20,13,.32) 30%, rgba(16,18,11,.94) 100%);
  }
  .hero-content{position:relative;z-index:2;padding:0 var(--edge) 64px;width:100%;}
  .hero-content::before{
    content:'';
    position:absolute;
    left:calc(-1 * var(--edge));right:-10%;bottom:-20px;top:-40px;
    background:radial-gradient(60% 100% at 0% 100%, rgba(10,12,7,.55) 0%, rgba(10,12,7,.28) 45%, rgba(10,12,7,0) 75%);
    z-index:-1;
    pointer-events:none;
  }
  .hero-content .eyebrow{margin-bottom:18px;display:flex;align-items:center;gap:12px;text-shadow:0 2px 12px rgba(0,0,0,.55);}
  .hero-content h1{
    font-size:clamp(38px,9vw,84px);
    max-width:14ch;
    font-weight:400;
    margin-bottom:20px;
    color:var(--warm-white);
    text-shadow:0 4px 28px rgba(0,0,0,.6), 0 1px 3px rgba(0,0,0,.5);
  }
  .hero-content p{
    font-size:15px;line-height:1.7;max-width:38ch;color:rgba(247,245,240,.95);
    margin-bottom:32px;font-weight:300;
    text-shadow:0 2px 16px rgba(0,0,0,.65);
  }
  .hero-cta{display:flex;flex-wrap:wrap;gap:14px;}
  .scroll-cue{
    position:absolute;right:var(--edge);bottom:34px;z-index:2;
    display:none;flex-direction:column;align-items:center;gap:10px;
    color:var(--warm-white);opacity:.75;
  }
  .scroll-cue .line{width:1px;height:46px;background:currentColor;overflow:hidden;position:relative;}
  .scroll-cue .line::after{content:'';position:absolute;top:-100%;left:0;width:100%;height:100%;background:var(--terracotta);animation:scrollLine 2.2s ease-in-out infinite;}
  @keyframes scrollLine{0%{top:-100%;}50%{top:0;}100%{top:100%;}}
  .scroll-cue span{font-size:10px;letter-spacing:.25em;text-transform:uppercase;writing-mode:vertical-rl;}

  /* ---------- Intro ---------- */
  .intro{padding:100px 0 80px;background:var(--warm-white);}
  .intro-grid{display:grid;gap:40px;align-items:start;}
  .intro-lead h2{font-size:clamp(28px,5.4vw,42px);font-weight:400;margin:14px 0 0;}
  .intro-body{padding-top:0;}
  .intro-copy{font-size:16.5px;line-height:1.9;color:#4b4f45;font-weight:300;}
  .stat-row{
    margin-top:36px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
    border-top:1px solid var(--stone);padding-top:26px;
  }
  .stat-row div{border-left:1px solid var(--stone);padding-left:16px;}
  .stat-row strong{display:block;font-family:var(--serif);font-size:clamp(22px,4vw,34px);color:var(--deep-olive);font-weight:500;}
  .stat-row small{font-size:10.5px;letter-spacing:.08em;color:var(--olive);text-transform:uppercase;font-weight:600;}

  /* ---------- Section headers ---------- */
  .section-head{text-align:center;max-width:640px;margin:0 auto 56px;}
  .section-head h2{font-size:clamp(30px,6vw,48px);font-weight:400;margin-top:14px;}
  .section-head p{margin-top:16px;font-size:14.5px;color:#5b5f52;line-height:1.8;font-weight:300;}
  .section-eyebrow{display:flex;align-items:center;justify-content:center;gap:14px;}

  /* ---------- Features ---------- */
  .features{padding:90px 0;background:var(--sand-beige);}
  .spec-grid{display:grid;grid-template-columns:1fr;gap:20px;}
  .spec-card{
    background:var(--warm-white);border:1px solid var(--stone);border-radius:2px;
    padding:32px 28px;
  }
  .spec-card h3{font-family:var(--serif);font-size:24px;font-weight:500;color:var(--deep-olive);margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--stone);}
  .spec-card ul{display:flex;flex-direction:column;gap:11px;}
  .spec-card li{font-size:13.5px;color:#4b4f45;font-weight:300;padding-left:18px;position:relative;}
  .spec-card li::before{content:'';position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--terracotta);}
  .spec-card li b{color:var(--deep-olive);font-weight:600;}

  /* ---------- Konut tipleri ---------- */
  .types{padding:100px 0;background:var(--warm-white);}
  .type-cards{display:grid;grid-template-columns:1fr;gap:26px;}
  .type-card{
    position:relative;border-radius:2px;overflow:hidden;
    aspect-ratio:4/5;
    display:flex;align-items:flex-end;
  }
  .type-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s ease;}
  .type-card:hover img{transform:scale(1.06);}

  /* ---------- Kat Planları ---------- */
  .floorplans{padding:90px 0 100px;background:var(--sand-beige);}
  .fp-tabs{
    display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:36px;
  }
  .fp-tab{
    background:transparent;border:1px solid var(--stone);color:var(--deep-olive);
    padding:11px 20px;border-radius:2px;
    font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;
    transition:background .3s,border-color .3s,color .3s;
  }
  .fp-tab:hover{border-color:var(--olive);}
  .fp-tab.active{background:var(--deep-olive);border-color:var(--deep-olive);color:var(--warm-white);}
  .fp-panel{display:none;grid-template-columns:1fr;gap:20px;}
  .fp-panel.active{display:grid;}
  .fp-card{
    position:relative;border:1px solid var(--stone);border-radius:2px;overflow:hidden;
    background:var(--warm-white);text-align:left;padding:0;
  }
  .fp-card img{width:100%;height:auto;display:block;transition:transform .5s ease;}
  .fp-card:hover img{transform:scale(1.03);}
  .fp-card span{
    position:absolute;top:14px;left:14px;
    background:rgba(20,23,15,.75);color:var(--warm-white);
    font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;
    padding:7px 14px;border-radius:2px;
    backdrop-filter:blur(4px);
  }

  /* ---------- Pricing ---------- */
  .pricing{padding:90px 0 100px;background:var(--warm-white);}
  .price-grid{display:grid;grid-template-columns:1fr;gap:22px;}
  .price-card{
    border:1px solid var(--stone);border-radius:2px;padding:32px 28px;
    background:var(--sand-beige);
  }
  .price-card h3{font-family:var(--serif);font-size:24px;font-weight:500;color:var(--deep-olive);margin-bottom:14px;}
  .price-from{font-family:var(--serif);font-size:clamp(24px,4vw,30px);color:var(--terracotta);font-weight:500;margin-bottom:14px;}
  .price-from small{display:block;font-family:var(--sans);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--olive);font-weight:600;margin-bottom:6px;}
  .price-from span{font-size:14px;color:var(--olive);font-weight:400;}
  .price-card p{font-size:13.5px;line-height:1.75;color:#5b5f52;font-weight:300;}

  /* ---------- Technical info ---------- */
  .technical{padding:90px 0 100px;background:var(--sand-beige);}
  .tech-grid{display:grid;grid-template-columns:1fr;gap:20px;}
  .tech-item{background:var(--warm-white);border:1px solid var(--stone);border-radius:2px;padding:26px;}
  .tech-item h3{font-family:var(--sans);font-size:14.5px;font-weight:700;color:var(--deep-olive);margin-bottom:10px;}
  .tech-item p{font-size:13.5px;line-height:1.75;color:#5b5f52;font-weight:300;}

  /* ---------- Yaşam gallery ---------- */
  .life{padding:100px 0 110px;background:var(--deep-olive);color:var(--warm-white);}
  .life .section-head h2{color:var(--warm-white);}
  .life .section-head p{color:rgba(247,245,240,.72);}
  .life-grid{display:grid;grid-template-columns:1fr;gap:14px;}
  .life-grid figure{overflow:hidden;border-radius:2px;position:relative;margin:0;aspect-ratio:4/5;}
  .life-grid img{width:100%;height:100%;object-fit:cover;display:block;}

  /* ---------- Masterplan ---------- */
  .masterplan{position:relative;padding:0;}
  .masterplan img{width:100%;height:80vh;min-height:480px;object-fit:cover;}
  .mp-overlay{
    position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,17,11,.55) 0%,rgba(15,17,11,.15) 35%,rgba(15,17,11,.55) 100%);
    display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--warm-white);
    padding:40px var(--edge);
  }
  .mp-overlay h2{color:var(--warm-white);font-size:clamp(26px,5.6vw,42px);font-weight:400;margin:16px 0 22px;}
  .mp-list{display:flex;flex-direction:column;gap:10px;font-size:14px;font-weight:300;color:rgba(247,245,240,.92);}
  .mp-list li{display:flex;align-items:center;gap:10px;justify-content:center;}
  .mp-list .leaf{color:var(--sage);}

  /* ---------- Why (Neden Tepe Evleri) ---------- */
  .why{position:relative;padding:0;}
  .why img{width:100%;height:70vh;min-height:420px;object-fit:cover;}
  .why-overlay{
    position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,17,11,.25) 0%,rgba(15,17,11,.35) 55%,rgba(15,17,11,.9) 100%);
    display:flex;flex-direction:column;justify-content:flex-end;
    padding:40px var(--edge) 56px;
  }
  .why-overlay p{color:rgba(247,245,240,.95);font-size:15px;line-height:1.8;font-weight:300;max-width:60ch;text-shadow:0 2px 14px rgba(0,0,0,.5);margin-top:10px;}

  /* ---------- Location ---------- */
  .location{padding:100px 0;background:var(--sand-beige);}
  .loc-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:center;}
  .loc-copy p{font-size:14.5px;line-height:1.9;color:#4b4f45;font-weight:300;margin-top:16px;}
  .loc-list{margin-top:26px;display:flex;flex-direction:column;gap:14px;}
  .loc-list li{display:flex;gap:14px;align-items:flex-start;font-size:13.5px;color:var(--deep-olive);font-weight:500;}
  .loc-list .dot{width:6px;height:6px;border-radius:50%;background:var(--terracotta);margin-top:6px;flex:none;}
  .loc-map-wrap{display:flex;flex-direction:column;gap:12px;}
  .loc-map{
    aspect-ratio:1/1;border:1px solid var(--stone);border-radius:2px;
    overflow:hidden;position:relative;background:var(--sand-beige);
  }
  .loc-map iframe{display:block;width:100%;height:100%;filter:grayscale(.15) contrast(1.02);}
  .loc-map-caption{font-family:var(--serif);font-style:italic;font-size:14px;color:var(--olive);text-align:center;}
  .loc-discover{
    margin-top:50px;padding-top:40px;border-top:1px solid var(--stone);
    max-width:820px;
  }
  .loc-discover h3{font-family:var(--serif);font-size:clamp(22px,4vw,30px);font-weight:500;color:var(--deep-olive);margin-bottom:14px;}
  .loc-discover p{font-size:14.5px;line-height:1.9;color:#4b4f45;font-weight:300;}

  /* ---------- Contact ---------- */
  .contact{padding:100px 0 90px;background:var(--deep-olive-2);color:var(--warm-white);}
  .contact .section-head h2{color:var(--warm-white);}
  .contact .section-head p{color:rgba(247,245,240,.72);}
  form{
    max-width:760px;margin:0 auto;
    background:rgba(247,245,240,.03);
    border:1px solid rgba(247,245,240,.16);
    border-radius:2px;padding:34px 22px;
  }
  fieldset{border:none;margin-bottom:26px;}
  legend{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--sage);font-weight:600;margin-bottom:14px;}
  .radio-grid{display:grid;grid-template-columns:1fr;gap:10px;}
  .radio-card{
    border:1px solid rgba(247,245,240,.22);border-radius:2px;
    padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;
    font-size:13px;font-weight:500;cursor:pointer;transition:border-color .3s,background .3s;
  }
  .radio-card:has(input:checked){border-color:var(--terracotta);background:rgba(196,122,90,.08);}
  .radio-card input{accent-color:var(--terracotta);width:16px;height:16px;}
  .radio-card small{display:block;font-weight:300;color:rgba(247,245,240,.6);margin-top:2px;font-size:11px;}

  .field{margin-bottom:20px;}
  .field label{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(247,245,240,.7);margin-bottom:8px;font-weight:600;}
  .field input,.field textarea{
    width:100%;background:transparent;border:none;border-bottom:1px solid rgba(247,245,240,.3);
    color:var(--warm-white);font-family:var(--sans);font-size:14.5px;padding:10px 2px;font-weight:300;
  }
  .field input::placeholder,.field textarea::placeholder{color:rgba(247,245,240,.4);}
  .field input:focus,.field textarea:focus{outline:none;border-color:var(--terracotta);}
  .field textarea{resize:vertical;min-height:80px;border:1px solid rgba(247,245,240,.3);padding:12px;}
  .two-col{display:grid;grid-template-columns:1fr;gap:0 20px;}
  .checks{display:flex;flex-direction:column;gap:12px;margin-bottom:26px;}
  .check-row{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:rgba(247,245,240,.75);font-weight:300;line-height:1.6;}
  .check-row input{margin-top:3px;accent-color:var(--terracotta);}
  .check-row a{color:var(--sage);text-decoration:underline;}
  form .btn{width:100%;justify-content:center;padding:16px;font-size:12.5px;}
  form .btn:disabled{opacity:.6;cursor:not-allowed;}
  .form-status{
    display:none;font-size:12.5px;line-height:1.6;padding:12px 14px;border-radius:2px;margin-bottom:18px;
  }
  .form-status.show{display:block;}
  .form-status.ok{background:rgba(166,174,154,.14);border:1px solid var(--sage);color:var(--sand-beige);}
  .form-status.err{background:rgba(196,122,90,.14);border:1px solid var(--terracotta);color:var(--sand-beige);}

  .contact-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:34px;margin-top:56px;text-align:center;}
  .contact-foot div{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:200px;}
  .contact-foot .ring-mark{border-color:rgba(247,245,240,.4);color:var(--sage);}
  .contact-foot p{font-size:12px;color:rgba(247,245,240,.75);line-height:1.5;font-weight:300;}

  .advisor-box{
    max-width:560px;margin:44px auto 0;text-align:center;
    border-top:1px solid rgba(247,245,240,.18);padding-top:36px;
  }
  .advisor-label{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--sage);font-weight:600;margin-bottom:20px;}
  .advisor-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:18px;}
  .advisor-item{
    border:1px solid rgba(247,245,240,.25);border-radius:2px;padding:14px 24px;
    display:flex;flex-direction:column;gap:4px;min-width:180px;
    transition:border-color .3s,background .3s;
  }
  .advisor-item:hover{border-color:var(--terracotta);background:rgba(196,122,90,.08);}
  .advisor-name{font-family:var(--serif);font-size:16px;color:var(--warm-white);font-weight:500;}
  .advisor-phone{font-size:12.5px;color:rgba(247,245,240,.75);letter-spacing:.02em;}
  .advisor-insta{font-size:12px;letter-spacing:.06em;color:var(--sand-beige);border-bottom:1px solid rgba(247,245,240,.35);padding-bottom:2px;}
  .advisor-insta:hover{border-color:var(--terracotta);color:var(--terracotta);}

  /* ---------- Footer ---------- */
  footer{background:var(--charcoal);color:rgba(247,245,240,.7);padding:50px 0 26px;}
  .foot-top{display:flex;flex-direction:column;gap:30px;padding-bottom:34px;border-bottom:1px solid rgba(247,245,240,.12);}
  .foot-brand{display:flex;align-items:center;gap:12px;}
  .foot-brand img{width:40px;height:40px;border-radius:50%;}
  .foot-brand span{font-family:var(--serif);font-size:20px;color:var(--warm-white);letter-spacing:.1em;}
  .foot-links{display:flex;flex-wrap:wrap;gap:22px;}
  .foot-links a{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:rgba(247,245,240,.65);}
  .foot-links a:hover{color:var(--terracotta);}
  .foot-social{display:flex;gap:14px;}
  .foot-social a{
    width:34px;height:34px;border:1px solid rgba(247,245,240,.25);border-radius:50%;
    display:flex;align-items:center;justify-content:center;
  }
  .foot-social svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.4;}
  .foot-bottom{display:flex;flex-direction:column;gap:10px;padding-top:22px;font-size:11px;letter-spacing:.04em;color:rgba(247,245,240,.4);}

  /* ---------- Back to top ---------- */
  .to-top{
    position:fixed;right:20px;bottom:20px;z-index:90;
    width:46px;height:46px;border-radius:50%;
    background:var(--deep-olive);color:var(--warm-white);
    border:1px solid rgba(247,245,240,.25);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 8px 22px rgba(0,0,0,.28);
    opacity:0;pointer-events:none;
    transform:translateY(10px);
    transition:opacity .35s ease, transform .35s ease, background .3s;
  }
  .to-top.show{opacity:1;pointer-events:auto;transform:translateY(0);}
  .to-top:hover{background:var(--terracotta);}
  .to-top svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6;}

  /* ---------- WhatsApp ---------- */
  .whatsapp-btn{
    position:fixed;right:20px;bottom:78px;z-index:90;
    width:46px;height:46px;border-radius:50%;
    background:#25D366;color:#ffffff;
    border:1px solid rgba(247,245,240,.25);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 8px 22px rgba(0,0,0,.28);
    transition:background .3s ease, transform .3s ease, box-shadow .3s ease;
  }
  .whatsapp-btn:hover{background:#1EBE57;transform:scale(1.08);box-shadow:0 10px 26px rgba(0,0,0,.34);}
  .whatsapp-btn svg{width:23px;height:23px;fill:currentColor;}

  /* Fallback: if JS never runs, don't leave content invisible */
  .no-js .reveal{opacity:1 !important;transform:none !important;}

  /* ---------- KVKK Modal ---------- */
  .modal-overlay{
    position:fixed;inset:0;z-index:200;
    background:rgba(15,17,11,.62);
    backdrop-filter:blur(3px);
    display:flex;align-items:center;justify-content:center;
    padding:24px;
    opacity:0;pointer-events:none;
    transition:opacity .3s ease;
  }
  .modal-overlay.open{opacity:1;pointer-events:auto;}
  .modal-box{
    background:var(--warm-white);
    color:var(--charcoal);
    max-width:640px;width:100%;
    max-height:82vh;
    border-radius:3px;
    position:relative;
    display:flex;flex-direction:column;
    box-shadow:0 20px 60px rgba(0,0,0,.35);
    transform:translateY(16px);
    transition:transform .35s cubic-bezier(.2,.8,.2,1);
  }
  .modal-overlay.open .modal-box{transform:translateY(0);}
  .modal-head{
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    padding:22px 26px;border-bottom:1px solid var(--stone);
  }
  .modal-head h3{font-size:24px;font-weight:500;color:var(--deep-olive);}
  .modal-close{
    flex:none;width:34px;height:34px;border-radius:50%;
    border:1px solid var(--stone);background:transparent;
    display:flex;align-items:center;justify-content:center;
    color:var(--charcoal);transition:background .25s,border-color .25s,transform .25s;
  }
  .modal-close:hover{background:var(--deep-olive);border-color:var(--deep-olive);color:var(--warm-white);transform:rotate(90deg);}
  .modal-close svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.6;fill:none;}
  .modal-body{padding:24px 26px 30px;overflow-y:auto;font-size:13.5px;line-height:1.85;color:#4b4f45;font-weight:300;}
  .modal-body h4{font-family:var(--sans);font-size:12px;letter-spacing:.06em;color:var(--deep-olive);font-weight:700;text-transform:uppercase;margin:20px 0 8px;}
  .modal-body h4:first-child{margin-top:0;}
  .modal-body p{margin-bottom:10px;}
  .modal-body ul{margin:8px 0 14px 18px;list-style:disc;}
  .modal-body li{margin-bottom:6px;}
  .modal-body strong{color:var(--charcoal);font-weight:600;}
  body.modal-open{overflow:hidden;}
  .fp-modal-box{max-width:900px;}
  .fp-modal-body{padding:0;overflow:auto;}
  .fp-modal-body img{width:100%;height:auto;display:block;}

  /* ---------- Responsive ---------- */
  @media(min-width:640px){
    .stat-row{grid-template-columns:repeat(3,1fr);}
    .type-cards{grid-template-columns:repeat(2,1fr);}
    .life-grid{grid-template-columns:repeat(2,1fr);}    .two-col{grid-template-columns:1fr 1fr;}
    .radio-grid{grid-template-columns:repeat(3,1fr);}
    .spec-grid{grid-template-columns:repeat(2,1fr);}
    .fp-panel{grid-template-columns:repeat(3,1fr);}
    .tech-grid{grid-template-columns:repeat(2,1fr);}
  }
  @media(min-width:1000px){
    nav.links{display:flex;}
    .burger{display:none;}
    .scroll-cue{display:flex;}
    .intro-grid{grid-template-columns:1fr 1fr;align-items:center;column-gap:70px;}
    .spec-grid{grid-template-columns:repeat(3,1fr);}
    .type-cards{grid-template-columns:repeat(3,1fr);}
    .life-grid{grid-template-columns:repeat(3,1fr);}
    .loc-grid{grid-template-columns:1fr .8fr;}
    .price-grid{grid-template-columns:repeat(3,1fr);}
  }
  @media(min-width:1100px){
    .hero-content h1{max-width:16ch;}
  }
