
/* metric-fallback */
@font-face{font-family:"Instrument Serif Fallback";src:local("Georgia");size-adjust:78%}
@charset "utf-8";
/* ============================================================
   SpinPanda — style.css · Prefix: iiu-
   Archetype: DECO PLATE (geometric Art-Deco display + clean grotesk)
   Palette: accent #54a47d · CTA #180b3c · frame #786949 · alt #1d1639
   Depth: flat + hairlines, single shadow reserved for overlays
   ============================================================ */


/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;scroll-behavior:smooth;overflow-x:clip}
body{margin:0}
img,svg,video,canvas,iframe{max-width:100%;height:auto}
img,svg,video{display:block}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd,figure,blockquote{margin:0}
:where(ul,ol){padding:0}

/* ---------- design tokens ---------- */
:root{
  --iiu-wrap:1212px;
  --iiu-pad:clamp(18px,4vw,34px);

  /* warm off-white content surfaces (onyx-tinted neutrals) */
  --iiu-bg:#faf7f1;
  --iiu-surface:#f4efe5;
  --iiu-surface-2:#ece5d6;
  --iiu-ink:#17131f;
  --iiu-ink-2:#3a3348;
  --iiu-ink-3:#5a5266;
  --iiu-hairline:color-mix(in srgb, var(--iiu-frame) 42%, transparent);
  --iiu-hairline-2:color-mix(in srgb, var(--iiu-ink) 12%, transparent);

  /* brand */
  --iiu-accent:#54a47d;                 /* dominant emerald */
  --iiu-accent-ink:#0b1a12;
  --iiu-link:#2f6b4f;                    /* AA-safe accent for body links */
  --iiu-accent-2:#1d1639;               /* secondary badge tone */
  --iiu-cta:#180b3c;                     /* deep indigo CTA */
  --iiu-cta-ink:#fbf7ff;
  --iiu-frame:#786949;                   /* metallic bronze rails/hairlines */
  --iiu-frame-lite:#b39c6e;

  /* dark deco rails (header/footer/bands) */
  --iiu-dark:#14102a;
  --iiu-dark-2:#1d1740;
  --iiu-dark-ink:#f4efe6;
  --iiu-dark-ink-2:color-mix(in srgb,#f4efe6 66%,transparent);

  --iiu-tp-star:#54a47d;

  /* modular type scale (1.25) */
  --iiu-step--1:.8rem;
  --iiu-step-0:1rem;
  --iiu-step-1:1.25rem;
  --iiu-step-2:1.563rem;
  --iiu-step-3:1.953rem;
  --iiu-step-4:2.441rem;
  --iiu-step-5:3.052rem;

  /* space / geometry */
  --iiu-space:clamp(32px,4.6vw,46px);
  --iiu-gap:16px;
  --iiu-r:0px;               /* deco: sharp */
  --iiu-r-card:14px 14px 0 0;/* top corners rounded, base sharp */
  --iiu-col:280px;

  /* motion */
  --iiu-ease:cubic-bezier(.16,1,.3,1);
  --iiu-ease-2:cubic-bezier(.32,.72,0,1);
  --iiu-dur:.22s;

  /* single reserved shadow (overlays) */
  --iiu-shadow:0 1px 2px rgba(10,6,26,.14),0 8px 20px -6px rgba(10,6,26,.28),0 26px 54px -20px rgba(10,6,26,.42);
  --iiu-glow:color-mix(in srgb,var(--iiu-accent) 55%,transparent);

  --iiu-fdisplay:"Instrument Serif","Instrument Serif Fallback",Georgia,"Times New Roman",serif;
  --iiu-ftext:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;

  scrollbar-color:color-mix(in srgb,var(--iiu-accent) 42%,transparent) transparent;
  scrollbar-width:thin;
}

@property --iiu-fxang{syntax:'<angle>';inherits:false;initial-value:100deg}
@property --iiu-ba{syntax:'<angle>';inherits:false;initial-value:0deg}

/* ---------- base ---------- */
body.iiu-body{
  font-family:var(--iiu-ftext);
  font-size:1.0625rem;
  line-height:1.72;
  color:var(--iiu-ink);
  background:var(--iiu-bg);
  font-variant-numeric:tabular-nums lining-nums;
  overflow-x:clip;
  -webkit-font-smoothing:antialiased;
}
::selection{background:color-mix(in srgb,var(--iiu-accent) 30%,transparent);color:var(--iiu-ink)}
:focus-visible{outline:2px solid var(--iiu-accent);outline-offset:3px;border-radius:2px}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--iiu-frame) 55%,transparent);border-radius:0}
::-webkit-scrollbar-track{background:transparent}

