:root{--paper:#f5f0d9;--ink:#243a73;--white:#fffdf5;--rule:rgba(36,58,115,.32);--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:.98;letter-spacing:-.045em}h1 em,h2 em{font-weight:400}p+p{margin-top:20px}img{display:block;width:100%;height:auto;object-fit:cover}figcaption{font-size:10px;letter-spacing:.025em;padding-top:10px}svg.arrow{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;transition:transform .2s}a:hover>.arrow,a:focus-visible>.arrow{transform:translateX(3px)}.wrap{width:calc(100% - 88px);max-width:1440px;margin-inline:auto}.section{padding-block:100px}.soft-white{background:var(--white)}.blue-band{background:var(--ink);color:var(--paper)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:var(--paper);padding:15px 23px;border:1px solid var(--ink);font-size:12px;line-height:1.3;min-height:48px}.button.outline{background:transparent;color:inherit;border-color:currentColor}.text-link{display:inline-flex;align-items:center;gap:24px;padding-block:7px;border-bottom:1px solid currentColor;font-size:12px}.concept-ribbon{border-bottom:1px solid var(--rule);font-size:9px;letter-spacing:.025em;line-height:1.3}.concept-ribbon .wrap{display:flex;justify-content:space-between;gap:16px;padding-block:8px}.concept-ribbon a{text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.site-header{display:flex;align-items:center;gap:38px;padding-block:16px;border-bottom:1px solid var(--rule);position:relative;z-index:10}.wordmark{font-family:var(--serif);font-size:70px;letter-spacing:-.08em;line-height:1.1;white-space:nowrap}.site-nav{display:flex;align-items:center;justify-content:center;gap:28px;margin-left:auto;font-size:11px}.site-nav a{padding-block:10px}.site-nav a:hover,.site-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}.header-request{margin-left:auto;font-size:10px;padding:12px 18px;min-height:42px;gap:20px}.menu-toggle{display:none;background:none;border:0;padding:12px 0;font-size:12px}.breadcrumbs{display:flex;gap:13px;font-size:10px;padding-top:22px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.home-hero{padding-top:48px}.hero-heading{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,.65fr);gap:40px;align-items:end;padding-bottom:45px}.hero-heading h1{font-size:clamp(80px,11.7vw,176px);line-height:.91}.hero-heading>div{padding-bottom:10px;max-width:330px}.hero-heading p{font-family:var(--serif);font-size:clamp(26px,2.8vw,38px);line-height:1.13;letter-spacing:-.025em;margin-bottom:25px}.hero-diptych{display:grid;grid-template-columns:minmax(0,.39fr) minmax(0,.61fr);gap:20px}.hero-diptych img{height:clamp(380px,39vw,590px)}.hero-diptych figure:first-child img{object-position:center 36%}.section-heading{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);align-items:end;gap:90px;margin-bottom:48px}.section-heading h2,.faq-section h2,.shop-copy h2{font-size:clamp(46px,6.5vw,96px)}.section-heading>p,.section-heading>div>p:first-child{font-family:var(--serif);font-size:30px;line-height:1.15;letter-spacing:-.02em}.service-directory{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:58px;align-items:start}.service-directory figure{max-width:445px}.service-directory img{aspect-ratio:1}.handwritten{font-family:var(--serif);font-style:italic;font-size:27px;transform:rotate(-2deg);padding-top:15px;text-align:center}.service-item{display:block;border-top:1px solid var(--rule);padding:26px 0 29px;scroll-margin-top:30px}.service-line{display:grid;grid-template-columns:30px minmax(0,1fr) auto 22px;gap:17px;align-items:center}.service-number{font-size:10px;align-self:start;padding-top:8px}.service-line h3{font-size:40px}.service-price{font-size:10px;white-space:nowrap}.service-item p{margin:17px 34px 0 47px;font-size:13px;max-width:440px;line-height:1.7}.service-item>.text-link{margin:20px 0 0 47px}.directory-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--rule);padding-top:20px}.directory-foot p,.menu-note{font-size:10px;line-height:1.6}.studio-story{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:70px;padding-block:74px;align-items:stretch}.studio-story figure{position:relative;min-height:440px}.studio-story img{position:absolute;height:100%;inset:0}.studio-story h2{font-size:clamp(60px,7.3vw,106px);margin:12px 0 29px}.studio-story p{max-width:350px}.studio-story .button{margin-top:30px}.closing{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:90px;padding-block:105px;align-items:center}.closing h2{font-size:clamp(64px,8.7vw,128px)}.closing p{font-family:var(--serif);font-size:28px;line-height:1.2;margin-bottom:30px;max-width:300px}.closing .button{width:100%;font-family:var(--serif);font-size:27px;padding:19px 24px}.site-footer{border-top:1px solid var(--rule);padding-top:40px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;gap:30px;align-items:start;padding-bottom:50px}.footer-top>p{font-family:var(--serif);font-size:31px;line-height:1.05;letter-spacing:-.025em;padding-top:7px}.footer-top nav{display:flex;flex-direction:column;gap:8px;font-size:11px;padding-top:7px}.footer-studio{padding-top:7px}.footer-studio p{font-size:12px;line-height:1.6;margin-bottom:13px}.footer-bottom{border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:45px;padding-block:20px 28px;font-size:9px;line-height:1.6}.footer-bottom p{max-width:630px}.footer-bottom a{display:flex;align-items:center;gap:12px;white-space:nowrap}.footer-bottom .arrow{width:17px}.page-intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);align-items:end;gap:80px;padding-block:55px 60px}.page-intro h1{font-size:clamp(72px,10vw,145px);line-height:.93}.page-intro>p{font-family:var(--serif);font-size:31px;line-height:1.16;max-width:340px;padding-bottom:8px;letter-spacing:-.025em}.services-page{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:70px;align-items:start;padding-top:20px}.service-photo{position:sticky;top:28px}.service-photo img{aspect-ratio:1}.filter-controls{display:flex;gap:23px;margin-bottom:30px;flex-wrap:wrap}.filter-controls button{background:none;border:0;border-bottom:1px solid transparent;padding:7px 0;font-size:12px;cursor:pointer}.filter-controls button[aria-pressed=true]{border-color:var(--ink)}.faq-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px}.faq-list details{border-top:1px solid var(--rule);padding-block:19px}.faq-list details:last-child{border-bottom:1px solid var(--rule)}.blue-band .faq-list details{border-color:rgba(245,240,217,.4)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:25px;font-family:var(--serif);font-size:27px;line-height:1.15;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font:22px var(--sans);transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{font-size:13px;line-height:1.8;margin-top:19px;padding-right:30px}.cut-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:90px;align-items:center;padding-bottom:100px}.cut-feature figure img{max-height:750px;object-position:50% 30%}.cut-notes h2{font-size:clamp(50px,6vw,88px);margin-bottom:30px}.cut-notes p{max-width:430px;font-size:14px}.cut-facts{margin:28px 0;font-size:11px}.cut-facts>div{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--rule);padding-block:12px}.cut-facts dd{margin:0;text-align:right}.step-grid,.shop-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px}.step-grid article{border-top:1px solid rgba(245,240,217,.4);padding-top:22px}.step-grid span{font-size:11px}.step-grid h3,.shop-values h3{font-size:39px;margin:27px 0 17px}.step-grid p,.shop-values p{font-size:13px;max-width:340px}.shop-panorama img{aspect-ratio:2.1;object-position:50% 55%}.shop-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:90px}.shop-copy p{font-size:15px}.shop-copy .text-link{margin-top:25px}.shop-values h3{margin-top:0}.first-visit{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:80px;align-items:start;padding-top:20px}.first-visit figure{position:sticky;top:28px}.first-visit img{aspect-ratio:.8}.visit-steps article{display:grid;grid-template-columns:28px minmax(0,1fr);gap:23px;border-top:1px solid var(--rule);padding-block:30px}.visit-steps article>span{font-size:11px;padding-top:9px}.visit-steps h2{font-size:42px;margin-bottom:24px}.visit-steps p{font-size:14px}.visit-steps .text-link{margin-top:20px}.request-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px;padding-block:65px 100px;align-items:start}.request-copy h1{font-size:clamp(68px,8vw,118px);line-height:.95;margin-bottom:30px}.request-copy>p{font-family:var(--serif);font-size:27px;line-height:1.25;max-width:440px}.request-copy>.request-note{font-family:var(--sans);font-size:12px;line-height:1.75;margin-top:22px;max-width:400px}.request-copy figure{max-width:325px;margin:35px 0 20px}.request-copy figure img{aspect-ratio:1.1}.form-panel,.form-result{background:var(--white);border-top:2px solid var(--ink);padding:32px}.form-panel fieldset{border:0;padding:0;margin:0;min-width:0}.form-panel legend{font-size:11px;margin-bottom:25px}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.field{margin-bottom:19px;min-width:0}.field label{display:block;font-size:11px;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;min-width:0;background:transparent;border:1px solid var(--rule);border-radius:0;padding:12px;font-size:16px;line-height:1.4;min-height:49px}.field textarea{min-height:125px;resize:vertical}.field small{display:block;font-size:10px;margin-top:7px;line-height:1.5}.service-preview{border-block:1px solid var(--rule);padding-block:15px;margin:4px 0 22px;font-size:11px;line-height:1.6}.service-preview strong{display:block;font-family:var(--serif);font-size:25px;font-weight:400;margin-bottom:5px}.form-panel p.small{font-size:11px;line-height:1.7;margin:22px 0}.form-panel button{width:100%;cursor:pointer}.form-result h2{font-size:48px;margin-bottom:22px}.form-result [data-form-message]{font-size:13px;margin-bottom:20px}.form-result [data-form-summary]{font-size:13px;line-height:1.8;overflow-wrap:anywhere;margin-bottom:25px}.form-result button{cursor:pointer}.noscript-note{font-size:12px;padding:15px 0}.n8-appointment .section-heading{margin-bottom:0}.n8-appointment .section-heading>div>p+p{font-size:14px;line-height:1.7;margin-top:25px}.n8-appointment .section-heading .button{margin-top:25px}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.site-nav{gap:20px}.site-header{gap:24px}.section-heading,.closing,.request-layout,.cut-feature{gap:55px}.service-directory,.services-page,.faq-section,.first-visit,.shop-copy{gap:45px}.service-line{gap:12px}.service-line h3{font-size:35px}.service-item p{margin-left:42px}.studio-story{gap:45px}.form-panel,.form-result{padding:26px}}
@media(max-width:960px){.site-header{flex-wrap:wrap;gap:23px}.site-nav{display:none}.has-js .menu-toggle{display:flex;align-items:center;gap:12px}.site-nav[data-open]{display:flex;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--ink);padding:22px;flex-direction:column;align-items:start;gap:5px}.header-request{margin-left:auto}.wordmark{font-size:60px}.hero-heading{grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);gap:35px}.hero-heading h1{font-size:11.3vw}.hero-heading p{font-size:26px}.hero-diptych img{height:43vw;min-height:340px}.section{padding-block:75px}.section-heading{gap:45px}.section-heading>p,.section-heading>div>p:first-child{font-size:26px}.service-directory{grid-template-columns:minmax(0,.6fr) minmax(0,1fr);gap:32px}.service-line{grid-template-columns:23px minmax(0,1fr) auto 18px;gap:9px}.service-line h3{font-size:30px}.service-price{font-size:9px}.service-item p{margin-left:32px;margin-right:10px;font-size:12px}.directory-foot{align-items:start;flex-direction:column}.studio-story{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:36px}.studio-story h2{font-size:70px}.studio-story figure{min-height:420px}.studio-story p{font-size:13px}.footer-top{gap:25px;grid-template-columns:.7fr 1fr .9fr 1.2fr}.footer-top>p{font-size:26px}.page-intro{gap:40px}.page-intro>p{font-size:27px}.request-layout{gap:35px}.request-copy h1{font-size:8.4vw}.request-copy>p{font-size:25px}.form-panel,.form-result{padding:22px}.field-row{grid-template-columns:1fr;gap:0}.step-grid,.shop-values{gap:28px}.step-grid h3,.shop-values h3{font-size:32px}}
@media(max-width:700px){.wrap{width:calc(100% - 44px)}.site-header{padding-block:14px;gap:17px}.wordmark{font-size:51px}.header-request{font-size:10px;padding:11px 13px;gap:12px}.header-request .arrow{width:17px}.menu-toggle{font-size:10px;gap:8px!important}.concept-ribbon{font-size:8px}.hero-heading,.section-heading,.service-directory,.studio-story,.closing,.page-intro,.services-page,.faq-section,.cut-feature,.shop-copy,.first-visit,.request-layout{grid-template-columns:minmax(0,1fr);gap:30px}.home-hero{padding-top:38px}.hero-heading{padding-bottom:30px}.hero-heading h1{font-size:clamp(68px,16vw,110px)}.hero-heading>div{max-width:410px;padding:0}.hero-heading p{font-size:27px;max-width:320px;margin-bottom:19px}.hero-diptych{gap:12px;grid-template-columns:1fr 1fr}.hero-diptych img{height:58vw;min-height:0}.hero-diptych figure:nth-child(2) img{object-position:58% center}.hero-diptych figcaption{font-size:9px;line-height:1.5}.section{padding-block:60px}.section-heading{margin-bottom:30px}.section-heading h2,.faq-section h2,.shop-copy h2{font-size:61px}.section-heading>p{font-size:26px;max-width:400px}.service-directory figure{max-width:320px;margin-bottom:10px}.service-line{grid-template-columns:24px minmax(0,1fr) auto 20px;gap:12px}.service-line h3{font-size:37px}.service-price{font-size:10px}.service-item p{margin-left:36px;font-size:13px}.service-item>.text-link{margin-left:36px}.directory-foot{flex-direction:row;align-items:center}.directory-foot p{font-size:9px}.studio-story{padding-block:42px;gap:30px}.studio-story figure{min-height:0}.studio-story img{position:static;aspect-ratio:1.3}.studio-story h2{font-size:78px;margin-top:0}.studio-story p{font-size:14px}.closing{padding-block:68px}.closing h2{font-size:80px}.closing p{font-size:28px;max-width:340px;margin-bottom:23px}.footer-top{grid-template-columns:1fr 1fr;gap:28px 22px;padding-bottom:35px}.footer-top>p{font-size:31px}.footer-bottom{flex-direction:column;gap:17px}.page-intro{padding-block:38px 43px}.page-intro h1{font-size:clamp(65px,14.3vw,98px)}.page-intro>p{font-size:27px;max-width:440px}.services-page,.first-visit{padding-top:0}.service-photo{position:static;max-width:350px}.filter-controls{gap:25px;margin-bottom:23px}.faq-list summary{font-size:26px}.cut-feature{padding-bottom:60px}.cut-feature figure{max-width:440px}.cut-notes h2{font-size:65px}.cut-notes p{font-size:14px}.cut-facts{max-width:440px}.step-grid,.shop-values{grid-template-columns:1fr;gap:35px}.step-grid h3,.shop-values h3{font-size:39px;margin-top:17px}.step-grid p,.shop-values p{max-width:none;font-size:14px}.shop-panorama img{aspect-ratio:1.15}.shop-copy p{font-size:14px}.shop-values h3{margin-top:0}.first-visit figure{position:static;max-width:340px}.visit-steps article{gap:18px}.visit-steps h2{font-size:38px}.request-layout{padding-block:42px 60px;gap:35px}.request-copy h1{font-size:clamp(66px,14vw,97px);margin-bottom:25px}.request-copy>p{font-size:27px}.request-copy figure{display:none}.request-copy>.text-link{margin-top:20px}.form-panel,.form-result{padding:24px}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.form-result h2{font-size:45px}}
@media(max-width:400px){.hero-diptych{grid-template-columns:1fr;gap:22px}.hero-diptych img{height:auto;aspect-ratio:.9}.hero-diptych figure:nth-child(2) img{aspect-ratio:1.18}.wordmark{font-size:47px}.site-header{gap:13px}.header-request{padding-inline:10px;gap:7px}.header-request .arrow{display:none}.hero-heading h1{font-size:17.2vw}.service-line{grid-template-columns:22px minmax(0,1fr) 20px;gap:10px}.service-line h3{font-size:35px}.service-price{grid-column:2;grid-row:2}.service-line>.arrow{grid-column:3;grid-row:1}.directory-foot{flex-direction:column;align-items:start}.section-heading h2,.faq-section h2,.shop-copy h2{font-size:54px}.closing h2{font-size:72px}.field-row{grid-template-columns:1fr;gap:0}.form-panel,.form-result{padding:21px}.concept-ribbon .wrap{gap:10px}.step-grid h3,.shop-values h3{font-size:36px}}
.form-panel .icon,.form-result .icon{width:22px;height:22px;flex:none;fill:none;stroke:currentColor}
@media(max-width:960px){html:not(.has-js) .site-nav{display:flex;flex-wrap:wrap;order:4;width:100%;margin-left:0;justify-content:flex-start}}

