/*
 * Great Story — Storybook Adventure Edition
 * Version 4.2.0
 * Loaded after great-story-site.css. Keeps all existing element names/IDs.
 */

:root {
  --gs-paper: #f2e8cf;
  --gs-paper-2: #e7d7b7;
  --gs-paper-deep: #d8c39a;
  --gs-white: #fbf5e6;
  --gs-ink: #2c2923;
  --gs-ink-soft: #514a3f;
  --gs-muted: #716858;
  --gs-green: #66735b;
  --gs-green-deep: #39483a;
  --gs-sage: #c8c9ae;
  --gs-clay: #7b4741;
  --gs-oxblood: #6a3f3c;
  --gs-gold: #a98245;
  --gs-blue: #66747a;
  --gs-line: rgba(65, 55, 43, .20);
  --gs-shadow: 0 24px 55px rgba(48, 39, 27, .16);
  --gs-shadow-soft: 0 10px 28px rgba(48, 39, 27, .10);
  --gs-radius: 12px;
}

/* --------------------------------------------------------------------------
   Paper, typography, subtle grain
   -------------------------------------------------------------------------- */
body.great-story-site,
.gs-home,
.gs-cs-layout {
  background-color: var(--gs-paper);
  background-image:
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.45) 0 1px, transparent 1.5px),
    radial-gradient(circle at 72% 31%, rgba(88,65,37,.06) 0 1px, transparent 1.5px),
    linear-gradient(91deg, rgba(93,68,39,.018), transparent 22%, rgba(255,255,255,.07) 58%, transparent 82%),
    linear-gradient(0deg, rgba(99,73,44,.025) 1px, transparent 1px);
  background-size: 29px 31px, 37px 41px, 100% 100%, 100% 13px;
  color: var(--gs-ink);
}

body.great-story-site {
  font-family: "Segoe UI", ui-sans-serif, system-ui, sans-serif;
}
body.great-story-site h1,
body.great-story-site h2,
body.great-story-site h3,
.gs-cs-display,
.gs-cs-h2,
.gs-cs-card-title {
  font-family: Palatino, "Palatino Linotype", "Book Antiqua", Georgia, serif !important;
  letter-spacing: -.035em !important;
}

.gs-eyebrow,
.gs-chapter-kicker,
.gs-card-eyebrow,
.gs-cs-eyebrow,
.gs-cs-card-eyebrow {
  color: var(--gs-oxblood) !important;
  letter-spacing: .18em !important;
}
.gs-eyebrow::before,
.gs-cs-eyebrow::before {
  width: 42px;
  height: 1px;
  background: var(--gs-oxblood);
  box-shadow: 8px 3px 0 -0.2px rgba(106,63,60,.45);
  transform: rotate(-2deg);
}
.gs-eyebrow::after,
.gs-cs-eyebrow::after {
  content: "✦";
  margin-left: -4px;
  color: var(--gs-gold);
  font-family: Georgia, serif;
  font-size: .72rem;
  letter-spacing: 0;
}

.gs-margin-note,
.gs-scribble,
.gs-tiny-note,
.gs-quiet-note,
.gs-topic-note,
.gs-quiet-handnote,
.gs-journal-margin,
.gs-journal-quote {
  font-family: "Segoe Print", "Bradley Hand", "Comic Sans MS", cursive !important;
}

/* --------------------------------------------------------------------------
   Buttons and links: inked labels rather than app pills
   -------------------------------------------------------------------------- */
.gs-header-cta,
.gs-button {
  position: relative;
  border: 1px solid var(--gs-ink);
  border-radius: 4px 11px 5px 9px;
  background: var(--gs-ink);
  color: #f8edcf !important;
  box-shadow: 3px 4px 0 rgba(106,63,60,.16);
  font-family: Georgia, serif;
  font-weight: 700;
  letter-spacing: .015em;
}
.gs-header-cta::after,
.gs-button::after {
  content: "";
  position: absolute;
  left: 8px;
  right: 7px;
  bottom: -5px;
  height: 1px;
  background: var(--gs-oxblood);
  transform: rotate(-1deg);
  opacity: .65;
}
.gs-header-cta:hover,
.gs-button:hover {
  transform: translate(-1px,-2px) rotate(-.25deg);
  box-shadow: 5px 7px 0 rgba(106,63,60,.15);
}
.gs-button.is-ghost {
  background: rgba(251,245,230,.42);
  color: var(--gs-ink) !important;
}
.gs-text-link {
  border-bottom: 0;
  padding-bottom: 8px;
  font-family: Georgia, serif;
  font-size: 1.03rem;
}
.gs-text-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3px;
  height: 2px;
  background: linear-gradient(90deg,var(--gs-oxblood),rgba(106,63,60,.18));
  transform: rotate(-1deg) scaleX(.92);
  transform-origin: left;
}
.gs-text-link { position: relative; }

/* --------------------------------------------------------------------------
   Header: the bookplate/opening page
   -------------------------------------------------------------------------- */
.gs-site-header {
  background: rgba(242,232,207,.93);
  border-bottom-color: rgba(70,58,42,.18);
  box-shadow: 0 4px 22px rgba(51,42,31,.06);
}
.gs-native-header,
.gs-header-inner {
  position: relative;
}
.gs-native-header::before,
.gs-header-inner::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  height: 1px;
  background: linear-gradient(90deg,transparent,rgba(62,51,38,.38) 10%,rgba(62,51,38,.38) 90%,transparent);
}
.gs-wordmark {
  position: relative;
  padding-left: 24px;
  font-family: Palatino, "Palatino Linotype", Georgia, serif;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: -.045em;
}
.gs-wordmark-sigil {
  position: absolute;
  left: 0;
  top: 1px;
  color: var(--gs-gold);
  font-size: .72rem;
  transform: rotate(12deg);
}
.gs-wordmark-line {
  width: 72px;
  height: 1px;
  margin-top: 8px;
  margin-left: 1px;
  border-radius: 0;
  background: var(--gs-oxblood);
  transform: rotate(-1.4deg);
  box-shadow: 13px 3px 0 rgba(106,63,60,.35);
}
.gs-nav-list a {
  font-family: Georgia, serif;
  font-size: .96rem;
  font-weight: 700;
  letter-spacing: .01em;
}
.gs-nav-list a::after { background: var(--gs-oxblood); height: 1px; }
.gs-header-penline {
  position: absolute;
  right: 1px;
  bottom: -1px;
  width: 86px;
  height: 10px;
  border-bottom: 1px solid rgba(106,63,60,.45);
  border-radius: 50%;
  transform: rotate(-2deg);
  pointer-events: none;
}

/* --------------------------------------------------------------------------
   Home hero: an open journal, ink bottle, fountain pen
   -------------------------------------------------------------------------- */
