:root{
  --navy:#061f49;
  --navy-2:#0b2d63;
  --blue:#1776c8;
  --green:#4b982c;
  --green-2:#72be34;
  --ink:#152237;
  --muted:#5c687a;
  --line:#dfe5ec;
  --soft:#f5f8fb;
  --white:#fff;
  --shadow:0 18px 50px rgba(8,31,73,.10);
  --radius:20px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(calc(100% - 40px),var(--max));margin:auto}
.topbar{background:var(--navy);color:white;font-size:.9rem;padding:8px 0;text-align:center}
.nav-wrap{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(223,229,236,.8);z-index:50}
nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand img{width:205px;height:auto}
.nav-links{display:flex;gap:24px;align-items:center;font-weight:650;font-size:.95rem}
.nav-links a:hover{color:var(--green)}
.nav-toggle{display:none;background:none;border:0;font-size:1.5rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 19px;border-radius:12px;font-weight:750;border:1px solid transparent;transition:.2s;cursor:pointer}
.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{transform:translateY(-1px);background:var(--navy-2)}
.btn-green{background:var(--green);color:#fff}.btn-green:hover{background:#3c7e25}
.btn-outline{border-color:#b8c4d2;background:#fff;color:var(--navy)}.btn-outline:hover{border-color:var(--navy)}
.hero{padding:88px 0 72px;background:radial-gradient(circle at 85% 15%,rgba(114,190,52,.10),transparent 30%),linear-gradient(180deg,#fff,#f7fafc)}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:62px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--green);font-size:.78rem}
h1{font-size:clamp(2.75rem,5vw,5rem);line-height:1.02;letter-spacing:-.045em;margin:15px 0 22px;color:var(--navy)}
.lead{font-size:1.25rem;color:#46556b;max-width:720px}
.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}
.trust-row{display:flex;gap:24px;flex-wrap:wrap;margin-top:28px;color:#4d5d72;font-size:.92rem}
.trust-row span::before{content:"✓";color:var(--green);font-weight:900;margin-right:7px}
.hero-card{background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:28px}
.hero-card .mini-label{font-size:.82rem;color:var(--muted);font-weight:700}
.pipeline{margin-top:18px;display:grid;gap:11px}
.pipeline-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:13px 15px;background:var(--soft);border-radius:12px}
.pipeline-row strong{color:var(--navy)}
.badge{font-size:.76rem;font-weight:800;padding:5px 9px;border-radius:999px;background:#e9f5e3;color:#2f6d1e}
.badge.nurture{background:#fff3d9;color:#855900}.badge.suppress{background:#f4e8e8;color:#8a3a3a}
.section{padding:82px 0}.section.alt{background:var(--soft)}
.section-head{max-width:780px;margin-bottom:38px}.section-head h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1.08;color:var(--navy);letter-spacing:-.035em;margin:10px 0 14px}.section-head p{font-size:1.08rem;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid var(--line);border-radius:var(--radius);padding:26px;background:#fff}.card h3{color:var(--navy);font-size:1.25rem}.card .num{font-size:.78rem;font-weight:900;color:var(--green);letter-spacing:.13em}
.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.problem{padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}.problem strong{display:block;color:var(--navy);margin-bottom:6px}
.demo-shell{display:grid;grid-template-columns:.75fr 1.25fr;gap:28px;border:1px solid var(--line);border-radius:24px;background:white;box-shadow:var(--shadow);padding:28px}
.demo-controls label{display:block;font-weight:750;margin:0 0 7px}.demo-controls input{width:100%;padding:12px;border:1px solid #bcc8d7;border-radius:10px;margin-bottom:15px;font:inherit}.demo-results{background:var(--navy);color:white;border-radius:18px;padding:24px}.demo-results h3{margin-top:0}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}.metric{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);padding:16px;border-radius:12px}.metric span{display:block;font-size:.78rem;color:#c5d2e4}.metric strong{font-size:1.5rem}.disclaimer{font-size:.78rem;color:#b9c6d8}
.story{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}.quote{font-size:1.5rem;line-height:1.45;color:var(--navy);font-weight:650;border-left:4px solid var(--green);padding-left:22px}
.cta{background:linear-gradient(135deg,var(--navy),#0a336e);color:white;border-radius:28px;padding:50px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.cta h2{font-size:2.3rem;margin:0 0 10px}.cta p{color:#d4dfed;margin:0;max-width:700px}
.footer{background:#06162f;color:#c6d2e2;padding:56px 0 30px;margin-top:72px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:38px}.footer img{width:180px;filter:brightness(0) invert(1)}.footer h4{color:#fff;margin-top:0}.footer a{display:block;margin:8px 0;color:#c6d2e2}.footer small{display:block;margin-top:34px;padding-top:20px;border-top:1px solid #203657;color:#8fa1b8}
.page-hero{padding:68px 0 48px;background:var(--soft)}.page-hero h1{font-size:clamp(2.5rem,5vw,4rem)}
.copy{max-width:830px}.copy h2{margin-top:42px;color:var(--navy)}.copy p,.copy li{color:#4c5b70}.copy li{margin:8px 0}
.form{display:grid;gap:14px;max-width:700px}.form input,.form textarea,.form select{width:100%;padding:13px 14px;border:1px solid #bdc8d5;border-radius:10px;font:inherit}.form textarea{min-height:150px}.form label{font-weight:700}
.notice{padding:16px 18px;border-radius:12px;background:#eef7ea;color:#356f21;border:1px solid #d8ebcf}.notice.neutral{background:#f5f8fb;color:#536175;border-color:#dfe5ec}
.release-card{border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;align-items:center;justify-content:space-between;gap:20px}
@media(max-width:900px){.hero-grid,.demo-shell,.story,.cta{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.problem-grid{grid-template-columns:repeat(2,1fr)}.nav-links{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;border-bottom:1px solid var(--line)}.nav-links.open{display:flex}.nav-toggle{display:block}.footer-grid{grid-template-columns:1fr 1fr}.cta{padding:36px}}
@media(max-width:560px){.container{width:min(calc(100% - 26px),var(--max))}.hero{padding:58px 0 48px}.problem-grid,.metric-grid,.footer-grid{grid-template-columns:1fr}.brand img{width:170px}.section{padding:60px 0}.cta h2{font-size:1.9rem}}
/* v0.2 Production Polish */
.brand{display:flex;align-items:center;align-self:stretch;background:transparent}.brand img{width:190px;max-height:76px;object-fit:contain;background:transparent}
.nav-wrap,.nav-wrap .container,nav{background:#fff}.nav-toggle{color:var(--navy);padding:8px;border-radius:8px}.nav-toggle:focus-visible,a:focus-visible,.btn:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(23,118,200,.35);outline-offset:3px}
.footer-contact{margin-top:12px}.footer-contact a{display:inline;color:#fff}.legal-meta{color:#8fa1b8;margin-top:8px}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:44px;align-items:start}.contact-card{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:var(--soft)}.contact-card h2{margin-top:0;color:var(--navy)}.hp-field{position:absolute!important;left:-9999px!important}.form-status{margin-top:4px}.active-link{color:var(--green)!important}.skip-link{position:absolute;left:-9999px;top:8px;background:#fff;color:var(--navy);padding:10px;z-index:100}.skip-link:focus{left:8px}.social-card{display:none}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}.brand img{width:175px}.nav-links{top:82px;box-shadow:0 18px 30px rgba(8,31,73,.08)}}
@media(max-width:560px){nav{height:72px}.brand img{width:150px;max-height:66px}.nav-links{top:72px}.topbar{font-size:.78rem;padding:7px 14px}.hero-card{padding:20px}.pipeline-row{grid-template-columns:1fr}.cta{padding:28px}.release-card{align-items:flex-start;flex-direction:column}}

/* v0.3.1 secure upload UX */
.secure-file-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.secure-file-native{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.secure-file-choose{cursor:pointer;margin:0}.secure-file-name{min-width:220px;max-width:460px;overflow-wrap:anywhere;font-weight:600;color:var(--navy,#08254c)}@media(max-width:680px){.secure-file-row{align-items:stretch}.secure-file-name{min-width:100%;order:2}.secure-file-row .btn-primary{order:3}}

/* v0.3.1 legal/social maintenance */
.social-link{display:inline-flex!important;align-items:center;gap:9px}.linkedin-icon{width:24px;height:24px;display:inline-flex;flex:0 0 24px}.linkedin-icon svg{width:24px;height:24px;display:block}.legal-copy{max-width:900px}.legal-copy h2{scroll-margin-top:110px}.legal-copy h3{color:var(--navy);margin-top:28px}.legal-updated{color:var(--muted);font-size:.92rem}.legal-copy a{text-decoration:underline;text-underline-offset:2px}.footer .social-link{text-decoration:none}

/* v0.3.1 footer alignment maintenance - Social is a peer column; LinkedIn icon is compact */
.footer-grid{grid-template-columns:1.5fr repeat(4,minmax(120px,1fr));align-items:start}
.footer-grid>div{min-width:0}
.footer .social-link{display:inline-flex!important;align-items:center;gap:10px;margin:8px 0!important;line-height:1.2;width:auto}
.footer .linkedin-icon{width:22px!important;height:22px!important;min-width:22px!important;max-width:22px!important;min-height:22px!important;max-height:22px!important;display:inline-flex!important;flex:0 0 22px!important;overflow:hidden}
.footer .linkedin-icon svg{display:block!important;width:22px!important;height:22px!important;min-width:22px!important;max-width:22px!important}
.footer .social-link span:last-child{display:inline-block}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr}}

/* v0.3.1 footer hotfix - force 5-column desktop layout and compact social icon */
.footer-grid{
  display:grid!important;
  grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(120px,1fr))!important;
  gap:38px!important;
  align-items:start!important;
}
.footer-grid>div{min-width:0!important}
/* Only the ODEARO brand image should use the large footer image size. */
.footer-grid>div:first-child>img{
  width:180px!important;
  max-width:180px!important;
  height:auto!important;
  filter:brightness(0) invert(1);
}
/* Never allow a social image/icon to inherit the brand-image rule. */
.footer .social-link,
.footer .social-link:link,
.footer .social-link:visited{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:9px!important;
  width:auto!important;
  margin:8px 0!important;
}
.footer .social-link img,
.footer .linkedin-icon,
.footer .linkedin-icon svg{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  max-width:22px!important;
  max-height:22px!important;
  flex:0 0 22px!important;
  object-fit:contain!important;
  filter:none!important;
  display:block!important;
}
.footer .social-link span:last-child{display:inline-block!important}
@media(max-width:900px){
  .footer-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:560px){
  .footer-grid{grid-template-columns:1fr!important}
}
