/* ============================================================
   EduGrow Vantage — brand-strict stylesheet
   Palette: Obsidian / Alabaster / Polaris / Ash · Brass never on web
   Type: Inter (400/500/700/800) + JetBrains Mono (500) for numerics
   Rules: 1px lines not cards · left-aligned · corners max 4px · no shadow/gradient
   ============================================================ */

:root{
  --obsidian:#0B0B0F;
  --alabaster:#F7F5F0;
  --polaris:#3D5A80;
  --ash:#5A5A5F;
  --rule:rgba(11,11,15,0.12);
  --rule-strong:rgba(11,11,15,0.22);
  --inv-rule:rgba(247,245,240,0.18);
  --inv-rule-strong:rgba(247,245,240,0.30);
  --inv-ash:rgba(247,245,240,0.62);
}

/* ============ RESET ============ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--alabaster);
  color:var(--obsidian);
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  font-weight:400;
  font-size:17px;
  line-height:1.6;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
img,svg{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none;border-bottom:1px solid var(--rule);transition:border-color .2s ease}
a:hover{border-color:var(--obsidian)}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
::selection{background:var(--obsidian);color:var(--alabaster)}
:focus-visible{outline:2px solid var(--obsidian);outline-offset:3px}

/* ============ LAYOUT ============ */
.wrap{max-width:1280px;margin:0 auto;padding:0 48px}
@media (max-width:720px){ .wrap{padding:0 24px} }

/* ============ TYPOGRAPHY ============ */
.display{
  font-family:'Inter Tight','Inter',sans-serif;
  font-weight:800;
  letter-spacing:-0.025em;
  line-height:1.02;
}
.h1{font-size:clamp(44px,7vw,88px)}
.h2{font-size:clamp(32px,4.4vw,52px)}
.h3{font-size:clamp(24px,2.6vw,32px);letter-spacing:-0.02em}
.h4{font-size:clamp(20px,2vw,26px);letter-spacing:-0.02em}
.eyebrow{
  font-family:'Inter',sans-serif;
  font-weight:500;
  font-size:12px;
  letter-spacing:0.15em;
  text-transform:uppercase;
  color:var(--ash);
}
.lede{font-size:clamp(19px,1.6vw,22px);line-height:1.55;max-width:60ch}
.body-lg{font-size:19px;line-height:1.65;max-width:65ch}
.body{font-size:17px;line-height:1.6;max-width:65ch}
.small{font-size:14px;line-height:1.5;color:var(--ash)}
.mono{
  font-family:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  font-weight:500;
  letter-spacing:-0.03em;
}
.stat-lg{font-family:'JetBrains Mono',monospace;font-weight:500;letter-spacing:-0.03em;font-size:clamp(48px,6vw,84px);line-height:1}
.stat-md{font-family:'JetBrains Mono',monospace;font-weight:500;letter-spacing:-0.03em;font-size:clamp(32px,3.6vw,44px);line-height:1}
.polaris{color:var(--polaris)}

.rule{border-bottom:1px solid var(--rule)}
.rule-strong{border-bottom:1px solid var(--rule-strong)}

/* ============ HEADER / NAV ============ */
header.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(247,245,240,0.94);
  backdrop-filter:saturate(150%) blur(8px);
  -webkit-backdrop-filter:saturate(150%) blur(8px);
  border-bottom:1px solid var(--rule);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:14px;border:none}
