:root{--wine:#683b4c;--rose:#b98591;--blush:#ead5d7;--cream:#fbf7f2;--ink:#3b2d31;--gold:#b38a4a;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.7}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.header{height:88px;padding:10px clamp(20px,5vw,76px);display:flex;align-items:center;gap:34px;justify-content:space-between;background:rgba(251,247,242,.94);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);border-bottom:1px solid rgba(104,59,76,.1)}.brand img{width:150px;height:68px;object-fit:contain}.header nav{display:flex;gap:34px;font-size:15px}.header nav a{position:relative}.header nav a:after{content:"";height:1px;width:0;background:var(--wine);position:absolute;left:0;bottom:-5px;transition:.35s}.header nav a:hover:after{width:100%}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:12px 24px;border-radius:999px;background:var(--wine);color:white;font-weight:700;font-size:15px;letter-spacing:.02em;transition:transform .3s,box-shadow .3s,background .3s}.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(74,36,49,.2);background:#7b475a}.button.small{min-height:43px;padding:9px 20px}.button.ghost{border:1px solid rgba(255,255,255,.65);background:rgba(255,255,255,.12);backdrop-filter:blur(8px)}.hero{min-height:calc(100vh - 88px);position:relative;color:white;display:flex;align-items:center;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:url('assets/hero-massage.webp') center/cover;animation:heroBreath 16s ease-in-out infinite alternate}.hero-shade{background:linear-gradient(90deg,rgba(45,25,31,.78) 0%,rgba(56,29,38,.45) 48%,rgba(56,29,38,.12) 100%)}.hero-copy{position:relative;z-index:2;width:min(720px,90%);margin-left:clamp(24px,8vw,130px);padding-bottom:65px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:700;color:var(--gold);margin:0 0 18px}.hero .eyebrow{color:#f0d6aa}.hero h1,.section h2,.about h2,.contact h2,.legal h1{font-family:var(--serif);font-weight:400;line-height:1.04;margin:0}.hero h1{font-size:clamp(48px,7vw,94px);letter-spacing:-.035em}.hero h1 em{font-weight:400;color:#f0d5d9}.hero-copy>p:not(.eyebrow){max-width:610px;font-size:19px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.location-card{position:absolute;z-index:3;bottom:0;right:0;background:rgba(251,247,242,.95);color:var(--ink);padding:20px clamp(24px,4vw,58px);display:grid;min-width:min(470px,100%);font-size:13px}.location-card span{color:var(--rose);text-transform:uppercase;letter-spacing:.13em}.location-card strong{font-family:var(--serif);font-size:19px}.location-card b{color:var(--wine);font-size:12px}.section{padding:120px clamp(24px,8vw,130px)}.intro{text-align:center}.section h2,.about h2,.contact h2{font-size:clamp(38px,5vw,64px)}.lead{font-family:var(--serif);font-size:22px;max-width:740px;margin:25px auto 55px}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;text-align:left}.quick-grid a{padding:34px;background:white;border:1px solid rgba(104,59,76,.1);transition:.4s}.quick-grid a:hover{transform:translateY(-7px);box-shadow:0 18px 50px rgba(80,45,55,.1);border-color:var(--blush)}.quick-grid span{font-family:var(--serif);color:var(--rose);font-size:28px}.quick-grid h3{font-family:var(--serif);font-size:24px;margin:12px 0 2px}.quick-grid p{margin:0;font-size:14px}.treatments{padding-top:30px}.category{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8vw;margin:100px 0 50px}.category.reverse div{order:2}.category.reverse img{order:1}.category img{width:100%;height:480px;object-fit:cover;border-radius:48% 48% 8px 8px;box-shadow:0 28px 70px rgba(72,40,49,.15)}.category p:not(.eyebrow){font-family:var(--serif);font-size:21px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards article{background:white;padding:30px;border:1px solid rgba(104,59,76,.09);position:relative;transition:.4s}.cards article:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(86,47,60,.09)}.cards h3{font-family:var(--serif);font-size:25px;line-height:1.15;margin:5px 0 15px}.cards p{font-size:15px}.cards ul{list-style:none;padding:0;margin:18px 0 0}.cards li,.price{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #eee2e3;padding:8px 0;font-size:14px}.cards li b,.price b{color:var(--wine)}.cards small{color:var(--rose);font-size:12px}.ritual{grid-template-columns:repeat(6,1fr)}.ritual article{grid-column:span 2}.ritual .signature,.ritual .featured{grid-column:span 3;background:var(--wine);color:white}.ritual .signature .price b,.ritual .featured .price b{color:#f2d9aa}.wellness-note{font-size:13px;max-width:900px;margin:34px auto;text-align:center;color:#77666b}.about{background:var(--wine);color:white;padding:120px clamp(24px,8vw,130px);display:grid;grid-template-columns:minmax(300px,.85fr) 1.15fr;gap:8vw;align-items:center}.about-photo img{height:680px;width:100%;object-fit:cover;border-radius:48% 48% 4px 4px}.about-copy p{max-width:680px}.about blockquote{font-family:var(--serif);font-size:27px;line-height:1.4;margin:36px 0;padding-left:24px;border-left:1px solid #d7b27c;color:#f1d9dc}.mave{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.mave img{max-height:520px;width:100%;object-fit:cover;border-radius:4px 4px 46% 46%}.contact{padding:110px clamp(24px,8vw,130px);background:linear-gradient(135deg,#ead3d6,#f8ece7);display:grid;grid-template-columns:1.4fr .6fr;gap:8vw;align-items:center}.ghost-dark{border:1px solid var(--wine);color:var(--wine);background:transparent}.contact-details{border-left:1px solid rgba(104,59,76,.25);padding-left:40px}.contact-details h3{font-family:var(--serif);font-size:28px}.contact-details a{display:block;color:var(--wine);font-weight:700;margin-top:12px}footer{background:#302229;color:#eee0e3;padding:45px clamp(24px,8vw,130px);display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:13px}footer img{width:155px;height:90px;object-fit:contain;filter:brightness(0) invert(1);opacity:.9}footer div{display:flex;gap:25px}.mobile-bar{display:none}.legal main{max-width:850px;margin:auto;padding:90px 25px}.legal main h1{font-size:58px;margin-bottom:55px}.legal main h2{font-family:var(--serif);font-size:24px;margin-top:40px}.legal strong{color:#a12f42}.reveal{opacity:0;transform:translateY(25px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}@keyframes heroBreath{from{transform:scale(1)}to{transform:scale(1.045)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:900px){body{font-size:16px}.header{height:74px;padding:6px 18px}.brand img{width:118px;height:58px}.header nav,.header>.button{display:none}.hero{min-height:760px}.hero-copy{margin:0 22px;padding-bottom:80px}.hero h1{font-size:52px}.location-card{min-width:100%;padding:14px 22px}.section{padding:80px 22px}.quick-grid,.cards,.category,.about,.mave,.contact{grid-template-columns:1fr}.quick-grid{gap:10px}.category{gap:35px;margin:80px 0 35px}.category.reverse div{order:1}.category.reverse img{order:2}.category img{height:390px}.ritual article,.ritual .signature,.ritual .featured{grid-column:auto}.about{padding:80px 22px}.about-photo img{height:500px}.contact{padding:80px 22px}.contact-details{border-left:0;border-top:1px solid rgba(104,59,76,.25);padding:28px 0 0}.mobile-bar{position:fixed;z-index:30;bottom:0;left:0;right:0;display:grid;grid-template-columns:.7fr 1.3fr;background:white;box-shadow:0 -8px 28px rgba(40,20,25,.14)}.mobile-bar a{padding:14px;text-align:center;font-weight:700;font-size:14px}.mobile-bar a:last-child{background:var(--wine);color:white}footer{padding-bottom:85px;flex-direction:column;text-align:center}}

/* Refined rectangular image system and clearer service layout */
.header nav{font-weight:600}
.hero-shade{background:linear-gradient(270deg,rgba(45,25,31,.79) 0%,rgba(56,29,38,.48) 38%,rgba(56,29,38,.06) 70%)}
.hero-copy-right{margin-left:auto;margin-right:clamp(24px,7vw,110px);width:min(570px,44%);padding:38px;background:rgba(63,35,43,.34);backdrop-filter:blur(3px)}
.hero-copy-right>p:not(.eyebrow){font-size:18px}
.category-title{grid-template-columns:minmax(0,760px);justify-content:center;text-align:center;margin-bottom:46px}
.category-title div{max-width:760px}
.category img,.about-photo img,.mave img{border-radius:6px;box-shadow:0 22px 55px rgba(72,40,49,.12)}
.category>img{height:auto;max-height:620px;object-fit:contain}
.image-frame{background:#f3e7e2;padding:0;box-shadow:0 22px 55px rgba(72,40,49,.12);border-radius:6px;overflow:hidden}
.image-frame img{width:100%;height:auto;object-fit:contain;border-radius:0;box-shadow:none}
.care-cards article{padding:0;overflow:hidden;display:flex;flex-direction:column}
.card-image{width:100%;height:260px;object-fit:cover}
.card-body{padding:28px 30px 30px;flex:1}
.ritual{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.ritual article,.ritual .featured{grid-column:auto;min-height:250px;display:flex;flex-direction:column}
.ritual .signature{grid-column:1/-1;min-height:auto}
.ritual .price{margin-top:auto}
.about-photo{background:#744457;border-radius:6px;overflow:hidden}
.about-photo img{height:auto;max-height:720px;width:100%;object-fit:contain;box-shadow:none}
.mave img{border-radius:6px}
.phone-button{gap:9px}.phone-button svg{width:18px;height:18px;fill:currentColor}
.contact-phone{margin:18px 0 5px}.contact-phone a{display:inline;margin:0}
footer img{filter:brightness(0) invert(1);width:165px;height:95px}

@media(max-width:900px){
  .hero{align-items:flex-end;padding-bottom:92px;min-height:780px}
  .hero-image{background-position:43% center}
  .hero-shade{background:linear-gradient(0deg,rgba(45,25,31,.88) 0%,rgba(45,25,31,.4) 45%,rgba(45,25,31,0) 75%)}
  .hero-copy-right{width:auto;margin:0 20px 40px;padding:24px;background:rgba(54,29,37,.42)}
  .hero-copy-right h1{font-size:44px}
  .category-title{text-align:left;margin-top:70px}
  .category>img{height:auto;max-height:none}
  .image-frame img{height:auto}
  .ritual{grid-template-columns:1fr}
  .ritual .signature{grid-column:auto}
  .card-image{height:240px}
  .about-photo img{height:auto;max-height:none}
}

/* Third refinement: free portrait, complete service imagery, richer MAVE display */
.hero-copy-right{position:absolute;left:68%;right:3vw;width:auto;max-width:450px;margin:0;padding:28px}
.hero-copy-right h1{font-size:clamp(48px,4.7vw,68px)}
.hero-copy-right .actions{gap:9px}.hero-copy-right .button{padding:11px 18px}
.split-title span{display:block}.split-title span+span{margin-top:.12em}
.category-title p:not(.eyebrow){max-width:780px;margin:26px auto 0}
.care-cards .card-image{width:100%;height:auto;aspect-ratio:1.3/1;object-fit:contain;background:#f5ebe7}
.mave-gallery{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.5vw,20px);align-items:start}
.mave-gallery img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;object-position:center;border-radius:6px;box-shadow:0 14px 35px rgba(72,40,49,.1);background:#efe1da}

@media(max-width:1100px) and (min-width:901px){
  .hero-copy-right{left:66%;right:2vw;padding:22px}
  .hero-copy-right h1{font-size:48px}
  .hero-copy-right>p:not(.eyebrow){font-size:16px}
  .hero-copy-right .button{font-size:13px;padding:9px 13px}
}
@media(max-width:900px){
  .hero-copy-right{position:relative;left:auto;right:auto;width:auto;max-width:none;margin:0 20px 40px;padding:24px}
  .desktop-break{display:none}
  .mave-gallery{order:2}.mave-gallery img{height:auto}
}

/* Service detail pages and accessible navigation */
footer a{font-size:16px;font-weight:600}footer div{flex-wrap:wrap}.header nav{gap:20px;align-items:center}.nav-group{position:relative}.nav-group summary{cursor:pointer;font-size:15px;font-weight:600}.nav-panel{position:absolute;top:calc(100% + 18px);left:0;width:310px;background:#fff;padding:14px;box-shadow:0 12px 35px #683b4c25;display:grid;gap:10px}.nav-panel a{font-size:14px;line-height:1.4;padding:5px}.service-top{padding:70px clamp(22px,7vw,110px);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6vw;background:#f2e4df}.service-top h1{font:400 clamp(40px,4.8vw,70px)/1.08 var(--serif);overflow-wrap:anywhere}.service-top img{width:100%;height:auto;border-radius:6px}.back-link{display:inline-block;font-weight:600;color:var(--wine);margin:0 0 28px}.service-price{font-size:20px}.service-content{max-width:850px;margin:auto;padding:70px 24px}.service-content h2{font:400 32px/1.2 var(--serif);margin-top:42px}.service-content p{margin:20px 0}.service-note{font-size:14px;border-top:1px solid #d9bdc5;padding-top:25px}.service-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap;margin-top:40px}.service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.cards .linked-service{padding:0;overflow:hidden}.linked-service img{width:100%;height:300px;object-fit:contain;background:#f2e4df}.linked-service a{display:block;height:100%}.text-link{font-weight:700;color:var(--wine)}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}section[id],div[id]{scroll-margin-top:110px}
@media(max-width:1100px){.header{gap:15px}.header nav{gap:12px}.header nav>a,.nav-group summary{font-size:14px}}
@media(max-width:900px){.header{height:auto;flex-wrap:wrap;padding:10px 18px}.header nav{display:flex;width:100%;flex-wrap:wrap;gap:12px 18px;padding:8px 0}.nav-panel{position:fixed;top:auto;left:18px;right:18px;width:auto;max-height:65vh;overflow:auto}.service-top{grid-template-columns:1fr;padding:45px 22px}.service-top img{max-height:650px;object-fit:contain}.service-cards{grid-template-columns:1fr}.service-content{padding:45px 22px}.linked-service img{height:auto;max-height:450px}footer a{overflow-wrap:anywhere}}
