:root{--ivory:#f7f2eb;--paper:#fffdfc;--ink:#171411;--espresso:#392a24;--taupe:#cdbbaa;--champagne:#a17c48;--blush:#e9ddd5;--muted:#746963;--border:#ded3ca;--serif:"Iowan Old Style",Baskerville,"Times New Roman","Palatino Linotype",Georgia,serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--wrap:min(88rem,calc(100% - 2.5rem));--space:clamp(4.5rem,9vw,9rem)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.7;overflow-x:hidden}body.menu-open,body.dialog-open{overflow:hidden}img{display:block;max-width:100%;height:auto;background:var(--blush)}a{color:inherit;text-underline-offset:.25em}button,input,select,textarea{font:inherit}button{color:inherit}.wrap{width:var(--wrap);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;background:var(--ink);color:white;padding:.75rem 1rem;transform:translateY(-200%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid var(--champagne);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:.98;letter-spacing:-.035em}h1{font-size:clamp(3.3rem,8vw,8.8rem)}h2{font-size:clamp(2.65rem,5.4vw,6rem)}h3{font-size:clamp(1.65rem,2.4vw,2.5rem)}em{font-weight:400}.eyebrow{font:600 .75rem/1.2 var(--sans);letter-spacing:.19em;text-transform:uppercase}.eyebrow.dark{color:var(--espresso)}.lead{font-size:clamp(1.05rem,1.4vw,1.3rem);max-width:42rem}.large-text{font-family:var(--serif);font-size:clamp(1.45rem,2.2vw,2.2rem);line-height:1.35}.section{padding-block:var(--space)}.section-number{font-size:.73rem;letter-spacing:.16em;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.35rem;padding:.8rem 1.35rem;border:1px solid var(--paper);background:var(--paper);color:var(--ink);text-decoration:none;text-transform:uppercase;font-size:.73rem;font-weight:700;letter-spacing:.09em;transition:background .2s,color .2s,border .2s}.button:hover{background:var(--champagne);border-color:var(--champagne);color:var(--ink)}.button-small{min-height:2.75rem;padding:.6rem 1rem}.button-ghost{background:transparent;color:var(--paper)}.button-dark{background:var(--ink);border-color:var(--ink);color:var(--paper)}.button-dark:hover{background:var(--espresso);color:var(--paper)}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.text-link{display:inline-block;margin-top:1.2rem;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor}.text-link.light{color:var(--paper)}
.site-header{position:fixed;inset:0 0 auto;z-index:50;color:var(--ink);transition:background .25s,border .25s}.site-header::before{content:"";position:absolute;inset:0;background:rgba(255,253,252,.96);border-bottom:1px solid transparent;z-index:-1}.site-header.scrolled::before{border-color:var(--border)}.header-inner{width:min(94rem,calc(100% - 2rem));min-height:5.75rem;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem}.wordmark{display:flex;flex-direction:column;text-decoration:none;font:bold .8rem/1 var(--sans);letter-spacing:.16em}.wordmark span+span{font-family:var(--serif);font-size:1.05rem;font-weight:400;letter-spacing:.11em;margin-top:.3rem}.site-menu{position:fixed;inset:0;background:var(--ink);color:var(--paper);padding:8rem 1.25rem 2rem;visibility:hidden;opacity:0;display:flex;flex-direction:column;justify-content:space-between;transition:opacity .2s,visibility .2s}.site-menu.open{visibility:visible;opacity:1}.site-menu.open a{visibility:visible}.site-menu ul{list-style:none;padding:0;margin:0}.site-menu li{border-bottom:1px solid #ffffff25}.site-menu li a{display:block;padding:.72rem 0;font:400 clamp(2rem,10vw,3.4rem)/1 var(--serif);text-decoration:none}.site-menu li a[aria-current=page]{color:var(--taupe)}.menu-button{position:relative;z-index:2;width:3rem;height:3rem;border:0;background:none;display:grid;place-content:center;gap:.45rem}.menu-button span:not(.sr-only){width:1.6rem;height:1px;background:currentColor;transition:transform .2s}.menu-button[aria-expanded=true]{color:var(--paper)}.menu-button[aria-expanded=true] span:nth-last-child(2){transform:translateY(.25rem) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-.25rem) rotate(-45deg)}
.hero-home{position:relative;min-height:46rem;height:100svh;display:grid;align-items:end;background:var(--espresso);color:var(--paper)}.hero-home picture,.hero-home .hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(0deg,rgba(20,15,12,.82),rgba(20,15,12,.07) 70%)}.hero-copy{position:relative;padding-bottom:clamp(3rem,8vh,6.5rem);z-index:1}.hero-copy h1{max-width:71rem;margin:.25em 0}.hero-copy .lead{max-width:37rem}.trust-strip{list-style:none;margin:0;padding:0 clamp(1.25rem,5vw,5rem);min-height:5rem;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:1rem clamp(2rem,8vw,8rem);background:var(--ivory);border-bottom:1px solid var(--border);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.trust-strip li::before{content:"✦";color:var(--champagne);margin-right:.7rem}.intro{display:grid;gap:2rem;border-bottom:1px solid var(--border)}.intro h2{margin:0}.intro>div:last-child{max-width:38rem}.section-head{display:flex;flex-direction:column;gap:1rem;margin-bottom:3rem}.section-head>p,.section-head>div:last-child{max-width:30rem}.service-gallery{display:grid;gap:1rem}.service-tile{background:var(--paper);position:relative;overflow:hidden}.service-tile img{width:100%;aspect-ratio:1.2;object-fit:cover;transition:transform .55s}.service-tile:hover img{transform:scale(1.025)}.service-tile>div{padding:1.4rem;border:1px solid var(--border);border-top:0}.service-tile span{font-size:.7rem;color:var(--champagne);letter-spacing:.12em}.service-tile h3{margin:.5rem 0}.service-tile a{font-size:.8rem;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:.08em}.method,.statement{background:var(--ink);color:var(--paper)}.method h2{max-width:48rem}.method-list{list-style:none;margin:3rem 0 0;padding:0}.method-list li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.5rem 0;border-top:1px solid #ffffff30}.method-list li>span{font-size:.7rem;letter-spacing:.14em;color:var(--taupe)}.method-list h3{margin:0 0 .35rem}.method-list p{color:#e1d8d2;margin:0}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.gallery-item{margin:0;min-width:0}.gallery-open{position:relative;display:block;width:100%;padding:0;border:0;background:var(--paper);text-align:left;cursor:zoom-in}.gallery-open img{width:100%;aspect-ratio:.74;object-fit:cover}.gallery-caption{display:block;min-height:6rem;margin:0;padding:1rem .8rem;border:1px solid var(--border);border-top:0;background:var(--ivory);color:var(--ink);font:400 clamp(1.1rem,1.5vw,1.5rem)/1.25 var(--serif);letter-spacing:-.015em;transition:background .2s,border-color .2s}.gallery-caption strong{display:block;font:inherit}.gallery-caption small{display:block;margin-top:.4rem;font:400 .8rem/1.5 var(--sans);color:var(--muted);letter-spacing:0}.gallery-open:is(:hover,:focus-visible) .gallery-caption{border-color:var(--champagne);background:var(--blush)}.split-image{display:grid;gap:3rem;align-items:center}.split-image>img{width:100%;max-height:48rem;object-fit:cover}.about-preview{background:var(--ivory)}.faq-list details{border-top:1px solid var(--border)}.faq-list details:last-child{border-bottom:1px solid var(--border)}.faq-list summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:3rem 1fr auto;gap:1rem;padding:1.4rem 0;font:400 clamp(1.2rem,2vw,1.65rem)/1.3 var(--serif)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";font-family:var(--sans);font-weight:300}.faq-list details[open] summary::after{content:"−"}.faq-list summary span{font:600 .66rem/2 var(--sans);color:var(--champagne);letter-spacing:.12em}.faq-list details>div{padding:0 2rem 1.2rem 3rem;max-width:49rem}.location-band,.contact-closing{background:var(--espresso);color:var(--paper);padding-block:var(--space)}.location-band .wrap{display:grid;gap:3rem}.location-band address{font-style:normal;font-size:1.2rem}.location-band strong{font-family:var(--serif);font-size:1.7rem}.final-cta{padding-block:var(--space);background:var(--blush);text-align:center}.final-cta h2{margin:.25em auto;max-width:70rem}.final-cta p:not(.eyebrow){max-width:37rem;margin-inline:auto}.final-cta .button{margin-top:1.5rem}
.breadcrumb{padding-top:7rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.breadcrumb ol{display:flex;gap:.75rem;list-style:none;padding:1.5rem 0;margin:0;border-bottom:1px solid var(--border)}.breadcrumb li+li::before{content:"/";margin-right:.75rem;color:var(--muted)}.breadcrumb a{color:var(--muted)}.internal-hero{min-height:32rem;padding:clamp(4rem,9vw,8rem) 0;display:flex;align-items:center}.internal-hero>div{max-width:76rem}.internal-hero h1{margin:.2em 0}.internal-hero .lead{margin-left:auto}.about-main{border-top:1px solid var(--border)}.about-main>.about-portrait{width:100%;max-width:24rem;max-height:none;justify-self:center;object-fit:contain}.statement blockquote{font:400 clamp(2.5rem,5.8vw,6.5rem)/1.04 var(--serif);margin:3rem 0 0;max-width:76rem}.editorial-columns{display:grid;gap:3rem}.editorial-columns>div{border-top:1px solid var(--border);padding-top:1.5rem}.editorial-columns>div>span,.service-count{color:var(--champagne);font-size:.73rem;letter-spacing:.1em}.editorial-columns h2{font-size:clamp(2rem,3.2vw,3.6rem);margin:.5em 0}.link-panel{margin-block:0 var(--space);display:grid;gap:3rem;padding:2rem;background:var(--ivory);border:1px solid var(--border)}.link-panel h2{font-size:clamp(2rem,3.5vw,3.8rem)}.link-panel a{text-decoration:none}.service-index{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem}.service-index a{display:grid;grid-template-columns:2rem minmax(0,1fr);align-items:center;gap:.6rem;min-width:0;min-height:4.5rem;padding:1rem 1.25rem;border:1px solid var(--border);background:var(--paper);text-decoration:none;font:600 .76rem/1.5 var(--sans);text-transform:uppercase;letter-spacing:.07em;overflow-wrap:anywhere;transition:background .2s,border-color .2s}.service-index a:is(:hover,:focus-visible){background:var(--ivory);border-color:var(--champagne)}.service-index span{color:var(--champagne);font-size:.7rem;letter-spacing:.12em}.services-list{padding-bottom:var(--space)}.service-detail.image-first .service-copy{order:2}.service-detail{display:grid;gap:2rem;padding-block:clamp(4rem,8vw,7rem);border-bottom:1px solid var(--border);scroll-margin-top:6rem}.service-detail img{width:100%;aspect-ratio:1.25;object-fit:cover}.service-detail h2{margin:.25em 0}.service-copy{max-width:40rem}.clarity-note{margin-bottom:var(--space);padding:2rem;border-left:3px solid var(--champagne);background:var(--ivory)}.clarity-note h2{font-size:2rem}.gallery-filters{display:flex;flex-wrap:wrap;gap:.5rem;padding-bottom:1.5rem}.gallery-filters button{flex:none;border:1px solid var(--border);background:transparent;padding:.6rem 1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.gallery-filters button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.gallery-item[hidden]{display:none}.gallery-grid.full{gap:1.5rem .75rem}.faq-page{display:grid;gap:3rem}.faq-intro{max-width:26rem}.contact-layout{display:grid;gap:0;padding-top:0}.contact-image img{width:100%;height:100%;object-fit:cover}.contact-card{background:var(--ivory);padding:clamp(2rem,5vw,5rem)}.contact-card h2{font-size:clamp(2rem,4vw,4rem)}.contact-links{display:flex;flex-direction:column;align-items:flex-start;margin:2rem 0}.contact-card address{display:flex;flex-direction:column;font-style:normal;border-top:1px solid var(--border);padding-top:2rem}.contact-card address small{font-size:.68rem;letter-spacing:.12em}.contact-card address strong{font:400 1.5rem/1.5 var(--serif)}.availability-note{padding:1.25rem;margin-block:2rem var(--space);background:var(--ivory);border-left:3px solid var(--champagne)}.contact-form-section{display:grid;gap:3rem;scroll-margin-top:1rem}.contact-form{display:grid;gap:1.2rem}.contact-form label{display:block;font-size:.8rem;font-weight:700;margin-bottom:.3rem}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--border);background:var(--paper);padding:.85rem;border-radius:0}.contact-form textarea{resize:vertical}.checkbox{display:grid!important;grid-template-columns:auto 1fr}.checkbox input{width:1.25rem;height:1.25rem;margin:.25rem .7rem 0 0}.checkbox label{font-weight:400}.honeypot{position:absolute;left:-9999px}.field-error{color:#8d2424;font-size:.82rem;margin:0}.flash{padding:1rem;border:1px solid var(--border);background:var(--ivory);max-width:42rem}.flash.error{border-color:#8d2424}.flash.success{border-color:#386a43}.legal{max-width:58rem;padding-block:clamp(4rem,9vw,8rem)}.legal header{margin-bottom:4rem}.legal h1{margin:.2em 0}.legal section{margin-block:2.5rem}.legal h2{font-size:clamp(1.8rem,3vw,2.8rem)}.updated{padding-top:1.5rem;border-top:1px solid var(--border);font-size:.82rem;color:var(--muted)}.not-found{min-height:85vh;display:flex;align-items:center;padding-top:7rem}.not-found h1{margin:.25em 0}.not-found p{max-width:35rem}.site-footer{background:var(--ink);color:var(--paper);padding-top:var(--space)}.footer-grid{display:grid;gap:3rem}.site-footer h2{font:600 .73rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer a{text-decoration:none;color:inherit}.site-footer address{font-style:normal}.wordmark-footer{display:inline-flex;margin-bottom:1rem}.footer-bottom{margin-top:4rem;padding:1.5rem 0;border-top:1px solid #ffffff30;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.75rem;color:#cabfb9}.footer-bottom p{margin:0}
.lightbox{position:fixed;inset:0;display:none;width:100%;height:100vh;height:100dvh;max-width:none;max-height:none;min-width:0;margin:0;padding:clamp(.75rem,2vw,2rem);border:0;overflow:hidden;background:var(--ink);color:var(--paper)}
.lightbox::backdrop{background:var(--ink)}
.lightbox[open]{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:1rem}
.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-width:0}
.lightbox-position{margin:0;color:var(--taupe);font:600 .75rem/1.4 var(--sans);letter-spacing:.15em}
.lightbox .lightbox-figure{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-width:0;min-height:0;height:100%;margin:0}
.lightbox-image-wrap{position:relative;display:flex;align-items:center;justify-content:center;flex:0 1 auto;width:100%;min-width:0;min-height:0}
.lightbox figure img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;background:transparent}
.lightbox .lightbox-caption{flex:0 0 auto;width:100%;max-width:54rem;margin:0;text-align:center;color:var(--paper)}
.lightbox-caption h2{margin:0;font:400 clamp(1.4rem,2.6vw,2.2rem)/1.15 var(--serif);letter-spacing:-.02em}
.lightbox-caption p{margin:.5rem 0 0;color:var(--taupe);font:400 clamp(.85rem,1.1vw,1rem)/1.5 var(--sans);letter-spacing:0}
.lightbox button{display:grid;place-items:center;flex:none;width:3rem;height:3rem;padding:0;border:1px solid #ffffff70;background:var(--ink);color:var(--paper);font:400 1.4rem/1 var(--sans);cursor:pointer;transition:background .2s,border-color .2s}
.lightbox button:is(:hover,:focus-visible){border-color:var(--paper);background:var(--espresso)}
.lightbox button:disabled{opacity:.35;cursor:default}
.lightbox .lightbox-close{font-size:1.9rem}
.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:1}
.lightbox-prev{left:0}
.lightbox-next{right:0}
.configuration-notice{margin:0 0 3rem;padding:1rem 1.25rem;border:2px solid #8d2424;background:#fff4f1}.configuration-notice strong{display:block}.legal h3{font-size:1.45rem;line-height:1.2;letter-spacing:-.015em;margin:2rem 0 .65rem}.legal li+li{margin-top:.5rem}.legal-table-wrap{margin-block:1rem}.legal table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.9rem;line-height:1.5}.legal th,.legal td{padding:.85rem;text-align:left;vertical-align:top;border:1px solid var(--border);overflow-wrap:anywhere}.legal th{background:var(--ivory);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.cookie-banner{position:fixed;z-index:90;left:1rem;right:1rem;bottom:1rem;display:grid;grid-template-columns:1fr auto;gap:1rem 1.5rem;max-width:48rem;margin-inline:auto;padding:1.35rem;background:var(--paper);border:1px solid var(--border);box-shadow:0 1rem 4rem #17141135}.cookie-banner[hidden]{display:none}.cookie-banner h2{font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.05;margin:.25rem 0 .65rem}.cookie-banner p{font-size:.88rem;line-height:1.5;margin-bottom:.6rem}.cookie-banner p:last-child{margin-bottom:0}.cookie-banner .button{grid-column:1/-1;justify-self:start}.cookie-close{grid-column:2;grid-row:1;width:2.75rem;height:2.75rem;border:1px solid var(--border);background:transparent;font-size:1.6rem;line-height:1}.footer-button{border:0;padding:0;background:none;color:inherit;text-decoration:underline;text-underline-offset:.25em;cursor:pointer}

.salon-intro{display:grid;gap:2rem;border-bottom:1px solid var(--border)}.salon-intro h2{margin-bottom:0}.salon-intro-copy{max-width:42rem}.story-section,.extension-techniques{background:var(--ivory)}.story-layout{display:grid;gap:2rem}.story-copy{max-width:46rem}.story-copy article{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}.story-copy h3{line-height:1.15;margin-bottom:1rem}.story-copy p:last-child{margin-bottom:0}.technique-layout{display:grid;gap:3rem;align-items:start}.technique-list{list-style:none;padding:0;margin:0}.technique-list li{padding:1.75rem 0;border-top:1px solid var(--border)}.technique-list h3{line-height:1.15;margin-bottom:.75rem}.technique-list h3 span{display:block;margin-top:.4rem;font:600 .75rem/1.4 var(--sans);letter-spacing:.06em;text-transform:uppercase}.technique-list p{margin-bottom:0;max-width:38rem}.technique-figure{width:100%;max-width:32rem;margin:0 auto}.technique-figure img{width:100%;height:auto}.technique-figure figcaption{display:block;margin:0;padding:1.15rem 1.25rem;border:1px solid var(--border);border-top:0;background:var(--paper);color:var(--ink);font:400 clamp(1.2rem,2.2vw,1.65rem)/1.3 var(--serif);letter-spacing:-.015em}.service-highlights{display:grid;gap:3rem}.service-highlights article{min-width:0}.service-highlights h2{font-size:clamp(2.5rem,4.2vw,4.8rem);line-height:1.05}.service-highlights p:not(.eyebrow){max-width:38rem}.reviews-section{background:var(--ivory)}.reviews-grid{display:grid;gap:1.25rem}.review-card{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:clamp(1.25rem,2.5vw,2rem);border:1px solid var(--border);background:var(--paper)}.review-source{margin-bottom:.8rem;color:var(--muted);font:600 .7rem/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase}.review-card h3{font-size:clamp(1.55rem,2vw,2rem);line-height:1.15;margin-bottom:.65rem}.review-stars{display:block;color:var(--espresso);font-size:1rem;letter-spacing:.15em}.review-card blockquote{margin:1.5rem 0;flex:1;font:400 clamp(1.2rem,1.7vw,1.5rem)/1.5 var(--serif)}.review-card blockquote p{margin:0}.review-link{display:inline-flex;align-items:center;gap:.45rem;min-height:2.75rem;margin-top:0;font-size:.7rem;letter-spacing:.04em}
@media(min-width:30rem){.service-index{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:48rem){.service-index{grid-template-columns:repeat(3,minmax(0,1fr))}.service-detail.image-first{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.salon-intro,.story-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(3rem,6vw,6rem)}.technique-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(3rem,6vw,6rem)}.service-highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(3rem,6vw,6rem)}.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}:root{--wrap:min(88rem,calc(100% - 5rem))}.intro{grid-template-columns:1fr 1.3fr 1.1fr}.section-head{flex-direction:row;align-items:end;justify-content:space-between}.service-gallery{grid-template-columns:repeat(2,1fr)}.method-list li{grid-template-columns:5rem 1fr 1fr;align-items:start}.method-list li p{grid-column:3}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-grid.compact figure:nth-child(2),.gallery-grid.compact figure:nth-child(5){transform:translateY(3rem)}.split-image{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(3rem,8vw,8rem)}.location-band .wrap{grid-template-columns:1.5fr 1fr;align-items:end}.editorial-columns{grid-template-columns:repeat(3,1fr)}.link-panel{grid-template-columns:1.5fr 1fr;padding:4rem}.service-detail{grid-template-columns:1fr 1.2fr;align-items:center;gap:clamp(3rem,8vw,8rem)}.service-detail:nth-child(even) .service-copy{order:2}.service-detail.no-image{grid-template-columns:1fr 1fr}.service-detail.no-image .service-copy{grid-column:2}.gallery-grid.full{grid-template-columns:repeat(3,1fr)}.gallery-grid.full figure:nth-child(3n+2){transform:translateY(3rem)}.faq-page{grid-template-columns:1fr 2fr}.contact-layout{grid-template-columns:1.15fr .85fr}.contact-form-section{grid-template-columns:.7fr 1.3fr}.contact-form{grid-template-columns:1fr 1fr}.field-full,.contact-form button,.contact-form>[role=status]{grid-column:1/-1}.footer-grid{grid-template-columns:2fr repeat(3,1fr)}}
@media(min-width:68rem){.reviews-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-header.home-top{color:var(--paper)}.site-header.home-top::before{background:transparent}.menu-button{display:none}.site-menu{position:static;visibility:visible;opacity:1;background:transparent;color:inherit;padding:0;display:flex;flex-direction:row;align-items:center;gap:2rem}.site-menu ul{display:flex;align-items:center;gap:clamp(1rem,2vw,2rem)}.site-menu li{border:0}.site-menu li a{padding:.7rem 0;font:600 .7rem/1 var(--sans);text-transform:uppercase;letter-spacing:.08em}.site-menu li a[aria-current=page]{color:inherit;border-bottom:1px solid currentColor}.site-menu>.button{border-color:var(--ink);background:transparent;color:var(--ink)}.site-menu>.button:is(:hover,:focus-visible){background:var(--ink);color:var(--paper);border-color:var(--ink)}.site-header.home-top .button{background:transparent;color:var(--paper);border-color:var(--paper)}.site-header.home-top .button:is(:hover,:focus-visible){background:var(--paper);color:var(--ink);border-color:var(--paper)}.service-gallery{grid-template-columns:repeat(4,1fr)}.service-tile:nth-child(even){transform:translateY(3rem)}.gallery-grid.full{grid-template-columns:repeat(4,1fr)}.gallery-grid.full figure:nth-child(3n+2){transform:none}.gallery-grid.full figure:nth-child(even){transform:translateY(3rem)}}
@media(max-width:67.99rem){.site-menu>.button{align-self:flex-start;margin-top:2rem}}
@media(max-width:67.99rem) and (max-height:36rem){.site-menu{padding:6.5rem 1.25rem 1.25rem}.site-menu ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem}.site-menu li a{display:flex;align-items:center;min-height:2.75rem;padding:.35rem 0;font:400 clamp(1.25rem,3vw,1.65rem)/1.2 var(--serif)}.site-menu>.button{margin-top:1rem}}
.no-js .menu-button{display:none}.no-js .site-menu{position:static;visibility:visible;opacity:1;background:var(--paper);color:var(--ink);padding:6.5rem 1rem 1rem;display:block}.no-js .site-menu li a{font-size:1rem}.no-js .site-menu>.button{display:none}
@media(max-width:30rem){:root{--wrap:calc(100% - 2rem)}h1{font-size:clamp(2.9rem,16vw,4.4rem)}.hero-home{min-height:40rem}.hero-copy{padding-bottom:2rem}.hero-copy h1{font-size:clamp(3.1rem,16vw,4.5rem)}.hero-copy .lead{font-size:.98rem}.button-row{align-items:stretch}.button-row .button{width:100%}.trust-strip{justify-content:flex-start;padding-block:1rem}.gallery-grid{grid-template-columns:1fr}.gallery-grid.compact figure:nth-child(n){transform:none}.lightbox[open]{gap:.75rem}.lightbox .lightbox-figure{gap:.75rem}.lightbox button{width:2.75rem;height:2.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}.service-tile:hover img{transform:none}}
