:root{
  --inkb:#22409c;--red:#e23b3b;--paper:#fffdf4;--paper2:#fbfbf2;
  /* legacy remap */
  --ink:#22409c;--cream:#fffdf4;--lav:#e8eefc;--ember:#e23b3b;--forest:#e23b3b;
  --charcoal:#22409c;--fog:rgba(34,64,156,.62);--stone:#c9d3f0;--white:#ffffff;
  --serif:'Caveat',cursive;--sans:'Neucha',cursive;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Neucha',cursive;background:var(--paper);color:var(--inkb);font-size:19px;line-height:1.45;background-image:radial-gradient(#dfe8fb 1.2px,transparent 1.2px);background-size:26px 26px;-webkit-font-smoothing:antialiased}
.wrap{max-width:1140px;margin:0 auto;padding:0 22px}
.serif{font-family:'Caveat',cursive;font-weight:700;line-height:1.02}
h1{font-family:'Caveat',cursive;font-weight:700;font-size:clamp(44px,7vw,88px);line-height:1;color:inherit}
h2{font-family:'Caveat',cursive;font-weight:700;font-size:clamp(38px,5.4vw,64px);line-height:1.02;color:inherit}
h3{font-family:'Caveat',cursive;font-weight:700;font-size:27px;line-height:1.05}
p{font-size:18px}
b{font-weight:700}
.section{padding:24px 0}
.chamber{border:2.5px solid var(--inkb);border-radius:255px 15px 225px 15px/15px 225px 15px 255px;padding:54px 48px;background:var(--paper2)}
.cream{background:var(--paper2);color:var(--inkb)}
.lav{background:#eef3ff;color:var(--inkb)}
.dark{background:var(--inkb);color:var(--paper);--ember:#ffb3a6;--fog:rgba(255,253,244,.65);--charcoal:#dfe6fb;border-color:var(--inkb)}
.dark h2,.dark h3{color:var(--paper)}
.eyebrow{font-family:'Caveat',cursive;font-size:22px;font-weight:700;letter-spacing:.02em;color:var(--red)}
.dark .eyebrow{color:#ffd6cf}
.hl{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='10'%3E%3Cpath d='M0 6 Q 15 1 30 6 T 60 6 T 90 6 T 120 6' stroke='%23e23b3b' fill='none' stroke-width='3'/%3E%3C/svg%3E") repeat-x 0 100%;background-size:auto 9px;padding-bottom:8px}
.grid{display:grid;gap:20px}
.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:2.5px solid var(--inkb);border-radius:15px 225px 15px 255px/225px 15px 255px 15px;padding:26px 28px;color:var(--inkb);box-shadow:4px 5px 0 rgba(34,64,156,.18);--ember:#e23b3b;--fog:rgba(34,64,156,.62);--charcoal:#22409c}
.card.oncream{background:#fff}
.card-dark{background:var(--inkb);color:var(--paper);border:2.5px solid var(--inkb);border-radius:255px 15px 225px 15px/15px 225px 15px 255px;padding:26px 28px;--charcoal:#dfe6fb;--fog:rgba(255,253,244,.65)}
.card-lav{background:#eef3ff;border:2.5px solid var(--inkb);border-radius:225px 15px 255px 15px/15px 255px 15px 225px;padding:26px 28px;color:var(--inkb);box-shadow:4px 5px 0 rgba(34,64,156,.18)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Caveat',cursive;font-weight:700;font-size:26px;border:3px solid var(--inkb);border-radius:40px 16px 40px 16px/16px 40px 16px 40px;background:#fff;color:var(--inkb);padding:8px 30px;text-decoration:none;cursor:pointer;box-shadow:4px 4px 0 var(--inkb);transition:transform .1s,box-shadow .1s}
.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--inkb)}
.btn:active{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--inkb)}
.dark .btn{box-shadow:4px 4px 0 rgba(255,253,244,.5)}
.btn-cream{background:#ffeeee;border-color:var(--red);color:var(--red);box-shadow:4px 4px 0 var(--red)}
.btn-cream:hover{box-shadow:6px 6px 0 var(--red)}
.btn-lg{font-size:30px;padding:10px 38px}
.badge{display:inline-block;border:2.5px solid var(--inkb);border-radius:40px 20px 40px 20px/20px 40px 20px 40px;padding:5px 18px;font-family:'Caveat',cursive;font-weight:700;font-size:22px;background:#fff;color:var(--inkb);transform:rotate(-1.5deg)}
.pill{border:2px solid var(--inkb);border-radius:30px 12px 30px 12px/12px 30px 12px 30px;padding:5px 14px;font-size:16px;display:inline-block;background:#fff;color:var(--inkb)}
.pill-cream{border:2px solid var(--paper);border-radius:30px 12px 30px 12px/12px 30px 12px 30px;padding:5px 14px;font-size:16px;display:inline-block;color:var(--paper)}
.imgcard{border:3px solid var(--inkb);border-radius:18px 200px 18px 200px/200px 18px 200px 18px;overflow:hidden;background:#eef3ff;min-height:420px;position:relative;box-shadow:6px 6px 0 rgba(34,64,156,.2)}
.imgcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.field{width:100%;border:2.5px solid var(--inkb);border-radius:20px 8px 20px 8px/8px 20px 8px 20px;background:#fff;font-family:'Neucha';font-size:18px;color:var(--inkb);padding:12px 16px;margin-bottom:12px}
.field::placeholder{color:#8a93b5}
.stat{font-family:'Caveat',cursive;font-weight:700;font-size:clamp(40px,4.4vw,58px);line-height:.95;color:var(--red)}
.dark .stat{color:#ffd6cf}
.nav{position:sticky;top:10px;z-index:40;margin-top:12px}
.navpill{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:2.5px solid var(--inkb);border-radius:40px 16px 40px 16px/16px 40px 16px 40px;padding:8px 12px 8px 20px}
.navpill img{height:24px;display:block}
.navdate{font-size:16px;color:var(--inkb);opacity:.75}
.center{text-align:center}
.mut{color:var(--fog)}
.qlist{list-style:none;margin-top:8px}
.qlist li{position:relative;padding:5px 0 5px 24px;font-size:17px;color:inherit}
.qlist li::before{content:"—";position:absolute;left:0;color:var(--red);font-weight:700}
.dark .qlist li::before{color:#ffb3a6}
.ck{width:32px;height:32px;flex:none;border-radius:50% 40% 55% 45%/45% 55% 40% 50%;background:#ffeeee;border:2.5px solid var(--red);color:var(--red);display:flex;align-items:center;justify-content:center;font-family:'Caveat';font-weight:700;font-size:20px}
.price-old{text-decoration:line-through;opacity:.55;font-size:22px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:stretch}
.tavi{position:relative;display:inline-block;width:64px;height:64px;border-radius:50% 45% 55% 48%/48% 55% 45% 50%;background:#eef3ff;border:2.5px solid var(--inkb);overflow:visible;cursor:pointer;margin:4px}
.tavi img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:50%}
.tavi .ttip{position:absolute;bottom:74px;left:50%;transform:translateX(-50%);width:250px;background:#fff;border:2.5px solid var(--inkb);color:var(--inkb);border-radius:20px 8px 20px 8px/8px 20px 8px 20px;padding:12px 14px;font-size:14px;line-height:1.4;opacity:0;pointer-events:none;transition:opacity .15s;z-index:30;text-align:left;box-shadow:4px 4px 0 rgba(34,64,156,.2)}
.tavi:hover .ttip,.tavi:focus .ttip,.tavi:focus-within .ttip{opacity:1}
.tavi:nth-child(-n+2) .ttip{left:0;transform:none}
details.mats{margin-top:16px;padding-top:12px;border-top:2px dashed var(--stone)}
details.mats summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px}
details.mats summary::-webkit-details-marker{display:none}
details.mats summary .plus{width:32px;height:32px;flex:none;border:2.5px solid var(--red);border-radius:50% 40% 55% 45%/45% 55% 40% 50%;background:#ffeeee;display:flex;align-items:center;justify-content:center;font-family:'Caveat';font-weight:700;font-size:22px;color:var(--red)}
details.mats summary .plus::before{content:'+'}
details.mats[open] summary .plus::before{content:'–'}
html,body{overflow-x:clip}
.card div,.card-lav div,.card-dark div{min-width:0}
.grid>*{min-width:0}
p,h1,h2,h3,li,summary{overflow-wrap:break-word}
@media(max-width:900px){.navdate{display:none}
  .grid{grid-template-columns:1fr!important}
  .chamber{padding:36px 24px}
  .hero-grid{grid-template-columns:1fr!important}
  .g2>*,.g3>*,.g4>*{grid-column:auto!important}
}
@media(max-width:600px){
  h1{font-size:48px}h2{font-size:38px}
  .nav{top:8px}
  .navpill{padding:4px 8px 4px 14px}
  .navpill img{height:17px}
  .navpill .btn{font-size:19px;padding:4px 16px!important;box-shadow:2px 2px 0 var(--inkb);white-space:nowrap}
  .btn-lg{width:100%;font-size:24px;white-space:normal;line-height:1.1;text-align:center}
  .card:has(> .ck){flex-direction:column;gap:12px}
}
section.section:not(:nth-of-type(-n+2)){content-visibility:auto;contain-intrinsic-size:auto 900px}