/* Responsive and accessible integration of the supplied RGV design. */

/* Sitewide type — match Bootstrap / original computed stack */
body,body.rgv-site,textarea,input,button,select,
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
}
body.rgv-site{margin:0;background:#fff;color:#000;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:17px;line-height:1.5em}img{height:auto}a,button,input,summary{touch-action:manipulation}button,input{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #127bbb;outline-offset:3px}.screen-reader-text,.rgv-skip-link:not(:focus){position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rgv-skip-link:focus{position:fixed;top:8px;left:8px;padding:12px;background:#fff;z-index:100000}#page-wrap{width:100%;overflow-x:clip;overflow-y:visible}

/* Desktop header — match May 2020 screenshot: logo | doctor | buttons+phone, then centered nav */
.rgv-site-header-wrap{
  position:sticky;
  top:0;
  z-index:100;
  background:#fff;
  overflow:visible;
  overflow-anchor:none;
}
.admin-bar .rgv-site-header-wrap{top:32px}
.home #header,#header{
  position:relative;
  width:100%;
  background:#fff;
  overflow:visible;
}

/*
 * Front / home: hero starts at top of viewport; header overlays it
 * (matches original .home #header{position:absolute}).
 * Kill the dark vignette strip that appeared when the header sat above the slider.
 */
body.home .rgv-site-header-wrap,
body.front-page .rgv-site-header-wrap,
body.rgv-front .rgv-site-header-wrap,
body.page-template-front-page .rgv-site-header-wrap{
  position:absolute!important;
  top:0!important;
  left:0;
  right:0;
  width:100%;
  background:transparent!important;
  z-index:200;
}
/* Admin bar already offsets the document (html margin-top) — do NOT add another 32px or a white gap appears */
body.admin-bar.home .rgv-site-header-wrap,
body.admin-bar.front-page .rgv-site-header-wrap,
body.admin-bar.rgv-front .rgv-site-header-wrap{
  top:0!important;
}
body.home #header,
body.front-page #header,
body.rgv-front #header,
body.home .rgv-site-header-wrap #header,
body.front-page .rgv-site-header-wrap #header,
body.home .rgv-site-header-wrap #header.fixed,
body.front-page .rgv-site-header-wrap #header.fixed,
body.home #header.fixed,
body.front-page #header.fixed{
  position:relative!important;
  width:100%!important;
  top:auto!important;
  left:auto!important;
  background:rgba(255,255,255,.9)!important;
  z-index:201!important;
}
body.home .rgv-homepage,
body.front-page .rgv-homepage,
body.rgv-front .rgv-homepage,
body.home #page-wrap,
body.front-page #page-wrap,
body.home #primary,
body.front-page #primary,
body.home main.rgv-homepage,
body.front-page main.rgv-homepage{
  position:relative;
  z-index:1;
  margin-top:0!important;
  padding-top:0!important;
}
body.home #content,
body.front-page #content,
body.home .rgv-main,
body.front-page .rgv-main,
body.home #homepage-sliders-container,
body.front-page #homepage-sliders-container{
  margin-top:0!important;
  padding-top:0!important;
  margin-left:0!important;
  margin-right:0!important;
  width:100%!important;
  max-width:none!important;
}
/* Full-bleed homepage Custom HTML — kill entry-content side gaps */
body.home .rgv-homepage-content.entry-content,
body.front-page .rgv-homepage-content.entry-content,
body.home main.rgv-homepage > .entry-content,
body.front-page main.rgv-homepage > .entry-content{
  margin:0!important;
  padding:0!important;
  max-width:none!important;
  width:100%!important;
}

/* Cancel original .home .quickform{top:250px;left:55px} — position via .form-container */
body.home #homepage-sliders-container .quickform,
body.front-page #homepage-sliders-container .quickform,
body.home #homepage-sliders-container .quickform.expanded{
  position:relative!important;
  top:0!important;
  left:0!important;
  width:100%!important;
  margin:0!important;
}
/* Slightly below nav, nudged right — desktop only (mobile via homepage Custom HTML) */
@media (min-width:768px){
  body.home #homepage-sliders-container .form-container,
  body.front-page #homepage-sliders-container .form-container{
    position:absolute!important;
    left:255px!important;
    top:220px!important;
    z-index:30!important;
    width:250px!important;
    max-width:250px!important;
    float:none!important;
    padding:0!important;
    margin:0!important;
  }
}
@media (min-width:1400px){
  body.home #homepage-sliders-container .form-container,
  body.front-page #homepage-sliders-container .form-container{
    left:275px!important;
    top:230px!important;
    width:270px!important;
    max-width:270px!important;
  }
}
@media (max-width:1199px) and (min-width:992px){
  body.home #homepage-sliders-container .form-container,
  body.front-page #homepage-sliders-container .form-container{
    left:210px!important;
    top:200px!important;
  }
}

