:root{--cream:#f4efe5;--ink:#272d27;--forest:#293b31;--sand:#e7ded0;--white:#fff;--header-h:88px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit}.video-stage{position:fixed;inset:0;z-index:0;background:#182019;opacity:1;will-change:opacity;transition:opacity .08s linear}.video-stage video{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9) contrast(1.02)}.video-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,21,16,.23),rgba(13,21,16,.32) 55%,rgba(13,21,16,.57));transition:background .7s ease}.entry{position:fixed;inset:0;z-index:30;display:grid;place-items:center;color:#fff;text-align:center;background:rgba(14,21,17,.12);opacity:1;visibility:visible;transition:opacity .8s cubic-bezier(.22,1,.36,1),visibility .8s}.entry-inner{width:min(760px,90vw);padding:40px 24px 54px;transform:translateY(0);transition:transform .9s cubic-bezier(.22,1,.36,1),opacity .8s ease}.entry-logo{width:clamp(160px,17vw,222px);height:auto;display:block;margin:0 auto 10px;filter:none;opacity:0;transform:translateY(10px) scale(.985);animation:logoIn 1.2s .15s cubic-bezier(.22,1,.36,1) forwards;image-rendering:auto}.entry-wordmark{font:400 clamp(31px,4.32vw,49px)/1 Georgia,serif;letter-spacing:.2em;text-indent:.2em;margin-top:-7px;text-shadow:0 2px 16px rgba(0,0,0,.22)}.entry-wordmark span{font-weight:400}.entry-rule{width:46px;height:1px;background:rgba(255,255,255,.64);margin:21px auto}.entry-kicker,.eyebrow{text-transform:uppercase;letter-spacing:.28em;font-size:12px}.entry-kicker{margin:0 0 18px;opacity:.88}.entry h1{font:400 clamp(56px,7.56vw,102px)/.98 Georgia,serif;letter-spacing:-.045em;margin:0 auto 22px;text-shadow:0 3px 24px rgba(0,0,0,.28)}.entry-sub{font-size:17px;line-height:1.6;letter-spacing:.03em;margin:0 auto 28px;max-width:560px}.enter-button{appearance:none;border:1px solid rgba(255,255,255,.7);background:rgba(247,242,232,.08);backdrop-filter:blur(7px);color:white;padding:15px 25px;min-width:164px;text-transform:uppercase;letter-spacing:.16em;font-size:13px;cursor:pointer;transition:background .3s ease,color .3s ease,transform .3s ease}.enter-button:hover{background:var(--cream);color:var(--forest);transform:translateY(-2px)}.enter-button span{display:inline-block;margin-left:10px;transition:transform .3s ease}.enter-button:hover span{transform:translateY(3px)}body.entered .entry{opacity:0;visibility:hidden;pointer-events:none}body.entered .entry-inner{transform:translateY(-20px);opacity:0}.site-header{position:fixed;top:0;left:0;right:0;z-index:20;height:var(--header-h);padding:15px 5vw;display:flex;align-items:center;justify-content:space-between;color:white;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .65s .15s ease,transform .65s .15s ease,background .35s ease,color .35s ease,box-shadow .35s ease}.entered .site-header{opacity:1;transform:none;pointer-events:auto}.site-header.scrolled{background:rgba(244,239,229,.96);color:var(--ink);box-shadow:0 1px 0 rgba(39,45,39,.1);backdrop-filter:blur(12px)}.brand-lockup{display:flex;align-items:center;gap:10px;text-decoration:none}.brand-lockup img{width:52px;height:52px;object-fit:contain;filter:none;image-rendering:auto}.brand-lockup span{display:block}.brand-lockup strong{font:400 26px/1 Georgia,serif;letter-spacing:.11em}.brand-lockup small{display:block;margin-top:4px;font:11px/1 Arial,sans-serif;letter-spacing:.21em}.site-header nav{display:flex;gap:26px}.site-header nav a{text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-size:12px}.site-header nav a:hover{opacity:.7}main{position:relative;z-index:1}.home-hero{height:100svh;min-height:650px;display:flex;align-items:center;color:white;position:relative}.home-copy{max-width:790px;margin-left:8vw;padding:calc(var(--header-h) + 42px) 25px 70px 0;opacity:0;transform:translateY(18px);transition:opacity .8s .22s ease,transform .9s .22s cubic-bezier(.22,1,.36,1)}.entered .home-copy{opacity:1;transform:none}.eyebrow.light{color:rgba(255,255,255,.75)}.home-copy h2{font:400 clamp(51px,6.912vw,96px)/1.01 Georgia,serif;letter-spacing:-.04em;margin:17px 0 28px;text-shadow:0 3px 24px rgba(0,0,0,.27)}.home-copy>p{font-size:19px;line-height:1.66;max-width:680px;text-shadow:0 2px 13px rgba(0,0,0,.22)}.home-copy .home-manifesto{font-family:Georgia,serif;font-size:24px;margin-top:24px}.ghost-link{display:inline-block;margin-top:17px;color:white;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:5px;text-transform:uppercase;letter-spacing:.15em;font-size:12px}.ghost-link span{margin-left:8px}.gallery{position:relative;z-index:2;background:var(--cream);padding:105px 4vw 95px;box-shadow:0 -20px 55px rgba(15,22,18,.1)}.gallery-heading{display:flex;align-items:end;justify-content:space-between;padding:0 2vw 50px;gap:30px}.gallery-heading p{max-width:340px;line-height:1.65;color:#5b635b}.section-title{font:400 clamp(43px,5.4vw,73px)/1.08 Georgia,serif;margin:15px 0 0}.photos{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}.photo{margin:0;grid-column:span 6;overflow:hidden;background:#d4c8b8}.photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.22,1,.36,1)}.photo:hover img{transform:scale(1.018)}.photo:nth-child(3n + 1){grid-column:span 7;aspect-ratio:1.18}.photo:nth-child(3n + 2){grid-column:span 5;aspect-ratio:.84}.photo:nth-child(3n){grid-column:span 12;aspect-ratio:2.1}.closing{position:relative;z-index:2;padding:110px 25px;background:var(--forest);color:var(--cream);text-align:center}.closing h2{font:400 clamp(43px,5.4vw,76px)/1.05 Georgia,serif;margin:17px auto 22px;max-width:760px}.closing p{font-size:19px;line-height:1.7}.social-row{display:flex;justify-content:center;gap:22px;margin-top:34px}.social-row a{width:50px;height:50px;border:1px solid rgba(255,255,255,.45);display:grid;place-items:center;border-radius:50%;transition:background .25s ease,color .25s ease,transform .25s ease}.social-row a:hover{background:var(--cream);color:var(--forest);transform:translateY(-2px)}.social-row svg{width:27px;height:27px}footer{position:relative;z-index:2;padding:36px 6vw;background:var(--cream);display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:13px;text-transform:uppercase;letter-spacing:.1em}footer a{text-decoration:none}@keyframes logoIn{to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:720px){:root{--header-h:76px}.entry-logo{width:180px}.entry-wordmark{font-size:31px}.entry h1{font-size:57px}.entry-sub{font-size:16px}.site-header{padding:12px 18px}.brand-lockup img{width:44px;height:44px}.brand-lockup strong{font-size:22px}.brand-lockup small{font-size:9px}.site-header nav{gap:13px}.site-header nav a{font-size:11px}.home-copy{margin-left:0;padding-left:24px;padding-right:24px}.home-copy h2{font-size:53px}.gallery{padding:75px 18px}.gallery-heading{display:block;padding:0 4px 35px}.gallery-heading p{margin-top:22px}.photos{gap:12px}.photo,.photo:nth-child(n){grid-column:span 12;aspect-ratio:1.12}.closing{padding:85px 22px}footer{flex-direction:column;text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}.entry-logo{opacity:1;transform:none}}
.hero-links{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:17px}.hero-links .ghost-link{margin-top:0}.team-button{display:inline-block;color:white;text-decoration:none;border:1px solid rgba(255,255,255,.68);padding:12px 18px;text-transform:uppercase;letter-spacing:.15em;font-size:12px;background:rgba(255,255,255,.05);transition:background .25s ease,color .25s ease,transform .25s ease}.team-button:hover{background:var(--cream);color:var(--forest);transform:translateY(-2px)}
.team-page{background:var(--cream);color:var(--ink)}.team-header{position:sticky;top:0;z-index:20;min-height:88px;padding:15px 5vw;display:flex;align-items:center;justify-content:space-between;background:var(--forest);color:white;box-shadow:0 1px 0 rgba(255,255,255,.08)}.team-header .brand-lockup{color:white}.team-header nav{display:flex;gap:26px}.team-header nav a{color:white;text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-size:12px}.team-header nav a[aria-current="page"]{border-bottom:1px solid rgba(255,255,255,.75);padding-bottom:4px}.team-main{position:relative;z-index:1;background:var(--cream)}.team-hero{padding:110px 8vw 80px;border-bottom:1px solid rgba(39,45,39,.14)}.team-hero h1{font:400 clamp(58px,7.56vw,104px)/.98 Georgia,serif;letter-spacing:-.045em;margin:15px 0 20px}.team-hero p{font:400 23px/1.5 Georgia,serif;color:#5b635b;margin:0}.owner-profile{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);gap:clamp(50px,8vw,120px);align-items:center;padding:90px 8vw 110px}.team-photo-placeholder{min-height:620px;background:var(--sand);display:grid;place-items:center;border:1px solid rgba(39,45,39,.1);color:#73766f;letter-spacing:.28em;font-size:14px}.owner-copy{max-width:620px}.owner-copy h2{font:400 clamp(50px,5.4vw,78px)/1 Georgia,serif;letter-spacing:-.04em;margin:16px 0 28px}.owner-copy p{font-size:22px;line-height:1.7;color:#4f574f;max-width:570px}.team-home-link{display:inline-block;margin-top:24px;color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(39,45,39,.55);padding-bottom:5px;text-transform:uppercase;letter-spacing:.14em;font-size:12px}.team-home-link span{margin-left:8px}
@media(max-width:820px){.team-header{padding:12px 18px;gap:16px}.team-header nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.team-header nav a{font-size:11px}.owner-profile{grid-template-columns:1fr;padding:60px 22px 80px}.team-photo-placeholder{min-height:460px}.team-hero{padding:80px 22px 60px}.hero-links{gap:14px}}
.team-roster{padding:20px 8vw 120px}.team-roster-heading{max-width:760px;margin-bottom:52px}.team-roster-heading h2{font:400 clamp(43px,5.184vw,71px)/1.05 Georgia,serif;letter-spacing:-.04em;margin:16px 0 22px}.team-roster-heading p{font-size:19px;line-height:1.7;color:#5b635b;max-width:680px}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 28px;margin-bottom:58px}.team-card{min-width:0}.team-card-photo{aspect-ratio:4/5;background:var(--sand);display:grid;place-items:center;border:1px solid rgba(39,45,39,.1);color:#73766f;letter-spacing:.28em;font-size:13px}.team-card-copy{padding:18px 2px 0}.team-card-copy h3{font:400 32px/1.08 Georgia,serif;letter-spacing:-.025em;margin:9px 0 12px}.team-card-copy p{margin:0;color:#646a63;font-size:17px;line-height:1.6}@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.team-roster{padding:10px 22px 85px}.team-grid{grid-template-columns:1fr;gap:38px}.team-card-photo{aspect-ratio:4/4.7}}

/* Work page */
.work-page{background:var(--cream);color:var(--ink)}.work-main{background:var(--cream)}.work-hero{padding:110px 8vw 90px;border-bottom:1px solid rgba(39,45,39,.14)}.work-hero h1{font:400 clamp(58px,7.56vw,104px)/.98 Georgia,serif;letter-spacing:-.045em;margin:15px 0 22px;max-width:920px}.work-hero p{font:400 23px/1.55 Georgia,serif;color:#5b635b;max-width:720px;margin:0}.project-collection{padding:100px 6vw 115px;border-bottom:1px solid rgba(39,45,39,.12)}.project-collection.alt{background:#ece5d9}.collection-copy{max-width:760px;margin:0 0 48px 2vw}.collection-copy h2{font:400 clamp(43px,5.4vw,73px)/1.05 Georgia,serif;letter-spacing:-.04em;margin:15px 0 20px}.collection-copy p{font-size:19px;line-height:1.7;color:#5b635b;max-width:680px}.collection-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:22px}.work-photo{grid-column:span 6;margin:0;background:#d7cdbf;overflow:hidden}.work-photo-large{grid-column:span 7}.work-photo-large+.work-photo{grid-column:span 5}.work-photo-wide{grid-column:span 12}.work-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .45s cubic-bezier(.22,1,.36,1)}.work-photo-large img{aspect-ratio:5/4}.work-photo-wide img{aspect-ratio:2/1}.work-photo:hover img{transform:scale(1.015)}.work-photo figcaption{padding:20px 20px 24px;background:var(--cream);border:1px solid rgba(39,45,39,.08);border-top:0;display:grid;gap:7px}.project-collection.alt .work-photo figcaption{background:#ece5d9}.work-photo figcaption strong{font:400 27px/1.1 Georgia,serif}.work-photo figcaption span{font-size:16px;line-height:1.55;color:#626860}.review-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(55px,8vw,120px);padding:110px 8vw;background:var(--forest);color:white}.review-intro{max-width:520px}.review-intro h2{font:400 clamp(48px,5.4vw,76px)/1.04 Georgia,serif;letter-spacing:-.04em;margin:15px 0 22px}.review-intro p{font-size:20px;line-height:1.65;color:rgba(255,255,255,.78)}.review-form{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px}.review-form label,.review-form fieldset{display:grid;gap:9px}.review-form label>span,.review-form legend{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.72)}.review-form input,.review-form textarea{width:100%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.04);color:white;padding:14px 15px;font:17px/1.4 Arial,sans-serif;outline:none}.review-form input::placeholder,.review-form textarea::placeholder{color:rgba(255,255,255,.42)}.review-form input:focus,.review-form textarea:focus{border-color:rgba(255,255,255,.8)}.review-form fieldset{border:0;padding:0;margin:0;grid-column:1/-1}.review-form legend{margin-bottom:10px}.rating-row{display:flex;gap:10px;flex-wrap:wrap}.rating-row label{display:block}.rating-row input{position:absolute;opacity:0;pointer-events:none}.rating-row span{display:block;border:1px solid rgba(255,255,255,.3);padding:9px 12px;letter-spacing:.08em;cursor:pointer;color:white!important;font-size:15px!important}.rating-row input:checked+span{background:white;color:var(--forest)!important}.review-message{grid-column:1/-1}.review-submit{justify-self:start;background:var(--cream);color:var(--forest);border:0;padding:14px 22px;text-transform:uppercase;letter-spacing:.14em;font-size:12px;cursor:pointer}.review-note{align-self:center;margin:0;font-size:14px;line-height:1.5;color:rgba(255,255,255,.56)}
@media(max-width:900px){.review-section{grid-template-columns:1fr}.work-photo,.work-photo-large,.work-photo-large+.work-photo{grid-column:span 12}.work-photo img,.work-photo-large img{aspect-ratio:4/3}}@media(max-width:620px){.work-hero{padding:80px 22px 60px}.project-collection{padding:70px 22px 80px}.collection-copy{margin-left:0}.collection-grid{gap:16px}.work-photo-wide img{aspect-ratio:4/3}.review-section{padding:80px 22px}.review-form{grid-template-columns:1fr}.review-message,.review-form fieldset{grid-column:auto}.rating-row{gap:7px}.rating-row span{padding:8px 9px}}

.work-category-placeholder{min-height:260px;border:1px solid rgba(39,45,39,.18);display:grid;place-items:center;padding:40px;background:rgba(255,255,255,.22);text-align:center;text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:#687067}.work-category-placeholder span{max-width:320px;line-height:1.8}

/* V19: simplified Work albums */
.work-album-nav{position:sticky;top:88px;z-index:8;display:flex;justify-content:center;gap:12px;padding:18px 5vw;background:rgba(244,239,229,.96);border-bottom:1px solid rgba(39,45,39,.12);backdrop-filter:blur(10px)}
.work-album-nav a{text-decoration:none;border:1px solid rgba(39,45,39,.22);padding:11px 18px;font-size:12px;letter-spacing:.18em;transition:background .2s ease,color .2s ease}
.work-album-nav a:hover{background:var(--forest);color:var(--cream)}
.work-album{padding:86px 6vw 100px;border-bottom:1px solid rgba(39,45,39,.12)}
.work-album.alt{background:#ece5d9}
.album-heading{max-width:680px;margin:0 0 34px 1vw}
.album-heading h2{font:400 clamp(41px,4.86vw,67px)/1.05 Georgia,serif;letter-spacing:-.035em;margin:12px 0 16px}
.album-heading p{font-size:18px;line-height:1.65;color:#5b635b;margin:0;max-width:620px}
.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.album-grid figure{margin:0;overflow:hidden;background:#d8cfc2;aspect-ratio:4/3}
.album-grid img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.album-grid figure:hover img{transform:scale(1.015)}
.album-placeholder{grid-column:1/-1;min-height:260px;border:1px solid rgba(39,45,39,.18);display:grid;place-items:center;text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:#687067;background:rgba(255,255,255,.24)}
@media(max-width:900px){.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-album-nav{top:76px}}
@media(max-width:620px){.work-album-nav{gap:7px;padding:12px 12px}.work-album-nav a{padding:10px 11px;font-size:11px}.work-album{padding:62px 18px 72px}.album-heading{margin-left:0}.album-grid{grid-template-columns:1fr;gap:10px}.album-placeholder{min-height:190px}}

/* Start a conversation */
.conversation{position:relative;z-index:2;background:#f4efe5;padding:110px 8vw 120px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:8vw;align-items:start;border-top:1px solid rgba(39,45,39,.1)}
.conversation-intro{position:sticky;top:120px}
.conversation-intro p{max-width:470px;margin-top:24px;color:#5b635b;font-size:18px;line-height:1.75}
.conversation-form{background:#fffdf8;border:1px solid rgba(39,45,39,.12);padding:42px;box-shadow:0 18px 50px rgba(39,45,39,.06)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 22px}
.conversation-form label>span,.project-choice legend{display:block;margin-bottom:9px;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:#566057}
.conversation-form input[type="text"],.conversation-form input[type="email"],.conversation-form input[type="tel"],.conversation-form textarea{width:100%;border:0;border-bottom:1px solid rgba(39,45,39,.28);background:transparent;color:#272d27;font:17px/1.5 Arial,Helvetica,sans-serif;padding:11px 2px 12px;outline:none;border-radius:0}
.conversation-form input:focus,.conversation-form textarea:focus{border-bottom-color:#293b31}
.project-choice{border:0;padding:0;margin:38px 0 34px}
.project-choice legend{margin-bottom:15px}
.choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.choice-grid label{position:relative;cursor:pointer}
.choice-grid input{position:absolute;opacity:0;pointer-events:none}
.choice-grid span{display:flex!important;align-items:center;justify-content:center;min-height:48px;margin:0!important;padding:10px 12px;border:1px solid rgba(39,45,39,.18);background:#f8f4ec;text-align:center;letter-spacing:.08em!important;font-size:12px!important;transition:.2s ease}
.choice-grid input:checked+span{background:#293b31;color:#fff;border-color:#293b31}
.choice-grid label:hover span{border-color:#293b31}
.details-field{display:block}
.conversation-form textarea{resize:vertical;min-height:138px;border:1px solid rgba(39,45,39,.2);padding:14px;margin-top:4px;background:#fff}
.conversation-submit{margin-top:26px;border:0;background:#293b31;color:#fff;padding:16px 22px;text-transform:uppercase;letter-spacing:.14em;font-size:12px;cursor:pointer;transition:transform .2s ease,opacity .2s ease}
.conversation-submit:hover{transform:translateY(-2px);opacity:.92}
.conversation-submit span{margin-left:9px}
@media(max-width:900px){.conversation{grid-template-columns:1fr;gap:48px;padding:85px 6vw 95px}.conversation-intro{position:static}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.conversation{padding:72px 18px 82px}.conversation-form{padding:28px 20px}.form-grid{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr 1fr}.choice-grid span{min-height:44px}}

/* Ambient sound control */
.sound-toggle{position:fixed;right:22px;bottom:22px;z-index:60;display:flex;align-items:center;gap:9px;height:42px;padding:0 14px;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:rgba(20,28,23,.45);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;cursor:pointer;font:12px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;transition:background .25s ease,border-color .25s ease,transform .25s ease}.sound-toggle:hover{background:rgba(20,28,23,.68);border-color:rgba(255,255,255,.6);transform:translateY(-1px)}.sound-bars{display:flex;align-items:center;gap:2px;height:13px}.sound-bars i{display:block;width:2px;border-radius:2px;background:currentColor;animation:luxeSound 1.2s ease-in-out infinite}.sound-bars i:nth-child(1){height:6px}.sound-bars i:nth-child(2){height:12px;animation-delay:.18s}.sound-bars i:nth-child(3){height:8px;animation-delay:.36s}.sound-bars.muted i{height:3px!important;animation:none;opacity:.6}.team-page .sound-toggle,.work-page .sound-toggle{background:rgba(41,59,49,.88)}@keyframes luxeSound{0%,100%{transform:scaleY(.55)}50%{transform:scaleY(1)}}@media(max-width:720px){.sound-toggle{right:14px;bottom:14px;width:42px;padding:0;justify-content:center}.sound-label{display:none}}
/* Restored assets and accessible interactions. */
.entry-logo.site-symbol{width:116px;height:116px;margin:0 auto 22px}.owner-monogram{background:var(--forest);color:var(--cream);font:108px Georgia,serif;min-height:380px}.owner-profile{grid-template-columns:minmax(230px,.7fr) minmax(300px,1.3fr)}.photo-open{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.photo-open:focus-visible{outline:3px solid #ad6c45;outline-offset:-4px}.photo-open img{height:100%;width:100%;object-fit:cover}.tour-section{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7vw;background:var(--forest);color:var(--cream);padding:90px 8vw}.tour-section h2{font:400 clamp(43px,5.4vw,71px)/1.05 Georgia,serif;margin:20px 0}.tour-section p{line-height:1.7;max-width:430px}.tour-section video{display:block;width:100%;max-height:600px;object-fit:cover;border-radius:2px}.form-note{font-size:14px;line-height:1.6;color:#646a63;margin-top:18px}.form-note button,.review-note button{display:block;margin-top:12px;padding:10px 14px;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer}.lightbox{position:fixed;inset:0;z-index:100;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;padding:52px 5vw 28px;background:#172119f5;color:white}.lightbox::backdrop{background:#172119}.lightbox img{display:block;width:100%;height:calc(100% - 50px);object-fit:contain}.lightbox p{text-align:center;font-size:15px;line-height:1.5}.lightbox-close{position:absolute;right:24px;top:14px;background:transparent;color:white;border:1px solid #fff8;padding:9px 15px;cursor:pointer}.video-toggle{position:fixed;left:20px;bottom:20px;z-index:40;border:1px solid #fff8;background:#142017bb;color:white;padding:10px 14px;font:12px Arial;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}:focus-visible{outline:2px solid #bd7e51;outline-offset:4px}.pre-entry{overflow:hidden}.pre-entry .site-header,.pre-entry main,.pre-entry footer{visibility:hidden}.entered main,.entered footer{visibility:visible}.site-header nav a,.team-header nav a{padding:9px 0}.video-stage{background:#182019 url('assets/selected-01.jpg') center/cover no-repeat}.video-stage.video-unavailable video{display:none}@media(max-width:820px){.owner-profile{grid-template-columns:1fr}.tour-section{grid-template-columns:1fr;padding:65px 22px;gap:30px}.tour-section video{max-height:520px}.owner-monogram{min-height:280px}}@media(max-width:500px){.site-header{height:auto;min-height:76px;align-items:center;gap:8px}.site-header nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px 12px;max-width:195px}.site-header nav a{font-size:10px;line-height:1.4}.brand-lockup strong{font-size:20px}.brand-lockup small{font-size:8px}.home-hero{height:auto;min-height:100svh}.home-copy{padding-top:130px;padding-bottom:70px}.home-copy h2{font-size:46px}.home-copy>p{font-size:17px}.entry-inner{padding:28px 18px}.entry-logo.site-symbol{width:88px;height:88px}.entry h1{font-size:53px}.entry-sub{font-size:15px}.video-toggle{left:12px;bottom:14px;font-size:11px}.photos .photo{aspect-ratio:4/3}.lightbox{padding:60px 12px 25px}}
@media(prefers-reduced-motion:reduce){.video-stage video{display:none}.video-toggle{display:none}}

/* White symbol uses the exact supplied transparent PNG silhouette. */
.site-symbol{filter:brightness(0) invert(1)!important;object-fit:contain;background:none;border-radius:0;box-shadow:none;flex-shrink:0}.brand-lockup .site-symbol{display:block;width:52px;height:52px}.entry-logo.site-symbol{display:block;width:154px;height:154px;margin:0 auto 23px}.site-header.scrolled{background:rgba(41,59,49,.97);color:#fff}.site-header.scrolled .brand-lockup{color:#fff}@media(max-width:500px){.brand-lockup .site-symbol{width:38px;height:38px}.entry-logo.site-symbol{width:112px;height:112px}}

/* Minimal editorial layout. */
.entry-rule{margin:18px auto}.entry-kicker{margin-bottom:20px}.entry h1{margin-bottom:30px}.home-copy{max-width:1000px}.home-copy h2{font-size:clamp(52px,7.02vw,99px);line-height:1.04;max-width:950px}.hero-links{gap:34px;margin-top:34px}.gallery-heading{padding-bottom:40px}.gallery{padding-top:86px}.conversation{gap:8vw;padding-top:90px;padding-bottom:90px}.conversation-form{padding:0;background:none;border:0;box-shadow:none}.project-select{display:block;margin:28px 0}.project-select select{width:100%;border:0;border-bottom:1px solid #272d2747;background:transparent;border-radius:0;padding:12px 0;color:var(--ink);font:17px Arial}.form-grid{grid-template-columns:1fr 1fr}.details-field textarea{min-height:100px}.closing{padding:78px 24px}.closing h2{font-size:clamp(41px,4.86vw,67px)}.tour-section{padding-top:70px;padding-bottom:70px}.form-note{font-size:13px}.team-hero,.work-hero{padding-top:85px;padding-bottom:70px}.album-heading{margin-bottom:30px}.work-album{padding-top:65px;padding-bottom:75px}.review-section{padding-top:75px;padding-bottom:75px}@media(max-width:600px){.home-copy h2{font-size:51px}.home-copy{padding-top:125px}.conversation{padding:65px 22px}.form-grid{grid-template-columns:1fr}.gallery{padding-top:65px}.tour-section h2{margin:0}.entry-wordmark{font-size:29px}.entry h1{font-size:55px}}

/* Tactile background indicators for navigation and controls. */
.home-summary{max-width:530px!important;margin:25px 0 0;font-size:19px!important;line-height:1.7!important;color:#ffffffe0}.entry-sub{margin-bottom:28px;font-size:16px}.tap-control:not(.sound-toggle):not(.video-toggle){position:relative}.tap-control{isolation:isolate;overflow:hidden;-webkit-tap-highlight-color:transparent;transition:background-color .2s ease,box-shadow .2s ease,transform .15s ease}.tap-control.is-pressed{box-shadow:inset 0 0 0 100vmax rgba(137,158,138,.24);transform:translateY(1px)}.tap-ripple{position:absolute;left:var(--tap-x,50%);top:var(--tap-y,50%);width:var(--tap-size,180px);height:var(--tap-size,180px);border-radius:50%;background:currentColor;opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(0);z-index:-1;animation:tapRipple .55s ease-out forwards}.ghost-link{padding:12px 16px;border:1px solid #ffffff80;border-radius:2px}.ghost-link:hover{background:#ffffff1f}.enter-button:hover{background:#ffffff26;color:white}.enter-button.is-pressed{background:#ffffff38}.photo-open.is-pressed{transform:none;box-shadow:inset 0 0 0 100vmax #fff2}@keyframes tapRipple{0%{opacity:.2;transform:translate(-50%,-50%) scale(0)}70%{opacity:.13}100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}@media(max-width:600px){.home-summary{max-width:310px!important;font-size:17px!important}.entry-sub{max-width:250px;line-height:1.6}.gallery-heading p{max-width:310px;margin-top:22px}}@media(prefers-reduced-motion:reduce){.tap-ripple{animation:none}.tap-control.is-pressed{transform:none;background-color:#8d9f8d40}}

/* Original navigation presentation and persistent sound controls. */
.site-header nav{gap:26px}.team-header nav{gap:26px}.site-header nav a,.team-header nav a{background:none;border-radius:0;padding:9px 0}.site-header nav a:hover{background:none;opacity:.7}.team-header nav a[aria-current="page"]{border-bottom:1px solid #ffffffbf;padding-bottom:4px}.sound-toggle{position:fixed;right:22px;bottom:22px;z-index:60}.video-toggle{position:fixed}.sound-label{display:inline}@media(max-width:820px){.team-header nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.team-header nav a{font-size:11px}}@media(max-width:720px){.site-header nav{gap:13px}.site-header nav a{font-size:11px}.sound-toggle{right:14px;bottom:14px;width:auto;padding:0 13px;justify-content:center}.sound-label{display:inline;font-size:11px}}@media(max-width:500px){.site-header nav{gap:2px 12px}.site-header nav a{font-size:10px}}

/* Consistent warm photographic finish across project galleries and enlarged views. */
:root{--project-photo-tone:sepia(.16) saturate(1.08) brightness(1.015) contrast(1.015)}
.photos img,.album-grid img,.collection-grid img,.lightbox img{filter:var(--project-photo-tone)}

/* Matched warmth and exposure across the complete project collection. */
.photos img,.album-grid img,.collection-grid img,.lightbox img{filter:var(--photo-finish,var(--project-photo-tone))}
img[src$="selected-01.jpg"]{--photo-finish:sepia(0.2) saturate(1.06) brightness(1.045) contrast(1.01)}
img[src$="selected-02.jpg"]{--photo-finish:sepia(0.22) saturate(1.06) brightness(1.09) contrast(1.01)}
img[src$="selected-03.jpg"]{--photo-finish:sepia(0.2) saturate(1.05) brightness(1.06) contrast(1.01)}
img[src$="selected-04.jpg"]{--photo-finish:sepia(0.22) saturate(1.04) brightness(1.11) contrast(1.0)}
img[src$="selected-05.jpg"]{--photo-finish:sepia(0.2) saturate(1.06) brightness(1.05) contrast(1.01)}
img[src$="selected-06.jpg"]{--photo-finish:sepia(0.22) saturate(1.05) brightness(1.1) contrast(1.0)}
img[src$="selected-07.jpg"]{--photo-finish:sepia(0.2) saturate(1.05) brightness(1.08) contrast(1.01)}
img[src$="selected-08.jpg"]{--photo-finish:sepia(0.2) saturate(1.05) brightness(1.06) contrast(1.01)}
img[src$="selected-09.jpg"]{--photo-finish:sepia(0.18) saturate(1.04) brightness(1.04) contrast(1.01)}
img[src$="selected-10.jpg"]{--photo-finish:sepia(0.2) saturate(1.05) brightness(1.07) contrast(1.01)}
img[src$="selected-11.jpg"]{--photo-finish:sepia(0.09) saturate(0.98) brightness(1.0) contrast(0.99)}
img[src$="selected-12.jpg"]{--photo-finish:sepia(0.16) saturate(1.04) brightness(1.08) contrast(1.0)}
img[src$="selected-13.jpg"]{--photo-finish:sepia(0.2) saturate(1.05) brightness(1.1) contrast(1.0)}
img[src$="selected-14.jpg"]{--photo-finish:sepia(0.2) saturate(1.05) brightness(1.06) contrast(1.01)}
img[src$="selected-15.jpg"]{--photo-finish:sepia(0.2) saturate(1.05) brightness(1.05) contrast(1.01)}
img[src$="selected-16.jpg"]{--photo-finish:sepia(0.2) saturate(1.05) brightness(1.06) contrast(1.01)}

img[src$="selected-17.jpg"]{--photo-finish:sepia(.06) saturate(1.0) brightness(.99) contrast(1.0)}

/* Match the new bathroom photographs to the warm project gallery. */
img[src$="selected-18.jpg"]{--photo-finish:sepia(.14) saturate(1.03) brightness(1.035) contrast(1.0)}
img[src$="selected-19.jpg"]{--photo-finish:sepia(.14) saturate(1.03) brightness(1.045) contrast(1.0)}
img[src$="selected-20.jpg"]{--photo-finish:sepia(.16) saturate(1.03) brightness(1.10) contrast(1.0)}

/* Full project collection organized by room type. */

.work-album .album-photo{aspect-ratio:3/4}
.work-album{scroll-margin-top:175px}
.work-album-nav{flex-wrap:wrap}
@media(max-width:600px){.work-album-nav{gap:8px;padding:12px}.work-album-nav a{padding:10px;font-size:11px;letter-spacing:.1em}.work-album{scroll-margin-top:190px}}


.work-tour-hero{padding-top:80px;padding-bottom:70px}.work-tour-hero h1{font:400 clamp(50px,6.48vw,89px)/1.05 Georgia,serif;letter-spacing:-.035em;margin:0 0 20px}.work-tour-hero video{max-height:620px}@media(max-width:820px){.work-tour-hero{padding-top:55px;padding-bottom:55px}.work-tour-hero video{max-height:560px}}

#review{scroll-margin-top:180px}

.entry-gesture-hint{margin:14px 0 0;color:rgba(255,255,255,.78);font-size:12px;letter-spacing:.1em}.enter-button:hover span{transform:translateY(-3px)}

.enter-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;text-decoration:none;touch-action:manipulation;position:relative;z-index:1}.entry-gesture-hint{pointer-events:none}.entry .tap-ripple{pointer-events:none}

/* Full-screen gallery navigation. */
body.lightbox-open{overflow:hidden}
.lightbox img{touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none;cursor:pointer}
.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:48px;height:56px;padding:0;border:1px solid #ffffff70;border-radius:3px;background:#172119bb;color:white;font:45px/1 Arial,sans-serif;cursor:pointer;z-index:1}
.lightbox-nav:hover{background:#344337}
.lightbox-nav[hidden]{display:none}
.lightbox-prev{left:16px}.lightbox-next{right:16px}
.lightbox p{margin:12px auto 0;max-width:800px}
@media(max-width:600px){.lightbox-nav{width:44px;height:48px;font-size:39px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox p{font-size:14px}.lightbox img{height:calc(100% - 70px)}}

/* Navigation: social links and a distinct contact action at the far right. */
.luxe-navigation{gap:28px}
.luxe-navigation .brand-lockup{flex-shrink:0;margin-right:auto}
.luxe-navigation nav.header-links{display:flex;align-items:center;gap:24px;max-width:none;flex-wrap:nowrap}
.header-socials{display:flex;align-items:center;gap:6px}
.header-socials a{display:grid;place-items:center;width:36px;height:40px;color:inherit;border-radius:2px;transition:background .2s ease}
.header-socials a:hover{background:#ffffff18}
.header-socials svg{display:block;width:18px;height:18px}
.luxe-navigation .header-contact{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:44px;padding:13px 20px;border:1px solid #fff;background:#fff;color:#293b31;text-decoration:none;text-transform:uppercase;font:600 12px/1.2 Arial,sans-serif;letter-spacing:.14em;white-space:nowrap;transition:background .2s ease,box-shadow .2s ease}
.luxe-navigation .header-contact:hover{background:white;box-shadow:0 3px 14px #0002}
.luxe-navigation .header-contact span{font-size:18px}
.site-header.scrolled .header-contact{background:#fff;border-color:#fff;color:#293b31}
.site-header.scrolled .header-socials a:hover{background:#293b3112}
@media(max-width:900px){.luxe-navigation{gap:16px}.luxe-navigation nav.header-links{gap:16px}.luxe-navigation .header-contact{padding:12px 16px;gap:10px}}
@media(max-width:680px){
 :root{--header-h:128px}
 .luxe-navigation{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;height:auto;min-height:128px;padding:12px 18px}
 .luxe-navigation .brand-lockup{grid-column:1;grid-row:1;margin:0}
 .luxe-navigation .header-contact{grid-column:2;grid-row:1;justify-self:end;padding:12px 15px;min-height:44px;font-size:11px}
 .luxe-navigation nav.header-links{grid-column:1;grid-row:2;justify-content:flex-start;gap:16px}
 .luxe-navigation nav.header-links a{font-size:11px;line-height:1.4;white-space:nowrap;padding:10px 0}
 .luxe-navigation .header-socials{grid-column:2;grid-row:2;justify-content:flex-end;gap:2px}
 .header-socials a{width:32px;height:36px}
 .home-copy{padding-top:175px}
}
@media(max-width:360px){.luxe-navigation{padding-left:12px;padding-right:12px;column-gap:8px}.luxe-navigation nav.header-links{gap:11px}.luxe-navigation nav.header-links a{font-size:10px}.luxe-navigation .header-contact{padding:12px;font-size:10px}}

#conversation{scroll-margin-top:calc(var(--header-h) + 16px)}

/* Keep social links beneath the brand and navigation together on the right. */
.luxe-navigation{display:flex;justify-content:space-between;align-items:center;height:auto;min-height:116px;padding-top:12px;padding-bottom:10px;gap:28px}
.header-brand{display:flex;flex-direction:column;align-items:flex-start;flex-shrink:0;gap:3px}
.luxe-navigation .header-brand .brand-lockup{margin:0}
.luxe-navigation .header-brand .header-socials{display:flex;justify-content:flex-start;gap:4px;margin-left:59px}
.header-brand .header-socials a{width:28px;height:28px}
.header-brand .header-socials svg{width:16px;height:16px}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:28px;margin-left:auto}
.luxe-navigation .header-actions nav.header-links{gap:24px}
:root{--header-h:116px}
@media(max-width:900px){.header-actions{gap:18px}.luxe-navigation .header-actions nav.header-links{gap:16px}}
@media(max-width:680px){
 :root{--header-h:152px}
 .luxe-navigation{display:flex;align-items:center;min-height:152px;padding:12px 16px;gap:16px}
 .header-brand{align-self:flex-start;gap:5px;padding-top:4px}
 .luxe-navigation .header-brand .header-socials{margin-left:0;gap:4px}
 .header-actions{flex-direction:column;align-items:flex-end;justify-content:center;gap:10px;min-width:0}
 .luxe-navigation .header-actions nav.header-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px 14px}
 .luxe-navigation .header-actions nav.header-links a{font-size:11px;padding:8px 0}
 .luxe-navigation .header-contact{padding:12px 14px;font-size:11px;min-height:44px}
 .home-copy{padding-top:190px}
}
@media(max-width:360px){.luxe-navigation{gap:10px;padding-left:12px;padding-right:12px}.luxe-navigation .header-actions nav.header-links{gap:3px 10px}.luxe-navigation .header-actions nav.header-links a{font-size:10px}.luxe-navigation .header-contact{font-size:10px;padding:12px}}

/* Retain the approved color balance of the newly edited photo set. */
img[src*="project-"][src$="-edited.jpg"]{--photo-finish:none}

/* Keep Work categories below the header at every screen size. */
.work-album-nav{top:var(--work-header-h,var(--header-h));background:var(--cream);box-shadow:0 3px 10px rgba(39,45,39,.06)}
.work-main .work-album,.work-main #review{scroll-margin-top:calc(var(--work-header-h,var(--header-h)) + var(--work-tabs-h,104px) + 16px)}

/* Work collection: wider room views, calmer spacing, a clear opening photograph. */
.work-album .album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,28px);max-width:1280px;margin-inline:auto}
.work-album .album-photo{aspect-ratio:3/2}
.work-album .album-photo:first-child{grid-column:1/-1;aspect-ratio:2/1}
.work-album .album-grid img{object-position:center}
.work-album .album-heading{max-width:1280px;margin-inline:auto;margin-bottom:32px}
@media(max-width:620px){.work-album .album-grid{grid-template-columns:1fr;gap:16px}.work-album .album-photo,.work-album .album-photo:first-child{aspect-ratio:3/2}.work-album .album-heading{margin-bottom:24px}}

/* Keep the large deck photograph natural rather than amplifying orange wood and green grass. */
img[src$="covered-deck-stairs-warm.jpg"]{--photo-finish:sepia(.02) saturate(.78) brightness(1.01) contrast(.98)}

/* Newly edited outdoor photographs already have their final color grading. */
img[src*="outdoors-edited-"]{--photo-finish:none}

img[src$="bathroom-double-vanity-reflections-cleaned.jpg"]{--photo-finish:none}

/* Launch contact links */
.contact-email-card{min-width:0;max-width:680px}.contact-email-card>p{font-size:20px;line-height:1.6;margin:0 0 24px}.contact-email-link{display:inline-flex;align-items:center;gap:32px;min-height:48px;padding:16px 24px;background:var(--forest,#293b31);color:#fff;text-decoration:none;font:600 14px/1.4 Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}.contact-email-link:hover{background:#3d5546}.contact-email-link:focus-visible,.contact-email-addresses a:focus-visible{outline:3px solid #92734a;outline-offset:4px}.contact-email-card>.contact-email-note{font-size:15px;margin:16px 0;color:#60695e}.contact-email-addresses{display:flex;flex-direction:column;gap:12px}.contact-email-addresses a{color:inherit;overflow-wrap:anywhere;font-size:18px}.contact-email-addresses a:hover{text-decoration-thickness:2px}@media(max-width:600px){.contact-email-card>p{font-size:18px}.contact-email-link{width:100%;justify-content:space-between}.contact-email-addresses a{font-size:17px}}

.inquiry-trap{position:absolute;width:1px;height:1px;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap;pointer-events:none}.conversation-submit:disabled{opacity:.55;cursor:wait}.inquiry-fallback{font-size:16px;line-height:1.6}.inquiry-fallback a{color:inherit;text-underline-offset:3px}.conversation-form input,.conversation-form textarea,.conversation-form select{max-width:100%}@media(max-width:600px){.conversation-form input,.conversation-form textarea,.conversation-form select{font-size:18px}}

.contact-email-link,.conversation-submit{background:var(--cream);color:var(--forest);border:1px solid var(--forest)}.contact-email-link:hover,.conversation-submit:hover{background:var(--cream);color:var(--forest);box-shadow:0 2px 10px #293b3120}

/* Keep focused controls readable without iOS focus zoom. Preserve user pinch zoom. */
.conversation,.conversation>*:not(.inquiry-trap),.conversation-form,.conversation-form label,.form-grid,.form-grid>*{min-width:0;max-width:100%}.conversation-form input[type="text"],.conversation-form input[type="email"],.conversation-form input[type="tel"],.conversation-form textarea,.conversation-form select{font:400 18px/1.5 Arial,Helvetica,sans-serif;min-width:0;max-width:100%;box-sizing:border-box}.conversation-form select{width:100%}.conversation{overflow-x:clip}

/* Consistent inquiry fields on every screen. */
.conversation-form input[type="text"],.conversation-form input[type="email"],.conversation-form input[type="tel"],.conversation-form textarea{display:block;width:100%;background:#fff;color:#272d27;border:1px solid #c8c5bc;border-radius:2px;padding:12px 14px;min-height:48px;font:400 18px/1.5 Arial,Helvetica,sans-serif;box-shadow:none}.conversation-form textarea{min-height:150px;resize:vertical}.conversation-form input:focus,.conversation-form textarea:focus{border-color:#293b31;outline:2px solid #293b3126;outline-offset:1px}

.conversation-form .conversation-submit{background:var(--forest);color:#fff;border:1px solid var(--forest)}.conversation-form .conversation-submit:hover{background:#354b3d;color:#fff}.conversation-form .conversation-submit:focus-visible{outline:3px solid #92734a;outline-offset:3px}

/* Slightly larger default text for comfortable reading. */
body{font-size:18px}

/* Elegant full-screen numbering with independently editable descriptions. */
.lightbox[open]{display:flex;flex-direction:column}
.lightbox img{flex:1;min-height:0;height:0;object-fit:contain}
.lightbox-details{flex-shrink:0;text-align:center;padding-top:16px}
.lightbox .lightbox-counter{margin:0 auto;max-width:none;width:100%;font:italic 100 clamp(34px,4vw,50px)/1.1 "Josefin Slab",Georgia,serif;font-synthesis:none;letter-spacing:.03em;font-variant-numeric:lining-nums}
.lightbox-total{font-size:.62em;opacity:.6}.lightbox-divider{font-size:.62em;opacity:.45;padding:0 9px}
.lightbox .lightbox-description{margin:12px auto 0;max-width:780px;font:400 16px/1.6 Arial,sans-serif;max-height:20vh;overflow:auto}
.lightbox .lightbox-description[hidden]{display:none}
@media(max-width:600px){.lightbox-details{padding-top:12px}.lightbox .lightbox-counter{font-size:36px}.lightbox .lightbox-description{font-size:15px}}

/* Give the emblem a stronger presence throughout the header. */
.team-header.luxe-navigation .brand-lockup img{width:76px;height:76px}
.team-header.luxe-navigation .header-brand .header-socials{margin-left:86px}
@media(max-width:680px){.team-header.luxe-navigation .brand-lockup img{width:58px;height:58px}.team-header.luxe-navigation .header-brand .header-socials{margin-left:68px}}

@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:300;font-display:swap;src:url("/fonts/cormorant-garamond-light-italic.ttf") format("truetype")}

/* More prominent branding and social links on the interior pages. */
.team-header.luxe-navigation{min-height:166px}
.team-header.luxe-navigation .brand-lockup img{width:96px;height:96px}
.team-header.luxe-navigation .brand-lockup strong{font-size:32px}
.team-header.luxe-navigation .brand-lockup small{font-size:13px}
.team-header.luxe-navigation .header-brand .header-socials{margin-left:106px;gap:6px}
.team-header .header-brand .header-socials a{width:46px;height:42px}
.team-header .header-brand .header-socials svg{width:30px;height:30px}
body:has(>.team-header){--header-h:166px}
@media(max-width:680px){
 .team-header.luxe-navigation{min-height:180px;padding-left:10px;padding-right:10px;gap:8px}
 .team-header.luxe-navigation .brand-lockup{gap:8px}
 .team-header.luxe-navigation .brand-lockup img{width:76px;height:76px}
 .team-header.luxe-navigation .brand-lockup strong{font-size:28px}
 .team-header.luxe-navigation .brand-lockup small{font-size:11px}
 .team-header.luxe-navigation .header-brand .header-socials{margin-left:84px;gap:4px}
 .team-header .header-brand .header-socials a{width:40px;height:42px}
 .team-header .header-brand .header-socials svg{width:28px;height:28px}
 body:has(>.team-header){--header-h:180px}
}
@media(max-width:360px){.team-header.luxe-navigation .brand-lockup img{width:64px;height:64px}.team-header.luxe-navigation .brand-lockup strong{font-size:26px}.team-header.luxe-navigation .header-brand .header-socials{margin-left:72px}.team-header .header-brand .header-socials a{width:36px;height:40px}.team-header .header-brand .header-socials svg{width:26px;height:26px}}

@font-face{font-family:"Josefin Slab";font-style:italic;font-weight:100;font-display:swap;src:url("/fonts/josefin-slab-thin-italic.ttf") format("truetype")}

.team-header.luxe-navigation{min-height:204px}
.team-header.luxe-navigation .brand-lockup img{width:128px;height:128px}
.team-header.luxe-navigation .brand-lockup strong{font-size:40px}
.team-header.luxe-navigation .brand-lockup small{font-size:15px}
.team-header.luxe-navigation .header-brand .header-socials{margin-left:138px}
body:has(>.team-header){--header-h:204px}
@media(min-width:681px) and (max-width:1050px){.team-header.luxe-navigation .header-actions{flex-direction:column;align-items:flex-end;gap:12px}.team-header.luxe-navigation .header-actions nav.header-links{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:680px){
 .team-header.luxe-navigation{min-height:196px}
 .team-header.luxe-navigation .brand-lockup img{width:96px;height:96px}
 .team-header.luxe-navigation .brand-lockup strong{font-size:28px}
 .team-header.luxe-navigation .brand-lockup small{font-size:11px}
 .team-header.luxe-navigation .header-brand .header-socials{margin-left:104px}
 .team-header.luxe-navigation .header-actions{max-width:130px}
 .team-header.luxe-navigation .header-contact{white-space:normal;text-align:center;max-width:130px}
 .team-header.luxe-navigation .header-actions nav.header-links{gap:3px 10px}
 body:has(>.team-header){--header-h:196px}
}
@media(max-width:360px){.team-header.luxe-navigation .brand-lockup img{width:80px;height:80px}.team-header.luxe-navigation .brand-lockup strong{font-size:26px}.team-header.luxe-navigation .header-brand .header-socials{margin-left:88px}.team-header.luxe-navigation .header-actions,.team-header.luxe-navigation .header-contact{max-width:116px}}

/* Content-sized header: aligned navigation and a compact brand/social lockup. */
body:has(>header.luxe-navigation){--header-h:var(--measured-header-h,180px)}
header.luxe-navigation:is(.site-header,.team-header){--emblem-size:128px;--wordmark-size:40px;--brand-small-size:15px;--brand-gap:10px;--wordmark-lift:-22px;--social-offset:12px;display:flex;align-items:center;justify-content:space-between;gap:28px;height:auto;min-height:0;padding:12px 5vw;box-sizing:border-box}
header.luxe-navigation.site-header{--emblem-size:156px;--wordmark-size:52px;--brand-small-size:18px;--brand-gap:12px;--wordmark-lift:-24px;--social-offset:18px}
header.luxe-navigation:is(.site-header,.team-header) .header-brand{position:relative;display:block;align-self:center;flex:0 0 auto;padding:0;margin:0}
header.luxe-navigation:is(.site-header,.team-header) .header-brand .brand-lockup{display:flex;align-items:center;gap:var(--brand-gap);margin:0;text-decoration:none}
header.luxe-navigation:is(.site-header,.team-header) .header-brand .brand-lockup img{width:var(--emblem-size);height:var(--emblem-size);flex-shrink:0;object-fit:contain}
header.luxe-navigation:is(.site-header,.team-header) .brand-lockup>span{transform:translateY(var(--wordmark-lift))}
header.luxe-navigation:is(.site-header,.team-header) .brand-lockup strong{font-size:var(--wordmark-size);line-height:1;white-space:nowrap}
header.luxe-navigation:is(.site-header,.team-header) .brand-lockup small{font-size:var(--brand-small-size);line-height:1;margin-top:4px;white-space:nowrap}
header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials{position:absolute;left:calc(var(--emblem-size) + var(--brand-gap));top:calc(50% + var(--social-offset));display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:6px;margin:0;padding:0}
header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials a{display:grid;place-items:center;width:40px;height:40px;padding:0;margin:0}
header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials svg{width:30px;height:30px;display:block}
header.luxe-navigation.site-header .header-brand .header-socials svg{width:32px;height:32px}
header.luxe-navigation:is(.site-header,.team-header) .header-actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:24px;margin-left:auto;max-width:none;min-width:0}
header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:24px;margin:0;max-width:none}
header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links a{display:inline-flex;align-items:center;white-space:nowrap;line-height:1.2;padding:12px 0;margin:0;border-bottom:0}
header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links a[aria-current="page"]{box-shadow:0 1px 0 currentColor}
header.luxe-navigation:is(.site-header,.team-header) .header-contact{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:46px;padding:14px 18px;margin:0;line-height:1.2;white-space:nowrap;max-width:none}
@media(max-width:1000px) and (min-width:901px){header.luxe-navigation:is(.site-header,.team-header){padding-inline:3vw;gap:18px}header.luxe-navigation:is(.site-header,.team-header) .header-actions{gap:18px}header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links{gap:18px}}
@media(max-width:900px){
 header.luxe-navigation:is(.site-header,.team-header){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 20px;padding:12px 4vw}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand{grid-column:1;grid-row:1;justify-self:start}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions{display:contents}
 header.luxe-navigation:is(.site-header,.team-header) .header-contact{grid-column:2;grid-row:1;justify-self:end}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links{grid-column:1/-1;grid-row:2;justify-self:end;gap:24px}
}
@media(max-width:680px){
 header.luxe-navigation:is(.site-header,.team-header){--emblem-size:96px;--wordmark-size:28px;--brand-small-size:11px;--brand-gap:8px;--wordmark-lift:-20px;--social-offset:7px;padding:10px;gap:6px 8px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials{gap:4px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials a{width:36px;height:36px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials svg{width:28px;height:28px}
 header.luxe-navigation:is(.site-header,.team-header) .header-contact{max-width:116px;white-space:normal;text-align:center;padding:12px 10px}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links{gap:22px}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links a{font-size:12px;padding:10px 0}
 .home-copy{padding-top:calc(var(--header-h) + 36px)}
}
@media(max-width:360px){header.luxe-navigation:is(.site-header,.team-header){--emblem-size:80px;--wordmark-size:26px;--wordmark-lift:-18px;--social-offset:4px}header.luxe-navigation:is(.site-header,.team-header) .header-contact{max-width:110px}}

/* Keep the conversation button below the navigation, aligned on the right. */
header.luxe-navigation:is(.site-header,.team-header) .header-actions{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:12px}
@media(max-width:900px){
 header.luxe-navigation:is(.site-header,.team-header){display:flex;flex-direction:row;align-items:center}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions{display:flex;flex-direction:column;margin-left:auto}
}
@media(max-width:680px){
 header.luxe-navigation:is(.site-header,.team-header) .header-actions{flex:0 1 auto;gap:10px;min-width:0}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links{max-width:180px;flex-wrap:wrap;justify-content:flex-end;gap:2px 12px}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links a{padding:8px 0}
}

/* Matching brand typography and a flush navigation/button column. */
@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/montserrat-regular.ttf") format("truetype")}
header.luxe-navigation:is(.site-header,.team-header) .brand-lockup strong,
header.luxe-navigation:is(.site-header,.team-header) .brand-lockup small,
.entry-wordmark{font-family:Montserrat,Arial,sans-serif;font-weight:400}
header.luxe-navigation:is(.site-header,.team-header) .header-actions{width:clamp(270px,26vw,340px);align-items:stretch;flex-shrink:0}
header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:0;width:100%;max-width:none}
header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links a{display:flex;align-items:center;justify-content:center;padding:12px 4px;line-height:1.2;text-align:center}
header.luxe-navigation:is(.site-header,.team-header) .header-actions .header-contact{width:100%;max-width:none;box-sizing:border-box}
@media(max-width:680px){
 header.luxe-navigation:is(.site-header,.team-header){flex-direction:column;align-items:stretch;gap:12px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand{align-self:flex-start}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions{width:100%;max-width:none;flex:none;margin:0;gap:10px}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%;max-width:none}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links a{font-size:12px;padding:10px 4px}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions .header-contact{width:100%;max-width:none;white-space:nowrap}
}

/* Anchor the desktop navigation and conversation button at the upper right. */
@media(min-width:681px){
 header.luxe-navigation:is(.site-header,.team-header){padding-right:clamp(16px,2vw,28px)}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions{align-self:flex-start;justify-content:flex-start;margin-top:0;margin-bottom:0}
}

/* Pin the complete navigation stack in the upper-right corner at every width. */
header.luxe-navigation:is(.site-header,.team-header) .header-actions{position:absolute;top:8px;right:12px;width:280px;max-width:calc(100% - 24px);margin:0;gap:8px;align-items:stretch;align-self:auto;justify-content:flex-start}
header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;gap:0;flex-wrap:nowrap}
header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links a{padding:8px 2px;min-height:30px;justify-content:center;line-height:1.2}
header.luxe-navigation:is(.site-header,.team-header) .header-actions .header-contact{width:100%;max-width:none;margin:0}
@media(max-width:680px){
 header.luxe-navigation:is(.site-header,.team-header){display:flex;flex-direction:row;align-items:flex-start;padding:10px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand{width:100px;align-self:flex-start}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .brand-lockup{flex-direction:column;gap:6px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .brand-lockup img{width:96px;height:96px}
 header.luxe-navigation:is(.site-header,.team-header) .brand-lockup>span{transform:none;text-align:center}
 header.luxe-navigation:is(.site-header,.team-header) .brand-lockup strong{font-size:26px}
 header.luxe-navigation:is(.site-header,.team-header) .brand-lockup small{font-size:11px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials{position:static;justify-content:center;width:100%;margin:6px 0 0;gap:4px}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions{position:absolute;top:8px;right:10px;width:clamp(158px,42vw,250px);max-width:calc(100% - 130px);margin:0;gap:8px;flex:none}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;gap:0}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions nav.header-links a{font-size:10px;letter-spacing:.06em;padding:8px 1px;min-height:30px;white-space:nowrap}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions .header-contact{font-size:10px;letter-spacing:.07em;padding:12px 8px;min-height:42px;white-space:nowrap;width:100%;max-width:none}
}

/* Keep Luxe Homes beside the emblem, with socials beneath the wordmark. */
@media(max-width:680px){
 header.luxe-navigation:is(.site-header,.team-header){--emblem-size:96px;--wordmark-size:26px;--brand-small-size:11px;--brand-gap:8px;--wordmark-lift:-20px;--social-offset:7px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand{width:auto}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .brand-lockup{flex-direction:row;align-items:center;gap:var(--brand-gap)}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .brand-lockup img{width:var(--emblem-size);height:var(--emblem-size)}
 header.luxe-navigation:is(.site-header,.team-header) .brand-lockup>span{transform:translateY(var(--wordmark-lift));text-align:left}
 header.luxe-navigation:is(.site-header,.team-header) .brand-lockup strong{font-size:var(--wordmark-size)}
 header.luxe-navigation:is(.site-header,.team-header) .brand-lockup small{font-size:var(--brand-small-size)}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials{position:absolute;left:calc(var(--emblem-size) + var(--brand-gap));top:calc(50% + var(--social-offset));justify-content:flex-start;width:auto;margin:0;gap:4px}
}
@media(max-width:380px){header.luxe-navigation:is(.site-header,.team-header){--emblem-size:80px;--wordmark-size:24px;--brand-small-size:10px;--wordmark-lift:-18px;--social-offset:7px}}
@media(max-width:360px){
 header.luxe-navigation:is(.site-header,.team-header){--emblem-size:64px;--wordmark-size:22px;--brand-small-size:9px;--wordmark-lift:-14px;--social-offset:6px}
 header.luxe-navigation:is(.site-header,.team-header) .header-actions{width:142px;max-width:142px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials a{width:32px;height:32px}
 header.luxe-navigation:is(.site-header,.team-header) .header-brand .header-socials svg{width:26px;height:26px}
}

/* Match the Home headline to the updated Montserrat typography. */
.home-copy h2{font-family:Montserrat,Arial,sans-serif;font-weight:400}

/* Match the contact heading to the updated Montserrat typography. */
.conversation-intro .section-title{font-family:Montserrat,Arial,sans-serif;font-weight:400}

/* Match Projects and About to the site's updated Montserrat typography. */
body.work-page,body.team-page{font-family:Montserrat,Arial,sans-serif}
:is(.work-page,.team-page) :is(h1,h2,h3,h4,p,a,label,legend,input,textarea,select,button,figcaption,footer,.eyebrow,.sound-label):not(.lightbox-counter):not(.lightbox-nav){font-family:Montserrat,Arial,sans-serif}

/* A direct, readable phone contact beside the inquiry form. */
.conversation-intro .contact-phone{margin:28px 0 0;font-family:Montserrat,Arial,sans-serif;line-height:1.5}
.contact-phone span{display:block;margin-bottom:7px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.contact-phone a{display:inline-block;color:var(--ink);font:400 clamp(22px,2.2vw,28px)/1.4 Montserrat,Arial,sans-serif;text-decoration:none;letter-spacing:.02em}
.contact-phone a:hover{text-decoration:underline;text-underline-offset:5px}

/* Text or call contact at the bottom of every page. */
footer .footer-contact{margin:0;text-align:center;font-family:Montserrat,Arial,sans-serif;text-transform:none}
footer .footer-contact span{font-size:12px;line-height:1.4;margin-bottom:5px}
footer .footer-contact a{font-size:24px;line-height:1.4}
@media(max-width:680px){footer{flex-direction:column;align-items:center;text-align:center;gap:20px}}
/* Clear hover and keyboard-focus feedback for primary navigation. */
header.luxe-navigation .header-actions .header-contact{transition:background-color .2s ease,color .2s ease,border-color .2s ease}
header.luxe-navigation .header-actions .header-contact:hover,
header.luxe-navigation .header-actions .header-contact:focus-visible{background:#bda77b;color:#182b22;border-color:#bda77b;opacity:1}
header.luxe-navigation .header-actions nav.header-links a{position:relative;transition:color .2s ease; text-decoration:none}
header.luxe-navigation .header-actions nav.header-links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
header.luxe-navigation .header-actions nav.header-links a:hover,
header.luxe-navigation .header-actions nav.header-links a:focus-visible{color:#bda77b;opacity:1}
header.luxe-navigation .header-actions nav.header-links a:hover::after,
header.luxe-navigation .header-actions nav.header-links a:focus-visible::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){header.luxe-navigation .header-actions .header-contact,header.luxe-navigation .header-actions nav.header-links a,header.luxe-navigation .header-actions nav.header-links a::after{transition:none}}

/* Keep gallery originals sharp and avoid enlarging smaller legacy photographs. */
.lightbox img{object-fit:scale-down;image-rendering:auto}
.photos img,.album-grid img,.family-photo img{image-rendering:auto}
/* Keep interior navigation labels separate on narrow phones. */
@media(max-width:680px){
header.team-header.luxe-navigation .header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px;max-width:none;min-width:0}
header.team-header.luxe-navigation .header-actions nav.header-links{display:flex;position:static;flex-wrap:wrap;justify-content:flex-end;gap:10px 12px;max-width:none;width:auto}
header.team-header.luxe-navigation .header-actions nav.header-links a{position:relative;transform:none;width:auto;font-size:10px;letter-spacing:.03em;white-space:nowrap}
}
@media(max-width:680px){
header.team-header.luxe-navigation .header-actions{position:static;flex:1;min-width:0;width:auto}
header.team-header.luxe-navigation .header-actions nav.header-links{flex-wrap:nowrap;gap:8px}
header.team-header.luxe-navigation .header-contact{max-width:100%;font-size:9px;padding:12px 8px}
}
