/* Balanced reading rhythm: preserve type sizes and separate articles; remove only excessive whitespace. */
.notice{padding-top:6px;padding-bottom:6px}
header .nav{min-height:76px}
header .official-logo{max-height:66px;width:auto;max-width:180px;object-fit:contain}
.home-return.top{padding-top:12px;padding-bottom:6px}
.home-return.bottom{padding-top:12px;padding-bottom:12px}
.home-return-link{padding-top:7px;padding-bottom:7px}
.hero{padding-top:20px;padding-bottom:20px;gap:28px}
.hero h1{margin-top:9px;margin-bottom:10px}
.hero p{margin-top:7px;margin-bottom:12px}
.hero .actions{margin-top:14px}
.hero .art{min-height:290px}
.pageheading{margin-top:8px;margin-bottom:10px;padding-top:18px;padding-bottom:18px}
.pageheading .breadcrumb{margin-bottom:10px}
.pageheading h1{margin-top:8px;margin-bottom:10px}
.pageheading p{margin-top:4px;margin-bottom:0}
.pageheading .heading-icon{top:19px}
section,.pageview>section{padding-top:24px;padding-bottom:32px}
.sectionhead{margin-bottom:14px;padding-top:12px}
.sectionhead h2{margin-top:6px;margin-bottom:8px}
.sectionhead p{margin-top:5px;margin-bottom:6px}
.cards,.clinicgrid,.guide-grid{gap:20px}
.card,.cliniccard,.contentcard,.about-grid .card{padding:24px}
.card h3{margin-top:7px;margin-bottom:7px}
.card p,.contentcard p{margin-top:11px;margin-bottom:14px}
.card ul,.contentcard ul{margin-top:10px;margin-bottom:16px}
.contentcard h2{margin-top:26px;margin-bottom:12px}
.contentcard h2:first-child{margin-top:0}
.line-icon{margin-bottom:9px}
.servicecard{gap:6px 11px}
.servicecard>h3{margin:0}
.servicecard>p{margin:8px 0 12px}
.servicecard>.foot{padding-top:8px}
.task-section{padding-bottom:16px}
.task-card{padding:15px 16px;gap:3px 11px}
.homeclinics,.home-health{padding:28px!important;margin-bottom:30px}
.cliniccard h2{margin-top:11px;margin-bottom:9px}
.cliniccard p{margin-top:8px;margin-bottom:10px}
.cliniccard .actions{margin-top:12px;gap:9px}
.home-map{margin-top:10px;margin-bottom:3px}
.patient-needs{margin-top:16px;margin-bottom:18px}
.need-grid{gap:10px}
.need-link{min-height:82px;padding-top:13px;padding-bottom:13px}
.need-link .need-icon{top:16px}
.practical-facts{margin-top:5px;margin-bottom:18px;gap:18px}
.practical-facts>a{padding-top:12px;padding-bottom:12px;gap:4px}
.practical-facts .line-icon{top:13px}
.contact-next{padding:18px;margin-top:16px;margin-bottom:16px;gap:16px}
.contact-next h2{margin-bottom:7px}
.about-grid{gap:22px}
.story-timeline li{padding-bottom:20px;min-height:52px}
.faq-shortcuts{margin-bottom:17px;gap:9px}
.shortcut-link{padding:10px 12px}
.faqitem{margin-bottom:12px}
.faqitem summary{padding-top:16px;padding-bottom:16px;min-height:56px}
.faqitem summary::after{top:16px}
.faqanswer{padding-top:8px;padding-bottom:20px}
.faqanswer p{margin-top:10px;margin-bottom:13px}
.faq-pagination{padding-top:12px;padding-bottom:2px}
.reading h2{margin-top:28px;margin-bottom:12px}
.reading p{margin-top:11px;margin-bottom:15px}
.bookingcard{padding:20px}
.bookingcard h3{margin-top:10px;margin-bottom:10px}
.bookingcard p{margin-top:9px;margin-bottom:9px}
.actions{gap:10px}
footer{padding-top:25px;padding-bottom:0}
footer .site-disclaimer{padding-top:12px;padding-bottom:14px}
@media(min-width:761px) and (max-width:1050px){.wrap{padding-left:22px;padding-right:22px}.card,.cliniccard,.contentcard,.about-grid .card{padding:22px}.homeclinics,.home-health{padding:25px!important}.hero{gap:22px}.hero .art{min-height:260px}}
@media(max-width:760px){header .nav{min-height:64px}header .official-logo{max-height:52px;max-width:145px}.home-return.top{padding-top:9px;padding-bottom:3px}.pageheading{padding:16px 18px;margin-top:6px;margin-bottom:8px}.pageheading .breadcrumb{margin-bottom:8px}.pageheading .heading-icon{top:17px}.hero{padding-top:16px;padding-bottom:16px;gap:20px}.hero .art{min-height:210px}.hero .actions{margin-top:10px}.pageview>section,section{padding-top:18px;padding-bottom:26px}.cards,.clinicgrid,.guide-grid,.about-grid{gap:16px}.card,.cliniccard,.contentcard,.about-grid .card{padding:20px}.task-grid{gap:8px}.task-card{padding:13px;gap:6px}.task-card b{top:19px}.homeclinics,.home-health{padding:23px 16px!important;margin-bottom:26px}.cliniccard .actions{margin-top:10px}.need-link{min-height:80px;padding-top:13px;padding-bottom:13px}.practical-facts{margin-bottom:14px}.practical-facts>a{padding-top:10px;padding-bottom:10px}.contact-next{padding:16px;margin-top:12px;margin-bottom:12px}.contact-next .actions{margin-top:12px}.reading{padding-left:20px;padding-right:20px}.reading h2{margin-top:25px}.faq-shortcuts{gap:7px;margin-bottom:13px}.shortcut-link{padding:8px 10px}.faqitem summary{padding-top:14px;padding-bottom:14px;min-height:52px}.faqitem summary::after{top:14px}.faqanswer{padding:7px 17px 18px}.faq-pagination{gap:1px}.bookingcard{padding:17px}.home-return.bottom{padding-top:10px;padding-bottom:10px}footer{padding-top:20px}}

