@font-face{font-family:'Lilita One';src:url('../fonts/LilitaOne-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Fredoka;src:url('../fonts/Fredoka-Variable.ttf') format('truetype');font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:Nunito;src:url('../fonts/Nunito-Variable.ttf') format('truetype');font-style:normal;font-weight:200 900;font-display:swap}
:root{--ink:#1d2b36;--red:#c0392b;--green:#1f7a4d;--gold:#e3a52f;--ice:#4f9bd0;--cream:#fbf8f2;--line:#deded2;--muted:#4e5b60;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1rem}body{margin:0;background:var(--cream);color:var(--ink);font-family:Nunito,sans-serif;font-size:1rem;line-height:1.65}a{color:var(--green);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}a:focus-visible,summary:focus-visible{outline:3px solid var(--ink);outline-offset:5px;border-radius:3px}img{display:block;max-width:100%;height:auto}h1,h2,h3{font-family:'Lilita One',sans-serif;font-weight:400;line-height:1.12;letter-spacing:.005em;margin:0 0 1rem}h1{font-size:clamp(2.6rem,6vw,4.8rem)}h2{font-size:clamp(2rem,4vw,2.8rem)}h3{font-size:1.65rem}p{margin:0 0 1rem}ul,ol{padding-left:1.3rem}li+li{margin-top:.5rem}figure{margin:0}.wrap{width:min(1120px,calc(100% - 2.5rem));margin-inline:auto}.preview-banner{background:var(--ink);color:#fff;text-align:center;padding:.45rem 1rem;font-size:.78rem;line-height:1.4}.skip-link{position:absolute;top:-100px;left:1rem;z-index:10;background:white;padding:.6rem 1rem}.skip-link:focus{top:1rem}.site-header{border-bottom:1px solid var(--line)}.header-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.25rem}.logo{display:inline-flex;align-items:center;gap:.5rem;font-family:'Lilita One',sans-serif;font-size:1.9rem;color:var(--green);text-decoration:none;white-space:nowrap}.logo svg{width:29px;height:29px;fill:var(--gold);stroke:var(--ink);stroke-width:1.5}.site-nav{display:flex;flex-wrap:wrap;gap:.25rem 1.1rem}.site-nav a{font-family:Fredoka,sans-serif;font-size:1rem;color:var(--ink);text-decoration:none;padding:.35rem 0}.site-nav a:hover{color:var(--green);text-decoration:underline}.eyebrow{font-family:Fredoka,sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:.13em;font-size:.78rem;color:var(--green);margin-bottom:1rem}.hero{padding-block:3.5rem 2.5rem;display:grid;gap:2.5rem;align-items:center}.hero h1{max-width:12ch}.hero-copy>p:not(.eyebrow){font-size:1.13rem;max-width:47ch}.hero-art{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:white;box-shadow:0 12px 30px #1d2b360c}.hero-art figcaption{padding:1rem 1.25rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;font-family:Fredoka,sans-serif}.hero-art figcaption a{font-weight:500}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-block:1.5rem}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.75rem 1.3rem;border-radius:8px;background:var(--green);color:white;font-family:Fredoka,sans-serif;font-weight:500;font-size:1.05rem;text-decoration:none;border:2px solid transparent;line-height:1.35;text-align:center}.btn:hover{background:#185e3c}.btn-secondary{background:transparent;border-color:var(--line);color:var(--ink)}.btn-secondary:hover{background:#eeeadf}.btn-buy{background:var(--red)}.btn[aria-disabled=true]{background:#ebe6dc;border-color:#c4bcae;color:#535953;cursor:not-allowed;pointer-events:none}.small{font-size:.875rem;color:var(--muted)}.micro-facts{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-family:Fredoka,sans-serif;font-size:.9rem;color:var(--green);margin-top:1.5rem}.section{padding-block:3.5rem}.section-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.75rem}.section-heading h2{margin-bottom:0}.section-heading p{max-width:35ch;margin:0;color:var(--muted)}.steps{list-style:none;padding:0;margin:0;display:grid;gap:1rem;counter-reset:step}.steps li{margin:0;background:white;padding:1.5rem;border:1px solid var(--line);border-radius:12px;counter-increment:step}.steps li:before{content:'0' counter(step);font-family:Fredoka,sans-serif;color:var(--green);font-size:1.1rem;display:block;margin-bottom:1rem}.steps h3{font-size:1.4rem}.steps p{margin:0}.checked{background:#eaf1e9;border-block:1px solid #cfdece}.checked-inner{display:grid;gap:1.5rem}.checked h2{max-width:16ch}.checks{list-style:none;padding:0;margin:0;display:grid;gap:1rem}.checks li{padding-left:1.6rem;position:relative;margin:0}.checks li:before{content:'✓';position:absolute;left:0;color:var(--green);font-weight:900}.product-grid{display:grid;gap:1.25rem}.product-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:white}.product-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}.card-body{padding:1.5rem;display:flex;flex-direction:column;flex:1}.card-body h3{font-size:1.6rem}.card-body p{color:var(--muted)}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:.5rem;font-family:Fredoka,sans-serif}.badge{display:inline-block;font-family:Fredoka,sans-serif;font-size:.8rem;font-weight:500;padding:.2rem .65rem;border-radius:30px;background:#eaf1e9;color:#185e3c;width:fit-content;margin-bottom:.85rem}.badge-soon{background:#f6ebd1;color:#715016}.illustration{min-height:210px;aspect-ratio:4/3;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;background:#f2ead7}.illustration:before,.illustration:after{content:'✦';position:absolute;color:var(--gold);font-size:3rem;transform:rotate(15deg)}.illustration:before{top:1rem;left:1.5rem}.illustration:after{bottom:1rem;right:1.5rem;font-size:2rem}.calendar{font-family:'Lilita One',sans-serif;font-size:4.5rem;line-height:1;background:var(--cream);color:var(--red);border:2px solid var(--red);border-top:15px solid var(--red);padding:1rem 1.4rem;transform:rotate(-7deg);border-radius:8px;box-shadow:6px 7px 0 #e3a52f45}.gift-art{background:#e8eff1}.present{width:115px;height:100px;background:var(--green);border-radius:5px;position:relative;transform:rotate(8deg);box-shadow:6px 7px 0 #1d2b3612}.present:before{content:'';position:absolute;left:44px;top:-8px;width:27px;height:108px;background:var(--gold)}.present:after{content:'';position:absolute;left:-6px;top:0;width:127px;height:22px;background:var(--red);border-radius:4px}.faq{max-width:800px}.faq details{border-bottom:1px solid var(--line);padding:1.1rem 0}.faq summary{font-family:Fredoka,sans-serif;font-size:1.1rem;cursor:pointer;padding-right:1rem}.faq details p{margin:.75rem 0 0;color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding:2.5rem 0 1.5rem;margin-top:2rem}.footer-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem;margin-bottom:2rem}.footer-links{display:flex;flex-wrap:wrap;gap:.6rem 1.25rem;align-items:center;font-size:.9rem}.footer-meta{border-top:1px solid var(--line);padding-top:1rem;font-size:.8rem;color:var(--muted);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}.footer-meta p{margin:0}.breadcrumb{padding-top:1.5rem;font-size:.85rem}.product-intro{display:grid;gap:2rem;padding-block:2rem 3rem;align-items:start}.product-info h1{font-size:clamp(2.3rem,4vw,3.6rem)}.price{font-family:Fredoka,sans-serif;font-size:1.6rem;margin:.5rem 0 1rem}.facts{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem;margin:1.25rem 0}.facts li{margin:0;border:1px solid var(--line);border-radius:5px;padding:.3rem .65rem;background:white;font-size:.85rem}.purchase{padding-block:1rem;scroll-margin-top:2rem}.purchase .btn{width:100%;margin-bottom:.65rem}.purchase p{margin-bottom:.5rem}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.gallery figure{background:white;border:1px solid var(--line);border-radius:9px;overflow:hidden}.gallery figure:first-child{grid-column:1/-1}.gallery img{width:100%;aspect-ratio:4/3;object-fit:contain}.gallery figcaption{padding:.6rem .8rem;font-size:.75rem;color:var(--muted)}.details-layout{display:grid;gap:2rem}.paper-panel{padding:1.75rem;border:1px solid var(--line);border-radius:12px;background:white}.paper-panel h2{font-size:2rem}.included{margin-bottom:0}.previews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.previews figure{border:1px solid var(--line);background:white;border-radius:8px;overflow:hidden}.previews img{width:100%;aspect-ratio:17/22;object-fit:contain}.previews figcaption{font-size:.8rem;padding:.75rem}.prose{max-width:780px;padding-block:2.5rem 3rem}.prose h1{font-size:clamp(2.6rem,6vw,3.8rem)}.prose h2{font-size:1.65rem;margin-top:2rem;margin-bottom:.75rem}.prose a{overflow-wrap:anywhere}.draft-notice{border:2px solid var(--red);border-radius:8px;background:#fff0ec;color:#9d2c22;padding:1rem 1.25rem;font-weight:800;margin-bottom:2rem}.product-story{max-width:780px;padding-block:3rem 4rem}.product-story h1{font-size:clamp(2.7rem,6vw,4rem)}.product-story>.purchase{max-width:400px}.product-story>.illustration{width:220px;height:180px;min-height:0;border-radius:14px;float:right;margin:0 0 1.5rem 1.5rem}.not-found{min-height:45vh}.no-margin{margin:0}
@media(min-width:700px){.steps,.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.checked-inner{grid-template-columns:1fr 1.2fr;align-items:center}.checks{grid-template-columns:repeat(2,minmax(0,1fr))}.previews{grid-template-columns:repeat(4,minmax(0,1fr))}.details-layout{grid-template-columns:1.4fr 1fr}.hero{padding-block:4.5rem;grid-template-columns:1fr 1fr;gap:3rem}.hero-copy>p:not(.eyebrow){font-size:1.15rem}.product-intro{grid-template-columns:1.15fr 1fr;gap:2.5rem}.product-info{grid-column:2;grid-row:1}.gallery{grid-column:1;grid-row:1}.section{padding-block:4rem}}
@media(max-width:420px){.header-inner{gap:.65rem}.site-nav{width:100%;justify-content:space-between;gap:.5rem}.site-nav a{font-size:.95rem}.product-story>.illustration{float:none;margin:0 0 2rem}.wrap{width:calc(100% - 2rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{background:white}.preview-banner{background:white;color:black;border-bottom:1px solid black}.site-nav,.actions,.purchase,.footer-links,.skip-link{display:none}.hero,.product-intro,.details-layout{display:block}.section{padding-block:1rem}.product-card,figure{break-inside:avoid}a{color:inherit}.site-footer{margin-top:1rem}}
/* Guide typography and the existing product image layouts. */
.card-buy{margin-top:1rem;width:100%}.product-hero-image{width:100%;height:auto;border-radius:16px}.product-detail-image{width:100%;height:auto;border-radius:12px}.product-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.guide-intro{max-width:65ch;font-size:1.12rem;margin-bottom:2rem}.guide-grid{margin-top:2rem}.guide-card h2{font-size:1.65rem}.guide-card h2 a{color:var(--ink);text-decoration:none}.guide-card>a>img{width:100%;aspect-ratio:1200/630;object-fit:cover}.article{max-width:780px;font-size:1.08rem;line-height:1.8}.article-header{margin-bottom:2rem}.article-header h1{max-width:22ch}.article-header .small{margin-top:1.25rem}.article-lede{font-size:1.23rem;line-height:1.65;color:var(--green)}.article h2{line-height:1.25;margin-top:2.5rem;font-size:1.85rem}.article p{margin-bottom:1.25rem}.article-back{border-top:1px solid var(--line);padding-top:1.5rem;margin-top:2.5rem}
