/* INYOFiT: real sessions, generous photography, concise page hierarchy. */
body.visual-refresh { padding-left:0; padding-bottom:0; background:#fdf9f5; }
.visual-refresh .brand-strip { display:none; }
.visual-refresh .navbar { left:0; }
.visual-refresh .nav-inner { max-width:1440px; }
.visual-refresh .nav-logo.scrolled { transform:none; }
.visual-refresh main { overflow:clip; }
.visual-refresh .container { max-width:1280px; padding-inline:32px; }
.visual-refresh .fade-up { opacity:1; transform:none; transition:none; }
.visual-refresh h1, .visual-refresh h2, .visual-refresh h3 { text-wrap:balance; }
.visual-refresh h2 { font-size:clamp(2rem,4vw,3.65rem); line-height:1.14; }
.visual-refresh p { max-width:65ch; }
.visual-refresh .btn { border-radius:8px; padding:15px 24px; box-shadow:none; white-space:normal; line-height:1.45; }
.visual-refresh .btn-primary { background:#B05528; color:#fff; }
.visual-refresh .btn-primary:hover { background:#95421e; }
.visual-refresh a:focus-visible, .visual-refresh summary:focus-visible { outline:3px solid #B05528; outline-offset:5px; }
.vr-hero { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); max-width:1536px; margin:auto; min-height:650px; }
.vr-hero-copy { padding:72px clamp(24px,4vw,72px); display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.vr-hero h1 { font-size:clamp(2.8rem,4.8vw,5rem); font-weight:400; line-height:1.08; letter-spacing:-.035em; margin:0 0 28px; }
.vr-hero-copy p { font-size:clamp(1rem,1.3vw,1.16rem); line-height:1.8; margin:0 0 30px; max-width:33ch; }
.vr-hero-photo { margin:0; min-width:0; position:relative; }
.vr-hero-photo img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; object-position:49% center; }
.vr-location { padding:20px 24px; background:#f5ede4; text-align:center; font-size:.9rem; }
.vr-section { padding:96px 0; }
.vr-heading { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; margin-bottom:40px; }
.vr-heading p { margin:0 0 20px; }
.vr-services { display:grid; grid-template-columns:1fr 1fr; gap:40px 28px; }
.vr-service { color:inherit; display:block; text-decoration:none; min-width:0; }
.vr-service img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; object-position:center 35%; }
.vr-service-wide { grid-column:1 / -1; display:grid; grid-template-columns:1.45fr 1fr; background:#f5ede4; }
.vr-service-wide img { aspect-ratio:3/2; height:auto; align-self:center; }
.vr-service div { padding:22px 0 0; }
.vr-service-wide div { padding:36px; align-self:center; }
.vr-service h3 { font-size:clamp(1.6rem,2.5vw,2.4rem); line-height:1.2; margin:0 0 8px; }
.vr-service p { margin:0; }
.vr-service:hover h3 { color:#B05528; }
.vr-other-routes { margin-top:38px; display:flex; flex-wrap:wrap; gap:18px 36px; }
.vr-other-routes a, .vr-jump a { color:#833b1b; text-decoration:underline; text-underline-offset:5px; font-size:.94rem; }
.vr-meet { padding:80px 0; background:#f5ede4; }
.vr-split { display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:64px; }
.vr-split figure { margin:0; min-width:0; }
.vr-split img { width:100%; height:auto; display:block; }
.vr-split h2 { margin-bottom:28px; }
.vr-split p { margin-bottom:20px; }
.visual-refresh .text-link { color:#833b1b; text-decoration:underline; text-underline-offset:5px; }
.vr-reviews { padding:80px 0; }
.vr-reviews .section-tag, .vr-reviews .stars { display:none; }
.vr-reviews .testimonial-grid { gap:32px; }
.vr-reviews .testimonial-card { padding:24px 0; border:0; border-top:2px solid #E8C4A8; box-shadow:none; background:none; border-radius:0; }
.vr-reviews .testimonial-text { font-size:1.04rem; }
.vr-reviews .btn-outline-light { color:#833b1b; border-color:#B05528; }
.vr-start { padding:80px 0; background:#f5ede4; }
.vr-start .vr-heading { margin-bottom:0; align-items:center; }
.vr-start .vr-price { font-size:2.8rem; line-height:1.3; }
.vr-price span { font-size:1rem; }
.vr-small-link { display:block; margin-top:18px; color:#833b1b; text-decoration:underline; }
.vr-jump { padding:26px 32px; background:#f5ede4; display:flex; flex-wrap:wrap; justify-content:center; gap:16px 28px; }
.vr-services-page section[id] { scroll-margin-top:100px; }
.vr-service-photo { margin:0 0 28px; }
.vr-service-photo img { display:block; width:100%; height:auto; max-height:460px; object-fit:cover; }
.vr-photo-pt img { aspect-ratio:2/3; max-height:none; object-fit:contain; }
.vr-photo-massage img { aspect-ratio:4/3; object-position:center 45%; }
.vr-photo-corporate img { object-position:center 75%; }
.vr-services-page .about-grid { gap:48px; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
.vr-services-page .family-card { border-radius:12px; box-shadow:none; padding:28px; min-width:0; }
.vr-services-page .family-icon { display:none; }
.vr-services-page .family-services li { gap:16px; }
.vr-services-page .family-services li>span:first-child { min-width:0; }
.vr-services-page .price { flex-shrink:0; }
.vr-services-page .mot-card { text-align:left; padding:32px; border-radius:12px; }
.vr-steps { list-style:none; counter-reset:visit; display:grid; gap:22px; }
.vr-steps li { counter-increment:visit; padding-left:44px; position:relative; }
.vr-steps li:before { content:counter(visit); position:absolute; left:0; top:0; color:#B05528; font-size:1.3rem; }
.vr-steps h3 { font-family:var(--font-body); font-size:1.03rem; font-weight:600; margin-bottom:6px; }
.vr-steps p { font-size:.94rem; margin:0; }
.vr-stretch-page .section { padding:72px 0; }
.vr-stretch-page .section-header .eyebrow { display:none; }
.vr-stretch-page details { border-radius:8px!important; }
.vr-group-hero { background:#f5ede4; }
.vr-group-hero .vr-hero-photo img { object-position:center 76%; }
.vr-org-page .portfolio-group { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:48px; padding:48px 0; border-top:1px solid #d6bba5; margin-top:0; }
.vr-org-page .portfolio-grid { display:block; margin:0; }
.vr-org-page .portfolio-card { background:none; border:0; border-radius:0; box-shadow:none; }
.vr-org-page .portfolio-card-body { padding:0 0 28px; }
.vr-org-page .portfolio-card-body h4 { font-family:var(--font-body); font-size:1.05rem; font-weight:600; }
.vr-org-page .portfolio-tag { text-transform:none; letter-spacing:0; }
.vr-org-page .portfolio-group-heading h3 { font-size:2.1rem; }
.vr-org-page .enquire-cta a:not(.btn) { color:#fff; text-decoration:underline; }
.visual-refresh .sticky-book { display:none!important; }
.visual-refresh main .btn-outline-light { color:#833b1b; border-color:#B05528; }
@media(min-width:769px) and (max-width:1100px) {
 .visual-refresh .nav-links { gap:14px; }
 .visual-refresh .nav-links a { font-size:.76rem; }
 .vr-hero { min-height:540px; }
 .vr-hero-copy { padding:48px 28px; }
}
@media(max-width:768px) {
 .visual-refresh .container { padding-inline:22px; }
 .vr-hero { display:flex; flex-direction:column; min-height:0; }
 .vr-hero-copy { padding:36px 24px 32px; }
 .vr-hero h1 { font-size:clamp(2.4rem,9.5vw,4.2rem); margin-bottom:18px; }
 .vr-hero-copy p { max-width:40ch; margin-bottom:22px; }
 .vr-hero-photo img { position:static; height:auto; aspect-ratio:3/2; object-fit:cover; }
 .vr-group-hero .vr-hero-photo img { aspect-ratio:4/3; }
 .vr-section, .vr-reviews { padding:56px 0; }
 .vr-heading, .vr-split { grid-template-columns:1fr; gap:26px; }
 .vr-heading { margin-bottom:28px; }
 .vr-services { gap:30px 18px; }
 .vr-service-wide { display:block; }
 .vr-service-wide div { padding:22px; }
 .vr-service h3 { font-size:1.4rem; }
 .vr-service:not(.vr-service-wide) img { aspect-ratio:2/3; object-position:center; }
 .vr-service p { font-size:.86rem; }
 .vr-other-routes { flex-direction:column; gap:16px; margin-top:28px; }
 .vr-meet, .vr-start { padding:48px 0; }
 .vr-services-page .about-grid { grid-template-columns:1fr; gap:24px; }
 .vr-services-page .family-card { padding:22px 18px; }
 .vr-services-page .family-services li { font-size:.88rem; gap:12px; }
 .vr-services-page .family-services .price { max-width:42%; text-align:right; }
 .vr-jump { justify-content:flex-start; padding:24px; gap:16px 22px; }
 .vr-org-page .portfolio-group { grid-template-columns:1fr; gap:28px; padding:32px 0; }
 .vr-org-page .portfolio-group-heading h3 { font-size:1.8rem; }
 .vr-stretch-page .section { padding:48px 0; }
 .visual-refresh .footer-grid { grid-template-columns:1fr 1fr; gap:32px 20px; }
 .visual-refresh .footer-grid>div:first-child, .visual-refresh .footer-grid>div:last-child { grid-column:1 / -1; }
}
@media(prefers-reduced-motion:reduce) { .visual-refresh *, .visual-refresh *:before { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