/* Meet the Doctor — gutter between copy and photo */
body.home #doctor .col-md-4.content,
body.front-page #doctor .col-md-4.content,
body.home #doctor .content.col-md-4,
body.front-page #doctor .content.col-md-4{
  padding-right:48px!important;
  overflow:hidden;
  box-sizing:border-box;
}
body.home #doctor .desc,
body.front-page #doctor .desc{
  padding-right:28px!important;
  max-width:100%;
  box-sizing:border-box;
  overflow-wrap:anywhere;
  word-break:break-word;
}
/* Sticky wrap pins the full-size header — never allow .fixed to change layout */
.rgv-site-header-wrap #header.fixed,
#header.fixed,
#header.hidden-xs.hidden-sm.fixed{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  width:100%!important;
  z-index:auto!important;
  background:transparent!important;
}
/* Home keeps translucent white over the hero even if .fixed is toggled */
body.home .rgv-site-header-wrap #header.fixed,
body.front-page .rgv-site-header-wrap #header.fixed,
body.home #header.fixed,
body.front-page #header.fixed,
body.rgv-front #header.fixed{
  background:rgba(255,255,255,.9)!important;
  z-index:201!important;
}
/* Keep logo full-size even if .fixed appears — shrink caused the flicker cycle */
#header.fixed a#logo,
#header.fixed #logo,
#header.fixed #logo .rgv-logo,
#header.fixed #logo img,
.fixed a#logo,
.fixed #logo .rgv-logo,
.fixed #logo img{
  width:100%!important;
  max-width:397px!important;
  padding:6px 0!important;
}
#header.fixed .top-mid,
.fixed .top-mid{
  padding:6px 0 2px!important;
}
#header.fixed .call-us-action,
.fixed .call-us-action{
  margin:2px 0 0!important;
  font-size:17px!important;
}
/* Full header always — HOME / CONTACT stay visible while scrolled */
#branding{padding:4px 0 0!important}
#branding .row{display:flex;align-items:center}
#branding .col-md-4{float:none;width:33.333%;padding-left:15px;padding-right:15px}
#branding .col-md-4:last-child,
#branding .col-md-4.hidden-xs{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:center;
  align-self:stretch;
  padding-top:0;
  margin-top:0;
  padding-left:0
}
#logo{display:block;padding:2px 0!important}
#logo .rgv-logo,#logo img{
  display:block;
  width:100%;
  max-width:397px;
  height:auto;
}
#branding .top-mid,
.top-mid{
  margin:0!important;
  padding:6px 0 2px!important;
  text-align:center;
  padding-top:6px!important;
}
#branding .top-mid .doctor-name,
#branding .top-mid .doctor-credentials,
#branding .doctor-name,
#branding .doctor-credentials{
  display:block;
  font-size:20px;
  font-weight:400;
  white-space:nowrap;
  margin:0;
  padding:0;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  letter-spacing:.02em;
  line-height:1.15;
}
#branding .doctor-name{color:#0e76bc;line-height:1.1;margin-bottom:0}
#branding .doctor-credentials{color:#333;line-height:1.2;margin-top:2px;font-size:18px}
.header-links,
#branding .header-links{
  margin:2px 0 0!important;
  margin-top:2px!important;
  float:none;
  width:auto;
}
ul#menu-header-links{
  padding:0;
  margin:0 -2px 0 0;
  list-style:none;
  display:flex;
  justify-content:flex-end;
  gap:4px
}
ul#menu-header-links li{
  font-size:12px;
  line-height:1.2;
  padding:8px 16px;
  background:#2e3192;
  list-style:none;
  margin:0
}
ul#menu-header-links li a{
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.03em;
  font-weight:500;
  display:block;
  font-size:12px;
  line-height:1.35;
  padding:2px 0
}
.call-us-action{
  clear:none;
  text-align:right;
  font-size:17px;
  white-space:nowrap;
  color:#010002;
  margin:2px 0 0;
  font-weight:500;
}
.call-us-action .call-today{font-weight:400}
.call-us-action .phone-number a,
.call-us-action a{color:#010002;text-decoration:none;font-weight:700}

/* Nav band under branding — slim, centered, no item separators */
#main-navigation{
  border-top:1px solid #58585a;
  border-bottom:1px solid #c8c8c8;
  background:#fff;
  padding:0;
  margin:0;
  text-align:center
}
#access.navbar{margin:0 auto;min-height:0;float:none}
#access.container,#access.navbar.container{width:100%;max-width:1170px;margin-left:auto;margin-right:auto}
#access a{font-weight:700;text-decoration:none;color:#2e3192;text-transform:uppercase;letter-spacing:1px}
#access .navbar-inner{
  display:flex!important;
  justify-content:center!important;
  align-items:center;
  padding:2px 0;
  min-height:0;
  border:0;
  box-shadow:none;
  background:transparent;
  text-align:center!important;
  float:none!important;
  width:100%
}
#main-menu,
#access.navbar .nav,
#access .navbar-inner > ul.nav{
  display:flex!important;
  justify-content:center!important;
  align-items:center;
  flex-wrap:nowrap;
  width:max-content!important;
  max-width:100%;
  margin:0 auto!important;
  padding:0!important;
  float:none!important;
  list-style:none;
  text-align:center
}
#main-menu:before,
#main-menu:after,
#access.navbar .nav:before,
#access.navbar .nav:after,
#access .navbar-inner > ul.nav:before,
#access .navbar-inner > ul.nav:after{
  content:none!important;
  display:none!important;
  clear:none!important
}
#access.navbar .nav>li,
#access .navbar-inner > ul.nav>li{
  position:relative;
  float:none!important;
  display:block!important;
  padding:0 14px;
  flex:0 0 auto;
  text-align:center;
  border:0!important;
  height:auto
}
#access .nav>li>a{
  height:auto;
  min-height:0;
  font-size:14px;
  line-height:1.15;
  margin:0;
  padding:8px 4px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:0!important;
  color:#2e3192;
  font-weight:700;
  letter-spacing:1px;
}
#access .nav>li>a span{
  display:inline-block;
  line-height:1.15;
  text-align:center;
  vertical-align:middle
}
/* Stack COSMETIC GYNECOLOGY on two lines like the original */
#access .nav>li:nth-child(4)>a{max-width:7.2em}
#access .nav>li:nth-child(4)>a span{max-width:7.2em}
/* Top-level hover: light blue text only (no fill) */
#access .nav>li>a:hover,#access .nav>li>a:focus{color:#9abbe7;background:transparent}
/* Top-level current / ancestor: no highlight — same as default */
#access .nav>li.current-menu-item>a,
#access .nav>li.current-menu-ancestor>a,
#access .nav>li.current-menu-parent>a,
#access .nav>li.current_page_item>a,
#access .nav>li.current_page_ancestor>a,
#access .nav>li.current_page_parent>a,
#access .nav>li.current-menu-item>a:hover,
#access .nav>li.current-menu-ancestor>a:hover,
#access .nav>li.current_page_item>a:hover{
  color:#2e3192;background:transparent;box-shadow:none
}
/* Dropdown — original 220px + Wayback typography (index.html / rgvcosmetic style.css) */
#access .sub-menu,
#access .dropdown-menu,
#access .nav>li>.sub-menu{
  list-style:none;
  background:#fff;
  padding:0;
  margin:0;
  position:absolute;
  top:100%;
  left:0;
  width:var(--rgv-submenu-w,220px);
  min-width:var(--rgv-submenu-w,220px);
  display:none;
  z-index:110;
  border:none;
  border-radius:0;
  box-shadow:none;
  text-align:left
}
#access li:hover>.sub-menu,
#access li:focus-within>.sub-menu,
#access li.rgv-open>.sub-menu,
#access .dropdown:hover>.dropdown-menu{display:block;visibility:visible}
#access .sub-menu li,
#access .dropdown-menu li{position:relative}
#access .sub-menu a,
#access .dropdown-menu li a{
  display:block;
  margin:0!important;
  font-size:14px;
  font-weight:700;
  padding:5px 10px;
  color:#000;
  border:none;
  white-space:normal;
  text-align:left;
  line-height:19px;
  height:auto;
  text-transform:none;
  letter-spacing:0;
  border-bottom:solid 1px #2e3192;
  background:transparent
}
#access .sub-menu a span,
#access .dropdown-menu li a span{
  text-align:left;
  line-height:16px;
  padding:0;
  display:inline;
  color:inherit
}
#access .sub-menu li:last-child>a,
#access .dropdown-menu li:last-child>a{border-bottom:solid 1px #2e3192}
@media(min-width:992px){
  #access .nav>li>.sub-menu:has(>li:nth-child(15)),
  #access .nav>li>.sub-menu.rgv-two-col{
    width:calc(var(--rgv-submenu-w,220px) * 2)!important;
    min-width:calc(var(--rgv-submenu-w,220px) * 2)!important;
    grid-template-rows:repeat(14,auto);
    grid-auto-flow:column;
    grid-template-columns:1fr 1fr
  }
  #access .nav>li:hover>.sub-menu:has(>li:nth-child(15)),
  #access .nav>li:focus-within>.sub-menu:has(>li:nth-child(15)),
  #access .nav>li.rgv-open>.sub-menu:has(>li:nth-child(15)),
  #access .nav>li:hover>.sub-menu.rgv-two-col,
  #access .nav>li:focus-within>.sub-menu.rgv-two-col,
  #access .nav>li.rgv-open>.sub-menu.rgv-two-col{
    display:grid!important;
    visibility:visible
  }
  #access .nav>li>.sub-menu:has(>li:nth-child(15))>li,
  #access .nav>li>.sub-menu.rgv-two-col>li{
    break-inside:avoid;
    width:100%
  }
}
/* Hover: light gray; current page: sage green (original) */
#access .sub-menu a:hover,
#access .sub-menu a:focus,
#access .dropdown-menu li:hover>a,
#access .dropdown-menu li a:hover{
  background:#f2f2f2;
  color:#000
}
#access .sub-menu a:hover span,
#access .dropdown-menu li:hover>a>span,
#access .dropdown-menu li a:hover>span{color:#000!important}
#access .sub-menu li.current-menu-item>a,
#access .sub-menu li.current_page_item>a,
#access .sub-menu li.current-menu-item>a:hover,
#access .sub-menu li.current_page_item>a:hover,
#access .sub-menu li.current-menu-item>a:focus,
#access .sub-menu li.current_page_item>a:focus,
#access .dropdown-menu li.current-menu-item>a,
#access .dropdown-menu li.current_page_item>a,
#access .dropdown-menu li.current-menu-item>a:hover,
#access .dropdown-menu li.current_page_item>a:hover,
.dropdown-menu>.active>a,
.dropdown-menu>.active>a:hover,
.dropdown-menu>.active>a:focus{
  background:#668276;
  color:#fff
}
#access .sub-menu li.current-menu-item>a span,
#access .sub-menu li.current_page_item>a span,
#access .dropdown-menu li.current-menu-item>a>span,
#access .dropdown-menu li.current_page_item>a>span,
.dropdown-menu>.active>a span{color:#fff!important}

/*
 * 3rd-level flyouts (depth_1):
 * - Even top-level items (2,4,6…): >> and open to the RIGHT, top aligned with parent row
 * - Odd top-level items (1,3,5,7…): << and open to the LEFT, top aligned with parent row
 */
#access .sub-menu .sub-menu{
  top:0;
  margin:0;
  z-index:120;
}
#access .nav>li:nth-child(even)>.sub-menu>.menu-item-has-children>.sub-menu{
  left:100% !important;
  right:auto !important;
  top:0 !important;
}
#access .nav>li:nth-child(odd)>.sub-menu>.menu-item-has-children>.sub-menu{
  left:auto !important;
  right:100% !important;
  top:0 !important;
}
#access .nav>li:nth-child(even)>.sub-menu>.menu-item-has-children>a span::after{
  content:' >>';
  white-space:nowrap;
}
#access .nav>li:nth-child(odd)>.sub-menu>.menu-item-has-children>a span::before{
  content:'<< ';
  white-space:nowrap;
}
/* Last top-level dropdown stays on-screen */
#access .nav>li:last-child>.sub-menu{left:auto;right:0}
.submenu-toggle{position:absolute;width:22px;height:22px;right:1px;top:3px;border:0;color:#2e3192;background:#fff;opacity:0;cursor:pointer}
li:focus-within>.submenu-toggle,.submenu-toggle:focus{opacity:1}

/* Mobile bar — sticky in-flow (no padding-top guess = no gap under nav) */
#mobile-menu{
  display:none;
  background:#6b6a6b;
  position:sticky;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:100200;
}
#mobile-menu .dl-menuwrapper{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:2px 0 4px;
  width:100%;
  box-sizing:border-box;
  perspective:none;
  -webkit-perspective:none;
  box-shadow:inset 0 16px 50px -10px #fff;
}
/* Scrolled: glassy bar over page content (ref image 3) */
body.rgv-scrolled #mobile-menu{
  background:linear-gradient(180deg,rgba(40,40,40,.88) 0%,rgba(95,95,95,.72) 100%);
}
body.rgv-scrolled #mobile-menu .dl-menuwrapper{
  box-shadow:inset 0 12px 36px -12px rgba(255,255,255,.35);
}
/* Desktop admin bar is fixed — offset the mobile bar under it */
@media screen and (min-width:783px){
  .admin-bar #mobile-menu{top:32px}
}
/* Mobile admin bar is usually absolute and scrolls away — keep menu flush to top */
@media screen and (max-width:782px){
  .admin-bar #mobile-menu{top:0!important}
}
#mobile-menu .nav{margin:0;width:100%}
#mobile-menu .dl-trigger{
  background:transparent!important;
  border:0!important;
  padding:0 10px!important;
  cursor:pointer;
  line-height:0;
  width:33%;
  height:auto!important;
  min-height:0!important;
  text-align:left;
  text-indent:0!important;
  overflow:visible!important;
  position:relative;
}
/* Remove dlmenu.css scaled hamburger (::after bars) — keep icon image only */
#mobile-menu .dl-menuwrapper button:after,
#mobile-menu .dl-trigger:after,
#mobile-menu .dl-trigger:before{
  content:none!important;
  display:none!important;
  box-shadow:none!important;
  background:none!important;
  width:0!important;
  height:0!important;
}
#mobile-menu .dl-menuwrapper button:hover,
#mobile-menu .dl-menuwrapper button.dl-active{
  background:transparent!important;
}
#mobile-menu .dl-trigger .shadow,
#mobile-menu .dl-trigger .glow{
  display:block;
  background:none!important;
  box-shadow:none!important;
  filter:none!important;
}
#mobile-menu .phone{
  display:flex;
  align-items:center;
  justify-content:center;
  width:31%;
  padding:0 10px;
  text-align:center;
  box-sizing:border-box;
}
#mobile-menu .location{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  width:32%;
  padding:0 10px;
  text-align:right;
  box-sizing:border-box;
}
#mobile-menu .dl-trigger img,
#mobile-menu .phone img,
#mobile-menu .location img{
  display:block;
  height:auto;
  width:auto;
  max-height:48px;
  max-width:70px;
  margin:0 auto;
}
#mobile-menu .dl-trigger img{margin-left:0}
#mobile-menu .location img{margin-right:0;margin-left:auto}
#mobile-nav-drawer{
  background:linear-gradient(180deg,#171717 0%,#5a5a5a 100%);
  border-bottom:0;
  position:absolute;
  left:0;
  right:0;
  top:100%;
  z-index:100201;
  max-height:70vh;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
#mobile-nav-drawer[hidden]{display:none!important}
#mobile-main-menu{
  list-style:none;
  margin:0;
  padding:0;
  background:transparent;
  width:100%;
  float:none;
}
#mobile-main-menu>li,
#mobile-main-menu li{
  position:relative;
  display:block;
  float:none!important;
  width:100%!important;
  clear:both;
}
#mobile-main-menu>li{border-bottom:1px solid rgba(255,255,255,.2)}
#mobile-main-menu>li:last-child{border-bottom:0}
#mobile-main-menu a{
  display:block;
  padding:15px 48px 15px 20px;
  color:#fff;
  text-decoration:none;
  text-transform:none;
  font-size:16px;
  line-height:1.35;
  font-weight:400;
  background:transparent;
  white-space:normal;
  height:auto;
  float:none;
}
#mobile-main-menu>li.current-menu-item>a,
#mobile-main-menu>li.current-menu-ancestor>a,
#mobile-main-menu>li.current_page_item>a{color:#fff;background:rgba(255,255,255,.08)}
/* Accordion: keep submenus in document flow (override Bootstrap .dropdown-menu absolute) */
#mobile-main-menu .sub-menu,
#mobile-main-menu .dropdown-menu,
#mobile-main-menu ul.sub-menu,
#mobile-main-menu ul.dropdown-menu{
  position:static!important;
  float:none!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  display:none!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
  box-shadow:none!important;
  border:0!important;
  border-radius:0!important;
  background:rgba(0,0,0,.22)!important;
  z-index:auto!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
  grid-auto-flow:row!important;
}
#mobile-main-menu li.rgv-open>.sub-menu,
#mobile-main-menu li.rgv-open>.dropdown-menu,
#mobile-main-menu li.rgv-open>ul{
  display:block!important;
}
#mobile-main-menu .sub-menu>li,
#mobile-main-menu .dropdown-menu>li{
  display:block!important;
  float:none!important;
  width:100%!important;
  position:relative;
}
#mobile-main-menu .sub-menu a,
#mobile-main-menu .dropdown-menu a{
  text-transform:none;
  color:#fff;
  font-weight:400;
  padding:12px 48px 12px 32px;
  border-bottom:1px solid rgba(255,255,255,.15);
  background:transparent;
}
#mobile-main-menu .sub-menu .sub-menu a,
#mobile-main-menu .dropdown-menu .dropdown-menu a{padding-left:44px}
#mobile-main-menu .sub-menu a:hover,
#mobile-main-menu .dropdown-menu a:hover{background:rgba(255,255,255,.1);color:#fff}
#mobile-main-menu .sub-menu li.current-menu-item>a,
#mobile-main-menu .sub-menu li.current_page_item>a,
#mobile-main-menu .dropdown-menu li.current-menu-item>a,
#mobile-main-menu .dropdown-menu li.current_page_item>a{background:rgba(255,255,255,.12);color:#fff}
#mobile-main-menu>li:nth-child(even)>.sub-menu>.menu-item-has-children>a span::after,
#mobile-main-menu>li:nth-child(even)>.dropdown-menu>.menu-item-has-children>a span::after{content:' >>'}
#mobile-main-menu>li:nth-child(odd)>.sub-menu>.menu-item-has-children>a span::before,
#mobile-main-menu>li:nth-child(odd)>.dropdown-menu>.menu-item-has-children>a span::before{content:'<< '}
#mobile-main-menu .submenu-toggle{
  position:absolute;
  opacity:1;
  width:44px;
  height:44px;
  top:0;
  right:0;
  z-index:2;
  color:#fff;
  background:transparent;
  border:0;
  font-size:22px;
  line-height:44px;
  padding:0;
  cursor:pointer;
}


