/* Soft v2 (Oct 11 test): cushy + cute for feminine trades. No engraving.
   Young Serif (cushy display, clean j/g/y) + Quicksand (cute labels/buttons) + DM Sans (plain body). */
:root{
  --display:'Young Serif',Georgia,serif;--body:'DM Sans',system-ui,-apple-system,sans-serif;--cute:'Quicksand','DM Sans',system-ui,sans-serif;
  --sh:color-mix(in srgb,var(--shc) 30%,transparent);--sh2:color-mix(in srgb,var(--shc) 42%,transparent);
  --cushion:inset 0 2px 0 rgba(255,255,255,.85),inset 0 -3px 0 color-mix(in srgb,var(--shc) 7%,transparent),0 2px 4px color-mix(in srgb,var(--shc) 6%,transparent),0 14px 28px -14px var(--sh),0 34px 70px -44px var(--sh2);
}
/* no engraving, no wallpaper */
html{background-image:none!important;background:var(--L-bg)!important}
.sec:not(.offer):not(.end)>.wrap::before{display:none!important}
#wall{display:none!important}
/* airy blush blobs (gradients only, no blur filter) */
body{background:transparent!important;font-family:var(--body)!important;color:var(--L-ink)}
.sb{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:var(--L-bg)}
.sb i{position:absolute;width:62vmax;height:62vmax;border-radius:50%;opacity:.9}
.sb i:nth-child(1){left:-18vmax;top:-22vmax;background:radial-gradient(circle,var(--petal) 0,transparent 66%)}
.sb i:nth-child(2){right:-22vmax;top:8vmax;background:radial-gradient(circle,var(--butter) 0,transparent 64%)}
.sb i:nth-child(3){left:12vmax;bottom:-30vmax;background:radial-gradient(circle,var(--lilac) 0,transparent 64%)}
/* type */
h1,h2,h3{font-family:var(--display)!important;font-weight:400!important;font-variation-settings:normal!important;letter-spacing:-.005em!important;color:var(--L-ink)}
h1{line-height:1.04!important}
.btn,.qi,.ikick,.kpick b,.chips button,.ct,.kxnudge,.kmore,.linkbtn,.flabel,label,.menu-btn span,.pill,.tag{font-family:var(--cute)!important;font-variation-settings:normal!important}
.ikick{font-weight:700!important;letter-spacing:.06em!important}
/* bar */
.bar{background:color-mix(in srgb,var(--L-bg) 96%,transparent)!important;border-bottom:1px solid var(--L-line)!important;box-shadow:none!important}
.logo{font-family:var(--display)!important;font-weight:400!important;font-size:21px!important}
.qi{font-weight:700!important;border-radius:999px!important}
.qi.qi-main{background:var(--L-acc)!important;color:#fff!important;padding:7px 16px!important;text-decoration:none!important;box-shadow:var(--cushion)}
/* buttons: pillowy pills */
.btn{border-radius:999px!important;font-weight:700!important;letter-spacing:.01em;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,filter .2s!important}
.btn-main{background:linear-gradient(180deg,color-mix(in srgb,var(--L-acc) 82%,#fff) 0%,var(--L-acc) 55%,color-mix(in srgb,var(--L-acc) 88%,#000) 100%)!important;color:#fff!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.35),inset 0 -3px 0 color-mix(in srgb,var(--shc) 22%,transparent),0 12px 24px -12px color-mix(in srgb,var(--L-acc) 70%,transparent)!important}
.btn-main:hover{transform:translateY(-2px);filter:brightness(1.04)}
.btn-line{border:2px solid var(--L-line)!important;background:#fff!important;color:var(--L-ink)!important;box-shadow:var(--cushion)}
.btn-line:hover{transform:translateY(-2px);border-color:var(--L-hi)!important}
/* hero */
.khero2{padding-top:96px!important}
.khero2 h1{font-size:clamp(40px,5.2vw,74px)!important;position:relative}
.h1sw{position:relative;white-space:nowrap;display:inline-block}
.h1sw svg{position:absolute;left:-2%;right:-2%;width:104%;bottom:-.16em;height:.36em;overflow:visible;pointer-events:none}
.h1sw path{fill:none;stroke:var(--hi);stroke-width:7;stroke-linecap:round}
.spk{position:absolute;width:22px;height:22px;pointer-events:none;color:var(--hi)}
.spk.s2{width:14px;height:14px;color:var(--s2d)}.spk.s3{width:17px;height:17px;color:var(--s3d)}
.kx{border-radius:32px!important;overflow:hidden;border:0!important;box-shadow:0 0 0 7px #fff,var(--cushion)!important}
@media (max-width:600px){.kx{border-radius:24px!important;box-shadow:0 0 0 5px #fff,var(--cushion)!important}}
.kx img{border-radius:0!important}
.kxcmp .ct{border-radius:999px!important;background:rgba(255,255,255,.88)!important;color:var(--L-ink)!important;font-weight:700!important;letter-spacing:.04em}
.kxcmp i{background:#fff!important;box-shadow:0 4px 14px color-mix(in srgb,var(--L-ink) 25%,transparent)!important}
.kxact b{font-family:var(--display);font-weight:400}
.icard{border-radius:30px!important;border:0!important;background:#fff!important;box-shadow:var(--cushion)!important}
.ikick{display:inline-block;background:var(--petal);color:var(--L-kick)!important;padding:5px 12px;border-radius:999px}
.iperks li::before{border-radius:50%!important}
/* mood picker: cushions */
.kpicker{border-radius:30px!important;border:0!important;background:rgba(255,255,255,.82)!important;box-shadow:var(--cushion)!important}
.kpick{border-radius:22px!important;border:1.5px solid var(--L-line)!important;background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--petal) 25%,#fff))!important;box-shadow:inset 0 2px 0 #fff,0 8px 18px -12px var(--sh2)!important;transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color .2s,box-shadow .3s!important}
.kpick:hover{transform:translateY(-4px) rotate(-1deg);border-color:var(--L-hi)!important;box-shadow:inset 0 2px 0 #fff,0 18px 28px -14px var(--sh2)!important}
.kpick .ic,.kcard .ic{border-radius:50%!important;background:var(--petal)!important;color:var(--L-kick)!important}
.kpick:nth-child(3n+2) .ic,.kcard:nth-child(n) .ic{background:var(--petal)!important}
.topic:nth-child(3n+2) .kcard .ic{background:var(--butter)!important;color:var(--s2d)!important}
.topic:nth-child(3n) .kcard .ic{background:var(--lilac)!important;color:var(--s3d)!important}
.kpick:nth-child(3n+2) .ic{background:var(--butter)!important;color:var(--s2d)!important}
.kpick:nth-child(3n) .ic{background:var(--lilac)!important;color:var(--s3d)!important}
/* sections as soft cushions */
.sec:not(.offer):not(.end)>.wrap{border-radius:40px!important;border:0!important;background:rgba(255,255,255,.86)!important;box-shadow:var(--cushion)!important}
.sec.alt:not(.offer)>.wrap{background:color-mix(in srgb,var(--petal) 12%,#fff)!important}
.kcard{border-radius:28px!important;border:1.5px solid var(--L-line)!important;background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--petal) 15%,#fff))!important;box-shadow:inset 0 2px 0 #fff,0 10px 22px -16px var(--sh2)!important;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s!important}
.kcard:hover{transform:translateY(-5px);box-shadow:inset 0 2px 0 #fff,0 22px 34px -18px var(--sh2)!important}
.kmore{text-decoration-color:var(--L-hi)!important;text-underline-offset:4px;font-weight:700!important}
/* offer: petal pillow instead of deep plum */
.offer{background:linear-gradient(155deg,var(--petal) 0%,color-mix(in srgb,var(--lilac) 70%,var(--petal)) 55%,var(--butter) 100%)!important;color:var(--L-ink)!important;border-radius:44px!important;box-shadow:var(--cushion)}
.offer h2,.offer h3,.offer b,.offer p,.offer li,.offer span{color:var(--L-ink)!important}
.offer .lede,.offer small{color:var(--L-soft)!important}
.offer li,.offer .guar>*{background:rgba(255,255,255,.72)!important;border:0!important;border-radius:22px!important;box-shadow:inset 0 2px 0 #fff,0 8px 18px -12px var(--sh2)!important}
.offer .ostack li span,.offer .lede,.offer .guar span{color:var(--L-soft)!important}
.offer .ostack li em{color:var(--L-kick)!important;font-family:var(--cute);font-weight:700}
.offer .guar b{color:var(--L-ink)!important}
.offer .ostack li{background:rgba(255,255,255,.72)!important}
.khero2{overflow-x:clip}
/* chips + form */
.chips button{border-radius:999px!important}
.chips button[aria-pressed="true"],.chips button[aria-checked="true"]{background:var(--L-acc)!important;color:#fff!important;border-color:var(--L-acc)!important}
.field input,.field select,.field textarea{border-radius:16px!important}
.impanel{border-radius:30px!important}
footer{border-radius:40px 40px 0 0}
/* twinkle hearts burst */
.sburst{position:fixed;pointer-events:none;z-index:60;width:18px;height:18px;color:var(--hi)}
@media (prefers-reduced-motion:reduce){.sb i{animation:none}}
/* lite motion: CSS only, plays once */
.h1sw path{stroke-dasharray:1;stroke-dashoffset:1;animation:swd .9s .25s cubic-bezier(.6,0,.3,1) forwards}
@keyframes swd{to{stroke-dashoffset:0}}
.spk{animation:spk 1.6s ease-in-out 3 alternate}
.spk.s2{animation-delay:.4s}.spk.s3{animation-delay:.8s}
@keyframes spk{to{transform:scale(.55) rotate(45deg);opacity:.6}}
.btn:active,.kpick:active{transform:scale(.96)!important;transition-duration:.08s!important}
@media (prefers-reduced-motion:reduce){.h1sw path{animation:none;stroke-dashoffset:0}.spk{animation:none}}
/* no active-section underline in the top bar */
.qi.on{box-shadow:none!important;border-color:transparent!important;text-decoration:none!important}
/* headings inside pop-up panels (menu, sheets) follow the panel's own text color */
#layer h2,#layer h3,.sec.end h2,.band h2{color:inherit}

/* grouped menu (Oct 12) */
.menu .mtwo{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.menu details{border-radius:14px}
.menu details>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:60px;padding:0 16px;border-radius:14px;border:1.5px solid rgba(127,127,127,.35);font:700 19px var(--body);cursor:pointer}
.menu details>summary::-webkit-details-marker{display:none}
.menu details>summary::after{content:'+';font-size:22px;line-height:1;opacity:.7}
.menu details[open]>summary::after{content:'–'}
.menu details>div{display:grid;gap:6px;padding:8px 0 4px 10px}
.menu details>div a{min-height:48px!important;font-size:16px!important;font-weight:600!important}
.menu .mlogin{min-height:40px!important;background:none!important;border:0!important;justify-content:center!important;font-size:14px!important;font-weight:600!important;opacity:.75;text-decoration:underline!important}
