/*
Theme Name: DOT Physicals & CDL Medical Exams | DOTSTG Custom
Theme URI: https://dotstg.com/
Author: Create Local Marketing
Description: Independent DOTSTG clinic theme, rebuilt from the October 2026 original design reference. Native Elementor Pro Theme Builder integration; red/blue DOTSTG branding, responsive header/footer, two-column carousel controls, medical service image cards.
Version: 1.0.1
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: dotstg-custom
*/
:root{--dot-red:#EE2B2F;--dot-blue:#3C54A4;--dot-navy:#132838;--dot-ink:#203448;--dot-muted:#476276;--dot-ice:#F1F6F9;--dot-white:#fff;--dot-line:#DDE6ED}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--dot-ink);background:#fff;font-family:Inter,Arial,sans-serif}a{color:var(--dot-blue)}a:hover{color:var(--dot-red)}img{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{font-family:Poppins,Arial,sans-serif;color:var(--dot-navy);line-height:1.2}p{line-height:1.7}button,a{transition:background-color .2s,color .2s,border-color .2s}
.dotstg-topbar{background:var(--dot-navy);color:#fff;min-height:45px;font:600 12px Oswald,Inter,Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase}.dotstg-topbar-inner{max-width:1450px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:10px 28px;flex-wrap:wrap}.dotstg-topbar a{color:#fff;text-decoration:none}.dotstg-topbar a:hover{color:#f9a1a3}.dotstg-topbar-item{display:inline-flex;align-items:center;gap:7px}.dotstg-icon{width:16px;height:16px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dotstg-navbar{background:#fff;position:relative;z-index:20;border-bottom:1px solid var(--dot-line);box-shadow:0 2px 12px rgba(19,40,56,.045)}.dotstg-nav-inner{max-width:1450px;margin:auto;min-height:98px;padding:22px 28px;display:flex;align-items:center;gap:30px;justify-content:space-between}.dotstg-brand{display:flex;align-items:center;min-width:165px;text-decoration:none;font:800 29px Poppins,Arial,sans-serif;white-space:nowrap;letter-spacing:-.04em}.dotstg-brand .dotstg-red{color:var(--dot-red)}.dotstg-brand .dotstg-blue{color:var(--dot-blue)}.dotstg-brand img{width:auto;max-width:245px;max-height:70px;object-fit:contain}.dotstg-nav{display:flex;align-items:center;justify-content:flex-end;gap:22px;flex-wrap:wrap;margin-left:auto}.dotstg-nav a{text-decoration:none;text-transform:uppercase;font:600 13px Poppins,Arial,sans-serif;color:var(--dot-navy);letter-spacing:.015em}.dotstg-nav a:hover{color:var(--dot-red)}.dotstg-call{padding:15px 25px;border-radius:5px;background:var(--dot-red);color:#fff!important;font:700 13px Poppins,Arial,sans-serif;text-decoration:none;white-space:nowrap;text-transform:uppercase}.dotstg-call:hover{background:var(--dot-blue)}.dotstg-menu-toggle{display:none;background:transparent;border:1px solid var(--dot-line);padding:9px;color:var(--dot-navy);cursor:pointer}
.dotstg-footer{background:var(--dot-navy);color:#d5e5ee;padding:60px 28px 0}.dotstg-footer .dotstg-footer-inner{max-width:1450px;margin:auto}.dotstg-footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:42px}.dotstg-footer h2,.dotstg-footer h3{color:#fff;font-size:18px;margin:0 0 20px}.dotstg-footer p{color:#c6d6e0}.dotstg-footer a{display:block;color:#dfebf0;text-decoration:none;margin:0 0 11px;font-size:14px}.dotstg-footer a:hover{color:#ff9698}.dotstg-footer-bottom{margin-top:45px;border-top:1px solid #40576b;padding:24px 0;color:#b8cbd7;font-size:12px}.dotstg-footer-bottom a{display:inline}
.dotstg-main{min-height:35vh}.dotstg-wrap{max-width:1450px;margin:auto;padding:48px 28px}.dotstg-main article{max-width:1050px;margin:auto}
.elementor-widget-image-box .elementor-image-box-wrapper,.elementor-widget-image-box{overflow:hidden}.elementor-widget-image-box img{display:block;object-fit:cover;width:100%;height:auto}.elementor-widget-image-box .elementor-image-box-title{font-family:Poppins,Arial,sans-serif;font-weight:650}.elementor-button{font-family:Poppins,Arial,sans-serif;font-weight:700;border-radius:5px;transition:all .2s ease}.elementor-button:hover{transform:translateY(-1px)}
/* Six-slide left-media / right-copy carousel: visible, usable controls and centered pagination */
.swiper-button-next,.swiper-button-prev,.elementor-swiper-button,.elementor-swiper-button-next,.elementor-swiper-button-prev{color:var(--dot-red)!important;opacity:1!important;visibility:visible!important;display:flex!important;align-items:center;justify-content:center;z-index:12!important;cursor:pointer}.elementor-swiper-button svg,.swiper-button-next svg,.swiper-button-prev svg{fill:currentColor}.swiper-button-next,.swiper-button-prev{width:44px!important;height:44px!important;border-radius:50%;background:rgba(255,255,255,.96);box-shadow:0 3px 16px rgba(0,0,0,.18)}.swiper-button-next:after,.swiper-button-prev:after{font-size:22px!important;font-weight:800}.swiper-pagination,.swiper-pagination-bullets,.elementor-swiper .swiper-pagination{display:flex!important;justify-content:center!important;gap:10px!important;width:100%!important;position:relative!important;bottom:auto!important;padding:14px 0!important;visibility:visible!important;opacity:1!important;z-index:12!important}.swiper-pagination-bullet{opacity:1!important;width:11px!important;height:11px!important;background:#bac5d2!important;border:1px solid #fff!important;cursor:pointer}.swiper-pagination-bullet-active{background:var(--dot-red)!important;transform:scale(1.22)}.elementor-image-carousel-wrapper{overflow:hidden}.elementor-section,.e-con{min-width:0}
@media(max-width:1024px){.dotstg-nav-inner{gap:20px}.dotstg-nav{gap:12px}.dotstg-nav a{font-size:11px}.dotstg-footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.dotstg-topbar-inner{justify-content:center;gap:9px;font-size:10px}.dotstg-nav-inner{min-height:80px;padding:15px}.dotstg-brand img{max-width:160px}.dotstg-menu-toggle{display:block}.dotstg-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:15px 25px 25px;box-shadow:0 12px 25px rgba(0,0,0,.1);flex-direction:column;align-items:stretch}.dotstg-nav.is-open{display:flex}.dotstg-nav a{padding:10px 0;font-size:13px}.dotstg-call{padding:12px}.dotstg-footer-grid{grid-template-columns:1fr;gap:25px}.dotstg-wrap{padding:30px 16px}.swiper-button-next,.swiper-button-prev{width:36px!important;height:36px!important}}
