/* Preserve the supplied logo artwork; only its display color and scale change. */
.brand{display:inline-flex;align-items:center;flex:0 0 auto;min-width:max-content}
.brand-logo{display:block;width:auto;max-width:none;height:70px;filter:brightness(0) saturate(100%) invert(54%) sepia(9%) saturate(659%) hue-rotate(36deg) brightness(91%) contrast(89%)}
.brand:hover .brand-logo{filter:brightness(0) saturate(100%) invert(54%) sepia(9%) saturate(659%) hue-rotate(36deg) brightness(91%) contrast(89%)}
.brand:focus-visible{border-radius:8px;outline:2px solid var(--gold);outline-offset:4px}
.brand-footer{margin-bottom:25px}
.brand-footer .brand-logo{height:105px;filter:none}
.brand-footer:hover .brand-logo{filter:none}
@media(max-width:720px){.brand-logo{height:58px}.brand-footer .brand-logo{height:90px}}

/* Give the navigation and its logo 25% more height. */
:root{--header-height:102.5px}
html{scroll-padding-top:calc(var(--header-height) + 18px)}
.site-header .header-inner{height:var(--header-height)}
.site-header .brand-logo{height:87.5px}
.site-header .desktop-nav,.site-header .nav-group{height:100%}
.site-header .mobile-menu{top:100%;max-height:calc(100svh - var(--header-height) - 36px)}
@media(max-width:720px){:root{--header-height:90px}.site-header .brand-logo{height:72.5px}}

/* Official regulator, provider and membership logos in the footer. */
.footer-trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:clamp(24px,4vw,56px);margin-top:48px;padding-top:32px;border-top:1px solid rgba(255,255,255,.1)}
.footer-trust a{display:flex;align-items:center;justify-content:center;justify-self:center;width:100%;min-width:0;max-width:240px;min-height:112px;padding:12px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#fff}
.footer-trust a:focus-visible{outline:3px solid var(--ivory);outline-offset:4px}
.footer-trust img{display:block;width:100%;height:64px;object-fit:contain}
.footer-trust .footer-trust-cqc{background:#6c276a}
.footer-trust-cqc img{max-width:180px;height:auto;clip-path:inset(2px round 5px)}
.footer-trust .footer-trust-gdc{background:#001f38}
.footer-trust-gdc img{max-width:195px}
.footer-trust .footer-trust-invisalign{padding:0}
.footer-trust-invisalign img{height:auto}
/* Frame the supplied JPEG's artwork without its large outer white margins. */
.footer-trust-bda .footer-logo-frame{position:relative;display:block;width:122px;max-width:100%;aspect-ratio:420/300;overflow:hidden}
.footer-trust-bda img{position:absolute;left:-21.4286%;top:-56.6667%;width:151.1905%;max-width:none;height:auto}
.footer-trust+.footer-bottom{margin-top:32px}
@media(max-width:1000px){.footer-trust{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.footer-trust{grid-template-columns:1fr;gap:20px;margin-top:36px;padding-top:28px}}
@media(max-width:720px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid>div{min-width:0}.footer-grid>div:last-child{grid-column:1/-1}}

/* Social links use the footer palette and wrap naturally on narrow screens. */
.footer-social{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;max-width:100%;margin:0;padding:10px 14px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.04);color:var(--ivory);font-size:13px;line-height:1.4}
.footer-social svg{display:block;flex:0 0 20px;width:20px;height:20px}
.footer-social a:hover{background:var(--sage);border-color:var(--sage);color:var(--ink)}
.footer-social a:focus-visible{outline:3px solid var(--ivory);outline-offset:4px}
