/* Google Fonts loaded via HTML link tags for performance */
/* ═══════════════════════════════════════════
   DESIGN TOKENS
═══════════════════════════════════════════ */
:root {
  --ink:      #0C1B2E;
  --ink2:     #1E3352;
  --blue:     #1356C8;
  --blue2:    #0F43A3;
  --sky:      #3B82F6;
  --cyan:     #06B6D4;
  --gold:     #D4A017;
  --white:    #FFFFFF;
  --off:      #F7F8FC;
  --muted:    #F0F2F8;
  --border:   #E1E7F0;
  --text:     #1A2B42;
  --sub:      #4A6180;
  --faint:    #7A92AE;

  --h:     'Bricolage Grotesque', system-ui, sans-serif;
  --b:     'Manrope', system-ui, sans-serif;

  --r:    10px;
  --r2:   16px;
  --r3:   24px;
  --r4:   32px;
  --ease: cubic-bezier(.4,0,.2,1);
  --t:    .22s;

  --s1: 0 1px 4px rgba(12,27,46,.07);
  --s2: 0 4px 16px rgba(12,27,46,.10);
  --s3: 0 12px 40px rgba(12,27,46,.14);
  --s4: 0 24px 64px rgba(12,27,46,.18);
}

/* ═══════════════════════════════════════════
   RESET
═══════════════════════════════════════════ */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { font-size:16px; scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body { font-family:var(--b); color:var(--text); background:var(--white); line-height:1.65; overflow-x:hidden; -webkit-font-smoothing:antialiased; }
img,svg { display:block; max-width:100%; }
a { text-decoration:none; color:inherit; }
ul { list-style:none; }
button { font-family:inherit; cursor:pointer; }

/* ═══════════════════════════════════════════
   TYPOGRAPHY
═══════════════════════════════════════════ */
h1,h2,h3,h4,h5 { font-family:var(--h); color:var(--ink); line-height:1.15; font-weight:700; }
h1 { font-size:clamp(2rem,5vw,3.6rem); font-weight:800; letter-spacing:-.03em; }
h2 { font-size:clamp(1.6rem,3.5vw,2.6rem); font-weight:700; letter-spacing:-.025em; }
h3 { font-size:clamp(1.1rem,2vw,1.3rem); font-weight:600; }
h4 { font-size:.95rem; font-weight:700; }
p  { color:var(--sub); line-height:1.75; }

/* ═══════════════════════════════════════════
   LAYOUT
═══════════════════════════════════════════ */
.wrap { max-width:1200px; margin:0 auto; padding:0 1.5rem; }
@media(min-width:640px)  { .wrap { padding:0 2.5rem; } }
@media(min-width:1024px) { .wrap { padding:0 3rem; } }
.sec  { padding:5rem 0; }
.sec-lg { padding:7rem 0; }
.sec-alt { background:var(--off); }
.tc   { text-align:center; }

/* ═══════════════════════════════════════════
   UTILITIES
═══════════════════════════════════════════ */
.eyebrow {
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--h); font-size:.72rem; font-weight:700;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--blue); background:rgba(19,86,200,.08);
  border:1px solid rgba(19,86,200,.18); padding:5px 14px;
  border-radius:100px; margin-bottom:1.1rem;
}
.eyebrow::before { content:''; width:5px; height:5px; background:var(--blue); border-radius:50%; animation:pulse 2s infinite; }
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1);} 50%{opacity:.4;transform:scale(1.5);} }

/* ═══════════════════════════════════════════
   BUTTONS
═══════════════════════════════════════════ */
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-family:var(--h); font-size:.9rem; font-weight:700;
  padding:.8rem 2rem; border-radius:var(--r); border:2px solid transparent;
  cursor:pointer; transition:all var(--t) var(--ease);
  text-decoration:none; white-space:nowrap; min-height:48px;
}
.btn-primary { background:var(--blue); color:var(--white); border-color:var(--blue); }
.btn-primary:hover { background:var(--blue2); border-color:var(--blue2); transform:translateY(-2px); box-shadow:0 8px 24px rgba(19,86,200,.35); }
.btn-outline { background:transparent; color:var(--blue); border-color:var(--blue); }
.btn-outline:hover { background:var(--blue); color:var(--white); transform:translateY(-2px); }
.btn-white { background:var(--white); color:var(--blue); border-color:var(--white); }
.btn-white:hover { background:rgba(255,255,255,.9); transform:translateY(-2px); }
.btn-ghost { background:rgba(255,255,255,.1); color:var(--white); border-color:rgba(255,255,255,.3); }
.btn-ghost:hover { background:rgba(255,255,255,.2); border-color:rgba(255,255,255,.6); }
.btn-sm { padding:.55rem 1.25rem; font-size:.82rem; min-height:40px; }
.btn-lg { padding:1rem 2.5rem; font-size:1rem; min-height:56px; }

/* ═══════════════════════════════════════════
   NAVBAR
═══════════════════════════════════════════ */
#nav {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  background:rgba(255,255,255,.97); backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border); height:68px;
  transition:box-shadow var(--t);
}
#nav.shadow { box-shadow:var(--s2); }
.nav-wrap {
  max-width:1200px; margin:0 auto; padding:0 1.5rem;
  display:flex; align-items:center; justify-content:space-between; height:68px;
}
@media(min-width:640px) { .nav-wrap { padding:0 2.5rem; } }
@media(min-width:1024px) { .nav-wrap { padding:0 3rem; } }

.nav-logo {
  display:flex; align-items:center; gap:.6rem;
  text-decoration:none; flex-shrink:0;
}
.nav-logo-mark {
  width:38px; height:38px; background:var(--blue);
  border-radius:9px; display:flex; align-items:center; justify-content:center;
  flex-shrink:0; box-shadow:0 2px 8px rgba(19,86,200,.3);
}
.nav-logo-mark svg { width:22px; height:22px; }
.nav-logo-text { line-height:1.1; }
.nav-logo-name { font-family:var(--h); font-size:1.05rem; font-weight:800; color:var(--ink); display:block; letter-spacing:-.03em; }
.nav-logo-sub  { font-size:.58rem; font-weight:600; color:var(--faint); letter-spacing:.1em; text-transform:uppercase; display:block; }

