/* launch.css: components added for the Nov 2026 launch build (loaded after styles.css, v5.css) */
.phases .dl{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:14px;color:#e1ddd6}
.phases .dl b{display:block;font:500 10px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:4px}
.svc-faq{padding-top:0}.svc-faq .faq{margin-top:0;border-top:1px solid var(--line);padding-top:clamp(40px,5vw,70px)}
.svc-faq .faq details p,.fee-cmp p{max-width:70ch}
.checkcard{background:var(--ink-2);border-top:3px solid var(--orange);padding:clamp(22px,3vw,34px)}
.checkcard .type{display:block;font:500 10px/1.5 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--orange)}
.checkcard .ticks{margin:14px 0 6px}.checkcard .btn-line{color:var(--orange);margin-top:18px}
.feat-stack{display:grid;gap:34px}
.render-note{margin:28px 0 0;font-size:13px;color:#a9a49c}
.next-proj{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:clamp(28px,4vw,48px);padding-bottom:clamp(28px,4vw,48px);border-top:1px solid var(--line)}
.next-proj a{color:var(--orange);font-weight:500;font-size:14px;letter-spacing:.04em;border-bottom:1px solid transparent}.next-proj a:hover{border-bottom-color:currentColor}
.fee-cmp{padding-top:0}.fee-cmp .timeline{margin-top:0}
.fee-cmp .timeline td:first-child{color:#a9a49c;font-size:13px;letter-spacing:.04em}
.fee-cmp .timeline td:last-child{color:#fff;font-size:15px}
.form .consent{display:flex;align-items:flex-start;gap:12px;text-transform:none;letter-spacing:0;font:400 13px/1.5 var(--sans);color:#d6d2cb}
.form .consent input{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:var(--orange)}
.form .consent a{color:var(--orange);border-bottom:1px solid}
.form label.bad.consent span{color:#ffb38a}
.form .form-note{font-size:13px;line-height:1.5}
.form .form-note.warn{color:#ffd2b8;opacity:1}
.form input::placeholder{color:#6b6660}
.lotcheck h2{font-size:clamp(30px,3.6vw,52px);line-height:1.04;letter-spacing:-.03em;font-weight:600;margin-bottom:10px}
.lc-gets{margin:30px 0 18px;padding:20px 22px;background:rgba(22,21,20,.08);border-left:3px solid var(--ink)}
.lc-gets b{display:block;font-size:15px;margin-bottom:8px}.lc-gets ul{margin:0;padding-left:18px;font-size:14px;line-height:1.7}
.lc-legal{font-size:12px;opacity:.78;max-width:52ch;margin-top:14px}
.prose .wrap{max-width:860px}.prose h2{margin-top:40px}.prose h2:first-child{margin-top:0}
.prose p{max-width:68ch;line-height:1.75}.prose a{color:var(--orange);border-bottom:1px solid}
.site-footer .foot a[href^="mailto"]{border-bottom:1px solid rgba(255,255,255,.3)}
.foot-nav{flex-wrap:wrap}
@media(max-width:700px){.next-proj{flex-direction:column}}
.v5 .v5-q-g{grid-template-columns:1fr}
@media(min-width:1001px){.projects #projectGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.v5 .v5-badges img[alt="HAVAN member"]{background:var(--ink);padding:10px 14px;box-sizing:content-box}

/* ================= v6 (Nov 10): slimmer gutters, tighter rhythm, image-led pages ================= */
:root{--pad:clamp(16px,3.4vw,52px)}
.wrap{max-width:1480px}
.v5 .v5-w{max-width:1480px;padding:0 var(--pad)}
.v5 .v5-sec{padding:clamp(56px,6.4vw,96px) 0}
.v5 .v5-hd{margin-bottom:clamp(28px,3.4vw,48px)}
.svc-sec,.svc-detail,.case,.inv,.guide,.projects,.architects,.statement,.divisions,.interiors{padding-top:clamp(48px,6vw,88px);padding-bottom:clamp(48px,6vw,88px)}
.page-head{padding:clamp(100px,10vw,132px) 0 clamp(36px,4.4vw,60px)}
.page-head h1{font-size:clamp(36px,4.8vw,70px);max-width:18ch}
.page-head.shot{min-height:clamp(320px,38vw,500px);display:flex;align-items:flex-end;background:linear-gradient(0deg,var(--ink) 0%,rgba(22,21,20,.78) 38%,rgba(22,21,20,.42) 100%),var(--bg) center 40%/cover}
.page-head.shot .wrap{width:100%}
.page-head.shot p{color:#efece7}
.case-head{padding:clamp(150px,17vw,230px) 0 clamp(36px,4.6vw,60px)}
.cta-band{padding:clamp(40px,5vw,64px) 0}
.cta-band h2{font-size:clamp(26px,3vw,40px)}
.site-header{padding:16px var(--pad)}
.svc-sec + .cta-band,.projects + .interiors{margin-top:0}

/* How we work: image cards */
.steps-sec{padding:clamp(48px,6vw,88px) 0;background:var(--ink)}
.steps6{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,28px)}
.step6{background:var(--ink-2);display:flex;flex-direction:column}
.step6 figure{margin:0;aspect-ratio:16/10;overflow:hidden}
.step6 figure img{width:100%;height:100%;object-fit:cover;object-position:center 45%;transition:transform .8s}
.step6:hover figure img{transform:scale(1.03)}
.step6-b{padding:clamp(20px,2vw,28px)}
.step6-n{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.step6-n b{font-family:var(--display);font-size:34px;font-weight:500;color:var(--orange);line-height:1}
.step6-n span{font:600 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#a9a49c}
.step6 h3{font-size:21px;letter-spacing:-.01em;margin-bottom:8px}
.step6 p{color:#b9b4ac;font-size:14.5px;margin:0}
.step6 .dl{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);color:#e1ddd6}
.step6 .dl b{display:block;font:500 10px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-bottom:4px}
.steps-links{display:flex;gap:28px;flex-wrap:wrap;margin-top:clamp(28px,3vw,44px)}
.steps-links a{color:var(--orange);border-bottom:1px solid;font-weight:500;font-size:14px}

/* Services: image cards */
.svc.svc-i{padding:0;gap:0;overflow:hidden}
.svc-img{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--ink-2)}
.svc-img img{width:100%;height:100%;object-fit:cover;object-position:center 45%;transition:transform .8s}
.svc.svc-i:hover .svc-img img{transform:scale(1.03)}
.svc-b{display:flex;flex-direction:column;gap:10px;padding:clamp(20px,2.2vw,30px)}

/* Projects */
.proj-hd{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:14px}
.proj-hd .eyebrow{margin:0}.proj-hd p{margin:0;color:#a9a49c;font-size:14px;max-width:60ch}
.projects .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.card .tag{white-space:nowrap}

/* Investors */
.icards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,28px)}
.icard{background:var(--ink-2);display:flex;flex-direction:column}
.icard figure{margin:0;aspect-ratio:16/10;overflow:hidden}.icard figure img{width:100%;height:100%;object-fit:cover}
.icard>div{padding:clamp(20px,2vw,26px)}
.icard .n{font:600 10px/1 var(--sans);letter-spacing:.2em;color:var(--orange)}
.icard h3{font-size:20px;margin:10px 0 8px}.icard p{color:#b9b4ac;font-size:14.5px;margin:0}
.fee-split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(24px,4vw,64px);align-items:center}
.fee-img{margin:0;aspect-ratio:4/5;overflow:hidden}.fee-img img{width:100%;height:100%;object-fit:cover}
.inv-proof{background:var(--ink);padding:0 0 clamp(48px,6vw,88px)}
.inv-proof-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,28px)}
.inv-proof-g a{display:block}.inv-proof-g img{width:100%;aspect-ratio:3/2;object-fit:cover}
.inv-proof-g b{display:block;font-family:var(--display);font-size:30px;font-weight:500;color:var(--orange);margin-top:14px}
.inv-proof-g span{color:#b9b4ac;font-size:14px}

/* Architects: recent work */
.recent{background:var(--ink);padding:clamp(40px,5vw,72px) 0 clamp(48px,6vw,88px)}
.recent-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}
.recent-g a{display:block;position:relative;overflow:hidden}
.recent-g img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .8s}
.recent-g a:hover img{transform:scale(1.03)}
.recent-g span{position:absolute;left:0;right:0;bottom:0;padding:40px 16px 14px;background:linear-gradient(0deg,rgba(22,21,20,.85),transparent);font:600 11px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase}

/* Contact */
.contact-cards{background:var(--ink);padding:clamp(28px,3.6vw,48px) 0 0}
.cc-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}
.cc{display:flex;flex-direction:column;gap:6px;padding:clamp(20px,2.4vw,32px);background:var(--ink-2);border-top:3px solid var(--orange);color:#fff}
a.cc:hover{background:#262321}
.cc-k{font:600 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--orange)}
.cc b{font-size:clamp(20px,2vw,28px);font-weight:600;letter-spacing:-.01em;word-break:break-word}
.cc span:last-child{color:#a9a49c;font-size:14px}
.contact.v6c{background:var(--ink);color:var(--stone);padding:clamp(40px,5vw,72px) 0 clamp(56px,7vw,96px)}
.contact.v6c h2{color:#fff;font-size:clamp(30px,3.6vw,52px);margin-bottom:22px}.contact.v6c h2 em{color:var(--orange)}
.contact.v6c .next-steps li:before{color:var(--orange);opacity:1}
.contact.v6c .next-steps span,.contact.v6c .have-ready{color:#b9b4ac;opacity:1}
.contact.v6c .form{background:var(--ink-2);border:1px solid var(--line)}
.lc-promo{display:block;margin-top:28px;padding:18px 20px;border:1px solid var(--line);border-left:3px solid var(--orange)}
.lc-promo b{display:block;color:#fff;font-size:15px}.lc-promo span{color:var(--orange);font-size:14px}
.lc-promo:hover{background:var(--ink-2)}

/* Insights */
.ins-sec{background:var(--ink);padding:clamp(40px,5vw,72px) 0 clamp(56px,7vw,96px)}
.ins-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,28px)}
.ins-card{display:flex;flex-direction:column;background:var(--ink-2);color:var(--stone);transition:background .3s}
.v5-pap .ins-card,.v5-stn .ins-card{background:#fff;color:var(--ink)}
.ins-card:hover{background:#262321}
.ins-img{display:block;aspect-ratio:16/10;overflow:hidden;background:#2b2826}
.ins-img img{width:100%;height:100%;object-fit:cover;object-position:center 40%;transition:transform .8s}
.ins-card:hover .ins-img img{transform:scale(1.03)}
.ins-b{display:flex;flex-direction:column;gap:8px;padding:clamp(18px,2vw,26px);flex:1}
.ins-k{font:600 10px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--orange)}
.ins-card h3{font-size:20px;line-height:1.25;letter-spacing:-.01em;color:#fff}
.ins-card p{margin:0;color:#b9b4ac;font-size:14px;line-height:1.55;flex:1}
.ins-card b{font-size:13px;color:var(--orange);font-weight:600;margin-top:6px}
.ins-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.ins-filter button{background:transparent;border:1px solid var(--line);color:#d6d2cb;padding:10px 16px;font:500 12px/1 var(--sans);letter-spacing:.06em;min-height:40px}
.ins-filter button.on,.ins-filter button:hover{border-color:var(--orange);color:#fff;background:rgba(224,95,14,.12)}
.ins-card[hidden]{display:none}

/* Article */
.art-head{background:var(--ink);padding:clamp(108px,11vw,140px) 0 clamp(28px,3.4vw,44px);border-bottom:1px solid var(--line)}
.art-w{max-width:1180px}
.art-head h1{font-size:clamp(34px,4.4vw,62px);line-height:1.05;letter-spacing:-.03em;font-weight:600;max-width:20ch}
.art-dek{font-size:clamp(17px,1.5vw,20px);color:#d6d2cb;max-width:60ch;margin:18px 0 10px}
.art-meta{font-size:13px;color:#a9a49c;margin:0}
.art-head .back{display:inline-block;color:#a9a49c;font-size:13px;margin-bottom:22px}.art-head .back:hover{color:var(--orange)}
.art{background:var(--ink);padding:clamp(28px,3.6vw,52px) 0 clamp(56px,7vw,96px)}
.art-grid{max-width:1180px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(28px,4vw,64px);align-items:start}
.art-body{font-size:17px;line-height:1.75;color:#e1ddd6;max-width:70ch}
.art-body p{margin:0 0 1.1em}
.art-body ul,.art-body ol{margin:0 0 1.3em;padding-left:1.2em}.art-body li{margin:.35em 0}
.art-body li::marker{color:var(--orange)}
.art-body b{color:#fff;font-weight:600}
.art-cover{margin:0 0 28px;aspect-ratio:16/9;overflow:hidden}.art-cover img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.art-fig{margin:28px 0}.art-fig img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center 45%}
.art-cta{margin:36px 0 28px;padding:24px 26px;background:var(--orange);color:var(--ink)}
.art-cta b{color:var(--ink);font-size:20px;display:block}.art-cta p{margin:6px 0 16px;font-size:15px}
.art-cta .btn-solid{margin:0;background:var(--ink);color:#fff}
.art-src{border-top:1px solid var(--line);padding-top:18px;font-size:13.5px;line-height:1.6;color:#a9a49c}
.art-src b{color:#fff;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.art-note{font-size:13px;color:#a9a49c}
.art-share{display:flex;gap:14px;align-items:center;margin-top:20px;font-size:13px}
.art-share span{color:#a9a49c;letter-spacing:.16em;text-transform:uppercase;font-size:11px}
.art-share a,.art-share button{color:var(--orange);border:1px solid var(--line);padding:8px 14px;background:transparent;font:500 13px/1 var(--sans)}
.art-side{position:sticky;top:96px;display:flex;flex-direction:column;gap:20px}
.side-card{background:var(--ink-2);border-top:3px solid var(--orange);padding:22px}
.side-card b{display:block;color:#fff;font-size:19px;margin:8px 0 6px}.side-card p{margin:0 0 12px;color:#b9b4ac;font-size:14px}
.side-card a{color:var(--orange);font-size:14px;font-weight:500}
.side-list{display:flex;flex-direction:column;gap:12px;font-size:14px}
.side-list a{color:#e1ddd6;line-height:1.4;border-bottom:1px solid var(--line);padding-bottom:12px}.side-list a:hover{color:var(--orange)}

/* Links page (Instagram link in bio) */
.links-page{min-height:100svh;background:var(--ink);padding:110px 18px 60px;display:flex;justify-content:center}
.links-w{width:100%;max-width:520px;text-align:center}
.links-logo{height:56px;width:auto;margin:0 auto 14px}
.links-tag{color:#b9b4ac;font-size:14px;margin:0 0 26px}
.links-list{display:flex;flex-direction:column;gap:12px;text-align:left}
.lk{display:block;padding:16px 18px;border:1px solid var(--line);background:var(--ink-2)}
.lk b{display:block;color:#fff;font-size:16px}.lk span{display:block;color:#a9a49c;font-size:13px;margin-top:2px}
.lk:hover{border-color:var(--orange)}
.lk-main{background:var(--orange);border-color:var(--orange)}.lk-main b,.lk-main span{color:var(--ink)}
.links-foot{margin-top:26px;font-size:12px;color:#a9a49c}.links-foot a{color:var(--orange)}
body[data-page="links"] .site-header,body[data-page="links"] .site-footer .foot-nav{display:none}
body[data-page="links"] .links-page{padding-top:56px}

@media(max-width:1100px){.steps6,.icards,.ins-g,.projects .grid,.inv-proof-g{grid-template-columns:repeat(2,minmax(0,1fr))}.recent-g{grid-template-columns:repeat(2,minmax(0,1fr))}.art-grid{grid-template-columns:1fr}.art-side{position:static}}
@media(max-width:700px){.steps6,.icards,.ins-g,.projects .grid,.inv-proof-g,.cc-g{grid-template-columns:1fr}.fee-split{grid-template-columns:1fr}.fee-img{aspect-ratio:16/9}.page-head.shot{min-height:300px}.art-body{font-size:16px}}
.gallery:has(img:nth-child(5)){grid-template-columns:repeat(3,1fr)}@media(max-width:1000px){.gallery:has(img:nth-child(5)){grid-template-columns:1fr 1fr}}

/* v6.1 about header */
.about-head{padding-bottom:0}
.ah-g{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,5vw,80px);align-items:end}
.ah-copy{padding-bottom:clamp(40px,5vw,80px)}
.about-head p.ah-sig{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#8f8a83;margin-top:36px}
.about-head p.ah-sig b{color:#fff;font-weight:500}
.ah-ph{margin:0;position:relative;aspect-ratio:4/5;max-height:78vh;overflow:hidden}
.ah-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block}
.ah-ph:after{content:'';position:absolute;inset:auto 0 0 0;height:22%;background:linear-gradient(0deg,var(--ink),transparent)}
@media(max-width:860px){.ah-g{grid-template-columns:1fr}.ah-copy{padding-bottom:0}.ah-ph{aspect-ratio:4/4.4;max-height:none;margin:0 calc(var(--pad)*-1)}}

/* back to top */
.to-top{position:fixed;right:clamp(14px,2vw,28px);bottom:clamp(14px,2vw,28px);z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:52px;height:52px;padding:0;border:1px solid rgba(255,255,255,.22);background:rgba(22,21,20,.88);color:var(--orange);cursor:pointer;
  font:600 8.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s,transform .3s,visibility .3s,background .2s,color .2s,border-color .2s}
.to-top span{color:rgba(255,255,255,.7);padding-left:.18em}
.to-top.show{opacity:1;visibility:visible;transform:none}
.to-top:hover,.to-top:focus-visible{background:var(--orange);border-color:var(--orange);color:#161514}
.to-top:hover span,.to-top:focus-visible span{color:#161514}
.to-top:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:700px){body:has(.callbar:not([hidden])) .to-top{bottom:calc(64px + 12px)}.to-top{width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){.to-top{transition:none}}

/* header nav: keep the CTA on one line and give the links room on 13-15" laptops */
.site-header nav .cta{white-space:nowrap;flex:none}
@media(max-width:1500px) and (min-width:1201px){.site-header nav{gap:24px;letter-spacing:.12em}}
.site-header nav a.cta{padding:12px 20px;line-height:1}

/* orange call-to-action band: slimmer, one line on desktop */
.cta-band{padding:clamp(22px,2.6vw,36px) 0}
.cta-band h2{font-size:clamp(22px,2.1vw,30px);line-height:1.15;margin:0}
.cta-band p{margin:6px 0 0;font-size:15px;line-height:1.5}
.cta-band .wrap{gap:14px 30px}
.cta-band .btn-solid{padding:14px 22px;white-space:nowrap}
@media(max-width:700px){.cta-band{padding:24px 0}.cta-band h2{font-size:22px}.cta-band p{font-size:14px}}
