@font-face{font-family:Manrope;src:url('../fonts/Manrope-Variable.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--paper:#f5f2ec;--ink:#38362f;--muted:#706c62;--line:#dcd6cb;--accent:#696454;--wash:#ebe6dc;--pad:clamp(24px,5.5vw,100px);--serif:'Cormorant Garamond',Georgia,serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.65 Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;border:0}button:disabled{cursor:wait;opacity:.6}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.028em}h1{font-size:clamp(54px,6.5vw,100px)}h2{font-size:clamp(40px,4.4vw,68px)}h3{font-size:clamp(30px,3vw,45px)}h4{font-weight:500;line-height:1.5}em{font-style:italic;color:#817a69;font-weight:400}p{max-width:65ch}img{display:block;width:100%;height:auto}svg{display:block}button,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:#a89b85;color:white}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:10px;z-index:200;background:white;padding:10px}.skip:focus{top:10px}
.section{padding:95px var(--pad);max-width:1560px;margin:auto}.eyebrow{font-size:11px;font-weight:500;letter-spacing:.11em;text-transform:uppercase;display:flex;gap:18px;align-items:center;margin-bottom:27px;line-height:1.7}.eyebrow span{color:var(--muted)}.eyebrow span:after{content:'';display:inline-block;width:22px;height:1px;background:var(--line);vertical-align:middle;margin-left:18px}.button{display:inline-flex;gap:30px;justify-content:space-between;align-items:center;background:#575448;color:#fff;padding:8px 10px 8px 24px;border-radius:40px;font-size:14px;font-weight:400;min-height:54px;transition:background .35s,box-shadow .35s;line-height:1.4}.button>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid #ffffff45;border-radius:50%;font-size:20px;line-height:1;transition:transform .5s var(--ease)}.button:hover{background:#746e5e;box-shadow:0 6px 25px #71624c12}.button:hover>span{transform:rotate(45deg)}.button:active{background:#4d493e}.text-link{display:inline-flex;gap:23px;padding:0 0 8px;border-bottom:1px solid #bdb7aa;align-items:center;font-size:13px;line-height:1.6;width:fit-content;transition:border-color .3s}.text-link>span{font-size:20px;transition:transform .5s var(--ease)}.text-link:hover{border-color:var(--ink)}.text-link:hover>span{transform:translate(3px,-3px)}.text-button{border:0;background:none;text-decoration:underline;text-underline-offset:5px;padding:10px 0;font-size:14px}.hint,.gallery-note{font-size:13px;line-height:1.8;color:var(--muted)}.gallery-note{margin-top:30px}
.site-header{height:80px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;gap:25px;position:sticky;top:0;z-index:30;background:#f5f2eced;backdrop-filter:blur(18px);view-transition-name:site-header;border-bottom:1px solid #e3ddd340}.brand{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:500;letter-spacing:.01em;line-height:1.4;white-space:nowrap}.brand-mark{width:30px;height:30px}.brand small{display:block;font-size:9px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:4px}.desktop-nav{display:flex;gap:30px;font-size:13px;font-weight:400}.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a:after{content:'';position:absolute;bottom:2px;left:0;width:100%;height:1px;background:#a99a83;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}.header-phone{font-size:14px;letter-spacing:-.01em}.mobile-menu,.mobile-call{display:none}.reading-progress{height:1px;background:#9b8b70;position:fixed;top:0;left:0;right:0;transform:scaleX(0);transform-origin:left;z-index:60}
.hero{padding:28px var(--pad) 0;max-width:1560px;margin:auto;position:relative;display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center}.hero-copy{padding:20px 0 50px}.hero-copy .eyebrow{font-size:10px;gap:10px;letter-spacing:.075em}.hero-copy .eyebrow span:after{width:14px;margin-left:10px}.hero h1{font-size:clamp(64px,7.3vw,110px);line-height:.95;letter-spacing:-.045em}.hero h1 em{white-space:nowrap}.hero-description{font-size:14px;color:var(--muted);line-height:1.9;margin:28px 0 28px}.hero-photo{position:relative;overflow:hidden;align-self:start;max-width:790px;background:#d9d4c9;aspect-ratio:1.04}.hero-photo>img{height:100%;width:100%;object-fit:cover;object-position:56% center}.hero-photo figcaption{display:flex;justify-content:space-between;position:absolute;left:24px;right:24px;bottom:22px;color:white;z-index:2;font-size:11px;letter-spacing:.04em;text-shadow:0 1px 12px #0009}.hero-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#17140f55);pointer-events:none}.hero-scroll{display:flex;align-items:center;gap:28px;margin-top:34px;font-size:12px;color:var(--muted);width:fit-content}.hero-scroll>span{font-size:16px}.hero-aside{grid-column:1/-1;display:flex;justify-content:space-between;font-size:11px;color:var(--muted);letter-spacing:.045em;padding:22px 0;border-bottom:1px solid var(--line);margin-top:-40px}.hero-aside>span:last-child{font-style:italic;font-family:var(--serif);font-size:18px;letter-spacing:0}
.intro{display:grid;grid-template-columns:.75fr 1.5fr;gap:100px;padding-top:105px;padding-bottom:110px}.intro-side{padding-top:10px}.intro-side .eyebrow{display:block}.intro-side .eyebrow span{display:block;margin-bottom:8px}.intro-side .eyebrow span:after{display:none}.intro-side>p{font-size:14px;color:var(--muted);line-height:1.85}.fine-rule{display:block;width:42px;height:1px;background:#b7aa95;margin:36px 0}.statement{font-size:clamp(38px,4.4vw,68px);line-height:1.09;letter-spacing:-.025em}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin:30px 0 28px;max-width:730px}.intro-columns p{font-size:14px;color:var(--muted);line-height:1.9}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-heading>p{max-width:290px;font-size:14px;color:var(--muted)}.section-heading>.text-link{flex-shrink:0;margin-bottom:5px}.section-heading h2{line-height:1.06}.interiors{padding-top:10px;padding-bottom:110px}.project-grid{display:grid;grid-template-columns:1.17fr .83fr;gap:78px;align-items:start}.project:nth-child(even){margin-top:100px}.project-image{position:relative;overflow:hidden;background:#e3ded4;isolation:isolate}.project-image img{aspect-ratio:1.22;object-fit:cover;object-position:center;filter:saturate(.9)}.project:nth-child(even) .project-image img{aspect-ratio:1.02;object-position:64% center}.image-arrow{position:absolute;bottom:18px;right:18px;border:1px solid #fff9;border-radius:50%;color:white;background:#423c302b;backdrop-filter:blur(3px);width:42px;height:42px;display:grid;place-items:center;font-size:20px;transition:background .4s,transform .5s var(--ease);z-index:2}.project:hover .image-arrow{transform:rotate(45deg);background:#f5f2ecd9;color:var(--ink)}.project-caption{padding-top:19px;position:relative}.project-caption>span{font-size:10px;color:var(--muted);letter-spacing:.085em;text-transform:uppercase;display:block;margin-bottom:9px}.project-caption h3{font-size:35px;letter-spacing:-.02em}.project-caption p{font-size:12px;color:var(--muted);margin-top:8px}.project-index .project:last-child{grid-column:1;max-width:750px;margin-top:0}.project-index{row-gap:60px}
.route-section{padding-top:85px;padding-bottom:85px;background:var(--wash);max-width:none}.route-section>.section-heading,.route-sticky{max-width:1360px;margin-left:auto;margin-right:auto}.route-sticky{display:grid;grid-template-columns:1.25fr 1fr;gap:65px;align-items:stretch}.route-visual{position:relative;overflow:hidden;background:#d8d2c6;align-self:start;display:grid;grid-template-columns:1fr 1fr;gap:5px}.route-frame{position:relative;aspect-ratio:1}.route-section.motion-ready .route-frame{aspect-ratio:auto}.route-section:not(.motion-ready) .route-photo-label{display:none}.route-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.85)}.route-photo-label{position:absolute;left:24px;bottom:20px;color:white;font-size:11px;letter-spacing:.04em;z-index:5;text-shadow:0 1px 15px #0009}.route-copy{padding:18px 0 12px;display:flex;flex-direction:column}.route-kicker{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;letter-spacing:.045em;padding-bottom:20px;border-bottom:1px solid #cfc6b8}.route-chapters{position:relative;flex:1}.route-chapter{padding:28px 0 32px}.route-chapter+.route-chapter{border-top:1px solid #cfc6b8}.chapter-number{display:block;font-family:var(--serif);font-style:italic;font-size:20px;color:#a49780;margin-bottom:11px}.route-chapter h3{font-size:clamp(44px,4.2vw,65px);line-height:1;margin-bottom:22px}.route-chapter h4{font-size:14px;font-weight:400;margin-bottom:13px}.route-chapter>p{font-size:14px;color:var(--muted);line-height:1.85}.deliverable{margin-top:25px;border-top:1px solid #cfc6b8;padding-top:14px}.deliverable>span{font-size:10px;color:var(--muted);letter-spacing:.055em;text-transform:uppercase}.deliverable p{font-size:12px;margin-top:5px;color:#5a564a}.route-progress{height:1px;background:#cbc0ae;margin:10px 0 22px;overflow:hidden}.route-progress i{display:block;height:100%;width:100%;background:#81745e;transform-origin:left;transform:scaleX(.25)}.route-section.motion-ready .route-sticky{height:min(610px,79svh);min-height:520px}.route-section.motion-ready .route-chapter{position:absolute;inset:0;border:0}.route-section.motion-ready .route-visual{min-height:0;align-self:stretch;aspect-ratio:auto}
.control{display:grid;grid-template-columns:1.08fr 1fr;gap:110px;padding-top:110px;padding-bottom:100px}.control-intro{font-size:14px;color:var(--muted);max-width:340px;margin:27px 0}.control-list article{display:flex;gap:30px;border-top:1px solid var(--line);padding:26px 0}.control-list article:last-child{padding-bottom:0}.control-list>article>span{font-family:var(--serif);font-style:italic;font-size:19px;color:#a29681}.control-list h3{font-size:30px;margin-bottom:13px;letter-spacing:-.015em}.control-list p{font-size:14px;color:var(--muted);line-height:1.85}.offers-section{padding-top:10px;padding-bottom:95px}.offers{display:grid;grid-template-columns:1fr 1fr;gap:65px}.offers article{padding:28px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.offers h3{font-size:clamp(34px,3.7vw,54px);margin-bottom:21px}.offers p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:410px;margin-bottom:25px;flex:1;line-height:1.85}.offers .eyebrow{font-size:10px}.offers .button{background:transparent;color:var(--ink);border:1px solid #c8c0b0}.offers .button>span{border-color:#c8c0b0}.offers .button:hover{background:#e8e2d7}
footer{background:#ebe6dc;padding:60px var(--pad) 25px;color:var(--ink)}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:80px;max-width:1360px;margin:auto;align-items:center;padding-bottom:48px}.footer-top h2{font-size:clamp(42px,4.1vw,62px);line-height:1.04}.footer-top .eyebrow{font-size:10px;margin-bottom:20px}.footer-top>div>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-top:18px}.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:18px;justify-self:end;min-width:260px}.footer-tel{font-family:var(--serif);font-size:31px;letter-spacing:0;line-height:1.2}.footer-contact .text-link{font-size:12px;padding-bottom:5px}.footer-bottom{max-width:1360px;margin:auto;display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #d1c8ba;padding-top:18px;font-size:11px;color:#797162}.footer-bottom>a:first-child{color:var(--ink);font-size:13px}.footer-bottom .text-button{font-size:11px}.legal{font-size:10px;color:#878071;margin:14px auto 0;max-width:1360px}.compact-contact{display:none}
.page-intro{padding-top:55px;padding-bottom:55px}.page-intro h1{max-width:1050px;font-size:clamp(56px,6vw,90px)}.intro-text{font-size:14px;color:var(--muted);max-width:570px;line-height:1.9;margin-top:25px}.gallery-intro{display:grid;grid-template-columns:1.2fr 1fr;column-gap:80px;padding-bottom:45px}.gallery-intro>.eyebrow{grid-column:1/-1;margin-bottom:20px}.gallery-intro>.intro-text{margin-top:0;max-width:350px;align-self:end;justify-self:end;padding-bottom:7px}.project-index{padding-top:0;padding-bottom:100px}.split-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:85px;align-items:center}.split-intro>figure{overflow:hidden}.split-intro>figure img{aspect-ratio:1.55;object-fit:cover;filter:saturate(.85)}.split-intro .intro-text{max-width:430px}
.case-opening{display:grid;grid-template-columns:.76fr 1.24fr;gap:75px;align-items:center;padding:45px var(--pad) 20px;max-width:1560px;margin:auto}.case-head>.text-link{font-size:12px;margin-bottom:45px}.case-head>.eyebrow{margin-bottom:18px;font-size:10px}.case-head h1{font-size:clamp(54px,5.7vw,88px);line-height:.98;margin-bottom:20px;max-width:420px}.case-head>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.8;margin-bottom:28px}.case-cover{overflow:hidden;max-width:990px;background:#e0dbd0}.case-cover .gallery-open{width:100%;max-width:none}.case-cover img{height:100%;aspect-ratio:1.1;object-fit:cover}.gallery-open{padding:0;background:none;position:relative;overflow:hidden;width:100%;max-width:1000px;display:block;margin:auto}.gallery-open img{object-fit:cover}.gallery-open>span{position:absolute;right:20px;bottom:20px;font-size:11px;padding:10px 17px;border:1px solid #fff9;color:white;border-radius:25px;background:#3c352b33;backdrop-filter:blur(3px)}.case-story{display:grid;grid-template-columns:1.2fr 1fr;gap:95px;padding-top:65px;padding-bottom:65px}.case-story h2{font-size:44px;line-height:1.1}.case-story>div+div{padding-top:42px}.case-story>div+div>p{font-size:14px;line-height:1.9;color:var(--muted)}.case-story .hint{font-size:12px;margin-top:20px}.case-gallery{padding:0 var(--pad) 75px;max-width:1000px;margin:auto}.case-gallery .gallery-open{max-width:570px}.detail-pair{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center;padding-top:20px}.detail-crop{overflow:hidden;position:relative;max-width:550px;aspect-ratio:1.12}.detail-crop>img{height:100%;width:100%;object-fit:cover;object-position:60% center;transform:scale(1.3)}.detail-crop figcaption{position:absolute;bottom:18px;left:20px;right:20px;color:white;font-size:11px;text-shadow:0 1px 8px #0008}.detail-pair h2{font-size:53px}.detail-pair>div>p:not(.eyebrow){margin:25px 0;font-size:14px;color:var(--muted);line-height:1.9;max-width:390px}
.services-list{padding-top:20px}.services-list article{display:grid;grid-template-columns:.12fr 1fr 1.05fr;gap:55px;border-top:1px solid var(--line);padding:55px 0;scroll-margin-top:90px;align-items:start}.service-index{font-family:var(--serif);font-style:italic;font-size:22px;color:#a19580}.services-list h2{font-size:60px;margin-bottom:22px}.services-list h3{font-family:Manrope,sans-serif;font-size:14px;font-weight:400;line-height:1.65;letter-spacing:0;margin-bottom:14px}.services-list p{font-size:14px;color:var(--muted);line-height:1.85}.services-list .service-result{font-size:12px;padding-top:20px;margin-top:22px;border-top:1px solid var(--line);margin-bottom:23px}.service-photo{overflow:hidden}.service-photo img{aspect-ratio:1.35;object-fit:cover;filter:saturate(.88)}.services-list article:nth-child(even) .service-photo img{aspect-ratio:1.2}.process-list{padding-top:5px}.process-list article{display:grid;grid-template-columns:.15fr 1fr 1.2fr;gap:55px;padding:32px 0;border-top:1px solid var(--line);align-items:start}.process-list article>span{font-family:var(--serif);font-style:italic;font-size:21px;color:#a19580}.process-list h2{font-size:38px;line-height:1.08}.process-list p{font-size:14px;color:var(--muted);line-height:1.9}.faq{display:grid;grid-template-columns:1fr 1.1fr;gap:85px;background:#eee9df}.faq h2{font-size:53px}.faq details{border-bottom:1px solid #d6cdbd;padding:22px 0}.faq details:first-child{border-top:1px solid #d6cdbd}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:30px;font-size:14px;line-height:1.6}.faq summary::-webkit-details-marker{display:none}.faq summary>span{transition:transform .4s;font-size:18px;color:#978b75}.faq details[open] summary>span{transform:rotate(45deg)}.faq details p{margin-top:18px;font-size:14px;color:var(--muted);line-height:1.9}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:45px;padding-bottom:25px}.contact-layout p{font-size:14px;max-width:400px;color:var(--muted);margin:15px 0 28px;line-height:1.9}.contact-big{font-family:var(--serif);font-size:clamp(36px,4vw,58px);letter-spacing:-.015em;line-height:1.2}.contact-layout .hint{font-size:12px;max-width:320px}.contact-layout>div+div{border-left:1px solid var(--line);padding-left:55px}.privacy-content{max-width:900px}.privacy-content h1{font-size:68px;margin:38px 0}.privacy-content p{margin:24px 0;font-size:14px;color:var(--muted);line-height:1.9}.privacy-content p a{text-decoration:underline}.no-js{padding:20px;text-align:center;font-size:14px}
/* Native dialogs and forms remain independent of the motion bundle. */
body:has(dialog[open]){overflow:hidden}dialog{border:0;background:var(--paper);color:var(--ink);padding:45px;width:min(680px,calc(100vw - 32px));max-height:90svh;box-shadow:0 20px 100px #0004}dialog::backdrop{background:#10150fc9;backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:8px;right:12px;padding:4px 10px;background:none;font-size:32px;font-weight:300;line-height:1;z-index:2}dialog h2{font-size:40px;line-height:1.1;letter-spacing:-.04em;margin-bottom:25px}dialog .eyebrow{font-size:12px;margin-bottom:20px;justify-content:space-between}fieldset{padding:0;border:0;margin:24px 0}legend{font-size:15px;margin-bottom:12px}form label{font-size:14px;display:block}form label>input:not([type=radio],[type=checkbox]),textarea{width:100%;background:transparent;border:1px solid #a8ad9e;padding:12px;margin:8px 0 18px;border-radius:0;min-height:46px;color:var(--ink)}.choices{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choices label{padding:13px 12px;border:1px solid #b8bcae;cursor:pointer;display:flex;align-items:center;gap:9px;min-height:48px}.choices label:has(input:checked){background:#e6e0d4;border-color:#b6aa94;color:var(--ink)}.choices input{accent-color:var(--accent);width:16px;height:16px;flex-shrink:0;margin:0}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-intro{font-size:14px;color:var(--muted);margin:20px 0}.progress{height:2px;background:#c5cabc;margin:20px 0}.progress i{display:block;width:25%;height:100%;background:var(--accent);transition:width .35s}.form-actions{display:flex;justify-content:space-between;gap:20px;margin-top:20px}.form-actions .button{margin-left:auto}.form-status{font-size:14px;color:#8e301f;min-height:20px;margin-top:16px}.form-alternative{margin-top:20px}.form-alternative a,.consent a{text-decoration:underline}.consent{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.6;margin-top:8px}.consent input{width:18px;height:18px;flex-shrink:0;accent-color:var(--accent)}.answer-summary{font-size:14px;margin-bottom:20px}.answer-summary button{display:block;background:none;text-decoration:underline;padding:7px 0;font-size:13px}#form-success>p{margin:18px 0}#form-success .button{margin:12px 0}#form-success .text-button{display:block}#gallery{width:min(1080px,96vw);background:var(--dark);padding:40px 20px 20px;color:white}#gallery>img{max-height:75svh;object-fit:contain}#gallery p{font-size:14px;text-align:center;margin-top:12px}
/* The inquiry belongs to the same quiet visual system as the pages. */
dialog{background:#f8f5ef;border-radius:8px;padding:45px;box-shadow:0 20px 100px #3327172b}dialog::backdrop{background:#2e2b23a6;backdrop-filter:blur(6px)}dialog h2{font-family:var(--serif);font-size:46px;font-weight:400;letter-spacing:-.025em}.choices label{border-color:#d8d0c2;border-radius:3px;font-size:14px}.choices label:has(input:checked){background:#e6e0d4;border-color:#bfb39e;color:var(--ink)}.choices input,.consent input{accent-color:#716953}.form-status{color:#89513e}.dialog-close{font-weight:200;font-size:28px;color:#8e8370}.progress i{background:#9b8e75}.answer-summary{color:#817767}#gallery{background:#f5f2ec;color:var(--ink);border-radius:4px}#gallery .dialog-close{color:var(--ink)}
@view-transition{navigation:auto}::view-transition-group(*){animation-duration:.7s;animation-timing-function:cubic-bezier(.22,1,.36,1)}::view-transition-old(root){animation:page-out .25s ease both}::view-transition-new(root){animation:page-in .65s var(--ease) both}::view-transition-old(site-header),::view-transition-new(site-header){animation:none}::view-transition-group(site-header){z-index:10}::view-transition-image-pair(interior-modern),::view-transition-image-pair(interior-detail),::view-transition-image-pair(interior-70){isolation:auto}::view-transition-old(interior-modern),::view-transition-old(interior-detail),::view-transition-old(interior-70){animation:none;mix-blend-mode:normal}::view-transition-new(interior-modern),::view-transition-new(interior-detail),::view-transition-new(interior-70){animation:photo-arrive .65s ease both;mix-blend-mode:normal}
@keyframes page-out{to{opacity:0;transform:translateY(-8px)}}@keyframes page-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes photo-arrive{from{opacity:.4}to{opacity:1}}
@media(min-width:1700px){.hero{gap:85px}.hero h1{font-size:118px}.hero-photo{aspect-ratio:1.12}.site-header{padding-left:max(var(--pad),calc((100vw - 1360px)/2));padding-right:max(var(--pad),calc((100vw - 1360px)/2))}}
@media(max-width:1150px){.site-header{gap:20px}.desktop-nav{gap:20px}.brand{font-size:14px}.brand small{font-size:8px}.header-phone{font-size:13px}.hero{gap:35px;grid-template-columns:.9fr 1.1fr}.hero h1{font-size:7.3vw}.hero-copy .eyebrow{display:block;font-size:10px;line-height:2}.hero-copy .eyebrow span{display:block}.hero-copy .eyebrow span:after{display:none}.hero-copy{padding-bottom:30px}.hero-description{font-size:13px}.hero-photo{aspect-ratio:.86}.hero-scroll{margin-top:26px}.intro{gap:55px}.section{padding-top:80px;padding-bottom:80px}.interiors{padding-top:0}.project-grid{gap:45px}.route-sticky{gap:40px}.route-chapter h3{font-size:52px}.route-kicker{font-size:10px}.route-chapter h4{font-size:14px}.route-chapter>p{font-size:13px}.control{gap:65px}.offers{gap:45px}.case-opening{gap:45px}.case-head h1{font-size:65px}.services-list article{gap:35px}.process-list article{gap:35px}.case-story{gap:60px}.detail-pair{gap:65px}.faq{gap:55px}.contact-layout{gap:65px}}
@media(max-width:850px){.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{list-style:none;font-size:12px;cursor:pointer;display:flex;gap:9px;align-items:center;min-height:44px}.mobile-menu summary::-webkit-details-marker{display:none}.menu-lines{display:block;width:18px;height:10px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:#f5f2efa8;backdrop-filter:blur(28px);padding:30px var(--pad);display:grid;gap:16px;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:31px;box-shadow:0 20px 35px #3027170c}.header-phone{margin-left:auto;font-size:13px}.hero{gap:30px}.hero h1{font-size:8.3vw}.hero-photo{aspect-ratio:.74}.hero-description{font-size:12px;line-height:1.8}.hero .button{font-size:12px;min-height:48px;padding:7px 8px 7px 18px;gap:15px}.hero .button>span{width:30px;height:30px;flex-basis:30px}.hero-scroll{font-size:11px}.hero-aside{margin-top:-10px;padding:16px 0}.intro{grid-template-columns:.65fr 1.4fr;gap:40px}.statement{font-size:43px}.intro-columns{gap:25px}.intro-columns p{font-size:13px}.project-caption h3{font-size:30px}.section-heading>p{font-size:13px;max-width:240px}.section-heading>.text-link{font-size:12px}.route-sticky{grid-template-columns:1fr;gap:0}.route-visual{min-height:0;aspect-ratio:1.45}.route-copy{padding-top:28px}.route-chapter h3{font-size:48px}.route-chapter h4{font-size:14px}.route-chapter>p{font-size:14px}.route-counter,.route-progress{display:none}.route-chapter{padding:24px 0}.deliverable{margin-top:20px}.control{gap:40px}.control-list h3{font-size:28px}.offers{gap:30px}.footer-top{gap:35px}.footer-contact{min-width:230px}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;gap:10px 22px}.footer-top h2{font-size:48px}.gallery-intro{gap:25px}.gallery-intro h1{font-size:62px}.gallery-intro .intro-text{font-size:13px}.split-intro{gap:40px}.case-opening{gap:30px;grid-template-columns:.85fr 1.15fr}.case-head h1{font-size:56px}.case-head>.text-link{margin-bottom:30px}.case-head .button{font-size:12px;gap:15px;padding-left:18px}.case-cover img{aspect-ratio:.9}.case-story{gap:35px}.case-story h2{font-size:38px}.detail-pair{gap:45px}.detail-pair h2{font-size:44px}.services-list article{grid-template-columns:25px 1fr 1fr;gap:25px}.services-list h2{font-size:48px}.service-photo img{aspect-ratio:.85}.process-list article{grid-template-columns:25px 1fr 1fr;gap:25px}.process-list h2{font-size:32px}.faq{gap:35px}.faq h2{font-size:42px}.contact-layout{gap:40px}.contact-layout>div+div{padding-left:30px}.contact-big{font-size:38px}}
@media(max-width:560px){:root{--pad:24px}.site-header{height:68px;gap:12px}.brand{gap:8px;font-size:13px}.brand-mark{width:26px;height:26px}.brand small{font-size:7px;margin-top:3px;letter-spacing:.07em}.header-phone{font-size:11px;letter-spacing:-.02em;margin-right:8px}.mobile-menu summary{font-size:0}.menu-lines{width:19px;height:9px}.mobile-menu summary>span:last-child{display:none}.hero{display:flex;flex-direction:column;padding-top:24px;gap:0}.hero-copy{padding:0 0 28px;width:100%;position:relative}.hero-copy .eyebrow{display:flex;gap:10px;font-size:8px;line-height:1.6;margin-bottom:22px;letter-spacing:.065em}.hero-copy .eyebrow span:after{display:inline-block;width:12px;margin-left:10px}.hero h1{font-size:62px;line-height:.94;letter-spacing:-.035em}.hero h1>em{white-space:normal}.hero-description{font-size:12px;line-height:1.8;margin:22px 0}.hero .button{font-size:12px;gap:25px;min-height:45px}.hero .button>span{width:29px;height:29px;flex-basis:29px;font-size:17px}.hero-scroll{position:absolute;bottom:40px;right:0;width:90px;gap:12px;line-height:1.5;font-size:10px}.hero-photo{width:100%;aspect-ratio:1.1;align-self:auto}.hero-photo>img{object-position:56% center}.hero-photo figcaption{left:16px;right:16px;bottom:16px;font-size:9px}.hero-aside{width:100%;margin-top:0;font-size:9px;padding:15px 0}.hero-aside>span:last-child{font-size:15px}.section{padding-top:60px;padding-bottom:60px}.eyebrow{font-size:9px;gap:12px;margin-bottom:22px}.eyebrow span:after{width:16px;margin-left:12px}h2{font-size:42px;line-height:1.04}h1{font-size:56px}.intro{grid-template-columns:1fr;gap:22px;padding-top:55px;padding-bottom:60px}.intro-side{padding:0}.intro-side .eyebrow{display:flex;margin:0;gap:12px}.intro-side .eyebrow span{display:inline;margin:0}.intro-side .eyebrow span:after{display:inline-block}.intro-side>p,.fine-rule{display:none}.statement{font-size:40px;line-height:1.08}.intro-columns{grid-template-columns:1fr;gap:15px;margin:24px 0}.intro-columns p{font-size:13px;line-height:1.85}.text-link{font-size:12px;padding-bottom:7px;gap:20px}.text-link>span{font-size:18px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:39px;line-height:1.08}.section-heading>.text-link{margin-top:23px}.section-heading>p{max-width:none;margin-top:22px;font-size:13px}.interiors{padding-top:0}.project-grid{grid-template-columns:1fr;gap:35px}.project:nth-child(even){margin-top:0;margin-left:30px}.project:nth-child(even) .project-image img{aspect-ratio:1.1}.project-image img{aspect-ratio:1.18}.project-caption{padding-top:15px}.project-caption>span{font-size:9px;margin-bottom:7px}.project-caption h3{font-size:31px}.project-caption p{font-size:11px;margin-top:5px}.image-arrow{width:34px;height:34px;bottom:13px;right:13px;font-size:17px}.gallery-note{font-size:11px;margin-top:24px}.route-section{padding-top:50px;padding-bottom:50px}.route-section h2{font-size:43px}.route-visual{aspect-ratio:1.2}.route-photo-label{left:16px;bottom:15px;font-size:10px}.route-copy{padding-top:22px}.route-kicker{font-size:10px;padding-bottom:16px}.route-chapter{padding:23px 0}.chapter-number{font-size:18px;margin-bottom:8px}.route-chapter h3{font-size:45px;margin-bottom:14px}.route-chapter h4{font-size:14px;margin-bottom:10px}.route-chapter>p{font-size:13px;line-height:1.85}.deliverable{margin-top:18px;padding-top:13px}.deliverable>span{font-size:9px}.deliverable p{font-size:11px}.control{grid-template-columns:1fr;gap:30px}.control h2{font-size:41px}.control-intro{font-size:13px;margin:23px 0}.control-list article{padding:23px 0;gap:25px}.control-list h3{font-size:29px}.control-list p{font-size:13px}.control-list>article>span{font-size:18px}.offers-section{padding-top:0}.offers{grid-template-columns:1fr;gap:35px}.offers article{padding-top:23px}.offers h3{font-size:42px}.offers p:not(.eyebrow){font-size:13px;margin-bottom:24px}.offers .eyebrow{font-size:9px}.button{font-size:13px;min-height:48px;gap:25px;padding:7px 9px 7px 20px}.button>span{width:30px;height:30px;flex-basis:30px;font-size:18px}footer{padding:42px var(--pad) 82px}.footer-top{grid-template-columns:1fr;gap:28px;padding-bottom:30px}.footer-top h2{font-size:45px}.footer-top .eyebrow{font-size:9px;margin-bottom:17px}.footer-top>div>p:not(.eyebrow){font-size:12px;margin-top:13px}.footer-contact{justify-self:start;gap:17px;min-width:0}.footer-tel{font-size:31px}.footer-bottom{font-size:10px;gap:10px 18px;padding-top:16px}.footer-bottom>a:first-child{font-size:12px}.footer-bottom .text-button{font-size:10px}.legal{font-size:9px;line-height:1.7;margin-top:14px}.mobile-call{display:flex;position:fixed;bottom:12px;left:24px;right:24px;justify-content:space-between;align-items:center;background:#575448f5;color:white;padding:9px 12px 9px 20px;z-index:40;font-size:12px;border-radius:50px;box-shadow:0 5px 25px #30261818;backdrop-filter:blur(8px)}.mobile-call>span:last-child{display:grid;place-items:center;width:28px;height:28px;font-size:18px;border:1px solid #ffffff45;border-radius:50%}body:has(dialog[open]) .mobile-call{display:none}.page-intro{padding-top:35px;padding-bottom:35px}.page-intro h1{font-size:54px;line-height:1}.page-intro .eyebrow{margin-bottom:20px}.intro-text{font-size:13px;line-height:1.9;margin-top:22px}.gallery-intro{display:block}.gallery-intro h1{font-size:54px}.gallery-intro .intro-text{margin-top:20px;max-width:300px;padding:0}.project-index{padding-top:0;padding-bottom:60px}.project-index .project:last-child{grid-column:auto}.split-intro{grid-template-columns:1fr;gap:30px}.split-intro>figure img{aspect-ratio:1.6}.case-opening{grid-template-columns:1fr;gap:28px;padding-top:28px;padding-bottom:0}.case-head>.text-link{margin-bottom:25px}.case-head>.eyebrow{font-size:9px;margin-bottom:14px}.case-head h1{font-size:57px;max-width:330px;line-height:.98;margin-bottom:17px}.case-head>p:not(.eyebrow){font-size:13px;margin-bottom:22px}.case-head .button{font-size:12px;gap:25px}.case-cover img{aspect-ratio:1.15}.gallery-open>span{font-size:10px;bottom:15px;right:15px;padding:8px 13px}.case-story{grid-template-columns:1fr;gap:25px;padding-top:42px;padding-bottom:42px}.case-story h2{font-size:39px}.case-story>div+div{padding:0}.case-story>div+div>p{font-size:13px}.case-story .hint{font-size:11px;margin-top:17px}.case-gallery{padding-bottom:45px}.detail-pair{grid-template-columns:1fr;gap:30px;padding-top:10px}.detail-crop{max-width:none;aspect-ratio:1.35;margin-left:30px}.detail-crop figcaption{font-size:9px;left:15px;bottom:15px}.detail-pair h2{font-size:44px}.detail-pair>div>p:not(.eyebrow){font-size:13px;margin:20px 0}.services-list{padding-top:10px}.services-list article{grid-template-columns:20px 1fr;gap:18px;padding:35px 0}.service-index{font-size:18px}.services-list h2{font-size:45px;margin-bottom:18px}.services-list h3{font-size:14px}.services-list p{font-size:13px}.services-list .service-result{font-size:11px;padding-top:17px;margin-top:20px}.service-photo{grid-column:2}.service-photo img,.services-list article:nth-child(even) .service-photo img{aspect-ratio:1.5}.process-list{padding-top:0}.process-list article{grid-template-columns:20px 1fr;gap:15px;padding:25px 0}.process-list article>span{font-size:17px}.process-list h2{font-size:34px}.process-list p{grid-column:2;font-size:13px}.faq{grid-template-columns:1fr;gap:30px}.faq h2{font-size:42px}.faq summary{font-size:14px;gap:22px}.faq details p{font-size:13px}.contact-layout{grid-template-columns:1fr;gap:35px;margin-top:27px;padding-bottom:0}.contact-layout p{font-size:13px;margin-top:0}.contact-layout>div+div{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:27px}.contact-big{font-size:40px;white-space:nowrap}.contact-big+p{margin-top:10px}.contact-layout .hint{font-size:11px}.privacy-content h1{font-size:52px;margin:30px 0}.privacy-content p{font-size:13px}.compact-contact{display:none}dialog{padding:34px 22px 24px;width:calc(100vw - 22px);max-height:94svh}dialog h2{font-size:37px;margin-bottom:20px}.choices{gap:7px}.choices label{font-size:12px;padding:12px 9px;gap:7px}.field-pair{grid-template-columns:1fr;gap:0}.form-intro{font-size:13px}.form-actions{gap:12px}.form-actions .button{padding:7px 9px 7px 17px;font-size:13px;gap:20px}.form-status{font-size:13px}.consent{font-size:12px}.form-alternative{font-size:12px}#gallery{padding:38px 10px 15px}.dialog-close{font-size:27px}.form-alternative a{white-space:nowrap}}
@media(max-width:360px){:root{--pad:20px}.hero h1{font-size:54px}.hero-copy .eyebrow{font-size:7px;gap:8px}.hero .button{font-size:11px;gap:17px;padding-left:16px}.hero-scroll{display:none}.hero-description{font-size:11px}.brand{font-size:12px}.brand small{font-size:7px}.header-phone{font-size:10px;margin-right:6px}.brand-mark{width:24px;height:24px}.site-header{gap:8px}.statement{font-size:35px}.section-heading h2{font-size:35px}.page-intro h1{font-size:47px}.case-head h1{font-size:50px}.contact-big{font-size:35px}.mobile-call{left:20px;right:20px}.eyebrow{font-size:8px}.route-section h2{font-size:40px}.footer-top h2{font-size:42px}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off::view-transition-group(*),.motion-off::view-transition-old(*),.motion-off::view-transition-new(*){animation:none!important}
@media print{.site-header,footer,.mobile-call,.reading-progress,dialog,button{display:none!important}.section{padding:28px 0}.offers{gap:30px}body{background:white;font-size:14px}h1{font-size:50px}h2,h3{font-size:32px}.offers article{break-inside:avoid}}

/* Final composition and readable details across the whole collection. */
.footer-tel,.contact-big{font-family:Manrope,Arial,sans-serif;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.035em}.footer-tel{font-size:25px}.contact-big{font-size:clamp(30px,3.3vw,48px)}
.project-index .project:last-child{display:grid;grid-template-columns:1.17fr .83fr;gap:78px;grid-column:1/-1;max-width:none;align-items:center}.project-index .project:last-child .project-image img{aspect-ratio:1.55}.project-index .project:last-child .project-caption{padding:0}.project-index .project:last-child h3{font-size:49px;max-width:330px;line-height:1.05}
.detail-crop{max-width:470px}.detail-crop>img{transform:scale(1.65);object-position:63% center}
@media(min-width:851px){.services-list article:nth-child(even){grid-template-columns:1.05fr .12fr 1fr}.services-list article:nth-child(even) .service-photo{grid-column:1;grid-row:1}.services-list article:nth-child(even) .service-index{grid-column:2;grid-row:1}.services-list article:nth-child(even)>div:not(.service-photo){grid-column:3;grid-row:1}.services-list article#materials .service-photo img{aspect-ratio:1.15;object-position:65% center;transform:scale(1.15)}}
@media(max-width:850px){.project-index .project:last-child{gap:35px}.project-index .project:last-child h3{font-size:36px}}
@media(max-width:560px){.hero{padding-top:17px}.hero-copy .eyebrow{margin-bottom:18px;font-size:8px}.hero-copy .eyebrow>span{display:none}.hero h1{font-size:58px}.hero-description{font-size:14px;line-height:1.65;margin:20px 0}.hero-scroll{display:none}.hero .button{font-size:13px;min-height:48px}.hero-copy{padding-bottom:24px}.project-index .project:last-child{display:block;grid-column:auto}.project-index .project:last-child .project-caption{padding-top:15px}.project-index .project:last-child h3{font-size:31px}.project-index .project:last-child .project-image img{aspect-ratio:1.18}.footer-tel{font-size:23px}.contact-big{font-size:29px}.detail-crop{max-width:none}.header-phone{font-size:10px}.brand{font-size:12px}.brand small{font-size:6px}.hero-photo figcaption{font-size:9px}.footer-bottom,.footer-bottom .text-button,.legal{font-size:10px}}
@media(max-width:360px){.hero h1{font-size:52px}.hero-description{font-size:13px}.hero .button{font-size:12px}.contact-big{font-size:25px}.brand{font-size:10px}.brand small{font-size:5.5px}.header-phone{font-size:9px}.hero-photo figcaption{font-size:8px}}

.legal{color:#706c62;font-size:11px}

body[data-page="project-70.html"] .case-cover{max-width:699px}.case-gallery .gallery-open{max-width:376px}#gallery>img{width:auto;max-width:100%;height:auto;margin:0 auto;max-height:75svh}#gallery{width:fit-content;max-width:96vw}

/* Unmatched photographs leave promptly; only the selected pair morphs. */
::view-transition-old(interior-modern):only-child,::view-transition-old(interior-detail):only-child,::view-transition-old(interior-70):only-child{animation:unmatched-out .16s ease both}
::view-transition-new(interior-modern):only-child,::view-transition-new(interior-detail):only-child,::view-transition-new(interior-70):only-child{animation:unmatched-in .3s ease both}
@keyframes unmatched-out{to{opacity:0}}@keyframes unmatched-in{from{opacity:0}to{opacity:1}}

.route-section:not(.motion-ready) .route-visual{aspect-ratio:auto}

/* Keep a complete page behind the arrival; no blank frame or double photo. */
::view-transition-old(root){animation:none}
::view-transition-new(root){animation:unmatched-in .35s ease both}

/* Direct defaults animate one opaque photograph; :only-child handles
   unmatched snapshots independently. */
::view-transition-old(interior-modern),::view-transition-old(interior-detail),::view-transition-old(interior-70){opacity:0;animation:none;mix-blend-mode:normal}
::view-transition-new(interior-modern),::view-transition-new(interior-detail),::view-transition-new(interior-70){opacity:1;animation:none;width:100%;height:100%;object-fit:cover;mix-blend-mode:normal}
::view-transition-old(interior-modern):only-child,::view-transition-old(interior-detail):only-child,::view-transition-old(interior-70):only-child{opacity:1;animation:unmatched-out .16s ease both}
::view-transition-new(interior-modern):only-child,::view-transition-new(interior-detail):only-child,::view-transition-new(interior-70):only-child{opacity:1;animation:unmatched-in .3s ease both}