.form-panel button[type=reset]{margin-top:12px}
@media(max-width:960px){
  .site-nav[data-open]{max-height:var(--menu-available-height,calc(100dvh - 125px));overflow-y:auto;overscroll-behavior:contain;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start}
  .site-nav a{flex-shrink:0;min-height:44px;display:flex;align-items:center}
  .menu-toggle{min-width:44px;min-height:44px;justify-content:center}
}
@media(max-width:700px){
  .site-nav{font-size:16px}
  .service-item p,.faq-list p,.request-copy>.request-note,.field label,.form-panel legend,.service-preview,.form-result [data-form-message],.form-result [data-form-summary],.footer-studio p{font-size:14px}
  .field small,.form-panel p.small,.menu-note,.directory-foot p,.footer-bottom,.service-price,.cut-facts{font-size:12px}
  .button,.text-link,.filter-controls button,.footer-top nav{font-size:14px}
  .header-request{font-size:10px;min-height:44px}
  .text-link,.filter-controls button,.footer-top nav a,.footer-bottom a,.faq-list summary{min-height:44px;display:flex;align-items:center}
  .text-link{display:inline-flex}
  .filter-controls button{justify-content:center;min-width:44px;padding-inline:8px}.filter-controls{gap:8px 16px}
  .footer-top nav{gap:0}
  .breadcrumbs{font-size:12px;flex-wrap:wrap;padding-top:8px}.breadcrumbs a{display:inline-flex;align-items:center;min-height:44px}.breadcrumbs span{align-self:center}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
