/* Natural Lashes visual system. See DESIGN-SYSTEM.md before changing these roles. */
:root{
  --olive:#647454;--olive-dark:#4d6044;--ink:#242b24;--muted:#565e52;
  --paper:#fffefa;--soft:#eef0e7;--line:#d8ddd1;
  --type-body:16px;--type-small:14px;--type-label:12px;
  --type-subheading:18px;--type-title:24px;--type-section:44px;
  --weight-body:400;--weight-heading:500;--weight-action:600;
  --leading-body:1.6;--leading-heading:1.12;
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;
  --space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;
  --space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;
  --page-width:1320px;--reading-width:680px;--page-gutter:56px;
  --section-space:80px;--column-gap:var(--space-16);--control-height:44px;
  --radius-panel:12px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 "Libre Franklin",Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}a:hover{text-decoration:underline}.button,.button:hover,.wordmark,.wordmark:hover{text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #be792c;outline-offset:5px}img{display:block;width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:var(--weight-heading);line-height:var(--leading-heading);letter-spacing:-1.5px}h2{font-size:44px;margin-bottom:var(--space-6)}h3{letter-spacing:-.5px}.wrap{max-width:var(--page-width);margin:auto;padding-left:var(--space-14);padding-right:var(--space-14)}.site-header{max-width:none;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding-top:var(--space-6);padding-bottom:var(--space-6);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.wordmark{font-size:23px;font-weight:700;letter-spacing:-.7px;line-height:1.15;white-space:nowrap}.wordmark span{display:block;font-size:9px;font-weight:var(--weight-body);letter-spacing:2px;margin-top:var(--space-2)}.site-header nav{display:flex;align-items:center;gap:var(--space-8);font-size:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-6);background:var(--olive);color:white;padding:var(--space-4) var(--space-6);border:1px solid var(--olive);font-size:16px;font-weight:var(--weight-action);min-height:52px;transition:background .15s}.button:hover{background:var(--olive-dark);text-decoration:none}.button.small{font-size:14px;min-height:44px;padding:var(--space-3) var(--space-6)}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--soft)}.hero-copy{padding:var(--space-16) max(var(--space-10),calc((100vw - 1208px)/2));padding-right:var(--space-10);align-self:center}.eyebrow{font-size:12px;font-weight:var(--weight-action);letter-spacing:1.7px;margin-bottom:var(--space-6)}h1{font-size:clamp(40px,4.2vw,62px);letter-spacing:-2.4px;margin-bottom:var(--space-6);color:var(--olive-dark)}.hero-location{display:block;font-size:24px;letter-spacing:-.4px;line-height:1.3;margin-top:var(--space-5);color:var(--ink)}.intro{font-size:17px;max-width:430px;margin-bottom:var(--space-6);color:var(--muted)}.hero-note{font-size:14px;margin:var(--space-4) 0 var(--space-6)}.hero-review{display:block;font-size:14px}.hero-review span{color:var(--olive-dark);letter-spacing:2px;margin-right:var(--space-2)}.review-date{display:block;font-size:11px;color:var(--muted);margin-top:var(--space-1)}.hero-photo{position:relative;min-height:600px}.hero-photo img{height:100%;object-fit:cover;object-position:right center;position:absolute;inset:0}.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;background:rgba(255,254,250,.94);padding:var(--space-3) var(--space-6);display:flex;justify-content:space-between;gap:var(--space-4);font-size:11px}.section{padding-top:var(--space-20);padding-bottom:var(--space-20)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:var(--space-12);margin-bottom:var(--space-8)}.section-heading>p{max-width:350px;color:var(--muted);margin-bottom:var(--space-6)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.service{container-type:inline-size;background:var(--soft);padding:var(--space-6) var(--space-6);display:flex;flex-direction:column}.service-top{display:flex;justify-content:space-between;gap:var(--space-3);font-size:12px;color:var(--muted)}.service-top>span:first-child{display:none}.service h3,.service h4{font-size:25px;margin:var(--space-5) 0 var(--space-3);line-height:1.2}.service p{font-size:15px;color:var(--muted);margin-bottom:var(--space-5);text-wrap:balance}.service-bottom{margin-top:auto}.service-bottom strong{display:block;font-size:32px;font-weight:var(--weight-heading);margin-bottom:var(--space-5);line-height:1.2}.service-bottom a{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:45px;border-top:1px solid #b8c1ad;padding-top:var(--space-4);font-size:14px;font-weight:var(--weight-action);color:var(--olive-dark)}.maintenance{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-20);margin-top:var(--space-14);padding-top:var(--space-10);border-top:1px solid var(--line)}.maintenance h3{font-size:30px;margin-bottom:var(--space-4)}.maintenance p:not(.eyebrow){color:var(--muted);max-width:370px}.maintenance .eyebrow{margin-bottom:var(--space-4)}dl{margin:0}dl div{display:flex;justify-content:space-between;gap:var(--space-5);padding:var(--space-2) 0;border-bottom:1px solid var(--line);font-size:15px}dd{margin:0;white-space:nowrap}.section-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);margin-top:var(--space-8)}.section-foot p{font-size:12px;color:var(--muted);max-width:410px;margin:0}.text-link{display:inline-block;font-size:15px;color:var(--olive-dark)}.work-section{background:var(--soft)}.work-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--space-16);padding-top:var(--space-14);padding-bottom:var(--space-14)}.work-grid img{aspect-ratio:1.1;object-fit:cover}.work-grid figcaption{font-size:12px;color:var(--muted);margin-top:var(--space-3)}.work-copy p:not(.eyebrow){max-width:410px;color:var(--muted)}.work-copy .text-link{margin-top:var(--space-3)}.faq-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-16)}.muted{color:var(--muted);font-size:15px}.muted a{display:inline-block;margin-top:var(--space-3)}.faq-list{border-top:1px solid var(--line)}details{padding:var(--space-6) 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;display:flex;justify-content:space-between;gap:var(--space-5);list-style:none;font-size:16px;font-weight:var(--weight-heading)}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:22px;line-height:1}details[open] summary:after{content:'−'}.faq-list details p{font-size:15px;color:var(--muted);margin:var(--space-4) var(--space-6) 0 0}.visit-section{background:var(--olive);color:white;padding:var(--space-16) 0}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-20)}.visit-section h2{font-size:52px}.light{background:var(--paper);color:var(--olive-dark);border-color:var(--paper)}.light:hover{background:var(--soft)}.visit-info h3{font-size:25px;margin-bottom:var(--space-4)}address{font-style:normal;margin-bottom:var(--space-4)}.hours{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid #a4ae99}.hours p{display:flex;justify-content:space-between;gap:var(--space-5);font-size:15px;margin-bottom:var(--space-2)}.appointment-note{font-size:13px;margin-top:var(--space-5)}.footer{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);padding-top:var(--space-8);padding-bottom:var(--space-8)}.footer>a:not(.wordmark),.footer>span{font-size:13px}.mobile-book{display:none}.skip{position:absolute;top:-100px;left:15px;background:var(--ink);color:white;padding:var(--space-3);z-index:20}.skip:focus{top:12px}@media(min-width:1500px){.hero-photo{min-height:650px}}@media(max-width:1000px){.wrap{padding-left:var(--space-8);padding-right:var(--space-8)}.site-header nav{gap:var(--space-5)}.hero-copy{padding:var(--space-10) var(--space-8)}.hero-photo{min-height:560px}.service-grid{grid-template-columns:repeat(2,1fr)}.work-grid,.faq-grid,.visit-grid{gap:var(--space-10)}h2{font-size:37px}}@media(max-width:700px){html{scroll-padding-top:var(--space-20)}.wrap{padding-left:var(--space-6);padding-right:var(--space-6)}.site-header{padding:var(--space-4) var(--space-6);gap:var(--space-4)}.wordmark{font-size:18px}.wordmark span{font-size:8px;letter-spacing:1.3px}.site-header nav>a:not(.button){display:none}.site-header .button{font-size:13px;padding:var(--space-2) var(--space-4);min-height:43px}.site-header .button span{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:var(--space-10) var(--space-6) var(--space-8)}.eyebrow{font-size:11px;margin-bottom:var(--space-4)}h1{font-size:43px;letter-spacing:-1.7px;margin-bottom:var(--space-5)}.hero-location{font-size:21px;margin-top:var(--space-4)}.intro{font-size:16px;margin-bottom:var(--space-6)}.hero-copy .button{width:100%}.hero-note{margin:var(--space-3) 0 var(--space-5)}.hero-review{font-size:13px}.hero-photo{min-height:0;height:330px}.hero-photo img{object-position:65% 45%}.hero-photo figcaption{font-size:10px;padding:var(--space-3) var(--space-5)}.section{padding-top:var(--space-12);padding-bottom:var(--space-12)}h2{font-size:34px;letter-spacing:-1.1px}.section-heading{display:block;margin-bottom:var(--space-6)}.section-heading>p{max-width:none;font-size:15px}.service-grid{gap:var(--space-3)}.service{padding:var(--space-5) var(--space-4)}.service h3,.service h4{font-size:21px}.service p{font-size:14px}.service-bottom a{font-size:13px;align-items:center;min-height:60px}.service-bottom strong{font-size:29px}.maintenance,.work-grid,.faq-grid,.visit-grid{grid-template-columns:1fr;gap:var(--space-8)}.maintenance{margin-top:var(--space-8);padding-top:var(--space-8)}.maintenance h3{font-size:27px}dl div{font-size:14px}.section-foot{display:block}.section-foot .text-link{margin-top:var(--space-5)}.work-grid{padding-top:var(--space-8);padding-bottom:var(--space-10);gap:var(--space-8)}.faq-grid{gap:var(--space-6)}.visit-section{padding:var(--space-12) 0}.visit-section h2{font-size:40px}.hours p{font-size:14px}.footer{flex-wrap:wrap;padding-bottom:115px}.footer .wordmark{width:100%}.mobile-book{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--paper);padding:var(--space-3) var(--space-5) calc(var(--space-3) + env(safe-area-inset-bottom));border-top:1px solid var(--line);z-index:15}.mobile-book .button{width:100%;padding:var(--space-3) var(--space-5);min-height:48px}}@media(max-width:360px){h1{font-size:37px}.service-grid{grid-template-columns:1fr}.hero-review span{letter-spacing:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Full-bleed, centered opening screen inspired by the selected reference. */
.site-header{position:absolute;inset:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;background:transparent;color:white;border-bottom:1px solid rgba(255,255,255,.45);padding:var(--space-6) 4%;gap:var(--space-8)}.site-header .wordmark{text-align:center;font-size:26px;font-weight:var(--weight-heading);letter-spacing:-.6px}.site-header nav{gap:var(--space-6);font-size:12px;text-transform:uppercase;letter-spacing:1.2px}.nav-right{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-8)}.header-contact{font-size:12px;letter-spacing:1.2px;text-transform:uppercase}.site-header .button{background:transparent;border-color:rgba(255,255,255,.8);color:white;font-weight:var(--weight-body);text-transform:uppercase;letter-spacing:1px;min-width:115px}.site-header .button:hover{background:var(--olive)}.hero{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:720px;min-height:100svh;background:var(--olive-dark);color:white}.hero-photo{position:absolute;inset:0;min-height:0;height:100%;z-index:-2}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 45%}.hero-photo figcaption{display:none}.hero:after{display:none}.hero-copy{text-align:center;width:100%;max-width:1000px;padding:160px var(--space-8) 100px;align-self:auto}.hero .eyebrow{margin-bottom:var(--space-3);letter-spacing:2.2px;font-size:13px}.hero h1{color:white;font-size:clamp(36px,4vw,58px);line-height:1.13;letter-spacing:-1.5px;margin:0 auto var(--space-6);max-width:920px}.hero .intro{color:white;font-size:19px;max-width:690px;margin:0 auto var(--space-8);line-height:1.55}.hero .button{min-width:240px;text-transform:uppercase;letter-spacing:1.4px;font-size:14px;padding:var(--space-4) var(--space-8);gap:var(--space-5)}.hero .button span{display:none}.review-strip{text-align:center;padding:var(--space-5) var(--space-6);background:var(--paper)}.review-strip .hero-review{display:inline-block}.review-strip .review-date{display:inline-block;margin:0 0 0 var(--space-4)}.site-header a:focus-visible{outline-color:white}
@media(max-width:900px){.site-header{padding:var(--space-6) var(--space-6);gap:var(--space-4)}.site-header .wordmark{font-size:21px}.site-header nav{gap:var(--space-4);font-size:11px}.header-contact{display:none}.nav-right{gap:0}.hero-copy{padding-left:var(--space-8);padding-right:var(--space-8)}}
@media(max-width:700px){.site-header{grid-template-columns:1fr auto;padding:var(--space-5) var(--space-6)}.site-header .nav-left{display:none}.site-header .wordmark{text-align:left;font-size:20px}.site-header .button{font-size:11px;min-width:90px;padding:var(--space-3) var(--space-3)}.hero{min-height:680px;min-height:100svh}.hero-photo{height:100%;min-height:0}.hero-photo img{object-position:82% center}.hero-copy{padding:145px var(--space-6) 125px}.hero h1{font-size:42px;letter-spacing:-1.3px;max-width:430px}.hero .intro{font-size:17px;max-width:370px}.hero .eyebrow{font-size:11px;letter-spacing:1.6px}.hero-copy .button{width:auto;min-width:230px}.review-strip .review-date{display:block;margin:var(--space-1) 0 0}.hero:after{display:none}}@media(max-width:360px){.hero h1{font-size:36px}.site-header .wordmark{font-size:17px}}

