/* =========================================================
   Koru Evleri / Grove Residences
   Mimari broşür dili: net ızgara, ince teknik çizgiler, sakin tonlar
   ========================================================= */

:root{
  --c-bg:#f3f0e8;
  --c-bg-alt:#e9e5da;
  --c-surface:#faf8f3;
  --c-text:#1e211b;
  --c-text-soft:#585d52;
  --c-line:#d6d0c2;
  --c-primary:#3c4e35;
  --c-on-primary:#f7f5ee;
  --c-accent:#9c5a33;
  --c-ink:#1f2a1d;
  --c-on-ink:#ece9df;

  --f-display:'Chivo', 'Segoe UI', system-ui, sans-serif;
  --f-body:'Chivo', 'Segoe UI', system-ui, sans-serif;

  --r-sm:2px;
  --r-md:4px;
  --r-lg:4px;
  --r-btn:2px;

  --ease:cubic-bezier(.16,1,.3,1);
  --wrap:1320px;
  --gut:clamp(16px, 4vw, 48px);
  --sec:clamp(80px, 11vw, 150px);
  --hdr:76px;

  --soft-line:color-mix(in oklab, var(--c-line) 70%, transparent);
  --grid-paper:color-mix(in oklab, var(--c-line) 38%, transparent);
  --st-avail:var(--c-primary);
  --st-res:var(--c-accent);
  --st-sold:color-mix(in oklab, var(--c-text-soft) 55%, var(--c-bg));
  --ink-soft:color-mix(in oklab, var(--c-on-ink) 70%, var(--c-ink));
  --ink-line:color-mix(in oklab, var(--c-on-ink) 18%, var(--c-ink));
  --shadow:0 30px 60px -30px rgba(0,0,0,.25);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
body{margin:0;background:var(--c-bg);color:var(--c-text);font-family:var(--f-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
h1,h2,h3,p,figure,dl,dd,ol,ul{margin:0}
ol,ul{padding:0;list-style:none}
em{font-synthesis:none}
table{border-collapse:collapse}
:focus-visible{outline:2px solid var(--c-primary);outline-offset:3px}
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.ic{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.wrap{width:100%;max-width:calc(var(--wrap) + 2 * var(--gut));margin-inline:auto;padding-inline:var(--gut)}
.skip{position:fixed;left:16px;top:16px;z-index:200;background:var(--c-primary);color:var(--c-on-primary);padding:10px 16px;border-radius:var(--r-sm);transform:translateY(-200%);opacity:0;pointer-events:none}
.skip:focus{transform:none;opacity:1;pointer-events:auto}

/* ---------- Tipografi ---------- */
.eyebrow,.sec-num,.plate,.drawing__title,.calc__k,.prog__k,.foot__h,legend,.field label,.field__lbl,.fld label,.fld legend{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
.sec-num{display:flex;align-items:center;gap:12px;color:var(--c-text-soft);margin-bottom:22px}
.sec-num span{display:inline-grid;place-items:center;min-width:34px;height:24px;padding:0 6px;border:1px solid currentColor;border-radius:var(--r-sm);font-variant-numeric:tabular-nums;letter-spacing:.06em}
.sec-title{font-family:var(--f-display);font-weight:300;font-size:clamp(2.3rem, 5.2vw, 4.6rem);line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.sec-title em,.hero__title em{font-style:italic;color:var(--c-primary)}
.sec-title--sm{font-size:clamp(2.1rem, 4vw, 3.5rem)}
.sec-lead{color:var(--c-text-soft);font-size:clamp(17px, 1.35vw, 19px);line-height:1.6;max-width:52ch}
.sec-head{margin-bottom:clamp(40px, 6vw, 72px);max-width:980px}
.sec-head .sec-lead{margin-top:24px}
.sec-head--row{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px 64px;align-items:end;max-width:none}
.sec-head--row .sec-lead{margin:0 0 6px}
.plate{display:inline-grid;place-items:center;height:20px;padding:0 6px;border:1px solid var(--c-line);border-radius:var(--r-sm);font-size:10px;letter-spacing:.1em;color:var(--c-text-soft);background:var(--c-surface)}

/* ---------- Butonlar ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:var(--r-btn);font-size:15px;font-weight:500;letter-spacing:.01em;border:1px solid transparent;transition:background .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease),transform .35s var(--ease)}
.btn .ic{width:18px;height:18px;transition:transform .45s var(--ease)}
.btn:hover .ic use[href="#i-arrow"]{transform:translateX(3px)}
.btn:hover > .ic:last-child{transform:translateX(4px)}
.btn--primary{background:var(--c-primary);color:var(--c-on-primary)}
.btn--primary:hover{background:color-mix(in oklab, var(--c-primary) 86%, var(--c-text))}
.btn--line{border-color:color-mix(in oklab, var(--c-text) 55%, transparent);color:var(--c-text)}
.btn--line:hover{background:var(--c-text);color:var(--c-bg);border-color:var(--c-text)}
.btn--sm{min-height:44px;padding:0 18px;font-size:14px}
.btn--block{width:100%}
.linkbtn{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:14px;color:var(--c-text-soft);border-bottom:1px solid transparent}
.linkbtn:hover{color:var(--c-text)}
.linkbtn .ic{width:16px;height:16px}

/* ---------- Üst menü ---------- */
.hdr{position:fixed;inset:0 0 auto 0;z-index:60;transition:background .4s var(--ease),box-shadow .4s var(--ease)}
.hdr__bar{display:flex;align-items:center;gap:28px;height:var(--hdr);transition:height .4s var(--ease)}
.hdr.is-scrolled{background:color-mix(in oklab, var(--c-bg) 90%, transparent);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 1px 0 var(--c-line)}
.hdr.is-scrolled .hdr__bar{height:62px}
.brand{display:flex;align-items:center;gap:12px;min-height:44px;margin-right:auto}
.brand__mark{width:32px;height:32px;fill:none;stroke:var(--c-primary);stroke-width:1.6}
.brand__text{display:flex;flex-direction:column;line-height:1.1}
.brand__name{font-family:var(--f-display);font-size:19px;font-weight:500;letter-spacing:-.01em}
.brand__sub{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--c-text-soft);margin-top:3px}
.hdr__nav{display:flex;gap:22px}
.hdr__nav a{position:relative;font-size:14px;padding:10px 0;color:var(--c-text)}
.hdr__nav a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease)}
.hdr__nav a:hover::after,.hdr__nav a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}
.hdr__end{display:flex;align-items:center;gap:16px}
.hdr__phone{display:flex;align-items:center;gap:8px;font-size:14px;font-variant-numeric:tabular-nums;min-height:44px}
.hdr__phone .ic{width:17px;height:17px;color:var(--c-primary)}
.burger{display:none;position:relative;width:46px;height:46px;border:1px solid var(--c-line);border-radius:var(--r-btn);z-index:3}
.burger span{position:absolute;left:13px;right:13px;height:1.5px;background:currentColor;transition:transform .5s var(--ease),top .5s var(--ease)}
.burger span:first-child{top:18px}
.burger span:last-child{top:26px}
.hdr.is-open .burger span:first-child{top:22px;transform:rotate(45deg)}
.hdr.is-open .burger span:last-child{top:22px;transform:rotate(-45deg)}
.hdr.is-open .burger{color:var(--c-on-ink);border-color:var(--ink-line)}

.mnav{position:fixed;inset:0;z-index:2;background:var(--c-ink);color:var(--c-on-ink);display:flex;flex-direction:column;justify-content:space-between;padding:110px var(--gut) 36px;visibility:hidden;opacity:0;transition:opacity .5s var(--ease),visibility 0s linear .5s;overflow-y:auto}
.hdr.is-open .mnav{visibility:visible;opacity:1;transition:opacity .5s var(--ease)}
.mnav__links{display:flex;flex-direction:column}
.mnav__links a{display:flex;align-items:baseline;gap:16px;padding:10px 0;border-bottom:1px solid var(--ink-line);font-family:var(--f-display);font-weight:300;font-size:clamp(1.8rem, 7vw, 2.6rem);letter-spacing:-.02em;opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .7s var(--ease)}
.mnav__links small{font-family:var(--f-body);font-size:12px;letter-spacing:.1em;color:var(--ink-soft)}
.hdr.is-open .mnav__links a{opacity:1;transform:none}
.hdr.is-open .mnav__links a:nth-child(2){transition-delay:.04s}
.hdr.is-open .mnav__links a:nth-child(3){transition-delay:.08s}
.hdr.is-open .mnav__links a:nth-child(4){transition-delay:.12s}
.hdr.is-open .mnav__links a:nth-child(5){transition-delay:.16s}
.hdr.is-open .mnav__links a:nth-child(6){transition-delay:.2s}
.hdr.is-open .mnav__links a:nth-child(7){transition-delay:.24s}
.hdr.is-open .mnav__links a:nth-child(8){transition-delay:.28s}
.mnav__foot{display:flex;flex-direction:column;gap:6px;margin-top:32px;color:var(--ink-soft);font-size:15px}
.mnav__foot a{min-height:32px;display:flex;align-items:center}
.hdr.is-open .brand{position:relative;z-index:3;color:var(--c-on-ink)}
.hdr.is-open .brand__sub{color:var(--ink-soft)}
.hdr.is-open .brand__mark{stroke:currentColor}
.hdr.is-open{background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.hdr.is-open .hdr__cta{visibility:hidden}

/* ---------- Kapak ---------- */
.hero{position:relative;padding-top:calc(var(--hdr) + 24px);padding-bottom:clamp(28px, 4vw, 48px);min-height:min(100svh, 1000px);display:flex}
.gridlines{position:absolute;inset:0;max-width:calc(var(--wrap) + 2 * var(--gut));margin-inline:auto;padding-inline:var(--gut);display:flex;justify-content:space-between;pointer-events:none}
.gridlines i{position:relative;width:1px;background:var(--soft-line);opacity:.7}
.gridlines i::before{position:absolute;top:calc(var(--hdr) + 6px);left:-11px;width:22px;height:22px;border:1px solid var(--c-line);border-radius:50%;display:grid;place-items:center;font:500 10px/20px var(--f-body);text-align:center;color:var(--c-text-soft);background:var(--c-bg)}
.gridlines i:nth-child(1)::before{content:"A"}
.gridlines i:nth-child(2)::before{content:"B"}
.gridlines i:nth-child(3)::before{content:"C"}
.gridlines i:nth-child(4)::before{content:"D"}
.gridlines i:nth-child(5)::before{content:"E"}
.hero__grid{position:relative;display:grid;grid-template-columns:repeat(12, minmax(0,1fr));grid-template-rows:1fr auto;gap:0 24px;width:100%}
.hero__copy{grid-column:1 / 8;grid-row:1;align-self:center;padding:56px 32px 40px 0;max-width:760px}
.hero__eyebrow{display:flex;align-items:center;gap:12px;color:var(--c-text-soft);margin-bottom:28px}
.live{position:relative;width:8px;height:8px;border-radius:50%;background:var(--c-primary)}
.live::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--c-primary);animation:ping 2.4s var(--ease) infinite}
@keyframes ping{0%{transform:scale(.4);opacity:1}80%,100%{transform:scale(1.4);opacity:0}}
html.kmg-static .live::after{animation:none;opacity:0}
.hero__title{font-family:var(--f-display);font-weight:300;font-size:clamp(3rem, 6.4vw, 6.4rem);line-height:.98;letter-spacing:-.045em;text-wrap:balance}
.hero__title span,.hero__title em{display:block}
.hero__lead{margin-top:30px;max-width:50ch;color:var(--c-text-soft);font-size:clamp(17px, 1.35vw, 19px)}
.hero__ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.hero__specs{grid-column:1 / 8;grid-row:2;display:grid;grid-template-columns:repeat(4, 1fr);border-top:1px solid var(--c-text);margin-right:32px}
.hero__specs div{padding:16px 16px 4px 0;border-right:1px solid var(--c-line);display:flex;flex-direction:column-reverse;gap:6px}
.hero__specs div + div{padding-left:16px}
.hero__specs div:last-child{border-right:0}
.hero__specs dt{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-soft)}
.hero__specs dd{font-family:var(--f-display);font-weight:300;font-size:clamp(1.9rem, 3.2vw, 3rem);line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.hero__figure{grid-column:8 / 13;grid-row:1 / 3;position:relative;display:flex;flex-direction:column;padding:48px 34px 0 0;min-height:560px}
.hero__frame{position:relative;flex:1;min-height:0}
.hero__frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--r-lg)}
.crop{position:absolute;width:18px;height:18px;border-color:var(--c-text);border-style:solid;border-width:0}
.crop--tl{top:-10px;left:-10px;border-top-width:1px;border-left-width:1px}
.crop--br{bottom:-10px;right:-10px;border-bottom-width:1px;border-right-width:1px}
.dimline{position:absolute;right:0;top:48px;width:24px;height:calc(100% - 92px);fill:none;stroke:var(--c-text-soft);stroke-width:1;vector-effect:non-scaling-stroke}
.dimline path{vector-effect:non-scaling-stroke}
.dimlabel{position:absolute;right:-2px;top:50%;transform:translate(50%,-50%) rotate(-90deg);transform-origin:center;font-size:11px;letter-spacing:.08em;color:var(--c-text-soft);background:var(--c-bg);padding:2px 6px;font-variant-numeric:tabular-nums}
.hero__figure figcaption,.siteplan figcaption,.about__wide figcaption,.arch figcaption{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:13px;color:var(--c-text-soft)}

