/* September service audit: shared navigation and surface-first equipment. */
.nav-links{gap:clamp(12px,1.6vw,28px);font-size:13px}
.nav-links a{white-space:nowrap}
.trust-row{flex-wrap:wrap;row-gap:8px}
.hero-title-accent{color:var(--blue)}
.studio-hero h1{font-size:clamp(2.5rem,4.2vw,3.6rem)}
.studio-hero h1 span{white-space:nowrap}
.service-count{display:inline-flex;align-items:center;gap:10px}
.service-count>span{font-size:1.35em;text-shadow:0 0 10px #a9d6f588,0 0 22px #a9d6f544;letter-spacing:0}
.service-count--studio{color:var(--blue);text-shadow:0 0 10px #a9d6f566,0 0 22px #a9d6f533}
.purpose-title{position:relative}
.purpose-title .purpose-mark{position:relative}
.purpose-mark{display:inline-flex;align-items:center;flex:none;color:#a9d6f5;background:none;pointer-events:none;filter:drop-shadow(0 0 5px #a9d6f566) drop-shadow(0 0 14px #a9d6f533);animation:purpose-twinkle 5.5s ease-in-out infinite}
.purpose-mark img{width:64px;height:64px;object-fit:contain}
.purpose-mark svg{width:30px;height:30px;margin-left:-9px;margin-top:34px}
.products-page{color-scheme:dark}
.products-page .products-top-card,.products-page .products-purpose-card,.products-page .product-copy-card{border-radius:24px}
.products-page .products-top-card{min-height:440px}
.products-page .products-top-card__visual{min-height:180px;align-items:flex-start;justify-content:center;flex-direction:column;padding:36px 38px;gap:18px}
.products-page .products-top-card__visual-copy{margin:0;max-width:32ch;text-align:left;align-self:flex-start;line-height:1.5}
.products-page .products-top-card__visual .products-spark{position:relative;top:auto;right:auto;filter:none;transform:none}
.products-page .products-top-card__split{grid-template-columns:1fr}
.products-page .products-top-card h1{font-size:clamp(42px,5.5vw,78px);max-width:12ch;line-height:1.03}
.products-page .products-lead{font-size:clamp(22px,2.2vw,30px);line-height:1.25;max-width:28ch}
.products-page .products-purpose-card__media{background:#111a25}
.products-page .products-spark{color:#8cc4e7!important;text-shadow:0 0 10px #a9d6f566!important;animation:equipment-spark 5s ease-in-out infinite;pointer-events:none}
.products-page .products-glow--two{display:none}
.fitness-page .site-header{--ink:#0b111c;--line:#ffffff26;background:#0b111c;color:#edf5fb;border-color:var(--line)}
.fitness-page .header-contact-bar{background:#080e15;color:#a6adbb;border-color:#ffffff26}
.fitness-page .header-phone-link{color:#a9d6f5}
.fitness-page .site-header .brand{background:none;border-radius:0;padding:0;flex:none}
.fitness-page .nav-links{color:#a9d6f5}
.fitness-page .nav-links a:hover{color:#edf5fb;text-decoration:underline;text-underline-offset:5px}
.fitness-page .nav-links.open{background:#0b111c;border-color:#ffffff26}
.fitness-page .menu-button span{background:#a9d6f5}
.fitness-page .site-header :focus-visible{outline-color:#a9d6f5}
.fitness-page :focus-visible{outline:3px solid #285e7d;outline-offset:4px}
.equipment-section{border-block:1px solid var(--line);background:var(--ink2)}
#equipment,#products,#services{scroll-margin-top:calc(var(--public-header-height,162px) + 24px)}
.equipment-section .section-head{align-items:start;gap:28px;margin-bottom:36px}
.equipment-section .section-head>p{color:var(--muted)}
.equipment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.equipment-card{background:var(--ink);border:1px solid var(--line);border-radius:24px;padding:28px;min-width:0}
.equipment-card figure{margin:0 0 26px}
.equipment-card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:16px}
.equipment-card figcaption{font-size:12px;color:var(--muted);text-align:center;margin-top:10px}
.equipment-card h3{font-size:clamp(25px,2.5vw,34px);line-height:1.15;margin-bottom:18px}
.equipment-card p,.equipment-card li,.appliance-care p{color:var(--muted);font-size:16px;line-height:1.7}
.equipment-prices{padding:0;list-style:none;margin:24px 0;border-top:1px solid var(--line)}
.equipment-prices li{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}
.equipment-prices strong{font-size:20px;color:var(--blue);white-space:nowrap}
.equipment-card .text-link,.appliance-care a{color:var(--blue);display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.appliance-care{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.appliance-care article{padding:28px;background:var(--ink);border:1px solid var(--line);border-radius:24px}
.appliance-care h3{font-size:24px;line-height:1.2}
.equipment-faq{margin-top:28px;border-top:1px solid var(--line);padding:24px 0}
.equipment-faq summary{cursor:pointer;font-size:20px;font-weight:700;min-height:44px}
.equipment-faq p{max-width:800px;color:var(--muted);font-size:16px;line-height:1.7}
@keyframes equipment-spark{0%,100%{opacity:.45;transform:scale(.95)}50%{opacity:.85;transform:scale(1.04)}}
@media(max-width:1200px){.site-header .nav-links,.site-header>.button{display:none}.menu-button{display:block;margin-left:auto;background:none;border:0;padding:15px}.menu-button span{display:block;background:var(--blue);width:25px;height:1px;margin:7px}.site-header .nav-links.open{display:flex;position:absolute;top:100%;left:0;right:0;background:var(--ink);padding:20px 30px;flex-direction:column;gap:4px;border-bottom:1px solid var(--line);font-size:16px}.nav-links a{display:flex;align-items:center;min-height:44px;white-space:normal}.fitness-page .nav-links.open{background:#0b111c}}
@media(max-width:900px){.nav-links{font-size:16px}.equipment-section .section-head{flex-direction:column}.equipment-section .section-head>p{max-width:650px}}
@media(max-width:900px){.studio-hero{grid-template-columns:1fr}.studio-hero h1{font-size:clamp(2.15rem,8.8vw,3.6rem)}}
@media(max-width:400px){.hero-copy h1{font-size:clamp(2rem,10.5vw,2.625rem)}}
html[lang="es"] .hero-title-line,html[lang="es"] .studio-hero h1 span{white-space:normal}
@media(max-width:640px){.equipment-grid,.appliance-care{grid-template-columns:1fr}.equipment-card,.appliance-care article{padding:22px}.purpose-title{gap:10px}.purpose-mark img{width:44px;height:44px}.purpose-mark svg{width:23px;height:23px;margin-top:26px}.products-page .products-top-card__visual{min-height:150px;padding:24px 22px}.products-page .products-top-card__visual-copy{max-width:100%;margin:0}}
@media(prefers-reduced-motion:reduce){.products-page .products-spark{animation:none}.products-page .reveal{opacity:1;transform:none;transition:none}}

/* Marketing display only: service names, prices, forms and navigation retain the UI font. */
:root{--font-slogan:'Playfair Display',Georgia,'Times New Roman',serif}
.slogan{font-family:var(--font-slogan);font-weight:700;letter-spacing:-.035em;line-height:1.15;text-wrap:balance;overflow-wrap:break-word}
.hero-copy .postcard-headline{font-family:var(--font-slogan);font-weight:700;letter-spacing:-.045em;line-height:1.12;font-size:clamp(2rem,4.2vw,4.5rem)}
.postcard-headline em{font-weight:inherit;font-style:italic}
.studio-scope-list{margin:18px 0 0;padding-left:1.2em;color:var(--studio-muted);font-size:1rem;line-height:1.6}
.studio-scope-list li{padding-left:.2em;margin:0 0 .65em}
.studio-scope-list li:last-child{margin-bottom:0}
.studio-scope-list li::marker{color:#477d9c}
.studio-scope-list strong{color:var(--studio-navy);font-weight:700}
.studio-card .studio-scope-note{margin:18px 0 0;font-size:.875rem;line-height:1.6}
@keyframes purpose-twinkle{0%,100%{opacity:.65}50%{opacity:.95}}
@media(max-width:900px){.hero-copy .postcard-headline{font-size:clamp(1.875rem,10vw,4rem)}.studio-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.studio-scope-grid{grid-template-columns:1fr;gap:16px}.studio-scope-grid .studio-card{padding:24px}.studio-scope-grid .studio-card h3{font-size:1.125rem}}
@media(prefers-reduced-motion:reduce){.purpose-mark{animation:none;opacity:.85}}

/* Brand refresh: concise reassurance, three equal recurring choices and one footer promise. */
.hero-copy .lede{margin-bottom:12px}
.hero-benefits{max-width:570px;margin:0 0 12px;color:var(--muted);font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.65}
.hero-booking-note{margin:0;color:var(--text);font-size:1rem;line-height:1.6}
.recurring-offer__heading.slogan{font-size:clamp(1.375rem,2.3vw,1.75rem);line-height:1.2}
.recurring-offer__plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:20px 0}
.recurring-offer__plan{padding:0 12px;text-align:center;align-items:center;gap:10px}
.recurring-offer__plan+.recurring-offer__plan{padding-left:12px}
.recurring-offer__plan>span{min-height:2.8em;line-height:1.4;display:flex;align-items:center;justify-content:center}
.recurring-offer__plan strong{font-size:clamp(1.75rem,3vw,2.25rem);white-space:nowrap}
.footer .footer-slogan{font-size:clamp(1.375rem,2vw,1.625rem);line-height:1.3;max-width:24ch;color:var(--ice);margin:20px 0 12px;text-wrap:pretty}
.purpose-title{padding-bottom:0;display:flex;align-items:center;gap:18px}
.purpose-title h2{min-width:0}
.purpose-title .purpose-mark{right:auto;bottom:auto}
.purpose-mark::after{content:'✦';position:absolute;right:4px;top:-5px;font-size:18px;text-shadow:0 0 10px #a9d6f5;animation:clientStarGlow 4.6s ease-in-out infinite}
.products-summary .section-head .text-link{display:inline-flex;align-items:center;margin-top:14px}
.appliance-booking-note{max-width:900px;color:var(--muted);font-size:1rem;line-height:1.7;margin:24px 0}
.appliance-booking-note strong{color:var(--text)}
@media(max-width:640px){.recurring-offer__plan{padding-inline:8px}.recurring-offer__plan+.recurring-offer__plan{padding-left:8px}.recurring-offer__plan>span{font-size:.875rem}.recurring-offer__plan small{font-size:.75rem;display:block;margin-top:6px}.purpose-title{gap:12px}.purpose-title h2{font-size:clamp(1.75rem,7.8vw,2.75rem)}}
@media(max-width:359px){.recurring-offer__plan strong{font-size:1.5rem}}

/* Soft glyph glows avoid the rectangular filter layers seen in mobile Safari. */
.service-count>span,.studio-sparkle{display:inline-block;animation:clientStarGlow 4.6s ease-in-out infinite;filter:none;background:transparent;pointer-events:none}
.service-card:nth-child(even) .service-count>span,.studio-card:nth-child(even) .studio-sparkle{animation-delay:-2.3s}
.studio-scope-grid .studio-card h3{color:#285e7d;text-shadow:0 0 14px #8cc4e755}
@keyframes clientStarGlow{0%,100%{opacity:.72;text-shadow:0 0 5px #a9d6f588,0 0 12px #a9d6f533}50%{opacity:1;text-shadow:0 0 9px #a9d6f5,0 0 22px #a9d6f588}}
@media(prefers-reduced-motion:reduce){.service-count>span,.studio-sparkle,.purpose-mark::after{animation:none}}

/* More visible studio sparkle motion; headings remain still and readable. */
.fitness-page .studio-sparkle{color:#589dc5;font-size:1.75rem;transform-origin:center;animation:studioStarFlow 3.6s ease-in-out infinite}
.fitness-page .studio-card:nth-child(2n) .studio-sparkle{animation-delay:-1.2s}
.fitness-page .studio-card:nth-child(3n) .studio-sparkle{animation-delay:-2.4s}
.fitness-page .studio-hero .spark,.fitness-page .studio-hero .particle.sparkle-particle{color:#589dc5!important;text-shadow:0 0 7px #aad9f4,0 0 20px #85c6eda6!important;opacity:.9}
.fitness-page .studio-hero .spark{animation:studioStarFlow 4.2s ease-in-out infinite}
.fitness-page .studio-hero .s2{animation-delay:-1.4s}
.fitness-page .studio-hero .s3{animation-delay:-2.8s}
.home-page main :is(h1,h2,h3),.home-page .recurring-offer__heading{ text-shadow:0 0 12px #a9d6f566,0 0 28px #a9d6f533 }
.fitness-page main :is(h1,h2,h3),.fitness-page .studio-scope-grid .studio-card h3{text-shadow:0 0 9px #8cc4e7a6,0 0 24px #8cc4e76b}
@keyframes studioStarFlow{0%,100%{transform:translateY(3px) rotate(-9deg) scale(.88);opacity:.7;text-shadow:0 0 6px #aad9f4,0 0 14px #85c6ed80}50%{transform:translateY(-5px) rotate(13deg) scale(1.2);opacity:1;text-shadow:0 0 10px #aad9f4,0 0 26px #85c6edcc}}
@media(prefers-reduced-motion:reduce){.fitness-page .studio-sparkle,.fitness-page .studio-hero .spark{animation:none!important;transform:none;opacity:1}}

/* Client-requested emphasis on the homepage service markers and brand accent. */
/* Shared public-title baseline; page-specific brighter glows remain in place. */
main :is(h1,h2,h3){text-shadow:0 0 12px #a9d6f566,0 0 28px #a9d6f533}
.join-page .join-main :is(h1,h2,h3){text-shadow:0 0 9px #a9d6f599,0 0 24px #a9d6f566,0 0 36px #a9d6f533}
.home-page .service-count{color:#bde6ff;text-shadow:0 0 7px #a9d6f5b3,0 0 20px #a9d6f580}
.home-page .service-count>span{animation:studioStarFlow 3.6s ease-in-out infinite;font-size:1.55em}
.home-page .card:nth-child(even) .service-count>span{animation-delay:-1.8s}
.home-page .service-grid h3{color:#eef8ff;text-shadow:0 0 9px #a9d6f599,0 0 24px #a9d6f566,0 0 36px #a9d6f533}
.home-page .purpose-mark{opacity:1;filter:drop-shadow(0 0 5px #a9d6f5cc) drop-shadow(0 0 13px #a9d6f580);animation:brandAccentFloat 3.8s ease-in-out infinite}
.home-page .purpose-mark::after{color:#d8efff;animation:studioStarFlow 3.2s ease-in-out infinite}
@keyframes brandAccentFloat{0%,100%{transform:translateY(3px);opacity:.78}50%{transform:translateY(-5px);opacity:1}}
@media(prefers-reduced-motion:reduce){.home-page .service-count>span,.home-page .purpose-mark,.home-page .purpose-mark::after{animation:none;transform:none;opacity:1}}
