:root{--navy:#142336;--deep:#101d2d;--gold:#c6a76c;--ivory:#f5f2eb;--ink:#203044;--muted:#bcc5ce;--line:rgba(198,167,108,.3);--gold-ink:#806334}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:185px}body{margin:0;background:var(--navy);color:#fff;font:18px/1.75 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.025em;line-height:1.15}h1{font-size:clamp(65px,6.6vw,108px)}h2{font-size:clamp(43px,4.5vw,66px)}h3{font-size:32px}em{font-weight:400;color:var(--gold)}.section-light{background:var(--ivory);color:var(--ink)}.section-light em{color:var(--gold-ink)}.eyebrow,.section-index{font-family:Arial,sans-serif;font-size:13px;font-weight:600;letter-spacing:.15em;line-height:1.6;color:var(--gold);margin-bottom:22px}.section-light .eyebrow,.section-index{color:var(--gold-ink)}.preview-bar{display:flex;justify-content:space-between;gap:20px;padding:7px 6%;font-size:10px;letter-spacing:.12em;background:var(--deep);color:var(--gold)}.preview-bar span{color:var(--muted);letter-spacing:.03em}.header{position:sticky;top:0;z-index:25;padding:18px 6% 0;background:#142336fa;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.wordmark{display:block;max-width:1240px;margin:auto;text-align:center;line-height:1.1}.wordmark>span{font-family:Georgia,serif;font-size:48px;letter-spacing:-.025em}.wordmark-dot{color:var(--gold)}.wordmark small{display:block;font-size:11px;color:var(--gold);letter-spacing:.17em;margin:9px 0 15px}nav{position:relative;display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1240px;margin:auto;border-top:1px solid var(--line)}nav a{position:relative;display:block;font-size:16px;color:var(--muted);padding:15px 14px;line-height:1.4}nav a:first-child{padding-left:0}nav a:last-of-type{padding-right:0}nav a.active,nav a:hover{color:var(--gold)}.nav-indicator{position:absolute;left:0;bottom:-1px;height:3px;background:var(--gold);width:var(--indicator-width,40px);transform:translateX(var(--indicator-left,0px));pointer-events:none}.hero{padding:68px 6% 72px;max-width:1440px;margin:auto}.hero-copy{width:100%}.intro{font-size:22px;line-height:1.7;color:var(--muted);max-width:1050px;margin-top:28px}.hero-actions{display:flex;gap:18px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 26px;border:1px solid transparent;border-radius:2px;font-size:16px;line-height:1.5;background:transparent;transition:background .2s,color .2s}.gold{background:var(--gold);color:var(--deep)}.gold:hover{background:#e2c790}.hero-actions .button{min-width:235px}.integrated-strategy{padding:55px 6% 32px}.strategy-statement,.strategy-label,.brrr-tabs,.brrr-panels,.approach-note,.section-heading,.project-grid{max-width:1240px;margin-left:auto;margin-right:auto}.strategy-statement{display:block;padding:0}.strategy-statement h2{margin-bottom:23px}.strategy-statement p{font-size:19px;color:#53606c;max-width:1120px;margin-top:16px}.strategy-label{font-size:16px;letter-spacing:.12em;margin-top:32px;margin-bottom:14px}.brrr-tabs{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid #92733d50}.brrr-tabs button{border:0;border-bottom:3px solid transparent;background:none;color:#56616c;font-family:Georgia,serif;font-size:27px;padding:17px 10px;line-height:1.2;text-align:center}.brrr-tabs button:hover{color:var(--gold-ink);background:#92733d0b}.brrr-tabs button[aria-selected=true]{color:var(--gold-ink);border-bottom-color:#92733d}.brrr-panels article{display:block;padding:25px 0 24px;min-height:0}.brrr-panels article[hidden]{display:none}.panel-letter{display:none}.brrr-panels .eyebrow{margin-bottom:12px;font-size:12px}.brrr-panels h3{font-size:34px}.brrr-panels p:not(.eyebrow){color:#53606c;font-size:18px;margin-top:15px;max-width:1120px}.panel-tags{display:flex;gap:10px 22px;flex-wrap:wrap;margin-top:16px}.panel-tags span{color:var(--gold-ink);font-size:13px}.approach-note{padding-top:20px;margin-top:0;border-top:1px solid #92733d40;display:block}.approach-note>span{display:block;font-size:13px;letter-spacing:.12em;color:var(--gold-ink);font-weight:600;margin-bottom:9px}.approach-note p{font-size:17px;color:#53606c;max-width:1120px}.projects{padding:34px 6% 55px}.section-heading{display:block}.section-heading>p{font-size:19px;color:#53606c;margin-top:20px;max-width:1100px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:30px}.project-visual{display:block;width:100%;height:365px;border:1px solid #c6a76c50;position:relative;overflow:hidden;background:#223448;color:var(--ivory);text-align:left;padding:0}.project-visual:before,.project-visual:after{content:'';position:absolute;border:1px solid #c6a76c66;transform:rotate(-22deg);width:330px;height:330px;right:-80px;top:80px;pointer-events:none}.project-visual:after{right:-35px;top:130px;border-color:#c6a76c33}.stem{background:#34433d}.stem:before,.stem:after{transform:rotate(22deg);right:-90px;top:-80px;width:440px;height:440px}.project-number{position:absolute;top:25px;left:28px;font-size:12px;letter-spacing:.12em;color:#ddc58f}.project-word{position:absolute;left:28px;bottom:95px;font-family:Georgia,serif;font-size:76px;line-height:1.1;letter-spacing:-.035em}.project-word span{display:block;font-family:Arial,sans-serif;font-size:11px;letter-spacing:.18em;margin-top:15px;color:#d1d5d6}.photo-note{position:absolute;left:28px;right:28px;bottom:25px;border-top:1px solid #ffffff30;padding-top:12px;font-size:12px;color:#d0d5d7}.project-overlay{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;background:#101d2dcf;opacity:0;transition:opacity .2s}.project-overlay>span{padding:15px 22px;background:var(--gold);color:var(--deep);font-size:15px;border-radius:2px}.project-visual:hover .project-overlay,.project-visual:focus-visible .project-overlay{opacity:1}.project-caption{margin-top:19px}.project-caption h3{font-size:31px}.project-caption p{font-size:15px;color:#66717c;margin-top:4px}.project-summary{font-size:17px;color:#53606c;margin-top:17px}.project-facts{display:flex;gap:8px 12px;flex-wrap:wrap;margin-top:18px}.project-facts span{font-size:12px;color:var(--gold-ink);border:1px solid #92733d45;padding:5px 9px}.about{padding:55px 6%}.about-copy{max-width:1240px;margin:auto}.about-copy h2{margin-bottom:22px}.about-copy>p:not(.eyebrow){font-size:19px;color:var(--muted);margin-top:17px;max-width:1120px}.interview-banner{width:min(100%,620px);margin:28px 0 0;border:1px solid var(--line);background:var(--deep)}.interview-banner img{width:100%;height:auto;filter:none;aspect-ratio:auto}.interview-banner a{display:block}.interview-banner a:hover{opacity:.88}.portrait-caption{padding:14px 18px;font-size:13px;letter-spacing:.08em;color:var(--gold);line-height:1.5}.portrait-caption span{display:block;font-size:12px;color:var(--muted);letter-spacing:0;margin-top:4px}.contact{display:grid;grid-template-columns:1fr 1.4fr;gap:6%;padding:55px 6%;border-top:1px solid var(--line);max-width:1440px;margin:auto}.contact-copy>p:not(.eyebrow){font-size:18px;color:var(--muted);margin-top:22px}.contact-email{display:block;font-size:18px;color:var(--gold);margin-top:25px;overflow-wrap:anywhere}form label{display:block;font-size:15px;margin-bottom:20px}form label>span{font-size:13px;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,select,textarea{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #71809480;border-radius:0;background:#1b2b3e;color:var(--ivory);min-height:48px;font-size:16px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:2px}::placeholder{color:#b1bbc6;font-size:14px}.form-note{font-size:13px;color:var(--muted);margin-bottom:20px}.form-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.button:disabled{opacity:.65;cursor:wait}#form-status{font-size:14px;color:var(--gold);margin-top:15px}#form-status.success{padding:17px;border:1px solid var(--line);background:#c6a76c0c}footer{padding:35px 6% 65px;border-top:1px solid var(--line);background:var(--deep);text-align:center}.footer-identity{display:inline-flex;flex-direction:column;align-items:center;gap:15px}.footer-identity img{width:100px;filter:invert(1);mix-blend-mode:screen}.footer-identity>span{font-family:Georgia,serif;font-size:30px}.footer-details{font-size:13px;color:var(--muted);margin-top:13px}.back-top{display:inline-block;margin-top:17px;font-size:12px;color:var(--gold)}.whatsapp-float{position:fixed;bottom:18px;right:18px;display:flex;gap:8px;align-items:center;background:#25d366;color:#102b1b;padding:10px 15px;border-radius:30px;box-shadow:0 3px 16px #0004;font-size:13px;z-index:30}.whatsapp-float svg{width:26px;height:26px}.skip{position:fixed;top:-100px;left:10px;background:var(--gold);color:var(--deep);padding:10px 20px;z-index:50}.skip:focus{top:10px}:focus-visible{outline:2px solid var(--gold);outline-offset:4px}dialog{background:var(--ivory);color:var(--ink);border:0;padding:45px;max-width:730px;width:calc(100% - 30px);max-height:90vh;overflow:auto}dialog::backdrop{background:#101d2dcc}dialog h2{margin-bottom:22px}dialog p:not(.eyebrow){font-size:17px;margin:16px 0}.dialog-close{position:absolute;top:12px;right:20px;font-size:30px;color:var(--ink);background:none;border:0}#project-detail ul{padding-left:20px;font-size:16px;line-height:1.8}.gallery-pending{font-size:13px!important;color:#68717a;border-top:1px solid #92733d40;padding-top:16px}dialog .button{margin-top:15px}
@media(max-width:1000px){.wordmark>span{font-size:43px}.hero h1{font-size:clamp(54px,7vw,78px)}.contact{grid-template-columns:1fr 1.25fr;gap:5%}.form-row{grid-template-columns:1fr;gap:0}.project-visual{height:320px}.project-summary{font-size:16px}}
@media(max-width:700px){html{scroll-padding-top:150px}body{font-size:16px}.preview-bar{padding:6px 5%;font-size:8px;gap:10px}.header{padding:14px 5% 0}.wordmark>span{font-size:36px}.wordmark small{font-size:8px;letter-spacing:.12em;margin:8px 0 13px}nav{gap:8px}nav a{font-size:12px;padding:12px 0}.hero{padding:35px 6% 40px}.hero h1{font-size:clamp(39px,9.2vw,64px)}.eyebrow,.section-index{font-size:11px;margin-bottom:17px}.intro{font-size:17px;margin-top:21px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:25px}.hero-actions .button{min-width:0;font-size:12px;padding:14px 10px}.button{font-size:14px;padding:14px 21px}h2{font-size:37px}h3{font-size:27px}.integrated-strategy{padding:35px 6% 20px}.strategy-statement h2{margin-bottom:18px}.strategy-statement p{font-size:16px;margin-top:14px}.strategy-label{font-size:13px;letter-spacing:.07em;margin-top:25px;margin-bottom:9px}.brrr-tabs button{font-size:16px;padding:15px 2px}.brrr-panels article{padding:21px 0 20px}.brrr-panels h3{font-size:26px}.brrr-panels p:not(.eyebrow){font-size:16px;margin-top:13px}.brrr-panels .eyebrow{font-size:10px}.panel-tags{gap:7px 14px;margin-top:14px}.panel-tags span{font-size:11px}.approach-note{padding-top:17px}.approach-note>span{font-size:11px}.approach-note p{font-size:15px}.projects{padding:24px 6% 35px}.section-heading>p{font-size:16px;margin-top:16px}.project-grid{grid-template-columns:1fr;gap:28px;margin-top:23px}.project-visual{height:305px}.project-word{font-size:66px}.project-number,.photo-note{font-size:10px}.project-caption{margin-top:15px}.project-caption h3{font-size:29px}.project-caption p{font-size:13px}.project-summary{font-size:15px;margin-top:13px}.project-facts span{font-size:11px}.about{padding:35px 6%}.about-copy>p:not(.eyebrow){font-size:16px;margin-top:15px}.about-copy h2{margin-bottom:17px}.interview-banner{margin-top:23px}.portrait-caption{padding:12px;font-size:11px}.portrait-caption span{font-size:11px}.contact{grid-template-columns:1fr;padding:35px 6%;gap:28px}.contact-copy>p:not(.eyebrow){font-size:16px;margin-top:17px}.contact-email{font-size:16px;margin-top:18px}form label{font-size:14px;margin-bottom:18px}.form-row{grid-template-columns:1fr;gap:0}.form-note{font-size:12px}footer{padding:28px 6% 78px}.footer-identity img{width:85px}.footer-identity>span{font-size:28px}.footer-details{font-size:11px}.whatsapp-float{bottom:14px;right:14px;font-size:12px}dialog{padding:40px 25px}dialog p:not(.eyebrow),#project-detail ul{font-size:15px}}
@media(hover:none){.project-overlay{opacity:1;background:transparent;align-items:flex-end;justify-content:flex-start;padding:0 24px 60px;pointer-events:none}.project-overlay>span{font-size:12px;padding:9px 12px}.project-word{bottom:128px}.photo-note{bottom:18px}}
@media(max-width:360px){.wordmark>span{font-size:33px}nav a{font-size:11px}.hero-actions{grid-template-columns:1fr}.brrr-tabs button{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Opening masthead: fixed geometry lets it shrink without shifting the page. */
.preview-bar{display:none}.masthead-space{height:100svh}.header{--masthead-expand:1;--compact-height:158px;--compact-font:48px;--opening-font:clamp(90px,12vw,220px);position:fixed;inset:0 0 auto;display:flex;flex-direction:column;justify-content:flex-end;height:calc(var(--compact-height) + (100svh - var(--compact-height))*var(--masthead-expand));padding:18px 6% 0}.wordmark{width:100%;margin:auto;flex-shrink:0}.wordmark>span{font-size:calc(var(--compact-font) + (var(--opening-font) - var(--compact-font))*var(--masthead-expand));white-space:nowrap}.wordmark small{font-size:calc(11px + 5px*var(--masthead-expand));margin-top:calc(9px + 16px*var(--masthead-expand));letter-spacing:calc(.17em + .04em*var(--masthead-expand))}.header nav{width:100%;flex-shrink:0;margin:0 auto}.header{background:var(--navy)}
@media(max-width:700px){.header{--compact-height:130px;--compact-font:36px;--opening-font:11.7vw;padding:14px 5% 0}.wordmark small{font-size:calc(8px + 2px*var(--masthead-expand));letter-spacing:.12em;margin-top:calc(8px + 12px*var(--masthead-expand))}}
@media(max-width:360px){.header{--compact-font:33px}}
@media(prefers-reduced-motion:reduce){.header{height:var(--compact-height)}.wordmark>span{font-size:var(--compact-font)}.wordmark small{font-size:11px;margin-top:9px}.masthead-space{height:var(--compact-height,158px)}}
@media(max-width:700px){.header{--opening-font:20vw}.wordmark>span{display:block;white-space:normal;max-width:100%;text-wrap:balance}}
@media(prefers-reduced-motion:reduce) and (max-width:700px){.masthead-space{height:130px}}
/* Use transforms for mobile animation and stable initial viewport geometry. */
.mobile-opening{display:none}.header{height:calc(var(--compact-height) + (var(--opening-height,100svh) - var(--compact-height))*var(--masthead-expand));backdrop-filter:none}.masthead-space{height:var(--opening-height,100svh)}.nav-indicator{width:1px;transform-origin:left center;transform:translate3d(var(--indicator-left,0px),0,0) scaleX(var(--indicator-scale,40));will-change:transform}
@media(max-width:700px){.header{height:130px;transform:translate3d(0,var(--header-offset,calc(100svh - 130px)),0);will-change:transform}.header .wordmark{opacity:var(--compact-opacity,0)}.header .wordmark>span{font-size:36px;white-space:nowrap}.header .wordmark small{font-size:8px;margin-top:8px}.mobile-opening{display:flex;position:fixed;inset:0 0 auto;height:var(--opening-height,100svh);padding:0 5% 130px;align-items:center;justify-content:center;background:var(--navy);z-index:24;pointer-events:none;will-change:transform}.opening-wordmark{width:100%;font-family:Georgia,serif;font-size:20vw;text-align:center;line-height:1.1;text-wrap:balance;will-change:transform,opacity}.opening-wordmark>span{color:var(--gold)}.opening-wordmark small{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.12em;color:var(--gold);margin-top:20px}}
@media(max-width:360px){.header .wordmark>span{font-size:33px}}
@media(prefers-reduced-motion:reduce){.header{height:var(--compact-height);transform:none!important}.header .wordmark{opacity:1}.mobile-opening{display:none!important}.masthead-space{height:158px}}
@media(prefers-reduced-motion:reduce) and (max-width:700px){.masthead-space{height:130px}}

@media(min-width:701px){.interview-banner{margin-left:auto;margin-right:auto}}

/* Stem project photography and original floor plans. */
.has-photography:before,.has-photography:after{display:none}.project-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.has-photography{isolation:isolate}.has-photography .project-cover{z-index:-2}.has-photography:after{content:'';display:block;inset:0;width:100%;height:100%;border:0;transform:none;background:linear-gradient(180deg,#101d2d55 0%,#101d2d22 30%,#101d2de6 100%);z-index:-1}.has-photography .project-number{color:#f0d9a8}.has-photography .photo-note{color:#fff}.has-photography .project-word span{color:#fff}
dialog.with-gallery{max-width:1080px}.stem-gallery{border-top:1px solid #92733d40;margin-top:25px;padding-top:24px}.stem-gallery h3{font-size:30px}.gallery-controls{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.gallery-controls button{border:1px solid #92733d60;background:transparent;color:var(--ink);padding:12px 20px;min-height:44px;font-size:14px}.gallery-controls button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:var(--ivory)}.gallery-controls button:hover{border-color:var(--gold-ink)}dialog .gallery-help{font-size:13px!important;color:#68717a;margin:12px 0 20px!important}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 16px}.gallery-grid figure{margin:0;min-width:0}.gallery-grid a{display:block;background:#e8e4dc;overflow:hidden}.gallery-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-grid figcaption{font-size:13px;margin-top:8px;color:#53606c;line-height:1.4}.floorplan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.floorplan-grid a{background:white;border:1px solid #92733d30;padding:12px}.floorplan-grid img{aspect-ratio:4/3;object-fit:contain}.with-gallery .dialog-close{position:sticky;display:block;margin-left:auto;top:0;right:0;z-index:2;width:44px;height:44px;line-height:1;background:var(--ivory);border:1px solid #92733d40;border-radius:50%;margin-top:-25px;margin-bottom:0}
@media(max-width:700px){dialog.with-gallery{padding:30px 20px}.stem-gallery h3{font-size:26px}.gallery-controls button{padding:11px 15px;font-size:13px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.gallery-grid figcaption{font-size:12px}.floorplan-grid{grid-template-columns:1fr}.floorplan-grid img{aspect-ratio:auto;height:auto}.with-gallery .dialog-close{margin-top:-12px}.has-photography .photo-note{font-size:10px}}

.plan-controls[hidden]{display:none}.plan-controls{margin-top:12px}.floorplan-grid{grid-template-columns:1fr;max-width:850px;margin:auto}.floorplan-grid img{aspect-ratio:auto;height:auto;object-fit:contain}.floorplan-grid figcaption{text-align:center}

/* Floor-plan selector: paired layout cards with a clear active state. */
.plan-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;background:var(--navy);border:1px solid #c6a76c70;border-radius:10px;margin:20px 0 8px;max-width:850px;box-shadow:0 4px 16px #14233612}.plan-controls button{display:flex;align-items:center;gap:14px;text-align:left;padding:16px 18px;border:1px solid transparent;border-radius:6px;color:var(--ivory);background:transparent;min-height:84px;transition:background .18s,color .18s,border-color .18s}.plan-controls button[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:var(--deep);box-shadow:0 2px 8px #0002}.plan-controls button:hover{border-color:var(--gold)}.plan-choice-icon{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:1px solid currentColor;border-radius:6px;opacity:.8}.plan-choice-icon svg{width:30px;height:30px}.plan-choice-copy{display:flex;flex-direction:column;gap:5px}.plan-choice-copy strong{font-family:Georgia,serif;font-size:23px;font-weight:400;line-height:1.1}.plan-choice-copy small{font-size:12px;opacity:.85;line-height:1.3}.plan-controls button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(max-width:700px){.plan-controls{gap:6px;padding:6px}.plan-controls button{gap:9px;padding:13px 10px;min-height:76px}.plan-choice-icon{width:34px;height:34px}.plan-choice-icon svg{width:25px;height:25px}.plan-choice-copy strong{font-size:21px}.plan-choice-copy small{font-size:10px}}
