/* Interface Guild — Design DNA
   Direction : quiet-luxury dark product studio — deep charcoal, fine detail, restraint, one champagne/soft-gold accent, faint wireframe grid
   Layout    : narrow-boxed 1180 spine with deliberate width shifts; ≥2 asymmetric splits; each section its own archetype; hairline rules
   Type      : Syne (display) / Inter (text) — fluid clamp scale, wide display tracking
   Color     : #14151a base / #1b1d24 surface / #e9eaf0 ink / #d8b46a champagne accent (60-30-10), oklch-reasoned
   Motion    : restrained — measurement lines draw-in (stroke-dashoffset), fade-up 480ms; full reduced-motion off-switch
   Signature : annotated HUD wireframe overlays — numbered pins + connector/measurement lines over dark UI mock panels, recurring
   Hero-bg   : bespoke CSS/SVG — dark + faint wireframe grid + gold accent measurement lines (never flat, never raw photo alone) */

/* ---------- tokens ---------- */
:root{
  --base:#14151a;
  --base-2:#101116;
  --surface:#1b1d24;
  --surface-2:#20232c;
  --line:#2b2e39;
  --line-soft:#23262f;
  --ink:#e9eaf0;
  --ink-dim:#a7abb8;
  --ink-faint:#6f7484;
  --accent:#d8b46a;
  --accent-soft:#c9a55a;
  --accent-deep:#9c7e3c;
  --accent-glow:color-mix(in oklab, var(--accent) 22%, transparent);

  --maxw:1180px;
  --measure:66ch;

  --step--1:clamp(.8rem,.76rem + .2vw,.9rem);
  --step-0:clamp(1rem,.95rem + .25vw,1.1rem);
  --step-1:clamp(1.2rem,1.1rem + .5vw,1.45rem);
  --step-2:clamp(1.5rem,1.3rem + .9vw,2rem);
  --step-3:clamp(2rem,1.6rem + 1.9vw,3.1rem);
  --step-4:clamp(2.3rem,1.7rem + 3.2vw,4.6rem);
  --step-5:clamp(2.6rem,1.5rem + 5.4vw,6.2rem);

  --sp-1:.5rem; --sp-2:1rem; --sp-3:1.5rem; --sp-4:2.5rem;
  --sp-5:4rem;  --sp-6:6rem;  --sp-7:clamp(4.5rem,8vw,9rem);

  --r-s:6px; --r-m:12px; --r-l:20px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --shadow:0 24px 60px -30px rgba(0,0,0,.75);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  margin:0;
  background:var(--base);
  color:var(--ink);
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:var(--step-0);
  line-height:1.65;
  font-feature-settings:"cv05","ss01";
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:"Syne","Inter",sans-serif;font-weight:700;line-height:1.06;text-wrap:balance;margin:0}
p{margin:0;text-wrap:pretty}
::selection{background:var(--accent);color:#14151a}

:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}

/* ---------- layout helpers ---------- */
.iguild-wrap{width:min(100% - 2.5rem,var(--maxw));margin-inline:auto}
.iguild-wrap-narrow{width:min(100% - 2.5rem,760px);margin-inline:auto}
.wrap-wide{width:min(100% - 2rem,1340px);margin-inline:auto}
.iguild-section{padding-block:var(--sp-7)}
.iguild-eyebrow{
  font-family:"Syne",sans-serif;font-weight:600;
  font-size:var(--step--1);letter-spacing:.22em;text-transform:uppercase;
  color:var(--accent);display:inline-flex;align-items:center;gap:.6rem;margin:0;
}
.iguild-eyebrow::before{content:"";width:26px;height:1px;background:var(--accent);opacity:.7}
.iguild-lead{color:var(--ink-dim);font-size:var(--step-1);line-height:1.55;max-width:var(--measure)}
.iguild-muted{color:var(--ink-dim)}
.hairline{height:1px;background:var(--line);border:0;margin:0}

/* index number pin, reused as signature accent */
.pin{
  font-family:"Syne",sans-serif;font-weight:700;
  display:inline-grid;place-items:center;
  width:2rem;height:2rem;border-radius:50%;
  border:1px solid var(--accent);color:var(--accent);
  font-size:.8rem;flex:none;
  box-shadow:0 0 0 4px color-mix(in oklab,var(--accent) 10%,transparent);
}