.gs-hero {
  min-height: 800px;
  grid-template-columns: .94fr 1.06fr;
  gap: 70px;
  padding-top: 86px;
}
.gs-hero-copy { position: relative; z-index: 3; }
.gs-hero-copy::before {
  content: "I";
  position: absolute;
  left: -56px;
  top: -42px;
  color: rgba(106,63,60,.12);
  font: 700 8rem/1 Palatino, Georgia, serif;
}
.gs-hero h1 {
  max-width: 710px;
  font-size: clamp(4.8rem,7.9vw,8.4rem);
  text-shadow: 0 1px 0 rgba(255,255,255,.35);
}
.gs-lead { color: var(--gs-ink-soft); }

.gs-story-map.gs-journal-scene {
  min-height: 640px;
  isolation: isolate;
  overflow: visible;
  transform: none;
}
.gs-journal-scene::before {
  content: "";
  position: absolute;
  left: 8%; right: 5%; bottom: 5%;
  height: 18%;
  border-radius: 50%;
  background: rgba(59,43,27,.18);
  filter: blur(22px);
  transform: rotate(-2deg);
  z-index: -2;
}
.gs-open-journal {
  position: absolute;
  inset: 58px 18px 52px 4px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  transform: rotate(2deg);
  filter: drop-shadow(0 23px 19px rgba(49,37,23,.18));
}
.gs-open-journal::before {
  content: "";
  position: absolute;
  inset: -14px -12px -16px;
  border: 7px solid #453829;
  border-radius: 19px 24px 26px 18px;
  background: #5d4935;
  z-index: -3;
  transform: rotate(-.6deg);
}
.gs-open-journal::after {
  content: "";
  position: absolute;
  left: 49.45%;
  top: 2%; bottom: 2%;
  width: 16px;
  background: linear-gradient(90deg,rgba(70,50,31,.16),rgba(255,255,255,.28),rgba(70,50,31,.2));
  filter: blur(3px);
  z-index: 4;
  pointer-events: none;
}
.gs-journal-page {
  position: relative;
  min-width: 0;
  overflow: hidden;
  padding: 54px 36px 38px;
  background-color: #f4e8c9;
  background-image:
    linear-gradient(90deg,transparent 0 35px,rgba(123,71,65,.12) 35px 36px,transparent 36px),
    repeating-linear-gradient(0deg,transparent 0 29px,rgba(80,69,53,.105) 29px 30px),
    radial-gradient(circle at 20% 20%,rgba(255,255,255,.32),transparent 40%);
  border: 1px solid rgba(82,64,43,.18);
}
.gs-journal-page.is-left {
  border-radius: 14px 2px 4px 18px;
  transform: perspective(650px) rotateY(2deg);
}
.gs-journal-page.is-right {
  border-radius: 2px 17px 20px 4px;
  transform: perspective(650px) rotateY(-2deg);
}
.gs-journal-date {
  color: var(--gs-oxblood);
  font: 700 .63rem/1.4 ui-sans-serif,system-ui,sans-serif;
  letter-spacing: .17em;
}
.gs-journal-title {
  max-width: 230px;
  margin-top: 24px;
  font: 700 2.15rem/1.04 Palatino, Georgia, serif;
  color: #342e26;
  transform: rotate(-1.2deg);
}
.gs-journal-rule {
  width: 88%; height: 2px; margin-top: 28px;
  background: rgba(61,54,44,.42);
  transform: rotate(-.8deg);
}
.gs-journal-rule.short { width: 66%; margin-top: 18px; }
.gs-journal-rule.tiny { width: 45%; margin-top: 18px; }
.gs-journal-margin {
  position: absolute;
  left: 44px; bottom: 48px;
  color: var(--gs-oxblood);
  font-size: .82rem;
  transform: rotate(-6deg);
}
.gs-compass-mark {
  position: absolute;
  right: 28px; bottom: 35px;
  width: 72px; height: 72px;
  border: 1px solid rgba(58,72,58,.47);
  border-radius: 50%;
  color: var(--gs-green-deep);
}
.gs-compass-mark::before,
.gs-compass-mark::after {
  content: ""; position:absolute; left:50%; top:8px; bottom:8px; width:1px; background:currentColor; transform-origin:center;
}
.gs-compass-mark::after { transform: rotate(90deg); }
.gs-compass-mark i {
  position:absolute; left:50%; top:50%; width:16px; height:48px; transform:translate(-50%,-50%) rotate(22deg);
  clip-path: polygon(50% 0,100% 50%,50% 38%,0 50%);
  background: currentColor; opacity:.7;
}
.gs-compass-mark b { position:absolute; top:-18px; left:50%; transform:translateX(-50%); font:700 .62rem Georgia,serif; }
.gs-map-fragment { position:absolute; inset:35px 22px 94px 24px; opacity:.78; }
.gs-map-fragment svg { width:100%; height:100%; }
.gs-map-fragment path { fill:none; stroke:var(--gs-green-deep); stroke-width:2.2; stroke-linecap:round; }
.gs-map-fragment .dashed { stroke-dasharray:3 7; stroke:var(--gs-oxblood); }
.gs-map-fragment circle { fill:#f4e8c9; stroke:var(--gs-green-deep); stroke-width:2; }
.gs-journal-quote {
  position:absolute; left:36px; right:26px; bottom:42px;
  color:var(--gs-oxblood); font-size:.96rem; line-height:1.5; transform:rotate(-2deg);
}
.gs-botanical-sketch { position:absolute; right:21px; top:36px; width:58px; height:92px; transform:rotate(14deg); opacity:.55; }
.gs-botanical-sketch span { position:absolute; left:27px; top:2px; bottom:3px; width:1px; background:var(--gs-green-deep); transform:rotate(8deg); }
.gs-botanical-sketch i { position:absolute; width:25px; height:10px; border:1px solid var(--gs-green-deep); border-radius:80% 10% 80% 10%; transform:rotate(-25deg); }
.gs-botanical-sketch i:nth-of-type(1){left:4px;top:20px}.gs-botanical-sketch i:nth-of-type(2){left:25px;top:46px;transform:rotate(35deg)}.gs-botanical-sketch i:nth-of-type(3){left:1px;top:69px}
.gs-journal-gutter { position:absolute; left:50%; top:0; bottom:0; width:1px; background:rgba(55,42,29,.26); z-index:6; }
.gs-fountain-pen {
  position:absolute; width:326px; height:18px; right:-52px; bottom:55px;
  border-radius:12px 1px 1px 12px;
  background:linear-gradient(#242620,#3a3b32 50%,#1f211d 51%);
  border:1px solid rgba(17,17,14,.6);
  box-shadow:0 9px 13px rgba(45,35,24,.22);
  transform:rotate(-18deg);
  z-index:10;
}
.gs-fountain-pen::before { content:""; position:absolute; left:42px; top:-2px; width:66px; height:20px; border-radius:10px; border:1px solid #9a7a42; background:linear-gradient(90deg,#6b552f,#c7a666,#796039); }
.gs-pen-nib { position:absolute; right:-46px; top:-8px; width:52px; height:34px; background:linear-gradient(90deg,#8e713f,#d1b576,#775d33); clip-path:polygon(0 16%,100% 50%,0 84%,18% 50%); }
.gs-ink-bottle { position:absolute; left:-8px; bottom:37px; width:72px; height:72px; border-radius:15px 15px 18px 18px; background:linear-gradient(135deg,#26302c,#111815); border:2px solid #514a3e; box-shadow:0 15px 18px rgba(45,35,24,.22); z-index:8; transform:rotate(-4deg); }
.gs-ink-bottle::before { content:""; position:absolute; left:14px; right:14px; top:-18px; height:22px; border-radius:5px 5px 2px 2px; background:#43372b; border:2px solid #64513d; }
.gs-ink-bottle span { position:absolute; inset:20px 12px 14px; border:1px solid rgba(211,184,125,.28); border-radius:50%; }
.gs-loose-note { position:absolute; right:4px; top:22px; width:186px; padding:18px 17px 17px; background:#e9d7ad; border:1px solid rgba(85,66,40,.18); box-shadow:var(--gs-shadow-soft); transform:rotate(7deg); z-index:11; }
.gs-loose-note::after { content:""; position:absolute; left:-4px; right:-3px; bottom:-4px; height:8px; background:linear-gradient(135deg,transparent 5px,#e9d7ad 0) 0 0/12px 8px repeat-x; }
.gs-loose-note small { display:block; color:var(--gs-oxblood); font:700 .6rem/1.3 ui-sans-serif,system-ui,sans-serif; letter-spacing:.14em; text-transform:uppercase; }
.gs-loose-note strong { display:block; margin-top:7px; font:700 1.05rem/1.25 Palatino,Georgia,serif; }
.gs-celestial-sketch { position:absolute; left:7%; top:21px; color:rgba(57,72,58,.5); font-family:Georgia,serif; letter-spacing:13px; transform:rotate(-9deg); z-index:12; }

/* --------------------------------------------------------------------------
   The journey / chapter pages
   -------------------------------------------------------------------------- */
.gs-journey::before {
  content: "";
  position:absolute; inset:0;
  background: linear-gradient(90deg,transparent 49.92%,rgba(83,65,43,.08) 50%,transparent 50.1%);
  pointer-events:none;
}
.gs-spine {
  width:1px;
  background: repeating-linear-gradient(to bottom,rgba(57,72,58,.45) 0 5px,transparent 5px 13px);
}
.gs-chapter-dot {
  width:20px; height:20px;
  border:1px solid var(--gs-oxblood);
  background:var(--gs-paper);
  box-shadow:0 0 0 7px rgba(169,130,69,.12);
}
.gs-chapter-dot::after { content:"✦"; position:absolute; inset:-1px; display:grid; place-items:center; color:var(--gs-gold); font-size:.56rem; }
.gs-chapter-kicker span {
  border-radius:50%;
  border:1px solid rgba(65,55,43,.55);
  background:rgba(251,245,230,.55);
  color:var(--gs-ink);
  box-shadow: inset 0 0 0 3px rgba(169,130,69,.08);
  font-family:Palatino,Georgia,serif;
}
.gs-chapter h2 { text-wrap:balance; }
.gs-chapter-copy > div:not(.gs-chapter-kicker) p { color:var(--gs-ink-soft); }
.gs-chapter-art { position:relative; }
.gs-chapter-art::before {
  content:"";
  position:absolute; inset:-24px -18px;
  border:1px solid rgba(92,74,52,.12);
  border-radius:46% 54% 48% 52% / 53% 46% 54% 47%;
  transform:rotate(-1deg);
  pointer-events:none;
}

/* Story collage becomes a packet of journal clippings */
.gs-collage { height:500px; }
.gs-photo {
  border:9px solid #eee0bd;
  border-bottom-width:32px;
  border-radius:3px;
  box-shadow:0 17px 30px rgba(48,39,27,.16);
  background-color:#a7aa93;
  filter:saturate(.72) sepia(.16);
}
.gs-photo.a { background:linear-gradient(145deg,#849184,#bec2a4); }
.gs-photo.b { background:linear-gradient(145deg,#b79877,#d2bea0); }
.gs-photo::before { background:rgba(248,236,206,.34); }
.gs-photo::after { background:rgba(72,76,63,.18); }
.gs-photo-caption { position:absolute; left:9px; right:9px; bottom:-25px; color:#4a4338; font:italic .66rem/1 Georgia,serif; text-align:center; z-index:4; }
.gs-quote-card {
  border:1px solid rgba(82,64,43,.2);
  border-radius:2px;
  background:#eadab5;
  box-shadow:var(--gs-shadow-soft);
  font-family:Palatino,Georgia,serif;
}
.gs-quote-card::before { content:"“"; position:absolute; left:11px; top:1px; color:rgba(106,63,60,.25); font:700 4.5rem/1 Georgia,serif; }
.gs-tiny-note { color:var(--gs-oxblood); }
.gs-quill-sketch { position:absolute; right:8%; bottom:8%; color:rgba(57,72,58,.55); font:400 4.4rem/1 Georgia,serif; transform:rotate(-32deg); }

/* Living Well is deliberately more ordered: a clean inserted field notebook */
.gs-planner-shell {
  border:1px solid rgba(59,72,58,.22);
  border-radius:7px;
  background:#f7f1df;
  box-shadow:12px 17px 0 rgba(88,72,51,.08), var(--gs-shadow-soft);
  transform:rotate(.6deg);
}
.gs-planner-shell::before { content:""; position:absolute; left:17px; top:0; bottom:0; width:1px; background:rgba(123,71,65,.13); }
.gs-planner-brand { font-family:Palatino,Georgia,serif; }
.gs-pill { border-radius:3px; background:rgba(102,115,91,.14); color:var(--gs-green-deep); }
.gs-today-card,.gs-mini-card { border-radius:4px; border:1px solid rgba(73,65,52,.12); box-shadow:none; background:#fffaf0; }

/* Wellness cards become field-note cards */
.gs-well-card {
  position:relative;
  border:1px solid rgba(82,64,43,.18);
  border-radius:5px 10px 4px 8px;
  background:#f4e7c8;
  box-shadow:var(--gs-shadow-soft);
}
.gs-well-card::before { content:""; position:absolute; left:15px; right:18px; top:12px; height:1px; background:rgba(123,71,65,.23); transform:rotate(-1deg); }
.gs-well-card:nth-child(2n) { transform:rotate(1deg); }
.gs-well-card:nth-child(2n+1) { transform:rotate(-.6deg); }
.gs-well-icon { color:var(--gs-oxblood); }
.gs-well-card h3 { font-family:Palatino,Georgia,serif; }

/* Spirituality: a quiet celestial journal page */
.gs-quiet-art {
  border:1px solid rgba(72,61,47,.22);
  border-radius:7px;
  background:linear-gradient(#263934 0%,#53625a 43%,#bda87e 100%);
  box-shadow:var(--gs-shadow);
}
.gs-quiet-art::after { content:""; position:absolute; inset:13px; border:1px solid rgba(245,231,197,.18); pointer-events:none; }
.gs-night-page .gs-sun,.gs-quiet-art .gs-sun { width:74px; height:74px; background:#d9bd78; box-shadow:0 0 0 1px rgba(238,215,163,.38),0 0 35px rgba(217,189,120,.18); }
.gs-quiet-art .gs-horizon { background:rgba(239,220,181,.24); }
.gs-quiet-art .gs-bench { background:#26271f; }
.gs-quiet-note { color:#e7d4a9; }
.gs-stars i { position:absolute; width:3px; height:3px; border-radius:50%; background:#f1dfad; box-shadow:0 0 7px rgba(241,223,173,.5); }
.gs-stars i:nth-child(1){left:14%;top:15%}.gs-stars i:nth-child(2){left:31%;top:24%}.gs-stars i:nth-child(3){left:48%;top:12%}.gs-stars i:nth-child(4){right:18%;top:28%}.gs-stars i:nth-child(5){right:34%;top:18%}

/* --------------------------------------------------------------------------
   Standalone page elements
   -------------------------------------------------------------------------- */
.gs-page-hero.gs-journal-page-hero,
.gs-dynamic-page .gs-page-hero,
.gs-story-hero {
  position:relative;
}
.gs-page-hero.gs-journal-page-hero::after,
.gs-dynamic-page .gs-page-hero::after,
.gs-story-hero::after {
  content:"";
  display:block;
  width:min(560px,78%);
  height:12px;
  margin-top:36px;
  border-top:1px solid rgba(65,55,43,.36);
  border-radius:50%;
  transform:rotate(-1deg);
}
.gs-page-sigil {
  position:absolute; right:2%; top:72px;
  color:rgba(169,130,69,.43);
  font:700 4.5rem/1 Georgia,serif;
  transform:rotate(14deg);
}
.gs-page-section {
  position:relative;
  padding-top:105px;
}
.gs-native-card-grid .gs-well-card { min-height:220px; }

.gs-quote-band.gs-journal-quote-band,
.gs-quote-band {
  position:relative;
  overflow:visible;
  border:1px solid rgba(83,65,43,.23);
  border-radius:3px 7px 2px 6px;
  background:#ead8ae;
  color:var(--gs-ink);
  box-shadow:var(--gs-shadow-soft);
  transform:rotate(-.35deg);
}
.gs-quote-band::before {
  content:""; position:absolute; top:-12px; left:12%; width:86px; height:24px;
  background:rgba(181,153,98,.30); transform:rotate(-4deg);
}
.gs-quote-band blockquote,.gs-quote-band p { color:var(--gs-ink) !important; font-family:Palatino,Georgia,serif !important; }

.gs-closing-card {
  position:relative;
  border:1px solid #1e211c;
  border-radius:9px 16px 10px 14px;
  background:
    radial-gradient(circle at 18% 20%,rgba(222,197,139,.07),transparent 23%),
    linear-gradient(145deg,#334033,#263128 65%,#202821);
  color:#f1e4c6;
  box-shadow:0 24px 55px rgba(40,31,21,.22), inset 0 0 0 5px rgba(169,130,69,.08);
}
.gs-closing-card::before {
  content:"✦  KEEP LOOKING  ✦";
  position:absolute; right:42px; top:32px;
  color:rgba(222,197,139,.58);
  font:700 .66rem/1 ui-sans-serif,system-ui,sans-serif;
  letter-spacing:.18em;
}
.gs-closing-card p { color:rgba(244,231,200,.78); }
.gs-closing-card .gs-button { border-color:#ead9ad; background:#ead9ad; color:#2e332b !important; }
.gs-closing-card .gs-button.is-ghost { background:transparent; color:#ead9ad !important; }

/* --------------------------------------------------------------------------
   Standard Page + Story/Post layouts: readable journal documents
   -------------------------------------------------------------------------- */
.gs-journal-document,
.gs-journal-story {
  position:relative;
  margin-top:54px;
  margin-bottom:80px;
  padding-left:clamp(22px,5vw,72px);
  padding-right:clamp(22px,5vw,72px);
  border:1px solid rgba(76,61,43,.19);
  background:rgba(248,239,215,.74);
  box-shadow:var(--gs-shadow-soft);
}
.gs-journal-document::before,
.gs-journal-story::before {
  content:"";
  position:absolute; left:34px; top:0; bottom:0; width:1px;
  background:rgba(123,71,65,.13);
  pointer-events:none;
}
.gs-dynamic-content,
.gs-story-content {
  color:#443e34;
  font-family:Palatino,"Palatino Linotype",Georgia,serif;
}
.gs-dynamic-content {
  max-width:820px !important;
  margin-bottom:100px;
  font-size:1.16rem;
  line-height:1.82;
}
.gs-dynamic-content h2,.gs-dynamic-content h3 { margin-top:1.65em; }
.gs-story-featured-wrap { position:relative; }
.gs-story-featured-image {
  border:10px solid #eadbb7;
  border-bottom-width:30px;
  border-radius:3px !important;
  box-shadow:var(--gs-shadow) !important;
  filter:saturate(.8) sepia(.10);
}
.gs-story-content { font-size:1.2rem; line-height:1.9; }
.gs-story-content blockquote {
  position:relative;
  padding:25px 30px 25px 38px;
  border-left:2px solid var(--gs-oxblood);
  background:rgba(232,214,175,.42);
  color:#443e34;
}
.gs-story-content blockquote::before { content:"“"; position:absolute; left:9px; top:3px; color:rgba(106,63,60,.24); font:700 4rem/1 Georgia,serif; }
.gs-cs-meta { color:var(--gs-muted); font-family:Georgia,serif; font-style:italic; }
.gs-story-aside .gs-paper-card {
  border:1px solid rgba(82,64,43,.18);
  border-radius:3px;
  background:#e9d7ad;
  box-shadow:var(--gs-shadow-soft);
  transform:rotate(1.2deg);
}

/* --------------------------------------------------------------------------
   Footer: closing the book
   -------------------------------------------------------------------------- */
.gs-site-footer.gs-journal-footer,
.gs-site-footer {
  position:relative;
  background:
    radial-gradient(circle at 20% 10%,rgba(181,148,82,.08),transparent 22%),
    linear-gradient(145deg,#2c2921,#24271f 58%,#1d211c);
  color:#efe1c0;
  border-top:6px solid #4b3a29;
  box-shadow:inset 0 7px 0 rgba(169,130,69,.08),inset 0 0 0 1px rgba(238,217,170,.08);
}
.gs-footer-ornament {
  position:absolute; top:25px; left:50%; transform:translateX(-50%);
  display:flex; align-items:center; gap:14px;
  color:rgba(217,189,120,.55);
}
.gs-footer-ornament i { display:block; width:74px; height:1px; background:rgba(217,189,120,.35); }
.gs-footer-wordmark { font-family:Palatino,Georgia,serif; font-size:2.2rem; }
.gs-footer-links h2,.gs-footer-note h2 { color:rgba(239,225,192,.58); }
.gs-footer-note p { color:rgba(239,225,192,.8); font-family:Palatino,Georgia,serif; font-style:italic; }
.gs-footer-bottom { border-top-color:rgba(239,225,192,.14); }

/* --------------------------------------------------------------------------
   Forms, lists, cards and archive surfaces inherit the journal language
   -------------------------------------------------------------------------- */
.gs-form-card,.gs-story-card,.gs-about-note,.gs-empty-stories,.gs-wide-note {
  border:1px solid rgba(82,64,43,.16);
  border-radius:5px 12px 5px 10px;
  background:#f6ecd3;
  box-shadow:var(--gs-shadow-soft);
}
.gs-form input[type="text"],.gs-form input[type="email"],.gs-form textarea {
  border-radius:4px;
  border-color:rgba(82,64,43,.22);
  background:#fbf4e2;
}
.gs-story-card { overflow:visible; }
.gs-story-card-media { border-radius:4px 4px 0 0; filter:saturate(.82) sepia(.1); }
.gs-pagination .page-numbers { border-radius:3px; }

/* --------------------------------------------------------------------------
   Cornerstone's native content wrappers
   -------------------------------------------------------------------------- */
.gs-native-element { color:var(--gs-ink); }
.gs-native-header { min-height:84px; }
.gs-native-footer { width:100%; }
.gs-native-element .gs-card-eyebrow { color:var(--gs-oxblood) !important; }
.gs-cs-lead,.gs-cs-body,.gs-cs-card-copy { color:var(--gs-ink-soft) !important; }

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 980px) {
  .gs-hero { grid-template-columns:1fr; min-height:0; gap:10px; }
  .gs-story-map.gs-journal-scene { min-height:650px; width:min(640px,100%); margin-inline:auto; }
  .gs-hero-copy::before { left:-14px; top:-56px; }
  .gs-open-journal { inset:64px 26px 65px 26px; }
  .gs-fountain-pen { right:-4px; bottom:52px; }
  .gs-loose-note { right:10px; }
  .gs-journey::before { display:none; }
}

@media (max-width: 700px) {
  .gs-wordmark { padding-left:20px; font-size:1.55rem; }
  .gs-native-header { padding:12px 0 16px; }
  .gs-native-nav { border-top:1px solid rgba(70,58,42,.16); padding-top:14px; }
  .gs-hero { padding-top:72px; }
  .gs-hero h1 { font-size:clamp(3.9rem,16vw,5.8rem); }
  .gs-story-map.gs-journal-scene { min-height:560px; transform:none !important; }
  .gs-open-journal { inset:74px 2px 70px 0; }
  .gs-journal-page { padding:42px 20px 30px; }
  .gs-journal-date { font-size:.5rem; }
  .gs-journal-title { font-size:1.36rem; }
  .gs-journal-margin { left:24px; bottom:30px; font-size:.65rem; }
  .gs-compass-mark { width:48px; height:48px; right:14px; bottom:25px; }
  .gs-map-fragment { inset:30px 8px 82px 8px; }
  .gs-journal-quote { left:16px; right:12px; bottom:28px; font-size:.68rem; }
  .gs-botanical-sketch { transform:scale(.75) rotate(14deg); transform-origin:top right; }
  .gs-loose-note { top:38px; right:-2px; width:132px; padding:12px; }
  .gs-loose-note strong { font-size:.82rem; }
  .gs-fountain-pen { width:238px; height:15px; right:-25px; bottom:55px; }
  .gs-pen-nib { right:-36px; width:42px; height:29px; }
  .gs-ink-bottle { left:2px; bottom:43px; width:54px; height:56px; }
  .gs-celestial-sketch { left:4%; letter-spacing:7px; }
  .gs-photo-caption { font-size:.58rem; }
  .gs-closing-card::before { position:static; display:block; margin-bottom:22px; }
  .gs-journal-document,.gs-journal-story { margin-top:25px; padding-left:26px; padding-right:22px; }
  .gs-journal-document::before,.gs-journal-story::before { left:13px; }
  .gs-page-sigil { top:38px; right:0; font-size:2.8rem; }
}

@media (max-width: 430px) {
  .gs-story-map.gs-journal-scene { min-height:515px; }
  .gs-open-journal { inset:70px -8px 74px -8px; transform:rotate(1deg) scale(.96); }
  .gs-journal-page { padding-left:17px; padding-right:13px; }
  .gs-journal-title { font-size:1.15rem; }
  .gs-compass-mark { display:none; }
  .gs-loose-note { right:-2px; width:116px; top:33px; }
  .gs-loose-note small { font-size:.48rem; }
  .gs-loose-note strong { font-size:.72rem; }
  .gs-fountain-pen { width:210px; right:-28px; }
  .gs-collage { height:470px; }
}

@media (prefers-reduced-motion: reduce) {
  .gs-open-journal,.gs-fountain-pen,.gs-loose-note,.gs-well-card { transform:none !important; }
}

/* ========================================================================== 
   STORYBOOK ADVENTURE EDITION — 4.2.1
   A brighter, playful storybook layer with clearer high-contrast closing treatments.
   Element IDs and names are unchanged from 4.0/4.1.
   ========================================================================== */

:root {
  --gs-paper: #fbf4df;
  --gs-paper-2: #f3e5bd;
  --gs-paper-deep: #e7cf91;
  --gs-white: #fffaf0;
  --gs-ink: #2f2b35;
  --gs-ink-soft: #514a58;
  --gs-muted: #726a73;
  --gs-green: #6f8b67;
  --gs-green-deep: #3f6249;
  --gs-sage: #d8e0bc;
  --gs-clay: #bd5b68;
  --gs-oxblood: #a54d61;
  --gs-gold: #d49a42;
  --gs-blue: #6794a8;
  --gs-plum: #735b7c;
  --gs-sky: #cfe4e7;
  --gs-peach: #f2bea0;
  --gs-line: rgba(76, 59, 68, .18);
  --gs-shadow: 0 24px 54px rgba(72, 52, 55, .15);
  --gs-shadow-soft: 0 10px 26px rgba(72, 52, 55, .10);
  --gs-radius: 20px;
}

body.great-story-site,
.gs-home,
.gs-cs-layout {
  background-color: var(--gs-paper);
  background-image:
    radial-gradient(circle at 8% 12%, rgba(212,154,66,.12) 0 3px, transparent 3.5px),
    radial-gradient(circle at 91% 26%, rgba(103,148,168,.10) 0 2px, transparent 2.7px),
    radial-gradient(circle at 42% 72%, rgba(165,77,97,.07) 0 2px, transparent 2.5px),
    linear-gradient(94deg, rgba(255,255,255,.20), transparent 35%, rgba(255,255,255,.15) 70%, transparent);
  background-size: 84px 84px, 92px 92px, 74px 74px, 100% 100%;
  color: var(--gs-ink);
}

body.great-story-site {
  font-family: "Alegreya", Georgia, serif;
  font-size: 18px;
  line-height: 1.68;
}

body.great-story-site h1,
body.great-story-site h2,
body.great-story-site h3,
.gs-cs-display,
.gs-cs-h2,
.gs-cs-card-title,
.gs-journal-title,
.gs-wordmark,
.gs-planner-brand {
  font-family: "Bree Serif", Georgia, serif !important;
  font-weight: 400 !important;
  letter-spacing: -.025em !important;
}

.gs-margin-note,
.gs-scribble,
.gs-tiny-note,
.gs-quiet-note,
.gs-topic-note,
.gs-quiet-handnote,
.gs-journal-margin,
.gs-journal-quote,
.gs-loose-note,
.gs-photo-caption {
  font-family: "Kalam", "Segoe Print", cursive !important;
}

.gs-eyebrow,
.gs-chapter-kicker,
.gs-card-eyebrow,
.gs-cs-eyebrow,
.gs-cs-card-eyebrow,
.gs-journal-date {
  font-family: "Bree Serif", Georgia, serif !important;
  text-transform: none !important;
  letter-spacing: .055em !important;
  color: var(--gs-plum) !important;
}

.gs-eyebrow::before,
.gs-cs-eyebrow::before {
  width: 34px;
  height: 3px;
  border-radius: 70% 35% 65% 40%;
  background: var(--gs-gold);
  box-shadow: 8px 4px 0 -1px rgba(189,91,104,.55);
  transform: rotate(-4deg);
}
.gs-eyebrow::after,
.gs-cs-eyebrow::after {
  content: "✦  ·  ✧";
  color: var(--gs-blue);
  font-size: .8rem;
}

/* Buttons: illustrated-label feel instead of ink plaques. */
.gs-header-cta,
.gs-button {
  border: 2px solid var(--gs-ink);
  border-radius: 15px 22px 14px 20px;
  background: var(--gs-clay);
  color: #fffaf0 !important;
  box-shadow: 4px 5px 0 var(--gs-ink);
  font-family: "Bree Serif", Georgia, serif;
  font-weight: 400;
  letter-spacing: 0;
}
.gs-header-cta::before,
.gs-button::before {
  content: "✦";
  display: inline-block;
  margin-right: .45em;
  color: #ffe5a4;
  transform: rotate(-9deg);
}
.gs-header-cta::after,
.gs-button::after { display:none; }
.gs-header-cta:hover,
.gs-button:hover {
  transform: translate(-2px,-2px) rotate(-1deg);
  box-shadow: 6px 7px 0 var(--gs-ink);
}
.gs-button.is-ghost {
  background: var(--gs-white);
  color: var(--gs-ink) !important;
  border-color: var(--gs-blue);
  box-shadow: 4px 5px 0 var(--gs-blue);
}
.gs-button.is-ghost::before { color: var(--gs-gold); }

.gs-text-link {
  font-family: "Bree Serif", Georgia, serif;
  font-size: 1.08rem;
}
.gs-text-link::after {
  height: 4px;
  border-radius: 50%;
  background: linear-gradient(90deg,var(--gs-gold),var(--gs-clay),transparent);
  transform: rotate(-1.5deg) scaleX(.96);
}

/* Header: light storybook title-page treatment. */
.gs-site-header,
.gs-preview-header {
  background: rgba(255,250,240,.94) !important;
  border-bottom: 0 !important;
  box-shadow: 0 6px 0 rgba(212,154,66,.13), 0 12px 30px rgba(65,45,52,.06) !important;
}
.gs-native-header::before,
.gs-header-inner::before {
  bottom: 3px;
  height: 3px;
  background: repeating-linear-gradient(90deg,var(--gs-gold) 0 16px,transparent 16px 24px,var(--gs-blue) 24px 35px,transparent 35px 43px);
  opacity:.55;
}
.gs-wordmark {
  padding-left: 27px;
  font-size: 2rem;
  color: var(--gs-ink) !important;
}
.gs-wordmark-sigil {
  color: var(--gs-clay);
  font-size: 1rem;
  top: -1px;
  animation: gs-twinkle 4.5s ease-in-out infinite;
}
.gs-wordmark-line {
  width: 87px;
  height: 4px;
  margin-top: 5px;
  border-radius: 50%;
  background: var(--gs-gold);
  transform: rotate(-2.5deg);
  box-shadow: 17px 4px 0 -1px var(--gs-blue);
}
.gs-nav-list a {
  font-family: "Bree Serif", Georgia, serif;
  font-weight:400;
  font-size:1rem;
}
.gs-nav-list li:nth-child(1) a::after { background:var(--gs-clay); }
.gs-nav-list li:nth-child(2) a::after { background:var(--gs-green); }
.gs-nav-list li:nth-child(3) a::after { background:var(--gs-gold); }
.gs-nav-list li:nth-child(4) a::after { background:var(--gs-blue); }
.gs-nav-list li:nth-child(5) a::after { background:var(--gs-plum); }
.gs-nav-list a::after { height:3px; border-radius:50%; }
.gs-header-penline { display:none; }

/* Hero: an illustrated storybook opening, not a desk journal. */
.gs-hero {
  min-height: 760px;
  gap: 54px;
  padding-top: 76px;
  padding-bottom: 86px;
}
.gs-hero-copy::before {
  content: "✦";
  left: -34px;
  top: -26px;
  color: rgba(212,154,66,.30);
  font: 400 4.8rem/1 "Bree Serif", serif;
  transform: rotate(-8deg);
}
.gs-hero h1 {
  max-width: 720px;
  font-size: clamp(4.4rem,7.3vw,7.9rem);
  line-height: .92;
  color: var(--gs-ink);
  text-shadow: 3px 4px 0 rgba(212,154,66,.12);
}
.gs-lead { font-size:1.18rem; color:var(--gs-ink-soft); }

.gs-story-map.gs-journal-scene { min-height: 615px; }
.gs-journal-scene::before {
  left:10%; right:8%; bottom:8%; height:12%;
  background:rgba(83,62,69,.13);
  filter:blur(20px);
}
.gs-celestial-sketch {
  color: var(--gs-gold) !important;
  font-size:1.4rem !important;
}

.gs-open-journal {
  inset: 55px 16px 58px 0;
  transform: rotate(1deg);
  filter: drop-shadow(0 20px 17px rgba(72,52,55,.14));
}
.gs-open-journal::before {
  inset: -11px -10px -14px;
  border: 5px solid #4a4350;
  border-radius: 25px 35px 31px 24px;
  background: linear-gradient(135deg,#7fa5a9,#a96b78 52%,#d6a34d);
  transform: rotate(-.4deg);
}
.gs-open-journal::after {
  width:10px;
  background:linear-gradient(90deg,rgba(61,52,66,.10),rgba(255,255,255,.42),rgba(61,52,66,.11));
}
.gs-journal-page {
  padding: 47px 34px 34px;
  background-color:#fff8e7;
  background-image:
    radial-gradient(circle at 20% 15%,rgba(212,154,66,.10) 0 4px,transparent 4.5px),
    radial-gradient(circle at 82% 76%,rgba(103,148,168,.09) 0 3px,transparent 3.5px),
    linear-gradient(105deg,rgba(255,255,255,.45),transparent 50%);
  border:1px solid rgba(88,65,78,.11);
}
.gs-journal-page.is-left { border-radius:22px 3px 8px 27px; }
.gs-journal-page.is-right { border-radius:3px 25px 28px 7px; }
.gs-journal-date { color:var(--gs-clay) !important; font-size:.7rem; }
.gs-journal-title {
  max-width:260px;
  margin-top:19px;
  font-size:2.35rem;
  line-height:1.02;
  color:var(--gs-ink);
  transform:rotate(-1deg);
}
.gs-journal-rule {
  height:4px !important;
  border-radius:50%;
  background:rgba(103,148,168,.22) !important;
  transform:rotate(-.8deg);
}
.gs-journal-rule:nth-of-type(even) { background:rgba(212,154,66,.24) !important; }
.gs-compass-mark {
  border-color:var(--gs-plum) !important;
  color:var(--gs-plum) !important;
}
.gs-journal-margin { color:var(--gs-clay) !important; font-size:1.05rem; }
.gs-map-fragment path { stroke:var(--gs-green-deep) !important; stroke-width:3 !important; }
.gs-map-fragment .dashed { stroke:var(--gs-clay) !important; }
.gs-map-fragment circle { fill:var(--gs-gold) !important; stroke:var(--gs-ink) !important; }
.gs-journal-quote {
  color:var(--gs-plum) !important;
  font-size:1.1rem !important;
  transform:rotate(-3deg);
}
.gs-botanical-sketch { filter:hue-rotate(38deg) saturate(.85); }

/* Turn the desk props into supporting storybook flourishes. */
.gs-ink-bottle {
  transform:scale(.72) rotate(5deg) !important;
  opacity:.76;
}
.gs-fountain-pen {
  transform:rotate(-19deg) scale(.87) !important;
  opacity:.82;
}
.gs-loose-note {
  background:#fff2ad !important;
  border:2px dashed rgba(165,77,97,.42) !important;
  border-radius:8px 18px 9px 15px !important;
  transform:rotate(-5deg) !important;
  box-shadow:5px 6px 0 rgba(103,148,168,.18) !important;
}
.gs-loose-note::before {
  content:"★";
  position:absolute;
  right:9px; top:6px;
  color:var(--gs-clay);
  font-size:.9rem;
}

/* Journey becomes a winding illustrated tale. */
.gs-journey { position:relative; }
.gs-spine {
  width:5px !important;
  background: repeating-linear-gradient(180deg,var(--gs-gold) 0 13px,transparent 13px 22px,var(--gs-blue) 22px 33px,transparent 33px 45px) !important;
  border-radius:50%;
  opacity:.58;
}
.gs-chapter-dot {
  width:24px !important; height:24px !important;
  border:3px solid var(--gs-ink) !important;
  background:var(--gs-gold) !important;
  box-shadow:3px 3px 0 var(--gs-clay);
  transform:rotate(8deg);
}
.gs-chapter:nth-of-type(2) .gs-chapter-dot { background:var(--gs-green) !important; }
.gs-chapter:nth-of-type(3) .gs-chapter-dot { background:var(--gs-blue) !important; }
.gs-chapter:nth-of-type(4) .gs-chapter-dot { background:var(--gs-plum) !important; }
.gs-chapter-kicker span {
  display:inline-grid;
  place-items:center;
  min-width:44px;
  height:38px;
  padding:0 9px;
  margin-right:8px;
  background:var(--gs-gold);
  color:var(--gs-ink);
  border:2px solid var(--gs-ink);
  border-radius:13px 18px 11px 17px;
  box-shadow:3px 3px 0 var(--gs-ink);
  transform:rotate(-3deg);
}
.gs-chapter:nth-of-type(2) .gs-chapter-kicker span { background:var(--gs-sage); }
.gs-chapter:nth-of-type(3) .gs-chapter-kicker span { background:var(--gs-sky); }
.gs-chapter:nth-of-type(4) .gs-chapter-kicker span { background:#dfcce8; }
.gs-chapter h2 { font-size:clamp(3rem,5vw,5rem) !important; line-height:.98 !important; }
.gs-chapter-copy p { font-size:1.08rem; }

/* Photo/story collage feels like pages and illustrations pinned into a book. */
.gs-collage,
.gs-journal-collage { overflow:visible !important; }
.gs-photo,
.gs-quote-card {
  border:2px solid var(--gs-ink) !important;
  box-shadow:6px 7px 0 rgba(47,43,53,.16) !important;
}
.gs-photo.a { background:linear-gradient(145deg,#cfe4e7,#7ba3a6) !important; transform:rotate(-5deg) !important; }
.gs-photo.b { background:linear-gradient(145deg,#f6d69b,#d07e78) !important; transform:rotate(5deg) !important; }
.gs-photo::after {
  content:"✦";
  position:absolute;
  top:12px; right:14px;
  font-family:"Bree Serif",serif;
  color:rgba(255,250,240,.85);
  font-size:1.5rem;
}
.gs-photo-caption { color:var(--gs-ink) !important; background:#fff8e7 !important; }
.gs-quote-card {
  background:#fff2ad !important;
  border-radius:9px 17px 8px 19px !important;
  font-family:"Kalam",cursive !important;
  color:var(--gs-ink) !important;
}
.gs-tiny-note { color:var(--gs-plum) !important; }
.gs-quill-sketch { color:var(--gs-clay) !important; }

/* Living Well: still calmer, but now clearly part of the same illustrated book. */
.gs-planner-shell {
  background:#fffaf0 !important;
  border:3px solid var(--gs-green-deep) !important;
  border-radius:22px 15px 25px 17px !important;
  box-shadow:8px 9px 0 rgba(63,98,73,.18) !important;
  transform:rotate(1deg);
}
.gs-planner-top { border-bottom-color:rgba(63,98,73,.18) !important; }
.gs-planner-brand { color:var(--gs-green-deep) !important; }
.gs-pill { background:var(--gs-sage) !important; color:var(--gs-green-deep) !important; }
.gs-today-card { background:#f3f1d1 !important; border-radius:15px 21px 13px 18px !important; }
.gs-mini-card { border-radius:14px 18px 12px 19px !important; }
.gs-mini-card:nth-child(1){ background:#eef2d6 !important; }
.gs-mini-card:nth-child(2){ background:#fff0c7 !important; }
.gs-mini-card:nth-child(3){ background:#e4f1f2 !important; }
.gs-mini-card:nth-child(4){ background:#f4e2e8 !important; }

/* Wellness cards: more like individual illustrated story tiles. */
.gs-wellness-stack { gap:18px !important; }
.gs-well-card {
  border:2px solid var(--gs-ink) !important;
  border-radius:18px 27px 16px 24px !important;
  box-shadow:5px 6px 0 rgba(47,43,53,.13) !important;
  background:#fffaf0 !important;
}
.gs-well-card:nth-child(1) { background:#fff0c5 !important; transform:rotate(-1.5deg); }
.gs-well-card:nth-child(2) { background:#e2efd5 !important; transform:rotate(1.3deg); }
.gs-well-card:nth-child(3) { background:#dfeff1 !important; transform:rotate(-.8deg); }
.gs-well-card:nth-child(4) { background:#f2dce4 !important; transform:rotate(1.2deg); }
.gs-well-icon {
  width:45px !important; height:45px !important;
  border:2px solid var(--gs-ink) !important;
  border-radius:50% 44% 52% 40% !important;
  background:#fffaf0 !important;
  color:var(--gs-plum) !important;
  box-shadow:2px 3px 0 var(--gs-ink);
}

/* Spirituality: twilight storybook illustration instead of severe dark page. */
.gs-night-page,
.gs-quiet-art {
  background:linear-gradient(180deg,#879eaf 0%,#b4b7b0 52%,#e9cf9b 100%) !important;
  border:3px solid var(--gs-ink) !important;
  border-radius:30px 18px 34px 22px !important;
  box-shadow:8px 9px 0 rgba(47,43,53,.14) !important;
}
.gs-stars i { background:#fff6c9 !important; box-shadow:0 0 0 2px rgba(255,246,201,.15); }
.gs-sun { background:#ffd16e !important; box-shadow:0 0 0 10px rgba(255,209,110,.13) !important; }
.gs-horizon { border-color:rgba(47,43,53,.43) !important; }
.gs-quiet-note { color:#fffaf0 !important; font-size:1.12rem !important; }

/* Closing card: a bright final page. */
.gs-closing-card {
  background:#fff2ad !important;
  border:3px solid var(--gs-ink) !important;
  border-radius:31px 19px 28px 22px !important;
  box-shadow:9px 10px 0 rgba(115,91,124,.20) !important;
  transform:rotate(-.35deg);
}
.gs-closing-card::before {
  content:"✦";
  position:absolute;
  left:7%; top:-25px;
  font:400 3rem/1 "Bree Serif",serif;
  color:var(--gs-clay);
  transform:rotate(-12deg);
}
.gs-closing-card::after {
  content:"no tidy ending needed";
  position:absolute;
  right:7%; bottom:-19px;
  padding:5px 11px;
  background:#dfeff1;
  border:2px solid var(--gs-ink);
  border-radius:8px 13px 7px 12px;
  font:700 1rem/1.2 "Kalam",cursive;
  color:var(--gs-plum);
  transform:rotate(3deg);
}

/* Standalone page / post elements. */
.gs-page-hero,
.gs-journal-page-hero {
  background:#fffaf0 !important;
  border:2px solid var(--gs-ink) !important;
  border-radius:24px 35px 21px 31px !important;
  box-shadow:7px 8px 0 rgba(103,148,168,.15) !important;
}
.gs-page-sigil { color:var(--gs-gold) !important; font-size:2.2rem !important; }
.gs-native-card-grid .gs-well-card:nth-child(n) { min-height:220px; }
.gs-native-quote,
.gs-journal-quote-card {
  background:#fff2ad !important;
  border:2px solid var(--gs-ink) !important;
  border-radius:13px 23px 12px 19px !important;
  box-shadow:6px 7px 0 rgba(165,77,97,.18) !important;
}
.gs-native-cta {
  background:#dfeff1 !important;
  border:3px solid var(--gs-ink) !important;
  border-radius:28px 17px 31px 19px !important;
  box-shadow:8px 9px 0 rgba(212,154,66,.18) !important;
}
.gs-story-layout,
.gs-standard-layout {
  background:#fffaf0 !important;
  border:2px solid rgba(47,43,53,.18) !important;
  box-shadow:0 22px 50px rgba(72,52,55,.09) !important;
}
.gs-story-layout h1,
.gs-standard-layout h1 { color:var(--gs-ink) !important; }
.gs-story-layout blockquote {
  border-left:0 !important;
  background:#fff2ad;
  padding:24px 30px;
  border-radius:11px 22px 10px 18px;
  transform:rotate(-.5deg);
  font-family:"Kalam",cursive;
}

/* Footer feels like the cheerful back cover, not a dark leather binding. */
.gs-site-footer,
.gs-native-footer {
  background:linear-gradient(135deg,#4e5f66,#67546e) !important;
  color:#fff7e3 !important;
}
.gs-native-footer::before,
.gs-site-footer::before {
  content:"✦   ·   ✧   ·   ✦";
  display:block;
  text-align:center;
  padding-top:20px;
  color:#f4cf7a;
  letter-spacing:.35em;
}
.gs-site-footer a,
.gs-native-footer a { color:#fff7e3 !important; }
.gs-site-footer .gs-wordmark,
.gs-native-footer .gs-wordmark { color:#fff7e3 !important; }

@keyframes gs-twinkle {
  0%,100% { transform:rotate(12deg) scale(1); opacity:.8; }
  50% { transform:rotate(25deg) scale(1.18); opacity:1; }
}

@media (prefers-reduced-motion: reduce) {
  .gs-wordmark-sigil { animation:none; }
}

@media (max-width: 980px) {
  .gs-hero { min-height:0; padding-top:54px; }
  .gs-hero h1 { font-size:clamp(3.7rem,13vw,6rem); }
  .gs-story-map.gs-journal-scene { min-height:560px; }
}

@media (max-width: 640px) {
  body.great-story-site { font-size:17px; }
  .gs-hero h1 { font-size:clamp(3.25rem,16vw,5rem); }
  .gs-story-map.gs-journal-scene { min-height:470px; }
  .gs-open-journal { inset:36px 0 55px; }
  .gs-journal-page { padding:32px 20px 25px; }
  .gs-journal-title { font-size:1.65rem; }
  .gs-loose-note { display:none; }
  .gs-closing-card::after { position:static; display:inline-block; margin-top:22px; }
}


/* ========================================================================== 
   4.2.1 — COPY + CONTRAST REFINEMENT
   The closing panel is light, so force a true dark-on-light treatment and
   remove inherited cream text/button colors from the older dark-card layer.
   ========================================================================== */
.gs-closing-card,
.gs-closing-card h2,
.gs-closing-card p,
.gs-closing-card .gs-eyebrow {
  color: var(--gs-ink) !important;
}
.gs-closing-card p {
  color: #403a45 !important;
}
.gs-closing-card .gs-button {
  background: var(--gs-oxblood) !important;
  color: #fffaf0 !important;
  border-color: var(--gs-ink) !important;
  box-shadow: 4px 5px 0 var(--gs-ink) !important;
}
.gs-closing-card .gs-button::before {
  color: #ffe7a8 !important;
}
.gs-closing-card .gs-button.is-ghost {
  background: #fffaf0 !important;
  color: var(--gs-ink) !important;
  border-color: var(--gs-ink) !important;
  box-shadow: 4px 5px 0 var(--gs-ink) !important;
}
.gs-closing-card .gs-button.is-ghost::before {
  color: var(--gs-gold) !important;
}
.gs-closing-card::after {
  color: #47354f !important;
  background: #dfeff1 !important;
  border-color: var(--gs-ink) !important;
}
