.bp-nav{--navy:#1F3864;--sky:#DCE6F1;--line:#c3d0e4;font-family:"Selawik","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);}
    /* Skip link: first focusable element on the page, hidden until keyboard focus. */
    .bp-nav .bp-skip{position:absolute;left:8px;top:-100px;z-index:60;background:var(--navy);color:#fff;padding:11px 18px;border-radius:8px;text-decoration:none;font-weight:600;min-height:44px;display:inline-flex;align-items:center;transition:top .15s ease;}
    .bp-nav .bp-skip:not(:focus){clip-path:inset(100%);}
    .bp-nav .bp-skip:focus{top:8px;outline:2px solid #fff;outline-offset:2px;}
    @media (prefers-reduced-motion:reduce){.bp-nav .bp-skip{transition:none;}}
    .bp-nav .wrap{max-width:1320px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:12px;}
    .bp-nav .logo{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--navy);line-height:1.02;min-height:44px;}
    .bp-nav .logo img{width:42px;height:42px;object-fit:contain;display:block;}
    .bp-nav .name{font-weight:600;font-size:1rem;}
    .bp-nav .name small{display:block;font-size:.62rem;letter-spacing:.12em;color:#595959;font-weight:600;}
    .bp-nav .bp-mainnav{display:contents;}
    .bp-nav .menu-book{display:none;}
    .bp-nav ul{display:flex;flex-wrap:wrap;gap:2px 4px;list-style:none;margin:0 0 0 8px;padding:0;}
    .bp-nav ul a{display:block;padding:8px 8px;text-decoration:none;color:#1F3864;font-size:.92rem;border-radius:8px;}
    .bp-nav ul a:hover{background:var(--sky);}
    .bp-nav ul a:focus-visible,.bp-nav .book:focus-visible{outline:2px solid var(--navy);outline-offset:2px;}
    .bp-nav .lang-links{display:flex;flex-wrap:wrap;align-items:center;}
    .bp-nav .lang-links a{padding:8px 6px;font-size:.84rem;}
    .bp-nav .book{margin-left:10px;background:var(--navy);color:#fff;text-decoration:none;font-weight:600;font-size:.95rem;padding:10px 16px;border-radius:999px;white-space:nowrap;}
    /* --- Site search: magnifier button (between the nav and Book) + drop panel --- */
    .bp-nav .bp-searchbtn{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy);cursor:pointer;}
    .bp-nav .bp-searchbtn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;display:block;}
    .bp-nav .bp-searchbtn:hover{background:var(--sky);}
    .bp-nav .bp-searchbtn:focus-visible{outline:2px solid var(--navy);outline-offset:2px;}
    .bp-nav .bp-searchpanel{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 10px 24px rgba(31,56,100,.12);z-index:55;}
    .bp-nav .bp-searchpanel-in{max-width:720px;margin:0 auto;padding:16px 22px 20px;}
    .bp-nav .bp-searchpanel form{position:relative;display:flex;align-items:center;margin:0;}
    .bp-nav .bp-searchpanel .mag{position:absolute;left:15px;width:20px;height:20px;stroke:#595959;fill:none;stroke-width:2;pointer-events:none;}
    .bp-nav .bp-searchpanel input{width:100%;font:inherit;font-size:16px;color:#404040;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:12px 46px;min-height:48px;-webkit-appearance:none;appearance:none;}
    .bp-nav .bp-searchpanel input::placeholder{color:#8a93a3;}
    .bp-nav .bp-searchpanel input:focus{outline:none;border-color:#D89A50;box-shadow:0 0 0 3px rgba(216,154,80,.22);}
    .bp-nav .bp-searchpanel input::-webkit-search-decoration,.bp-nav .bp-searchpanel input::-webkit-search-cancel-button{-webkit-appearance:none;}
    .bp-nav .bp-searchclose{position:absolute;right:8px;width:44px;height:44px;border:0;border-radius:50%;background:#FBF2E4;color:var(--navy);font-size:1.2rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
    .bp-nav .bp-searchclose:hover{background:#f0e2ca;}
    .bp-nav .bp-searchclose:focus-visible{outline:2px solid var(--navy);outline-offset:2px;}
    .bp-nav .bp-siteresults{margin-top:10px;}
    .bp-nav .bp-siteresults .res{display:block;text-decoration:none;padding:11px 12px;border-radius:10px;color:#404040;}
    .bp-nav .bp-siteresults .res + .res{border-top:1px solid var(--line);}
    .bp-nav .bp-siteresults .res:hover,.bp-nav .bp-siteresults .res:focus-visible{background:#FBF2E4;outline:none;}
    .bp-nav .bp-siteresults .rt{display:block;font-weight:600;color:var(--navy);font-size:.98rem;}
    .bp-nav .bp-siteresults .rs{display:block;font-size:.84rem;color:#595959;margin-top:2px;line-height:1.4;}
    .bp-nav .bp-siteresults .none{margin:0;padding:12px;color:#33414f;font-size:.9rem;}
    /* --- Mobile menu: CSS-only burger toggle, no JS --- */
    .bp-nav .bp-navcheck{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;}
    .bp-nav .bp-burger{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy);cursor:pointer;}
    .bp-nav .bp-burger svg{width:24px;height:24px;display:block;}
    .bp-nav .bp-navcheck:focus-visible + .bp-burger{outline:2px solid var(--navy);outline-offset:2px;}
    @media (max-width:1320px){
      .bp-nav .menu-book{display:block;}
      .bp-nav .bp-mainnav{max-height:calc(100dvh - 180px);overflow-y:auto;overflow-x:hidden;}
      .bp-nav .wrap{flex-wrap:wrap;gap:10px;}
      .bp-nav .logo{order:1;}
      /* Header Book button is redundant on mobile — the sticky bottom bar has Book + Call. */
      .bp-nav .book{display:none;}
      .bp-nav .bp-searchbtn{order:2;margin-left:auto;}
      .bp-nav .bp-burger{display:inline-flex;order:3;margin-left:8px;}
      .bp-nav .bp-searchpanel-in{padding:14px 16px 18px;}
      .bp-nav ul{display:none;order:3;flex-basis:100%;width:100%;flex-direction:column;gap:2px;margin:6px 0 2px;border-top:1px solid var(--line);padding-top:6px;}
      .bp-nav .bp-navcheck:checked + .bp-burger{background:var(--sky);border-color:var(--navy);}
      .bp-nav .bp-navcheck:checked ~ .bp-mainnav ul{display:flex;}
      /* border-box: the Patients label (width 100% + padding) was 4px wider than the scrolling menu list, which gave the open phone menu a sideways scrollbar under Book. */
      .bp-nav ul li{width:100%;box-sizing:border-box;}
      /* nowrap: with enlarged text the open list wrapped into a second column off-screen (Professionals, Book). */
      .bp-nav ul{max-height:calc(100dvh - 180px);overflow-y:auto;overflow-x:hidden;flex-wrap:nowrap;}
      .bp-nav ul a{padding:13px 10px;font-size:1rem;border-radius:8px;}
      .bp-nav ul a:hover{background:var(--sky);}
    }
    @media(min-width:721px) and (max-width:1320px){
      .bp-nav .book{display:inline-flex;align-items:center;min-height:44px;box-sizing:border-box;order:2;margin-left:auto;}
      .bp-nav .bp-searchbtn{order:3;margin-left:0;}
      .bp-nav .bp-burger{order:4;}
      .bp-nav ul{order:5;}
    }
    @media(max-width:360px){
      .bp-nav .wrap{padding:10px 12px;gap:6px;}
      .bp-nav .logo{gap:7px;}
      .bp-nav .logo img{width:32px;height:32px;}
      .bp-nav .name{font-size:.85rem;}
      .bp-nav .name small{font-size:.53rem;}
      .bp-nav .bp-burger{margin-left:0;}
    }
  .bp-nav .menu-secondary{display:none}@media(max-width:1320px){.bp-nav .menu-secondary{display:block}.bp-nav .menu-book{border-bottom:1px solid #c3d0e4;padding-bottom:10px;margin-bottom:8px}}

    .bp-nav .menu-label{display:none}.bp-nav .professionals-menu{position:relative;margin-left:8px}.bp-nav .pro-trigger{border:0;background:transparent;font:inherit;display:flex;align-items:center;min-height:40px;padding:8px;color:var(--navy);font-size:.88rem;font-weight:600;cursor:default}.bp-nav .pro-trigger::after{content:"▾";margin-left:5px;font-size:.75rem}.bp-nav .pro-links{display:none;position:absolute;right:0;top:100%;min-width:180px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 24px rgba(31,56,100,.14)}.bp-nav .pro-links a{white-space:nowrap}.bp-nav .professionals-menu:hover .pro-links,.bp-nav .professionals-menu:focus-within .pro-links{display:block}
    @media(max-width:1320px){.bp-nav .menu-label{display:block;padding:12px 10px 5px;color:#595959;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.bp-nav .patient-label{order:-2}.bp-nav .professionals-menu{margin:8px 0 0;padding-top:8px;border-top:1px solid var(--line)}.bp-nav .pro-trigger{padding:8px 10px 4px;color:#595959;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.bp-nav .pro-trigger::after{display:none}.bp-nav .pro-links{display:block;position:static;min-width:0;padding:0;border:0;box-shadow:none}.bp-nav .pro-links a{padding:13px 10px}.bp-nav .menu-book{display:block;border-top:1px solid var(--line);padding-top:10px;margin-top:8px}.bp-nav .menu-book a{background:var(--navy);color:#fff;text-align:center;border-radius:999px}}

.bp-sitefoot{--navy:#1F3864;--navy2:#16283f;--sky:#dce6f1;--honey:#D89A50;font-family:"Selawik","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;line-height:1.5;}

    .bp-sitefoot *{box-sizing:border-box;}

    .bp-foot-band{background:var(--navy);color:#fff;}

    .bp-foot-inner{max-width:1080px;margin:0 auto;padding:36px 24px;display:flex;flex-wrap:wrap;gap:30px 48px;align-items:center;justify-content:space-between;}

    .bp-foot-brand{min-width:250px;max-width:540px;}

    .bp-foot-brand strong{display:block;font-size:1.1rem;margin-bottom:6px;}

    .bp-foot-brand p{margin:.3em 0;color:var(--sky);font-size:.95rem;}

    .bp-foot-brand a{color:#fff;text-decoration:none;font-weight:600;}

    .bp-foot-brand a:hover{text-decoration:underline;}

    .bp-foot-book{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;}

    .bp-foot-book .lead{margin:0;font-weight:600;font-size:1.05rem;}

    .bp-foot-book .btn{background:var(--sky);color:var(--navy);text-decoration:none;font-weight:600;padding:13px 32px;border-radius:999px;font-size:1rem;}

    .bp-foot-book .btn:hover{background:#fff;}

    .bp-foot-legal{background:var(--navy2);color:#dce6f1;font-size:13px;padding:14px 20px;text-align:center;}

    .bp-foot-legal a{color:#fff;text-decoration:none;font-weight:600;display:inline-flex;align-items:center;min-height:44px;padding:6px 4px;}

    .bp-foot-legal a:hover{text-decoration:underline;}

    .bp-foot-legal .sep{color:#8fa3bd;margin:0 9px;} /* 5.8:1 on #16283f (was opacity .5 = 4.07:1) */

    .bp-foot-legal .copy{margin-top:6px;opacity:.7;}

    .bp-foot-legal .bp-foot-soft{margin:0 0 8px;}

    .bp-foot-legal .bp-foot-soft a{color:#fff;}

    @media (max-width:720px){

      .bp-foot-inner{flex-direction:column;align-items:flex-start;gap:26px;}

      .bp-foot-book{align-items:flex-start;text-align:left;width:100%;}

    }


    .bp-foot-links{background:var(--navy);color:#fff;max-width:none;padding:0 24px 30px;display:grid;grid-template-columns:repeat(2,minmax(220px,420px));justify-content:center;gap:28px 64px}.bp-foot-links div{display:flex;flex-wrap:wrap;align-content:flex-start;gap:2px 14px}.bp-foot-links strong{flex-basis:100%;font-size:.95rem;margin-bottom:5px;color:var(--sky)}.bp-foot-links a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;min-height:44px;font-size:.9rem}.bp-foot-links a:hover{text-decoration:underline}@media(max-width:620px){.bp-foot-links{grid-template-columns:1fr;gap:20px;padding:0 20px 28px}.bp-foot-links div{flex-direction:column;gap:0}}
.bp-view-switch{display:none;margin:0 0 10px}.bp-view-switch button{background:none;border:0;padding:0 6px;min-height:44px;color:inherit;font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.bp-view-switch .bp-view-mobile,.bp-view-switch .bp-view-phone{display:none}@media(max-width:719px){.bp-view-switch{display:block}}@media(min-width:720px){html:not(.bp-desktop-view) .bp-view-switch{display:block}html:not(.bp-desktop-view) .bp-view-switch .bp-view-desktop{display:none}html:not(.bp-desktop-view) .bp-view-switch .bp-view-phone{display:inline}}html.bp-desktop-view .bp-view-switch{display:block}html.bp-desktop-view .bp-view-switch .bp-view-desktop{display:none}html.bp-desktop-view .bp-view-switch .bp-view-mobile{display:inline}.bp-view-bar{background:#FBF2E4;color:#1F3864;border-bottom:4px solid #D89A50;padding:28px 32px;font-size:42px;line-height:1.3;text-align:center}.bp-view-bar button{background:#1F3864;color:#fff;border:0;border-radius:60px;font:inherit;font-weight:700;padding:22px 44px;margin:16px 0 0;cursor:pointer}.bp-mframe-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483000;display:flex;flex-direction:column;align-items:center;background:#E9EEF5}.bp-mframe-bar{width:100%;box-sizing:border-box;background:#1F3864;color:#fff;padding:10px 16px;text-align:center;font:600 15px/1.4 Selawik,"Segoe UI",system-ui,sans-serif}.bp-mframe-bar button{margin-left:12px;background:#D89A50;color:#1F3864;border:0;border-radius:999px;padding:8px 18px;font:inherit;cursor:pointer}.bp-mframe-bar button:focus-visible{outline:3px solid #fff;outline-offset:2px}.bp-mframe-wrap iframe{flex:1;width:390px;max-width:100%;margin:16px 0;border:0;border-radius:24px;background:#fff;box-shadow:0 10px 40px rgba(31,56,100,.25)}
/* Phone framework (29-09-2026), all pages <720px: quieter first screen (short banner strip), one path at a time (mid-page cross-link blocks hidden), no branching at the booking card, long reference lists collapsed. Urgent-care boxes, In short summaries and clinical content are never hidden. */@media(max-width:719px){main .bp-banner,main .bp-article img.cover{height:170px!important;object-fit:cover}main details.refs-m{margin:1.4em 0 .6em}main details.refs-m>summary{display:flex;align-items:center;min-height:44px;font-weight:600;cursor:pointer}}
/* Phone framework, page rules (29-09-2026): one navigation per screen on the Foot problems index; no link rows next to booking boxes; related-foot-problem links fold behind a toggle. */@media(max-width:719px){main .bp-finder #start-by-location,main .bp-finder nav.body-shortcuts,main .bp-finder p.bp-util{display:none}main .bp-guides>p:has(+aside){display:none}main details.m-fold{margin:.6em 0 1.2em}main details.m-fold>summary{display:flex;align-items:center;min-height:44px;font-weight:700;color:#1F3864;cursor:pointer}}
/* Phone copy (29-09-2026): build.js adds short phone-only wording (.m-copy) next to the original (.d-copy). Phones see the short line; screens 720px+ see the original. */@media(min-width:720px){main .m-copy{display:none!important}}@media(max-width:719px){main .d-copy{display:none!important}}
/* Phone framework, execution pass (29-09-2026), all pages <720px. Desktop untouched. One call path (the sticky bar) instead of a second call link in each booking card; mid-page "Related:" rows hidden; tap targets at least 44px for links and toggles that stand on their own. */@media(max-width:719px){body:has(.bp-mobilebar) main .appointment-card .appointment-call{display:none}main p.related{display:none}main .compare-team th a,main h2>a,main nav.faq-index a,main ul.reason-list a,main aside a.btn,main a.m-tap{display:inline-flex;align-items:center;min-height:44px}main ul.reason-list li>a{display:inline-flex!important;align-items:center;min-height:44px!important}main details:not(.m-fold):not(.refs-m)>summary{min-height:44px;padding-top:9px;padding-bottom:9px;box-sizing:border-box;cursor:pointer}main .m-dup{display:none}}
/* Mobile refinements (29-09-2026): enlarged text (browser or phone font scaling). Long words, emails and buttons wrap instead of pushing the page sideways; the footer link grid can shrink below its content width. Phones only. */@media(max-width:719px){main a,main td,main th,main dd,main dt,main code{overflow-wrap:anywhere}main p,main li,main h1,main h2,main h3{overflow-wrap:break-word}main .btn,main a.btn,main .appointment-button{white-space:normal!important;text-align:center;max-width:100%;box-sizing:border-box}.bp-foot-links{grid-template-columns:minmax(0,1fr)!important}.bp-foot-links div{min-width:0;flex-wrap:nowrap}.bp-foot-links a{overflow-wrap:anywhere}main .bp-faq .faq-index{position:static!important}main:has(.concern-choice) .page-jumps{display:none!important}main .bp-guides .cluster li a,main details.sources li a,main .refs li a,main .guide-sources li a,main .crumb a{display:inline-flex;align-items:center;min-height:44px}main .booking-urgent{font-size:.95rem;margin:.2rem 0 .8rem}}

.bp-mobilebar{display:none;}
    @media (max-width:720px){
      .bp-mobilebar{
        --navy:#1F3864; --honey:#D89A50; --sand:#FBF2E4; --line:#c3d0e4;
        position:fixed; left:0; right:0; bottom:0; z-index:900;
        display:flex; gap:10px; padding:9px 12px calc(9px + env(safe-area-inset-bottom,0));
        background:#fff; border-top:1px solid var(--line); box-shadow:0 -4px 16px rgba(31,56,100,.12);
        font-family:"Selawik","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
      }
      .bp-mobilebar a{
        flex:1; min-width:0; display:flex; align-items:center; justify-content:center; gap:4px;
        text-decoration:none; font-weight:600; font-size:.94rem; padding:10px 8px;
        border-radius:999px; border:2px solid var(--navy); min-height:48px;
      }
      .bp-mobilebar .book{background:var(--navy); color:#fff;}
      .bp-mobilebar .call{background:var(--sand); color:var(--navy); border-color:var(--honey);}
      .bp-mobilebar a:focus-visible{outline:2px solid var(--honey); outline-offset:2px;}
      .bp-mobilebar svg{width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.9;}
      /* Urgent-first pages (body[data-bar-defer], set in build.js): wait until the top urgent box has
         scrolled past. Only when JS runs (.js on <html>), so with JS off the bar shows as normal. */
      .js body[data-bar-defer]:not([data-bar-shown]) .bp-mobilebar{visibility:hidden; transform:translateY(110%);}
      .js body[data-bar-defer] .bp-mobilebar{transition:transform .2s ease-out, visibility .2s;}
    }