/* IntelliMinds Digital — inner-page art-direction layer.
   Applies the approved homepage design language (Design System v3.0) to inner pages.
   Visual only: no DOM, content, link, navigation or metadata changes.
   The homepage is NOT affected (it loads home-refine.css instead). */

:root{
  --navy:#0B1F36;
  --navy-2:#152B45;
  --teal:#0B8F8C;
  --teal-2:#097370;
  --teal-glow:rgba(11,143,140,.14);
  --blue:#2B78B8;
  --amber:#F2B84B;

  --bg:#F7F9FB;
  --surface:#FFFFFF;
  --surface-2:#F7F9FB;
  --ink:#172033;
  --ink-2:#172033;
  --body:#46546A;
  --muted:#718096;
  --border:#DCE3EA;
  --border-strong:#C6D0DA;

  --grad-hero:linear-gradient(180deg,#152B45 0%,#0B1F36 100%);
  --grad-text:linear-gradient(120deg,#0B1F36 0%,#0B8F8C 100%);

  --shadow-sm:0 1px 2px rgba(11,31,54,.04);
  --shadow-md:0 8px 20px -12px rgba(11,31,54,.14);
  --shadow-lg:0 22px 48px -30px rgba(11,31,54,.22);
  --shadow-glow:none;
  --radius:12px;
}

body{background:var(--bg);color:var(--body)}

/* ---------- Typography hierarchy ---------- */
h1,h2{letter-spacing:-.03em;color:var(--ink)}
h2{font-size:clamp(1.7rem,2.5vw,2.05rem);line-height:1.16;font-weight:700}
h3{font-size:1.18rem;line-height:1.32;letter-spacing:-.012em;color:var(--ink);font-weight:650}
p{color:var(--body)}

/* ---------- Editorial section labels ---------- */
.eyebrow,.eyebrow-icon{background:none;border:0;padding:0;font-size:.72rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-bottom:.9rem}

/* ---------- Header ---------- */
.site-header{background:rgba(255,255,255,.82);border-bottom:1px solid var(--border)}
.nav a{font-size:.9rem;color:#4A5768}
.nav a::after{height:1.5px;background:var(--teal)}
.nav a[aria-current="page"]{color:var(--ink)}

/* ---------- Section rhythm & whitespace ---------- */
.section{padding:6.5rem 0}
.section--alt{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.section--alt::before{background:none}
.section + .section::before{display:none}          /* remove decorative wave dividers */
.section > .container > h2{padding-bottom:0;margin-bottom:.85rem}
.section > .container > h2::after{display:none}    /* hierarchy from type, not decoration */

/* ---------- Reading width for long-form text ---------- */
.section .lede{color:var(--body);font-size:1.0625rem;line-height:1.65;max-width:62ch}
.section > .container > p,
.section > .container > ul:not([class]),
.section > .container > ol:not([class]){max-width:72ch}

/* ---------- Page introduction (inner hero) ---------- */
.hero:not(.hero-home){
  padding:6rem 0 4.25rem;
  border-bottom:1px solid var(--border);
  background:
    radial-gradient(900px 420px at 88% 6%, rgba(43,120,184,.07) 0%, rgba(43,120,184,0) 62%),
    radial-gradient(720px 400px at 96% 88%, rgba(11,143,140,.08) 0%, rgba(11,143,140,0) 60%),
    linear-gradient(180deg,#FFFFFF 0%,#F6F9FB 100%);
}
.hero:not(.hero-home)::before{display:none}         /* drop stock photography */
.hero:not(.hero-home)::after{background:
  linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.88) 46%,rgba(247,249,251,.4) 100%),
  linear-gradient(to right,rgba(11,31,54,.035) 1px,transparent 1px),
  linear-gradient(to bottom,rgba(11,31,54,.035) 1px,transparent 1px);
  background-size:auto,72px 72px,72px 72px;opacity:.9}
.hero:not(.hero-home) .container::before{display:none} /* remove teal blur blob */
.hero:not(.hero-home) h1{font-size:clamp(1.95rem,3.4vw,2.9rem);letter-spacing:-.035em;line-height:1.08;
  color:var(--navy);max-width:20ch;margin-bottom:1.1rem}
.hero:not(.hero-home) p.lede{font-size:1.0938rem;line-height:1.62;color:var(--body);max-width:58ch}
.hero:not(.hero-home) .hero-cta-sub{color:var(--muted);font-size:.9rem;max-width:52ch;margin-top:1rem}
.hero:not(.hero-home) .btn-row{margin-top:2.1rem;gap:.75rem}
.hero:not(.hero-home) .btn{font-size:.925rem;padding:.8rem 1.3rem}

/* ---------- Buttons / CTA family ---------- */
.btn{border-radius:8px;font-weight:600;
  transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}
.btn-primary{background:var(--teal);border-color:var(--teal);color:#fff;box-shadow:none}
.btn-primary:hover{background:var(--teal-2);border-color:var(--teal-2);color:#fff;transform:none;
  box-shadow:0 8px 20px -14px rgba(11,143,140,.9)}
.btn-secondary{background:#fff;border:1px solid var(--border-strong);color:var(--ink);box-shadow:none}
.btn-secondary:hover{background:#fff;color:var(--teal);border-color:var(--teal);transform:none;box-shadow:none}
:where(a,button,summary,input):focus-visible{outline:2px solid var(--teal);outline-offset:2px}

/* ---------- Cards ---------- */
.card,.usecase{border:1px solid var(--border);box-shadow:none;border-radius:var(--radius);padding:1.9rem}
.card:hover,.usecase:hover{transform:none;box-shadow:var(--shadow-md);border-color:var(--border-strong)}
.card::before,.usecase::before{display:none}
.card h3{margin-bottom:.5rem}

/* Numbered list cards keep the homepage's quieter treatment */
.section > .container > ol > li{box-shadow:none;border-radius:var(--radius)}
.section > .container > ol > li:hover{transform:none;box-shadow:var(--shadow-md);border-color:var(--border-strong)}
.section > .container > ol > li::before{background:var(--navy);box-shadow:none;border-radius:8px}

/* ---------- Trust chips & badges ---------- */
.trust-badge{background:none;border:1px solid var(--border);box-shadow:none;color:var(--body);font-weight:500}
.trust-badge:hover{transform:none;box-shadow:none;border-color:var(--border-strong);color:var(--ink)}

/* ---------- Links ---------- */
a{transition:color .15s ease}
a:hover{color:var(--teal-2)}

/* ---------- Signature dotted navigation (protected, homepage treatment) ---------- */
@media (min-width:1200px){
  .im-secnav a::before{width:7px;height:7px;background:rgba(23,32,51,.20)}
  .im-secnav a:hover::before{background:rgba(11,143,140,.55)}
  .im-secnav a[aria-current="true"]::before{background:var(--teal);transform:scale(1.4);
    box-shadow:0 0 0 4px rgba(11,143,140,.10)}
  .im-secnav:hover,.im-secnav:focus-within{background:rgba(255,255,255,.9);box-shadow:var(--shadow-lg);
    border:1px solid var(--border)}
  .im-secnav:hover a,.im-secnav:focus-within a{color:var(--body)}
}

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .section{padding:4.5rem 0}
  .hero:not(.hero-home){padding:4.25rem 0 3.25rem}
  .hero:not(.hero-home) h1{max-width:none}
}
@media (max-width:640px){
  .section{padding:3.75rem 0}
  .hero:not(.hero-home){padding:3.5rem 0 2.75rem}
  .card,.usecase{padding:1.5rem}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
}
