
/* ==========================================================
   ASAP LEGAL BETA V10.90.3 — GLOBAL PREMIUM SYSTEM
   Applies brand-true premium treatment across public website.
   Exact core colors: ASAP Blue #31459D / ASAP Red #C82829.
   ========================================================== */
:root{
 --ap-blue:#31459D;--ap-red:#C82829;--ap-ink:#19203b;--ap-text:#48546b;
 --ap-muted:#758095;--ap-bg:#ffffff;--ap-soft:#f7f7fb;--ap-soft2:#f1f2f8;
 --ap-line:#e1e4ee;--ap-shadow:0 24px 60px rgba(49,69,157,.08);
}
html{scroll-behavior:smooth}
body{background:#fff!important;color:var(--ap-ink)!important}
.wrap{width:min(1320px,calc(100% - 48px))!important}
.site-header{background:rgba(255,255,255,.965)!important;border-bottom:1px solid rgba(49,69,157,.10)!important;backdrop-filter:blur(18px)!important;box-shadow:0 8px 28px rgba(49,69,157,.035)!important}
.site-header .logo img,.site-header img{filter:none!important}
.main-nav>a{color:#293451!important;font-size:12px!important;font-weight:740!important;letter-spacing:.005em!important}
.main-nav>a:hover,.main-nav>a.is-current{color:var(--ap-blue)!important}
.nav-actions .btn{border-radius:8px!important;min-height:44px!important}
.nav-actions .btn-red{background:var(--ap-red)!important;border-color:var(--ap-red)!important;color:#fff!important}
.nav-actions .btn-outline-blue{border-color:rgba(49,69,157,.25)!important;color:var(--ap-blue)!important;background:#fff!important}

/* Typography and brand primitives */
.eyebrow{color:var(--ap-blue)!important;font-size:10px!important;letter-spacing:.16em!important;font-weight:850!important;text-transform:uppercase!important}
.eyebrow:before{background:var(--ap-red)!important}
h1,h2,h3,.section-display-heading,.card-heading,.location-card-title{color:var(--ap-blue)!important}
h1{letter-spacing:-.055em!important}
h2{letter-spacing:-.045em!important}
p{color:var(--ap-text)}
.text-link,.targeted-logo-blue-text,.home-cta-logo-blue-text,.talk-team-logo-blue{color:var(--ap-blue)!important}
.btn{border-radius:8px!important;font-weight:800!important}
.btn-red{background:var(--ap-red)!important;border-color:var(--ap-red)!important;color:#fff!important;box-shadow:0 12px 28px rgba(200,40,41,.14)!important}
.btn-dark,.btn-blue{background:var(--ap-blue)!important;border-color:var(--ap-blue)!important;color:#fff!important}
.btn-outline-blue{border-color:rgba(49,69,157,.26)!important;color:var(--ap-blue)!important;background:#fff!important}
.section{padding-top:98px!important;padding-bottom:98px!important}
.section.warm,.warm{background:var(--ap-soft)!important}
.section-head{margin-bottom:46px!important}
.section-head h2{font-size:clamp(40px,4.4vw,64px)!important;line-height:1.0!important;max-width:900px}
.section-head p{font-size:15px!important;line-height:1.75!important;max-width:680px}

/* Shared page hero */
.page-hero,.service-detail-hero,.locations-hero,.legacy-contact-hero,.account-hero,.access-intro{
 position:relative!important;overflow:hidden!important;
 background:linear-gradient(135deg,#fff 0%,#f8f8fc 65%,#f1f2f8 100%)!important;
 border-bottom:1px solid var(--ap-line)!important;
}
.page-hero:before,.service-detail-hero:before,.locations-hero:before,.legacy-contact-hero:before,.account-hero:before,.access-intro:before{
 content:"";position:absolute!important;width:520px!important;height:520px!important;border-radius:50%!important;
 right:-180px!important;top:-250px!important;background:rgba(49,69,157,.065)!important;pointer-events:none!important
}
.page-hero:after,.service-detail-hero:after,.locations-hero:after,.legacy-contact-hero:after,.account-hero:after,.access-intro:after{
 content:"";position:absolute!important;width:240px!important;height:240px!important;border-radius:50%!important;
 right:3%!important;bottom:-130px!important;background:rgba(200,40,41,.06)!important;pointer-events:none!important
}
.page-hero>.wrap,.service-detail-hero>.wrap,.locations-hero>.wrap,.legacy-contact-hero>.wrap,.account-hero>.wrap,.access-intro>.wrap{position:relative;z-index:2}
.page-hero{padding:88px 0 82px!important}
.page-hero h1,.service-detail-hero h1,.locations-hero h1,.legacy-contact-hero h1,.account-hero h1,.access-intro h1{
 font-size:clamp(54px,6vw,88px)!important;line-height:.95!important;letter-spacing:-.06em!important;font-weight:620!important
}
.page-hero p,.service-detail-hero p,.locations-hero p,.legacy-contact-hero p,.account-hero p,.access-intro p{font-size:17px!important;line-height:1.72!important}

/* Services hub */
.services-hub-hero{padding:92px 0!important}
.services-hub-hero .service-hub-stats{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:1px!important;background:var(--ap-line)!important;border:1px solid var(--ap-line)!important;border-radius:18px!important;overflow:hidden!important;margin-top:44px!important}
.services-hub-hero .service-hub-stats>*{background:#fff!important;padding:20px!important}
.featured-service-card{background:linear-gradient(135deg,var(--ap-blue),#4257b8)!important;color:#fff!important;border:0!important;border-radius:26px!important;padding:38px!important;box-shadow:0 28px 70px rgba(49,69,157,.18)!important}
.featured-service-card h2,.featured-service-card h3,.featured-service-card p,.featured-service-card .eyebrow{color:#fff!important}
.featured-service-mark{color:rgba(255,255,255,.16)!important}
.service-showcase-grid{gap:16px!important}
.service-showcase-card{border:1px solid var(--ap-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:none!important;transition:.22s ease!important}
.service-showcase-card:hover{transform:translateY(-5px)!important;box-shadow:var(--ap-shadow)!important;border-color:rgba(49,69,157,.25)!important}
.service-monogram{background:rgba(49,69,157,.08)!important;color:var(--ap-blue)!important;border-radius:12px!important}
.services-workflow{background:linear-gradient(135deg,var(--ap-blue),#4257b8)!important;color:#fff!important;border-radius:28px!important;padding:50px!important}
.services-workflow h2,.services-workflow p,.services-workflow .eyebrow,.services-workflow .visual-strong{color:#fff!important}

/* Service detail pages */
.service-detail-hero{padding:82px 0!important}
.service-hero-layout{gap:70px!important;align-items:center!important}
.service-hero-photo{border-radius:26px!important;overflow:hidden!important;box-shadow:0 30px 75px rgba(49,69,157,.14)!important}
.service-benefits{gap:16px!important}
.service-benefit{background:#fff!important;border:1px solid var(--ap-line)!important;border-radius:18px!important;padding:24px!important;box-shadow:none!important}
.service-benefit-icon{background:rgba(49,69,157,.08)!important;color:var(--ap-blue)!important;border-radius:12px!important}
.service-steps{gap:14px!important}
.service-step{background:#fff!important;border:1px solid var(--ap-line)!important;border-radius:18px!important;box-shadow:none!important}
.service-coverage-card,.search-intent-card{border:1px solid var(--ap-line)!important;border-top:4px solid var(--ap-red)!important;border-radius:18px!important;background:#fff!important;box-shadow:var(--ap-shadow)!important}
.service-faq{border:1px solid var(--ap-line)!important;border-radius:16px!important;background:#fff!important}
.related-service{border:1px solid var(--ap-line)!important;border-radius:16px!important;background:#fff!important;transition:.2s ease!important}
.related-service:hover{border-color:rgba(49,69,157,.28)!important;transform:translateY(-3px)!important}

/* About */
.about-hero{padding:92px 0!important}
.why-asap-about{background:#fff!important}
.asap-grid{background:var(--ap-soft)!important;border-radius:28px!important;padding:50px!important}
.asap-word{color:var(--ap-blue)!important}
.asap-item{border-color:var(--ap-line)!important}
.asap-initial-red{color:var(--ap-red)!important}.asap-initial-blue{color:var(--ap-blue)!important}
.about-story-grid{gap:70px!important}
.about-principles{border-left:3px solid var(--ap-red)!important}
.about-service-links a{border:1px solid var(--ap-line)!important;border-radius:14px!important;background:#fff!important}

/* Locations */
.locations-page .locations-hero{padding:90px 0!important}
.locations-hero-grid{gap:70px!important}
.locations-hero-card{background:#fff!important;border:1px solid var(--ap-line)!important;border-top:4px solid var(--ap-red)!important;border-radius:18px!important;box-shadow:var(--ap-shadow)!important}
.locations-proof{gap:12px!important}.locations-proof>div{background:#fff!important;border:1px solid var(--ap-line)!important;border-radius:14px!important}
.location-region-grid{gap:18px!important}
.location-region-card{border-radius:22px!important;overflow:hidden!important;box-shadow:0 24px 55px rgba(49,69,157,.10)!important}
.location-region-overlay{background:linear-gradient(180deg,rgba(49,69,157,.03),rgba(30,38,80,.84))!important}
.location-contact-strip{border-radius:18px!important;background:var(--ap-soft)!important;border:1px solid var(--ap-line)!important}
.locations-relationship{background:linear-gradient(135deg,var(--ap-blue),#4257b8)!important;color:#fff!important}
.locations-relationship h2,.locations-relationship p,.locations-relationship .eyebrow,.locations-relationship .visual-strong{color:#fff!important}
.location-service-grid>*{border:1px solid var(--ap-line)!important;border-radius:16px!important;background:#fff!important}

/* Contact */
.legacy-contact-hero{padding:88px 0!important}
.legacy-contact-layout{gap:70px!important;align-items:start!important}
.legacy-contact-direct,.legacy-contact-note{background:#fff!important;border:1px solid var(--ap-line)!important;border-radius:16px!important}
.legacy-form-card{background:#fff!important;border:1px solid var(--ap-line)!important;border-top:5px solid var(--ap-red)!important;border-radius:24px!important;box-shadow:0 30px 80px rgba(49,69,157,.12)!important}
.legacy-form-progress{border-color:var(--ap-line)!important}
.legacy-modern-form input,.legacy-modern-form select,.legacy-modern-form textarea{border:1px solid #dfe2ec!important;border-radius:10px!important;background:#fbfbfd!important}
.legacy-modern-form input:focus,.legacy-modern-form select:focus,.legacy-modern-form textarea:focus{border-color:var(--ap-blue)!important;box-shadow:0 0 0 3px rgba(49,69,157,.09)!important}

/* Request Account */
.account-hero{padding:86px 0!important}
.account-hero-grid{gap:70px!important}
.account-journey{background:#fff!important;border:1px solid var(--ap-line)!important;border-radius:18px!important;padding:18px!important}
.journey-item.active span{background:var(--ap-red)!important}
.account-promise{background:rgba(49,69,157,.06)!important;border:1px solid rgba(49,69,157,.12)!important;border-radius:16px!important}
.account-form-shell{background:#fff!important;border:1px solid var(--ap-line)!important;border-top:5px solid var(--ap-red)!important;border-radius:24px!important;box-shadow:0 30px 80px rgba(49,69,157,.12)!important}
.account-fieldset{border-color:var(--ap-line)!important}
.account-fieldset legend span{background:var(--ap-blue)!important;color:#fff!important}
.account-form input,.account-form select,.account-form textarea{border-radius:10px!important;border-color:#dfe2ec!important;background:#fbfbfd!important}

/* Resources */
.resources-hero{padding:90px 0!important}
.resource-feature-grid{gap:18px!important}
.resource-feature-card{border:1px solid var(--ap-line)!important;border-radius:22px!important;background:#fff!important;box-shadow:var(--ap-shadow)!important}
.resource-icon{background:rgba(49,69,157,.08)!important;color:var(--ap-blue)!important;border-radius:14px!important}
.resources-secondary .service-card{border-radius:18px!important;border-color:var(--ap-line)!important}
.resource-update-list article{border:1px solid var(--ap-line)!important;border-left:4px solid var(--ap-red)!important;border-radius:16px!important}

/* Client access */
.access-intro{padding:82px 0!important}
.access-security-pill{background:#fff!important;border:1px solid var(--ap-line)!important;border-radius:16px!important}
.access-stage{background:var(--ap-soft)!important}
.access-picker,.access-browser{border-radius:22px!important;border:1px solid var(--ap-line)!important;box-shadow:var(--ap-shadow)!important}
.access-option{border-radius:13px!important}.access-option.is-active{background:rgba(49,69,157,.08)!important;border-color:rgba(49,69,157,.20)!important}
.access-option-icon{color:var(--ap-blue)!important}

/* Local SEO pages */
.premium-local-landing .local-hero{background:linear-gradient(135deg,#fff,#f7f7fb)!important}
.premium-local-landing .local-hero h1{color:var(--ap-blue)!important}
.premium-local-landing .local-hero-panel,.premium-local-landing .local-rule-card{border-radius:22px!important;box-shadow:var(--ap-shadow)!important}
.premium-local-landing .local-service-card{border-radius:18px!important;border-color:var(--ap-line)!important}
.premium-local-landing .local-service-card:hover{transform:translateY(-4px)!important;box-shadow:var(--ap-shadow)!important}
.premium-local-landing .local-final-cta{background:linear-gradient(120deg,var(--ap-red),#d23a3b)!important}

/* Footer: make it coherent with premium brand */
#asap-footer-v10793{background:#fff!important;border-top:1px solid var(--ap-line)!important}
#asap-footer-v10793 .af793-support{background:var(--ap-blue)!important}
#asap-footer-v10793 .af793-support *{color:#fff!important}
#asap-footer-v10793 .af793-cta{background:var(--ap-red)!important;border-color:var(--ap-red)!important;border-radius:8px!important}
#asap-footer-v10793 .af793-main{padding-top:56px!important;padding-bottom:54px!important}
#asap-footer-v10793 h3{color:var(--ap-blue)!important}
#asap-footer-v10793 a:hover{color:var(--ap-red)!important}
#asap-footer-v10793 .af793-news-wrap{background:var(--ap-soft)!important;border-top:1px solid var(--ap-line)!important;border-bottom:1px solid var(--ap-line)!important}
#asap-footer-v10793 .af793-news-row input{border-radius:9px!important}
#asap-footer-v10793 .af793-news-row button{background:var(--ap-red)!important;border-radius:9px!important}
#asap-footer-v10793 .af793-bottom{background:#f0f1f7!important}

/* General cards/forms */
.service-card,.feature-card,.city-card,.panel-card{border-radius:18px!important}
input,select,textarea{accent-color:var(--ap-blue)}
::selection{background:rgba(49,69,157,.18);color:var(--ap-ink)}

@media(max-width:900px){
 .wrap{width:min(100% - 32px,1320px)!important}
 .section{padding-top:72px!important;padding-bottom:72px!important}
 .page-hero h1,.service-detail-hero h1,.locations-hero h1,.legacy-contact-hero h1,.account-hero h1,.access-intro h1{font-size:50px!important}
 .services-hub-hero .service-hub-stats{grid-template-columns:1fr!important}
 .pb2-brand-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:640px){
 .page-hero,.service-detail-hero,.locations-hero,.legacy-contact-hero,.account-hero,.access-intro{padding-top:58px!important;padding-bottom:58px!important}
 .page-hero h1,.service-detail-hero h1,.locations-hero h1,.legacy-contact-hero h1,.account-hero h1,.access-intro h1{font-size:43px!important}
 .pb2-brand-grid{grid-template-columns:1fr!important}
}