.hero-copy h1,.hero-copy .intro,.hero-copy .eyebrow{text-shadow:0 1px 5px rgba(0,0,0,.65)}

.hero-place{white-space:nowrap}
@media(max-width:700px){
  .hero-place{display:none}
  .hero-service{display:block;white-space:nowrap}
  .hero-photo img{object-position:86% center}
}

/* Keep the review strip within the opening viewport. */
.hero{min-height:calc(100svh - 64px)}
.hero-copy{padding-top:120px;padding-bottom:var(--space-14)}
.review-strip{min-height:64px;display:flex;align-items:center;justify-content:center;padding:var(--space-4) var(--space-5)}
@media(max-width:700px){
  .hero{min-height:calc(100svh - 140px - env(safe-area-inset-bottom))}
  .hero-copy{padding:110px var(--space-6) var(--space-8)}
  .hero h1{font-size:clamp(32px,9.5vw,42px)}
  .hero .intro{margin-bottom:var(--space-6)}
}
@media(max-height:600px) and (min-width:701px){
  .hero-copy{padding:100px var(--space-8) var(--space-6)}
  .hero h1{font-size:36px;margin-bottom:var(--space-4)}
  .hero .intro{margin-bottom:var(--space-5)}
}

/* Reviews sit over the hero photograph. */
.hero{min-height:100svh}
.hero-copy{padding-bottom:100px}
.hero .review-strip{position:absolute;bottom:0;left:0;right:0;background:transparent;color:white;min-height:64px;padding:var(--space-5) var(--space-5) var(--space-6);text-shadow:0 1px 5px rgba(0,0,0,.75)}
.hero .hero-review span{color:white}
@media(max-width:700px){.hero{min-height:calc(100svh - 76px - env(safe-area-inset-bottom))}.hero-copy{padding-bottom:var(--space-20)}.hero .review-strip{padding-bottom:var(--space-5)}}