h1,h2,h3,h4{font-family:var(--iiu-fdisplay);line-height:1.1;color:var(--iiu-ink);font-weight:400;letter-spacing:.005em}
strong,b{font-weight:700;color:var(--iiu-ink)}

/* ---------- container ---------- */
.iiu-wrap{width:100%;max-width:var(--iiu-wrap);margin-inline:auto;padding-inline:var(--iiu-pad)}
.iiu-main{width:100%;max-width:var(--iiu-wrap);margin-inline:auto;padding-inline:var(--iiu-pad);padding-block:clamp(26px,5vw,58px)}
.iiu-main :where(img,svg,video){max-width:100%;height:auto}

.iiu-skip{position:absolute;left:-9999px;top:0;background:var(--iiu-accent);color:var(--iiu-accent-ink);padding:12px 18px;font-weight:700;z-index:400}
.iiu-skip:focus{left:0}

/* ============================================================
   HEADER — dark deco rail
   ============================================================ */
.iiu-head{
  position:sticky;top:0;z-index:100;
  background:linear-gradient(180deg,var(--iiu-dark-2),var(--iiu-dark));
  color:var(--iiu-dark-ink);
  border-bottom:1px solid color-mix(in srgb,var(--iiu-frame) 60%,transparent);
  box-shadow:0 1px 0 color-mix(in srgb,var(--iiu-frame-lite) 30%,transparent);
}
.iiu-head::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:3px;pointer-events:none;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--iiu-frame-lite) 50%,transparent),transparent);opacity:.5}
.iiu-head__bar{display:flex;align-items:center;gap:clamp(.7rem,1.8vw,1.2rem);min-height:74px;flex-wrap:nowrap;position:relative}
.iiu-logo{flex:0 0 auto;display:inline-flex;align-items:center;line-height:0}
.iiu-logo img{height:clamp(38px,5vw,52px);width:auto;filter:drop-shadow(0 1px 3px rgba(0,0,0,.45))}

.iiu-nav{flex:1 1 auto;display:flex;justify-content:flex-end;min-width:0}
.iiu-nav__list{list-style:none;display:flex;flex-wrap:nowrap;align-items:center;gap:clamp(6px,1.2vw,16px);margin:0;padding:0}
.iiu-nav__list a{
  color:var(--iiu-dark-ink);text-decoration:none;font-weight:600;
  font-size:clamp(.72rem,.9vw,.84rem);letter-spacing:.08em;text-transform:uppercase;
  white-space:nowrap;padding:8px 2px;position:relative;
  transition:color var(--iiu-dur) var(--iiu-ease)}
.iiu-nav__list a::before{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;
  background:var(--iiu-accent);transform:scaleX(0);transform-origin:left;
  transition:transform var(--iiu-dur) var(--iiu-ease-2)}