.reading p,.faqanswer p{line-height:1.85}.reading li,.faqanswer li{margin-bottom:7px}.reading>section{padding-top:14px;padding-bottom:14px}.reading .contentcard{padding:28px}@media(max-width:760px){.reading .contentcard{padding:21px}.reading>section{padding-top:11px;padding-bottom:11px}}

/* Homepage card columns: reduce unused horizontal room without reducing text. */
@media(min-width:1200px){.homepage-service-grid .need-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.homepage-service-grid>.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.homepage-service-grid .need-link{padding:16px 14px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:0}.homepage-service-grid .need-link .need-icon{position:static;margin:0 0 7px;width:36px;height:36px}.homepage-service-grid .need-link>span{max-width:100%}.homepage-service-grid .servicecard{padding:20px 17px}}
@media(min-width:761px) and (max-width:1199px){.homepage-service-grid .need-grid,.homepage-service-grid>.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:760px){.homepage-service-grid .need-grid,.homepage-service-grid>.cards{grid-template-columns:minmax(0,1fr);gap:12px}.homepage-service-grid .need-link{min-height:78px}.homepage-service-grid .servicecard{padding:19px;min-width:0}.homepage-service-grid .need-link,.homepage-service-grid .servicecard{overflow-wrap:anywhere}.homepage-service-grid .servicecard .line-icon{flex-shrink:0}}

/* Short-card directories: four columns only where each card remains readable.
   Higher specificity also fixes the inherited flex rule that stacked icon and heading. */
.cards>.servicecard{display:grid;grid-template-columns:36px minmax(0,1fr);gap:6px 10px;align-content:start;align-items:start;min-width:0;padding:20px}
.cards>.servicecard>.line-icon{grid-column:1;grid-row:1/3;width:36px;height:36px;margin:0;border-radius:11px}
.cards>.servicecard>h3{grid-column:2;grid-row:1/3;margin:0;align-self:center;overflow-wrap:anywhere}
.cards>.servicecard.has-service-status>h3{grid-row:2;align-self:start}
.cards>.servicecard>.service-status,.cards>.servicecard>small{grid-column:2;grid-row:1;margin:0;justify-self:start;max-width:100%;white-space:normal}
.cards>.servicecard:has(>small)>h3{grid-row:2;align-self:start}
.cards>.servicecard>p{grid-column:1/-1;margin:8px 0 10px;overflow-wrap:anywhere}
.cards>.servicecard>.foot{grid-column:1/-1;margin:0;padding-top:8px;align-self:end}
.cards.catalogue-grid{align-items:stretch;gap:16px}
.cards>.doctorcard{min-height:0}
@media(min-width:1200px){.cards.catalogue-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cards.catalogue-grid>.servicecard{padding:19px 17px}}
@media(min-width:761px) and (max-width:1199px){.cards.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.cards.catalogue-grid{grid-template-columns:minmax(0,1fr);gap:12px}.cards>.servicecard{padding:18px;gap:6px 10px}.cards>.servicecard>p{margin:7px 0 9px}.cards>.servicecard>.foot{padding-top:7px}}