.brand svg{width:22px;height:22px;flex:0 0 22px}
.brand-word{
  font-family:'Inter Tight',sans-serif;
  font-weight:800;
  font-size:14px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  line-height:1;
}
.brand-word span{display:block}
.brand-word .lo{font-weight:500;color:var(--ash);letter-spacing:0.16em;margin-top:2px}
.nav-links{display:flex;align-items:center;gap:32px}
.nav-links a{
  border:none;
  font-size:14px;
  color:var(--obsidian);
  position:relative;
}
.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--obsidian);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.nav-links a:hover::after,.nav-links a[aria-current="page"]::after{transform:scaleX(1)}
.nav-cta{
  font-size:15px;
  font-weight:500;
  padding:12px 22px;
  border:1px solid var(--obsidian);
  border-radius:2px;
  background:var(--obsidian);
  color:var(--alabaster);
  letter-spacing:0.01em;
  transition:opacity .2s ease;
}
.nav-cta:hover{opacity:.86;border-color:var(--obsidian)}
.nav-cta::after{display:none}
.nav-toggle{display:none;border:1px solid var(--rule-strong);border-radius:2px;padding:8px 12px;font-size:13px}
@media (max-width:960px){
  .nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:var(--alabaster);border-bottom:1px solid var(--rule);flex-direction:column;padding:24px 24px 32px;align-items:flex-start;gap:20px}
  .nav-links.open{display:flex}
  .nav-toggle{display:block}
}

/* ============ HERO ============ */
.hero{padding:120px 0 88px;border-bottom:1px solid var(--rule)}
.hero-eyebrow{margin-bottom:32px}
.hero h1{margin-bottom:40px;max-width:19ch}
.hero-sub{max-width:64ch;color:var(--obsidian)}
.hero-actions{margin-top:56px;display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center}
@media (max-width:720px){ .hero{padding:80px 0 64px} }

/* ============ BUTTONS ============ */
.btn-primary{
  display:inline-block;
  padding:16px 28px;
  background:var(--obsidian);
  color:var(--alabaster);
  border:1px solid var(--obsidian);
  border-radius:2px;
  font-size:15px;
  font-weight:500;
  transition:opacity .2s ease;
}
.btn-primary:hover{opacity:.88;border-color:var(--obsidian)}
.btn-secondary{
  display:inline-block;
  padding:15px 0;
  border-bottom:1px solid var(--obsidian);
  border-radius:0;
  font-size:15px;
  font-weight:500;
}
.btn-secondary:hover{border-color:var(--obsidian);opacity:.72}
.btn-inv{
  display:inline-block;
  padding:16px 28px;
  background:var(--alabaster);
  color:var(--obsidian);
  border:1px solid var(--alabaster);
  border-radius:2px;
  font-size:15px;
  font-weight:500;
}
.btn-inv:hover{opacity:.88;border-color:var(--alabaster)}

/* ============ SECTION SHELL ============ */
section.blk{padding:120px 0;border-bottom:1px solid var(--rule)}
@media (max-width:720px){ section.blk{padding:80px 0} }
.section-head{display:grid;grid-template-columns:1fr 2fr;gap:64px;margin-bottom:80px;align-items:end}
@media (max-width:900px){ .section-head{grid-template-columns:1fr;gap:24px;margin-bottom:56px} }
.section-head .eyebrow{align-self:start}

/* ============ PROOF STRIP ============ */
.proof{padding:72px 0;border-bottom:1px solid var(--rule)}
.proof-label{margin-bottom:40px}
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:56px 40px}
@media (max-width:900px){ .proof-grid{grid-template-columns:repeat(2,1fr);gap:48px 32px} }
.proof-item .stat-lg{margin-bottom:10px}
.proof-item .small{max-width:20ch}

/* ============ NUMBERED ROW LISTS (practices, steps, changes) ============ */
.row-list{margin-top:0}
.row{
  display:grid;
  grid-template-columns:64px 1fr 2fr;
  gap:48px;
  padding:40px 0;
  border-top:1px solid var(--rule);
  align-items:start;
}
.row:last-child{border-bottom:1px solid var(--rule)}
.row-num{font-family:'JetBrains Mono',monospace;font-weight:500;font-size:14px;color:var(--ash);padding-top:8px}
.row-name{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:clamp(22px,2.2vw,28px);letter-spacing:-0.02em;line-height:1.1}
.row-desc{color:var(--obsidian);font-size:17px;line-height:1.6}
.row-desc .mono-note{font-family:'JetBrains Mono',monospace;font-weight:500;letter-spacing:-0.03em;font-size:13px;color:var(--ash);display:block;margin-top:12px}
@media (max-width:720px){
  .row{grid-template-columns:1fr;gap:12px}
  .row-num{padding-top:0}
}

