/* Centralpoint.WebSite.StyleSheet.GlobalStyles */
img { border: none; }
.clear { clear: both; }
.accessKey { text-decoration: underline; }
.alert { clear: both; padding: 10px 0px 0px 0px; color: Red; }
.footNote { font-size: 7pt;	color: #808080; }
.intro { padding: 0px 0px 10px 0px; }
.outro { padding: 10px 0px 0px 0px; }
.error { clear: left; color: #FF0000; font-weight:bold; }
table.cpsys_Table td { text-align: left; vertical-align: top; }
td.cpsys_BlockColumn { vertical-align: top; }
div.cpsys_Block { display: table; width: 100%; }
div.cpsys_BlockColumn { display: table-cell; }
ul.cpsys_BlockList, ul.cpsys_BlockList ul { list-style-type: none; margin: 0; padding: 0; }
ul.cpsys_BlockList li { list-style-type: none; }
body, html { margin:0px; padding:0px; background-color:#FFFFFF; color:#000000; font-family:Arial, Helvetica, sans-serif; font-size:100%; }
a, a:link { color:#0000CC; text-decoration:none; }
a:hover { color:#0000CC; text-decoration:none; }
a:visited { color:#551A8B; }
.title { font-size:150%; font-weight:bold; font-style:inherit; }
strong { font-size:100%; font-weight:bold; font-style:inherit; }
em { font-size:100%; font-weight:inherit; font-style:italic; }
small { font-size:75%; font-weight:lighter; font-style:normal; }
.cpweb_PerimeterLeftTd { vertical-align:top; }
.cpweb_Wrapper { text-align:left; border:solid 0px #DDDDDD; margin:0px; padding:0px; background-color:transparent; }
.cpweb_PerimeterRightTd { vertical-align:top; }
.cpweb_SplashPage { position:absolute; z-index:1000; border:solid 1px #000000; }
.cpweb_Taxonomy { font-size:100% !important; color:#000000 !important; text-decoration:none !important; font-weight:bold !important; }
/* Centralpoint.WebSite.StyleSheet.GlobalStyles */

.cpsty_Top { padding:0px; }
.cpsty_Top a, .cpsty_Top a:link { text-decoration:inherit; }
.cpsty_Top a:hover { text-decoration:inherit; }
.cpsty_Top a:visited {  }

.cpsty_RightTd { vertical-align:top; width:1%; }
.cpsty_Right { background-color:transparent; padding:0px; }
.cpsty_Right a, .cpsty_Right a:link { text-decoration:inherit; }
.cpsty_Right a:hover { text-decoration:inherit; }
.cpsty_Right a:visited {  }

.cpsty_Bottom { padding:0px; }
.cpsty_Bottom a, .cpsty_Bottom a:link { text-decoration:inherit; }
.cpsty_Bottom a:hover { text-decoration:inherit; }
.cpsty_Bottom a:visited {  }

.cpsty_LeftTd { vertical-align:top; width:1%; }
.cpsty_Left { background-color:transparent; width:175px; padding:0px; }
.cpsty_Left a, .cpsty_Left a:link { text-decoration:inherit; }
.cpsty_Left a:hover { text-decoration:inherit; }
.cpsty_Left a:visited {  }

.cpsty_CenterTd { vertical-align:top;  }
.cpsty_Center { background-color:transparent; padding:0px; }
.cpsty_Center a, .cpsty_Center a:link { text-decoration:inherit; }
.cpsty_Center a:hover { text-decoration:inherit; }
.cpsty_Center a:visited {  }
.cpsty_LeftSeparatorTd { vertical-align:top; width:1%; background-position:top left; background-repeat:repeat-y; background-image:url(); }

.cpsty_Navigation { background-position:top left; background-repeat:repeat-x; text-align:left; text-decoration:inherit; font-weight:inherit; border-top:solid 1px #000000; }
.cpsty_Navigation a, .cpsty_Navigation a:link { text-decoration:inherit; }
.cpsty_Navigation a:hover {  }
.cpsty_NavigationContent { width:auto; }
.cpsty_NavigationSelected { text-decoration:inherit; }
.cpsty_NavigationSelected a, .cpsty_NavigationSelected a:link { text-decoration:inherit; }
.cpsty_NavigationHover { text-decoration:inherit; }
.cpsty_NavigationHover a, .cpsty_NavigationHover a:link { text-decoration:inherit; }
.cpsty_NavigationText { display:block;padding:3px 3px 3px 3px; margin:0px 0px 0px 0px; }

.cpsty_SubNavigation { text-align:left; text-decoration:none; font-weight:inherit; }
.cpsty_SubNavigation a, .cpsty_SubNavigation a:link { text-decoration:none; }
.cpsty_SubNavigation a:hover {  }
.cpsty_SubNavigationSelected { text-decoration:none; }
.cpsty_SubNavigationSelected a, .cpsty_SubNavigationSelected a:link { text-decoration:none; }
.cpsty_SubNavigationHover { text-decoration:none; }
.cpsty_SubNavigationHover a, .cpsty_SubNavigationHover a:link { text-decoration:none; }
.cpsty_SubNavigationText { padding:2px 3px 2px 3px; margin:0px 0px 0px 0px; }


/* Centralpoint.WebSite.StyleSheet.CustomStyles */
/* Clear Default Styles (VERY aggressive – consider scoping this later) */
.clear, .accessKey, .alert, .footNote, .intro, .outro, .error, table.cpsys_Table td, td.cpsys_BlockColumn, div.cpsys_Block, div.cpsys_BlockColumn, ul.cpsys_BlockList, ul.cpsys_BlockList ul, ul.cpsys_BlockList li, body, html, a:visited, .title, strong, em, small, .cpweb_PerimeterLeftTd, .cpweb_PerimeterRightTd, .cpweb_SplashPage, .cpweb_Taxonomy, .cpsty_Top, .cpsty_Top a:visited, .cpsty_RightTd, .cpsty_Right, .cpsty_Right a, .cpsty_Right a:link, .cpsty_Right a:hover, .cpsty_Right a:visited, .cpsty_Bottom, .cpsty_Bottom a, .cpsty_Bottom a:link, .cpsty_Bottom a:hover, .cpsty_Bottom a:visited, .cpsty_LeftTd, .cpsty_Left, .cpsty_Left a, .cpsty_Left a:link, .cpsty_Left a:hover, .cpsty_Left a:visited, .cpsty_CenterTd, .cpsty_LeftSeparatorTd, .cpsty_Navigation, .cpsty_Navigation a, .cpsty_Navigation a:link, .cpsty_Navigation a:hover, .cpsty_NavigationContent, .cpsty_NavigationSelected, .cpsty_NavigationSelected a, .cpsty_NavigationSelected a:link, .cpsty_NavigationHover, .cpsty_NavigationHover a, .cpsty_NavigationHover a:link, .cpsty_NavigationText, .cpsty_SubNavigation, .cpsty_SubNavigation a, .cpsty_SubNavigation a:link, .cpsty_SubNavigation a:hover, .cpsty_SubNavigationSelected, .cpsty_SubNavigationSelected a, .cpsty_SubNavigationSelected a:link, .cpsty_SubNavigationHover, .cpsty_SubNavigationHover a, .cpsty_SubNavigationHover a:link, .cpsty_SubNavigationText {
  all: unset;
  box-sizing: border-box;
}

/* ================= McLaren Brand Tokens ================= */
:root{
  --mc-blue-900:#00446A;
  --mc-blue-600:#0065A4;
  --mc-blue-300:#28B8EC;
  --mc-gray-700:#60605B;
  --mc-gray-200:#E4E4E0;
  --mc-white:#ffffff;
  --mc-red:#DE1F26; --mc-pink:#DF2080; --mc-teal:#00968F; --mc-purple:#582C83; --mc-orange:#FF5400;
  --mc-blue-300-hover:#139fd2; --mc-blue-600-hover:#055288;

  --hero-start: var(--mc-blue-600);
  --hero-end:   var(--mc-blue-900);
  --hero-text:  #ffffff;

  --pill-on:#ffffff;
  --pill-on-text:#083b7a;
  --pill-off:rgba(255,255,255,.14);
  --pill-off-border:rgba(255,255,255,.32);
  --divider:rgba(255,255,255,.28);

  --stack-y: clamp(1.25rem, 1.2vw + .75rem, 2rem);
}

<!-- Fix Lighthouse "font-display" with overrides -->
@font-face{
  font-family:'Font Awesome 5 Free';
  font-style:normal;
  font-weight:900;
  font-display:swap;
  src:url('/uploads/css/bootstrap/theme/block/fonts/FontAwesome/fa-solid-900.woff2') format('woff2'),
      url('/uploads/css/bootstrap/theme/block/fonts/FontAwesome/fa-solid-900.woff') format('woff');
}
@font-face{
  font-family:'Font Awesome 5 Free';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('/uploads/css/bootstrap/theme/block/fonts/FontAwesome/fa-regular-400.woff2') format('woff2'),
      url('/uploads/css/bootstrap/theme/block/fonts/FontAwesome/fa-regular-400.woff') format('woff');
}
@font-face{
  font-family:'Font Awesome 5 Brands';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('/uploads/css/bootstrap/theme/block/fonts/FontAwesome/fa-brands-400.woff2') format('woff2'),
      url('/uploads/css/bootstrap/theme/block/fonts/FontAwesome/fa-brands-400.woff') format('woff');
}

/* Small one-offs */
a.btn.btn-outline-primary:hover { color: #fff !important; }
figure { margin: 0 !important; }
.procedure-list li em { margin-right: .5rem; color:#01a4e4; margin:0 15px 0 0; }
.text-pattern-line:after { bottom:-26px; height:25px; width:280px; }
.social-icons { color:#00446a; }
.sticky-top { z-index:80 !important; }

/* Privacy layout */
.privacy { flex-direction: column; align-items: center; }
.privacy li { margin-bottom:.5rem; }
.privacy li.d-none.d-md-inline { display:none; }
@media (min-width:768px){
  .privacy { flex-direction: row; align-items:flex-start; }
  .privacy li.d-none.d-md-inline { display:inline; }
}
@media (max-width:767px){
  .privacy { order:1; margin-bottom:1rem; }
  .small { order:2; }
  .social-icons { order:3; margin-bottom:1rem; }
}

.er-red-bg{ background-color:#b30000; }
a.dropdown-item { padding:10px 0 0 0 !important; }
.single-dropdown { padding:0 20px 20px 20px !important; }

/* Breadcrumb */
.breadcrumb .no-print span:first-child a { font-weight:700; color:#00446a; }
.breadcrumb .no-print span:not(:first-child):not(:last-child) a { color:#00446a; font-weight:700; text-decoration:none; }
.breadcrumb .no-print span:last-child a { font-weight:400; color:#6c757d; pointer-events:none; text-decoration:none; }
.breadcrumb .no-print em.fa-chevron-right { color:#ccc; font-size:14px; padding:0 5px; }

/* Swiper */
.swiper-button-prev, .swiper-button-next{
  position:relative; z-index:10; width:40px; height:40px; border-radius:50%;
  background-color:#1e9fda; color:#fff; display:flex; align-items:center; justify-content:center; font-size:20px;
}
.swiper-button-prev{ left:-20px; }
.swiper-button-next{ right:-20px; }
.swiper-button-next:after, .swiper-button-prev:after { font-size:1.5rem; }
.swiper-container{
  display:flex; padding-top:20px; padding-bottom:3rem;
}

/* Cards / layout */
.card-equal-height{ border:1px solid #e0e0e0; border-radius:8px; background:#fff; }
.card-body span.fw-bold{ font-size:1rem; color:#333; }
.row.align-items-center{ display:flex; }
.card.h-100{ height:100%; }

/* Sticky Local Nav */
.cpsty_SiteTypes_Default_TopAc2{ position:sticky; top:0; z-index:999; }

.rounded-circle{ object-position:center 20% !important; }
.procedure-list{ font-size:1.2rem !important; }

/* Buttons */
.btn-danger{ color:#fff !important; }
.btn-light{ color:#fff !important; }
.btn-light:hover{ color:#fff !important; }

/* Address inline */
.address-inline br{ display:none; }
.address-inline{ display:inline-block; white-space:nowrap; }

/* Icon link */
.dropdown-item.icon-link{
  display:inline-flex !important; align-items:center !important; gap:.375rem !important;
  text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity,.5)) !important;
  text-underline-offset:.25em !important;
}

/* Select2 */
.select2-container--default .select2-selection--multiple .select2-selection__choice{ background:#01a4e4 !important; color:#fff !important; }
button.select2-selection__choice__remove{ color:#fff !important; }
.select2-selection__choice{ border:0 !important; }
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{ background:#01a4e4 !important; }
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{ background:#01a4e4 !important; color:#fff !important; }
.select2-container--default .select2-selection--multiple{ border:1px solid #e2e8f0 !important; }
.select2-search__field{ padding:0 0 25px 10px !important; }
.select2{ width:100% !important; }

/* Forms / alerts */
.alert{ color:red !important; font-size:1rem !important; padding-left:0 !important; top:5px !important; }
label.form-label{ font-weight:700 !important; color:#000 !important; }

/* Text utils */
.text-balance{ text-wrap: balance; }

@media (min-width:992px) and (max-width:1169px){ .testimonial-card .card{ padding:0 !important; } }

.flex-img, .img-fluid, .img-thumbnail{ height:auto; max-width:100%; }

/* Animations */
@keyframes shake{
  0%,100%{ transform:translateX(0); }
  10%,30%,50%,70%,90%{ transform:translateX(-5px); }
  20%,40%,60%,80%{ transform:translateX(5px); }
}
.shake{ animation:shake .4s ease; }

/* Prevent FOUC on header but keep offcanvas in the layout */
body:not(.ready) .navbar, body:not(.ready) .navbar-clone{ visibility:hidden !important; }
body.ready .navbar, body.ready .navbar-clone{ visibility:visible !important; }

/* Typography */
.blockquote{ color:#015c8f !important; font-weight:500 !important; font-size:1.5rem !important; }
.blockquote:before{ color:#015c8f !important; }
.lead{ font-size:1.5rem !important; }

/* ================= Header (mc-banner) ================= */
.mc-hero{
  color:var(--hero-text);
  background:
    radial-gradient(120% 140% at 70% -20%, rgba(255,255,255,.20), transparent 60%),
    linear-gradient(180deg, var(--hero-start), var(--hero-end));
}
.mc-hero-top{ padding:35px 20px 20px; }
.mc-crumbs{ font-size:.95rem; opacity:.95; }
.mc-crumbs a{ color:var(--hero-text); text-decoration:none; }
.mc-hero-head{ display:flex; align-items:center; gap:24px; justify-content:space-between; flex-wrap:wrap; }
.mc-hero-head h1{ font-size:clamp(2rem,1.3rem + 2.5vw,3rem); line-height:1.1; margin:0; }

/* CTA */
.mc-cta{
  display:inline-flex; align-items:center; gap:.6rem;
  color:#082033; text-decoration:none; font-weight:700;
  border:1px solid transparent; border-radius:999px; padding:.65rem 1rem;
  background:var(--mc-blue-300);
  transition:background .2s, transform .05s; white-space:nowrap;
}
.mc-cta:hover{ background:var(--mc-blue-300-hover); }
.mc-cta:active{ transform:translateY(1px); }
.mc-icon{ width:1.15em; height:1.15em; display:inline-block; flex:0 0 auto; }

/* Tabs band (non-sticky) */
.mc-hero-tabs{ border-top:1px solid var(--divider); padding:12px 0; }

/* Pill nav + scrollbar */
.mc-pill-nav{
  list-style:none; display:flex; gap:14px; margin:0; padding:8px 0 14px;
  overflow-x:auto; -webkit-overflow-scrolling:touch; scroll-snap-type:x proximity;
  scrollbar-gutter: stable both-edges;
}
.mc-pill-nav li{ scroll-snap-align:center; flex:0 0 auto; }
.mc-pill-nav a{
  display:inline-block; text-decoration:none; font-weight:700;
  padding:.75rem 1rem; border-radius:999px;
  background:var(--pill-off); border:1px solid var(--pill-off-border);
  color:#fff; white-space:nowrap; transition:background .2s, color .2s, box-shadow .2s;
}
.mc-pill-nav a:hover{ background:rgba(255,255,255,.22); }

/* Scrollbar */
.mc-pill-nav::-webkit-scrollbar{ height:10px; }
.mc-pill-nav::-webkit-scrollbar-track{ background:rgba(255,255,255,.12); border-radius:999px; }
.mc-pill-nav::-webkit-scrollbar-thumb{
  background:var(--mc-blue-300); border-radius:999px; border:2px solid transparent; background-clip:padding-box;
}
.mc-pill-nav:hover::-webkit-scrollbar-thumb{ background:var(--mc-blue-300-hover); }
.mc-pill-nav{ scrollbar-width:thin; scrollbar-color:var(--mc-blue-300) rgba(255,255,255,.12); }

/* Mobile tweaks + edge fade */
@media (max-width:767.98px){
  .mc-pill-nav a{ padding:.55rem .8rem; font-weight:600; }
  .mc-pill-nav{
    -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 24px), transparent 100%);
    mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 24px), transparent 100%);
  }
  .mc-pill-nav::after{ content:''; flex:0 0 24px; }
}

/* Section helpers */
.mobile-clinic-page section{ scroll-margin-top:24px; }
.mobile-clinic-page .ratio>iframe{ border:0; }
.mc-stack > section{ margin-top:var(--stack-y); }

/* About image */
.about-image{ border-radius:.75rem; overflow:hidden; box-shadow:0 10px 30px rgba(2,8,23,.08); }
.about-image img{ width:100%; height:100%; object-fit:cover; object-position:center; }

/* Photo square */
.mc-photo-square{ position:relative; width:100%; aspect-ratio:1/1; overflow:hidden; border-radius:.75rem; background:#f5f7fa; }
.mc-photo-square>img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.mc-photo-row.g-1>[class^="col-"], .mc-photo-row.g-1>[class*=" col-"]{ padding:.25rem; }

/* Static schedule */
#schedule .card{ border:0; }
#schedule .rounded-3 img{ display:block; }

/* ===== Only when banner exists ===== */
body:has(.mc-hero) nav.breadcrumb.container.px-4.py-6 { display:none; }
/* Optional JS fallback – safe to keep; does nothing unless body.has-mc-hero is present */
body.has-mc-hero nav.breadcrumb.container.px-4.py-6 { display:none; }

/* Make all banner links white & light */
.mc-hero a, .mc-hero a:link, .mc-hero a:visited,
.mc-hero-tabs a, .mc-hero-tabs a:link, .mc-hero-tabs a:visited{
  color:#fff !important; font-weight:300 !important; text-decoration:none;
}
.mc-hero a:hover, .mc-hero a:focus,
.mc-hero-tabs a:hover, .mc-hero-tabs a:focus{
  color:#fff !important; text-decoration:none;
}
/* Keyboard focus ring for banner links */
.mc-hero a:focus-visible, .mc-hero-tabs a:focus-visible{
  outline:3px solid var(--mc-blue-300); outline-offset:2px;
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce){
  .mc-cta, .mc-pill-nav a{ transition:none !important; }
  .shake{ animation:none !important; }
}
/* Centralpoint.WebSite.StyleSheet.CustomStyles */