/* ========== Appointment box (header) ==========
   Home top: blue form flush under header — names; hover → full
   Any page scrolled: grey "Request An Appointment" tab flush under fixed header
   Tab hover → partial → hover again → full
*/
#header{position:relative;overflow:visible}
#toggleform{
  display:none!important;
  position:absolute!important;
  top:100%!important;
  left:105px!important;
  width:auto!important;
  min-width:220px;
  max-width:280px;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0 0 10px 10px;
  z-index:130!important;
  overflow:visible!important;
  box-shadow:none;
  box-sizing:border-box;
}

/* Front page: custom HTML body — hide theme appointment tab + left sidebar only.
   #review / #resources stay visible when included in homepage Custom HTML. */
body.front-page #toggleform,
body.rgv-front #toggleform,
body.front-page #sidebar-left,
body.rgv-front #sidebar-left{
  display:none!important;
}
.rgv-homepage{min-height:0}

/* Appointment: never on front page; other home-like templates can still use it */
body.home:not(.front-page) #toggleform,
body.page-template-homepage #toggleform,
body.page-template-templateshomepage-php #toggleform{display:block!important}
/* Inner pages: show only after scroll (Wayback tab) */
body.rgv-scrolled:not(.front-page) #toggleform{display:block!important}

#toggleBtn,
span#toggleBtn{
  display:none!important;
  font-size:18px!important;
  letter-spacing:1px!important;
  text-align:center;
  cursor:pointer;
  color:#111!important;
  padding:6px 14px!important;
  background:transparent!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  width:auto;
  white-space:nowrap;
  box-sizing:border-box;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  line-height:1.3;
  list-style:none;
}

/* Home top (not static front page): form box standing flush against header */
body.home:not(.front-page):not(.rgv-scrolled) #toggleBtn,
body.home:not(.front-page):not(.rgv-scrolled) span#toggleBtn{display:none!important}
body.home:not(.front-page):not(.rgv-scrolled) #toggleform{
  width:280px!important;
  max-width:280px;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
}
body.home:not(.front-page):not(.rgv-scrolled) #toggleform .form-part{
  display:block!important;
  max-height:none!important;
  overflow:visible!important;
  margin:0!important;
  padding:0!important;
}
body.home:not(.front-page):not(.rgv-scrolled) #toggleform .quickform{
  display:block!important;
  position:static!important;
  top:auto!important;
  margin:0!important;
  max-width:none!important;
  width:100%!important;
  background:rgba(27,88,151,.85)!important;
  padding:0 0 6px!important;
  border-radius:0 0 10px 10px;
}

#toggleform .quickform .formhead{color:#fff;text-align:center;padding:10px 12px 4px}
#toggleform .quickform .line1,#toggleform .quickform .line2{font-size:12px;letter-spacing:2px;line-height:1.2;font-weight:500}
#toggleform .quickform .line3{font-size:22px;letter-spacing:2px;padding:4px 0 8px;font-weight:300}
#toggleform .quickform .line3 a{color:#fff;text-decoration:none}
#toggleform .formbody{padding:4px 12px}
#toggleform .quickform input[type=text],
#toggleform .quickform input[type=email],
#toggleform .quickform select,
#toggleform .quickform textarea{
  width:100%;
  margin:0 0 4px;
  padding:6px 8px;
  background:rgba(88,88,90,.5);
  border:2px solid #fff;
  color:#fff;
  font-size:14px;
  text-transform:uppercase;
  box-sizing:border-box;
  border-radius:0;
}
#toggleform .quickform #fName,
#toggleform .quickform #lName{display:block!important}
#toggleform .quickform input::placeholder,
#toggleform .quickform textarea::placeholder{color:#fff;opacity:1}
#toggleform .quickform select{
  color:#fff;appearance:none;-webkit-appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(135deg,#fff 50%,transparent 50%);
  background-position:calc(100% - 14px) calc(50% - 3px),calc(100% - 9px) calc(50% - 3px);
  background-size:5px 5px,5px 5px;background-repeat:no-repeat
}
#toggleform .quickform select option{color:#111;background:#fff}

#toggleform .rgv-extra,
#toggleform .quickform #uEmail,
#toggleform .quickform #uPhone,
#toggleform .quickform #uZip,
#toggleform .quickform #uProc,
#toggleform .quickform #uMsg{
  display:none!important;
}
#toggleform.rgv-expanded .rgv-extra,
#toggleform .quickform.expanded .rgv-extra,
#toggleform.rgv-expanded .quickform #uEmail,
#toggleform.rgv-expanded .quickform #uPhone,
#toggleform.rgv-expanded .quickform #uZip,
#toggleform.rgv-expanded .quickform #uProc,
#toggleform.rgv-expanded .quickform #uMsg,
#toggleform .quickform.expanded #uEmail,
#toggleform .quickform.expanded #uPhone,
#toggleform .quickform.expanded #uZip,
#toggleform .quickform.expanded #uProc,
#toggleform .quickform.expanded #uMsg{
  display:block!important;
}
#toggleform .formsubmit{padding:4px 12px 10px}
#toggleform .formsubmit button,
#toggleform #sndForm{
  border:0;background:transparent;color:#fff;width:100%;padding:8px;
  font-size:16px;letter-spacing:1px;text-transform:uppercase;cursor:pointer;
}

/* Scrolled (home + inner): grey tab flush under header */
body.rgv-scrolled #toggleform{
  left:105px!important;
  width:auto!important;
  min-width:0;
  max-width:none;
  padding:2px 10px!important;
  background:rgba(227,226,223,.9)!important;
  border:2px solid #2e3192!important;
  border-top:0!important;
  border-bottom-left-radius:10px!important;
  border-bottom-right-radius:10px!important;
  border-top-left-radius:0!important;
  border-top-right-radius:0!important;
  box-shadow:none;
  overflow:visible!important;
}
body.rgv-scrolled #toggleBtn,
body.rgv-scrolled span#toggleBtn{
  display:block!important;
  background:transparent!important;
  padding:4px 8px!important;
  font-size:18px!important;
  text-align:center;
  cursor:pointer;
}
body.rgv-scrolled #toggleform .form-part,
body.rgv-scrolled #toggleform .quickform{
  display:none!important;
  margin:0!important;
  padding:0!important;
  height:0!important;
  max-height:0!important;
  overflow:hidden!important;
  visibility:hidden!important;
}
/* Open: keep grey "Request An Appointment" bar on top of blue form */
body.rgv-scrolled #toggleform.rgv-open,
body.rgv-scrolled #toggleform:focus-within{
  width:280px!important;
  max-width:280px;
  padding:0!important;
  background:rgba(227,226,223,.9)!important;
  border:2px solid #2e3192!important;
  border-top:0!important;
  border-bottom-left-radius:10px!important;
  border-bottom-right-radius:10px!important;
}
body.rgv-scrolled #toggleform.rgv-open #toggleBtn,
body.rgv-scrolled #toggleform:focus-within #toggleBtn,
body.rgv-scrolled #toggleform.rgv-open span#toggleBtn,
body.rgv-scrolled #toggleform:focus-within span#toggleBtn{
  display:block!important;
  width:100%!important;
  box-sizing:border-box;
  padding:8px 12px!important;
  margin:0!important;
  text-align:left;
  font-size:16px!important;
  background:rgba(227,226,223,.9)!important;
  border:0!important;
  border-radius:0!important;
}
body.rgv-scrolled #toggleform.rgv-open .form-part,
body.rgv-scrolled #toggleform:focus-within .form-part{
  display:block!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  visibility:visible!important;
}
body.rgv-scrolled #toggleform.rgv-open .quickform,
body.rgv-scrolled #toggleform:focus-within .quickform{
  display:block!important;
  position:static!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:0 0 6px!important;
  overflow:visible!important;
  visibility:visible!important;
  background:rgba(27,88,151,.85)!important;
  border-radius:0 0 8px 8px;
}
#toggleform .formhead{cursor:pointer}

