:root{--green:#a97860;--blue:#a97860;--ink:#322b27;--text:#322b27;--muted:#776b65;--line:#e8ddd6;--bg:#faf7f4;--white:#fff;--spa-accent:#ba927a}body{color:#322b27;background:#fff;font-family:Arial,Helvetica,sans-serif}h1,h2,h3,.wordmark{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:0}a:hover{color:#916047}.container{max-width:1200px}.contact-strip{background:#eeedeb;color:#514b47;font-size:14px;padding:17px 0}.contact-strip .container{display:flex;justify-content:space-between;gap:20px}.site-header{height:auto;min-height:126px;background:#fff;border-bottom:1px solid #f0e9e3}.site-header .container{justify-content:space-between;gap:24px;padding-block:24px}.wordmark{color:#ba927a;font-size:38px;font-weight:700;white-space:normal}.brand-monogram{display:none}.site-nav{gap:25px;align-items:center;font-size:12px;letter-spacing:1.2px;color:#51443c}.site-nav .nav-book{padding:13px 17px;background:#a97860;color:#fff}.button,button.primary,.btn.primary{background:#a97860;border-color:#a97860;border-radius:0;color:#fff}.button:hover,button.primary:hover,.btn.primary:hover{background:#8b5d47;border-color:#8b5d47;color:white}.button.ghost{background:transparent;color:#95694f;border-color:#b38a72}.button.ghost:hover{background:#f2e8df}.footer{background:#f3ece6;color:#51443c;padding:65px 0 22px;text-align:center}.footer .wordmark{display:block;margin-bottom:22px}.footer p{margin:8px 0}.copyright{border-top:1px solid #ded0c5;margin-top:45px;padding-top:22px;display:flex;justify-content:space-between;font-size:12px}.copyright nav{display:flex;gap:22px}.welcome-hero{min-height:630px;height:calc(100vh - 178px);max-height:900px;background:linear-gradient(90deg,#0001,#0005),url('/assets/reference-hero.webp') center/cover;display:flex;align-items:center;justify-content:flex-end;padding:80px max(6vw,24px);color:white}.welcome-copy{width:490px;text-align:center}.welcome-copy h1{font-size:76px;margin-bottom:28px;color:white;line-height:1.1}.welcome-copy p{font-size:19px;line-height:1.8;margin-bottom:34px}.welcome-copy .button{background:#bc967e;border:1px solid #bc967e;padding:17px 26px}.reference-about{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:105px}.about-copy{font-size:15px;line-height:1.9}.section-label{font-size:20px;letter-spacing:2px;margin-bottom:27px;color:#89644f}.about-copy h2{font-family:Arial,sans-serif;font-size:20px;letter-spacing:2px;color:#89644f;margin-top:35px}.about-visual{align-self:center}.about-visual h2{font-size:49px;line-height:1.25;color:#ba927a;margin-bottom:30px}.about-visual img{width:100%;display:block;aspect-ratio:1.65;object-fit:cover}.spa-divider{height:380px;background:url('/assets/reference-divider.jpg') center/cover}.reference-services{padding-block:90px;text-align:center}.services-intro{max-width:720px;margin:0 auto 55px;font-size:17px;line-height:1.9}.swedish-feature{display:grid;grid-template-columns:1fr 1fr;background:#f3ede7;text-align:left;margin-bottom:70px}.swedish-feature>div{padding:54px 48px}.swedish-feature h2{color:#ac8267;font-size:43px}.swedish-feature p{font-size:16px;line-height:1.9}.swedish-feature img{width:100%;height:100%;min-height:390px;object-fit:cover}.treatment-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:36px 24px;margin-bottom:45px}.treatment-tile img{width:100%;aspect-ratio:1;object-fit:cover;transition:filter .2s}.treatment-tile:hover img{filter:brightness(.9)}.treatment-tile h3{font-size:20px;margin:16px 0 6px;color:#7d5a46}.treatment-tile span{font-size:12px}.visit-section{background:#e8ded4;padding:75px 0}.visit-section h2{text-align:center;font-size:50px;color:#9a735b;margin-bottom:50px}.visit-details{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;text-align:center}.visit-details h3{font-size:24px;color:#9a735b}.visit-details .button{margin-top:18px}.banner{background:linear-gradient(#0005,#0005),url('/assets/reference-hero.webp') center 48%/cover}.book-card,.service-option,.price-card,.panel,.login-card,.team-main section{border-color:#e8ddd6;border-radius:0;box-shadow:none}.booking-progress li[aria-current=step],.times button:hover,.calendar-days button.selected,.preference-options button.selected{border-color:#a97860;color:#805139;background:#f2e7de}.booking-progress li[aria-current=step] b{background:#a97860}.address-line{background:#f5eee8;color:#705948}.sidebar{background:#f4eee8;border-color:#e8ddd6}.sidebar .brand img{filter:sepia(1) saturate(.55)}.sidebar .store-name{font-family:Georgia,serif;font-size:20px;color:#9d7157}.nav-links a{color:#756459}.nav-links a.active{color:#8c5e43;background:#eaddd1}.nav-links a.active:before{background:#a97860}.main{background:#fbf9f6}.main h1{font-family:Georgia,'Times New Roman',serif;color:#956d55;font-size:32px}.eyebrow,.muted{color:#796b62}.panel-head,thead th{background:#faf6f1}button,.btn{border-radius:0;border-color:#dfd1c6;color:#6c5141}button:hover,.btn:hover{background:#f2e8df}.page-header{border-color:#e8ddd6}.languages .selected,.pages .active{background:#a97860;border-color:#a97860;color:white}.login-photo{content:url('/assets/reference-about.png')}.team-header{border-bottom-color:#e8ddd6;background:#f8f3ed}.team-main h1,.login-card h1{color:#9d7157}.team-main section{background:#fff}.team-main{max-width:1100px}input:focus,select:focus{outline-color:#a97860}.text-link{color:#916047}html{scroll-padding-top:25px}
@media(min-width:1600px){.welcome-copy{margin-right:8vw}}@media(max-width:1000px){.wordmark{font-size:30px}.site-nav{gap:14px;font-size:11px}.reference-about{gap:40px}.about-visual h2{font-size:39px}.treatment-gallery{grid-template-columns:repeat(3,1fr)}.swedish-feature>div{padding:32px}.welcome-copy{width:440px}}@media(max-width:700px){.container{width:calc(100% - 36px)}.contact-strip{font-size:11px;padding:12px 0}.contact-strip .container{gap:12px;align-items:center}.site-header{min-height:125px}.site-header .container{flex-direction:column;gap:18px;padding:22px 0}.site-header .wordmark{font-size:32px}.site-nav{gap:14px;font-size:10px;flex-wrap:wrap;justify-content:center}.site-nav .nav-book{padding:9px}.welcome-hero{height:auto;min-height:570px;padding:60px 25px;background-position:40% center;background-image:linear-gradient(#0004,#0005),url('/assets/reference-hero.webp')}.welcome-copy{width:100%;max-width:490px}.welcome-copy h1{font-size:54px}.welcome-copy p{font-size:17px}.reference-about{grid-template-columns:1fr;padding-block:60px;gap:45px}.about-visual h2{font-size:42px}.spa-divider{height:240px}.reference-services{padding-block:60px}.swedish-feature{grid-template-columns:1fr}.swedish-feature>div{padding:32px 24px}.swedish-feature img{min-height:0;aspect-ratio:1.4}.swedish-feature h2{font-size:36px}.treatment-gallery{grid-template-columns:repeat(2,1fr);gap:28px 18px}.treatment-tile h3{font-size:19px}.visit-section{padding:55px 0}.visit-section h2{font-size:40px}.visit-details{grid-template-columns:1fr}.copyright{flex-direction:column;align-items:center;gap:16px}.footer .wordmark{font-size:30px}.booking-content{padding-top:30px}.team-header .wordmark{font-size:24px}.main h1{font-size:27px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.treatment-tile img{transition:none}}
.fact small,.summary small,.hint,.booking-notice,.check-row small,.review-list small,.cash,.time-zone{color:#786454}.service-jump a{background:#f7f0e9;border-color:#decaba;color:#74543f}.booking-progress li{color:#806855;border-color:#e7d8ca}.booking-progress b{background:#f2e8df}.times button{color:#73513d}.calendar-days button:disabled{color:#8d837c;background:#faf7f3}.form-field input,.phone-field input{color:#46372d}.mobile-date-field input{border-color:#cbb29c;color:#46372d}.included-treatments{background:#f8f1e9;border-color:#e8d8c8;color:#715a48}.booking-progress [aria-current=step]{border-color:#a97860;color:#805139}.booking-progress [aria-current=step] b{background:#a97860;color:white}
.booking-progress.five{grid-template-columns:repeat(5,minmax(0,1fr))}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline-color:#a97860}.included-treatments p{color:#715a48}.site-header{padding:0}.button{border-radius:0}.booking-progress b{border-radius:50%}@media(max-width:700px){.booking-progress.five{gap:5px}.booking-progress.five li{flex-direction:column;align-items:flex-start;font-size:12px;line-height:1.35;min-width:0}.booking-progress.five b{min-width:26px;height:26px}}
.banner,.banner h1{color:white}.banner h1{text-shadow:0 2px 12px #0004}
/* Comfortable reading sizes across public pages, booking and management. */
html{font-size:20px}body{font-size:20px;line-height:1.75;color:#322b27}.contact-strip{font-size:16px}.site-nav{font-size:16px;letter-spacing:.6px;gap:22px}.site-nav a{min-height:48px}.site-header .container{flex-wrap:wrap}.wordmark{color:#96684f}.button,.btn,button{font-size:18px}.about-copy,.swedish-feature p,.services-intro{font-size:20px;line-height:1.85}.section-label,.about-copy h2{font-size:24px;color:#80573f}.welcome-copy p{font-size:22px;line-height:1.8}.welcome-copy{width:530px}.treatment-tile h3{font-size:24px;color:#724b35;line-height:1.4}.treatment-tile span{font-size:16px}.about-visual h2,.swedish-feature h2{color:#96684f}.footer p,.footer>a{font-size:18px}.copyright{font-size:16px}.copyright nav{flex-wrap:wrap}.visit-section{background:#fff;padding:90px 0}.visit-layout{display:grid;grid-template-columns:minmax(280px, .8fr) minmax(0,1.5fr);gap:60px;align-items:start}.visit-info h2{text-align:left;font-size:48px;line-height:1.2;color:#a66e51;margin-bottom:45px}.visit-details{display:flex;flex-direction:column;gap:25px;text-align:left}.visit-details h3{font-family:Arial,Helvetica,sans-serif;font-size:25px;font-weight:600;color:#322b27;margin-bottom:14px}.visit-details p{font-size:22px;line-height:1.65;margin-bottom:12px}.visit-phone{font-size:24px;letter-spacing:1px;padding:18px 25px;text-align:center;width:100%;max-width:350px}.visit-map{min-width:0}.visit-map iframe{display:block;width:100%;height:560px;border:1px solid #e8ddd6;background:#f3eee8}.map-directions{display:inline-block;font-size:18px;text-decoration:underline;text-underline-offset:4px;padding:14px 0;line-height:1.6}.main{font-size:18px}.main h3{font-size:23px}.main h4{font-size:21px}.store-name{line-height:1.5}.nav-links a,.languages button,.main .small,.main small{font-size:16px}.eyebrow{font-size:14px}.main th,.main td,.main input,.main select,.main button,.main .btn{font-size:17px}.nav-links a{padding-top:12px;padding-bottom:12px}.sidebar .logout{font-size:16px}.main .stat-label,.main .stat-note{font-size:16px}.team-main,.login-card{font-size:20px}.team-main .note,.login-card .note{font-size:17px}.booking-progress.five li{font-size:17px}.fact small,.summary small,.hint,.booking-notice,.check-row small,.review-list small,.cash,.time-zone{font-size:17px;color:#685344}.service-jump a{font-size:18px}.booking-progress b{min-width:32px;height:32px}.treatment-gallery{gap:38px 24px}
@media(max-width:1000px){.site-header .container{flex-direction:column;align-items:center}.site-nav{font-size:16px}.reference-about{gap:35px}.visit-layout{gap:35px;grid-template-columns:minmax(260px,.9fr) minmax(0,1.2fr)}.visit-info h2{font-size:40px}.visit-details p{font-size:20px}}
@media(max-width:700px){html{font-size:18px}body{font-size:18px}.contact-strip{font-size:15px;line-height:1.5}.contact-strip .container{flex-direction:column;align-items:center;gap:4px;text-align:center}.site-nav{font-size:15px;gap:6px 16px;line-height:1.5}.site-header .container{padding:22px 0;gap:16px}.site-nav .nav-book{padding:10px 16px}.site-header .wordmark{font-size:32px;text-align:center}.welcome-copy p{font-size:20px}.welcome-copy .button{font-size:18px}.about-copy,.swedish-feature p,.services-intro{font-size:18px;line-height:1.85}.section-label,.about-copy h2{font-size:22px}.treatment-tile h3{font-size:22px}.treatment-tile span{font-size:16px}.visit-layout{grid-template-columns:1fr;gap:35px}.visit-section{padding:55px 0}.visit-info h2{font-size:42px;margin-bottom:35px}.visit-details h3{font-size:23px}.visit-details p{font-size:20px}.visit-map iframe{height:380px}.visit-phone{font-size:24px;max-width:none}.copyright{font-size:16px}.copyright nav{justify-content:center}.booking-progress.five li{font-size:14px;line-height:1.45}.booking-progress.five{gap:7px}.booking-progress.five b{min-width:28px;height:28px}.booking-progress.five li span{overflow-wrap:anywhere}.main .mobile-bar strong{font-size:18px}.main h1{font-size:30px}.summary small,.fact small,.hint,.time-zone,.check-row small,.booking-notice{font-size:16px}}
.button,button.primary,.btn.primary,.site-nav .nav-book{background:#946247;border-color:#946247;color:#fff}.welcome-copy .button{background:#946247;border-color:#946247}.button:hover,button.primary:hover,.btn.primary:hover{background:#795039;border-color:#795039}.button.ghost{background:transparent;color:#795039;border-color:#a9856b}@media(max-width:700px){.site-nav,.contact-strip{font-size:16px}}