/* ---------- buttons ---------- */
.iguild-btn{
  --bg:var(--accent);
  display:inline-flex;align-items:center;gap:.6rem;
  font-family:"Syne",sans-serif;font-weight:600;font-size:var(--step--1);
  letter-spacing:.04em;
  padding:.9rem 1.5rem;border-radius:999px;
  background:var(--bg);color:#141319;border:1px solid var(--bg);
  cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s;
  min-height:44px;
}
.iguild-btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px -12px var(--accent-glow)}
.iguild-btn .iguild-arrow{transition:transform .25s var(--ease)}
.iguild-btn:hover .iguild-arrow{transform:translateX(4px)}
.iguild-btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.iguild-btn--ghost:hover{border-color:var(--accent);color:var(--accent);box-shadow:none}
.iguild-btn--block{width:100%;justify-content:center}

/* ---------- topbar + header ---------- */
.iguild-topbar{border-bottom:1px solid var(--line-soft);background:var(--base-2);font-size:var(--step--1)}
.iguild-topbar-in{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:.55rem;flex-wrap:wrap}
.iguild-topbar-loc{color:var(--ink-faint);letter-spacing:.03em}
.iguild-topbar-links{display:flex;gap:1.4rem;flex-wrap:wrap}
.iguild-topbar-links a{color:var(--ink-dim);transition:color .2s}
.iguild-topbar-links a:hover{color:var(--accent)}

.iguild-site-header{position:sticky;top:0;z-index:50;background:color-mix(in oklab,var(--base) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line-soft)}
.iguild-header-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1rem}
.iguild-brand{display:flex;align-items:center;gap:.7rem;font-family:"Syne",sans-serif;font-weight:700;letter-spacing:.02em}
.iguild-brand-mark{
  width:38px;height:38px;border-radius:9px;flex:none;
  display:grid;place-items:center;font-size:.95rem;
  color:var(--accent);border:1px solid var(--accent);
  background:linear-gradient(150deg,color-mix(in oklab,var(--accent) 12%,transparent),transparent);
  letter-spacing:.02em;
}
.iguild-brand-name{font-size:1.05rem}
.iguild-brand-name small{display:block;font-family:"Inter",sans-serif;font-weight:400;font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-faint)}
.iguild-nav{display:flex;align-items:center;gap:1.8rem}
.iguild-nav-links{display:flex;gap:1.6rem}
.iguild-nav-links a{font-size:var(--step--1);color:var(--ink-dim);letter-spacing:.02em;transition:color .2s;position:relative}
.iguild-nav-links a:hover{color:var(--ink)}
.iguild-nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--accent);transition:width .3s var(--ease)}
.iguild-nav-links a:hover::after{width:100%}
.iguild-nav-cta{display:inline-flex}
.iguild-nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:8px;width:44px;height:44px;color:var(--ink);cursor:pointer;padding:0}
.iguild-nav-toggle span{display:block;width:20px;height:1.5px;background:currentColor;margin:4px auto;transition:.3s}

/* ---------- HERO ---------- */
.iguild-hero{position:relative;overflow:hidden;padding-block:clamp(1.6rem,3vw,2.6rem) clamp(1.8rem,3.2vw,3rem);
  background-image:url("images/hero-bg.webp");
  background-size:cover;background-position:center;background-repeat:no-repeat}
.iguild-hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.iguild-hero-bg .iguild-grid-lines{position:absolute;inset:0;
  background:
    linear-gradient(105deg,color-mix(in oklab,var(--bg) 88%,transparent) 0%,color-mix(in oklab,var(--bg) 55%,transparent) 46%,color-mix(in oklab,var(--bg) 30%,transparent) 100%),
    radial-gradient(120% 100% at 50% 100%,color-mix(in oklab,var(--bg) 80%,transparent),transparent 70%);
}
.iguild-hero-bg .iguild-glow{position:absolute;width:60vw;height:60vw;max-width:720px;max-height:720px;
  top:-16%;right:-10%;border-radius:50%;
  background:radial-gradient(circle,var(--accent-glow),transparent 68%);filter:blur(8px)}
.iguild-hero-svg{position:absolute;inset:0;width:100%;height:100%}
.iguild-hero-svg .iguild-draw{stroke:var(--accent);stroke-width:1;fill:none;opacity:.85;
  stroke-dasharray:1;stroke-dashoffset:1;
  animation:draw 2.4s var(--ease) forwards .3s}
