/* The original CanMed stylesheet supplies all colours, type, imagery and components. */
[hidden]{display:none!important} em{color:var(--accent-ink);font-style:normal} button,summary{cursor:pointer} select:focus-visible,textarea:focus-visible{outline:3px solid var(--forest);outline-offset:4px} .nav-shell{grid-template-columns:100px 1fr auto;gap:20px;min-height:90px}.site-header .brand img{width:94px;height:84px}.desktop-nav{gap:clamp(8px,1.15vw,20px)}.desktop-nav a,.nav-group summary{font-size:14px}.nav-group{position:relative}.nav-group summary{min-height:48px;display:flex;align-items:center;gap:6px;font-weight:680;white-space:nowrap;list-style:none}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary span{font-size:14px}.nav-dropdown{position:absolute;top:100%;left:-18px;width:245px;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--paper);box-shadow:var(--card-shadow)}.desktop-nav .nav-dropdown a{display:flex;white-space:normal;min-height:44px;padding:10px;border-radius:6px}.nav-dropdown a:hover{background:var(--sage)}.desktop-nav [aria-current=page]:after{transform:scaleX(1)}.nav-group-active summary{color:var(--accent-ink)}.mobile-menu summary{gap:16px;padding:0 16px;display:flex}.mobile-menu nav a[aria-current=page]{border-left:3px solid var(--accent);background:var(--sage)}.mobile-menu nav{max-height:calc(100dvh - 155px);overflow:auto}.footer-grid{grid-template-columns:.75fr 1.6fr}.footer-nav{grid-template-columns:1fr 1.3fr 1.2fr;gap:28px}.footer-nav>div{align-content:start}.footer-nav a{min-height:32px;padding-block:5px}
.home-pathway{min-height:360px}.home-pathway h3{margin-top:25px}.home-pathway>p{max-width:480px}.quick-section{padding-block:0 90px}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quick-link{padding:36px;display:flex;flex-direction:column}.quick-link:first-child{padding-left:0}.quick-link:last-child{padding-right:0}.quick-link+.quick-link{border-left:1px solid var(--line)}.quick-link h2{font-size:29px;letter-spacing:-.035em;line-height:1.15;margin-bottom:16px}.quick-link p{color:var(--ink-soft);font-size:15px;line-height:1.65;margin-bottom:22px}.quick-link .text-link{justify-content:flex-start;align-self:flex-start;gap:8px;margin-top:auto}.quick-link:hover h2{color:var(--accent-ink)}
.page-hero{background:var(--ivory);padding:28px 0 74px;border-bottom:1px solid var(--line)}.breadcrumb{display:flex;gap:12px;color:var(--ink-soft);font-size:12px;margin-bottom:52px}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}.page-hero h1{font-size:clamp(48px,5.4vw,76px);letter-spacing:-.055em;line-height:1.03;margin:0 0 25px;max-width:1000px}.page-intro{font-size:18px;line-height:1.7;max-width:760px;color:var(--ink-soft);margin:0}.page-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.content-section{padding-block:80px}.prose h2,.info-panel h2,.map-heading h2{font-size:clamp(34px,3.4vw,48px);line-height:1.1;letter-spacing:-.04em;margin-bottom:24px}.prose p,.info-panel p{font-size:16px;color:var(--ink-soft);line-height:1.8;margin-bottom:20px}.prose .button{margin-top:12px}.about-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}.about-image{overflow:hidden;border-radius:18px;min-height:430px;background:var(--sage)}.about-image img{width:100%;height:430px;object-fit:cover;object-position:right center}.city-links{display:grid;grid-template-columns:repeat(3,1fr);gap:0 32px}.city-links a{padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:20px;font-family:Georgia,serif}.city-links a:hover{color:var(--accent-ink)}.page-team .team-section{background:var(--paper);padding-top:52px}.page-team .team-shell{grid-template-columns:1fr}.page-team .team-intro{display:none}.page-team .team-group{grid-template-columns:220px 1fr;gap:70px}.page-team .team-group ul{grid-template-columns:repeat(3,1fr)}.career-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.info-panel{background:var(--sage);border:1px solid var(--line);border-radius:18px;padding:40px}
.service-browser{display:grid;grid-template-columns:320px minmax(0,1fr);gap:56px;align-items:start}.service-selector{position:sticky;top:116px}.service-selector h2{font-size:30px;margin-bottom:28px;letter-spacing:-.035em}.service-selector a{display:grid;grid-template-columns:25px 1fr 18px;align-items:center;gap:14px;padding:20px 16px;border-bottom:1px solid var(--line);border-left:3px solid transparent;min-height:86px}.service-selector a:first-of-type{border-top:1px solid var(--line)}.service-selector a:hover{background:var(--ivory)}.service-selector a[aria-current=true]{background:var(--forest);color:var(--paper);border-left-color:var(--accent)}.service-selector a[aria-current=true] small{color:#e1ebde}.service-selector a[aria-current=true] .service-index{color:var(--accent)}.service-selector strong{display:block;font-size:16px}.service-selector small{display:block;color:var(--ink-soft);font-size:11px;margin-top:5px}.service-index{font-family:Georgia,serif;font-size:14px;color:var(--accent-ink)}.service-detail{border:1px solid var(--line);border-radius:18px;padding:42px;background:linear-gradient(145deg,#fff,#fbfcf5);box-shadow:var(--card-shadow);margin-bottom:25px}.service-detail h2{font-size:42px;letter-spacing:-.04em;line-height:1.06;margin-bottom:22px}.service-detail .service-description{font-size:18px;line-height:1.75}.service-detail p{color:var(--ink-soft);line-height:1.75;font-size:15px}.service-detail h3{font-size:26px;margin:30px 0 12px;letter-spacing:-.025em}.service-detail .eyebrow{font-size:10px;margin-bottom:18px}.service-facts{display:grid;margin:24px 0 0;border-top:1px solid var(--line)}.service-facts>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:22px;padding:20px 0;border-bottom:1px solid var(--line)}.service-facts dt{padding-top:3px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px}.service-facts dd{font-size:15px;line-height:1.65;margin:0;color:var(--ink-soft)}.service-facts dd a{color:var(--forest);text-decoration:underline;text-underline-offset:3px}.service-detail .patient-contact-note{margin-top:25px}.page-patient-preparation .care-section{background:var(--paper)}.print-checklist{margin-top:20px;gap:12px}.page-referrals .physician-guide-section{background:var(--paper);padding-top:52px}.page-referrals .physician-guide-copy h2{font-size:40px}.page-faq .faq-section{background:var(--paper)}.page-faq .faq-intro h2{font-size:40px}
.directory-toolbar{display:grid;grid-template-columns:1fr 240px auto;align-items:end;gap:20px}.directory-toolbar label{display:block;font-weight:700;font-size:13px;margin-bottom:10px}.search-input{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding-left:16px;background:#fff}.search-input span{font-size:26px}.search-input input{width:100%;height:52px;padding:0 16px 0 0;font-size:15px;border:0;background:none;min-width:0}.search-input:focus-within{outline:2px solid var(--forest);outline-offset:3px}.search-input input:focus-visible{outline:none}.region-field select{height:54px;width:100%;padding:0 38px 0 15px;border:1px solid var(--line);border-radius:10px;background:var(--paper);font-size:14px}.directory-toolbar .button{height:54px}.directory-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0}.directory-meta p{font-size:13px;color:var(--ink-soft);margin:0}.location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.clinic-card{padding:28px;background:linear-gradient(145deg,#fff,#fbfcf5);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:16px;box-shadow:0 14px 38px #274e3b0f}.clinic-card .eyebrow{font-size:10px;letter-spacing:.08em;margin-bottom:16px}.clinic-card .eyebrow span{width:20px}.clinic-card h2{font-size:34px;letter-spacing:-.035em;margin-bottom:16px}.clinic-card address{font-size:14px;line-height:1.7;font-style:normal;color:var(--ink-soft);min-height:48px}.clinic-card dl{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;border-block:1px solid var(--line);margin:22px 0 5px;padding:20px 0}.clinic-card dt{text-transform:uppercase;font-size:10px;letter-spacing:.08em;color:var(--ink-soft);margin-bottom:7px}.clinic-card dd{font-size:13px;margin:0;font-weight:600}.clinic-card dd a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px;overflow-wrap:anywhere}.clinic-email{grid-column:1/-1}.clinic-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.clinic-actions .text-link{font-size:12px}.clinic-referral{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:15px;margin-top:4px;font-size:12px;font-weight:750;min-height:42px}.clinic-referral:hover,.clinic-actions a:hover{color:var(--accent-ink)}.empty-state{border:1px solid var(--line);background:var(--sage);border-radius:16px;text-align:center;padding:55px 24px}.empty-state h2{font-size:34px;margin-bottom:16px}.empty-state p{color:var(--ink-soft);margin-bottom:24px}.directory-map{margin-top:68px}.map-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.map-heading .eyebrow{margin-bottom:16px}.map-heading h2{margin-bottom:0}.map-stage{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--sage)}.map-placeholder{min-height:400px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px;background:radial-gradient(ellipse at center,#fffef9,var(--sage));}.map-symbol{font-size:56px;color:var(--accent-ink);font-family:Georgia,serif;line-height:1;margin-bottom:20px}.map-placeholder h3{font-size:32px;letter-spacing:-.025em;margin-bottom:14px}.map-placeholder p{color:var(--ink-soft);font-size:15px;margin-bottom:24px}.map-status{font-size:13px;color:var(--ink-soft);margin:12px 0 0}#canmed-map{height:500px;z-index:0}.clinic-pin{background:var(--forest);color:#fff;border:3px solid #fff;border-radius:50%;display:grid;place-items:center;font-weight:700;box-shadow:0 3px 12px #23472d55}.leaflet-popup-content-wrapper{border-radius:12px!important}.leaflet-popup-content h3{font-size:24px;margin:0 0 10px}.leaflet-popup-content p{line-height:1.6;color:var(--ink-soft)}.leaflet-popup-content a{color:var(--forest);font-weight:700}.leaflet-popup-content .popup-links{display:flex;gap:18px}.leaflet-control-attribution{font-size:10px!important}
.resources-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.resource-card{padding:38px;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:16px;background:linear-gradient(145deg,#fff,#fbfcf5);display:flex;flex-direction:column}.resource-card h2{font-size:34px;letter-spacing:-.035em;line-height:1.15;margin-bottom:18px}.resource-card p{color:var(--ink-soft);font-size:16px;line-height:1.7;max-width:450px;margin-bottom:24px}.resource-card .text-link{margin-top:auto}.resource-card:hover h2{color:var(--accent-ink)}.narrow-prose{max-width:880px}.question-list{margin:30px 0;list-style:none;padding:0}.question-list li{font-size:18px;padding:20px 0;border-top:1px solid var(--line);line-height:1.5}.question-list li:before{content:'↗';color:var(--accent-ink);margin-right:18px}.page-contact .patient-contact-section{background:var(--paper)}
/* All interior page titles share the Contact / Resources / FAQ header. */
.page-hero-compact{padding:24px 0 36px}.page-hero-compact .breadcrumb{margin-bottom:24px}.page-hero-compact h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,3.5vw,50px);font-weight:400;line-height:1.1;letter-spacing:-.055em;color:var(--forest);margin-bottom:16px}.page-hero-compact .page-intro{font-size:17px;max-width:800px;line-height:1.65}.page-hero-compact .page-actions{margin-top:22px}.page-practical .content-section{padding-block:44px 64px}.page-practical .closing-section{padding-block:48px}.page-practical .closing-shell h2{font-size:38px;line-height:1.12}.page-practical .closing-shell{gap:36px}.page-faq .faq-section{padding-top:44px}.page-faq .faq-intro h2{font-size:32px}
/* Referral downloads and their destination fax stay together. */
.page-referrals .referral-library{margin:0;padding:0;border:0}.referral-library-heading h2{font-size:32px;line-height:1.15;letter-spacing:-.035em;margin:0}.referral-library-heading .eyebrow{margin-bottom:14px}.referral-row-main h3{font-size:27px;letter-spacing:-.03em;line-height:1.1;margin:0 0 7px}.referral-row{grid-template-columns:36px minmax(230px,1fr) minmax(240px,.8fr) 205px;gap:24px}.referral-row-actions{display:grid;gap:5px}.referral-row-actions .referral-download{grid-area:auto}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.referral-workflow{border-top:1px solid var(--line);margin-top:48px;padding-top:32px}.referral-workflow h2{font-size:30px;letter-spacing:-.03em;margin:0 0 24px}.referral-workflow ol{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;list-style:none;padding:0;margin:0}.referral-workflow li{display:flex;align-items:flex-start;gap:16px}.referral-workflow li>span{font:20px Georgia,serif;color:var(--accent-ink)}.referral-workflow strong{font-size:15px}.referral-workflow p{font-size:14px;color:var(--ink-soft);line-height:1.65;margin:8px 0 0}.referral-workflow .referral-security{border-top:1px solid var(--line);padding-top:20px;margin-top:28px;font-size:13px}
/* Clinic contacts appear before the enquiry form. All locations remain readable without JavaScript. */
.clinic-contact-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:56px;align-items:start}.contact-clinic-picker h2{font-size:30px;letter-spacing:-.035em;line-height:1.15;margin:0 0 16px}.contact-clinic-picker>p{color:var(--ink-soft);font-size:15px;line-height:1.65;margin:0 0 24px}.contact-clinic-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.contact-clinic-options button{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--forest);font:650 13px system-ui;min-height:52px;padding:12px}.contact-clinic-options button:hover{background:var(--sage)}.contact-clinic-options [aria-pressed=true]{background:var(--forest);color:var(--paper);border-color:var(--forest)}.contact-clinic-options [aria-pressed=true]:hover{background:var(--forest)}.contact-clinic-options [aria-pressed=true] span{color:var(--accent)}.contact-clinic-picker>.text-link{font-size:13px}.contact-clinic-card{padding:32px 36px;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:16px;background:linear-gradient(145deg,#fff,#fbfcf5);box-shadow:var(--card-shadow)}.contact-clinic-card+.contact-clinic-card{margin-top:24px}.contact-clinic-card[hidden]+.contact-clinic-card{margin-top:0}.contact-clinic-card .eyebrow{font-size:10px;margin-bottom:14px}.contact-clinic-card h2{font-size:38px;letter-spacing:-.035em;line-height:1.1;margin:0 0 14px}.contact-clinic-card address{font-size:15px;font-style:normal;line-height:1.6;color:var(--ink-soft)}.contact-clinic-card dl{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;border-block:1px solid var(--line);padding:22px 0;margin:22px 0 0}.contact-clinic-card dt{text-transform:uppercase;font-size:10px;letter-spacing:.08em;color:var(--ink-soft);margin-bottom:8px}.contact-clinic-card dd{margin:0;font-size:16px;font-weight:600;line-height:1.5}.contact-clinic-card dd a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px;overflow-wrap:anywhere}.contact-email{grid-column:1/-1}.contact-email dd{font-size:14px}.contact-clinic-card .page-actions{margin-top:22px;align-items:center;gap:24px}.contact-clinic-card .page-actions .text-link{font-size:13px}.page-contact .patient-contact-section{padding-block:54px;background:var(--sage);border-top:1px solid var(--line)}.page-contact .patient-contact-layout{grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);gap:56px}.page-contact .patient-contact-copy h2{font-size:38px}.page-contact .patient-contact-copy{padding-top:0}.page-contact .patient-form-heading>span{display:none}
@media(min-width:1121px) and (max-width:1280px){.nav-shell{width:calc(100% - 40px);gap:14px;grid-template-columns:94px 1fr auto}.desktop-nav{gap:10px}.desktop-nav a,.nav-group summary{font-size:14px}.nav-cta{padding:0 16px;font-size:13px}}
@media(max-width:1120px){.desktop-nav,.nav-cta{display:none}.nav-shell{grid-template-columns:1fr auto}.mobile-menu{display:block;position:relative}.mobile-menu summary{border:1px solid var(--ink);border-radius:999px;min-height:44px;min-width:90px;font-size:13px;font-weight:750;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;top:52px;right:0;width:min(320px,100vw - 36px);padding:10px;display:grid;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 24px 60px #274e3b29}.mobile-menu nav a{min-height:44px;padding:12px;font-size:14px;font-weight:650;border:0}.location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-browser{grid-template-columns:280px 1fr;gap:30px}.service-detail{padding:30px}.service-detail h2{font-size:40px}.page-team .team-group ul{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.page-hero{padding-bottom:52px}.breadcrumb{margin-bottom:34px}.page-hero h1{font-size:56px}.page-intro{font-size:17px}.content-section{padding-block:56px}.about-layout,.career-layout{grid-template-columns:1fr;gap:36px}.about-image,.about-image img{height:330px;min-height:330px}.service-browser{grid-template-columns:1fr;gap:32px}.service-selector{position:static}.service-selector h2{font-size:30px}.service-selector a{min-height:70px;padding:14px}.service-selector small{margin-top:3px}.service-detail{padding:32px}.page-team .team-group{grid-template-columns:160px 1fr;gap:30px}.directory-toolbar{grid-template-columns:1fr 200px}.directory-toolbar .button{grid-column:1/-1;justify-self:start;height:44px;min-height:44px}.footer-grid{grid-template-columns:1fr;gap:42px}.quick-link{padding:28px 22px}.quick-link h2{font-size:25px}.city-links{grid-template-columns:repeat(2,1fr)}.clinic-card{padding:24px}.closing-shell{gap:28px}.closing-actions{grid-area:auto;justify-items:start}.page-referrals .physician-guide{grid-template-columns:1fr}}
@media(max-width:600px){.announcement{padding:8px 18px;min-height:34px;font-size:11px}.announcement span:last-child{display:none}.nav-shell{min-height:84px}.site-header .brand img{height:78px;width:88px}.page-hero{padding:22px 0 42px}.page-hero h1{font-size:45px;line-height:1.06}.page-intro{font-size:16px;line-height:1.75}.page-hero .eyebrow{font-size:10px;margin-bottom:20px}.breadcrumb{font-size:11px;margin-bottom:32px}.page-actions{gap:12px;margin-top:24px}.page-actions .button{min-height:46px;font-size:13px}.home-pathway{min-height:330px}.quick-grid{grid-template-columns:1fr}.quick-link,.quick-link:first-child,.quick-link:last-child{padding:28px 0}.quick-link+.quick-link{border-left:0;border-top:1px solid var(--line)}.quick-link h2{font-size:29px}.quick-section{padding-bottom:55px}.footer-nav{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-nav>div:last-child{grid-column:1/-1}.footer-nav a{font-size:13px}.footer-bottom{flex-direction:column;gap:10px;margin-top:38px}.page-team .team-group{grid-template-columns:1fr;gap:12px}.page-team .team-group ul{grid-template-columns:1fr 1fr;gap:0 22px}.page-team .team-group li strong{font-size:14px}.team-group-heading h3{font-size:27px}.info-panel,.resource-card{padding:28px}.resources-grid{grid-template-columns:1fr}.resource-card h2{font-size:30px}.service-detail{padding:26px}.service-detail h2{font-size:36px}.service-detail .service-description{font-size:16px}.service-facts>div{grid-template-columns:1fr;gap:6px;padding:18px 0}.service-facts dt{margin:0}.service-selector .eyebrow{margin-bottom:14px}.service-selector h2{margin-bottom:18px}.service-detail .page-actions .button{width:100%;justify-content:space-between}.directory-toolbar{grid-template-columns:1fr;gap:16px}.directory-toolbar .button{grid-column:auto}.directory-meta{align-items:center}.location-grid{grid-template-columns:1fr}.clinic-card h2{font-size:32px}.clinic-card address{min-height:0}.map-heading{align-items:flex-start;flex-direction:column}.map-heading h2{font-size:36px}.map-placeholder{min-height:340px;padding:26px}.map-placeholder h3{font-size:29px}#canmed-map{height:390px}.city-links{gap:0 20px}.city-links a{font-size:18px}.about-image,.about-image img{height:270px;min-height:270px}.page-contact .patient-form-heading{gap:10px}.page-contact .patient-form-heading>span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{.site-header,.announcement,.site-footer,.page-hero,.page-patient-preparation main>section:not(.content-section),.page-patient-preparation .content-section .prose,.print-checklist{display:none!important}.page-patient-preparation .care-shell{display:block}.content-section{padding:0}.section-shell{width:100%}.referral-checklist{border:0;box-shadow:none;padding:20px}.referral-checklist li{break-inside:avoid}.referral-checklist::before{content:'CanMed Endoscopy — Appointment checklist';font:28px Georgia,serif;display:block;margin-bottom:25px}}
.page-team .team-group-heading h2{letter-spacing:-.025em;margin:0;font-size:24px;line-height:1.18}
.mobile-menu[open]>summary>span{transform:rotate(45deg)}
.leaflet-marker-icon.clinic-pin{display:grid;place-items:center;font:700 13px system-ui;color:#fff}
.leaflet-container .leaflet-popup-content a{color:var(--forest)}

@media(max-width:1120px){.referral-row{grid-template-columns:30px minmax(0,1fr) 205px;gap:16px}.referral-row-contact{grid-column:2}.referral-row-actions{grid-area:1/3/span 2}.clinic-contact-layout{grid-template-columns:280px minmax(0,1fr);gap:30px}}
@media(max-width:860px){.page-hero-compact{padding:22px 0 32px}.page-hero-compact h1{font-size:42px}.page-hero-compact .breadcrumb{margin-bottom:22px}.clinic-contact-layout{grid-template-columns:1fr;gap:28px}.contact-clinic-options{grid-template-columns:repeat(3,minmax(0,1fr))}.page-contact .patient-contact-layout{grid-template-columns:1fr;gap:30px}.referral-library-heading{gap:18px}.referral-workflow ol{gap:22px}}
@media(max-width:600px){.page-hero-compact{padding:20px 0 28px}.page-hero-compact h1{font-size:36px;margin-bottom:14px}.page-hero-compact .page-intro{font-size:15px}.page-hero-compact .breadcrumb{margin-bottom:20px}.page-practical .content-section{padding-block:32px 44px}.page-practical .closing-shell h2{font-size:34px}.referral-row{grid-template-columns:24px minmax(0,1fr);padding:22px 18px;gap:14px}.referral-row-contact,.referral-row-actions{grid-area:auto/2}.referral-row-actions{margin-top:2px}.referral-row-contact{gap:12px}.referral-row-contact dd{font-size:12px}.referral-library-heading h2{font-size:28px}.referral-library-heading{margin-bottom:24px}.referral-workflow ol{grid-template-columns:1fr;gap:20px}.referral-workflow h2{font-size:28px}.contact-clinic-options{grid-template-columns:1fr 1fr}.contact-clinic-card{padding:26px 22px}.contact-clinic-card h2{font-size:34px}.contact-clinic-card dl{gap:14px}.contact-clinic-card dd{font-size:14px}.contact-email dd{font-size:13px}.contact-clinic-card .page-actions{gap:12px}.page-contact .patient-contact-copy h2{font-size:34px}.page-contact .patient-contact-section{padding-block:40px}}.service-detail,.contact-clinic-card{scroll-margin-top:110px}

/* Audit refinements: retain the CanMed palette, serif headings and illustration. */
:root{--header-height:90px}
.prose .eyebrow,.resource-card .eyebrow,.page-hero .eyebrow,.clinic-card .eyebrow,.contact-clinic-card .eyebrow{font-size:12px;line-height:1.5;letter-spacing:.09em;font-weight:750;color:var(--forest)}
.nav-group-active summary,.quick-link:hover h2,.resource-card:hover h2{color:var(--forest)}
.breadcrumb{font-size:13px}.footer-nav a{font-size:14px;min-height:40px}
.page-hero-compact h1{max-width:1000px}.page-hero-compact h1 br{display:none}
.home-pathway{min-height:295px}.home-pathway h3{font-size:36px}.home-pathway p{font-size:16px}
.home-pathway .pathway-actions{margin-top:24px}.pathway-label{font-size:13px}
.prose h2,.info-panel h2,.care-copy h2,.faq-intro h2,.visit-timeline h2{font-size:clamp(30px,3vw,38px);line-height:1.16;letter-spacing:-.035em}
.info-panel,.contact-clinic-card,.clinic-card,.resource-card{box-shadow:none}.clinic-actions .text-link,.clinic-referral,.contact-clinic-card .page-actions .text-link,.contact-clinic-picker>.text-link{font-size:14px;min-height:44px}
.clinic-card dt,.contact-clinic-card dt,.referral-row-contact dt{font-size:12px;line-height:1.4}.clinic-card dd,.referral-row-contact dd{font-size:14px}
.clinic-card dd:not(.clinic-email dd),.referral-row-contact dd,.contact-clinic-card dd:not(.contact-email dd){white-space:nowrap}
.clinic-email dd,.contact-email dd{font-size:15px}.clinic-email a,.contact-email a{display:inline-flex;align-items:center;min-height:44px}
.clinic-card dl{grid-template-columns:1fr;gap:16px}.clinic-actions{flex-wrap:wrap}.clinic-actions .text-link{padding-block:10px}
.referral-row-actions{min-width:0}.original-pdf{display:inline-flex;justify-content:center;align-items:center;min-height:40px;font-size:13px;font-weight:650;text-decoration:underline;text-underline-offset:4px}.document-version{font-size:13px!important;max-width:340px}
.referral-library-heading{flex-wrap:wrap}.referral-row-actions .referral-download{font-size:14px}.referral-workflow p{font-size:15px}
.service-mobile-picker label{display:block;margin-bottom:10px;font-size:14px;font-weight:700}.service-mobile-picker select{width:100%;min-height:52px;padding:12px;border:1px solid var(--forest);border-radius:8px;background:var(--paper);color:var(--forest);font:600 16px system-ui}
.service-selector small{font-size:13px}.service-change{margin-top:24px;font-size:14px;min-height:44px;display:none}.service-facts dd{font-size:16px}
.visit-timeline{background:var(--paper)}.visit-timeline h2{margin-bottom:30px}.visit-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.visit-stages article{border-top:1px solid var(--line);padding-top:24px}.visit-stages .service-number{margin-bottom:16px}.visit-stages h3{font:26px/1.2 Georgia,serif;margin-bottom:14px}.visit-stages p{font-size:16px;line-height:1.7;color:var(--ink-soft)}
.page-patient-preparation .faq-intro p+p{margin-top:20px}.page-patient-preparation .faq-list details{scroll-margin-top:110px}.page-patient-preparation .faq-list details:target{outline:2px solid var(--forest);outline-offset:5px}
.page-patient-preparation .care-section{padding-block:48px}.page-patient-preparation .care-copy h2{font-size:32px}.checklist-heading{font-size:13px}.referral-checklist li p{font-size:15px}
.page-faq .faq-intro h2{font-size:30px}.page-faq .faq-list p a{text-decoration:underline;text-underline-offset:4px}.resource-card .eyebrow{max-width:none}.resource-download{background:var(--sage)}.accessibility-help{border-top:1px solid var(--line)}
.patient-form-shell iframe{display:block;width:100%}
.mobile-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.mobile-menu nav .mobile-shortcuts a{display:flex;align-items:center;border:1px solid var(--line);border-radius:6px;background:var(--sage);font-size:13px;line-height:1.4}
@media(min-width:861px){.service-mobile-picker{display:none}.service-selector{top:110px}}
@media(max-width:860px){.service-browser.has-service-picker{gap:22px}.has-service-picker .service-selector{display:none}.has-service-picker .service-change{display:inline-flex}.visit-stages{grid-template-columns:1fr;gap:24px}.service-detail{scroll-margin-top:100px}.page-about .about-image,.page-about .about-image img{height:auto;min-height:0}.page-about .about-layout{gap:30px}}
@media(max-width:600px){:root{--header-height:84px}.hero-section{padding-top:20px;padding-bottom:36px}.hero-copy .eyebrow{font-size:12px;margin-bottom:16px}.hero-copy h1{font-size:44px;line-height:1.04;margin-bottom:20px}.hero-intro{font-size:16px;line-height:1.65;margin-bottom:22px}.hero-actions{gap:16px;margin-bottom:20px}.hero-secondary-link{font-size:14px;min-height:44px}.hero-route-note{margin-top:20px;padding:16px}.hero-route-note p{font-size:14px;line-height:1.6}.hero-route-note strong{font-size:14px}.hero{gap:28px}.home-pathway{min-height:0}.home-pathway h3{font-size:30px}.start-section{padding-block:40px}.section-intro h2{font-size:34px}.breadcrumb{font-size:12px}.page-hero-compact .page-intro{font-size:16px}.page-actions .button{font-size:14px}.referral-row-contact{grid-template-columns:1fr;gap:16px}.referral-row-contact dd{font-size:15px}.referral-row-actions{justify-items:stretch}.referral-row{padding-inline:16px;gap:10px}.referral-row-main address{font-size:14px}.referral-row-main p{font-size:12px}.service-detail{padding:24px}.service-detail h2{font-size:32px}.patient-form-shell{min-height:0}.page-contact .patient-contact-copy h2{font-size:32px}.contact-clinic-card dl{grid-template-columns:1fr}.contact-clinic-card dd{font-size:16px}.resource-card .eyebrow,.clinic-card .eyebrow,.contact-clinic-card .eyebrow{font-size:12px}.contact-clinic-options button{font-size:14px}.footer-bottom{font-size:12px}.about-layout .prose h2{font-size:32px}}
@media(max-width:480px){.page-team .team-group ul{grid-template-columns:1fr}.page-team .team-group li strong{font-size:16px}.page-team .team-group li span{font-size:14px}.city-links{grid-template-columns:1fr}.hero-copy h1{font-size:40px}.hero-actions{align-items:flex-start;flex-direction:column}.clinic-card{padding:22px}.contact-clinic-card{padding:24px 20px}}
@media print{body{background:white;color:black}body>*{visibility:visible}main{display:block}.skip-link,.service-mobile-picker,.service-change,.mobile-shortcuts{display:none!important}.page-patient-preparation .content-section:not(:has(#appointment-checklist)){display:none!important}.page-patient-preparation .referral-checklist,.page-patient-preparation .referral-checklist *{visibility:visible!important;color:black!important;background:white!important}.referral-checklist{max-width:680px;margin:auto}.referral-checklist::after{content:'Follow the personal preparation instructions provided by your CanMed clinic.';display:block;font:14px/1.6 system-ui;margin-top:24px}.referral-checklist li p{font-size:14px}.referral-checklist .checklist-heading{font-size:14px}}
.service-detail .eyebrow,.service-facts dt{font-size:12px;letter-spacing:.08em}.service-detail .eyebrow{color:var(--forest)}
.referral-library-copy{max-width:395px}.referral-library-copy .document-version{margin-top:12px}.referral-library-heading{align-items:flex-start}



.page-faq .faq-intro>p{margin-bottom:20px}.page-faq .faq-intro{gap:0}.service-selector a[aria-current=true] .service-index{color:var(--accent)}.service-selector a:not([aria-current=true]) .service-index{color:var(--forest)}
@media(max-width:600px){.page-faq .faq-section{padding-top:28px}.page-faq .faq-shell{gap:24px}.page-faq .faq-intro>a{min-height:44px;display:inline-flex;align-items:center}}
.resource-card .text-link{display:flex;align-items:center;justify-content:space-between;gap:12px}


/* Shared navigation: reference chevrons and a thin line on hover or selection. */
:root{--header-height:82px}
.site-header{min-height:82px;border-bottom:0;background:rgba(255,254,249,.9);backdrop-filter:blur(14px);box-shadow:none}
.nav-shell{min-height:82px}
.site-header .brand img{width:86px;height:76px}
.desktop-nav{align-items:stretch}
.desktop-nav>a,.nav-group>summary{min-height:80px;padding:30px 0 27px;border-bottom:2px solid transparent;display:inline-flex;align-items:center;gap:7px;font-size:14px;line-height:21px;font-weight:700;transition:color .18s,border-color .18s}
.desktop-nav a::after{display:none}
.desktop-nav>a:hover,.desktop-nav>a:focus-visible,.nav-group>summary:hover,.nav-group>summary:focus-visible,.nav-group[open]>summary{color:var(--forest);border-bottom-color:var(--accent-ink)}
.desktop-nav>a[aria-current=page],.nav-group-active>summary{color:var(--forest);border-bottom-color:var(--forest)}
.nav-chevron{display:block;flex:0 0 7px;box-sizing:border-box;width:7px;height:7px;border:0;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;margin-top:-4px;transform:rotate(45deg);transition:transform .18s,margin .18s}
.nav-group[open]>summary .nav-chevron,.mobile-nav-group[open]>summary .nav-chevron{margin-top:4px;transform:rotate(225deg)}
.nav-group .nav-dropdown{top:100%;left:-18px;width:270px;padding:10px;border:1px solid var(--line);border-radius:10px;background:rgba(255,254,249,.96);backdrop-filter:blur(14px);box-shadow:0 18px 46px #23472d24;font-weight:700}
.nav-group .nav-dropdown-right{left:auto;right:-18px}
.desktop-nav .nav-dropdown a{min-height:48px;padding:13px 14px;border:0;border-radius:6px;box-shadow:none;text-decoration:none;font-size:14px;line-height:21px}
.desktop-nav .nav-dropdown a:last-child{border-bottom:0}
.desktop-nav .nav-dropdown a:hover,.desktop-nav .nav-dropdown a:focus-visible{background:var(--sage);color:var(--forest)}
.desktop-nav .nav-dropdown a[aria-current=page]{background:var(--sage);font-weight:800}
.mobile-menu nav{max-height:calc(100dvh - 96px);row-gap:4px}
.mobile-menu .mobile-nav-group>summary{display:flex;justify-content:space-between;align-items:center;min-height:48px;padding:12px;border:0;border-radius:0;font-size:14px;font-weight:700}
.mobile-menu .mobile-nav-submenu{padding:0 0 4px 12px;margin-left:12px}
.mobile-menu .mobile-nav-submenu a{font-weight:600}
.mobile-nav-group-active>summary{color:var(--forest);background:var(--sage)}
/* Compact footer without decorative bars or supporting statements. */
.site-footer{background:var(--sage);padding:36px 0 18px}
.footer-grid{gap:32px;align-items:start}
.footer-brand .brand img{width:88px;height:80px}
.footer-nav{gap:24px}
.footer-nav>div{gap:3px}
.site-footer .footer-heading{margin:0 0 10px;color:#465a52;font-family:inherit;font-size:12px;font-weight:780;line-height:1.5;letter-spacing:.1em;text-transform:uppercase}
.site-footer .footer-heading::before,.site-footer .footer-heading::after{display:none;content:none}
.footer-nav a{min-height:32px;padding-block:4px;font-size:14px}
.footer-bottom{margin-top:24px;padding-top:16px;font-size:12px;justify-content:flex-start}
@media(max-width:1120px){:root{--header-height:74px}.site-header,.nav-shell{min-height:74px}.site-header .brand img{width:78px;height:68px}}
@media(max-width:600px){.site-footer{padding:28px 0 16px}.footer-grid{gap:22px}.footer-nav{gap:20px}.footer-nav a{min-height:36px}.footer-bottom{margin-top:20px;padding-top:14px}.footer-brand .brand img{width:78px;height:70px}}
/* Nested mobile links form vertical lists, including each group's last link. */
.mobile-menu nav a:last-child{background:transparent;color:var(--ink);border-radius:0;margin-top:0}
.mobile-menu .mobile-nav-submenu{display:grid;grid-template-columns:minmax(0,1fr);row-gap:2px}
.mobile-menu .mobile-nav-submenu a{display:flex;align-items:center;min-width:0;min-height:44px;white-space:normal}
.mobile-menu nav .mobile-shortcuts a{background:var(--sage);color:var(--forest);border:1px solid var(--line);border-radius:6px;margin:0}
.mobile-menu nav a[aria-current=page]{border-left:0;background:var(--sage);color:var(--forest)}
.mobile-menu nav .mobile-nav-submenu a{border:0;box-shadow:none;text-decoration:none}
.mobile-menu nav>a:hover,.mobile-menu nav>a:focus-visible,.mobile-menu .mobile-nav-group>summary:hover,.mobile-menu .mobile-nav-group>summary:focus-visible,.mobile-menu .mobile-nav-submenu a:hover,.mobile-menu .mobile-nav-submenu a:focus-visible{background:var(--sage);color:var(--forest)}
.mobile-menu nav>a,.mobile-menu .mobile-nav-group>summary,.mobile-menu nav .mobile-nav-submenu a{border-radius:6px}
.nav-dropdown a::before,.nav-dropdown a::after,.mobile-nav-submenu a::before,.mobile-nav-submenu a::after{display:none;content:none}
/* Keep the layouts compact after the requested copy removals. */
.page-hero.page-hero-compact h1{text-wrap:balance}
.page-hero-compact h1:last-child{margin-bottom:0}
.page-home .start-section .split-intro,.page-referrals .referral-library-heading{grid-template-columns:minmax(0,1fr)}
.closing-shell-no-description{grid-template-columns:minmax(0,1fr) auto}
.closing-shell-no-description .closing-actions{grid-area:auto}
.page-faq .faq-shell{grid-template-columns:minmax(0,1fr);max-width:1000px}
@media(max-width:860px){.closing-shell-no-description{grid-template-columns:1fr}}
/* Connected organizations: the reference's two-column introduction and cards. */
:is(.page-about,.page-services) .healthcare-network{padding:72px 0;background:var(--ivory);scroll-margin-top:var(--header-height)}
:is(.page-about,.page-services) .healthcare-network-intro{display:grid;grid-template-columns:.8fr 1.2fr;align-items:start;gap:6vw}
:is(.page-about,.page-services) .healthcare-network-intro .eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 26px;color:var(--accent-ink);font-size:12px;font-weight:800;line-height:1;letter-spacing:.14em;text-transform:uppercase}
:is(.page-about,.page-services) .healthcare-network-intro .eyebrow>span{width:24px;height:2px;background:var(--accent-ink)}
:is(.page-about,.page-services) .healthcare-network-intro h2{max-width:620px;margin:0;color:var(--forest);font:400 52px/1.04 Georgia,"Times New Roman",serif;letter-spacing:-.035em;text-wrap:balance}
:is(.page-about,.page-services) .healthcare-network-intro>div:last-child{max-width:720px}
:is(.page-about,.page-services) .healthcare-network-intro>div:last-child p{margin:0 0 18px;color:var(--ink-soft);font-size:17px;line-height:1.72}
:is(.page-about,.page-services) .healthcare-network-intro>div:last-child p:last-child{margin-bottom:0;color:var(--forest);font-weight:700}
:is(.page-about,.page-services) .healthcare-network-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:42px}
:is(.page-about,.page-services) .healthcare-network-grid>a{display:flex;flex-direction:column;min-width:0;min-height:240px;padding:30px;border:0;border-radius:12px;background:var(--paper);color:var(--ink);text-decoration:none}
:is(.page-about,.page-services) .healthcare-network-grid>a+a{background:var(--sage)}
:is(.page-about,.page-services) .healthcare-network-grid>a>span{color:var(--forest);font-size:16px;font-weight:800;line-height:1.5;letter-spacing:.12em;text-transform:uppercase}
:is(.page-about,.page-services) .healthcare-network-grid h3{margin:auto 0 14px;color:var(--forest);font:400 34px/1.05 Georgia,"Times New Roman",serif;letter-spacing:-.03em;text-wrap:balance}
:is(.page-about,.page-services) .healthcare-network-grid p{max-width:470px;margin:0 0 24px;color:var(--ink-soft);font-size:16px;line-height:1.65}
:is(.page-about,.page-services) .healthcare-network-grid strong{color:var(--forest);font-size:13px;font-weight:700;line-height:1.5}
:is(.page-about,.page-services) .healthcare-network-grid>a:hover strong{text-decoration:underline;text-underline-offset:4px}
@media(max-width:960px){:is(.page-about,.page-services) .healthcare-network{padding:72px 0}:is(.page-about,.page-services) .healthcare-network-intro{grid-template-columns:1fr;gap:32px}}
@media(max-width:680px){:is(.page-about,.page-services) .healthcare-network{padding:64px 0}:is(.page-about,.page-services) .healthcare-network-intro h2{font-size:42px}:is(.page-about,.page-services) .healthcare-network-grid{grid-template-columns:1fr}}

:is(.page-about,.page-services) .healthcare-network-compact{margin-top:-24px;padding:0 0 72px}

/* Draw external-link arrows without platform-dependent emoji/font rendering. */
.external-link-icon{width:16px;height:16px;flex:0 0 16px}
.healthcare-network-grid strong .external-link-icon{display:inline-block;vertical-align:-.2em;margin-left:.35em}
.referral-download>.external-link-icon{color:var(--accent)}

/* Use colour and spacing for content; keep control and focus indicators visible. */
.page-hero{border-bottom:0}
.eyebrow>span:empty{display:none}
.hero-route-note{border:0;box-shadow:none}
.home-pathway{width:100%;min-width:0;border:0;background:var(--ivory);box-shadow:none}
.home-pathway.physician-path{background:var(--sage)}
.home-pathway .pathway-label{border-bottom:0}
@media(min-width:861px){.page-home .pathway-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.quick-grid{border:0;gap:40px}
.quick-link,.quick-link:first-child,.quick-link:last-child{padding:0}
.quick-link+.quick-link{border:0}
.faq-list details{border:0;background:var(--ivory);box-shadow:none}
.faq-list details[open]{background:var(--sage)}
.page-patient-preparation .faq-list details{background:var(--paper)}
.page-patient-preparation .faq-list details[open]{background:var(--ivory)}
.referral-checklist{border:0;background:var(--ivory);box-shadow:none}
.checklist-heading,.referral-checklist li{border-bottom:0}
.referral-checklist li{padding-block:24px}
.visit-stages article{border-top:0;padding-top:0}
.care-steps,.care-steps article{border:0}
.referral-list{display:grid;gap:14px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.referral-row{border:0;border-radius:12px;background:var(--ivory)}
.referral-row:hover,.referral-row:focus-within{background:var(--sage)}
.referral-workflow{border-top:0;padding-top:0}
.resource-card{border:0;background:var(--ivory)}
.resource-card:nth-child(odd){background:var(--sage)}
.contact-clinic-card{border:0;background:var(--ivory);box-shadow:none}
.contact-clinic-card dl{border:0;padding-block:12px 0;row-gap:20px}
.contact-clinic-card .page-actions{margin-top:28px}
.page-contact .patient-contact-section{border-top:0}
.patient-contact-note{border:0;background:var(--ivory)}
.patient-form-shell{border:0;box-shadow:none}
.patient-form-heading{border-bottom:0}

.page-team .team-group+.team-group{border-top:0;margin-top:20px}
.page-careers .info-panel{border:0}
body.page-careers,body.page-team{min-height:100svh;display:flex;flex-direction:column}
.page-careers #main-content,.page-team #main-content{flex:1}
.page-careers .career-copy{max-width:700px}
.page-careers .career-email{display:inline-block;max-width:100%;min-height:3.5rem;padding:14px 0;color:var(--forest);font-size:1.25rem;font-weight:650;line-height:1.4;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}
.site-footer,.footer-bottom{border-top:0}
@media(max-width:600px){
  .quick-grid{gap:36px}
  .page-team .team-group+.team-group{margin-top:16px}
}

/* Shared footer groups keep every link visible at all screen sizes. */
.footer-group { min-width:0; }
.footer-links { display:grid; align-content:start; gap:3px; }
.contact-clinic-select label { display:block; margin:0 0 10px; font-weight:700; }
.contact-clinic-select select { width:100%; min-height:56px; border:1px solid var(--forest); border-radius:8px; padding:12px 40px 12px 14px; background:var(--paper); color:var(--forest); font:inherit; }
.contact-clinic-panels:has(.contact-clinic-card:not([hidden])) { min-width:0; }
.page-contact .patient-contact-layout { display:block; max-width:820px; }
.page-contact .patient-contact-copy { max-width:760px; margin-bottom:24px; }
.page-contact .patient-contact-copy h2 { margin-bottom:16px; }
.page-contact .patient-contact-note { margin-top:16px; padding:16px 20px; }
.page-contact .patient-contact-note strong { margin-bottom:4px; }
.page-contact .patient-form-shell { min-height:0; }
.form-recovery { display:flex; align-items:center; flex-wrap:wrap; gap:8px 24px; padding:12px 20px; background:var(--ivory); }
.form-recovery a,.form-recovery button { display:inline-flex; align-items:center; min-height:48px; font-family:inherit; font-size:16px; font-weight:600; line-height:1.5; color:var(--forest); }
.form-recovery button { background:transparent; border:1px solid var(--forest); border-radius:999px; padding:8px 16px; }
.enquiry-clinic-context { padding:12px 16px; border-left:3px solid var(--forest); background:var(--paper); }
.service-return { display:inline-flex; align-items:center; justify-content:center; min-height:56px; width:100%; margin-top:16px; padding:12px; background:transparent; border:1px solid var(--forest); border-radius:8px; color:var(--forest); font:inherit; font-weight:700; }

.page-locations .clinic-list-button .clinic-disclosure { display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--forest); font-size:14px; font-weight:700; margin-top:12px; }
.clinic-disclosure b { font:inherit; }