/* Keep review proof beside the primary booking action. */
.hero .review-strip{position:static;min-height:0;margin-top:var(--space-6);padding:0;line-height:var(--leading-body)}

/* Align the star glyphs with the review text as separate flex items. */
.hero .review-strip .hero-review{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);text-decoration:none}
.hero .review-strip .hero-review span{display:block;flex-shrink:0;margin:0;line-height:1;letter-spacing:2px;transform:translateY(-1px)}

.instagram-link{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;border-bottom:0;padding-bottom:0;text-decoration:none}
.instagram-link:hover{text-decoration:none}
.instagram-icon{flex:0 0 20px;width:20px;height:20px}
.instagram-link>span{min-width:0;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}

.work-photo-link{display:block}

.work-grid .instagram-icon{aspect-ratio:1;object-fit:contain}

/* The full menu stays compact until a visitor chooses to browse it. */
.service-catalog{margin-top:var(--space-8);padding:0;border:0}
.service-catalog>summary{border:1px solid #b8c1ad;align-items:center;min-height:76px;padding:var(--space-6);background:var(--soft);border-radius:var(--radius-panel);color:var(--olive-dark);font-size:18px;font-weight:var(--weight-action)}
.service-catalog>summary:after{content:'';flex-shrink:0;width:10px;height:10px;margin:0 var(--space-1) var(--space-1) var(--space-3);border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .15s}
.service-catalog[open]{background:var(--soft);border:1px solid #b8c1ad;border-radius:var(--radius-panel)}
.service-catalog[open]>summary{border:0;border-radius:var(--radius-panel) 12px 0 0;border-bottom:1px solid var(--line)}
.catalog-label-open{display:none}
.service-catalog[open] .catalog-label-closed{display:none}
.service-catalog[open] .catalog-label-open{display:inline}
.service-catalog[open]>summary:after{content:'';transform:rotate(225deg);margin-bottom:-5px}
.catalog-content{padding:var(--space-6) 0 var(--space-8)}
.catalog-content .service{background:var(--soft)}
.catalog-group>h3,.service-catalog .catalog-note{padding-left:var(--space-6);padding-right:var(--space-6)}
.catalog-group>h3{padding-left:var(--space-6);padding-right:var(--space-6)}
.service-catalog .catalog-intro{margin:0 0 var(--space-8);max-width:650px}
.catalog-group+.catalog-group{margin-top:var(--space-8)}
.catalog-group h3{margin:0;padding-bottom:var(--space-3);font-size:23px;border-bottom:1px solid var(--line)}
.catalog-list{list-style:none;padding:0;margin:var(--space-5) 0 0}
.service-catalog .catalog-note{margin:var(--space-8) 0 0;max-width:720px;font-size:14px}
@media(max-width:700px){
  .service-catalog{margin-top:var(--space-6)}
  .service-catalog>summary{font-size:16px;min-height:70px;padding-left:var(--space-4);padding-right:var(--space-4)}
  .catalog-content{padding-top:var(--space-4);padding-bottom:var(--space-5)}
  .catalog-group>h3{padding-left:var(--space-4);padding-right:var(--space-4);padding-bottom:var(--space-2)}
  .catalog-list{margin-top:var(--space-2);row-gap:var(--space-2)}
  .catalog-content .service{padding-top:var(--space-3);padding-bottom:var(--space-3)}
  .catalog-group+.catalog-group{margin-top:var(--space-6)}
}

.service[hidden]{display:none}
@media(min-width:361px) and (max-width:700px){
  .service h3,.service h4{min-height:2.4em}
}
.service-top{text-transform:uppercase;font-size:clamp(10px,9cqi,var(--type-small));white-space:nowrap}
.service-bottom strong{overflow-wrap:anywhere}
@media(max-width:700px){
  .service-bottom strong{font-size:clamp(20px,5.5vw,24px);white-space:nowrap;overflow-wrap:normal}
}
.service-bottom a{display:inline-flex;justify-content:center;width:auto;min-height:44px;padding:var(--space-3) var(--space-6);border:1px solid var(--olive);background:transparent;color:var(--olive-dark);text-decoration:none;line-height:1.4;transition:border-color .15s}
.service-bottom a:hover{background:transparent;border-color:var(--olive-dark);text-decoration:none}
.hero,.hero-photo,.hero-photo img{border-radius:0}
.hero,.hero-photo{overflow:hidden}

/* Let the portfolio photograph meet the section edges. */
.work-grid{max-width:none;padding:0;gap:0;align-items:stretch}
.work-grid>figure{position:relative;min-height:clamp(336px,36.8vw,576px)}
.work-photo-link{position:absolute;inset:0}
.work-photo-link img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
.work-copy{align-self:center;padding:var(--space-14) clamp(var(--space-8),5vw,var(--space-20))}
@media(max-width:700px){
  .work-grid>figure{min-height:0;aspect-ratio:auto}
  .work-photo-link{position:static}
  .work-photo-link img{height:auto;aspect-ratio:1.1}
  .work-copy{padding:var(--space-10) var(--space-6) var(--space-10)}
}

.service h4{font-weight:var(--weight-heading);letter-spacing:-.5px}
.service-variation{font-size:15px;line-height:1.4;color:var(--muted);margin:-6px 0 var(--space-4)}

.nav-right .manage-booking{font-size:12px;white-space:nowrap;letter-spacing:.6px;text-transform:uppercase}
.hours h4{margin:0 0 var(--space-4);font-size:18px;font-weight:var(--weight-heading)}
.hours p span:last-child{text-align:right}
.hours .appointment-only{margin-top:var(--space-4);font-size:13px}
@media(max-width:700px){.nav-right{gap:var(--space-3)}.nav-right .manage-booking{font-size:11px;letter-spacing:0;text-transform:none}.site-header{grid-template-columns:1fr}.site-header .wordmark{text-align:center}.nav-right{justify-content:center}.hero-copy{padding-top:165px}}

.hero .review-strip .review-date{color:inherit;opacity:.85}

/* Artist introduction and owner-confirmed arrival instructions. */
.artist-grid{display:block;padding-top:var(--space-16);padding-bottom:var(--space-12)}
.artist-grid .eyebrow{margin-bottom:var(--space-4)}
.artist-grid h2{margin-bottom:var(--space-5)}
.artist-grid+.faq-grid{padding-top:var(--space-8)}
.artist-copy{max-width:var(--reading-width);color:var(--muted)}
.artist-copy p:last-child{margin-bottom:0}
.arrival{margin-top:var(--space-8);padding:0;border:0;scroll-margin-top:110px}
.arrival h4{margin:0 0 var(--space-4);font-size:18px;font-weight:var(--weight-heading)}
.arrival p{font-size:16px;line-height:var(--leading-body);margin:0 0 var(--space-2)}
.arrival p:last-child{margin-bottom:0}
.arrival+.hours{margin-top:var(--space-8);padding-top:0;border-top:0}
@media(max-width:700px){.artist-grid{padding-top:var(--space-12);padding-bottom:var(--space-8)}.arrival{scroll-margin-top:160px}}

/* Consistent body typography for studio visit details. */
.visit-info address,.visit-info>a,.visit-info .hours p{font-size:16px}

/* Shared type scale across page sections and responsive layouts. */

body{font-size:var(--type-body)}
h2,.visit-section h2{font-size:var(--type-section)}
.service h3,.service h4,.catalog-group h3,.visit-info h3,.maintenance h3{font-size:var(--type-title);font-weight:var(--weight-heading)}
.arrival h4,.hours h4,.service-catalog>summary{font-size:var(--type-subheading);font-weight:var(--weight-heading)}
.service p,.service-variation,.faq-list details p,.muted,.text-link,.section-heading>p,.artist-copy p,.work-copy p:not(.eyebrow),.arrival p,.visit-info address,.visit-info>a,.visit-info .hours p,dl div{font-size:var(--type-body);line-height:var(--leading-body)}
.hero-review,.review-date,.hero-photo figcaption,.work-grid figcaption,.section-foot p,.service-catalog .catalog-note,.footer>a:not(.wordmark),.footer>span{font-size:var(--type-small)}
.eyebrow,.hero .eyebrow{font-size:var(--type-label);font-weight:var(--weight-action);letter-spacing:1.7px}
.hero .intro{font-size:18px}
.button,.button.small,.site-header .button,.hero .button,.service-bottom a{font-size:var(--type-body);font-weight:var(--weight-action);letter-spacing:0;text-transform:none;line-height:1.4}
@media(max-width:1000px){:root{--type-section:37px}}
@media(max-width:700px){:root{--type-section:34px}.service-bottom a{padding-left:var(--space-4);padding-right:var(--space-4)}.site-header .button{min-width:0}}

/* A quieter booking control within the navigation. */
.site-header .button{font-size:var(--type-small);font-weight:var(--weight-heading);letter-spacing:.2px;border-color:rgba(255,255,255,.55);padding:var(--space-3) var(--space-5);min-width:0;min-height:44px}

/* Layout roles: shared gutters, section rhythm, and readable text measures. */
.wrap{max-width:var(--page-width);padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
.section{padding-top:var(--section-space);padding-bottom:var(--section-space)}
.faq-grid,.visit-grid{column-gap:var(--column-gap)}
.artist-grid{padding-top:var(--space-16);padding-bottom:var(--space-12)}
.artist-grid+.faq-grid{padding-top:var(--space-8)}
.work-grid{max-width:none;padding:0;gap:0}
.site-header{max-width:none;padding-left:4%;padding-right:4%}
.button,.service-bottom a{min-height:var(--control-height)}
.arrival,.arrival+.hours{margin-top:var(--space-8)}
.arrival h4,.hours h4{margin-bottom:var(--space-4)}
.artist-copy p{margin-bottom:var(--space-4)}
.artist-copy p:last-child{margin-bottom:0}
@media(max-width:1000px){:root{--page-gutter:32px;--column-gap:40px}}
@media(max-width:700px){
  :root{--page-gutter:24px;--section-space:48px;--column-gap:32px}
  .artist-grid{padding-top:var(--space-12);padding-bottom:var(--space-8)}
  .site-header{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
}