.iguild-hero-svg .iguild-tick{stroke:var(--accent);stroke-width:1;opacity:.6}
.iguild-hero-svg .iguild-dot{fill:var(--accent)}

.iguild-hero-in{position:relative;z-index:2;display:grid;gap:clamp(1.4rem,2.4vw,2.1rem);grid-template-columns:1fr;align-items:center}
.iguild-hero-copy h1{font-size:clamp(1.6rem,1rem + 2.9vw,3.3rem);letter-spacing:-.01em;margin-block:.7rem .8rem;overflow-wrap:break-word}
.iguild-hero-copy h1 .iguild-accent{color:var(--accent)}
.iguild-hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:1.1rem}
.iguild-hero-meta{display:flex;flex-wrap:wrap;gap:1.1rem 1.4rem;margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--line-soft)}
.iguild-hero-meta div{display:flex;flex-direction:column}
.iguild-hero-meta b{font-family:"Syne",sans-serif;font-size:var(--step-1);color:var(--ink)}
.iguild-hero-meta span{font-size:var(--step--1);color:var(--ink-faint);letter-spacing:.04em}

/* annotated hero mock panel (signature device) */
.iguild-mockframe{position:relative;border:1px solid var(--line);border-radius:var(--r-l);
  background:linear-gradient(160deg,var(--surface),var(--base-2));
  box-shadow:var(--shadow);overflow:hidden}
.iguild-mockframe img{width:100%;aspect-ratio:16/9;object-fit:cover;opacity:.92}
.iguild-mock-annot{position:absolute;inset:0;pointer-events:none}
.iguild-annot-pin{position:absolute;display:flex;align-items:center;gap:.5rem;font-size:.72rem;
  font-family:"Syne",sans-serif;letter-spacing:.03em;color:var(--ink)}
.iguild-annot-pin .iguild-num{display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;
  background:var(--accent);color:#141319;font-weight:700;font-size:.7rem;
  box-shadow:0 0 0 4px color-mix(in oklab,var(--accent) 18%,transparent)}
.iguild-annot-pin .iguild-lbl{background:color-mix(in oklab,var(--base) 82%,transparent);
  border:1px solid var(--line);padding:.2rem .55rem;border-radius:6px;backdrop-filter:blur(4px);
  color:var(--ink-dim);white-space:nowrap}
.iguild-annot-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.iguild-annot-svg line,.iguild-annot-svg path{stroke:var(--accent);stroke-width:1;fill:none;opacity:.75}

/* ---------- SURFACES INDEX ---------- */
.iguild-surfaces-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;margin-bottom:var(--sp-4)}
.iguild-surfaces-head h2{font-size:var(--step-3);max-width:16ch}
.iguild-surface-row{
  display:grid;grid-template-columns:auto 1fr;gap:1.4rem;align-items:start;
  padding-block:1.7rem;border-top:1px solid var(--line-soft);
  transition:background .3s;
}
.iguild-surface-row:last-child{border-bottom:1px solid var(--line-soft)}
.iguild-surface-row:hover{background:linear-gradient(90deg,color-mix(in oklab,var(--accent) 5%,transparent),transparent 60%)}
.iguild-surface-idx{font-family:"Syne",sans-serif;font-weight:700;color:var(--accent);font-size:var(--step-2);line-height:1}
.iguild-surface-body{display:grid;gap:.55rem}
.iguild-surface-body h3{font-size:var(--step-1);display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap}
.iguild-surface-body h3 .iguild-tag{font-family:"Inter",sans-serif;font-weight:500;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);border:1px solid var(--line);border-radius:999px;padding:.15rem .6rem}
.iguild-surface-body p{color:var(--ink-dim);max-width:60ch}