/* Desktop links */
.nav-links { display:none; align-items:center; gap:2px; }
@media(min-width:768px) { .nav-links { display:flex; } }
.nav-links a {
  font-family:var(--h); font-size:.875rem; font-weight:600; color:var(--sub);
  padding:.5rem .9rem; border-radius:var(--r); transition:all var(--t);
  text-decoration:none; white-space:nowrap; min-height:44px;
  display:flex; align-items:center;
}
.nav-links a:hover, .nav-links a.active { color:var(--blue); background:rgba(19,86,200,.06); }
.nav-links .btn { margin-left:.5rem; }
.nav-links a.btn-primary,
.nav-links a.btn-primary:link,
.nav-links a.btn-primary:visited {
  background:var(--blue) !important;
  color:#ffffff !important;
  border-color:var(--blue) !important;
}
.nav-links a.btn-primary:hover,
.nav-links a.btn-primary:focus {
  background:var(--blue2) !important;
  color:#ffffff !important;
  border-color:var(--blue2) !important;
  box-shadow:0 8px 24px rgba(19,86,200,.35);
  transform:translateY(-2px);
}

/* Hamburger */
.nav-burger {
  display:flex; flex-direction:column; gap:5px; background:none;
  border:none; padding:.5rem; cursor:pointer;
  min-width:44px; min-height:44px; align-items:center; justify-content:center;
  border-radius:var(--r);
}
@media(min-width:768px) { .nav-burger { display:none; } }
.nav-burger span { display:block; width:22px; height:2px; background:var(--ink); border-radius:2px; transition:all var(--t); }
.nav-burger[aria-expanded="true"] span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.nav-burger[aria-expanded="true"] span:nth-child(2) { opacity:0; transform:scaleX(0); }
.nav-burger[aria-expanded="true"] span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* Mobile drawer */
.nav-drawer {
  display:none; position:fixed; top:68px; left:0; right:0; bottom:0;
  background:var(--white); overflow-y:auto; z-index:999;
  padding:1.5rem; flex-direction:column; gap:4px;
  border-top:1px solid var(--border);
}
.nav-drawer.open { display:flex; }
@media(min-width:768px) { .nav-drawer { display:none !important; } }
.nav-drawer a {
  font-family:var(--h); font-size:1rem; font-weight:600; color:var(--text);
  padding:1rem 1.25rem; border-radius:var(--r); display:block;
  transition:all var(--t); min-height:52px; display:flex; align-items:center;
}
.nav-drawer a:hover, .nav-drawer a.active { color:var(--blue); background:rgba(19,86,200,.06); }
.nav-drawer .btn { margin-top:.75rem; width:100%; justify-content:center; font-size:1rem; min-height:52px; }