/* Header stays full-size on scroll — no shrink / hide / font changes */
.rgv-honeypot{position:absolute;left:-10000px}
.rgv-form-status{color:#fff;padding:10px;font-size:14px;text-align:center}

#footer .rgv-logo{width:397px;max-width:80%;height:auto;display:block;margin:0 auto}
#footer{background:#dfe8ef;color:#fff;margin:0;padding-top:20px;position:relative;width:100%}
#footer .container{text-align:center;position:relative}
#footer .inner{padding-top:12px;padding-bottom:10px;text-align:center;margin:0 auto}
#footer .site-info{font-size:15px;line-height:1.4em;margin-bottom:20px;text-align:center}
#footer .site-info .row,
#footer .site-info .text-center{
  text-align:center!important;
  display:block;
  float:none;
  width:100%;
  margin-left:0;
  margin-right:0
}
#footer .site-info p{text-align:center;margin:0 auto 10px}
#footer .site-info p a{display:inline-block;text-align:center}
#footer .site-info .rgv-logo,
#footer .site-info img{display:block;margin-left:auto;margin-right:auto}
#footer a{text-decoration:none}
#footer .no-padding{padding-left:0;padding-right:0}
.footer-call,.call-footer{font-size:25px;color:#000;letter-spacing:3px;margin:10px 0 20px;font-weight:400;text-transform:none}
.custom-footer:after{content:"";display:table;clear:both}
#footer .footer-location{border:1px solid #b1cfe3;padding:10px;margin:0 auto 30px;max-width:370px}
#footer .footer-location>div{background:#707070;padding:5px 8px 10px}
#footer .footer-location h4{color:#fff;font-weight:400;text-transform:uppercase;letter-spacing:2px;font-size:23px;margin:8px 0 10px;line-height:1.3}
#footer .footer-location p{margin:0 0 8px;font-size:15px;line-height:1.4}
#footer .footer-location a{color:#fff;text-decoration:none}
#footer .footer-location h5{color:#fff;font-weight:300;letter-spacing:2px;font-size:13px;line-height:20px;margin:8px 0 6px}
#footer .rgv-footer-extra{font-size:14px;line-height:1.6;margin:8px 0 0;color:#fff}
#footer .footer-bottom>p{margin:0 0 10px}
#footer .footer-bottom>p img,
#footer .carecredit img{display:block;margin:0 auto;max-width:340px;width:80%;height:auto}
#footer .carecredit{text-align:center;padding:15px 0 10px;clear:both}
.social-icons.social-icons-mobile{background:linear-gradient(180deg,#171717 0%,#5a5a5a 100%)}
/* GET SOCIAL styles live with #doctor button block below (bold + centered) */
.container-fluid.footer-menu,#footer .footer-menu{background:#8a898a;padding:25px 0 40px;width:100%}
#footer .footer-top{text-align:center}
#footer .footer-nav-menu{padding:0;margin:0 0 6px;list-style:none;text-align:center}
#footer .footer-nav-menu li{display:inline;list-style-type:none;margin:0}
#footer .footer-nav-menu li a{
  color:#b1cfe3;
  display:inline-block;
  padding:0 8px;
  font-weight:300;
  font-size:12px;
  line-height:18px;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:0
}
#footer .footer-nav-menu li a:hover{color:#fff}
#footer .copyright{color:#fff;font-weight:300;margin-top:15px;font-size:14px;line-height:1.5;padding-top:0}
#footer .copyright a{color:#fff;text-decoration:underline}
.rgv-page{padding-top:72px;padding-bottom:55px;min-height:50vh}.rgv-full-width,.rgv-homepage{min-height:40vh}.rgv-hero-image{display:block;width:100%;height:auto}.entry-content{overflow-wrap:anywhere}.entry-content:after{content:"";display:table;clear:both}.entry-content img{max-width:100%;height:auto}.entry-content .aligncenter{display:block;margin-left:auto;margin-right:auto}.entry-content iframe{max-width:100%}#sidebar-right{padding:25px}.widget{margin-bottom:24px}.lucky-container{max-width:1170px;margin:auto;padding:0 15px}.lucky-site-main{padding:72px 0 40px}.lucky-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.lucky-post-card img{height:auto;max-width:100%}.lucky-entry-content{line-height:1.7}.lucky-screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

/* Never show accessibility / chat / cookie overlays in this restore */
#userwayAccessibilityIcon,.uwy,.uwaw-wrapper,.uw-widget-wrapper,[class*="userway"],
#chat-widget-container,.chat-with-us,[id*="chat-widget"],[class*="chat-widget"],iframe[src*="chat"],
[class*="livechat"],[id*="livechat"],[class*="ChatWith"],[aria-label*="Chat with"],
#cookie-law-info-bar,.cli-bar-container,.cky-consent-container,.osano-cm-window,
.accessibility-widget,.ada-widget-frame{display:none!important;visibility:hidden!important;pointer-events:none!important}

/* Back to top — replaces Chat With Us (Wayback a.go-top); no white box */
a.go-top{
  display:none;
  position:fixed;
  bottom:20px;
  right:20px;
  z-index:9990;
  width:75px;
  height:75px;
  box-sizing:border-box;
  padding:36px 8px 0;
  margin:0;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#252525!important;
  text-align:center;
  text-decoration:none!important;
  text-transform:uppercase;
  font-family:Georgia,"Times New Roman",Times,serif;
  font-size:9px;
  font-weight:400;
  font-style:normal;
  line-height:1.25;
  letter-spacing:.04em;
  cursor:pointer;
}
a.go-top.is-visible{display:block!important}
/* Chevron sits above the label (not on top of "TOP") */
a.go-top:before{
  content:""!important;
  position:absolute!important;
  top:10px!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  width:16px!important;
  height:16px!important;
  margin:0 0 0 -8px!important;
  padding:0!important;
  border:0!important;
  border-right:2px solid #252525!important;
  border-bottom:2px solid #252525!important;
  background:transparent!important;
  transform:rotate(225deg)!important;
  display:block!important;
  box-sizing:border-box!important;
}
a.go-top:after{content:none!important;display:none!important}
a.go-top:hover{color:#111!important;background:transparent!important}
@media screen and (max-width:767px){
  a.go-top{display:none!important}
}

@media(min-width:1200px){#access .nav>li>a{font-size:15px}}
@media(max-width:1199px) and (min-width:992px){
  #branding .top-mid .doctor-name,#branding .doctor-name{font-size:16px}
  #branding .doctor-credentials{font-size:15px}
  .call-us-action{font-size:15px}
  #access .nav>li>a{font-size:11px;padding:6px 2px}
  #access .nav>li{padding:0 8px}
  ul#menu-header-links li{padding:9px 14px}
}

/* Mirror Bootstrap hidden-xs/hidden-sm + visible-xs/visible-sm if bootstrap not loaded */
@media(max-width:991px){
  /* Tablet/phone with mobile chrome — white body, not blue gutters */
  body,
  body.rgv-site,
  body.page #page-wrap,
  body.single #page-wrap,
  body.single-post #page-wrap,
  body.blog #page-wrap,
  body.archive #page-wrap,
  #page-wrap,
  #page-content-wrap,
  #page-content-wrap.rgv-blog-index,
  #page-content-wrap.rgv-archive-index,
  #page-content-wrap.rgv-single-post{
    background:#fff!important;
  }
  /* Desktop sticky wrap left a white gap on mobile — hide it entirely */
  .rgv-site-header-wrap{display:none!important}
  #header.hidden-xs.hidden-sm,#header,.hidden-sm{display:none!important}
  #mobile-menu.visible-xs.visible-sm,#mobile-menu{display:block!important}
  /* Sticky nav is in document flow — do NOT add spacer padding (that caused the gap) */
  #page-wrap{padding-top:0!important}
  /* Kill stacked content paddings under the nav */
  #page-content-wrap > .page-content,
  #page-content-wrap .page-content.content-wrap,
  #page-content-wrap #content,
  #page-content-wrap.rgv-blog-index .page-content.content-wrap,
  #page-content-wrap.rgv-blog-index #content,
  #page-content-wrap.rgv-single-post #content{
    padding-top:0!important;
    margin-top:0!important;
  }
  #page-content-wrap #content .visible-xs{
    padding-top:0!important;
    margin-top:0!important;
  }
  #page-content-wrap #content .visible-xs #logo{
    padding:2px 0 6px!important;
    margin:0!important;
  }
}
/* WP admin bar on phone is absolute + scrolls away, but still adds html margin —
   that margin was the big white gap under the fixed nav while logged in */