/* ---------- METHOD (sticky steps) ---------- */
.iguild-method{background:var(--base-2);border-block:1px solid var(--line-soft)}
.iguild-method-grid{display:grid;gap:clamp(2rem,4vw,4rem);grid-template-columns:1fr}
.iguild-method-aside h2{font-size:var(--step-3);margin-bottom:1rem}
.iguild-method-media{border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden;position:relative}
.iguild-method-media img{width:100%;aspect-ratio:3/2;object-fit:cover;opacity:.85}
.iguild-method-media .iguild-tape{position:absolute;left:1rem;bottom:1rem;font-family:"Syne",sans-serif;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);background:color-mix(in oklab,var(--base) 80%,transparent);border:1px solid var(--line);padding:.3rem .6rem;border-radius:6px}
.iguild-steps{display:grid;gap:1.2rem;counter-reset:step}
.iguild-step{border:1px solid var(--line-soft);border-radius:var(--r-m);padding:1.4rem 1.5rem;background:var(--surface);position:relative;overflow:hidden}
.iguild-step::before{counter-increment:step;content:"0" counter(step);position:absolute;right:1rem;top:.6rem;font-family:"Syne",sans-serif;font-size:2.6rem;color:color-mix(in oklab,var(--accent) 16%,transparent);font-weight:700}
.iguild-step h3{font-size:var(--step-1);margin-bottom:.4rem;color:var(--ink)}
.iguild-step p{color:var(--ink-dim);max-width:52ch}
.iguild-step .iguild-rule{margin-top:1rem;height:1px;background:linear-gradient(90deg,var(--accent),transparent);width:40%}

/* ---------- CASE STUDIES (comparison split, CSS wireframes) ---------- */
.iguild-case{border-bottom:1px solid var(--line-soft)}
.iguild-case + .iguild-case{margin-top:var(--sp-5)}
.iguild-case-head{display:flex;gap:1rem;align-items:baseline;flex-wrap:wrap;margin-bottom:var(--sp-3)}
.iguild-case-head h3{font-size:var(--step-2)}
.iguild-case-head .iguild-who{color:var(--ink-faint);font-size:var(--step--1);letter-spacing:.05em}
.iguild-compare{display:grid;gap:1.2rem;grid-template-columns:1fr}
.iguild-panel{border:1px solid var(--line);border-radius:var(--r-m);background:var(--surface);padding:1.4rem;position:relative}
.iguild-panel .iguild-stamp{position:absolute;top:1rem;right:1rem;font-family:"Syne",sans-serif;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;padding:.2rem .55rem;border-radius:999px;border:1px solid var(--line)}
.iguild-panel--before .iguild-stamp{color:var(--ink-faint)}
.iguild-panel--after{border-color:color-mix(in oklab,var(--accent) 40%,var(--line))}
.iguild-panel--after .iguild-stamp{color:var(--accent);border-color:var(--accent)}
.iguild-panel h4{font-family:"Inter",sans-serif;font-weight:600;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:1rem}
/* case UI image */
.iguild-wf{display:block;background:var(--base-2);border:1px solid var(--line-soft);border-radius:8px;overflow:hidden;margin-bottom:1rem;aspect-ratio:16/9}
.iguild-wf img{width:100%;height:100%;object-fit:cover;display:block;opacity:.9;transition:opacity .3s var(--ease)}
.iguild-panel:hover .iguild-wf img{opacity:1}
.iguild-panel--after .iguild-wf{border-color:color-mix(in oklab,var(--accent) 32%,var(--line-soft))}
.iguild-panel p{color:var(--ink-dim);font-size:var(--step--1)}
.iguild-case-metrics{display:flex;gap:1.6rem;flex-wrap:wrap;margin-top:1.4rem}
.iguild-case-metrics div{display:flex;flex-direction:column}
.iguild-case-metrics b{font-family:"Syne",sans-serif;color:var(--accent);font-size:var(--step-2);line-height:1}
.iguild-case-metrics span{font-size:var(--step--1);color:var(--ink-faint)}

/* ---------- DELIVERABLES (two-col hanging labels) ---------- */
.iguild-deliver{background:var(--base-2);border-block:1px solid var(--line-soft)}
.iguild-deliver-top{display:grid;gap:2rem;grid-template-columns:1fr;align-items:end;margin-bottom:var(--sp-4)}
.iguild-deliver-top h2{font-size:var(--step-3)}
.iguild-deliver-media{border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden}
.iguild-deliver-media img{width:100%;aspect-ratio:16/10;object-fit:cover;opacity:.82}
.iguild-hang{display:grid;grid-template-columns:1fr;gap:0}
.iguild-hang-item{display:grid;grid-template-columns:1fr;gap:.4rem;padding-block:1.5rem;border-top:1px solid var(--line-soft)}
.iguild-hang-item:last-child{border-bottom:1px solid var(--line-soft)}
.iguild-hang-label{font-family:"Syne",sans-serif;font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;color:var(--accent)}
.iguild-hang-item h3{font-size:var(--step-1)}
.iguild-hang-item p{color:var(--ink-dim);max-width:60ch}

