.detail-hero{position:relative;min-height:100vh;display:grid;grid-template-rows:1fr auto;overflow:hidden;background:var(--bg-deep)}.detail-hero .dh-media{position:absolute;inset:0;background-size:cover;background-position:50%;filter:brightness(.55) saturate(.85);animation:kenburns 22s var(--ease) infinite alternate}.detail-hero:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(7,7,7,.55),rgba(7,7,7,0) 35%,rgba(7,7,7,0) 60%,rgba(7,7,7,.9))}.detail-hero .crumbs{position:relative;z-index:2;padding:130px var(--pad-x) 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--fg-mute);text-transform:uppercase;display:flex;gap:14px;align-items:center}.detail-hero .crumbs .sep{color:var(--fg-soft)}.detail-hero .crumbs a{color:var(--fg-mute);transition:color .3s}.detail-hero .crumbs a:hover{color:var(--accent)}.detail-hero .dh-inner{position:relative;z-index:2;padding:0 var(--pad-x) 80px;align-self:end;display:grid;grid-template-columns:1fr;grid-gap:36px;gap:36px}.detail-hero .category{font-family:var(--font-display);font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:14px}.detail-hero .category:before{content:"";width:50px;height:1px;background:var(--accent)}.detail-hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(56px,9vw,144px);letter-spacing:-.024em;line-height:.94;text-transform:uppercase;margin:0}.detail-hero h1 em{font-style:italic;color:var(--accent);font-weight:400}.detail-hero .dh-meta{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:30px;gap:30px;padding:36px var(--pad-x);border-top:1px solid var(--line);background:rgba(7,7,7,.55);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.dh-meta .it .lbl{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-soft);margin-bottom:8px}.dh-meta .it .val{font-family:var(--font-display);font-weight:500;font-size:17px;letter-spacing:.02em;color:var(--fg);text-transform:uppercase}.overview{display:grid;grid-template-columns:.5fr 1fr;grid-gap:clamp(40px,7vw,120px);gap:clamp(40px,7vw,120px);padding:var(--section-y) var(--pad-x)}.overview .label{font-family:var(--font-display);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--fg-soft);display:flex;flex-direction:column;gap:14px}.overview .label:before{content:"";width:60px;height:1px;background:var(--accent)}.overview .body p{font-size:19px;line-height:1.7;color:var(--fg-mute);margin:0 0 22px}.overview .body p:first-of-type{font-size:24px;color:var(--fg);line-height:1.5}.overview .body p strong{color:var(--accent);font-weight:500}.gallery{padding:0 var(--pad-x) var(--section-y);display:grid;grid-template-columns:repeat(12,1fr);grid-gap:24px;gap:24px}.gallery .ph{overflow:hidden}.gallery .ph .img{width:100%;height:100%;background-size:cover;background-position:50%;filter:brightness(.82) saturate(.85);transition:transform 1.4s var(--ease),filter .6s}.gallery .ph:hover .img{transform:scale(1.05);filter:brightness(.92)}.gallery .g-8{grid-column:span 8;aspect-ratio:16/10}.gallery .g-4{grid-column:span 4;aspect-ratio:4/5}.gallery .g-6{grid-column:span 6;aspect-ratio:5/4}.gallery .g-12{grid-column:span 12;aspect-ratio:21/9}.quote-block{padding:var(--section-y) var(--pad-x);background:var(--bg-deep);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quote-block blockquote{font-family:var(--font-display);font-weight:400;font-size:clamp(28px,3.6vw,56px);line-height:1.18;letter-spacing:-.005em;max-width:22ch;margin:0;color:var(--fg);text-transform:uppercase}.quote-block blockquote:before{content:"\201C";color:var(--accent);margin-right:8px}.quote-block .who{margin-top:36px;display:flex;align-items:center;gap:16px;font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;color:var(--fg-mute);text-transform:uppercase}.quote-block .who:before{content:"";width:38px;height:1px;background:var(--accent)}.quote-block .who strong{color:var(--fg)}.specs{padding:var(--section-y) var(--pad-x)}.specs .head{display:grid;grid-template-columns:1fr 1fr;grid-gap:60px;gap:60px;margin-bottom:56px;align-items:end}.specs .head .num{font-family:var(--font-mono);font-size:12px;letter-spacing:.2em;color:var(--accent);text-transform:uppercase;margin-bottom:16px}.specs .head h2{font-family:var(--font-display);font-weight:600;font-size:clamp(34px,4.8vw,72px);letter-spacing:-.015em;line-height:.98;text-transform:uppercase;margin:0}.specs .head h2 .accent{color:var(--accent)}.specs-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:0;gap:0;border-top:1px solid var(--line)}.spec{padding:26px 28px 28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.spec:nth-child(3n){border-right:0}.spec .k{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;color:var(--fg-soft);margin-bottom:14px}.spec .k,.spec .v{text-transform:uppercase}.spec .v{font-family:var(--font-display);font-weight:500;font-size:clamp(22px,2.4vw,34px);letter-spacing:-.005em;color:var(--fg);line-height:1.06}.spec .v .accent{color:var(--accent)}.spec .sub{font-family:var(--font-body);font-size:12px;color:var(--fg-mute);margin-top:6px;line-height:1.5}.next-project{position:relative;padding:0;background:var(--bg-deep);cursor:pointer;overflow:hidden;display:block}.next-project .np-media{position:absolute;inset:0;background-size:cover;background-position:50%;filter:brightness(.42) saturate(.85);transition:transform 2s var(--ease),filter .5s}.next-project:hover .np-media{transform:scale(1.05);filter:brightness(.55)}.next-project:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(7,7,7,.75),rgba(7,7,7,.25))}.next-project .np-inner{position:relative;z-index:2;padding:140px var(--pad-x);display:grid;grid-template-columns:1fr auto;grid-gap:60px;gap:60px;align-items:end;min-height:70vh}.next-project .lbl{font-family:var(--font-display);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:22px;display:flex;align-items:center;gap:14px}.next-project .lbl:before{content:"";width:50px;height:1px;background:var(--accent)}.next-project h2{font-family:var(--font-display);font-weight:600;font-size:clamp(50px,8vw,132px);letter-spacing:-.022em;line-height:.94;text-transform:uppercase;margin:0}.next-project .arrow-large{width:120px;height:120px;border:1px solid var(--line-strong);border-radius:50%;display:grid;place-items:center;transition:background .4s,border-color .4s,transform .5s var(--ease-out)}.next-project:hover .arrow-large{background:var(--accent);border-color:var(--accent);transform:rotate(-45deg) scale(1.08)}.next-project .arrow-large svg{width:26px;height:26px;color:var(--fg)}.next-project:hover .arrow-large svg{color:var(--bg)}.phases{padding:var(--section-y) var(--pad-x);display:grid;grid-template-columns:minmax(190px,250px) 1fr;grid-gap:clamp(36px,4.5vw,72px);gap:clamp(36px,4.5vw,72px);align-items:start}.phases-head{margin-bottom:0;position:-webkit-sticky;position:sticky;top:96px}.phases-head .num{font-family:var(--font-mono);font-size:12px;letter-spacing:.2em;color:var(--accent);text-transform:uppercase;margin-bottom:22px}.phases-tabs{display:flex;flex-direction:column;gap:10px}.phases-tab{display:flex;align-items:center;gap:12px;width:100%;padding:14px 20px;border:1px solid var(--line);background:transparent;color:var(--fg-mute);cursor:pointer;font-family:var(--font-display);font-size:13px;letter-spacing:.04em;text-transform:uppercase;border-radius:2px;text-align:left;transition:color .3s,border-color .3s,background .3s}.phases-tab .step{font-family:var(--font-mono);font-size:11px;color:var(--accent)}.phases-tab:hover{color:var(--fg);border-color:var(--line-strong)}.phases-tab.is-on{color:var(--bg);background:var(--accent);border-color:var(--accent)}.phases-tab.is-on .step{color:var(--bg)}.phases-carousel{max-width:1180px}.phases-stage{position:relative;margin:0;overflow:hidden;border-radius:2px}.phases-stage .img{width:100%;aspect-ratio:16/9;background-size:cover;background-position:50%;filter:brightness(.9) saturate(.9);transition:filter .6s}.phases-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.25);background:rgba(7,7,7,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--fg);font-size:26px;line-height:1;cursor:pointer;border-radius:50%;transition:background .3s,border-color .3s,color .3s}.phases-nav:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}.phases-nav.prev{left:16px}.phases-nav.next{right:16px}.phases-counter{position:absolute;right:16px;bottom:14px;padding:5px 12px;border-radius:999px;background:rgba(7,7,7,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--fg-soft)}.phases-thumbs{display:flex;gap:10px;margin-top:14px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.phases-thumbs::-webkit-scrollbar{display:none}.phases-thumb{flex:0 0 auto;width:84px;height:56px;padding:0;cursor:pointer;border:1px solid transparent;border-radius:2px;background-size:cover;background-position:50%;opacity:.5;transition:opacity .3s,border-color .3s}.phases-thumb:hover{opacity:.85}.phases-thumb.is-on{opacity:1;border-color:var(--accent)}.before-after{padding:var(--section-y) var(--pad-x)}.ba-head{margin-bottom:36px}.ba-head .num{font-family:var(--font-mono);font-size:12px;letter-spacing:.2em;color:var(--accent);text-transform:uppercase;margin-bottom:16px}.ba-head h2{font-family:var(--font-display);font-weight:600;font-size:clamp(28px,4vw,52px);line-height:1.02;letter-spacing:-.01em;text-transform:uppercase;margin:0}.ba-head h2 .accent{color:var(--accent);font-style:italic;font-weight:400}.ba-list{display:flex;flex-direction:column;gap:40px}.ba-item{margin:0}.ba-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:2px;touch-action:none;cursor:ew-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:var(--bg-deep)}.ba-img{position:absolute;inset:0;background-size:cover;background-position:50%}.ba-before{z-index:2}.ba-tag-before{left:18px;transition:opacity .25s}.ba-tag{position:absolute;top:16px;z-index:3;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--fg);padding:6px 12px;background:rgba(7,7,7,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:2px}.ba-tag-after{right:18px}.ba-handle{top:0;bottom:0;z-index:4;width:2px;transform:translateX(-50%)}.ba-grip,.ba-handle{position:absolute;background:var(--accent)}.ba-grip{top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--bg);box-shadow:0 4px 20px rgba(0,0,0,.45);cursor:ew-resize}.ba-grip svg{width:22px;height:22px}.ba-handle:focus-visible{outline:none}.ba-handle:focus-visible .ba-grip{box-shadow:0 0 0 3px rgba(184,160,122,.5)}.ba-item figcaption{margin-top:14px;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--fg-mute)}@media (max-width:960px){.detail-hero .dh-meta{grid-template-columns:1fr 1fr;gap:18px}.overview{grid-template-columns:1fr}.gallery .g-4,.gallery .g-6,.gallery .g-8{grid-column:span 12;aspect-ratio:4/3}.specs-grid{grid-template-columns:1fr}.spec{border-right:0}.next-project .np-inner,.phases,.specs .head{grid-template-columns:1fr}.phases{gap:28px}.phases-head{position:static;margin-bottom:4px}.phases-tabs{flex-direction:row;flex-wrap:wrap}.phases-tab{width:auto}.phases-carousel{max-width:none}.phases-nav{width:38px;height:38px;font-size:22px}.phases-nav.prev{left:8px}.phases-nav.next{right:8px}}@media (max-width:600px){.detail-hero h1{font-size:clamp(36px,10vw,64px)}.detail-hero .dh-meta{grid-template-columns:1fr;padding:24px var(--pad-x)}.detail-hero .crumbs{padding-top:100px;font-size:10px}.overview .body p{font-size:16px}.overview .body p:first-of-type{font-size:18px}.gallery{gap:12px}.quote-block blockquote{font-size:clamp(22px,6vw,36px)}.spec{padding:20px 0}.next-project .np-inner{padding:80px var(--pad-x);min-height:50vh}.next-project h2{font-size:clamp(36px,10vw,60px)}.next-project .arrow-large{width:70px;height:70px}}