/* ---------- Bölümler ---------- */
.sec{padding-block:var(--sec);position:relative}
.sec--alt{background:var(--c-bg-alt)}

/* Proje */
.about__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px, 5vw, 72px);align-items:start}
.siteplan__sheet{position:relative;border:1px solid var(--c-line);background-color:var(--c-surface);background-image:linear-gradient(var(--grid-paper) 1px, transparent 1px),linear-gradient(90deg, var(--grid-paper) 1px, transparent 1px);background-size:24px 24px;border-radius:var(--r-md);padding:clamp(10px, 2vw, 24px)}
.siteplan svg{display:block;width:100%;height:auto;overflow:visible}
.sp-parcel{fill:color-mix(in oklab, var(--c-surface) 70%, transparent);stroke:var(--c-text-soft);stroke-width:1.2;stroke-dasharray:10 5 2 5}
.sp-road{stroke:var(--c-text);stroke-width:1}
.sp-road-t,.sp-sm,.sp-lbl{font:500 10px var(--f-body);letter-spacing:.14em;fill:var(--c-text-soft)}
.sp-path{fill:none;stroke:var(--c-text-soft);stroke-width:1;stroke-dasharray:2 5}
.sp-pool{fill:color-mix(in oklab, var(--c-primary) 14%, var(--c-surface));stroke:var(--c-text);stroke-width:1}
.sp-trees circle{fill:color-mix(in oklab, var(--c-primary) 22%, transparent);stroke:var(--c-primary);stroke-width:.8}
.sp-block rect{fill:var(--c-surface);stroke:var(--c-text);stroke-width:1.6;transition:fill .4s var(--ease)}
.sp-block .sp-bl{font:300 30px var(--f-display);fill:var(--c-text)}
.sp-block:hover rect,.sp-block:focus-visible rect{fill:color-mix(in oklab, var(--c-primary) 20%, var(--c-surface))}
.sp-block:focus-visible{outline:none}
.sp-block:focus-visible rect{stroke-width:3}
.sp-ramp{fill:url(#sp-hatch);stroke:var(--c-text);stroke-width:1}
.sp-hatchline{stroke:var(--c-text-soft);stroke-width:1}
.sp-north circle{fill:var(--c-surface);stroke:var(--c-text);stroke-width:1}
.sp-north path{fill:var(--c-text)}
.sp-north text,.sp-scale text{font:500 10px var(--f-body);fill:var(--c-text-soft);letter-spacing:.08em}
.sp-scale path{fill:none;stroke:var(--c-text);stroke-width:1}
.about__text > p{font-size:clamp(17px, 1.3vw, 19px);line-height:1.65}
.figures{display:grid;grid-template-columns:1fr 1fr;margin-top:40px;border-top:1px solid var(--c-text)}
.figures div{display:flex;flex-direction:column;padding:20px 16px 22px 0;border-bottom:1px solid var(--c-line)}
.figures div:nth-child(even){padding-left:20px;border-left:1px solid var(--c-line)}
.figures dd{font-family:var(--f-display);font-weight:300;font-size:clamp(2.2rem, 3.6vw, 3.2rem);line-height:1;letter-spacing:-.035em}
.figures dt{margin-top:10px;font-size:14px;color:var(--c-text-soft)}
.about__wide{margin-top:clamp(56px, 8vw, 110px)}
.about__wide img{width:100%;aspect-ratio:16 / 7;object-fit:cover;border-radius:var(--r-lg)}

/* Geliştirici */
.dev__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px, 6vw, 96px);align-items:center}
.dev__media{overflow:hidden;border-radius:var(--r-lg)}
.dev__media img{width:100%;aspect-ratio:4 / 5;object-fit:cover;transition:transform 1.4s var(--ease)}
.dev__media:hover img{transform:scale(1.03)}
.dev__text{margin-top:24px;color:var(--c-text-soft);max-width:56ch;font-size:clamp(17px, 1.3vw, 18px)}
.track{margin-top:40px;border-top:1px solid var(--c-text)}
.track li{display:grid;grid-template-columns:80px 1fr auto;gap:16px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--c-line)}
.track__y{font-variant-numeric:tabular-nums;color:var(--c-text-soft);font-size:14px}
.track__n{font-family:var(--f-display);font-size:clamp(1.15rem, 1.7vw, 1.4rem);font-weight:400;letter-spacing:-.01em}
.track__u{font-size:14px;color:var(--c-text-soft)}