/* ---------- PRICING ---------- */
.iguild-pricing-head{text-align:center;max-width:56ch;margin-inline:auto;margin-bottom:var(--sp-4)}
.iguild-pricing-head h2{font-size:var(--step-3)}
.iguild-pricing-head p{color:var(--ink-dim);margin-top:.8rem}
.iguild-plans{display:grid;gap:1.4rem;grid-template-columns:1fr}
.iguild-plan{border:1px solid var(--line);border-radius:var(--r-l);background:var(--surface);padding:2rem 1.8rem;display:flex;flex-direction:column;position:relative}
.iguild-plan--feat{border-color:var(--accent);background:linear-gradient(180deg,color-mix(in oklab,var(--accent) 7%,var(--surface)),var(--surface))}
.iguild-plan .iguild-flag{position:absolute;top:-.8rem;left:1.8rem;font-family:"Syne",sans-serif;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;background:var(--accent);color:#141319;padding:.25rem .7rem;border-radius:999px}
.iguild-plan h3{font-size:var(--step-1)}
.iguild-plan .iguild-price{font-family:"Syne",sans-serif;font-size:var(--step-4);margin:.6rem 0 .2rem;line-height:1}
.iguild-plan .iguild-price small{font-size:1rem;color:var(--ink-faint);font-family:"Inter",sans-serif;font-weight:400}
.iguild-plan .iguild-tagline{color:var(--ink-dim);margin-bottom:1.4rem;min-height:2.8em}
.iguild-plan ul{list-style:none;margin:0 0 1.8rem;padding:0;display:grid;gap:.7rem}
.iguild-plan li{display:grid;grid-template-columns:auto 1fr;gap:.7rem;font-size:var(--step--1);color:var(--ink-dim);align-items:start}
.iguild-plan li::before{content:"";width:16px;height:16px;margin-top:.25rem;border-radius:50%;border:1px solid var(--accent);background:radial-gradient(circle at 50% 50%,var(--accent) 0 34%,transparent 36%)}
.iguild-plan li.iguild-no{color:var(--ink-faint)}
.iguild-plan li.iguild-no::before{border-color:var(--line);background:none}
.iguild-plan .iguild-btn{margin-top:auto}

/* ---------- FIELD LAB (articles) ---------- */
.iguild-lab{position:relative;overflow:hidden}
.iguild-lab-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;margin-bottom:var(--sp-4)}
.iguild-lab-head h2{font-size:var(--step-3)}
.iguild-lab-grid{display:grid;gap:1.4rem;grid-template-columns:1fr}
.iguild-artcard{border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden;background:var(--surface);display:flex;flex-direction:column;transition:transform .3s var(--ease),border-color .3s}
.iguild-artcard:hover{transform:translateY(-4px);border-color:color-mix(in oklab,var(--accent) 45%,var(--line))}
.iguild-artcard .iguild-thumb{aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid var(--line)}
.iguild-artcard .iguild-thumb img{width:100%;height:100%;object-fit:cover;opacity:.8;transition:opacity .3s,transform .5s var(--ease)}
.iguild-artcard:hover .iguild-thumb img{opacity:1;transform:scale(1.04)}
.iguild-artcard .iguild-thumb.iguild-gen{background:
  radial-gradient(circle at 30% 30%,color-mix(in oklab,var(--accent) 28%,transparent),transparent 60%),
  linear-gradient(160deg,var(--surface-2),var(--base-2));position:relative}
