/* ==========================================================================
   Eco York — main stylesheet
   Design tokens are CSS variables so the Customizer can retune the palette.
   ========================================================================== */

:root{
  /* Brand colors — overridable via Appearance → Customize → Brand Colors */
  --ey-teal:#1FA97A;
  --ey-teal-bright:#3CB878;
  --ey-teal-dark:#17855F;
  --ey-navy:#0D1B2A;
  --ey-navy-deep:#0A1620;
  --ey-navy-line:#22323F;
  --ey-orange:#F15B26;
  --ey-ivory:#F5F0E0; /* Rose Ivory — brand guide: warm highlights, cards, dividers */
  --ey-aqua:#4CC2C0; /* Aqua Teal — sampled from the brand guide swatch (its hex column had a typo) */
  --ey-aqua-light:#5FD1CF;
  --ey-surface:#F5F7F6; /* brand guide Light Surface (was cooler #EEF2F6) */
  --ey-white:#FFFFFF;
  --ey-slate:#5D6E79; /* was #7A8A99 — 3.2:1 on light surfaces; now 4.8:1+ */
  --ey-text:#3A4754;
  --ey-line:#0D1B2A;
  --ey-line-soft:#DFE5EA;
  --ey-radius:4px;
  --ey-maxw:1320px;
  --ey-font-display:"Bricolage Grotesque", "Helvetica Neue", Arial, sans-serif;
  --ey-font-body:Arial, "Helvetica Neue", Helvetica, sans-serif;
}

*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--ey-surface);
  color:var(--ey-navy);
  font-family:var(--ey-font-body);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
::selection{background:var(--ey-teal-bright);color:var(--ey-navy);}
:focus-visible{outline:2px solid var(--ey-teal);outline-offset:3px;border-radius:3px;}

h1,h2,h3,h4{font-family:var(--ey-font-display);letter-spacing:-0.02em;line-height:1.04;margin:0;}
p{margin:0;}

.ey-shell{width:100%;max-width:none;margin:0 auto;background:var(--ey-surface);overflow-x:clip;}
.ey-wrap{max-width:var(--ey-maxw);margin:0 auto;padding:0 52px;}
.ey-accentbar{height:4px;background:linear-gradient(90deg,var(--ey-teal) 0%,var(--ey-teal-bright) 100%);}

/* Entrance animation — runs on load via CSS (no JS dependency, so content can't
   get stuck hidden behind deferred/delayed scripts like WP Rocket's Delay JS). */
@keyframes ey-rise{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:none;}}
.ey-reveal{opacity:0;animation:ey-rise .7s cubic-bezier(.22,.61,.36,1) forwards;}
.ey-reveal.is-in{opacity:1;transform:none;}

