/* Home page additions. Loaded after consultation.css; ed.html does not use this file. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
button:focus-visible,.story-chips a:focus-visible{outline:3px solid #2563a6;outline-offset:4px}
.home a:not(.booking-button):not(.secondary-button):not(.brand):not(.nav-book):hover{color:var(--teal-dark)}

/* Header and navigation */
.home .header-inner{position:relative}
.site-nav{display:flex;align-items:center;gap:26px;font-size:14px}
.home .header-inner .site-nav a{display:block;padding:12px 0;min-height:44px}
.home .header-inner .site-nav a.nav-book{padding:10px 18px;border:1px solid var(--teal);border-radius:4px;color:var(--teal-dark);font-weight:550}
.home .header-inner .site-nav a.nav-book:hover{background:var(--teal-dark);color:#fff;text-decoration:none}
.menu-button{display:none;align-items:center;gap:10px;min-height:44px;padding:10px 14px;border:1px solid #b9d3ea;border-radius:4px;background:transparent;color:var(--navy);font:550 14px var(--sans);cursor:pointer}
.menu-icon,.menu-icon:before,.menu-icon:after{display:block;width:16px;height:1.5px;background:currentColor;position:relative}
.menu-icon:before,.menu-icon:after{content:'';position:absolute;left:0}
.menu-icon:before{top:-5px}.menu-icon:after{top:5px}
.menu-button[aria-expanded="true"] .menu-icon{background:transparent}
.menu-button[aria-expanded="true"] .menu-icon:before{top:0;transform:rotate(45deg)}
.menu-button[aria-expanded="true"] .menu-icon:after{top:0;transform:rotate(-45deg)}

/* Readability: raise the smallest type used by the shared stylesheet */
.home .eyebrow,.home .hero .eyebrow,.home .final-card .eyebrow{font-size:12px;letter-spacing:1.2px}
.home .hero-description{font-size:17px;line-height:1.75}
.home h1{font-size:clamp(40px,3.7vw,54px)}
.home .supporting-copy,.home .final-support{font-size:14px;line-height:1.7}
.home .care-strip-inner>span{font-size:14px}
.home .portrait-caption{font-size:12px}
.home .doctor-card-label{font-size:11px}
.home .doctor-card p,.home .qualifications{font-size:14px}
.home .portrait-photo img{object-position:center 22%}
.home .specialist-role{font-size:15px}
.home .specialist-copy>p:not(.eyebrow):not(.specialist-role){font-size:16px;line-height:1.75;max-width:560px}
.home .specialist-copy>p+p{margin-top:12px}
.home .credential-grid dd{font-size:13px}
.home .faq-intro{font-size:16px}
.home .faq-list summary{font-size:16px}
.home .faq-list details>p{font-size:16px;line-height:1.75}
.home .final-description{font-size:17px;line-height:1.75}
.home .footer-top>a:last-child{font-size:14px}
.home .footer-bottom{font-size:13px}
.home .booking-button{font-size:15px}

/* Hero actions */
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:27px}
.home .hero .booking-button{margin-top:0}
.secondary-button{min-height:57px;display:inline-flex;align-items:center;justify-content:center;padding:15px 23px;border:1px solid var(--teal);border-radius:4px;color:var(--teal-dark);font-size:15px;font-weight:550;background:transparent;transition:background .18s}
.secondary-button:hover{background:#dceffa}
.whatsapp-note{font-size:13px;line-height:1.6;margin-top:12px;max-width:470px;color:#4a5b70}

/* Shared section head */
.section-head{max-width:760px;margin-bottom:44px}
.section-head>p:not(.eyebrow){font-size:17px;line-height:1.75;margin-top:18px;color:#243447}
.section-head .composite-notice{border-left:3px solid #2563a6;padding:4px 0 4px 16px;color:var(--navy)}

/* How it works */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:28px}
.steps li{border-top:1px solid #c9dff1;padding-top:22px}
.step-number{display:grid;place-items:center;width:38px;height:38px;border:1px solid #b9d3ea;border-radius:50%;font:20px var(--serif);color:var(--teal);margin-bottom:16px}
.steps h3{font-size:24px;line-height:1.15}
.steps p{font-size:15px;line-height:1.7;margin-top:10px}

/* Stories */
.stories-section{background:#dceffa;border-block:1px solid var(--line)}
.story-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px}
.story-chips a{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid #b9d3ea;border-radius:999px;background:var(--paper);font-size:14px;color:var(--navy)}
.story-chips a:hover{border-color:var(--teal);color:var(--teal-dark)}
.story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.story{background:#ffffff;border:1px solid #c9dff1;border-radius:6px;padding:30px 32px 26px;scroll-margin-top:20px}
.story:has(details[open]){grid-column:1 / -1}
.story-badge{font-size:13px;line-height:1.55;background:#dceffa;color:#123b65;border-radius:4px;padding:10px 14px;margin-bottom:20px;font-weight:650}
.story-badge span{font-weight:400}
.story-topic{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;font-weight:650;color:var(--teal)}
.story h3{font-size:31px;line-height:1.12;margin-top:8px}
.story-lead p{font-size:16px;line-height:1.75;color:#243447;margin-top:14px}
.story-details{margin-top:20px;border-top:1px solid var(--line)}
.story-details summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:56px;padding:14px 0;cursor:pointer;font-size:15px;font-weight:550;color:var(--teal-dark)}
.story-details summary::-webkit-details-marker{display:none}
.story-body{padding:4px 0 8px;max-width:820px}
.story-body h4{font:650 13px var(--sans);letter-spacing:1.1px;text-transform:uppercase;color:var(--navy);margin:24px 0 10px}
.story-body h4:first-child{margin-top:6px}
.pathway-note{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:3px;background:#dceffa;color:var(--teal-dark);font-weight:550;letter-spacing:.2px;text-transform:none;font-size:12px}
.story-body ul{margin:0;padding-left:20px}
.story-body li,.story-body p{font-size:16px;line-height:1.7;color:#243447}
.story-body li+li{margin-top:7px}
.story-body p{margin-top:10px}
.story-body .story-questions{font-style:italic}
.story-cta{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:10px;font-size:15px;font-weight:550;color:var(--teal-dark);text-decoration:underline;text-underline-offset:4px}
.stories-cta{margin-top:40px;text-align:center}
.stories-cta p{font-size:17px;line-height:1.7;max-width:600px;margin:0 auto 20px;color:#243447}

/* Urgent */
.urgent-section{padding-block:56px}
.urgent-box{background:#ffffff;border:1px solid #c9dff1;border-left:5px solid #2563a6;border-radius:6px;padding:30px 34px}
.urgent-box h2{font-size:clamp(28px,2.6vw,36px)}
.urgent-box p{font-size:16px;color:#243447;margin-top:12px}
.urgent-box ul{margin:14px 0 0;padding-left:20px;columns:2;column-gap:40px}
.urgent-box li{font-size:16px;line-height:1.6;color:#243447;margin-bottom:8px;break-inside:avoid}

/* Specialist approach */
.approach-list{margin:14px 0 0;padding-left:20px;max-width:560px}
.approach-list li{font-size:16px;line-height:1.65;color:#243447;margin-bottom:8px}
.approach-list strong{color:var(--navy);font-weight:600}
.home .credential-grid{margin:22px 0 18px}
.specialist-library a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:3px}

/* Online scope */
.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.scope-card{border:1px solid #c9dff1;border-radius:6px;padding:28px 30px;background:#ffffff}
.scope-card-limits{background:#f5faff}
.scope-card h3{font-size:26px}
.scope-card ul{margin:16px 0 0;padding-left:20px}
.scope-card li{font-size:16px;line-height:1.65;color:#243447;margin-bottom:8px}

/* Footer */
.footer-columns{display:grid;grid-template-columns:1fr 1.3fr;gap:48px;padding-block:28px;border-top:1px solid var(--line)}
.footer-heading{font:650 12px var(--sans);letter-spacing:1.2px;text-transform:uppercase;color:var(--teal);margin-bottom:12px}
.footer-list{list-style:none;margin:0;padding:0}
.footer-list li{font-size:14px;line-height:1.6;color:#243447;margin-bottom:8px}
.footer-list a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:3px}
.footer-small,.footer-small li{font-size:13px}
.footer-small{margin-bottom:10px}
.footer-disclaimer{border-top:1px solid var(--line);padding-block:20px}
.footer-disclaimer p{font-size:13px;line-height:1.7;max-width:900px}

@media(max-width:1100px){
.steps{grid-template-columns:repeat(3,1fr)}
.site-nav{gap:18px}
}
@media(max-width:900px){
.story-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
/* Navigation: wraps without JavaScript, becomes a disclosure menu with it */
.home .header-inner{flex-wrap:wrap;padding-block:10px}
.home .header-inner .site-nav{display:flex;flex-wrap:wrap;gap:0 18px;width:100%;font-size:15px}
.js .menu-button{display:inline-flex}
.js .home .header-inner .site-nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:15;flex-direction:column;align-items:stretch;background:var(--paper);border-bottom:1px solid var(--line);padding:6px 20px 16px;box-shadow:0 10px 24px #123b6514}
.js .home .header-inner .site-nav.is-open{display:flex}
.js .home .header-inner .site-nav a{padding:12px 0;border-bottom:1px solid var(--line)}
.js .home .header-inner .site-nav a.nav-book{margin-top:12px;text-align:center;border:1px solid var(--teal)}
.home .hero .eyebrow{font-size:11px;letter-spacing:.8px}
.home .eyebrow{font-size:11px}
.home h1{font-size:clamp(34px,8.6vw,46px)}
.home .hero-description{font-size:16px}
.hero-actions{flex-direction:column;align-items:stretch;max-width:420px}
.home .hero .booking-button,.secondary-button{width:100%;max-width:none}
.home .booking-button{font-size:15px}
.home .supporting-copy,.home .final-support{font-size:14px}
.home .portrait-caption{font-size:11px}
.home .doctor-card p,.home .qualifications{font-size:14px}
.home h2{font-size:34px}
.section-head{margin-bottom:30px}
.section-head>p:not(.eyebrow){font-size:16px}
.steps{grid-template-columns:1fr;gap:0}
.steps li{display:grid;grid-template-columns:44px 1fr;column-gap:16px;padding-block:18px}
.step-number{grid-row:1 / 3;margin:0}
.steps h3{font-size:22px}
.steps p{margin-top:6px}
.story-chips{flex-wrap:nowrap;overflow-x:auto;margin-inline:-20px;padding:2px 20px 8px;scrollbar-width:thin}
.story-chips a{flex-shrink:0}
.story{padding:22px 20px 18px}
.story h3{font-size:27px}
.story-badge{font-size:13px}
.urgent-section{padding-block:40px}
.urgent-box{padding:24px 20px}
.urgent-box ul{columns:1}
.home .specialist-copy h2{font-size:36px}
.home .credential-grid dd{font-size:13px}
.scope-grid{grid-template-columns:1fr}
.scope-card{padding:22px 20px}
.home .faq-intro{font-size:15px}
.home .faq-list summary{font-size:16px}
.home .faq-list details>p{font-size:16px}
.home .final-card h2{font-size:36px}
.home .final-description{font-size:16px}
.home .final-card .booking-button{font-size:15px}
.footer-columns{grid-template-columns:1fr;gap:26px}
.home .footer-top>a:last-child{font-size:14px}
.home .footer-bottom{font-size:13px}
.story-details[open],.faq-list details{scroll-margin-bottom:110px}
}
@media(max-width:360px){
.home h1{font-size:31px}
.home .hero .eyebrow{font-size:11px;letter-spacing:.4px}
.story-chips{margin-inline:-16px;padding-inline:16px}
.home .booking-button,.home .final-card .booking-button{font-size:14px}
.home .hero-description{font-size:15px}
}
@media print{.menu-button,.story-chips{display:none!important}.story-details>.story-body{display:block!important}}

/* Blue and white theme (home page only). Reuses the shared variable names so
   consultation.css rules pick up the palette; ed.html keeps its original colours. */
.home{--navy:#123b65;--teal:#2563a6;--teal-dark:#2563a6;--blue-hover:#1b4c82;--ice:#dceffa;--ice-soft:#eaf5fc;--paper:#f5faff;--white:#fff;--slate:#243447;--muted:#3b4b5f;--line:#c9dff1;color:var(--slate)}
.home h1,.home h2,.home h3,.home .brand-name{color:var(--navy)}
.home a:focus-visible,.home summary:focus-visible,.home button:focus-visible{outline-color:var(--teal)}
.home .site-header{background:var(--white)}
.home .brand-mark{border-color:#9dbfe0;color:var(--navy)}
.home .brand-mark>span{background:var(--white)}
.home .booking-button:hover{background:var(--blue-hover)}
.home .secondary-button{background:var(--white)}
.home .secondary-button:hover{background:var(--ice)}
.home .hero{background:linear-gradient(105deg,var(--white) 0%,var(--white) 64%,var(--ice-soft) 64%)}
.home .supporting-copy{color:var(--muted)}
.home .portrait-arch{border-color:#b9d3ea}
.home .portrait-photo{background:var(--ice)}
.home .portrait-caption{background:var(--white);border-color:var(--line);box-shadow:0 4px 18px #123b650d}
.home .doctor-card-label{color:#bcd7ef}
.home .doctor-card h2{color:var(--white)}
.home .doctor-card p{color:var(--ice)}
.home .qualifications{color:#d3e6f6}
.home .care-strip{background:var(--ice);border-bottom-color:var(--line)}
.home .care-strip-inner>span{color:var(--slate)}
.home .steps-section{background:var(--paper)}
.home .stories-section{background:var(--ice);border-color:var(--line)}
.home .story{border-color:#c3dbf0;box-shadow:0 1px 2px #123b650a,0 8px 24px #123b6508}
.home .story-badge{color:var(--navy);border:1px solid #c3dbf0}
.home .story-chips a{background:var(--white);border-color:#b9d3ea;color:var(--navy)}
.home .story-chips a:hover{border-color:var(--teal);color:var(--teal)}
.home .section-head .composite-notice{border-left-color:var(--navy)}
.home .urgent-section{background:var(--white)}
.home .urgent-box{background:var(--paper);border-color:var(--line);border-left-color:var(--navy)}
.home .specialist-section{background:var(--ice)}
.home .specialist-image{background:#c9dff1}
.home .specialist-image>span{background:#ffffffeb;color:var(--navy)}
.home .credential-grid{border-color:#b9d3ea}
.home .credential-grid dd{color:var(--muted)}
.home .scope-section{background:var(--white)}
.home .scope-card-limits{background:var(--paper)}
.home .faq-section{background:var(--paper)}
.home .faq-toggle{border-color:#b9d3ea}
.home .final-section{background:var(--paper);padding-top:8px}
.home .final-card{background:var(--ice);border-color:#c3dbf0}
.home .final-pattern,.home .final-pattern:before,.home .final-pattern:after{border-color:#a9cbe94d}
.home .mobile-booking{background:#fffffff5;border-top-color:var(--line);box-shadow:0 -3px 20px #123b650d}

/* Navy footer */
.home .site-footer{background:var(--navy);border-top-color:var(--navy);color:#e6f1fb}
.home .site-footer .brand-name{color:var(--white)}
.home .site-footer .brand-mark{border-color:#7fa6cf;color:var(--white)}
.home .site-footer .brand-mark>span{background:var(--navy);color:#9cc4ea}
.home .footer-top>p{color:#bcd7ef}
.home .footer-top>a:last-child{color:var(--white)}
.home .footer-columns,.home .footer-disclaimer,.home .footer-bottom{border-color:#ffffff26}
.home .footer-heading{color:#9cc4ea}
.home .footer-list li,.home .footer-disclaimer p,.home .footer-small{color:#d3e4f4}
.home .site-footer .footer-list a{color:var(--white)}
.home .site-footer a:hover{color:var(--ice)!important}
.home .footer-bottom{color:#bcd7ef}
.home .site-footer a:focus-visible{outline-color:var(--white)}

@media(max-width:760px){
.home .hero{background:var(--white)}
.js .home .header-inner .site-nav{background:var(--white)}
}