/* ---------- Daire seçici ---------- */
.picker{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.picker__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;margin-bottom:18px}
.seg{display:inline-flex;border:1px solid var(--c-text);border-radius:var(--r-btn);padding:3px;gap:3px;background:var(--c-surface)}
.seg button,.seg__opt span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:56px;padding:0 16px;border-radius:calc(var(--r-btn) - 1px);font-size:15px;font-weight:500;transition:background .3s var(--ease),color .3s var(--ease)}
.seg button small{font-size:11px;font-weight:400;color:var(--c-text-soft)}
.seg button[aria-selected="true"],.seg button[aria-checked="true"],.seg__opt input:checked + span{background:var(--c-text);color:var(--c-bg)}
.seg button[aria-selected="true"] small{color:color-mix(in oklab, var(--c-bg) 72%, var(--c-text))}
.seg button:not([aria-selected="true"]):not([aria-checked="true"]):hover{background:var(--c-bg-alt)}
.seg--sm button{min-height:40px;min-width:44px;padding:0 12px;font-size:14px}
.seg--full{display:flex;width:100%}
.seg--full .seg__opt{flex:1}
.seg__opt{position:relative;cursor:pointer}
.seg__opt input{position:absolute;opacity:0;pointer-events:none}
.seg__opt input:focus-visible + span{outline:2px solid var(--c-primary);outline-offset:2px}
.seg__opt span{text-align:center;padding:0 12px}
.floors{display:flex;flex-wrap:wrap;gap:6px}
.floors button{min-height:44px;padding:0 14px;border:1px solid var(--c-line);border-radius:var(--r-btn);font-size:14px;background:var(--c-surface);transition:border-color .3s var(--ease),background .3s var(--ease),color .3s var(--ease)}
.floors button:hover{border-color:var(--c-text)}
.floors button[aria-pressed="true"]{background:var(--c-primary);border-color:var(--c-primary);color:var(--c-on-primary)}

.filters{display:grid;grid-template-columns:auto minmax(220px, 1fr) auto;gap:18px 32px;align-items:end;padding:18px 0;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);margin-bottom:22px}
.filters fieldset{border:0;padding:0;margin:0;min-width:0}
.filters legend{display:flex;justify-content:space-between;gap:12px;width:100%;color:var(--c-text-soft);margin-bottom:10px;padding:0}
.filters legend output{font-size:13px;letter-spacing:0;text-transform:none;color:var(--c-text);font-variant-numeric:tabular-nums}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips button,.chips--check label span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--c-line);border-radius:var(--r-btn);font-size:14px;background:var(--c-surface);transition:all .3s var(--ease);cursor:pointer}
.chips button:hover,.chips--check label:hover span{border-color:var(--c-text)}
.chips button[aria-pressed="true"],.chips--check input:checked + span{background:var(--c-text);border-color:var(--c-text);color:var(--c-bg)}
.chips--check label{position:relative;margin:0;padding:0;text-transform:none;letter-spacing:0;font-size:14px;font-weight:400;color:var(--c-text)}
.chips--check input{position:absolute;opacity:0;pointer-events:none}
.chips--check input:focus-visible + span{outline:2px solid var(--c-primary);outline-offset:2px}
.range2{position:relative;height:44px}
.range2 input{position:absolute;left:0;right:0;top:50%;width:100%;height:0;margin:0;transform:translateY(-50%);-webkit-appearance:none;appearance:none;background:none;pointer-events:none;z-index:2}
.range2 input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:22px;height:22px;border-radius:50%;background:var(--c-surface);border:1.5px solid var(--c-text);cursor:grab;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.range2 input::-moz-range-thumb{pointer-events:auto;width:20px;height:20px;border-radius:50%;background:var(--c-surface);border:1.5px solid var(--c-text);cursor:grab}
.range2 input:focus-visible{outline:none}
.range2 input:focus-visible::-webkit-slider-thumb{outline:2px solid var(--c-primary);outline-offset:2px}
.range2__track{position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;background:var(--c-line)}
.range2__track span{position:absolute;top:0;bottom:0;background:var(--c-text)}
.filters__end{display:flex;align-items:center;gap:18px}
.switch{display:inline-flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font-size:14px;white-space:nowrap}
.switch input{position:absolute;opacity:0;pointer-events:none}
.switch__ui{position:relative;width:40px;height:22px;border-radius:999px;border:1px solid var(--c-text);transition:background .3s var(--ease)}
.switch__ui::after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--c-text);transition:transform .4s var(--ease),background .3s}
.switch input:checked + .switch__ui{background:var(--c-primary);border-color:var(--c-primary)}
.switch input:checked + .switch__ui::after{transform:translateX(18px);background:var(--c-on-primary)}
.switch input:focus-visible + .switch__ui{outline:2px solid var(--c-primary);outline-offset:2px}

