@font-face{font-family:Archivo;src:url('/assets/fonts/archivo-400.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Archivo;src:url('/assets/fonts/archivo-600.woff') format('woff');font-weight:600;font-style:normal;font-display:swap}
:root{--paper:#fafaf8;--ink:#24231f;--wine:#542c25;--copper:#b96242;--line:#d7d6d0;--muted:#66655e;--gutter:clamp(22px,5vw,90px);font-family:Archivo,Arial,sans-serif;font-size:16px;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}img{display:block;max-width:100%;width:100%;height:auto}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--copper);outline-offset:6px}::selection{background:#dba68b;color:#24231f}.skip-link{position:absolute;top:-100px;left:20px;z-index:40;background:white;padding:16px}.skip-link:focus{top:15px}.wrap{padding-left:var(--gutter);padding-right:var(--gutter)}.eyebrow{display:block;font-size:.875rem;line-height:1.6;letter-spacing:.05em;text-transform:uppercase}.photo{min-width:0;width:100%}.photo figcaption{font-size:.8125rem;line-height:1.65;padding-top:14px;color:var(--muted)}.photo-button{display:block;width:100%;position:relative;padding:0;text-align:left}.photo img{width:100%;height:auto}.zoom-label{position:absolute;right:16px;bottom:16px;width:40px;height:40px;display:grid;place-items:center;background:rgba(250,250,248,.96);font-size:1.5rem;color:var(--ink);transition:background .2s}.photo-button:hover .zoom-label{background:white}.site-header{display:flex;align-items:center;gap:28px;padding:0 var(--gutter);min-height:100px;border-bottom:1px solid var(--line);position:relative;z-index:10;background:var(--paper)}.brand{font-size:2.15rem;letter-spacing:-.055em;font-weight:600;white-space:nowrap}.brand-caption{font-size:.875rem;line-height:1.45;border-left:1px solid var(--line);padding-left:25px;color:var(--muted)}.site-header nav{display:flex;align-items:center;gap:30px;margin-left:auto}.site-header nav a{font-size:.875rem;padding:12px 0;position:relative}.site-header nav a:after{position:absolute;content:'';bottom:4px;left:0;right:100%;height:2px;background:currentColor;transition:right .25s}.site-header nav a:hover:after,.site-header nav a[aria-current=page]:after{right:0}.menu-toggle{display:none}.line-link{font-size:.875rem;display:inline-flex;gap:35px;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid currentColor;line-height:1.5;text-align:left}.line-link>span{font-size:1.3rem}.line-link:hover{color:var(--copper)}.line-link.light:hover{color:#e8bda7}.solid-link{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;background:var(--ink);color:white;font-size:.875rem;padding:18px 22px;line-height:1.5}.solid-link>span{font-size:1.3rem}.solid-link:hover{background:var(--wine)}.site-footer{padding:50px var(--gutter) 25px;background:#eeeee9;border-top:1px solid var(--line);color:var(--ink)}.footer-main{display:flex;align-items:center;gap:30px}.footer-brand{font-size:2rem;letter-spacing:-.06em;font-weight:600}.footer-nav{display:flex;gap:25px;margin-left:auto;font-size:.875rem}.footer-rise{font-size:.875rem;border-bottom:1px solid;padding-bottom:5px;margin-left:20px}.footer-small{display:flex;justify-content:space-between;gap:35px;margin-top:42px;border-top:1px solid #d0d0c8;padding-top:20px;font-size:.75rem;line-height:1.65;color:var(--muted)}.footer-small p{max-width:700px}
.home-opening{display:grid;grid-template-columns:1fr 2fr;gap:4%;padding:45px var(--gutter) 60px;align-items:center}.home-heading h1{font-size:clamp(3.4rem,6.7vw,6.5rem);letter-spacing:-.06em;line-height:.97;margin:25px 0 30px}.home-heading p{font-size:1rem;line-height:1.7;color:var(--muted)}.home-heading .line-link{margin-top:24px}.home-cover{display:block;min-width:0}.cover-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--wine);color:white;padding:20px 24px;font-size:.875rem;line-height:1.5}.cover-caption b{font-size:1.5rem;font-weight:400}.home-selection{padding-top:35px;padding-bottom:100px}.section-head{display:grid;grid-template-columns:1fr 2fr 1fr;gap:25px;align-items:end;margin-bottom:38px}.section-head>.eyebrow{align-self:start;padding-top:5px}.section-head h2{font-size:clamp(1.8rem,3.4vw,3.2rem);line-height:1.1;letter-spacing:-.04em}.section-head>.line-link{justify-self:end}.home-pair{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:start}.home-pair .portfolio-card:last-child{margin-top:100px}.card-photo{position:relative;display:block}.card-open{position:absolute;right:18px;bottom:18px;background:var(--paper);padding:12px 16px;display:flex;gap:22px;font-size:.875rem;align-items:center;opacity:0;transition:opacity .25s}.card-open b{font-size:1.25rem;font-weight:400}.card-photo:hover .card-open,.card-photo:focus-visible .card-open{opacity:1}.card-caption{display:flex;gap:22px;padding-top:22px}.card-caption>span{font-size:.875rem;color:var(--wine);padding-top:4px}.card-caption h2{font-size:1.5rem;letter-spacing:-.03em;line-height:1.2}.card-caption p{font-size:.875rem;color:var(--muted);margin-top:9px}.home-craft{display:grid;grid-template-columns:1fr 1.6fr;gap:9%;align-items:center;background:var(--wine);color:white;padding:65px var(--gutter)}.home-craft h2{font-size:clamp(2.3rem,4.8vw,4.7rem);letter-spacing:-.05em;line-height:1.05;margin:26px 0}.home-craft p{font-size:1rem;line-height:1.8;max-width:360px;color:#ebdacf}.home-craft .line-link{margin-top:25px}.home-material-link{padding-top:75px;padding-bottom:85px;display:grid;grid-template-columns:1fr 2.4fr;gap:25px}.home-material-link h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.2;letter-spacing:-.04em}.home-material-link>.line-link{grid-column:2;justify-self:start}
.portfolio-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;padding-top:60px;padding-bottom:45px}.portfolio-heading h1{font-size:clamp(4rem,9vw,9rem);letter-spacing:-.065em;line-height:1.08;margin-top:22px}.portfolio-heading>p{font-size:1rem;line-height:1.7;color:var(--muted);padding-bottom:8px}.portfolio-feature{width:86%;margin-left:auto}.portfolio-description{font-size:1rem;line-height:1.8;color:var(--muted);max-width:520px;margin-top:20px}.portfolio-duo{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;margin-top:65px}.portfolio-duo>div:last-child{padding-top:140px}.portfolio-end{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:60px;padding-bottom:70px;font-size:.75rem;color:var(--muted);line-height:1.7}
.casa-cover{padding:30px var(--gutter) 0}.casa-cover>.photo{max-width:1500px;margin:auto}.casa-title{display:grid;grid-template-columns:1.4fr 1fr;gap:10%;padding-top:50px;padding-bottom:65px;align-items:end}.casa-title h1{font-size:clamp(2.8rem,6vw,6rem);line-height:1.06;letter-spacing:-.05em;margin-top:24px}.casa-title>p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:450px}.casa-chapter{display:grid;grid-template-columns:1fr 1.65fr;gap:7%;padding-top:45px;padding-bottom:70px;background:#eeeee9;align-items:center}.chapter-copy h2,.casa-suite h2{font-size:clamp(2rem,3vw,3rem);line-height:1.1;letter-spacing:-.04em;margin:24px 0}.chapter-copy>p,.casa-suite>div>p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:390px}.spec-list{padding:0;list-style:none;margin:28px 0 0;font-size:.875rem}.spec-list li{border-top:1px solid #d0d0c8;padding:13px 0;line-height:1.5}.casa-suite{display:grid;grid-template-columns:1fr 1.2fr;gap:15%;padding-top:85px;padding-bottom:90px;align-items:center}.casa-suite>.photo{max-width:520px;margin-left:auto}.case-materials{display:flex;gap:40px;border-top:1px solid var(--line);padding-top:25px;margin:32px 0}.case-materials>span{font-size:.75rem;color:var(--muted)}.case-materials>p{font-size:.875rem;line-height:1.9}.next-case{display:grid;grid-template-columns:1fr 2fr 40px;gap:30px;align-items:center;padding:45px var(--gutter);background:var(--wine);color:white}.next-case>span{font-size:.75rem;line-height:1.7}.next-case strong{font-size:clamp(1.7rem,3.5vw,3.5rem);font-weight:400;line-height:1.2;letter-spacing:-.04em}.next-case>b{font-size:2.5rem;font-weight:400}
.aurora-opening{display:grid;grid-template-columns:1.3fr 1fr;gap:14%;padding-top:60px;padding-bottom:70px;align-items:center}.aurora-opening>.photo{max-width:460px;justify-self:end}.case-number{display:block;color:#9f8b69;font-size:clamp(4rem,9vw,9rem);line-height:1;letter-spacing:-.08em;margin:35px 0 25px}.aurora-intro h1{font-size:clamp(2.5rem,5.2vw,5.2rem);line-height:1.06;letter-spacing:-.05em}.aurora-intro>p{font-size:1.1rem;line-height:1.75;color:var(--muted);margin-top:25px}.aurora-overview{padding-top:25px;padding-bottom:65px;background:#efece5}.aurora-overview>.eyebrow{margin-bottom:20px}.aurora-notes{display:grid;grid-template-columns:1fr 1fr;gap:35px 10%;padding-top:65px;padding-bottom:70px}.aurora-notes h2{font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.1;letter-spacing:-.04em;margin-top:22px}.aurora-notes>p{font-size:1rem;line-height:1.8;color:var(--muted);padding-top:32px;max-width:490px}.aurora-decisions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:45px;border-top:1px solid var(--line);padding-top:30px;margin-top:15px}.aurora-decisions article>span{font-size:.75rem;color:#9f8b69}.aurora-decisions h3{font-size:1.4rem;letter-spacing:-.02em;margin:20px 0 13px}.aurora-decisions p{font-size:.875rem;line-height:1.75;color:var(--muted);max-width:320px}
.case-cafe{background:#502523;color:#faf2e9}.case-cafe .site-header{background:transparent;color:#faf2e9;border-color:#88625b}.case-cafe .brand-caption{color:#dcc2b6;border-color:#88625b}.case-cafe .photo figcaption{color:#dcc2b6}.cafe-opening{padding-top:40px;padding-bottom:55px}.cafe-title{display:flex;flex-direction:column;gap:23px;margin-bottom:30px}.cafe-title h1{font-size:clamp(3rem,9.5vw,9.5rem);letter-spacing:-.045em;line-height:.96}.cafe-title>span:last-child{font-size:.875rem;color:#dcc2b6}.cafe-story{display:grid;grid-template-columns:1.3fr 1fr;gap:16%;padding-top:30px;padding-bottom:65px}.cafe-story h2,.cafe-detail h2{font-size:clamp(2rem,3.5vw,3.5rem);letter-spacing:-.04em;line-height:1.1;margin:25px 0}.cafe-story p,.cafe-detail p{font-size:1rem;line-height:1.8;color:#ead5c9;max-width:450px}.cafe-story dl{margin:0;padding-top:10px}.cafe-story dl>div{border-top:1px solid #88625b;padding:20px 0}.cafe-story dt{font-size:.75rem;color:#dcc2b6;margin-bottom:9px}.cafe-story dd{margin:0;font-size:1rem;line-height:1.5}.cafe-detail{display:grid;grid-template-columns:1.5fr 1fr;gap:8%;padding-bottom:80px;align-items:center}.cafe-detail .line-link{margin-top:25px}.case-cafe .next-case{background:#e5dbce;color:#502523}
.atelier-banner{position:relative;padding:30px var(--gutter) 0}.atelier-banner .photo{width:85%;margin-left:auto}.atelier-banner-label{position:absolute;bottom:0;left:var(--gutter);max-width:46%;padding:36px;background:var(--wine);color:white}.atelier-banner h1{font-size:clamp(2rem,3.5vw,3.5rem);letter-spacing:-.04em;line-height:1.1;margin-top:20px}.atelier-about{display:grid;grid-template-columns:1fr 1.5fr 1.2fr;gap:40px;padding-top:75px;padding-bottom:75px;align-items:start}.atelier-about h2{font-size:clamp(1.8rem,2.8vw,2.8rem);letter-spacing:-.04em;line-height:1.15}.atelier-about>p{font-size:1rem;line-height:1.8;color:var(--muted)}.atelier-services{display:grid;grid-template-columns:1fr 1.5fr;gap:15%;padding-top:60px;padding-bottom:65px;background:#eeeee9}.atelier-services h2{font-size:clamp(2rem,3.3vw,3.3rem);letter-spacing:-.04em;line-height:1.1;margin-top:23px}.services-list article{display:grid;grid-template-columns:35px 1fr;gap:10px 20px;border-top:1px solid #d0d0c8;padding:23px 0}.services-list article>span{font-size:.875rem;color:var(--wine);padding-top:4px}.services-list h3{font-size:1.4rem;line-height:1.4;letter-spacing:-.02em}.services-list article>p{grid-column:2;font-size:1rem;line-height:1.7;color:var(--muted)}.atelier-process{display:grid;grid-template-columns:1fr 2fr;gap:12%;padding-top:70px;padding-bottom:45px}.process-list details{border-top:1px solid var(--line)}.process-list details:last-child{border-bottom:1px solid var(--line)}.process-list summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:35px 1fr 28px;align-items:center;gap:20px;padding:25px 0}.process-list summary::-webkit-details-marker{display:none}.process-list summary>span{font-size:.875rem;color:var(--wine)}.process-list h3{font-size:1.35rem;line-height:1.3;letter-spacing:-.02em}.process-list b{font-size:1.8rem;font-weight:400}.process-list details[open] b{transform:rotate(45deg)}.process-list details>p{padding:0 45px 28px 55px;font-size:1rem;line-height:1.8;color:var(--muted)}.atelier-to-projects{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-top:25px;padding-bottom:65px}.atelier-to-projects>span{font-size:.875rem;color:var(--muted)}.atelier-to-projects strong{font-size:1.5rem;line-height:1.4;font-weight:400}.atelier-to-projects b{font-weight:400;margin-left:30px}
.materials-opening{display:grid;grid-template-columns:1.3fr 1fr;gap:10%;padding-top:60px;padding-bottom:65px;align-items:center}.materials-opening h1{font-size:clamp(2.5rem,4.8vw,4.8rem);letter-spacing:-.05em;line-height:1.05;margin:24px 0}.materials-opening>div>p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:370px}.material-library{padding-bottom:65px}.material-row{display:grid;grid-template-columns:65px 35px 1fr 1.3fr;gap:25px;align-items:center;border-top:1px solid var(--line);padding:27px 0}.material-row:last-child{border-bottom:1px solid var(--line)}.material-swatch{width:52px;height:52px;display:block;border:1px solid rgba(0,0,0,.12)}.material-swatch.oak{background:#c0a477}.material-swatch.white{background:#eee9dd}.material-swatch.wine{background:#6c292e}.material-swatch.steel{background:#a7a8a6}.material-swatch.black{background:#252526}.material-no{font-size:.75rem;color:var(--muted)}.material-row h2{font-size:1.6rem;line-height:1.2;letter-spacing:-.02em}.material-row>div>p{font-size:1rem;line-height:1.65}.material-row>div>span{display:block;font-size:.875rem;line-height:1.7;color:var(--muted);margin-top:6px}.materials-ending{display:grid;grid-template-columns:1fr 1.8fr;gap:30px 8%;padding-top:60px;padding-bottom:70px;background:#eeeee9}.materials-ending h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.15;letter-spacing:-.04em}.materials-ending>p{grid-column:2;font-size:1rem;line-height:1.8;color:var(--muted);max-width:540px}.materials-ending>.line-link{grid-column:2;justify-self:start}
.contact-page{background:#252521;color:#fafaf8}.contact-page .site-header{background:transparent;color:white;border-color:#63635b}.contact-page .brand-caption{color:#babab0;border-color:#63635b}.contact-opening{padding-top:65px;padding-bottom:70px;display:grid;grid-template-columns:1.4fr 1fr;gap:30px 13%;align-items:end}.contact-opening>.eyebrow{grid-column:1/-1}.contact-opening h1{font-size:clamp(4rem,9vw,9rem);line-height:.99;letter-spacing:-.06em}.contact-note p{font-size:1.1rem;line-height:1.8;color:#d5d5c9;max-width:380px}.contact-email{font-size:clamp(1.1rem,2vw,2rem);line-height:1.6;display:block;margin-top:26px;overflow-wrap:anywhere;border-bottom:1px solid #949486;padding-bottom:12px}.contact-details{display:grid;grid-template-columns:1.4fr 1fr;gap:13%;padding-top:45px;padding-bottom:75px;border-top:1px solid #63635b}.contact-details ol{padding-left:20px;margin:26px 0 0;font-size:1rem;line-height:2.2;color:#d5d5c9}.contact-details>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.contact-details .solid-link{background:#eeeee9;color:#252521}.contact-details .solid-link:hover{background:white}.contact-details>div:last-child>p{font-size:.75rem;line-height:1.8;color:#babab0}
.lightbox{padding:60px 25px 20px;border:0;width:calc(100% - 32px);height:calc(100svh - 32px);max-width:1600px;max-height:calc(100svh - 32px);background:#151513;color:white;overflow:hidden}.lightbox::backdrop{background:rgba(0,0,0,.85)}.lightbox img{width:100%;height:calc(100% - 34px);object-fit:contain}.lightbox-close{position:absolute;top:12px;right:25px;display:flex;align-items:center;gap:25px;font-size:.875rem}.lightbox-close span{font-size:1.9rem}.lightbox>p{font-size:.75rem;text-align:center;padding-top:12px;color:#d7d6d0}
@media(max-width:1100px){.brand-caption{display:none}.site-header nav{gap:22px}.home-opening{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:5%}.home-heading h1{font-size:clamp(3rem,6.5vw,4.2rem)}.home-heading p{font-size:1rem}.section-head{grid-template-columns:1fr 2.4fr}.section-head>.line-link{grid-column:2;justify-self:start}.home-craft{gap:6%}.casa-chapter{gap:5%}.aurora-opening{gap:8%}.atelier-about{grid-template-columns:1fr 2fr;gap:30px}.atelier-about>p{grid-column:2}.materials-opening{gap:7%}.material-row{grid-template-columns:55px 30px 1fr 1.2fr;gap:15px}.footer-nav{gap:18px}.footer-rise{margin-left:10px}}
@media(max-width:860px){:root{--gutter:22px}.site-header{min-height:83px;gap:16px}.brand{font-size:1.8rem}.menu-toggle{display:flex;gap:12px;align-items:center;margin-left:auto;padding:12px 0;font-size:.875rem}.menu-toggle span{font-size:1.5rem}.menu-toggle[aria-expanded=true] span{transform:rotate(45deg)}.site-header nav{display:none;position:absolute;top:83px;left:0;right:0;margin:0;padding:24px var(--gutter) 30px;background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:8px}.site-header nav a{font-size:1.2rem;padding:12px}.site-header nav a[aria-current=page]{color:var(--wine);font-weight:600}.site-header nav a:after{display:none}.home-opening{display:block;padding-top:30px;padding-bottom:40px}.home-heading h1{font-size:3.7rem;margin:22px 0}.home-heading p{font-size:1rem}.home-heading .line-link{margin-top:20px}.home-cover{margin-top:30px}.cover-caption{padding:15px 18px;font-size:.75rem}.home-selection{padding-top:15px;padding-bottom:50px}.section-head{display:block;margin-bottom:30px}.section-head h2{font-size:2rem;margin-top:20px}.section-head>.line-link{margin-top:18px}.home-pair{display:block}.home-pair .portfolio-card:last-child{margin-top:35px;margin-left:12%}.card-caption{padding-top:17px;gap:16px}.card-caption h2{font-size:1.35rem}.card-open{opacity:1;font-size:.75rem;padding:10px 12px;right:12px;bottom:12px}.home-craft{display:flex;flex-direction:column;gap:30px;padding-top:40px;padding-bottom:45px;align-items:stretch}.home-craft h2{font-size:2.8rem;margin:22px 0}.home-craft p{max-width:none}.home-material-link{display:block;padding-top:45px;padding-bottom:50px}.home-material-link h2{font-size:1.8rem;margin-top:22px}.home-material-link>.line-link{margin-top:20px}.site-footer{padding-top:35px}.footer-main{flex-wrap:wrap;gap:23px}.footer-brand{width:100%;font-size:1.8rem}.footer-nav{margin:0;gap:18px;flex-wrap:wrap;font-size:.875rem}.footer-rise{margin:0;font-size:.75rem}.footer-small{margin-top:28px;gap:15px;font-size:.75rem}.portfolio-heading{display:block;padding-top:35px;padding-bottom:30px}.portfolio-heading h1{font-size:3.8rem;margin-top:18px}.portfolio-heading>p{font-size:1rem;margin-top:22px;padding:0}.portfolio-feature{width:100%}.portfolio-description{font-size:1rem;margin-top:16px}.portfolio-duo{display:block;margin-top:35px}.portfolio-duo>div:last-child{padding-top:35px;margin-left:10%}.portfolio-end{flex-direction:column;align-items:flex-start;padding-top:35px;padding-bottom:45px;gap:20px}.casa-cover{padding-top:20px}.photo figcaption{font-size:.8125rem;padding-top:11px}.casa-title{display:block;padding-top:35px;padding-bottom:40px}.casa-title h1{font-size:2.6rem;margin-top:18px}.casa-title>p{margin-top:22px}.casa-chapter{display:flex;flex-direction:column;gap:30px;padding-top:35px;padding-bottom:40px;align-items:stretch}.chapter-copy h2,.casa-suite h2{font-size:2rem;margin:20px 0}.chapter-copy>p,.casa-suite>div>p{max-width:none}.spec-list{margin-top:23px}.casa-suite{display:flex;flex-direction:column;gap:30px;padding-top:45px;padding-bottom:45px;align-items:stretch}.casa-suite>.photo{max-width:420px;width:86%;margin:auto}.case-materials{gap:30px;margin:25px 0}.next-case{grid-template-columns:1fr 30px;gap:20px;padding-top:30px;padding-bottom:30px}.next-case>span{grid-column:1/-1}.next-case strong{font-size:1.8rem}.next-case>b{font-size:2rem}.aurora-opening{display:flex;flex-direction:column;gap:28px;align-items:stretch;padding-top:30px;padding-bottom:40px}.case-number{font-size:4.6rem;margin:22px 0 20px}.aurora-intro h1{font-size:2.7rem}.aurora-intro>p{font-size:1rem;margin-top:22px}.aurora-opening>.photo{width:78%;margin-left:auto;max-width:420px}.aurora-overview{padding-top:24px;padding-bottom:35px}.aurora-notes{display:block;padding-top:40px;padding-bottom:45px}.aurora-notes h2{font-size:2rem;margin-top:18px}.aurora-notes>p{padding-top:22px}.aurora-decisions{display:block;margin-top:28px;padding-top:0}.aurora-decisions article{display:grid;grid-template-columns:28px 1fr;gap:12px;border-top:1px solid var(--line);padding:20px 0}.aurora-decisions article>span{padding-top:4px}.aurora-decisions h3{font-size:1.3rem;margin:0}.aurora-decisions article>p{grid-column:2;font-size:1rem;max-width:none}.cafe-opening{padding-top:28px;padding-bottom:30px}.cafe-title{gap:20px;margin-bottom:23px}.cafe-title h1{font-size:clamp(2.2rem,10vw,4rem)}.cafe-story{display:block;padding-top:20px;padding-bottom:40px}.cafe-story h2,.cafe-detail h2{font-size:2rem;margin:20px 0}.cafe-story p,.cafe-detail p{max-width:none}.cafe-story dl{padding-top:0;margin-top:28px}.cafe-story dl>div{padding:17px 0}.cafe-detail{display:flex;flex-direction:column;gap:28px;padding-bottom:45px;align-items:stretch}.cafe-detail .line-link{margin-top:20px}.atelier-banner{padding-top:20px}.atelier-banner .photo{width:100%}.atelier-banner-label{position:relative;left:0;max-width:none;padding:25px;margin-top:-8px;z-index:1;width:92%}.atelier-banner h1{font-size:2rem;line-height:1.15;margin-top:18px}.atelier-about{display:block;padding-top:40px;padding-bottom:45px}.atelier-about h2{font-size:2rem;margin:20px 0}.atelier-services{display:block;padding-top:35px;padding-bottom:35px}.atelier-services h2{font-size:2rem;margin:20px 0 30px}.services-list article{grid-template-columns:25px 1fr;gap:12px;padding:20px 0}.services-list h3{font-size:1.25rem}.services-list article>p{font-size:1rem}.atelier-process{display:block;padding-top:40px;padding-bottom:25px}.atelier-process>.eyebrow{margin-bottom:24px}.process-list summary{grid-template-columns:28px 1fr 24px;gap:14px;padding:21px 0}.process-list h3{font-size:1.2rem}.process-list details>p{padding:0 0 24px 42px}.atelier-to-projects{flex-direction:column;align-items:flex-start;gap:15px;padding-top:20px;padding-bottom:40px}.atelier-to-projects strong{font-size:1.3rem}.materials-opening{display:flex;flex-direction:column-reverse;gap:30px;padding-top:35px;padding-bottom:40px;align-items:stretch}.materials-opening h1{font-size:2.8rem;margin:20px 0}.materials-opening>div>p{max-width:none}.material-library{padding-bottom:40px}.material-row{grid-template-columns:42px 1fr;gap:15px 20px;padding:22px 0;align-items:start}.material-swatch{width:42px;height:42px;grid-row:1/3}.material-no{display:none}.material-row h2{font-size:1.4rem;padding-top:4px}.material-row>div{grid-column:2}.material-row>div>p{font-size:1rem}.material-row>div>span{font-size:.875rem}.materials-ending{display:block;padding-top:40px;padding-bottom:45px}.materials-ending h2{font-size:1.9rem;margin:22px 0}.materials-ending>.line-link{margin-top:20px}.contact-opening{display:block;padding-top:35px;padding-bottom:35px}.contact-opening h1{font-size:4rem;margin:26px 0}.contact-note p{font-size:1rem}.contact-email{font-size:1.4rem;margin-top:24px}.contact-details{display:block;padding-top:30px;padding-bottom:45px}.contact-details ol{margin-top:20px;font-size:1rem;line-height:2}.contact-details>div:last-child{margin-top:32px}.lightbox{padding:58px 10px 18px;width:calc(100% - 16px);height:calc(100svh - 16px);max-height:calc(100svh - 16px)}.lightbox-close{right:16px}.zoom-label{width:34px;height:34px;right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Reference-led refinement: existing pages, navigation and interactions retained. */
@font-face{font-family:'Cormorant Garamond';src:url('/assets/fonts/cormorant-garamond-300.woff') format('woff');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('/assets/fonts/cormorant-garamond-400.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
:root{--paper:#f5f1e8;--ink:#26362d;--muted:#62685e;--line:#d6d0c4;--forest:#284338;--wine:#683632;--copper:#bb6b4c;--gutter:clamp(24px,7.2vw,128px);--serif:'Cormorant Garamond',Georgia,serif}
html{scroll-padding-top:110px}
body{background:var(--paper)}
main{padding-top:88px}
main,section,article,.home-heading,.chapter-copy,.contact-note,.services-list{min-width:0}
main>section{max-width:1920px;margin-left:auto;margin-right:auto}
h1,h2,.card-caption h2,.next-case strong,.atelier-to-projects strong{font-family:var(--serif);font-weight:300;letter-spacing:.015em;line-height:1.12}
h3{font-weight:400;letter-spacing:0}
.eyebrow{font-size:.875rem;letter-spacing:.18em;color:var(--muted);line-height:1.7}
.eyebrow:before{content:'';display:inline-block;vertical-align:middle;width:40px;height:1px;background:#9a3d49;margin-right:20px}
.photo figcaption{font-size:.8125rem;line-height:1.6;letter-spacing:.015em;padding-top:12px}
.photo-button{overflow:hidden}
.zoom-label{background:rgba(250,250,250,.9);width:40px;height:40px;font-weight:400}
.site-header,.case-cafe .site-header,.contact-page .site-header{position:fixed;inset:0 0 auto;z-index:50;min-height:88px;gap:24px;background:rgba(245,241,232,.96);backdrop-filter:blur(16px);color:var(--ink);border-bottom:1px solid rgba(31,31,31,.06);transition:background .3s,color .3s,border-color .3s}
.brand,.footer-brand{font-size:2.8rem}
.brand-mark{width:32px;height:32px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:miter}
.brand-caption,.case-cafe .brand-caption,.contact-page .brand-caption{color:var(--muted);font-size:.75rem;line-height:1.5;border-color:var(--line);padding-left:20px;letter-spacing:.07em}
.site-header nav{gap:28px}
.site-header nav a{font-size:.875rem;letter-spacing:.07em;padding:16px 0;line-height:1.5}
.site-header nav a:after{height:1px;bottom:9px}
.site-header nav a[aria-current=page]{color:var(--ink)}
.site-header.over-hero{background:transparent;backdrop-filter:none;color:white;border-color:transparent}
.site-header.over-hero .brand-caption{color:#fff;border-color:rgba(255,255,255,.4)}
.site-header.over-hero nav a[aria-current=page]{color:white}
.skip-link{z-index:90}
.line-link,.solid-link{min-height:44px;max-width:100%;gap:24px;font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;font-weight:400}
.line-link{border-bottom:0;padding:14px 0;color:var(--ink)}
.line-link>span{font-size:0;width:48px;height:1px;background:currentColor;flex:none;transition:width .25s}
.line-link:hover>span{width:62px}
.solid-link>span{flex:none}
.home-page main,.atelier-page main{padding-top:0}
.home-opening{position:relative;display:flex;align-items:flex-end;justify-content:center;min-height:700px;height:100svh;max-width:none;padding:140px var(--gutter) 95px;overflow:hidden;background:#34312c}
.home-cover{position:absolute;inset:0;margin:0;display:block}
.home-cover:after{position:absolute;content:'';inset:0;background:linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,.02) 42%,rgba(0,0,0,.61));pointer-events:none}
.home-cover .photo,.home-cover img{height:100%;width:100%}
.home-cover img{object-fit:cover;object-position:64% 48%;aspect-ratio:auto}
.cover-caption{position:absolute;z-index:1;left:var(--gutter);bottom:25px;background:transparent;color:#fff;padding:0;border:0;font-size:.8125rem;letter-spacing:.035em;max-width:calc(100% - 48px)}
.cover-caption b{display:none}
.home-heading{position:relative;z-index:2;text-align:center;display:flex;flex-direction:column;align-items:center;pointer-events:none;width:100%}
.home-heading .eyebrow{color:#fff;border:0;padding:0;font-size:.8125rem;letter-spacing:.22em}
.home-heading .eyebrow:before{display:none}
.home-heading h1{font-size:clamp(3rem,4.9vw,5.8rem);line-height:1.1;letter-spacing:.025em;margin:16px 0;color:white;font-weight:300}
.home-heading h1>span{color:inherit}
.home-heading p{color:#fff;font-size:1rem;line-height:1.7;max-width:640px;letter-spacing:.025em}
.home-heading .line-link{pointer-events:auto;color:white;gap:26px;margin-top:14px;font-size:.8125rem}
.home-selection{padding-top:90px;padding-bottom:100px;background:#e8dfd0}
.section-head{display:grid;grid-template-columns:.8fr 1.7fr .8fr;align-items:end;text-align:left;gap:28px;margin-bottom:56px;border:0;padding:0}
.section-head>.eyebrow{align-self:start;padding:7px 0 0}
.section-head h2{font-size:clamp(2.5rem,3.5vw,3.9rem);letter-spacing:.015em;line-height:1.14}
.section-head>.line-link{margin-top:0;justify-self:end}
.home-pair{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:7%;align-items:start}
.home-pair .portfolio-card:last-child{margin:100px 0 0}
.home-pair .card-photo .photo img{aspect-ratio:3/2;object-fit:cover;object-position:60% center}
.card-photo{overflow:hidden}
.card-photo img{transition:transform .65s ease}
.card-photo:hover img{transform:scale(1.025)}
.card-open{opacity:0;background:rgba(250,250,250,.94);font-size:.8125rem;letter-spacing:.07em;min-height:44px}
.card-photo:focus-within .card-open,.card-photo:hover .card-open{opacity:1}
.card-caption{padding-top:24px;gap:22px}
.card-caption>span{font-size:.8125rem;color:var(--muted);padding-top:10px;min-width:32px}
.card-caption h2{font-size:clamp(1.8rem,2.5vw,2.9rem);letter-spacing:.01em;line-height:1.18}
.card-caption p{font-size:.8125rem;text-transform:uppercase;letter-spacing:.15em;margin-top:12px;color:var(--muted)}
.home-craft{padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;background:var(--forest);color:#f8efe1;align-items:stretch}
.home-craft>div{grid-column:2;grid-row:1;padding:80px clamp(40px,7vw,110px);align-self:center}
.home-craft>.photo{grid-column:1;grid-row:1;position:relative;align-self:stretch}
.home-craft .photo img{height:100%;min-height:650px;object-fit:cover;object-position:50% center;filter:none}
.home-craft .photo figcaption{position:absolute;left:22px;bottom:18px;padding:0;color:#fff;text-shadow:0 1px 6px #000;font-size:.75rem}
.home-craft h2{font-size:clamp(2.7rem,3.9vw,4.5rem);line-height:1.12;letter-spacing:.015em;margin:27px 0}
.home-craft p{color:#dce3d5;font-size:1.0625rem;line-height:1.9;max-width:480px}
.home-craft .line-link{color:#f8efe1;margin-top:27px}
.home-craft .line-link.light:hover{color:#edc7a7}
.home-material-link{padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;align-items:center;background:var(--wine);color:#f8eee0;border:0}
.home-material-link>div{padding:80px clamp(40px,7vw,110px)}
.home-material-link h2{font-size:clamp(2.5rem,3.5vw,4rem);line-height:1.15;letter-spacing:.015em;margin:28px 0}
.material-preview{height:100%;display:block;overflow:hidden}
.material-preview .photo{height:100%}
.material-preview img{height:100%;min-height:550px;object-fit:cover;object-position:50% center}
.site-footer{background:var(--forest);color:#f8efe1;padding-top:65px;padding-bottom:28px;border-color:#5e7061}
.footer-brand{font-size:2.8rem}
.footer-nav{font-size:.875rem;letter-spacing:.04em}
.footer-nav a{padding:12px 0}
.footer-rise{font-size:.8125rem;letter-spacing:.06em}
.footer-small{font-size:.75rem;line-height:1.8;margin-top:34px;color:#d0d9cb;border-color:#5e7061}
.portfolio-heading{display:block;padding-top:62px;padding-bottom:52px;border:0}
.portfolio-heading h1{font-size:clamp(2.8rem,4vw,4.7rem);line-height:1.18;letter-spacing:.025em;margin:25px 0}
.portfolio-heading>p{font-size:1.0625rem;line-height:1.8;max-width:700px;padding:0}
.portfolio-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px 9%;padding-top:0}
.portfolio-feature{width:auto;margin:0;grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:8%;align-items:center}
.portfolio-duo{display:contents}
.portfolio-duo>div:last-child{padding-top:110px;margin:0}
.portfolio-gallery .card-photo .photo img{aspect-ratio:3/4;object-fit:cover;object-position:60% center}
.portfolio-gallery .portfolio-card[data-project="cafe-lume"] .card-photo .photo img{object-position:70% center}
.portfolio-gallery .card-caption h2{font-size:clamp(1.65rem,2.4vw,2.5rem)}
.portfolio-description{font-size:1rem;line-height:1.85;color:var(--muted);margin:24px 0 0 54px;max-width:440px}
.portfolio-end{padding-top:65px;padding-bottom:80px;align-items:center}
.casa-cover{padding-top:35px}
.casa-title{padding-top:50px;padding-bottom:75px;gap:10%}
.casa-title h1{font-size:clamp(3rem,5.5vw,5.5rem);letter-spacing:.015em;line-height:1.13}
.casa-title>p,.chapter-copy>p,.casa-suite>div>p{font-size:1.0625rem;line-height:1.9}
.casa-chapter{background:var(--forest);color:#f8efe1;padding-top:75px;padding-bottom:75px}
.chapter-copy h2,.casa-suite h2{font-size:clamp(2.4rem,3.7vw,4rem);letter-spacing:.015em;line-height:1.14}
.casa-suite{padding-top:90px;padding-bottom:90px}
.next-case{background:#f0f0ec;color:var(--ink);border-top:1px solid var(--line);padding-top:50px;padding-bottom:50px}
.next-case strong{font-size:clamp(2rem,3.6vw,4rem);line-height:1.2;letter-spacing:.015em}
.aurora-opening{padding-top:60px;padding-bottom:75px;gap:12%}
.case-number{font-family:var(--serif);font-weight:300;color:#2b5260;font-size:6rem;line-height:1;margin:32px 0 24px;letter-spacing:0}
.aurora-intro h1{font-size:clamp(2.8rem,5.2vw,5.4rem);letter-spacing:.01em;line-height:1.12}
.aurora-overview{padding-top:35px;padding-bottom:55px;background:#f1f0eb}
.aurora-notes{padding-top:80px;padding-bottom:80px}
.aurora-notes h2{font-size:clamp(2.5rem,3.7vw,4rem);letter-spacing:.015em;line-height:1.13}
.aurora-notes>p{font-size:1.0625rem;line-height:1.9}
.aurora-decisions h3{font-family:var(--serif);font-size:1.8rem;line-height:1.2;letter-spacing:.01em}
.aurora-decisions p{font-size:1rem;line-height:1.85}
.case-cafe{background:var(--wine);color:#f8eee0}
.case-cafe .photo figcaption{color:#e4ccc0}
.cafe-opening{padding-top:55px;padding-bottom:65px}
.cafe-title{gap:0;margin-bottom:42px}
.cafe-title h1{font-size:clamp(3.2rem,6vw,6rem);line-height:1.1;letter-spacing:.07em;text-transform:none;margin:25px 0 18px}
.cafe-title>span:last-child{color:#e4ccc0;font-size:.875rem;letter-spacing:.05em}
.cafe-story{padding-top:15px;padding-bottom:80px}
.cafe-story h2,.cafe-detail h2{font-size:clamp(2.5rem,3.7vw,4rem);line-height:1.13;letter-spacing:.015em}
.cafe-story p,.cafe-detail p{color:#eddacf;font-size:1.0625rem;line-height:1.9}
.cafe-story dl>div{border-color:#987169}
.cafe-story dt{color:#e4ccc0;font-size:.875rem}
.cafe-detail{padding-bottom:90px}
.cafe-detail .line-link.light{color:#f8eee0}
.case-cafe .next-case{background:#e8d4bf;color:#4d302b}
.atelier-page{background:var(--paper)}
.atelier-banner{height:86svh;min-height:600px;position:relative;padding:0;max-width:none;background:#292a27}
.atelier-banner>.photo,.atelier-banner .photo-button{width:100%;height:100%;margin:0}.atelier-banner img{width:100%;height:100%;object-fit:cover;object-position:50% center;filter:none}
.atelier-banner img{object-fit:cover;object-position:50% center;filter:none}
.atelier-banner:after{content:'';position:absolute;inset:0;background:rgba(23,46,35,.45);pointer-events:none}
.atelier-banner-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:none;width:100%;padding:100px var(--gutter);background:transparent;z-index:1;pointer-events:none}
.atelier-banner-label .eyebrow{color:#fff}
.atelier-banner-label .eyebrow:before{background:#d2a0a5}
.atelier-banner h1{color:#fff;font-size:clamp(3rem,5.2vw,6rem);line-height:1.15;letter-spacing:.025em;max-width:1000px;margin:27px 0 0}
.atelier-banner .zoom-label{z-index:2}
.atelier-about{grid-template-columns:1fr 1.5fr 1.2fr;gap:6%;padding-top:85px;padding-bottom:85px}
.atelier-about h2{font-size:clamp(2.5rem,3.4vw,3.6rem);letter-spacing:.015em;line-height:1.16}
.atelier-about>p{font-size:1.0625rem;line-height:1.9}
.atelier-services{background:var(--forest);color:#f8efe1;gap:10%;padding-top:75px;padding-bottom:75px}
.atelier-services h2{font-size:clamp(2.5rem,3.5vw,3.8rem);letter-spacing:.015em;line-height:1.17}
.services-list h3{font-family:var(--serif);font-size:1.8rem;line-height:1.2}
.services-list article>p{font-size:1rem;line-height:1.8;color:#dce3d5}
.atelier-process{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12%;padding-top:85px;padding-bottom:55px;align-items:center}
.process-list summary{min-height:80px}
.process-list h3{font-family:var(--serif);font-size:1.8rem;line-height:1.25;letter-spacing:.01em}
.process-list details>p{font-size:1rem;line-height:1.9}
.atelier-to-projects{padding-bottom:80px}
.atelier-to-projects strong{font-size:2rem}
.materials-opening{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:9%;padding-top:70px;padding-bottom:85px;align-items:center}
.materials-opening>.photo{padding:0;background:transparent}
.materials-opening h1{font-size:clamp(3rem,5.2vw,5.6rem);letter-spacing:.015em;line-height:1.14;margin:28px 0}
.materials-opening>div>p{font-size:1.0625rem;line-height:1.9;max-width:450px}
.material-library{padding-bottom:85px}
.material-row{grid-template-columns:72px 32px minmax(0,1fr) minmax(0,1.3fr);gap:25px;padding-top:32px;padding-bottom:32px}
.material-swatch{width:62px;height:62px;box-shadow:3px 3px 0 #e7e6e0}
.material-no{font-size:.875rem}
.material-row h2{font-size:clamp(1.9rem,2.6vw,2.8rem);font-weight:400;letter-spacing:0;line-height:1.2}
.material-row>div>p{font-size:1rem;line-height:1.8}
.materials-ending{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:8%;background:#ddc7b1;padding-top:70px;padding-bottom:80px;align-items:center}
.materials-ending h2{font-size:clamp(2.5rem,3.5vw,3.8rem);letter-spacing:.01em;line-height:1.15}
.materials-ending>p{font-size:1.0625rem;line-height:1.9}
.contact-page{background:var(--wine);color:#f8eee0}
.contact-opening{padding-top:72px;padding-bottom:80px;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:9%;align-items:center}
.contact-opening h1{font-size:clamp(3.8rem,7vw,7rem);letter-spacing:.02em;line-height:1.1}
.contact-note p{color:#eddacf;font-size:1.0625rem;line-height:1.9}
.contact-email{color:#f8eee0;font-family:var(--serif);font-size:clamp(1.4rem,2.7vw,2.8rem);border-color:#987169;letter-spacing:.01em;line-height:1.45;padding-bottom:14px}
.contact-details{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12%;padding-top:45px;padding-bottom:85px;border-color:#987169}
.contact-details ol{padding:0;list-style:none;counter-reset:brief;color:#eddacf}
.contact-details li{counter-increment:brief;display:flex;align-items:baseline;gap:22px;line-height:1.7;border-top:1px solid #987169;padding:16px 0}
.contact-details li:before{content:'0' counter(brief);font-size:.8125rem;color:#edc7a7;flex:none}
.contact-details .solid-link{background:#f3e6d2;color:#4d302b;min-height:54px}
.contact-details .solid-link:hover{background:#fff4e3}
.contact-details .line-link.light{color:#f8eee0}
.contact-details .line-link.light:hover{color:#edc7a7}
.contact-details>div:last-child>p{color:#e4ccc0;font-size:.8125rem;line-height:1.8}
@media (hover:none){.card-open{opacity:1}.card-photo:hover img{transform:none}}
@media (max-width:1100px) and (min-width:861px){
 .brand-caption{display:none}
 .site-header nav{gap:23px}
 .brand{font-size:1.9rem}
 .home-heading h1{font-size:4rem}
 .home-craft>div,.home-material-link>div{padding:60px 45px}
 .home-craft .photo img{min-height:560px}
 .portfolio-gallery{gap:22px}
 .portfolio-description{margin-left:0}
 .atelier-about{grid-template-columns:1fr 2fr;gap:30px}
 .atelier-about>p{grid-column:2}
 .material-row{grid-template-columns:58px 28px minmax(0,1fr) minmax(0,1.2fr);gap:18px}
 .material-swatch{width:52px;height:52px}
 .materials-opening{gap:6%}
}
@media (max-width:860px){
 :root{--gutter:24px}
 html{scroll-padding-top:95px}
 main{padding-top:80px}
 .site-header,.case-cafe .site-header,.contact-page .site-header{min-height:80px;gap:18px}
 .brand{font-size:1.8rem;gap:9px}
 .brand-mark{width:28px;height:28px}
 .brand-caption{display:none}
 .menu-toggle{padding:12px 0;min-height:44px;font-size:.875rem;letter-spacing:.12em;text-transform:uppercase}
 .site-header nav{top:100%;max-height:calc(100svh - 80px);overflow-y:auto;background:var(--paper);color:var(--ink);border-color:var(--line);padding:20px var(--gutter) 28px}
 .site-header nav a{font-size:1rem;min-height:48px;letter-spacing:.05em;padding:12px 0}
 .site-header.over-hero nav a[aria-current=page]{color:var(--wine)}
 .home-opening{min-height:520px;height:82svh;max-height:680px;padding:112px var(--gutter) 36px;display:flex;gap:0;align-items:flex-end;justify-content:flex-start;background:#284338}
 .home-heading .eyebrow,.home-cover .cover-caption{display:none}
 .home-heading{text-align:left;align-items:flex-start;max-width:440px;padding:0;background:transparent;color:white;text-shadow:0 1px 3px rgba(0,0,0,.5)}
 .home-cover:after{background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,0) 23%,rgba(0,0,0,.12) 43%,rgba(0,0,0,.55) 67%,rgba(0,0,0,.78))}
 .home-cover{position:absolute;inset:0;margin:0;display:block;height:100%}
 .home-cover img{object-position:60% center}
 .home-heading h1{font-size:clamp(2.35rem,10.5vw,4rem);font-weight:400;line-height:1.08;letter-spacing:-.025em;margin:0 0 18px;max-width:100%}
 .home-page .home-heading h1>span{display:block;margin-top:4px;color:#e8b58a;font-style:normal}
 .home-heading p{font-size:1rem;line-height:1.6;max-width:32ch;letter-spacing:0;text-wrap:pretty;color:#fff}
 .home-heading .line-link{font-size:.875rem;letter-spacing:.055em;gap:20px;margin-top:18px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.65)}
 .home-heading .line-link>span{width:32px}
 .cover-caption{left:var(--gutter);bottom:24px;font-size:.75rem;max-width:calc(100% - 48px)}
 .home-selection{padding-top:62px;padding-bottom:62px}
 .section-head{display:flex;gap:22px;margin-bottom:36px;align-items:center}
 .section-head h2{font-size:clamp(2.35rem,6vw,3rem);margin:0;line-height:1.18}
 .section-head>.line-link{margin:0}
 .eyebrow{font-size:.8125rem;letter-spacing:.13em}
 .eyebrow:before{width:30px;margin-right:14px}
 .home-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:38px}
 .home-pair .portfolio-card:last-child{margin:0}
 .home-pair .card-photo .photo img{aspect-ratio:3/2}
 .card-caption h2{font-size:2rem;line-height:1.2}
 .card-open{font-size:.75rem;min-height:44px;opacity:1}
 .home-craft,.home-material-link{display:flex;flex-direction:column;gap:0;padding:0;align-items:stretch}
 .home-craft>.photo{order:0}
 .home-craft>div{order:1}
 .home-craft>div,.home-material-link>div{padding:45px var(--gutter) 50px}
 .home-craft .photo img{height:auto;min-height:0;aspect-ratio:4/3;object-fit:cover}
 .home-craft h2,.home-material-link h2{font-size:2.8rem;line-height:1.16;margin:24px 0}
 .home-craft p{font-size:1rem;line-height:1.9;max-width:none}
 .home-craft .line-link{margin-top:20px}
 .material-preview img{min-height:0;aspect-ratio:4/3;height:auto;object-fit:cover}
 .site-footer{padding-top:40px}
 .footer-main{flex-wrap:wrap;gap:23px}
 .footer-brand{width:100%;font-size:1.9rem}
 .footer-nav{margin:0;gap:20px;flex-wrap:wrap;font-size:.875rem}
 .footer-nav a{min-height:44px;display:flex;align-items:center}
 .footer-rise{margin:0;min-height:44px;display:flex;align-items:center}
 .footer-small{font-size:.75rem;gap:18px;margin-top:28px}
 .portfolio-heading{padding-top:42px;padding-bottom:34px}
 .portfolio-heading h1{font-size:clamp(2.65rem,8vw,3.8rem);line-height:1.16;margin:22px 0}
 .portfolio-heading>p{font-size:1rem;line-height:1.8;margin:0}
 .portfolio-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:42px}
 .portfolio-feature{width:auto}
 .portfolio-duo{display:contents}
 .portfolio-duo>div:last-child{padding-top:0;margin:0}
 .portfolio-gallery .card-photo .photo img{aspect-ratio:4/3}
 .portfolio-description{margin:16px 0 0;font-size:1rem;line-height:1.8}
 .portfolio-gallery .card-caption h2{font-size:2rem}
 .portfolio-end{padding-top:48px;padding-bottom:56px}
 .casa-cover{padding-top:24px}
 .casa-title{padding-top:35px;padding-bottom:45px}
 .casa-title h1{font-size:3rem;line-height:1.17;letter-spacing:.01em}
 .casa-title>p,.chapter-copy>p,.casa-suite>div>p{font-size:1rem;line-height:1.85}
 .casa-chapter{padding-top:45px;padding-bottom:45px;gap:28px}
 .chapter-copy h2,.casa-suite h2{font-size:2.5rem;line-height:1.17;margin:24px 0}
 .casa-suite{padding-top:50px;padding-bottom:50px;gap:35px}
 .next-case{padding-top:35px;padding-bottom:35px}
 .next-case strong{font-size:2.2rem;overflow-wrap:anywhere}
 .aurora-opening{padding-top:40px;padding-bottom:45px}
 .case-number{font-size:4.5rem;margin:25px 0 20px}
 .aurora-intro h1{font-size:3rem;line-height:1.12;letter-spacing:.01em}
 .aurora-intro>p{font-size:1rem}
 .aurora-overview{padding-top:28px;padding-bottom:35px}
 .aurora-notes{padding-top:48px;padding-bottom:48px}
 .aurora-notes h2{font-size:2.5rem;line-height:1.16}
 .aurora-notes>p{font-size:1rem;line-height:1.85}
 .aurora-decisions h3{font-size:1.65rem}
 .aurora-decisions article>p{font-size:1rem;line-height:1.8}
 .cafe-opening{padding-top:38px;padding-bottom:40px}
 .cafe-title{gap:0;margin-bottom:30px}
 .cafe-title h1{font-size:3.2rem;line-height:1.1;margin:24px 0 18px}
 .cafe-story{padding-top:15px;padding-bottom:45px}
 .cafe-story h2,.cafe-detail h2{font-size:2.5rem;line-height:1.16}
 .cafe-story p,.cafe-detail p{font-size:1rem;line-height:1.85}
 .cafe-detail{padding-bottom:50px}
 .atelier-banner{height:78svh;min-height:540px;padding:0}
 .atelier-banner>.photo{width:100%;margin:0}
 .atelier-banner-label{position:absolute;inset:0;max-width:none;width:100%;margin:0;padding:110px var(--gutter);text-align:center;align-items:center;justify-content:center}
 .atelier-banner h1{font-size:clamp(2.8rem,7.5vw,4.2rem);line-height:1.17;letter-spacing:.015em;max-width:650px}
 .atelier-banner .eyebrow{font-size:.75rem}
 .atelier-about,.atelier-services{display:block;padding-top:48px;padding-bottom:48px}
 .atelier-about h2,.atelier-services h2{font-size:2.65rem;line-height:1.17;letter-spacing:.01em;margin:24px 0}
 .atelier-about>p{font-size:1rem;line-height:1.9}
 .services-list{margin-top:32px}
 .services-list h3{font-size:1.6rem;line-height:1.25}
 .services-list article>p{font-size:1rem}
 .atelier-process{padding-top:50px;padding-bottom:32px}
 .process-list h3{font-size:1.6rem;line-height:1.25}
 .process-list summary{min-height:76px;gap:14px}
 .process-list details>p{font-size:1rem;line-height:1.85}
 .atelier-to-projects{padding-top:25px;padding-bottom:50px}
 .atelier-to-projects strong{font-size:1.8rem;line-height:1.25}
 .materials-opening{display:flex;flex-direction:column-reverse;padding-top:42px;padding-bottom:48px;gap:35px}
 .materials-opening h1{font-size:3.25rem;line-height:1.17;letter-spacing:.01em;margin:24px 0}
 .materials-opening>div>p{font-size:1rem;line-height:1.9;max-width:none}
 .material-library{padding-bottom:50px}
 .material-row{grid-template-columns:52px minmax(0,1fr);gap:12px 20px;padding:26px 0}
 .material-swatch{width:52px;height:52px}
 .material-row h2{font-size:1.8rem;line-height:1.2;padding-top:0}
 .material-row>div>p{font-size:1rem;line-height:1.8}
 .material-row>div>span{font-size:.875rem;line-height:1.8}
 .materials-ending{padding-top:48px;padding-bottom:50px}
 .materials-ending h2{font-size:2.5rem;line-height:1.17}
 .materials-ending>p{font-size:1rem;line-height:1.9}
 .contact-opening{display:block;padding-top:45px;padding-bottom:45px}
 .contact-opening h1{font-size:3.8rem;line-height:1.12;letter-spacing:.01em;margin:25px 0 30px}
 .contact-note p{font-size:1rem;line-height:1.85}
 .contact-email{font-size:clamp(1.4rem,6.5vw,2.4rem);line-height:1.45}
 .contact-details{display:block;padding-top:35px;padding-bottom:50px}
 .contact-details ol{margin-top:22px}
 .contact-details li{font-size:1rem;gap:18px;padding:17px 0}
 .contact-details>div:last-child{margin-top:36px;gap:24px}
 .line-link,.solid-link{font-size:.8125rem;letter-spacing:.09em;gap:20px}
 .line-link>span{width:32px}
}
@media(max-width:360px){
 :root{--gutter:20px}
 .brand{font-size:1.65rem}
 .home-heading h1{font-size:clamp(2rem,9.8vw,2.2rem)}
 .home-heading .line-link{font-size:.8125rem}
 .eyebrow{font-size:.75rem;letter-spacing:.1em}
 .eyebrow:before{width:24px;margin-right:10px}
 .aurora-intro h1{font-size:2.65rem}
 .materials-opening h1{font-size:2.8rem}
 .case-materials{flex-wrap:wrap;gap:20px}
 .footer-nav{gap:16px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

/* Material-led identity and photographic extensions of the existing pages. */
.site-header:not(.over-hero) .brand-mark{color:var(--copper)}
.site-header nav a[aria-current=page]:after{height:2px;background:var(--copper)}
.site-header.over-hero nav a[aria-current=page]:after{background:#edc7a7}
.home-heading h1>span{font-style:italic;color:#f0d1b2}
.cover-caption{background:rgba(40,67,56,.9);padding:10px 14px;border-left:2px solid #d39a72}
.home-selection .portfolio-card[data-project="casa-jardim"] .card-caption h2{color:#284338}
.home-selection .portfolio-card[data-project="cafe-lume"] .card-caption h2{color:#683632}
.project-images{position:relative}
.card-companion{position:absolute;z-index:2;right:0;bottom:-28px;width:34%;display:block;border:8px solid var(--paper);background:var(--paper)}
.card-companion img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.portfolio-card[data-project="apartamento-aurora"] .card-companion{width:28%}
.portfolio-card[data-project="apartamento-aurora"] .card-companion img{aspect-ratio:2/3;object-fit:contain}
.home-selection .card-companion{border-color:#e8dfd0;background:#e8dfd0}
.card-caption{padding-top:52px}
.home-pair .portfolio-card:last-child .card-photo img{aspect-ratio:3/2;object-position:center}
.home-craft .eyebrow,.home-material-link .eyebrow,.atelier-services .eyebrow,.casa-chapter .eyebrow,.case-cafe .eyebrow,.contact-page main .eyebrow{color:#edc7a7}
.home-craft .eyebrow:before,.home-material-link .eyebrow:before,.atelier-services .eyebrow:before,.casa-chapter .eyebrow:before,.case-cafe .eyebrow:before,.contact-page main .eyebrow:before{background:#edc7a7}
.home-material-link .line-link{color:#f8eee0}
.home-material-link .line-link:hover{color:#edc7a7}
.home-craft .photo figcaption{max-width:calc(100% - 44px);line-height:1.7}
.portfolio-feature .card-photo img{aspect-ratio:3/2!important;object-fit:cover}
.portfolio-feature>.portfolio-description{font-size:1.2rem;line-height:1.9;margin:0;max-width:370px;border-left:2px solid var(--copper);padding-left:28px}
.portfolio-gallery .portfolio-card[data-project="apartamento-aurora"] .card-caption h2{color:#2b5260}
.portfolio-gallery .portfolio-card[data-project="cafe-lume"] .card-caption h2{color:var(--wine)}
.portfolio-end{margin-top:70px;background:#e8dfd0}
.casa-chapter .chapter-copy>p{color:#dce3d5}
.casa-chapter .spec-list li{border-color:#6b7e6d}
.case-casa .next-case{background:var(--forest);color:#f8efe1;border-color:#6b7e6d}
.casa-garden{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:8%;padding-top:75px;padding-bottom:75px;background:#d9b598;align-items:center}
.casa-garden h2,.aurora-workspace h2,.cafe-finish h2{font-size:clamp(2.5rem,3.7vw,4rem);line-height:1.15;margin:25px 0}
.casa-garden>div>p,.aurora-workspace>div>p,.cafe-finish>div>p{font-size:1.0625rem;line-height:1.9;max-width:450px}
.casa-garden .photo figcaption{color:#4e4c40}
.aurora-workspace{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12%;padding-top:75px;padding-bottom:75px;align-items:center;background:#234651;color:#f8efe1}
.aurora-workspace>.photo{max-width:480px;justify-self:end}
.aurora-workspace .eyebrow{color:#dbc4a7}
.aurora-workspace .eyebrow:before{background:#dbc4a7}
.aurora-workspace>div>p{color:#d6e2dc}
.aurora-workspace .photo figcaption{color:#d6e2dc}
.cafe-finish{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:10%;padding-top:70px;padding-bottom:75px;background:#4d302b;align-items:center}
.cafe-finish>div>p{color:#eddacf}
.atelier-hands{margin-top:38px}
.atelier-hands img{aspect-ratio:3/2;object-fit:cover}
.atelier-hands figcaption{color:#dce3d5}
.atelier-services .services-list article{border-color:#6b7e6d}
.atelier-services .services-list article>span{color:#edc7a7}
.process-intro>.eyebrow{margin-bottom:30px}
.process-workshop img{aspect-ratio:4/3;object-fit:cover}
.material-swatch.walnut{background:#70503a}
.material-swatch.green{background:#284338}
.materials-use h2{font-size:clamp(2.5rem,3.5vw,3.8rem);line-height:1.15;margin:24px 0}
.materials-use>p{font-size:1.0625rem;line-height:1.9;max-width:520px}
.materials-use>.line-link{margin-top:28px}
.materials-ending>.photo img{aspect-ratio:3/2;object-fit:cover;object-position:center}
.materials-ending .photo figcaption{color:#4e4c40}
.contact-copy h1{margin:26px 0 32px}
.contact-note p{max-width:440px}
.contact-photo img{aspect-ratio:2/3;object-fit:cover;object-position:center}
.contact-photo figcaption{color:#e4ccc0}
.contact-photo{padding-left:28px;border-left:1px solid #987169}
.footer-main{align-items:center}
.footer-brand .brand-mark{color:#edc7a7}
.footer-rise:hover,.footer-nav a:hover{color:#edc7a7}
@media(max-width:1100px) and (min-width:861px){
 .section-head{grid-template-columns:.6fr 1.5fr .8fr;gap:20px}
 .section-head h2{font-size:2.8rem}
 .home-pair{gap:5%}
 .portfolio-feature{gap:6%;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
 .portfolio-feature>.portfolio-description{font-size:1.05rem;padding-left:20px}
 .atelier-process{gap:8%}
 .contact-opening{gap:7%}
}
@media(max-width:860px){
 .home-selection{padding-top:58px;padding-bottom:62px}
 .section-head{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:20px}
 .section-head>.eyebrow{padding:0;align-self:auto}
 .section-head>.line-link{align-self:flex-start}
 .home-pair{grid-template-columns:minmax(0,1fr);gap:42px}
 .home-pair .portfolio-card:last-child{margin:0 0 0 8%}
 .home-pair .portfolio-card:last-child .card-photo img{aspect-ratio:3/2}
 .card-companion{border-width:6px;bottom:-24px;width:33%}
 .card-caption{padding-top:46px}
 .home-cover .cover-caption{left:var(--gutter);right:var(--gutter);bottom:calc(22px + env(safe-area-inset-bottom,0px));max-width:none;padding:16px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.4);background:transparent;font-size:.8125rem;line-height:1.5;letter-spacing:0}
 .home-craft .photo img{min-height:0;height:auto}
 .home-craft .eyebrow,.home-material-link .eyebrow{color:#edc7a7}
 .portfolio-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:42px}
 .portfolio-feature{display:block;grid-column:auto}
 .portfolio-feature>.portfolio-description{margin:22px 0 0;padding-left:20px;font-size:1rem;line-height:1.8;max-width:100%}
 .portfolio-duo>div:last-child{padding-top:0;margin-left:8%}
 .portfolio-end{margin-top:48px}
 .casa-garden,.aurora-workspace,.cafe-finish{display:flex;flex-direction:column;gap:32px;padding-top:48px;padding-bottom:48px;align-items:stretch}
 .casa-garden h2,.aurora-workspace h2,.cafe-finish h2{font-size:2.5rem;line-height:1.17;margin:24px 0}
 .casa-garden>div>p,.aurora-workspace>div>p,.cafe-finish>div>p{font-size:1rem;line-height:1.85;max-width:none}
 .aurora-workspace>.photo{max-width:460px;width:82%;margin-left:auto;margin-right:auto}
 .atelier-hands{margin-top:30px;margin-bottom:34px}
 .atelier-process{display:block;padding-top:50px;padding-bottom:32px}
 .process-intro>.eyebrow{margin-bottom:24px}
 .process-workshop{margin-bottom:34px}
 .materials-ending{display:flex;flex-direction:column;gap:34px;align-items:stretch}
 .materials-use h2{font-size:2.5rem;line-height:1.17}
 .materials-use>p{font-size:1rem;line-height:1.85}
 .materials-ending>.photo img{aspect-ratio:3/2}
 .contact-opening{display:flex;flex-direction:column;align-items:stretch;gap:35px;padding-top:42px;padding-bottom:45px}
 .contact-copy h1{font-size:3.8rem;margin:25px 0 30px}
 .contact-photo{padding-left:0;border-left:0;max-width:500px;width:88%;margin-left:auto}
 .contact-photo img{aspect-ratio:2/3}
 .footer-brand{font-size:2.4rem}
}
@media(max-width:360px){
 .home-pair .portfolio-card:last-child,.portfolio-duo>div:last-child{margin-left:0}
 .contact-copy h1{font-size:3.4rem}
 .contact-photo{width:100%}
 .card-companion{width:38%}
}

/* Keep furniture proportions and the focal details visible in every preview. */
.project-images .card-open{top:16px;bottom:auto;right:16px}
.card-companion .is-portrait img{aspect-ratio:2/3;object-fit:contain}
.portfolio-gallery .portfolio-card[data-project="casa-jardim"] .card-companion{width:23%}
.portfolio-gallery .portfolio-card[data-project="apartamento-aurora"] .project-images{max-width:440px;margin-right:auto}
.portfolio-gallery .card-photo .is-portrait img{aspect-ratio:2/3;object-fit:contain}
.portfolio-gallery .card-photo .is-landscape img{aspect-ratio:3/2;object-fit:cover}
.home-craft>.photo{overflow:hidden}
.home-craft>.photo img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}
.home-craft{min-height:560px}
.home-material-link{align-items:stretch}
.material-preview{position:relative;min-height:460px}
.material-preview img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover}
.contact-photo{max-width:400px;justify-self:end}
@media(max-width:860px){
 .project-images .card-open{top:12px;right:12px}
 .portfolio-gallery .portfolio-card[data-project="apartamento-aurora"] .project-images{max-width:380px;width:88%;margin-left:auto;margin-right:auto}
 .home-craft{min-height:0}
 .home-craft>.photo img{position:static;height:auto;aspect-ratio:3/2;min-height:0}
 .material-preview{min-height:0}
 .material-preview img{position:static;height:auto;aspect-ratio:3/2;min-height:0}
 .contact-photo{max-width:360px;width:80%;margin-right:auto}
 .materials-ending>.photo img{aspect-ratio:3/2}
}

.portfolio-gallery .portfolio-card[data-project="cafe-lume"] .card-caption{padding-top:24px}

/* Return to the page opening. */
.back-to-top{position:fixed;right:max(18px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:45;width:46px;height:46px;padding:11px;display:grid;place-items:center;border:1px solid rgba(245,241,232,.45);border-radius:50%;background:#284338;color:#f5f1e8;box-shadow:0 3px 14px rgba(0,0,0,.18)}
.back-to-top[hidden]{display:none}
.back-to-top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.back-to-top:hover{background:#683632}
