:root{background:#f5f0eb;color:#24201c;font:16px/1.65 Arial,sans-serif}
*{box-sizing:border-box}body{margin:0}a{color:inherit}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0 0 1rem}h2,h3{font-family:Georgia,serif;font-weight:400;letter-spacing:.075em}h2{font-size:1.55rem}h3{font-size:1.2rem}
.hero{min-height:0;height:100vh;height:100svh;position:relative;display:grid;place-items:center;isolation:isolate;background:#49413c}
.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero::before{content:"";position:absolute;inset:0;background:#100b082f;z-index:-1}
.hero h1{color:white;text-transform:uppercase;font-size:clamp(1.3rem,3.75vw,3.4rem);letter-spacing:.45em;font-weight:300;margin:0;text-align:center;padding:.5em}
.hero>.button{position:absolute;right:0;top:45px;background:#333;color:#fff;border:0}
.hero .menu{display:none}.pagehead{display:flex;align-items:center;justify-content:space-between;padding:1.8rem clamp(1.2rem,3.6vw,4rem);gap:1rem}.pagehead h1{font-size:1rem;font-weight:400;letter-spacing:.23em;text-transform:uppercase;margin:0}
.menu{position:relative;z-index:2}.menu summary{display:grid;gap:7px;cursor:pointer;list-style:none;padding:4px}.menu summary::-webkit-details-marker{display:none}.menu summary span{display:block;width:39px;height:3px;background:currentColor}.menu[open]{background:#f5f0eb;color:#24201c}.menu nav{position:absolute;right:0;top:100%;width:210px;background:#f5f0eb;padding:1rem;box-shadow:0 3px 12px #0002}.menu nav a{display:block;padding:.4rem}.menu>a{position:absolute;right:0;top:calc(100% + 187px);width:210px;background:#f5f0eb;padding:.8rem 1.4rem;box-shadow:0 3px 12px #0002}
nav a{text-transform:uppercase;text-decoration:none;font-family:Georgia,serif;letter-spacing:.04em}.home-nav nav,footer nav{display:flex;justify-content:space-around;flex-wrap:wrap;gap:.65rem;padding:0 3.3vw}.home-nav nav a{padding:.55rem;text-align:center;flex:1}.home-nav [aria-current]{border-bottom:1px solid}
.homeintro,.consult,.testimonials{text-align:center;padding:clamp(2.8rem,5vw,5rem) 1.4rem}.homeintro p{font-size:1.2rem}.homeintro h2{text-transform:uppercase;font:400 1.25rem Arial,sans-serif;letter-spacing:.18em}.button{display:inline-block;border:1px solid currentColor;padding:.5rem 1.3rem;background:transparent;color:inherit;font:inherit;text-decoration:none;cursor:pointer}.button:hover{background:#e4dcd2;color:#24201c}
.intro,.inquiry{max-width:875px;margin:auto;padding:1rem 1.5rem 3rem}.split{max-width:1100px;margin:0 auto;padding:1rem 1.5rem 3.5rem;display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,5vw,5rem);align-items:center}.split img{width:100%;max-height:540px;object-fit:cover}.gallery{max-width:1380px;margin:auto;padding:0 2.8vw;columns:3;column-gap:.7rem}.gallery a{display:block;break-inside:avoid;margin:0 0 .7rem}.gallery img{width:100%}
dialog{border:0;background:#211c18;color:white;padding:0;max-width:94vw;max-height:94vh}dialog::backdrop{background:#000d}dialog img{max-height:90vh;object-fit:contain}dialog button{position:absolute;right:.35rem;top:.35rem;border:0;background:#24201c;color:white;font-size:1.5rem;padding:.1rem .55rem;cursor:pointer}
.testimonials{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1100px;margin:auto}.testimonials blockquote{margin:0 0 1rem;font-family:Georgia,serif}.consult{background:#ebe4db}.consult h2{font-size:clamp(1.6rem,4vw,2.9rem)}
form{display:grid;gap:1rem;grid-template-columns:1fr 1fr}form label{display:grid;gap:.2rem}form input:not([type=checkbox]),form textarea,fieldset{width:100%;padding:.6rem;border:1px solid #877c71;background:#fff;color:inherit;font:inherit}form textarea{min-height:7rem}form fieldset{grid-column:1/-1;background:transparent}fieldset label{display:block}form button{justify-self:start}
footer{margin-top:2rem;border-top:1px solid #d9d0c6;display:grid;gap:.75rem;justify-items:center;padding:2rem 1rem;font-size:.9rem}footer .logo img{width:102px}footer nav{gap:1rem}
@media(max-width:680px){.hero>.button{top:1rem;right:1rem}.home-nav nav{padding:.25rem;gap:0}.home-nav nav a{font-size:.73rem;padding:.5rem .15rem}.gallery{columns:2}.split,.testimonials,form{grid-template-columns:1fr}.pagehead{padding:1.2rem}.split{gap:1rem}}

:root{background:#f5f1ed}
.hero>img{object-position:center 64%}
.hero::before{background:transparent}
.hero h1{font-family:Avenir,"Century Gothic",sans-serif;font-weight:300;letter-spacing:.47em;text-shadow:0 1px 3px #0005;transform:translateX(-.18em)}
.hero>.button{font-family:Georgia,serif;padding:.45rem 1.9rem}
.home-nav nav{justify-content:space-between}
.home-nav nav a{flex:0 1 17.3%}
.homeintro{padding:4.2rem 3.1vw 1rem;display:grid;grid-template-columns:1fr auto;align-items:center}
.homeintro p{grid-column:1/-1;color:#576048;font-size:1.25rem;margin-bottom:4rem}
.homeintro h2{text-align:left;letter-spacing:.11em;margin:0}
.gallery-controls{display:flex;justify-content:flex-end;padding:0 3.1vw .45rem;gap:.5rem}
.gallery-controls button{font:1.4rem/1 Georgia,serif;background:transparent;color:inherit;border:1px solid #8c8378;min-width:2rem;min-height:2rem;cursor:pointer}
.gallery-strip,.gallery-grid{columns:auto;display:grid;max-width:none;padding:0}
.gallery-strip{grid-auto-flow:column;grid-auto-columns:max-content;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory}
.gallery-strip a,.gallery-grid a{margin:0}
.gallery-strip a{scroll-snap-align:start}
.gallery-strip img{height:clamp(235px,34.5vw,540px);width:auto;max-width:none}
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.gallery-grid img{aspect-ratio:1;object-fit:cover}
.intro:has(+ .gallery-grid){padding-bottom:4.2rem}
.testimonials{color:#576048}
.testimonials blockquote{font:inherit;font-size:clamp(1.15rem,2vw,1.75rem)}
@media(max-width:680px){
 .hero>.button{padding:.45rem .9rem}
 .homeintro{padding-top:3rem}.homeintro p{margin-bottom:2.5rem}
 .gallery-strip img{height:clamp(205px,65vw,350px)}
 .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@font-face{font-family:Questrial;src:url("/assets/questrial.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url("/assets/bodonimoda.woff2") format("woff2");font-display:swap}
.homeintro p,.testimonials{font-family:Questrial,Arial,sans-serif}
nav a,.hero>.button,.intro:has(+ .gallery-grid) h2{font-family:"Bodoni Moda",Georgia,serif}
.gallery-strip{position:relative}
@font-face{font-family:"Avenir Light";src:url("https://static.parastorage.com/fonts/v2/af36905f-3c92-4ef9-b0c1-f91432f16ac1/v1/avenir-lt-w01_35-light1475496.woff2") format("woff2");font-display:swap}
.hero h1,.homeintro h2,.pagehead h1,.consult h2{font-family:"Avenir Light",Avenir,sans-serif;font-weight:400}
.menu-toggle{display:grid;gap:7px;padding:4px;border:0;background:transparent;color:inherit;cursor:pointer}
.menu-toggle span{display:block;width:39px;height:3px;background:currentColor}
.hero .menu-toggle{position:absolute;top:15px;right:45px;color:white}
.site-menu{position:fixed;inset:0 auto 0 0;margin:0;width:36.4vw;min-width:350px;max-width:745px;height:100dvh;max-height:none;box-sizing:border-box;border:0;padding:18vh 2.65vw 3rem;background:#fff;color:#000;text-align:left;overflow-y:auto}
.site-menu::backdrop{background:transparent}
.site-menu[open]{animation:menu-enter .25s ease-out}
.site-menu .menu-close{position:absolute;top:6vh;left:2.9vw;right:auto;width:36px;height:36px;padding:0;background:transparent;color:#000;border:0;font-size:0}
.site-menu .menu-close::before,.site-menu .menu-close::after{content:"";position:absolute;left:0;top:17px;width:36px;height:1px;background:currentColor;transform:rotate(45deg)}
.site-menu .menu-close::after{transform:rotate(-45deg)}
.site-menu nav{display:grid;gap:.35em;margin:0}
.site-menu nav a{display:block;padding:0;font-family:"Avenir Light",Avenir,sans-serif;font-weight:400;font-size:clamp(36px,3.2vw,66px);line-height:1.35;letter-spacing:0;text-transform:uppercase;text-decoration:none;color:#000}
.site-menu nav a[aria-current="page"],.site-menu nav a:hover{color:#5267ff}
.site-menu .menu-instagram{display:block;width:40px;height:40px;margin-top:10vh;padding:0;color:#000}
.site-menu .menu-instagram svg{display:block}
html.menu-open{overflow:hidden}
.hero .menu-toggle{left:auto;right:clamp(1.5rem,6vw,8rem);top:2rem;color:#000}
.hero>.button{top:4rem;right:clamp(1.5rem,4.5vw,6rem)}
@keyframes menu-enter{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@media(max-width:680px){.site-menu{width:85vw;min-width:0;max-width:none;padding:18vh 7vw 2rem}.site-menu .menu-close{left:7vw;top:5vh}.site-menu nav a{font-size:clamp(28px,8vw,42px)}.hero .menu-toggle{left:auto;right:1.5rem;top:1.2rem}.hero>.button{top:4rem;right:1.5rem}}
@media(prefers-reduced-motion:reduce){.site-menu[open]{animation:none}}

@font-face{font-family:"Futura Light";font-style:normal;font-weight:400;src:url("https://static.parastorage.com/fonts/v2/8e5b5cbc-6ad9-49f7-aee7-4e5133c3ee4d/v1/futura-lt-w01-light.woff2") format("woff2");font-display:swap}
.homeintro p{font-family:"Futura Light",Futura,sans-serif;font-weight:400;font-size:20px;letter-spacing:normal;line-height:normal}

.gallery-carousel{position:relative}
.gallery-carousel .gallery-controls{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(12px,1.5vw,30px);pointer-events:none}
.gallery-carousel .gallery-controls button{position:relative;flex:none;width:clamp(52px,5vw,100px);height:clamp(52px,5vw,100px);min-width:0;min-height:0;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:#606650;font-size:0;pointer-events:auto;cursor:pointer}
.gallery-carousel .gallery-controls button::before{content:"";position:absolute;top:50%;left:50%;width:25%;height:25%;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:translate(-65%,-50%) rotate(45deg)}
.gallery-carousel .gallery-controls button[data-gallery-step="-1"]::before{transform:translate(-35%,-50%) rotate(-135deg)}
.gallery-carousel .gallery-controls button:hover{background:#fff}
.gallery-carousel .gallery-controls button:focus-visible{outline:2px solid #606650;outline-offset:4px}
.homeintro h2{grid-column:1/-1}

@font-face{font-family:"EB Garamond";font-style:italic;font-weight:400;src:url("https://static.parastorage.com/tag-bundler/api/v1/fonts-cache/googlefont/woff2/s/ebgaramond/v12/SlGWmQSNjdsmc35JDF1K5GRweDs1ZyHKpWg.woff2") format("woff2");font-display:swap}
.testimonials blockquote{font-family:"EB Garamond",Garamond,serif;font-style:italic;font-weight:400;font-size:28px;line-height:1.3;letter-spacing:normal;color:#6c6969}
.testimonials figcaption{font-family:"EB Garamond",Garamond,serif;font-style:italic;font-weight:400;font-size:22px;line-height:normal;letter-spacing:normal;color:#583700;margin-top:2rem}

@font-face{font-family:Assistant;src:url("https://static.parastorage.com/tag-bundler/api/v1/fonts-cache/googlefont/woff2/s/assistant/v22/2sDcZGJYnIjSi6H75xkzaGW5Kb8VZA.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
.consult{min-height:clamp(320px,27.4vw,560px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:4rem 1.5rem;background:#fff;color:#9a887f}
.consult h2{font-family:Assistant,Arial,sans-serif;font-weight:400;font-size:clamp(32px,3vw,46px);line-height:1.2;letter-spacing:normal;margin:0}
.consult .button{display:flex;align-items:center;justify-content:center;width:150px;min-height:44px;padding:.6rem 1rem;background:#9a887f;color:#fff;border:0;font-family:"Futura Light",Futura,sans-serif;font-size:16px}
.consult .button:hover{background:#85736a}
footer{margin:0;border:0;padding:40px 8vw 32px;display:grid;grid-template-columns:1fr minmax(240px,340px) 1fr;grid-template-rows:auto auto auto;column-gap:2rem;row-gap:20px;background:#f5f1ed;align-items:center;justify-items:center}
footer>.logo{grid-column:2;grid-row:1;display:block;width:100%}
footer .logo img{width:100%;height:auto}
footer>a[href^="mailto:"]{grid-column:2;grid-row:2;font-family:"Futura Light",Futura,sans-serif;font-size:13px;color:#576048}
footer>.footer-instagram{grid-column:2;grid-row:3;color:#000;width:40px;height:40px}
footer .footer-instagram svg{display:block}
footer>nav{grid-column:3;grid-row:1/4;align-self:stretch;justify-self:end;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:22px;padding:0;font-size:11px;min-width:110px}
footer nav a{color:#000;letter-spacing:normal}
footer nav a[aria-current="page"]{color:#5267ff}
@media(max-width:680px){footer{grid-template-columns:1fr;grid-template-rows:auto;gap:22px;padding:40px 24px}footer>.logo{grid-column:1;grid-row:1;max-width:300px}footer>a[href^="mailto:"]{grid-column:1;grid-row:2}footer>.footer-instagram{grid-column:1;grid-row:3}footer>nav{grid-column:1;grid-row:4;justify-self:center;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:10px;min-width:0}.consult{padding:4rem 1.25rem}}

@font-face{font-family:"Bodoni Moda";font-style:italic;font-weight:400;src:url("https://static.parastorage.com/tag-bundler/api/v1/fonts-cache/googlefont/woff2/s/bodonimoda/v23/aFT07PxzY382XsXX63LUYJSPUqb0pL6OQqxrZLnVbvZedvJtj-V7tIaZKMNItnDIUQT6oPgY.woff2") format("woff2");font-display:swap}
.about-page{background:#f8f3ef;color:#000}
.about-page .pagehead{position:absolute;top:30px;right:7vw;padding:0;z-index:2}
.about-content{font-family:Assistant,Arial,sans-serif;font-size:15px;line-height:1.6}
.about-content p{margin:0}
.about-intro{width:min(920px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:362px minmax(0,1fr);padding:29px 0 43px;min-height:241px}
.about-intro h1{font-family:Assistant,Arial,sans-serif;font-size:40px;font-weight:400;line-height:1.2;letter-spacing:.1em;margin:0}
.about-intro>div{padding-top:10px}
.about-intro p{text-align:justify;line-height:1.7}
.about-hero-photo{display:block;width:calc(100% - 15%);max-width:1150px;aspect-ratio:1150/769;object-fit:cover;margin:0 auto}
.about-services,.about-team{width:calc(100% - 8%);max-width:1256px;margin:auto}
.about-services{display:grid;grid-template-columns:20.5% 66.3%;padding-top:110px;padding-bottom:74px}
.about-content h2{font-family:Assistant,Arial,sans-serif;font-size:18px;font-weight:400;letter-spacing:.1em;line-height:normal;margin:0}
.about-services>div{padding-top:17px}
.about-services h3{font-family:"Bodoni Moda",Georgia,serif;font-size:18px;font-weight:400;letter-spacing:.1em;line-height:1.5;margin:0 0 23px}
.about-services p{text-align:justify}
.about-team{padding-bottom:62px;border-bottom:1px solid #6c6969}
.about-team-grid{display:grid;grid-template-columns:44% minmax(0,1fr);gap:2.1%;margin-top:31px}
.about-team-copy{padding:74px 0 0}
.about-team blockquote{max-width:490px;margin:0 auto;font-family:"Bodoni Moda",Georgia,serif;font-style:italic;font-size:clamp(40px,4.62vw,63px);font-weight:400;line-height:1.11;text-align:center;color:#9a887f}
.about-bio{max-width:474px;margin:120px 0 0 auto;text-align:right}
.about-team-grid>img{width:100%;aspect-ratio:686/829;object-fit:cover;object-position:center}
.about-experience{background:#fff;padding:80px 24px 62px;margin-top:40px}
.about-experience>div{max-width:749px;margin:auto;font-family:"Bodoni Moda",Georgia,serif;font-style:italic;font-size:20px;line-height:1.4;text-align:center;color:#9a887f}
.about-callout{position:relative;isolation:isolate;overflow:hidden;min-height:468px;display:grid;place-items:center;padding:48px 24px}
.about-callout::before{content:"";position:absolute;inset:0;z-index:-1;background:url("/assets/6fd028_2cd7f6c586a54f479cc9dc51760c0802~mv2.jpeg") center/cover}
.about-callout-card{width:min(780px,75%);padding:65px 36px 40px;text-align:center;background:rgba(255,255,255,.55)}
.about-callout-card p{max-width:543px;margin:0 auto 45px;font-family:"Bodoni Moda",Georgia,serif;font-size:20px;line-height:1.55;color:#363636}
.about-callout-card a{display:flex;align-items:center;justify-content:center;width:min(302px,100%);min-height:40px;margin:auto;padding:8px 12px;border:1px solid #576048;background:#fff;font-family:"Bodoni Moda",Georgia,serif;font-size:16px;letter-spacing:.025em;text-decoration:none;color:#263b26}
@media(max-width:1000px){.about-intro{grid-template-columns:35% 65%;padding-right:30px}.about-intro h1{font-size:32px}.about-team-copy{padding-top:30px}.about-team blockquote{font-size:clamp(32px,4.6vw,46px)}.about-bio{margin-top:50px}.about-team-grid>img{height:100%;min-height:550px}.about-services{grid-template-columns:22% 78%}}
@media(max-width:680px){.about-page .pagehead{right:24px;top:26px}.about-intro{width:auto;margin:0 24px;display:block;padding:28px 0 32px;min-height:0}.about-intro h1{font-size:28px;margin-bottom:26px}.about-intro>div{padding:0}.about-intro p+p{margin-top:16px}.about-hero-photo{width:calc(100% - 48px)}.about-services,.about-team{width:auto;margin:0 24px}.about-services{display:block;padding:50px 0}.about-services>div{padding-top:24px}.about-team-grid{grid-template-columns:1fr;gap:30px}.about-team-copy{padding-top:0}.about-team blockquote{font-size:38px;line-height:1.2;max-width:450px}.about-bio{margin-top:36px;text-align:left;max-width:none}.about-team-grid>img{height:auto;min-height:0}.about-team{padding-bottom:35px}.about-experience{padding:45px 24px;margin-top:25px}.about-experience>div{font-size:18px}.about-callout{min-height:400px}.about-callout-card{width:100%;padding:40px 20px}.about-callout-card p{font-size:18px;margin-bottom:30px}}

/* Centered studio footer and project inquiry layout. */
footer{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:20px;padding:56px 24px 40px;text-align:center}
footer>.logo{grid-column:1;grid-row:1;width:min(100%,320px)}
footer>a[href^="mailto:"]{grid-column:1;grid-row:2;font-size:15px;overflow-wrap:anywhere}
footer>.footer-instagram{grid-column:1;grid-row:3}
footer>nav{grid-column:1;grid-row:4;justify-self:center;align-self:auto;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 28px;min-width:0;margin-top:10px}
footer>nav a{padding:6px 0}
.contact-layout{max-width:1240px;margin:32px auto 80px;padding:0 clamp(24px,5vw,64px);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,88px);align-items:start}
.contact-layout .intro,.contact-layout .inquiry{max-width:none;margin:0;padding:0;min-width:0}
.contact-intro h2{font-family:"Bodoni Moda",Georgia,serif;font-size:clamp(30px,3vw,44px);line-height:1.25;letter-spacing:0;color:#576048;margin-bottom:28px}
.contact-intro p,.contact-layout form{font-family:"Futura Light",Arial,sans-serif;font-size:17px;line-height:1.65}
.contact-intro p{margin-bottom:24px}
.contact-intro>a{overflow-wrap:anywhere}
.contact-layout .inquiry{border-top:1px solid #b9ada1;padding-top:24px}
.contact-layout .inquiry h2{font-size:24px;letter-spacing:.02em}
.contact-layout .form-note{color:#5c554f;font-size:15px}
.contact-layout .required-note{font-size:13px;margin-bottom:24px}
.contact-layout form{gap:20px}
.contact-layout form label{gap:7px}
.contact-layout form input:not([type=checkbox]),.contact-layout form textarea{background:#fffcf9;border:1px solid #b9ada1;border-radius:0;padding:11px 12px;min-width:0}
.contact-layout form fieldset{margin:0;padding:16px}
.contact-layout fieldset label{padding:5px 0}
.contact-layout input[type=checkbox]{accent-color:#576048;width:16px;height:16px;vertical-align:middle}
.contact-layout .full-width,.contact-layout form button{grid-column:1/-1}
.contact-layout form textarea{min-height:130px;resize:vertical}
.contact-layout form button{background:#576048;color:white;border-color:#576048;min-height:48px;padding:10px 26px}
.contact-layout form button:hover{background:#414b35}
.contact-layout :is(input,textarea,button):focus-visible{outline:2px solid #576048;outline-offset:3px}
@media(max-width:800px){.contact-layout{grid-template-columns:minmax(0,1fr);margin-top:16px;gap:40px}.contact-intro{max-width:640px!important}}
@media(max-width:680px){.contact-layout form{grid-template-columns:minmax(0,1fr)}footer>nav{gap:12px 20px}}
