/* Preserve the supplied composition, photography, mascot and palette. */
:root { --ssfc-ink:#33262d; --ssfc-pink:#ad3c69; --ssfc-soft:#fff0f5; --ssfc-line:#e4c7d2; }
html { -webkit-text-size-adjust:100%; scroll-padding-top:7rem; }
body.ssfc-renewed { overflow-x:clip; }
.ssfc-renewed :is(p,.p_gen,.p_specific_about,.text_cap,.team_cred) { font-size:clamp(1rem,1.13vw,1.25rem); line-height:1.8; }
.ssfc-renewed :is(a,button,summary):focus-visible { outline:3px solid #873954; outline-offset:5px; }
.ssfc-renewed :is(.news_tag,.tag_txt,.title_cap,.sub_caption) { font-size:max(.875rem,.85em); }
.ssfc-renewed .footer { font-size:1rem; }
.ssfc-renewed .footer a { font-size:1rem; }
.ssfc-renewed .footer .image { max-width:100%; }
.ssfc-renewed .arrow_button { display:none; }
.ssfc-renewed .flex_button_general { justify-content:center; }
.ssfc-renewed .flex_button_general>div:first-child { font-size:1rem; }
.ssfc-renewed .button { min-height:48px; }
.ssfc-renewed .ssfc-contact-button>span[aria-hidden=true] { display:none; }
.ssfc-renewed .mascot_wrap { isolation:isolate; }
.ssfc-renewed .article_content { width:100%; max-width:52rem; color:var(--ssfc-ink); font-size:1.125rem; line-height:1.9; }
.ssfc-renewed .article_content :is(p,li) { font-size:1.125rem; line-height:1.9; }
.ssfc-renewed .article_content h2 { font-size:clamp(1.4rem,2vw,1.85rem); line-height:1.5; color:var(--ssfc-pink); margin:0 0 1rem; }
.ssfc-renewed .article_content p { margin:0 0 1rem; }
.ssfc-renewed .article_content ul,.ssfc-renewed .article_content ol { padding-left:1.6rem; }
.ssfc-renewed .article_content li { padding-left:.15rem; margin:.5rem 0; }
.ssfc-renewed .article_content a { color:#923256; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.ssfc-renewed .article_body { padding-top:4rem; }
.ssfc-renewed .body_content { min-width:0; }
.ssfc-renewed .fullsize_cover { max-height:30rem; }
.ssfc-renewed .fullsize_cover .image { object-fit:cover; }
.ssfc-renewed .news_heading { line-height:1.3; }
.ssfc-renewed .next_link .title_next_article { font-size:1.15rem; line-height:1.6; }
.ssfc-updated { color:#765b68; font-size:.875rem!important; }
.ssfc-renewed .ssfc-edu-summary { font-size:1.25rem; color:#4b3240; }
.ssfc-keypoints { margin:2rem 0; background:var(--ssfc-soft); border-left:4px solid var(--ssfc-pink); padding:1.5rem 1.7rem; }
.ssfc-keypoints ul { margin:0; }
.ssfc-toc { display:flex; flex-direction:column; gap:.65rem; border-top:1px solid var(--ssfc-line); border-bottom:1px solid var(--ssfc-line); padding:1.5rem 0; margin:2rem 0 3rem; }
.ssfc-toc p { font-weight:600; margin:0!important; }
.ssfc-toc a { font-size:1rem; }
.ssfc-edu-section { margin:0 0 3rem; scroll-margin-top:7rem; }
.ssfc-fibroid-table { margin:1.5rem 0; }
.ssfc-fibroid-table table { width:100%; table-layout:fixed; border-collapse:collapse; font-size:1rem; line-height:1.7; }
.ssfc-fibroid-table caption { text-align:left; font-weight:600; margin-bottom:.8rem; }
.ssfc-fibroid-table th,.ssfc-fibroid-table td { border:1px solid var(--ssfc-line); padding:.9rem; text-align:left; vertical-align:top; overflow-wrap:anywhere; }
.ssfc-fibroid-table thead { background:var(--ssfc-soft); }
.ssfc-fibroid-table th:first-child { width:24%; }
@media (max-width:479px) { .ssfc-fibroid-table th,.ssfc-fibroid-table td { padding:.6rem .4rem; } }
.ssfc-faq { margin:3rem 0; }
.ssfc-faq details { border-bottom:1px solid var(--ssfc-line); padding:1.1rem 0; }
.ssfc-faq summary { cursor:pointer; font-weight:600; line-height:1.6; padding-right:1rem; }
.ssfc-faq details p { margin:1rem 0 0!important; }
.ssfc-alert { background:#fff3e7; border-left:4px solid #ca751b; padding:1.3rem 1.5rem; }
.ssfc-edu-next { padding:2rem; background:var(--ssfc-soft); margin:3rem 0; }
.ssfc-sources { padding-top:1.5rem; border-top:1px solid var(--ssfc-line); }
.ssfc-renewed .ssfc-sources :is(p,li,a) { font-size:.95rem; }
.ssfc-actions { display:flex; flex-wrap:wrap; gap:.8rem; align-items:center; }
.ssfc-action { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:.7rem 1.2rem; border:1px solid var(--ssfc-pink); background:var(--ssfc-pink); color:#fff!important; text-decoration:none!important; font:inherit; font-size:1rem; line-height:1.45; text-align:center; }
.ssfc-action.outline { background:transparent; color:#803252!important; }
.ssfc-action:hover { background:#85274c; color:#fff!important; }
.ssfc-footer-contact { padding:2.5rem max(5vw,1.25rem); border-bottom:1px solid #0002; display:flex; gap:2rem; justify-content:space-between; align-items:center; color:#33262d; }
.ssfc-footer-contact strong { font-size:1.3rem; }
.ssfc-footer-contact p { margin:.3rem 0; font-size:1rem!important; }
.ssfc-footer-education { max-width:30rem; }
.ssfc-mobile-actions { display:none; }
.ssfc-skip { position:fixed; top:-100px; left:1rem; z-index:10000; background:#fff; color:#85274c; padding:1rem; font-size:1rem; }
.ssfc-skip:focus { top:1rem; }
.ssfc-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.ssfc-filters { flex:0 0 13rem; display:flex; flex-direction:column; gap:.5rem; align-self:flex-start; position:sticky; top:7rem; }
.ssfc-filters h2 { font-size:1.2rem; color:var(--ssfc-ink); margin:0 0 1rem; }
.ssfc-filters button { background:#fff; border:1px solid #dfcbd3; color:#6b3b4f; padding:.8rem 1rem; font-size:1rem; min-height:48px; text-align:left; cursor:pointer; display:flex; justify-content:space-between; gap:1rem; }
.ssfc-filters button[aria-pressed=true] { color:#fff; background:var(--ssfc-pink); border-color:var(--ssfc-pink); }
.ssfc-filters span { opacity:.8; }
.ssfc-renewed .articles_grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; }
.ssfc-renewed .ssfc-education-card { width:auto; }
.ssfc-education-card[hidden] { display:none!important; }
.ssfc-renewed .ssfc-education-card .article_title { font-size:1.5rem; line-height:1.5; margin:1rem 0; color:var(--ssfc-pink); }
.ssfc-renewed .ssfc-card-summary { font-size:1.05rem; color:#4c3942; margin:0 0 1rem; }
.ssfc-read { font-size:1rem; color:var(--ssfc-pink); text-decoration:underline; text-underline-offset:4px; }
.ssfc-renewed .ssfc-result-count { color:#705665; font-size:1rem; margin-top:1rem; }
.ssfc-renewed .ssfc-education-card .image_article { aspect-ratio:4/3; height:auto; }
.ssfc-renewed .ssfc-education-card .image_article img { object-fit:cover; height:100%; }
.ssfc-renewed .ssfc-education-card .tags_higlight { flex-wrap:wrap; gap:.6rem 1rem; }
.ssfc-renewed .ssfc-education-card .news_tag { font-size:.875rem; }
.ssfc-service-education { margin:1.5rem 0 2rem; }
.ssfc-service-education p { color:var(--ssfc-ink); }
.ssfc-contact-guide { color:#33262d; padding:1.5rem 0; }
.ssfc-contact-guide h2 { color:var(--ssfc-pink); font-size:2rem; margin:0 0 2rem; }
.ssfc-contact-guide h3 { color:var(--ssfc-pink); font-size:1.3rem; margin:0 0 .6rem; }
.ssfc-visit-step { display:flex; gap:1.4rem; padding:1.5rem 0; border-top:1px solid var(--ssfc-line); }
.ssfc-visit-step>span { font-size:1.3rem; color:var(--ssfc-pink); }
.ssfc-location { background:var(--ssfc-soft); padding:1.5rem; margin-top:2rem; }
.ssfc-renewed .ssfc-contact-actions :is(p,a) { font-size:1rem; line-height:1.8; }
.ssfc-renewed .ssfc-line-qr { max-width:15rem; }
.ssfc-line-help { box-sizing:border-box; width:calc(100% - 2rem); max-width:26rem; max-height:calc(100dvh - 2rem); margin:auto; padding:1.5rem; border:1px solid var(--ssfc-line); border-radius:20px; background:#fff; color:var(--ssfc-ink); overflow:auto; text-align:center; font-family:system-ui,sans-serif; }
.ssfc-line-help::backdrop { background:rgba(51,38,45,.5); }
.ssfc-line-help form { display:flex; justify-content:flex-end; margin:0; }
.ssfc-line-close { min-height:44px; padding:.5rem .8rem; border:1px solid var(--ssfc-line); background:#fff0f5; color:#803252; border-radius:8px; font:inherit; cursor:pointer; }
.ssfc-line-help h2 { margin:.5rem 0 1rem; font-size:1.5rem; line-height:1.4; color:var(--ssfc-pink); }
.ssfc-line-help p { margin:.8rem 0; font-size:1rem; line-height:1.7; }
.ssfc-line-id { user-select:all; -webkit-user-select:all; font-weight:700; }
.ssfc-line-help .ssfc-line-id { font-size:1.5rem; color:#803252; }
.ssfc-line-help img { display:block; width:min(100%,12rem); height:auto; margin:1rem auto; }
.ssfc-line-help .ssfc-action { width:100%; box-sizing:border-box; }
.ssfc-phone-close-row { display:flex; justify-content:flex-end; }
.ssfc-phone-help label { display:block; font-size:1rem; }
.ssfc-phone-help .ssfc-phone-number { display:block; width:100%; min-width:0; margin:.6rem 0 1rem; padding:.8rem .4rem; border:1px solid var(--ssfc-line); border-radius:8px; background:var(--ssfc-soft); color:#803252; font:700 clamp(1.35rem,6vw,1.8rem)/1.5 system-ui,sans-serif; text-align:center; user-select:text; -webkit-user-select:text; }
.ssfc-phone-actions { display:grid; gap:.8rem; }
.ssfc-phone-actions button { cursor:pointer; }
.ssfc-phone-help .ssfc-phone-status { min-height:1.7em; margin-bottom:0; }
.ssfc-legal-section { max-width:58rem; padding:2rem 0; color:var(--ssfc-ink); }
.ssfc-legal-section h2 { font-size:1.6rem; line-height:1.5; color:var(--ssfc-pink); margin:0 0 1rem; }
.ssfc-renewed .ssfc-legal-section p { font-size:1.125rem; line-height:1.9; }
.ssfc-share { color:var(--ssfc-pink); border:1px solid var(--ssfc-line); background:white; font-size:1rem; padding:.7rem 1rem; cursor:pointer; min-height:44px; }
.ssfc-not-found { margin:0; min-height:100vh; display:grid; place-items:center; background:#fff0f5; color:#632440; font-family:system-ui,sans-serif; padding:2rem; }
.ssfc-not-found a { color:#85274c; }
@media (max-width:991px) {
 .ssfc-renewed { padding-bottom:calc(66px + env(safe-area-inset-bottom)); }
 .ssfc-renewed .hero .wrapper_hero { padding-bottom:calc(6rem + env(safe-area-inset-bottom)); }
 .ssfc-mobile-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); position:fixed; bottom:0; left:0; right:0; z-index:999; padding-bottom:env(safe-area-inset-bottom); background:#fff; box-shadow:0 -2px 14px #5c243218; border-top:1px solid #e7cfd8; }
 .ssfc-mobile-actions a { display:flex; align-items:center; justify-content:center; min-height:64px; padding:.6rem .3rem; font-size:1rem; font-weight:600; color:#8d3053; text-decoration:none; }
 .ssfc-mobile-actions a:first-child { background:var(--ssfc-pink); color:#fff; }
 .ssfc-mobile-actions a+a { border-left:1px solid #edd5de; }
 .ssfc-footer-contact { display:block; }
 .ssfc-footer-contact .ssfc-actions { margin-top:1.2rem; }
 .ssfc-filters { position:static; flex-direction:row; flex-wrap:wrap; flex-basis:auto; width:100%; }
 .ssfc-filters h2 { width:100%; margin-bottom:.5rem; }
 .ssfc-filters button { flex:1 1 8.5rem; }
 .ssfc-renewed .flex_articles { flex-direction:column; gap:2rem; }
 .ssfc-renewed .articles_cms { width:100%; }
 .ssfc-renewed .article_body { padding-top:2.5rem; }
 .ssfc-renewed .article_content { max-width:none; }
 .ssfc-renewed .flex_article_body { gap:2.5rem; }
 .ssfc-renewed .fullsize_cover { max-height:24rem; }
 .ssfc-renewed .ssfc-contact-actions { width:100%; }
}
@media (max-width:600px) {
 .ssfc-renewed .articles_grid { grid-template-columns:minmax(0,1fr); gap:2.5rem; }
 .ssfc-renewed .article_content :is(p,li) { font-size:1.125rem; }
 .ssfc-renewed .article_content h2 { font-size:1.5rem; }
 .ssfc-renewed .ssfc-edu-summary { font-size:1.2rem; }
 .ssfc-keypoints,.ssfc-alert,.ssfc-edu-next { padding:1.25rem; }
 .ssfc-renewed .news_heading { font-size:2.25rem; }
 .ssfc-renewed .wrapper_news_blog { padding-top:7rem; }
 .ssfc-renewed .fullsize_cover { max-height:18rem; }
 .ssfc-renewed .body_content,.ssfc-renewed .flex_article_body { width:100%; }
 .ssfc-renewed .next_active { display:none; }
 .ssfc-renewed .hero .h1 { font-size:clamp(2.6rem,10vw,3.4rem); }
 .ssfc-renewed .ssfc-contact-guide { width:100%; }
 .ssfc-actions .ssfc-action { flex:1 1 auto; }
 .ssfc-toc a { font-size:1rem; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto!important; }
 .ssfc-renewed *, .ssfc-renewed *::before,.ssfc-renewed *::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
@media print {
 .header,.mobile_menu,.ssfc-mobile-actions,footer,.next_active,.cta_box,.ssfc-share,.ssfc-toc,.fullsize_cover { display:none!important; }
 .ssfc-renewed { padding:0; background:white; color:black; }
 .ssfc-renewed .article_content { max-width:none; }
 .ssfc-edu-section { break-inside:avoid; }
}

.ssfc-service-photo { width:100%;height:100%;object-fit:cover;display:block; }
/* Preserve every original face and sign; lift exposure and soften dark shadows. */
.image_box img.ssfc-team-photo {
  filter: brightness(1.5) contrast(0.88) saturate(1.04);
}
/* Examination guides: full-width section, readable cards on both screen sizes. */
.ssfc-checks { padding:clamp(3rem,6vw,6rem) 0; background:#fffafc; color:var(--ssfc-ink); }
.ssfc-checks-inner { width:calc(100% - 2.5rem); max-width:76rem; margin:0 auto; }
.ssfc-renewed .ssfc-eyebrow { color:#84334f; font-size:.95rem; font-weight:600; letter-spacing:.08em; margin:0 0 .8rem; }
.ssfc-checks h2 { font-size:clamp(1.75rem,3vw,2.8rem); line-height:1.4; color:var(--ssfc-pink); margin:0 0 1rem; }
.ssfc-checks-lead { max-width:50rem; margin:0 0 2rem; }
.ssfc-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.ssfc-check-card { min-width:0; padding:clamp(1.25rem,2.5vw,2rem); border:1px solid var(--ssfc-line); background:#fff; display:flex; flex-direction:column; }
.ssfc-checks h3 { margin:0 0 1.25rem; font-size:1.3rem; line-height:1.6; color:#84334f; }
.ssfc-check-card dl { margin:0; }
.ssfc-check-card dl>div { margin-bottom:1rem; }
.ssfc-check-card dt { font-size:1.05rem; line-height:1.7; font-weight:700; }
.ssfc-check-card dd { margin:.3rem 0 0; font-size:1.05rem; line-height:1.85; overflow-wrap:anywhere; }
.ssfc-renewed .ssfc-check-timing { margin:auto 0 0; padding-top:1rem; border-top:1px solid #ecdde3; font-size:1rem; line-height:1.8; }
.ssfc-check-timing strong { display:block; margin-bottom:.25rem; color:#84334f; }
.ssfc-check-prep { margin-top:2rem; padding:clamp(1.25rem,2.5vw,2rem); background:var(--ssfc-soft); }
.ssfc-check-prep h3 { margin-bottom:.75rem; }
.ssfc-check-prep ul { margin:0; padding-left:1.4rem; }
.ssfc-check-prep li { margin:.5rem 0; font-size:1.05rem; line-height:1.8; }
.ssfc-renewed .ssfc-check-note { margin:1.25rem 0; font-size:1rem; line-height:1.8; color:#674551; }
.ssfc-check-sources { border-top:1px solid var(--ssfc-line); margin-top:1.5rem; padding-top:.5rem; }
.ssfc-check-sources summary { padding:.8rem 0; cursor:pointer; font-size:1rem; color:#84334f; min-height:44px; }
.ssfc-check-sources ul { padding-left:1.4rem; }
.ssfc-check-sources li { margin:.7rem 0; font-size:.95rem; line-height:1.65; }
.ssfc-check-sources a { color:#84334f; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.ssfc-renewed .ssfc-check-sources p { font-size:.875rem; }
.ssfc-check-sources li,.ssfc-sources li[id] { scroll-margin-top:7rem; }
@media (max-width:767px) {
 .ssfc-check-grid { grid-template-columns:minmax(0,1fr); }
 .ssfc-check-card { padding:1.25rem; }
 .ssfc-checks-inner { width:calc(100% - 2.5rem); }
 .ssfc-check-card h3 { font-size:1.25rem; }
}
@media print {
 .ssfc-checks { padding:1rem 0; background:white; }
 .ssfc-checks-inner { width:100%; }
 .ssfc-check-grid { display:block; }
 .ssfc-check-card { break-inside:avoid; margin-bottom:1rem; }
}
/* Service detail disclosures retain the original silver band and pink brand. */
.ssfc-service-topics { width:100%; min-width:0; border-top:0; }
.ssfc-renewed .ssfc-topic-hint { margin:0 0 1rem; font-size:1rem; line-height:1.7; color:#33262d; }
.ssfc-service-topic { border-top:1px solid #82616b66; scroll-margin-top:7rem; }
.ssfc-service-topic:last-of-type { border-bottom:1px solid #82616b66; }
.ssfc-service-topic>summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:64px; padding:1.15rem .75rem; list-style:none; cursor:pointer; font:600 clamp(1.125rem,1.5vw,1.375rem)/1.5 system-ui,sans-serif; color:#33262d; }
.ssfc-service-topic>summary::-webkit-details-marker { display:none; }
.ssfc-service-topic>summary::marker { content:""; }
.ssfc-service-topic>summary:hover { background:#ffffff55; }
.ssfc-service-topic>summary:focus-visible { outline:3px solid #873954; outline-offset:-3px; }
.ssfc-topic-toggle { flex:0 0 1.5rem; text-align:center; font-size:1.7rem; line-height:1; color:#84334f; }
.ssfc-service-topic[open] .ssfc-topic-toggle { transform:rotate(45deg); }
.ssfc-service-topic[open]>summary { color:#84334f; background:#fff0f5; }
.ssfc-service-topics .ssfc-topic-content { padding:1.4rem 1.5rem .4rem; margin:0 0 .8rem; background:#fff; color:#33262d; overflow-wrap:anywhere; }
.ssfc-renewed .ssfc-topic-content p,.ssfc-renewed .ssfc-topic-content li { font-size:1.0625rem; line-height:1.9; color:#33262d; }
.ssfc-topic-content p { margin:0 0 1rem; }
.ssfc-topic-content ul { margin:0 0 1.25rem; padding-left:1.35rem; }
.ssfc-topic-content li { margin:.75rem 0; }
.ssfc-topic-content strong { font-weight:700; color:#713049; }
.ssfc-topic-prepare { padding-top:1rem; border-top:1px solid #ecdde3; }
.ssfc-renewed .ssfc-topic-note { margin:1.2rem 0 0; font-size:1rem; line-height:1.8; color:#33262d; }
.ssfc-topic-note a { display:inline-block; color:#713049; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
@media (max-width:600px) {
 .ssfc-service-topics .ssfc-topic-content { padding:1.2rem 1rem .3rem; }
 .ssfc-service-topic>summary { padding:1rem .65rem; }
}

.ssfc-booking-help label { display:block; margin-top:1.25rem; text-align:left; font-size:1rem; }
.ssfc-booking-help .ssfc-booking-url { display:block; box-sizing:border-box; width:100%; min-width:0; margin:.5rem 0; padding:.8rem; border:1px solid var(--ssfc-line); border-radius:8px; background:#fff; color:#33262d; font:1rem/1.6 system-ui,sans-serif; resize:vertical; overflow-wrap:anywhere; word-break:break-all; user-select:text; -webkit-user-select:text; }
.ssfc-booking-help .ssfc-booking-status { min-height:1.7em; margin-bottom:0; }

/* Patient guides: generous text, tables that remain readable on small screens. */
.ssfc-guide-table {max-width:100%;overflow-x:auto;margin:1.5rem 0;border:1px solid var(--ssfc-line);background:white;}
.ssfc-guide-table table {width:100%;border-collapse:collapse;min-width:32rem;font-size:1rem;line-height:1.8;}
.ssfc-guide-table caption {text-align:left;padding:1rem;font-weight:700;color:#803252;}
.ssfc-guide-table th,.ssfc-guide-table td {padding:.9rem;vertical-align:top;text-align:left;border:1px solid var(--ssfc-line);}
.ssfc-guide-table thead {background:#fff0f5;}
.ssfc-guide-table th[scope=row] {min-width:6.5rem;}
.ssfc-care-steps {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;padding-left:1.5rem;}
.ssfc-care-steps li {padding:1rem;background:#fff0f5;}
.ssfc-care-steps h3 {font-size:1.3rem;line-height:1.6;}
.ssfc-related-guides {margin:1.5rem 0;color:#33262d;}
.ssfc-related-guides a {font-size:1.05rem;line-height:1.8;text-decoration:underline;color:#803252;}
.ssfc-related-guides li {padding:.5rem 0;}
.ssfc-topic-content {padding:1rem 1.25rem;background:#fff;color:#33262d;font-size:1.05rem;line-height:1.8;}
@media(max-width:600px){.ssfc-care-steps {grid-template-columns:1fr;}.ssfc-guide-table th,.ssfc-guide-table td {padding:.7rem;}}