.iguild-artcard .iguild-thumb.iguild-gen::after{content:"";position:absolute;inset:0;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:26px 26px;opacity:.4;mask:radial-gradient(80% 80% at 40% 40%,#000,transparent)}
.iguild-artcard .iguild-body{padding:1.4rem;display:flex;flex-direction:column;gap:.6rem;flex:1}
.iguild-artcard .iguild-kicker{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-family:"Syne",sans-serif}
.iguild-artcard h3{font-size:var(--step-1);line-height:1.15}
.iguild-artcard p{color:var(--ink-dim);font-size:var(--step--1)}
.iguild-artcard .iguild-more{margin-top:auto;color:var(--accent);font-size:var(--step--1);font-family:"Syne",sans-serif;display:inline-flex;gap:.4rem}

/* ---------- FAQ (ruled rows) ---------- */
.iguild-faq-wrap{display:grid;gap:0}
.iguild-faq{border-top:1px solid var(--line-soft)}
.iguild-faq:last-child{border-bottom:1px solid var(--line-soft)}
.iguild-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:1.5rem;align-items:baseline;padding-block:1.5rem;font-family:"Syne",sans-serif;font-weight:600;font-size:var(--step-1)}
.iguild-faq summary::-webkit-details-marker{display:none}
.iguild-faq summary .iguild-mk{flex:none;color:var(--accent);font-size:1.4rem;line-height:1;transition:transform .3s var(--ease);font-family:"Inter",sans-serif}
.iguild-faq[open] summary .iguild-mk{transform:rotate(45deg)}
.iguild-faq-body{padding-bottom:1.6rem;color:var(--ink-dim);max-width:70ch}
.iguild-faq-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}

/* ---------- FORM ---------- */
.iguild-book{background:var(--base-2);border-top:1px solid var(--line-soft);position:relative;overflow:hidden}
.iguild-book-grid{display:grid;gap:clamp(2rem,4vw,3.5rem);grid-template-columns:1fr}
.iguild-book-aside h2{font-size:var(--step-3);margin-bottom:1rem}
.iguild-book-aside .iguild-contact-line{display:flex;gap:.7rem;align-items:center;color:var(--ink-dim);margin-top:1rem;font-size:var(--step--1)}
.iguild-book-aside .iguild-contact-line b{color:var(--accent);font-family:"Syne",sans-serif;font-weight:600}
.iguild-form{border:1px solid var(--line);border-radius:var(--r-l);background:var(--surface);padding:clamp(1.5rem,3vw,2.2rem)}
.iguild-field{display:grid;gap:.4rem;margin-bottom:1.1rem}
.iguild-field label{font-size:var(--step--1);color:var(--ink-dim);letter-spacing:.03em}
.iguild-field label .iguild-req{color:var(--accent)}
.iguild-field input,.iguild-field select,.iguild-field textarea{
  width:100%;background:var(--base-2);border:1px solid var(--line);border-radius:8px;
  color:var(--ink);padding:.8rem .9rem;font:inherit;font-size:var(--step--1);
  transition:border-color .2s,box-shadow .2s;
}
.iguild-field textarea{resize:vertical;min-height:110px}
.iguild-field input:focus,.iguild-field select:focus,.iguild-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}
.iguild-field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--accent) 50%),linear-gradient(135deg,var(--accent) 50%,transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.iguild-hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
#formStatus{margin-top:1rem;font-size:var(--step--1)}
#formStatus.iguild-error{color:#e98d7a}
#formStatus.ok{color:var(--accent)}
.iguild-form-note{font-size:.72rem;color:var(--ink-faint);margin-top:.9rem}

/* ---------- footer ---------- */
.iguild-site-footer{background:var(--base-2);border-top:1px solid var(--line);padding-block:var(--sp-6) var(--sp-4)}
.iguild-foot-grid{display:grid;gap:2.5rem;grid-template-columns:1fr}
.iguild-foot-brand p{color:var(--ink-dim);margin-top:1rem;max-width:38ch;font-size:var(--step--1)}
.iguild-foot-col h4{font-family:"Syne",sans-serif;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:1rem}
.iguild-foot-col ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.iguild-foot-col a{color:var(--ink-dim);font-size:var(--step--1);transition:color .2s}
.iguild-foot-col a:hover{color:var(--accent)}
.iguild-foot-bottom{margin-top:var(--sp-5);padding-top:1.5rem;border-top:1px solid var(--line-soft);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.78rem;color:var(--ink-faint)}
.iguild-disclaimer{max-width:60ch}

/* ---------- cookie banner ---------- */
.iguild-cookie{position:fixed;inset:auto 1rem 1rem 1rem;z-index:80;max-width:520px;margin-inline:auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-m);
  padding:1.2rem 1.3rem;box-shadow:var(--shadow);display:none;gap:1rem;align-items:center;flex-wrap:wrap}
.iguild-cookie.iguild-show{display:flex}
.iguild-cookie[hidden]{display:none!important}
.iguild-cookie p{font-size:var(--step--1);color:var(--ink-dim);flex:1 1 240px}
.iguild-cookie a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}
.iguild-cookie .iguild-btn{padding:.6rem 1.1rem}

