/* Fureesia link page. Colors and fonts are the same as fureesiaplanners.com. You don't need to edit this file. */
:root{--cream:#FBF7F0;--paper:#FFFDF9;--espresso:#4E3327;--soft:#7A5F52;--line:rgba(78,51,39,.16);--red:#B32424;--pink:#F5CDCE;
--display:"Fraunces",Georgia,serif;--body:"Afacad Flux",system-ui,sans-serif;--footer:"Instrument Serif","Fraunces",serif}
*{box-sizing:border-box}html,body{margin:0;background:var(--cream);color:var(--espresso);font:400 17px/1.5 var(--body);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}h1,h2,h3{margin:0;font-family:var(--display);font-weight:400;font-variation-settings:"opsz" 144;letter-spacing:-.03em}
h1 em,h2 em{color:var(--red);font-style:italic}
.label{font:600 .72rem/1.5 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--red)}
.ico{display:inline-block;width:20px;height:20px;background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}
/* footer like the other sites */
.site-footer{background:var(--espresso);color:var(--cream);text-align:center;padding:56px 20px 0;overflow:hidden}
.ft-logo{width:84px;margin:0 auto}
.ft-line{margin:12px 0 0;font:italic 400 1.15rem var(--display);opacity:.85}
.ft-name{margin:26px 0 -.12em;font:400 clamp(40px,9.6vw,128px)/.9 var(--footer);text-transform:uppercase;white-space:nowrap}
@media(max-width:700px){.site-footer{padding:40px 20px 30px}.ft-name{display:none}.ft-copy{display:block}}
.ft-copy{display:none;margin-top:14px;font-size:.85rem;opacity:.7}
/* tickets (shared shape, each option restyles) */
.ticket{position:relative;display:flex;background:var(--paper);border:1.5px solid var(--espresso);border-radius:18px}
.copy{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border:0;border-radius:999px;background:var(--espresso);color:var(--cream);font:700 .95rem/1 var(--body);cursor:pointer}
.copy svg{width:15px;height:15px}

