:root{--paper:#f5f2eb;--cream:#ebe6d9;--ink:#333b32;--muted:#6c7165;--green:#4a5840;--clay:#9c4e3c;--line:#d6d8ca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--clay);outline-offset:6px}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1,h2{letter-spacing:-.055em}h1{font-size:clamp(63px,6.8vw,99px);line-height:1.05}h2{font-size:clamp(48px,5.6vw,77px);line-height:1.07}h3{font-size:30px;line-height:1.15;letter-spacing:-.035em}h1 em,h2 em{font-weight:400;color:var(--clay)}p{line-height:1.85;font-size:14px}.eyebrow{font-size:10px;line-height:1.6;font-weight:700;letter-spacing:1.6px}.topline{background:var(--green);color:#f6f3ea;display:flex;justify-content:space-between;padding:10px 6%;font-size:10px;letter-spacing:.8px}header{background:#fff;min-height:108px;display:flex;justify-content:space-between;align-items:center;padding:8px 6%;gap:30px}.brand{width:106px;flex-shrink:0}.brand img{height:90px;object-fit:contain}header nav{display:flex;align-items:center;gap:32px;font-size:12px}header nav>a:not(.button){padding:12px 0}header nav>a:not(.button):hover{color:var(--clay)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:var(--green);color:#fff;border-radius:3px;padding:19px 24px;font-size:12px;font-weight:600;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:#35462f;transform:translateY(-2px)}.button>span{font-size:20px;line-height:1}.button.small{padding:16px 19px;gap:30px}.text-link{display:inline-block;font-size:12px;font-weight:600;line-height:1.7;border-bottom:1px solid #929984;padding-bottom:4px}.text-link:hover{color:var(--clay)}.skip{position:fixed;z-index:100;top:-100px;left:20px;background:white;padding:15px}.skip:focus{top:10px}.menu-toggle{display:none}.hero{padding:64px 6% 72px;display:grid;grid-template-columns:1.12fr .88fr;gap:7%;max-width:1600px;margin:auto;align-items:center}.hero .eyebrow{font-size:9px;letter-spacing:1.35px;display:flex;align-items:center;gap:9px;margin-bottom:32px}.dot{height:6px;width:6px;border-radius:50%;background:var(--clay);flex-shrink:0}.hero-intro{max-width:430px;font-size:15px;margin-top:28px;color:#646b5e}.hero-actions{margin-top:32px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.hero-actions>.text-link{font-size:11px}.hero-note{display:flex;align-items:center;gap:13px;margin-top:38px;color:#656e5d}.hero-note svg{width:35px;height:35px;flex-shrink:0}.hero-note p{font-size:10px;line-height:1.8}.hero-photo{position:relative;margin-bottom:25px}.hero-photo>img{aspect-ratio:1/1.12;object-fit:cover;object-position:56% 50%;border-radius:45% 45% 3px 3px}.hero-photo figcaption{position:absolute;bottom:-25px;left:-32px;background:#fff;padding:24px 30px;box-shadow:0 12px 45px #313c2910;display:flex;flex-direction:column;gap:12px}.hero-photo figcaption>span{font:italic 26px Georgia,serif;color:var(--clay);letter-spacing:-.7px}.hero-photo figcaption p{font-size:12px;line-height:1.6}.hero-photo figcaption small{font-size:9px;color:var(--muted)}.intro-strip{border-block:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:6%;padding:24px 6%;font-size:11px;letter-spacing:.3px}.intro-strip i{font-size:22px;color:var(--clay);font-style:normal}.section{padding:80px 7% 90px}.section-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:35px}.section-top>span{font:italic 20px Georgia,serif;color:var(--muted)}.section-heading{display:grid;grid-template-columns:1fr .7fr;gap:15%;align-items:end;margin-bottom:55px}.section-heading>p{color:var(--muted);max-width:380px;padding-bottom:5px}.treatment{display:grid;grid-template-columns:.95fr 1.25fr .65fr;gap:5%;padding:36px 0;border-top:1px solid var(--line)}.treatment:last-child{border-bottom:1px solid var(--line)}.number{display:block;font-size:9px;letter-spacing:1.5px;color:var(--clay);margin-bottom:14px}.treatment-subtitle{display:block;font-size:8px;letter-spacing:1.7px;margin-top:14px;color:var(--muted)}.treatment-body>p{font-size:12px;color:#62695c}.treatment-body .muted{font-size:11px;margin-top:12px;color:var(--muted)}.treatment-body details{margin-top:18px}.treatment-body summary{display:flex;align-items:center;justify-content:space-between;gap:15px;list-style:none;font-size:11px;font-weight:600;cursor:pointer;padding:7px 0}.treatment-body summary::-webkit-details-marker{display:none}.treatment-body summary span{font-size:20px;color:var(--clay);transition:transform .2s}.treatment-body details[open] summary span{transform:rotate(45deg)}.detail-content{padding-top:12px}.detail-content p{font-size:11px;color:var(--muted);margin-bottom:12px}.detail-content>a{display:block;font-size:10px;text-decoration:underline;line-height:1.7;margin-top:10px;text-underline-offset:3px}.price-table{font-size:12px}.price-table>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e0e1d8;padding:11px 0}.price-table>div:first-child{padding-top:0}.price-table strong{font-weight:600;white-space:nowrap}.price-table>div>span{color:var(--muted)}.price-table>a{display:block;margin-top:18px;font-size:10px;text-decoration:underline;text-underline-offset:4px}.about{background:var(--cream);display:grid;grid-template-columns:1fr .9fr;gap:12%;align-items:center}.about-title .eyebrow{margin-bottom:30px}.about-copy .lead{font-size:21px;line-height:1.65;letter-spacing:-.4px;margin-bottom:22px}.about-copy>p:not(.lead){font-size:12px;color:#61685a;margin-bottom:16px}.qualifications{margin:27px 0;display:grid;gap:12px}.qualifications>span{font-size:11px;display:flex;gap:11px;line-height:1.7}.qualifications>span:before{content:'✓';color:var(--green)}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:38px;max-width:460px}.source-photo{aspect-ratio:178/116;background-image:url('assets/header.jpg');background-repeat:no-repeat;border-radius:2px}.massage-photo{background-size:584.27% 137.93%;background-position:72.39% 40.91%}.room-photo{background-size:577.78% 133.33%;background-position:96.28% 90%}.photo-pair figcaption{font-size:9px;color:#6f7568;margin-top:10px}.more h2{margin-bottom:42px}.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.more-grid article{padding:40px;border:1px solid var(--line)}.more-grid h3{font-size:35px;margin:19px 0}.more-grid p{font-size:12px;color:var(--muted)}.card-label{font-size:9px;font-weight:600;letter-spacing:1.5px}.relax{background:#e7ecdf;border-color:#d9dfce!important}.relax ul{padding:0;list-style:none;margin:24px 0}.relax li{font-size:12px;line-height:1.8;padding:8px 0;border-bottom:1px solid #cdd4c2}.relax-price{display:flex;align-items:baseline;gap:10px;margin:28px 0 14px}.relax-price>span{font-size:10px;color:var(--muted)}.relax-price strong{font:400 50px Georgia,serif;letter-spacing:-2px}.relax .small-copy{font-size:10px;max-width:330px}.relax .text-link{margin-top:24px}.more-stack{display:grid;gap:25px}.more-stack article{padding:30px 35px}.more-stack h3{font-size:30px}.more-stack .text-link{font-size:11px;margin-top:18px}.contact{background:var(--green);color:#f5f1e8}.contact .eyebrow{color:#d2dcc5;margin-bottom:30px}.contact h2 em{color:#d9dfb9}.contact-heading{display:grid;grid-template-columns:1fr .65fr;gap:15%;align-items:end}.contact-heading>p{font-size:13px;color:#d8dfcf;max-width:340px}.contact-options{display:grid;grid-template-columns:1fr 1.2fr;gap:45px;margin-top:50px}.contact-options>a{border-top:1px solid #819174;padding:22px 40px 10px 0;position:relative}.contact-options>a>span{display:block;font-size:9px;letter-spacing:1.6px;margin-bottom:12px;color:#d2dcc5}.contact-options strong{font-size:clamp(17px,1.8vw,25px);font-weight:400;letter-spacing:-.6px;overflow-wrap:anywhere}.contact-options i{position:absolute;right:0;bottom:10px;font-size:25px;font-style:normal}.contact-options>a:hover strong{text-decoration:underline;text-underline-offset:6px}.location{display:grid;grid-template-columns:.6fr 1fr;gap:10%;align-items:center}.location .eyebrow{margin-bottom:28px}.location address{font-style:normal;font-size:17px;line-height:1.65;margin:26px 0 15px}.location-copy>p:not(.eyebrow){font-size:12px;color:var(--muted);max-width:270px;margin-bottom:25px}.location .button{gap:30px}.location .map-link{display:block;width:fit-content;font-size:10px;margin-top:17px}.map-wrap iframe{display:block;width:100%;height:420px;border:0;border-radius:3px;background:#e4e8dd}.map-wrap>p{font-size:8px;letter-spacing:1.2px;color:var(--muted);padding-top:13px}footer{padding:50px 7% 25px;background:#e8e4db;display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer-brand>span{font:italic 43px Georgia,serif;letter-spacing:-2px}.footer-brand>p{font-size:8px;letter-spacing:2px;margin-top:6px}footer nav{display:flex;justify-content:flex-end;gap:25px;align-items:center;font-size:10px;flex-wrap:wrap}.footer-bottom{grid-column:1/-1;border-top:1px solid #cdd0c3;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#717769}
@media(min-width:1600px){.section{padding-inline:max(7%,calc((100vw - 1400px)/2))}}
@media(max-width:1000px){header nav{gap:20px;font-size:11px}.hero{gap:6%;padding-top:50px;padding-bottom:60px}h1{font-size:70px}.hero-photo figcaption{left:-15px;padding:20px}.hero-actions{gap:20px}.hero-actions>.text-link{font-size:10px}.hero .eyebrow{font-size:8px}.section{padding:65px 6% 70px}.treatment{grid-template-columns:.9fr 1.15fr .7fr;gap:4%}.treatment h3{font-size:26px}.about{gap:7%}.more-grid article{padding:30px}.contact-options{gap:25px}.contact-options strong{font-size:18px}.location{gap:6%}.map-wrap iframe{height:390px}}
@media(max-width:740px){header{position:relative;z-index:10;min-height:90px;padding:4px 6%}.brand{width:90px}.brand img{height:80px}.menu-toggle{display:flex;align-items:center;gap:17px;border:0;background:none;color:var(--ink);padding:12px 0;font-size:12px}.menu-toggle span{font-size:24px}header nav{display:none;position:absolute;left:0;right:0;top:100%;padding:15px 6% 25px;background:#fff;box-shadow:0 14px 25px #333b3210;font-size:14px;flex-direction:column;align-items:stretch;gap:5px}header nav.is-open{display:flex}header nav .button{margin-top:10px}.hero{grid-template-columns:1fr 1fr;gap:5%}h1{font-size:55px}.hero .eyebrow{font-size:7px;letter-spacing:.8px}.hero-intro{font-size:13px}.hero-photo figcaption{padding:17px;left:-10px}.hero-photo figcaption>span{font-size:23px}.hero-note{margin-top:25px}.hero-actions .button{padding:16px;font-size:10px;gap:20px}.intro-strip{font-size:9px;gap:4%}.intro-strip i{font-size:18px}.section-heading{gap:8%;grid-template-columns:1fr 1fr}h2{font-size:52px}.treatment{grid-template-columns:1fr 1.5fr;gap:20px}.treatment-body{grid-column:2}.price-table{grid-column:2}.treatment-title{grid-row:1/3}.price-table{max-width:280px}.treatment-body details{margin-top:12px}.about{grid-template-columns:1fr;gap:35px}.about-title{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.about-title>.eyebrow{grid-column:1/-1;margin-bottom:22px}.photo-pair{margin-top:0;align-self:end}.about-copy .lead{max-width:600px}.more-grid{gap:20px}.more-grid article{padding:25px}.more-grid h3{font-size:30px}.contact-heading{gap:7%;grid-template-columns:1fr 1fr}.contact-options{gap:20px}.contact-options strong{font-size:15px}.location{grid-template-columns:.7fr 1fr;gap:7%}.map-wrap iframe{height:350px}.footer-bottom>span:nth-child(2){display:none}footer nav{font-size:9px;gap:18px}}
@media(max-width:540px){.topline{font-size:8px;padding:9px 6%;letter-spacing:.3px}.hero{display:flex;flex-direction:column;padding:40px 6% 50px;gap:35px}.hero-copy{width:100%}.hero .eyebrow{font-size:8px;margin-bottom:24px;letter-spacing:1px}h1{font-size:clamp(53px,13vw,73px);line-height:1.08}.hero-intro{font-size:14px;max-width:100%;margin-top:23px}.hero-actions{margin-top:25px;gap:20px}.hero-actions .button{font-size:11px;padding:17px 20px;gap:26px}.hero-actions>.text-link{font-size:10px}.hero-note{margin-top:25px}.hero-note p{font-size:9px}.hero-photo{width:100%;max-width:400px;margin-bottom:15px;padding-left:35px}.hero-photo>img{aspect-ratio:1.17;border-radius:44% 44% 3px 3px;object-position:center 42%}.hero-photo figcaption{left:0;bottom:-15px;padding:20px 25px;gap:10px}.hero-photo figcaption>span{font-size:25px}.intro-strip{padding:20px 6%;font-size:9px;justify-content:space-between;gap:15px;line-height:1.6}.intro-strip>span:last-child,.intro-strip>i:last-of-type{display:none}.intro-strip>span{max-width:125px}.section{padding:48px 6% 55px}.section-top{display:block;margin-bottom:25px}.section-top>span{display:none}.eyebrow{font-size:9px;letter-spacing:1.3px}h2{font-size:clamp(45px,11.5vw,60px)}.section-heading{display:block;margin-bottom:35px}.section-heading>p{font-size:12px;margin-top:22px;padding:0}.treatment{display:block;padding:28px 0}.treatment-title{margin-bottom:18px}.treatment-title .number{display:inline-block;margin:0 15px 0 0;vertical-align:middle;font-size:10px}.treatment-title h3{display:inline;vertical-align:middle;font-size:28px}.treatment-subtitle{margin-left:33px;font-size:8px}.treatment-body>p{font-size:12px}.price-table{max-width:none;margin-top:23px;font-size:12px}.price-table>a{font-size:11px;width:fit-content;margin-top:15px}.price-table>div{padding:10px 0}.treatment-body details{margin-top:14px}.treatment-body summary{font-size:11px}.detail-content p{font-size:11px}.about-title{display:block}.about-title .eyebrow{margin-bottom:25px}.photo-pair{margin-top:30px;gap:15px}.about{gap:30px}.about-copy .lead{font-size:20px}.qualifications{gap:11px}.more h2{margin-bottom:30px}.more-grid{grid-template-columns:1fr;gap:20px}.more-grid article{padding:30px}.more-grid h3{font-size:34px}.more-grid p{font-size:12px}.relax-price strong{font-size:46px}.more-stack{gap:20px}.more-stack h3{font-size:30px}.contact-heading{display:block}.contact-heading>p{margin-top:25px;font-size:12px}.contact-options{grid-template-columns:1fr;gap:23px;margin-top:35px}.contact-options>a{padding-top:18px}.contact-options strong{font-size:clamp(17px,4.6vw,22px)}.location{grid-template-columns:1fr;gap:35px}.location-copy{position:relative}.location .eyebrow{margin-bottom:25px}.location address{font-size:16px;margin-top:22px}.location-copy>p:not(.eyebrow){max-width:none}.location .button{font-size:11px;padding:16px 20px}.map-wrap iframe{height:330px}.map-wrap>p{font-size:7px;letter-spacing:1px}footer{display:block;padding:40px 6% 25px}footer nav{justify-content:flex-start;margin:30px 0;gap:15px 25px;font-size:10px}.footer-bottom{font-size:8px;gap:10px}.footer-brand>span{font-size:39px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Robustare layout och tryckytor på mobil och mindre surfplattor. */
.hero h1{font-size:clamp(48px,6vw,90px)}
.treatment-body summary{min-height:44px}.price-table>a{padding-block:8px}.text-link{padding-top:8px;padding-bottom:8px}header nav>a:not(.button){min-height:44px}footer nav>a{display:inline-flex;align-items:center;min-height:40px}
@media(max-width:740px){.hero{display:flex;flex-direction:column;gap:35px}.hero-copy{width:100%}.hero h1{font-size:clamp(42px,11vw,68px)}.hero-photo{width:100%;max-width:400px;padding-left:35px;margin-bottom:15px}.hero-photo>img{aspect-ratio:1.17;object-position:center 42%}.hero-photo figcaption{left:0;bottom:-15px;padding:20px 25px}.hero .eyebrow{font-size:8px;letter-spacing:.8px}}

/* Kontaktvägar samlas i kontaktblocket; mejladressen visas som text. */
.treatment-body>p+p{margin-top:12px}.contact-options>.contact-email{border-top:1px solid #819174;padding:22px 0 10px;min-width:0}.contact-email>span{display:block;font-size:9px;letter-spacing:1.6px;margin-bottom:12px;color:#d2dcc5}.contact-email>strong{display:block;user-select:all}.footer-brand{display:block;width:120px}.footer-brand img{width:100%;height:auto;mix-blend-mode:multiply}@media(max-width:540px){.contact-options>.contact-email{padding-top:18px}.footer-brand{width:110px}}

.arrow-icon{display:inline-block;width:1em;height:1em;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}

.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:9%;margin-top:48px;align-items:start}.contact-grid .contact-options{display:grid;grid-template-columns:1fr;gap:25px;margin-top:0}.contact-grid .contact-options strong{font-size:clamp(14px,1.65vw,23px);overflow-wrap:anywhere}.contact-form{min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label{display:block;font-size:11px;font-weight:600;line-height:1.5;margin-bottom:20px}.contact-form label>span{font-weight:400;color:#d2dcc5}.contact-form input:not([type=hidden]),.contact-form textarea,.contact-form select{display:block;width:100%;min-height:48px;background:#f5f2eb;color:var(--ink);border:1px solid #d5dccd;border-radius:3px;margin-top:8px;padding:13px 12px;font:400 16px/1.5 Manrope,Arial,sans-serif}.contact-form textarea{resize:vertical;min-height:140px}.contact-form :is(input,select,textarea):focus-visible{outline:2px solid #fff;outline-offset:3px}.contact-form .form-trap{display:none!important}.form-end{display:flex;align-items:center;gap:24px;justify-content:space-between}.form-end>p{font-size:10px;line-height:1.7;max-width:260px;color:#d2dcc5}.contact-form .button{border:1px solid #d5dccd;cursor:pointer;white-space:nowrap;background:var(--paper);color:var(--green);gap:24px;padding:16px 20px}.contact-form .button:hover{background:#e7ecdf}.thanks-page{max-width:800px;margin:0 auto;padding:60px 6%}.thanks-page>.footer-brand{margin-bottom:45px}.thanks-page>.eyebrow{margin-bottom:20px}.thanks-page>p:not(.eyebrow){max-width:510px;margin:25px 0}.thanks-page>.button{margin-top:5px}
@media(max-width:850px){.contact-grid{grid-template-columns:1fr;gap:35px}.contact-grid .contact-options{grid-template-columns:1fr 1fr}.contact-grid .contact-options strong{font-size:18px}}
@media(max-width:540px){.contact-grid{margin-top:32px}.contact-grid .contact-options{grid-template-columns:1fr;gap:23px}.form-row{grid-template-columns:1fr;gap:0}.form-end{align-items:stretch;flex-direction:column;gap:18px}.form-end>p{max-width:none}.form-end>.button{width:100%}.thanks-page{padding-top:35px}.thanks-page h1{font-size:clamp(42px,11vw,65px)}}

.about-portrait{margin-top:32px;max-width:420px}.about-portrait img{aspect-ratio:1;object-fit:cover;border-radius:3px}.contact-photo{margin-top:32px;max-width:350px}.contact-photo .source-photo{border-radius:3px}.contact-photo figcaption{font-size:9px;color:#d2dcc5;margin-top:10px}
@media(min-width:541px) and (max-width:850px){.contact-side{display:grid;grid-template-columns:1fr .75fr;gap:35px;align-items:start}.contact-grid .contact-options{grid-template-columns:1fr}.contact-photo{margin-top:0}}
@media(max-width:740px){.about-title{display:block}.about-portrait{max-width:400px;margin-top:28px}}
@media(max-width:540px){.about-portrait{max-width:none}.contact-photo{max-width:280px;margin-top:25px}}

.treatments-intro{max-width:380px}.treatments-intro>p{color:var(--muted);font-size:14px}.treatment-photo{width:168px;height:110px;aspect-ratio:auto;margin-top:22px;background-size:619.04762% 145.45455%;background-position:72.01835% 40%;border-radius:2px}.contact-side{display:block}
@media(max-width:540px){.treatments-intro{margin-top:22px;max-width:none}.treatments-intro>p{font-size:12px}.treatment-photo{margin-top:18px}}

.treatments-heading{grid-template-columns:1fr 1fr;gap:8%;align-items:center}.treatments-heading .treatments-intro{max-width:430px;margin-top:0}.treatments-heading .treatments-intro>p{margin-top:25px}.treatments-heading .treatment-photo{width:100%;height:auto;aspect-ratio:auto;margin:0;background:none}.treatment-photo img{width:100%;height:auto;border-radius:3px}
@media(max-width:540px){.treatments-heading .treatment-photo{margin-top:28px}.treatments-heading .treatments-intro>p{margin-top:22px}}

.contact-heading{display:block}.contact-heading>p{max-width:430px;margin-top:25px}

.contact-grid{grid-template-columns:.85fr 1.15fr;gap:8%;margin-top:28px}.contact-side .contact-heading{margin-bottom:32px}.contact-heading h2{font-size:clamp(45px,5vw,70px)}.contact-side .contact-heading>p{font-size:12px;margin-top:22px}.contact-grid .contact-options{gap:20px}
@media(max-width:850px){.contact-grid{grid-template-columns:1fr;gap:32px}}
@media(max-width:540px){.contact-heading h2{font-size:clamp(45px,11.5vw,60px)}.contact-grid{margin-top:22px}.contact-side .contact-heading{margin-bottom:26px}}