/* ============ 3-COLUMN GRID (sub-sectors) ============ */
.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--rule)}
@media (max-width:900px){ .three-col{grid-template-columns:1fr} }
.tc-item{
  padding:48px 48px 56px 0;
  border-right:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
}
.tc-item:last-child{border-right:none}
@media (max-width:900px){
  .tc-item{padding:40px 0;border-right:none}
}
.tc-num{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--ash);margin-bottom:20px}
.tc-item h3{margin-bottom:16px}
.tc-item .body{font-size:16px}
.tc-tags{margin-top:20px;display:flex;flex-wrap:wrap;gap:16px;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--ash);letter-spacing:0.05em}
@media (min-width:900px){
  .tc-item:nth-child(2){padding-left:48px;padding-right:48px}
  .tc-item:nth-child(3){padding-left:48px}
}

/* ============ INVERTED BLOCK (case study) ============ */
.inv{padding:120px 0;border-bottom:1px solid var(--rule);background:var(--obsidian);color:var(--alabaster)}
.inv a{color:var(--alabaster);border-color:var(--inv-rule-strong)}
.inv a:hover{border-color:var(--alabaster)}
.inv .eyebrow{color:var(--inv-ash)}
.inv .small{color:var(--inv-ash)}
.inv .row-num{color:var(--inv-ash)}
.inv .row{border-top-color:var(--inv-rule)}
.inv .row:last-child{border-bottom-color:var(--inv-rule)}
.inv .rule{border-color:var(--inv-rule)}
.inv-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 32px;padding:56px 0;border-top:1px solid var(--inv-rule);border-bottom:1px solid var(--inv-rule)}
@media (max-width:720px){ .inv-stats{grid-template-columns:1fr} }
.inv-attribution{margin-top:56px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.05em;color:var(--inv-ash);text-transform:uppercase}

/* ============ TWO-COLUMN FILTER ============ */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
@media (max-width:900px){ .two-col{grid-template-columns:1fr} }
.two-col-item{padding:56px 48px 56px 0}
.two-col-item:first-child{border-right:1px solid var(--rule)}
.two-col-item:last-child{padding-left:48px}
@media (max-width:900px){
  .two-col-item{padding:40px 0;border-right:none}
  .two-col-item:first-child{border-bottom:1px solid var(--rule)}
  .two-col-item:last-child{padding-left:0}
}
.two-col-item h3{margin-bottom:20px}

/* ============ RESOURCES LIST / BLOG INDEX ============ */
.resources-list{border-top:1px solid var(--rule)}
.resource{
  display:grid;
  grid-template-columns:160px 1fr 180px;
  gap:48px;
  padding:36px 0;
  border-bottom:1px solid var(--rule);
  align-items:baseline;
  transition:padding .2s ease;
  border-left:none;border-right:none;border-top:none;
}
.resource:hover{padding-left:16px}
.resource-date{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--ash)}
.resource-title{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:clamp(20px,2vw,26px);letter-spacing:-0.02em;line-height:1.15}
.resource-cat{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ash);text-align:right}
@media (max-width:900px){
  .resource{grid-template-columns:1fr;gap:8px;padding:28px 0}
  .resource:hover{padding-left:0}
  .resource-cat{text-align:left}
}
.resources-more{margin-top:56px}