html,body{overflow-x:clip}
.clip{overflow:hidden}
body{background:
  linear-gradient(rgba(78,51,39,.055) 1px,transparent 1px) 0 0/26px 26px,
  linear-gradient(90deg,rgba(78,51,39,.055) 1px,transparent 1px) 0 0/26px 26px,#F5EFE6}
.center{text-align:center;display:block}
.label{display:block}
.top{display:flex;align-items:center;justify-content:center;gap:10px;padding:22px 16px 0;font:600 .78rem var(--body);letter-spacing:.14em;color:var(--soft)}
.top img{width:46px}
/* stickers like the website */
.stk{position:absolute;z-index:3;padding:6px 14px;border-radius:999px;border:2.5px solid #fff;font:600 .8rem/1.4 var(--body);white-space:nowrap;box-shadow:0 6px 14px -6px rgba(78,51,39,.35);animation:drift 4.5s ease-in-out infinite}
@keyframes drift{0%,100%{transform:translateY(0) rotate(var(--r,0deg))}50%{transform:translateY(-9px) rotate(calc(var(--r,0deg) * -1))}}
.timer{position:absolute;z-index:3;display:grid;place-items:center;align-content:center;width:96px;height:96px;border-radius:50%;background:#FAEBB4;border:3px solid #fff;box-shadow:0 8px 18px -8px rgba(78,51,39,.45);font:600 1.5rem/1 var(--display);color:var(--espresso);animation:drift 5s ease-in-out infinite;--r:-8deg}
.timer small{font:700 .52rem var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-bottom:4px}
/* ---------- hero: mood check-in ---------- */
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;max-width:1180px;margin:0 auto;padding:40px 40px 30px}
h1{font-size:clamp(2.9rem,5.6vw,5rem);line-height:.98;margin-top:14px}
.lead{margin:16px 0 0;max-width:46ch;font-size:1.1rem;color:var(--soft)}
.moods{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.mood{display:grid;justify-items:center;gap:4px;padding:10px 10px 8px;min-width:86px;border:1.5px solid transparent;border-radius:16px;background:transparent;font:600 .82rem var(--body);color:var(--espresso);cursor:pointer;transition:.2s}
.mood .f{width:46px;height:46px;transition:transform .2s}.mood .f svg{width:100%;height:100%}
.mood:hover .f{transform:rotate(-8deg) scale(1.08)}
.mood.on{background:var(--paper);border-color:var(--espresso);box-shadow:3px 3px 0 var(--espresso)}
.pick{position:relative;display:block;max-width:440px;margin-top:16px;padding:16px 20px;border-radius:18px;background:var(--red);color:#fff;transform:rotate(-1.2deg);box-shadow:0 14px 26px -16px rgba(179,36,36,.9)}
.pick:before{content:"";position:absolute;left:150px;top:-9px;width:16px;height:16px;background:var(--red);transform:rotate(45deg)}
.pick-l{display:block;font:700 .66rem var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--pink)}
.pick b{display:block;margin-top:2px;font:500 1.6rem/1.15 var(--display)}
.pick span:last-child{font-size:.95rem;opacity:.9}
.socials{display:flex;gap:14px;margin-top:26px}
.socials a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--paper);box-shadow:inset 0 0 0 1.5px var(--espresso)}
.hero-art{position:relative;aspect-ratio:1;max-width:480px;width:100%;justify-self:center}
.hero-art .mascot{width:100%;animation:bob 3.4s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-10px) rotate(-2deg)}}
.s1{top:8%;left:-2%;background:#D9C2E8;color:#7E3F8F;--r:-7deg}
.s2{top:2%;right:6%;background:#FAEBB4;color:#A8571F;--r:6deg;animation-delay:-1.5s}
.s3{bottom:12%;left:-4%;background:#BFCFA0;color:#4F6B32;--r:-5deg;animation-delay:-3s}
.s4{bottom:4%;right:2%;background:var(--espresso);color:var(--cream);--r:4deg;animation-delay:-2s}
.timer{top:42%;right:-6%}
/* ---------- hero: a letter ---------- */
.letter-hero{display:block;max-width:900px;padding-top:56px}
.envelope{position:relative}
.tag{position:absolute;z-index:4;top:-26px;right:40px;display:grid;gap:2px;padding:14px 22px 12px 34px;background:var(--paper);border:1.5px solid var(--line);border-radius:6px 14px 14px 6px;transform:rotate(5deg);box-shadow:0 10px 20px -12px rgba(78,51,39,.5);font:italic 400 1.05rem var(--display);clip-path:polygon(16px 0,100% 0,100% 100%,16px 100%,0 50%)}
.tag i{position:absolute;left:14px;top:50%;width:9px;height:9px;margin-top:-4px;border-radius:50%;border:1.5px solid var(--espresso)}
.tag b{color:var(--red);font-weight:500}
.letter{position:relative;padding:60px 70px 50px;background:var(--paper);border:1.5px solid var(--line);border-radius:28px;box-shadow:0 30px 50px -36px rgba(78,51,39,.6);text-align:center}
.letter:before{content:"";position:absolute;inset:12px;border:1.5px dashed rgba(179,36,36,.35);border-radius:20px;pointer-events:none}
.letter h1{font-size:clamp(3.2rem,8vw,5.6rem)}
.letter .lead{margin:16px auto 0}
.sign{margin:14px 0 0;font:italic 400 1.3rem var(--display);color:var(--red)}
.letter .socials{justify-content:center}
.stamp{position:absolute;left:34px;top:-34px;display:grid;place-items:center;width:104px;height:104px;border-radius:50%;border:2px dashed var(--red);background:var(--paper);color:var(--red);font:700 .6rem/1.3 var(--body);letter-spacing:.14em;text-transform:uppercase;transform:rotate(-12deg);text-align:center}
.stamp b{font:italic 500 1rem var(--display);letter-spacing:0;text-transform:none}
.peek{position:absolute;right:-60px;bottom:-40px;width:210px;transform:rotate(8deg);animation:bob 3.4s ease-in-out infinite}
.letter-hero .s1{top:30%;left:-80px}.letter-hero .s2{top:auto;bottom:16%;left:-60px;right:auto}.letter-hero .s3{bottom:auto;top:12%;left:auto;right:-90px}.letter-hero .s4{display:none}.letter-hero .timer{top:auto;bottom:-30px;left:40%;right:auto}
/* ---------- links ---------- */
.links{max-width:1080px;margin:0 auto;padding:50px 40px 40px}
.links h2,.codes h2{text-align:center;font-size:clamp(2.4rem,4.6vw,3.6rem);margin-top:6px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.grid .lk:not(.shop):not(.friend){flex-direction:column;align-items:flex-start;padding:22px 22px 24px}
.grid .lk:not(.shop):not(.friend) .go{position:absolute;right:18px;top:20px}
.lk{position:relative;display:flex;align-items:center;gap:16px;padding:20px 22px;border-radius:20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 14px 26px -22px rgba(78,51,39,.6);transition:transform .18s}
.lk:hover{transform:translateY(-3px) rotate(-.4deg)}
.lk h3{font-size:1.5rem;line-height:1.12}.lk h3 em{color:var(--red)}
.lk p{margin:3px 0 0;color:var(--soft);font-size:.97rem}
.mini{display:block;font:700 .64rem var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-bottom:2px}
.chip{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--pink);color:var(--red)}
.chip svg{width:26px;height:26px}
.chip.c-blue{background:#C3D6F2;color:#3768B2}.chip.c-sage{background:#BFCFA0;color:#4F6B32}
.go{margin-left:auto;flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--espresso);font-weight:700}
.lk.shop{grid-column:1/-1;background:var(--espresso);color:var(--cream);border:0;padding:26px 28px}
.lk.shop h3{font-size:2rem}.lk.shop p{color:var(--cream);opacity:.8}.lk.shop .chip{background:var(--cream);color:var(--espresso)}.lk.shop .go{background:var(--cream);color:var(--espresso);box-shadow:none}
.lk.free{background:var(--pink);border-color:rgba(179,36,36,.25)}.lk.free .chip{background:var(--paper)}.lk.free h3{color:var(--red)}.lk.free p{color:#8C4B44}.lk.free .go{background:var(--red);color:#fff;box-shadow:none}
.lk.friend{grid-column:1/-1;padding:0 26px 0 0;overflow:visible;border:1.5px dashed rgba(179,36,36,.5)}
.fimg{flex:none;width:130px;height:130px;object-fit:cover;border-radius:19px 0 0 19px;border-right:2px dashed var(--red)}
.seal{position:relative;margin-left:auto;flex:none;display:grid;place-items:center;align-content:center;width:112px;height:112px;margin-top:-30px;margin-bottom:-14px;border-radius:50%;background:#FAEBB4;border:3px solid #fff;box-shadow:0 10px 20px -10px rgba(78,51,39,.5);transform:rotate(-10deg);font:600 2rem/1 var(--display);color:var(--red)}
.seal small{font:700 .58rem var(--body);letter-spacing:.18em;text-transform:uppercase}
.seal i{font:italic 400 .82rem var(--display);color:var(--red)}
.helpbox{position:relative;margin-top:30px;padding:30px 30px 26px;border-radius:24px;background:var(--paper);border:1.5px dashed rgba(78,51,39,.25);text-align:center}
.helpbox h3{font-size:2.2rem}.helpbox h3 em{color:var(--red)}
.h1s{top:-16px;left:30px;background:var(--paper);color:var(--espresso);border-color:var(--line);--r:-6deg}
.hrows{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px;text-align:left}
.hrow{display:flex;align-items:center;gap:14px;padding:12px 16px 12px 12px;border-radius:18px;background:var(--cream);border:1px solid var(--line)}
.hrow b{display:block;font-size:1.05rem}.hrow small{color:var(--soft);font-size:.92rem}
.hrow .go{width:auto;height:auto;box-shadow:none;font-size:1.15rem}
.hrow .chip{width:48px;height:48px}
/* ribbon like the website */
.ribbon{margin:50px -20px 0;overflow:hidden;background:var(--red);color:var(--cream);transform:rotate(-2deg);border-top:2px solid var(--espresso);border-bottom:2px solid var(--espresso)}
.ribbon div{white-space:nowrap;padding:12px 0;font:700 .78rem var(--body);letter-spacing:.2em;text-transform:uppercase;animation:roll 40s linear infinite}
@keyframes roll{to{transform:translateX(-50%)}}
/* ---------- codes: ADMIT ONE tickets ---------- */
.codes{max-width:1080px;margin:0 auto;padding:60px 40px 90px}
.codes .lead{margin:8px auto 0}
.tks{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:34px}
.tk{position:relative;display:flex;background:var(--paper);border-radius:20px;box-shadow:0 18px 30px -22px rgba(78,51,39,.65)}
.tk-main{flex:1;padding:24px 24px 22px}
.tk-cat{font:700 .64rem var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.tk h3{margin-top:6px;font-size:2rem}
.tk p{margin:4px 0 0;color:var(--soft);font-size:.96rem}
.tk-perk{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px}
.tk-perk span{padding:3px 11px;border-radius:999px;background:#FAEBB4;color:#A8571F;font:700 .78rem var(--body)}
.tk-perk a{font-weight:700;font-size:.9rem;border-bottom:1.5px solid}
.tk-stub{position:relative;flex:none;width:180px;display:grid;justify-items:center;align-content:center;gap:8px;padding:18px 12px;border-left:2px dashed rgba(78,51,39,.3);text-align:center}
.tk-stub:before,.tk-stub:after{content:"";position:absolute;left:-11px;width:20px;height:20px;border-radius:50%;background:var(--red)}
.tk-stub:before{top:-10px}.tk-stub:after{bottom:-10px}
.tk-stub small{font:700 .6rem var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.code{font:italic 500 1.75rem/1 var(--display);color:var(--red);letter-spacing:.04em}
.copy.done{background:var(--red)}
@media(max-width:860px){
 .top{padding-top:16px}
 .hero{grid-template-columns:1fr;gap:0;padding:14px 18px 10px;text-align:center}
 .hero-art{order:-1;max-width:250px}
 .stk{font-size:.7rem;padding:5px 11px}.s1{left:-14%}.s3{left:-16%}.s4{right:-12%}.s2{right:-8%}
 .timer{width:70px;height:70px;font-size:1.1rem;right:-18%}
 h1{font-size:2.5rem}
 .lead{margin:12px auto 0;font-size:1rem}
 .moods{justify-content:center;gap:2px;flex-wrap:nowrap}.mood{min-width:0;flex:1;padding:8px 2px 6px;font-size:.7rem}.mood .f{width:38px;height:38px}
 .pick{text-align:left;margin:12px auto 0}.pick:before{left:46%}.pick b{font-size:1.35rem}
 .socials{justify-content:center}
 .letter-hero{padding:46px 16px 10px}.letter{padding:52px 22px 34px}.tag{right:12px;top:-30px;font-size:.9rem}.stamp{width:80px;height:80px;left:14px;top:-26px;font-size:.5rem}
 .peek{width:110px;right:-10px;bottom:-30px}.letter-hero .stk,.letter-hero .timer{display:none}
 .links{padding:36px 16px 20px}.grid{grid-template-columns:1fr;gap:12px;margin-top:22px}
 .grid .lk:not(.shop):not(.friend){flex-direction:row;align-items:center;padding:16px}
 .grid .lk:not(.shop):not(.friend) .go{position:static}
 .seal{position:absolute;right:-10px;top:-26px;margin:0}.lk.friend h3{padding-right:46px}
 .letter{padding-bottom:84px}.peek{width:100px;right:50%;margin-right:-50px;bottom:-40px;transform:none}
 .lk{padding:16px;gap:13px}.lk h3{font-size:1.25rem}.lk p{font-size:.92rem}.chip{width:44px;height:44px}.go{width:34px;height:34px}
 .lk.shop{padding:20px 18px}.lk.shop h3{font-size:1.45rem}
 .lk.friend{padding:0 14px 0 0}.fimg{width:92px;height:auto;align-self:stretch}.seal{width:76px;height:76px;font-size:1.3rem;margin-top:-50px;margin-bottom:0;margin-right:-22px}.seal i{display:none}
 .helpbox{padding:28px 14px 16px}.hrows{grid-template-columns:1fr}.helpbox h3{font-size:1.8rem}
 .codes{padding:46px 16px 60px}.tks{grid-template-columns:1fr;gap:22px}
 .tk{flex-direction:column}.tk-stub{width:auto;grid-template-columns:auto 1fr auto;align-items:center;justify-items:start;padding:14px 16px;border-left:0;border-top:2px dashed rgba(78,51,39,.3)}
 .tk-stub small{display:none}.tk-stub:before,.tk-stub:after{top:-11px;left:auto}.tk-stub:before{left:-10px}.tk-stub:after{right:-10px;bottom:auto}
 .tk-stub .code{grid-column:1/3}
 html,body{overflow-x:clip}
}


/* ---------- mood check-in under the letter ---------- */
.moodcard{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;align-items:center;max-width:900px;margin:40px auto 0;padding:30px 34px;background:var(--paper);border:1.5px solid var(--line);border-radius:24px;box-shadow:0 22px 40px -32px rgba(78,51,39,.6);transform:rotate(-.6deg)}
.moodcard .tape{position:absolute;top:-13px;left:50%;width:100px;height:26px;transform:translateX(-50%) rotate(-3deg);background:rgba(250,235,180,.9)}
.moodcard h2{font-size:clamp(2rem,3.6vw,2.6rem);line-height:1.02;margin-top:6px}
.mc-words p{margin:8px 0 0;color:var(--soft)}
.moodcard .moods{margin-top:0;justify-content:space-between}
.moodcard .pick{max-width:none}
.sign{font-size:1.5rem}
.lk.free,.lk{min-height:0}

/* ---------- tickets: simple, in the brand colors ---------- */
.rts{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:38px}
.rt{display:flex;filter:drop-shadow(0 16px 16px rgba(78,51,39,.14)) drop-shadow(0 1px 1px rgba(78,51,39,.12))}
.rt-main{flex:1;padding:24px 26px 22px 34px;background:var(--paper);border-radius:18px 0 0 18px;-webkit-mask:radial-gradient(circle at 0 50%,#0000 13px,#000 14px) 0 0/51% 100% no-repeat,radial-gradient(circle at 100% 0,#0000 11px,#000 12px) 100% 0/50% 51% no-repeat,radial-gradient(circle at 100% 100%,#0000 11px,#000 12px) 100% 100%/50% 51% no-repeat;mask:radial-gradient(circle at 0 50%,#0000 13px,#000 14px) 0 0/51% 100% no-repeat,radial-gradient(circle at 100% 0,#0000 11px,#000 12px) 100% 0/50% 51% no-repeat,radial-gradient(circle at 100% 100%,#0000 11px,#000 12px) 100% 100%/50% 51% no-repeat}
.rt-stub{flex:none;width:176px;display:grid;justify-items:center;align-content:center;gap:10px;padding:20px 14px;border-radius:0 18px 18px 0;background:var(--pink);border-left:2.5px dashed rgba(179,36,36,.45);text-align:center;-webkit-mask:radial-gradient(circle at 100% 50%,#0000 13px,#000 14px) 100% 0/51% 100% no-repeat,radial-gradient(circle at 0 0,#0000 11px,#000 12px) 0 0/50% 51% no-repeat,radial-gradient(circle at 0 100%,#0000 11px,#000 12px) 0 100%/50% 51% no-repeat;mask:radial-gradient(circle at 100% 50%,#0000 13px,#000 14px) 100% 0/51% 100% no-repeat,radial-gradient(circle at 0 0,#0000 11px,#000 12px) 0 0/50% 51% no-repeat,radial-gradient(circle at 0 100%,#0000 11px,#000 12px) 0 100%/50% 51% no-repeat}
.rt-cat{font:700 .64rem var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.rt h3{margin-top:6px;font-size:2rem;line-height:1.05}
.rt p{margin:5px 0 0;font-size:.95rem;color:var(--soft)}
.rt-perk{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin-top:14px}
.rt-perk b{padding:3px 11px;border-radius:999px;background:var(--cream);border:1px solid var(--line);font-size:.82rem}
.rt-perk a{font-weight:700;font-size:.88rem;border-bottom:1.5px solid}
.rt-stub small{font:700 .6rem var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--red)}
.rt .code{font:italic 500 1.75rem/1 var(--display);letter-spacing:.03em;color:var(--espresso)}
.rt .copy{padding:10px 18px;font-size:.9rem}

/* ---------- like the website: share card ---------- */
.share{max-width:1080px;margin:0 auto;padding:40px 40px 90px}
.sh-card{position:relative;display:flex;border-radius:22px;background:var(--paper);box-shadow:0 26px 44px -30px rgba(78,51,39,.6)}
.sh-stub{position:relative;flex:none;width:210px;display:grid;justify-items:center;align-content:center;gap:12px;padding:30px 16px;border-radius:22px 0 0 22px;background:radial-gradient(circle,rgba(255,255,255,.12) 1.2px,transparent 1.5px) 0 0/14px 14px,var(--red);color:#fff}
.sh-stub:after{content:"";position:absolute;right:-9px;top:10px;bottom:10px;width:18px;background:radial-gradient(circle at 50% 50%,var(--paper) 6px,transparent 6.5px) 0 0/18px 22px repeat-y}
.sh-stub small{font:700 .64rem var(--body);letter-spacing:.18em;text-transform:uppercase;opacity:.9}
.sh-30{display:grid;justify-items:center;padding:12px 18px;border-radius:12px;background:#FAEBB4;color:var(--red);font:600 2.6rem/1 var(--display);transform:rotate(-6deg);box-shadow:0 8px 16px -8px rgba(0,0,0,.4)}
.sh-30 i{font:700 .56rem var(--body);font-style:normal;letter-spacing:.16em;text-transform:uppercase;margin-top:4px}
.sh-body{flex:1;display:flex;align-items:center;gap:30px;padding:30px 36px;background:radial-gradient(circle,rgba(78,51,39,.1) 1.2px,transparent 1.4px) 0 0/18px 18px;border-radius:0 22px 22px 0}
.sh-body h2{font-size:clamp(2rem,3.4vw,2.6rem);line-height:1.05}
.sh-body p{margin:8px 0 0;max-width:46ch;color:var(--soft);font-size:.98rem}
.steps{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.steps span{display:inline-flex;align-items:center;gap:8px;padding:5px 14px 5px 6px;border-radius:999px;background:var(--paper);border:1px solid var(--line);box-shadow:0 4px 10px -6px rgba(78,51,39,.4);font:500 1rem var(--display)}
.steps i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font:600 .85rem var(--display);font-style:normal}
.steps span:nth-child(1) i{background:#F5CDCE;color:var(--red)}.steps span:nth-child(2) i{background:#FAEBB4;color:#A8571F}.steps span:nth-child(3) i{background:#D9C2E8;color:#7E3F8F}
.sh-cta{flex:none;display:grid;justify-items:center;gap:10px;text-align:center}
.sh-cta small{max-width:20ch;font-size:.78rem;color:var(--soft)}
.btn-red{padding:15px 28px;border-radius:999px;background:var(--red);color:#fff;font:700 .82rem var(--body);letter-spacing:.16em;text-transform:uppercase;box-shadow:0 10px 18px -10px rgba(179,36,36,.9)}
.smiley{position:absolute;left:-16px;top:-18px;z-index:2;width:46px;height:46px;transform:rotate(-10deg)}.smiley svg{width:100%;height:100%}
.sh-card .tape{position:absolute;top:-12px;left:46%;width:80px;height:24px;transform:rotate(-3deg);background:rgba(250,235,180,.95);z-index:2}
.stamp2{position:absolute;right:-18px;bottom:-36px;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;border:2px dashed var(--red);background:var(--paper);color:var(--red);font:700 .52rem/1.4 var(--body);letter-spacing:.14em;text-transform:uppercase;text-align:center;transform:rotate(-14deg)}

/* ---------- like the website: blue newsletter + footer ---------- */
.news{position:relative;padding:110px 20px 90px;background:#C3D6F2;text-align:center;clip-path:ellipse(120% 100% at 50% 100%)}
.news h2{font-size:clamp(2.4rem,5vw,3.8rem)}
.news p{max-width:44ch;margin:10px auto 0;font-size:1.08rem}
.news p b{color:var(--red)}
.nform{display:flex;gap:12px;max-width:520px;margin:26px auto 0}
.nform input{flex:1;min-width:0;padding:15px 22px;border-radius:999px;border:1.5px solid var(--espresso);background:var(--paper);font:400 1rem var(--body);color:var(--espresso)}
.nform button{padding:0 28px;border:0;border-radius:999px;background:var(--espresso);color:var(--cream);font:700 .95rem var(--body);text-transform:uppercase;letter-spacing:.04em}
.news small{display:block;margin-top:12px;font-size:.85rem;color:var(--soft)}
.n1{left:9%;top:44%;background:var(--paper);color:var(--espresso);border-color:#fff;--r:8deg}
.n2{right:10%;top:34%;background:#BFCFA0;color:#4F6B32;--r:-5deg}
.seal2{position:absolute;right:10%;top:-64px;z-index:3;display:grid;place-items:center;align-content:center;width:120px;height:120px;border-radius:50%;background:#FAEBB4;border:4px solid #fff;box-shadow:0 10px 20px -10px rgba(78,51,39,.5);color:var(--red);font:600 2.1rem/1 var(--display);transform:rotate(-10deg)}
.seal2 small{font:700 .58rem var(--body);letter-spacing:.18em;text-transform:uppercase}.seal2 i{font:italic 400 .9rem var(--display)}
.sfoot{position:relative;background:var(--espresso);color:var(--cream);text-align:center;padding:64px 20px 0}
.bigname{overflow:hidden}
.sfoot nav{display:flex;align-items:center;justify-content:center;gap:56px}
.sfoot nav div{display:flex;gap:48px}
.sfoot nav a{font:600 .74rem var(--body);letter-spacing:.18em;text-transform:uppercase}
.sfoot nav img{width:84px}
.fsoc{display:flex;justify-content:center;gap:22px;margin-top:28px}
.fsoc .ico{width:24px;height:24px}
.bigname{margin:30px 0 -.12em;font:400 clamp(40px,9.6vw,130px)/.9 var(--footer);text-transform:uppercase;white-space:nowrap}
.fcopy{display:none}

@media(max-width:860px){
 .moodcard{grid-template-columns:1fr;gap:12px;margin:34px 16px 0;padding:26px 16px 18px;text-align:center}
 .moodcard .moods{justify-content:center}
 .rts{grid-template-columns:1fr;gap:24px}
 .rt{flex-direction:column}
 .rt-main{padding:22px 20px 20px;border-radius:18px 18px 0 0;-webkit-mask:radial-gradient(circle at 0 100%,#0000 11px,#000 12px) 0 100%/51% 51% no-repeat,radial-gradient(circle at 100% 100%,#0000 11px,#000 12px) 100% 100%/51% 51% no-repeat,linear-gradient(#000,#000) 0 0/100% 51% no-repeat;mask:radial-gradient(circle at 0 100%,#0000 11px,#000 12px) 0 100%/51% 51% no-repeat,radial-gradient(circle at 100% 100%,#0000 11px,#000 12px) 100% 100%/51% 51% no-repeat,linear-gradient(#000,#000) 0 0/100% 51% no-repeat}
 .rt-stub{width:auto;grid-template-columns:1fr auto;justify-items:start;text-align:left;gap:4px 10px;padding:16px 18px;border-left:0;border-top:2.5px dashed rgba(179,36,36,.45);border-radius:0 0 18px 18px;-webkit-mask:radial-gradient(circle at 0 0,#0000 11px,#000 12px) 0 0/51% 51% no-repeat,radial-gradient(circle at 100% 0,#0000 11px,#000 12px) 100% 0/51% 51% no-repeat,linear-gradient(#000,#000) 0 100%/100% 51% no-repeat;mask:radial-gradient(circle at 0 0,#0000 11px,#000 12px) 0 0/51% 51% no-repeat,radial-gradient(circle at 100% 0,#0000 11px,#000 12px) 100% 0/51% 51% no-repeat,linear-gradient(#000,#000) 0 100%/100% 51% no-repeat}
 .rt .copy{grid-column:2;grid-row:1/3}
 .share{padding:26px 16px 70px}.sh-card{flex-direction:column}
 .sh-stub{width:auto;flex-direction:row;border-radius:22px 22px 0 0;padding:22px 16px 26px}
 .sh-stub:after{left:10px;right:10px;top:auto;bottom:-9px;width:auto;height:18px;background:radial-gradient(circle at 50% 50%,var(--paper) 6px,transparent 6.5px) 0 0/22px 18px repeat-x}
 .sh-body{flex-direction:column;align-items:stretch;padding:26px 20px 30px;border-radius:0 0 22px 22px;text-align:center}
 .steps{justify-content:center}.sh-body p{margin:8px auto 0}
 .stamp2{width:70px;height:70px;right:-6px;bottom:-30px;font-size:.44rem}
 .news{padding:80px 18px 80px;clip-path:ellipse(180% 100% at 50% 100%)}
 .nform{flex-direction:column}.nform button{padding:14px}
 .n1{left:4%;top:26px}.n2{left:4%;right:auto;top:auto;bottom:24px}
 .seal2{width:86px;height:86px;font-size:1.5rem;top:-46px;right:6%}.seal2 i{display:none}
 .sfoot{padding:60px 20px 30px}
 .sfoot nav{flex-direction:column;gap:18px}.sfoot nav img{order:-1;width:72px}.sfoot nav div{gap:20px;flex-wrap:wrap;justify-content:center}
 .bigname{display:none}.fcopy{display:block;margin:18px 0 0;font-size:.85rem;opacity:.7}
}

/* got a question: same cards as the links */
.helpbox{margin-top:34px;padding:0;background:none;border:0;border-radius:0;display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:center;text-align:left}
.hb-head h3{font-size:2.3rem;line-height:1.05}
.hb-head p{margin:8px 0 0;color:var(--soft)}
.hrows{grid-template-columns:1fr;margin-top:0;gap:12px}
.hrow{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:16px 20px 16px 16px;box-shadow:0 14px 26px -22px rgba(78,51,39,.6)}
.hrow b{font:500 1.3rem/1.15 var(--display)}
@media(max-width:860px){.helpbox{grid-template-columns:1fr;gap:14px;text-align:center}.hrows{text-align:left}.hrow b{font-size:1.15rem}}

/* each ticket its own color */
.rt.t-pink{--tb:#F5CDCE;--ti:#B32424}
.rt.t-blue{--tb:#D6E3F6;--ti:#3768B2}
.rt-stub{background:var(--tb);border-color:color-mix(in srgb,var(--ti) 45%,transparent)}
.rt-cat,.rt-stub small{color:var(--ti)}
.rt.t-blue .copy.done{background:var(--ti)}
.rt-main{background:linear-gradient(90deg,color-mix(in srgb,var(--tb) 30%,var(--paper)),var(--paper) 40%)}

/* calmer phones: fewer words, more air */
@media(max-width:860px){
 .stk{display:none}
 .letter{padding:44px 20px 70px}.letter h1{font-size:2.9rem}.letter .lead{font-size:.98rem}.sign{font-size:1.25rem;margin-top:10px}
 .letter .socials{gap:8px;margin-top:18px}.letter .socials a{width:40px;height:40px}
 .tag{font-size:.82rem;padding:10px 16px 9px 28px}
 .moodcard{margin-top:40px;padding:24px 14px 16px}.mc-words p{display:none}.moodcard h2{font-size:1.9rem}
 .mood{font-size:.66rem}.mood .f{width:34px;height:34px}
 .pick{padding:12px 16px}.pick b{font-size:1.2rem}.pick span:last-child{display:none}
 .links{padding-top:50px}.links h2,.codes h2{font-size:2.3rem}
 .lk p{display:none}.lk.shop p{display:block;font-size:.88rem}
 .lk h3{font-size:1.2rem}.lk{padding:14px 16px}.chip{width:40px;height:40px}.chip svg{width:22px;height:22px}
 .helpbox{margin-top:44px}.hb-head h3{font-size:1.9rem}.hb-head p{display:none}
 .hrow{padding:12px 14px 12px 12px}.hrow small{display:none}.hrow .chip{width:40px;height:40px}
 .ribbon{margin-top:56px}
 .codes{padding-top:56px}.codes .lead{font-size:.95rem}
 .rt p{display:none}.rt h3{font-size:1.7rem}.rt-main{padding:18px 18px 16px;background:var(--paper)}
 .share{padding-top:40px}.sh-body p,.steps,.sh-cta small,.stamp2{display:none}
 .sh-stub{padding:18px 16px 22px}.sh-30{font-size:2rem;padding:10px 14px}
 .sh-body{padding:22px 18px 26px;gap:16px}.sh-body h2{font-size:1.9rem}
}

.letter-hero{padding-top:70px}
@media(max-width:860px){.tag{display:none}.letter-hero{padding-top:28px}}

@media(max-width:860px){.peek{display:none}.letter{padding-bottom:38px}}

/* ---------- live page extras ---------- */
.k-pink{background:#F5CDCE !important;color:#B32424 !important}
.k-lavender{background:#D9C2E8 !important;color:#7E3F8F !important}
.k-blue{background:#C3D6F2 !important;color:#3768B2 !important}
.k-sage{background:#BFCFA0 !important;color:#4F6B32 !important}
.k-yellow{background:#FAEBB4 !important;color:#A8571F !important}
.rt.t-lavender{--tb:#E6D7F0;--ti:#8A4A9A}
.rt.t-yellow{--tb:#FAEBB4;--ti:#A8571F}
.chip.c-yellow{background:#FAEBB4;color:#A8571F}.chip.c-lavender{background:#D9C2E8;color:#7E3F8F}.chip.c-pink{background:var(--pink);color:var(--red)}
.pick[hidden]{display:none}
.pick.pop{animation:pickpop .35s ease both}
@keyframes pickpop{from{opacity:0;transform:translateY(8px) rotate(-1.2deg) scale(.97)}}
.mood:focus-visible{outline:2.5px solid var(--red);outline-offset:2px}
.copy:focus-visible,.lk:focus-visible,.hrow:focus-visible{outline:2.5px solid var(--red);outline-offset:3px}
.toast{position:fixed;left:50%;bottom:max(22px,env(safe-area-inset-bottom));z-index:20;max-width:calc(100% - 32px);padding:12px 20px;border-radius:999px;background:var(--espresso);color:var(--cream);font-weight:600;text-align:center;box-shadow:0 14px 30px -12px rgba(78,51,39,.7);opacity:0;transform:translate(-50%,16px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none !important;transition:none !important}}

/* ---------- arrows ---------- */
.go .chev{width:20px;height:20px}
.go .out{width:18px;height:18px}
.lk .go{width:auto;height:auto;box-shadow:none;background:none !important;color:var(--espresso);opacity:.55;transition:transform .2s,opacity .2s}
.lk:hover .go{opacity:.9;transform:translateX(3px)}
.lk.shop .go{color:var(--cream);opacity:.85}
.lk.free .go{color:var(--red);opacity:.8}
.grid .lk:not(.shop):not(.friend) .go{top:24px;right:20px}
.hrow .go{opacity:.7}.hrow:hover .go{opacity:1;transform:translate(2px,-2px)}
.rt-perk a{display:inline-flex;align-items:center;gap:3px}
.rt-perk a .out{width:14px;height:14px}

/* ---------- got a question (like Linkdrop) ---------- */
.helpbox{display:block;margin-top:40px}
.hb-head h3{font-size:2.4rem}
.hb-head p{max-width:none;font-size:1.02rem;line-height:1.55;color:var(--espresso)}
.hb-head p b a{text-decoration:none}
.hb-head p b a:hover{color:var(--red)}
.hrows{grid-template-columns:1fr 1fr;margin-top:16px;gap:14px}
.hrow{border:1px solid rgba(78,51,39,.35);border-radius:22px;padding:14px 18px 14px 14px}
.hrow b{font:600 1.05rem/1.25 var(--body)}
.hrow small{display:block;font-size:.9rem}

/* ---------- footer brand (phones only) ---------- */
.ft-brand{display:none}
.sfoot nav a .chev{display:none}

@media(max-width:860px){
 .helpbox{text-align:left}.hb-head p{display:block;font-size:.95rem}
 .hrows{grid-template-columns:1fr}.hrow small{display:block}
 /* tickets on phones: still side by side, smaller */
 .rt{flex-direction:row}
 .rt-main{padding:16px 12px 16px 22px;border-radius:16px 0 0 16px;background:var(--paper);
  -webkit-mask:radial-gradient(circle at 0 50%,#0000 11px,#000 12px) 0 0/51% 100% no-repeat,radial-gradient(circle at 100% 0,#0000 9px,#000 10px) 100% 0/50% 51% no-repeat,radial-gradient(circle at 100% 100%,#0000 9px,#000 10px) 100% 100%/50% 51% no-repeat;
  mask:radial-gradient(circle at 0 50%,#0000 11px,#000 12px) 0 0/51% 100% no-repeat,radial-gradient(circle at 100% 0,#0000 9px,#000 10px) 100% 0/50% 51% no-repeat,radial-gradient(circle at 100% 100%,#0000 9px,#000 10px) 100% 100%/50% 51% no-repeat}
 .rt-stub{width:122px;display:grid;grid-template-columns:none;justify-items:center;text-align:center;gap:7px;padding:14px 8px 14px 10px;border-top:0;border-left:2.5px dashed color-mix(in srgb,var(--ti) 45%,transparent);border-radius:0 16px 16px 0;
  -webkit-mask:radial-gradient(circle at 100% 50%,#0000 11px,#000 12px) 100% 0/51% 100% no-repeat,radial-gradient(circle at 0 0,#0000 9px,#000 10px) 0 0/50% 51% no-repeat,radial-gradient(circle at 0 100%,#0000 9px,#000 10px) 0 100%/50% 51% no-repeat;
  mask:radial-gradient(circle at 100% 50%,#0000 11px,#000 12px) 100% 0/51% 100% no-repeat,radial-gradient(circle at 0 0,#0000 9px,#000 10px) 0 0/50% 51% no-repeat,radial-gradient(circle at 0 100%,#0000 9px,#000 10px) 0 100%/50% 51% no-repeat}
 .rt .copy{grid-column:auto;grid-row:auto;padding:8px 13px;font-size:.82rem;gap:6px}
 .rt .copy svg{width:13px;height:13px}
 .rt .code{font-size:1.3rem}
 .rt h3{font-size:1.45rem}
 .rt-cat{font-size:.56rem;letter-spacing:.12em}
 .rt-perk{flex-direction:column;align-items:flex-start;gap:8px;margin-top:10px}
 .rt-perk b{font-size:.74rem;padding:3px 9px}
 .rt-perk a{font-size:.82rem}
 /* footer like the website on phones */
 .sfoot{text-align:left;padding:40px 20px 30px}
 .ft-brand{display:flex;align-items:center;gap:14px;margin:0 0 22px;font:600 1.45rem/1.1 var(--display)}
 .ft-brand img{width:64px;height:64px;object-fit:contain}
 .sfoot nav{display:block}
 .sfoot nav img{display:none}
 .sfoot nav div{display:block}
 .sfoot nav div:first-child{border-top:1px solid rgba(245,239,230,.2)}
 .sfoot nav a{display:flex;align-items:center;justify-content:space-between;padding:17px 2px;border-bottom:1px solid rgba(245,239,230,.2);font-size:.8rem}
 .sfoot nav a .chev{display:block;width:18px;height:18px;opacity:.85}
 .fsoc{justify-content:flex-start;gap:12px;margin-top:28px}
 .fsoc a{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(245,239,230,.55)}
 .fsoc .ico{width:20px;height:20px}
 .fcopy{margin-top:22px}
}

/* ---------- Friends card on phones: a little more fun ---------- */
@media(max-width:860px){
 .sh-card{transform:rotate(-1deg)}
 .sh-stub{gap:10px;padding:22px 16px 28px}
 .sh-30{font-size:2.4rem;padding:12px 18px;animation:wob 3.5s ease-in-out infinite}
 @keyframes wob{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(3deg) scale(1.04)}}
 .sh-body h2{font-size:2rem}
 .steps{display:flex;flex-wrap:nowrap;justify-content:center;gap:6px;margin-top:4px}
 .steps span{padding:4px 10px 4px 4px;font-size:.88rem;gap:6px;white-space:nowrap}
 .steps i{width:20px;height:20px;font-size:.72rem}
 .steps span:nth-child(2){transform:rotate(-3deg)}
 .stamp2{display:grid;width:66px;height:66px;right:-8px;top:-22px;bottom:auto;font-size:.42rem;background:var(--paper);transform:rotate(12deg)}
 .smiley{width:42px;height:42px;left:-10px;top:-14px;animation:wob 4s ease-in-out infinite}
 .sh-card .tape{left:30%}
 .btn-red{padding:14px 26px}
}
