:root{
  --ew-navy:#071a33;
  --ew-navy-deep:#071a33;
  --ew-navy-2:#12365d;
  --ew-navy-soft:#12365d;
  --ew-gold:#f9c400;
  --ew-gold-dark:#d99f00;
  --ew-orange:#d99f00;
  --ew-gold-pale:#fff4bd;
  --ew-ink:#1f1f1f;
  --ew-muted:#58677a;
  --ew-soft:#efeee3;
  --ew-cream:#f8f7ec;
  --ew-white:#fff;
  --ew-line:#d9d9cf;
  --ew-shadow-sm:0 8px 22px rgba(7,26,51,.08);
  --ew-shadow:0 20px 45px rgba(7,26,51,.13);
  --ew-shadow-dark:0 24px 54px rgba(0,0,0,.28);
  --ew-radius-sm:0;
  --ew-radius:0;
  --ew-radius-lg:0;
}

html body{
  background:var(--ew-cream)!important;
  color:var(--ew-ink)!important;
  font-family:"Poppins",Arial,sans-serif!important;
  font-weight:400!important;
}
html body h1{font-weight:600!important}
html body h2,
html body h3,
html body h4{font-weight:600!important}
html body p,
html body li{font-weight:400!important}
html body main > section + section{margin-top:14px}
html body img{border-radius:0!important}