/* ============ ABOUT / SPLIT ============ */
.split-2{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
@media (max-width:900px){ .split-2{grid-template-columns:1fr;gap:40px} }
.split-3-2{display:grid;grid-template-columns:1fr 2fr;gap:64px;align-items:start}
@media (max-width:900px){ .split-3-2{grid-template-columns:1fr;gap:24px} }
.about-block h4{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:14px;letter-spacing:0.15em;text-transform:uppercase;color:var(--ash);margin-bottom:20px}
.about-block p{margin-bottom:16px}

/* ============ FAQ ============ */
.faq-item{border-top:1px solid var(--rule);padding:28px 0}
.faq-item:last-child{border-bottom:1px solid var(--rule)}
.faq-q{
  display:flex;justify-content:space-between;align-items:baseline;gap:32px;
  width:100%;text-align:left;padding:0;
  font-family:'Inter Tight',sans-serif;font-weight:800;
  font-size:clamp(19px,1.8vw,23px);letter-spacing:-0.015em;line-height:1.25;
}
.faq-q .toggle{font-family:'JetBrains Mono',monospace;font-weight:500;font-size:16px;color:var(--ash);flex:0 0 auto;transition:transform .2s ease}
.faq-item[open] .faq-q .toggle{transform:rotate(45deg)}
.faq-item[open]{padding-bottom:36px}
.faq-a{margin-top:20px;color:var(--obsidian);max-width:70ch;font-size:16px;line-height:1.6}
summary{cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}

/* ============ COMPARISON TABLE ============ */
.compare{width:100%;border-collapse:collapse;margin-top:24px;font-size:16px}
.compare th,.compare td{padding:20px 24px;text-align:left;vertical-align:top;border-bottom:1px solid var(--rule)}
.compare thead th{
  font-family:'Inter',sans-serif;font-weight:500;font-size:12px;letter-spacing:0.12em;text-transform:uppercase;color:var(--ash);
  padding-top:0;padding-bottom:16px;border-bottom:1px solid var(--rule-strong)
}
.compare tbody th{
  font-family:'Inter Tight',sans-serif;font-weight:800;font-size:15px;letter-spacing:-0.01em;color:var(--obsidian);
  width:28%;padding-left:0
}
.compare td{color:var(--obsidian)}
.compare td:last-child,.compare th:last-child{padding-right:0}
@media (max-width:720px){
  .compare th,.compare td{padding:16px 12px}
  .compare tbody th{width:auto;display:block;padding-bottom:6px;border:none}
  .compare tbody td{display:block;padding-top:0;padding-left:0}
  .compare tbody td:first-of-type{padding-top:8px}
}

/* ============ CONTACT ============ */
.contact-detail{padding-top:36px;border-top:1px solid var(--rule)}
.contact-detail dt{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ash);margin-bottom:8px}
.contact-detail dd{margin-bottom:28px;font-size:17px}
.contact-detail dd:last-child{margin-bottom:0}
.form-block{padding:40px;border:1px solid var(--rule-strong);border-radius:2px}
.form-field{margin-bottom:24px}
.form-field label{display:block;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ash);margin-bottom:8px}
.form-field input,.form-field select,.form-field textarea{
  width:100%;padding:12px 0;background:transparent;border:none;
  border-bottom:1px solid var(--rule-strong);border-radius:0;
  font:inherit;color:var(--obsidian);outline:none;transition:border-color .2s ease;
}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--obsidian)}
.form-field textarea{min-height:96px;resize:vertical}
.form-note{margin-top:16px;font-size:13px;color:var(--ash)}

/* ============ ARTICLE (blog post) ============ */
.article{padding:120px 0 96px;border-bottom:1px solid var(--rule)}
.article-meta{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:32px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ash)}
.article h1{margin-bottom:32px;max-width:20ch}
.article-lede{max-width:65ch;font-size:22px;line-height:1.5;margin-bottom:56px;color:var(--obsidian)}
.article-body{max-width:70ch}
.article-body p{margin-bottom:24px;font-size:18px;line-height:1.65}
.article-body h2{
  font-family:'Inter Tight',sans-serif;font-weight:800;
  font-size:clamp(24px,2.6vw,32px);letter-spacing:-0.02em;line-height:1.15;
  margin:56px 0 20px;
}
.article-body h3{
  font-family:'Inter Tight',sans-serif;font-weight:800;
  font-size:clamp(19px,2vw,22px);letter-spacing:-0.015em;line-height:1.2;
  margin:40px 0 16px;
}
.article-body ul,.article-body ol{margin:0 0 24px 24px}
.article-body li{margin-bottom:10px;font-size:18px;line-height:1.6}
.article-body blockquote{
  margin:32px 0;padding:24px 0 24px 32px;
  border-left:1px solid var(--rule-strong);
  font-family:'Inter Tight',sans-serif;font-weight:500;font-size:22px;line-height:1.4;letter-spacing:-0.01em;
}
.article-body code{
  font-family:'JetBrains Mono',monospace;font-size:0.92em;
  background:rgba(11,11,15,0.06);padding:2px 6px;border-radius:2px;
}
.article-footer{margin-top:64px;padding-top:32px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:14px;color:var(--ash)}

