/*
Theme Name: Comfort One WordPress Blocks
Theme URI: https://comfort1hc.com/
Author: Comfort One
Description: Editable WordPress block conversion of the Comfort One Heating & Cooling website.
Version: 1.1.0
Text Domain: comfort-one
*/
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;color:#1C2B3A;background:#fff;font-size:16px;line-height:1.7}
a{color:inherit;text-decoration:none}
img{display:block}

/* TOP BAR */
.topbar{background:#C8311A;padding:8px 32px;display:flex;align-items:center;justify-content:center;gap:16px;font-size:13px;font-weight:600;color:#fff;flex-wrap:wrap}
.topbar a{color:#fff;text-decoration:underline}

/* NAV */
.main-nav{background:#fff;border-bottom:1px solid #E5EAF0;padding:0 40px;display:flex;align-items:center;justify-content:space-between;height:72px;position:sticky;top:0;z-index:200;box-shadow:0 1px 8px rgba(0,0,0,.06)}
.nav-logo img{height:52px;width:auto}
.nav-menu{display:flex;gap:4px;list-style:none;align-items:center}
.nav-menu>li{position:relative}
.nav-menu>li>a{display:block;padding:8px 13px;font-size:13.5px;font-weight:500;color:#4A5568;border-radius:4px;transition:background .2s,color .2s;white-space:nowrap}
.nav-menu>li:hover>a{background:#F5F7FA;color:#0D1B3E}
.dropdown{position:absolute;top:100%;left:0;background:#fff;border:1px solid #E5EAF0;border-radius:6px;box-shadow:0 8px 32px rgba(0,0,0,.1);min-width:220px;display:none;z-index:300;padding:6px 0}
.has-dropdown:hover .dropdown{display:block}
.dropdown li a{display:block;padding:9px 18px;font-size:13px;color:#4A5568;transition:background .2s,color .2s}
.dropdown li a:hover{background:#F5F7FA;color:#0D1B3E}
.nav-cta{background:#C8311A;color:#fff!important;padding:9px 20px;border-radius:4px;font-size:13.5px;font-weight:600;white-space:nowrap}
.nav-cta:hover{background:#a8280f!important}
.mobile-toggle{display:none;background:none;border:none;font-size:1.4rem;cursor:pointer;padding:8px}

/* PAGES */
/* HERO */
.home-hero{position:relative;height:90vh;min-height:560px;display:flex;align-items:flex-end}
.home-hero-inner{position:relative;z-index:1;padding:0 48px 64px;max-width:680px}
.hero-label{font-size:12px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#5BB8FF;display:block;margin-bottom:14px}
.home-hero-inner h1{font-family:'DM Serif Display',serif;font-size:3.4rem;font-weight:400;color:#fff;line-height:1.16;margin-bottom:16px}
.home-hero-inner p{font-size:.97rem;color:rgba(255,255,255,.7);margin-bottom:26px;max-width:460px;line-height:1.75}
.hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}
.tag{font-size:12px;font-weight:500;color:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.2);padding:4px 12px;border-radius:20px}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap}

/* INNER HERO */
.inner-hero{background:#0D1B3E;padding:56px 48px 52px;position:relative}
.inner-hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#C8311A,#1E90D6)}
.inner-hero-content{max-width:720px}
.breadcrumb{font-size:12px;color:#4A6080;margin-bottom:12px}
.breadcrumb a{color:#4A6080}
.inner-hero-content h1{font-family:'DM Serif Display',serif;font-size:2.6rem;font-weight:400;color:#fff;line-height:1.2;margin-bottom:12px}
.inner-hero-content p{font-size:.97rem;color:rgba(255,255,255,.68);margin-bottom:22px;max-width:540px;line-height:1.7}

/* STATS */
.stats-bar{background:#0D1B3E;display:flex;justify-content:center;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.07)}
.stat{padding:20px 44px;text-align:center;border-right:1px solid rgba(255,255,255,.07)}
.stat:last-child{border-right:none}
.stat-n{font-family:'DM Serif Display',serif;font-size:1.9rem;color:#fff}
.stat-n b{color:#C8311A}
.stat-l{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#3A5070;margin-top:2px}

/* SECTIONS */
.content-section{padding:64px 40px}
.content-section.bg-light{background:#F8FAFC}
.section-inner{max-width:1080px;margin:0 auto}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#C8311A;display:block;margin-bottom:10px}
h2.h,.section-inner h2{font-family:'DM Serif Display',serif;font-size:2rem;font-weight:400;color:#0D1B3E;margin-bottom:12px;line-height:1.28}
.sub{font-size:.95rem;color:#6B7A8D;line-height:1.75;margin-bottom:36px;max-width:600px}
.intro-block{max-width:760px}
.intro-block p{font-size:.97rem;color:#4A5568;line-height:1.85}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.two-col p{font-size:.95rem;color:#4A5568;line-height:1.85;margin-bottom:16px}
.two-col strong{color:#0D1B3E;font-weight:600}
.inline-link{color:#1670B8;text-decoration:underline}

/* BUTTONS */
.btn-red{display:inline-block;background:#C8311A;color:#fff;padding:12px 26px;border-radius:4px;font-weight:600;font-size:.92rem;cursor:pointer;transition:background .2s}
.btn-red:hover{background:#a8280f}
.btn-ghost{display:inline-block;background:transparent;color:#fff;padding:11px 22px;border-radius:4px;font-weight:500;font-size:.92rem;border:1px solid rgba(255,255,255,.3);transition:all .2s}
.btn-ghost:hover{border-color:#5BB8FF;color:#5BB8FF}
.btn-outline{display:inline-block;background:transparent;color:#1670B8;padding:11px 22px;border-radius:4px;font-weight:600;font-size:.88rem;border:1.5px solid #1670B8;transition:all .2s}
.btn-outline:hover{background:#1670B8;color:#fff}
.btn-white{display:inline-block;background:#fff;color:#0D1B3E;padding:12px 24px;border-radius:4px;font-weight:600;font-size:.9rem;transition:background .2s}
.btn-white:hover{background:#F0F4F8}

/* SERVICE CARDS */
.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:8px}
.svc-card{background:#fff;border:1px solid #E5EAF0;border-radius:6px;padding:28px 24px;cursor:pointer;transition:box-shadow .2s,transform .2s}
.svc-card:hover{box-shadow:0 6px 28px rgba(0,0,0,.1);transform:translateY(-2px)}
.svc-icon{font-size:1.8rem;margin-bottom:14px;display:block}
.svc-card h3{font-size:1.05rem;font-weight:600;color:#0D1B3E;margin-bottom:8px}
.svc-card p{font-size:.87rem;color:#6B7A8D;line-height:1.7;margin-bottom:14px}
.svc-card ul{list-style:none;margin-bottom:16px}
.svc-card ul li{font-size:.84rem;color:#4A5568;padding:5px 0;border-bottom:1px solid #F0F4F8;cursor:pointer}
.svc-card ul li:hover{color:#1670B8}
.card-link{font-size:.84rem;font-weight:600;color:#1670B8}

/* FACTS */
.facts-col{display:flex;flex-direction:column;gap:14px}
.fact-card{background:#F8FAFC;border:1px solid #E5EAF0;border-radius:6px;padding:20px 22px}
.fact-card h4{font-size:.9rem;font-weight:600;color:#0D1B3E;margin-bottom:5px}
.fact-card p{font-size:.85rem;color:#6B7A8D;line-height:1.65}

/* SPECIALS */
.specials-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.special-card{background:#F8FAFC;border:1px solid #E5EAF0;border-radius:6px;padding:26px 22px}
.special-card.large{padding:32px 28px}
.special-card.large h3{font-family:'DM Serif Display',serif;font-size:1.4rem;font-weight:400;color:#0D1B3E;margin-bottom:12px}
.sp-badge{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#C8311A;display:block;margin-bottom:8px}
.special-card h4{font-size:.97rem;font-weight:600;color:#0D1B3E;margin-bottom:8px}
.special-card p{font-size:.87rem;color:#6B7A8D;line-height:1.65;margin-bottom:16px}

/* REVIEWS */
.reviews-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px}
.review-card{background:#F8FAFC;border:1px solid #E5EAF0;border-radius:6px;padding:24px 20px}
.stars{color:#C8311A;font-size:.88rem;letter-spacing:2px;margin-bottom:12px}
.review-card blockquote{font-size:.88rem;color:#4A5568;font-style:italic;line-height:1.75;margin-bottom:12px}
.review-card cite{font-size:.75rem;font-weight:600;color:#1670B8;text-transform:uppercase;letter-spacing:.08em;font-style:normal}

/* BLOG */
.blog-preview-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.blog-card{background:#F8FAFC;border:1px solid #E5EAF0;border-radius:6px;padding:26px 22px;cursor:pointer;transition:box-shadow .2s}
.blog-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.08)}
.blog-cat{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#C8311A;display:block;margin-bottom:8px}
.blog-card h3,.blog-card h4{font-size:.97rem;font-weight:600;color:#0D1B3E;margin-bottom:8px;line-height:1.4}
.blog-card h3 a,.blog-card h4 a{color:inherit;text-decoration:none}
.blog-card h3 a:hover,.blog-card h4 a:hover{color:#1670B8}
.blog-date{font-size:.78rem;color:#9AABB8;margin-bottom:8px;display:block}
.blog-card p{font-size:.86rem;color:#6B7A8D;line-height:1.65;margin-bottom:12px}
.read-more{font-size:.84rem;font-weight:600;color:#1670B8}
.blog-card .wp-block-post-excerpt__more-link{font-size:.83rem;font-weight:600;color:#1670B8;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;margin-top:8px;display:inline-block}
.blog-card .post-date{font-size:.78rem;color:#8A97A8;margin-top:12px}
.blog-pagination{margin-top:36px;gap:12px}
.blog-pagination a,.blog-pagination .page-numbers{border:1px solid #D0E2F5;border-radius:4px;padding:8px 11px;text-decoration:none;color:#0D1B3E;background:#fff}
.blog-pagination a:hover,.blog-pagination .page-numbers.current{background:#1670B8;color:#fff;border-color:#1670B8}
.blog-article{max-width:760px}
.article-meta{display:flex;align-items:center;gap:16px;margin-bottom:28px}
.article-body h3{font-family:'DM Serif Display',serif;font-size:1.3rem;color:#0D1B3E;margin:28px 0 10px}
.article-body p{font-size:.97rem;color:#4A5568;line-height:1.85;margin-bottom:16px}
.article-body ul{list-style:disc;padding-left:22px;margin-bottom:16px}
.article-body ul li{font-size:.95rem;color:#4A5568;margin-bottom:7px;line-height:1.6}
.article-cta{background:#F0F6FF;border:1px solid #D0E2F5;border-radius:6px;padding:28px;margin-top:36px}
.article-cta h4{font-size:1rem;font-weight:600;color:#0D1B3E;margin-bottom:8px}
.article-cta p{font-size:.9rem;color:#4A5568;margin-bottom:16px}

/* STEPS */
.steps{display:flex;flex-direction:column;gap:20px;margin-top:8px}
.step{display:flex;align-items:flex-start;gap:18px}
.step-n{width:40px;height:40px;border-radius:50%;background:#0D1B3E;color:#fff;font-family:'DM Serif Display',serif;font-size:1.1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.step h4{font-size:.97rem;font-weight:600;color:#0D1B3E;margin-bottom:4px}
.step p{font-size:.88rem;color:#6B7A8D;line-height:1.65}

/* LISTS */
.check-list{list-style:none;display:flex;flex-direction:column;gap:9px}
.check-list li{font-size:.9rem;color:#4A5568;padding-left:22px;position:relative;line-height:1.5}
.check-list li::before{content:'✓';position:absolute;left:0;color:#1670B8;font-weight:700}
.why-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.why-list li{font-size:.9rem;color:#4A5568;background:#F8FAFC;border:1px solid #E5EAF0;border-radius:6px;padding:16px 18px;line-height:1.6}
.why-list li strong{display:block;color:#0D1B3E;font-weight:600;margin-bottom:3px}

/* INFO CARD */
.info-card{background:#F0F6FF;border:1px solid #D0E2F5;border-radius:6px;padding:24px 22px}
.info-card h4{font-size:.97rem;font-weight:600;color:#0D1B3E;margin-bottom:8px}
.info-card p{font-size:.88rem;color:#4A5568;line-height:1.7;margin-bottom:14px}

/* PARTNERS */
.partner-cards{display:flex;flex-direction:column;gap:18px}
.partner-full-card{background:#F8FAFC;border:1px solid #E5EAF0;border-radius:8px;padding:28px 26px;display:flex;align-items:flex-start;gap:20px;cursor:pointer;transition:box-shadow .2s,border-color .2s}
.partner-full-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.08);border-color:#CBD5E0}
.pc-icon{font-size:2rem;flex-shrink:0;width:52px;height:52px;background:#EEF4FF;border-radius:8px;display:flex;align-items:center;justify-content:center}
.pc-info h3{font-size:1.1rem;font-weight:600;color:#0D1B3E;margin-bottom:4px}
.pc-tag{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#1670B8;display:block;margin-bottom:8px}
.pc-info p{font-size:.9rem;color:#6B7A8D;line-height:1.7;margin-bottom:10px}
.partner-detail-box{background:#F8FAFC;border:1px solid #E5EAF0;border-radius:6px;padding:24px;margin-bottom:18px}
.partner-detail-box h4{font-size:.95rem;font-weight:600;color:#0D1B3E;margin-bottom:14px}
.partner-contact-box{background:#F0F6FF;border:1px solid #D0E2F5;border-radius:6px;padding:24px}
.partner-contact-box h4{font-size:.95rem;font-weight:600;color:#0D1B3E;margin-bottom:14px}

/* CONTACT */
.ci-list{display:flex;flex-direction:column;gap:16px}
.ci-row{display:flex;align-items:flex-start;gap:13px}
.ci-ico{width:38px;height:38px;background:#F0F6FF;border:1px solid #D0E2F5;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.ci-info strong{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#9AABB8;margin-bottom:3px}
.ci-info a,.ci-info span{font-size:.92rem;color:#1C2B3A}
.ci-info a:hover{color:#1670B8}

/* FAQ */
.faq-list{display:flex;flex-direction:column;gap:0}
.faq{border-bottom:1px solid #E5EAF0;padding:22px 0}
.faq h4{font-size:1rem;font-weight:600;color:#0D1B3E;margin-bottom:9px}
.faq p{font-size:.91rem;color:#4A5568;line-height:1.8}

/* SERVICE AREAS */
.areas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px}
.area-block{background:#F8FAFC;border:1px solid #E5EAF0;border-radius:6px;padding:24px}
.area-block h4{font-size:.97rem;font-weight:600;color:#0D1B3E;margin-bottom:12px}
.area-block ul{list-style:none}
.area-block ul li{font-size:.88rem;color:#4A5568;padding:4px 0;border-bottom:1px solid #F0F4F8}

/* CTA BAR */
.cta-bar{background:#0D1B3E;padding:36px 40px}
.cta-bar-inner{max-width:1080px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.cta-bar h3{font-family:'DM Serif Display',serif;font-size:1.5rem;color:#fff;margin-bottom:4px}
.cta-bar p{font-size:.9rem;color:#6A7E90}
.cta-bar-actions{display:flex;gap:12px;flex-wrap:wrap}

/* FORM */
.form-box{background:#F8FAFC;border:1px solid #E5EAF0;border-radius:6px;padding:32px 28px}
.form-title{font-size:1.05rem;font-weight:600;color:#0D1B3E;margin-bottom:4px}
.form-desc{font-size:.83rem;color:#9AABB8;margin-bottom:20px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field{margin-bottom:13px}
.field label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:#9AABB8;margin-bottom:5px}
.field input,.field select,.field textarea{width:100%;padding:10px 13px;background:#fff;border:1px solid #D0D8E0;border-radius:4px;font-family:'DM Sans',sans-serif;font-size:.88rem;color:#1C2B3A;transition:border-color .2s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:#1670B8}
.field textarea{min-height:82px;resize:vertical}
.submit-btn{width:100%;background:#C8311A;color:#fff;border:none;padding:13px;border-radius:4px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:.92rem;cursor:pointer;transition:background .2s;margin-top:4px}
.submit-btn:hover{background:#a8280f}
.form-note{font-size:.77rem;color:#9AABB8;margin-top:9px;line-height:1.5}

/* FOOTER */
.site-footer{background:#0D1B3E;padding:52px 40px 28px}
.footer-inner{max-width:1080px;margin:0 auto}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.footer-brand img{height:46px;width:auto;background:#fff;border-radius:4px;padding:3px 7px;margin-bottom:14px}
.footer-brand p{font-size:.82rem;color:#4A6080;line-height:1.75;margin-bottom:6px}
.footer-brand .tagline{font-size:.8rem;color:#2A3C54;font-style:italic;margin-top:8px}
.footer-brand .vwg-note{font-size:.76rem;color:#2A3C54;margin-top:6px}
.footer-brand .vwg-note a{color:#1E90D6}
.footer-col h5{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:#5A7090;margin-bottom:13px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.footer-col ul li a{font-size:.82rem;color:#4A6080;transition:color .2s}
.footer-col ul li a:hover{color:#5BB8FF}
.footer-col ul li{font-size:.82rem;color:#4A6080}
.footer-bottom{border-top:1px solid rgba(255,255,255,.07);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.footer-bottom p{font-size:.75rem;color:#2A3C50}

/* RESPONSIVE */
@media(max-width:900px){
  .main-nav{padding:0 20px}
  .nav-menu{display:none}
  .mobile-toggle{display:block}
  .nav-menu.open{display:flex;flex-direction:column;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid #E5EAF0;padding:12px 0;box-shadow:0 8px 24px rgba(0,0,0,.1);z-index:300}
  .nav-menu.open>li>a{padding:12px 24px}
  .dropdown{position:static;border:none;box-shadow:none;padding:0 0 0 16px}
  .has-dropdown:hover .dropdown{display:none}
  .has-dropdown.open .dropdown{display:block}
  .home-hero-inner{padding:0 20px 48px}
  .home-hero-inner h1{font-size:2.3rem}
  .content-section{padding:44px 20px}
  .inner-hero{padding:40px 20px}
  .inner-hero-content h1{font-size:1.9rem}
  .service-cards,.specials-row,.reviews-row,.blog-preview-row,.blog-grid{grid-template-columns:1fr}
  .why-list,.two-col,.areas-grid{grid-template-columns:1fr;gap:24px}
  .footer-top{grid-template-columns:1fr 1fr;gap:24px}
  .stat{padding:14px 20px}
  .cta-bar-inner{flex-direction:column;text-align:center}
  .cta-bar-actions{justify-content:center}
}

/* WORDPRESS BLOCK ADJUSTMENTS */
.wp-site-blocks > *{margin-block-start:0}
.site-content{margin:0;padding:0}
.site-content > *{margin-block-start:0}
.wp-block-group{margin-block-start:0}
.admin-bar .main-nav{top:32px}
.topbar p{margin:0;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}
.main-nav .wp-block-navigation__container{display:flex;gap:4px;list-style:none;align-items:center}
.main-nav .wp-block-navigation-item{position:relative;margin:0}
.main-nav .wp-block-navigation-item__content{display:block;padding:8px 13px;font-size:13.5px;font-weight:500;color:#4A5568;border-radius:4px;transition:background .2s,color .2s;white-space:nowrap;text-decoration:none}
.main-nav .wp-block-navigation-item__content:hover{background:#F5F7FA;color:#0D1B3E}
.main-nav .wp-block-navigation__submenu-container{background:#fff;border:1px solid #E5EAF0;border-radius:6px;box-shadow:0 8px 32px rgba(0,0,0,.1);min-width:220px;padding:6px 0;z-index:300}
.main-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:9px 18px;font-size:13px;border-radius:0}
.main-nav .wp-block-navigation__submenu-icon{margin-left:0}
.main-nav .wp-block-site-logo a,.footer-logo a{display:inline-flex;align-items:center}
.nav-cta-wrap{margin:0}
.wp-block-button.btn-red,.wp-block-button.btn-outline,.wp-block-button.btn-ghost,.wp-block-button.btn-white,.wp-block-button.nav-cta{background:transparent!important;color:inherit!important;padding:0!important;border:0!important;border-radius:0!important}
.wp-block-button.btn-red .wp-block-button__link,.wp-block-button.nav-cta .wp-block-button__link{display:inline-block;background:#C8311A;color:#fff;padding:13px 28px;border-radius:4px;font-weight:600;font-size:.93rem;text-decoration:none;transition:background .2s}
.wp-block-button.nav-cta .wp-block-button__link{padding:9px 20px;font-size:13.5px;white-space:nowrap}
.wp-block-button.btn-red .wp-block-button__link:hover,.wp-block-button.nav-cta .wp-block-button__link:hover{background:#a8280f}
.wp-block-button.btn-ghost .wp-block-button__link{display:inline-block;background:transparent;color:#fff;padding:11px 22px;border-radius:4px;font-weight:500;font-size:.92rem;border:1px solid rgba(255,255,255,.3);text-decoration:none;transition:all .2s}
.wp-block-button.btn-ghost .wp-block-button__link:hover{border-color:#5BB8FF;color:#5BB8FF}
.wp-block-button.btn-outline .wp-block-button__link{display:inline-block;background:transparent;color:#1670B8;padding:11px 22px;border-radius:4px;font-weight:600;font-size:.88rem;border:1.5px solid #1670B8;text-decoration:none;transition:all .2s}
.wp-block-button.btn-outline .wp-block-button__link:hover{background:#1670B8;color:#fff}
.wp-block-button.btn-white .wp-block-button__link{display:inline-block;background:#fff;color:#0D1B3E;padding:12px 24px;border-radius:4px;font-weight:600;font-size:.9rem;text-decoration:none;transition:background .2s}
.wp-block-button.btn-white .wp-block-button__link:hover{background:#F0F4F8}
.wp-block-buttons.hero-btns,.wp-block-buttons.cta-bar-actions{display:flex;gap:12px;flex-wrap:wrap}
.card-link a,.read-more a{color:inherit;text-decoration:none}
.card-link a:hover,.read-more a:hover{text-decoration:underline}
.wp-block-quote{border-left:0;padding:0;margin:0}
.wp-block-quote p{margin:0}
.wp-block-shortcode{max-width:none}
.form-box .wp-block-shortcode{margin:0}
footer.site-footer{background:#0D1B3E}
@media screen and (max-width:782px){.admin-bar .main-nav{top:46px}}

/* LOGO-LED REDESIGN */
:root{
  --co-logo-navy:#001837;
  --co-logo-midnight:#062a5f;
  --co-logo-blue:#0078c9;
  --co-logo-sky:#00a7e6;
  --co-logo-red:#f0180a;
  --co-logo-orange:#ff6a08;
  --co-logo-ice:#f2f8fc;
  --co-logo-line:#d8e6f0;
}
body{color:#10243f;background:linear-gradient(180deg,#fff 0%,#f7fbff 100%)}
.site-sticky-header{position:sticky;top:0;z-index:1000;background:#fff;box-shadow:0 10px 30px rgba(0,24,55,.12)}
.admin-bar .site-sticky-header{top:32px}
.topbar{background:linear-gradient(90deg,var(--co-logo-red) 0%,var(--co-logo-orange) 43%,var(--co-logo-blue) 100%);padding:9px 32px;box-shadow:inset 0 -1px rgba(255,255,255,.24)}
.topbar p{gap:22px;text-shadow:0 1px 1px rgba(0,0,0,.18)}
.topbar a{text-decoration:none;border-bottom:1px solid rgba(255,255,255,.72)}
.main-nav{position:relative;top:auto!important;z-index:1;height:106px;padding:0 42px;background:rgba(255,255,255,.98);border-bottom:3px solid transparent;border-image:linear-gradient(90deg,var(--co-logo-red),var(--co-logo-orange),var(--co-logo-sky),var(--co-logo-blue)) 1;box-shadow:none}
.admin-bar .main-nav{top:auto!important}
.nav-logo{width:260px!important;max-width:28vw;flex-shrink:0}
.nav-logo img,.nav-logo .custom-logo{height:92px;width:auto;max-width:260px;object-fit:contain}
.main-nav .wp-block-navigation__container{gap:2px}
.main-nav .wp-block-navigation-item__content{color:#12365c;font-weight:700;letter-spacing:.01em}
.main-nav .wp-block-navigation-item__content:hover{background:linear-gradient(180deg,#eff8ff,#fff5f1);color:var(--co-logo-navy)}
.main-nav .wp-block-navigation__submenu-container{border:1px solid var(--co-logo-line);border-top:3px solid var(--co-logo-sky);box-shadow:0 18px 40px rgba(0,24,55,.16)}
.nav-cta .wp-block-button__link,.wp-block-button.nav-cta .wp-block-button__link{background:linear-gradient(135deg,var(--co-logo-red),var(--co-logo-orange))!important;box-shadow:0 10px 20px rgba(240,24,10,.2)}
.hero-label,.pc-tag,.card-link,.read-more,.inline-link,.footer-brand .vwg-note a{color:var(--co-logo-sky)}
.tag{background:rgba(255,255,255,.08);border-color:rgba(0,167,230,.42);color:#eef9ff}
.inner-hero,.stats-bar,.cta-bar,.site-footer{background:linear-gradient(135deg,var(--co-logo-navy) 0%,var(--co-logo-midnight) 54%,#003f86 100%)}
.inner-hero::after{height:4px;background:linear-gradient(90deg,var(--co-logo-red),var(--co-logo-orange),var(--co-logo-sky),var(--co-logo-blue))}
.stat-n b,.eyebrow,.sp-badge,.blog-cat,.stars{color:var(--co-logo-red)}
.stat-l,.cta-bar p,.footer-brand p,.footer-col ul li,.footer-bottom p{color:#83a3c4}
h2.h,.section-inner h2,.svc-card h3,.fact-card h4,.special-card h4,.special-card.large h3,.blog-card h4,.step h4,.info-card h4,.pc-info h3,.area-block h4,.form-title{color:var(--co-logo-navy)}
.btn-red,.submit-btn{background:linear-gradient(135deg,var(--co-logo-red),var(--co-logo-orange));box-shadow:0 10px 22px rgba(240,24,10,.18)}
.btn-red:hover,.submit-btn:hover{background:linear-gradient(135deg,#d70f06,#f55a05)}
.btn-outline{color:var(--co-logo-blue);border-color:var(--co-logo-blue)}
.btn-outline:hover{background:linear-gradient(135deg,var(--co-logo-blue),var(--co-logo-sky));border-color:var(--co-logo-blue);color:#fff}
.btn-ghost{border-color:rgba(0,167,230,.5)}
.btn-ghost:hover{border-color:#fff;color:#fff;background:rgba(0,167,230,.16)}
.svc-card,.special-card,.review-card,.blog-card,.fact-card,.info-card,.partner-full-card,.area-block,.form-box{border-color:var(--co-logo-line);box-shadow:0 10px 24px rgba(0,24,55,.04)}
.svc-card,.blog-card,.partner-full-card{border-top:4px solid var(--co-logo-blue)}
.svc-card:nth-child(odd),.special-card:nth-child(odd),.blog-card:nth-child(odd),.partner-full-card:nth-child(odd){border-top-color:var(--co-logo-red)}
.svc-card:hover,.blog-card:hover,.partner-full-card:hover{box-shadow:0 16px 34px rgba(0,24,55,.12);border-color:#b9d7ea}
.svc-icon,.pc-icon,.ci-ico,.step-n{background:linear-gradient(135deg,#fff3ee,#eaf8ff);border:1px solid #d7e8f5;color:var(--co-logo-blue)}
.step-n{background:linear-gradient(135deg,var(--co-logo-navy),var(--co-logo-blue));border:0;color:#fff}
.check-list li::before{color:var(--co-logo-blue)}
.footer-logo img,.footer-logo .custom-logo{height:76px;width:auto;max-width:220px;background:#fff;border-radius:6px;padding:6px 10px}
.footer-brand .tagline{color:#fff;font-weight:700;font-style:normal;letter-spacing:.02em}
.footer-brand .vwg-note{color:#d7ecff}
.footer-brand .vwg-note a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.45);text-underline-offset:3px}
.footer-col h5{color:#e7f6ff}
.footer-col ul li a{color:#9fc2e1}
.footer-col ul li a:hover{color:#fff}
@media(max-width:1180px){
  .main-nav{height:98px;padding:0 24px}
  .nav-logo{width:220px!important;max-width:24vw}
  .nav-logo img,.nav-logo .custom-logo{height:78px;max-width:220px}
  .main-nav .wp-block-navigation-item__content{padding:8px 9px;font-size:12.5px}
  .wp-block-button.nav-cta .wp-block-button__link{padding:9px 16px;font-size:12.8px}
}
@media(max-width:900px){
  .site-sticky-header{position:sticky}
  .main-nav{min-height:94px;height:auto;padding:10px 20px}
  .nav-logo{width:210px!important;max-width:62vw}
  .nav-logo img,.nav-logo .custom-logo{height:76px;max-width:210px}
  .nav-menu.open{top:94px}
}
@media screen and (max-width:782px){.admin-bar .site-sticky-header{top:46px}}
@media(max-width:520px){
  .topbar{padding:8px 16px;font-size:12px}
  .topbar p{gap:10px}
  .main-nav{padding:8px 16px}
  .nav-logo{width:184px!important}
  .nav-logo img,.nav-logo .custom-logo{height:68px;max-width:184px}
}

/* HERO FLOATING STATS LAYOUT */
.home-hero{
  min-height:720px;
  height:calc(100vh - 70px);
  align-items:center;
  overflow:visible;
}
.home-hero-inner{
  padding:60px 48px 150px;
  max-width:680px;
}
.home-hero-inner h1{
  font-size:4rem;
  line-height:1.08;
  letter-spacing:0;
  color:#fff!important;
  text-shadow:0 4px 18px rgba(0,24,55,.62);
}
.home-hero-inner p{
  font-size:1.05rem;
  max-width:560px;
  color:rgba(255,255,255,.96)!important;
  text-shadow:0 3px 12px rgba(0,24,55,.58);
}
.home-hero .hero-label,
.home-hero .tag{
  color:#fff!important;
  text-shadow:0 2px 10px rgba(0,24,55,.62);
}
.hero-btns{
  gap:14px;
}
.home-hero + .stats-bar{
  position:relative;
  z-index:20;
  width:calc(100% - 96px);
  max-width:1180px;
  margin:-116px 48px 64px auto;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(180px,1fr));
  gap:18px;
  justify-content:end;
  background:transparent!important;
  border:0;
}
.home-hero + .stats-bar .stat{
  position:relative;
  min-height:150px;
  padding:28px 28px 24px;
  text-align:left;
  background:linear-gradient(145deg,#ffffff 0%,#f7fbff 100%);
  border:1px solid rgba(216,230,240,.92);
  border-top:5px solid var(--co-logo-blue);
  border-right:1px solid rgba(216,230,240,.92);
  box-shadow:0 22px 44px rgba(0,24,55,.14);
  overflow:hidden;
}
.home-hero + .stats-bar .stat::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:86px;
  height:86px;
  background:radial-gradient(circle at 100% 0,rgba(0,167,230,.28),rgba(0,167,230,0) 68%);
  pointer-events:none;
}
.home-hero + .stats-bar .stat::after{
  content:none;
}
.home-hero + .stats-bar .stat-n{
  color:var(--co-logo-navy);
  font-size:2.45rem;
  line-height:1;
  margin-bottom:10px;
}
.home-hero + .stats-bar .stat-n b{
  color:var(--co-logo-red);
}
.home-hero + .stats-bar .stat-l{
  color:#6d7480;
  font-size:.94rem;
  font-weight:700;
  letter-spacing:0;
  text-transform:none;
}
.home-hero + .stats-bar .stat:nth-child(1){
  border-top-color:var(--co-logo-red);
}
.home-hero + .stats-bar .stat:nth-child(2){
  background:linear-gradient(145deg,#fff7f5 0%,#ffffff 72%);
  border-color:rgba(216,230,240,.92);
  border-top-color:var(--co-logo-orange);
}
.home-hero + .stats-bar .stat:nth-child(2)::before{background:radial-gradient(circle at 100% 0,rgba(255,106,8,.24),rgba(255,106,8,0) 68%)}
.home-hero + .stats-bar .stat:nth-child(2) .stat-n,
.home-hero + .stats-bar .stat:nth-child(2) .stat-n b,
.home-hero + .stats-bar .stat:nth-child(2) .stat-l{
  color:var(--co-logo-navy);
}
.home-hero + .stats-bar .stat:nth-child(2) .stat-n b{color:var(--co-logo-red)}
.home-hero + .stats-bar .stat:nth-child(3){
  background:linear-gradient(145deg,#f1f9ff 0%,#ffffff 74%);
  border-color:rgba(216,230,240,.92);
  border-top-color:var(--co-logo-sky);
}
.home-hero + .stats-bar .stat:nth-child(3)::before{background:radial-gradient(circle at 100% 0,rgba(0,167,230,.24),rgba(0,167,230,0) 68%)}
.home-hero + .stats-bar .stat:nth-child(3) .stat-n,
.home-hero + .stats-bar .stat:nth-child(3) .stat-l{color:var(--co-logo-navy)}
.home-hero + .stats-bar .stat:nth-child(3) .stat-n b{color:var(--co-logo-orange)}
.home-hero + .stats-bar .stat:nth-child(4){
  border-top-color:var(--co-logo-orange);
}
.home-hero + .stats-bar .stat:nth-child(4)::before{
  background:radial-gradient(circle at 100% 0,rgba(255,106,8,.24),rgba(255,106,8,0) 68%);
}
@media(max-width:980px){
  .home-hero{min-height:660px;height:auto}
  .home-hero-inner{padding:64px 24px 130px}
  .home-hero-inner h1{font-size:3rem}
  .home-hero + .stats-bar{
    width:calc(100% - 40px);
    margin:-92px 20px 48px;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:560px){
  .home-hero{min-height:620px}
  .home-hero-inner{padding:56px 20px 92px}
  .home-hero-inner h1{font-size:2.35rem}
  .home-hero-inner p{font-size:.95rem}
  .home-hero + .stats-bar{
    margin:-54px 16px 38px;
    width:calc(100% - 32px);
    grid-template-columns:1fr;
    gap:12px;
  }
  .home-hero + .stats-bar .stat{
    min-height:120px;
    padding:22px;
  }
}

/* JOINED HEADER FOLLOWS SCROLL */
body:not(.block-editor-page){
  --co-fixed-header-height:149px;
  padding-top:var(--co-fixed-header-height);
}
.site-sticky-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:5000;
}
.site-sticky-header .topbar,
.site-sticky-header .main-nav{
  position:relative;
  top:auto!important;
}
.admin-bar .site-sticky-header{
  top:32px;
}
@media(max-width:1180px){
  body:not(.block-editor-page){--co-fixed-header-height:141px}
}
@media(max-width:900px){
  body:not(.block-editor-page){--co-fixed-header-height:136px}
}
@media(max-width:520px){
  body:not(.block-editor-page){--co-fixed-header-height:126px}
}
@media screen and (max-width:782px){
  .admin-bar .site-sticky-header{top:46px}
}

/* EDITABLE COVER HERO */
.home-hero.wp-block-cover{
  padding:0;
  color:#fff;
  overflow:visible;
}
.home-hero.wp-block-cover .wp-block-cover__background{
  display:none;
}
.home-hero.wp-block-cover .wp-block-cover__image-background{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.home-hero.wp-block-cover::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(0,24,55,.62) 0%,rgba(0,24,55,.40) 38%,rgba(0,72,145,.18) 68%,rgba(0,24,55,.08) 100%);
}
.home-hero.wp-block-cover .wp-block-cover__inner-container{
  position:relative;
  z-index:2;
  width:100%;
}

/* HERO TEXT ENTRANCE DESIGN */
.home-hero .home-hero-inner{
  position:relative;
  margin-left:48px;
  padding:42px 0 46px;
  max-width:760px;
  background:transparent;
  border-left:0;
  border-radius:0;
  box-shadow:none;
  backdrop-filter:none;
  animation:coHeroPanelIn .75s cubic-bezier(.2,.8,.2,1) .08s both;
}
.home-hero .home-hero-inner::before{
  content:'';
  position:absolute;
  top:24px;
  left:0;
  width:120px;
  height:3px;
  background:linear-gradient(90deg,var(--co-logo-red),var(--co-logo-orange),var(--co-logo-sky),transparent);
}
.home-hero .home-hero-inner::after{
  content:none;
}
.home-hero .home-hero-inner > *{
  position:relative;
  z-index:1;
  opacity:0;
  transform:translateY(18px);
  animation:coHeroTextIn .72s cubic-bezier(.2,.8,.2,1) both;
}
.home-hero .home-hero-inner > *:nth-child(1){animation-delay:.18s}
.home-hero .home-hero-inner > *:nth-child(2){animation-delay:.28s}
.home-hero .home-hero-inner > *:nth-child(3){animation-delay:.4s}
.home-hero .home-hero-inner > *:nth-child(4){animation-delay:.52s}
.home-hero .home-hero-inner > *:nth-child(5){animation-delay:.64s}
.home-hero .hero-label{
  display:inline-flex;
  align-items:center;
  gap:12px;
  letter-spacing:.18em;
}
.home-hero .hero-label::before{
  content:'';
  width:34px;
  height:2px;
  background:linear-gradient(90deg,var(--co-logo-red),var(--co-logo-orange));
}
.home-hero .home-hero-inner h1{
  color:#fff!important;
  text-shadow:0 5px 24px rgba(0,24,55,.72);
}
.home-hero .home-hero-inner p{
  color:rgba(255,255,255,.94)!important;
}
@keyframes coHeroPanelIn{
  from{opacity:0;transform:translateX(-26px) scale(.985)}
  to{opacity:1;transform:translateX(0) scale(1)}
}
@keyframes coHeroTextIn{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
@media(max-width:980px){
  .home-hero .home-hero-inner{
    margin:0 24px;
    padding:34px 0 38px;
  }
}
@media(max-width:560px){
  .home-hero .home-hero-inner{
    margin:0 16px;
    padding:28px 0 30px;
  }
}
@media(prefers-reduced-motion:reduce){
  .home-hero .home-hero-inner,
  .home-hero .home-hero-inner > *{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
  }
}

/* EDITABLE INNER PAGE PHOTO HEROES */
.inner-hero.wp-block-cover{
  min-height:420px;
  padding:0;
  overflow:hidden;
  background:var(--co-logo-navy);
}
.inner-hero.wp-block-cover .wp-block-cover__image-background{
  object-fit:cover;
  object-position:center;
}
.inner-hero.wp-block-cover .wp-block-cover__background{
  opacity:1!important;
  background:linear-gradient(90deg,rgba(0,24,55,.62) 0%,rgba(0,72,145,.30) 48%,rgba(0,24,55,.08) 100%)!important;
}
.inner-hero.wp-block-cover::after{
  z-index:3;
}
.inner-hero.wp-block-cover .wp-block-cover__inner-container{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  width:100%;
  max-width:1160px;
  margin:0 auto;
  padding:64px 48px;
}
.inner-hero.wp-block-cover .inner-hero-content{
  max-width:760px;
}
.inner-hero.wp-block-cover .inner-hero-content h1{
  text-shadow:0 5px 24px rgba(0,24,55,.55);
}
.inner-hero.wp-block-cover .inner-hero-content p{
  color:rgba(255,255,255,.93);
  text-shadow:0 3px 18px rgba(0,24,55,.45);
}
@media(max-width:760px){
  .inner-hero.wp-block-cover{
    min-height:360px;
  }
  .inner-hero.wp-block-cover .wp-block-cover__inner-container{
    padding:48px 22px;
  }
}