.drawing{border:1px solid var(--c-line);border-radius:var(--r-md);background-color:var(--c-surface);background-image:linear-gradient(var(--grid-paper) 1px, transparent 1px),linear-gradient(90deg, var(--grid-paper) 1px, transparent 1px);background-size:20px 20px;padding:clamp(14px, 2vw, 24px)}
.drawing__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;margin-bottom:8px}
.drawing__head--sub{margin-top:20px;padding-top:18px;border-top:1px dashed var(--c-line)}
.drawing__title{color:var(--c-text)}
.drawing__count{font-size:13px;color:var(--c-text-soft)}
.legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--c-text-soft)}
.legend li{display:flex;align-items:center;gap:8px}
.lg{display:inline-block;width:14px;height:14px;border:1px solid var(--c-text)}
.lg--avail{background:color-mix(in oklab, var(--st-avail) 30%, var(--c-surface))}
.lg--res{background:color-mix(in oklab, var(--st-res) 40%, var(--c-surface))}
.lg--sold{background:repeating-linear-gradient(45deg, var(--st-sold) 0 1px, var(--c-surface) 1px 5px)}
.elev svg,.keyplan svg{display:block;width:100%;height:auto;overflow:visible}
.elev svg text,.keyplan svg text,.uplan text{font-family:var(--f-body)}

/* SVG: daireler */
.u{cursor:pointer;outline:none}
.u__body{stroke:var(--c-text);stroke-width:1.2;transition:fill .3s var(--ease),stroke-width .2s}
.u--avail .u__body{fill:color-mix(in oklab, var(--st-avail) 26%, var(--c-surface))}
.u--res .u__body{fill:color-mix(in oklab, var(--st-res) 34%, var(--c-surface))}
.u--sold .u__body{fill:url(#hx-e)}
.keyplan .u--sold .u__body{fill:url(#hx-k)}
.u__win{fill:color-mix(in oklab, var(--c-surface) 70%, transparent);stroke:var(--c-text);stroke-width:.8}
.u__rail{stroke:var(--c-text);stroke-width:1;fill:none}
.u__code{font-size:15px;font-weight:600;fill:var(--c-text)}
.u__type{font-size:12px;fill:var(--c-text-soft)}
.u--sold .u__code{fill:var(--c-text-soft)}
.u:hover .u__body{stroke-width:2.6}
.u:focus-visible .u__body{stroke-width:3;stroke-dasharray:7 4}
.u.is-dim{opacity:.2}
.u.is-dim:hover{opacity:.45}
.u.is-sel .u__body{stroke-width:3.6}
.u__sel{fill:var(--c-text);opacity:0}
.u.is-sel .u__sel{opacity:1}
.hx line{stroke:var(--st-sold);stroke-width:1.2}
.hx rect{fill:var(--c-surface)}
.lvl{cursor:pointer}
.lvl__band{fill:transparent;transition:fill .3s var(--ease)}
.lvl.is-on .lvl__band{fill:color-mix(in oklab, var(--c-primary) 9%, transparent)}
.lvl text{font-size:12px;fill:var(--c-text-soft);font-variant-numeric:tabular-nums}
.lvl.is-on text{fill:var(--c-text);font-weight:700}
.lvl__mark{fill:none;stroke:var(--c-text);stroke-width:1}
.el-ground{stroke:var(--c-text);stroke-width:2}
.el-hatch{stroke:var(--c-text-soft);stroke-width:1}
.el-roof{stroke:var(--c-text);stroke-width:1.2;fill:none}
.el-tree circle{fill:color-mix(in oklab, var(--c-primary) 20%, transparent);stroke:var(--c-primary);stroke-width:1}
.el-tree line{stroke:var(--c-primary);stroke-width:1}
.el-dim{stroke:var(--c-text-soft);stroke-width:1;fill:none}
.el-dimt{font-size:12px;fill:var(--c-text-soft)}
.kp-corr{fill:color-mix(in oklab, var(--c-bg-alt) 80%, transparent);stroke:var(--c-text);stroke-width:1}
.kp-core{fill:url(#kp-stair);stroke:var(--c-text);stroke-width:1.2}
.kp-out{fill:color-mix(in oklab, var(--c-primary) 8%, transparent);stroke:var(--c-text-soft);stroke-width:1;stroke-dasharray:4 3}
.kp-t{font-size:12px;fill:var(--c-text-soft);letter-spacing:.1em}
.kp-stairline{stroke:var(--c-text-soft);stroke-width:1}

/* Panel */
.unit{position:sticky;top:88px;border:1px solid var(--c-text);border-radius:var(--r-md);background:var(--c-surface);box-shadow:var(--shadow)}
.unit__inner{padding:24px}
.unit__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.unit__code{font-family:var(--f-display);font-weight:300;font-size:3.4rem;line-height:.9;letter-spacing:-.04em}
.unit__meta{margin-top:10px;font-size:14px;color:var(--c-text-soft)}
.pill{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 10px;border-radius:var(--r-btn);font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;white-space:nowrap;border:1px solid currentColor}
.pill::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.pill--avail{color:var(--c-primary)}
.pill--res{color:var(--c-accent)}
.pill--sold{color:var(--c-text-soft)}
.uplan{margin:18px 0 6px;border:1px solid var(--c-line);border-radius:var(--r-sm);background-color:var(--c-bg);background-image:linear-gradient(var(--grid-paper) 1px, transparent 1px),linear-gradient(90deg, var(--grid-paper) 1px, transparent 1px);background-size:14px 14px;padding:10px}
.uplan svg{display:block;width:100%;height:auto}
.up-wall{fill:none;stroke:var(--c-text);stroke-width:3.5;stroke-linejoin:miter}
.up-room{fill:var(--c-surface);stroke:var(--c-text);stroke-width:1.2}
.up-wet{fill:color-mix(in oklab, var(--c-primary) 10%, var(--c-surface));stroke:var(--c-text);stroke-width:1.2}
.up-out{fill:color-mix(in oklab, var(--c-primary) 16%, transparent);stroke:var(--c-text-soft);stroke-width:1;stroke-dasharray:4 3}
.up-out--garden{fill:color-mix(in oklab, var(--c-primary) 24%, transparent)}
.up-door{fill:none;stroke:var(--c-text-soft);stroke-width:.9}
.up-win{stroke:var(--c-surface);stroke-width:3.5}
.up-winl{stroke:var(--c-text);stroke-width:.8}
.up-name{font-size:10.5px;fill:var(--c-text);font-weight:500}
.up-area{font-size:9.5px;fill:var(--c-text-soft)}
.up-dim{stroke:var(--c-text-soft);stroke-width:.8;fill:none}
.up-dimt{font-size:9px;fill:var(--c-text-soft)}
.up-n circle{fill:none;stroke:var(--c-text);stroke-width:.8}
.up-n path{fill:var(--c-text)}
.up-n text{font-size:8px;fill:var(--c-text)}
.unit__specs{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--c-line);margin-top:14px}
.unit__specs div{padding:11px 0;border-bottom:1px solid var(--c-line)}
.unit__specs div:nth-child(even){padding-left:14px;border-left:1px solid var(--c-line)}
.unit__specs dt{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-soft)}
.unit__specs dd{font-size:15px;margin-top:2px;font-variant-numeric:tabular-nums}
.unit__price{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:18px}
.unit__price small{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-soft)}
.unit__price strong{font-family:var(--f-display);font-weight:400;font-size:1.75rem;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.unit__acts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.unit__acts .btn{min-height:48px;padding:0 12px;font-size:14px}
.unit__close{display:none;width:44px;height:44px;border:1px solid var(--c-line);border-radius:var(--r-btn);place-items:center;flex:none}
.unit__empty{padding:32px 24px;color:var(--c-text-soft);font-size:15px}
.sheet-backdrop{position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.4);opacity:0;transition:opacity .4s var(--ease)}
.sheet-backdrop.is-on{opacity:1}

/* Sonuç tablosu */
.results{margin-top:40px}
.results__head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--c-text)}
.results__title{font-family:var(--f-display);font-weight:400;font-size:1.35rem;letter-spacing:-.01em}
.results__n{font-size:14px;color:var(--c-text-soft)}
.results__scroll{max-height:440px;overflow:auto;overscroll-behavior:contain}
.rtable{width:100%;font-size:15px;font-variant-numeric:tabular-nums}
.rtable th{position:sticky;top:0;z-index:1;background:var(--c-bg);text-align:left;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--c-text-soft);padding:12px 12px 10px 0;border-bottom:1px solid var(--c-line)}
.rtable td{padding:0;border-bottom:1px solid var(--c-line)}
.rtable td > *{display:block;padding:13px 12px 13px 0;white-space:nowrap}
.rtable tr{cursor:pointer;transition:background .25s}
.rtable tbody tr:hover{background:color-mix(in oklab, var(--c-primary) 6%, transparent)}
.rtable tr.is-sel{background:color-mix(in oklab, var(--c-primary) 12%, transparent)}
.rtable .r-code{font-weight:600}
.rtable button{width:100%;text-align:left;font-weight:600}
.rtable .pill{height:24px;font-size:11px}
.rtable td:last-child > *{padding-block:9px}
.rtable .r-empty td{padding:28px 0;color:var(--c-text-soft);cursor:default}