/* ============ BREADCRUMB ============ */
.crumbs{padding:24px 0;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ash);border-bottom:1px solid var(--rule)}
.crumbs a{border:none;color:var(--ash)}
.crumbs a:hover{color:var(--obsidian)}
.crumbs .sep{margin:0 12px}

/* ============ FOOTER ============ */
footer.site-footer{padding:80px 0 56px;border-top:1px solid var(--rule)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:64px}
@media (max-width:900px){ .footer-grid{grid-template-columns:1fr 1fr;gap:40px} }
@media (max-width:520px){ .footer-grid{grid-template-columns:1fr} }
.footer-brand p{margin-top:20px;max-width:36ch;font-size:14px;color:var(--ash)}
.footer-col h5{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ash);margin-bottom:16px}
.footer-col ul{list-style:none;padding:0}
.footer-col li{margin-bottom:10px;font-size:14px}
.footer-col a{border:none}
.footer-col a:hover{opacity:.62}
.footer-bottom{padding-top:32px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.05em;color:var(--ash);text-transform:uppercase}

/* ============ UTILITIES ============ */
.mt-4{margin-top:16px} .mt-6{margin-top:24px} .mt-8{margin-top:32px} .mt-10{margin-top:40px} .mt-14{margin-top:56px} .mt-20{margin-top:80px}
.mb-4{margin-bottom:16px} .mb-6{margin-bottom:24px} .mb-8{margin-bottom:32px} .mb-10{margin-bottom:40px}

/* ============ DATA VISUALISATIONS ============ */
.timeline-viz,.chart-viz{
  width:100%;
  max-width:900px;
  padding:32px 0;
}
.timeline-viz svg,.chart-viz svg{
  width:100%;
  height:auto;
  overflow:visible;
}
.chart-viz{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:16px 0}
.chart-caption{
  font-family:'JetBrains Mono',monospace;
  font-size:12px;
  letter-spacing:0.06em;
  color:var(--ash);
  margin-top:16px;
  text-transform:uppercase;
}
.bar-chart{width:100%;max-width:720px}
.bar-row{
  display:grid;
  grid-template-columns:80px 1fr 100px;
  gap:24px;
  align-items:center;
  padding:14px 0;
  border-top:1px solid var(--rule);
}
.bar-row:last-child{border-bottom:1px solid var(--rule)}
.bar-label{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.06em;color:var(--ash);text-transform:uppercase}
.bar-track{height:14px;background:transparent;position:relative}
.bar-fill{height:100%;background:var(--obsidian)}
.bar-value{font-family:'JetBrains Mono',monospace;font-weight:500;font-size:15px;color:var(--obsidian);text-align:right;letter-spacing:-0.02em}

/* ============================================================
   ENGAGEBAY FORM OVERRIDES
   Force EngageBay's injected form into brand styling.
   Defensive selectors — target every common class pattern
   EngageBay uses. Uses !important because EngageBay applies
   inline styles that would otherwise win the cascade.
   ============================================================ */

.engage-hub-form-embed{width:100%;min-height:280px}
.engage-hub-form-embed *{
  font-family:'Inter',system-ui,-apple-system,sans-serif !important;
  color:var(--obsidian) !important;
  box-shadow:none !important;
  text-shadow:none !important;
  background-image:none !important;
}

/* Wipe EngageBay's card/container styling */
.engage-hub-form-embed [class*="eh-form"],
.engage-hub-form-embed [class*="ehform"],
.engage-hub-form-embed form,
.engage-hub-form-embed .eh_form_wrapper{
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  padding:0 !important;
  margin:0 !important;
  max-width:none !important;
  width:100% !important;
}