/* ---------- legal / article pages ---------- */
.iguild-doc{padding-block:var(--sp-6)}
.iguild-doc-head{border-bottom:1px solid var(--line-soft);padding-bottom:var(--sp-3);margin-bottom:var(--sp-4)}
.iguild-doc-head .iguild-eyebrow{margin-bottom:1rem}
.iguild-doc-head h1{font-size:var(--step-4);overflow-wrap:break-word}
.iguild-doc-head .iguild-meta{color:var(--ink-faint);font-size:var(--step--1);margin-top:1rem;display:flex;gap:1rem;flex-wrap:wrap}
.iguild-prose{max-width:70ch}
.iguild-prose h2{font-size:var(--step-2);margin-top:2.4rem;margin-bottom:.8rem;color:var(--ink)}
.iguild-prose h3{font-size:var(--step-1);margin-top:1.8rem;margin-bottom:.5rem}
.iguild-prose p{color:var(--ink-dim);margin-bottom:1.1rem}
.iguild-prose ul{color:var(--ink-dim);padding-left:1.2rem;margin-bottom:1.1rem;display:grid;gap:.5rem}
.iguild-prose li{padding-left:.3rem}
.iguild-prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.iguild-prose strong{color:var(--ink)}
.iguild-prose blockquote{border-left:2px solid var(--accent);padding-left:1.2rem;margin:1.6rem 0;color:var(--ink);font-family:"Syne",sans-serif;font-style:italic}
.iguild-back-home{display:inline-flex;gap:.5rem;color:var(--accent);font-size:var(--step--1);margin-top:var(--sp-4);font-family:"Syne",sans-serif}

/* thank-you */
.iguild-ty{min-height:70vh;display:grid;place-items:center;text-align:center;padding-block:var(--sp-6)}
.iguild-ty-in{max-width:56ch}
.iguild-ty h1{font-size:var(--step-4);margin-block:1.2rem}
.iguild-ty p{color:var(--ink-dim);margin-bottom:1.2rem}
.iguild-ty .iguild-badge{width:64px;height:64px;border-radius:50%;border:1px solid var(--accent);display:grid;place-items:center;margin-inline:auto;color:var(--accent);font-size:1.6rem;box-shadow:0 0 0 8px var(--accent-glow)}

/* ---------- reveal ---------- */
.iguild-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.iguild-reveal.iguild-in{opacity:1;transform:none}

@keyframes draw{to{stroke-dashoffset:0}}

/* ---------- responsive ---------- */
@media (min-width:720px){
  .iguild-hang{grid-template-columns:1fr;gap:0}
  .iguild-hang-item{grid-template-columns:.5fr 1fr;gap:2rem;align-items:start}
  .iguild-hang-label{padding-top:.35rem}
  .iguild-compare{grid-template-columns:1fr 1fr}
  .iguild-plans{grid-template-columns:1fr 1fr}
  .iguild-lab-grid{grid-template-columns:repeat(3,1fr)}
  .iguild-deliver-top{grid-template-columns:1.1fr .9fr}
  .iguild-foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}
}
@media (min-width:900px){
  .iguild-hero-in{grid-template-columns:1.05fr .95fr}
  .iguild-method-grid{grid-template-columns:.85fr 1.15fr}
  .iguild-book-grid{grid-template-columns:.8fr 1.2fr}
}
@media (max-width:899px){
  .iguild-nav-links,.iguild-nav-cta{display:none}
  .iguild-nav-toggle{display:block}
  .iguild-nav[data-open="true"] .iguild-nav-links{
    display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;
    gap:0;background:var(--base-2);border-bottom:1px solid var(--line);padding:.5rem 0;
  }
  .iguild-nav[data-open="true"] .iguild-nav-links a{padding:.9rem 1.25rem;width:min(100% - 2.5rem,var(--maxw));margin-inline:auto}
  .iguild-nav[data-open="true"] .iguild-nav-cta{display:inline-flex;padding:1rem 1.25rem;width:min(100% - 2.5rem,var(--maxw));margin-inline:auto}
  .iguild-site-header{position:relative}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .iguild-hero-svg .iguild-draw{stroke-dashoffset:0;animation:none}
  .iguild-reveal{opacity:1;transform:none}
}