/* ---------- Ödeme planı (koyu şerit) ---------- */
.pay{background:var(--c-ink);color:var(--c-on-ink)}
.pay .sec-num,.pay .sec-lead{color:var(--ink-soft)}
.pay .sec-title em{color:inherit}
.calc{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);border:1px solid var(--ink-line);border-radius:var(--r-lg)}
.calc__form{padding:clamp(20px, 3vw, 40px);border-right:1px solid var(--ink-line);display:flex;flex-direction:column;gap:30px}
.field label,.field__lbl{display:block;color:var(--ink-soft)}
.field__row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}
.field__row output{font-family:var(--f-display);font-size:1.3rem;font-variant-numeric:tabular-nums}
.field > label,.field > .field__lbl{margin-bottom:12px}
.money-in{display:flex;align-items:baseline;gap:8px;border-bottom:1px solid var(--c-on-ink);padding-bottom:6px}
.money-in span{font-family:var(--f-display);font-size:1.6rem;color:var(--ink-soft)}
.money-in input{flex:1;min-width:0;background:none;border:0;font-family:var(--f-display);font-weight:300;font-size:clamp(1.8rem, 3vw, 2.4rem);letter-spacing:-.02em;color:var(--c-on-ink);padding:0;font-variant-numeric:tabular-nums}
.money-in input:focus{outline:none}
.money-in:focus-within{border-bottom-width:2px;padding-bottom:5px}
.quick{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.quick button{min-height:40px;padding:0 12px;border:1px solid var(--ink-line);border-radius:var(--r-btn);font-size:13px;color:var(--c-on-ink);transition:border-color .3s,background .3s}
.quick button:hover{border-color:var(--c-on-ink)}
.quick button[aria-pressed="true"]{background:var(--c-on-ink);color:var(--c-ink);border-color:var(--c-on-ink)}
.pay input[type="range"],.calc input[type="range"]{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:none;margin:0;cursor:pointer;--fill:50%}
.pay input[type="range"]::-webkit-slider-runnable-track{height:2px;background:linear-gradient(90deg, var(--c-on-ink) var(--fill), var(--ink-line) var(--fill))}
.pay input[type="range"]::-moz-range-track{height:2px;background:var(--ink-line)}
.pay input[type="range"]::-moz-range-progress{height:2px;background:var(--c-on-ink)}
.pay input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-10px;border-radius:50%;background:var(--c-ink);border:2px solid var(--c-on-ink)}
.pay input[type="range"]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--c-ink);border:2px solid var(--c-on-ink)}
.pay input[type="range"]:focus-visible{outline:none}
.pay input[type="range"]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--c-on-ink);outline-offset:3px}
.ticks{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-soft);margin-top:4px}
.pay .seg{background:transparent;border-color:var(--ink-line)}
.pay .seg button{color:var(--c-on-ink)}
.pay .seg button[aria-checked="true"]{background:var(--c-on-ink);color:var(--c-ink)}
.pay .seg button:not([aria-checked="true"]):hover{background:var(--ink-line)}
.pay :focus-visible{outline-color:var(--c-on-ink)}
.calc__out{padding:clamp(20px, 3vw, 40px);min-width:0}
.calc__k{color:var(--ink-soft)}
.calc__big{font-family:var(--f-display);font-weight:300;font-size:clamp(2.8rem, 6vw, 5.4rem);line-height:1;letter-spacing:-.045em;margin-top:10px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.calc__sub{margin-top:10px;color:var(--ink-soft);font-size:15px}
.stack{display:flex;height:10px;margin:28px 0 8px;gap:2px}
.stack span{display:block;height:100%;transition:flex-grow .6s var(--ease)}
.stack .s-down{background:var(--c-on-ink)}
.stack .s-int{background:var(--c-accent)}
.stack .s-mon{background:repeating-linear-gradient(90deg, var(--ink-soft) 0 2px, transparent 2px 5px)}
.calc__sum{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink-line)}
.calc__sum div{padding:13px 0;border-bottom:1px solid var(--ink-line)}
.calc__sum div:nth-child(even){padding-left:16px;border-left:1px solid var(--ink-line)}
.calc__sum dt{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}
.calc__sum dt i{width:10px;height:10px;display:inline-block}
.calc__sum dd{font-size:17px;margin-top:3px;font-variant-numeric:tabular-nums}
.calc__sum .sum-total dd{font-weight:600}
.sched{margin-top:24px;border-top:1px solid var(--ink-line)}
.sched summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;cursor:pointer;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;list-style:none}
.sched summary::-webkit-details-marker{display:none}
.sched summary::after{content:"";width:9px;height:9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .4s var(--ease)}
.sched[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
.sched__scroll{max-height:300px;overflow:auto;overscroll-behavior:contain;border:1px solid var(--ink-line);border-radius:var(--r-sm)}
.sched__t{width:100%;font-size:14px;font-variant-numeric:tabular-nums}
.sched__t th{position:sticky;top:0;background:var(--c-ink);text-align:left;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;color:var(--ink-soft);padding:10px 12px;border-bottom:1px solid var(--ink-line)}
.sched__t td{padding:9px 12px;border-bottom:1px solid var(--ink-line)}
.sched__t tr.t-key td{color:var(--c-on-ink);font-weight:600}
.sched__t tr.t-int td:nth-child(3)::before{content:"";display:inline-block;width:8px;height:8px;background:var(--c-accent);margin-right:8px}
.sched__t tr.t-milestone td{color:var(--c-on-ink);font-size:12px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--c-on-ink);background:var(--ink-line)}
.sched__t td:nth-child(4),.sched__t td:nth-child(5),.sched__t th:nth-child(4),.sched__t th:nth-child(5){text-align:right}
.calc__note{margin-top:20px;font-size:13px;color:var(--ink-soft);line-height:1.55}

