@font-face{font-family:'Commissioner';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/commissioner-greek-400.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF,U+1F00-1FFF}
@font-face{font-family:'Commissioner';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/commissioner-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Commissioner';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/commissioner-greek-700.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF,U+1F00-1FFF}
@font-face{font-family:'Commissioner';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/commissioner-latin-700.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/noto-sans-greek-400.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF,U+1F00-1FFF}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/noto-sans-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/noto-sans-greek-700.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF,U+1F00-1FFF}
@font-face{font-family:'Noto Sans';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/noto-sans-latin-700.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Self-hosted fonts (Noto Serif Display, Manrope – SIL OFL) */

















:root{--paper:#fcf7f1;--paper-2:#fffdf9;--cream:#f5ede4;--ink:#2b241f;--muted:#6f6258;--taupe:#a78970;--rose:#d58e82;--sage:#99a77f;--peach:#efc0a6;--gold:#d7b171;--line:#e7d8ca;--white:#fff;--dark:#1f1d1b}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#fffdf9 0%,#f9f3ec 100%);color:var(--ink);font-family:var(--sans);font-weight:400}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}

.topbar{position:sticky;z-index:30;left:0;right:0;top:0;display:grid;grid-template-columns:260px 1fr auto;align-items:center;padding:16px 4.3vw;margin:14px 18px 0;background:linear-gradient(180deg,rgba(255,253,249,.94),rgba(248,240,232,.90));backdrop-filter:blur(18px);border:1px solid rgba(167,137,112,.18);border-radius:26px;color:#4e4034;box-shadow:0 18px 44px rgba(124,96,75,.12);position:sticky;overflow:hidden}.topbar:before{content:'';position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent)}
.logo{background:none;padding:0;position:relative;z-index:1}.logo img{width:220px;opacity:1;filter:none}.nav{display:flex;justify-content:center;gap:12px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;position:relative;z-index:1}.nav a{position:relative;padding:14px 20px;color:#56463a;border-radius:999px;border:1px solid rgba(170,145,122,.10);background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,255,255,.36));transition:background .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease,transform .28s ease}.nav a:before{content:'✦';display:inline-block;font-size:10px;line-height:1;margin-right:10px;vertical-align:middle;background:linear-gradient(135deg,var(--rose),var(--sage));-webkit-background-clip:text;-webkit-text-fill-color:transparent;opacity:.95}.nav a:after{content:'';position:absolute;left:20px;right:20px;bottom:9px;height:2px;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,var(--rose),var(--sage));transition:transform .3s ease}.nav a:hover{background:rgba(255,255,255,.92);border-color:rgba(167,137,112,.24);box-shadow:0 14px 30px rgba(124,96,75,.12);transform:translateY(-2px)}.nav a:hover:after{transform:scaleX(1)}

.book{display:inline-flex;align-items:center;gap:18px;padding:14px 24px;border-radius:999px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;font-family:var(--sans);font-weight:700;transition:transform .35s ease,background .35s ease,color .35s ease,border-color .35s ease,box-shadow .35s ease}.book span{transition:.3s}.book:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(0,0,0,.12)}.book:hover span{transform:translateX(5px)}.ghost{border:1px solid rgba(149,122,100,.28);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(247,236,226,.96));color:#4f4034;box-shadow:0 12px 24px rgba(124,96,75,.08);position:relative;z-index:1}.solid{background:linear-gradient(90deg,var(--rose),#c57f74);color:#fff;box-shadow:0 14px 28px rgba(197,127,116,.22)}.dark-btn{background:linear-gradient(90deg,#3a312c,#1e1a18)}

.hero{position:relative}.split-hero{display:grid;grid-template-columns:.9fr 1.1fr;align-items:stretch;min-height:720px;background:radial-gradient(circle at top left,#fffaf5 0%,#f7efe6 52%,#fdfaf7 100%);overflow:hidden}.hero-content{position:relative;z-index:3;padding:84px 5.5vw 72px;display:flex;flex-direction:column;justify-content:center;color:#2d2722;animation:contentLift 1.15s ease both .15s}.hero-content:before{content:"";position:absolute;inset:52px auto 52px 26px;width:6px;border-radius:999px;background:linear-gradient(180deg,var(--rose),var(--sage));opacity:.9}.kicker{font-size:11px;letter-spacing:.28em;text-transform:uppercase;margin:0 0 18px;font-weight:700}.kicker.dark{color:#8b6d5b}.hero h1,.section-head h2,.story-copy h2,.contact h2,.booking-head h2{font-family:var(--serif);font-weight:500;margin:0;letter-spacing:-.03em}.hero h1{font-size:clamp(66px,7vw,108px);line-height:.86;color:#342a24}.hero-lead{font-size:20px;line-height:1.75;max-width:580px;margin:24px 0 26px;color:#61544a}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-words{margin-top:30px;font-size:11px;letter-spacing:.24em;color:#6d5f53;background:#fff;display:inline-flex;padding:12px 18px;border-radius:999px;border:1px solid rgba(170,140,115,.16);box-shadow:0 10px 24px rgba(125,96,75,.08)}.hero-visual{position:relative;min-height:720px;padding:22px 22px 22px 0}.hero-photo{position:relative;height:100%;min-height:620px;border-radius:34px 0 0 34px;background:url('assets/studio-reformer-room-hd.webp') center/cover no-repeat;transform:scale(1.02);will-change:transform;animation:heroZoom 18s ease-in-out infinite alternate;box-shadow:0 24px 70px rgba(41,31,24,.16)}.scroll{display:none}

.benefits{display:grid;grid-template-columns:repeat(4,1fr) 1.35fr;gap:16px;align-items:stretch;padding:28px 4vw;background:linear-gradient(180deg,#fff 0%,#fcf5ee 100%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.benefits>div{text-align:center;padding:18px 14px 16px;display:flex;flex-direction:column;justify-content:center;gap:6px;background:#fff;border:1px solid #efe2d8;border-radius:24px;box-shadow:0 12px 28px rgba(123,95,73,.06)}.benefits>div:nth-child(1){background:linear-gradient(180deg,#fff 0%,#fff5f2 100%)}.benefits>div:nth-child(2){background:linear-gradient(180deg,#fff 0%,#f5f8ef 100%)}.benefits>div:nth-child(3){background:linear-gradient(180deg,#fff 0%,#fff6ed 100%)}.benefits>div:nth-child(4){background:linear-gradient(180deg,#fff 0%,#f4f7ff 100%)}.benefits span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 8px;border-radius:18px;font-size:28px;font-family:var(--serif);box-shadow:0 12px 22px rgba(118,95,77,.08)}.icon-wrap svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.icon-wrap svg .fill-dot{fill:currentColor;stroke:none}.benefits>div:nth-child(1) span{background:#ffe0db;color:#9c5d53}.benefits>div:nth-child(2) span{background:#e3edd3;color:#6f7d56}.benefits>div:nth-child(3) span{background:#fde7c8;color:#9b7748}.benefits>div:nth-child(4) span{background:#e4e9fb;color:#6172a1}.benefits strong{display:block;font-size:12px;letter-spacing:.2em;font-weight:700;color:#6d5341}.benefits small{font-family:var(--serif);font-size:24px;line-height:1;color:#43372d;font-weight:600}.benefits>p{font-family:var(--serif);font-size:38px;line-height:.95;margin:0;padding:0 10px 0 30px;color:#6b5644;display:flex;align-items:center}.benefits em{font-weight:700;color:#3d3027}

.services{padding:92px 1.6vw 82px;background:linear-gradient(180deg,#fffdf9 0%,#f8f0e8 100%)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding:0 3.6vw 34px}.section-head h2{font-size:clamp(52px,5vw,80px);line-height:.9}.section-head>p{max-width:500px;line-height:1.8;color:#6b625a}.section-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.section-pills span{background:#fff;padding:10px 14px;border-radius:999px;border:1px solid #ead6c7;font-size:11px;font-weight:700;letter-spacing:.08em;color:#725a4a;box-shadow:0 10px 22px rgba(126,95,73,.06)}
.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.service-card{position:relative;height:360px;overflow:hidden;background:#bbb;border-radius:30px;transform:translateZ(0);transition:transform .45s ease, box-shadow .45s ease;box-shadow:0 16px 34px rgba(33,25,19,.08);border:1px solid rgba(255,255,255,.55)}.service-card::before{content:'';position:absolute;inset:0;opacity:.72;mix-blend-mode:soft-light;pointer-events:none}.service-card:nth-child(1)::before{background:linear-gradient(180deg,rgba(213,142,130,.14) 0%,rgba(213,142,130,.82) 100%)}.service-card:nth-child(2)::before{background:linear-gradient(180deg,rgba(153,167,127,.14) 0%,rgba(153,167,127,.82) 100%)}.service-card:nth-child(3)::before{background:linear-gradient(180deg,rgba(239,192,166,.18) 0%,rgba(214,177,113,.82) 100%)}.service-card:nth-child(4)::before{background:linear-gradient(180deg,rgba(206,178,217,.18) 0%,rgba(160,132,181,.84) 100%)}.service-card:nth-child(5)::before{background:linear-gradient(180deg,rgba(147,180,191,.18) 0%,rgba(116,154,164,.84) 100%)}.service-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease,filter .6s ease;filter:saturate(1.08) contrast(1.03)}.service-card:hover{transform:translateY(-7px);box-shadow:0 24px 46px rgba(33,25,19,.15)}.service-card:hover img{transform:scale(1.08)}.service-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(33,25,19,.06) 0%,rgba(33,25,19,.76) 92%)}.service-copy{position:absolute;left:18px;right:18px;bottom:18px;color:#fff;text-shadow:0 4px 16px rgba(0,0,0,.22)}.service-tag{display:inline-flex;margin-bottom:10px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.92);color:#5b4638;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 8px 18px rgba(0,0,0,.10)}.service-card:nth-child(1) .service-tag{color:#8e554e}.service-card:nth-child(2) .service-tag{color:#66754c}.service-card:nth-child(3) .service-tag{color:#8c6940}.service-card:nth-child(4) .service-tag{color:#77578d}.service-card:nth-child(5) .service-tag{color:#4b6e76}.service-copy h3{font-family:var(--serif);font-size:28px;font-weight:500;margin:0 0 6px;line-height:1}.service-copy p{margin:0;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.service-copy span:last-child{position:absolute;right:0;bottom:0;font-size:24px;transition:transform .35s ease}.service-card:hover .service-copy span:last-child{transform:translateX(8px)}

.story{display:grid;grid-template-columns:1.05fr 1.15fr .6fr;min-height:580px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.story-image{overflow:hidden}.story-image img{width:100%;height:100%;object-fit:cover;animation:storyZoom 16s ease-in-out infinite alternate}.story-copy{padding:76px 5.5vw 60px;background:linear-gradient(180deg,#fff9f2 0%,#f8f0e8 100%);position:relative}.story-copy h2{font-size:clamp(52px,5vw,76px);line-height:.92;max-width:650px;color:#342a24}.story-copy>p:not(.kicker):not(.hand){line-height:1.85;color:#655f58;max-width:620px}.hand{font-family:var(--serif);font-style:italic;font-size:46px;line-height:.85;color:#ba7f74;margin:0 0 34px;display:inline-block}.micro-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin-top:30px}.micro-grid span{padding:14px 16px;border:1px solid #eadccf;border-radius:18px;background:#fff;font-size:12px;font-weight:700;color:#705d4e;box-shadow:0 10px 18px rgba(126,95,73,.05)}.story-side{position:relative;overflow:hidden;min-height:100%;display:block}.story-side-photo{background:url('assets/pilates-woman-studio-800.webp') 72% center/cover no-repeat;background-color:#d8cec2}.story-side-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,30,24,.02),rgba(40,30,24,.18) 65%,rgba(40,30,24,.32) 100%)}.story-side-overlay{position:absolute;left:22px;right:22px;bottom:24px;z-index:1;color:#fff;text-align:left}.story-side-overlay span{display:inline-block;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.22);backdrop-filter:blur(6px);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:10px;border:1px solid rgba(255,255,255,.18)}.story-side-overlay p{margin:0;font-size:22px;line-height:1.15;font-family:var(--serif);letter-spacing:.01em;text-shadow:0 6px 16px rgba(0,0,0,.24);max-width:220px}

.contact{display:grid;grid-template-columns:.82fr 1.18fr;gap:0;background:linear-gradient(180deg,#fffdf9 0%,#fbf2ea 100%)}.contact-copy{padding:90px 6vw}.contact h2{font-size:clamp(56px,5.5vw,84px);line-height:.9}.contact-copy>p:not(.kicker){max-width:510px;line-height:1.8;color:#665f58;margin:26px 0}.contact-strip{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.contact-strip span{padding:9px 14px;border-radius:999px;background:#fff;border:1px solid #ead6c7;font-size:11px;font-weight:700;color:#7a5f4d}.address{display:flex;gap:14px;align-items:flex-start;margin:30px 0;font-size:14px;line-height:1.7}.address>span{font-size:22px;color:#d58e82}.map{min-height:520px;padding:20px 20px 20px 0}.map iframe{border:0;width:100%;height:100%;filter:none;border-radius:28px;box-shadow:0 16px 36px rgba(33,25,19,.10)}

footer{display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:30px;padding:34px 5vw;background:#231f1c;color:#fff}footer img{width:170px;filter:brightness(0) invert(1)}footer nav{display:flex;justify-content:center;gap:16px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#e8ddd2}footer nav a{padding:10px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}footer p{font-family:var(--serif);font-size:18px;color:#f2dfcf}

.reveal{opacity:0;transform:translateY(28px) scale(.985);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}@keyframes heroZoom{0%{transform:scale(1.03) translate3d(0,0,0)}100%{transform:scale(1.08) translate3d(-1%,.8%,0)}}@keyframes storyZoom{0%{transform:scale(1.02) translate3d(0,0,0)}100%{transform:scale(1.08) translate3d(1%,0,0)}}@keyframes contentLift{0%{opacity:0;transform:translateY(28px)}100%{opacity:1;transform:translateY(0)}}

button.book{font-family:inherit;cursor:pointer;border:0}.contact-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.map-btn{border:1px solid #caa58a;color:#5f5145;background:#fff}
body.modal-open{overflow:hidden}.booking-modal{position:fixed;inset:0;z-index:1000;display:none}.booking-modal.open{display:block}.booking-backdrop{position:absolute;inset:0;background:rgba(24,20,17,.66);backdrop-filter:blur(8px)}.booking-dialog{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(1100px,92vw);height:min(760px,90vh);background:#f8f3ec;border:1px solid rgba(255,255,255,.5);box-shadow:0 25px 90px rgba(0,0,0,.28);display:flex;flex-direction:column;border-radius:26px;overflow:hidden}.booking-close{position:absolute;right:18px;top:12px;z-index:2;border:0;background:transparent;font-size:34px;font-weight:200;line-height:1;color:#62574e;cursor:pointer}.booking-head{display:flex;align-items:center;gap:34px;padding:24px 34px 20px;border-bottom:1px solid #ead7c8;background:linear-gradient(90deg,#fff 0%,#f7eee5 100%)}.booking-head img{width:118px}.booking-head .kicker{margin-bottom:5px}.booking-head h2{font-size:40px;line-height:1;margin:0}.booking-body{display:grid;grid-template-columns:330px 1fr;flex:1;min-height:0;background:#fff}.opening-hours{background:linear-gradient(180deg,#2d2622 0%,#1a1715 100%);color:#fff;padding:30px 28px;overflow:auto}.opening-hours h3{margin:0 0 20px;font-size:22px;letter-spacing:.04em}.opening-hours p{margin:0 0 22px;color:#d8cec5;font-size:12px;line-height:1.6}.hours-list{display:grid;gap:0}.hours-row{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.18)}.hours-row strong{font-size:12px;letter-spacing:.08em;font-weight:700;color:#f7d0c7}.hours-row span{font-size:11px;color:#eee;white-space:nowrap}.hours-row.closed span{font-weight:700;letter-spacing:.06em}.booking-frame-wrap{position:relative;min-height:0;background:#fff}#setmoreFrame{border:0;width:100%;height:100%;display:none}.booking-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:34px;color:#5d5148;background:linear-gradient(145deg,#fbf8f3,#efe5da)}.booking-placeholder strong{font-family:var(--serif);font-size:40px;font-weight:500}.booking-placeholder p{max-width:560px;line-height:1.7;font-size:14px}

@media(max-width:1100px){.topbar{grid-template-columns:170px 1fr;margin:10px 12px 0}.book.ghost{display:none}.split-hero{grid-template-columns:1fr}.hero-content{order:2;padding:44px 32px 54px}.hero-content:before{display:none}.hero-visual{order:1;min-height:440px;padding:0}.hero-photo{min-height:440px;border-radius:0}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card:last-child{grid-column:1/-1}.story{grid-template-columns:1fr 1fr}.story-side{min-height:420px}.benefits{grid-template-columns:repeat(4,1fr)}.benefits>p{grid-column:1/-1;text-align:center;padding:8px 0 0;justify-content:center}.contact{grid-template-columns:1fr}.map{min-height:440px;padding:0 20px 20px}.booking-body{grid-template-columns:1fr}}
@media(max-width:700px){.topbar{padding:14px 16px;grid-template-columns:120px 1fr;margin:8px 10px 0;border-radius:18px}.logo img{width:150px}.nav{justify-content:flex-end;gap:8px;font-size:10px;letter-spacing:.02em}.nav a{padding:10px 12px;background:rgba(255,255,255,.64)}.nav a:before{display:none}.split-hero{min-height:auto}.hero-content{padding:38px 22px 46px}.hero h1{font-size:58px}.hero-lead{font-size:18px}.hero-words{margin-top:20px;font-size:8px;padding:10px 14px}.hero-visual{min-height:320px;padding:0}.hero-photo{min-height:320px;border-radius:0}.benefits{grid-template-columns:1fr 1fr;padding:18px}.benefits>div{padding:16px 8px}.benefits small{font-size:19px}.section-head{padding:0 20px 28px;align-items:flex-start;flex-direction:column}.services{padding-top:58px}.service-grid{grid-template-columns:1fr;gap:12px;padding:0 18px}.service-card,.service-card:last-child{grid-column:auto;height:320px}.story{grid-template-columns:1fr}.story-image{height:370px}.story-copy{padding:52px 24px}.story-side{min-height:360px}.story-side-overlay{left:18px;right:18px;bottom:18px}.story-side-overlay p{font-size:20px}.micro-grid{grid-template-columns:1fr}.contact-copy{padding:64px 24px}.map{min-height:360px;padding:0 18px 18px}footer{grid-template-columns:1fr;text-align:center}footer nav{flex-wrap:wrap}.booking-dialog{width:94vw;height:88vh}.booking-body{grid-template-columns:1fr;overflow:auto}.opening-hours{padding:22px 20px}.hours-list{grid-template-columns:1fr}.booking-frame-wrap{min-height:520px}.booking-head{padding:18px 22px;gap:18px}.booking-head img{width:88px}.booking-head h2{font-size:28px}.booking-placeholder strong{font-size:30px}}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:700px){.story-side-photo{background-position:68% 32% !important;background-size:cover !important}}


/* Dedicated Pilates page */
.active-link{background:rgba(255,255,255,.92)!important;border-color:rgba(167,137,112,.25)!important;box-shadow:0 12px 28px rgba(124,96,75,.10)}
.pilates-page{background:linear-gradient(180deg,#fffdf9 0%,#f8f1ea 100%)}
.pilates-page-hero{display:grid;grid-template-columns:.92fr 1.08fr;min-height:640px;align-items:stretch;border-bottom:1px solid var(--line)}
.pilates-page-copy{padding:86px 6vw;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at top left,#fffaf5 0%,#f3e6dc 100%)}
.pilates-page-copy h1{font-family:var(--serif);font-size:clamp(64px,7vw,108px);line-height:.86;font-weight:500;margin:0;color:#342a24;letter-spacing:-.03em}
.pilates-page-copy>p:not(.kicker){max-width:620px;line-height:1.8;color:#62564c;font-size:18px}
.pilates-page-image{overflow:hidden;min-height:640px}.pilates-page-image img{width:100%;height:100%;object-fit:cover;object-position:72% center;animation:storyZoom 16s ease-in-out infinite alternate}
.pilates-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;padding:90px 7vw;background:#fff}.pilates-intro h2{font-family:var(--serif);font-size:clamp(50px,5vw,78px);line-height:.92;margin:0;color:#342a24}.pilates-intro-text p{font-size:16px;line-height:1.9;color:#655f58;margin:0 0 18px}
.principles-band{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:28px 4vw;background:#221f1c;color:#fff}.principles-band>div{padding:26px;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(255,255,255,.04)}.principles-band span{display:block;color:#e2b39f;font-size:12px;font-weight:700;letter-spacing:.15em;margin-bottom:15px}.principles-band strong{display:block;font-family:var(--serif);font-size:30px;font-weight:500;margin-bottom:8px}.principles-band small{color:#cfc5bc;line-height:1.6}
.articles-page{padding:90px 3vw 70px}.article-feature{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border-radius:30px;overflow:hidden;border:1px solid #eadccf;box-shadow:0 18px 42px rgba(85,61,44,.08);margin:0 2vw 40px}.article-feature-image{min-height:480px}.article-feature-image img{width:100%;height:100%;object-fit:cover}.article-feature-copy{padding:56px}.article-feature-copy h3{font-family:var(--serif);font-size:48px;line-height:1;margin:16px 0 18px}.article-feature-copy p,.article-feature-copy li{line-height:1.8;color:#655f58}.article-feature-copy ul{padding-left:18px}

.article-grid-page{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:26px;
  max-width:1400px;
  margin:0 auto;
  align-items:stretch
}
.article-card{
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid #eadccf;
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 16px 34px rgba(85,61,44,.08);
  min-height:100%;
  transition:transform .28s ease, box-shadow .28s ease
}
.article-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 42px rgba(85,61,44,.12)
}
.article-card img{
  width:100%;
  height:260px;
  object-fit:cover;
  display:block
}
.article-body{
  padding:22px 24px 24px;
  display:flex;
  flex-direction:column;
  gap:12px
}
.article-no{
  display:inline-flex;
  width:max-content;
  font-size:14px;
  font-weight:700;
  color:#9a6c4f;
  letter-spacing:.06em
}
.article-body h3{
  margin:0;
  font-family:var(--serif);
  font-size:40px;
  line-height:.95;
  color:#2f2721;
  font-weight:600
}
.article-body p{
  margin:0;
  color:#665b53;
  line-height:1.8;
  font-size:16px
}
.article-body a{
  margin-top:auto;
  font-weight:700;
  color:#7a5644
}
@media(max-width:900px){
  .article-grid-page{grid-template-columns:1fr}
  .article-card img{height:230px}
}

.article-label{display:inline-flex;padding:8px 12px;border-radius:999px;background:#f2e4da;color:#865f4c;font-size:10px;font-weight:700;letter-spacing:.13em}
.article-long{display:grid;grid-template-columns:1fr 1fr;min-height:520px;border-top:1px solid var(--line);background:#fff}.article-long.reverse .article-long-media{order:2}.article-long.reverse .article-long-copy{order:1}.article-long-media{overflow:hidden}.article-long-media img{width:100%;height:100%;object-fit:cover}.article-long-copy{padding:70px 7vw;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,#fffaf5 0%,#f7eee6 100%)}.article-long-copy h2{font-family:var(--serif);font-size:clamp(46px,5vw,72px);line-height:.92;margin:16px 0 20px}.article-long-copy p{line-height:1.85;color:#625950}
.pilates-faq{padding:86px 7vw;background:#fff}.pilates-faq details{border-top:1px solid #e6d8cb;padding:22px 0}.pilates-faq details:last-child{border-bottom:1px solid #e6d8cb}.pilates-faq summary{font-family:var(--serif);font-size:30px;cursor:pointer;color:#3f342c}.pilates-faq details p{max-width:900px;line-height:1.8;color:#655f58}
.pilates-cta{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:70px 7vw;background:linear-gradient(120deg,#f2dfd7,#e8eddd)}.pilates-cta h2{font-family:var(--serif);font-size:clamp(44px,4.5vw,70px);line-height:.95;margin:0;max-width:750px}
@media(max-width:900px){.pilates-page-hero,.pilates-intro,.article-feature,.article-long{grid-template-columns:1fr}.pilates-page-image{min-height:420px}.principles-band{grid-template-columns:1fr 1fr}.article-grid-page{grid-template-columns:1fr}.article-long.reverse .article-long-media,.article-long.reverse .article-long-copy{order:initial}.pilates-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.pilates-page-copy{padding:54px 24px}.pilates-page-copy h1{font-size:58px}.pilates-intro{padding:60px 24px}.principles-band{grid-template-columns:1fr;padding:20px}.article-feature{margin:0 0 28px}.article-feature-copy{padding:28px}.article-feature-copy h3{font-size:38px}.article-long-copy{padding:48px 24px}.pilates-faq{padding:60px 24px}.pilates-cta{padding:54px 24px}}


/* Pilates page — approved mockup style */
.pilates-mockup-page{background:#fffaf6;color:#2f2925}
.pm-hero{display:grid;grid-template-columns:1fr 1.15fr;min-height:620px;background:linear-gradient(90deg,#f1e3da 0%,#f5eae2 49%,#e8d4c7 49%,#e8d4c7 100%);overflow:hidden}
.pm-hero-copy{padding:70px 6vw;display:flex;flex-direction:column;justify-content:center}
.pm-eyebrow{margin:0 0 14px;color:#b87962;font-weight:700;font-size:13px;letter-spacing:.22em;text-transform:uppercase}
.pm-hero h1,.pm-what h2,.pm-section-head h2,.pm-guide-copy h2,.pm-faq h2,.pm-cta h2{font-family:var(--serif);font-weight:500;letter-spacing:-.035em;color:#26211e}
.pm-hero h1{font-size:clamp(72px,7vw,112px);line-height:.84;margin:0}
.pm-lead{font-size:18px;line-height:1.75;max-width:620px;color:#574b43;margin:24px 0}
.pm-btn{display:inline-flex;align-items:center;gap:18px;width:max-content;border:0;border-radius:999px;background:#c88f77;color:#fff;padding:15px 26px;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:0 12px 28px rgba(184,116,89,.18);transition:.3s}
.pm-btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(184,116,89,.25)}
.pm-btn-small{padding:13px 22px;margin-top:6px}
.pm-hero-points{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:32px;font-size:11px;letter-spacing:.18em;color:#67594e}.pm-hero-points i{color:#b9836c}
.pm-hero-image{position:relative;min-height:620px;overflow:hidden}
.pm-hero-image img{width:100%;height:100%;object-fit:cover;object-position:76% center;animation:storyZoom 16s ease-in-out infinite alternate}
.pm-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(232,212,199,.30),rgba(25,20,17,.02))}
.pm-script{position:absolute;right:10%;top:17%;z-index:2;color:#a4664e;font-family:var(--serif);font-size:46px;font-style:italic;line-height:.92;transform:rotate(-4deg);text-align:center}

.pm-benefits{display:grid;grid-template-columns:repeat(4,1fr);padding:18px 8vw;background:#fff;border-bottom:1px solid #eadbd0}
.pm-benefits>div{display:flex;align-items:center;justify-content:center;gap:18px;min-height:92px;border-right:1px solid #eadbd0}.pm-benefits>div:last-child{border-right:0}
.pm-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#f8e4dc;color:#b9775f;font-size:29px}
.pm-benefits strong{display:block;font-size:13px;letter-spacing:.12em}.pm-benefits small{display:block;margin-top:4px;font-family:var(--serif);font-size:20px;color:#6d6056}

.pm-what{display:grid;grid-template-columns:.85fr 1.15fr .62fr;gap:34px;padding:70px 8vw 62px;background:#fffdfb;align-items:center}
.pm-what-copy h2{font-size:clamp(54px,5vw,78px);line-height:.9;margin:0 0 22px}
.pm-what-copy>p{font-size:15px;line-height:1.85;color:#62574f;margin:0 0 14px}
.pm-what-image{height:370px;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(70,48,34,.10)}
.pm-what-image img{width:100%;height:100%;object-fit:cover}
.pm-benefit-list{background:linear-gradient(180deg,#f7f2ee,#f1e9e3);border-radius:20px;padding:28px 30px;box-shadow:0 10px 25px rgba(70,48,34,.06)}
.pm-benefit-list h3{font-family:var(--serif);font-size:34px;margin:0 0 16px;font-weight:500}
.pm-benefit-list ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}.pm-benefit-list li{position:relative;padding-left:30px;color:#554c45;font-size:14px}.pm-benefit-list li:before{content:"✓";position:absolute;left:0;top:-2px;width:20px;height:20px;border:1.5px solid #b6765e;border-radius:50%;display:grid;place-items:center;color:#b6765e;font-weight:700;font-size:12px}

.pm-articles{padding:26px 8vw 80px;background:#fffdf9}
.pm-section-head{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:28px}
.pm-section-head h2{font-size:clamp(45px,4vw,66px);line-height:.94;margin:0}.pm-section-head>p{max-width:620px;color:#64594f;line-height:1.75}
.pm-article-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.pm-card{background:#fff;border:1px solid #eadbd0;border-radius:18px;overflow:hidden;box-shadow:0 12px 28px rgba(70,48,34,.06);transition:.3s}
.pm-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(70,48,34,.11)}
.pm-card img{width:100%;height:185px;object-fit:cover}.pm-card>div{padding:18px 18px 20px}.pm-card h3{font-size:20px;line-height:1.2;margin:0 0 9px}.pm-card p{font-size:14px;line-height:1.65;color:#665c54;margin:0 0 14px}.pm-card a{font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:.08em;color:#b36f58}

.pm-guide{display:grid;grid-template-columns:1fr 1fr;min-height:500px;background:#fff;border-top:1px solid #eadbd0}
.pm-guide-reverse .pm-guide-image{order:2}.pm-guide-reverse .pm-guide-copy{order:1}
.pm-guide-image{overflow:hidden}.pm-guide-image img{width:100%;height:100%;object-fit:cover}
.pm-guide-copy{padding:70px 8vw;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,#fffaf6,#f4e8df)}
.pm-guide-copy h2{font-size:clamp(48px,5vw,76px);line-height:.9;margin:0 0 20px}.pm-guide-copy p{font-size:16px;line-height:1.85;color:#60554d}

.pm-faq{padding:78px 8vw;background:#fff}.pm-faq details{border-top:1px solid #eadbd0;padding:20px 0}.pm-faq details:last-child{border-bottom:1px solid #eadbd0}.pm-faq summary{font-family:var(--serif);font-size:30px;cursor:pointer}.pm-faq details p{max-width:900px;line-height:1.8;color:#61574f}
.pm-cta{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:68px 8vw;background:linear-gradient(110deg,#f0ddd3,#e7ecd9)}.pm-cta h2{font-size:clamp(44px,4.5vw,70px);line-height:.95;margin:0;max-width:760px}

@media(max-width:1050px){
  .pm-hero,.pm-what,.pm-guide{grid-template-columns:1fr}
  .pm-hero-copy{order:2;padding:50px 32px}.pm-hero-image{order:1;min-height:430px}
  .pm-benefits{grid-template-columns:1fr 1fr}.pm-benefits>div:nth-child(2){border-right:0}.pm-benefits>div{border-bottom:1px solid #eadbd0}
  .pm-what{padding:55px 32px}.pm-what-image{height:400px}
  .pm-article-grid{grid-template-columns:repeat(2,1fr)}
  .pm-guide-reverse .pm-guide-image,.pm-guide-reverse .pm-guide-copy{order:initial}
}
@media(max-width:650px){
  .pm-hero-image{min-height:330px}.pm-script{font-size:32px}.pm-hero h1{font-size:62px}
  .pm-benefits{grid-template-columns:1fr;padding:12px 20px}.pm-benefits>div{justify-content:flex-start;border-right:0}
  .pm-article-grid{grid-template-columns:1fr}.pm-section-head{align-items:flex-start;flex-direction:column}
  .pm-articles,.pm-faq{padding:55px 22px}.pm-guide-copy{padding:50px 24px}.pm-cta{padding:52px 24px;align-items:flex-start;flex-direction:column}
}


/* Stronger premium benefits + CTA button */
.pm-btn{
  background:linear-gradient(135deg,#c88569 0%,#b86d51 100%);
  box-shadow:0 16px 34px rgba(184,116,89,.28);
}
.pm-btn:hover{
  box-shadow:0 20px 40px rgba(184,116,89,.34);
}

.pm-benefits{
  gap:18px;
  padding:22px 8vw;
  background:linear-gradient(180deg,#fffaf7 0%,#fff 100%);
  border-bottom:1px solid #e6d4c7;
}
.pm-benefits>div{
  border-right:0 !important;
  border-bottom:0 !important;
}
.pm-benefit-card{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:18px;
  min-height:112px;
  padding:18px 24px;
  border-radius:26px;
  background:#fff;
  border:1px solid #ead7cb;
  box-shadow:0 14px 30px rgba(99,70,50,.06);
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.pm-benefit-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 40px rgba(99,70,50,.10);
  border-color:#d9b7a3;
}
.pm-icon{
  width:74px;
  height:74px;
  border-radius:24px;
  display:grid;
  place-items:center;
  font-size:29px;
  flex:0 0 74px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6), 0 12px 24px rgba(0,0,0,.05);
}
.pm-icon svg{
  width:31px;
  height:31px;
  stroke:currentColor;
  stroke-width:1.65;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.pm-icon .pm-fill{fill:currentColor;stroke:none}
.pm-b1 .pm-icon{background:linear-gradient(180deg,#f6d7d0 0%,#f3c7bd 100%);color:#a86256}
.pm-b2 .pm-icon{background:linear-gradient(180deg,#dde6c8 0%,#cfddb0 100%);color:#6e8456}
.pm-b3 .pm-icon{background:linear-gradient(180deg,#f5dfbb 0%,#efd09c 100%);color:#ab7a39}
.pm-b4 .pm-icon{background:linear-gradient(180deg,#dde2f7 0%,#cfd7f6 100%);color:#6677a9}

.pm-benefits strong{
  display:block;
  font-size:14px;
  letter-spacing:.16em;
  color:#6c5140;
}
.pm-benefits small{
  display:block;
  margin-top:6px;
  font-family:var(--serif);
  font-size:24px;
  line-height:1;
  color:#352d28;
  font-weight:500;
}

@media(max-width:1050px){
  .pm-benefits{
    grid-template-columns:1fr 1fr;
    gap:14px;
    padding:18px 32px;
  }
}
@media(max-width:650px){
  .pm-benefits{
    grid-template-columns:1fr;
    padding:16px 20px;
  }
  .pm-benefit-card{
    min-height:96px;
    padding:16px 18px;
  }
  .pm-icon{
    width:62px;
    height:62px;
    flex-basis:62px;
    border-radius:20px;
  }
  .pm-benefits small{
    font-size:22px;
  }
}


/* Top header button updated to match approved style */
.topbar .book.ghost{
  background:#c88466 !important;
  color:#fff !important;
  border:0 !important;
  border-radius:999px !important;
  padding:18px 28px !important;
  min-width:252px;
  justify-content:center;
  box-shadow:none !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}
.topbar .book.ghost span{
  font-size:16px;
  line-height:1;
}
.topbar .book.ghost:hover{
  background:#bb775a !important;
  color:#fff !important;
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(184,116,89,.22) !important;
}

@media(max-width:700px){
  .topbar .book.ghost{
    min-width:auto;
    width:auto;
    padding:15px 20px !important;
    font-size:11px !important;
    letter-spacing:.08em !important;
  }
}


/* Premium icon refresh */
.pm-benefits{
  gap:20px;
}
.pm-benefit-card{
  min-height:124px;
  padding:22px 26px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(252,248,244,.98) 100%);
  border:1px solid rgba(216,189,173,.7);
  box-shadow:0 16px 34px rgba(99,70,50,.08), inset 0 1px 0 rgba(255,255,255,.95);
}
.pm-benefit-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 44px rgba(99,70,50,.13), inset 0 1px 0 rgba(255,255,255,.95);
}
.pm-icon{
  position:relative;
  width:80px;
  height:80px;
  flex:0 0 80px;
  border-radius:26px;
  overflow:hidden;
}
.pm-icon-shell{
  position:absolute;
  inset:0;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.65);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 14px 24px rgba(0,0,0,.06);
}
.pm-icon svg{
  position:relative;
  z-index:1;
  width:34px;
  height:34px;
  stroke:currentColor;
  stroke-width:1.7;
}
.pm-b1 .pm-icon{
  background:radial-gradient(circle at 30% 25%,#f9e5df 0%,#f2cbc2 70%,#efc2b7 100%);
  color:#a45e51;
}
.pm-b2 .pm-icon{
  background:radial-gradient(circle at 30% 25%,#e7eed6 0%,#d2dfb4 70%,#c7d8a4 100%);
  color:#6d7e52;
}
.pm-b3 .pm-icon{
  background:radial-gradient(circle at 30% 25%,#f8e6c5 0%,#efd5a5 70%,#ebcb91 100%);
  color:#aa7838;
}
.pm-b4 .pm-icon{
  background:radial-gradient(circle at 30% 25%,#e5e9fb 0%,#d5dcf8 70%,#c8d2f4 100%);
  color:#6171a3;
}
.pm-benefits strong{
  font-size:14px;
  letter-spacing:.18em;
  color:#734f3d;
}
.pm-benefits small{
  margin-top:7px;
  font-size:27px;
  color:#302824;
}
@media(max-width:650px){
  .pm-benefit-card{
    min-height:106px;
    padding:18px 18px;
  }
  .pm-icon{
    width:70px;
    height:70px;
    flex-basis:70px;
    border-radius:22px;
  }
  .pm-icon-shell{
    border-radius:22px;
  }
  .pm-benefits small{
    font-size:23px;
  }
}


/* ===== v2: SEO/Blog/Local additions ===== */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-999px;top:8px;z-index:2000;background:#2b241f;color:#fff;padding:10px 16px;border-radius:999px}.skip-link:focus{left:12px}
.h1-kicker{display:block;font-family:var(--sans);font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:#8b6d5b;margin:0 0 20px;line-height:1.5}
.nav-toggle{display:none;justify-self:end;width:46px;height:46px;border-radius:14px;border:1px solid rgba(167,137,112,.25);background:#fff;cursor:pointer;position:relative;z-index:2}
.nav-toggle span{display:block;width:20px;height:2px;margin:4px auto;background:#4e4034;border-radius:2px;transition:.25s}
.nav a.active-link{background:rgba(255,255,255,.92);border-color:rgba(167,137,112,.25)}
a.service-card{display:block;color:#fff}
.service-card:focus-visible,.pm-card a:focus-visible,.book:focus-visible,.nav a:focus-visible{outline:3px solid #c88466;outline-offset:3px}

/* areas */
.areas{padding:90px 5vw;background:#fff;border-top:1px solid var(--line)}
.areas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:10px}
.area-card{position:relative;padding:34px 30px;border-radius:28px;border:1px solid #ead7cb;background:linear-gradient(180deg,#fffaf6,#f6ece4);box-shadow:0 14px 30px rgba(99,70,50,.06);transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;gap:12px}
.area-card:hover{transform:translateY(-5px);box-shadow:0 22px 40px rgba(99,70,50,.11)}
.area-card .area-pin{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:#f6d7d0;color:#a45e51;font-size:22px}
.area-card h3{font-family:var(--serif);font-size:36px;font-weight:500;margin:0;line-height:1}
.area-card p{margin:0;line-height:1.75;color:#655f58;font-size:15px}
.area-card .more{margin-top:auto;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#b36f58}
.area-card:nth-child(2) .area-pin{background:#e3edd3;color:#6f7d56}.area-card:nth-child(3) .area-pin{background:#fde7c8;color:#9b7748}

/* steps */
.steps{padding:90px 5vw;background:linear-gradient(180deg,#f8f0e8,#fffdf9)}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.step{padding:32px 28px;background:#fff;border-radius:26px;border:1px solid #ead7cb;box-shadow:0 12px 26px rgba(99,70,50,.05)}
.step b{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#c88466;color:#fff;font-size:16px;margin-bottom:16px}
.step h3{font-family:var(--serif);font-size:30px;font-weight:500;margin:0 0 10px}
.step p{margin:0;line-height:1.75;color:#655f58;font-size:15px}

/* home faq + blog teaser */
.home-faq{padding:90px 8vw;background:#fff}.home-faq details{border-top:1px solid #eadbd0;padding:20px 0}.home-faq details:last-child{border-bottom:1px solid #eadbd0}
.home-faq summary,.pm-faq summary,.article-faq summary{font-family:var(--serif);font-size:28px;cursor:pointer;color:#3f342c;list-style:none;position:relative;padding-right:40px}
.home-faq summary::-webkit-details-marker,.article-faq summary::-webkit-details-marker,.pm-faq summary::-webkit-details-marker{display:none}
.home-faq summary:after,.pm-faq summary:after,.article-faq summary:after{content:'+';position:absolute;right:4px;top:0;font-family:var(--sans);font-size:24px;color:#b36f58;transition:transform .25s}
details[open]>summary:after{transform:rotate(45deg)}
.home-faq details p{max-width:900px;line-height:1.8;color:#61574f}
.blog-teaser{padding:90px 8vw;background:#fffdf9;border-top:1px solid var(--line)}
.blog-teaser .center-btn{display:flex;justify-content:center;margin-top:34px}

/* contact info */
.contact-info{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}
.contact-info a,.contact-info div{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:18px;background:#fff;border:1px solid #ead6c7;font-size:14px;color:#4f4034}
.contact-info small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#a1806b}
.hours-inline{margin:20px 0;padding:20px 22px;border-radius:22px;background:#2d2622;color:#fff;max-width:520px}
.hours-inline h3{margin:0 0 10px;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:#f7d0c7}
.hours-inline table{width:100%;border-collapse:collapse;font-size:13px}.hours-inline td{padding:7px 0;border-bottom:1px solid rgba(255,255,255,.12)}.hours-inline td:last-child{text-align:right;color:#eee}
.hours-inline tr:last-child td{border-bottom:0}

/* footer v2 */
.footer-v2{display:block;padding:60px 5vw 26px;background:#231f1c;color:#e8ddd2}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}
.footer-v2 img{width:170px;filter:brightness(0) invert(1);margin-bottom:16px}
.footer-v2 h4{margin:0 0 14px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#f2dfcf}
.footer-v2 ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14px}
.footer-v2 ul a:hover{color:#fff;text-decoration:underline}
.footer-v2 p{font-family:inherit;font-size:14px;line-height:1.7;color:#cfc5bc;margin:0 0 8px}
.footer-v2 .tagline{font-family:var(--serif);font-size:22px;color:#f2dfcf}
.footer-bottom{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#a99d93;flex-wrap:wrap}

/* breadcrumbs */
.breadcrumbs{font-size:12px;letter-spacing:.06em;color:#8b6d5b;margin:0 0 18px}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}.breadcrumbs li+li:before{content:'/';margin-right:6px;color:#c8b2a2}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}

/* page hero (blog, local) */
.page-hero{display:grid;grid-template-columns:1fr 1fr;min-height:520px;background:linear-gradient(90deg,#f1e3da 0%,#f5eae2 100%);overflow:hidden;border-bottom:1px solid var(--line)}
.page-hero-copy{padding:70px 6vw;display:flex;flex-direction:column;justify-content:center}
.page-hero h1{font-family:var(--serif);font-weight:500;letter-spacing:-.03em;font-size:clamp(52px,6vw,92px);line-height:.9;margin:0;color:#26211e}
.page-hero .lead{font-size:18px;line-height:1.75;color:#574b43;max-width:600px;margin:22px 0 26px}
.page-hero-image{min-height:420px;overflow:hidden}.page-hero-image img{width:100%;height:100%;object-fit:cover}
.hero-btns{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.pm-btn.outline{background:#fff;color:#5f4535;border:1px solid #d7b9a6;box-shadow:none}

/* blog list */
.blog-list{padding:70px 6vw 90px;background:#fffdf9}
.blog-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.blog-filters button{font:inherit;font-size:12px;font-weight:700;letter-spacing:.06em;padding:10px 16px;border-radius:999px;border:1px solid #ead6c7;background:#fff;color:#725a4a;cursor:pointer}
.blog-filters button.on{background:#c88466;border-color:#c88466;color:#fff}
.pm-card{display:flex;flex-direction:column}.pm-card>div{display:flex;flex-direction:column;flex:1}.pm-card a.card-link{margin-top:auto}
.pm-card .card-meta{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#a1806b;font-weight:700;margin-bottom:8px}
.pm-card h3 a{color:inherit}.pm-card h3 a:hover{color:#b36f58}
.pm-card img{aspect-ratio:16/10;height:auto}

/* article */
.article-hero{padding:56px 6vw 40px;background:linear-gradient(180deg,#f5eae2,#fffaf6);border-bottom:1px solid var(--line)}
.article-hero-inner{max-width:1180px;margin:0 auto}
.article-hero h1{font-family:var(--serif);font-weight:500;letter-spacing:-.03em;font-size:clamp(44px,5.4vw,80px);line-height:.95;margin:0 0 18px;color:#26211e;max-width:980px}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12px;color:#7b6a5d;letter-spacing:.04em}
.article-meta span{display:inline-flex;align-items:center;gap:6px}
.article-cover{max-width:1180px;margin:34px auto 0;border-radius:28px;overflow:hidden;box-shadow:0 18px 40px rgba(70,48,34,.12);aspect-ratio:21/9}
.article-cover img{width:100%;height:100%;object-fit:cover}
.article-wrap{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:56px;max-width:1180px;margin:0 auto;padding:56px 6vw 70px}
.article-body{font-size:17px;line-height:1.85;color:#433a33}
.article-body h2{font-family:var(--serif);font-weight:500;font-size:clamp(32px,3vw,44px);line-height:1.05;margin:46px 0 14px;color:#2b241f;scroll-margin-top:120px}
.article-body h3{font-size:18px;margin:28px 0 8px;color:#3d3027}
.article-body p{margin:0 0 18px}.article-body ul,.article-body ol{padding-left:22px;margin:0 0 20px}.article-body li{margin-bottom:8px}
.article-body a{color:#a75f47;text-decoration:underline;text-underline-offset:3px}
.article-body strong{color:#2b241f}
.tldr{padding:24px 28px;border-radius:22px;background:#fff;border:1px solid #ead7cb;border-left:5px solid #c88466;box-shadow:0 10px 24px rgba(99,70,50,.05);margin-bottom:30px}
.tldr h2{font-family:var(--sans)!important;font-size:12px!important;letter-spacing:.2em;text-transform:uppercase;margin:0 0 10px!important;color:#b36f58!important}
.tldr ul{margin:0}.tldr li{margin-bottom:6px;font-size:16px}
.note{padding:18px 22px;border-radius:18px;background:#f4f7ee;border:1px solid #dfe7cf;font-size:15px;color:#4f5940;margin:24px 0}
.article-faq details{border-top:1px solid #eadbd0;padding:16px 0}.article-faq details:last-child{border-bottom:1px solid #eadbd0}.article-faq summary{font-size:24px}.article-faq details p{margin:12px 0 0}
.article-aside{position:relative}
.aside-sticky{position:sticky;top:120px;display:grid;gap:18px}
.aside-card{padding:24px;border-radius:22px;background:#fff;border:1px solid #ead7cb;box-shadow:0 10px 24px rgba(99,70,50,.05)}
.aside-card h3{font-family:var(--serif);font-size:28px;font-weight:500;margin:0 0 10px;line-height:1}
.aside-card p{font-size:14px;line-height:1.7;color:#655f58;margin:0 0 14px}
.aside-card.dark{background:#2d2622;color:#fff;border:0}.aside-card.dark h3{color:#fff}.aside-card.dark p{color:#d8cec5}
.toc ol{margin:0;padding-left:18px;font-size:14px;line-height:1.6;display:grid;gap:6px}.toc a{color:#7a5644}.toc a:hover{text-decoration:underline}
.related{padding:70px 6vw 90px;background:#fffdf9;border-top:1px solid var(--line)}
.related .pm-article-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

/* local page */
.local-intro{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding:90px 7vw;background:#fff}
.local-intro h2,.local-why h2{font-family:var(--serif);font-weight:500;font-size:clamp(44px,4.5vw,68px);line-height:.95;margin:0 0 20px;letter-spacing:-.03em}
.local-intro p{font-size:16px;line-height:1.9;color:#655f58;margin:0 0 16px}
.local-why{padding:80px 7vw;background:linear-gradient(180deg,#fffaf6,#f4e8df)}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:20px}
.why-grid div{padding:26px 22px;background:#fff;border-radius:22px;border:1px solid #ead7cb}
.why-grid strong{display:block;font-family:var(--serif);font-size:26px;font-weight:500;margin-bottom:8px}
.why-grid p{margin:0;font-size:14px;line-height:1.7;color:#655f58}
.local-map{display:grid;grid-template-columns:.9fr 1.1fr;background:#fff;border-top:1px solid var(--line)}
.local-map .contact-copy{padding:70px 6vw}
.local-map h2{font-family:var(--serif);font-weight:500;font-size:clamp(40px,4vw,60px);line-height:.95;margin:0 0 16px}

@media(max-width:1100px){
  .topbar{grid-template-columns:170px 1fr}
  .nav-toggle{display:block}
  .nav{position:absolute;left:0;right:0;top:100%;display:none;flex-direction:column;gap:6px;padding:14px;margin:0;background:#fffaf6;border-top:1px solid #eadbd0}
  .topbar{overflow:visible}
  .topbar.nav-open{border-radius:26px 26px 0 0}
  .topbar.nav-open .nav{display:flex;border-radius:0 0 22px 22px;box-shadow:0 18px 30px rgba(124,96,75,.14);border:1px solid rgba(167,137,112,.18);border-top:0}
  .nav a{text-align:left;font-size:13px!important;padding:14px 18px!important}
  .nav a:before{display:inline-block!important}
  .nav .nav-book{display:block;background:#c88466!important;color:#fff!important;text-align:center}
  .topbar.nav-open .nav-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .topbar.nav-open .nav-toggle span:nth-child(2){opacity:0}
  .topbar.nav-open .nav-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .areas-grid,.steps-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .article-wrap{grid-template-columns:1fr}
  .aside-sticky{position:static;grid-template-columns:1fr 1fr}
  .related .pm-article-grid{grid-template-columns:repeat(2,1fr)}
  .page-hero,.local-intro,.local-map{grid-template-columns:1fr}
  .page-hero-image{order:-1;min-height:340px}
  .why-grid{grid-template-columns:1fr 1fr}
}
@media(min-width:1101px){.nav .nav-book{display:none}}
@media(max-width:700px){
  .topbar{grid-template-columns:1fr auto}
  .nav{font-size:12px}
  .areas,.steps,.home-faq,.blog-teaser{padding:60px 22px}
  .areas-grid,.steps-grid,.why-grid{grid-template-columns:1fr}
  .contact-info{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .footer-v2{text-align:left}
  .aside-sticky{grid-template-columns:1fr}
  .related .pm-article-grid{grid-template-columns:1fr}
  .article-hero{padding:40px 22px 30px}.article-wrap{padding:40px 22px 60px}
  .article-cover{border-radius:20px;aspect-ratio:16/10}
  .article-body{font-size:16px}
  .page-hero-copy{padding:44px 24px}
  .local-intro,.local-why{padding:60px 24px}.local-map .contact-copy{padding:56px 24px}
  .blog-list{padding:50px 22px 70px}
  .hero h1{font-size:54px}
}
.booking-head .modal-title{font-family:var(--serif);font-weight:500;font-size:40px;line-height:1;margin:0;letter-spacing:-.03em;color:#2b241f}
.opening-hours .oh-title{margin:0 0 20px;font-size:22px;letter-spacing:.04em;color:#fff;font-weight:700}
@media(max-width:700px){.booking-head .modal-title{font-size:28px}}
.pm-card h3 a{font-size:inherit;text-transform:none;letter-spacing:0;font-weight:inherit;color:inherit}
.pm-card h3{font-family:var(--serif);font-size:25px;font-weight:600;line-height:1.1;color:#2b241f}


/* ===================== v3: Fonts, menu, colors, motion ===================== */
:root{--serif:"Commissioner",system-ui,sans-serif;--sans:"Noto Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
--rose-bg:#fbe7e2;--rose-bd:#eebcb0;--rose-ink:#9c5a4d;
--sage-bg:#ebf1e1;--sage-bd:#c6d6ab;--sage-ink:#5f7146;
--peach-bg:#fcecd8;--peach-bd:#efcc9e;--peach-ink:#94693a;
--lav-bg:#efeaf7;--lav-bd:#cfc3e6;--lav-ink:#6c5a8e;
--sky-bg:#e5f0f3;--sky-bd:#b0cdd7;--sky-ink:#4a6d78;
--ease:cubic-bezier(.22,1,.36,1)}
body{font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-weight:500}
.hero h1,.section-head h2,.story-copy h2,.contact h2,.pm-hero h1,.pm-what h2,.pm-section-head h2,.pm-guide-copy h2,.pm-faq h2,.pm-cta h2,.page-hero h1,.article-hero h1,.local-intro h2,.local-why h2,.local-map h2{letter-spacing:-.025em;font-weight:500}
.hero h1{font-size:clamp(56px,6.2vw,96px);line-height:.95}
.pm-hero h1{line-height:.95;font-size:clamp(60px,6.4vw,100px)}
.section-head h2,.story-copy h2,.contact h2{line-height:1}
.hand,.pm-script{font-family:var(--serif);font-style:italic;font-weight:400}
.benefits small,.pm-benefits small{font-weight:500;font-size:22px}
.pm-card h3{font-size:22px;font-weight:500;line-height:1.2}
.service-copy h3{font-size:25px}
.home-faq summary,.pm-faq summary,.article-faq summary{font-size:23px}
.booking-head .modal-title{font-size:36px}

/* ---------- MENU: pill with moving highlight ---------- */
.topbar{transition:padding .45s var(--ease),margin .45s var(--ease),box-shadow .45s var(--ease),background .45s var(--ease)}
.topbar .logo img{transition:width .45s var(--ease)}
.topbar.scrolled{padding-top:9px;padding-bottom:9px;margin-top:8px;background:rgba(255,252,248,.82);box-shadow:0 14px 40px rgba(124,96,75,.16)}
.topbar.scrolled .logo img{width:170px}
@media(min-width:1101px){
  .nav{justify-self:center;gap:4px;padding:6px;border-radius:999px;background:rgba(245,236,226,.75);border:1px solid rgba(167,137,112,.16);box-shadow:inset 0 1px 2px rgba(124,96,75,.08)}
  .nav a{background:none!important;border:0!important;box-shadow:none!important;transform:none!important;padding:12px 22px;color:#6a584b;font-size:12px;letter-spacing:.14em;font-weight:700;z-index:1;transition:color .3s ease}
  .nav a:before,.nav a:after{display:none}
  .nav a:hover,.nav a.active-link{color:#2b241f}
  .nav a.active-link{color:#b0644d}
  .nav-pill{position:absolute;top:6px;bottom:6px;left:0;width:0;border-radius:999px;background:#fff;box-shadow:0 6px 18px rgba(124,96,75,.16),inset 0 0 0 1px rgba(200,132,102,.18);transition:left .45s var(--ease),width .45s var(--ease),opacity .3s;opacity:0;z-index:0;pointer-events:none}
  .nav-pill:after{content:'';position:absolute;left:50%;bottom:5px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:linear-gradient(135deg,var(--rose),var(--sage))}
  .nav.has-pill .nav-pill{opacity:1}
}
/* button shine */
.book.solid,.topbar .book.ghost,.pm-btn{position:relative;overflow:hidden;isolation:isolate}
.book.solid:before,.topbar .book.ghost:before,.pm-btn:before{content:'';position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left .8s var(--ease);z-index:-1;pointer-events:none}
.book.solid:hover:before,.topbar .book.ghost:hover:before,.pm-btn:hover:before{left:130%}
.topbar .book.ghost{background:linear-gradient(135deg,#d0907a,#b86d51)!important}

/* mobile full-screen menu */
@media(max-width:1100px){
  .topbar{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(255,252,248,.97)}
  .logo,.nav-toggle{position:relative;z-index:3}
  .nav-pill{display:none}
  .nav,.topbar.nav-open .nav{position:fixed;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:6px;padding:110px 28px 40px;margin:0;border:0;border-radius:0;
    background:radial-gradient(circle at 15% 20%,#fbe7e2 0,transparent 45%),radial-gradient(circle at 85% 80%,#ebf1e1 0,transparent 45%),#fffaf5;
    box-shadow:none;opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .4s var(--ease),transform .5s var(--ease),visibility 0s .5s;z-index:1}
  .topbar.nav-open .nav{opacity:1;visibility:visible;transform:none;transition:opacity .4s var(--ease),transform .5s var(--ease)}
  .topbar.nav-open{border-radius:26px}
  .nav a{font-family:var(--serif)!important;font-size:clamp(30px,8vw,44px)!important;letter-spacing:-.01em!important;text-transform:none!important;font-weight:500!important;color:#2b241f!important;background:none!important;border:0!important;border-bottom:1px solid #eadbd0!important;border-radius:0!important;padding:16px 4px!important;
    opacity:0;transform:translateY(18px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
  .nav a:before{content:'0' counter(navi);counter-increment:navi;font-family:var(--sans);font-size:11px!important;letter-spacing:.2em;margin-right:16px;vertical-align:super;-webkit-text-fill-color:#b36f58;background:none}
  .nav a:after{display:none}
  .nav{counter-reset:navi}
  .nav a.active-link{color:#b0644d!important}
  .nav .nav-book{border:0!important;margin-top:22px;border-radius:999px!important;font-family:var(--sans)!important;font-size:13px!important;letter-spacing:.14em!important;text-transform:uppercase!important;font-weight:700!important;padding:18px!important;color:#fff!important;background:linear-gradient(135deg,#d0907a,#b86d51)!important;text-align:center}
  .nav .nav-book:before{display:none!important}
  .topbar.nav-open .nav a{opacity:1;transform:none}
  .topbar.nav-open .nav a:nth-of-type(1){transition-delay:.08s}.topbar.nav-open .nav a:nth-of-type(2){transition-delay:.14s}.topbar.nav-open .nav a:nth-of-type(3){transition-delay:.2s}.topbar.nav-open .nav a:nth-of-type(4){transition-delay:.26s}.topbar.nav-open .nav a:nth-of-type(5){transition-delay:.32s}
  body.menu-open{overflow:hidden}
  .nav-toggle{border-radius:50%;background:#fff;box-shadow:0 6px 16px rgba(124,96,75,.12)}
}

/* ---------- COLORS in text boxes ---------- */
.section-pills span:nth-child(1),.contact-strip span:nth-child(1){background:var(--rose-bg);border-color:var(--rose-bd);color:var(--rose-ink)}
.section-pills span:nth-child(2),.contact-strip span:nth-child(2){background:var(--sage-bg);border-color:var(--sage-bd);color:var(--sage-ink)}
.section-pills span:nth-child(3),.contact-strip span:nth-child(3){background:var(--peach-bg);border-color:var(--peach-bd);color:var(--peach-ink)}
.section-pills span:nth-child(4){background:var(--lav-bg);border-color:var(--lav-bd);color:var(--lav-ink)}
.section-pills span:nth-child(5){background:var(--sky-bg);border-color:var(--sky-bd);color:var(--sky-ink)}
.hero-words{background:linear-gradient(90deg,var(--rose-bg),var(--peach-bg),var(--sage-bg));border-color:var(--peach-bd);color:#6a5444;font-weight:700}

.micro-grid span{border-left:4px solid;transition:transform .3s var(--ease)}
.micro-grid span:hover{transform:translateX(4px)}
.micro-grid span:nth-child(1){background:var(--rose-bg);border-color:var(--rose-bd);border-left-color:#d58e82;color:var(--rose-ink)}
.micro-grid span:nth-child(2){background:var(--sage-bg);border-color:var(--sage-bd);border-left-color:#99a77f;color:var(--sage-ink)}
.micro-grid span:nth-child(3){background:var(--peach-bg);border-color:var(--peach-bd);border-left-color:#d7b171;color:var(--peach-ink)}
.micro-grid span:nth-child(4){background:var(--lav-bg);border-color:var(--lav-bd);border-left-color:#a593c9;color:var(--lav-ink)}

.area-card:nth-child(1){background:linear-gradient(160deg,#fff 0%,var(--rose-bg) 100%);border-color:var(--rose-bd)}
.area-card:nth-child(2){background:linear-gradient(160deg,#fff 0%,var(--sage-bg) 100%);border-color:var(--sage-bd)}
.area-card:nth-child(3){background:linear-gradient(160deg,#fff 0%,var(--peach-bg) 100%);border-color:var(--peach-bd)}
.area-card:nth-child(2) .more{color:var(--sage-ink)}.area-card:nth-child(3) .more{color:var(--peach-ink)}

.step{position:relative;overflow:hidden;border-top:5px solid}
.step:nth-child(1){background:linear-gradient(180deg,var(--rose-bg),#fff 70%);border-color:var(--rose-bd);border-top-color:#d58e82}
.step:nth-child(2){background:linear-gradient(180deg,var(--sage-bg),#fff 70%);border-color:var(--sage-bd);border-top-color:#99a77f}
.step:nth-child(3){background:linear-gradient(180deg,var(--peach-bg),#fff 70%);border-color:var(--peach-bd);border-top-color:#d7b171}
.step:nth-child(2) b{background:#8d9c6f}.step:nth-child(3) b{background:#c49a57}
.step{transition:transform .4s var(--ease),box-shadow .4s var(--ease)}.step:hover{transform:translateY(-6px);box-shadow:0 22px 40px rgba(99,70,50,.12)}

.pm-card{border-top:4px solid;--c-bg:var(--rose-bg);--c-bd:var(--rose-bd);--c-ink:var(--rose-ink);border-color:var(--c-bd)}
.pm-card>div{background:linear-gradient(180deg,#fff 0%,var(--c-bg) 100%)}
.pm-card .card-meta,.pm-card a.card-link{color:var(--c-ink)}
.pm-article-grid .pm-card:nth-child(4n+1){--c-bg:var(--rose-bg);--c-bd:var(--rose-bd);--c-ink:var(--rose-ink)}
.pm-article-grid .pm-card:nth-child(4n+2){--c-bg:var(--sage-bg);--c-bd:var(--sage-bd);--c-ink:var(--sage-ink)}
.pm-article-grid .pm-card:nth-child(4n+3){--c-bg:var(--peach-bg);--c-bd:var(--peach-bd);--c-ink:var(--peach-ink)}
.pm-article-grid .pm-card:nth-child(4n+4){--c-bg:var(--lav-bg);--c-bd:var(--lav-bd);--c-ink:var(--lav-ink)}
.pm-card img{transition:transform 1s var(--ease)}.pm-card:hover img{transform:scale(1.06)}
.pm-card>a:first-child{display:block;overflow:hidden}
.pm-card a.card-link{display:inline-flex;gap:6px;transition:gap .3s var(--ease)}.pm-card:hover a.card-link{gap:12px}

.contact-info a:nth-child(1),.contact-info div:nth-child(1){background:var(--rose-bg);border-color:var(--rose-bd)}
.contact-info a:nth-child(2),.contact-info div:nth-child(2){background:var(--sage-bg);border-color:var(--sage-bd)}
.contact-info a{transition:transform .3s var(--ease),box-shadow .3s}.contact-info a:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(99,70,50,.1)}
.hours-inline{background:linear-gradient(145deg,#3a2f2a,#231d1a);box-shadow:0 18px 36px rgba(35,29,26,.2)}

.home-faq details,.pm-faq details,.article-faq details{border:1px solid #eadbd0;border-left:4px solid var(--rose-bd);border-radius:18px;padding:18px 22px;margin-bottom:12px;background:#fff;transition:background .35s,border-color .35s,box-shadow .35s}
.home-faq details:last-child,.pm-faq details:last-child,.article-faq details:last-child{border-bottom:1px solid #eadbd0}
.home-faq details:nth-of-type(3n+2),.pm-faq details:nth-of-type(3n+2),.article-faq details:nth-of-type(3n+2){border-left-color:var(--sage-bd)}
.home-faq details:nth-of-type(3n+3),.pm-faq details:nth-of-type(3n+3),.article-faq details:nth-of-type(3n+3){border-left-color:var(--peach-bd)}
.home-faq details[open],.pm-faq details[open],.article-faq details[open]{background:linear-gradient(135deg,var(--rose-bg),#fff 80%);box-shadow:0 12px 26px rgba(99,70,50,.07)}
.home-faq details[open]:nth-of-type(3n+2),.pm-faq details[open]:nth-of-type(3n+2),.article-faq details[open]:nth-of-type(3n+2){background:linear-gradient(135deg,var(--sage-bg),#fff 80%)}
.home-faq details[open]:nth-of-type(3n+3),.pm-faq details[open]:nth-of-type(3n+3),.article-faq details[open]:nth-of-type(3n+3){background:linear-gradient(135deg,var(--peach-bg),#fff 80%)}
details>p{animation:faqIn .45s var(--ease)}@keyframes faqIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

.tldr{background:linear-gradient(135deg,var(--rose-bg),#fff 75%);border-color:var(--rose-bd)}
.note{background:linear-gradient(135deg,var(--sage-bg),#fff);border-color:var(--sage-bd);border-left:4px solid #99a77f}
.toc{background:linear-gradient(180deg,#fff,var(--peach-bg));border-color:var(--peach-bd)}
.aside-card:not(.dark):not(.toc){background:linear-gradient(180deg,#fff,var(--sage-bg));border-color:var(--sage-bd)}
.aside-card.dark{background:linear-gradient(150deg,#3a2f2a,#231d1a)}

.why-grid div{border-top:4px solid;transition:transform .4s var(--ease)}.why-grid div:hover{transform:translateY(-5px)}
.why-grid div:nth-child(1){background:var(--rose-bg);border-color:var(--rose-bd)}
.why-grid div:nth-child(2){background:var(--sage-bg);border-color:var(--sage-bd)}
.why-grid div:nth-child(3){background:var(--peach-bg);border-color:var(--peach-bd)}
.why-grid div:nth-child(4){background:var(--lav-bg);border-color:var(--lav-bd)}

.pm-guide:nth-of-type(4n+1) .pm-guide-copy{background:linear-gradient(160deg,#fffaf6,var(--rose-bg))}
.pm-guide-copy{background:linear-gradient(160deg,#fffaf6,var(--sage-bg))}
#guide-mat .pm-guide-copy{background:linear-gradient(160deg,#fffaf6,var(--sage-bg))}
#guide-reformer .pm-guide-copy{background:linear-gradient(160deg,#fffaf6,var(--rose-bg))}
#guide-clinical .pm-guide-copy{background:linear-gradient(160deg,#fffaf6,var(--sky-bg))}
#guide-pregnancy .pm-guide-copy{background:linear-gradient(160deg,#fffaf6,var(--lav-bg))}
.pm-benefit-list{background:linear-gradient(160deg,var(--peach-bg),var(--rose-bg));border:1px solid var(--peach-bd)}
.story-copy{background:linear-gradient(160deg,#fff9f2 0%,var(--rose-bg) 100%)}
.blog-filters button:nth-child(2):not(.on){background:var(--rose-bg);border-color:var(--rose-bd)}
.blog-filters button:nth-child(3):not(.on){background:var(--sage-bg);border-color:var(--sage-bd)}
.blog-filters button:nth-child(4):not(.on){background:var(--peach-bg);border-color:var(--peach-bd)}
.blog-filters button:nth-child(5):not(.on){background:var(--lav-bg);border-color:var(--lav-bd)}
.blog-filters button{transition:transform .25s var(--ease)}.blog-filters button:hover{transform:translateY(-2px)}

/* ---------- MOTION ---------- */
/* word-by-word headings */
.split .w{display:inline-block;overflow:hidden;vertical-align:top;padding:.12em .02em .16em;margin:-.12em -.02em -.16em}
.split .w>span{display:inline-block;transform:translateY(110%);transition:transform .9s var(--ease);transition-delay:calc(var(--i) * 55ms)}
.split.words-in .w>span{transform:none}
/* marquee */
.marquee{overflow:hidden;background:linear-gradient(90deg,#2d2622,#3b302a);color:#f6e2d6;padding:18px 0;border-top:1px solid #1d1816;border-bottom:1px solid #1d1816}
.marquee-track{display:flex;width:max-content;animation:marquee 38s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee span{font-family:var(--serif);font-size:clamp(22px,2.4vw,34px);font-style:italic;white-space:nowrap;padding:0 26px;display:inline-flex;align-items:center;gap:52px}
.marquee span:after{content:'✦';font-style:normal;font-size:14px;color:#d58e82}
.marquee span:nth-child(3n+2):after{color:#b9c79c}.marquee span:nth-child(3n+3):after{color:#e6c38a}
@keyframes marquee{to{transform:translateX(-50%)}}
/* parallax images get room to move */
[data-parallax]{will-change:translate}
.pm-guide-image img,.page-hero-image img,.story-image img{scale:1.12}
/* scroll progress */
.scroll-progress{position:fixed;left:0;top:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,#d58e82,#d7b171,#99a77f);z-index:1500;pointer-events:none}
/* floating soft blobs behind hero text */
.hero-content:after,.pm-hero-copy:after,.page-hero-copy:after{content:'';position:absolute;z-index:-1;width:340px;height:340px;border-radius:50%;left:-80px;bottom:-60px;background:radial-gradient(circle,rgba(213,142,130,.22),transparent 65%);animation:blob 14s ease-in-out infinite alternate;pointer-events:none}
.pm-hero-copy,.page-hero-copy{position:relative;z-index:1}
@keyframes blob{0%{transform:translate(0,0) scale(1)}100%{transform:translate(60px,-40px) scale(1.15)}}
/* icon float */
.benefits .icon-wrap,.pm-icon{animation:floaty 5s ease-in-out infinite}
.benefits>div:nth-child(2) .icon-wrap,.pm-b2 .pm-icon{animation-delay:-1.2s}.benefits>div:nth-child(3) .icon-wrap,.pm-b3 .pm-icon{animation-delay:-2.4s}.benefits>div:nth-child(4) .icon-wrap,.pm-b4 .pm-icon{animation-delay:-3.6s}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.benefits>div{transition:transform .4s var(--ease),box-shadow .4s}.benefits>div:hover{transform:translateY(-6px);box-shadow:0 20px 36px rgba(123,95,73,.12)}
/* better reveal */
.reveal{transform:translateY(36px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.area-card .area-pin{transition:transform .5s var(--ease)}.area-card:hover .area-pin{transform:rotate(-12deg) scale(1.1)}
@media (prefers-reduced-motion: reduce){.split .w>span{transform:none!important}.marquee-track{animation:none!important}[data-parallax]{translate:none!important}}
html,body{overflow-x:clip}
@media(max-width:1100px){.nav a.active-link{box-shadow:none!important}}
@media(max-width:1050px){.pm-hero{background:linear-gradient(180deg,#f5eae2,#f1e3da)}.pm-script{right:6%;top:10%;font-size:30px;color:#fff;text-shadow:0 4px 18px rgba(0,0,0,.35)}}
.pm-guide-video{position:relative;background:#e9ddd2}
.pm-guide-video video{width:100%;height:100%;object-fit:cover;display:block;min-height:500px}
@media(max-width:1050px){.pm-guide-video video{min-height:0;aspect-ratio:1/1}}

/* ===== v4: vivid colors, smaller map, script text ===== */
:root{
--rose-bg:#ffd9cf;--rose-bd:#f2876f;--rose-ink:#b23d24;
--sage-bg:#d6efc2;--sage-bd:#7fbf55;--sage-ink:#2f7417;
--peach-bg:#ffe2b0;--peach-bd:#f4a42a;--peach-ink:#9a5600;
--lav-bg:#e4d8ff;--lav-bd:#9373ea;--lav-ink:#5130b0;
--sky-bg:#cdeefb;--sky-bd:#2eaedb;--sky-ink:#0e6d8e}
.micro-grid span:nth-child(1){border-left-color:#e8664a}
.micro-grid span:nth-child(2){border-left-color:#5ea93a}
.micro-grid span:nth-child(3){border-left-color:#f29a12}
.micro-grid span:nth-child(4){border-left-color:#7b57e0}
.step:nth-child(1){border-top-color:#e8664a}.step:nth-child(2){border-top-color:#5ea93a}.step:nth-child(3){border-top-color:#f29a12}
.step b{background:#e0614a}.step:nth-child(2) b{background:#4f9a2e}.step:nth-child(3) b{background:#e98f0c}
.area-card:nth-child(1) .area-pin{background:#ffc3b5;color:#b23d24}.area-card:nth-child(2) .area-pin{background:#bfe6a2;color:#2f7417}.area-card:nth-child(3) .area-pin{background:#ffd48a;color:#9a5600}
.benefits>div:nth-child(1) span{background:#ffc3b5;color:#b23d24}.benefits>div:nth-child(2) span{background:#bfe6a2;color:#2f7417}.benefits>div:nth-child(3) span{background:#ffd48a;color:#9a5600}.benefits>div:nth-child(4) span{background:#cfdcff;color:#2f4fb0}
.benefits>div:nth-child(1){background:linear-gradient(180deg,#fff,#ffe3db)}.benefits>div:nth-child(2){background:linear-gradient(180deg,#fff,#e2f4d3)}.benefits>div:nth-child(3){background:linear-gradient(180deg,#fff,#ffeccb)}.benefits>div:nth-child(4){background:linear-gradient(180deg,#fff,#e1e8ff)}
.pm-b1 .pm-icon{background:radial-gradient(circle at 30% 25%,#ffe1d9,#ffb8a6);color:#b23d24}
.pm-b2 .pm-icon{background:radial-gradient(circle at 30% 25%,#e3f5d2,#a9dc85);color:#2f7417}
.pm-b3 .pm-icon{background:radial-gradient(circle at 30% 25%,#ffebc4,#ffc664);color:#9a5600}
.pm-b4 .pm-icon{background:radial-gradient(circle at 30% 25%,#e4e9ff,#b3c3ff);color:#2f4fb0}
.marquee span:after{color:#ff7a5c}.marquee span:nth-child(3n+2):after{color:#8fd16a}.marquee span:nth-child(3n+3):after{color:#ffc04a}
.scroll-progress{background:linear-gradient(90deg,#e8664a,#f29a12,#5ea93a)}
.hours-inline h3,.hours-row strong{color:#ffb39f}

/* smaller map */
.contact{grid-template-columns:1.15fr .85fr;align-items:center}
.map{min-height:0;height:380px;padding:20px 30px 20px 0}
.local-map{grid-template-columns:1.15fr .85fr;align-items:center}
@media(max-width:1100px){.contact,.local-map{grid-template-columns:1fr}.map{height:320px;padding:0 20px 20px}}
@media(max-width:700px){.map{height:260px;padding:0 18px 18px}}

/* Pilates hero script: left side, dark, readable */
.pm-script{left:7%;right:auto;top:12%;color:#1d1916;text-shadow:0 1px 0 rgba(255,255,255,.6),0 6px 22px rgba(255,255,255,.75);transform:rotate(-4deg);text-align:left;font-weight:500}
@media(max-width:1050px){.pm-script{left:6%;right:auto;top:10%;font-size:32px;color:#1d1916;text-shadow:0 1px 0 rgba(255,255,255,.6),0 6px 22px rgba(255,255,255,.8)}}

/* ===== v5: palette from reference (teal / purple / coral / blue / orange), slightly lighter ===== */
:root{
--rose-bg:#feebe4;--rose-bd:#f9d2c4;--rose-ink:#e0552d;--rose-ac:#f4724b;
--sage-bg:#dff5ef;--sage-bd:#bfe8dd;--sage-ink:#178a73;--sage-ac:#22ad93;
--peach-bg:#ffefdb;--peach-bd:#fbdcb5;--peach-ink:#d27406;--peach-ac:#f39522;
--lav-bg:#f2ecfe;--lav-bd:#ddd0fc;--lav-ink:#7546d8;--lav-ac:#9466f7;
--sky-bg:#e5f0fd;--sky-bd:#c9def9;--sky-ink:#2f6fc4;--sky-ac:#4a8fe3;
--btn:#f47a55;--btn2:#ee6640}

/* Buttons – coral, a touch lighter */
.book.solid,.pm-btn,.topbar .book.ghost,.nav .nav-book{background:linear-gradient(135deg,#f78d6b,#f06a45)!important;color:#fff!important;box-shadow:0 12px 26px rgba(240,106,69,.25)!important}
.book.solid:hover,.pm-btn:hover,.topbar .book.ghost:hover{background:linear-gradient(135deg,#f6825e,#e95e38)!important}
.dark-btn{background:linear-gradient(135deg,#2f3a48,#1f2733)!important}
.pm-btn.outline,.map-btn,.book.map-btn{background:#fff!important;color:#1f2733!important;border:1px solid #e6e1dc!important;box-shadow:0 6px 16px rgba(31,39,51,.06)!important}
.blog-filters button.on{background:#f47a55;border-color:#f47a55}
.nav a.active-link{color:#e0552d}

/* Text boxes – solid soft tints like the reference */
.pm-card{border:0;border-top:0;background:var(--c-bg);box-shadow:none}
.pm-card>div{background:var(--c-bg)}
.pm-card:hover{box-shadow:0 18px 34px rgba(31,39,51,.08)}
.pm-article-grid .pm-card:nth-child(5n+1){--c-bg:var(--sage-bg);--c-ink:var(--sage-ink)}
.pm-article-grid .pm-card:nth-child(5n+2){--c-bg:var(--lav-bg);--c-ink:var(--lav-ink)}
.pm-article-grid .pm-card:nth-child(5n+3){--c-bg:var(--rose-bg);--c-ink:var(--rose-ink)}
.pm-article-grid .pm-card:nth-child(5n+4){--c-bg:var(--sky-bg);--c-ink:var(--sky-ink)}
.pm-article-grid .pm-card:nth-child(5n+5){--c-bg:var(--peach-bg);--c-ink:var(--peach-ink)}
.pm-card a.card-link{display:inline-flex;align-self:flex-start;background:#fff;color:#1f2733!important;padding:10px 16px;border-radius:999px;letter-spacing:.04em;box-shadow:0 4px 12px rgba(31,39,51,.06)}
.pm-card .card-meta{color:var(--c-ink)}

.area-card,.step,.why-grid div{border:0!important;box-shadow:none}
.area-card:hover,.step:hover{box-shadow:0 18px 34px rgba(31,39,51,.08)}
.area-card:nth-child(1){background:var(--sage-bg)}.area-card:nth-child(2){background:var(--lav-bg)}.area-card:nth-child(3){background:var(--rose-bg)}
.area-card:nth-child(1) .area-pin{background:var(--sage-ac);color:#fff}.area-card:nth-child(2) .area-pin{background:var(--lav-ac);color:#fff}.area-card:nth-child(3) .area-pin{background:var(--rose-ac);color:#fff}
.area-card .area-pin{border-radius:50%}
.area-card:nth-child(1) .more{color:var(--sage-ink)}.area-card:nth-child(2) .more{color:var(--lav-ink)}.area-card:nth-child(3) .more{color:var(--rose-ink)}
.step:nth-child(1){background:var(--sky-bg)}.step:nth-child(2){background:var(--peach-bg)}.step:nth-child(3){background:var(--sage-bg)}
.step b{background:var(--sky-ac)}.step:nth-child(2) b{background:var(--peach-ac)}.step:nth-child(3) b{background:var(--sage-ac)}
.why-grid div:nth-child(1){background:var(--sage-bg)}.why-grid div:nth-child(2){background:var(--lav-bg)}.why-grid div:nth-child(3){background:var(--rose-bg)}.why-grid div:nth-child(4){background:var(--sky-bg)}

.micro-grid span{border:0;border-left:0;font-weight:700}
.micro-grid span:nth-child(1){background:var(--sage-bg);color:var(--sage-ink)}
.micro-grid span:nth-child(2){background:var(--lav-bg);color:var(--lav-ink)}
.micro-grid span:nth-child(3){background:var(--rose-bg);color:var(--rose-ink)}
.micro-grid span:nth-child(4){background:var(--sky-bg);color:var(--sky-ink)}
.micro-grid span:before{content:'✓ '}

.section-pills span,.contact-strip span{border:0}
.section-pills span:nth-child(1),.contact-strip span:nth-child(1){background:var(--sage-bg);color:var(--sage-ink)}
.section-pills span:nth-child(2),.contact-strip span:nth-child(2){background:var(--lav-bg);color:var(--lav-ink)}
.section-pills span:nth-child(3),.contact-strip span:nth-child(3){background:var(--rose-bg);color:var(--rose-ink)}
.section-pills span:nth-child(4){background:var(--sky-bg);color:var(--sky-ink)}
.section-pills span:nth-child(5){background:var(--peach-bg);color:var(--peach-ink)}

.benefits>div{border:0}
.benefits>div:nth-child(1){background:var(--sage-bg)}.benefits>div:nth-child(2){background:var(--lav-bg)}.benefits>div:nth-child(3){background:var(--rose-bg)}.benefits>div:nth-child(4){background:var(--sky-bg)}
.benefits>div:nth-child(1) span{background:var(--sage-ac);color:#fff}.benefits>div:nth-child(2) span{background:var(--lav-ac);color:#fff}.benefits>div:nth-child(3) span{background:var(--rose-ac);color:#fff}.benefits>div:nth-child(4) span{background:var(--sky-ac);color:#fff}
.benefits span{border-radius:50%!important}
.pm-benefit-card{border:0!important}
.pm-b1{background:var(--sage-bg)!important}.pm-b2{background:var(--lav-bg)!important}.pm-b3{background:var(--rose-bg)!important}.pm-b4{background:var(--sky-bg)!important}
.pm-b1 .pm-icon{background:var(--sage-ac);color:#fff}.pm-b2 .pm-icon{background:var(--lav-ac);color:#fff}.pm-b3 .pm-icon{background:var(--rose-ac);color:#fff}.pm-b4 .pm-icon{background:var(--sky-ac);color:#fff}
.pm-icon,.pm-icon-shell{border-radius:50%!important}.pm-icon-shell{border-color:rgba(255,255,255,.25)}

.contact-info a,.contact-info div{border:0!important}
.contact-info a:nth-child(1){background:var(--sage-bg)}.contact-info a:nth-child(2){background:var(--lav-bg)}
.contact-info small{color:#6b7280}

.home-faq details,.pm-faq details,.article-faq details{border:0!important;background:#faf7f4}
.home-faq details:nth-of-type(4n+1)[open],.pm-faq details:nth-of-type(4n+1)[open],.article-faq details:nth-of-type(4n+1)[open]{background:var(--sage-bg)}
.home-faq details:nth-of-type(4n+2)[open],.pm-faq details:nth-of-type(4n+2)[open],.article-faq details:nth-of-type(4n+2)[open]{background:var(--lav-bg)}
.home-faq details:nth-of-type(4n+3)[open],.pm-faq details:nth-of-type(4n+3)[open],.article-faq details:nth-of-type(4n+3)[open]{background:var(--rose-bg)}
.home-faq details:nth-of-type(4n+4)[open],.pm-faq details:nth-of-type(4n+4)[open],.article-faq details:nth-of-type(4n+4)[open]{background:var(--sky-bg)}
.home-faq summary:after,.pm-faq summary:after,.article-faq summary:after{color:#f06a45}

.tldr{background:var(--sage-bg);border:0;border-left:0}.tldr h2{color:var(--sage-ink)!important}
.note{background:var(--sky-bg);border:0;color:#24456e}
.toc{background:var(--lav-bg);border:0}.toc a{color:var(--lav-ink)}
.aside-card:not(.dark):not(.toc){background:var(--peach-bg);border:0}
.pm-benefit-list{background:var(--rose-bg);border:0}
.pm-benefit-list li:before{border-color:var(--rose-ac);color:var(--rose-ac)}
#guide-reformer .pm-guide-copy{background:var(--rose-bg)}
#guide-mat .pm-guide-copy{background:var(--sage-bg)}
#guide-clinical .pm-guide-copy{background:var(--sky-bg)}
#guide-pregnancy .pm-guide-copy{background:var(--lav-bg)}
.story-copy{background:var(--peach-bg)}
.hero-words{background:var(--sage-bg);border:0;color:var(--sage-ink)}
.blog-filters button{border:0}
.blog-filters button:nth-child(2):not(.on){background:var(--sage-bg);color:var(--sage-ink)}
.blog-filters button:nth-child(3):not(.on){background:var(--lav-bg);color:var(--lav-ink)}
.blog-filters button:nth-child(4):not(.on){background:var(--rose-bg);color:var(--rose-ink)}
.blog-filters button:nth-child(5):not(.on){background:var(--sky-bg);color:var(--sky-ink)}
.marquee span:after{color:#f4825f}.marquee span:nth-child(3n+2):after{color:#3cc4a8}.marquee span:nth-child(3n+3):after{color:#a985ff}
.scroll-progress{background:linear-gradient(90deg,#22ad93,#9466f7,#f4724b,#f39522)}
.pm-eyebrow{color:#e0552d}

/* ===== v6: white boxes, mint/teal buttons & icons with effects ===== */
:root{--mint:#1fa58c;--mint-2:#2cc4a6;--mint-dk:#147a67;--mint-bg:#e6f7f2;--box-bd:#ece5de}

/* --- white boxes everywhere --- */
.pm-card,.pm-card>div,.area-card,.step,.why-grid div,.benefits>div,.pm-benefit-card,.contact-info a,.contact-info div,
.tldr,.note,.toc,.aside-card:not(.dark),.pm-benefit-list,.micro-grid span,.section-pills span,.contact-strip span,.hero-words,
.home-faq details,.pm-faq details,.article-faq details,.blog-filters button:not(.on){
  background:#fff!important;border:1px solid var(--box-bd)!important;color:inherit;box-shadow:0 10px 26px rgba(43,36,31,.05)}
.pm-card{border-top:1px solid var(--box-bd)!important}
.step{border-top:1px solid var(--box-bd)!important}
.home-faq details[open],.pm-faq details[open],.article-faq details[open]{background:#fff!important;border-color:var(--mint-2)!important;box-shadow:0 14px 30px rgba(31,165,140,.10)}
.pm-card .card-meta,.area-card .more,.toc a,.tldr h2,.pm-eyebrow,.kicker.dark{color:var(--mint-dk)!important}
.section-pills span,.contact-strip span,.micro-grid span,.hero-words{color:#3c4a46!important}
.micro-grid span:before{content:'✓ ';color:var(--mint)}
.note{border-left:4px solid var(--mint)!important}
.tldr{border-left:4px solid var(--mint)!important}
.story-copy,.pm-guide-copy,#guide-reformer .pm-guide-copy,#guide-mat .pm-guide-copy,#guide-clinical .pm-guide-copy,#guide-pregnancy .pm-guide-copy{background:#fff!important}
.pm-hero{background:#fff!important}
.pm-what,.pm-articles,.pm-faq{background:#fff}

/* --- MINT BUTTONS with effects --- */
.book.solid,.pm-btn,.topbar .book.ghost,.nav .nav-book,.blog-filters button.on,.dark-btn{
  background:linear-gradient(135deg,var(--mint-2) 0%,var(--mint) 55%,var(--mint-dk) 100%)!important;background-size:200% 100%!important;background-position:0 0!important;
  color:#fff!important;border:0!important;box-shadow:0 10px 24px rgba(31,165,140,.28)!important;
  transition:background-position .6s var(--ease),transform .35s var(--ease),box-shadow .35s var(--ease)!important}
.book.solid:hover,.pm-btn:hover,.topbar .book.ghost:hover,.nav .nav-book:hover,.dark-btn:hover{
  background-position:100% 0!important;transform:translateY(-3px) scale(1.02)!important;box-shadow:0 16px 34px rgba(31,165,140,.40),0 0 0 6px rgba(44,196,166,.14)!important}
.book.solid:active,.pm-btn:active{transform:translateY(0) scale(.98)!important}
.book span,.pm-btn span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.22);transition:transform .35s var(--ease),background .35s}
.book:hover span,.pm-btn:hover span{transform:translateX(4px) rotate(-45deg);background:rgba(255,255,255,.35)}
/* main CTA gentle pulse ring */
.topbar .book.ghost:after,.pm-hero .pm-btn:after,.hero-actions .book.solid:after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 0 rgba(44,196,166,.45);animation:ctaPulse 2.6s ease-out infinite;pointer-events:none}
@keyframes ctaPulse{0%{box-shadow:0 0 0 0 rgba(44,196,166,.45)}70%{box-shadow:0 0 0 14px rgba(44,196,166,0)}100%{box-shadow:0 0 0 0 rgba(44,196,166,0)}}
/* outline buttons */
.pm-btn.outline,.map-btn,.book.map-btn,.pm-card a.card-link{background:#fff!important;color:var(--mint-dk)!important;border:1.5px solid var(--mint-2)!important;box-shadow:none!important;transition:background .3s,color .3s,transform .3s var(--ease)!important}
.pm-btn.outline:hover,.map-btn:hover,.book.map-btn:hover,.pm-card a.card-link:hover{background:var(--mint)!important;color:#fff!important;transform:translateY(-2px)!important}
.map-btn span{background:var(--mint-bg)}.map-btn:hover span{background:rgba(255,255,255,.3)}
.pm-card a.card-link{padding:9px 16px;border-radius:999px}
.nav a.active-link{color:var(--mint-dk)!important}
.nav-pill:after{background:var(--mint)!important}

/* --- MINT ICONS with effects --- */
.benefits span,.pm-icon,.area-card .area-pin,.step b{
  background:linear-gradient(145deg,var(--mint-2),var(--mint-dk))!important;color:#fff!important;border-radius:50%!important;
  box-shadow:0 10px 22px rgba(31,165,140,.30)!important;position:relative;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.benefits span:before,.pm-icon:before,.area-card .area-pin:before,.step b:before{content:'';position:absolute;inset:-6px;border-radius:50%;border:2px dashed rgba(31,165,140,.35);opacity:0;transform:scale(.8);transition:opacity .4s,transform .6s var(--ease)}
.benefits>div:hover span,.pm-benefit-card:hover .pm-icon,.area-card:hover .area-pin,.step:hover b{transform:translateY(-4px) rotate(-8deg) scale(1.08);box-shadow:0 16px 30px rgba(31,165,140,.40)!important}
.benefits>div:hover span:before,.pm-benefit-card:hover .pm-icon:before,.area-card:hover .area-pin:before,.step:hover b:before{opacity:1;transform:scale(1);animation:spinRing 6s linear infinite}
@keyframes spinRing{to{transform:rotate(360deg)}}
.pm-icon-shell{display:none}
.icon-wrap svg,.pm-icon svg{stroke:#fff!important}.icon-wrap svg .fill-dot,.pm-icon .pm-fill{fill:#fff!important}
.pm-benefit-list li:before{border-color:var(--mint)!important;color:#fff!important;background:var(--mint)}
.home-faq summary:after,.pm-faq summary:after,.article-faq summary:after{color:#fff;background:var(--mint);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:18px;top:2px;transition:transform .35s var(--ease),background .3s}
details[open]>summary:after{background:var(--mint-dk)}
.address>span{color:var(--mint)}
.marquee span:after{color:var(--mint-2)!important}
.scroll-progress{background:linear-gradient(90deg,var(--mint-2),var(--mint-dk))!important}
.pm-card:hover,.area-card:hover,.step:hover,.why-grid div:hover,.benefits>div:hover,.pm-benefit-card:hover{border-color:rgba(44,196,166,.55)!important;box-shadow:0 18px 36px rgba(31,165,140,.12)!important}

/* ===== v7: new contact section ===== */
.contact-v2{padding:96px 5vw;background:linear-gradient(180deg,#fffdf9 0%,#f7f2ec 100%);border-top:1px solid var(--line)}
.cv2-wrap{max-width:1280px;margin:0 auto}
.cv2-head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:40px}
.cv2-head h2{font-family:var(--serif);font-weight:500;font-size:clamp(46px,4.6vw,72px);line-height:1;letter-spacing:-.025em;margin:0;color:#2b241f}
.cv2-head-side p{margin:0 0 22px;font-size:16px;line-height:1.75;color:#655f58;max-width:520px}
.cv2-actions{display:flex;flex-wrap:wrap;gap:12px}
.cv2-grid{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:20px;align-items:stretch}
.cv2-cards{display:grid;gap:14px;align-content:stretch}
.cv2-card{display:flex;gap:16px;align-items:center;padding:20px 22px;background:#fff;border:1px solid var(--box-bd);border-radius:22px;box-shadow:0 10px 26px rgba(43,36,31,.05);transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.cv2-card:hover{transform:translateY(-3px);border-color:rgba(44,196,166,.55);box-shadow:0 18px 34px rgba(31,165,140,.12)}
.cv2-ic{flex:0 0 52px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--mint-2),var(--mint-dk));box-shadow:0 10px 20px rgba(31,165,140,.28);transition:transform .5s var(--ease)}
.cv2-card:hover .cv2-ic{transform:rotate(-10deg) scale(1.08)}
.cv2-ic svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cv2-card>span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.cv2-card small{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--mint-dk)}
.cv2-card strong{font-size:16px;font-weight:700;color:#2b241f;overflow-wrap:anywhere}
.cv2-card em{font-style:normal;font-size:13px;color:#8a7f76}
.cv2-hours .hours-inline{margin:0;height:100%;max-width:none;border-radius:24px;padding:26px 26px;display:flex;flex-direction:column;justify-content:center}
.cv2-hours .hours-inline h3{color:#7fe0cb!important;margin-bottom:14px}
.cv2-hours .hours-inline td{padding:9px 0;font-size:14px}
.cv2-map{border-radius:24px;overflow:hidden;min-height:380px;border:1px solid var(--box-bd);box-shadow:0 16px 36px rgba(43,36,31,.10);background:#e9e4dd}
.cv2-map iframe{display:block;width:100%;height:100%;min-height:380px;border:0}
@media(max-width:1100px){.cv2-head{grid-template-columns:1fr;gap:18px}.cv2-grid{grid-template-columns:1fr 1fr}.cv2-map{grid-column:1/-1;min-height:320px}.cv2-map iframe{min-height:320px}}
@media(max-width:700px){.contact-v2{padding:64px 20px}.cv2-grid{grid-template-columns:1fr}.cv2-map,.cv2-map iframe{min-height:280px}.cv2-actions .book{flex:1 1 auto;justify-content:center}}

/* Pilates σελίδα: η φωτογραφία του hero δεν ορίζει πια το ύψος (δεν γίνεται τεράστια), η 2η φωτογραφία δεν κόβει την ασκούμενη */
.pm-hero-image{min-height:0}
.pm-hero-image img{position:absolute;inset:0}
.pm-hero{min-height:min(640px,calc(100vh - 120px))}
.pm-what-image{height:auto;aspect-ratio:4/5;max-height:520px}
.pm-what-image img{object-position:center 72%!important}
@media(max-width:1100px){.pm-hero{min-height:0}.pm-hero-image{height:clamp(320px,56vw,480px)}.pm-what-image{max-width:520px;width:100%;justify-self:center}}
@media(max-width:650px){.pm-hero-image{height:340px}}

/* Κράτηση στο κινητό: παράθυρο σε όλη την οθόνη, μικρό ωράριο από πάνω και η εφαρμογή κρατήσεων από κάτω */
@media(max-width:700px){
.booking-dialog{left:0;top:0;transform:none;width:100vw;height:100vh;height:100dvh;border-radius:0;border:0}
.booking-head{padding:10px 56px 10px 16px;gap:12px}
.booking-head img{width:58px;height:auto}
.booking-head .kicker{display:none}
.booking-head .modal-title{font-size:21px}
.booking-close{top:8px;right:12px;font-size:32px}
.booking-body{display:flex;flex-direction:column;overflow:hidden}
.booking-body .opening-hours{display:block;flex:none;padding:10px 16px 8px;overflow:visible}
.booking-body .opening-hours .oh-title{font-size:13px;margin:0 0 4px}
.booking-body .opening-hours p{display:none}
.booking-body .hours-list{grid-template-columns:1fr}
.booking-body .hours-row{padding:3px 0;gap:10px;border-bottom-color:rgba(255,255,255,.1)}
.booking-body .hours-row:last-child{border-bottom:0}
.booking-body .hours-row strong,.booking-body .hours-row span{font-size:11px}
.booking-frame-wrap{flex:1;min-height:0}
#setmoreFrame{height:100%;min-height:0;border-radius:0;box-shadow:none}
}