/* Field wrappers get consistent vertical rhythm */
.engage-hub-form-embed .eh-form-field,
.engage-hub-form-embed .eh_form_field,
.engage-hub-form-embed .form-group,
.engage-hub-form-embed [class*="field-wrapper"]{
  margin-bottom:24px !important;
  padding:0 !important;
  width:100% !important;
}

/* Labels — JetBrains Mono, uppercase, ash */
.engage-hub-form-embed label{
  display:block !important;
  font-family:'JetBrains Mono',ui-monospace,monospace !important;
  font-size:12px !important;
  font-weight:500 !important;
  letter-spacing:0.08em !important;
  text-transform:uppercase !important;
  color:var(--ash) !important;
  margin-bottom:8px !important;
  line-height:1.4 !important;
}

/* Inputs — underline only, no card */
.engage-hub-form-embed input[type="text"],
.engage-hub-form-embed input[type="email"],
.engage-hub-form-embed input[type="tel"],
.engage-hub-form-embed input[type="url"],
.engage-hub-form-embed input[type="number"],
.engage-hub-form-embed select,
.engage-hub-form-embed textarea{
  width:100% !important;
  padding:12px 0 !important;
  background:transparent !important;
  border:none !important;
  border-bottom:1px solid var(--rule-strong) !important;
  border-radius:0 !important;
  font-family:'Inter',sans-serif !important;
  font-size:17px !important;
  font-weight:400 !important;
  color:var(--obsidian) !important;
  outline:none !important;
  box-sizing:border-box !important;
  transition:border-color .2s ease !important;
  appearance:auto;
  -webkit-appearance:auto;
}
.engage-hub-form-embed input:focus,
.engage-hub-form-embed select:focus,
.engage-hub-form-embed textarea:focus{
  border-bottom-color:var(--obsidian) !important;
  outline:none !important;
  box-shadow:none !important;
}
.engage-hub-form-embed textarea{
  min-height:96px !important;
  resize:vertical !important;
}
.engage-hub-form-embed input::placeholder,
.engage-hub-form-embed textarea::placeholder{
  color:var(--ash) !important;
  opacity:.7 !important;
}

/* Submit button — obsidian filled, brand-matched */
.engage-hub-form-embed button,
.engage-hub-form-embed input[type="submit"],
.engage-hub-form-embed [class*="submit"],
.engage-hub-form-embed [class*="btn"]{
  display:inline-block !important;
  width:100% !important;
  padding:16px 28px !important;
  margin-top:8px !important;
  background:var(--obsidian) !important;
  color:var(--alabaster) !important;
  border:1px solid var(--obsidian) !important;
  border-radius:2px !important;
  font-family:'Inter',sans-serif !important;
  font-size:15px !important;
  font-weight:500 !important;
  letter-spacing:0.01em !important;
  text-align:center !important;
  cursor:pointer !important;
  text-decoration:none !important;
  transition:opacity .2s ease !important;
  appearance:none !important;
  -webkit-appearance:none !important;
}
.engage-hub-form-embed button:hover,
.engage-hub-form-embed input[type="submit"]:hover,
.engage-hub-form-embed [class*="submit"]:hover{
  opacity:.86 !important;
  background:var(--obsidian) !important;
  color:var(--alabaster) !important;
}

/* Success / error messaging */
.engage-hub-form-embed .success-message,
.engage-hub-form-embed .thank-you,
.engage-hub-form-embed [class*="success"]{
  padding:24px 0 !important;
  color:var(--obsidian) !important;
  font-family:'Inter',sans-serif !important;
  font-size:17px !important;
  border-top:1px solid var(--rule) !important;
  border-bottom:1px solid var(--rule) !important;
}
.engage-hub-form-embed .error,
.engage-hub-form-embed [class*="error"]{
  font-family:'JetBrains Mono',monospace !important;
  font-size:12px !important;
  letter-spacing:0.06em !important;
  color:#a03030 !important;
  margin-top:6px !important;
}

/* Kill EngageBay branding/watermark if present */
.engage-hub-form-embed a[href*="engagebay"],
.engage-hub-form-embed [class*="powered-by"],
.engage-hub-form-embed [class*="watermark"]{
  display:none !important;
}
