/* Scoped service-detail pages: Royal Art Aesthetics palette and type. */
body.treatment-page{--cream:#F9F6F1;--sand:#F3ECE1;--stone:#E6D8C7;--ink:#1F1A17;--soft:#4A3F38;--brass:#6B533E;--serif:"Noto Serif Display",Georgia,serif;--sans:Jost,Arial,sans-serif;margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body.treatment-page *{box-sizing:border-box}body.treatment-page a{color:inherit}body.treatment-page a:focus-visible,body.treatment-page summary:focus-visible{outline:2px solid var(--brass);outline-offset:4px}
body.treatment-page .skip-link{position:absolute;left:1rem;top:-5rem;z-index:5;padding:.7rem 1rem;background:var(--ink);color:var(--cream)}body.treatment-page .skip-link:focus{top:1rem}
body.treatment-page .site-head{min-height:82px;padding:10px clamp(18px,5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(74,63,56,.16)}body.treatment-page .brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:500 16px/1.2 var(--serif);letter-spacing:.01em}body.treatment-page .brand img{width:60px;height:39px;object-fit:contain;flex:none}body.treatment-page .head-link{display:flex;align-items:center;min-height:44px;font-size:16px;text-decoration:none;border-bottom:1px solid var(--brass)}
body.treatment-page main{max-width:1320px;margin:0 auto;padding:0 clamp(20px,6vw,92px)}body.treatment-page .breadcrumbs{display:flex;gap:10px;align-items:center;padding:12px 0;color:#796c62;font-size:14px;min-height:44px}body.treatment-page .breadcrumbs a{text-decoration:none}body.treatment-page .breadcrumbs a:hover{text-decoration:underline}body.treatment-page .breadcrumbs [aria-current]{color:var(--ink)}
body.treatment-page .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.82fr);gap:clamp(32px,8vw,120px);align-items:center;min-height:530px;padding:35px 0 80px}body.treatment-page .hero-copy{max-width:600px}body.treatment-page .location,body.treatment-page .section-kicker{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--brass)}body.treatment-page h1,body.treatment-page h2,body.treatment-page h3{font-family:var(--serif);font-weight:300}body.treatment-page h1{font-size:clamp(44px,6.4vw,84px);line-height:1.03;letter-spacing:-.035em;margin:18px 0 22px;max-width:680px}body.treatment-page .intro{max-width:500px;color:var(--soft);font-size:18px;line-height:1.7}body.treatment-page .hero-link{display:inline-flex;gap:18px;align-items:center;min-height:44px;margin-top:24px;padding:8px 0;border-bottom:1px solid var(--brass);text-decoration:none;font-size:16px}body.treatment-page .treatment-image{margin:0;width:100%;max-width:475px;justify-self:end}body.treatment-page .treatment-image img{display:block;width:100%;height:min(58vw,510px);min-height:340px;object-fit:cover;object-position:center;border-radius:2px}body.treatment-page .treatment-image figcaption{margin-top:11px;color:#71655c;font-size:14px;line-height:1.5}body.treatment-page .treatment-image figcaption span{display:block;color:#71655c}
body.treatment-page .options-section{padding:80px 0 86px;border-top:1px solid rgba(74,63,56,.18)}body.treatment-page .section-heading{max-width:600px;margin-bottom:31px}body.treatment-page .section-heading h2,body.treatment-page .visit-section h2{font-size:clamp(34px,4vw,52px);line-height:1.13;letter-spacing:-.025em;margin:9px 0 14px}body.treatment-page .section-heading>p:last-child{max-width:520px;color:var(--soft);font-size:16px;margin:0}body.treatment-page .section-kicker{margin:0;font-size:12px}body.treatment-page .consult-note{display:flex;gap:14px;align-items:flex-start;max-width:720px;padding:16px 19px;margin:28px 0;background:var(--sand);border-left:2px solid var(--brass)}body.treatment-page .consult-note p{margin:0;font-size:16px;color:var(--soft)}body.treatment-page .consult-note strong{color:var(--ink);font-weight:500}body.treatment-page .note-mark{font-size:16px;color:var(--brass)}
body.treatment-page .options{list-style:none;padding:0;margin:35px 0 0;border-top:1px solid var(--stone);max-width:900px}body.treatment-page .option{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 2px;border-bottom:1px solid var(--stone)}body.treatment-page .option-copy h3{font-size:21px;line-height:1.25;margin:0 0 4px}body.treatment-page .option-copy p{font-size:16px;color:var(--soft);margin:0}body.treatment-page .option-link{flex-shrink:0;display:flex;align-items:center;gap:12px;min-height:44px;text-decoration:none;font-size:16px;border-bottom:1px solid var(--brass);padding:8px 0}body.treatment-page .option-link span,body.treatment-page .visit-link span{color:var(--brass)}body.treatment-page .source-note{display:flex;flex-wrap:wrap;gap:6px 18px;margin:19px 0;color:#5e5148;font-size:16px}body.treatment-page .source-note a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
body.treatment-page .faq-section{padding:70px 0 86px;border-top:1px solid rgba(74,63,56,.18);display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.2fr);gap:clamp(25px,8vw,110px)}body.treatment-page .faq-section .section-heading{margin:0}body.treatment-page .faq-section .section-heading h2{margin-bottom:0}body.treatment-page .faqs{border-top:1px solid var(--stone)}body.treatment-page .faq{border-bottom:1px solid var(--stone)}body.treatment-page .faq summary{position:relative;cursor:pointer;list-style:none;padding:17px 38px 17px 0;font:300 20px/1.35 var(--serif)}body.treatment-page .faq summary::-webkit-details-marker{display:none}body.treatment-page .faq summary:after{content:'+';position:absolute;right:2px;color:var(--brass);font:400 20px/1 var(--sans)}body.treatment-page .faq[open] summary:after{content:'−'}body.treatment-page .faq p{max-width:560px;margin:0;padding:0 25px 20px 0;color:var(--soft);font-size:16px}
body.treatment-page .visit-section{padding:55px clamp(22px,5vw,60px);background:var(--sand);max-width:960px;margin:0 auto 70px}body.treatment-page .visit-section h2{margin:9px 0 8px}body.treatment-page .visit-section address{font-style:normal;color:var(--brass);font-size:16px}body.treatment-page .visit-section>p:not(.section-kicker){max-width:600px;color:var(--soft);font-size:16px}body.treatment-page .visit-link{display:inline-flex;align-items:center;gap:13px;min-height:44px;text-decoration:none;border-bottom:1px solid var(--brass);font-size:16px;padding:8px 0}
body.treatment-page .related{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;padding:28px 0 48px;border-top:1px solid rgba(74,63,56,.18)}body.treatment-page .related>span{width:100%;font:300 20px/1.3 var(--serif)}body.treatment-page .related a{display:flex;align-items:center;min-height:44px;font-size:15px;text-decoration:none;border-bottom:1px solid var(--stone);padding:6px 0}body.treatment-page .related a span{margin-left:10px;color:var(--brass)}body.treatment-page .site-foot{flex-wrap:wrap;display:flex;justify-content:space-between;gap:12px;padding:22px clamp(20px,6vw,92px);border-top:1px solid rgba(74,63,56,.16);font-size:14px;color:#5e5148}body.treatment-page .site-foot a{display:flex;align-items:center;min-height:44px;text-decoration:none}
@media(max-width:700px){body.treatment-page .site-head{min-height:72px;padding-inline:16px;gap:10px}body.treatment-page .brand{font-size:15px;gap:8px}body.treatment-page .brand img{width:52px;height:34px}body.treatment-page main{padding-inline:22px}body.treatment-page .breadcrumbs{padding:17px 0;font-size:13px}body.treatment-page .hero{grid-template-columns:1fr;gap:30px;min-height:0;padding:34px 0 60px}body.treatment-page h1{font-size:clamp(43px,12vw,65px)}body.treatment-page .intro{font-size:17px}body.treatment-page .treatment-image{justify-self:center;width:min(100%,420px)}body.treatment-page .treatment-image img{height:min(110vw,470px);min-height:300px}body.treatment-page .options-section{padding:58px 0}body.treatment-page .option{align-items:flex-start;flex-direction:column;gap:11px;padding:18px 0}body.treatment-page .faq-section{display:block;padding:56px 0}body.treatment-page .faq-section .section-heading{margin-bottom:26px}body.treatment-page .visit-section{padding:38px 24px;margin-bottom:50px}body.treatment-page .site-foot{flex-wrap:wrap;padding-inline:22px}body.treatment-page .site-foot span{display:none}}
@media(max-width:360px){body.treatment-page main{padding-inline:17px}body.treatment-page .site-head{padding-inline:12px;gap:6px}body.treatment-page .brand{font-size:14px;gap:6px}body.treatment-page .brand img{width:48px;height:31px}body.treatment-page .head-link{font-size:14px}body.treatment-page .location{font-size:11px}body.treatment-page .option-copy h3{font-size:19px}}

/* N4a: retain the original photo, crop its lower baked lettering out of the hero. */
body.treatment-page.lip-blush-page .treatment-image img{height:auto;min-height:0;aspect-ratio:1/1.05;object-fit:cover;object-position:center top}
/* Align the panel's outside edges with the existing page content grid; keep readable inset. */
body.treatment-page.studio-subpage #visit.visit-section{width:100%;max-width:none;margin-inline:0;padding:clamp(28px,4vw,48px);text-align:left}
body.treatment-page.studio-subpage .treatment-booking-policy{max-width:680px;margin:20px 0}
body.treatment-page.studio-subpage .treatment-booking-policy p{margin:0 0 12px;color:var(--soft);font-size:16px;line-height:1.65}

/* N4b: balanced phone title and an intentional two-column visit card on wide screens. */
body.treatment-page.studio-subpage #visit.visit-section h2{text-wrap:balance}
@media(min-width:1024px){
 body.treatment-page.studio-subpage #visit.visit-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:clamp(36px,5vw,72px);grid-template-areas:"label policy" "title policy" "address policy" "link policy";grid-template-rows:auto auto auto 1fr;align-items:start}
 body.treatment-page.studio-subpage #visit.visit-section>.section-kicker{grid-area:label}
 body.treatment-page.studio-subpage #visit.visit-section>h2{grid-area:title;margin-bottom:14px}
 body.treatment-page.studio-subpage #visit.visit-section>address{grid-area:address}
 body.treatment-page.studio-subpage #visit.visit-section>.visit-link{grid-area:link;justify-self:start;align-self:start;margin-top:20px}
 body.treatment-page.studio-subpage #visit.visit-section>.treatment-booking-policy{grid-area:policy;max-width:none;margin:0}
 body.treatment-page.studio-subpage #visit.visit-section>.treatment-booking-policy>p:last-child{margin-bottom:0}
}