/* ═══════════════════════════════════════════
   HERO
═══════════════════════════════════════════ */
.hero {
  min-height:100vh; display:flex; align-items:center;
  padding:8rem 0 5rem;
  background:linear-gradient(135deg, var(--ink) 0%, #0F2847 50%, #0A3A6E 100%);
  position:relative; overflow:hidden;
}
.hero-grid-bg {
  position:absolute; inset:0; pointer-events:none;
  background-image: linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:60px 60px;
}
.hero-glow {
  position:absolute; top:-20%; right:-10%; width:70%; height:140%;
  background:radial-gradient(ellipse at center, rgba(19,86,200,.18) 0%, transparent 65%);
  pointer-events:none;
}
.hero-inner {
  position:relative; z-index:2; display:grid;
  grid-template-columns:1fr; gap:4rem; align-items:center;
}
@media(min-width:960px) { .hero-inner { grid-template-columns:1.1fr .9fr; } }

.hero-tag {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(59,130,246,.15); border:1px solid rgba(59,130,246,.3);
  color:#93C5FD; padding:6px 16px; border-radius:100px;
  font-family:var(--h); font-size:.74rem; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase; margin-bottom:1.75rem;
}
.hero-tag::before { content:''; width:6px; height:6px; background:#93C5FD; border-radius:50%; animation:pulse 2s infinite; }

.hero h1 { color:var(--white); margin-bottom:1.5rem; max-width:600px; }
.hero h1 em { font-style:normal; color:#60A5FA; }
.hero-desc { color:rgba(255,255,255,.65); font-size:clamp(1rem,1.8vw,1.15rem); max-width:520px; margin-bottom:2.5rem; line-height:1.8; }
.hero-btns { display:flex; gap:.875rem; flex-wrap:wrap; }

.hero-stats {
  display:grid; grid-template-columns:repeat(2,1fr); gap:1rem;
  margin-top:3rem; padding-top:2.5rem; border-top:1px solid rgba(255,255,255,.1);
}
@media(min-width:480px) { .hero-stats { grid-template-columns:repeat(4,1fr); } }
.hstat-n { font-family:var(--h); font-size:2rem; font-weight:800; color:var(--white); line-height:1; }
.hstat-n em { font-style:normal; color:#60A5FA; }
.hstat-l { font-size:.72rem; color:rgba(255,255,255,.45); margin-top:4px; letter-spacing:.05em; text-transform:uppercase; }

/* Hero visual panel */
.hero-panel {
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
  border-radius:var(--r3); padding:2rem;
  backdrop-filter:blur(8px);
}
.hero-panel-head {
  font-family:var(--h); font-size:.7rem; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; color:rgba(255,255,255,.35); margin-bottom:1.25rem;
}
.cert-list { display:flex; flex-direction:column; gap:.6rem; }
.cert-row {
  display:flex; align-items:center; gap:.875rem;
  padding:.875rem 1rem; background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08); border-radius:var(--r);
  transition:all var(--t);
}
.cert-row:hover { background:rgba(59,130,246,.12); border-color:rgba(59,130,246,.25); }
.cert-icon { font-size:1.4rem; flex-shrink:0; }
.cert-name { font-family:var(--h); font-size:.82rem; font-weight:700; color:var(--white); }
.cert-status { font-size:.68rem; color:rgba(255,255,255,.4); margin-top:1px; }

/* ═══════════════════════════════════════════
   PAGE HERO (inner pages)
═══════════════════════════════════════════ */
.page-hero {
  padding:8.5rem 0 4.5rem;
  background:linear-gradient(135deg, var(--ink) 0%, #0F2847 60%, #0A3A6E 100%);
  position:relative; overflow:hidden;
}
.page-hero::before {
  content:''; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:48px 48px;
}
.page-hero .wrap { position:relative; z-index:2; }
.page-hero h1 { color:var(--white); }
.page-hero p  { color:rgba(255,255,255,.65); max-width:560px; font-size:1.05rem; margin-top:.875rem; }
.page-hero .eyebrow { color:#93C5FD; background:rgba(59,130,246,.12); border-color:rgba(59,130,246,.25); }
.breadcrumb { display:flex; align-items:center; gap:6px; font-size:.8rem; color:rgba(255,255,255,.4); margin-bottom:1.25rem; flex-wrap:wrap; }
.breadcrumb a { color:#93C5FD; }
.breadcrumb a:hover { text-decoration:underline; }
.bc-sep { color:rgba(255,255,255,.2); }

/* ═══════════════════════════════════════════
   DIVIDER / SECTION LABEL
═══════════════════════════════════════════ */
.divider-label {
  display:flex; align-items:center; gap:1rem; margin:3rem 0 .5rem;
}
.divider-label .line { flex:1; height:1px; background:var(--border); }
.divider-label .tag { font-family:var(--h); font-size:.68rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--faint); white-space:nowrap; }

/* ═══════════════════════════════════════════
   SERVICE CARDS — HOME PAGE
═══════════════════════════════════════════ */
.svc-grid {
  display:grid; grid-template-columns:1fr; gap:1.25rem; margin-top:3rem;
}
@media(min-width:600px) { .svc-grid { grid-template-columns:repeat(2,1fr); } }
@media(min-width:1024px) { .svc-grid { grid-template-columns:repeat(3,1fr); } }

.svc-card {
  background:var(--white); border:1.5px solid var(--border);
  border-radius:var(--r2); padding:2rem; transition:all var(--t);
  position:relative; overflow:hidden;
}
.svc-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg,var(--blue),var(--cyan));
  transform:scaleX(0); transform-origin:left; transition:transform var(--t);
}
.svc-card:hover { box-shadow:var(--s3); transform:translateY(-4px); border-color:rgba(19,86,200,.2); }
.svc-card:hover::before { transform:scaleX(1); }
.svc-ico {
  width:52px; height:52px; background:rgba(19,86,200,.08);
  border-radius:var(--r); display:flex; align-items:center; justify-content:center;
  font-size:1.5rem; margin-bottom:1.25rem; border:1px solid rgba(19,86,200,.12);
}
.svc-card h3 { margin-bottom:.625rem; font-size:1.05rem; }
.svc-card p  { font-size:.875rem; margin-bottom:1rem; }
.svc-tags { display:flex; flex-wrap:wrap; gap:5px; }
.stag {
  font-family:var(--h); font-size:.68rem; font-weight:600;
  padding:3px 9px; border-radius:100px; background:rgba(19,86,200,.06);
  color:var(--blue); border:1px solid rgba(19,86,200,.15);
}

/* ═══════════════════════════════════════════
   PRACTICE AREA CARDS — SERVICES PAGE
═══════════════════════════════════════════ */
.practice-grid {
  display:grid; grid-template-columns:1fr; gap:1.5rem; margin-top:3rem;
}
@media(min-width:640px)  { .practice-grid { grid-template-columns:repeat(2,1fr); } }
@media(min-width:1024px) { .practice-grid { grid-template-columns:repeat(3,1fr); } }

.pcard {
  background:var(--white); border:1.5px solid var(--border); border-radius:var(--r2);
  overflow:hidden; display:flex; flex-direction:column;
  transition:all var(--t); position:relative;
}
.pcard:hover { box-shadow:var(--s3); transform:translateY(-4px); border-color:rgba(19,86,200,.25); }
.pcard-head {
  padding:1.5rem 1.75rem 1.25rem;
  background:linear-gradient(135deg,var(--off),var(--muted));
  border-bottom:1.5px solid var(--border);
  display:flex; align-items:flex-start; gap:.875rem;
}
.pcard-ico {
  width:48px; height:48px; border-radius:var(--r); display:flex;
  align-items:center; justify-content:center; font-size:1.4rem;
  flex-shrink:0; border:1.5px solid rgba(19,86,200,.15); background:var(--white);
  box-shadow:var(--s1);
}
.pcard-num { font-family:var(--h); font-size:.6rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--blue); margin-bottom:3px; }
.pcard h3  { font-size:.95rem; color:var(--ink); margin:0; line-height:1.35; }
.pcard-body { padding:1.375rem 1.75rem 1.25rem; flex:1; }
.pcard-tagline { font-size:.8rem; color:var(--faint); margin-bottom:1rem; font-style:italic; line-height:1.6; }
.pcard-list { list-style:none; }
.pcard-list li {
  display:flex; align-items:flex-start; gap:8px;
  font-size:.84rem; color:var(--text); margin-bottom:.45rem; line-height:1.55;
}
.pcard-list li::before { content:'→'; color:var(--blue); font-size:.7rem; font-weight:700; flex-shrink:0; margin-top:3px; }
.pcard-foot { padding:.625rem 1.75rem 1.375rem; display:flex; flex-wrap:wrap; gap:5px; background:var(--off); border-top:1px solid var(--border); }
.cbadge { font-family:var(--h); font-size:.62rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; padding:3px 8px; border-radius:100px; border:1px solid; }
.cbadge-blue  { background:rgba(19,86,200,.07); color:var(--blue2); border-color:rgba(19,86,200,.2); }
.cbadge-gold  { background:rgba(212,160,23,.08); color:#92620C; border-color:rgba(212,160,23,.25); }
.cbadge-red   { background:rgba(220,38,38,.06); color:#B91C1C; border-color:rgba(220,38,38,.18); }

/* ═══════════════════════════════════════════
   PACKAGES
═══════════════════════════════════════════ */
.pkg-grid {
  display:grid; grid-template-columns:1fr; gap:1.5rem; margin-top:1.5rem;
}
@media(min-width:600px)  { .pkg-grid { grid-template-columns:repeat(2,1fr); } }
@media(min-width:1024px) { .pkg-grid { grid-template-columns:repeat(3,1fr); } }

.pkg {
  border-radius:var(--r2); border:1.5px solid var(--border);
  overflow:hidden; display:flex; flex-direction:column; transition:all var(--t);
  background:var(--white);
}
.pkg:hover { box-shadow:var(--s4); transform:translateY(-5px); }
.pkg-hd { padding:1.75rem 1.75rem 1.5rem; }
.pkg-badge {
  display:inline-block; font-family:var(--h); font-size:.62rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase; padding:3px 11px;
  border-radius:100px; margin-bottom:.875rem; border:1px solid;
}
.pkg-hd h3 { font-size:1.05rem; margin-bottom:.45rem; line-height:1.3; }
.pkg-hd p  { font-size:.82rem; line-height:1.6; }
.pkg-price { font-family:var(--h); font-size:1.5rem; font-weight:800; margin-top:1rem; line-height:1; }
.pkg-price small { font-size:.75rem; font-weight:400; opacity:.65; }
.pkg-bd { padding:1.5rem 1.75rem 1.75rem; flex:1; }
.pkg-bd h4 { font-family:var(--h); font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--faint); margin-bottom:.75rem; }
.pkg-list { list-style:none; margin-bottom:1.25rem; }
.pkg-list li { display:flex; align-items:flex-start; gap:8px; font-size:.84rem; color:var(--text); margin-bottom:.45rem; line-height:1.55; }
.pkg-list li::before { content:'✓'; color:var(--blue); font-weight:700; font-size:.75rem; flex-shrink:0; margin-top:2px; }
.pkg-note { background:rgba(19,86,200,.05); border:1px solid rgba(19,86,200,.14); border-radius:var(--r); padding:.7rem .9rem; margin-bottom:1.1rem; font-size:.77rem; color:var(--sub); line-height:1.6; }
.pkg-note b { color:var(--blue); }

/* Package color themes */
.pnav  .pkg-hd { background:var(--ink); }
.pnav  .pkg-hd h3,.pnav .pkg-hd p { color:rgba(255,255,255,.9); }
.pnav  .pkg-price { color:#7DD3FC; }
.pnav  .pkg-badge { background:rgba(14,165,233,.15); color:#7DD3FC; border-color:rgba(14,165,233,.3); }

.pblue .pkg-hd { background:var(--blue); }
.pblue .pkg-hd h3,.pblue .pkg-hd p { color:rgba(255,255,255,.9); }
.pblue .pkg-price { color:#BAE6FD; }
.pblue .pkg-badge { background:rgba(255,255,255,.15); color:#fff; border-color:rgba(255,255,255,.3); }

.pteal .pkg-hd { background:#0E7490; }
.pteal .pkg-hd h3,.pteal .pkg-hd p { color:rgba(255,255,255,.9); }
.pteal .pkg-price { color:#A5F3FC; }
.pteal .pkg-badge { background:rgba(255,255,255,.12); color:#A5F3FC; border-color:rgba(255,255,255,.25); }

.pslate .pkg-hd { background:#334155; }
.pslate .pkg-hd h3,.pslate .pkg-hd p { color:rgba(255,255,255,.9); }
.pslate .pkg-price { color:#CBD5E1; }
.pslate .pkg-badge { background:rgba(255,255,255,.1); color:#E2E8F0; border-color:rgba(255,255,255,.2); }

.pgreen .pkg-hd { background:#166534; }
.pgreen .pkg-hd h3,.pgreen .pkg-hd p { color:rgba(255,255,255,.9); }
.pgreen .pkg-price { color:#86EFAC; }
.pgreen .pkg-badge { background:rgba(134,239,172,.15); color:#86EFAC; border-color:rgba(134,239,172,.3); }

.pemerald .pkg-hd { background:#065F46; }
.pemerald .pkg-hd h3,.pemerald .pkg-hd p { color:rgba(255,255,255,.9); }
.pemerald .pkg-price { color:#6EE7B7; }
.pemerald .pkg-badge { background:rgba(110,231,183,.15); color:#6EE7B7; border-color:rgba(110,231,183,.3); }

.porange .pkg-hd { background:#9A3412; }
.porange .pkg-hd h3,.porange .pkg-hd p { color:rgba(255,255,255,.9); }
.porange .pkg-price { color:#FED7AA; }
.porange .pkg-badge { background:rgba(254,215,170,.12); color:#FED7AA; border-color:rgba(254,215,170,.3); }

.ppurple .pkg-hd { background:#581C87; }
.ppurple .pkg-hd h3,.ppurple .pkg-hd p { color:rgba(255,255,255,.9); }
.ppurple .pkg-price { color:#E9D5FF; }
.ppurple .pkg-badge { background:rgba(233,213,255,.12); color:#E9D5FF; border-color:rgba(233,213,255,.3); }

.pindigo .pkg-hd { background:#312E81; }
.pindigo .pkg-hd h3,.pindigo .pkg-hd p { color:rgba(255,255,255,.9); }
.pindigo .pkg-price { color:#C7D2FE; }
.pindigo .pkg-badge { background:rgba(199,210,254,.12); color:#C7D2FE; border-color:rgba(199,210,254,.3); }

.prose  .pkg-hd { background:#9F1239; }
.prose  .pkg-hd h3,.prose  .pkg-hd p { color:rgba(255,255,255,.9); }
.prose  .pkg-price { color:#FECDD3; }
.prose  .pkg-badge { background:rgba(254,205,211,.12); color:#FECDD3; border-color:rgba(254,205,211,.3); }

.pamber .pkg-hd { background:#78350F; }
.pamber .pkg-hd h3,.pamber .pkg-hd p { color:rgba(255,255,255,.9); }
.pamber .pkg-price { color:#FDE68A; }
.pamber .pkg-badge { background:rgba(253,230,138,.12); color:#FDE68A; border-color:rgba(253,230,138,.3); }

.ppink  .pkg-hd { background:#831843; }
.ppink  .pkg-hd h3,.ppink  .pkg-hd p { color:rgba(255,255,255,.9); }
.ppink  .pkg-price { color:#FBCFE8; }
.ppink  .pkg-badge { background:rgba(251,207,232,.12); color:#FBCFE8; border-color:rgba(251,207,232,.3); }

/* ═══════════════════════════════════════════
   CERT STRIP (dark bar)
═══════════════════════════════════════════ */
.cert-strip { background:var(--ink); padding:1.5rem 0; }
.cert-chips { display:flex; flex-wrap:wrap; gap:.65rem; justify-content:center; padding:0 1.5rem; }
.chip {
  font-family:var(--h); font-size:.72rem; font-weight:700;
  padding:6px 14px; border-radius:100px;
  border:1px solid rgba(255,255,255,.12); color:rgba(255,255,255,.7);
  background:rgba(255,255,255,.06); white-space:nowrap;
}
.chip-hi { background:rgba(59,130,246,.15); border-color:rgba(59,130,246,.3); color:#93C5FD; }

/* ═══════════════════════════════════════════
   TOOLS STRIP
═══════════════════════════════════════════ */
.tools-strip { background:var(--off); border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:2rem 0; }
.tools-row { display:flex; flex-wrap:wrap; gap:7px; justify-content:center; margin-top:1rem; }
.tool {
  font-family:var(--h); font-size:.74rem; font-weight:600;
  padding:5px 14px; border-radius:100px; background:var(--white);
  border:1.5px solid var(--border); color:var(--text); transition:all var(--t);
  min-height:32px; display:inline-flex; align-items:center;
}
.tool:hover { border-color:var(--blue); color:var(--blue); }
.tool-hi { background:rgba(19,86,200,.06); border-color:rgba(19,86,200,.25); color:var(--blue2); }
.tool-go { background:rgba(212,160,23,.06); border-color:rgba(212,160,23,.22); color:#92620C; }

/* ═══════════════════════════════════════════
   WHY IZU
═══════════════════════════════════════════ */
.why-grid { display:grid; grid-template-columns:1fr; gap:2.5rem; align-items:start; margin-top:3rem; }
@media(min-width:900px) { .why-grid { grid-template-columns:1fr 1fr; gap:4rem; } }
.why-list { display:flex; flex-direction:column; gap:1rem; }
.why-item {
  display:flex; gap:1.1rem; align-items:flex-start;
  padding:1.375rem; border:1.5px solid var(--border); border-radius:var(--r2);
  background:var(--white); transition:all var(--t);
}
.why-item:hover { box-shadow:var(--s2); border-color:rgba(19,86,200,.25); }
.why-n { font-family:var(--h); font-size:1.6rem; font-weight:800; color:var(--blue); opacity:.2; line-height:1; flex-shrink:0; min-width:36px; }
.why-item h4 { color:var(--ink); margin-bottom:3px; font-size:.93rem; }
.why-item p  { font-size:.84rem; margin:0; }
.why-panel { background:linear-gradient(135deg,var(--ink),var(--ink2)); border-radius:var(--r3); padding:2.75rem; }
.why-panel h3 { color:var(--white); margin-bottom:1.5rem; font-size:1.2rem; }
.ind { display:flex; align-items:center; gap:.75rem; font-size:.88rem; color:rgba(255,255,255,.78); padding:.55rem 0; border-bottom:1px solid rgba(255,255,255,.07); }
.ind:last-child { border:none; padding-bottom:0; }
.ind::before { content:'→'; color:#60A5FA; font-weight:700; flex-shrink:0; }

/* ═══════════════════════════════════════════
   OYO SECTION
═══════════════════════════════════════════ */
.oyo { background:linear-gradient(135deg,var(--ink) 0%,#0F2847 100%); padding:5.5rem 0; }
.oyo-inner { display:grid; grid-template-columns:1fr; gap:3rem; align-items:center; }
@media(min-width:900px) { .oyo-inner { grid-template-columns:1fr 1fr; gap:4rem; } }
.oyo h2 { color:var(--white); }
.oyo p  { color:rgba(255,255,255,.65); }
.oyo .eyebrow { color:#FCD34D; background:rgba(252,211,77,.1); border-color:rgba(252,211,77,.2); }
.oyo-feat { display:flex; align-items:flex-start; gap:.875rem; margin-top:1.25rem; }
.oyo-feat-ico { width:38px; height:38px; background:rgba(59,130,246,.15); border:1px solid rgba(59,130,246,.25); border-radius:var(--r); display:flex; align-items:center; justify-content:center; font-size:1rem; flex-shrink:0; }
.oyo-feat h4 { color:var(--white); font-size:.9rem; margin-bottom:2px; }
.oyo-feat p  { font-size:.83rem; color:rgba(255,255,255,.55); margin:0; }
/* screen mockup */
.oyo-screen { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.12); border-radius:var(--r3); padding:1.75rem; }
.oyo-dots { display:flex; gap:6px; margin-bottom:1rem; }
.oyo-dots span { width:10px; height:10px; border-radius:50%; }
.oyo-mock { height:7px; border-radius:4px; background:rgba(255,255,255,.07); margin-bottom:7px; }
.oyo-mock.a { width:65%; background:rgba(59,130,246,.25); }
.oyo-mock.b { width:80%; }
.oyo-mock.c { width:45%; }
.oyo-chart { display:flex; align-items:flex-end; gap:7px; height:65px; margin:1.25rem 0; }
.oyo-bar { flex:1; border-radius:4px 4px 0 0; background:linear-gradient(to top,var(--blue),var(--cyan)); }
.oyo-bar:nth-child(even) { opacity:.35; }

/* ═══════════════════════════════════════════
   CERTS SECTION (dark)
═══════════════════════════════════════════ */
.certs-dark { background:var(--ink); padding:5rem 0; }
.certs-dark h2 { color:var(--white); }
.certs-dark .eyebrow { color:#93C5FD; background:rgba(59,130,246,.12); border-color:rgba(59,130,246,.25); }
.certs-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; margin-top:2.5rem; }
@media(min-width:600px) { .certs-grid { grid-template-columns:repeat(3,1fr); } }
@media(min-width:900px) { .certs-grid { grid-template-columns:repeat(4,1fr); } }
.cert-card { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); border-radius:var(--r2); padding:1.5rem; text-align:center; transition:all var(--t); }
.cert-card:hover { background:rgba(59,130,246,.1); border-color:rgba(59,130,246,.3); transform:translateY(-3px); }
.cert-card .ci { font-size:1.7rem; margin-bottom:.65rem; }
.cert-card h4 { color:var(--white); font-size:.82rem; margin-bottom:3px; }
.cert-card p  { color:rgba(255,255,255,.4); font-size:.7rem; margin:0; }

/* ═══════════════════════════════════════════
   CTA BANNER
═══════════════════════════════════════════ */
.cta { background:linear-gradient(135deg,var(--blue) 0%,#0F43A3 100%); padding:5rem 0; text-align:center; }
.cta h2 { color:var(--white); margin-bottom:.875rem; }
.cta p  { color:rgba(255,255,255,.78); max-width:500px; margin:0 auto 2.25rem; font-size:1.05rem; }
.cta-btns { display:flex; gap:.875rem; justify-content:center; flex-wrap:wrap; }

/* ═══════════════════════════════════════════
   ABOUT PAGE
═══════════════════════════════════════════ */
.about-grid { display:grid; grid-template-columns:1fr; gap:3.5rem; align-items:center; margin-top:1rem; }
@media(min-width:900px) { .about-grid { grid-template-columns:1fr 1fr; } }
.about-panel { background:linear-gradient(135deg,var(--ink),var(--ink2)); border-radius:var(--r3); padding:2.5rem; }
.about-logo-row { margin-bottom:2rem; }
.about-stats { display:grid; grid-template-columns:1fr 1fr; gap:.9rem; }
.about-stat { background:rgba(255,255,255,.07); border-radius:var(--r); padding:1.1rem; text-align:center; }
.as-n { font-family:var(--h); font-size:1.7rem; font-weight:800; color:#7DD3FC; line-height:1; }
.as-l { font-size:.7rem; color:rgba(255,255,255,.45); margin-top:3px; text-transform:uppercase; letter-spacing:.05em; }
.about-info { margin-top:2rem; padding-top:1.5rem; border-top:1px solid rgba(255,255,255,.1); font-size:.83rem; color:rgba(255,255,255,.45); line-height:1.9; }
.about-info a { color:#7DD3FC; }
.values-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; margin-top:2.5rem; }
@media(min-width:768px) { .values-grid { grid-template-columns:repeat(3,1fr); } }
.val-card { background:var(--white); border:1.5px solid var(--border); border-radius:var(--r2); padding:1.5rem; text-align:center; transition:all var(--t); }
.val-card:hover { box-shadow:var(--s2); transform:translateY(-3px); }
.val-ico { font-size:1.75rem; margin-bottom:.7rem; }
.val-card h4 { margin-bottom:5px; font-size:.92rem; }
.val-card p  { font-size:.82rem; }

/* ═══════════════════════════════════════════
   CONTACT PAGE
═══════════════════════════════════════════ */
.contact-grid { display:grid; grid-template-columns:1fr; gap:2.5rem; align-items:start; }
@media(min-width:900px) { .contact-grid { grid-template-columns:1fr 1.5fr; } }
.contact-cards { display:flex; flex-direction:column; gap:1rem; }
.ccard { display:flex; gap:1rem; align-items:flex-start; background:var(--white); border:1.5px solid var(--border); border-radius:var(--r2); padding:1.25rem; transition:all var(--t); }
.ccard:hover { box-shadow:var(--s2); border-color:rgba(19,86,200,.25); }
.ccard-ico { width:44px; height:44px; background:rgba(19,86,200,.08); border-radius:var(--r); display:flex; align-items:center; justify-content:center; font-size:1.2rem; flex-shrink:0; }
.ccard h4 { font-size:.9rem; color:var(--ink); margin-bottom:3px; }
.ccard p  { font-size:.84rem; margin:0; }
.ccard a  { color:var(--blue); font-size:.84rem; font-weight:500; }
.ccard a:hover { text-decoration:underline; }
.map-wrap { border-radius:var(--r2); overflow:hidden; border:1.5px solid var(--border); height:200px; margin-top:1.25rem; }
.map-wrap iframe { width:100%; height:100%; border:none; display:block; }

/* Contact form */
.cform-wrap { background:var(--white); border:1.5px solid var(--border); border-radius:var(--r3); padding:2.5rem; box-shadow:var(--s2); }
.form-row { display:grid; grid-template-columns:1fr; gap:0; }
@media(min-width:480px) { .form-row { grid-template-columns:1fr 1fr; gap:1rem; } }
.fgroup { display:flex; flex-direction:column; gap:5px; margin-bottom:1.1rem; }
.fgroup label { font-family:var(--h); font-size:.8rem; font-weight:600; color:var(--text); letter-spacing:.03em; }
.fgroup input,.fgroup select,.fgroup textarea {
  padding:.75rem 1rem; border:1.5px solid var(--border); border-radius:var(--r);
  font-family:var(--b); font-size:.9rem; color:var(--text);
  background:var(--off); transition:all var(--t); outline:none;
  min-height:48px; width:100%;
}
.fgroup input:focus,.fgroup select,.fgroup textarea:focus { border-color:var(--blue); background:var(--white); box-shadow:0 0 0 3px rgba(19,86,200,.12); }
.fgroup select { appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%234A6180' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 12px center; padding-right:2.5rem; }
.fgroup textarea { resize:vertical; min-height:120px; }
.form-success { display:none; text-align:center; padding:2.5rem 1rem; }
.form-success .sico { font-size:3.5rem; margin-bottom:1.25rem; }

/* ═══════════════════════════════════════════
   LEGAL PAGES
═══════════════════════════════════════════ */
.legal { max-width:760px; margin:0 auto; }
.legal h2 { font-size:1.25rem; margin:2.5rem 0 .75rem; }
.legal p  { margin-bottom:.9rem; font-size:.94rem; }
.legal ul { margin:.7rem 0 1rem 1.5rem; list-style:disc; }
.legal ul li { margin-bottom:.4rem; font-size:.92rem; color:var(--sub); }
.legal a { color:var(--blue); }

/* ═══════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════ */
.footer { background:var(--ink); padding:5rem 0 2.5rem; }
.footer-grid { display:grid; grid-template-columns:1fr; gap:2.5rem; margin-bottom:3rem; }
@media(min-width:600px)  { .footer-grid { grid-template-columns:repeat(2,1fr); } }
@media(min-width:1024px) { .footer-grid { grid-template-columns:2fr 1fr 1fr 1.4fr; } }
.footer-logo { height:32px; width:auto; filter:brightness(0) invert(1); margin-bottom:1rem; }
.footer-brand p { color:rgba(255,255,255,.85); font-size:.84rem; max-width:265px; margin:.625rem 0 1.25rem; }
.footer-social { display:flex; gap:.5rem; }
.fsoc { width:38px; height:38px; min-width:38px; border-radius:var(--r); background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,.55); font-size:.88rem; transition:all var(--t); text-decoration:none; }
.fsoc:hover { background:rgba(59,130,246,.2); border-color:rgba(59,130,246,.4); color:#93C5FD; }
.footer h3 { color:var(--white); font-family:var(--h); font-size:.78rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin-bottom:.9rem; }
.footer ul li { margin-bottom:.5rem; }
.footer ul li a { color:rgba(255,255,255,.88); font-size:.84rem; transition:color var(--t); }
.footer ul li a:hover { color:#93C5FD; text-decoration:underline; }
.footer-contact p { font-size:.82rem; color:rgba(255,255,255,.85); display:flex; align-items:flex-start; gap:.5rem; margin-bottom:.6rem; line-height:1.55; }
.footer-contact a { color:#93C5FD; }
.footer-contact a:hover { text-decoration:underline; }
.footer-bottom { border-top:1px solid rgba(255,255,255,.08); padding-top:1.75rem; display:flex; flex-direction:column; gap:.5rem; font-size:.78rem; color:rgba(255,255,255,.90); text-align:center; }
@media(min-width:640px) { .footer-bottom { flex-direction:row; justify-content:space-between; text-align:left; } }
.footer-bottom a { color:#93C5FD; }

/* ═══════════════════════════════════════════
   ANIMATIONS
═══════════════════════════════════════════ */
.fade { opacity:0; transform:translateY(22px); transition:opacity .65s var(--ease), transform .65s var(--ease); }
.fade.in { opacity:1; transform:translateY(0); }
.fade-d1 { transition-delay:.08s; }
.fade-d2 { transition-delay:.16s; }
.fade-d3 { transition-delay:.24s; }
.fade-d4 { transition-delay:.32s; }

/* ═══════════════════════════════════════════
   ACCESSIBILITY
═══════════════════════════════════════════ */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {
  outline:3px solid var(--blue); outline-offset:3px; border-radius:4px;
}
.sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* ═══════════════════════════════════════════
   RESPONSIVE EXTRAS
═══════════════════════════════════════════ */
@media(max-width:400px) {
  .hero-btns,.cta-btns { flex-direction:column; }
  .hero-btns .btn,.cta-btns .btn { width:100%; }
}
@supports(padding:max(0px)) {
  .footer { padding-bottom:max(2.5rem,env(safe-area-inset-bottom)); }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
  .fade { opacity:1; transform:none; }
}
@media print { #nav,.cta,.footer { display:none; } body { font-size:12pt; } }


/* --- 2026 enterprise refresh additions --- */
.kicker{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .8rem;border-radius:999px;background:#EAF3FF;color:var(--blue);font-weight:800;font-size:.78rem;letter-spacing:.02em;border:1px solid #D7E7FF}
.proof-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}
.proof-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r2);padding:1.1rem}
.proof-card-title{margin:0 0 .3rem;font-size:1rem;font-weight:700;color:var(--ink);font-family:var(--h)}
.proof-card p{margin:0;font-size:.88rem;color:var(--sub)}
.uc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.15rem}
.uc-card{background:linear-gradient(180deg,#fff,#f8fbff);border:1.5px solid var(--border);border-radius:var(--r3);padding:1.4rem}
.uc-card h3{font-size:1.02rem;margin:.5rem 0;color:var(--ink)}
.uc-card p{font-size:.9rem;color:var(--sub);margin:0}
.icon-badge{width:52px;height:52px;border-radius:16px;background:#EAF3FF;display:flex;align-items:center;justify-content:center;font-size:1.35rem}
.cap-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
.cap-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r3);padding:1.6rem}
.cap-card h3{margin-bottom:.55rem}
.cap-card p{margin-bottom:.9rem}
.cap-card ul{padding-left:1.1rem;margin:.4rem 0 0}
.cap-card li{margin:.35rem 0;color:var(--sub)}
.note-band{background:linear-gradient(135deg,#0C1B2E,#15314F);color:white;border-radius:var(--r3);padding:2rem;border:1px solid rgba(255,255,255,.08)}
.industry-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.industry-item{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r2);padding:1rem 1.1rem;font-weight:700;color:var(--ink)}
.cta-panel{background:linear-gradient(135deg,#0C1B2E,#163B66);color:white;border-radius:var(--r3);padding:2.25rem;border:1px solid rgba(255,255,255,.08)}
.cta-panel p,.note-band p{color:rgba(255,255,255,.82)}
.dual-cta{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:1.25rem}
.small-muted{font-size:.84rem;color:var(--faint)}
.authority-list{display:flex;flex-direction:column;gap:.875rem;margin-top:1.5rem}
.authority-item{background:var(--ink);color:white;border-radius:var(--r);padding:1rem 1.25rem;border-left:3px solid var(--blue)}
.authority-item h4{margin:0 0 .3rem;font-size:.98rem;color:white}
.authority-item p{margin:0;font-size:.86rem;color:rgba(255,255,255,.72)}
.simple-list{display:grid;gap:.85rem}
.simple-list .li{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r2);padding:1rem 1.1rem}
.simple-list .li b{display:block;color:var(--ink);margin-bottom:.2rem}
.form-card-lite{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r3);padding:1.5rem}
.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.resource-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r3);padding:1.4rem}
.resource-card h3{font-size:1.05rem}
.resource-card p{font-size:.9rem}
@media (max-width:980px){
  .proof-strip,.uc-grid,.cap-grid,.industry-list,.resource-grid{grid-template-columns:1fr}
}

/* ── Real logo image (nav + footer) ── */
.nav-logo-img {
  height:44px;
  width:44px;
  object-fit:cover;
  border-radius:8px;
  display:block;
  flex-shrink:0;
}
.footer-logo-img {
  height:56px;
  width:56px;
  object-fit:cover;
  border-radius:10px;
  display:block;
  margin-bottom:.9rem;
}

/* ── Oracle Partner Badge ── */






/* ── Responsive 2-column grid (replaces hardcoded inline style grids) ── */
.two-col {
  display:grid;
  grid-template-columns:1fr;
  gap:2rem;
  align-items:start;
}
@media(min-width:900px) {
  .two-col { grid-template-columns:1fr 1fr; }
  .two-col-wide { grid-template-columns:1.1fr .9fr; }
  .two-col-form { grid-template-columns:1fr 1.5fr; }
}




/* ══════════════════════════════════════════════════════
   ORACLE PARTNER BADGE — consolidated, mobile-safe
══════════════════════════════════════════════════════ */

/* Base badge — light backgrounds (about, any light section) */
/* ── Proof strip — single col on small phones ── */
@media(max-width:600px) {
  .proof-strip { grid-template-columns:1fr !important; }
  .hero-btns { flex-direction:column; }
  .hero-btns .btn { width:100%; justify-content:center; }
  .cta-btns { flex-direction:column; align-items:center; }
  .cta-btns .btn { width:100%; max-width:320px; }
  .dual-cta { flex-direction:column; }
  .dual-cta .btn { width:100%; justify-content:center; }
}

/* ── Tablet-specific: proof-strip 2-col ── */
@media(min-width:601px) and (max-width:900px) {
  .proof-strip { grid-template-columns:repeat(2,1fr) !important; }
}



/* Hero content is above-fold — show immediately, no scroll trigger needed */
.hero .fade {
  opacity: 1 !important;
  transform: none !important;
}
.hero .fade-d2 {
  opacity: 1 !important;
  transform: none !important;
}

/* ══════════════════════════════════════════════════════════════
   ORACLE PARTNER NETWORK BADGE — Complete Rewrite
   All rules use maximum specificity. No inheritance assumed.
   Works on iOS Safari, Chrome Android, all mobile browsers.
══════════════════════════════════════════════════════════════ */

.opn-badge {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  gap: 12px;
  width: -webkit-fit-content;
  width: fit-content;
  max-width: 100%;
  padding: 10px 18px 10px 12px;
  margin: 0 0 1.5rem 0;
  border-radius: 12px;
  /* SOLID white background — guaranteed visible on all mobile browsers */
  background-color: #FFFFFF !important;
  border: 2px solid #C74634 !important;
  box-shadow: 0 3px 16px rgba(0,0,0,0.45) !important;
  opacity: 1 !important;
  -webkit-transform: none !important;
  transform: none !important;
  text-decoration: none;
  /* no backdrop-filter — causes issues on some mobile browsers */
}

.opn-badge__icon {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 8px;
  background: #C74634;
  background: -webkit-linear-gradient(315deg, #C74634, #9E2D22);
  background: linear-gradient(135deg, #C74634, #9E2D22);
  flex-shrink: 0;
}

.opn-badge__icon-letter {
  font-size: 15px;
  font-weight: 900;
  color: #ffffff;
  line-height: 1;
  font-family: Georgia, serif;
}

.opn-badge__text {
  display: block;
  min-width: 0;
}

.opn-badge__label {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #C74634 !important;  /* Oracle red on white bg */
  margin-bottom: 2px;
  white-space: nowrap;
  font-family: system-ui, -apple-system, sans-serif;
}

.opn-badge__name {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: #0C1B2E !important;  /* dark ink on white bg */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: calc(100vw - 120px);
  font-family: system-ui, -apple-system, sans-serif;
}

/* Light background variant (if ever used outside dark sections) */
.opn-badge--light {
  border-color: #D0DBF0;
  background-color: #ffffff;
  box-shadow: 0 2px 10px rgba(12,27,46,0.1);
}
.opn-badge--light .opn-badge__label { color: #7A92AE; }
.opn-badge--light .opn-badge__name  { color: #0C1B2E; }

/* ── Proof strip — single col on small phones ── */

/* Hero left column wrapper — contains badge + fade content */
.hero-left { display:block; }
