:root{font-family:Georgia,'Times New Roman',serif;background:#142820;color:#24352b;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid #ecbe75;outline-offset:4px}button{cursor:pointer}.garden-app{position:relative;isolation:isolate;min-height:100svh;overflow:hidden;display:flex;flex-direction:column}.visual{position:fixed;z-index:-4;inset:0;background-image:var(--scene-image);background-position:var(--focus);background-size:cover;background-repeat:no-repeat;transform:scale(1.025);animation:scene-reveal 1.25s cubic-bezier(.17,.67,.35,1) both}.scene-vignette{position:fixed;z-index:-3;inset:0;background:linear-gradient(90deg,rgba(9,29,24,.60) 0%,rgba(13,29,24,.36) 31%,rgba(10,31,26,.10) 66%,rgba(10,28,24,.20) 100%),linear-gradient(180deg,rgba(10,30,23,.62) 0%,transparent 17%,transparent 76%,rgba(9,26,21,.75) 100%);pointer-events:none}.grain{position:fixed;z-index:-2;inset:0;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' seed='7' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.48'/%3E%3C/svg%3E")}.skip{position:absolute;left:12px;top:-60px;z-index:50;background:#fff8ed;color:#173628;padding:12px}.skip:focus{top:12px}.masthead{padding:29px clamp(22px,4vw,74px);display:flex;align-items:center;justify-content:space-between;gap:25px;color:#fff7e8}.logo{display:flex;align-items:center;gap:13px;color:inherit;background:none;border:0;text-align:left;padding:0;white-space:nowrap}.logo-mark{font-size:43px;line-height:1;color:#eabf8e;text-shadow:0 3px 15px #37261980}.logo-words{font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:700;letter-spacing:.24em;display:flex;flex-direction:column;gap:6px}.logo-words small{font-size:8px;letter-spacing:.19em;font-weight:400;color:#f6e0b9}.nav-actions{display:flex;align-items:center;gap:19px}.nav-link{border:0;color:#fff8e8;background:none;padding:10px 0;font-family:Arial,sans-serif;font-size:11px;letter-spacing:.03em}.nav-link:hover{text-decoration:underline;text-underline-offset:5px}.nav-separator{height:19px;width:1px;background:#fff7e84c}.layout{display:grid;grid-template-columns:minmax(0,560px) minmax(230px,1fr);gap:clamp(22px,3.7vw,80px);align-items:start;padding:clamp(30px,4vw,64px) clamp(22px,6vw,105px) 25px;flex:1;position:relative}.scene-location{position:absolute;left:calc(clamp(22px,6vw,105px) + 7px);top:9px;display:flex;align-items:center;gap:11px;color:#fff4df;text-transform:uppercase;letter-spacing:.27em;font:700 10px Arial,sans-serif;text-shadow:0 1px 9px #0008}.tiny-line{width:32px;height:1px;background:#efcf96}.story-card{background:linear-gradient(138deg,rgba(255,251,242,.975),rgba(246,237,223,.955));border:1px solid #fff8eabd;box-shadow:0 24px 80px #08150f8c,0 0 0 7px rgba(255,255,255,.08);backdrop-filter:blur(18px);padding:clamp(24px,3.2vw,47px) clamp(22px,3.3vw,47px) 25px;animation:card-rise .6s cubic-bezier(.21,.73,.33,1) both;max-width:560px}.top-note{font:700 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.21em;color:#957a58;display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.note-flower{color:#bb9167;font-size:23px;font-weight:400}.story-kicker{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:10px;font-weight:700;color:#9c7765;margin:0 0 11px}.story-card h1{font-size:clamp(38px,4.7vw,68px);line-height:1.05;font-weight:400;letter-spacing:-.045em;color:#243b32;margin:0 0 21px}.paragraph{color:#445247;font-size:clamp(14px,1.23vw,17px);line-height:1.72;margin:0 0 11px}.paragraph:last-child{margin-bottom:0}.choose-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#84745b;font:700 10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em;margin:30px 0 10px;padding-top:17px;border-top:1px solid #d9cfba}.choose-heading span:last-child{font-size:17px;color:#b49b73}.choices{display:grid;gap:8px}.choice{display:flex;align-items:center;gap:16px;width:100%;min-height:63px;border:1px solid #dcd7ca;background:#fffcf4b8;text-align:left;padding:10px 14px 10px 15px;color:#2a4738;transition:background .22s,transform .22s,border-color .22s,box-shadow .22s}.choice:hover,.choice:focus-visible{background:#edf1e5;border-color:#8b9f85;transform:translateX(5px);box-shadow:0 5px 15px #23392c10}.choice-index{font:700 10px Arial,sans-serif;letter-spacing:.06em;color:#9a997e}.choice-word{display:flex;flex-direction:column;gap:5px;flex:1}.choice-word strong{font:600 13px Arial,sans-serif}.choice-word small{font:italic 12px Georgia,serif;color:#7e8273}.choice-arrow{font-family:Arial,sans-serif;font-size:18px;color:#a78367}.story-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}.back-button,.restart-button{color:#6d7968;background:none;border:0;padding:7px 0;font:11px Arial,sans-serif;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#c1b9aa}.back-button:disabled{color:#a9aca4;text-decoration:none;cursor:default}.scene-aside{justify-self:end;align-self:end;display:flex;flex-direction:column;align-items:flex-end;gap:9px;margin-top:150px;margin-right:clamp(0px,3vw,40px);padding-bottom:40px;font:italic 17px Georgia,serif;color:#fff0d5;text-align:right;text-shadow:0 2px 15px #000c}.ambient-icon{font-size:35px;color:#f3ce9e}.aside-rule{width:70px;height:1px;background:#fae6c8a6;margin-top:4px}.footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px clamp(22px,4vw,74px) 25px;color:#fff3dd;font:11px Arial,sans-serif;text-shadow:0 1px 6px #08150fb0}.footer span:first-child{font-family:Georgia,serif;font-style:italic;font-size:13px}.modal-backdrop{position:fixed;inset:0;z-index:30;background:#0d211bbd;display:flex;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(6px)}.about-modal{position:relative;width:min(94vw,550px);background:#f8f0e2;color:#304336;padding:clamp(28px,5vw,54px);box-shadow:0 20px 100px #0008}.about-modal h2{font-size:clamp(30px,4vw,45px);font-weight:400;line-height:1.09;margin:12px 0 22px}.about-modal p:not(.story-kicker){line-height:1.7;font-size:16px}.modal-close{position:absolute;top:8px;right:13px;font:30px Georgia,serif;background:none;color:#455b4a;border:0}.modal-action{margin-top:10px;border:1px solid #4a7155;background:#224f39;color:#fff6e9;padding:15px 20px;font:12px Arial,sans-serif;letter-spacing:.04em}.modal-action:hover{background:#315f44}@keyframes card-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes scene-reveal{from{opacity:.6;transform:scale(1.075)}to{opacity:1;transform:scale(1.025)}}.reduce-motion *, .reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reduce-motion .visual{transform:none}@media(min-width:1500px){.layout{grid-template-columns:minmax(0,600px) 1fr;padding-top:55px}.story-card{max-width:600px}.paragraph{font-size:17px}}@media(max-width:950px){.layout{grid-template-columns:minmax(0,540px) 1fr;padding-left:28px;padding-right:28px}.scene-location{left:34px}.scene-aside{display:none}.scene-vignette{background:linear-gradient(90deg,#081e17a1,transparent 90%),linear-gradient(180deg,#081e17a1 0%,transparent 25%,#081e1799 100%)}}@media(max-width:700px){.garden-app{display:block;background:#152821}.visual{position:absolute;height:430px;inset:0 0 auto;background-position:var(--focus)}.scene-vignette{position:absolute;height:430px;inset:0 0 auto;background:linear-gradient(180deg,rgba(10,28,22,.62),rgba(10,28,22,.05) 35%,rgba(10,28,22,.12) 62%,#152821 100%)}.grain{position:absolute}.masthead{padding:17px 18px;position:relative;z-index:3}.logo-mark{font-size:35px}.logo-words{font-size:10px;letter-spacing:.13em}.logo-words small{font-size:7px;letter-spacing:.1em}.nav-actions{gap:9px}.nav-link{font-size:10px}.nav-actions .nav-link:first-child,.nav-separator{display:none}.layout{display:block;padding:245px 15px 25px}.scene-location{top:207px;left:20px;font-size:9px}.story-card{max-width:none;padding:26px 24px 19px;box-shadow:0 17px 55px #07180ba6}.story-card h1{font-size:clamp(40px,9vw,55px)}.paragraph{font-size:16px}.top-note{margin-bottom:19px}.choose-heading{margin-top:23px}.footer{padding:0 22px 25px;display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center}.footer span:first-child{font-size:13px}.footer span:last-child{color:#bfc7b8}}@media(max-width:360px){.masthead{padding:14px 13px}.logo-mark{font-size:29px}.logo-words{font-size:9px}.nav-link{font-size:9px}.layout{padding:245px 10px 25px}.story-card{padding:20px 18px}.story-card h1{font-size:38px}.paragraph{font-size:15px}.choice{gap:10px;padding:10px}.choice-word strong{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* HLG NARRATION CONTRAST V03 */
.story-card {
  background: #fffaf0;
  border: 1px solid #f3dfc2;
  box-shadow: 0 24px 80px rgba(5,18,12,.72), 0 0 0 2px rgba(65,46,28,.18);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.story-card h1 { color: #183126; }
.paragraph {
  color: #24352d;
  font-size: clamp(16px, 1.32vw, 18px);
  line-height: 1.82;
}
.story-kicker, .top-note { color: #695037; }
.choose-heading { color: #514535; border-top-color: #b9a88e; }
.choice {
  background: #fffdf8;
  border: 1.5px solid #8b947f;
  color: #183126;
  box-shadow: 0 2px 7px rgba(27,43,29,.07);
}
.choice:hover, .choice:focus-visible {
  background: #e5eee1;
  border-color: #365b41;
  box-shadow: 0 5px 17px rgba(18,51,29,.17);
}
.choice-word strong { color: #173428; font-size: 14px; }
.choice-word small { color: #4b5b4b; font-size: 13px; }
.choice-index { color: #4f5b45; }
.choice-arrow { color: #355a41; }
.back-button, .restart-button { color: #31533d; font-size: 12px; }
@media(max-width:700px) {
  .paragraph { font-size: 17px; line-height: 1.75; }
  .choice-word strong { font-size: 14px; }
}