/* ---------- Buttons ---------- */
.ey-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--ey-font-body);font-weight:700;font-size:15px;border-radius:var(--ey-radius);padding:16px 28px;cursor:pointer;border:1px solid transparent;transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease;will-change:transform;}
.ey-btn--primary{background-color:var(--ey-teal);color:#fff;background-image:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.4) 50%,transparent 65%);background-repeat:no-repeat;background-size:250% 100%;background-position:140% 0;transition:background-position .55s ease,background-color .16s ease,transform .16s ease,box-shadow .16s ease;}
.ey-btn--primary:hover{background-color:var(--ey-teal-dark);background-position:-40% 0;transform:translateY(-2px);box-shadow:0 8px 20px -6px rgba(31,169,122,.55),0 0 0 4px rgba(31,169,122,.2);}
.ey-btn--outline{background:transparent;color:var(--ey-navy);border-color:var(--ey-navy);}
.ey-btn--outline:hover{background:var(--ey-teal);border-color:var(--ey-teal);color:#fff;transform:translateY(-2px);box-shadow:0 8px 22px -6px rgba(31,169,122,.6),0 0 0 4px rgba(31,169,122,.2);}
.ey-btn--ondark{background:transparent;color:#EAF1EE;border-color:#3A4A54;}
.ey-btn--ondark:hover{background:var(--ey-teal-bright);border-color:var(--ey-teal-bright);color:var(--ey-navy);transform:translateY(-2px);box-shadow:0 8px 22px -6px rgba(60,184,120,.65),0 0 0 4px rgba(60,184,120,.2);}
.ey-btn--block{display:flex;justify-content:center;width:100%;}

.ey-kicker{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ey-teal);}
.ey-kicker--orange{color:var(--ey-orange);}
.ey-h2{font-size:clamp(32px,4vw,52px);}
.ey-lede{font-size:18px;line-height:1.6;color:var(--ey-text);}

/* ---------- Utility bar ---------- */
.ey-utility{background:var(--ey-navy);color:#9DB0AB;}
.ey-utility__inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:9px 28px;font-size:12.5px;font-weight:500;flex-wrap:wrap;}
.ey-utility__left{display:flex;align-items:center;gap:9px;}
.ey-dot{width:6px;height:6px;border-radius:50%;background:var(--ey-teal-bright);display:inline-block;}
.ey-utility__right{display:flex;align-items:center;gap:18px;}
.ey-utility__right .ey-stars{color:var(--ey-orange);letter-spacing:.08em;}
.ey-utility__right a{color:#EEF2F6;font-weight:700;}
.ey-check{color:var(--ey-teal-bright);}

/* ---------- Nav ---------- */
.ey-nav{position:sticky;top:0;z-index:30;background:var(--ey-surface);border-bottom:1px solid var(--ey-navy);}
.ey-nav__inner{display:flex;align-items:stretch;justify-content:space-between;}
.ey-nav__logo{display:flex;align-items:center;gap:13px;flex:none;padding:14px 26px;border-right:1px solid var(--ey-navy);background:var(--ey-navy);}
.ey-nav__logo img{height:42px;width:auto;}
.ey-nav__logo .ey-wordmark{font-family:var(--ey-font-display);font-weight:800;font-size:23px;color:#fff;}
.ey-nav__links{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:700;padding:0 30px;flex:1;color:var(--ey-navy);list-style:none;margin:0;}
.ey-nav__links>li{position:static;}
.ey-nav__top{display:flex;align-items:center;gap:6px;cursor:pointer;padding:6px 0;background:none;border:0;font:inherit;color:inherit;}
.ey-nav__top .ey-caret{font-size:9px;color:var(--ey-teal);}
.ey-nav__cta{display:flex;align-items:center;flex:none;padding:0 22px;border-left:1px solid var(--ey-line-soft);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ey-teal);transition:background .16s ease;}
.ey-nav__cta:hover{background:#E6ECF1;}
.ey-nav__cta--solid{background:var(--ey-teal);color:#fff;border-left:1px solid var(--ey-navy);padding:0 26px;}
.ey-nav__cta--solid:hover{background:var(--ey-teal-dark);}

/* Mega menu */
.ey-mega{position:absolute;left:0;right:0;top:100%;background:var(--ey-surface);border-bottom:1px solid var(--ey-navy);box-shadow:0 30px 50px -22px rgba(13,27,42,.35);display:none;}
.ey-mega.is-open{display:block;}
/* Editable WP primary menu — styled to match the designed nav */
.ey-nav__links li{margin:0;}
.ey-nav__links>li.ey-nav__item{position:relative;display:flex;align-items:center;}
a.ey-nav__top{text-decoration:none;}
.ey-nav__dropdown{position:absolute;top:100%;left:-12px;min-width:264px;background:var(--ey-surface);border:1px solid var(--ey-navy);border-top:3px solid var(--ey-teal);box-shadow:0 30px 50px -22px rgba(13,27,42,.42);list-style:none;margin:0;padding:10px 0;display:none;z-index:40;}
.ey-nav__links>li.ey-nav__item:hover>.ey-nav__dropdown,.ey-nav__links>li.ey-nav__item:focus-within>.ey-nav__dropdown{display:block;}
.ey-nav__dropdown li{margin:0;}
.ey-nav__dropdown li a{display:block;padding:10px 20px;font-family:var(--ey-font-display);font-size:15px;font-weight:600;letter-spacing:-0.01em;color:var(--ey-navy);}
.ey-nav__dropdown li a:hover{background:#E6ECF1;color:var(--ey-teal);}
/* Menu uses the demo's Space Grotesk; mega link names stay on the display face */
.ey-nav__top,.ey-mega__kicker,.ey-mega__sub,.ey-chip,.ey-nav__cta,.ey-utility,.ey-nav__dropdown li a{font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;}
.ey-pagehero--photo .ey-pagehero__inner{padding-top:92px;padding-bottom:92px;}
/* Migrated KingComposer counters → branded stat blocks */
.ey-stat-block{text-align:center;padding:8px 0;}
.ey-stat-num{font-family:var(--ey-font-display);font-size:48px;font-weight:800;line-height:1;color:var(--ey-teal);margin:0;letter-spacing:-0.02em;}
.ey-stat-label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ey-slate);margin:6px 0 0;}
.ey-migrate-note{color:var(--ey-slate);}
.ey-infobox{text-align:center;}
.ey-infobox-icon{margin-left:auto;margin-right:auto;}
/* Migrated Crumina check-lists (legible on light or dark backgrounds) */
.ey-checklist{list-style:none;padding-left:0;}
.ey-checklist li{position:relative;padding-left:30px;margin-bottom:10px;}
.ey-checklist li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--ey-teal);font-weight:800;}
.has-text-color .ey-checklist li{color:inherit;}
/* Migrated pricing tables */
.ey-pricing{border:1px solid var(--ey-line-soft);border-radius:12px;padding:30px 26px;background:#fff;height:100%;}
.ey-pricing-title{font-size:24px;margin:0 0 4px;}
.ey-pricing-price{font-family:var(--ey-font-display);font-size:34px;font-weight:800;color:var(--ey-teal);margin:0 0 4px;line-height:1;}
.ey-pricing-sub{color:var(--ey-slate);font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;margin:0 0 16px;}
/* Migrated KingComposer colored columns/sections */
.ey-kc-card{height:100%;}
.ey-kc-section :where(h1,h2,h3,h4,p,li){color:inherit;}
.ey-kc-card :where(h1,h2,h3,h4,p,li){color:inherit;}
/* Migrated testimonials / team / video */
.ey-testimonial{border-left:3px solid var(--ey-teal);padding:8px 0 8px 22px;font-style:normal;}
.ey-testimonial cite{display:block;margin-top:10px;font-style:normal;font-weight:700;color:var(--ey-slate);}
.ey-team{text-align:center;}
.ey-team-photo img{border-radius:50%;width:140px;height:140px;object-fit:cover;margin:0 auto;}
.ey-team-role{color:var(--ey-slate);font-size:13px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;margin-top:2px;}
.ey-cta-box{background:var(--ey-surface);border:1px solid var(--ey-line-soft);border-radius:12px;padding:36px 32px;text-align:center;}
.ey-contact-item{margin-bottom:12px;}
.ey-skill{margin-bottom:14px;}
.ey-skill-bar{height:8px;background:var(--ey-line-soft);border-radius:20px;overflow:hidden;}
.ey-skill-bar span{display:block;height:100%;background:var(--ey-teal);border-radius:20px;}
.ey-mega__grid{display:grid;}
.ey-mega__col{padding:28px 26px 30px;border-right:1px solid var(--ey-line-soft);}
.ey-mega__col:last-child{border-right:0;}
.ey-mega__kicker{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px;color:var(--ey-teal);}
.ey-mega__link{display:block;padding:8px 9px;margin:0 -9px;border-radius:var(--ey-radius);}
.ey-mega__link:hover{background:#E6ECF1;}
.ey-mega__name{display:block;font-family:var(--ey-font-display);font-size:15px;font-weight:600;color:var(--ey-navy);letter-spacing:-0.01em;}
.ey-mega__sub{display:block;font-size:12.5px;line-height:1.4;color:var(--ey-slate);margin-top:2px;}
.ey-mega__promo{background:var(--ey-navy);color:#EAF1EE;padding:28px 26px;display:flex;flex-direction:column;}
.ey-mega__promo .ey-mega__kicker{color:var(--ey-teal-bright);}
.ey-mega__promo h4{font-size:23px;font-weight:700;line-height:1.1;margin-bottom:10px;}
.ey-mega__promo p{font-size:13px;line-height:1.5;color:#9DB0AB;margin-bottom:auto;}
.ey-chips{display:flex;flex-wrap:wrap;gap:8px;}
.ey-chip{font-size:13.5px;font-weight:600;color:var(--ey-navy);padding:7px 13px;border:1px solid #C1CBD2;border-radius:3px;}
.ey-chip:hover{background:var(--ey-navy);color:var(--ey-surface);border-color:var(--ey-navy);}

/* ---------- Hero ---------- */
.ey-hero{display:grid;grid-template-columns:1.08fr .92fr;border-bottom:1px solid var(--ey-navy);}
.ey-hero__copy{padding:64px 52px 58px;border-right:1px solid var(--ey-navy-line);background:var(--ey-navy);display:flex;flex-direction:column;}
.ey-hero__eyebrow{display:flex;align-items:center;gap:11px;margin-bottom:30px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ey-teal-bright);}
.ey-hero__eyebrow .tag{background:var(--ey-teal);color:#fff;padding:4px 9px;border-radius:3px;}
.ey-hero h1{font-weight:700;font-size:clamp(42px,4.8vw,68px);margin-bottom:26px;color:#EEF2F6;text-wrap:balance;}
.ey-hero h1 .hl{background:var(--ey-teal-bright);color:var(--ey-navy);padding:0 9px;border-radius:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone;}
.ey-hero__sub{font-size:18px;line-height:1.6;color:#AEBAC4;margin-bottom:34px;max-width:500px;}
.ey-hero__actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:auto;}
.ey-hero__actions .ey-btn--outline{color:#EEF2F6;border-color:#3A4A54;}
.ey-hero__trust{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#93A1AB;margin-top:34px;}
.ey-hero__trust .ey-stars{color:var(--ey-orange);letter-spacing:.1em;}
.ey-hero__trust .sep{color:#3A4A54;}
.ey-hero__honesty{font-size:15px;line-height:1.5;color:var(--ey-teal-bright);font-weight:700;margin:0 0 30px;max-width:480px;border-left:3px solid var(--ey-teal);padding-left:14px;}
.ey-why-card{padding:30px 30px 34px;border-right:1px solid var(--ey-line-soft);}
.ey-why-card:last-child{border-right:0;}
.ey-why-card h3{font-size:22px;font-weight:700;margin-bottom:10px;color:var(--ey-navy);}
.ey-why-card p{font-size:15px;line-height:1.6;color:var(--ey-text);}
.ey-promise{border-bottom:1px solid var(--ey-navy);background:var(--ey-white);}
.ey-promise__inner{display:flex;flex-wrap:wrap;gap:14px 36px;justify-content:center;padding:22px 52px;}
.ey-promise__item{display:flex;align-items:center;gap:9px;font-weight:700;font-size:14px;color:var(--ey-navy);}
.ey-promise__item span{color:var(--ey-teal);font-weight:800;}
/* Featured result band */
.ey-result{display:grid;grid-template-columns:1fr 1.1fr;border-bottom:1px solid var(--ey-navy);background:var(--ey-navy);color:#EAF1EE;}
.ey-result__lead{padding:40px 44px;border-right:1px solid var(--ey-navy-line);}
.ey-result__client{font-family:var(--ey-font-display);font-size:clamp(26px,3vw,38px);font-weight:800;color:#fff;margin:0 0 10px;letter-spacing:-0.02em;}
.ey-result__blurb{font-size:15px;line-height:1.6;color:#9DB0AB;margin:0 0 16px;}
.ey-result__link{font-family:'Space Grotesk',Arial,sans-serif;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--ey-teal-bright);}
.ey-result__stats{display:grid;grid-template-columns:1fr 1fr;}
.ey-result__stat{padding:30px 28px;border-right:1px solid var(--ey-navy-line);border-bottom:1px solid var(--ey-navy-line);}
.ey-result__stat:nth-child(2n){border-right:0;}
.ey-result__stat:nth-child(n+3){border-bottom:0;}
.ey-result__num{font-family:var(--ey-font-display);font-size:38px;font-weight:800;color:var(--ey-teal-bright);line-height:1;letter-spacing:-0.02em;}
.ey-result__lbl{font-size:13px;color:#9DB0AB;margin-top:6px;line-height:1.35;}
@media(max-width:860px){.ey-result{grid-template-columns:1fr;}.ey-result__lead{border-right:0;border-bottom:1px solid var(--ey-navy-line);}}
.ey-results-rotator{position:relative;}
.ey-result--slide{display:none;}
.ey-result--slide.is-active{display:grid;}
.ey-result__logo{max-height:40px;width:auto;margin-bottom:14px;display:block;background:#fff;padding:8px 10px;border-radius:6px;}
.ey-results-dots{display:flex;gap:8px;justify-content:center;padding:16px;background:var(--ey-navy);border-bottom:1px solid var(--ey-navy);}
.ey-dot{width:9px;height:9px;border-radius:50%;border:0;background:#3A4A54;cursor:pointer;padding:0;}
.ey-dot.is-active{background:var(--ey-teal-bright);}
.ey-hero__panel{background:var(--ey-navy-deep);display:flex;flex-direction:column;justify-content:center;padding:44px;}

/* Audit card (hero + shortcode container) */
.ey-auditcard{border:1px solid var(--ey-teal);border-radius:6px;background:var(--ey-navy-deep);overflow:hidden;}
.ey-auditcard__head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--ey-teal);}
.ey-auditcard__head .lbl{display:flex;align-items:center;gap:9px;color:var(--ey-teal-bright);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.ey-auditcard__head .blip{width:8px;height:8px;border-radius:50%;background:var(--ey-teal-bright);display:inline-block;animation:ey-blink 1.5s ease-in-out infinite;}
.ey-auditcard__head .free{color:#7C9088;font-size:11px;text-transform:uppercase;font-weight:700;}
.ey-auditcard__body{padding:28px 26px 30px;color:#EEF2F6;}
.ey-auditcard__body h3{font-size:26px;font-weight:700;line-height:1.08;margin-bottom:8px;}
.ey-auditcard__body .desc{font-size:13.5px;line-height:1.5;color:#9DB0AB;margin-bottom:22px;}
@keyframes ey-blink{0%,100%{opacity:1;}50%{opacity:.3;}}

/* ---------- Stats ---------- */
.ey-stats{display:grid;grid-template-columns:1.3fr repeat(4,1fr);border-bottom:1px solid var(--ey-navy);background:var(--ey-white);}
.ey-stats__brand{padding:22px 28px;border-right:1px solid var(--ey-line-soft);display:flex;flex-direction:column;justify-content:center;gap:10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.ey-stats__brand .muted{color:var(--ey-slate);}
.ey-stats__badges{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.ey-badge{border:1px solid #C1CBD2;border-radius:3px;padding:5px 9px;background:#fff;}
.ey-badge--makers{color:var(--ey-teal);}
.ey-badge--img{height:34px;width:auto;padding:0;border:0;background:transparent;display:block;}
.ey-stat{padding:22px;border-right:1px solid var(--ey-line-soft);display:flex;flex-direction:column;gap:4px;}
.ey-stat:last-child{border-right:0;}
.ey-stat__num{font-family:var(--ey-font-display);font-size:38px;font-weight:800;line-height:1;}
.ey-stat__lbl{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ey-slate);}

/* ---------- Sections ---------- */
.ey-section{border-bottom:1px solid var(--ey-navy);}
.ey-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:58px 52px 36px;flex-wrap:wrap;}
.ey-section__head--center{display:block;text-align:center;max-width:680px;margin:0 auto;}
.ey-section__head .ey-kicker{margin-bottom:18px;display:block;}
.ey-link-arrow{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ey-navy);border-bottom:2px solid var(--ey-teal);padding-bottom:3px;}

/* Pillars */
.ey-pillars{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ey-navy);}
.ey-pillar{padding:32px 30px 34px;border-right:1px solid var(--ey-line-soft);display:flex;flex-direction:column;}
.ey-pillar:last-child{border-right:0;}
.ey-pillar__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;}
.ey-pillar__idx{font-family:var(--ey-font-display);font-size:46px;font-weight:800;line-height:1;}
.ey-pillar__icon{width:46px;height:46px;border:2px solid var(--ey-teal);border-radius:11px;display:flex;align-items:center;justify-content:center;color:var(--ey-teal);flex:none;}
.ey-pillar__icon svg{width:24px;height:24px;}
.ey-pillar__num{display:block;font-family:var(--ey-font-display);font-size:15px;font-weight:800;color:var(--ey-teal);margin-bottom:14px;}
.ey-pillar__num::after{content:"";display:block;width:26px;height:2px;background:var(--ey-navy);margin-top:10px;}
.ey-pillar h3{font-size:25px;font-weight:700;line-height:1.08;margin-bottom:12px;}
.ey-pillar p{font-size:14.5px;line-height:1.6;color:var(--ey-text);margin-bottom:22px;}
.ey-pillar__list{display:flex;flex-direction:column;margin-bottom:24px;flex:1;border-top:1px solid var(--ey-line-soft);}
.ey-pillar__list .item{display:flex;align-items:flex-start;gap:10px;font-size:14px;padding:11px 0;border-bottom:1px solid var(--ey-line-soft);}
.ey-pillar__list .item .mk{color:var(--ey-teal);font-weight:700;flex:none;}
.ey-pillar__cta{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ey-navy);border-bottom:2px solid var(--ey-teal);padding-bottom:3px;width:max-content;}

/* Audit spotlight */
.ey-audit{background:var(--ey-navy);color:#EAF1EE;border-bottom:1px solid var(--ey-navy);}
.ey-audit__grid{display:grid;grid-template-columns:1fr 1fr;}
.ey-audit__copy{padding:66px 52px;border-right:1px solid var(--ey-navy-line);}
.ey-audit__copy .ey-kicker{color:var(--ey-teal-bright);display:inline-flex;align-items:center;gap:9px;margin-bottom:22px;}
.ey-audit__copy .ey-kicker .blip{width:8px;height:8px;border-radius:50%;background:var(--ey-teal-bright);display:inline-block;}
.ey-audit__copy h2{font-size:clamp(32px,3.8vw,50px);font-weight:700;margin-bottom:22px;color:#EEF2F6;text-wrap:balance;}
.ey-audit__copy p{font-size:17px;line-height:1.6;color:#9DB0AB;margin-bottom:32px;max-width:460px;}
.ey-audit__panel{padding:50px 52px;display:flex;align-items:center;}
.ey-audit__shortcode{width:100%;}
/* Demo report (shown when no shortcode set) */
.ey-report{background:var(--ey-surface);color:var(--ey-navy);border-radius:6px;width:100%;overflow:hidden;}
.ey-report__head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--ey-line-soft);}
.ey-report__head .lbl{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ey-slate);}
.ey-report__score{display:flex;align-items:baseline;gap:7px;}
.ey-report__score .n{font-family:var(--ey-font-display);font-size:40px;font-weight:800;color:var(--ey-teal);}
.ey-report__score .d{font-size:10px;color:var(--ey-slate);text-transform:uppercase;font-weight:700;}
.ey-report__body{padding:22px;display:flex;flex-direction:column;gap:18px;}
.ey-bar__row{display:flex;justify-content:space-between;margin-bottom:7px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;}
.ey-bar{height:9px;background:#E5E1D2;border-radius:20px;overflow:hidden;}
.ey-bar span{display:block;height:100%;border-radius:20px;}
.ey-report__foot{padding:16px 22px;border-top:1px solid var(--ey-line-soft);display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;}
.ey-report__foot .crit{color:var(--ey-orange);}

/* Products / cards grid */
.ey-grid2{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ey-navy);}
.ey-grid3{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ey-navy);}
.ey-grid4{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ey-navy);border-bottom:1px solid var(--ey-navy);}
.ey-card{display:flex;flex-direction:column;border-right:1px solid var(--ey-line-soft);border-bottom:1px solid var(--ey-line-soft);}
.ey-card:hover{background:#fff;}
.ey-card__media{aspect-ratio:16/6;background:repeating-linear-gradient(45deg,rgba(13,27,42,.045) 0 1px,transparent 1px 9px),#E6ECF1;border-bottom:1px solid var(--ey-line-soft);display:flex;align-items:center;justify-content:space-between;padding:0 18px;}
.ey-tag{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;padding:5px 11px;border-radius:3px;}
.ey-card__slug{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#94A1AA;}
.ey-card__body{padding:24px 26px 28px;}
.ey-card__body h3{font-size:23px;font-weight:700;margin-bottom:8px;}
.ey-card__body p{font-size:14.5px;line-height:1.6;color:var(--ey-text);}

/* Proof cases */
.ey-case{display:flex;flex-direction:column;border-right:1px solid var(--ey-line-soft);}
.ey-case:last-child{border-right:0;}
.ey-case:hover{background:#fff;}
.ey-case__media{aspect-ratio:4/3;background:repeating-linear-gradient(45deg,rgba(13,27,42,.045) 0 1px,transparent 1px 9px),#E6ECF1;border-bottom:1px solid var(--ey-line-soft);display:flex;align-items:flex-start;padding:16px;}
.ey-case__body{padding:22px 26px 26px;}
.ey-case__body h3{font-size:22px;font-weight:700;}

/* Tools */
.ey-tool{padding:28px 26px 30px;border-right:1px solid var(--ey-line-soft);display:flex;flex-direction:column;min-height:200px;}
.ey-tool:last-child{border-right:0;}
.ey-tool:hover{background:#fff;}
.ey-tool__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:auto;}
.ey-tool__idx{font-family:var(--ey-font-display);font-size:30px;font-weight:800;}
.ey-tool__dot{width:13px;height:13px;border-radius:50%;display:block;}
.ey-tool__tag{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:22px 0 8px;}
.ey-tool h3{font-size:18px;font-weight:700;line-height:1.1;margin-bottom:12px;}
.ey-tool__open{font-size:12px;font-weight:700;color:var(--ey-teal);text-transform:uppercase;letter-spacing:.03em;}
.ey-blogstrip{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--ey-navy);color:var(--ey-surface);padding:28px 52px;}
.ey-blogstrip:hover{background:var(--ey-navy-deep);}
.ey-blogstrip h3{font-size:24px;font-weight:700;}
.ey-blogstrip .sub{font-size:14px;color:#9DB0AB;margin-top:4px;}
.ey-blogstrip .go{flex:none;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--ey-teal-bright);}

/* Testimonials */
.ey-testimonials{background:var(--ey-white);}
.ey-quote{padding:32px 30px;border-right:1px solid var(--ey-line-soft);display:flex;flex-direction:column;}
.ey-quote:last-child{border-right:0;}
.ey-quote__mark{font-family:var(--ey-font-display);font-size:56px;font-weight:800;line-height:.6;margin-bottom:20px;}
.ey-quote p{font-size:16px;line-height:1.6;color:var(--ey-navy);margin-bottom:26px;flex:1;}
.ey-quote__by{display:flex;align-items:center;gap:13px;border-top:1px solid var(--ey-line-soft);padding-top:18px;}
.ey-quote__avatar{width:42px;height:42px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--ey-font-display);font-size:15px;font-weight:700;flex:none;}
.ey-quote__photo{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:none;display:block;}
.ey-quote__name{font-family:var(--ey-font-display);font-size:15px;font-weight:700;}
.ey-quote__org{font-size:11px;color:var(--ey-slate);text-transform:uppercase;letter-spacing:.04em;font-weight:700;}

/* Founder */
.ey-founder{display:grid;grid-template-columns:.78fr 1.22fr;border-bottom:1px solid var(--ey-navy);background:var(--ey-ivory);} /* Rose Ivory — the guide's warm accent on the human section */
.ey-founder__media{border-right:1px solid var(--ey-navy);align-self:start;aspect-ratio:4 / 5;background-color:#0D1B2A;display:flex;align-items:flex-end;padding:24px;background-size:cover;background-repeat:no-repeat;background-position:center;}
.ey-founder__tag{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--ey-teal);padding:6px 11px;border-radius:3px;}
.ey-founder__body{padding:58px 52px;display:flex;flex-direction:column;justify-content:center;}
.ey-founder__quote{font-family:var(--ey-font-display);font-weight:600;font-size:clamp(22px,2.5vw,32px);line-height:1.25;letter-spacing:-0.01em;margin-bottom:28px;text-wrap:pretty;}
.ey-founder__sign{display:flex;align-items:center;gap:16px;}
.ey-founder__sign .name{font-family:var(--ey-font-display);font-style:italic;font-size:26px;font-weight:600;color:var(--ey-teal);}
.ey-founder__sign .rule{width:24px;height:2px;background:var(--ey-navy);}
.ey-founder__sign .meta{font-size:12px;color:var(--ey-slate);text-transform:uppercase;letter-spacing:.04em;font-weight:700;}

/* CTA */
.ey-cta{background:var(--ey-navy);border-bottom:1px solid var(--ey-navy);}
.ey-cta__grid{display:grid;grid-template-columns:1.3fr .7fr;}
.ey-cta__copy{padding:62px 52px;border-right:1px solid var(--ey-navy-line);}
.ey-cta__copy h2{font-size:clamp(32px,3.8vw,50px);font-weight:700;margin-bottom:18px;color:#EEF2F6;text-wrap:balance;}
.ey-cta__copy p{font-size:17px;line-height:1.6;color:#9DB0AB;max-width:480px;}
.ey-cta__actions{padding:62px 44px;display:flex;flex-direction:column;justify-content:center;gap:14px;}
.ey-cta__actions .ey-btn--primary{justify-content:center;}

/* Footer */
.ey-footer{background:var(--ey-navy);color:#9DB0AB;}
.ey-footer__grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;border-bottom:1px solid var(--ey-navy-line);}
.ey-footer__brand{padding:50px 44px;border-right:1px solid var(--ey-navy-line);}
.ey-footer__brand img{height:74px;width:auto;margin-bottom:16px;}
.ey-footer__brand .wordmark{font-family:var(--ey-font-display);font-size:28px;font-weight:800;color:#EEF2F6;margin-bottom:12px;}
.ey-footer__brand p{font-size:14px;line-height:1.6;margin-bottom:18px;max-width:280px;}
.ey-footer__brand .contact{font-size:13px;font-weight:700;color:var(--ey-teal-bright);}
.ey-footer__col{padding:50px 32px;border-right:1px solid var(--ey-navy-line);}
.ey-footer__col:last-child{border-right:0;}
.ey-footer__col h4{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5E7280;margin-bottom:18px;font-family:var(--ey-font-body);}
.ey-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;font-size:14px;}
.ey-footer__col a:hover{color:#fff;}
.ey-footer__bar{padding:20px 44px;font-size:12px;color:#5E7280;text-transform:uppercase;letter-spacing:.05em;font-weight:700;}

/* ---------- Page hero (sub-pages) ---------- */
.ey-pagehero{background:var(--ey-navy);color:#EAF1EE;border-bottom:1px solid var(--ey-navy);}
.ey-pagehero__inner{padding:64px 52px;}
.ey-pagehero .crumbs{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ey-teal-bright);margin-bottom:18px;}
.ey-pagehero h1{font-size:clamp(34px,4.4vw,60px);font-weight:700;color:#fff;text-wrap:balance;}
.ey-pagehero .ey-pagehero__sub{font-size:18px;line-height:1.6;color:#9DB0AB;margin-top:18px;max-width:640px;}

/* ---------- Content (Gutenberg output) ---------- */
.ey-content{padding:58px 52px 72px;max-width:880px;}
.ey-content.full{max-width:none;}
.ey-content h2{font-size:clamp(28px,3vw,40px);font-weight:700;margin:1.4em 0 .5em;}
.ey-content h3{font-size:24px;font-weight:700;margin:1.2em 0 .4em;}
.ey-content p,.ey-content ul,.ey-content ol{font-size:17px;line-height:1.7;color:var(--ey-text);margin:0 0 1.1em;}
.ey-content a{color:var(--ey-teal);text-decoration:underline;text-underline-offset:2px;}
.ey-content img{border-radius:6px;margin:1.2em 0;}
.ey-content blockquote{border-left:3px solid var(--ey-teal);padding:6px 0 6px 22px;margin:1.4em 0;font-family:var(--ey-font-display);font-size:22px;line-height:1.35;color:var(--ey-navy);}
.ey-content ul,.ey-content ol{padding-left:1.2em;}

/* Two-column sub-page (sidebar) */
.ey-2col{display:grid;grid-template-columns:1fr 320px;gap:0;border-bottom:1px solid var(--ey-navy);}
.ey-2col__main{border-right:1px solid var(--ey-line-soft);}
.ey-aside{padding:48px 36px;display:flex;flex-direction:column;gap:24px;}
.ey-aside__card{border:1px solid var(--ey-line-soft);border-radius:8px;padding:24px;background:#fff;}
.ey-aside__card h4{font-family:var(--ey-font-display);font-size:18px;font-weight:700;margin-bottom:10px;}
.ey-aside__card p{font-size:14px;color:var(--ey-text);margin-bottom:16px;}

/* Blog */
.ey-bloglist{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ey-navy);border-bottom:1px solid var(--ey-navy);}
.ey-post{display:flex;flex-direction:column;border-right:1px solid var(--ey-line-soft);border-bottom:1px solid var(--ey-line-soft);background:#fff;}
.ey-post:hover{background:var(--ey-surface);}
.ey-post__media{aspect-ratio:16/9;background:repeating-linear-gradient(45deg,rgba(13,27,42,.045) 0 1px,transparent 1px 9px),#E6ECF1;border-bottom:1px solid var(--ey-line-soft);background-size:cover;background-position:center;}
.ey-post__body{padding:24px 26px 28px;display:flex;flex-direction:column;flex:1;}
.ey-post__meta{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ey-orange);margin-bottom:10px;}
.ey-post__body h3{font-size:21px;font-weight:700;line-height:1.15;margin-bottom:10px;}
.ey-post__body p{font-size:14.5px;line-height:1.6;color:var(--ey-text);margin-bottom:18px;flex:1;}
.ey-pagination{display:flex;gap:8px;padding:30px 52px;}
.ey-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;border:1px solid var(--ey-line-soft);font-weight:700;border-radius:var(--ey-radius);}
.ey-pagination .page-numbers.current{background:var(--ey-teal);color:#fff;border-color:var(--ey-teal);}

/* Contact */
.ey-contact{display:grid;grid-template-columns:1.1fr .9fr;border-bottom:1px solid var(--ey-navy);}
.ey-contact__info{padding:58px 52px;border-right:1px solid var(--ey-line-soft);}
.ey-contact__form{padding:58px 52px;background:#fff;}
.ey-infoitem{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--ey-line-soft);}
.ey-infoitem .k{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ey-slate);min-width:90px;}
.ey-infoitem .v{font-weight:700;}

/* WP core alignment + caption helpers */
.aligncenter{margin-left:auto;margin-right:auto;}
.alignright{float:right;margin:0 0 1em 1.5em;}
.alignleft{float:left;margin:0 1.5em 1em 0;}
.wp-caption{max-width:100%;}
.wp-caption-text{font-size:13px;color:var(--ey-slate);text-align:center;}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;}
.ey-skip{position:absolute;left:-9999px;}
.ey-skip:focus{left:8px;top:8px;background:#fff;padding:10px 16px;z-index:100;border-radius:4px;}

/* ============================================================
   v1.11 redesign overrides (team-feedback pass)
   ============================================================ */
.ey-kicker--ondark{color:var(--ey-teal-bright);}

/* Hero: plain eyebrow, local trust line replaces the stars row */
.ey-hero__eyebrow{display:block;}
.ey-hero__actions{margin-bottom:28px;}
.ey-hero__honesty{font-size:15px;line-height:1.55;color:#C2CCD4;border-left:2px solid var(--ey-teal);padding-left:14px;margin:0 0 28px;max-width:480px;}
.ey-hero__local{margin-top:auto;padding-top:26px;border-top:1px solid var(--ey-navy-line);font-size:14px;line-height:1.55;color:#93A1AB;}

/* Audit card: human-reviewed framing */
.ey-auditcard__head .lbl{display:block;}
.ey-auditcard__body h3{font-size:25px;line-height:1.12;}
.ey-auditcard__field{margin-bottom:12px;}
.ey-auditcard__field .fl{display:block;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7C9088;margin-bottom:6px;}
.ey-auditcard__field .fv{display:block;background:var(--ey-navy);border:1px solid #2A4A40;border-radius:4px;padding:12px 14px;font-size:14px;color:#5E7A70;}
.ey-auditcard__body .ey-btn--block{margin-top:6px;}
.ey-auditcard__by{display:flex;align-items:center;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid #1B3329;}
.ey-auditcard__by img{width:34px;height:34px;border-radius:50%;object-fit:cover;object-position:center 12%;flex:none;}
.ey-auditcard__by span{font-size:12.5px;line-height:1.4;color:#9DB0AB;}
.ey-auditcard__by strong{color:#C2CCD4;font-weight:600;}
.ey-auditcard__hint{margin-top:14px;font-size:11.5px;color:#7C9088;}

/* Stats: navy numbers, readable labels */
.ey-stat{gap:6px;padding:24px 22px;}
.ey-stat__num{color:var(--ey-navy);}
.ey-stat__lbl{font-size:11.5px;font-weight:600;letter-spacing:0;text-transform:none;line-height:1.35;color:#5C6B72;}

/* Pillars: icon-led, no giant index numbers */
.ey-pillar__icon{width:48px;height:48px;border-radius:12px;margin-bottom:22px;}
.ey-pillar h3{font-size:23px;line-height:1.12;}
.ey-pillar p{font-size:15.5px;}
.ey-pillar__list .item{font-size:14.5px;}

/* Process timeline */
.ey-process{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ey-navy);}
.ey-step{padding:30px 26px 34px;border-right:1px solid var(--ey-line-soft);}
.ey-step:last-child{border-right:0;}
.ey-step__n{font-family:var(--ey-font-display);font-size:15px;font-weight:800;color:var(--ey-teal);margin-bottom:14px;}
.ey-step h3{font-size:19px;font-weight:700;line-height:1.15;margin-bottom:8px;}
.ey-step p{font-size:14.5px;line-height:1.6;color:var(--ey-text);}

/* Products / cases / posts: drop diagonal hatch for clean placeholders */
.ey-card__media,.ey-case__media,.ey-post__media{background-image:none;background-color:#E6ECF1;}
.ey-card__body p{margin-bottom:14px;}
.ey-card__use{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ey-teal);}

/* Recent work: its own quiet band so it separates from the dark results panel */
.ey-recentwork{background:#F3F6F9;border-top:1px solid var(--ey-navy);padding:38px 52px 46px;}
.ey-recentwork__head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;flex-wrap:wrap;}
.ey-recentwork__label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ey-slate);}
.ey-recentwork__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.ey-recentwork__grid .ey-case{border:1px solid var(--ey-line-soft);border-radius:10px;overflow:hidden;background:#fff;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease;}
.ey-recentwork__grid .ey-case:hover{border-color:var(--ey-teal);transform:translateY(-3px);box-shadow:0 14px 30px -16px rgba(13,27,42,.35);background:#fff;}
.ey-recentwork__grid .ey-case__media{border-bottom:1px solid var(--ey-line-soft);}
@media(max-width:860px){.ey-recentwork{padding:30px 24px 36px;}.ey-recentwork__grid{grid-template-columns:1fr;}}

/* Tools: descriptions, neutral tags */
.ey-tool{min-height:210px;}
.ey-tool__tag{color:var(--ey-slate);margin:0 0 14px;}
.ey-tool h3{margin-bottom:10px;}
.ey-tool__desc{font-size:14px;line-height:1.55;color:var(--ey-text);margin:0 0 auto;}
.ey-tool__open{margin-top:18px;}

/* Testimonials: stars + service line, neutral avatar */
.ey-quote{padding:34px 30px;}
.ey-quote__stars{color:var(--ey-orange);font-size:14px;letter-spacing:.1em;margin-bottom:18px;}
.ey-quote p{font-size:16.5px;}
.ey-quote__avatar{background:var(--ey-navy);width:46px;height:46px;font-size:16px;}
.ey-quote__org{font-size:12.5px;text-transform:none;letter-spacing:0;font-weight:400;color:#5C6B72;}
.ey-quote__service{font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:700;color:var(--ey-teal);margin-top:3px;}

/* Blog meta: orange discipline (teal/slate instead) */
.ey-post__meta{color:#5C6B72;}

/* CTA: 20-min framing, person, risk reversal */
.ey-cta__person{display:flex;align-items:center;gap:13px;margin-top:26px;}
.ey-cta__person img{width:46px;height:46px;border-radius:50%;object-fit:cover;object-position:center 12%;flex:none;}
.ey-cta__person .nm{font-family:var(--ey-font-display);font-size:15px;font-weight:700;color:#EEF2F6;}
.ey-cta__person .rl{font-size:12.5px;color:#9DB0AB;}
.ey-cta__promise{display:flex;flex-direction:column;gap:8px;margin-top:8px;font-size:13px;font-weight:700;color:#9DB0AB;}
.ey-cta__promise .mk{color:var(--ey-teal-bright);font-weight:800;}

@media(max-width:860px){
  .ey-process{grid-template-columns:1fr 1fr;}
  .ey-step:nth-child(2n){border-right:0;}
}
@media(max-width:560px){
  .ey-process{grid-template-columns:1fr;}
  .ey-step{border-right:0;}
}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .ey-nav__links{gap:18px;padding:0 18px;font-size:13px;}
  .ey-hero,.ey-audit__grid,.ey-cta__grid,.ey-founder,.ey-contact{grid-template-columns:1fr;}
  .ey-hero__copy,.ey-audit__copy,.ey-cta__copy,.ey-founder__media,.ey-contact__info{border-right:0;border-bottom:1px solid var(--ey-navy-line);}
  .ey-stats{grid-template-columns:repeat(2,1fr);}
  .ey-stats__brand{grid-column:1 / -1;border-right:0;border-bottom:1px solid var(--ey-line-soft);}
  .ey-grid4{grid-template-columns:repeat(2,1fr);}
  .ey-2col{grid-template-columns:1fr;}
  .ey-aside{border-top:1px solid var(--ey-line-soft);}
}
@media (max-width:860px){
  .ey-wrap{padding:0 24px;}
  .ey-nav__links{display:none!important;}
  .ey-nav__toggle{display:flex!important;}
  .ey-mega{display:none!important;}
  .ey-nav__cta:not(.ey-nav__cta--solid){display:none!important;}
  .ey-nav__phone{display:flex!important;}
  .ey-nav__cta--solid{padding:0 16px;font-size:13px;}
  .ey-pillars,.ey-grid2,.ey-grid3,.ey-bloglist,.ey-mega__grid{grid-template-columns:1fr!important;}
  .ey-section__head,.ey-hero__copy,.ey-audit__copy,.ey-cta__copy,.ey-cta__actions,.ey-founder__body,.ey-content,.ey-contact__info,.ey-contact__form,.ey-pagehero__inner{padding-left:24px;padding-right:24px;}
  .ey-footer__grid{grid-template-columns:1fr 1fr;}
  .ey-footer__brand{grid-column:1 / -1;border-right:0;}
  .ey-quote,.ey-case,.ey-tool,.ey-pillar,.ey-card{border-right:0;}
}

/* Mobile nav toggle (hidden on desktop) */
.ey-nav__phone{display:none;align-items:center;gap:6px;flex:1;justify-content:flex-end;padding:0 16px;font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:13px;color:var(--ey-navy);white-space:nowrap;}
.ey-nav__phone-ico{color:var(--ey-teal);font-size:15px;}
.ey-nav__toggle{display:none;align-items:center;flex:none;padding:0 22px;border-left:1px solid var(--ey-line-soft);background:none;cursor:pointer;}
.ey-nav__toggle span{width:22px;height:2px;background:var(--ey-navy);position:relative;display:block;}
.ey-nav__toggle span::before,.ey-nav__toggle span::after{content:"";position:absolute;left:0;width:22px;height:2px;background:var(--ey-navy);}
.ey-nav__toggle span::before{top:-7px;}.ey-nav__toggle span::after{top:7px;}
.ey-mobilemenu{display:none;background:var(--ey-surface);border-bottom:1px solid var(--ey-navy);}
.ey-mobilemenu.is-open{display:block;}
.ey-mobilemenu a{display:block;padding:14px 24px;border-bottom:1px solid var(--ey-line-soft);font-weight:700;font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;}
.ey-mobilemenu a.sub{padding-left:38px;font-weight:500;font-size:14px;color:var(--ey-text);}
.ey-mobilemenu .ey-mm-cta{background:var(--ey-teal);color:#fff;}

@media (max-width:560px){
  .ey-nav__num{display:none;}
  .ey-nav__phone{padding:0 12px;}
  .ey-nav__cta--solid{padding:0 14px;}
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;}
  .ey-reveal{opacity:1!important;transform:none!important;}
}

/* ==========================================================================
   Block editor compatibility — makes the Gutenberg patterns render identically
   to the built-in design (core buttons styled, default block spacing reset).
   ========================================================================== */
.ey-btn-primary .wp-block-button__link{background:var(--ey-teal);color:#fff;border-radius:var(--ey-radius);font-weight:700;padding:16px 28px;border:0;transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease;}
.ey-btn-primary .wp-block-button__link:hover{background:var(--ey-teal-dark);transform:translateY(-2px);box-shadow:0 8px 20px -6px rgba(31,169,122,.55),0 0 0 4px rgba(31,169,122,.2);}
.ey-btn-outline-dark .wp-block-button__link{background:transparent;color:#EEF2F6;border:1px solid #3A4A54;border-radius:var(--ey-radius);font-weight:700;padding:16px 28px;}
.ey-btn-outline-dark .wp-block-button__link:hover{background:var(--ey-teal);border-color:var(--ey-teal);color:#fff;transform:translateY(-2px);box-shadow:0 8px 22px -6px rgba(31,169,122,.6),0 0 0 4px rgba(31,169,122,.2);}
.ey-btn-outline .wp-block-button__link{background:transparent;color:var(--ey-navy);border:1px solid var(--ey-navy);border-radius:var(--ey-radius);font-weight:700;padding:16px 28px;}
.ey-btn-outline .wp-block-button__link:hover{background:var(--ey-teal);border-color:var(--ey-teal);color:#fff;}
.ey-btn-ondark .wp-block-button__link{background:transparent;color:#EAF1EE;border:1px solid #3A4A54;border-radius:var(--ey-radius);font-weight:700;padding:15px 22px;}
.ey-btn-ondark .wp-block-button__link:hover{background:var(--ey-teal-bright);border-color:var(--ey-teal-bright);color:var(--ey-navy);}

/* Neutralize core layout spacing inside our sections */
.ey-hero.wp-block-group,.ey-audit.wp-block-group,.ey-cta.wp-block-group,.ey-founder.wp-block-group,.ey-section.wp-block-group{margin-block:0;}
.ey-hero.wp-block-group>*,.ey-founder.wp-block-group>*,.ey-section.wp-block-group>*{margin-block:0;}
.ey-hero__copy.wp-block-group>*+*{margin-block-start:0;}
.ey-hero__copy .wp-block-heading{margin:0 0 26px;}
.ey-audit__copy.wp-block-group>*,.ey-cta__copy.wp-block-group>*{margin-block:0;}
.ey-audit__copy .wp-block-heading{margin:0 0 22px;}
.ey-cta__copy .wp-block-heading{margin:0 0 18px;}
.ey-pillar .wp-block-heading{margin:0 0 12px;}
.ey-pillars.wp-block-columns{gap:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);}
.ey-pillars.wp-block-columns .wp-block-column{margin:0;padding:32px 30px 34px;border-right:1px solid var(--ey-line-soft);}
.ey-pillars.wp-block-columns .wp-block-column:last-child{border-right:0;}
.ey-hero__actions.wp-block-buttons{margin:0;}
.ey-hero__actions.wp-block-buttons .wp-block-button{margin:0;}
/* Top-level pattern sections sit flush, full-bleed */
.ey-shell main>.wp-block-group,.ey-shell main>.wp-block-group.alignfull{margin:0;}
@media (max-width:860px){
  .ey-pillars.wp-block-columns{grid-template-columns:1fr;}
  .ey-pillars.wp-block-columns .wp-block-column{border-right:0;}
}

/* ==== Block homepage v1.17 patterns (native Gutenberg) ==== */
.ey-body .alignfull{width:100%;max-width:none;margin-left:0;margin-right:0;}
.wp-block-group.ey-hero,.wp-block-group.ey-founder,.wp-block-group.ey-audit,.wp-block-group.ey-cta,.wp-block-group.ey-stats{display:block;}
.wp-block-columns.eyb-cols{display:flex;gap:0;margin:0;align-items:stretch;flex-wrap:nowrap;}
.wp-block-columns.eyb-cols>.wp-block-column{margin:0;}
.eyb-cols--ruled>.wp-block-column{border-right:1px solid var(--ey-line-soft);}
.eyb-cols--ruled>.wp-block-column:last-child{border-right:0;}
.ey-section .eyb-cols--ruled{border-top:1px solid var(--ey-navy);}
@media (max-width:880px){
  .wp-block-columns.eyb-cols{flex-wrap:wrap;}
  .wp-block-columns.eyb-cols>.wp-block-column{flex-basis:100% !important;}
  .eyb-cols--ruled>.wp-block-column{border-right:0;border-bottom:1px solid var(--ey-line-soft);}
}
/* hero (block variant) */
.wp-block-column.ey-hero__panel{display:flex;flex-direction:column;justify-content:center;padding:44px;background:var(--ey-navy-deep);border-left:1px solid var(--ey-navy-line);}
.wp-block-column.ey-hero__panel .ey-auditcard{margin:0;}
p.ey-hero__eyebrow{margin:0 0 30px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ey-teal-bright);}
p.ey-auditcard__head{display:flex;align-items:center;justify-content:space-between;margin:0;}
.ey-auditcard__body .wp-block-heading{font-size:26px;font-weight:700;line-height:1.08;margin:0 0 8px;color:#EEF2F6;}
.ey-auditcard__body .wp-block-buttons{margin:0;}
p.ey-auditcard__note{display:block;margin:18px 0 0;padding-top:16px;border-top:1px solid #1B3329;font-size:12.5px;line-height:1.4;color:#9DB0AB;}
p.ey-auditcard__note strong{color:#C2CCD4;font-weight:600;}
/* stats (block variant) */
.wp-block-column.ey-stats__brand{padding:24px 28px;border-right:1px solid var(--ey-line-soft);}
.wp-block-column.ey-stat{padding:24px 22px;border-right:1px solid var(--ey-line-soft);}
.wp-block-column.ey-stat:last-child{border-right:0;}
p.ey-stat__num{margin:0;}
p.ey-stat__lbl{margin:6px 0 0;}
p.ey-stats__badges{margin:9px 0 0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.ey-stats__brand p.muted{margin:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ey-slate);}
/* founder (block variant) */
.wp-block-column.ey-founder__media-col{border-right:1px solid var(--ey-navy);}
.ey-founder__photo{margin:0;}
.ey-founder__photo img{width:100%;height:auto;display:block;}
.ey-founder__photo .wp-element-caption{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ey-slate);padding:8px 12px;text-align:left;margin:0;}
p.ey-founder__signline{margin:28px 0 0;}
p.ey-founder__signline .name{font-family:var(--ey-font-display);font-style:italic;font-size:25px;font-weight:600;color:var(--ey-teal);}
p.ey-founder__signline .meta{font-size:12px;color:var(--ey-slate);text-transform:uppercase;letter-spacing:.04em;font-weight:700;margin-left:10px;}
/* section heads (block variant) */
.wp-block-group.ey-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap;}
.wp-block-group.ey-section__head--stack{display:block;}
.ey-section__head-main>*{margin-block:0;}
p.ey-kicker{margin:0 0 18px;}
p.ey-section__intro{font-size:16px;line-height:1.6;color:var(--ey-text);max-width:330px;margin:0;}
p.ey-headlink{margin:0;}
/* pillars (block variant) */
.wp-block-column.ey-pillar{display:flex;flex-direction:column;padding:32px 30px 34px;}
p.ey-pillar__num{margin:0 0 14px;}
ul.ey-plist{list-style:none;margin:0 0 24px;padding:0;border-top:1px solid var(--ey-line-soft);flex:1;}
ul.ey-plist li{padding:11px 0;border-bottom:1px solid var(--ey-line-soft);font-size:14.5px;color:var(--ey-navy);}
p.ey-pillar__ctarow{margin:0;}
/* proof (block variant) */
.ey-result-blocks .wp-block-column.ey-result__lead{padding:44px 52px;}
.ey-result-blocks h3.ey-result__client{font-family:var(--ey-font-display);font-weight:700;font-size:clamp(28px,3.2vw,40px);line-height:1.06;margin:0 0 8px;}
.ey-result-blocks p.ey-result__link{margin:0;}
.wp-block-group.ey-result__stats{display:grid;grid-template-columns:1fr 1fr;background:var(--ey-navy);height:100%;}
.wp-block-group.ey-result__stat{padding:34px 30px;border-right:1px solid var(--ey-navy-line);border-bottom:1px solid var(--ey-navy-line);}
p.ey-result__num{font-family:var(--ey-font-display);font-size:46px;font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--ey-teal-bright);margin:0;}
p.ey-result__lbl{font-size:13px;line-height:1.4;color:#9DB0AB;margin:8px 0 0;}
/* steps / tools / quotes (block variant) */
.wp-block-column.ey-step{padding:30px 26px 34px;}
p.ey-step__n{margin:0 0 14px;}
.wp-block-column.ey-tool{padding:28px 26px 30px;display:flex;flex-direction:column;}
p.ey-tool__tag{margin:0 0 14px;}
p.ey-tool__desc{margin:0 0 auto;}
p.ey-tool__openrow{margin:18px 0 0;}
.wp-block-column.ey-quote{padding:34px 30px;display:flex;flex-direction:column;}
p.ey-quote__text{font-size:16.5px;line-height:1.62;color:var(--ey-navy);margin:0 0 26px;flex:1;}
p.ey-quote__byline{margin:0;border-top:1px solid var(--ey-line-soft);padding-top:18px;line-height:1.5;}
p.ey-quote__byline .ey-quote__name{font-family:var(--ey-font-display);font-size:15px;}
p.ey-quote__byline .ey-quote__org{font-size:12.5px;color:var(--ey-slate);}
p.ey-quote__byline .ey-quote__service{font-size:11px;color:var(--ey-teal);text-transform:uppercase;letter-spacing:.04em;font-weight:700;}
/* products (block variant) */
.wp-block-column.ey-card-block{padding:24px 26px 28px;}
p.ey-card__kind{margin:0 0 14px;}
p.ey-card__use{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ey-teal);margin:14px 0 0;}
/* latest posts (block variant) */
ul.wp-block-latest-posts.ey-bloglist-blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;list-style:none;padding:0 52px 46px;margin:0;}
ul.ey-bloglist-blocks li{background:#fff;border:1px solid var(--ey-line-soft);border-radius:10px;overflow:hidden;padding-bottom:20px;}
ul.ey-bloglist-blocks .wp-block-latest-posts__featured-image img{width:100%;height:auto;display:block;}
ul.ey-bloglist-blocks li>a{display:block;font-family:var(--ey-font-display);font-size:19px;font-weight:700;color:var(--ey-navy);padding:18px 22px 4px;text-decoration:none;}
ul.ey-bloglist-blocks .wp-block-latest-posts__post-date{padding:0 22px;font-size:12px;color:var(--ey-slate);}
ul.ey-bloglist-blocks .wp-block-latest-posts__post-excerpt{padding:8px 22px 0;font-size:14px;line-height:1.55;color:var(--ey-text);margin:0;}
@media (max-width:880px){ul.wp-block-latest-posts.ey-bloglist-blocks{grid-template-columns:1fr;padding:0 22px 40px;}}
/* cta (block variant) */
.wp-block-column.ey-cta__actions{display:flex;flex-direction:column;justify-content:center;padding:62px 44px;}
.ey-cta__btns{display:flex;flex-direction:column;gap:14px;margin:0;}
.ey-cta__btns .wp-block-button{margin:0;}

/* ==== Brand voice v1.19 additions ==== */
.ey-footer__tagline{font-family:var(--ey-font-display);font-size:14px;font-weight:700;color:var(--ey-teal-bright);margin:14px 0 10px;}
.ey-footer__reach{font-family:var(--ey-font-display);font-size:13px;font-weight:700;color:#EEF2F6;margin:16px 0 6px;}
.ey-sellline{background:var(--ey-navy);border-top:1px solid var(--ey-navy-line);padding:34px 52px;}
.ey-sellline p{font-family:var(--ey-font-display);font-size:clamp(19px,2.2vw,25px);font-weight:700;line-height:1.3;letter-spacing:-.01em;color:#EEF2F6;margin:0;max-width:820px;}
@media (max-width:640px){.ey-sellline{padding:26px 22px;}}

/* ==== Block homepage fixes (1.19.1): proof band, CTA buttons, founder centering ==== */
.wp-block-columns.ey-result-blocks{background:var(--ey-navy);}
.ey-result-blocks .wp-block-column.ey-result__lead{border-right:1px solid var(--ey-navy-line);}
.ey-result-blocks .ey-result__lead p.ey-kicker{color:var(--ey-teal-bright);}
.ey-result-blocks h3.ey-result__client{color:#EEF2F6;}
.ey-result-blocks p.ey-result__link a{color:#9DB0AB;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;}
.ey-result-blocks p.ey-result__link a:hover{color:var(--ey-teal-bright);}
.wp-block-column.ey-founder__body{display:flex;flex-direction:column;justify-content:center;}
.ey-cta__btns .wp-block-button{width:100%;}
.ey-cta__btns .wp-block-button__link{display:block;width:100%;text-align:center;}
.wp-block-column.ey-hero__copy{display:flex;flex-direction:column;}
p.ey-hero__local{margin-top:auto;padding-top:26px;border-top:1px solid var(--ey-navy-line);}

/* ==== 1.19.2: hero copy rhythm in block mode (parity with PHP spacing) ==== */
.wp-block-column.ey-hero__copy .ey-hero__actions.wp-block-buttons{margin:0 0 28px;gap:14px;}
.wp-block-column.ey-hero__copy p.ey-hero__eyebrow{margin-bottom:30px;}
.wp-block-column.ey-hero__copy p.ey-hero__sub{margin:0 0 32px;}
.wp-block-column.ey-hero__copy p.ey-hero__honesty{margin:0 0 28px;}

/* ==== 1.20.0: block heads sized like PHP; baked work/product cards ==== */
.wp-block-group.ey-section__head{gap:30px;}
.ey-section__head .ey-section__head-main{flex:1 1 420px;min-width:0;}
.ey-section__head .ey-h2{max-width:640px;}
.ey-section__head p.ey-section__intro{flex:0 1 330px;}
.ey-section__head p.ey-headlink{flex:0 0 auto;}
.wp-block-columns.eyb-cols--cards{gap:20px;padding:0 0 8px;}
.eyb-cols--cards>.wp-block-column{border:0;}
.wp-block-group.ey-recentwork p.ey-recentwork__label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ey-slate);margin:0 0 24px;}
.wp-block-column.eyb-case{background:#fff;border:1px solid var(--ey-line-soft);border-radius:10px;overflow:hidden;padding:0 0 22px;}
.eyb-case .eyb-case__img{margin:0 0 16px;}
.eyb-case .eyb-case__img img{width:100%;height:auto;display:block;}
.eyb-case p.eyb-case__tag{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ey-slate);margin:0 22px 6px;}
.eyb-case h3{margin:0 22px;font-size:21px;}
.eyb-case h3 a{color:var(--ey-navy);text-decoration:none;}
.ey-card-block .ey-card__media-img{margin:0 0 16px;}
.ey-card-block .ey-card__media-img img{width:100%;height:auto;display:block;border-radius:6px;}
p.ey-quote__byline img.ey-quote__photo{width:42px;height:42px;border-radius:50%;object-fit:cover;vertical-align:middle;margin-right:10px;}

/* ==== 1.21.1: section heads — robust whether or not WP injects the legacy
   group inner-container (classic themes without theme.json get the wrapper;
   with theme.json they don't; style both paths) ==== */
.wp-block-group.ey-section__head > .wp-block-group__inner-container{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap;width:100%;}
.wp-block-group.ey-section__head--stack > .wp-block-group__inner-container{display:block;}
.wp-block-group.ey-section__head > .wp-block-group__inner-container > .ey-section__head-main{flex:1 1 420px;min-width:0;}
.wp-block-group.ey-section__head > .wp-block-group__inner-container > p.ey-section__intro{flex:0 1 330px;}
.wp-block-group.ey-section__head > .wp-block-group__inner-container > p.ey-headlink{flex:0 0 auto;}

/* ==== 1.21.9: on-brand defaults for native Details (accordions/FAQs) ==== */
.wp-block-details{border:1px solid var(--ey-line-soft);border-radius:8px;background:#fff;margin:0 0 12px;overflow:hidden;}
.wp-block-details summary{cursor:pointer;list-style:none;position:relative;font-family:var(--ey-font-display);font-weight:700;font-size:17px;letter-spacing:-0.01em;color:var(--ey-navy);padding:16px 52px 16px 20px;transition:color .16s ease;}
.wp-block-details summary::-webkit-details-marker{display:none;}
.wp-block-details summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-family:var(--ey-font-display);font-weight:800;font-size:20px;line-height:1;color:var(--ey-teal);}
.wp-block-details[open] summary{color:var(--ey-teal);border-bottom:1px solid var(--ey-line-soft);}
.wp-block-details[open] summary::after{content:"\2212";}
.wp-block-details summary:hover{color:var(--ey-teal);}
.wp-block-details > :not(summary){margin:14px 20px;font-size:15.5px;line-height:1.65;color:var(--ey-text);}
.wp-block-details > :not(summary):last-child{margin-bottom:18px;}

/* ==== 1.21.9: chip-style Buttons (industry/service link sets) ==== */
.wp-block-buttons.ey-chipset{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px;}
.ey-chipset .wp-block-button{margin:0;}
.ey-chipset .wp-block-button__link{font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-size:13.5px;font-weight:600;color:var(--ey-navy);padding:7px 13px;border:1px solid #C1CBD2;border-radius:3px;background:transparent;transition:background .16s ease,color .16s ease,border-color .16s ease;}
.ey-chipset .wp-block-button__link:hover{background:var(--ey-navy);color:var(--ey-surface);border-color:var(--ey-navy);transform:none;box-shadow:none;}

/* ==== 1.22.0: tabs (enhanced from Details groups) — production-style bar ==== */
.ey-tabs__bar{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 -1px;position:relative;z-index:1;}
.ey-tabs__tab{font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ey-slate);background:#fff;border:1px solid var(--ey-line-soft);border-bottom:0;border-radius:6px 6px 0 0;padding:13px 22px;cursor:pointer;transition:color .16s ease,background .16s ease;}
.ey-tabs__tab:hover{color:var(--ey-navy);}
.ey-tabs__tab[aria-selected="true"]{background:var(--ey-teal);border-color:var(--ey-teal);color:#fff;}
.ey-tabs.is-enhanced .wp-block-details{border-radius:0 8px 8px 8px;margin:0;}
.ey-tabs.is-enhanced .wp-block-details summary{display:none;}
.ey-tabs.is-enhanced .wp-block-details:not([open]){display:none;}
@media (max-width:640px){
  .ey-tabs__bar{gap:2px;}
  .ey-tabs__tab{padding:10px 14px;font-size:12px;}
}

/* ==== 1.22.0: industries card band (production layout, new design skin) ==== */
.ey-indband{background:var(--ey-teal);border-top:1px solid var(--ey-navy);border-bottom:1px solid var(--ey-navy);padding:46px 52px 52px;}
.ey-indband p.ey-kicker{color:#DFF5EA;margin:0 0 10px;}
.ey-indband .wp-block-heading{color:#fff;font-size:clamp(26px,3vw,38px);margin:0 0 8px;}
.ey-indband p.ey-indband__sub{color:#DFF5EA;font-size:15px;margin:0 0 28px;}
.ey-indband .ey-indband__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.ey-indcards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.ey-indcards .ey-indcard{display:flex;flex-direction:column;gap:6px;background:#fff;border-radius:10px;padding:20px 20px 18px;color:var(--ey-navy);transition:transform .16s ease,box-shadow .16s ease;}
.ey-indcards a.ey-indcard:hover{transform:translateY(-3px);box-shadow:0 14px 30px -16px rgba(13,27,42,.45);}
.ey-indcard h4{font-size:17px;font-weight:700;letter-spacing:-0.01em;margin:0;}
.ey-indcard .go{font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ey-teal);}
@media (max-width:1024px){.ey-indcards{grid-template-columns:repeat(3,1fr);}}
@media (max-width:860px){.ey-indband{padding:36px 24px 42px;}.ey-indcards{grid-template-columns:repeat(2,1fr);}}
@media (max-width:520px){.ey-indcards{grid-template-columns:1fr;}}

/* ==== 1.22.0: converted-content heading rhythm (matches production hierarchy) ==== */
.ey-content h4{font-size:19px;font-weight:700;margin:1.7em 0 .35em;}
.ey-content h5{font-size:16px;font-weight:700;margin:1.5em 0 .3em;}
.ey-content h6{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ey-slate);margin:1.5em 0 .3em;}

/* ==== 1.22.3: migrated info-box/solutions cards — icon + text aligned center ==== */
.ey-infobox{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;}
.ey-infobox img,.ey-infobox .wp-block-image,.ey-infobox figure{margin-left:auto;margin-right:auto;}
.ey-infobox .wp-block-image{margin-bottom:0;}
.ey-infobox h3,.ey-infobox h4{margin:0;}

/* ==== 1.22.5: Gravity Forms brand skin — any GF form picks up the design ==== */
.gform_wrapper.gravity-theme .gform_title{font-family:var(--ey-font-display);font-size:26px;letter-spacing:-0.02em;color:var(--ey-navy);margin:0 0 6px;}
.gform_wrapper.gravity-theme .gform_description{color:var(--ey-text);font-size:16px;}
.gform_wrapper.gravity-theme .gfield_label,
.gform_wrapper.gravity-theme legend.gfield_label{font-family:var(--ey-font-body);font-weight:700;font-size:14px;color:var(--ey-navy);letter-spacing:.01em;}
.gform_wrapper.gravity-theme .gfield_required{color:var(--ey-orange);font-style:normal;}
.gform_wrapper.gravity-theme .gfield_description,
.gform_wrapper.gravity-theme .ginput_complex label,
.gform_wrapper.gravity-theme .gform_fileupload_rules{color:var(--ey-slate);font-size:13px;}
.gform_wrapper.gravity-theme input[type="text"],
.gform_wrapper.gravity-theme input[type="email"],
.gform_wrapper.gravity-theme input[type="tel"],
.gform_wrapper.gravity-theme input[type="url"],
.gform_wrapper.gravity-theme input[type="number"],
.gform_wrapper.gravity-theme select,
.gform_wrapper.gravity-theme textarea{
  background:var(--ey-white);border:1px solid var(--ey-line-soft);border-radius:var(--ey-radius);
  padding:13px 14px;font-family:var(--ey-font-body);font-size:16px;color:var(--ey-navy);
  transition:border-color .16s ease,box-shadow .16s ease;
}
.gform_wrapper.gravity-theme input[type="text"]:focus,
.gform_wrapper.gravity-theme input[type="email"]:focus,
.gform_wrapper.gravity-theme input[type="tel"]:focus,
.gform_wrapper.gravity-theme input[type="url"]:focus,
.gform_wrapper.gravity-theme input[type="number"]:focus,
.gform_wrapper.gravity-theme select:focus,
.gform_wrapper.gravity-theme textarea:focus{
  outline:none;border-color:var(--ey-teal);box-shadow:0 0 0 3px rgba(31,169,122,.18);
}
.gform_wrapper.gravity-theme .gchoice label{font-weight:400;color:var(--ey-text);font-size:15px;}
.gform_wrapper.gravity-theme input[type="checkbox"],
.gform_wrapper.gravity-theme input[type="radio"]{accent-color:var(--ey-teal);width:16px;height:16px;}
.gform_wrapper.gravity-theme .gform_drop_area{
  background:var(--ey-white);border:1.5px dashed var(--ey-line-soft);border-radius:var(--ey-radius);
  padding:28px 16px;color:var(--ey-slate);transition:border-color .16s ease,background-color .16s ease;
}
.gform_wrapper.gravity-theme .gform_drop_area:hover{border-color:var(--ey-teal);}
.gform_wrapper.gravity-theme .gform_button_select_files{
  display:inline-flex;align-items:center;background:transparent;color:var(--ey-navy);
  border:1px solid var(--ey-navy);border-radius:var(--ey-radius);padding:10px 18px;
  font-family:var(--ey-font-body);font-weight:700;font-size:14px;cursor:pointer;
  transition:background-color .16s ease,color .16s ease,border-color .16s ease;
}
.gform_wrapper.gravity-theme .gform_button_select_files:hover{background:var(--ey-teal);border-color:var(--ey-teal);color:#fff;}
.gform_wrapper.gravity-theme .gform_footer input[type="submit"],
.gform_wrapper.gravity-theme .gform_footer button,
.gform_wrapper.gravity-theme input.gform_button{
  display:inline-flex;align-items:center;gap:8px;background-color:var(--ey-teal);color:#fff;
  border:1px solid transparent;border-radius:var(--ey-radius);padding:16px 32px;
  font-family:var(--ey-font-body);font-weight:700;font-size:15px;cursor:pointer;
  transition:background-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover,
.gform_wrapper.gravity-theme .gform_footer button:hover,
.gform_wrapper.gravity-theme input.gform_button:hover{
  background-color:var(--ey-teal-dark);transform:translateY(-2px);
  box-shadow:0 8px 20px -6px rgba(31,169,122,.55),0 0 0 4px rgba(31,169,122,.2);
}
.gform_wrapper.gravity-theme .gform_validation_errors{
  background:#FDF0EB;border:1px solid var(--ey-orange);border-radius:var(--ey-radius);padding:14px 16px;
}
.gform_wrapper.gravity-theme .gform_validation_errors h2{font-size:16px;color:var(--ey-orange);margin:0;}
.gform_wrapper.gravity-theme .gfield_error input,
.gform_wrapper.gravity-theme .gfield_error textarea,
.gform_wrapper.gravity-theme .gfield_error select{border-color:var(--ey-orange);}
.gform_wrapper.gravity-theme .gfield_validation_message,
.gform_wrapper.gravity-theme .validation_message{color:var(--ey-orange);background:transparent;border:0;padding:4px 0 0;font-size:13px;}
.gform_confirmation_message{
  background:#EAF7F1;border:1px solid var(--ey-teal);border-radius:var(--ey-radius);
  padding:18px 20px;color:var(--ey-navy);font-size:16px;
}

/* ==== 1.22.7: migrated contact info rows (icon + value + caption) ==== */
.ey-contact{display:flex;align-items:center;gap:14px;margin:14px 0;}
.ey-contact__icon{width:34px;height:34px;flex:none;margin:0;}
.ey-contact__title{font-family:var(--ey-font-display);font-weight:700;font-size:19px;color:var(--ey-navy);}
.ey-content a.ey-contact__title{color:var(--ey-navy);text-decoration:none;}
.ey-content a.ey-contact__title:hover{color:var(--ey-teal);}
.ey-contact__sub{color:var(--ey-slate);font-size:13px;}
.ey-content .ey-contact img{margin:0;border-radius:0;}

/* ==== 1.22.7: migrated custom embeds — proof/stats bar + audit steps ==== */
.eco-proof-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;background:var(--ey-navy);border-radius:8px;padding:26px 34px;margin:34px 0;}
.eco-proof-item{display:flex;flex-direction:column;gap:2px;min-width:150px;}
.eco-proof-number{font-family:var(--ey-font-display);font-weight:800;font-size:30px;color:var(--ey-teal-bright);line-height:1;}
.eco-proof-text{color:#EAF1EE;font-size:14px;}
.eco-proof-text.strong{font-family:var(--ey-font-display);font-weight:800;font-size:20px;color:#fff;line-height:1.2;}
.eco-proof-sub{color:#8FA39A;font-size:13px;}
.eco-proof-divider{width:1px;align-self:stretch;background:var(--ey-navy-line);}
@media (max-width:760px){.eco-proof-divider{display:none;}.eco-proof-bar{justify-content:flex-start;gap:22px;}}
.audit-steps-section{background:#fff;border:1px solid var(--ey-line-soft);border-radius:12px;padding:38px 40px;margin:34px 0;}
.ey-content .audit-steps-section h2{margin:0 0 6px;font-size:30px;}
.audit-steps-intro{color:var(--ey-slate);margin:0 0 26px;}
.audit-step{display:flex;gap:18px;margin:0 0 24px;}
.audit-step:last-child{margin-bottom:0;}
.step-number{flex:none;width:38px;height:38px;border-radius:50%;background:var(--ey-teal);color:#fff;font-family:var(--ey-font-display);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;}
.ey-content .audit-step h3{margin:4px 0 6px;font-size:20px;}
.audit-step h3 span{color:var(--ey-teal);font-size:15px;font-weight:700;}
.ey-content .audit-step p{margin:0;color:var(--ey-text);}
@media (max-width:760px){.audit-steps-section{padding:26px 22px;}}

/* ==== 1.22.9: standalone EcoSignal embeds on converted pages ==== */
.ey-audit-embed{margin:30px 0;}

/* ==== 1.22.12: dark content bands rebuilt from colored builder rows ==== */
.ey-darkband{background:var(--ey-navy);border-radius:12px;padding:44px 40px;margin:34px 0;}
.ey-content .ey-darkband h1,.ey-content .ey-darkband h2,.ey-content .ey-darkband h3,.ey-content .ey-darkband h4{color:#fff;}
.ey-content .ey-darkband p,.ey-content .ey-darkband li,.ey-content .ey-darkband ul,.ey-content .ey-darkband ol{color:#C9D6D0;}
.ey-content .ey-darkband a{color:var(--ey-teal-bright);}
.ey-darkband .wp-block-columns{gap:36px;}
.ey-darkband .ey-audit-embed{margin:0;}
@media (max-width:760px){.ey-darkband{padding:28px 22px;}}

/* ==== 1.22.14: readable text inside dark converted sections ==== */
/* The base .ey-content ul/p rule paints the list element itself dark slate,
   so "inherit" on li picked up dark-on-dark inside dark sections. */
.ey-content .ey-kc-section.has-text-color h1,.ey-content .ey-kc-section.has-text-color h2,.ey-content .ey-kc-section.has-text-color h3,.ey-content .ey-kc-section.has-text-color h4{color:#fff;}
.ey-content .ey-kc-section.has-text-color p,.ey-content .ey-kc-section.has-text-color ul,.ey-content .ey-kc-section.has-text-color ol,.ey-content .ey-kc-section.has-text-color li{color:#C9D6D0;}
.ey-content .ey-kc-section.has-text-color a{color:var(--ey-teal-bright);}
.ey-content .ey-kc-section.has-text-color .ey-checklist li::before{color:var(--ey-teal-bright);}
.ey-content .ey-darkband ul,.ey-content .ey-darkband ol{color:#C9D6D0;}
.ey-content .ey-darkband .ey-checklist li::before{color:var(--ey-teal-bright);}

/* ==== 1.22.15: converted-page polish — buttons + image column balance ==== */
/* The content-area link underline was bleeding into button blocks. */
.ey-content .wp-block-button__link{text-decoration:none;}
/* A tall illustration next to a short text column left a wall of white space:
   center image-bearing column rows vertically and cap oversized images. */
.ey-content .wp-block-columns:has(.wp-block-image){align-items:center;}
.ey-content .wp-block-column > .wp-block-image img{max-height:480px;width:auto;margin-left:auto;margin-right:auto;}

/* ==== 1.22.16: image columns — native centering + assertive size cap ==== */
.ey-content .wp-block-column.is-vertically-aligned-center > .wp-block-image{margin:0;}
.ey-content .wp-block-column.is-vertically-aligned-center > .wp-block-image img{max-height:380px;width:auto;max-width:100%;margin:0 auto;display:block;}

/* ==== 1.22.17: converted stats bands + eco-process cards ==== */
.ey-statband-conv{background:var(--ey-navy);border-radius:12px;padding:44px 36px;margin:34px 0;}
.ey-statband-conv .wp-block-columns{gap:24px;}
.ey-content .ey-statband-conv h2.ey-stat-num{color:var(--ey-teal-bright);margin:0;font-size:clamp(30px,3.4vw,44px);}
.ey-content .ey-statband-conv .ey-stat-label{color:#9DB0AB;}
.eco-process-section{margin:34px 0;}
.ey-content .eco-process-header h2{margin:0 0 6px;}
.ey-content .eco-process-header p{color:var(--ey-slate);margin:0 0 24px;}
.eco-process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px;}
.eco-process-card{background:#fff;border:1px solid var(--ey-line-soft);border-radius:12px;padding:24px 22px;}
.eco-step-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;}
.eco-step-icon{font-size:24px;line-height:1;}
.eco-step-number{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ey-teal);}
.ey-content .eco-process-card h3{font-size:19px;margin:0 0 2px;}
.eco-step-time{display:block;color:var(--ey-slate);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;}
.ey-content .eco-process-card p{margin:0;font-size:15px;line-height:1.6;}

/* ==== 1.22.18: case-studies grid template + single case study ==== */
.ey-casespage{max-width:var(--ey-maxw);margin:0 auto;padding:26px 52px 72px;}
.ey-casespage__grid{gap:22px;}
.ey-casespage__grid .ey-case{border:1px solid var(--ey-line-soft);border-radius:12px;overflow:hidden;background:#fff;transition:transform .16s ease,box-shadow .16s ease;}
.ey-casespage__grid .ey-case:hover{transform:translateY(-3px);box-shadow:0 12px 28px -12px rgba(13,27,42,.25);}
@media (max-width:980px){.ey-casespage__grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.ey-casespage__grid{grid-template-columns:1fr;}}
.ey-casesingle{max-width:var(--ey-maxw);margin:0 auto;padding:58px 52px 30px;display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:46px;align-items:start;}
.ey-casesingle--nomedia{display:block;}
.ey-casesingle__media img{width:100%;height:auto;border-radius:12px;border:1px solid var(--ey-line-soft);display:block;}
.ey-casesingle .ey-content{padding:0;max-width:none;}
@media (max-width:900px){.ey-casesingle{grid-template-columns:1fr;gap:28px;padding:36px 28px 20px;}}
.ey-casemore{max-width:var(--ey-maxw);margin:0 auto;padding:8px 52px 72px;}

/* ==== 1.22.24: retro-fix text-beside-image balance on ALL converted pages ==== */
/* Content converted before the row-level centering existed has the marker on
   the image column only — center the whole row whenever such a column exists,
   so already-converted pages balance without re-converting. */
.ey-content .wp-block-columns:has(> .wp-block-column.is-vertically-aligned-center){align-items:center;}
.ey-content .wp-block-column.is-vertically-aligned-center > .wp-block-image img{max-height:380px;width:auto;margin:0 auto;display:block;}

/* ==== 1.22.28: booking-calendar embeds get real height before their loader runs ==== */
.ey-content iframe[src*="leadconnectorhq.com/widget"]{width:100%;min-height:760px;border:0;}

/* ==== 1.22.30: founder photo as a real <img> (alt text for SEO/a11y) ==== */
.ey-founder__media{position:relative;overflow:hidden;}
.ey-founder__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.ey-founder__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,27,42,0) 60%,rgba(13,27,42,.5) 100%);pointer-events:none;}
.ey-founder__tag{position:relative;z-index:2;}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--ey-navy);color:#fff;padding:12px 20px;z-index:9999;border-radius:0 0 6px 0;}
.skip-link:focus{left:0;}

/* ==== 1.22.32: Canvas pages — center self-contained apps ==== */
/* The old Redux canvas centered the calculators' fixed-width wrapper; give
   the bare Canvas the same behavior plus breathing room. */
.ey-canvas{padding:40px 20px 64px;}
.ey-canvas .page-wrap,.ey-canvas [class*="-wrap"]{margin-left:auto;margin-right:auto;}

/* ==== 1.22.33: Canvas apps set body-level layout CSS (they owned the whole
   page on the old blank canvas) — neutralize it so the site header/footer
   render normally around them. Their internal styling is untouched. ==== */
body.page-template-template-canvas{display:block !important;margin:0 !important;padding:0 !important;min-height:0 !important;background:var(--ey-surface) !important;}

/* ==== 1.22.34: standalone content images can't dominate the page ==== */
/* Guards against assets with baked-in padding (e.g. square logo exports):
   an image block that is alone in its column renders at a sane height. */
.ey-content .wp-block-column > .wp-block-image:only-child img{max-height:420px;width:auto;max-width:100%;margin-left:auto;margin-right:auto;display:block;}

/* ==== 1.22.36: Case Studies category filter bar ==== */
.ey-filter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:1000px;margin:0 auto 34px;padding:0 24px;}
.ey-filter__btn{appearance:none;border:1.5px solid var(--ey-line-soft);background:#fff;color:var(--ey-navy);font-family:inherit;font-size:14px;font-weight:600;line-height:1;padding:10px 18px;border-radius:999px;cursor:pointer;transition:border-color .16s ease,color .16s ease,background .16s ease;}
.ey-filter__btn:hover{border-color:var(--ey-teal);color:var(--ey-teal);}
.ey-filter__btn.is-active{background:var(--ey-navy);border-color:var(--ey-navy);color:#fff;}
.ey-filter__btn:focus-visible{outline:2px solid var(--ey-teal);outline-offset:2px;}
.ey-case.ey-hide{display:none;}
.ey-filter__empty{text-align:center;color:var(--ey-slate,#5C6B72);margin:8px 0 0;}

/* ==== 1.22.38/39: project-page "Visit live site" CTA ==== */
.ey-casesingle__visit{margin:26px 0 0;}
/* .ey-content a (link styling) outranks .ey-btn--* (single class) — pin the
   button colors for any ey-btn placed inside a content region. */
.ey-content a.ey-btn{text-decoration:none;}
.ey-content a.ey-btn--primary,.ey-content a.ey-btn--primary:hover{color:#fff;}
.ey-content a.ey-btn--outline{color:var(--ey-navy);}
.ey-content a.ey-btn--outline:hover{color:#fff;}

/* ==== 1.22.41: UX pass — readable text measure, sub-page hero CTAs, tap targets ==== */
/* Body text on converted pages ran the full container (~150 chars/line at
   1440px). Cap the measure: inert inside real multi-column layouts (their
   columns are already narrower), bites only in full-width text runs. */
.ey-content p,.ey-content ul,.ey-content ol,.ey-content blockquote,
.ey-content h2,.ey-content h3,.ey-content h4,.ey-content h5,.ey-content h6{max-width:820px;margin-left:0;margin-right:auto;}
.ey-content :is(p,h2,h3,h4,h5,h6,ul,ol).has-text-align-center{margin-left:auto;margin-right:auto;}
.ey-content li{max-width:none;}
/* Keep app/canvas pages and explicit wide alignments untouched. */
.ey-canvas .ey-content p,.ey-canvas .ey-content ul,.ey-canvas .ey-content ol,
.ey-content .alignwide,.ey-content .alignfull{max-width:none;}

/* Sub-page hero CTA row */
.ey-pagehero__cta{margin-top:26px;display:flex;align-items:center;gap:22px;flex-wrap:wrap;}
.ey-pagehero__ctalink{color:var(--ey-teal-bright);font-weight:700;text-decoration:none;border-bottom:2px solid transparent;padding:8px 0;transition:border-color .16s ease;}
.ey-pagehero__ctalink:hover{border-bottom-color:var(--ey-teal-bright);}

/* Mobile tap targets: text links measured at ~26px — pad to ≥40px hit area. */
@media (max-width:640px){
	.ey-pillar__cta,.ey-pagehero__ctalink{padding-top:8px;padding-bottom:8px;display:inline-block;}
	.ey-footer__col li a{display:inline-block;padding:5px 0;}
}

/* ==== 1.22.45: site-wide contrast pass (automated WCAG audit, 95 pages) ==== */
:root{--ey-teal-ink:#136E4F;} /* darkest brand teal — for text links & button fills that carry white/small text */
/* Footer labels on navy were #5E7280 (3.5:1) */
.ey-footer__col h4,.ey-footer__bar{color:#92A5AF;}
/* Teal text links on light surfaces were 2.7-3.0:1 */
.ey-content a,.ey-indcard .go,.ey-blogstrip .go,.ey-content .cd-h-timeline__date{color:var(--ey-teal-ink);}
/* Primary buttons: white label on --ey-teal was 3.0:1; teal-dark reads 4.8:1 */
.ey-btn--primary{background-color:var(--ey-teal-dark);}
.ey-btn--primary:hover{background-color:var(--ey-teal-ink);}
.ey-btn-primary .wp-block-button__link,.gform_wrapper.gravity-theme input.gform_button[type=submit],.ey-tabs__tab[aria-selected="true"]{background:var(--ey-teal-dark);border-color:var(--ey-teal-dark);}
/* Teal Industries Band: pale-green kicker/sub on teal were 2.6:1 — navy reads 5.3:1 */
.ey-indband p.ey-kicker,.ey-indband p.ey-indband__sub{color:#0D1B2A;}
/* Contrast pass, part 2 — clusters traced to embedded/harvested page styles
   (theme rules need !important to beat in-content <style> blocks). */
/* The darkband IS the brand navy treatment — never let a harvested gray/teal
   background ride along and break its white-text contract. */
.ey-content .ey-darkband{background:var(--ey-navy) !important;}
/* Harvested teal-bright rows: default text was 3.8:1 — navy reads 5.5:1. */
.ey-content .ey-kc-section[style*="#3cb878"] p,.ey-content .ey-kc-section[style*="#3cb878"] li,
.ey-content .ey-kc-section[style*="#3cb878"] h2,.ey-content .ey-kc-section[style*="#3cb878"] h3,
.ey-content .ey-kc-section[style*="#3cb878"] span{color:#0D1B2A !important;}
/* Converted-page buttons (teal fills from the harvest): white label needs teal-dark. */
.ey-content .wp-block-buttons:not(.ey-btn-outline):not(.ey-btn-outline-dark) .wp-block-button__link{background-color:var(--ey-teal-dark) !important;color:#fff !important;}
/* Gravity Forms required asterisk was orange 3.0:1. */
.gform_wrapper .gfield_required{color:#C0390B !important;}
/* Calculator apps' own submit buttons: white on teal-bright 2.6:1. */
.page-template-template-canvas button.btn{background-color:var(--ey-teal-dark) !important;border-color:var(--ey-teal-dark) !important;}
/* Remaining embedded-style literals on light cards (Compass Wave pricing,
   timelines, old section titles): #7A8A99/#3CB878 text at 2.5-3.6:1. */
.ey-content .cb-price,.ey-content span.sub,.ey-content .base-tag,.ey-content .time-line-subtitle{color:#5D6E79 !important;}
.ey-content .section-title{color:var(--ey-teal-ink) !important;}

/* ==== 1.22.46: dark texture rows fixed in pure CSS (no JS dependency) ====
   The theme.js swap still runs (removes the image, adds ey-darkband), but
   these rules guarantee correct paint even before/without JavaScript. */
.ey-content .ey-kc-section[style*="bg-boxed-"]{background:var(--ey-navy) !important;}
.ey-content .ey-kc-section[style*="bg-boxed-"] h1,.ey-content .ey-kc-section[style*="bg-boxed-"] h2,
.ey-content .ey-kc-section[style*="bg-boxed-"] h3,.ey-content .ey-kc-section[style*="bg-boxed-"] h4{color:#fff;}
.ey-content .ey-kc-section[style*="bg-boxed-"] p,.ey-content .ey-kc-section[style*="bg-boxed-"] li{color:#C9D6D0;}
.ey-content .ey-kc-section[style*="#6f7070"]{background:var(--ey-navy) !important;}
.ey-content .ey-kc-section[style*="#6f7070"] p,.ey-content .ey-kc-section[style*="#6f7070"] li,
.ey-content .ey-kc-section[style*="#6f7070"] span{color:#C9D6D0;}
.ey-content .ey-kc-section[style*="#6f7070"] h1,.ey-content .ey-kc-section[style*="#6f7070"] h2,
.ey-content .ey-kc-section[style*="#6f7070"] h3{color:#fff;}

/* ==== 1.22.47: company-history timeline (About Us) ====
   The old theme's horizontal-timeline JS is gone; its markup (a year-nav list
   + an events list) now renders as a branded vertical timeline in pure CSS.
   The year nav is redundant — every event carries its own date heading. */
.ey-content li:has(> a.cd-h-timeline__date){display:none;}
.ey-content ol:has(> li .cd-h-timeline__event),.ey-content ul:has(> li.cd-h-timeline__event),.ey-content ol:has(> li.cd-h-timeline__event){list-style:none;padding:0;margin:28px auto;max-width:820px;}
.ey-content li.cd-h-timeline__event{list-style:none;position:relative;margin:0;padding:0 0 30px 40px;max-width:none;}
.ey-content li.cd-h-timeline__event::before{content:"";position:absolute;left:9px;top:8px;height:100%;width:2px;background:var(--ey-line-soft);}
.ey-content li.cd-h-timeline__event:last-child::before{display:none;}
.ey-content li.cd-h-timeline__event::after{content:"";position:absolute;left:4px;top:8px;width:12px;height:12px;border-radius:50%;background:var(--ey-teal);box-shadow:0 0 0 3px rgba(31,169,122,.22);}
.ey-content .cd-h-timeline__event .row{display:flex;gap:22px;align-items:flex-start;flex-wrap:wrap;}
.ey-content .cd-h-timeline__event .table-cell{flex:1 1 300px;min-width:0;}
.ey-content .cd-h-timeline__event .table-cell:has(.time-line-thumb){flex:0 0 auto;}
.ey-content .cd-h-timeline__event .time-line-thumb img{max-width:110px;height:auto;border-radius:8px;background:#fff;padding:6px;border:1px solid var(--ey-line-soft);}
.ey-content .cd-h-timeline__event .time-line-subtitle{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ey-teal-ink);margin:0 0 4px;max-width:none;}
.ey-content .cd-h-timeline__event .time-line-title{font-size:19px;font-weight:700;color:var(--ey-navy);margin:0 0 6px;max-width:none;}
.ey-content .cd-h-timeline__event .time-line-text p{margin:0;}
@media (max-width:640px){.ey-content li.cd-h-timeline__event{padding-left:30px;}}

/* ==== 1.22.48: horizontal timeline (JS-built from the legacy markup) ==== */
.ey-htl{position:relative;margin:34px 0 10px;}
.ey-htl__rail{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;border-bottom:2px solid var(--ey-line-soft);padding-right:110px;}
.ey-htl__rail::-webkit-scrollbar{display:none;}
.ey-htl__year{appearance:none;background:none;border:0;border-bottom:3px solid transparent;margin-bottom:-2px;flex:none;font-family:var(--ey-font-body);font-size:13.5px;font-weight:700;letter-spacing:.04em;color:var(--ey-slate);padding:12px 16px;cursor:pointer;transition:color .16s ease,border-color .16s ease;}
.ey-htl__year:hover{color:var(--ey-teal-ink);}
.ey-htl__year.is-active{color:var(--ey-navy);border-bottom-color:var(--ey-teal);}
.ey-htl__navs{position:absolute;top:2px;right:0;display:flex;gap:8px;background:var(--ey-surface,#EEF2F6);padding-left:10px;}
.ey-htl__nav{appearance:none;width:38px;height:38px;border-radius:50%;border:1.5px solid var(--ey-line-soft);background:#fff;color:var(--ey-navy);font-size:16px;cursor:pointer;transition:border-color .16s ease,color .16s ease,background .16s ease;}
.ey-htl__nav:hover{border-color:var(--ey-teal);color:#fff;background:var(--ey-teal-dark);}
.ey-htl__track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:22px 4px 20px;scrollbar-width:thin;scrollbar-color:var(--ey-teal) transparent;}
.ey-htl__card{flex:0 0 min(430px,86%);scroll-snap-align:start;background:#fff;border:1px solid var(--ey-line-soft);border-radius:14px;padding:26px 26px 24px;box-shadow:0 10px 26px -18px rgba(13,27,42,.25);}
.ey-htl__card .row{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap;}
.ey-htl__card .table-cell{flex:1 1 200px;min-width:0;}
.ey-htl__card .time-line-thumb{margin-bottom:4px;}
.ey-htl__card .time-line-thumb img{max-width:96px;height:auto;border-radius:8px;border:1px solid var(--ey-line-soft);background:#fff;padding:5px;}
.ey-htl__card .time-line-subtitle{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ey-teal-ink);margin:0 0 4px;}
.ey-htl__card .time-line-title{font-size:19px;font-weight:700;color:var(--ey-navy);margin:0 0 8px;}
.ey-htl__card .time-line-text p{margin:0;font-size:15.5px;line-height:1.6;}
@media (max-width:640px){.ey-htl__card{flex-basis:92%;padding:20px;}.ey-htl__navs{display:none;}}

/* ==== 1.22.48: design rhythm for converted content ====
   Converted sub-pages read as raw documents: give H2 sections a brand accent,
   real spacing, and branded list markers — sitewide, no content edits. */
.ey-content h2.wp-block-heading{position:relative;padding-top:16px;margin-top:1.7em;margin-bottom:.55em;letter-spacing:-.015em;}
.ey-content h2.wp-block-heading::before{content:"";position:absolute;top:0;left:0;width:44px;height:4px;border-radius:2px;background:var(--ey-teal);}
.ey-content h2.wp-block-heading.has-text-align-center::before{left:50%;transform:translateX(-50%);}
.ey-content h3.wp-block-heading{margin-top:1.5em;}
.ey-content ul.wp-block-list{list-style:none;padding-left:2px;}
.ey-content ul.wp-block-list > li{position:relative;padding-left:26px;margin-bottom:9px;}
.ey-content ul.wp-block-list > li::before{content:"";position:absolute;left:2px;top:.52em;width:8px;height:8px;border-radius:50%;background:var(--ey-teal);}
.ey-content .ey-darkband ul.wp-block-list > li::before{background:var(--ey-teal-bright);}

/* ==== 1.22.49: team-member grid ====
   Converted member cards sat in uneven columns (a 50% box beside 25% boxes).
   Any columns row holding ey-team cards becomes a uniform card grid; a
   column's stacked members each become their own grid cell. */
/* Grid ONLY the innermost roster rows (columns whose cells stack 2+ member
   cards). The founder's 50/50 card-beside-bio row and any outer wrapper rows
   keep their intended flex layout. */
.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team + .ey-team){display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:stretch;max-width:1080px;margin-left:auto;margin-right:auto;}
@media (max-width:1023px){.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team + .ey-team){grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:719px){.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team + .ey-team){grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:419px){.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team + .ey-team){grid-template-columns:1fr;}}
.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team + .ey-team) > .wp-block-column{display:contents;}
/* Founder card: center the button under the card, align card with the bio */
.ey-content .wp-block-column > .ey-team + .wp-block-buttons{justify-content:center;margin-top:14px;}
.ey-content .wp-block-column > .ey-team{max-width:280px;margin:0 auto;}
.ey-content .ey-team{background:#fff;border:1px solid var(--ey-line-soft);border-radius:14px;padding:26px 18px 22px;margin:0;box-shadow:0 8px 22px -16px rgba(13,27,42,.22);transition:transform .16s ease,box-shadow .16s ease;}
.ey-content .ey-team:hover{transform:translateY(-3px);box-shadow:0 14px 30px -16px rgba(13,27,42,.32);}
.ey-content .ey-team .ey-team-photo{margin:0 auto 14px;width:max-content;}
.ey-content .ey-team .ey-team-photo img{width:112px;height:112px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 0 0 2px var(--ey-teal);}
.ey-content .ey-team h3,.ey-content .ey-team h4,.ey-content .ey-team h5{font-size:17px;margin:0 0 3px;max-width:none;}
.ey-content .ey-team p{margin:0;max-width:none;}

/* ==== 1.22.51: About-page polish round (from full-page visual audit) ==== */
/* Grid cards must FILL their tracks — the founder rule's auto margins were
   shrinking every roster card to fit-content (ragged gaps). */
.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team + .ey-team) .ey-team{max-width:none;margin:0;width:auto;}
/* Link-only lists ("We also offer the following services") render as branded
   pill buttons instead of an underlined bullet list. */
.ey-content ul.wp-block-list:has(> li > a:only-child){display:flex;flex-wrap:wrap;gap:12px;padding:0;margin-top:6px;}
.ey-content ul.wp-block-list:has(> li > a:only-child) > li{padding:0;margin:0;}
.ey-content ul.wp-block-list:has(> li > a:only-child) > li::before{display:none;}
.ey-content ul.wp-block-list > li > a:only-child{display:inline-block;background:#fff;border:1.5px solid var(--ey-line-soft);border-radius:999px;padding:10px 20px;font-weight:600;font-size:14.5px;color:var(--ey-navy);text-decoration:none;transition:border-color .16s ease,color .16s ease,transform .16s ease;}
.ey-content ul.wp-block-list > li > a:only-child:hover{border-color:var(--ey-teal);color:var(--ey-teal-ink);transform:translateY(-1px);}
/* The harvested ORANGE row (old accent color, off-brand, poor contrast) gets
   the same navy-band treatment as other legacy colored rows. */
.ey-content .ey-kc-section[style*="#ff9700"]{background:var(--ey-navy) !important;}
.ey-content .ey-kc-section[style*="#ff9700"] h1,.ey-content .ey-kc-section[style*="#ff9700"] h2,
.ey-content .ey-kc-section[style*="#ff9700"] h3{color:#fff;}
.ey-content .ey-kc-section[style*="#ff9700"] p,.ey-content .ey-kc-section[style*="#ff9700"] li{color:#C9D6D0;}
.ey-content .ey-kc-section[style*="#ff9700"] a{color:var(--ey-teal-bright);}
/* Founder row: align the card block with the top of the bio */
.ey-content .wp-block-column > .ey-team .ey-team-photo{margin-top:0;}
.ey-content .wp-block-column > .ey-team .ey-team-photo img{margin-top:0;}

/* ==== 1.22.54: unified section axis for converted pages ====
   Designed pages center every section on one axis (heading + contained
   content). Converted pages mixed 820px-centered text with full-bleed
   columns rows — different left edges everywhere. Align them. */
.ey-content.full > .wp-block-columns{max-width:1140px;margin-left:auto;margin-right:auto;}
.ey-content .ey-kc-section .wp-block-columns{max-width:1140px;margin-left:auto;margin-right:auto;}
.ey-htl{max-width:1140px;margin-left:auto;margin-right:auto;}
/* "Profile beside text" pattern (founder block): compact card column + bio,
   instead of a half-empty 50/50 split. */
.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team):not(:has(.ey-team + .ey-team)){display:grid !important;grid-template-columns:minmax(240px,320px) 1fr;gap:48px;align-items:start;max-width:1080px;margin-left:auto;margin-right:auto;}
@media (max-width:760px){.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team):not(:has(.ey-team + .ey-team)){grid-template-columns:1fr;gap:20px;}}

/* ==== 1.22.55: one shared left edge + bigger member photos ====
   Full-width converted pages now live in a single centered 1140px shell;
   headings, text, rows and grids all start on the same left edge (text keeps
   its 820px reading measure, ragged right). */
.ey-content.full{max-width:1244px;margin-left:auto;margin-right:auto;}
.ey-content.full > p,.ey-content.full > h2,.ey-content.full > h3,.ey-content.full > h4,
.ey-content.full > ul,.ey-content.full > ol,.ey-content.full > blockquote{margin-left:0;}
.ey-content.full > .wp-block-columns,.ey-content.full .ey-htl{margin-left:0;margin-right:auto;}
.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team + .ey-team){margin-left:0;}
.ey-content .wp-block-columns:not(:has(.wp-block-columns)):has(.ey-team):not(:has(.ey-team + .ey-team)){margin-left:0;}
/* Member photos back to the design's 140px */
.ey-content .ey-team .ey-team-photo img{width:160px;height:160px;}

/* ==== 1.22.57: Schedule = THE critical CTA, in brand orange ====
   Playbook rule: orange is "a discipline, not a decoration — reserve it for
   one critical CTA." Navy text on orange = 5.19:1 (AA at any size). */
.ey-btn--cta{background-color:var(--ey-aqua);color:var(--ey-navy);font-weight:800;transition:background-color .16s ease,transform .16s ease,box-shadow .16s ease;}
.ey-btn--cta:hover{background-color:var(--ey-aqua-light,#5FD1CF);color:var(--ey-navy);transform:translateY(-2px);box-shadow:0 8px 20px -6px rgba(76,194,192,.55),0 0 0 4px rgba(76,194,192,.2);}
.ey-nav__cta--solid{background:var(--ey-aqua);color:var(--ey-navy);font-weight:800;}
.ey-nav__cta--solid:hover{background:var(--ey-aqua-light,#5FD1CF);color:var(--ey-navy);}
.ey-mm-cta{background:var(--ey-aqua) !important;color:var(--ey-navy) !important;font-weight:800;}
.ey-content a.ey-btn--cta{color:var(--ey-navy);}

/* ==== 1.22.59: smart sticky nav — hides scrolling down, returns scrolling up ==== */
.ey-nav{transition:transform .28s ease;}
.ey-nav--hidden{transform:translateY(-100%);}
@media (prefers-reduced-motion:reduce){.ey-nav{transition:none;}}

/* ==== 1.22.60: team UX audit — final items ==== */
/* #01 One consistent content container inside full-bleed sections */
.ey-section > *{max-width:var(--ey-maxw);margin-left:auto;margin-right:auto;}
/* #02 Phone + rating you can actually see; tap-to-call in the mobile menu */
.ey-utility__phone{font-size:14.5px;font-weight:800;color:#fff !important;letter-spacing:.02em;}
.ey-utility__right span{font-size:12.5px;}
.ey-utility__right .ey-stars{font-size:13px;}
.ey-mm-call{display:block;margin-top:10px;padding:13px 18px;border:1.5px solid var(--ey-aqua);border-radius:var(--ey-radius);color:#fff;font-weight:700;text-align:center;}
/* #07 Clearer section rhythm: more air between sections than within them */
.ey-section__head{padding-top:76px;}
.ey-section--testimonials,.ey-section--process{background:#FFFFFF;}
/* #09 Process steps: big numerals + icons, a visible sequence */
.ey-step__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.ey-step__big{font-family:var(--ey-font-display);font-size:44px;font-weight:800;line-height:1;color:var(--ey-teal);letter-spacing:-.02em;}
.ey-step__ico{width:44px;height:44px;border-radius:50%;background:var(--ey-ivory);color:var(--ey-teal-dark);display:flex;align-items:center;justify-content:center;flex:none;}
.ey-step__ico svg{width:21px;height:21px;}
/* #12 Tool cards: icon, hover, clear affordance */
.ey-tool{transition:transform .16s ease,box-shadow .16s ease,background .16s ease;}
.ey-tool:hover{transform:translateY(-3px);box-shadow:0 14px 30px -18px rgba(13,27,42,.3);background:#fff;}
.ey-tool__ico{width:42px;height:42px;border-radius:50%;background:var(--ey-ivory);color:var(--ey-teal-dark);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.ey-tool__ico svg{width:20px;height:20px;}
/* #13 Blog cards: title leads, image supports */
.ey-post__media{aspect-ratio:21/9;}
.ey-post__body h3{font-size:20px;line-height:1.3;}
.ey-post__meta{font-weight:700;color:var(--ey-teal-ink,#17855F);}
/* #14 Final CTA vs footer: tonal break + divider */
.ey-footer{background:var(--ey-navy-deep);border-top:1px solid var(--ey-navy-line);}
.ey-cta{border-bottom:2px solid var(--ey-teal);}
/* #11 Testimonial photos (Featured Image on a Testimonial entry) */
.ey-quote__photo{width:52px;height:52px;box-shadow:0 0 0 2px var(--ey-teal);background:#fff;object-fit:contain;padding:2px;}
.ey-quote__link{display:inline-flex;border-radius:50%;transition:transform .16s ease,box-shadow .16s ease;}
.ey-quote__link:hover{transform:translateY(-2px);}
.ey-quote__link:hover .ey-quote__photo{box-shadow:0 0 0 2px var(--ey-teal-dark),0 6px 14px -6px rgba(13,27,42,.35);}

/* ==== 1.22.63: light logo artwork gets a navy backing automatically ==== */
.ey-quote__photo--light{background:var(--ey-navy);}

/* ==== 1.22.66: booking widget loading state (Schedule page) ==== */
.ey-booking{position:relative;min-height:420px;scroll-margin-top:90px;}
.ey-booking--loading::before{content:"";position:absolute;inset:0;border-radius:12px;background:linear-gradient(100deg,#EDF1F0 40%,#F7FAF9 50%,#EDF1F0 60%);background-size:200% 100%;animation:ey-shimmer 1.4s linear infinite;}
.ey-booking--loading::after{content:"Loading the calendar — one moment…";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-weight:700;color:var(--ey-slate);font-size:15px;}
@keyframes ey-shimmer{to{background-position:-200% 0;}}
@media (prefers-reduced-motion:reduce){.ey-booking--loading::before{animation:none;}}
/* "What to expect" band (Schedule page pattern) */
.ey-expect{background:var(--ey-ivory);border-radius:12px;padding:40px 44px 30px;margin:10px auto 34px;max-width:1080px;}
.ey-expect .ey-h2{margin-top:4px;}
.ey-expect h3{font-size:17.5px;margin:0 0 6px;}
.ey-expect p{margin:0 0 8px;}
.ey-expect__meta{font-weight:700;color:var(--ey-teal-dark);border-top:1px solid rgba(13,27,42,.12);padding-top:14px;margin-top:18px;}

/* ==== 1.22.67: case-studies listing (team UX audit round 3) ==== */
/* Trust-stat strip under the hero */
.ey-casestats{display:flex;gap:14px 54px;flex-wrap:wrap;max-width:var(--ey-maxw);margin:0 auto;padding:26px 52px 6px;}
.ey-casestats__item{display:flex;align-items:baseline;gap:10px;}
.ey-casestats .ey-stat-num{font-family:var(--ey-font-display);font-size:30px;font-weight:800;color:var(--ey-teal-dark);letter-spacing:-.02em;}
.ey-casestats__lbl{font-size:13.5px;font-weight:600;color:var(--ey-slate);}
/* Single-row sticky filter with a distinct Featured toggle */
.ey-filter--sticky{position:sticky;top:70px;z-index:5;background:var(--ey-surface);padding-top:10px;padding-bottom:10px;flex-wrap:nowrap;align-items:center;}
.ey-filter__row{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0;}
.ey-filter__row::-webkit-scrollbar{display:none;}
.ey-filter__row .ey-filter__btn{flex:none;white-space:nowrap;}
.ey-filter__btn--featured{flex:none;white-space:nowrap;border-color:var(--ey-orange);color:var(--ey-navy);}
.ey-filter__btn--featured:hover{border-color:var(--ey-orange);color:var(--ey-orange);}
.ey-filter__btn--featured.is-active{background:var(--ey-orange);border-color:var(--ey-orange);color:var(--ey-navy);}
/* Card descriptions + featured badge */
.ey-case__desc{margin:6px 0 0;font-size:14px;line-height:1.5;color:var(--ey-slate);}
.ey-tag--featured{background:var(--ey-orange) !important;color:var(--ey-navy);right:12px;left:auto;}
.ey-casespage__more{text-align:center;padding:8px 0 40px;}

/* ==== 1.22.68: service-page audit round ==== */
/* Hero trust chips (existing Customizer rating text; stars in playbook orange) */
.ey-pagehero__trust{margin-top:18px;font-size:13px;font-weight:600;color:#9DB0AB;letter-spacing:.02em;}
.ey-pagehero__trust .ey-stars{color:var(--ey-orange);letter-spacing:2px;}
.ey-pagehero__trust .sep{opacity:.5;margin:0 4px;}
/* Legacy bright-cyan and charcoal rows join the navy-band treatment (#04) */
.ey-content .ey-kc-section[style*="#00bff3"],.ey-content .ey-kc-section[style*="#2f2c2c"]{background:var(--ey-navy) !important;}
.ey-content .ey-kc-section[style*="#00bff3"] h1,.ey-content .ey-kc-section[style*="#00bff3"] h2,.ey-content .ey-kc-section[style*="#00bff3"] h3,
.ey-content .ey-kc-section[style*="#2f2c2c"] h1,.ey-content .ey-kc-section[style*="#2f2c2c"] h2,.ey-content .ey-kc-section[style*="#2f2c2c"] h3{color:#fff;}
.ey-content .ey-kc-section[style*="#00bff3"] p,.ey-content .ey-kc-section[style*="#00bff3"] li,
.ey-content .ey-kc-section[style*="#2f2c2c"] p,.ey-content .ey-kc-section[style*="#2f2c2c"] li{color:#C9D6D0;}
/* Process cards flow as ONE row — five steps fit five columns (#06) */
.eco-process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:18px;}
.eco-process-card-wide{grid-column:auto !important;}
@media (max-width:900px){.eco-process-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:520px){.eco-process-grid{grid-template-columns:1fr;}}
/* Capability cards */
.ey-capgrid .ey-capcard{background:#fff;border:1px solid var(--ey-line-soft);border-radius:12px;padding:24px 24px 20px;height:100%;border-top:3px solid var(--ey-teal);}
.ey-capgrid .ey-capcard h3{font-size:17.5px;margin:0 0 8px;max-width:none;}
.ey-capgrid .ey-capcard p{margin:0;font-size:14.5px;max-width:none;}
/* Brand icon circles on service info-boxes (replaces repeated legacy images) */
.ey-infobox-brandicon{width:54px;height:54px;border-radius:50%;background:var(--ey-ivory);color:var(--ey-teal-dark);display:inline-flex;align-items:center;justify-content:center;}
.ey-infobox-brandicon svg{width:25px;height:25px;}
.ey-infobox .ey-infobox-icon{margin:0 auto 6px;}

/* ==== 1.22.70: case-study detail (team UX audit round 5) ==== */
/* The work, presented large in a browser frame (#01 + #03) */
.ey-caseshot{max-width:1080px;margin:-26px auto 8px;padding:0 52px;}
.ey-caseshot__frame{background:#fff;border:1px solid var(--ey-line-soft);border-radius:12px;overflow:hidden;box-shadow:0 24px 60px -30px rgba(13,27,42,.35);}
.ey-caseshot__bar{display:flex;gap:6px;padding:11px 14px;background:var(--ey-surface);border-bottom:1px solid var(--ey-line-soft);}
.ey-caseshot__bar span{width:10px;height:10px;border-radius:50%;background:#D5DDE3;}
.ey-caseshot__img{display:block;width:100%;height:auto;max-height:600px;object-fit:cover;object-position:top;}
.ey-casesingle--stacked{display:block;max-width:1080px;margin:0 auto;padding:28px 52px 40px;}
.ey-casesingle--stacked .ey-casesingle__body{max-width:none;}
/* Client pull-quote (#05 — the "Client quote" box on the project) */
.ey-casequote{margin:30px 0;border:0;border-left:4px solid var(--ey-teal);background:var(--ey-ivory);border-radius:0 12px 12px 0;padding:22px 26px;}
.ey-casequote p{font-family:var(--ey-font-display);font-size:19px;line-height:1.5;font-weight:600;color:var(--ey-navy);margin:0 0 8px;max-width:none;}
.ey-casequote cite{font-style:normal;font-size:13.5px;font-weight:700;color:var(--ey-teal-dark);}
/* Conversion first, live-site second (#04) */
.ey-casesingle__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px;}
@media (max-width:640px){.ey-caseshot{padding:0 20px;}.ey-casesingle--stacked{padding:24px 20px 32px;}}

/* ==== 1.22.72: industry/tool/contact audit round + editability ==== */
/* Process stepper (replaces the tab presentation; content = Details blocks) */
.ey-tabs--steps{counter-reset:ey-step;}
.ey-tabs--steps .wp-block-details{position:relative;overflow:visible;margin:0 0 0 46px !important;padding:18px 22px 16px;background:#fff;border:1px solid var(--ey-line-soft);border-radius:10px;}
.ey-tabs--steps .wp-block-details + .wp-block-details{margin-top:18px !important;}
.ey-tabs--steps .wp-block-details::before{counter-increment:ey-step;content:counter(ey-step,decimal-leading-zero);position:absolute;left:-46px;top:12px;width:34px;height:34px;border-radius:50%;background:var(--ey-teal);color:#fff;font-family:var(--ey-font-display);font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;}
.ey-tabs--steps .wp-block-details::after{content:"";position:absolute;left:-30px;top:52px;bottom:-24px;width:2px;background:var(--ey-line-soft);}
.ey-tabs--steps .wp-block-details:last-child::after{display:none;}
.ey-tabs--steps summary{font-family:var(--ey-font-display);font-weight:700;font-size:17px;color:var(--ey-navy);cursor:pointer;list-style:none;}
.ey-tabs--steps summary::-webkit-details-marker{display:none;}
.ey-tabs--steps details:not([open]) summary::after{content:" +";color:var(--ey-teal);}
/* Industry cards: recognition + affordance */
.ey-indcard{transition:transform .16s ease,box-shadow .16s ease;}
.ey-indcard:hover{transform:translateY(-3px);box-shadow:0 12px 26px -14px rgba(13,27,42,.35);}
.ey-indcard .go{color:var(--ey-teal-dark);font-weight:700;}
/* Contact info rows (converted content: .ey-contact + __icon/__title/__sub)
   render as clickable accent cards. Scoped to .ey-content so the contact
   TEMPLATE's same-named grid wrapper is untouched. */
.ey-content .ey-contact{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--ey-line-soft);border-left:4px solid var(--ey-teal);border-radius:10px;padding:14px 18px;margin:0 0 14px;}
.ey-content .ey-contact__icon{width:30px;height:30px;flex:none;}
.ey-content .ey-contact a.ey-contact__title{font-size:17px;font-weight:800;color:var(--ey-navy);text-decoration:none;}
.ey-content .ey-contact a.ey-contact__title:hover{color:var(--ey-teal-dark);}
.ey-content .ey-contact__sub{font-size:13px;color:var(--ey-slate);}

/* ---- v1.22.77: We Recommend (page-id-4020) — legacy affiliate logos came over
   at their raw upload sizes (Evernote/Sezzle huge, SiteGround tiny). Normalize
   every logo into a uniform chip: capped height, white card, soft border. Content
   stays plain image blocks so the team can swap logos in the editor. ---- */
.page-id-4020 .ey-content .wp-block-image{margin:20px 0 8px;}
.page-id-4020 .ey-content .wp-block-image img{height:84px;width:auto;max-width:100%;object-fit:contain;background:#fff;border:1px solid var(--ey-line-soft);border-radius:10px;padding:14px 22px;box-sizing:content-box;margin:0;}
.page-id-4020 .ey-content figure.aligncenter{margin-left:0;margin-right:0;}
.page-id-4020 .ey-content h3{margin-top:2em;padding-top:1.4em;border-top:1px solid var(--ey-line-soft);}
.page-id-4020 .ey-content h3:first-of-type{border-top:0;padding-top:0;margin-top:1.2em;}
.page-id-4020 .ey-content .wp-block-columns{gap:28px;}
@media (max-width:600px){.page-id-4020 .ey-content .wp-block-image img{height:64px;padding:10px 14px;}}

/* ---- v1.22.78: founder section team CTA (Customize → Homepage — Founder Note) ---- */
.ey-founder__cta{margin-top:30px;}

/* ---- v1.22.79: per-section CTA slots (Customize → Homepage — Section Buttons)
   + footer social icons (Customize → CTA & Footer; icon shows per URL set) ---- */
.ey-seccta{margin-top:42px;display:flex;justify-content:center;}
.ey-social{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap;}
.ey-social__link{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--ey-navy-line);border-radius:50%;color:#9db0ab;transition:background .18s,color .18s,border-color .18s,transform .18s;}
.ey-social__link svg{width:17px;height:17px;fill:currentColor;}
.ey-social__link:hover{background:var(--ey-teal);border-color:var(--ey-teal);color:#fff;transform:translateY(-2px);}