@media screen and (max-width:782px){
  html.admin-bar{margin-top:0!important}
  .admin-bar #wpadminbar{position:absolute!important}
}
@media(max-width:767px){
  #toggleform,
  body.home #toggleform,
  body.rgv-scrolled #toggleform{display:none!important}
  .lucky-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rgv-page{padding-top:35px}
}
@media(min-width:992px){
  #mobile-menu.visible-xs.visible-sm,#mobile-menu{display:none!important}
  #header.hidden-xs.hidden-sm{display:block!important}
}
@media(max-width:767px){#branding{padding:8px 0}.call-us-action{font-size:13px;margin:0}#footer{background:#dfe8ef}.footer-call,.call-footer{font-size:18px;line-height:1.5;letter-spacing:1px;font-weight:600}#footer .footer-location h5{letter-spacing:0;font-size:15px}#footer .footer-nav-menu li a{font-size:13px}#footer .copyright{font-size:12px}.lucky-post-grid{grid-template-columns:1fr}#footer .inner{margin:0}.rgv-page{padding-bottom:30px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.rgv-site-title{display:inline-block;color:#2e3192;font-size:24px;line-height:1.2}.rgv-social-link{color:#b1cfe3;text-decoration:none;font-size:14px}.rgv-social-link:hover{color:#fff}

/* —— Inner pages (FaceTite-style) —— */
#page-content-wrap{width:100%;background:#dfe8ef}
#page-content-wrap > .page-content{padding-top:12px;padding-bottom:20px}
#page-content-wrap #content{position:relative;padding-top:12px}
#page-content-wrap .entry-content{margin-right:30px}

/* Hide Sidebar (Layout Options): full-width content centered in .container */
body.no-sidebar #page-content-wrap.rgv-no-sidebar #content,
#page-content-wrap.rgv-no-sidebar #content.rgv-content-nosidebar,
#page-content-wrap.rgv-no-sidebar #content.col-md-12{
  float:none!important;
  width:100%!important;
  max-width:100%;
  left:auto!important;
  right:auto!important;
  margin-left:auto;
  margin-right:auto;
  padding-left:15px;
  padding-right:15px;
}
body.no-sidebar #page-content-wrap.rgv-no-sidebar .entry-content,
#page-content-wrap.rgv-no-sidebar .entry-content,
body.no-sidebar #page-content-wrap .entry-content{
  margin-right:0!important;
  margin-left:0!important;
}
body.no-sidebar #sidebar-left,
#page-content-wrap.rgv-no-sidebar #sidebar-left{
  display:none!important;
}
#page-content-wrap #crumbs{margin-bottom:18px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:17px;line-height:22px;color:#000}
#page-content-wrap #crumbs a{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:22px;font-size:17px;color:#2e3192;text-decoration:none}
#page-content-wrap #crumbs a:hover{text-decoration:underline}
#page-content-wrap #crumbs .current{font-weight:400;color:#000;font-size:17px}
/* Match original theme: h1 = 2em; section h2+ slightly larger for readability */
#page-content-wrap h1.entry-title,
#page-content-wrap h1{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:2em;
  font-weight:500;
  color:#2e3192;
  text-transform:uppercase;
  margin:0 0 12px;
  padding-bottom:5px;
  line-height:1em;
  letter-spacing:normal;
}
#page-content-wrap .entry-content h2{
  font-family:'GothamBook',"Helvetica Neue",Helvetica,Arial,sans-serif!important;
  font-size:22px;
  font-weight:700!important;
  text-transform:uppercase;
  letter-spacing:2px;
  color:#2e3192;
  margin-top:0;
  margin-bottom:8px;
  line-height:1.25em;
  padding-bottom:5px;
}
#page-content-wrap .entry-content h3{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:1.35em;
  font-weight:500;
  color:#2e3192;
  line-height:1.25em;
  padding-bottom:5px;
}
#page-content-wrap .entry-content h4{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:1.2em;
  font-weight:500;
  color:#2e3192;
  line-height:1.3em;
  margin:0 0 8px;
}
#page-content-wrap .entry-content h5,
#page-content-wrap .entry-content h6{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:1.1em;
  font-weight:500;
  color:#2e3192;
  line-height:1.35em;
  margin:0 0 8px;
}
/* Avoid duplicate crumbs/title if pasted into page content */
#page-content-wrap .entry-content > #crumbs:first-child,
#page-content-wrap .entry-content > h1.entry-title:first-child{display:none}
#page-content-wrap .entry-content p,
#page-content-wrap .entry-content li,
#page-content-wrap .entry-content td{
  font-size:17px;
  font-weight:300;
  color:#000;
  line-height:1.55em;
}
#page-content-wrap .entry-content a{color:#2e3192}
/* Blue link color must not paint over solid blue buttons (Accept / Decline, etc.) */
#page-content-wrap .entry-content a.acp-btn,
#page-content-wrap .entry-content a.acp-btn:visited,
#page-content-wrap .entry-content a.acp-btn:hover,
#page-content-wrap .entry-content a.acp-btn:focus,
#page-content-wrap .entry-content a.btn,
#page-content-wrap .entry-content a.btn-primary,
#page-content-wrap .entry-content .wp-block-button__link,
#page-content-wrap .entry-content a.button,
#page-content-wrap .entry-content .button a{
  color:#fff!important;
}

/* —— Single posts — original body font: Montserrat 14px / line-height 1.6em —— */
#page-content-wrap.rgv-single-post,
#page-content-wrap.rgv-single-post #content,
#page-content-wrap.rgv-single-post .entry-content,
#page-content-wrap.rgv-single-post .rgv-post-meta,
#page-content-wrap.rgv-single-post .rgv-post-tax,
#page-content-wrap.rgv-single-post .rgv-post-nav,
#page-content-wrap.rgv-single-post #crumbs{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6em;
  color:#000;
}
#page-content-wrap.rgv-single-post #crumbs{
  margin-bottom:18px;
  font-weight:400;
}
#page-content-wrap.rgv-single-post #crumbs a{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6em;
  font-weight:400;
  color:#2e3192;
  text-decoration:underline;
}
#page-content-wrap.rgv-single-post #crumbs .current{
  font-size:16px;
  font-weight:400;
  color:#000;
}
#page-content-wrap.rgv-single-post h1.entry-title{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:2em;
  font-weight:500;
  color:#2e3192;
  text-transform:uppercase;
  text-decoration:none;
  margin:0 0 8px;
  padding-bottom:0;
  line-height:1.15em;
  letter-spacing:normal;
}
#page-content-wrap.rgv-single-post h1.entry-title a{
  color:#2e3192;
  text-decoration:underline;
  text-underline-offset:4px;
}
#page-content-wrap.rgv-single-post h1.entry-title a:hover{
  color:#1a1c6e;
}
#page-content-wrap.rgv-single-post .entry-content h2{
  font-family:'GothamBook',"Helvetica Neue",Helvetica,Arial,sans-serif!important;
  font-size:22px;
  font-weight:700!important;
  text-transform:uppercase;
  letter-spacing:2px;
  color:#2e3192;
  line-height:1.3em;
}
#page-content-wrap.rgv-single-post .entry-content h3{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:20px;
  font-weight:400;
  color:#2e3192;
  line-height:1.3em;
}
#page-content-wrap.rgv-single-post .entry-content p,
#page-content-wrap.rgv-single-post .entry-content li,
#page-content-wrap.rgv-single-post .entry-content td{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px!important;
  font-weight:400;
  color:#000;
  line-height:1.6em;
}
#page-content-wrap.rgv-single-post .entry-content a{
  color:#2e3192;
  text-decoration:underline;
}
#page-content-wrap.rgv-single-post .entry-content a:hover{
  color:#1a1c6e;
}
#page-content-wrap.rgv-single-post .entry-content a.acp-btn,
#page-content-wrap.rgv-single-post .entry-content a.acp-btn:visited,
#page-content-wrap.rgv-single-post .entry-content a.acp-btn:hover,
#page-content-wrap.rgv-single-post .entry-content a.acp-btn:focus,
#page-content-wrap.rgv-single-post .entry-content a.btn,
#page-content-wrap.rgv-single-post .entry-content a.btn-primary,
#page-content-wrap.rgv-single-post .entry-content .wp-block-button__link,
#page-content-wrap.rgv-single-post .entry-content a.button{
  color:#fff!important;
  text-decoration:none!important;
}
#page-content-wrap.rgv-single-post .rgv-post-meta{
  margin:0 0 14px;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6em;
  font-weight:400;
  color:#000;
}
#page-content-wrap.rgv-single-post .rgv-post-meta a{
  color:#2e3192;
  text-decoration:underline;
  font-weight:400;
}
#page-content-wrap.rgv-single-post .rgv-post-meta a:hover{
  color:#1a1c6e;
}
#page-content-wrap.rgv-single-post .rgv-post-meta .rgv-meta-sep{
  display:inline-block;
  margin:0 2px;
  color:#000;
  font-weight:400;
}
/* Featured image: always 1200×800 frame (3:2), scales down on tablet/mobile */
#page-content-wrap.rgv-single-post .rgv-featured-image{
  display:block;
  margin:0 0 28px;
  width:100%;
  max-width:1200px;
  aspect-ratio:1200 / 800;
  overflow:hidden;
  padding:0;
  background:#c8d4de;
}
#page-content-wrap.rgv-single-post .rgv-featured-image img,
#page-content-wrap.rgv-single-post .rgv-featured-img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:cover;
  object-position:center;
}
@media(max-width:991px){
  #page-content-wrap.rgv-single-post .rgv-featured-image{
    max-width:100%;
    margin-bottom:22px;
  }
  #page-content-wrap.rgv-single-post h1.entry-title{font-size:1.65em}
}
@media(max-width:767px){
  #page-content-wrap.rgv-single-post .rgv-featured-image{margin-bottom:18px}
  #page-content-wrap.rgv-single-post h1.entry-title{font-size:1.4em;line-height:1.2em}
}
#page-content-wrap.rgv-single-post .rgv-post-tax{
  margin:28px 0 0;
  padding:0 0 14px;
  border-bottom:1px solid #c8c8c8;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6em;
  color:#000;
}
#page-content-wrap.rgv-single-post .rgv-post-tax a{
  color:#2e3192;
  text-decoration:underline;
}
#page-content-wrap.rgv-single-post .rgv-post-tax a:hover{color:#1a1c6e}
#page-content-wrap.rgv-single-post .rgv-post-tax .rgv-tax-sep{
  margin:0 4px;
  color:#000;
}
#page-content-wrap.rgv-single-post .rgv-post-nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin:18px 0 10px;
  padding:0;
  overflow:visible;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6em;
}
#page-content-wrap.rgv-single-post .rgv-post-nav .nav-previous,
#page-content-wrap.rgv-single-post .rgv-post-nav .nav-next{
  float:none;
  width:auto;
  flex:1 1 auto;
}
#page-content-wrap.rgv-single-post .rgv-post-nav .nav-next{text-align:right}
#page-content-wrap.rgv-single-post .rgv-post-nav a{
  color:#2e3192;
  text-decoration:underline;
}
#page-content-wrap.rgv-single-post .rgv-post-nav a:hover{color:#1a1c6e}


/* Mobile/tablet (≤991): content + crumbs first; rest of sidebar stacked underneath */
@media(max-width:991px){
  #page-content-wrap .page-content > .container > .row{
    display:flex!important;
    flex-direction:column!important;
  }
  #page-content-wrap #content.col-md-push-3,
  #page-content-wrap #content.col-sm-push-3,
  #page-content-wrap #content{
    order:1;
    float:none!important;
    width:100%!important;
    left:auto!important;
    right:auto!important;
    position:relative!important;
  }
  #page-content-wrap #sidebar-left,
  #page-content-wrap .rgv-post-sidebar-col,
  #page-content-wrap .col-md-pull-9,
  #page-content-wrap .col-sm-pull-9{
    order:2;
    float:none!important;
    width:100%!important;
    left:auto!important;
    right:auto!important;
    position:relative!important;
    margin-top:8px;
  }
  .rgv-post-sidebar-mobile{display:none!important}
}

/* Mobile top: logo centered + zoomed; content/sidebar keep side margin.
   GET SOCIAL + footer stay full-bleed. */
