/* Clinic Grower, expressive editorial system. Shared by native and library pages. */
:root{--cg-accent-gradient:linear-gradient(110deg,#17243a 0%,#25344d 48%,#ab5d2f 100%);--cg-action-gradient:linear-gradient(130deg,#17243a 0%,#25344d 100%);--cg-warm-rule:#b97745}
/* Solid reading headings; gradient emphasis is reserved for hero and decision points. */
html:root body main :is(h1,h2),html:root body #main-content :is(h1,h2){background-image:none!important;-webkit-text-fill-color:currentColor!important}
html:root body main h1:not(:has(span)),html:root body #main-content h1:not(:has(span)),
html:root body main :is(h1,h2) :is(.gradient-text,.text-gradient,.gradient-text-copper),
html:root body #main-content :is(h1,h2) :is(.gradient-text,.text-gradient,.gradient-text-copper),
html:root body #main-content .se-hero h1 span,
html:root body #main-content :is(.cg-final-cta,.cg-enquiry-bridge,.se-close) h2{
 background-image:var(--cg-accent-gradient)!important;background-clip:text!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;color:#17243a!important;
}
html:root body #main-content .se-hero h1{color:#17243a!important}
html:root body main :is(.se-partnership,.cg-section--ink,.editorial-close) h2{color:#f8f5ef!important}
html:root body main .editorial-close h2{background-image:linear-gradient(110deg,#f8f5ef,#d9b5a0 60%,#edc298)!important;background-clip:text!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important}
html:root body :is(.btn-primary,.btn-copper,.btn-copper-sm,.cg-button,.button),
html:root body :is(.btn-primary,.btn-copper,.btn-copper-sm,.cg-button,.button):visited{
 background:var(--cg-action-gradient)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:1px solid #25344d!important;border-radius:8px!important;
 box-shadow:inset 0 1px 0 #ffffff26,0 4px 10px #17243a1a!important;transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important;
}
html:root body .cg-contact-bar__message{background:var(--cg-action-gradient)!important;color:#fff!important}
html:root body :is(.btn-primary,.btn-copper,.btn-copper-sm,.cg-button,.button):focus-visible{outline:3px solid #9b542b!important;outline-offset:4px!important}
html:root body .cg-home-hero,html:root body #main-content>.se-page>.se-hero,
html:root body :is(.editorial-hero,.library-hero){background:linear-gradient(112deg,#f8f5ef 0%,#f8f5ef 45%,#faf2e8 100%)!important;border-bottom:1px solid #e7dfd5!important}
html:root body .cg-home-hero h1{letter-spacing:-.045em!important;line-height:1.08!important}
html:root body .cg-director-film{box-shadow:0 20px 50px #17243a1f!important;border-color:#fff!important}
html:root body .cg-director-film figcaption{border-top:3px solid var(--cg-warm-rule)!important;background:linear-gradient(125deg,#17243a,#17243a)!important}
html:root body .se-hero figure img{border-radius:10px;box-shadow:0 18px 46px #17243a1c}
html:root body .se-hero figcaption{padding-left:14px;border-left:2px solid var(--cg-warm-rule);margin-top:16px;padding-top:0}
html:root body .se-hero-brief{background:#ffffffbf;border:1px solid #e7dfd5;border-top:3px solid var(--cg-warm-rule);border-radius:10px;padding:32px;box-shadow:0 16px 40px #17243a10}
html:root body .cg-clinic-selector{background:#fff!important}
html:root body .cg-clinic-selector .cg-directory{gap:0 30px}
html:root body .cg-clinic-selector .cg-directory a{border-bottom-color:#e7dfd5;color:#17243a;transition:background .2s,border-color .2s,padding .2s!important}
html:root body .cg-clinic-selector .cg-directory a span{color:#9b542b}
html:root body .cg-review-strip a{border-left:2px solid var(--cg-warm-rule)!important;background:linear-gradient(110deg,#f8f5ef,#fff)!important}
html:root body .cg-enquiry-bridge{background:linear-gradient(112deg,#f8f5ef,#fbf1e5)!important;border-top:1px solid #e7dfd5}
html:root body .cg-final-cta,html:root body .se-close{background:linear-gradient(112deg,#f8f5ef,#fbf0e3)!important}
html:root body .se-route-grid article{border-top:2px solid #b97745}
html:root body .journal-card{border-top-color:#b97745}
html:root body .article-brief{border-top-color:#b97745}
html:root body .cg-result{box-shadow:0 10px 30px #17243a10;border-color:#e7dfd5}
@media(min-width:1024px){html:root body .cg-home-hero h1{font-size:clamp(48px,4.3vw,64px)!important}}
@media(hover:hover) and (pointer:fine){
 html:root body :is(.btn-primary,.btn-copper,.btn-copper-sm,.cg-button,.button):hover{background:linear-gradient(130deg,#17243a,#25344d)!important;transform:translateY(-2px)!important;box-shadow:inset 0 1px 0 #ffffff26,0 8px 20px #17243a26!important;color:#fff!important}
 html:root body .cg-clinic-selector .cg-directory a:hover{background:#f8f5ef;border-bottom-color:#a96839;padding-left:10px;padding-right:10px}
 html:root body :is(.cg-owner-quote,.cg-resource-card,.se-directory-grid>a,.related a){transition:transform .22s ease,box-shadow .22s ease!important}
 html:root body :is(.cg-owner-quote,.cg-resource-card,.se-directory-grid>a,.related a):hover{transform:translateY(-3px);box-shadow:0 10px 24px #17243a12}
 html:root body .cg-hero-sector-link span{transition:transform .2s}
 html:root body .cg-hero-sector-link:hover span{transform:translateY(3px)}
}
/* A short, fully opaque entrance. Content is visible before CSS and without JavaScript. */
@keyframes cg-title-arrive{from{transform:translateY(12px)}to{transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){html:root body main h1{animation:cg-title-arrive .65s cubic-bezier(.16,1,.3,1) both}}
@media(max-width:767px){html:root body .cg-home-hero h1{line-height:1.12!important}html:root body .se-hero-brief{padding:24px}html:root body .cg-director-film{box-shadow:0 12px 28px #17243a18!important}}
@media(prefers-reduced-motion:reduce){html:root{scroll-behavior:auto!important}html:root body main h1{animation:none!important}html:root body :is(.btn-primary,.btn-copper,.btn-copper-sm,.cg-button,.button,.cg-directory a,.cg-owner-quote,.cg-resource-card,.se-directory-grid>a,.related a,.cg-hero-sector-link span){transition:none!important;transform:none!important}}
@media(forced-colors:active),print{html:root:root:root body main :is(h1,h2,h1 span,h2 span),html:root body #main-content#main-content :is(h1,h2,h1 span,h2 span){background:none!important;-webkit-text-fill-color:currentColor!important;color:inherit!important}html:root body main h1{animation:none!important}}

