/* Sicuur guide pages use the current site shell with guide-specific composition. */
body.guide-v4 a { color: var(--teal); }
body.guide-v4 .guide-landing {
  position: relative;
  padding: clamp(3.75rem, 7vw, 7rem) 0 clamp(4rem, 7vw, 6rem);
  border-bottom: 1px solid var(--line);
  background: radial-gradient(circle at 82% 24%, rgba(70, 164, 220, .16), transparent 32rem), linear-gradient(140deg, var(--night), var(--night2));
}
body.guide-v4 .guide-landing-grid {
  width: min(1620px, calc(100% - 64px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
  gap: clamp(2.5rem, 6vw, 7rem);
  align-items: center;
}
body.guide-v4 .guide-landing-copy { max-width: 780px; }
body.guide-v4 .eyebrow {
  color: var(--teal);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .22em;
  line-height: 1.5;
  text-transform: uppercase;
}
body.guide-v4 .guide-landing h1 {
  max-width: 820px;
  margin: 1.15rem 0 1.5rem;
  color: var(--ink);
  font-size: clamp(3.15rem, 6.4vw, 6.6rem);
  font-weight: 760;
  letter-spacing: -.075em;
  line-height: .98;
}
body.guide-v4 .guide-landing h1 em {
  color: transparent;
  background: linear-gradient(105deg, #44cbe0 5%, #5aa9ed 54%, #8e7ef1 100%);
  background-clip: text;
  -webkit-background-clip: text;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  letter-spacing: -.055em;
}
body.guide-v4 .guide-landing .dek {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  font-size: clamp(1.08rem, 1.65vw, 1.35rem);
  line-height: 1.75;
}
body.guide-v4 .guide-landing-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin-top: 2rem; }
body.guide-v4 .guide-landing-note, body.guide-v4 .guide-reading-note { color: var(--muted); font-size: .9rem; line-height: 1.6; }
body.guide-v4 .guide-hero-art {
  display: grid;
  place-items: center;
  min-height: 420px;
  padding: clamp(1rem, 2.4vw, 2rem);
  border: 1px solid color-mix(in srgb, var(--teal) 28%, var(--line));
  border-radius: 34px;
  background: linear-gradient(145deg, color-mix(in srgb, var(--panel) 84%, transparent), color-mix(in srgb, var(--panel2) 76%, transparent));
  box-shadow: 0 24px 80px rgba(23, 53, 64, .14), inset 0 1px 0 rgba(255,255,255,.55);
}
body.guide-v4 .guide-hero-art img {
  display: block;
  width: min(100%, 430px);
  max-height: 590px;
  height: auto;
  object-fit: contain;
  border-radius: 22px;
  filter: drop-shadow(0 28px 42px rgba(19, 44, 70, .18));
}
body.guide-v4 .guide-library { padding: clamp(3.5rem, 7vw, 6.5rem) 0 5rem; }
body.guide-v4 .guide-library > .container {
  width: min(1620px, calc(100% - 64px));
  margin: 0 auto;
}
body.guide-v4 .guide-library-heading {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(300px, 1.1fr);
  align-items: end;
  gap: 2rem;
  margin: 0 0 2rem;
}
body.guide-v4 .guide-library-heading h2 { margin: .65rem 0 0; color: var(--ink); font-size: clamp(2.3rem, 4.4vw, 4.1rem); letter-spacing: -.065em; line-height: 1.02; }
body.guide-v4 .guide-library-heading p { max-width: 650px; margin: 0; color: var(--muted); font-size: 1.08rem; line-height: 1.75; }
body.guide-v4 .guide-library .grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.15rem; }
body.guide-v4 .guide-library .card {
  min-height: 255px;
  padding: clamp(1.5rem, 2.5vw, 2.2rem);
  border: 1px solid color-mix(in srgb, var(--teal) 22%, var(--line));
  border-radius: 26px;
  background: linear-gradient(145deg, color-mix(in srgb, var(--panel) 96%, transparent), color-mix(in srgb, var(--panel2) 94%, transparent));
  box-shadow: 0 12px 36px rgba(23, 53, 64, .08);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
body.guide-v4 .guide-library .card:hover { transform: translateY(-3px); border-color: color-mix(in srgb, var(--teal) 54%, var(--line)); box-shadow: 0 20px 48px rgba(23, 53, 64, .14); }
body.guide-v4 .guide-library .card .eyebrow { color: var(--muted); font-size: .72rem; }
body.guide-v4 .guide-library .card h2 { margin: 1rem 0 .75rem; color: var(--ink); font-size: clamp(1.45rem, 2.1vw, 2.1rem); letter-spacing: -.045em; line-height: 1.15; }
body.guide-v4 .guide-library .card h2 a { color: inherit; text-decoration: none; }
body.guide-v4 .guide-library .card p { color: var(--muted); font-size: 1rem; line-height: 1.7; }
body.guide-v4 .guide-library .card .more { display: inline-flex; align-items: center; gap: .45rem; margin-top: .65rem; font-weight: 760; text-decoration: none; }
body.guide-v4 header.hero {
  position: relative;
  min-height: 0;
  display: block;
  overflow: hidden;
  padding: clamp(3.2rem, 6vw, 6rem) 0 clamp(3rem, 5vw, 5rem);
  border-bottom: 1px solid var(--line);
  color: var(--ink);
  background: radial-gradient(circle at 84% 4%, rgba(70, 164, 220, .18), transparent 31rem), linear-gradient(140deg, var(--night), var(--night2));
}
body.guide-v4 header.hero::before, body.guide-v4 header.hero::after { display: none; content: none; }
body.guide-v4 header.hero > .wrap { width: min(1320px, calc(100% - 64px)); margin: 0 auto; }
body.guide-v4 .crumb { display: flex; flex-wrap: wrap; gap: .55rem; margin: 0 0 2.25rem; color: var(--muted); font-size: .92rem; }
body.guide-v4 .crumb a { color: var(--teal); text-decoration: none; }
body.guide-v4 header.hero h1 { max-width: 1120px; margin: 1rem 0 1.4rem; color: var(--ink); font-size: clamp(2.9rem, 6vw, 6rem); font-weight: 760; letter-spacing: -.075em; line-height: .98; }
body.guide-v4 header.hero .dek { max-width: 940px; margin: 0; color: var(--muted); font-size: clamp(1.08rem, 1.7vw, 1.35rem); line-height: 1.8; }
body.guide-v4 header.hero .byline { display: flex; align-items: center; gap: .7rem; margin-top: 1.3rem; color: var(--muted); font-size: .92rem; }
body.guide-v4 header.hero .author-avatar { border-color: var(--line) !important; }
body.guide-v4 .hero-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin-top: 1.6rem; }
body.guide-v4 .hero-cta small { color: var(--muted); }
body.guide-v4 .wrap.layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
  align-items: start;
  gap: clamp(2rem, 4vw, 4rem);
  width: min(1320px, calc(100% - 64px));
  margin: clamp(3rem, 6vw, 5.5rem) auto 7rem;
}
body.guide-v4 .article { min-width: 0; max-width: 900px; color: var(--ink); }
body.guide-v4 .article .guide-visual { width: min(100%, 500px); margin: 0 auto 2.5rem; }
body.guide-v4 .article .guide-visual img { display: block; width: 100%; height: auto; border: 1px solid var(--line); border-radius: 28px; background: var(--panel); box-shadow: 0 20px 56px rgba(23, 53, 64, .13); }
body.guide-v4 .article .guide-visual figcaption { margin-top: .75rem; color: var(--muted); font-size: .82rem; line-height: 1.5; }
body.guide-v4 .article .intro { margin: 0 0 2.5rem; color: var(--muted); font-size: 1.12rem; line-height: 1.85; }
body.guide-v4 .article p, body.guide-v4 .article li { color: var(--muted); font-size: 1.02rem; line-height: 1.85; }
body.guide-v4 .article h2 { margin: 2.6rem 0 .9rem; color: var(--ink); font-size: clamp(1.65rem, 2.8vw, 2.35rem); letter-spacing: -.045em; line-height: 1.15; }
body.guide-v4 .article h3 { color: var(--ink); letter-spacing: -.025em; }
body.guide-v4 .article-section { margin: 0 0 2rem; }
body.guide-v4 .article .callout, body.guide-v4 .article .local-note, body.guide-v4 .article .plan-preview, body.guide-v4 .article .planner, body.guide-v4 .article .faq, body.guide-v4 .article .related, body.guide-v4 .article .sources, body.guide-v4 .toc {
  border: 1px solid color-mix(in srgb, var(--teal) 20%, var(--line));
  border-radius: 22px;
  background: linear-gradient(145deg, color-mix(in srgb, var(--panel) 97%, transparent), color-mix(in srgb, var(--panel2) 94%, transparent));
  box-shadow: 0 12px 36px rgba(23, 53, 64, .075);
}
body.guide-v4 .article .callout { margin: 1.35rem 0; padding: 1.2rem 1.4rem; }
body.guide-v4 .article .callout span, body.guide-v4 .article .eyebrow { color: var(--teal); }
body.guide-v4 .toc { position: sticky; top: 98px; padding: 1.4rem; }
body.guide-v4 .toc b { display: block; margin-bottom: .75rem; color: var(--ink); }
body.guide-v4 .toc a { display: block; padding: .42rem 0; color: var(--muted); font-size: .9rem; line-height: 1.45; text-decoration: none; }
body.guide-v4 .toc a:hover { color: var(--teal); }
body.guide-v4 .article .faq, body.guide-v4 .article .planner, body.guide-v4 .article .final, body.guide-v4 .article .sources, body.guide-v4 .article .related { margin-top: 2rem; padding: clamp(1.3rem, 2.5vw, 2rem); }
body.guide-v4 .article .faq h2, body.guide-v4 .article .planner h2, body.guide-v4 .article .final h2, body.guide-v4 .article .sources h2, body.guide-v4 .article .related h2 { margin-top: 0; }
body.guide-v4 .article .faq-item { padding: 1rem 0; border-top: 1px solid var(--line); }
body.guide-v4 .article .faq-item h3 { margin: 0 0 .35rem; }
body.guide-v4 .article .formgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
body.guide-v4 .article label { display: grid; gap: .45rem; color: var(--ink); font-weight: 650; }
body.guide-v4 .article input, body.guide-v4 .article textarea { width: 100%; min-height: 48px; padding: .8rem .9rem; border: 1px solid var(--line); border-radius: 12px; background: var(--panel); color: var(--ink); font: inherit; }
body.guide-v4 .article .plan-preview { margin-top: 1rem; padding: 1.1rem; }
body.guide-v4 .article .final { border-radius: 26px; background: linear-gradient(135deg, color-mix(in srgb, var(--teal) 12%, var(--panel)), color-mix(in srgb, #8e7ef1 10%, var(--panel))); }
body.guide-v4 .footer { margin-top: 2rem; border-top: 1px solid var(--line); background: color-mix(in srgb, var(--panel) 76%, transparent); }
body.guide-v4 .footer .container { width: min(1620px, calc(100% - 64px)); margin: 0 auto; }
@media (max-width: 980px) {
  body.guide-v4 .guide-landing-grid { grid-template-columns: 1fr; }
  body.guide-v4 .guide-hero-art { min-height: 0; }
  body.guide-v4 .guide-hero-art img { max-height: 480px; }
  body.guide-v4 .wrap.layout { grid-template-columns: 1fr; }
  body.guide-v4 .toc { position: static; grid-row: 1; }
  body.guide-v4 .article { grid-row: 2; }
}
@media (max-width: 680px) {
  body.guide-v4 .guide-landing-grid, body.guide-v4 .guide-library > .container, body.guide-v4 header.hero > .wrap, body.guide-v4 .wrap.layout, body.guide-v4 .footer .container { width: calc(100% - 36px); }
  body.guide-v4 .guide-library-heading { grid-template-columns: 1fr; gap: 1rem; }
  body.guide-v4 .guide-library .grid { grid-template-columns: 1fr; }
  body.guide-v4 .wrap.layout { margin-top: 2rem; }
  body.guide-v4 .article .formgrid { grid-template-columns: 1fr; }
  body.guide-v4 .guide-landing h1 { font-size: clamp(2.85rem, 13vw, 4.6rem); }
  body.guide-v4 header.hero h1 { font-size: clamp(2.7rem, 12vw, 4.5rem); }
}