/* ---------- Mimari ---------- */
.arch__grid{display:grid;grid-template-columns:repeat(12, minmax(0,1fr));gap:clamp(20px, 3vw, 40px) 24px;align-items:start}
.arch__main{grid-column:1 / 7;grid-row:1 / 3}
.arch__main img{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--r-lg)}
.specs{grid-column:7 / 13;border-top:1px solid var(--c-text);counter-reset:spec}
.specs li{display:grid;grid-template-columns:48px 1fr;gap:4px 16px;padding:18px 0;border-bottom:1px solid var(--c-line)}
.specs li::before{counter-increment:spec;content:counter(spec, decimal-leading-zero);grid-row:1 / 3;font-size:13px;color:var(--c-text-soft);font-variant-numeric:tabular-nums;padding-top:4px}
.specs h3{font-family:var(--f-display);font-weight:400;font-size:clamp(1.1rem, 1.5vw, 1.3rem);letter-spacing:-.01em;line-height:1.3}
.specs p{font-size:15px;color:var(--c-text-soft);line-height:1.55}
.arch__detail{grid-column:7 / 10}
.arch__detail--b{grid-column:10 / 13}
.arch__detail img{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--r-md)}
.arch figcaption{font-size:12px}

/* ---------- Olanaklar ---------- */
.amen__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(28px, 4vw, 56px);align-items:start}
.amen__list{border-top:1px solid var(--c-text)}
.amen__list li{display:grid;grid-template-columns:36px 1fr;gap:2px 12px;padding:16px 0;border-bottom:1px solid var(--c-line)}
.amen__list .n{grid-row:1 / 3;font-size:13px;color:var(--c-text-soft);padding-top:3px;font-variant-numeric:tabular-nums}
.amen__list strong{font-family:var(--f-display);font-weight:400;font-size:1.15rem;letter-spacing:-.01em}
.amen__list p{font-size:14.5px;color:var(--c-text-soft);line-height:1.5}
.gallery{display:grid;grid-template-columns:repeat(3, minmax(0,1fr));grid-auto-rows:clamp(150px, 16vw, 230px);gap:12px}
.gallery button{position:relative;overflow:hidden;border-radius:var(--r-md);background:var(--c-line);text-align:left;color:#fff}
.gallery button img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.gallery button:hover img{transform:scale(1.05)}
.gallery button::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, transparent 55%, rgba(0,0,0,.55));pointer-events:none}
.gallery .cap{position:absolute;left:14px;right:52px;bottom:12px;z-index:1;font-size:14px;line-height:1.3;text-shadow:0 1px 8px rgba(0,0,0,.3)}
.gallery .zoom{position:absolute;right:10px;bottom:10px;z-index:1;width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:50%;transition:background .3s,transform .5s var(--ease)}
.gallery .zoom .ic{width:15px;height:15px}
.gallery button:hover .zoom{background:rgba(255,255,255,.18);transform:rotate(90deg)}
.gallery .g-big{grid-column:span 2;grid-row:span 2}
.gallery .g-tall{grid-row:span 2}

/* ---------- İnşaat ---------- */
.prog__top{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px 56px;align-items:end;padding-bottom:36px;border-bottom:1px solid var(--c-text);margin-bottom:48px}
.prog__k{color:var(--c-text-soft)}
.prog__pct{font-family:var(--f-display);font-weight:300;font-size:clamp(4rem, 10vw, 8.5rem);line-height:.9;letter-spacing:-.05em;font-variant-numeric:tabular-nums;margin:6px 0 16px}
.prog__pct small{font-size:.4em;letter-spacing:0;margin-left:4px;color:var(--c-text-soft)}
.prog__pct small.pre{margin:0 6px 0 0}
.bar{position:relative;height:4px;background:var(--c-line);overflow:hidden}
.bar--lg{height:8px}
.bar span{position:absolute;inset:0;background:var(--c-primary);transform-origin:left;transform:scaleX(0);transition:transform 1.6s var(--ease) .2s}
.is-in .bar span,.bar.is-go span{transform:scaleX(var(--p, 0))}
.prog__blocks{display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:18px}
.prog__blocks li{display:flex;flex-direction:column;gap:8px}
.prog__blocks .pb-h{display:flex;justify-content:space-between;font-size:14px}
.prog__blocks .pb-h b{font-weight:500}
.prog__blocks .pb-h span{color:var(--c-text-soft);font-variant-numeric:tabular-nums}
.prog__blocks .pb-s{font-size:12.5px;color:var(--c-text-soft);line-height:1.4}
.prog__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px, 5vw, 72px);align-items:start}
.stages{position:relative}
.stages li{position:relative;display:grid;grid-template-columns:28px 1fr;gap:0 18px;padding-bottom:26px}
.stages li::before{content:"";position:absolute;left:13.5px;top:22px;bottom:-2px;width:1px;background:var(--c-line)}
.stages li:last-child::before{display:none}
.stages li.done::before{background:var(--c-primary)}
.stages .dot{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;border:1px solid var(--c-text);background:var(--c-bg);display:grid;place-items:center}
.stages .dot .ic{width:14px;height:14px}
.stages li.done .dot{background:var(--c-primary);border-color:var(--c-primary);color:var(--c-on-primary)}
.stages li.now .dot{border:2px solid var(--c-accent)}
.stages li.now .dot::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--c-accent)}
.stages .st-d{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-soft);padding-top:4px}
.stages .st-t{font-family:var(--f-display);font-weight:400;font-size:1.15rem;letter-spacing:-.01em;margin-top:2px}
.stages .st-s{font-size:14px;color:var(--c-text-soft);margin-top:2px}
.stages .bar{margin-top:10px;max-width:260px}
.stages li.now .bar span{background:var(--c-accent)}
.photos{display:grid;grid-template-columns:repeat(3, minmax(0,1fr));gap:12px}
.photos button{position:relative;overflow:hidden;border-radius:var(--r-md);text-align:left;color:#fff;background:var(--c-line)}
.photos button:first-child{grid-column:1 / -1}
.photos img{width:100%;aspect-ratio:4 / 3;object-fit:cover;transition:transform 1.2s var(--ease)}
.photos button:first-child img{aspect-ratio:16 / 8}
.photos button:hover img{transform:scale(1.04)}
.photos button::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, transparent 50%, rgba(0,0,0,.55));pointer-events:none}
.photos .cap{position:absolute;left:14px;right:14px;bottom:12px;z-index:1;display:flex;justify-content:space-between;gap:12px;font-size:13px;line-height:1.3}
.photos .cap b{font-weight:500;font-size:14px}
.photos button:not(:first-child) .cap{flex-direction:column;gap:2px}
.photos button:not(:first-child) .cap > span{font-size:12px;letter-spacing:.04em;opacity:.82}
.photos button:not(:first-child)::after{background:linear-gradient(180deg, transparent 35%, rgba(0,0,0,.62))}