@media(max-width:767px){
  #page-wrap{padding-top:0!important}
  /* Kill stacked top paddings that opened a gap under the nav */
  #page-content-wrap > .page-content,
  #page-content-wrap .page-content.content-wrap,
  #page-content-wrap #content,
  #page-content-wrap.rgv-blog-index .page-content.content-wrap,
  #page-content-wrap.rgv-blog-index #content,
  #page-content-wrap.rgv-single-post #content{
    padding-top:0!important;
    margin-top:0!important;
  }
  #page-content-wrap .page-content > .container{
    padding-left:15px;
    padding-right:15px;
  }
  #page-content-wrap #content .visible-xs{
    background:#fff;
    margin:0;
    padding:0;
  }
  #page-content-wrap #content .visible-xs #logo{
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:2px 0 6px!important;
    margin:0!important;
  }
  #page-content-wrap #content .visible-xs #logo img,
  #page-content-wrap #content .visible-xs #logo .rgv-logo{
    display:block;
    width:auto;
    max-width:92%;
    height:auto;
    margin:0 auto;
    padding:0;
    transform:scale(1.08);
    transform-origin:center top;
  }
  #page-content-wrap #content .visible-xs .quickform{
    background:rgba(27,88,151,.72);
    margin:0;
    width:100%;
    max-width:100%;
  }
  #page-content-wrap #content .visible-xs .quickform .formhead{
    color:#fff;
    text-align:center;
    padding:12px 16px 0;
  }
  #page-content-wrap #content .visible-xs .quickform .line1,
  #page-content-wrap #content .visible-xs .quickform .line2{
    font-size:13px;
    letter-spacing:3px;
    line-height:1.15;
    font-weight:500;
  }
  #page-content-wrap #content .visible-xs .quickform .line3{
    font-size:26px;
    font-weight:300;
    letter-spacing:2px;
    padding:6px 0 10px;
    line-height:1.1;
  }
  #page-content-wrap #content .visible-xs .quickform .line3 a{color:#fff;text-decoration:none}

  /* Bottom sidebar — inset with page margin, not full-bleed */
  #page-content-wrap #sidebar-left{
    display:flex;
    flex-direction:column;
    background:#fff;
    padding:12px 0 28px;
    margin-left:0;
    margin-right:0;
    width:100%!important;
    max-width:100%;
  }
  /* Mobile bottom order: BA → banners → doctor → TRUSTED */
  #page-content-wrap #sidebar-left .rgv-side-form{order:0}
  #page-content-wrap #sidebar-left .rgv-side-ba{order:1}
  #page-content-wrap #sidebar-left .rgv-side-banners{order:2}
  #page-content-wrap #sidebar-left .rgv-side-doctor{order:3}
  #page-content-wrap #sidebar-left .rgv-side-trusted{order:4}
  #page-content-wrap #sidebar-left #before-after{padding:0;margin-bottom:12px}

  /* Category tiles: 2-col grid, 5th centered, equal size */
  #sidebar-left .sidebar-inner,
  #sidebar-left .sidebar-inner.rgv-side-banners,
  .rgv-post-sidebar-col .sidebar-inner{
    display:flex!important;
    flex-wrap:wrap;
    justify-content:center;
    align-items:stretch;
    gap:3px;
    font-size:0;
    text-align:center;
    margin:0;
    padding:0;
  }
  #sidebar-left .sidebar-inner .special-link-block,
  #sidebar-left .sidebar-inner a.special-link-block,
  #sidebar-left .sidebar-inner a.special-link-block.col-xs-12,
  #sidebar-left .sidebar-inner a.special-link-block.col-md-12,
  .rgv-post-sidebar-col .sidebar-inner .special-link-block,
  .rgv-post-sidebar-col .sidebar-inner a.special-link-block.col-xs-12{
    position:relative;
    display:block!important;
    flex:0 0 calc(50% - 1.5px);
    width:calc(50% - 1.5px)!important;
    max-width:calc(50% - 1.5px)!important;
    vertical-align:top;
    margin:0!important;
    padding:0!important;
    float:none!important;
    left:auto!important;
    right:auto!important;
    overflow:hidden;
    border:0!important;
    background:transparent!important;
    box-sizing:border-box;
    aspect-ratio:3 / 4;
  }
  #sidebar-left .sidebar-inner .special-link-block:last-child,
  .rgv-post-sidebar-col .sidebar-inner .special-link-block:last-child{
    /* Same half-width as siblings; flex parent centers the orphan row */
    flex:0 0 calc(50% - 1.5px);
    width:calc(50% - 1.5px)!important;
    max-width:calc(50% - 1.5px)!important;
    margin:0!important;
  }
  #sidebar-left .special-link-block img,
  #sidebar-left .sidebar-inner .special-link-block img,
  .rgv-post-sidebar-col .special-link-block img{
    display:block;
    width:100%!important;
    height:100%!important;
    object-fit:cover;
    border:0!important;
  }
  /* Dark left strip + vertical label */
  #sidebar-left .special-link-block .line2.fsize22,
  #sidebar-left .sidebar-inner .special-link-block .line2.fsize22,
  .special-link-block .line2.fsize22,
  .special-link-block .fsize22{
    position:absolute!important;
    z-index:8;
    top:0!important;
    bottom:0!important;
    left:0!important;
    right:auto!important;
    width:auto;
    min-width:36px;
    margin:0;
    padding:12px 8px;
    background:rgba(0,0,0,.45);
    color:#fff!important;
    font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size:28px!important;
    font-weight:300!important;
    letter-spacing:3px;
    line-height:1em!important;
    text-align:center;
    text-transform:uppercase;
    writing-mode:vertical-lr;
    -webkit-writing-mode:vertical-lr;
    transform:rotate(180deg);
    box-sizing:border-box;
  }
  #sidebar-left .sidebar-inner .special-link-block:last-child .line2.fsize22,
  .sidebar-inner .special-link-block:last-child .line2.fsize22{
    left:0!important;
    font-size:28px!important;
    padding:12px 8px;
  }

  #sidebar-left .mob-doctor{
    padding:18px 8px 0;
    text-align:center;
  }
  #sidebar-left .mob-doctor h3{
    color:#2e3192;
    font-size:22px;
    font-weight:500;
    letter-spacing:2px;
    margin:20px 0 16px;
  }
  #sidebar-left .mob-doctor > p{margin:0 0 14px;text-align:center}
  #sidebar-left .mob-doctor > p.visible-xs{
    display:block!important;
    text-align:center;
    font-size:15px;
    line-height:1.55;
    color:#000;
    padding:0 4px;
  }
  #sidebar-left .mob-doctor > p img{
    display:block;
    margin:0 auto;
    max-width:275px;
    width:100%;
    height:auto;
  }
  #sidebar-left .rgv-trusted{
    padding:8px 8px 20px;
    background:#fff;
  }

  /* GET SOCIAL + footer stay edge-to-edge (outside content gutters) */
  .social-icons.social-icons-mobile,
  #footer{
    width:100%;
    max-width:none;
    margin-left:0;
    margin-right:0;
  }
}
/* Sidebar / mobile consult — partial by default, full on .expanded (hover) */
#sidebar-left .quickform .rgv-extra,
#content .visible-xs .quickform .rgv-extra,
.quickform:not(.expanded) .rgv-extra{display:none!important}
#sidebar-left .quickform.expanded .rgv-extra,
#content .visible-xs .quickform.expanded .rgv-extra,
.quickform.expanded .rgv-extra{display:block!important}
#sidebar-left .quickform.expanded .rgv-extra input,
#sidebar-left .quickform.expanded .rgv-extra select,
#sidebar-left .quickform.expanded .rgv-extra textarea,
#content .visible-xs .quickform.expanded .rgv-extra input,
#content .visible-xs .quickform.expanded .rgv-extra select,
#content .visible-xs .quickform.expanded .rgv-extra textarea{display:block!important}

#sidebar-left .quickform input[type=email],
#sidebar-left .quickform input[type=text],
#sidebar-left .quickform select,
#sidebar-left .quickform textarea,
#content .visible-xs .quickform input,
#content .visible-xs .quickform input[type=text],
#content .visible-xs .quickform input[type=email],
.quickform input[type=text],
.quickform input[type=email],
.quickform textarea{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  caret-color:#fff;
  background:rgba(88,88,90,.55)!important;
  border:solid 2px #fff!important;
  border-radius:0;
  box-shadow:none;
  width:100%;
  margin:0 0 4px;
  padding:4px 8px;
  font-size:16px;
  text-transform:uppercase;
}
/* Placeholders must be separate rules — mixed vendor selectors drop the whole block */
.quickform input::placeholder,
.quickform textarea::placeholder{
  color:#fff!important;
  opacity:1!important;
}
.quickform input::-webkit-input-placeholder,
.quickform textarea::-webkit-input-placeholder{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
}
.quickform input::-moz-placeholder,
.quickform textarea::-moz-placeholder{
  color:#fff!important;
  opacity:1!important;
}
.quickform input:-ms-input-placeholder,
.quickform textarea:-ms-input-placeholder{
  color:#fff!important;
  opacity:1!important;
}
#content .visible-xs .quickform input::placeholder,
#sidebar-left .quickform input::placeholder{
  color:#fff!important;
  opacity:1!important;
}
#content .visible-xs .quickform input::-webkit-input-placeholder,
#sidebar-left .quickform input::-webkit-input-placeholder{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
}
#sidebar-left .quickform select{color:#fff}
#sidebar-left .quickform select option{color:#111;background:#fff}
#sidebar-left .quickform input[type=submit],
#sidebar-left .quickform button[type=submit],
#content .visible-xs .quickform input[type=submit]{background:0 0;border:0;color:#fff;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:18px;height:33px;line-height:1;text-align:center;text-transform:uppercase;width:100%;cursor:pointer}
#sidebar-left .rgv-form-status,
#content .visible-xs .rgv-form-status{color:#fff;padding:0 12px 8px;font-size:13px;text-align:center}
#sidebar-left .rgv-honeypot,
#content .visible-xs .rgv-honeypot{position:absolute;left:-9999px;height:0;overflow:hidden}

