/*
Theme Name: DOTSTG | Commercial Driver Medical Exams
Theme URI: https://dotstg.com/
Author: Create Local Marketing
Description: DOTSTG-specific WordPress/Elementor theme customized from the GPL Hello Elementor framework. WordPress shell, Elementor Theme Builder, accessible navigation, typography, responsive controls, and medical website SEO.
Version: 1.0.0
Text Domain: dotstg
Tags: accessibility-ready, custom-logo, custom-menu, responsive-layout, elementor, medical-clinic
License: GNU General Public License v3 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/
/* DOTSTG ORIGINAL CLINIC BRAND ASSETS MUST BE RESTORED FROM THE CLEANED KINSTA BACKUP. THESE STYLES ARE NOT A CLAIM TO REPLACE THE ORIGINAL LOGO OR VIDEO. */
:root{--dotstg-red:#CF2444;--dotstg-blue:#14609A;--dotstg-dark:#132838;--dotstg-text:#314b5e;--dotstg-pale:#f4f8fa;--dotstg-blank:#fff;--dotstg-gap:25px;--dotstg-radius:8px;--dotstg-shadow:0 10px 32px rgba(19,40,56,.08)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Inter,Arial,sans-serif;color:var(--dotstg-dark);font-size:17px;line-height:1.65;overflow-x:hidden;background:#fff;-webkit-font-smoothing:antialiased}
a{color:var(--dotstg-blue)}a:hover,a:focus-visible{color:var(--dotstg-red)}a,button,input,textarea,select{transition:color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
:focus-visible{outline:3px solid var(--dotstg-red)!important;outline-offset:3px!important}
h1,h2,h3,h4,h5,h6{font-family:Poppins,Arial,sans-serif;color:var(--dotstg-dark);line-height:1.24;text-wrap:balance}
h1{font-size:clamp(2.1rem,3vw,3.55rem)}h2{font-size:clamp(1.65rem,2.5vw,2.9rem)}h3{font-size:clamp(1.3rem,1.8vw,1.9rem)}
img,video,iframe{max-width:100%}img{height:auto}
.elementor .elementor-widget-image img{object-fit:cover}
.elementor-widget-button .elementor-button{font-family:Poppins,Arial,sans-serif!important;display:inline-flex;align-items:center;justify-content:center;min-height:46px;min-width:150px;border-radius:var(--dotstg-radius);font-weight:600;letter-spacing:.015em;white-space:normal;text-align:center}
.elementor-widget-button .elementor-button:hover{transform:translateY(-1px);box-shadow:var(--dotstg-shadow)}
.elementor-widget-nested-carousel .swiper-pagination-bullet,.elementor-widget-nested-carousel .swiper-pagination-bullet-active{width:10px;height:10px}
.elementor-widget-nested-carousel .swiper-pagination-bullet-active{background:var(--dotstg-red)}
.elementor-location-header{background:#fff;position:relative;z-index:50}
.elementor-location-header .elementor-widget-heading h3,.elementor-location-header .elementor-widget-heading h4{margin:0}
.elementor-location-header .elementor-widget-button .elementor-button{font-size:13px;line-height:1.25}
.elementor-location-footer{background:var(--dotstg-dark);color:#fff}
.elementor-location-footer a{color:#fff}
.elementor-location-footer a:hover{color:#fff;text-decoration:underline}
.elementor-location-footer .elementor-heading-title{color:#fff}
.elementor-nav-menu--main .elementor-item{font-family:Poppins,Arial,sans-serif;font-weight:600;letter-spacing:.025em;text-transform:uppercase}
.elementor-nav-menu--dropdown .elementor-item{min-height:44px}
.elementor-widget-accordion .elementor-tab-title{font-family:Poppins,Arial,sans-serif;font-weight:600}
.elementor-widget-image-box .elementor-image-box-img img{border-radius:var(--dotstg-radius);object-fit:cover}
.dotstg-section{padding-block:60px}
.dotstg-card{border-radius:12px;overflow:hidden;background:#fff;box-shadow:var(--dotstg-shadow)}
.dotstg-eyebrow{font-family:Oswald,Arial,sans-serif;text-transform:uppercase;letter-spacing:.09em;color:var(--dotstg-red)}
.dotstg-source{font-size:.85rem;color:#587184}
@media(max-width:1024px){.elementor-location-header .elementor-widget-button .elementor-button{min-width:120px}.elementor-widget-nested-carousel .elementor-heading-title{overflow-wrap:break-word}}
@media(max-width:767px){.elementor-location-header .e-con{min-width:0}.elementor-location-header .elementor-button{max-width:100%}.elementor-widget-nested-carousel .e-con{width:100%!important}.elementor-widget-nested-carousel .elementor-widget-image img{max-height:320px;object-fit:cover}.elementor .elementor-widget-button .elementor-button{min-width:0;width:100%}h1{font-size:clamp(1.8rem,7.2vw,2.5rem)}h2{font-size:clamp(1.5rem,5vw,2rem)}.elementor-nav-menu--dropdown .elementor-item{padding:14px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:0.01ms!important;animation-duration:0.01ms!important;scroll-behavior:auto!important}}