/* ---------- Konum ---------- */
.loc__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px, 5vw, 64px);align-items:stretch}
.nearby .seg{margin-bottom:20px;flex-wrap:wrap}
.nearby__list{border-top:1px solid var(--c-text)}
.nearby__list li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--c-line);animation:rise .6s var(--ease) both}
.nearby__list li::after{content:"";grid-column:2;grid-row:1;border-bottom:1px dotted var(--c-text-soft);transform:translateY(-4px)}
.nearby__list .nm{grid-column:1;grid-row:1}
.nearby__list .ds{grid-column:3;grid-row:1;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.nearby__list .ds small{display:block;font-size:12.5px;color:var(--c-text-soft)}
@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.map{position:relative;min-height:440px;border:1px solid var(--c-line);border-radius:var(--r-lg);overflow:hidden;background:var(--c-surface)}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(.55) contrast(.95)}
.map__tag{position:absolute;left:16px;bottom:16px;right:16px;display:flex;align-items:center;gap:10px;max-width:max-content;padding:10px 14px;background:var(--c-surface);border:1px solid var(--c-text);border-radius:var(--r-sm);font-size:14px}
.map__tag .ic{color:var(--c-primary)}

/* ---------- İletişim ---------- */
.contact__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px, 6vw, 88px);align-items:start}
.contact .sec-lead{margin-top:22px}
.office{margin-top:36px;border-top:1px solid var(--c-text)}
.office li{display:grid;grid-template-columns:24px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--c-line)}
.office .ic{color:var(--c-primary);margin-top:2px}
.office small{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-soft);margin-bottom:2px}
.office a{border-bottom:1px solid transparent;transition:border-color .3s}
.office a:hover{border-color:currentColor}
.formcard{border:1px solid var(--c-text);border-radius:var(--r-lg);background:var(--c-surface);padding:clamp(20px, 3.4vw, 40px);box-shadow:var(--shadow)}
.form__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 18px;margin:26px 0 24px}
.fld{display:flex;flex-direction:column;min-width:0;border:0;padding:0;margin:0}
.fld--full{grid-column:1 / -1}
.fld label,.fld legend{color:var(--c-text-soft);margin-bottom:8px;padding:0}
.fld label small{text-transform:none;letter-spacing:0;font-size:12px}
.fld input,.fld select,.fld textarea{width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--c-line);border-radius:var(--r-sm);background:var(--c-bg);font-size:16px;transition:border-color .3s,background .3s}
.fld textarea{resize:vertical;min-height:92px}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--c-text);background:var(--c-surface)}
.fld.is-bad input,.fld.is-bad select{border-color:var(--c-accent)}
.fld__err{font-size:13px;color:var(--c-accent);min-height:0;margin-top:6px}
.fld__err:empty{display:none}
.check{display:flex !important;gap:12px;align-items:flex-start;text-transform:none !important;letter-spacing:0 !important;font-size:14px !important;color:var(--c-text) !important;cursor:pointer;line-height:1.5}
.check input{width:20px;height:20px;min-height:0;flex:none;margin:1px 0 0;accent-color:var(--c-primary)}
.form.is-brochure .only-visit{display:none}
.form__done{text-align:left;padding:12px 0}
.form__done:focus{outline:none}
.form__tick{width:56px;height:56px;border-radius:50%;background:var(--c-primary);color:var(--c-on-primary);display:grid;place-items:center;margin-bottom:22px}
.form__tick .ic{width:26px;height:26px}
.form__done h3{font-family:var(--f-display);font-weight:300;font-size:clamp(1.8rem, 3vw, 2.4rem);letter-spacing:-.03em;line-height:1.1}
.form__done p{margin:14px 0 26px;color:var(--c-text-soft);max-width:52ch}

/* ---------- SSS ---------- */
.faq__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(28px, 5vw, 72px)}
.acc{border-top:1px solid var(--c-text)}
.acc__item{border-bottom:1px solid var(--c-line)}
.acc__q{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:64px;padding:16px 0;text-align:left;font-family:var(--f-display);font-weight:400;font-size:clamp(1.05rem, 1.5vw, 1.25rem);letter-spacing:-.01em}
.acc__q .ic{transition:transform .5s var(--ease)}
.acc__q[aria-expanded="true"] .ic{transform:rotate(45deg)}
.acc__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.acc__a > div{overflow:hidden}
.acc__a p{padding:0 48px 22px 0;color:var(--c-text-soft);max-width:66ch}
.acc__q[aria-expanded="true"] + .acc__a{grid-template-rows:1fr}

/* ---------- Altbilgi ---------- */
.foot{background:var(--c-ink);color:var(--c-on-ink);padding:clamp(64px, 9vw, 110px) 0 32px}
.foot__top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:40px;border-bottom:1px solid var(--ink-line)}
.foot__brand{display:flex;align-items:center;gap:18px;font-family:var(--f-display);font-weight:300;font-size:clamp(2.6rem, 7vw, 6rem);letter-spacing:-.045em;line-height:1}
.foot__brand .brand__mark{width:clamp(40px, 5vw, 64px);height:clamp(40px, 5vw, 64px);stroke:var(--c-on-ink);stroke-width:1.2}
.foot__tag{color:var(--ink-soft);max-width:34ch}
.foot__cols{display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:28px;padding:40px 0}
.foot__cols > div{display:flex;flex-direction:column;gap:6px;font-size:15px}
.foot__cols a{align-self:flex-start;min-height:30px;display:flex;align-items:center;color:var(--c-on-ink);border-bottom:1px solid transparent}
.foot__cols a:hover{border-color:currentColor}
.foot__cols span{color:var(--ink-soft)}
.foot__h{color:var(--ink-soft);margin-bottom:8px}
.foot__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;padding-top:24px;border-top:1px solid var(--ink-line);font-size:13px;color:var(--ink-soft)}
.foot__bottom p:first-child{max-width:70ch}
.foot :focus-visible{outline-color:var(--c-on-ink)}

