:root{--ink:#192645;--navy:#0e1d3e;--navy2:#142b58;--muted:#63718b;--cloud:#f4f7fc;--line:#dce5ef;--blue:#3159e8;--blue2:#6c8cff;--mint:#c4f3e8;--midor:#087e69;--yellow:#ffd58a;--white:#fff;--radius:20px;--shadow:0 14px 50px rgba(21,41,82,.085)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #f19c4d;outline-offset:3px}img,svg{max-width:100%}button,input,select,textarea{font:inherit}button{cursor:pointer}p{margin:0 0 1rem}.container{width:min(1160px,calc(100% - 42px));margin:auto}.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}.skip{position:absolute;z-index:99;top:-120px;left:10px;background:var(--yellow);padding:12px}.skip:focus{top:10px}.topline{background:var(--navy);color:#d3ddf5;font-size:12px;font-weight:650}.topline .container{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 0}.topline a{color:#ffe4aa}.site-header{background:white;z-index:20;position:sticky;top:0;border-bottom:1px solid #e8edf5}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:78px}.brand{display:flex;align-items:center;gap:11px;line-height:1.12;max-width:295px}.brand-mark{display:grid;place-items:center;width:45px;height:45px;min-width:45px;color:white;background:var(--blue);border-radius:15px;font-size:23px;font-weight:800;box-shadow:4px 4px 0 #b5dcd8}.brand-name{font-weight:900;font-size:16px;letter-spacing:-.45px}.brand-city{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted);font-weight:800;margin-top:3px}.nav{display:flex;align-items:center;gap:17px}.nav a{font-weight:720;font-size:13px;white-space:nowrap}.nav a:hover,.inline-link:hover{color:var(--blue);text-decoration:underline}.nav .nav-enquire{color:white;background:var(--blue);padding:12px 17px;border-radius:11px;box-shadow:0 6px 15px #3159e824}.mobile-toggle{display:none;background:white;color:var(--ink);border:1px solid var(--line);padding:8px 12px;border-radius:9px}.breadcrumbs{padding:15px 0 0;font-size:13px;color:var(--muted)}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.breadcrumbs span{margin:0 7px}.eyebrow{display:inline-flex;align-items:center;gap:7px;text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:900;color:var(--blue)}.eyebrow.dark{color:#b8f3e2}.eyebrow:before{content:'';height:7px;width:7px;background:#f3a964;border-radius:50%}h1,h2,h3{line-height:1.16;letter-spacing:-.035em;margin:0 0 16px;font-weight:880}h1{font-size:clamp(36px,5vw,64px)}h2{font-size:clamp(27px,3vw,39px)}h3{font-size:20px}.subtext{font-size:18px;color:var(--muted);max-width:740px}.hero{background:linear-gradient(118deg,var(--navy) 5%,#26376e 100%);color:white;overflow:hidden;position:relative}.hero:after{content:'';position:absolute;width:650px;height:650px;right:-290px;top:-220px;background:radial-gradient(circle,#6079db36 5%,transparent 65%);pointer-events:none}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:36px;padding:86px 0 84px}.hero h1{max-width:675px}.hero h1 em{font-style:normal;color:var(--mint)}.hero .subtext{color:#d3dbef;max-width:610px;margin:0 0 27px}.hero-actions,.btnrow{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:11px;padding:14px 19px;font-weight:800;font-size:14px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--yellow);color:#172445}.btn-blue{background:var(--blue);color:white}.btn-ghost{background:transparent;color:white;border:1px solid #91a5d8}.btn-outline{color:var(--blue);background:white;border:1px solid #c5d3ee}.hero-notes{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;font-size:12px;color:#cbd4e8}.hero-notes span{background:#ffffff12;padding:7px 11px;border-radius:9px}.illustration-wrap{background:#ffffff0b;border:1px solid #ffffff20;border-radius:32px;padding:18px;box-shadow:0 25px 65px #070f2b6b;transform:rotate(2deg)}.illustration{width:100%;display:block}.section{padding:78px 0}.section-soft{background:var(--cloud)}.section-heading{max-width:760px;margin-bottom:30px}.section-heading p{color:var(--muted)}.section-heading h2{margin-top:7px}.subject-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.subject-card{display:flex;flex-direction:column;padding:23px 20px;background:white;border-radius:18px;border:1px solid #e2e9f4;box-shadow:0 5px 20px #172d5f06;min-height:221px;transition:transform .2s,border-color .2s}.subject-card:hover{transform:translateY(-4px);border-color:#90a8ee}.subject-icon{width:46px;height:46px;background:#e9f0ff;color:var(--blue);border-radius:14px;display:grid;place-items:center;font-size:24px;margin-bottom:19px}.subject-card:nth-child(2) .subject-icon{background:#fff1d6;color:#9d6403}.subject-card:nth-child(3) .subject-icon{background:#e2f7ed;color:#008368}.subject-card:nth-child(4) .subject-icon{background:#ffe9ea;color:#be5264}.subject-card h3{font-size:18px;margin-bottom:7px}.subject-card p{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 12px;flex:1}.arrow-link{color:var(--blue);font-weight:800;font-size:13px}.pathway{display:grid;grid-template-columns:1fr 1fr;gap:22px}.pane{padding:32px;border-radius:22px;background:white;border:1px solid var(--line)}.pane.alt{background:#e9f8f1;border-color:#c5e8d7}.pane h3{font-size:24px}.pane p,.pane li{color:var(--muted)}.pane ul{padding-left:20px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step{position:relative;border:1px solid var(--line);border-radius:19px;padding:25px}.step-num{display:inline-grid;place-items:center;width:34px;height:34px;background:#e8eeff;color:var(--blue);border-radius:10px;font-weight:900;margin-bottom:15px}.step h3{font-size:18px}.step p{font-size:14px;color:var(--muted);margin:0}.provider-card{background:white;border-radius:24px;border:1px solid var(--line);display:grid;grid-template-columns:1.2fr .8fr;overflow:hidden;box-shadow:var(--shadow)}.provider-main{padding:33px}.provider-main p{color:var(--muted)}.provider-main h3{font-size:28px}.provider-side{background:#eaf7f3;padding:35px;display:flex;flex-direction:column;justify-content:center}.provider-side h3{font-size:21px}.provider-side p{font-size:14px;color:#355b59}.tag{display:inline-flex;border-radius:40px;padding:7px 11px;color:#1a5c54;background:#dcf4ed;font-size:11px;font-weight:850;letter-spacing:.3px;margin-bottom:15px}.tag.amber{color:#73500e;background:#fff2ce}.tag.blue{background:#e9edff;color:#2349bd}.feature-list{display:flex;gap:8px;flex-wrap:wrap;padding:0;list-style:none;margin:15px 0 20px}.feature-list li{border:1px solid #dbe6f1;color:#41516e;font-size:12px;padding:5px 10px;border-radius:999px}.area-grid,.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.area-card,.related-card{padding:23px;border:1px solid var(--line);border-radius:17px;background:white;display:flex;flex-direction:column}.area-card h3,.related-card h3{font-size:18px}.area-card p,.related-card p{font-size:13px;color:var(--muted);flex:1}.area-card a,.related-card a{font-size:13px;color:var(--blue);font-weight:850}.finder{background:linear-gradient(145deg,#fffaf0,#f8faff);border:1px solid #efe6db;border-radius:24px;padding:30px;box-shadow:var(--shadow)}.finder h2{font-size:29px}.finder p{color:var(--muted)}.finder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:end}.field label{display:block;font-size:13px;font-weight:800;margin-bottom:7px}.field input,.field select,.field textarea{display:block;width:100%;background:#fff;color:var(--ink);padding:12px 14px;border:1px solid #cdd8eb;border-radius:10px;min-height:48px}.field textarea{min-height:110px}.field small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.field.hidden{display:none}.finder .btn{min-height:48px;width:100%}.form-note{margin:12px 0 0;font-size:12px;color:var(--muted)}.detail-intro{background:linear-gradient(130deg,#eef4fe,#fff9ed);padding:58px 0 64px}.detail-intro h1{max-width:890px;font-size:clamp(35px,4.5vw,58px);margin-top:12px}.detail-intro p.subtext{max-width:800px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:37px}.content-column{min-width:0}.editorial-section{margin-bottom:38px;border-bottom:1px solid var(--line);padding-bottom:28px}.editorial-section:last-child{border:0}.editorial-section h2{font-size:28px;margin-bottom:13px}.editorial-section p{font-size:16px;color:#485974;line-height:1.84}.editorial-section ul{margin:17px 0 0;padding-left:20px;color:#3a506e}.editorial-section li{padding:5px 0}.sidebox{position:sticky;top:104px;border:1px solid #d8e4f1;border-radius:19px;padding:23px;background:#f7faff}.sidebox h3{font-size:20px}.sidebox p{font-size:13px;color:var(--muted)}.sidebox .btn{width:100%;margin:6px 0}.disclosure{background:#fff9ee;border-left:3px solid #efbd6b;border-radius:0 8px 8px 0;color:#5e5670;font-size:12px;padding:13px 15px}.faq-list{display:grid;gap:9px;max-width:930px}.faq-list details{border:1px solid var(--line);border-radius:13px;padding:17px 20px;background:white}.faq-list summary{font-weight:780;cursor:pointer}.faq-list p{margin:11px 0 0;color:var(--muted);font-size:14px}.cta-band{background:var(--navy);color:white;border-radius:26px;padding:40px;display:flex;justify-content:space-between;align-items:center;gap:24px}.cta-band h2{font-size:30px}.cta-band p{color:#d3dbef;max-width:610px}.section-compact{padding:48px 0}.directory-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.directory-list a{display:block;border:1px solid var(--line);border-radius:12px;padding:14px 17px;font-weight:730}.directory-list a:hover{border-color:#9ab1f0;color:var(--blue)}.submission{max-width:760px;background:white;border:1px solid var(--line);padding:30px;border-radius:22px}.submission-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.submission-grid .full{grid-column:1/-1}.submission button{margin-top:18px}.site-footer{background:#101d39;color:#d1d9ec;padding:54px 0 30px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:40px}.footer-grid strong{font-size:20px;color:white}.footer-grid h3{font-size:14px;color:#fff;letter-spacing:.5px}.footer-grid a{display:block;margin:8px 0;color:#d1d9ec;font-size:13px}.footer-grid a:hover{text-decoration:underline}.footer-grid p{font-size:13px;color:#b8c5e0}.footer-bottom{margin-top:35px;border-top:1px solid #344262;padding-top:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:#b2c0dd}.mobile-quick{display:none}.announce{border-top:1px solid #e3e9f2;background:#f7fafd}.announce p{margin:0;padding:10px 0;font-size:12px;color:#526784}.inline-link{text-decoration:underline;text-underline-offset:3px;color:var(--blue)}@media(max-width:1020px){.nav{gap:11px}.nav a{font-size:12px}.subject-grid{grid-template-columns:repeat(2,1fr)}.hero-grid{gap:17px}.hero h1{font-size:44px}}@media(max-width:770px){.container{width:min(100% - 32px,1160px)}.topline .container{font-size:10px}.header-inner{min-height:67px}.mobile-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;z-index:30;background:white;border-bottom:1px solid var(--line);box-shadow:var(--shadow);padding:16px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:11px 13px;font-size:14px}.nav .nav-enquire{text-align:center;margin-top:8px}.hero-grid{grid-template-columns:1fr;padding:60px 0}.hero h1{font-size:clamp(37px,8vw,53px)}.hero .illustration-wrap{max-width:460px;margin:auto;transform:none}.section{padding:52px 0}.steps{grid-template-columns:1fr}.pathway{grid-template-columns:1fr}.provider-card{grid-template-columns:1fr}.provider-side{padding:24px}.detail-layout{grid-template-columns:1fr}.sidebox{position:static}.area-grid,.related-grid{grid-template-columns:1fr 1fr}.finder-grid{grid-template-columns:1fr 1fr}.finder-grid .field:last-child{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid >:first-child{grid-column:1/-1}.cta-band{flex-direction:column;align-items:flex-start}.mobile-quick{display:block;position:fixed;bottom:0;left:0;right:0;z-index:25;padding:9px 16px;background:#ffffffed;border-top:1px solid #d3e0f1;backdrop-filter:blur(12px)}.mobile-quick a{width:100%;min-height:45px}.site-footer{padding-bottom:100px}}@media(max-width:490px){.brand-name{font-size:14px}.brand-mark{width:41px;height:41px;min-width:41px}.topline .container span:last-child{display:none}.hero-grid{padding:43px 0 50px}.hero h1{font-size:35px}.hero-actions .btn{width:100%}.hero-notes span{font-size:11px}.subject-grid,.area-grid,.related-grid,.directory-list,.finder-grid,.footer-grid,.submission-grid{grid-template-columns:1fr}.finder-grid .field:last-child{grid-column:auto}.footer-grid >:first-child,.submission-grid .full{grid-column:auto}.illustration-wrap{display:none}.section{padding:40px 0}.pane,.finder,.submission{padding:21px}.detail-intro{padding:45px 0}.detail-intro h1{font-size:35px}.cta-band{padding:26px}.cta-band .btn{width:100%}.footer-bottom{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.subject-card{transition:none}}

/* Edition 2: factual name-only research cards. No layout shifts or external assets. */
.research-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}.research-provider{border:1px solid var(--line);background:#fff;border-radius:17px;padding:24px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.research-provider h3{font-size:21px;margin:0;color:var(--navy)}.research-provider p{color:var(--muted);font-size:14px;line-height:1.65;margin:0;flex:1}.research-provider a{line-height:1.55;font-size:13px}.submission .btnrow{display:flex;flex-wrap:wrap;gap:12px;margin:19px 0}.submission .btnrow .btn{min-height:48px}.submission .form-note{line-height:1.7}.research-provider .tag{background:#eff3f9;color:#56647a}@media(max-width:490px){.submission .btnrow .btn{width:100%}}

/* Edition 2.2: consistent contrasting nav CTA hover, focus, and touch labels. */
.nav .nav-enquire:hover,.nav .nav-enquire:focus-visible{color:#fff;background:#203ea9;text-decoration:none;}
.nav .nav-enquire:active{color:#fff;background:#192e80;}
.nav .nav-enquire{display:inline-flex;align-items:center;justify-content:center;min-height:44px;white-space:nowrap;}
.enquiry-section{background:#f0ebff;}
.enquiry-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);align-items:start;gap:40px;}
.enquiry-intro{padding:20px 0;}
.enquiry-intro h2{font-size:clamp(30px,3.4vw,48px);max-width:520px;}
.enquiry-intro p,.enquiry-intro li{color:#4d5874;line-height:1.8;}
.enquiry-intro ul{padding-left:20px;}
.enquiry-card{padding:28px;border-radius:22px;background:#fff;box-shadow:0 18px 52px #30176119;min-width:0;}
.enquiry-card h3{font-size:23px;margin:0 0 10px;}
.enquiry-card>p{font-size:14px;color:#546078;}
.enquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0;}
.enquiry-fields .full{grid-column:1/-1;}
.enquiry-fields .field textarea{resize:vertical;}
.btn-wa{background:#087c55;color:#fff;width:100%;min-height:48px;}
.btn-wa:hover,.btn-wa:focus-visible{background:#086344;color:#fff;text-decoration:none;}
.message-box{margin-top:16px;padding:14px 16px;border:1px solid #e4ddfa;background:#f8f6ff;border-radius:12px;}
.message-box strong{font-size:12px;}
.message-box pre{font:13px/1.6 ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:#4a4f67;white-space:pre-wrap;overflow-wrap:anywhere;margin:9px 0 0;}
.enquiry-card .form-note{line-height:1.7;}
.small-print{font-size:13px;}
.sitemap-utility{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:24px;color:var(--muted);font-size:13px;}
@media(max-width:960px){.enquiry-layout{gap:22px;}}
@media(max-width:770px){.enquiry-layout{grid-template-columns:1fr;}.enquiry-intro{padding:0;}.enquiry-card{padding:23px;}.nav .nav-enquire:hover{color:white;}}
@media(max-width:490px){.enquiry-fields{grid-template-columns:1fr;}.enquiry-fields .full{grid-column:auto;}.enquiry-card{padding:20px;}}

.enquiry-heading{background:#f0ebff;padding:45px 0 0}.enquiry-heading h1{font-size:clamp(32px,4.6vw,52px);max-width:790px;margin:0 0 10px}.enquiry-heading p{color:var(--muted);margin-bottom:0}.enquiry-heading+.enquiry-section{padding-top:32px;}

/* Edition 2.3: readable fixed CTA on mobile; short directory-first text. */
.mobile-quick a{color:#fff;background:#3156ec;line-height:1.4;text-align:center}
.mobile-quick a:hover,.mobile-quick a:focus-visible{color:#fff;background:#2444bd;outline-offset:3px}
.provider-checked{background:#e0f5ed;color:#125a44;border:1px solid #a8deca}

.provider-proof{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px;color:#34506e;font-size:13px}
.provider-proof .tag{margin-bottom:0}

/* Edition 2.5: factual, visible provider cards, separate direct-vs-directory enquiries. */
.provider-directory-section{padding-top:44px;padding-bottom:44px;background:#f5f8fe}
.featured-listing{background:#fff;border:1px solid #cbdcef;border-radius:24px;box-shadow:0 14px 38px #18305a10;display:grid;grid-template-columns:minmax(0,1fr) 275px;overflow:hidden}
.featured-listing__body{padding:29px 32px;min-width:0}
.featured-listing__body h3{font-size:clamp(24px,3vw,32px);margin:6px 0 10px}
.featured-listing__body p{font-size:15px;line-height:1.72;color:#455874}
.provider-tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:9px}
.provider-tags .tag{margin-bottom:0}
.listing-label{background:#e8eeff;color:#1d3c9a}
.listing-points{list-style:none;padding:0;display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}
.listing-points li{border:1px solid #dbe6ee;border-radius:30px;padding:6px 10px;color:#314d69;background:#fafcff;font-size:12px}
.listing-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.listing-actions .btn{min-height:45px;white-space:normal;text-align:center}
.listing-location{border-top:1px solid #e5edf5;padding-top:13px;font-size:13px!important}
.featured-listing__trust{background:#eef9f5;padding:32px 25px;display:flex;flex-direction:column;justify-content:center;gap:11px}
.featured-listing__trust strong{font-size:17px}
.featured-listing__trust p{font-size:13px;line-height:1.75;color:#35544b;margin:0}
.provider-contact-panel{border:1px solid #cbdcef;background:#eef9f5;border-radius:19px;padding:26px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.provider-contact-panel h2{font-size:26px;margin:6px 0}
.provider-contact-panel p{max-width:550px;color:#486077;margin:7px 0}
@media(max-width:900px){.featured-listing{grid-template-columns:1fr}.provider-contact-panel{flex-direction:column;align-items:stretch}}
@media(max-width:490px){.featured-listing__body,.featured-listing__trust{padding:22px}.listing-actions .btn{width:100%}.provider-contact-panel{padding:20px}}
/* Edition 2.6 — directory design system. Shared across every public page.
   Zero third-party fonts/icons/CSS. High-contrast accents and semantic states. */
:root{
 --ink:#142444;--navy:#101f40;--navy2:#1c3564;--muted:#4b5d77;
 --cloud:#f5f8fd;--line:#d5e0ef;--blue:#2449ce;--blue2:#4367df;
 --midor:#086d49;--mint:#c9f1e8;--yellow:#ffda93;
 --shadow:0 12px 34px rgba(18,38,75,.075);--radius:18px;
}
body{font-size:16px;line-height:1.65;background:#fff}
.container{width:min(1160px,calc(100% - 40px))}
.ui-icon{display:inline-block;flex:none;vertical-align:-.2em}
main{min-height:50vh}
a:not(.btn):not(.brand):not(.subject-card):not(.nav a):not(.nav-enquire):focus-visible,
button:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{outline:3px solid #e69c39;outline-offset:3px}
a:not(.btn):not(.brand):not(.arrow-link):not(.nav a):not(.subject-card):hover{text-decoration:underline;text-underline-offset:3px}
.eyebrow{color:#2449bb;letter-spacing:1.45px;font-size:11px;line-height:1.5}
.topline{font-size:12px;background:#0d1c39;color:#ebf2ff}
.topline a{color:#ffe1ab}
.topline .container{min-height:34px}
.site-header{box-shadow:0 3px 15px rgba(15,32,63,.035)}
.header-inner{min-height:78px}
.brand-mark{border-radius:13px;box-shadow:4px 4px 0 #a9e4d8}
.brand-name{color:#132242}
.brand-city{color:#4a5f85}
.nav{gap:7px}
.nav a:not(.nav-enquire){padding:10px 11px;border-radius:9px;color:#243454;transition:background .15s,color .15s}
.nav a:not(.nav-enquire):hover{color:#173bad;background:#edf2ff;text-decoration:none}
.nav .nav-enquire{font-size:13px;padding:11px 16px;border-radius:11px}
.breadcrumbs{color:#4a5f7b;padding:16px 0 12px}
.breadcrumbs a{color:#2446ad}
.section{padding:62px 0}
.section-compact{padding:28px 0 56px}
.section-heading{max-width:830px;margin-bottom:26px}
.section-heading h2{font-size:clamp(26px,3vw,36px);margin:9px 0 11px}
.section-heading p{max-width:760px;color:var(--muted);line-height:1.65}
h1,h2,h3{letter-spacing:-.035em}
h3{line-height:1.28}
.hero-grid{padding:68px 0 64px}
.hero .subtext{line-height:1.7}
.hero-notes{gap:8px}
.hero-notes span{background:#ffffff13;border:1px solid #ffffff19;color:#e5eefc}
.hero h1{letter-spacing:-.055em}
.illustration-wrap{box-shadow:0 20px 55px #080f274d}
.btn{min-height:44px;border-radius:12px;font-size:14px;line-height:1.35;padding:12px 16px;text-align:center;white-space:normal}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn-primary{background:#ffda93;color:#152444}
.btn-primary:hover{background:#ffcc70;color:#152444}
.btn-blue{background:#2d50d8;color:#fff}
.btn-blue:hover{background:#1d3eae;color:#fff}
.btn-outline{color:#2143b5;background:#fff;border-color:#b8c9ea}
.btn-outline:hover{background:#eaf1ff;color:#163395}
.btn-wa{color:#fff;background:#087248}
.btn-wa:hover,.btn-wa:focus-visible{color:#fff;background:#075638}
.subject-grid{gap:16px}
.subject-card{min-height:230px;border-color:#d8e3f0;box-shadow:0 4px 16px rgba(14,31,64,.035);padding:24px}
.subject-icon{width:51px;height:51px;margin-bottom:18px;color:#2449ce}
.subject-card h3{font-size:18px;line-height:1.35;margin-bottom:9px}
.subject-card p{font-size:14px;line-height:1.65;color:var(--muted)}
.arrow-link{color:#1644bd;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;line-height:1.6}
.arrow-link:hover{color:#0d2d84}
.pathway{gap:18px}
.pane{padding:29px;border:1px solid #d8e3f0;box-shadow:0 3px 12px #16284908}
.pane.alt{border-color:#b3decc}
.pane p,.pane li{color:#465b72}
.area-grid,.related-grid{gap:16px}
.area-card,.related-card{min-height:190px;border-color:#dae4f0;padding:23px;border-radius:17px;box-shadow:0 4px 16px #1a315c06;transition:border-color .15s,transform .15s}
.area-card:hover,.related-card:hover{border-color:#aac0ef;transform:translateY(-2px)}
.area-card h3,.related-card h3{margin:4px 0 10px;font-size:18px}
.area-card p,.related-card p{font-size:14px;line-height:1.65;color:#52627a}
.area-icon,.related-card-icon{width:40px;height:40px;color:#2449ce;border-radius:12px;background:#eaf0ff;display:grid;place-items:center;margin-bottom:13px}
.area-card .tag{width:max-content;margin-bottom:9px}
.finder{border-color:#e0dcca;padding:30px}
.finder p{color:#475a73}
.field label{color:#263954}
.field input,.field select,.field textarea{border-color:#b8c8da;background:#fff}
.detail-intro{background:linear-gradient(120deg,#eef3fc 0%,#f8faff 66%,#fff8ec 100%);padding:48px 0 53px}
.detail-intro h1{font-size:clamp(32px,4.4vw,53px);max-width:960px}
.detail-intro p.subtext{color:#4a5c75;font-size:17px;line-height:1.7;max-width:810px}
.detail-layout{grid-template-columns:minmax(0,1fr) 285px;gap:24px;align-items:start}
.editorial-section{background:#fff;border:1px solid #dce5ef;border-radius:18px;padding:23px 25px;margin:0 0 15px;box-shadow:0 3px 14px #1a2d4d06}
.editorial-section:last-child{border:1px solid #dce5ef}
.editorial-section-title{display:flex;align-items:center;gap:12px;margin:0 0 12px}
.editorial-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#eaf0ff;color:#2449ce;flex:none}
.editorial-section h2{font-size:clamp(21px,2.3vw,26px);margin:0;line-height:1.32}
.editorial-section p{color:#40536f;line-height:1.78;margin:0 0 10px;font-size:15px}
.editorial-points{list-style:none!important;margin:15px 0 0!important;padding:0!important;display:grid;gap:9px}
.editorial-points li{display:flex;gap:11px;align-items:flex-start;padding:0!important;color:#364f6d;font-size:15px;line-height:1.6}
.editorial-points .ui-icon{color:#08744a;margin-top:4px}
.sidebox{top:104px;background:#fff;border-color:#d9e2ed;box-shadow:0 8px 26px #122d5312;padding:22px}
.sidebox h3{font-size:20px}
.sidebox p{font-size:14px;color:#485b74;line-height:1.65}
.sidebox .btn{display:flex;align-items:center;justify-content:center}
.disclosure{background:#fff9ee;color:#514a37;border-left:3px solid #bf832e;font-size:13px;line-height:1.6;border-radius:0 10px 10px 0;padding:13px 15px}
.faq-list{max-width:100%}
.faq-list details{border-color:#d7e1ef;padding:0 21px;box-shadow:0 3px 13px #112a4d05}
.faq-list summary{padding:19px 32px 19px 0;position:relative;list-style:none;color:#233954}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';position:absolute;right:0;top:calc(50% - 14px);color:#2449ce;font-size:23px;line-height:28px;font-weight:600}
.faq-list details[open] summary::after{content:'−'}
.faq-list details[open] summary{border-bottom:1px solid #e5eaf3}
.faq-list p{padding:1px 0 18px;font-size:15px;color:#455975;line-height:1.7}
.tag{line-height:1.5;color:#1b5d50;background:#dff5ed;font-size:12px;letter-spacing:0;padding:7px 11px}
.tag.blue{color:#2449b5;background:#e9efff}
.tag.amber{color:#76520f;background:#fff2ce}
.provider-checked{background:#e1f7ea;color:#086442;border:1px solid #a1dabe}
.provider-checked .ui-icon{stroke-width:2.3}
.listing-label{background:#eaf0ff;color:#2545a5}
/* Provider listing: content on left and focused actions on the right. */
.provider-directory-section{background:#f4f7fc;padding:44px 0 54px}
.listing-section-heading{max-width:900px;margin-bottom:21px}
.listing-section-heading h2{margin-bottom:6px}
.featured-listing{grid-template-columns:minmax(0,1fr) 287px;align-items:stretch;border:1px solid #d1dfef;border-radius:20px;box-shadow:0 12px 32px #122d4c0b}
.featured-listing__body{padding:26px 28px 24px}
.listing-head{display:flex;align-items:center;gap:15px;margin-bottom:18px}
.listing-monogram{width:60px;height:60px;flex:0 0 60px;border-radius:15px;background:linear-gradient(145deg,#284ed6,#18357f);color:#fff;display:grid;place-items:center;font-size:18px;font-weight:900;letter-spacing:.3px}
.listing-identity{min-width:0}
.featured-listing__body h3{font-size:clamp(24px,3vw,29px);margin:0 0 10px;color:#16284d}
.provider-tags{margin:0;gap:7px}
.provider-tags .tag{display:inline-flex;gap:5px;align-items:center;margin:0;font-weight:800}
.listing-summary{font-size:15px!important;color:#3a4e6b!important;line-height:1.68!important;margin:0 0 17px}
.listing-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 17px}
.listing-fact{display:flex;align-items:flex-start;gap:9px;border:1px solid #e1e8f2;border-radius:12px;padding:12px 10px;color:#324967;background:#f9fbff;font-size:12px;line-height:1.5;min-width:0}
.listing-fact .ui-icon{color:#284dc1;width:18px;height:18px;margin-top:2px}
.listing-fact span{min-width:0}
.listing-fact strong{display:block;color:#1d3358;font-size:12px;margin:0 0 3px}
.listing-location{display:flex;gap:10px;align-items:flex-start;background:#f7fafc;border-top:0;border-radius:12px;padding:13px 14px!important;margin:0!important;color:#455975!important;font-size:13px!important;line-height:1.6!important}
.listing-location .ui-icon{color:#345bc8;margin-top:2px}
.featured-listing__trust{background:#fbfdff;border-left:1px solid #e0e8f2;padding:24px;display:flex;flex-direction:column;justify-content:center;gap:12px}
.listing-side-top{display:flex;align-items:center;gap:10px;font-size:11px;line-height:1.45;letter-spacing:.75px;color:#0b6647;font-weight:900}
.listing-side-top .ui-icon{color:#08744f;stroke-width:2}
.featured-listing__trust p{font-size:13px;line-height:1.6;margin:0;color:#4b5e73}
.featured-listing__trust .btn{width:100%;margin:0;gap:8px}
.featured-listing__trust .listing-website{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:underline;text-underline-offset:3px;color:#1c46bd;font-size:13px;font-weight:800;padding:7px}
.listing-disclaimer{font-size:12px!important;color:#5a6474!important;background:#edf3fb;border-radius:9px;padding:10px}
.provider-contact-panel{background:#eff9f5;border-color:#b5decf}
.provider-contact-panel h2{font-size:26px}
.provider-contact-panel .listing-actions{flex:none}
.provider-contact-panel .btn-wa{min-height:48px}
/* Secondary provider cards and resource pages */
.research-provider{border-color:#dce5ef;box-shadow:0 5px 16px #12244a08;gap:11px}
.research-provider h3{font-size:20px}
.research-provider p{font-size:14px;color:#4b5d78}
.submission{border-radius:21px;border:1px solid #dbe4ef}
.enquiry-section{background:#f2effe}
.enquiry-card{box-shadow:0 12px 36px #2e235914;border:1px solid #e7def5}
.enquiry-card>p,.enquiry-intro p,.enquiry-intro li{color:#495972}
.message-box pre{color:#3d4d67;font-size:14px;line-height:1.6}
.form-note{color:#53637a;line-height:1.65}
.cta-band{box-shadow:0 15px 32px #101f3a16;gap:22px}
.cta-band h2{font-size:clamp(25px,2.7vw,32px)}
.cta-band p{color:#e4ebf9}
.cta-band .btn{flex:none}
.site-footer{background:#101f40;color:#f8faff}
.site-footer p{color:#dbe5f5}
.site-footer a{color:#e4eaff;text-decoration:underline;text-underline-offset:3px}
.site-footer a:hover{color:white}
.footer-grid h3{color:#fff;font-size:16px}
.footer-bottom{color:#dbe5f5}
.sitemap-utility{background:#f0f5fd;border:1px solid #d9e5f5;border-radius:15px;padding:15px}
.directory-list>div{border:1px solid #d9e5ef;border-radius:17px;padding:22px;background:white}
.directory-list h2{font-size:20px}
.directory-list a{padding:7px 0;text-decoration:underline;text-underline-offset:3px;color:#2145ab}
.mobile-quick{box-shadow:0 -4px 18px #0b224418}
.mobile-quick a{font-size:14px}
/* Deliberate responsive layout, including narrow 320px phones */
@media(max-width:1050px){
 .nav{gap:2px}.nav a:not(.nav-enquire){padding:8px 7px;font-size:12px}
 .featured-listing{grid-template-columns:minmax(0,1fr) 260px}
 .featured-listing__trust{padding:18px}
 .listing-facts{grid-template-columns:1fr 1fr}
}
@media(max-width:770px){
 .container{width:calc(100% - 32px)}
 .mobile-toggle{min-height:42px;color:#1b3153}
 .nav{gap:0}.nav a:not(.nav-enquire){font-size:15px;padding:11px 14px}
 .nav .nav-enquire{margin:9px 12px;text-align:center}
 .hero-grid{padding:54px 0 56px}
 .detail-layout{grid-template-columns:1fr;gap:18px}
 .editorial-section{padding:22px}
 .sidebox{position:static}
 .featured-listing{grid-template-columns:1fr}
 .featured-listing__trust{border-left:0;border-top:1px solid #e0e8f2;padding:20px;display:grid;grid-template-columns:1fr 1fr;align-items:center}
 .featured-listing__trust .listing-side-top,.featured-listing__trust p,.featured-listing__trust .listing-website{grid-column:1/-1}
 .listing-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
 .listing-head{align-items:flex-start}
 .section{padding:48px 0}
 .mobile-quick{padding:8px 15px calc(8px + env(safe-area-inset-bottom));background:#fff;backdrop-filter:none}
 .mobile-quick a{min-height:47px}
 .site-footer{padding-bottom:95px}
}
@media(max-width:560px){
 .hero-grid{padding:44px 0 49px}
 .hero h1{font-size:clamp(34px,8.3vw,42px)}
 .hero .subtext{font-size:16px}
 .hero-actions .btn{width:100%}
 .section{padding:39px 0}
 .detail-intro{padding:35px 0 40px}
 .detail-intro h1{font-size:clamp(30px,8vw,39px)}
 .detail-intro p.subtext{font-size:16px}
 .subject-grid,.area-grid,.related-grid,.finder-grid{grid-template-columns:1fr}
 .featured-listing__body{padding:19px}
 .featured-listing__trust{padding:19px;grid-template-columns:1fr}
 .featured-listing__trust .listing-side-top,.featured-listing__trust p,.featured-listing__trust .listing-website{grid-column:auto}
 .listing-head{gap:12px}
 .listing-monogram{width:49px;height:49px;flex-basis:49px;font-size:15px;border-radius:12px}
 .featured-listing__body h3{font-size:23px;line-height:1.2}
 .listing-facts{grid-template-columns:1fr;gap:7px}
 .listing-fact{padding:9px 11px}
 .listing-fact strong{display:inline;margin-right:7px}
 .editorial-section{padding:19px}
 .editorial-section-title{align-items:flex-start}
 .editorial-icon{width:35px;height:35px}
 .editorial-section h2{font-size:21px}
 .cta-band{padding:24px}
 .cta-band .btn{width:100%}
 .footer-grid{grid-template-columns:1fr}
 .footer-grid>:first-child{grid-column:auto}
 .topline .container{font-size:10px}
 .enquiry-card{padding:20px}
}
@media(prefers-reduced-motion:reduce){.area-card,.related-card,.btn{transition:none;transform:none!important}}

/* Extra-small phones: keep the complete logo and menu inside the viewport. */
@media(max-width:390px){.header-inner{gap:8px}.brand{gap:8px;min-width:0;max-width:calc(100% - 90px)}.brand-name{font-size:13px;line-height:1.08}.brand-city{font-size:9px;letter-spacing:.9px}.brand-mark{width:38px;height:38px;min-width:38px}.mobile-toggle{padding:8px;font-size:13px;white-space:nowrap}.container{width:calc(100% - 26px)}}

/* Homepage provider-listing invitation */
.provider-join-strip{background:#f4f7fc;padding:0 0 52px}
.provider-join-inner{display:flex;align-items:center;gap:15px;border:1px solid #d4e3ef;padding:19px 23px;border-radius:17px;background:#fff}
.provider-join-icon{display:grid;place-items:center;background:#eaf0ff;color:#2449ce;width:44px;height:44px;flex:0 0 44px;border-radius:12px}
.provider-join-inner>div:nth-child(2){flex:1;min-width:0}
.provider-join-inner strong{font-size:16px;color:#1b3358}
.provider-join-inner p{font-size:14px;color:#4b5d77;margin:3px 0 0}
@media(max-width:650px){.provider-join-inner{align-items:flex-start;flex-wrap:wrap}.provider-join-inner>.btn{width:100%}}

/* v2.8 — lightweight, reusable, consent-based commercial outbound choice */
.lead-dialog{width:min(560px,calc(100% - 28px));max-height:min(90dvh,830px);overflow:auto;border:1px solid #d9e3f2;border-radius:20px;padding:0;box-shadow:0 25px 80px #101f4066;background:#fff;color:#12264c}
.lead-dialog::backdrop{background:#0b1a35a8}
.lead-modal{padding:24px}
.lead-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.lead-head h2{font-size:clamp(22px,4.5vw,27px);line-height:1.18;margin:7px 0 7px;color:#101f40}
.lead-head .eyebrow{font-size:10px}
.lead-close{border:1px solid #d1dced;background:#fff;color:#172d55;min-width:40px;min-height:40px;border-radius:11px;font-size:26px;cursor:pointer}
#lead-intro{font-size:14px;color:#42536f;line-height:1.55;margin:6px 0 10px}
.lead-recipient{font-size:13px;line-height:1.5;background:#edf5ff;border:1px solid #cbdcf5;color:#1d385a;padding:10px 12px;border-radius:11px;margin:8px 0 15px}
.lead-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lead-fields .field label,.lead-question-label{font-weight:700;font-size:13px;color:#142b4f;display:block;margin-bottom:5px}
.lead-fields .field select{width:100%;min-width:0;padding:10px;background:#fff;border:1px solid #b7c8de;color:#162a4d;border-radius:9px}
.lead-question-label{margin:13px 0 5px}
.lead-dialog textarea{display:block;width:100%;border:1px solid #b7c8de;background:white;color:#162a4d;border-radius:9px;padding:10px;resize:vertical}
.lead-preview{background:#f3f6fb;border:1px solid #dbe5f3;padding:10px 12px;border-radius:12px;margin:12px 0}
.lead-preview strong{font-size:12px}
.lead-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.55;font-family:inherit;margin:5px 0 0;color:#1a3656}
.lead-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;color:#253956;cursor:pointer;margin:10px 0 14px}
.lead-consent input{width:18px;height:18px;flex:0 0 18px;accent-color:#0a7a56;margin-top:1px}
.lead-primary{width:100%;min-height:46px;cursor:pointer}
.lead-primary:disabled{background:#a2b1bc;color:#182d40;cursor:not-allowed}
.lead-continue{display:block;text-align:center;margin:13px 0 0;padding:9px;text-decoration:underline;text-underline-offset:3px;color:#1c49ad;font-weight:700;font-size:14px}
.lead-privacy{font-size:12px;color:#53637a;margin:11px 0 0;line-height:1.5}
.lead-dialog :focus-visible{outline:3px solid #f39a39;outline-offset:3px}
@media(max-width:560px){.lead-modal{padding:16px}.lead-fields{grid-template-columns:1fr 1fr;gap:8px}.lead-fields .field label{font-size:12px}.lead-fields .field select{padding:9px 5px;font-size:13px}.lead-dialog{max-height:94dvh}}
@media(max-width:360px){.lead-fields{grid-template-columns:1fr}}

/* Keep primary actions visible immediately; reveal optional qualification only on request. */
.lead-more{border:1px solid #dbe5f3;border-radius:11px;background:#fbfcff;padding:7px 11px;margin:10px 0}
.lead-more summary{cursor:pointer;color:#1d46a2;font-size:14px;font-weight:700;padding:4px 0;list-style:revert}
.lead-more[open] summary{margin-bottom:12px}
.lead-more .lead-question-label{margin-top:12px}
.lead-preview{margin-top:9px}
