/* Scoped to the D+ Services site; content remains usable without JavaScript. */
body .dplus-site .e-con,body .dplus-site .elementor-widget{min-width:0}
body .dplus-site :is(h1,h2,h3,p,li,td,th,label){overflow-wrap:anywhere}
body .dplus-site :is(input,select,textarea){max-width:100%;min-width:0;box-sizing:border-box}
body .dplus-site :is(input,select,button,summary){min-height:44px}
body .dplus-site textarea{resize:vertical;min-height:130px}
body .dplus-site .elementor-button{white-space:normal;text-align:center;min-height:44px;max-width:100%}
body .dplus-site :is(.elementor-button,.search-box button,.dp-thumbs a){touch-action:manipulation}
body .dplus-site .elementor-button-content-wrapper{min-width:0}
body .dplus-site .elementor-button-text{overflow-wrap:anywhere}
body .dplus-site .specs{width:100%;table-layout:fixed}
body .dplus-site :is(.footer a,.team-card a){overflow-wrap:anywhere}
body .dplus-site .dp-menu-toggle{display:none}
body .dplus-site .nav-wrap{position:relative;z-index:20}
body .dplus-site .about-dropdown-menu{z-index:30}
body .dplus-site :is(a,button,summary,input,select,textarea):focus-visible{outline:3px solid #006b94;outline-offset:4px}

/* Shared header: Elementor's page-local styles must not change its geometry.
   Keep the homepage dimensions and neutralize paragraphs inserted by its editor. */
body .dplus-site .nav > .elementor-widget-text-editor p{font:inherit!important;margin:0!important}
body .dplus-site .masthead .header-cart .elementor-button{border-radius:8px}
@media(min-width:768px){
 body .dplus-site .masthead{padding:14px 0!important;min-height:82px}
 body .dplus-site .masthead .header-cart .elementor-button{padding:17px 22px}
}
@media(min-width:1101px){
 body .dplus-site .masthead .logo{width:125px!important}
}

@media(max-width:1100px){
 body .dplus-site .masthead{display:grid!important;grid-template-columns:135px minmax(0,1fr) auto;gap:18px!important;align-items:center!important}
 body .dplus-site .masthead .header-assist{display:none!important}
 body .dplus-site .masthead .header-search{width:100%!important;max-width:none!important;grid-column:2;grid-row:1}
 body .dplus-site .masthead .header-cart{grid-column:3;grid-row:1;width:auto!important}
 body .dplus-site .masthead .logo{width:135px!important;grid-column:1;grid-row:1}
 body .dplus-site .dp-menu-toggle{display:flex;align-items:center;justify-content:space-between;gap:14px;width:calc(100% - 64px);max-width:1280px;margin:0 auto;padding:12px 0;min-height:52px;background:white;color:#26343c;border:0;border-radius:0;font:600 16px/1.3 Arial,sans-serif;cursor:pointer}
 body .dplus-site .dp-menu-icon{width:21px;height:14px;position:relative;border-top:2px solid currentColor;border-bottom:2px solid currentColor;flex:none}
 body .dplus-site .dp-menu-icon:before{content:'';position:absolute;left:0;right:0;top:4px;border-top:2px solid currentColor}
 body .dplus-site .nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px!important;align-items:start!important;padding:0 0 16px!important;overflow:visible!important}
 body .dplus-site .nav .elementor-widget{width:100%!important;min-width:0}
 body .dplus-site .nav .guide-link{margin-left:0!important;grid-column:1/-1}
 body .dplus-site .nav a,body .dplus-site .nav summary{display:flex;align-items:center;min-height:48px;padding:10px 0;white-space:normal;font-size:15px;line-height:1.4}
 body .dplus-site .nav p{white-space:normal}
 body .dplus-site .nav.dp-nav-enhanced:not(.dp-nav-open){display:none!important}
 body .dplus-site .nav.dp-nav-open{animation:dp-menu-in .18s ease-out}
 body .dplus-site .nav .about-dropdown-menu{position:static!important;width:100%!important;min-width:0!important;max-width:100%;margin:0!important;box-shadow:none!important;border:0!important;padding:0 0 8px 12px!important;background:#f2f8fb}
 body .dplus-site .nav .about-dropdown-menu a{font-size:14px;min-height:44px;padding:10px}
 body .dplus-site :is(input,select,textarea){font-size:16px!important}
}
@media(min-width:768px) and (max-width:1024px){
 body .dplus-site .ce-quote-mark p{font-size:220px!important}
 body .dplus-site h2{font-size:clamp(28px,4vw,40px)!important;line-height:1.15!important}
 body .dplus-site :is(.grid3,.grid4,.qd-products){grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body .dplus-site .v6-course-grid{grid-template-columns:1fr!important}
 body .dplus-site .v4-hero-visual img{max-width:100%!important;width:100%!important}
}
@media(max-width:900px){
 body .dplus-site :is(.qp-hero,.qp-body,.re-contact,.re-split,.sl-hero-layout){grid-template-columns:minmax(0,1fr)!important;gap:32px!important}
 body .dplus-site .qp-visual{width:100%!important;max-width:620px!important;margin-inline:auto!important}
 body .dplus-site .qp-copy h1{font-size:clamp(30px,4.5vw,42px)!important;line-height:1.15!important}
}
@media(max-width:767px){
 body .dplus-site .frame{width:calc(100% - 36px)!important}
 body .dplus-site .masthead{grid-template-columns:minmax(0,1fr) auto;gap:14px 12px!important;padding:18px 0!important;min-height:0!important}
 body .dplus-site .masthead .logo{width:115px!important;max-width:100%!important;grid-column:1;grid-row:1}
 body .dplus-site .masthead .header-cart{grid-column:2;grid-row:1}
 body .dplus-site .masthead .header-search{grid-column:1/-1;grid-row:2;max-width:100%!important}
 body .dplus-site .masthead .header-cart .elementor-button{padding:12px 13px;font-size:13px;line-height:1.3}
 body .dplus-site .dp-menu-toggle{width:calc(100% - 36px)}
 body .dplus-site .nav{grid-template-columns:minmax(0,1fr)!important}
 body .dplus-site .nav>.elementor-widget{border-bottom:1px solid #e3edf1}
 body .dplus-site .nav .about-dropdown-menu a{padding-left:12px}
 body .dplus-site .topbar .frame{justify-content:center!important}
 body .dplus-site .topbar p{text-align:center;font-size:11px}
 body .dplus-site h1{font-size:clamp(30px,8vw,46px)!important;line-height:1.12!important}
 body .dplus-site h2{font-size:clamp(27px,7.5vw,38px)!important;line-height:1.15!important}
 body .dplus-site :is(.grid3,.grid4,.grid2,.qd-products,.te-team-grid,.form-grid){grid-template-columns:minmax(0,1fr)!important}
 body .dplus-site .form-grid .full{grid-column:1/-1!important}
 body .dplus-site .form-box,body .dplus-site .re-form-panel{padding:22px!important}
 body .dplus-site .qd-filters{gap:16px!important;align-items:stretch}
 body .dplus-site .qd-filters label{min-width:0;flex-basis:100%}
 body .dplus-site [data-brand-choice]{min-height:44px;white-space:normal}
 body .dplus-site .cta-band{flex-direction:column!important;align-items:flex-start!important;gap:22px!important}
 body .dplus-site .footer-bottom{flex-wrap:wrap!important;gap:12px!important}
 body .dplus-site .dp-gallery .dp-thumbs{gap:8px}
 body .dplus-site .dp-gallery .dp-thumbs a{width:56px;height:56px}
 body .dplus-site .dp-gallery .dp-thumbs img{width:48px!important;height:48px!important}
}
@media(max-width:374px){
 body .dplus-site .masthead .logo{width:104px!important}
 body .dplus-site .masthead .header-cart .elementor-button{font-size:12px;padding:11px}
 body .dplus-site :is(.form-box,.re-form-panel){padding:18px!important}
 body .dplus-site .card-body{padding:20px!important}
 body .dplus-site .v4-actions .elementor-widget{width:100%!important}
 body .dplus-site .v4-actions .elementor-button{width:100%}
}

@keyframes dp-enter{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@keyframes dp-menu-in{from{opacity:.5;translate:0 -5px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:no-preference){
 body .dplus-site .dp-reveal-in{animation:dp-enter .46s cubic-bezier(.2,.65,.3,1) both}
 body .dplus-site :is(.card,.team-card,.v4-cat){transition:box-shadow .22s ease,translate .22s ease}
 body .dplus-site .dp-thumbs a{transition:border-color .18s ease,box-shadow .18s ease}
 @media(hover:hover) and (pointer:fine){
  body .dplus-site :is(.card,.team-card,.v4-cat):hover{translate:0 -4px;box-shadow:0 12px 28px #183b4b16}
  body .dplus-site .dp-thumbs a:hover{box-shadow:0 3px 10px #007ba820}
 }
}
@media(prefers-reduced-motion:reduce){
 body .dplus-site *,body .dplus-site *:before,body .dplus-site *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 body .dplus-site .elementor-button:hover{transform:none!important}
}