/* ---------- Lightbox ---------- */
.lb{position:fixed;inset:0;z-index:100;background:rgba(10,12,10,.92);display:grid;grid-template-columns:72px 1fr 72px;align-items:center;padding:24px 0;opacity:0;transition:opacity .4s var(--ease)}
.lb.is-on{opacity:1}
.lb[hidden]{display:none}
.lb__fig{grid-column:2;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-width:0}
.lb__fig img{max-width:100%;max-height:calc(100svh - 120px);object-fit:contain;border-radius:var(--r-sm);transform:scale(.97);transition:transform .6s var(--ease)}
.lb.is-on .lb__fig img{transform:none}
.lb__fig figcaption{display:flex;gap:16px;margin-top:14px;color:rgba(255,255,255,.82);font-size:14px}
.lb__fig figcaption span:first-child{color:rgba(255,255,255,.55);font-variant-numeric:tabular-nums}
.lb__nav,.lb__close{width:52px;height:52px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;justify-self:center;transition:background .3s}
.lb__nav:hover,.lb__close:hover{background:rgba(255,255,255,.12)}
.lb__prev{grid-column:1;grid-row:1}
.lb__next{grid-column:3;grid-row:1}
.lb__close{position:absolute;top:18px;right:18px}
.lb :focus-visible{outline-color:#fff}

/* ---------- Duyarlı ---------- */
@media (max-width:1240px){
  .hdr__phone{display:none}
  .hdr__nav{gap:18px}
}
@media (max-width:1100px){
  .hdr__nav{display:none}
  .burger{display:block}
  .picker{grid-template-columns:minmax(0,1fr)}
  .unit{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:80;max-height:88svh;overflow-y:auto;border-radius:var(--r-lg) var(--r-lg) 0 0;border-width:1px 0 0;transform:translateY(105%);transition:transform .55s var(--ease);visibility:hidden}
  .unit.is-open{transform:none;visibility:visible}
  .unit__close{display:grid}
  .unit__inner{max-width:560px;margin-inline:auto}
  .filters{grid-template-columns:1fr 1fr}
  .filters__type{grid-column:1 / -1}
}
@media (max-width:980px){
  .hero{min-height:0}
  .hero__grid{grid-template-columns:1fr;grid-template-rows:auto}
  .hero__copy{grid-column:1;grid-row:1;padding:44px 0 32px}
  .hero__figure{grid-column:1;grid-row:2;min-height:0;padding:0 30px 0 0}
  .hero__frame{aspect-ratio:4 / 3.4}
  .dimline{top:0}
  .hero__specs{grid-column:1;grid-row:3;margin:28px 0 0}
  .gridlines i:nth-child(2),.gridlines i:nth-child(4){display:none}
  .sec-head--row{grid-template-columns:minmax(0,1fr)}
  .about__grid,.dev__grid,.amen__grid,.prog__top,.prog__grid,.loc__grid,.contact__grid,.faq__grid,.calc{grid-template-columns:minmax(0,1fr)}
  .calc__form{border-right:0;border-bottom:1px solid var(--ink-line)}
  .arch__main{grid-column:1 / -1;grid-row:auto}
  .arch__main img{aspect-ratio:4 / 3}
  .specs{grid-column:1 / -1}
  .arch__detail{grid-column:1 / 7}
  .arch__detail--b{grid-column:7 / 13}
  .dev__media img{aspect-ratio:16 / 10}
  .map{min-height:360px}
  .foot__cols{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  body{font-size:16px}
  :root{--hdr:66px}
  .hdr__cta{display:none}
  .hero__copy{padding-top:36px}
  .hero__title{font-size:clamp(2.6rem, 11.5vw, 3.4rem)}
  .hero__ctas .btn{flex:1 1 auto}
  .hero__specs{grid-template-columns:1fr 1fr}
  .hero__specs div{padding:14px 12px 10px 0}
  .hero__specs div:nth-child(2){border-right:0}
  .hero__specs div:nth-child(3){padding-left:0;border-top:1px solid var(--c-line)}
  .hero__specs div:nth-child(4){border-top:1px solid var(--c-line)}
  .hero__figure{padding-right:26px}
  .gridlines{display:none}
  .figures dd{font-size:2rem}
  .picker__bar{flex-direction:column;align-items:stretch}
  .picker__bar .seg{display:flex}
  .picker__bar .seg button{flex:1;min-width:0;padding:0 6px;flex-direction:column;gap:0;line-height:1.15}
  .filters{grid-template-columns:1fr}
  .filters__end{justify-content:space-between}
  .rtable .c-hide,.sched__t .c-hide{display:none}
  .rtable{font-size:14px}
  .unit__code{font-size:2.8rem}
  .arch__detail,.arch__detail--b{grid-column:span 6}
  .arch__grid{grid-template-columns:repeat(12, minmax(0,1fr));gap:16px 12px}
  .arch__detail img{aspect-ratio:3 / 4}
  .gallery{grid-template-columns:1fr 1fr;grid-auto-rows:150px;gap:8px}
  .gallery .g-big{grid-column:1 / -1;grid-row:span 2}
  .gallery .g-tall{grid-row:span 2}
  .gallery .cap{font-size:13px;left:10px;bottom:10px;right:44px}
  .prog__blocks{grid-template-columns:1fr 1fr}
  .photos{gap:8px;grid-template-columns:1fr 1fr}
  .photos button:last-child{grid-column:1 / -1}
  .photos button:last-child img{aspect-ratio:16 / 8}
  .photos .cap{flex-direction:column;gap:0}
  .form__grid{grid-template-columns:1fr}
  .calc__sum{grid-template-columns:1fr}
  .calc__sum div:nth-child(even){padding-left:0;border-left:0}
  .sched__t th,.sched__t td{padding:8px}
  .foot__cols{grid-template-columns:1fr}
  .lb{grid-template-columns:1fr 1fr;grid-template-rows:1fr auto;padding:64px 12px 20px;gap:12px}
  .lb__fig{grid-column:1 / -1;grid-row:1}
  .lb__prev{grid-column:1;grid-row:2;justify-self:end}
  .lb__next{grid-column:2;grid-row:2;justify-self:start}
  .map__tag{font-size:13px}
  .track li{grid-template-columns:52px 1fr;}
  .track__u{grid-column:2}
  .nearby .seg{display:flex}
  .nearby .seg button{flex:1 1 auto}
}
.plate{flex:none;white-space:nowrap}
.sched__t td:nth-child(2),.sched__t td:nth-child(4),.sched__t td:nth-child(5){white-space:nowrap}
@media (max-width:640px){
  .sp-sm,.sp-lbl,.sp-road-t,.sp-north text,.sp-scale text{font-size:15px}
  .sp-block .sp-bl{font-size:38px}
}
