/* XAS generator skin v8 (v8 + related). Served once, cached. */
/* XAS Sunnyvale page skin v2 — homepage look (blue #4054B2 / green #23A455 / Roboto) */
.xas-skin{font-family:'Roboto',system-ui,-apple-system,sans-serif;color:#3a3f47;line-height:1.7;overflow-x:hidden}
.xas-skin *{box-sizing:border-box}
.xas-skin p{margin:0 0 1.05em;font-size:1.05rem}
.xas-skin a{color:#4054B2}
.xas-skin img{max-width:100%;height:auto}

/* CTA buttons */
.xas-skin a[href^="tel"],.xas-skin a[href*="instant-quote"]{display:inline-block;margin:.4em .35em;padding:14px 30px;border-radius:9px;font-weight:600;font-size:1.05rem;text-decoration:none;transition:transform .15s ease,box-shadow .2s ease,background .2s ease}
.xas-skin a[href^="tel"]{background:#23A455;color:#fff;box-shadow:0 6px 18px rgba(35,164,85,.30)}
.xas-skin a[href^="tel"]:hover{background:#1c8a47;transform:translateY(-2px)}
.xas-skin a[href*="instant-quote"]{background:#4054B2;color:#fff;box-shadow:0 6px 18px rgba(64,84,178,.30)}
.xas-skin a[href*="instant-quote"]:hover{background:#33429a;transform:translateY(-2px)}

/* HERO */
.xas-hero{margin-bottom:40px;position:relative;padding:92px 24px;text-align:center;color:#fff;background:linear-gradient(rgba(20,28,64,.80),rgba(23,32,63,.86)),url('https://xtremeairservices.com/wp-content/uploads/2024/01/hero-banner.jpg') center/cover no-repeat}
.xas-hero-title{font-family:'Roboto Slab',Georgia,serif;font-size:2.7rem;line-height:1.12;font-weight:700;color:#fff;margin:0 0 .35em;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.xas-hero>p{font-size:1.28rem;max-width:730px;margin:0 auto 1.5em;color:#eaf0ff}
.xas-hero>div:last-child{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:28px}
.xas-hero>div:last-child>div{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);padding:9px 17px;border-radius:30px;font-size:.95rem;font-weight:500}
.xas-hero>div:last-child span:first-child{font-size:1.15rem}
/* breathing room right after the hero */
.xas-hero + *{margin-top:40px}

/* centered content column */
.xas-content,.xas-faq,.xas-video,.xas-cta-banner,.xas-cta-final{max-width:1080px;margin-left:auto;margin-right:auto}
.xas-content{padding:8px 20px 0}

/* content sections */
.xas-content>div{padding:34px 4px;border-bottom:1px solid #eef0f5}
.xas-content>div:last-child{border-bottom:none}
.xas-skin h2{font-family:'Roboto Slab',Georgia,serif;font-size:1.8rem;line-height:1.25;color:#1e2a4a;margin:0 0 .55em;position:relative;padding-left:18px}
.xas-skin h2::before{content:"";position:absolute;left:0;top:.18em;bottom:.18em;width:5px;border-radius:3px;background:#4054B2}
.xas-content figure{margin:6px 0 10px}
.xas-content figure img{border-radius:12px;box-shadow:0 10px 30px rgba(20,28,64,.15)}

/* checklist bullets — branded green check icon (literal char, no CSS escape) */
.xas-content ul{padding-left:0;list-style:none;margin:0 0 1.1em}
.xas-content ul li{position:relative;display:flow-root;padding:7px 0 7px 34px;line-height:1.6}
.xas-content ul li::before{content:"✓";position:absolute;left:0;top:6px;width:21px;height:21px;line-height:21px;text-align:center;font-size:12px;font-weight:700;color:#fff;background:#23A455;border-radius:50%}

/* v7: removed 3 parent-section centering rules - they centered the WHOLE section (h2 + body paragraphs), not just the media block. The video-section class already centers it correctly. */

/* "Have questions?" help CTA — centered card, tight spacing (2 classes to beat .xas-content>div) */
.xas-skin .xas-help-cta{max-width:560px;margin:8px auto 38px;text-align:center;background:#f7f9fc;border:1px solid #e7ebf3;border-radius:14px;padding:26px 24px}
.xas-skin .xas-help-cta p{margin:.35em 0;font-size:1.05rem;color:#3a3f47}
.xas-skin .xas-help-cta a[href^="tel"]{margin-top:.6em}

/* mid-page CTA banner */
.xas-cta-banner{background:linear-gradient(135deg,#4054B2,#5566c9);color:#fff;text-align:center;padding:32px 24px;border-radius:14px;margin:34px auto}
.xas-cta-banner p{margin:.15em 0;font-size:1.15rem;color:#eef1ff}
.xas-skin .xas-cta-banner a[href^="tel"]{background:none;box-shadow:none;padding:0;margin:.1em 0;color:#fff;font-size:2rem;font-weight:800;letter-spacing:.5px}
.xas-skin .xas-cta-banner a[href^="tel"]:hover{transform:none;text-decoration:underline}

/* video (responsive 16:9) */
.xas-video{position:relative;padding-bottom:56.25%;height:0;max-width:900px;margin:12px auto 18px;border-radius:14px;overflow:hidden;box-shadow:0 14px 36px rgba(20,28,64,.22)}
.xas-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* FAQ */
.xas-faq{padding:26px 20px 12px}
.xas-faq>h2{text-align:center;padding-left:0}
.xas-faq>h2::before{display:none}
.xas-faq>p{text-align:center;color:#6b7280;margin-top:-.4em;margin-bottom:1.6em}
.xas-skin [id^="faq-"]{background:#f7f9fc;border:1px solid #e7ebf3;border-left:4px solid #23A455;border-radius:10px;padding:18px 22px;margin:14px auto;max-width:900px;text-align:left}
.xas-skin [id^="faq-"] h3{margin:0 0 .4em;font-size:1.16rem;color:#1e2a4a}
.xas-skin [id^="faq-"] p{margin:0;color:#555}

/* final CTA band */
.xas-cta-final{background:linear-gradient(135deg,#17203f,#4054B2);color:#fff;text-align:center;padding:58px 24px;border-radius:16px;margin:46px auto 20px}
.xas-cta-final h2{color:#fff;padding-left:0}
.xas-cta-final h2::before{display:none}
.xas-cta-final>p{font-size:1.22rem;color:#dfe5ff;margin-bottom:1.2em}
.xas-skin .xas-cta-final a[href*="instant-quote"]{background:#fff;color:#17203f}
.xas-skin .xas-cta-final a[href*="instant-quote"]:hover{background:#eaf0ff}

/* hide theme default title bar so hero is at top */
.ast-single-entry-banner,.entry-header,.ast-archive-description{display:none!important}

/* responsive */
@media(max-width:640px){.xas-hero{padding:60px 18px}.xas-hero-title{font-size:2.05rem}.xas-hero>p{font-size:1.1rem}.xas-skin h2{font-size:1.45rem}.xas-cta-banner a[href^="tel"]{font-size:1.6rem}}

/* ---- v4 additions for SERVICE pages ---- */
.xas-toc{max-width:900px;margin:0 auto 34px;background:#f7f9fc;border:1px solid #e7ebf3;border-left:4px solid #4054B2;border-radius:12px;padding:22px 26px}
.xas-toc>p{margin:0 0 .7em;font-size:1.12rem;font-weight:700;color:#1e2a4a}
.xas-toc ul{margin:0;padding-left:20px;list-style:disc;columns:2;column-gap:34px}
.xas-toc li{padding:4px 0;break-inside:avoid;line-height:1.5}
.xas-toc li::marker{color:#23A455}
.xas-toc a{color:#4054B2;text-decoration:none}
.xas-toc a:hover{text-decoration:underline}
.xas-content>div{display:flow-root}
.xas-content .wp-block-image{margin:6px 0 14px}
.xas-content .wp-block-image.alignleft{float:left;margin:6px 28px 10px 0;max-width:46%}
.xas-content .wp-block-image.alignright{float:right;margin:6px 0 10px 28px;max-width:46%}
@media(max-width:860px){.xas-toc ul{columns:1}}
@media(max-width:640px){.xas-content .wp-block-image.alignleft,.xas-content .wp-block-image.alignright{float:none;margin:16px auto;max-width:100%}.xas-content .wp-block-image img{width:100%}}

/* ---- v5: video section (nested, so :has() on direct child never matched) ---- */
.xas-skin .xas-video-section{text-align:center;margin:26px 0 6px}
.xas-skin .xas-video-section h2{padding-left:0;text-align:center}
.xas-skin .xas-video-section h2::before{display:none}
.xas-skin .xas-video-section>p:first-child{text-transform:uppercase;letter-spacing:1.6px;font-size:.8rem;font-weight:700;color:#23A455;margin:0 0 .35em}
.xas-skin .xas-video-section>p:last-child{color:#6b7280;font-size:.94rem;margin:.9em 0 0}


/* ---- v6: native HTML5 media element support (page 10800) ---- */
.xas-video video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}

/* v8 additions: hero image band (new agent template, 2026-08) */
.xas-skin .xas-hero-image{max-width:1080px;margin:0 auto 32px;padding:0 20px}
.xas-skin .xas-hero-image img{width:100%;height:auto;display:block;border-radius:10px}
@media(max-width:640px){.xas-skin .xas-hero-image{padding:0 12px}}
.xas-skin .xas-related{margin:44px 0 0;padding:26px 28px;background:#f5f7fb;border:1px solid #e3e8f3;border-radius:10px}.xas-skin .xas-related h2{margin:0 0 6px;font-size:1.3rem;color:#4054B2}.xas-skin .xas-related .xas-related-intro{margin:0 0 18px;color:#5a6070}.xas-skin .xas-related ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.xas-skin .xas-related li{margin:0;padding:14px 16px;background:#fff;border:1px solid #e3e8f3;border-radius:8px}.xas-skin .xas-related li a{font-weight:600;color:#4054B2;text-decoration:none}.xas-skin .xas-related li a:hover{text-decoration:underline}.xas-skin .xas-related li span{display:block;margin-top:5px;font-size:.92rem;color:#5a6070;line-height:1.55}
/* XAS-CTA-CARD-20260807: centre + card the bare tel-only CTA paragraphs, and stop any float overlapping a CTA card */
.xas-skin .xas-cta-banner,.xas-skin .xas-cta-final,.xas-skin .xas-help-cta,.xas-skin .xas-related{clear:both}
.xas-skin .xas-content>div:not(.xas-help-cta)>p:has(>a[href^="tel"]:only-child){max-width:560px;margin:22px auto;padding:20px 24px;text-align:center;background:#f7f9fc;border:1px solid #e7ebf3;border-radius:14px;clear:both}