/* Category banners — shared desktop (pages + posts): edge-to-edge image + vertical label */
@media (min-width:768px){
  #sidebar-left .special-link-block,
  #sidebar-left a.special-link-block.col-md-12,
  #sidebar-left a.special-link-block.col-xs-12{
    position:relative;
    display:block;
    float:none!important;
    width:auto!important;
    max-width:100%;
    left:auto!important;
    right:auto!important;
    box-sizing:border-box;
    border:0;
    background:transparent;
    text-align:center;
    padding:0!important;
    margin:0 0 10px;
    overflow:hidden;
    text-decoration:none;
    color:#000;
    font-size:18px;
    text-transform:uppercase;
  }
  #sidebar-left .special-link-block img{
    display:block;
    width:100%;
    height:auto;
    margin:0 auto;
    border:0;
  }
  #sidebar-left .special-link-block .line2.fsize22,
  #sidebar-left .special-link-block .fsize22{
    position:absolute;
    z-index:8;
    top:0;
    bottom:0;
    left:0;
    right:auto;
    width:auto;
    min-width:48px;
    margin:0;
    padding:16px 10px;
    box-sizing:border-box;
    background:rgba(0,0,0,.45);
    color:#fff!important;
    font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size:48px;
    font-weight:300;
    letter-spacing:4px;
    line-height:1em;
    text-align:center;
    text-transform:uppercase;
    writing-mode:vertical-lr;
    -webkit-writing-mode:vertical-lr;
    transform:rotate(180deg);
  }

  /* Post sidebar only (desktop) — teal double frame + white mat */
  .rgv-post-sidebar-col .special-link-block,
  .rgv-single-post #sidebar-left .special-link-block,
  body.single-post #sidebar-left .special-link-block,
  body.single #sidebar-left.rgv-post-sidebar-col .special-link-block{
    border:solid 1px #1a8089;
    background:#fff;
    padding:8px!important;
    margin:8px 12px 16px;
  }
  .rgv-post-sidebar-col .special-link-block img,
  .rgv-single-post #sidebar-left .special-link-block img,
  body.single-post #sidebar-left .special-link-block img{
    border:solid 1px #1a8089;
  }
  .rgv-post-sidebar-col .special-link-block .line2.fsize22,
  .rgv-post-sidebar-col .special-link-block .fsize22,
  .rgv-single-post #sidebar-left .special-link-block .line2.fsize22,
  .rgv-single-post #sidebar-left .special-link-block .fsize22,
  body.single-post #sidebar-left .special-link-block .line2.fsize22,
  body.single-post #sidebar-left .special-link-block .fsize22{
    top:8px;
    bottom:8px;
    left:8px;
  }
}

/* Mobile: force 2-up grid (beats Bootstrap col-xs-12 + any later rules) */
@media (max-width:767px){
  #sidebar-left .sidebar-inner,
  #sidebar-left .sidebar-inner.rgv-side-banners,
  .rgv-post-sidebar-col .sidebar-inner{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    align-items:stretch;
    gap:3px;
  }
  #sidebar-left .sidebar-inner > .special-link-block,
  #sidebar-left .sidebar-inner > a.special-link-block,
  #sidebar-left .sidebar-inner > a.col-xs-12.special-link-block,
  #sidebar-left .sidebar-inner > a.col-md-12.special-link-block,
  .rgv-post-sidebar-col .sidebar-inner > a.special-link-block{
    flex:0 0 calc(50% - 1.5px)!important;
    width:calc(50% - 1.5px)!important;
    max-width:calc(50% - 1.5px)!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    float:none!important;
    display:block!important;
    aspect-ratio:3 / 4;
    overflow:hidden;
  }
  #sidebar-left .sidebar-inner > .special-link-block img,
  .rgv-post-sidebar-col .sidebar-inner > a.special-link-block img{
    width:100%!important;
    height:100%!important;
    object-fit:cover;
    border:0!important;
  }
  #sidebar-left .sidebar-inner > .special-link-block .line2.fsize22,
  #sidebar-left .sidebar-inner > .special-link-block .fsize22{
    top:0!important;
    bottom:0!important;
    left:0!important;
  }
}

#sidebar-left .mob-doctor{position:relative;text-align:center;margin-bottom:8px}
#sidebar-left .mob-doctor h3{color:#2e3192;font-size:23px;letter-spacing:1px;margin:16px 0 8px}
#sidebar-left .mob-doctor > p{margin:0 0 10px}
#sidebar-left .mob-doctor > p img{display:block;margin:0 auto;max-width:100%;height:auto}

/* DR. RODRIGUEZ + TRUSTED — match reference: button, title, 3×3×1 logo grid */
.rgv-trusted,
#sidebar-left .rgv-trusted{
  text-align:center;
  clear:both;
  padding:8px 0 12px;
}
.rgv-trusted-title,
#sidebar-left .rgv-trusted-title,
#sidebar-left .textwidget > p.text-center{
  display:block;
  margin:22px 0 14px!important;
  padding:0;
  clear:both;
  text-align:center;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:18px;
  font-weight:500;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#000;
  line-height:1.2;
}

.innerlogo,
#sidebar-left .innerlogo,
.col-xs-12.text-center.no-padding.innerlogo{
  text-align:center;
  margin:0 auto 8px;
  padding:4px 6px 12px!important;
  clear:both;
  float:none;
  width:100%;
  max-width:100%;
}
.innerlogo > ul,
#sidebar-left .innerlogo > ul{
  list-style:none!important;
  margin:0 0 14px!important;
  padding:0!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  justify-content:center;
  align-items:center;
  gap:10px 8px;
  width:100%;
}
.innerlogo > ul:last-child,
.innerlogo > ul.rgv-trusted-row--single{margin-bottom:0!important}
.innerlogo > ul > li,
#sidebar-left .innerlogo > ul > li{
  list-style:none!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  flex:1 1 0;
  width:auto;
  max-width:33.33%;
  margin:0!important;
  padding:4px 2px!important;
}
/* Flatten legacy nested <ul> used on archived HTML */
.innerlogo > ul > li > ul{
  display:flex!important;
  justify-content:center;
  width:100%;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.innerlogo > ul > li > ul > li{
  flex:0 1 auto;
  max-width:100%;
  width:auto;
  padding:0!important;
}
.innerlogo > ul.rgv-trusted-row--single > li,
.innerlogo > ul:last-child > li:only-child{
  flex:0 1 auto;
  max-width:78%;
}
.innerlogo img,
#sidebar-left .innerlogo img{
  display:block;
  margin:0 auto;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:88px;
}
.innerlogo > ul:nth-child(1) img,
.innerlogo > ul:first-child li img{max-height:92px!important;width:auto!important}
.innerlogo > ul:nth-child(2) img,
.innerlogo > ul:nth-child(2) li img{max-height:88px!important;width:auto!important}
.innerlogo > ul:nth-child(3) img,
.innerlogo > ul.rgv-trusted-row--single img,
.innerlogo > ul:nth-child(3) li img{max-height:48px!important;width:auto!important}

/* Hide archived decorative button image — use CSS-styled DR. RODRIGUEZ link */
.mob-doctor img[src*="sidebardoc-button"],
#sidebar-left .mob-doctor img[src*="sidebardoc-button"]{display:none!important}

/* Prefer local webp backgrounds when available */
#doctor{background-image:url(/wp-content/uploads/doctor-bg-op.webp)!important}

/* DR. RODRIGUEZ on homepage — styled via homepage Custom HTML / #doctor rules.
   Keep sidebar / trusted CTAs with the double-border look below. */
.drtitle-divsion{
  text-align:center;
}

/* Sidebar Meet the Doctor — same centered CTA (double border like reference) */
#sidebar-left .mob-doctor .side-button,
.mob-doctor .side-button,
.rgv-trusted .side-button,
#sidebar-left .rgv-trusted .side-button,
p.side-button{
  margin:18px auto 0;
  text-align:center;
  clear:both;
}
#sidebar-left .mob-doctor .side-button a,
.mob-doctor .side-button a,
.rgv-trusted .side-button a,
#sidebar-left .rgv-trusted .side-button a,
p.side-button a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  box-sizing:border-box;
  width:275px;
  max-width:100%;
  height:56px;
  min-height:56px;
  padding:0 16px!important;
  margin:0 auto;
  background:#6e6e70!important;
  color:#fff!important;
  text-decoration:none!important;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  font-weight:500;
  line-height:1!important;
  border:2px solid #2e3192!important;
  box-shadow:inset 0 0 0 4px #fff!important;
  border-radius:0!important;
}

/* GET SOCIAL — desktop: heading + icons in one row */
.social-icons.social-icons-mobile{
  background:linear-gradient(180deg,#171717 0%,#5a5a5a 100%);
  text-align:center;
}
.social-icons .social-icon,
.social-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  height:auto;
  min-height:75px;
}
.social-icons ul{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:20px;
  list-style:none;
  margin:0;
  padding:12px 0;
  width:100%;
}
.social-icons ul li{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  padding:0!important;
  position:static!important;
  top:auto!important;
}
.social-icons ul li:first-child{
  color:#b1cfe3!important;
  font-size:28px!important;
  font-weight:700!important;
  letter-spacing:1px;
  text-transform:uppercase;
  line-height:1!important;
  top:0!important;
  position:relative!important;
}
.social-icons ul li img{width:44px;height:auto;display:block;border-radius:50%}
.social-icons .social-title{display:none}
.social-icons a.social-icons{display:inline-flex;line-height:0}

/* Mobile GET SOCIAL — match reference: title above, circular icons below */
@media(max-width:991px){
  .social-icons.social-icons-mobile{
    background:#4a4a4a!important;
    background-image:none!important;
    padding:18px 12px 28px!important;
    min-height:0!important;
  }
  .social-icons .social-icon,
  .social-icon{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:0!important;
    height:auto!important;
    padding:0!important;
  }
  .social-icons .social-title.visible-xs,
  .social-icons .social-title{
    display:block!important;
    color:#b1cfe3!important;
    font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size:28px!important;
    font-weight:700!important;
    letter-spacing:3px!important;
    text-transform:uppercase;
    text-align:center;
    margin:8px 0 22px!important;
    line-height:1.2;
  }
  /* Hide duplicate heading inside the <ul> on mobile */
  .social-icons ul li:first-child{
    display:none!important;
  }
  .social-icons ul{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:28px!important;
    padding:0!important;
    margin:0!important;
  }
  .social-icons ul li.icons{
    display:inline-flex!important;
    padding:0!important;
  }
  .social-icons ul li img{
    width:52px!important;
    height:52px!important;
    border-radius:50%!important;
    display:block;
  }
}

/* Before & After banner — center on mobile */
@media(max-width:767px){
  #before-after,
  #before-after .textwidget,
  #before-after .col-xs-12,
  #sidebar-left #before-after,
  .visible-xs #before-after{
    text-align:center!important;
    float:none!important;
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  #before-after p,
  #before-after .text-center{
    text-align:center!important;
    margin:0 auto 12px!important;
  }
  #before-after a{
    display:inline-block!important;
    margin:0 auto!important;
    float:none!important;
  }
  #before-after img{
    display:block!important;
    margin:0 auto!important;
    float:none!important;
    max-width:275px;
    width:100%;
    height:auto;
  }
}
#resources{background-image:url(/wp-content/uploads/doctor-footer.webp)!important}