/* Shared header */
.ew-header{
  position:relative!important;
  z-index:100!important;
  background:var(--ew-cream)!important;
  border-bottom:1px solid rgba(31,31,31,.12)!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.ew-nav{
  width:min(1200px,calc(100% - 40px))!important;
  max-width:1200px!important;
  min-height:80px!important;
  padding:0!important;
}
.ew-logo{gap:10px!important}
.ew-logo img{width:48px!important;height:48px!important;flex-basis:48px!important}
.ew-logo strong{color:var(--ew-navy)!important;font-size:1.42rem!important;font-weight:800!important;letter-spacing:-.035em!important}
.ew-logo small{margin-top:5px!important;color:#a96f00!important;font-size:.88rem!important;font-weight:600!important}
.ew-menu{gap:20px!important}
.ew-menu a{
  min-height:auto!important;
  padding:0!important;
  border-radius:0!important;
  color:var(--ew-ink)!important;
  font-family:"Poppins",Arial,sans-serif!important;
  font-size:.94rem!important;
  font-weight:500!important;
}
.ew-menu a:not(.ew-call)::after{bottom:-7px!important;height:2px!important;background:var(--ew-gold)!important}
.ew-menu a:not(.ew-call):hover,
.ew-menu a.active:not(.ew-call){background:transparent!important;color:var(--ew-ink)!important}
.ew-call{
  min-height:48px!important;
  margin-left:10px!important;
  padding:12px 20px!important;
  border:1px solid var(--ew-gold-dark)!important;
  border-radius:8px!important;
  background:var(--ew-gold)!important;
  color:var(--ew-navy)!important;
  box-shadow:none!important;
  font-weight:600!important;
}
.ew-call:hover{border-color:var(--ew-ink)!important;background:var(--ew-ink)!important;color:#fff!important;box-shadow:0 12px 24px rgba(7,26,51,.14)!important}
.ew-menu-btn{width:48px!important;height:48px!important;border-radius:8px!important;background:var(--ew-navy)!important}

/* Section rhythm */
.section,
.course-section,
.course-detail,
.loc-section,
.manual-section,
.manual-steps,
.blog-section,
.legal-section{padding-top:72px!important;padding-bottom:72px!important}
.section.tight{padding-top:56px!important;padding-bottom:56px!important}
.soft,
.alt,
.course-section,
.course-detail,
.manual-section,
.manual-steps{background:var(--ew-cream)!important}
.section-title,
.course-title,
.loc-title,
.loc-heading{margin-bottom:34px!important}
.section-title h2,
.course-title h2,
.loc-title h2,
.loc-heading h2{color:var(--ew-navy)!important;font-size:clamp(2rem,4vw,3.4rem)!important}

/* Square internal heroes */
body:not(.page-type-utility) main > .hero:first-child,
body:not(.page-type-utility) main > .course-hero:first-child,
body:not(.page-type-utility) main > .loc-hero:first-child,
body:not(.page-type-utility) main > .manual-hero:first-child,
body:not(.page-type-utility) main > .pricingHero:first-child{
  width:min(1200px,calc(100% - 40px))!important;
  min-height:480px!important;
  margin-right:auto!important;
  margin-left:auto!important;
  border-radius:0!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
.page-type-article .hero,
.page-type-blog .hero,
.page-type-legal .hero,
.page-type-instructor .hero,
.page-type-service .hero{
  background:linear-gradient(100deg,rgba(7,26,51,.96),rgba(7,26,51,.72))!important;
}
.page-type-article .hero-grid,
.page-type-blog .hero-grid,
.page-type-legal .hero-grid,
.page-type-instructor .hero-grid,
.page-type-service .hero-grid{min-height:480px!important;padding:38px 28px!important}
.hero h1,
.course-hero h1,
.loc-hero h1,
.manual-hero h1,
.pricingHero h1,
.heroTitle{
  color:#fff!important;
  font-size:clamp(2.7rem,5vw,4.45rem)!important;
  font-weight:600!important;
  line-height:1.02!important;
}
.hero h1 span,
.course-hero h1 span,
.loc-hero h1 span,
.manual-hero h1 span,
.pricingHero h1 span,
.heroTitle span{color:var(--ew-gold)!important}
.hero p,
.course-hero p,
.loc-hero p,
.manual-hero p,
.pricingHero p{color:#e6edf5!important}
.hero-image,
.hero-card,
.floating-card,
.pageHeroWrap,
.heroCard,
.loc-hero-box,
.course-hero-box{border-radius:0!important}
.hero-image img{border-radius:0!important}
.hero-card,
.floating-card,
.heroCard{background:var(--ew-gold)!important;color:var(--ew-navy)!important;border:0!important;box-shadow:var(--ew-shadow-dark)!important}
.hero-card h2,
.hero-card h3,
.hero-card p,
.floating-card h2,
.floating-card p,
.heroCard h3,
.heroCard p{color:var(--ew-navy)!important}
.course-badge,
.loc-badge,
.manual-badge,
.badge{border-radius:0!important;background:var(--ew-gold)!important;color:var(--ew-navy)!important}
.pageHeroWrap{min-height:430px!important;background-color:var(--ew-navy)!important}

/* Buttons */
.btn,.loc-btn,.course-btn,.read-more,.call-btn,.nav-call,.manual-btn,.gain-btn{
  min-height:48px!important;
  padding:12px 20px!important;
  border-radius:8px!important;
  font-family:"Poppins",Arial,sans-serif!important;
  font-weight:600!important;
}

/* Square cards throughout the remaining templates */
.card,.plan,.planCard,.planCard2,.course-card,.blog-card,.loc-card,.svc-card,.resource-card,.tip,.faq-item,
.contact-box,.package-box,.sr-row,.instructor-card,.why-card,.legal-card,.manual-card,.manual-side,.manual-step,
.course-panel,.course-side,.loc-panel,.loc-cta,.cta,.featured,.featured-card,.article,.price-card,.package-price,
.gain-card,.gain-cta,.values-pro__card{
  border:1px solid var(--ew-line)!important;
  border-radius:0!important;
  box-shadow:var(--ew-shadow-sm)!important;
}
.card:hover,.plan:hover,.planCard:hover,.planCard2:hover,.course-card:hover,.blog-card:hover,.loc-card:hover,
.svc-card:hover,.resource-card:hover,.instructor-card:hover,.why-card:hover,.legal-card:hover{
  border-color:var(--ew-gold-dark)!important;
  box-shadow:var(--ew-shadow)!important;
  transform:translateY(-6px);
}
.course-card img,.blog-card img,.loc-card img,.svc-card img,.instructor-card img{border-radius:0!important}
.icon,.legal-icon,.why-icon,.ew-section-icon,.tip-no,.manual-step-number{border-radius:0!important}
.read-more,.svc-link,.legal-link,.resource-card a{color:var(--ew-navy)!important}

/* Location pages */
.loc-hero{background-position:center!important}
.loc-grid,.svc-grid{gap:20px!important}
.loc-card-body,.svc-body{padding:22px!important}
.loc-panel{background:var(--ew-ink)!important;color:#fff!important}
.loc-panel h2,.loc-panel h3{color:#fff!important}.loc-panel p,.loc-panel li{color:#d5dee9!important}
.loc-cta{background:var(--ew-gold)!important;color:var(--ew-navy)!important;box-shadow:none!important}
.loc-cta h2,.loc-cta p{color:var(--ew-navy)!important}

/* Course and service detail pages */
.course-panel{background:#fff!important}
.course-side,.manual-side{background:var(--ew-ink)!important;color:#fff!important}
.course-side h3,.manual-side h3{color:var(--ew-gold)!important}
.course-side p,.course-side li,.manual-side p,.manual-side li{color:#d5dee9!important}
.course-list div,.manual-list div{border-radius:0!important;background:#fff8d8!important;border-left:4px solid var(--ew-gold)!important}
.course-cta,.manual-cta{background:var(--ew-ink)!important;color:#fff!important}
.course-cta h2,.manual-cta h2{color:#fff!important}

/* Blog, article, and legal reading */
.featured{overflow:hidden!important}
.article{
  max-width:900px!important;
  margin-right:auto!important;
  margin-left:auto!important;
  padding:clamp(28px,5vw,52px)!important;
  background:#fff!important;
  color:var(--ew-ink)!important;
}
.article h2{margin-top:34px!important;color:var(--ew-navy)!important}
.article p,.article li{color:var(--ew-muted)!important;line-height:1.8!important}
.legal-card,.blog-card,.instructor-card,.why-card{background:#fff!important}
.legal-icon{background:var(--ew-gold)!important}

/* Pricing and offer cards */
.popular{border:2px solid var(--ew-gold)!important}
.price-card,.package-price{background:var(--ew-gold)!important;color:var(--ew-navy)!important}
.price-card h2,.price-card h3,.price-card p,.package-price h2,.package-price h3,.package-price p,.package-price li{color:var(--ew-navy)!important}

/* FAQ and CTA */
.faq-item{background:#fff!important}
.faq-question,.faq-item summary{border-radius:0!important;color:var(--ew-navy)!important}
.faq-toggle,.faq-icon{border-radius:0!important;background:var(--ew-gold)!important}
.cta{background:var(--ew-ink)!important;color:#fff!important}
.cta h2,.cta h3{color:#fff!important}.cta p{color:#d5dee9!important}
.contact-box{background:#fff!important;color:var(--ew-ink)!important}
.contact-box h2,.contact-box h3,.contact-box p{color:var(--ew-ink)!important}

/* Utility pages */
.page-type-utility main{display:grid;min-height:560px;place-items:center;padding:40px 0}
.page-type-utility main > section{width:min(900px,calc(100% - 40px));padding:72px 30px!important;background:#fff!important;border-top:8px solid var(--ew-gold);box-shadow:var(--ew-shadow)}
.page-type-utility main h1{color:var(--ew-navy)!important;font-size:clamp(2.4rem,6vw,4rem)!important}

/* Shared footer */
.ew-footer{padding:58px 0 22px!important;background:var(--ew-ink)!important;color:#fff!important}
.ew-footer-wrap{
  width:min(1200px,calc(100% - 40px))!important;
  display:grid!important;
  grid-template-columns:1.4fr repeat(3,1fr)!important;
  gap:44px!important;
}
.ew-footer-logo{display:flex!important;align-items:center!important;gap:10px!important;margin-bottom:22px!important}
.ew-footer-logo img{width:48px!important;height:48px!important;object-fit:contain!important;filter:none!important}
.ew-footer-logo span{display:flex;flex-direction:column;line-height:1}
.ew-footer-logo strong{color:#fff!important;font-size:1.42rem!important;font-weight:800!important}
.ew-footer-logo small{margin-top:5px;color:var(--yellow,#f9c400)!important;font-size:.88rem!important;font-weight:600!important}
.ew-footer-tagline{max-width:300px!important;margin:0 0 18px!important;color:#bfc9d5!important}
.ew-footer-brand p,.ew-footer-links a{color:#bfc9d5!important}
.ew-footer-links{gap:5px!important}
.ew-footer-links h3{margin-bottom:5px!important;color:var(--ew-gold)!important;font-size:.95rem!important;font-weight:600!important}
.ew-footer-links a{min-height:auto!important;line-height:1.45!important}
.ew-footer-links a:hover{color:var(--ew-gold)!important}
.ew-copyright{width:min(1200px,calc(100% - 40px))!important;margin:42px auto 0!important;padding-top:20px!important;border-top:1px solid rgba(255,255,255,.14)!important;color:#99a6b6!important;text-align:center!important}
.ew-mobile-actions a{border-radius:0!important}

@media(max-width:1020px){
  .ew-menu{gap:13px!important}.ew-menu a{font-size:.86rem!important}
  .ew-footer-wrap{grid-template-columns:1.3fr repeat(2,1fr)!important}
}
@media(max-width:820px){
  html body main > section + section{margin-top:10px}
  .ew-nav{width:min(100% - 28px,1200px)!important}
  .ew-menu{inset:80px 0 auto!important;gap:0!important;padding:14px!important;background:var(--ew-cream)!important}
  .ew-menu a{padding:12px 14px!important;font-size:1rem!important}.ew-call{margin:8px 0 0!important}
  body:not(.page-type-utility) main > .hero:first-child,
  body:not(.page-type-utility) main > .course-hero:first-child,
  body:not(.page-type-utility) main > .loc-hero:first-child,
  body:not(.page-type-utility) main > .manual-hero:first-child,
  body:not(.page-type-utility) main > .pricingHero:first-child{width:calc(100% - 28px)!important;min-height:0!important}
  .page-type-article .hero-grid,.page-type-blog .hero-grid,.page-type-legal .hero-grid,
  .page-type-instructor .hero-grid,.page-type-service .hero-grid{min-height:0!important;grid-template-columns:1fr!important;padding:38px 20px!important}
  .section,.course-section,.course-detail,.loc-section,.manual-section,.manual-steps,.blog-section,.legal-section{padding-top:58px!important;padding-bottom:58px!important}
  .ew-footer-wrap{grid-template-columns:1fr 1fr!important}
}
@media(max-width:560px){
  .ew-logo img{width:42px!important;height:42px!important;flex-basis:42px!important}
  .ew-logo strong{font-size:1.18rem!important}.ew-logo small{font-size:.78rem!important}
  .hero h1,.course-hero h1,.loc-hero h1,.manual-hero h1,.pricingHero h1,.heroTitle{font-size:clamp(2.35rem,11vw,3.3rem)!important}
  .hero-grid,.course-detail-grid,.manual-grid,.loc-split{grid-template-columns:1fr!important}
  .ew-footer-wrap{grid-template-columns:1fr!important}
  .page-type-utility main > section{width:calc(100% - 28px);padding:56px 20px!important}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}
