/*
Theme Name: Smiles of Chattanooga Divi Child
Theme URI: https://smilechattanooga.com/
Description: Divi child theme and editable Divi page importer for Smiles of Chattanooga redesign. Requires the Divi parent theme.
Author: BrownBear IT
Template: Divi
Version: 1.0.8
License: GPL-2.0-or-later
Text Domain: smiles-divi-child
*/

:root{
  --soc-navy:#12394d;
  --soc-blue:#1f6f88;
  --soc-teal:#3fa6a0;
  --soc-soft-teal:#e2f2f0;
  --soc-gold:#d9a53f;
  --soc-gold-dark:#9b681a;
  --soc-cream:#fbf7ef;
  --soc-soft:#f3faf9;
  --soc-text:#263f4a;
  --soc-muted:#627680;
  --soc-border:#d7e7e8;
  --soc-white:#fff;
  --soc-shadow:0 16px 36px rgba(18,57,77,.13);
}

body{font-size:17px;line-height:1.65;color:var(--soc-text)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--soc-gold)!important;outline-offset:4px;border-radius:6px}
.soc-btn,.et_pb_button.soc-btn{background:var(--soc-gold)!important;color:#1f2e35!important;border:2px solid var(--soc-gold)!important;border-radius:3px!important;text-transform:uppercase;font-weight:900;letter-spacing:.04em;box-shadow:0 9px 18px rgba(217,165,63,.25)}
.soc-btn-blue,.et_pb_button.soc-btn-blue{background:var(--soc-blue)!important;color:#fff!important;border-color:var(--soc-blue)!important}
.soc-section-title{text-align:center;max-width:850px;margin:0 auto 42px}
.soc-kicker{display:inline-block;color:var(--soc-gold-dark);text-transform:uppercase;font-weight:900;letter-spacing:.12em;font-size:13px;margin-bottom:10px}
.soc-section-title h2,.soc-heading{font-family:Georgia,'Times New Roman',serif!important;color:var(--soc-navy);line-height:1.15}
.soc-section-title p{color:var(--soc-muted);font-size:18px;margin:0}
.soc-card{background:#fff;border:1px solid var(--soc-border);border-radius:18px;box-shadow:0 8px 22px rgba(18,57,77,.10);padding:28px;height:100%}
.soc-card h3{font-size:24px;color:var(--soc-navy);margin:0 0 14px}.soc-card p{color:var(--soc-muted)}
.soc-icon{width:66px;height:66px;border-radius:50%;background:var(--soc-soft-teal);display:grid;place-items:center;font-size:32px;margin:0 auto 14px}.soc-card-left .soc-icon{margin-left:0}
.soc-hero-copy h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(38px,5vw,64px);line-height:1.04;color:#fff!important;text-shadow:0 2px 15px rgba(0,0,0,.28)}
.soc-hero-copy p{font-size:20px;color:#f7fbfb}.soc-eyebrow{display:inline-block;background:rgba(217,165,63,.96);color:#1f2e35;padding:8px 12px;border-radius:3px;text-transform:uppercase;font-weight:900;font-size:13px;letter-spacing:.08em;margin-bottom:14px}
.soc-quick-card{text-align:center;background:#fff;border:1px solid var(--soc-border);border-radius:12px;box-shadow:var(--soc-shadow);padding:24px;min-height:145px}.soc-quick-card strong{display:block;color:var(--soc-navy);text-transform:uppercase;letter-spacing:.04em;font-size:15px}.soc-quick-card .soc-icon{margin-left:auto;margin-right:auto}
.soc-testimonial{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:20px;min-height:215px;color:#fff}.soc-testimonial p{color:rgba(255,255,255,.93);font-size:15.5px}.soc-stars{color:var(--soc-gold);letter-spacing:1px;font-weight:900;margin-bottom:10px}
.soc-service-link{background:#fff;border:1px solid var(--soc-border);border-left:5px solid var(--soc-teal);border-radius:12px;padding:16px 18px;box-shadow:0 8px 22px rgba(18,57,77,.08);display:block;color:var(--soc-text)}.soc-service-link strong{display:block;color:var(--soc-navy)}.soc-service-link span{font-size:14px;color:var(--soc-muted)}
.soc-doctor-card{background:#fff;border:1px solid var(--soc-border);border-radius:18px;padding:20px;display:grid;grid-template-columns:118px 1fr;gap:18px;align-items:center;box-shadow:0 8px 22px rgba(18,57,77,.09)}.soc-doctor-card img{width:118px;height:118px;border-radius:50%;object-fit:cover;border:3px solid var(--soc-teal)}.soc-doctor-card h3{color:var(--soc-navy);margin:0 0 8px}.soc-doctor-card p{color:var(--soc-muted);margin:0}
.soc-page-hero h1{font-family:Georgia,'Times New Roman',serif!important;color:#fff!important;font-size:clamp(40px,5vw,62px);line-height:1.1}.soc-page-hero p{font-size:20px;color:#fff;max-width:720px}
.soc-contact-label label{font-weight:900;color:var(--soc-navy)}
@media(max-width:767px){.soc-doctor-card{grid-template-columns:88px 1fr}.soc-doctor-card img{width:88px;height:88px}.soc-hero-copy h1{font-size:36px}.soc-hero-copy p{font-size:18px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}


/* v1.0.1 custom hero slider: prevents raw nested Divi slide shortcode text from appearing. */
.soc-custom-hero{position:relative;overflow:hidden;background:var(--soc-navy);margin:0;padding:0!important}
.soc-custom-hero-stage{position:relative;min-height:610px;overflow:hidden}
.soc-custom-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 900ms ease, visibility 900ms ease}
.soc-custom-slide.is-active{opacity:1;visibility:visible;z-index:1}
.soc-custom-slide img{width:100%;height:610px;object-fit:cover;object-position:center;display:block}
.soc-custom-copy{position:absolute;z-index:4;left:calc((100% - min(1170px,calc(100% - 36px)))/2);top:225px;width:min(570px,calc(100% - 36px));color:#fff;text-shadow:0 2px 15px rgba(0,0,0,.28)}
.soc-custom-copy h1{font-family:Georgia,'Times New Roman',serif!important;color:#fff!important;font-size:clamp(38px,5vw,64px);line-height:1.04;margin:0 0 16px!important}
.soc-custom-copy p{font-size:20px;line-height:1.55;color:#f7fbfb;margin:0 0 24px;max-width:540px}.soc-custom-ctas{display:flex;gap:12px;flex-wrap:wrap}
.soc-custom-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border-radius:3px;text-decoration:none;text-transform:uppercase;letter-spacing:.04em;font-weight:900;font-size:14px;line-height:1.15;border:2px solid transparent;transition:.18s ease}
.soc-custom-btn-primary{background:var(--soc-gold);color:#1f2e35!important;box-shadow:0 9px 18px rgba(217,165,63,.25)}
.soc-custom-btn-blue{background:var(--soc-blue);color:#fff!important}.soc-custom-btn:hover{transform:translateY(-1px)}
.soc-custom-slider-controls{position:absolute;z-index:5;left:calc((100% - min(1170px,calc(100% - 36px)))/2);bottom:30px;display:flex;align-items:center;gap:10px}.soc-custom-dot{width:13px;height:13px;border-radius:50%;border:2px solid #fff;background:rgba(255,255,255,.2);cursor:pointer;padding:0}.soc-custom-dot.is-active{background:var(--soc-gold);border-color:var(--soc-gold)}.soc-custom-toggle{margin-left:6px;min-height:36px;padding:8px 12px;border:1px solid rgba(255,255,255,.6);background:rgba(18,57,77,.62);color:#fff;border-radius:3px;font-weight:800;cursor:pointer}

/* v1.0.1 scroll reveal fade-in */
.soc-reveal{opacity:0;transform:translateY(28px);transition:opacity 700ms ease, transform 700ms ease;will-change:opacity,transform}.soc-reveal.soc-reveal-visible{opacity:1;transform:none}.soc-reveal:nth-child(2){transition-delay:80ms}.soc-reveal:nth-child(3){transition-delay:140ms}.soc-reveal:nth-child(4){transition-delay:200ms}
@media(max-width:980px){.soc-custom-hero-stage,.soc-custom-slide img{min-height:560px;height:560px}.soc-custom-copy{top:215px}}
@media(max-width:767px){.soc-custom-hero-stage,.soc-custom-slide img{min-height:610px;height:610px}.soc-custom-slide img{object-position:center right}.soc-custom-copy{top:245px;left:14px;width:calc(100% - 28px)}.soc-custom-copy h1{font-size:36px}.soc-custom-copy p{font-size:18px}.soc-custom-slider-controls{left:14px;bottom:20px}}
@media(prefers-reduced-motion:reduce){.soc-custom-slide,.soc-reveal{transition:none!important}.soc-reveal{opacity:1!important;transform:none!important}.soc-custom-btn:hover{transform:none!important}}


/* v1.0.2 custom child-theme header/nav/footer override */
.soc-shell{width:min(1170px,calc(100% - 36px));margin:0 auto}
.soc-skip-link{position:absolute;top:-80px;left:16px;background:var(--soc-navy);color:#fff!important;padding:12px 16px;border-radius:999px;z-index:10000;font-weight:800}
.soc-skip-link:focus{top:16px}
.soc-topbar{background:var(--soc-navy);color:#fff;font-size:14px}
.soc-topbar .soc-shell{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.soc-topbar a{color:#fff!important;text-decoration:none;font-weight:700}
.soc-topbar-left{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.soc-topbar-socials{display:flex;gap:8px}
.soc-topbar-socials a{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.15);display:grid;place-items:center}
.soc-site-header{background:#fff;border-bottom:1px solid var(--soc-border)}
.soc-masthead{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.soc-logo-link{display:inline-flex;align-items:center;text-decoration:none}
.soc-logo-link img{width:300px;max-width:100%;height:auto}
.soc-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.soc-phone-block{text-align:right;color:var(--soc-muted);font-size:13px;line-height:1.25}
.soc-phone-block a{display:block;color:var(--soc-navy)!important;font-size:22px;font-weight:900;text-decoration:none}
.soc-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border-radius:3px;background:var(--soc-gold);color:#1f2e35!important;text-decoration:none;text-transform:uppercase;letter-spacing:.04em;font-weight:900;font-size:14px;box-shadow:0 9px 18px rgba(217,165,63,.25)}
.soc-primary-nav{background:var(--soc-blue);position:sticky;top:0;z-index:900;box-shadow:0 8px 18px rgba(18,57,77,.14)}
.admin-bar .soc-primary-nav{top:32px}
.soc-menu{list-style:none!important;margin:0!important;padding:0!important;display:flex;align-items:center;justify-content:center;flex-wrap:wrap}
.soc-menu li{margin:0!important;padding:0!important}
.soc-menu a{display:block;color:#fff!important;text-decoration:none!important;padding:17px 14px;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}
.soc-menu a:hover,.soc-menu .current-menu-item>a{background:rgba(255,255,255,.16)}
#main-header,#top-header,#main-footer{display:none!important}
#page-container{padding-top:0!important;margin-top:0!important}
.et_fixed_nav.et_show_nav #page-container{padding-top:0!important}
.soc-site-footer{background:var(--soc-navy);color:#fff;padding:58px 0 28px}
.soc-site-footer a{color:#fff!important}
.soc-site-footer p,.soc-site-footer li{color:rgba(255,255,255,.84)}
.soc-footer-grid{display:grid;grid-template-columns:1.15fr .9fr .85fr .85fr;gap:28px}
.soc-site-footer h3{color:#fff;font-size:20px;margin-bottom:15px}
.soc-site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.soc-footer-logo{filter:brightness(0) invert(1);max-width:250px;margin-bottom:15px}
.soc-copyright{border-top:1px solid rgba(255,255,255,.16);margin-top:34px;padding-top:20px;color:rgba(255,255,255,.72);font-size:14px}
.soc-mobile-cta{display:none;position:fixed;bottom:0;left:0;right:0;z-index:999;background:#fff;border-top:1px solid var(--soc-border);padding:9px;grid-template-columns:1fr 1fr;gap:8px;box-shadow:0 -6px 18px rgba(18,57,77,.15)}
.soc-mobile-cta a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px;border-radius:3px;text-transform:uppercase;font-weight:900;text-decoration:none;font-size:13px}
.soc-mobile-cta a:first-child{background:var(--soc-blue);color:#fff!important}
.soc-mobile-cta a:last-child{background:var(--soc-gold);color:#1f2e35!important}

/* v1.0.2 repaired comprehensive-care section to match the HTML preview */
.soc-comprehensive-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:start}
.soc-comprehensive-copy>p{color:var(--soc-muted);font-size:18px;margin-bottom:22px}
.soc-mini-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.soc-doctor-stack{display:grid;gap:18px}
.soc-comprehensive-section .et_pb_text_inner{width:100%}
.soc-comprehensive-section .et_pb_row{max-width:1170px!important;width:min(1170px,calc(100% - 36px))!important}

@media(max-width:980px){
  .soc-masthead{align-items:flex-start;flex-direction:column;padding:18px 0}
  .soc-header-actions{width:100%;justify-content:space-between}
  .soc-phone-block{text-align:left}
  .soc-comprehensive-wrap{grid-template-columns:1fr}
  .soc-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:782px){
  .admin-bar .soc-primary-nav{top:46px}
}
@media(max-width:767px){
  body{padding-bottom:76px}
  .soc-shell{width:min(100% - 28px,1170px)}
  .soc-topbar .soc-shell{justify-content:center;text-align:center}
  .soc-topbar-left{justify-content:center}
  .soc-topbar-socials{display:none}
  .soc-logo-link img{width:245px}
  .soc-header-actions{display:none}
  .soc-primary-nav{position:static}
  .soc-menu{display:grid;grid-template-columns:1fr 1fr}
  .soc-menu a{text-align:center;padding:13px 8px;font-size:12px}
  .soc-mini-service-grid,.soc-footer-grid{grid-template-columns:1fr}
  .soc-mobile-cta{display:grid}
}


/* v1.0.3 slider crop + control placement fix */
.soc-custom-hero-stage{
  min-height:640px;
}
.soc-custom-slide img{
  height:640px;
  object-fit:cover;
  object-position:center top;
}
.soc-custom-slide:first-child img,
.soc-custom-slide:nth-child(2) img,
.soc-custom-slide:nth-child(3) img{
  object-position:center top;
}
.soc-custom-copy{
  top:250px;
  left:calc((100% - min(1170px,calc(100% - 36px)))/2);
  width:min(570px,calc(100% - 36px));
}
.soc-custom-slider-controls{
  left:calc((100% - min(1170px,calc(100% - 36px)))/2);
  bottom:36px;
  transform:none;
  background:rgba(18,57,77,.58);
  border:1px solid rgba(255,255,255,.24);
  backdrop-filter:blur(8px);
  border-radius:999px;
  padding:8px 10px;
}
.soc-custom-toggle{
  margin-left:10px;
  min-height:32px;
  padding:6px 12px;
  font-size:12px;
  border-radius:999px;
}
.soc-custom-dot{
  width:12px;
  height:12px;
}
@media(min-width:981px){
  .soc-custom-copy{
    top:255px;
  }
  .soc-custom-slider-controls{
    bottom:34px;
  }
}

/* v1.0.3 better doctor cards in Comprehensive Dental Care section */
.soc-doctor-stack-featured{
  gap:22px;
}
.soc-doctor-card-featured{
  display:grid!important;
  grid-template-columns:190px 1fr!important;
  gap:22px!important;
  padding:22px!important;
  align-items:stretch!important;
  min-height:230px;
}
.soc-doctor-image-wrap{
  width:100%;
  height:100%;
  min-height:190px;
  border-radius:16px;
  overflow:hidden;
  border:3px solid var(--soc-teal);
  background:var(--soc-soft-teal);
  box-shadow:0 8px 18px rgba(18,57,77,.12);
}
.soc-doctor-card-featured .soc-doctor-image-wrap img{
  width:100%!important;
  height:100%!important;
  min-height:190px;
  border:0!important;
  border-radius:0!important;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.soc-doctor-card-featured:first-child .soc-doctor-image-wrap img{
  object-position:58% center;
}
.soc-doctor-card-featured:nth-child(2) .soc-doctor-image-wrap img{
  object-position:60% center;
}
.soc-doctor-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.soc-doctor-label{
  display:inline-block;
  color:var(--soc-gold-dark);
  text-transform:uppercase;
  font-size:12px;
  font-weight:900;
  letter-spacing:.1em;
  margin-bottom:7px;
}
.soc-doctor-card-featured h3{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:28px;
  line-height:1.08;
  margin:0 0 10px!important;
}
.soc-doctor-card-featured p{
  font-size:15.5px;
  line-height:1.55;
  max-width:380px;
}
.soc-doctor-link{
  color:var(--soc-blue)!important;
  font-weight:900;
  text-decoration-thickness:2px;
  text-underline-offset:3px;
  margin-top:8px;
}

/* Divi Builder sometimes adds large default margins around text modules; keep this section tight. */
.soc-comprehensive-section .et_pb_text_inner p:last-child{
  padding-bottom:0;
}

@media(max-width:1200px){
  .soc-custom-copy{
    left:36px;
  }
  .soc-custom-slider-controls{
    left:36px;
  }
}
@media(max-width:980px){
  .soc-custom-hero-stage,
  .soc-custom-slide img{
    min-height:620px;
    height:620px;
  }
  .soc-custom-copy{
    top:245px;
    left:28px;
  }
  .soc-custom-slider-controls{
    left:28px;
    bottom:24px;
  }
  .soc-doctor-card-featured{
    grid-template-columns:170px 1fr!important;
  }
}
@media(max-width:767px){
  .soc-custom-hero-stage,
  .soc-custom-slide img{
    min-height:680px;
    height:680px;
  }
  .soc-custom-slide img{
    object-position:57% top;
  }
  .soc-custom-copy{
    top:275px;
    left:14px;
    width:calc(100% - 28px);
  }
  .soc-custom-slider-controls{
    left:14px;
    bottom:18px;
  }
  .soc-doctor-card-featured{
    grid-template-columns:1fr!important;
    min-height:0;
  }
  .soc-doctor-image-wrap{
    min-height:260px;
    height:260px;
  }
  .soc-doctor-card-featured .soc-doctor-image-wrap img{
    min-height:260px;
  }
}


/* v1.0.4 accessibility hardening toward WCAG 2.2 AA + WCAG 3 draft-aware usability */
.soc-sr-only,
.screen-reader-text{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.soc-sr-only:focus,
.screen-reader-text:focus{
  position:fixed!important;
  top:12px!important;
  left:12px!important;
  width:auto!important;
  height:auto!important;
  clip:auto!important;
  white-space:normal!important;
  z-index:100000!important;
  background:var(--soc-navy)!important;
  color:#fff!important;
  padding:12px 16px!important;
  border-radius:6px!important;
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible,
.et_pb_button:focus-visible,
.soc-custom-btn:focus-visible,
.soc-header-cta:focus-visible,
.soc-menu a:focus-visible,
.soc-mobile-cta a:focus-visible{
  outline:4px solid #f2c14e!important;
  outline-offset:4px!important;
  box-shadow:0 0 0 2px #12394d!important;
}
.soc-menu a,
.soc-header-cta,
.soc-custom-btn,
.soc-custom-toggle,
.soc-custom-dot,
.soc-mobile-cta a,
.et_pb_button,
button,
input,
select,
textarea{
  min-height:44px;
}
.soc-custom-dot{
  min-width:44px!important;
  min-height:44px!important;
  border-radius:999px!important;
  position:relative;
  background:transparent!important;
}
.soc-custom-dot::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:13px;
  height:13px;
  border-radius:50%;
  border:2px solid #fff;
  background:rgba(255,255,255,.25);
}
.soc-custom-dot.is-active::after{
  background:var(--soc-gold);
  border-color:var(--soc-gold);
}
.soc-custom-slider-controls{
  gap:2px;
}
.soc-custom-toggle{
  min-width:72px;
}
.soc-custom-copy p,
.soc-card p,
.soc-service-link span,
.soc-doctor-card-featured p,
.soc-section-title p{
  color:#526b76;
}
.soc-custom-copy p{
  color:#fff;
}
.soc-testimonial p{
  color:#fff;
}
.soc-contact-label input,
.soc-contact-label textarea,
.soc-contact-label select,
.et_pb_contact_field input,
.et_pb_contact_field textarea{
  border:2px solid #7ea6af!important;
  color:var(--soc-text)!important;
}
.et_pb_contact_field input:focus,
.et_pb_contact_field textarea:focus{
  border-color:var(--soc-blue)!important;
}
.et_pb_contact p input,
.et_pb_contact p textarea{
  font-size:17px;
}
.soc-custom-hero a:not(.soc-custom-btn),
.soc-site-footer a,
.soc-topbar a{
  text-decoration:underline;
  text-underline-offset:3px;
}
.soc-site-footer a:hover,
.soc-site-footer a:focus-visible,
.soc-topbar a:hover,
.soc-topbar a:focus-visible{
  text-decoration-thickness:3px;
}
.soc-custom-slide[aria-hidden="true"] a,
.soc-custom-slide[aria-hidden="true"] button{
  visibility:hidden;
}
@media (prefers-reduced-motion: reduce){
  .soc-custom-slide{transition:none!important}
  .soc-custom-hero-stage{scroll-behavior:auto!important}
}
@media(max-width:767px){
  .soc-menu a{
    min-height:48px;
  }
  .soc-custom-slider-controls{
    padding:6px 8px;
  }
}


/* v1.0.5 hero control reposition + smaller controls */
@media(min-width:981px){
  .soc-custom-copy{
    width:min(520px, calc(100% - 36px));
  }
  .soc-custom-copy .soc-custom-actions{
    padding-bottom:28px;
  }
  .soc-custom-slider-controls{
    left:max(28px, calc((100% - min(1170px,calc(100% - 36px)))/2) + 8px);
    bottom:26px;
    padding:6px 8px;
    gap:0;
    background:rgba(18,57,77,.52);
  }
  .soc-custom-dot{
    min-width:32px !important;
    min-height:32px !important;
    width:32px;
    height:32px;
  }
  .soc-custom-dot::after{
    width:10px;
    height:10px;
  }
  .soc-custom-toggle{
    min-width:58px;
    min-height:30px;
    padding:4px 10px;
    font-size:11px;
    line-height:1;
    margin-left:6px;
  }
}

@media(max-width:980px){
  .soc-custom-slider-controls{
    left:22px;
    bottom:18px;
    padding:5px 7px;
    gap:0;
  }
  .soc-custom-dot{
    min-width:34px !important;
    min-height:34px !important;
    width:34px;
    height:34px;
  }
  .soc-custom-dot::after{
    width:10px;
    height:10px;
  }
  .soc-custom-toggle{
    min-width:60px;
    min-height:30px;
    padding:4px 10px;
    font-size:11px;
    margin-left:6px;
  }
}

@media(max-width:767px){
  .soc-custom-copy .soc-custom-actions{
    padding-bottom:34px;
  }
  .soc-custom-slider-controls{
    left:14px;
    bottom:14px;
  }
}


/* v1.0.6 Divi Visual Builder safety */
.et-fb-root-ancestor .soc-custom-hero,
.et-fb-root-ancestor .soc-topbar,
.et-fb-root-ancestor .soc-site-header,
.et-fb-root-ancestor .soc-primary-nav,
.et-fb-root-ancestor .soc-site-footer,
.et-fb-root-ancestor .soc-mobile-cta{
  pointer-events:auto;
}
.et-fb-root-ancestor .soc-reveal{
  opacity:1!important;
  transform:none!important;
}


/* v1.0.7 Divi Builder-safe homepage hero. No custom shortcode slider on Home page. */
.soc-builder-safe-hero{
  position:relative;
  overflow:hidden;
  background-size:cover!important;
  background-position:center top!important;
}
.soc-builder-safe-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(18,57,77,.58) 0%, rgba(18,57,77,.38) 44%, rgba(18,57,77,.08) 100%);
  pointer-events:none;
}
.soc-builder-safe-hero .et_pb_row,
.soc-builder-safe-hero .et_pb_column,
.soc-builder-safe-hero .et_pb_module{
  position:relative;
  z-index:2;
}
.soc-builder-hero-copy{
  max-width:590px;
  color:#fff;
}
.soc-builder-hero-copy h1{
  font-family:Georgia,'Times New Roman',serif!important;
  color:#fff!important;
  font-size:clamp(40px,5vw,66px);
  line-height:1.04;
  margin:0 0 18px!important;
  text-shadow:0 2px 15px rgba(0,0,0,.28);
}
.soc-builder-hero-copy p{
  color:#fff!important;
  font-size:20px;
  line-height:1.55;
  max-width:560px;
}
.soc-builder-hero-copy .et_pb_button{
  margin-right:10px;
  margin-bottom:10px;
}
.soc-builder-safe-hero .soc-eyebrow{
  text-shadow:none;
}

/* Old custom slider intentionally hidden if old homepage content remains cached. */
body.et-fb .soc-custom-hero{
  display:none!important;
}

@media(max-width:980px){
  .soc-builder-safe-hero{
    background-position:center top!important;
  }
}
@media(max-width:767px){
  .soc-builder-safe-hero{
    background-position:56% top!important;
  }
  .soc-builder-hero-copy h1{
    font-size:38px;
  }
  .soc-builder-hero-copy p{
    font-size:18px;
  }
}


/* v1.0.8 Divi-native Fullwidth Slider re-added for homepage */
.soc-divi-slider-section{
  padding:0!important;
}
.soc-divi-native-slider,
.soc-divi-native-slider .et_pb_slides,
.soc-divi-native-slider .et_pb_slide{
  min-height:640px!important;
}
.soc-divi-native-slider .et_pb_slide{
  background-position:center top!important;
}
.soc-divi-native-slider .et_pb_slide_description{
  width:min(1170px, calc(100% - 36px))!important;
  max-width:1170px!important;
  margin:0 auto!important;
  padding:215px 0 135px!important;
  text-align:left!important;
}
.soc-divi-native-slider .et_pb_slide_content,
.soc-divi-native-slider .et_pb_slide_description h2,
.soc-divi-native-slider .et_pb_button_wrapper{
  max-width:570px;
}
.soc-divi-native-slider .et_pb_slide_description h2{
  font-family:Georgia,'Times New Roman',serif!important;
  color:#fff!important;
  font-size:clamp(40px,5vw,66px)!important;
  line-height:1.04!important;
  font-weight:400!important;
  text-shadow:0 2px 15px rgba(0,0,0,.28)!important;
  margin-bottom:20px!important;
}
.soc-divi-native-slider .et_pb_slide_content{
  color:#fff!important;
  font-size:20px!important;
  line-height:1.55!important;
  text-shadow:0 2px 12px rgba(0,0,0,.25);
}
.soc-divi-native-slider .et_pb_slide_content p{
  color:#fff!important;
}
.soc-divi-native-slider .soc-eyebrow{
  display:inline-block!important;
  background:rgba(217,165,63,.96)!important;
  color:#1f2e35!important;
  padding:8px 12px!important;
  border-radius:3px!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  font-size:13px!important;
  letter-spacing:.08em!important;
  margin-bottom:14px!important;
  text-shadow:none!important;
}
.soc-divi-native-slider .et_pb_button{
  background:var(--soc-gold)!important;
  color:#1f2e35!important;
  border:2px solid var(--soc-gold)!important;
  border-radius:3px!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  box-shadow:0 9px 18px rgba(217,165,63,.25)!important;
  margin-right:10px!important;
  margin-bottom:10px!important;
}
.soc-divi-native-slider .et_pb_button_two{
  background:var(--soc-blue)!important;
  color:#fff!important;
  border-color:var(--soc-blue)!important;
}
.soc-divi-native-slider .et-pb-controllers{
  width:auto!important;
  left:max(28px, calc((100% - min(1170px,calc(100% - 36px)))/2) + 8px)!important;
  right:auto!important;
  bottom:26px!important;
  background:rgba(18,57,77,.52);
  border:1px solid rgba(255,255,255,.24);
  backdrop-filter:blur(8px);
  border-radius:999px;
  padding:8px 10px!important;
  height:auto!important;
  display:flex!important;
  gap:7px;
}
.soc-divi-native-slider .et-pb-controllers a{
  width:11px!important;
  height:11px!important;
  margin:0!important;
  border:2px solid #fff!important;
  background:rgba(255,255,255,.25)!important;
  opacity:1!important;
}
.soc-divi-native-slider .et-pb-controllers .et-pb-active-control{
  background:var(--soc-gold)!important;
  border-color:var(--soc-gold)!important;
}
.soc-divi-native-slider .et-pb-slider-arrows a{
  width:44px!important;
  height:44px!important;
  line-height:44px!important;
  background:rgba(18,57,77,.56);
  border-radius:50%;
}
.soc-divi-native-slider .et-pb-slider-arrows a:focus-visible,
.soc-divi-native-slider .et-pb-controllers a:focus-visible{
  outline:4px solid #f2c14e!important;
  outline-offset:4px!important;
  box-shadow:0 0 0 2px #12394d!important;
}
@media(max-width:1200px){
  .soc-divi-native-slider .et_pb_slide_description{
    width:calc(100% - 72px)!important;
  }
  .soc-divi-native-slider .et-pb-controllers{
    left:36px!important;
  }
}
@media(max-width:980px){
  .soc-divi-native-slider,
  .soc-divi-native-slider .et_pb_slides,
  .soc-divi-native-slider .et_pb_slide{
    min-height:620px!important;
  }
  .soc-divi-native-slider .et_pb_slide_description{
    padding:205px 0 125px!important;
    width:calc(100% - 56px)!important;
  }
  .soc-divi-native-slider .et-pb-controllers{
    left:28px!important;
    bottom:22px!important;
  }
}
@media(max-width:767px){
  .soc-divi-native-slider,
  .soc-divi-native-slider .et_pb_slides,
  .soc-divi-native-slider .et_pb_slide{
    min-height:690px!important;
  }
  .soc-divi-native-slider .et_pb_slide{
    background-position:56% top!important;
  }
  .soc-divi-native-slider .et_pb_slide_description{
    padding:255px 0 115px!important;
    width:calc(100% - 28px)!important;
  }
  .soc-divi-native-slider .et_pb_slide_description h2{
    font-size:38px!important;
  }
  .soc-divi-native-slider .et_pb_slide_content{
    font-size:18px!important;
  }
  .soc-divi-native-slider .et-pb-controllers{
    left:14px!important;
    bottom:14px!important;
    padding:7px 9px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .soc-divi-native-slider .et-pb-slider-arrows,
  .soc-divi-native-slider .et-pb-controllers{
    display:none;
  }
}