/* Comparison tables: retain text size and let narrow screens scroll within the table. */
.tablewrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.tablewrap table{margin:8px 0;width:100%}
.tablewrap th,.tablewrap td{padding:10px 12px;vertical-align:top}
.tablewrap th:first-child,.tablewrap td:first-child{min-width:88px}
@media(max-width:760px){.tablewrap th,.tablewrap td{padding:9px 10px}.tablewrap table{min-width:440px}}

/* Text-only homepage and cautious health information. */
.hero.hero-text-only{display:block;padding-top:22px;padding-bottom:24px}.hero.hero-text-only>div{max-width:780px}.hero.hero-text-only p{max-width:720px}.hero.hero-text-only h1{font-size:clamp(30px,4vw,42px)}
.medical-notice{border-left:3px solid #c68ba1;background:#fff8fa;padding:16px 18px;margin-top:22px;border-radius:0 10px 10px 0}.medical-notice h2{font-size:20px;margin-top:0}.reference-note{font-size:15px!important}.official-references{padding-left:22px}.official-references li{margin:10px 0}.official-references a{color:var(--wine);text-decoration:underline;text-underline-offset:3px}.general-health .articlemeta{font-size:13px!important}.concise-health-notice{font-size:13px!important;line-height:1.75!important}.medical-intro{max-width:76ch}
@media(max-width:760px){.hero.hero-text-only{padding-top:16px;padding-bottom:18px}.medical-notice{padding:14px}.general-health{padding:20px!important}}

.local-clinic-heading{font-size:clamp(20px,2.4vw,25px);font-weight:500;margin:12px 0 7px;line-height:1.5;color:var(--wine)}.hero.hero-text-only .local-clinic-address{font-size:15px!important;line-height:1.8!important;max-width:760px}.local-clinic-address .textlink{margin-top:0}.hero.hero-text-only .local-clinic-summary{margin-bottom:8px}

/* Compact supplementary outcome notice in both languages and at every viewport. */
.pageview .medical-notice.outcome-notice{padding:8px 10px;margin-top:12px;border-left-width:2px;font-size:12px!important;line-height:1.6!important}
.pageview .medical-notice.outcome-notice h2,.pageview .medical-notice.outcome-notice h2 span{font-size:13px!important;line-height:1.5!important;font-weight:400;margin:0 0 4px!important}
.pageview .medical-notice.outcome-notice p,.pageview .medical-notice.outcome-notice p span,.pageview .medical-notice.outcome-notice a,.pageview .medical-notice.outcome-notice a span{font-size:12px!important;line-height:1.6!important}
.pageview .medical-notice.outcome-notice p{margin:0 0 4px!important}
.pageview .medical-notice.outcome-notice .textlink{display:inline-block;margin:0!important;padding:0}

.request-message-backup{margin-top:14px}.request-message-backup textarea{display:block;width:100%;box-sizing:border-box;max-width:100%;font:inherit;font-size:14px;line-height:1.65;padding:12px;margin:7px 0;border:1px solid #d6b9c4;border-radius:8px;background:#fff;color:#45333b}.request-message-backup p,#request-status{font-size:13px;line-height:1.7}.request-message-backup[hidden]{display:none!important}

.qualification-list{margin:12px 0 18px;padding-left:1.3em;font-size:16px;line-height:1.8}.qualification-list li{margin:5px 0}

.article-return-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:16px 0 8px}.article-return-actions .btn{font-size:15px;padding:10px 15px}.article-return-actions .textlink{font-size:14px;margin:0}.main-site-return{padding-top:12px;padding-bottom:20px}.main-site-return a{font-size:14px;text-decoration:underline;text-underline-offset:3px}@media(max-width:600px){.article-return-actions{align-items:flex-start;flex-direction:column;gap:10px}}
