*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1rem}body{margin:0;background:var(--page);color:var(--ink);font-family:Montserrat,sans-serif;font-size:1rem;line-height:1.8}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:.35em}a:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:5px}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-family:Cinzel,serif;font-weight:600;line-height:1.2}h2{font-size:clamp(2rem,3.8vw,3.7rem);letter-spacing:-.035em}h3{font-size:1.6rem}p+p{margin-top:1.25rem}.eyebrow{font-size:.875rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:2rem}.site-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;background:#23483B;color:#F5F0E7;padding:1rem 4vw;border-bottom:1px solid #C2A270}.brand{width:72px;display:block}.brand img{mix-blend-mode:lighten;width:100%}.site-header nav{display:flex;gap:2.5rem;font-size:.9375rem}.site-header a:focus-visible,.site-header select:focus-visible{outline-color:#C2A270}.hero{position:relative;min-height:max(640px,calc(100svh - 110px));display:flex;align-items:flex-end;background:#152B26;color:#F5F0E7;isolation:isolate;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 53%;z-index:-2}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(21,43,38,.98) 0%,rgba(21,43,38,.92) 20%,rgba(21,43,38,.55) 49%,rgba(21,43,38,0) 80%)}.hero-content{position:relative;width:100%;padding:16rem 6vw 5rem;max-width:1700px;margin:0 auto}.hero .eyebrow{color:#F5F0E7;margin-bottom:1.3rem}.hero h1{font-size:clamp(2.75rem,6.5vw,6.8rem);letter-spacing:-.04em;line-height:1.12;max-width:1100px}.hero-bottom{margin-top:2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.hero-bottom p{font-size:clamp(1rem,1.6vw,1.3rem)}.hero-link{font-size:.9375rem;padding-bottom:.4rem;border-bottom:1px solid #C2A270}.hero-link span{margin-left:2rem}.image-credit{position:absolute;bottom:1.25rem;right:4vw;font-size:.75rem}.hero a:focus-visible{outline-color:#F5F0E7}.section{max-width:1440px;margin:auto;padding:7.5rem 6vw}.studio{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.studio-copy{padding-top:3.6rem;font-size:1.0625rem}.studio-copy .lead{font-family:Cinzel,serif;font-size:1.5rem;line-height:1.45;margin-bottom:1.5rem}.signature{border-left:2px solid #8A573B;padding-left:1.25rem;margin-top:2rem;display:flex;flex-direction:column;font-size:.875rem}.signature span:first-child{font-family:Cinzel,serif;font-size:1.15rem}.interior{margin:0 6vw}.interior img{width:100%;max-height:740px;object-fit:cover;object-position:center 58%}.interior figcaption{padding:1rem 0;display:flex;justify-content:space-between;gap:1rem;font-size:.8125rem;border-bottom:1px solid var(--rule)}.section-top{display:grid;grid-template-columns:1fr 1fr;gap:0 4rem;align-items:end;margin-bottom:4rem}.section-top .eyebrow{grid-column:1/-1}.section-top>p:last-child{justify-self:end;font-size:1.0625rem}.service-list article{border-top:1px solid var(--rule);padding:2.75rem 0;display:grid;grid-template-columns:70px 1fr 1.2fr;gap:2rem}.service-list article:last-child{border-bottom:1px solid var(--rule)}.service-number{font-family:Cinzel,serif;font-size:1.6rem;color:var(--accent)}.service-name h3{font-size:clamp(1.5rem,2.2vw,2rem)}.service-name h3 span{font-size:.8em}.service-name p{font-size:.9375rem;margin-top:1rem}.service-details ul{list-style:none;padding:0;margin:0 0 1.5rem;font-size:1rem}.service-details li{padding:.15rem 0}.service-details a{font-size:.875rem;text-decoration:underline;text-underline-offset:.35em}.service-details a span{margin-left:1rem}.method{margin-top:4rem;padding-left:calc(70px + 2rem)}.method h3{font-size:1.35rem;margin-bottom:.75rem}.method p{font-size:.9375rem}.method ol{display:flex;flex-wrap:wrap;gap:.6rem 0;list-style:none;padding:0;margin:1.5rem 0 0;font-size:.875rem}.method li+li:before{content:'/';color:var(--accent);margin:0 1rem}.contact{background:#23483B;color:#F5F0E7}.contact-inner{max-width:1440px;margin:auto;padding:6rem 6vw}.contact .eyebrow{color:#F5F0E7}.contact h2{font-size:clamp(2.3rem,5vw,5rem);max-width:1000px}.contact-bottom{display:grid;grid-template-columns:1fr 1fr;gap:6vw;margin-top:3rem;padding-top:2rem;border-top:1px solid #C2A270}.contact-bottom p{max-width:27rem;font-size:1.0625rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem 1.5rem;min-height:48px;background:#C2A270;color:#152B26;font-size:.9375rem;font-weight:500;margin-top:2rem}.button:hover{background:#F5F0E7;text-decoration:none}.contact a:focus-visible{outline-color:#F5F0E7}address{font-style:normal;display:flex;flex-direction:column;gap:1rem;min-width:0}address a{font-size:1.0625rem;overflow-wrap:anywhere}address a span{display:block;font-size:.8125rem;margin-bottom:.1rem}footer{background:#152B26;color:#F5F0E7;display:flex;align-items:center;gap:3rem;padding:2.5rem 4vw}footer p{font-size:.875rem}footer>a:last-child{margin-left:auto;font-size:.875rem}.skip{position:absolute;top:-10rem;left:1rem;z-index:10;background:#F5F0E7;color:#152B26;padding:1rem}.skip:focus{top:1rem}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(min-width:1800px){.interior{max-width:1500px;margin:auto}}
@media(max-width:950px){.site-header{gap:1rem 2rem}.site-header nav{justify-content:center;gap:2rem}.hero{min-height:78svh}.studio{gap:3rem}.service-list article{grid-template-columns:40px 1fr 1.2fr;gap:1.3rem}.method{padding-left:calc(40px + 1.3rem)}}
@media(max-width:650px){.site-header{padding:1rem 1.5rem}.brand{width:60px}.site-header nav{justify-content:flex-end;gap:1rem;flex-wrap:wrap}.hero{height:auto;min-height:680px}.hero-content{padding:18rem 1.5rem 4.5rem}.hero h1{font-size:clamp(2.1rem,8.4vw,3.4rem)}.hero-image{object-position:54% center}.hero-bottom{align-items:flex-start;flex-direction:column;gap:1.4rem;margin-top:1.5rem}.hero .eyebrow{font-size:.8125rem;letter-spacing:.07em;max-width:20rem}.image-credit{left:1.5rem;right:1.5rem;font-size:.75rem}.section{padding:4rem 1.5rem}.studio{grid-template-columns:1fr;gap:2rem}.studio-copy{padding-top:0}.eyebrow{margin-bottom:1.5rem}.interior{margin:0 1.5rem}.interior img{max-height:none;object-fit:contain}.interior figcaption{flex-direction:column;gap:.3rem;font-size:.75rem}.section-top{display:block;margin-bottom:2.5rem}.section-top>p:last-child{margin-top:1.5rem}.service-list article{grid-template-columns:32px minmax(0,1fr);gap:1rem;padding:2rem 0}.service-details{grid-column:2}.service-name h3{font-size:1.5rem}.method{padding-left:0;margin-top:2.5rem}.method li+li:before{margin:0 .65rem}.contact-inner{padding:4rem 1.5rem}.contact-bottom{grid-template-columns:1fr;gap:2.5rem;margin-top:2rem}.button{gap:1rem;max-width:100%}footer{padding:2rem 1.5rem;gap:1.5rem;flex-wrap:wrap}footer>a:last-child{margin-left:0}h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Clear navigation and directly comparable services. */
html{scroll-padding-top:8rem}.site-header{position:sticky;top:0;z-index:20;padding:.65rem 4vw;gap:1rem}.site-header .brand{width:56px}.site-header nav{gap:1rem}.site-header nav a{display:inline-flex;align-items:center;min-height:48px;padding:.35rem .6rem}.site-header nav a:last-child{border:1px solid #C2A270;padding:.35rem 1rem}
.hero-actions{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.hero-actions .button{margin:0}.hero-link{display:inline-flex;align-items:center;min-height:48px}.hero-bottom{flex-wrap:wrap}
.studio-copy{padding-top:0;display:grid;gap:1.75rem}.studio-copy h3{font-size:1.125rem;margin-bottom:.5rem;color:var(--accent)}.studio-copy p{font-size:1rem}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.service-grid article{min-width:0;display:flex;flex-direction:column;border:1px solid var(--rule);background:var(--page)}.service-card-image{width:100%;aspect-ratio:16/10;object-fit:cover}.service-grid .service-name{padding:1.75rem 1.5rem 0}.service-grid h3{font-size:clamp(1.35rem,1.65vw,1.75rem);line-height:1.35;min-height:4.75rem}.service-grid h3 span{font-size:.85em}.service-grid .service-name p{margin-top:.5rem;font-size:1rem}.service-grid .service-details{padding:1.25rem 1.5rem 1.5rem;display:flex;flex-direction:column;flex:1}.service-grid ul{margin:0 0 1.5rem}.service-grid li{padding:.65rem 0;border-bottom:1px solid var(--rule);line-height:1.6}.service-grid .service-details a{display:flex;align-items:center;justify-content:space-between;min-height:48px;margin-top:auto;font-size:.875rem;line-height:1.5}.method{padding-left:0}
.whatsapp-qr{display:inline-flex;flex-direction:column;align-items:flex-start;gap:1rem;max-width:280px;margin-top:2rem}.whatsapp-qr img{width:180px;height:180px;background:white}.whatsapp-qr span{font-size:.875rem;line-height:1.6}.contact address a{min-height:48px;padding:.25rem 0}a{touch-action:manipulation}.skip{z-index:30}
@media(max-width:1000px){.service-grid{grid-template-columns:1fr}.service-grid article{display:grid;grid-template-columns:1fr 1.5fr}.service-card-image{height:100%;grid-row:1/3;aspect-ratio:auto;min-height:260px}.service-grid h3{min-height:0}.service-grid .service-details{grid-column:2}.hero-bottom{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){html{scroll-padding-top:7rem}.site-header{padding:.5rem 1rem;gap:.5rem}.site-header .brand{width:44px}.site-header nav{gap:.15rem}.site-header nav a{font-size:.875rem;padding:.35rem .45rem}.site-header nav a:last-child{padding:.35rem .65rem}.hero-content{padding:12rem 1.5rem 4.5rem}.hero{min-height:620px}.hero-actions{gap:.65rem;width:100%;align-items:stretch;flex-direction:column}.hero-actions .button{justify-content:center}.hero-actions .hero-link{align-self:flex-start}.service-grid{gap:1.75rem}.service-grid article{display:flex}.service-card-image{height:auto;min-height:0;aspect-ratio:16/9}.service-grid .service-name{padding:1.5rem 1.25rem 0}.service-grid .service-details{padding:1rem 1.25rem 1.5rem}.service-grid h3{font-size:1.5rem}.interior figcaption{font-size:.875rem}}

/* Project study: existing 3D work, with visible medium and visual analysis. */
.project-study{border-top:1px solid var(--rule)}.project-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:end;margin-bottom:2rem}.project-status{color:var(--accent);font-size:.875rem;margin-bottom:.75rem}.project-intro h3{font-size:clamp(1.7rem,3vw,2.7rem)}.project-intro>p{max-width:34rem}.project-main img,.project-more img{width:100%;height:auto}.project-study figcaption{font-size:.875rem;margin-top:.75rem;color:var(--ink)}.project-reading{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;margin:2.5rem 0}.project-reading h4{font:600 1.125rem Cinzel,serif;margin:0 0 .75rem}.project-reading p{font-size:1rem;line-height:1.8}.project-more{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.project-more summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px;padding:1rem 0;cursor:pointer;font-weight:500;list-style:none}.project-more summary::-webkit-details-marker{display:none}.project-more summary span{font-size:1.5rem}.project-more[open] summary span{transform:rotate(45deg)}.project-more summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.project-more figure{padding-bottom:1.5rem}.project-footer{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:1.5rem}.project-footer p{font-size:.875rem}.project-footer .button{margin:0}
@media(max-width:750px){.project-intro,.project-reading{grid-template-columns:1fr;gap:1.5rem}.project-footer{align-items:flex-start;flex-direction:column}.site-header nav{gap:.1rem}.site-header nav a{padding:.35rem .4rem}.site-header{column-gap:.5rem}}
@media(max-width:420px){.site-header{justify-content:center}.site-header .brand{width:40px}.site-header nav{flex:1;justify-content:space-between;gap:0}.site-header nav a{font-size:.875rem;padding:.35rem .25rem}.site-header nav a:last-child{padding:.35rem .4rem}}
