
:root{--navy:#10131a;--panel:#191d26;--cream:#f0eee8;--orange:#ff681e;--muted:#bbc0c9}body{font-size:16px}.header{height:90px;position:relative;z-index:30;padding:0 4%;border-bottom:1px solid #ffffff20}.header .brand{width:160px;height:58px}.header>nav{font-size:14px}.header-cta{font-size:14px;background:transparent;color:white;border:1px solid #ffffff50;border-radius:30px;padding:11px 20px}.reading-progress{position:fixed;top:0;left:0;height:3px;background:var(--orange);width:0;z-index:100;pointer-events:none}.villa-hero{position:relative;min-height:720px;height:calc(100svh - 90px);max-height:1050px;max-width:none;margin:0;padding:30px 5% 0;display:flex;flex-direction:column;overflow:hidden;isolation:isolate;background:#10131a}.hero-atmosphere{position:absolute;inset:0 0 0 28%;z-index:-3;overflow:hidden}.hero-atmosphere img{width:100%;height:100%;object-fit:cover;object-position:55% 50%;transform:scale(1.09);filter:brightness(.67);animation:arrival-image 1.7s cubic-bezier(.2,.65,.2,1) both}.hero-atmosphere:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10131a 0%,#10131a66 25%,#10131a00 70%),linear-gradient(0deg,#10131a 0%,transparent 35%,#10131a33)}.hero-grid{position:absolute;inset:0 5%;border-left:1px solid #ffffff0b;border-right:1px solid #ffffff0b;z-index:-1;pointer-events:none}.hero-topline{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.8px;color:#d8dbe0;gap:25px}.villa-hero .hero-copy{padding:0;margin:auto 0 40px;width:100%;max-width:none}.villa-hero .eyebrow{color:#ffa472;font-size:12px;margin:0 0 26px}.villa-hero h1{font-size:clamp(76px,9.5vw,158px);line-height:.98;letter-spacing:-.06em;font-weight:500}.villa-hero h1>span{display:block;animation:arrival-type 1.1s cubic-bezier(.16,1,.3,1) both}.villa-hero h1>span+span{animation-delay:.14s}.villa-hero em{color:#ffa472;font-weight:400;letter-spacing:-.065em;font-size:1.02em}.hero-lower{display:flex;align-items:center;justify-content:space-between;max-width:670px;margin-top:35px;gap:30px}.hero-lower p{font-size:18px;line-height:1.55}.hero-lower p>span{color:#c0c3ca;font-size:14px;display:block;margin-top:14px}.round-link{border:1px solid #ffffff66;border-radius:50%;height:122px;width:122px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;font-size:14px;line-height:1.35;transition:background .3s,border-color .3s,transform .3s}.round-link:hover{background:var(--orange);border-color:var(--orange);color:#10131a;transform:rotate(-7deg)}.round-link b{font-size:23px;font-weight:400;margin-top:8px}.hero-footer{border-top:1px solid #ffffff30;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px}.hero-footer>a{font-size:14px;display:flex;gap:24px}.hero-footer>span{font-size:12px;letter-spacing:.8px;color:#c3c6cc}#motion-toggle{border:0;background:none;color:#e0e2e6;padding:12px 0;font-size:12px;text-decoration:underline;text-underline-offset:4px}.reference-strip{background:#10131a;border-top:0;padding-top:35px;padding-bottom:35px}.reference-strip p{font-size:12px;letter-spacing:1px}.reference-strip span{font-weight:500}.eyebrow{font-size:12px;letter-spacing:1.6px}.section-head>p,.material-copy>p:not(.eyebrow),.renovation p:not(.eyebrow),.process li p,.atelier-intro>p:not(.eyebrow){font-size:16px}.meta,.source-note,.label,.photo-count{font-size:12px}.filters button,.text-link{font-size:14px}.project-info h3{font-size:24px}.project-grid{gap:50px 28px}.project-image{border-radius:3px}.project-open:hover .project-image img{transform:scale(1.06)}.project-info{padding-top:22px}.reference-list p,summary,details p{font-size:16px}.reference-list span{font-size:13px}.button{font-size:14px}.section{padding-top:110px;padding-bottom:110px}.material{gap:10%;margin-top:95px}.material-photo{border-radius:2px}.material-photo>span{font-size:13px}h2{font-size:clamp(42px,5vw,76px);letter-spacing:-.045em}footer>p,footer>div,.legal p{font-size:14px}.small-note{font-size:13px!important}label,input,select,textarea{font-size:14px}.contact>div>a,.contact>div>span{font-size:14px}.contact>div>p:not(.eyebrow){font-size:16px}.gallery-photos figcaption{font-size:13px}.dialog-top .eyebrow,.dialog-top p:last-child{font-size:14px}.dialog-top h2{font-size:36px}.dialog-top{position:sticky;top:-30px;background:var(--cream);z-index:2;padding:12px 0 20px}.gallery-photos{margin-top:0}.copyright{font-size:12px}
@keyframes arrival-type{from{opacity:0;transform:translateY(45px);filter:blur(7px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes arrival-image{from{opacity:.25;transform:scale(1.18)}to{opacity:1;transform:scale(1.09)}}
@media(max-width:1000px){.villa-hero h1{font-size:10.5vw}.hero-footer>span{max-width:240px}.header-cta{display:none}}
@media(max-width:650px){.header{height:80px}.header .brand{width:145px;height:54px}.villa-hero{height:auto;min-height:calc(100svh - 80px);padding:22px 5% 0;gap:0}.hero-atmosphere{inset:0}.hero-atmosphere img{object-position:65% center;filter:brightness(.42)}.hero-atmosphere:after{background:linear-gradient(90deg,#10131a9c,transparent),linear-gradient(0deg,#10131a 1%,transparent 70%)}.hero-topline{font-size:11px;letter-spacing:1px}.hero-topline span+span{display:none}.villa-hero .hero-copy{padding:80px 0 38px;margin:auto 0 0}.villa-hero .eyebrow{font-size:11px;letter-spacing:1.4px;margin-bottom:25px}.villa-hero h1{font-size:clamp(49px,12.2vw,79px);letter-spacing:-.065em;line-height:1.04}.villa-hero h1>span+span{max-width:100%}.hero-lower{gap:20px;margin-top:32px;align-items:flex-end}.hero-lower p{font-size:16px}.hero-lower p>span{font-size:12px;max-width:200px}.round-link{width:88px;height:88px;font-size:12px}.round-link b{font-size:20px;margin-top:4px}.hero-footer{flex-wrap:wrap;justify-content:space-between;padding:18px 0 22px;gap:12px;min-height:0}.hero-footer>a{width:100%;font-size:14px}.hero-footer>span{font-size:10px;max-width:160px}.hero-footer button{max-width:110px;text-align:right;font-size:11px!important}.reference-strip p{font-size:12px}.reference-strip span{font-size:14px}.section{padding-top:65px;padding-bottom:65px}h2{font-size:43px}.material{margin-top:55px}.eyebrow{font-size:12px}.dialog-top{top:-20px}.dialog-top h2{font-size:26px}.project-info h3{font-size:24px}.reference-list{grid-template-columns:1fr}.reference-list h3{font-size:26px}.reference-list span{font-size:13px}.filters button{font-size:13px}.meta{font-size:13px}.mobile-contact{font-size:14px}}
@media(prefers-reduced-motion:reduce){html:not([data-motion=on]) .villa-hero h1>span,html:not([data-motion=on]) .hero-atmosphere img{animation:none}html:not([data-motion=on]) .hero-atmosphere img{transform:none}}
html[data-motion=off]{scroll-behavior:auto}html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation:none!important;transition:none!important}

.material-lab{background:#10131a;overflow:hidden;padding-bottom:100px}.material-lab h2 em{color:#f0eee8}.lab-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:center}.material-choices{border-top:1px solid #ffffff25}.material-choices button{width:100%;display:flex;align-items:center;text-align:left;gap:22px;padding:23px 2px;border:0;border-bottom:1px solid #ffffff25;background:none;color:#999fa9;transition:color .3s,padding .3s}.material-choices button>span:first-child{font-size:12px;letter-spacing:1px}.material-choices strong{font-size:clamp(22px,2.3vw,34px);font-weight:400;letter-spacing:-1px}.material-dot{margin-left:auto;width:9px;height:9px;border:1px solid #9b9fa6;border-radius:50%;transition:background .3s}.material-choices button[aria-pressed=true]{color:#fff;padding-left:12px}.material-choices button[aria-pressed=true] .material-dot{background:var(--orange);border-color:var(--orange);box-shadow:0 0 18px #ff681e66}.lab-description{margin-top:35px;min-height:215px}.lab-description .eyebrow{color:#ffa472;margin-bottom:16px}.lab-description h3{font-size:26px}.lab-description>p:not(.eyebrow){font-size:16px;color:var(--muted);margin:18px 0}.lab-stage{min-width:0;padding:20px 0 0}.lab-perspective{perspective:1100px;position:relative;padding:0 0 18px 18px}.sample-back{position:absolute;inset:20px 22px 0 0;background:#a47554;border:1px solid #dfb588;transform:rotateY(-6deg) rotateZ(-3deg);opacity:.6}.sample-plane{--detail:0%;--rx:0deg;--ry:-5deg;position:relative;aspect-ratio:1;overflow:hidden;background:#292b30;transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;box-shadow:0 30px 80px #0007;transition:transform .25s ease;border:1px solid #ffffff30;isolation:isolate}.sample-plane>img{width:100%;height:100%;object-fit:cover}.sample-detail{position:absolute;inset:0;overflow:hidden;clip-path:inset(0 calc(100% - var(--detail)) 0 0);background:#292b30}.sample-detail img{width:100%;height:100%;object-fit:cover;transform:scale(1.65);transform-origin:65% 40%}.sample-shine{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--lx,60%) var(--ly,35%),#ffffff16,transparent 55%);mix-blend-mode:screen}.sample-seam{position:absolute;top:0;bottom:0;left:var(--detail);width:1px;background:#ffe8d3;opacity:.8;pointer-events:none}.sample-plane.is-changing>img,.sample-plane.is-changing .sample-detail{animation:material-wipe .85s cubic-bezier(.2,.7,.2,1) both}.sample-plane.is-changing:after{content:'';position:absolute;top:0;left:0;width:2px;height:130%;background:#ffa472;box-shadow:0 0 20px #ff681e;transform:rotate(12deg);animation:blade-pass .85s cubic-bezier(.2,.7,.2,1) both;pointer-events:none}.sample-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px}.sample-toolbar>div>span{font-size:12px;color:#ffa472;letter-spacing:2px}.sample-toolbar p{font-size:14px;margin-top:5px}.sample-badge{font-size:11px;letter-spacing:1px;writing-mode:vertical-rl;max-height:110px}.detail-label{display:flex;justify-content:space-between;gap:15px;font-weight:400;font-size:13px;margin-top:24px;color:#bbc0c9}input[type=range]{padding:0;background:transparent;accent-color:var(--orange);border:0;width:100%;cursor:ew-resize;min-height:35px}.sample-note{font-size:12px;color:#a1a7b1;line-height:1.6}.expertise{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;background:#1a1e26;border-top:1px solid #ffffff15}.expertise h2{font-size:clamp(38px,4.5vw,66px)}.expertise-intro{max-width:490px;font-size:16px;color:var(--muted);margin:25px 0 30px}.expertise-details summary{font-size:21px;padding:25px 0;justify-content:flex-start;letter-spacing:-.5px}.expertise-details summary>span{font-size:12px;letter-spacing:1px;color:#ffa472;margin-right:6px}.expertise-details summary:after{margin-left:auto}.expertise-details details:first-child{border-top:1px solid #ffffff25}.expertise-details details p{padding-left:43px}.portal-section{height:160vh;min-height:1050px;position:relative;background:#10131a}.portal-sticky{height:100vh;min-height:650px;position:sticky;top:0;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;perspective:1200px}.portal-heading{position:absolute;z-index:2;top:8%;left:6%;pointer-events:none;transform:translateY(calc(var(--portal,0) * -35px));opacity:calc(1 - var(--portal,0) * .85)}.portal-heading h2{font-size:clamp(56px,7vw,100px);text-shadow:0 3px 30px #0008}.portal-frame{width:78%;height:74%;position:relative;overflow:hidden;clip-path:inset(0 0 0 0 round 40% 40% 0 0);transform:translateY(14%) scale(.84) rotateX(8deg);will-change:transform,clip-path}.portal-frame>img{width:100%;height:100%;object-fit:cover;object-position:center}.portal-frame:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#10131ae6)}.portal-caption{position:absolute;bottom:7%;left:6%;z-index:1}.portal-caption span{font-size:12px;letter-spacing:1.4px}.portal-caption p{font-size:clamp(24px,3.7vw,52px);line-height:1.3;letter-spacing:-1px;margin:9px 0}.portal-skip{position:absolute;bottom:25px;right:5%;z-index:3;font-size:14px;border-bottom:1px solid #ffffff60;padding:10px}.portfolio{background:#ece9e2}.portfolio h2 em{color:#a64419}.portfolio .project-grid{grid-template-columns:repeat(2,1fr);gap:65px 40px}.portfolio .project-card:nth-child(4n+2){padding-top:95px}.portfolio .project-card:nth-child(4n+3){padding-right:12%}.portfolio .project-card:nth-child(4n+4){padding-top:50px}.project-image{aspect-ratio:1.2;overflow:hidden}.project-card .photo-count{background:#10131add;color:white;border:1px solid #ffffff50;backdrop-filter:blur(8px);border-radius:30px;padding:9px 14px}.project-open .project-info{border-bottom:1px solid #10131a25;padding-bottom:23px}.project-open .label{font-size:12px}.project-open:focus-visible{outline-color:#b7400a}.references .reference-list article{padding-top:35px;padding-bottom:35px}.atelier{position:relative;overflow:hidden}.atelier:before{content:'RESI-BAT';position:absolute;bottom:-5vw;left:0;font-size:22vw;font-weight:700;color:#ffffff03;pointer-events:none;line-height:1}.film{position:relative}.film video{border-radius:4px;border:1px solid #ffffff20}.contact{background:#e9e4d9}.contact h2{font-size:clamp(58px,6vw,88px);letter-spacing:-.055em}.contact form{border-top:3px solid #ee6227}.gallery-enquiry{margin-top:25px}.gallery-photos figure{background:#e3dfd6}.gallery-photos img{height:auto;max-height:75vh;min-height:0}.gallery-photos figure:first-child{grid-column:1/-1}.gallery-photos figure:first-child img{max-height:70vh}.gallery-photos{align-items:start}.reveal{opacity:0;transform:translateY(35px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.65,.2,1)}.reveal.in-view{opacity:1;transform:none}
@keyframes material-wipe{from{clip-path:polygon(0 0,0 0,0 100%,0 100%)}to{clip-path:polygon(0 0,120% 0,100% 100%,0 100%)}}@keyframes blade-pass{from{left:-20%;opacity:1}to{left:120%;opacity:0}}
@media(max-width:1000px){.lab-layout{gap:5%;grid-template-columns:1fr 1.1fr}.material-choices button{gap:15px}.material-choices strong{font-size:25px}.lab-description{min-height:255px}.expertise{gap:6%}.expertise-details summary{font-size:18px}.portfolio .project-grid{gap:40px 25px}.sample-badge{display:none}}
@media(max-width:650px){.lab-layout{display:flex;flex-direction:column;gap:30px;align-items:stretch}.lab-controls{display:contents}.material-choices{display:grid;grid-template-columns:1fr 1fr;border:0;gap:8px;order:0}.material-choices button{gap:9px;padding:15px 12px;border:1px solid #ffffff30;min-height:58px}.material-choices button[aria-pressed=true]{padding-left:12px;background:#252730;border-color:#ff9a64}.material-choices strong{font-size:17px;letter-spacing:-.5px}.material-choices button>span:first-child{font-size:11px}.material-dot{width:6px;height:6px;flex-shrink:0}.lab-stage{order:1;padding:0 8px 0 0}.lab-description{order:2;min-height:0;margin-top:0}.lab-description h3{font-size:28px}.sample-plane{transform:none;aspect-ratio:1.08}.sample-back{transform:rotateZ(-2deg)}.sample-toolbar p{font-size:13px}.sample-toolbar{margin-top:15px}.detail-label{font-size:12px}.material-lab{padding-bottom:65px}.expertise{display:block}.expertise-details{margin-top:35px}.expertise-details summary{font-size:19px}.expertise-details details p{padding-left:0}.portal-section{height:115vh;min-height:750px}.portal-sticky{height:85vh;min-height:600px}.portal-heading{top:7%;left:5%}.portal-heading h2{font-size:48px}.portal-heading .eyebrow{font-size:11px}.portal-frame{width:90%;height:67%;transform:translateY(15%) scale(.9)}.portal-caption p{font-size:27px}.portal-caption span{font-size:11px}.portal-caption{bottom:9%}.portal-skip{font-size:13px;bottom:20px}.portfolio .project-grid{grid-template-columns:1fr;gap:36px}.portfolio .project-card:nth-child(n){padding:0}.project-image{aspect-ratio:4/3}.project-open .project-info{padding-bottom:20px}.project-info h3{font-size:26px}.gallery-photos figure:first-child{grid-column:auto}.contact h2{font-size:53px}}
@media(prefers-reduced-motion:reduce){html:not([data-motion=on]) .reveal{opacity:1;transform:none}html:not([data-motion=on]) .portal-section{height:auto;min-height:0}html:not([data-motion=on]) .portal-sticky{position:relative}html:not([data-motion=on]) .portal-frame{transform:none!important;clip-path:inset(0)!important}html:not([data-motion=on]) .portal-heading{opacity:1!important;transform:none!important}html:not([data-motion=on]) .sample-plane{transform:none!important}html:not([data-motion=on]) .sample-shine{display:none}}
html[data-motion=off] .reveal{opacity:1;transform:none}html[data-motion=off] .portal-frame{transform:none!important;clip-path:inset(0)!important}html[data-motion=off] .portal-heading{opacity:1!important;transform:none!important}html[data-motion=off] .sample-plane{transform:none!important}html[data-motion=off] .portal-section{height:auto;min-height:0}html[data-motion=off] .portal-sticky{position:relative}
.quote-context{font-size:13px;line-height:1.6;padding:15px;background:#ede5d7;border-left:2px solid #dc5a1c;margin:20px 0}.quote-context button{display:block;border:0;background:none;color:#984019;text-decoration:underline;padding:5px 0;font-size:13px}.portal-heading,.sample-plane,.hero-atmosphere img{backface-visibility:hidden}

/* Final presentation and accessible gallery. */
[hidden]{display:none!important}
#gallery-dialog{width:min(1180px,96vw);max-height:94svh;padding:26px 32px 28px;border:1px solid #ffffff20;background:#141820;color:#f0eee8;box-shadow:0 40px 120px #0009;overscroll-behavior:contain}
#gallery-dialog .dialog-top{position:static;background:transparent;padding:0 0 22px;align-items:flex-start}
#gallery-dialog .dialog-top h2{font-size:clamp(24px,3vw,39px);max-width:800px;line-height:1.15}
#gallery-dialog .dialog-top .eyebrow{color:#ffa472;font-size:11px;letter-spacing:1.6px}
#gallery-dialog .dialog-top p:last-child{color:#bfc3cb}
#gallery-dialog .dialog-top button{border:1px solid #ffffff40;background:transparent;border-radius:50%;flex-shrink:0}
.gallery-stage{position:relative;margin:0;background:#090c11;border:1px solid #ffffff14;touch-action:pan-y}
.gallery-stage>img{width:100%;height:clamp(210px,50svh,570px);object-fit:contain;user-select:none;-webkit-user-drag:none}
.gallery-stage figcaption{padding:12px 16px;font-size:13px;line-height:1.5;color:#c5c9d0;border-top:1px solid #ffffff14}
#gallery-error{padding:18px;color:#ffd7ba}
.gallery-navigation{display:flex;align-items:center;justify-content:center;gap:28px;margin:18px 0 14px}
.gallery-navigation button{width:48px;height:48px;background:transparent;border:1px solid #ffffff40;border-radius:50%;color:#f0eee8;font-size:24px}
.gallery-navigation button:hover,#gallery-dialog .dialog-top button:hover{background:#ff681e;color:#10131a;border-color:#ff681e}
#gallery-counter{font-size:13px;letter-spacing:3px;font-variant-numeric:tabular-nums;min-width:74px;text-align:center}
.gallery-thumbnails{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.gallery-thumbnails button{padding:3px;border:1px solid transparent;background:transparent;opacity:.5;transition:opacity .2s,border-color .2s;min-width:64px}
.gallery-thumbnails button[aria-pressed=true]{opacity:1;border-color:#ffa472}
.gallery-thumbnails button:hover{opacity:1}
.gallery-thumbnails img{width:80px;height:58px;object-fit:cover}
.gallery-help{font-size:12px;color:#a9afba;text-align:center;margin:14px 0 0}
#gallery-dialog .gallery-enquiry{display:flex;width:max-content;max-width:100%;margin:22px auto 0}
.quote-preview{white-space:pre-wrap;overflow-wrap:anywhere;padding:18px;background:white;border:1px solid #d7d1c7;margin:16px 0;color:#222733;font-size:14px;line-height:1.7}
#quote-result h4{font-size:18px;margin:0;line-height:1.4;font-weight:500}
.contact :focus-visible,.portfolio :focus-visible{outline-color:#9b3d15}
.portfolio .project-grid:has(.project-card[hidden]) .project-card{padding:0}
.gallery-thumbnails button:focus-visible{opacity:1}
.mobile-contact{min-height:62px}
@media(max-width:650px){
 .villa-hero .hero-copy{margin:32px 0 0;padding:32px 0 34px}
 .villa-hero{min-height:calc(100svh - 80px - 62px);justify-content:space-between}
 .hero-atmosphere img{object-position:57% center}
 .hero-lower{gap:15px}.hero-lower p{font-size:15px}
 .hero-footer{padding-bottom:20px}
 .contact input,.contact select,.contact textarea{font-size:16px}
 .material-choices strong{font-size:16px}
 #gallery-dialog{padding:18px 16px 22px;width:96vw;max-height:94svh}
 #gallery-dialog .dialog-top{gap:15px;padding-bottom:18px}
 #gallery-dialog .dialog-top h2{font-size:25px}
 #gallery-dialog .dialog-top p:last-child{font-size:12px}
 .gallery-stage>img{height:38svh;min-height:190px}
 .gallery-thumbnails{gap:4px}.gallery-thumbnails button{min-width:45px}
 .gallery-thumbnails img{width:49px;height:43px}
 .gallery-help{font-size:11px}.gallery-navigation{margin:14px 0}
 .gallery-enquiry{font-size:13px}
 .portal-heading h2{font-size:clamp(35px,10vw,48px)}
 .portal-sticky{min-height:540px}
}
@media(max-width:360px){.hero-lower{align-items:center}.round-link{width:74px;height:74px}.hero-lower p{font-size:14px}.section h2{font-size:37px}.material-choices button{gap:6px;padding:12px 8px}.material-choices strong{font-size:14px}}
@media(max-height:600px) and (min-width:651px){.villa-hero{min-height:640px}}
#gallery-dialog .dialog-top{position:sticky;top:-26px;z-index:3;background:#141820;padding-top:12px;border-bottom:1px solid #ffffff18;margin-bottom:14px}
@media(max-width:650px){#gallery-dialog .dialog-top{top:-18px;padding-top:12px}}

/* Final details: navigation, rhythm and small-screen comfort. */
.header>nav a{position:relative;padding:12px 0;color:#d5d8de;transition:color .2s}
.header>nav a:after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:#ffa472;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.header>nav a:hover,.header>nav a:focus-visible{color:#fff}
.header>nav a:hover:after,.header>nav a:focus-visible:after{transform:scaleX(1)}
.hero-lower p>span{max-width:360px;line-height:1.65}
.reference-strip>div{row-gap:20px}
.project-open .project-image{border:1px solid #10131a12}
.contact input,.contact textarea,.contact select{transition:border-color .2s,box-shadow .2s}
.contact input:focus,.contact textarea:focus,.contact select:focus{border-color:#ad4b22;box-shadow:0 0 0 3px #ad4b2212}
footer .footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:4px}
.footer-bottom .copyright{color:#aeb5c0;font-size:12px;line-height:1.6}
.back-to-top{display:inline-flex;gap:15px;align-items:center;min-height:44px;font-size:13px;color:#e1e4e9}
.back-to-top:hover{color:#ffa472}
.gallery-stage{overflow:hidden}
@media(max-width:650px){body{padding-bottom:calc(66px + env(safe-area-inset-bottom))}.hero-lower p>span{font-size:12px;max-width:220px}.hero-footer{gap:16px}.header .brand{width:145px}.mobile-nav nav{border:1px solid #ffffff20}.contact form{padding:24px 20px}.footer-bottom{gap:8px!important}.footer-bottom .copyright{max-width:200px}.back-to-top{font-size:12px;gap:10px}}