.iiu-nav__list a:hover,.iiu-nav__list a[aria-current="page"]{color:color-mix(in srgb,var(--iiu-accent) 78%,#fff)}
.iiu-nav__list a:hover::before,.iiu-nav__list a[aria-current="page"]::before{transform:scaleX(1)}

.iiu-burger{display:none;background:transparent;border:1px solid color-mix(in srgb,var(--iiu-frame-lite) 55%,transparent);
  color:var(--iiu-dark-ink);width:48px;height:44px;cursor:pointer;align-items:center;justify-content:center}
.iiu-burger:hover{border-color:var(--iiu-accent);color:color-mix(in srgb,var(--iiu-accent) 80%,#fff)}

/* ============================================================
   BUTTONS / CTA
   ============================================================ */
.iiu-cta{
  display:inline-flex;align-items:center;justify-content:center;gap:.55em;
  font-family:var(--iiu-ftext);font-weight:800;font-size:.82rem;letter-spacing:.09em;
  text-transform:uppercase;text-decoration:none;cursor:pointer;white-space:nowrap;
  min-height:48px;padding:13px 26px;border:2px solid var(--iiu-cta);border-radius:var(--iiu-r);
  background:var(--iiu-cta);color:var(--iiu-cta-ink);position:relative;overflow:hidden;isolation:isolate;
  transition:transform var(--iiu-dur) var(--iiu-ease), background-color var(--iiu-dur) var(--iiu-ease), border-color var(--iiu-dur) var(--iiu-ease), color var(--iiu-dur) var(--iiu-ease)}
.iiu-cta::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(115deg,transparent 34%,color-mix(in srgb,#fff 26%,transparent) 50%,transparent 66%);
  transform:translateX(-130%);transition:transform .6s var(--iiu-ease-2)}
.iiu-cta:hover{transform:translateY(-2px)}
.iiu-cta:hover::after{transform:translateX(130%)}
.iiu-cta:active{transform:translateY(0)}
.iiu-cta--solid:hover{background:color-mix(in srgb,var(--iiu-cta) 82%,var(--iiu-accent));border-color:var(--iiu-accent);
  box-shadow:0 0 0 1px var(--iiu-glow),0 10px 30px -12px var(--iiu-glow)}
.iiu-cta--ghost{background:transparent;color:var(--iiu-link);border-color:var(--iiu-accent)}
.iiu-cta--ghost:hover{background:var(--iiu-accent);color:var(--iiu-accent-ink);border-color:var(--iiu-accent)}

/* header cta = ghost on dark */
.iiu-head .iiu-cta{background:transparent;color:var(--iiu-dark-ink);border-color:color-mix(in srgb,var(--iiu-frame-lite) 60%,transparent)}
.iiu-head .iiu-cta:hover{background:var(--iiu-accent);color:var(--iiu-accent-ink);border-color:var(--iiu-accent)}

/* body CTA always centered at any depth */
.iiu-ctarow{display:flex;justify-content:center;margin:1.6em 0}
.iiu-main>.iiu-cta,
.iiu-main :not(.iiu-hero__cta):not(.iiu-nav__cta):not(.iiu-ctarow)>.iiu-cta{display:flex;width:fit-content;margin:1.4em auto}

/* mobile drawer */
@media(max-width:900px){
  .iiu-burger{display:inline-flex}
  .iiu-nav__list{display:none}
  .iiu-nav.is-open .iiu-nav__list{
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
    position:fixed;inset:0;z-index:200;padding:78px 24px 34px;overflow-y:auto;max-width:100vw;
    background:linear-gradient(180deg,var(--iiu-dark-2),var(--iiu-dark))}
  .iiu-nav.is-open .iiu-nav__list a{color:var(--iiu-dark-ink);width:100%;max-width:420px;text-align:center;
    padding:16px 18px;font-size:1.1rem;letter-spacing:.06em;border:1px solid color-mix(in srgb,var(--iiu-frame-lite) 30%,transparent)}
  .iiu-nav.is-open .iiu-nav__list a::before{content:none}
  .iiu-nav.is-open .iiu-burger{position:fixed;top:15px;right:16px;z-index:210}
}

/* ============================================================
   HERO — dark-lit deco band (base beneath part inline CSS)
   ============================================================ */
.iiu-hero{position:relative;isolation:isolate;padding-block:clamp(26px,4.4vw,44px);overflow-x:clip}
.iiu-hero::before{content:"";position:absolute;inset:-6% 0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(60% 55% at 74% 30%,color-mix(in srgb,var(--iiu-accent) 20%,transparent),transparent 66%),
    radial-gradient(52% 50% at 12% 82%,color-mix(in srgb,var(--iiu-accent-2) 16%,transparent),transparent 64%)}
.iiu-hero__kicker{display:block;font-family:var(--iiu-ftext);text-transform:uppercase;letter-spacing:.2em;
  font-size:.72rem;font-weight:700;color:var(--iiu-accent);margin:0 0 .6em}
.iiu-hero__h1{font-family:var(--iiu-fdisplay);color:var(--iiu-ink);font-weight:400}
.iiu-hero__lead{color:var(--iiu-ink-2);font-size:clamp(1rem,1.5vw,1.12rem)}
.iiu-hero__media img{box-shadow:0 0 0 1px color-mix(in srgb,var(--iiu-frame) 55%,transparent)}
.iiu-hero__fact{background:color-mix(in srgb,var(--iiu-frame) 10%,transparent);border:1px solid var(--iiu-hairline)}
.iiu-hero__tile-k{color:var(--iiu-ink-3)}
.iiu-hero__tile-v{color:var(--iiu-ink);font-family:var(--iiu-fdisplay)}

/* ============================================================
   PAGETITLE (trust/author pages)
   ============================================================ */
.iiu-pagetitle{position:relative;padding-block:clamp(40px,6vw,76px);
  border-bottom:1px solid var(--iiu-hairline);
  background:linear-gradient(180deg,color-mix(in srgb,var(--iiu-accent) 6%,transparent),transparent)}
.iiu-pagetitle__kicker{color:var(--iiu-accent)}
.iiu-pagetitle__h1{font-family:var(--iiu-fdisplay);color:var(--iiu-ink)}
.iiu-pagetitle__lead{color:var(--iiu-ink-2)}

/* ============================================================
   BREADCRUMBS · BYLINE (base — parts carry inline overrides)
   ============================================================ */
.iiu-crumbs{color:var(--iiu-ink-3);font-size:.85rem}
.iiu-crumbs a{color:var(--iiu-link);text-decoration:none}
.iiu-crumbs a:hover{text-decoration:underline;text-underline-offset:2px}
.iiu-byline{color:var(--iiu-ink-2);border-left-color:var(--iiu-accent)}
.iiu-byline__author{color:var(--iiu-ink)}
.iiu-byline__role,.iiu-byline__dates{color:var(--iiu-ink-3)}

/* ============================================================
   PROSE — editorial deco typography
   ============================================================ */
.iiu-main{counter-reset:iiusec}
.iiu-prose,.iiu-doc{max-width:none}
.iiu-prose>*,.iiu-doc>*{max-width:none}

/* vertical rhythm (also for .iiu-main pages without prose class) */
.iiu-main p{margin-top:1em;color:var(--iiu-ink)}
.iiu-main h2{margin-top:1.7em}
.iiu-main h3{margin-top:1.3em}
.iiu-main>:first-child{margin-top:0}

.iiu-prose p,.iiu-doc p{margin-top:1.3em;color:var(--iiu-ink);text-wrap:pretty;overflow-wrap:anywhere}
.iiu-prose>:first-child,.iiu-doc>:first-child{margin-top:0}

.iiu-prose h2,.iiu-doc h2{
  position:relative;font-size:clamp(1.55rem,3.1vw,1.9rem);line-height:1.14;
  margin-top:1.9em;margin-bottom:.55em;padding-top:.7em;color:var(--iiu-ink);text-wrap:balance;
  border-top:1px solid var(--iiu-hairline)}
.iiu-prose h2::before,.iiu-doc h2::before{
  counter-increment:iiusec;content:counter(iiusec,decimal-leading-zero);
  display:block;font-family:var(--iiu-ftext);font-weight:800;font-size:.72rem;letter-spacing:.24em;
  color:var(--iiu-accent);margin-bottom:.5em;font-variant-numeric:lining-nums}
.iiu-prose h3,.iiu-doc h3{font-size:clamp(1.2rem,2vw,1.4rem);line-height:1.2;margin-top:1.5em;margin-bottom:.4em;color:var(--iiu-ink)}
.iiu-prose h4,.iiu-doc h4{font-family:var(--iiu-ftext);font-weight:800;font-size:1rem;text-transform:uppercase;
  letter-spacing:.08em;margin-top:1.4em;margin-bottom:.3em;color:var(--iiu-ink-2)}

/* links — animated underline growing from below */
.iiu-prose a:not(.iiu-cta),.iiu-doc a:not(.iiu-cta),.iiu-authorpage a:not(.iiu-cta){
  color:var(--iiu-link);text-decoration:none;font-weight:600;
  background-image:linear-gradient(var(--iiu-accent),var(--iiu-accent));
  background-size:0% 2px;background-position:0 100%;background-repeat:no-repeat;
  transition:background-size var(--iiu-dur) var(--iiu-ease-2)}
.iiu-prose a:not(.iiu-cta):hover,.iiu-doc a:not(.iiu-cta):hover,.iiu-authorpage a:not(.iiu-cta):hover{background-size:100% 2px}

/* lists — oversized accent numeral markers (deco initial) */
.iiu-prose ul,.iiu-prose ol,.iiu-doc ul,.iiu-doc ol{list-style:none;margin:1.2em 0;padding:0}
.iiu-prose ol,.iiu-doc ol{counter-reset:iiuol}
.iiu-prose li,.iiu-doc li{position:relative;padding-left:2.2em;margin:.55em 0;line-height:1.7;color:var(--iiu-ink);min-width:0}
.iiu-prose ul>li::before,.iiu-doc ul>li::before{
  content:"";position:absolute;left:.35em;top:.72em;width:.6em;height:.6em;
  background:var(--iiu-accent);transform:rotate(45deg);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--iiu-frame) 55%,transparent)}
.iiu-prose ol>li::before,.iiu-doc ol>li::before{
  counter-increment:iiuol;content:counter(iiuol);position:absolute;left:0;top:-.06em;
  font-family:var(--iiu-fdisplay);font-size:1.35em;font-weight:400;line-height:1;color:var(--iiu-accent);
  min-width:1.5em;font-variant-numeric:lining-nums}
.iiu-prose li>ul,.iiu-prose li>ol,.iiu-doc li>ul,.iiu-doc li>ol{margin:.3em 0}

/* blockquote — deco pull-quote */
.iiu-prose blockquote,.iiu-doc blockquote{
  margin:1.6em 0;padding:.4em 0 .4em 1.4em;border-left:2px solid var(--iiu-accent);
  font-family:var(--iiu-fdisplay);font-size:1.3rem;line-height:1.4;font-style:italic;color:var(--iiu-ink-2)}
.iiu-prose blockquote p,.iiu-doc blockquote p{margin-top:.4em}

/* callout / fact box */
.iiu-callout{position:relative;margin:1.7em 0;padding:20px 22px 20px 24px;
  background:var(--iiu-surface);border:1px solid var(--iiu-hairline);
  border-left:3px solid var(--iiu-accent)}
.iiu-callout::after{content:"";position:absolute;top:6px;right:6px;width:14px;height:14px;
  border-top:1px solid var(--iiu-frame-lite);border-right:1px solid var(--iiu-frame-lite);opacity:.6}
.iiu-callout>:first-child{margin-top:0}
.iiu-callout h3,.iiu-callout h4,.iiu-callout strong:first-child{color:var(--iiu-accent);
  font-family:var(--iiu-ftext);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;font-weight:800}

/* content images */
.iiu-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.6em 0}
.iiu-cimg,.iiu-figure{margin:1.9em auto;width:min(72%,760px);max-width:100%}
.iiu-cimg img,.iiu-figure img{width:100%;height:auto;display:block}
.iiu-cimg figcaption,.iiu-figure figcaption{margin-top:.6em;font-size:.86rem;color:var(--iiu-ink-3);text-align:center}
@media(max-width:640px){.iiu-cimg,.iiu-figure{width:100%}}

/* ============================================================
   TABLES — deco hairline data grid (also bare <table>)
   ============================================================ */
.iiu-prose table,.iiu-doc table,table:not(.iiu-hero__facts){
  width:100%;border-collapse:collapse;margin:1.7em 0;font-size:.96rem;
  background:var(--iiu-surface);border:1px solid var(--iiu-hairline);
  font-variant-numeric:tabular-nums lining-nums}
.iiu-prose table,.iiu-doc table{margin-inline:0}
:where(.iiu-prose,.iiu-doc) thead th,table:not(.iiu-hero__facts) thead th{
  background:var(--iiu-dark);color:var(--iiu-dark-ink);
  font-family:var(--iiu-ftext);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.76rem;
  text-align:left;padding:13px 16px;border-bottom:2px solid var(--iiu-frame)}
:where(.iiu-prose,.iiu-doc) td,:where(.iiu-prose,.iiu-doc) tbody th,
table:not(.iiu-hero__facts) td,table:not(.iiu-hero__facts) tbody th{
  padding:12px 16px;text-align:left;border-bottom:1px solid var(--iiu-hairline-2);color:var(--iiu-ink);vertical-align:top}
:where(.iiu-prose,.iiu-doc) tbody th,table:not(.iiu-hero__facts) tbody th{font-weight:700;color:var(--iiu-ink)}
:where(.iiu-prose,.iiu-doc) tbody tr:nth-child(even),
table:not(.iiu-hero__facts) tbody tr:nth-child(even){background:color-mix(in srgb,var(--iiu-frame) 6%,transparent)}
:where(.iiu-prose,.iiu-doc) tbody tr:hover,
table:not(.iiu-hero__facts) tbody tr:hover{background:color-mix(in srgb,var(--iiu-accent) 9%,transparent)}
:where(.iiu-prose,.iiu-doc) tbody tr:last-child td,table:not(.iiu-hero__facts) tbody tr:last-child td{border-bottom:0}
:where(.iiu-prose,.iiu-doc) caption,table:not(.iiu-hero__facts) caption{
  caption-side:top;text-align:left;font-size:.84rem;color:var(--iiu-ink-3);padding:0 0 .5em}
@media(max-width:640px){
  .iiu-prose table,.iiu-doc table,table:not(.iiu-hero__facts){display:block;overflow-x:auto;white-space:nowrap}
}

/* ============================================================
   AUTHOR PAGE — full article layout
   ============================================================ */
.iiu-authorpage{max-width:none}
.iiu-authorpage p{max-width:none;margin-top:1.2em;color:var(--iiu-ink)}
.iiu-authorpage h2{margin-top:1.7em}
.iiu-authorpage__photo,.iiu-prose img.iiu-authorpage__photo{
  width:220px;aspect-ratio:3/4;object-fit:cover;float:left;
  margin:4px 24px 14px 0;border:1px solid var(--iiu-frame);
  box-shadow:6px 6px 0 color-mix(in srgb,var(--iiu-frame) 22%,transparent)}
@media(max-width:640px){.iiu-authorpage__photo,.iiu-prose img.iiu-authorpage__photo{float:none;width:min(60%,200px);margin:0 0 16px}}

/* ============================================================
   SLOTS showcase (base — part carries inline overrides)
   ============================================================ */
.iiu-slots{padding-block:clamp(24px,4vw,44px)}
.iiu-slots__h{font-family:var(--iiu-fdisplay);color:var(--iiu-ink);font-size:clamp(1.5rem,3vw,2rem)}
.iiu-slot{border:1px solid var(--iiu-hairline);overflow:hidden;border-radius:14px 14px 0 0}
.iiu-slot__img{transition:transform .3s var(--iiu-ease)}
.iiu-slot:hover .iiu-slot__img{transform:scale(1.06)}
.iiu-slot:hover{border-color:var(--iiu-accent)}

/* proscons / reviews harmonies (parts carry inline overrides) */
.iiu-pc__h{font-family:var(--iiu-fdisplay);color:var(--iiu-ink)}
.iiu-rv__h{font-family:var(--iiu-fdisplay);color:var(--iiu-ink)}
.iiu-rv__text{color:var(--iiu-ink-2)}

/* ============================================================
   FOOTER · COOKIE (base — footer part carries inline overrides)
   ============================================================ */
.iiu-foot{color:var(--iiu-ink)}
.iiu-foot__h{font-family:var(--iiu-ftext);color:var(--iiu-ink-2)}
.iiu-foot__list a{color:var(--iiu-ink-2)}
.iiu-foot__list a:hover{color:var(--iiu-link)}
.iiu-foot__age{color:var(--iiu-accent);border-color:var(--iiu-accent)}

.iiu-cookie{position:fixed;left:0;right:0;bottom:0;z-index:300;
  background:linear-gradient(180deg,var(--iiu-dark-2),var(--iiu-dark));color:var(--iiu-dark-ink);
  padding:16px 0;border-top:1px solid var(--iiu-frame);box-shadow:var(--iiu-shadow)}
.iiu-cookie__inner{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.iiu-cookie__txt{font-size:.88rem;color:var(--iiu-dark-ink-2);margin:0;flex:1 1 320px}
.iiu-cookie__btns{display:flex;gap:10px;flex-wrap:wrap}
.iiu-cookie__btn{border:1px solid color-mix(in srgb,var(--iiu-frame-lite) 55%,transparent);background:transparent;
  color:var(--iiu-dark-ink);padding:10px 18px;font-weight:700;font-size:.82rem;letter-spacing:.05em;
  text-transform:uppercase;cursor:pointer;min-height:44px;
  transition:background-color var(--iiu-dur) var(--iiu-ease), color var(--iiu-dur) var(--iiu-ease), border-color var(--iiu-dur) var(--iiu-ease)}
.iiu-cookie__btn:hover{border-color:var(--iiu-accent);color:color-mix(in srgb,var(--iiu-accent) 82%,#fff)}
.iiu-cookie__btn--ok{background:var(--iiu-cta);border-color:var(--iiu-cta);color:var(--iiu-cta-ink)}
.iiu-cookie__btn--ok:hover{background:var(--iiu-accent);border-color:var(--iiu-accent);color:var(--iiu-accent-ink)}

/* ============================================================
   404
   ============================================================ */
.iiu-404__code{font-family:var(--iiu-fdisplay);font-size:clamp(4rem,14vw,8rem);line-height:1;color:var(--iiu-accent)}

/* ============================================================
   Deco utilities · signature details
   ============================================================ */
/* fan-ray hairline divider */
.iiu-rule{height:1px;border:0;margin:2.2em auto;max-width:220px;
  background:linear-gradient(90deg,transparent,var(--iiu-frame-lite),transparent)}

/* metallic top badge */
.iiu-badge,.iiu-badge--gold{display:inline-flex;align-items:center;gap:.4em;padding:.28em .8em;
  font-family:var(--iiu-ftext);font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.iiu-badge{background:color-mix(in srgb,var(--iiu-accent) 16%,transparent);color:var(--iiu-link);
  border:1px solid color-mix(in srgb,var(--iiu-accent) 40%,transparent)}
.iiu-badge--gold{background:conic-gradient(from 35deg,#7d5a00,#c9a84c,#f7e98e,#e8c84a,#c9a84c,#8b6914,#f0d060,#c9a84c,#7d5a00);
  color:#1a0f00;text-shadow:0 1px 0 rgba(255,255,255,.4)}

/* live "online" dot — pre-rendered halo pulse */
.iiu-live{display:inline-flex;align-items:center;gap:.5em;font-size:.82rem;font-weight:600;color:var(--iiu-ink-2)}
.iiu-live__dot{position:relative;width:9px;height:9px;border-radius:50%;background:var(--iiu-accent);flex:0 0 auto}
.iiu-live__dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;
  background:color-mix(in srgb,var(--iiu-accent) 45%,transparent);z-index:-1;opacity:.6}
@media(prefers-reduced-motion:no-preference){
  .iiu-live__dot::after{animation:iiu-cmmru 2.4s ease-out infinite}
  @keyframes iiu-cmmru{0%{transform:scale(.7);opacity:.7}70%{transform:scale(2.2);opacity:0}100%{opacity:0}}
}

/* reveal (host adds .seen) */
@media(prefers-reduced-motion:no-preference){
  html.iiu-js [data-iiu-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s var(--iiu-ease), transform .6s var(--iiu-ease)}
  html.iiu-js [data-iiu-reveal].seen{opacity:1;transform:none}
}

/* spin-border accent on CTA (progressive) */
@supports (background-clip:border-box){
  @media(prefers-reduced-motion:no-preference){
    .iiu-cta--solid:focus-visible{--iiu-ba:0deg;
      background:linear-gradient(var(--iiu-cta),var(--iiu-cta)) padding-box,
        conic-gradient(from var(--iiu-ba),var(--iiu-accent),transparent 70deg,var(--iiu-accent) 140deg,transparent 200deg) border-box;
      animation:iiu-yvvxj 4s linear infinite}
    @keyframes iiu-yvvxj{to{--iiu-ba:360deg}}
  }
}

/* scroll-driven reveal (progressive, skips hero) */
@supports (animation-timeline:view()){
  @media(prefers-reduced-motion:no-preference){
    .iiu-main .iiu-callout,.iiu-slots,.iiu-rv,.iiu-faq{
      animation:iiu-dwxrt linear both;animation-timeline:view();animation-range:entry 0% cover 26%}
    @keyframes iiu-dwxrt{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
  }
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:900px){
  .iiu-nav__list a{letter-spacing:.06em}
}
@media(max-width:640px){
  body.iiu-body{font-size:16px}
  .iiu-prose li,.iiu-doc li{padding-left:1.9em}
  .iiu-cta{width:auto}
  .iiu-cookie__inner{flex-direction:column;align-items:stretch}
  .iiu-cookie__btns{width:100%}
  .iiu-cookie__btn{flex:1 1 auto}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important}
  html.iiu-js [data-iiu-reveal]{opacity:1!important;transform:none!important}
}
html,body{overflow-x:hidden}

/* container-guarantee */
.iiu-prose{max-width:var(--iiu-wrap,1200px);margin-inline:auto;padding-inline:clamp(16px,4vw,32px);box-sizing:border-box}
.iiu-main .iiu-prose,.iiu-main>.iiu-wrap{max-width:none;padding-inline:0;margin-inline:0}

/* premium-motion */
@media (prefers-reduced-motion: no-preference){
.iiu-slot,.iiu-pc__col,.iiu-rv,[class*="iiu-"][class*="card"]{transition:transform .2s cubic-bezier(.16,1,.3,1)}
.iiu-slot:hover,.iiu-pc__col:hover,.iiu-rv:hover,[class*="iiu-"][class*="card"]:hover{transform:translateY(-6px)}
.iiu-cta{transition:transform .16s cubic-bezier(.16,1,.3,1)}
.iiu-cta:hover{transform:translateY(-2px) scale(1.02)}
.iiu-cta:active{transform:translateY(0) scale(.99)}
.iiu-prose a:not([class]){position:relative;text-decoration:none}
.iiu-prose a:not([class])::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1.5px;background:currentColor;opacity:.6;transform:scaleX(0);transform-origin:left;transition:transform .22s cubic-bezier(.16,1,.3,1)}
.iiu-prose a:not([class]):hover::after{transform:scaleX(1)}
.iiu-hero figure,.iiu-hero picture{animation:iiu-thmuu 6s cubic-bezier(.16,1,.3,1) infinite}
@keyframes iiu-thmuu{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@supports (animation-timeline:view()){
.iiu-prose>*,.iiu-toc,.iiu-pc,.iiu-proscons,.iiu-slots,.iiu-reviews,.iiu-faq,.iiu-authorcard,.iiu-author,.iiu-disc,.iiu-byline{animation:iiu-mybkv linear both;animation-timeline:view();animation-range:entry 0% cover 26%}
@keyframes iiu-mybkv{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
}
}

/* premium-polish */
:root{scrollbar-color:color-mix(in srgb,var(--iiu-accent,#c9a227) 40%,transparent) transparent;scrollbar-width:thin}
::selection{background:color-mix(in srgb,var(--iiu-accent,#c9a227) 30%,transparent);color:var(--iiu-ink,#fff)}
:focus-visible{outline:2px solid var(--iiu-accent,#c9a227);outline-offset:2px;border-radius:inherit}
@media (prefers-reduced-motion:no-preference){a:focus-visible,button:focus-visible,.iiu-cta:focus-visible,[class*="iiu-"][class*="btn"]:focus-visible{transition:outline-offset .15s ease, outline-color .15s ease;outline-offset:6px}}
html::before{content:"";position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:0.048;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='pn'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='3' stitchTiles='stitch' seed='72'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23pn)'/%3E%3C/svg%3E");background-size:220px 220px}
@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference){html::after{content:"";position:fixed;top:0;left:0;width:100%;height:3px;z-index:9999;pointer-events:none;transform-origin:0 50%;transform:scaleX(0);background:color-mix(in srgb,var(--iiu-accent,#c9a227) 88%,transparent);animation:iiu-fvybr auto linear;animation-timeline:scroll(root block)}
@keyframes iiu-fvybr{to{transform:scaleX(1)}}}}

/* kf-uniq */

/* related overflow guard 2026 */
.iiu-related{max-width:100%;box-sizing:border-box}
.iiu-related a{overflow-wrap:anywhere;max-width:100%}