/* Reviews + resources — local assets */
#review{
  background:url(/wp-content/themes/rgvcosmetic/images/testimonials.webp) center no-repeat;
  background-size:cover;
  margin-bottom:0;
  padding:20px 0 10px
}
#testimonials-wrap span.title{color:#fff;display:block;text-align:center;text-transform:uppercase;padding:4px 0;font-size:40px;font-weight:400;letter-spacing:3px;margin-top:30px;line-height:1}
#testimonials{position:relative;padding:28px 44px 36px;color:#fff;min-height:220px;font-size:16px;font-weight:300;line-height:22px;text-align:center;margin:40px 0;border:1px solid #fff}
#testimonials .testimonial{display:none;text-align:center}
#testimonials .testimonial.is-active{display:block}
#testimonials .testimonial .text{display:block;text-align:center;padding:0 8px}
#testimonials-wrap .read-more,
#testimonials .read-more{color:#fff;font-weight:600;text-decoration:none;position:relative;top:15px;font-size:20px;letter-spacing:2px;display:block;text-align:center;text-transform:uppercase}
#testimonials .prev,#testimonials .next{position:absolute;top:50%;transform:translateY(-50%);width:24px;height:40px;cursor:pointer;z-index:2}
#testimonials .prev{left:6px}
#testimonials .next{right:6px}
#testimonials .prev:after,#testimonials .next:after{content:"";display:block;position:absolute;top:50%;transform:translateY(-50%);width:20px;height:33px}
#testimonials .prev:after{background:url(/wp-content/themes/rgvcosmetic/images/left.webp) center no-repeat;left:0}
#testimonials .next:after{background:url(/wp-content/themes/rgvcosmetic/images/right.webp) center no-repeat;right:0;width:16px}
#review .before div{border:1px solid #fff;color:#fff;font-size:38px;text-transform:uppercase;padding:45px 0;line-height:35px;font-weight:300;letter-spacing:3px;margin-bottom:50px}
#review .before a{color:inherit;text-decoration:none}

#resources{
  background:url(/wp-content/uploads/doctor-footer.webp) center no-repeat;
  background-size:cover;
  padding:40px 0
}
#resources h2{color:#242424;font-weight:500;font-size:39px;margin:0 0 12px}
#resources ul{background:rgba(0,0,0,.6);padding:0;margin:0}
#resources li{padding:10px 0 15px 20px;list-style:none}
#resources li a{text-decoration:none;color:rgba(255,255,255,.7);font-weight:300}
#resources li a:hover{color:#fff}
#resources .content{background:rgba(0,0,0,.7);color:#fff;margin-top:100px;font-weight:300;padding:20px}
#resources .content span{float:right;font-style:italic}

body.page #page-wrap,
body.single #page-wrap,
body.single-post #page-wrap{background:#dfe8ef}
/* Inner pages still mount #toggleform for the scrolled tab; hide only on tiny screens below */

@media(max-width:767px){
  /* Mobile body is white (not #dfe8ef) */
  body,
  body.rgv-site,
  body.page #page-wrap,
  body.single #page-wrap,
  body.single-post #page-wrap,
  body.blog #page-wrap,
  body.archive #page-wrap,
  body.category #page-wrap,
  body.tag #page-wrap,
  body.author #page-wrap,
  body.search #page-wrap,
  body.error404 #page-wrap,
  #page-wrap,
  #page-content-wrap,
  #page-content-wrap.rgv-blog-index,
  #page-content-wrap.rgv-archive-index,
  #page-content-wrap.rgv-single-post{
    background:#fff!important;
  }
  #page-content-wrap .entry-content{margin-right:0}
  #testimonials-wrap span.title{font-size:28px}
  #review .before div{font-size:26px;padding:30px 0}
  #resources .content{margin-top:30px}
  #resources h2{font-size:28px}
}

/* —— Blog index (/blog/) — original Montserrat 14px / 1.6em / h1 2em weight 500 —— */
body.blog.rgv-site,
body.blog{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:17px;
  line-height:1.55em;
  color:#000;
}
body.blog #page-wrap{background:#dfe8ef}
#page-content-wrap.rgv-blog-index{
  width:100%;
  background:#dfe8ef;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6em;
  color:#000;
}
#page-content-wrap.rgv-blog-index .page-content.content-wrap,
#page-content-wrap.rgv-blog-index .content-wrap{padding-top:12px;padding-bottom:20px}
#page-content-wrap.rgv-blog-index #content{position:relative;padding-top:12px}
#page-content-wrap.rgv-blog-index .page-header{margin:0 0 12px}
#page-content-wrap.rgv-blog-index #crumbs{
  margin-bottom:18px;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6em;
  font-weight:400;
  color:#000;
}
#page-content-wrap.rgv-blog-index #crumbs a{
  color:#2e3192;
  text-decoration:underline;
  font-weight:400;
  font-size:16px;
}
#page-content-wrap.rgv-blog-index #crumbs .current{color:#000;font-weight:400}
/* Page heading — not a link; no underline on the word itself */
#page-content-wrap.rgv-blog-index h1.page-title{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:2em;
  font-weight:500;
  color:#2e3192;
  text-transform:none;
  text-decoration:none;
  margin:0 0 5px;
  padding:0 0 10px;
  border-bottom:1px solid #c8c8c8;
  line-height:1.2em;
  letter-spacing:normal;
}
#page-content-wrap.rgv-blog-index article.post,
#page-content-wrap.rgv-blog-index article.type-post{
  margin:18px 0 0;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6em;
  color:#000;
}
#page-content-wrap.rgv-blog-index .entry-header{margin:0 0 6px}
/* Post title — uppercase link, weight 500, 2em of 14px base */
#page-content-wrap.rgv-blog-index h1.entry-title{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important;
  font-size:2em!important;
  font-weight:500!important;
  color:#2e3192;
  text-transform:uppercase;
  text-decoration:none;
  margin:0 0 8px!important;
  padding:0!important;
  border:0!important;
  line-height:1.2em;
  letter-spacing:normal;
}
#page-content-wrap.rgv-blog-index h1.entry-title a{
  font-family:inherit;
  font-size:inherit;
  font-weight:inherit;
  color:#2e3192;
  text-decoration:underline;
  text-transform:uppercase;
}
#page-content-wrap.rgv-blog-index h1.entry-title a:hover{color:#1a1c6e}
#page-content-wrap.rgv-blog-index .entry-meta,
#page-content-wrap.rgv-blog-index .entry-meta .sep,
#page-content-wrap.rgv-blog-index .entry-meta .by-author{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6em;
  font-weight:400;
  color:#000;
}
#page-content-wrap.rgv-blog-index .entry-meta{margin:0 0 10px}
#page-content-wrap.rgv-blog-index .entry-meta a{
  color:#2e3192;
  text-decoration:underline;
  font-weight:400;
}
#page-content-wrap.rgv-blog-index .entry-meta a:hover{color:#1a1c6e}
#page-content-wrap.rgv-blog-index .entry-summary,
#page-content-wrap.rgv-blog-index .entry-summary p{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.6em!important;
  color:#000!important;
  margin:0 0 10px;
}
#page-content-wrap.rgv-blog-index footer.entry-meta{
  margin:0 0 4px;
  padding:0;
  border:0;
  font-size:16px;
  line-height:1.6em;
}
#page-content-wrap.rgv-blog-index article.post > hr{
  border:0;
  border-top:1px solid #c8c8c8;
  margin:8px 0 0;
}
#page-content-wrap.rgv-blog-index article.post > br{display:block;content:"";margin-bottom:8px}
/* Pagination — blog + archives: centered in content, boxed, slightly larger */
#page-content-wrap.rgv-blog-index .navigation.pagination,
#page-content-wrap.rgv-archive-index .navigation.pagination,
nav.navigation.pagination{
  display:block;
  margin:28px 0 32px;
  clear:both;
  text-align:center;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.4;
}
#page-content-wrap.rgv-blog-index .navigation.pagination .nav-links,
#page-content-wrap.rgv-archive-index .navigation.pagination .nav-links,
nav.navigation.pagination .nav-links{
  display:inline-flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:6px;
}
#page-content-wrap.rgv-blog-index .navigation.pagination .page-numbers,
#page-content-wrap.rgv-archive-index .navigation.pagination .page-numbers,
nav.navigation.pagination .page-numbers,
nav.navigation.pagination span.page-numbers,
nav.navigation.pagination a.page-numbers{
  display:inline-block;
  box-sizing:border-box;
  min-width:36px;
  min-height:36px;
  padding:8px 12px;
  margin:0;
  border:1px solid #ccc;
  border-radius:0!important;
  background:#fff;
  color:#555;
  text-align:center;
  text-decoration:none;
  font-size:16px;
  font-weight:400;
  line-height:1.25;
  vertical-align:middle;
}
#page-content-wrap.rgv-blog-index .navigation.pagination a.page-numbers:hover,
#page-content-wrap.rgv-archive-index .navigation.pagination a.page-numbers:hover,
nav.navigation.pagination a.page-numbers:hover{
  color:#2e3192;
  border-color:#2e3192;
}
#page-content-wrap.rgv-blog-index .navigation.pagination .page-numbers.current,
#page-content-wrap.rgv-archive-index .navigation.pagination .page-numbers.current,
nav.navigation.pagination .page-numbers.current{
  color:#000;
  font-weight:600;
  text-decoration:none;
  background:#f7f7f7;
}
#page-content-wrap.rgv-blog-index .navigation.pagination .page-numbers.dots,
#page-content-wrap.rgv-archive-index .navigation.pagination .page-numbers.dots,
nav.navigation.pagination .page-numbers.dots{
  border-color:#ccc;
  min-width:36px;
}
#page-content-wrap.rgv-blog-index .navigation.pagination .next.page-numbers,
#page-content-wrap.rgv-archive-index .navigation.pagination .next.page-numbers,
nav.navigation.pagination .next.page-numbers,
#page-content-wrap.rgv-blog-index .navigation.pagination .prev.page-numbers,
nav.navigation.pagination .prev.page-numbers{
  min-width:auto;
  padding:8px 14px;
}
@media(max-width:767px){
  #page-content-wrap.rgv-blog-index h1.page-title,
  #page-content-wrap.rgv-blog-index h1.entry-title{font-size:1.5em!important}
}

/* 404 — larger eyebrow/body copy; brand blue #2e3192 */
.lucky-error-404__eyebrow{
  font-size:1.25rem!important;
  line-height:1.4;
  color:#2e3192!important;
}
.lucky-error-404__text{
  font-size:1.2rem!important;
  line-height:1.55;
  color:#444;
}
.lucky-error-404__button{
  background:#2e3192!important;
  color:#fff!important;
  text-decoration:underline;
}
.lucky-error-404__button:hover{
  background:#1a1c6e!important;
  color:#fff!important;
}


/* 404: avoid double top padding (page-wrap 72px + lucky-site-main 72px) */
body.error404 .lucky-site-main{
  padding-top:28px;
  padding-bottom:48px;
}
body.error404 .lucky-error-404{
  padding-top:24px;
  padding-bottom:48px;
}

