/* Official identity: turquoise #43a6af, cyan #4cc3ce and sage #a8c1b2.
   Darker teal is used for readable text and white-on-color actions. */
:root{--paper:#f6faf9;--ink:#193539;--muted:#465e61;--teal:#176b70;--deep:#124c52;--line:#d3e3df;--lime:#cee5df;--mint:#eaf4f1;--brand:#43a6af;--brand-cyan:#4cc3ce;--brand-sage:#a8c1b2}
.header{background:#f6faf9ed;border-bottom-color:#d3e3df80}
.header:after{background:var(--brand)}
.hero h1 em{background:linear-gradient(transparent 85%,#bde1df 85%)}
.orbit{border-color:#43a6af66}
@media(max-width:767px){.orbit{inset:13px 2px 40px 2px}}
.status-dot{background:var(--brand);box-shadow:0 0 0 4px #43a6af17}
.photo-caption{background:#eff8f6e8;box-shadow:0 18px 45px #155b6522,inset 0 1px 0 #ffffffdf}
.photo-caption p>span{color:#36545a}
.caption-icon{border-color:#43a6af55;color:var(--teal)}
.trust-strip{background:linear-gradient(115deg,#dceee9,#eef7f5 55%,#d6ebeb);border-color:var(--line)}
.conversation{background:linear-gradient(118deg,#123c44,#17666d)}
.conversation:before{background:repeating-linear-gradient(130deg,transparent 0 100px,#a8c1b22b 101px 102px,transparent 103px 200px)}
.quiz{background:#f7fbfaf5}
.quiz-progress>span{background:linear-gradient(90deg,var(--teal),var(--brand))}
.quiz-option[aria-pressed=true]{background:#e3f2ef;box-shadow:0 0 0 2px #43a6af20}
.quiz-path .path-active b{box-shadow:0 0 0 4px #a8c1b21c}
.services{background:linear-gradient(140deg,#f0f7f5,#e0eeec)}
.service-tags li{border-color:#c5ddd7;background:#f6fbf9}
.service-guide-link{display:inline-flex;align-items:center;gap:12px;min-height:48px;margin-top:14px;color:var(--teal);font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:4px;line-height:1.6}
.reviews{background:#e5f0ed}
.reviews:before{background:linear-gradient(118deg,transparent 28%,#badbd76b 28.1%,#dceee880 57%,transparent 57.1%)}
.reviews-window:after{background:linear-gradient(90deg,transparent,#e5f0ed)}
.review-avatar{background:#dceee9;color:#23534d}
.avatar-1{background:#e3edf6;color:#305b79}.avatar-2{background:#f3e8dd;color:#8b572e}
.carousel-button{border-color:#b7d4cc}
.closing{background:var(--deep)}
.closing-rings{border-color:#43a6af40}
.closing-rings:before,.closing-rings:after{border-color:#43a6af40}
.button-lime{background:var(--lime);color:var(--deep)}
.button-lime:hover{background:#bde1d8}
.map-viewport{background:#e5f0ed}
.footer{border-top-color:var(--line)}
.guide-header{background:#f6faf9f2;border-bottom:1px solid var(--line)}
.guide-header-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.guide-header .brand{max-width:52%}
.guide-header .button{min-height:48px;font-size:16px;padding:12px 20px}
.guide-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:80px;align-items:start;padding-block:40px 80px}
.guide-article{min-width:0;max-width:760px}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:38px}
.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.guide-article h1{font-size:clamp(38px,4vw,58px);line-height:1.12;letter-spacing:-.04em;margin:18px 0 24px}
.guide-lead{font-size:21px;line-height:1.6;color:var(--ink);margin-bottom:22px}
.guide-article>p:not(.eyebrow),.guide-article section>p{color:var(--muted)}
.guide-topics{display:flex;flex-wrap:wrap;gap:8px 22px;border-block:1px solid var(--line);padding-block:20px;margin-block:30px}
.guide-topics a{font-size:15px;color:var(--teal);min-height:40px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
.guide-article section{padding-block:28px;scroll-margin-top:24px}
.guide-article section+section{border-top:1px solid var(--line)}
.guide-article h2{font-size:32px;line-height:1.2;margin:12px 0 20px}
.guide-article h3{font-size:21px;line-height:1.4;margin:26px 0 10px}
.guide-article section p+p{margin-top:16px}
.guide-inline-links{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:18px}
.guide-inline-links a,.guide-faq p a{color:var(--teal);text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}
.guide-profile{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:white;margin-top:66px}
.guide-profile>img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.guide-profile>div{padding:24px}
.guide-profile h2{font-size:24px;line-height:1.2;margin:0 0 10px}
.guide-profile p,.guide-profile address{font-size:16px;line-height:1.65;color:var(--muted)}
.guide-profile address{font-style:normal;border-top:1px solid var(--line);padding-top:18px;margin-top:18px}
.guide-profile .text-link{font-size:15px;margin-top:12px}
.guide-cta{border-radius:16px;background:#e1eeea;padding:30px;margin-top:32px}
.guide-cta h2{margin-top:0}
.guide-cta p{margin-bottom:22px}
.guide-cta .button{display:inline-flex}
.guide-cta .text-link{margin-top:14px;width:fit-content}
.guide-disclaimer{font-size:14px!important;line-height:1.7;margin-top:28px}
.guide-footer{border-top:1px solid var(--line);background:#edf5f2;padding-block:30px;font-size:15px}
.guide-footer>.container{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.guide-footer a{color:var(--teal);min-height:44px;display:inline-flex;align-items:center}
@media(max-width:1000px){.guide-layout{gap:40px;grid-template-columns:minmax(0,1fr) 260px}.guide-header-inner{min-height:84px}.guide-profile>div{padding:20px}}
@media(max-width:767px){.header,.navigation{background:#f6faf9f5}.guide-layout{grid-template-columns:minmax(0,1fr);gap:32px;padding-block:28px 50px}.guide-header-inner{min-height:82px;gap:14px}.guide-header .brand{width:190px;max-width:55%}.guide-header .button{font-size:15px;padding:10px 14px}.breadcrumbs{font-size:13px;margin-bottom:28px}.guide-lead{font-size:19px}.guide-article h2{font-size:29px}.guide-article section{padding-block:24px}.guide-profile{margin-top:0;max-width:440px;width:100%}.guide-cta{padding:24px}.guide-cta .button{width:100%;font-size:16px;padding-inline:14px}.guide-cta .text-link{font-size:15px}.guide-footer>.container{gap:8px}}
@media(prefers-reduced-transparency:reduce){.header,.navigation,.photo-caption,.quiz{background:#f6faf9}}

/* V6: compact social proof, centered feature icons and original WhatsApp assets. */
.topline{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px 24px;padding-block:3px}
.topline-service{min-width:0;line-height:1.4}
.topline-place{justify-self:end;white-space:nowrap}
.topline-rating{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;font-size:13px;line-height:1.3;color:var(--ink);border-radius:6px;white-space:nowrap}
.topline-rating .google-icon{width:18px;height:18px}
.topline-rating strong{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}
.topline-stars{color:#9a5d00;font-size:13px;letter-spacing:1px}
.rating-arrow{color:var(--teal);font-size:15px}
.topline-rating:hover{text-decoration:underline;text-underline-offset:4px}
.trust-card{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:18px;min-height:118px;padding:22px}
.trust-card>.trust-icon{display:grid;place-items:center;width:52px;height:52px;aspect-ratio:1;padding:0;border:1px solid #bcdcd7;border-radius:50%;background:#e4f2ef;color:var(--teal);line-height:1}
.trust-icon>.icon{display:block;width:26px;height:26px;margin:0;stroke-width:1.8}
.trust-card>p{gap:6px}
.trust-card p>strong{line-height:1.35}
.wa-icon{display:block;object-fit:contain;aspect-ratio:1;fill:initial;stroke:none}
.button>.wa-icon{width:24px;height:24px;flex:0 0 24px}
.header-cta>.wa-icon{width:21px;height:21px;flex-basis:21px}
.dock-whatsapp>.wa-icon{width:32px;height:32px}
.studio-credit{min-height:44px;line-height:1.5;gap:6px}
.studio-credit>.icon{width:17px;height:17px;margin-left:4px;color:var(--teal)}
.studio-credit:hover strong{text-decoration:underline;text-underline-offset:4px}
.guide-footer p a{gap:5px}
@media(min-width:681px) and (max-width:1050px){.trust-card{grid-template-columns:1fr;justify-items:center;text-align:center;gap:14px;padding:22px 18px}.trust-card>p{align-items:center}.topline{gap:12px}.topline-stars{display:none}}
@media(max-width:680px){
 .topline{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding-block:3px;font-size:12px}
 .topline-place{display:none}.topline-rating{font-size:12px;min-height:40px;gap:6px}.topline-stars{display:none}
 .topline-rating strong{font-size:16px}.topline-rating .google-icon{width:18px;height:18px}
 .trust-card{grid-template-columns:48px minmax(0,1fr);gap:16px;min-height:104px;padding:20px}
 .trust-card>.trust-icon{width:48px;height:48px}.trust-icon>.icon{width:25px;height:25px}
 .header-cta>.wa-icon{display:block;width:20px;height:20px;flex-basis:20px}
 .dock-whatsapp>.wa-icon{width:30px;height:30px}
 .header-inner{padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-right))}
 .contact-dock{right:max(14px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom))}
 .footer-meta{row-gap:8px}
}
@media(max-width:370px){.header-cta{gap:6px;padding-inline:9px}.header-inner{gap:7px}.brand{width:124px}.topline-rating{gap:5px}.rating-arrow{display:none}.trust-card{padding:18px;gap:14px}}

/* V7: expand the existing professional/service module without adding sections. */
.professional-training{display:grid;gap:12px;margin-top:20px;padding-block:18px;border-block:1px solid var(--line)}
.professional-training li{display:flex;align-items:flex-start;gap:10px;font-size:16px;line-height:1.6;color:var(--muted)}
.professional-training .icon{width:19px;height:19px;margin-top:4px;color:var(--teal);flex:0 0 19px}
.professional-training strong{color:var(--ink);font-weight:600}
.service-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.service-tabs button{font-size:15px;line-height:1.4;text-align:center;min-height:56px;padding:10px 4px;overflow-wrap:normal}
.service-tabs button:focus-visible{outline-offset:1px}
.service-panel{min-height:310px}
.service-illustration>.insole-icon{width:42px;height:42px;color:var(--teal);stroke-width:1.3}
.service-specific-cta{font-size:16px;margin-top:16px;min-height:48px;text-decoration:underline;text-underline-offset:4px;max-width:100%}
.service-concerns{border-top:1px solid #c5ddd7;padding-top:22px;margin-top:20px}
.service-concerns>h3{font-size:20px;line-height:1.4;letter-spacing:-.02em;margin-bottom:18px}
.concerns-list{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px;margin:0}
.concerns-list>div{min-width:0}
.concerns-list dt{font-size:16px;line-height:1.4;font-weight:600;color:var(--ink);margin-bottom:5px}
.concerns-list dd{margin:0;font-size:15px;line-height:1.6;color:var(--muted)}
@media(min-width:681px) and (max-width:1100px){.service-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.service-tabs button{min-height:48px}.service-panel{min-height:300px}}
@media(max-width:680px){
 .service-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;border-bottom:0}
 .service-tabs button{font-size:16px;min-height:50px;border-bottom:1px solid #c5ddd7;padding:12px 4px}
 .service-panel{min-height:335px;padding-top:22px}
 .professional-training{margin-top:18px;padding-block:16px}.professional-training li{font-size:16px}
 .service-concerns{padding-top:20px;margin-top:18px}.service-concerns>h3{font-size:21px;margin-bottom:18px}
 .concerns-list{grid-template-columns:1fr;gap:16px}.concerns-list dt{font-size:17px}.concerns-list dd{font-size:16px}
 .service-specific-cta{font-size:16px;line-height:1.5}
}

/* V8: mobile touch hierarchy, compact service reading and unobstructed copy. */
@media(max-width:680px){
 .header-inner{height:72px;gap:8px}.navigation{top:72px}
 .menu-toggle{width:44px;height:44px;align-items:center;padding:10px}
 .brand{width:150px}.brand img{max-height:45px}
 .about-copy h2{font-size:clamp(29px,8.2vw,34px);line-height:1.2;margin-bottom:18px}
 .about-copy>p:not(.eyebrow){line-height:1.65}
 .professional-training{gap:10px;padding-block:14px}
 .service-tabs{gap:6px;padding:5px;border:1px solid #c5ddd7;border-radius:12px;background:#dcebe7}
 .service-tabs button{border:0;border-radius:8px;min-height:48px;padding:11px 5px;font-size:16px;color:#284e52;transition:background .2s,color .2s,box-shadow .2s}
 .service-tabs button:after{display:none}
 .service-tabs button[aria-selected=true]{background:var(--teal);color:#fff;box-shadow:0 3px 8px #124c5220}
 .service-tabs button:focus-visible{outline-color:var(--deep);outline-offset:1px}
 .service-panel{padding-top:22px}.service-panel h3{font-size:26px;line-height:1.25}
 .service-tags{gap:7px}.service-tags li{border-color:#bed6cf}
 .service-concerns{padding-top:18px;margin-top:18px}.service-concerns>h3{font-size:22px;margin-bottom:16px}
 .concerns-list{gap:14px}.concerns-list dt,.concerns-list dd{display:inline;font-size:16px;line-height:1.6}
 .concerns-list dt:after{content:':';margin-right:.3em}.concerns-list dt{margin:0}
 .service-note{margin-top:18px;padding-top:16px}
 .quiz{padding:24px 20px}.quiz-progress{margin:14px 0 22px}
 .quiz-controls{gap:10px;justify-content:space-between}
 .quiz-controls .button{width:100%;margin-left:0;order:0}
 #quiz-back{order:1;min-height:44px}#quiz-restart{order:2;min-height:44px}
 .quiz-option[aria-pressed=true]{border-color:var(--teal);background:#e0efeb;box-shadow:0 0 0 1px var(--teal)}
 .service-specific-cta{display:flex;justify-content:space-between;padding:12px 14px;border:1px solid #a4c9c0;border-radius:9px;min-height:50px;background:#f4faf8;text-decoration:none}
 .service-specific-cta:hover{background:#e0efeb}
 .guide-topics a{min-height:44px}
}
@media(max-width:370px){.brand{width:114px}.header-inner{gap:6px}.header-cta{padding-inline:9px}.quiz{padding-inline:18px}.service-tabs button{font-size:15px}.service-panel h3{font-size:25px}}

/* V9: readable contextual links for spine services. */
.concerns-list a,.guide-article section>p>a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.concerns-list a:focus-visible,.guide-article a:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:2px}
.service-guide-link+.service-guide-link{display:flex;width:fit-content;margin-top:4px}
