:root{--ivory:#faf7f0;--paper:#fffdf9;--ink:#423a2e;--muted:#6d6457;--gold:#826b39;--line:#ded5c3;--peach:#f0e2d7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--gold);outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12}h1{font-size:clamp(3rem,5.15vw,5.8rem);letter-spacing:-.055em}h2{font-size:clamp(2.6rem,4vw,4.4rem);letter-spacing:-.045em}h3{font-size:1.6rem;letter-spacing:-.02em}em{font-weight:400;color:var(--gold)}header{max-width:1440px;margin:auto;padding:23px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;line-height:1;align-items:center;color:var(--gold)}.brand span{font-family:Georgia,serif;font-size:2.5rem;letter-spacing:.14em;padding-left:.14em}.brand small{font-size:.75rem;letter-spacing:.3em;margin-top:8px;padding-left:.3em}nav{display:flex;gap:32px;font-size:.9rem}nav a:hover,.text-link:hover{color:var(--gold)}.button{display:inline-flex;justify-content:center;align-items:center;min-height:49px;background:var(--gold);color:white;padding:14px 27px;font-size:.9rem;font-weight:500;letter-spacing:.025em;transition:background .2s}.button:hover{background:#665229}.header-book{padding:12px 21px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.15fr 1fr;padding:50px 5% 60px;gap:5%;align-items:center}.hero-copy{padding:30px 0}.eyebrow{color:var(--gold);font-size:.8rem;letter-spacing:.16em;line-height:1.6;margin-bottom:28px}.intro{font-size:1.05rem;color:var(--muted);line-height:1.8;margin-top:28px}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:35px;flex-wrap:wrap}.text-link{font-size:.9rem;border-bottom:1px solid var(--gold);padding-bottom:5px}.location{font-size:.75rem;letter-spacing:.16em;color:var(--muted);margin-top:64px}.hero-photo{position:relative;height:590px;margin:0 0 0 10px}.hero-photo:before{content:'';position:absolute;inset:15px -15px -15px 15px;border:1px solid var(--gold);z-index:-1}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;display:block}.hero-photo figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(47,34,17,.88));padding:70px 28px 25px;color:white}.hero-photo figcaption span{display:block;font-family:Georgia,serif;font-size:1.5rem}.hero-photo figcaption small{font-size:.75rem;letter-spacing:.1em}.principles{background:var(--peach);display:flex;justify-content:center;gap:8%;padding:26px 5%;font-size:.9rem;color:#66553f}.section{max-width:1440px;margin:auto;padding:100px 7%}.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:12%;margin-bottom:55px}.section-heading>p{max-width:360px;color:var(--muted);padding-bottom:6px}.treatment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 38px}.treatment-grid article{border-top:1px solid var(--line);padding:25px 0 38px}.number{font-size:.75rem;letter-spacing:.12em;color:var(--gold);display:block;margin-bottom:20px}.treatment-grid h3{min-height:58px;margin-bottom:18px}.treatment-grid p{color:var(--muted);font-size:.95rem;line-height:1.75}.menu-note{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:30px;padding:28px 0}.menu-note p{font-size:.9rem;max-width:500px;color:var(--muted)}.enhancements{background:var(--peach);padding:30px 35px;display:flex;align-items:center;gap:40px}.enhancements h3{white-space:nowrap}.enhancements p{font-size:.9rem;color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:var(--paper);border-block:1px solid var(--line)}.about-copy p{margin-bottom:23px;color:var(--muted)}.about-copy .statement{font-family:Georgia,serif;font-size:1.7rem;line-height:1.5;color:var(--gold);margin:30px 0}.signature{font-family:Georgia,serif;font-style:italic;font-size:3rem;color:var(--gold);margin-top:40px}.about-title span{font-size:.75rem}.philosophy{text-align:center;max-width:800px}.philosophy p:last-child{color:var(--muted);max-width:570px;margin:30px auto 0}.visit{background:var(--peach);display:grid;grid-template-columns:1.25fr 1fr;gap:10%}.visit .button{margin-top:35px}.visit-details{border-left:1px solid #cebcaa;padding-left:45px;align-self:center}.visit-details h3{margin-bottom:23px}.visit-details address{font-style:normal}.visit-details p{color:var(--muted);font-size:.9rem;margin:25px 0;max-width:330px}footer{max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:45px 5%}footer p,footer>small{color:var(--muted);font-size:.8rem}footer .brand span{font-size:1.9rem}footer .brand small{font-size:.65rem}.skip{position:absolute;top:-100px;left:20px;background:white;padding:10px;z-index:5}.skip:focus{top:10px}@media(min-width:1600px){.hero-photo{height:660px}}@media(max-width:850px){header{padding:22px 6%;flex-wrap:wrap}nav{order:3;width:100%;justify-content:center;gap:40px;padding-top:10px}.hero{grid-template-columns:1fr 1fr;gap:7%;padding:35px 6% 55px}h1{font-size:3.4rem}.hero-photo{height:500px;margin-left:0}.location{margin-top:35px}.hero-actions{gap:20px}.section{padding:75px 6%}.treatment-grid{grid-template-columns:repeat(2,1fr)}.about{gap:7%}.enhancements{display:block}.enhancements h3{margin-bottom:15px}.visit{gap:6%}.visit-details{padding-left:25px}footer{flex-wrap:wrap}}@media(max-width:600px){header .brand span{font-size:2rem}.header-book{font-size:.8rem;padding:11px 15px}nav{font-size:.9rem;gap:30px}.hero{grid-template-columns:1fr;gap:25px;padding-top:25px}.hero-copy{padding:20px 0 0}.eyebrow{margin-bottom:22px}h1{font-size:clamp(2.65rem,10.5vw,3.8rem)}h2{font-size:2.65rem}.intro{font-size:1rem}.hero-actions{margin-top:28px}.location{margin:28px 0 10px}.hero-photo{height:460px;margin-right:12px}.hero-photo img{object-position:50% 39%}.principles{gap:12px;padding:20px 6%;flex-direction:column;text-align:center;font-size:.85rem}.section{padding:65px 6%}.section-heading{grid-template-columns:1fr;gap:25px;margin-bottom:35px}.treatment-grid{grid-template-columns:1fr;gap:0}.treatment-grid article{padding:24px 0 30px}.treatment-grid h3{min-height:0}.number{margin-bottom:15px}.menu-note{align-items:flex-start;flex-direction:column;gap:20px}.enhancements{padding:26px}.about{grid-template-columns:1fr;gap:32px}.signature{margin-top:25px}.about-copy p:last-child{margin-bottom:0}.visit{grid-template-columns:1fr;gap:45px}.visit-details{border-left:0;border-top:1px solid #cebcaa;padding:30px 0 0}footer{justify-content:center;text-align:center;flex-direction:column;padding-bottom:35px}.hero-photo figcaption{padding-left:20px}.hero-photo figcaption span{font-size:1.3rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Final layout refinements */
.hero-photo{height:520px}.hero{padding-top:40px;padding-bottom:50px}.about-title h2{font-size:clamp(2.4rem,3.6vw,3.8rem);margin-bottom:24px}.visit-details .directions{display:table;margin:0 0 20px}nav a{display:inline-flex;align-items:center;min-height:44px}.number,.location,.about-title span{font-size:.8125rem}.brand small{font-size:.8125rem}.section-heading>p{max-width:420px}.hero-photo figcaption small{font-size:.8125rem}@media(min-width:1600px){.hero-photo{height:580px}}@media(max-width:850px){.hero-photo{height:440px}.hero-actions .button{padding-inline:20px}.about-title h2{font-size:2.7rem}}@media(max-width:600px){.hero-photo{height:390px}.hero{padding-bottom:45px}.about-title h2{font-size:2.5rem}nav{padding-top:0;gap:24px}.hero-copy{padding-top:10px}.hero-photo figcaption small{letter-spacing:.05em;font-size:.75rem}.section{padding-block:55px}.treatment-grid h3{font-size:1.5rem}.about-copy .statement{font-size:1.5rem}.visit h2{font-size:2.4rem}}@media(max-width:360px){header{gap:12px}.header-book{padding-inline:12px}.hero-actions{gap:18px}h1{font-size:2.6rem}.hero-photo{height:350px}}

.gallery{padding-top:30px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gallery-grid figure{overflow:hidden;background:var(--peach)}.gallery-grid a{display:block}.gallery-grid img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block;transition:transform .25s}.gallery-grid a:hover img{transform:scale(1.025)}@media(max-width:850px){nav{gap:25px}.gallery-grid{gap:15px}}@media(max-width:600px){nav{gap:22px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery{padding-top:15px}.gallery-grid img{aspect-ratio:3/4}}@media(max-width:360px){nav{gap:15px;font-size:.875rem}}@media(prefers-reduced-motion:reduce){.gallery-grid img{transition:none}}

/* Skincare collection */
nav{gap:24px;flex-wrap:wrap;justify-content:center}.catalog-intro{max-width:760px;margin-bottom:42px}.catalog h1{font-size:clamp(2.8rem,4.8vw,5.2rem)}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:35px}.filters button{border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:.875rem;padding:10px 19px;min-height:44px;cursor:pointer;border-radius:2px}.filters button[aria-pressed=true]{background:var(--gold);color:white;border-color:var(--gold)}.filters button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px}.product-card{min-width:0;background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column}.product-card[hidden]{display:none}.product-photo{display:block;background:#f0eeea;overflow:hidden;aspect-ratio:1}.product-photo img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .2s}.product-photo:hover img{transform:scale(1.025)}.product-info{padding:24px;display:flex;flex-direction:column;flex:1}.product-category{font-size:.7rem;letter-spacing:.09em;color:var(--gold);text-transform:uppercase;margin-bottom:12px}.product-card h3{font-size:1.45rem;line-height:1.25;margin-bottom:14px}.product-description{font-size:.9rem;color:var(--muted);line-height:1.7}.product-size{font-size:.8rem;color:var(--muted);margin-top:12px}.product-bottom{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:auto;padding-top:24px}.product-price{font-family:Georgia,serif;font-size:1.35rem}.shop-note{border-top:1px solid var(--line);margin-top:65px;padding-top:45px;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.shop-note h2{font-size:2.8rem}.shop-note p{margin-top:20px;max-width:420px;color:var(--muted);font-size:.9rem}.shop-note>div:last-child>p{font-size:.8rem}.detail-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:7%;margin-top:40px;align-items:start}.detail-image{background:var(--paper);border:1px solid var(--line);position:sticky;top:30px}.detail-image img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.detail-copy h1{font-size:clamp(2.3rem,3.5vw,3.8rem);letter-spacing:-.035em;line-height:1.15}.detail-copy .eyebrow{margin-bottom:18px}.detail-price{font-family:Georgia,serif;font-size:1.8rem;margin-top:24px}.detail-copy .intro{margin-block:24px}.detail-copy>p:not(.eyebrow):not(.detail-price){color:var(--muted)}.detail-copy .button{margin-top:30px}.checkout-note{font-size:.8rem;margin-top:16px}.detail-note{border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.detail-note h2{font-size:1.4rem;margin-bottom:12px}.detail-note p{font-size:.9rem;color:var(--muted);margin-bottom:24px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.home-products{border-top:1px solid var(--line)}
@media(max-width:1000px){header{flex-wrap:wrap}header nav{order:3;width:100%;gap:25px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-products .product-card:last-child{display:none}.product-info{padding:20px}.detail-grid{gap:5%}}
@media(max-width:600px){nav{gap:18px;font-size:.85rem}.product-grid{grid-template-columns:1fr;gap:28px}.home-products .product-card:last-child{display:flex}.catalog-intro{margin-bottom:30px}.filters{gap:8px}.filters button{padding:9px 13px}.product-card h3{font-size:1.55rem}.shop-note{grid-template-columns:1fr;gap:28px;margin-top:45px}.shop-note h2{font-size:2.5rem}.detail-grid{grid-template-columns:1fr;gap:32px;margin-top:30px}.detail-image{position:static}.detail-copy h1{font-size:2.5rem}.product-detail{padding-top:35px}.product-photo{aspect-ratio:6/5}.detail-copy .eyebrow{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.product-photo img{transition:none}}
