/* Opta6 shared stylesheet — design tokens, base layer and brand layer.
   Order is load-bearing: the brand layer near the bottom deliberately overrides
   the base layer above it. Page-specific rules are inlined per page AFTER this
   file, so they win over both.

   Poppins is self-hosted: loading it from a font CDN passes visitor IPs to a
   third party, which we don't have a lawful basis to do. */

@font-face{font-family:"Poppins";font-style:normal;font-weight:300;font-display:swap;src:url("/assets/fonts/poppins-300.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/poppins-400.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/poppins-500.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/poppins-600.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/poppins-700.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{
  --ink:#283047;            /* Opta6 wordmark navy */
  --deep:#171940;           /* Opta6 quaternary */
  --slate:#5C6479;
  --ground:#F4F5F8;
  --paper:#FFFFFF;
  --signal:#C82D77;         /* brand magenta, deepened for text contrast */
  --signal-bright:#E23C8E;  /* Opta6 primary */
  --signal-soft:#FBE8F2;
  --purple:#A33188;         /* Opta6 secondary */
  --muted:#B4B9C7;
  --rule:#DDE0E7;
  --display:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
  --body:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"Poppins",system-ui,sans-serif;
  --measure:34rem;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 28px}
.band{padding:76px 0;border-top:1px solid var(--rule)}
.band-paper{background:var(--paper)}
h1,h2,h3{font-family:var(--display);font-weight:500;letter-spacing:-.015em;margin:0}
p{margin:0 0 1.05em}
.eyebrow{font-family:var(--mono);font-size:.71rem;letter-spacing:.16em;text-transform:uppercase;color:var(--signal);margin:0 0 18px}
.eyebrow-grey{color:var(--slate)}
.note{font-family:var(--mono);font-size:.7rem;letter-spacing:.06em;color:var(--slate)}

/* nav */
.nav{position:sticky;top:0;z-index:40;background:rgba(237,240,241,.93);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule)}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 28px;max-width:1120px;margin:0 auto}
.brand{display:flex;align-items:baseline;gap:12px;text-decoration:none}
.brand b{font-family:var(--display);font-size:1.3rem;font-weight:600;letter-spacing:-.02em}
.brand span{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.nav-links{display:flex;align-items:center;gap:22px}
.nav-links a{font-size:.9rem;text-decoration:none;color:var(--slate)}
.nav-links a:hover{color:var(--ink)}
@media(max-width:760px){.nav-links a.hide-sm{display:none}.brand span{display:none}}
.btn-primary{background:var(--ink);color:var(--ground)}
.btn-primary:hover{background:var(--signal);border-color:var(--signal)}
.btn-ghost{background:transparent;color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--ground)}
.btn-sm{padding:9px 16px;font-size:.85rem}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--signal);outline-offset:3px}
.hero h1 em{font-style:normal;color:var(--signal)}

/* generic grids */
.two{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:56px}
@media(max-width:940px){.two{grid-template-columns:1fr;gap:32px}}
.stack{display:grid;gap:26px}
.item{border-top:1px solid var(--rule);padding-top:18px}
.item h3{margin-bottom:6px}
.item p{margin:0;color:var(--slate);font-size:.98rem}

/* worked-example teaser: small type, still legible — the limits have to stay visible */
.wx-note{font-size:.88rem;color:var(--slate);margin-top:18px;max-width:var(--measure)}

/* footer */
.foot{background:var(--ink);color:#99A0B8;border-top:1px solid #3A4265;padding:34px 0;font-size:.85rem}
.foot-in{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.foot a{color:#C6CADA}

/* ---- Opta6 brand layer ---- */
body{font-weight:400}
h1,h2,h3{font-weight:600;letter-spacing:-.02em}
h1{font-weight:500}
.lede{font-weight:300}
.eyebrow{font-weight:600}
.brand img{height:34px;width:auto;display:block}
.brand span{padding-left:12px;border-left:1px solid var(--rule)}
.wordmark img{height:38px;width:auto;display:block}
.foot-logo{height:34px;width:auto;opacity:.9}
.foot-in{align-items:center}
.btn{font-weight:600}
.btn-primary{background:var(--signal);border-color:var(--signal);color:#fff}
.btn-primary:hover{background:var(--signal-bright);border-color:var(--signal-bright);color:#fff}
.btn-ghost{border-color:var(--ink);color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:#fff}
.cta{background:var(--deep)}
.foot{background:var(--deep)}
.signup{background:var(--deep)}
/* client wall */
.wall{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:30px}
@media(max-width:760px){.wall{grid-template-columns:repeat(2,1fr)}}
.wall div{background:var(--paper);display:grid;place-items:center;padding:26px 20px;min-height:104px}

/* nav CTA: .nav-links a was out-specifying .btn-primary and greying the label */
.nav-links a.btn-primary{color:#fff;background:var(--signal);border-color:var(--signal)}
.nav-links a.btn-primary:hover{color:#fff;background:var(--signal-bright);border-color:var(--signal-bright)}
