/* 3 reusable CTA styles. Neutral surfaces, blue actions, contrasting arrow discs. */
:root{--button-blue:linear-gradient(115deg,#246aab,#368cc7);--button-disc-blue:linear-gradient(135deg,#71b8e6,#2678b8);--button-ink:linear-gradient(115deg,#151e27,#334854)}
body .pill,body .pill.arrow-button,body .care-action-primary,body .care-submit{background:var(--button-blue);color:#fff;border-color:#267cb8}
body .pill.arrow-button .button-disc,body .pill.arrow-button:hover .button-disc{background:linear-gradient(140deg,#fff,#edf6fd);color:#246aab;box-shadow:0 1px 5px #11385a18}
body .pill:is(.outline,.white),body .pill.arrow-button:is(.outline,.white){background:linear-gradient(120deg,#fff,#f3f8fc);color:#245e8c;border-color:#c5d9e8}
body .pill.arrow-button:is(.outline,.white) .button-disc,body .pill.arrow-button:is(.outline,.white):hover .button-disc{background:var(--button-disc-blue);color:#fff}
body .pill.ghost,body .pill.arrow-button.ghost{background:var(--button-ink);color:#fff;border-color:#324654}
body .pill.arrow-button.ghost .button-disc{background:#fff;color:#263b49}
body .pill:hover,body .pill.arrow-button:hover,body .care-action-primary:hover,body .care-submit:hover{filter:brightness(.96);color:#fff}
body .pill:is(.outline,.white):hover,body .pill.arrow-button:is(.outline,.white):hover{background:linear-gradient(120deg,#f0f7fd,#dfedf8);color:#245e8c}
body .care-submit>span,body .care-action-primary>span{display:grid;place-items:center;background:#fff;color:#246aab;border-radius:50%;width:32px;height:32px;flex:none}
body .care-submit{justify-content:space-between;padding:7px 7px 7px 20px}.care-action-primary{padding-right:8px!important}
body .card-arrow,body .offering-arrow,body .se-row-arrow,body .journal-read>span{background:var(--button-disc-blue);color:#fff;border-color:transparent}
body .nav-cta[href*="wa.me"]{background:linear-gradient(120deg,#fff,#f3f8fc);color:#243746;border-color:#dbe5ec}body a[href*="wa.me"]>svg{color:#25d366;fill:#25d366}
/* Form controls explicitly include JS-created buttons, with stable icon alignment. */
body .care-booking{background:#fffffffa;padding:clamp(24px,2.5vw,36px);border:1px solid #e4ebf0;border-radius:20px}
body .care-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 12px;margin-top:20px}
body .care-field{min-width:0;position:relative}body .care-field>label{position:static;display:block;font-size:11px;line-height:1.4;font-weight:500;color:#526473;width:auto;height:auto;clip:auto;clip-path:none;overflow:visible;white-space:normal;margin:0 0 7px}
body .care-field :is(input,select,button.booking-control){display:block;width:100%;height:48px;min-height:48px;border:1px solid #d8e2ea;border-radius:10px;background:#fff;color:#263c4b;padding:0 12px 0 41px;font:400 13px 'Poppins',Arial,sans-serif;text-align:left;box-shadow:0 2px 3px #173a5503;max-width:100%}
body .care-field button.booking-control{cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;appearance:none;color:#71828e}
body .care-field button.booking-control.has-value{color:#203f54}body .care-field .care-input-icon{position:absolute;left:14px;top:auto;bottom:15px;transform:none;width:17px;height:17px;pointer-events:none;fill:none;stroke:#577489}
body .care-field :is(input,select,button.booking-control):focus-visible{outline:2px solid #4c98d5;outline-offset:2px;border-color:#70a9d1}
body .care-field :is(input,select)[hidden]{display:none!important}body .care-form .care-full{grid-column:1/-1}.care-whatsapp{margin-top:2px}
/* Photography has a frame and an environment; diagrams retain their explanatory role. */
.clinical-photo-hero{position:relative;isolation:isolate;background:linear-gradient(115deg,#fff,#f4f8fb);overflow:hidden}
body .clinical-photo-hero .category-hero-image{position:absolute;left:auto;right:max(40px,calc((100vw - 1240px)/2));top:50%;transform:translateY(-50%);width:43%;height:76%;max-height:420px;object-fit:cover;border-radius:18px;mask-image:none;-webkit-mask-image:none;filter:none;opacity:1;z-index:-1}
body .clinical-photo-hero .category-hero-content{position:relative;padding-top:25px;padding-bottom:55px;min-height:480px}body .clinical-photo-hero .category-hero-copy{max-width:51%;padding-top:35px}body .clinical-photo-hero .category-hero-copy h1{font-size:clamp(2.4rem,4.4vw,4.3rem)}
body .clinical-photo-hero .category-promises{gap:16px;flex-wrap:wrap;font-size:11px}body .clinical-photo-hero .actions{gap:12px}
body .offering-picture{padding:0;overflow:hidden;background:#f2f6f9}body .offering-picture img{width:100%;height:180px;object-fit:cover;mask-image:none;-webkit-mask-image:none;filter:none}
body .specialty-art{padding:0;overflow:hidden;min-height:140px;border-radius:9px}body .specialty-art img{width:100%;height:150px;object-fit:cover;filter:none;mask-image:none;-webkit-mask-image:none}
body .se-hero-figure img,body .se-ortho .se-hero-figure img{object-fit:cover;background:none;border-radius:16px;mask-image:none;-webkit-mask-image:none}
body .inner-hero-visual:has(img[src*="/photos/"]){border-radius:18px;overflow:hidden;background:none;mask-image:none;-webkit-mask-image:none}
body .inner-hero-visual img[src*="/photos/"]{width:100%;height:360px;object-fit:cover;filter:none;mask-image:none;-webkit-mask-image:none;border-radius:18px}
.practitioner-photo{margin:0;background:linear-gradient(120deg,#f5f9fc,#fff);border-radius:16px;overflow:hidden;max-width:480px}.practitioner-photo img{width:100%;height:450px;object-fit:contain;object-position:bottom}.practitioner-photo figcaption{padding:15px 22px;color:#586c7a;font-size:12px}
body.home .editorial-smile>.smile-panorama{object-position:center}body.home .editorial-smile{background:#fff}body.home .editorial-smile:after{background:linear-gradient(90deg,#f7fafc 32%,#f7fafcf0 40%,#f7fafc00 66%)}
.journal-heading h1{font-size:clamp(2.6rem,4.3vw,4.25rem)}
/* TBW Health inspired guided booking. */
.home-request{padding:clamp(55px,7vw,100px) 0;background:linear-gradient(120deg,#fff,#f1f7fc)}.home-request-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(35px,6vw,85px);align-items:center}.home-request-copy h2{font-size:clamp(2rem,3.3vw,3.25rem);line-height:1.12;margin-bottom:24px}.home-request-copy h2 em{font-style:normal;color:#347fb6}.home-request-copy>p{font-size:14px;line-height:1.9;color:#667985;max-width:440px}.home-request-contacts{display:grid;gap:14px;margin:30px 0}.home-request-contacts a{display:flex;gap:14px;align-items:center;color:#263f50;font-size:11px}.home-request-contacts strong{display:block;font-size:15px;font-weight:500;margin-top:4px}.home-request-contacts svg{width:23px;height:23px;fill:currentColor}.home-request-copy .home-request-address{font-size:12px;max-width:370px;color:#82909a}
.home-request-panel{background:#fff;border:1px solid #e2eaf0;border-radius:20px;padding:clamp(23px,3vw,38px);min-width:0}.request-progress{list-style:none;display:flex;padding:0;margin:0 0 34px;gap:12px;justify-content:space-between;border-bottom:1px solid #e7edf2;padding-bottom:24px}.request-progress li{display:flex;gap:8px;align-items:center;font-size:10px;color:#8b99a3}.request-progress li>span{width:25px;height:25px;display:grid;place-items:center;border:1px solid #e0e8ee;border-radius:50%;background:#f8fafc}.request-progress li[aria-current]{color:#256fa8}.request-progress li[aria-current]>span,.request-progress li.is-done>span{background:#2b7eb9;color:#fff;border-color:#2b7eb9}
.request-form fieldset{border:0;padding:0;margin:0;min-width:0}.request-form legend{font-family:'Outfit',Arial,sans-serif;font-size:clamp(1.3rem,1.7vw,1.7rem);font-weight:500;letter-spacing:-.025em;line-height:1.25;padding:0;margin-bottom:12px}.request-form fieldset>p{font-size:12px;line-height:1.8;color:#7a8a95;max-width:430px;margin-bottom:25px}.request-form label{display:block;font-size:12px;font-weight:500;color:#4c6576;margin-bottom:9px}.request-form :is(input:not([type=hidden]),select){width:100%;height:51px;border:1px solid #dce5ed;border-radius:9px;padding:0 14px;background:#fbfdff;font:400 13px 'Poppins',Arial,sans-serif;color:#314c60;min-width:0}.request-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 14px}.request-full{grid-column:1/-1}.request-navigation{display:flex;justify-content:flex-end;gap:15px;align-items:center;margin-top:30px}.request-back{background:none;color:#607b8f;font-size:12px;padding:12px 0;margin-right:auto}.request-privacy{color:#84939e;font-size:10px;line-height:1.7;margin:18px 0 0}.request-form [hidden],.request-navigation [hidden]{display:none!important}.request-form fieldset:not([hidden])+fieldset:not([hidden]){margin-top:26px}
.clinical-case-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:30px}.clinical-case-heading h2{font-size:clamp(2rem,3vw,3rem);margin:0}.clinical-case-heading p{font-size:13px;color:#6c7e8b;line-height:1.9;margin:0}.clinical-case-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.clinical-case-pair figure{margin:0;overflow:hidden;border-radius:14px;background:#fff;border:1px solid #e1e8ee}.clinical-case-pair img{width:100%;height:300px;object-fit:contain;background:#151515}.clinical-case-pair figcaption{padding:17px 22px;font-size:13px;color:#344f61}.clinical-case-source{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.clinical-case-source p{font-size:11px;color:#7e8c96;margin:0}
@media(max-width:850px){body .clinical-photo-hero .category-hero-image{position:relative;right:auto;top:auto;transform:none;width:calc(100% - 40px);height:280px;max-height:none;margin:25px auto 0;z-index:0}.clinical-photo-hero{display:flex;flex-direction:column}.clinical-photo-hero .category-hero-image{order:2}body .clinical-photo-hero .category-hero-content{min-height:0;padding-bottom:0}body .clinical-photo-hero .category-hero-copy{max-width:100%;padding-top:24px}.clinical-photo-hero:after{display:none}body .clinical-photo-hero{padding-bottom:30px}.home-request-layout{grid-template-columns:1fr;gap:30px}.home-request-copy>p{max-width:100%}.home-request-contacts{grid-template-columns:1fr 1fr}.clinical-case-heading{grid-template-columns:1fr;gap:20px}.clinical-case-pair img{height:240px}}
@media(max-width:540px){body .care-booking{padding:24px 20px}body .care-field :is(input,select,button.booking-control){font-size:16px;padding-left:36px}body .care-field .care-input-icon{left:12px;width:15px}body .care-form{gap:15px 10px}.home-request-contacts{grid-template-columns:1fr}.request-progress{gap:7px}.request-progress li{flex-direction:column;align-items:flex-start;gap:7px;font-size:10px}.request-fields{grid-template-columns:1fr}.request-full{grid-column:auto}.home-request-panel{padding:25px 22px}.clinical-case-pair{grid-template-columns:1fr}.clinical-case-pair img{height:260px}.clinical-case-source{align-items:start;flex-direction:column}.practitioner-photo img{height:340px}body .inner-hero-visual img[src*="/photos/"]{height:250px}.journal-heading h1{font-size:2.65rem}body .pill.arrow-button{font-size:11px;gap:12px}}

body a.wa-float[href] svg{color:#fff;fill:#fff}

.clinical-photo-caption{font-size:10px;color:#80909b;margin-bottom:17px!important;text-align:right}.clinical-photo-hero .clinical-photo-caption{order:3}@media(max-width:850px){.clinical-photo-caption{text-align:left;margin-top:15px!important}}

body .category-page .category-offering-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
body .category-page .category-offering{background:#fff;border:1px solid #e0e9f0;border-radius:12px;text-align:left}
body .category-page .category-offering .offering-copy{padding:25px 27px 65px;position:relative;min-height:190px}
body .category-page .category-offering h3{font-size:clamp(1.25rem,1.5vw,1.7rem);margin:0 0 13px}
body .category-page .category-offering p{font-size:13px;line-height:1.85;color:#6c7f8c;margin:0}
body .category-page .category-offering .offering-arrow{position:absolute;bottom:20px;right:24px}
body .clinical-photo-hero .category-hero-image{border-radius:18px!important}
@media(max-width:650px){body .category-page .category-offering-grid{grid-template-columns:1fr}}

body .inner-hero-visual:has(img[src*="/clinic/"]){background:none;overflow:hidden;border-radius:18px;mask-image:none;-webkit-mask-image:none}
body .inner-hero-visual img[src*="/clinic/"]{width:100%;height:360px;object-fit:cover;filter:none;border-radius:18px;mask-image:none;-webkit-mask-image:none}
.clinic-gallery-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:35px}.clinic-gallery-heading h2{margin:0;font-size:clamp(2rem,3vw,3.3rem)}.clinic-gallery-heading p{font-size:14px;color:#6d7f8c;line-height:1.9;margin:0}
.clinic-gallery-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:22px}.clinic-gallery-grid figure{margin:0;position:relative;border-radius:14px;overflow:hidden}.clinic-gallery-main{grid-row:span 2}.clinic-gallery-grid img{width:100%;height:240px;object-fit:cover}.clinic-gallery-grid .clinic-gallery-main img{height:502px}.clinic-gallery-grid figcaption{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,#0009);padding:28px 22px 18px;color:#fff;font-size:13px}.clinic-gallery>.textlink{margin-top:20px}
.clinical-gallery{border-top:1px solid #e5ecf2}.clinical-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.clinical-gallery-grid figure{margin:0;border-radius:14px;overflow:hidden;background:#fff;border:1px solid #e0e8ee}.clinical-gallery-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#f7f8fa}.clinical-gallery-grid a{display:block}.clinical-gallery-grid figcaption{padding:18px 22px}.clinical-gallery-grid figcaption>span{display:block;font-size:14px;color:#294c64}.clinical-gallery-grid small{font-size:10px;color:#85949e;display:block;margin-top:6px}
@media(max-width:700px){.clinic-gallery-heading{grid-template-columns:1fr;gap:20px}.clinic-gallery-grid{grid-template-columns:1fr}.clinic-gallery-main{grid-row:auto}.clinic-gallery-grid .clinic-gallery-main img,.clinic-gallery-grid img{height:250px}.clinical-gallery-grid{grid-template-columns:1fr}.clinical-gallery-grid img{aspect-ratio:auto;max-height:none}body .inner-hero-visual img[src*="/clinic/"]{height:250px}}

.request-form .booking-control{width:100%;height:51px;min-height:51px;border:1px solid #dce5ed;border-radius:9px;padding:0 35px 0 14px;background:#fbfdff;font:400 13px 'Poppins',Arial,sans-serif;color:#6c8190;display:block;appearance:none;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.request-form .booking-control.has-value{color:#294e68}.request-form .booking-control:focus-visible{outline:2px solid #4c98d5;outline-offset:2px}.request-form .booking-control:hover{border-color:#92b8d3}
.request-summary{font-size:11px;color:#336683;background:linear-gradient(110deg,#edf6fd,#fafcfe);padding:12px 15px;border:1px solid #daeaf6;border-radius:9px;line-height:1.8;margin-bottom:22px}
.booking-dialog[id$="service-dialog"]{max-width:480px}

.practitioner-training{margin-top:26px;padding-top:24px;border-top:1px solid #e1e9ef}.practitioner-training h3{font-size:20px;line-height:1.3;margin:0 0 15px}.practitioner-training ul{padding-left:18px;margin:0;font-size:12px;color:#6b7e8b;line-height:1.9}.practitioner-training li+li{margin-top:7px}.practitioner-training .textlink{font-size:10px;margin-top:12px}

/* Owner ban: standalone underlined text CTAs are "AI buttons". */
body .textlink{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;border:1px solid #c5d9e8;border-radius:999px;background:linear-gradient(120deg,#fff,#f0f7fc);color:#245e8c;text-decoration:none;font-size:12px;line-height:1.5;max-width:100%;white-space:normal}
body .textlink:hover{background:linear-gradient(120deg,#edf6fd,#deedf8);border-color:#9bbfdc;color:#1b5683}
body .textlink:focus-visible{outline:2px solid #4c98d5;outline-offset:3px}
body .prose p .textlink{display:inline;padding:0;border:0;border-radius:0;background:none;color:#246ca3;text-decoration:underline;text-underline-offset:3px}