/* Public collection landing (collections/landing/*). Scoped to .tl; shares the
   offer pages' cream, ink, action red and Fredoka headings. Seasonal variants
   only change tokens on .tl--<variant>. */
.tl{--tl-cream:#fbf4e6;--tl-paper:#fffdf8;--tl-ink:#26221d;--tl-soft:#62594f;--tl-line:#d8cdbd;--tl-red:#b8320c;--tl-red-dark:#972908;--tl-band:#1e3b31;--tl-band-2:#2a4b3f;--tl-band-ink:#fbf4e6;--tl-gold:#e2b85c;--tl-sage:#8e9b7e;--tl-cert:#7b3830;
  color:var(--tl-ink);background:var(--tl-cream);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.5;overflow-x:clip}
.tl *{box-sizing:border-box}.tl img{display:block;max-width:100%;height:auto}
.tl h1,.tl h2,.tl h3,.tl p,.tl figure,.tl dl,.tl dd,.tl ol,.tl ul{margin:0;padding:0}
.tl h1,.tl h2,.tl h3{font-family:Fredoka,system-ui,sans-serif;font-weight:700;letter-spacing:-.03em;text-wrap:balance}
.tl a{color:inherit}.tl :is(a,button,summary):focus-visible{outline:3px solid var(--tl-gold);outline-offset:4px}
.tl-wrap{width:min(100% - 64px,1280px);margin-inline:auto}
.tl-giant{font-size:clamp(52px,9vw,140px);line-height:.92}
.tl-big{font-size:clamp(38px,5.4vw,82px);line-height:.98}
.tl-fine{font-size:13px;color:var(--tl-soft);line-height:1.6}
.tl-section{padding-block:clamp(56px,8vw,112px)}
.tl-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 40px;margin-bottom:clamp(28px,4vw,48px)}
.tl-head p{font-size:clamp(17px,1.6vw,21px);color:var(--tl-soft);max-width:34ch}
.tl-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}
.tl-button{display:inline-flex;align-items:center;gap:14px;min-height:56px;padding:14px 26px;border-radius:8px;background:var(--tl-red);color:#fffaf2;font-size:17px;font-weight:650;text-decoration:none;box-shadow:0 6px 18px #6b1c0633}
.tl-button:hover{background:var(--tl-red-dark)}
.tl-link{font-size:15px;font-weight:600;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}
.tl-skip{position:absolute;left:-9999px}.tl-skip:focus{position:static;display:inline-block;margin-top:12px}

/* Shared paper look */
.tl-tile{display:block;width:100%;min-width:0;padding:0;border:0;background:var(--color-paper);border-radius:3px;box-shadow:0 1px 2px #3a2c1b1f,0 4px 12px #3a2c1b14;cursor:zoom-in;transition:transform .18s ease,box-shadow .18s ease}
.tl-tile img{width:100%;height:auto;aspect-ratio:612/792;object-fit:contain}
.tl-tile:hover{transform:translateY(-3px) scale(1.035);box-shadow:0 2px 4px #3a2c1b24,0 12px 26px #3a2c1b2e;position:relative;z-index:1}
.tl-cert{display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--tl-paper);color:#293f39;border:1px solid var(--tl-cert);outline:5px solid var(--tl-paper);box-shadow:0 0 0 6px var(--tl-paper),0 0 0 7px #7b383055,0 10px 24px #1b0f0640;padding:9% 6%;container-type:inline-size}
.tl-cert small{font-size:max(9px,4.6cqw);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tl-cert)}
.tl-cert strong{font-family:Fredoka,system-ui,sans-serif;font-size:max(15px,11cqw);line-height:1.02;margin:5% 0;color:var(--tl-ink)}
.tl-cert span{font-size:max(9px,5.2cqw);color:var(--tl-soft)}
.tl-cert em{font-style:normal;font-size:max(8px,4cqw);margin-top:6%;color:#8a7f72;letter-spacing:.03em}
.tl-photo{overflow:hidden;border-radius:16px;background:#e9dcc6}
.tl-photo img{width:100%;height:100%;object-fit:cover}

/* Hero */
.tl-hero{background:radial-gradient(120% 90% at 85% 10%,#2f5547 0,transparent 60%),var(--tl-band);color:var(--tl-band-ink);padding-block:clamp(40px,6vw,84px) clamp(48px,7vw,96px)}
.tl-hero__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,4vw,64px);align-items:center}
.tl-hero h1{font-size:clamp(46px,6.2vw,92px);line-height:.96;color:var(--tl-band-ink)}
.tl-hero__line{font-size:clamp(18px,1.7vw,23px);line-height:1.45;margin-top:22px!important;max-width:30ch;color:#f0e6d3}
.tl-hero .tl-cta{margin-top:34px}
.tl-hero .tl-link{color:var(--tl-band-ink)}
.tl-hero .tl-fine{color:#d9ccb4;margin-top:18px}
.tl-pile{position:relative;aspect-ratio:1.08;container-type:inline-size}
.tl-pile__page,.tl-pile__book,.tl-pile__cert{position:absolute}
.tl-pile__page{background:var(--color-paper);padding:0;border-radius:2px;box-shadow:0 3px 8px #0a140f40,0 14px 30px #0a140f40}
.tl-pile__page img{width:100%;aspect-ratio:612/792;object-fit:contain}
.tl-pile__p1{left:0;top:4%;width:29%;rotate:-9deg;z-index:1}
.tl-pile__p5{left:40%;top:0;width:23%;rotate:4deg;z-index:1}
.tl-pile__p2{right:1%;top:3%;width:30%;rotate:8deg;z-index:2}
.tl-pile__p6{left:-3%;top:47%;width:24%;rotate:6deg;z-index:2}
.tl-pile__p3{right:-2%;top:44%;width:29%;rotate:-6deg;z-index:4}
.tl-pile__p4{left:55%;top:58%;width:25%;rotate:9deg;z-index:6}
.tl-pile__book{left:22%;top:15%;width:37%;padding:2.2% 2% 2.2% 4.5%;background:var(--tl-sage);border-radius:4px 7px 7px 4px;rotate:-4deg;z-index:3;box-shadow:6px 12px 26px #0a140f66;border-right:5px solid #fff8e9}
.tl-pile__book img{width:100%;aspect-ratio:655/927;object-fit:cover}
.tl-ribbon{position:absolute;left:-3%;right:-3%;top:72%;height:8%;background:var(--tl-red);box-shadow:inset 0 2px #e16b40,inset 0 -2px #8b260c}
.tl-bow{position:absolute;left:62%;top:71%;width:11%;aspect-ratio:1;background:var(--tl-red);border-radius:45%;z-index:2}
.tl-bow:before,.tl-bow:after{content:'';position:absolute;top:-45%;width:170%;height:190%;border:max(5px,2.4cqw) solid var(--tl-red);z-index:-1}
.tl-bow:before{right:55%;border-radius:65% 30% 45% 30%;rotate:18deg}.tl-bow:after{left:55%;border-radius:30% 65% 30% 45%;rotate:-18deg}
.tl-pile__cert{left:6%;bottom:1%;width:47%;rotate:-3deg;z-index:5}

/* Art wall */
.tl-wall{padding-block:clamp(56px,7vw,96px) clamp(40px,5vw,64px);background:linear-gradient(var(--tl-cream),#f4e9d6)}
.tl-wall h2{margin-bottom:clamp(28px,4vw,48px)}
.tl-wall__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(102px,1fr));gap:12px;padding-inline:clamp(16px,2.4vw,40px)}
.tl-wall__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}
.tl-wall__more{display:none}

/* Story */
.tl-story{background:var(--tl-paper)}
.tl-story .booklet-page-grid{max-width:none;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,4vw,64px);align-items:start}
.tl-story .booklet-page-grid__enlarge{max-width:540px;box-shadow:0 10px 34px #3a2c1b33}
.tl-story .booklet-page-grid__overview{max-width:none}
.tl-story .booklet-page-grid__pages{gap:12px}
.tl-story__note{margin-top:18px}
.tl-strip{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:10px;padding-inline:clamp(16px,2.4vw,40px);margin-top:clamp(40px,5vw,64px)}

/* Gift steps */
.tl-steps{background:var(--tl-cream)}
.tl-steps__list{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.tl-step h3{font-size:clamp(20px,1.7vw,25px);line-height:1.15;margin-top:18px;display:flex;gap:12px;align-items:baseline}
.tl-step h3 span{flex:none;display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--tl-red);color:var(--color-paper);font-size:17px;letter-spacing:0;translate:0 -2px}
.tl-step__art{position:relative;aspect-ratio:4/5;border-radius:18px;overflow:hidden;display:grid;place-items:center;padding:8%}
.tl-step__art--checkout{background:#e3e7d6}.tl-step__art--email{background:#f1e2d0}.tl-step__art--tree{background:var(--tl-band)}.tl-step__art--arrive{background:#f3d9c9}
.tl-mock{width:100%;background:var(--color-paper);border-radius:12px;padding:8%;box-shadow:0 10px 26px #3a2c1b26;font-size:13px;line-height:1.45;color:var(--tl-ink)}
.tl-mock strong{display:block;font-family:Fredoka,system-ui,sans-serif;font-size:18px;line-height:1.15}
.tl-mock__price{display:block;color:var(--tl-soft);margin-top:2px}
.tl-mock dl{margin:14px 0!important;border-top:1px solid #eadfcd}
.tl-mock dl div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #eadfcd}
.tl-mock dt{color:var(--tl-soft)}.tl-mock dd{text-align:right;font-weight:600}
.tl-mock__pay{display:block;text-align:center;background:var(--color-ink);color:var(--color-paper);border-radius:8px;padding:9px;font-weight:600;margin-top:12px}
.tl-mock__from{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tl-soft);margin-bottom:10px}
.tl-mock--email p{color:#44403c;margin-top:10px}
.tl-mock q{display:block;margin-top:12px;padding:8px 12px;border-left:3px solid #f59e0b;background:var(--color-warn-soft);font-style:italic;color:#44403c;quotes:none}
.tl-step__tree{position:absolute;width:58%;left:6%;top:8%;rotate:-6deg;background:var(--color-paper);box-shadow:0 10px 24px #0006}
.tl-step__cert{position:absolute;right:6%;bottom:8%;width:62%;rotate:4deg}
.tl-step__art--arrive{grid-template-columns:.85fr auto 1fr;gap:4%;padding:8% 6%}
.tl .tl-step__photo{width:100%;max-width:none;aspect-ratio:2/3;object-fit:cover;border-radius:10px;border:5px solid var(--color-paper);box-shadow:0 8px 20px #3a2c1b33;rotate:-4deg}
.tl-step__arrow{font-size:28px;font-weight:700;color:var(--tl-red)}
.tl-step__fan{position:relative;width:100%;aspect-ratio:3/4}
.tl-step__fan img{position:absolute;width:76%;aspect-ratio:612/792;object-fit:contain;background:var(--color-paper);box-shadow:0 6px 16px #3a2c1b33}
.tl-step__fan img:nth-child(1){left:0;top:0;rotate:-8deg;z-index:3;object-fit:cover}.tl-step__fan img:nth-child(2){left:18%;top:10%;rotate:3deg;z-index:2}.tl-step__fan img:nth-child(3){left:30%;top:22%;rotate:10deg;z-index:1}
.tl-steps .tl-fine{margin-top:22px}

/* Christmas */
.tl-xmas{background:radial-gradient(90% 70% at 10% 0,#2f5547 0,transparent 60%),var(--tl-band);color:var(--tl-band-ink)}
.tl-xmas h2{color:var(--tl-band-ink);margin-bottom:clamp(28px,4vw,48px);max-width:16ch}
.tl-xmas__grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px}
.tl-tile--lead{grid-column:span 2;grid-row:span 2}
.tl-xmas .tl-tile{box-shadow:0 4px 14px #0a140f66}

/* Variety */
.tl-variety h2{margin-bottom:clamp(28px,4vw,48px);max-width:18ch}
.tl-variety__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.4vw,32px)}
.tl-kind__art{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px;border-radius:16px;background:#efe3cf}
.tl-kind:nth-child(2) .tl-kind__art{background:#e3e7d6}.tl-kind:nth-child(3) .tl-kind__art{background:#f3d9c9}.tl-kind:nth-child(4) .tl-kind__art{background:#d9e2ea}.tl-kind:nth-child(5) .tl-kind__art{background:var(--tl-band)}.tl-kind:nth-child(6) .tl-kind__art{background:#f2e3b8}
.tl-kind h3{font-size:22px;line-height:1.1;margin-top:16px;display:flex;align-items:baseline;gap:10px}
.tl-kind h3 strong{font-size:clamp(40px,3.6vw,54px);color:var(--tl-red);letter-spacing:-.04em}
.tl-kind p{color:var(--tl-soft);margin-top:2px}

/* Value */
.tl-value{background:#f4e9d6}
.tl-value__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,64px);align-items:center}
.tl-value__sum{font-family:Fredoka,system-ui,sans-serif;font-weight:700;font-size:clamp(24px,2.6vw,36px);margin:22px 0 10px!important;color:var(--tl-soft)}
.tl-value__sum span{color:var(--tl-ink)}
.tl-value__copy>p:last-child{font-size:18px;color:var(--tl-soft);max-width:30ch}
.tl-tags{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px 12px}
.tl-tags span{position:relative;background:var(--color-paper);border-radius:2px;box-shadow:0 2px 8px #3a2c1b24}
.tl-tags img{width:100%;aspect-ratio:612/792;object-fit:contain}
.tl-tags i{position:absolute;right:-6px;top:-8px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--tl-red);color:var(--color-paper);font:700 13px/1 Fredoka,system-ui,sans-serif;font-style:normal;rotate:12deg;box-shadow:0 2px 6px #6b1c0640}

/* Practical */
.tl-practical h2{margin-bottom:clamp(28px,4vw,48px);max-width:16ch}
.tl-practical__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"printer printer spreads" "rain sofa chips";gap:clamp(14px,2vw,24px)}
.tl-practical__printer{grid-area:printer;aspect-ratio:2/1}.tl-practical__rain{grid-area:rain;aspect-ratio:3/2}.tl-practical__rain img{object-position:50% 30%}.tl-practical__sofa{grid-area:sofa;aspect-ratio:3/2}
.tl-practical__spreads{grid-area:spreads;display:grid;gap:clamp(14px,2vw,24px);align-content:center}
.tl-tile--spread img{aspect-ratio:792/612}
.tl-chips{grid-area:chips;list-style:none;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px}
.tl-chips li{font-family:Fredoka,system-ui,sans-serif;font-weight:700;font-size:clamp(19px,1.7vw,24px);line-height:1.15;padding:12px 16px;border-radius:12px;background:var(--color-paper);box-shadow:0 2px 8px #3a2c1b14}
.tl-practical .tl-fine{margin-top:16px}

/* Last minute + final CTA */
.tl-last{background:var(--tl-paper);border-top:1px solid var(--tl-line)}
.tl-last__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.tl-last__photo{position:relative;aspect-ratio:1/1.04;overflow:visible;max-width:560px}
.tl-last__photo img{border-radius:18px}
.tl-last__cert{position:absolute;right:-4%;bottom:-6%;width:44%;rotate:5deg}
.tl-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px;margin:30px 0!important}
.tl-facts dt{font-family:Fredoka,system-ui,sans-serif;font-weight:700;font-size:clamp(22px,2.2vw,30px);line-height:1.05;color:var(--tl-red)}
.tl-facts dd{color:var(--tl-soft);margin-top:4px!important}
.tl-last__price{font-size:40px;font-weight:750;line-height:1.1;margin-bottom:22px!important}
.tl-last__price span{font-size:15px;font-weight:500;color:var(--tl-soft)}
.tl-last .tl-fine{margin-top:12px}

/* FAQ */
.tl-faq{border-top:1px solid var(--tl-line)}
.tl-faq__grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(24px,4vw,64px)}
.tl-faq details{border-top:1px solid var(--tl-line);padding:14px 0}
.tl-faq summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:650;font-size:18px}
.tl-faq details p{color:var(--tl-soft);max-width:62ch;padding-bottom:6px}
.tl-faq .tl-fine{margin-top:18px}

/* Lightbox */
.tl-lightbox{width:min(94vw,760px);max-height:94vh;padding:0;border:0;border-radius:12px;background:var(--tl-paper);color:var(--tl-ink)}
.tl-lightbox::backdrop{background:#140f0bd9}
.tl-lightbox__bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px 8px 16px;font-size:14px}
.tl-lightbox__bar button{min-width:44px;min-height:44px;border:0;border-radius:8px;background:transparent;font-size:20px;cursor:pointer;color:inherit}
.tl-lightbox__bar button:hover{background:#efe3cf}
.tl-lightbox img{width:100%;height:auto;max-height:calc(94vh - 64px);object-fit:contain;background:var(--color-paper)}

@media (max-width:1100px){
  .tl-strip{grid-template-columns:repeat(auto-fill,minmax(82px,1fr))}
  .tl-steps__list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tl-variety__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .tl-hero__grid,.tl-value__grid,.tl-last__grid,.tl-faq__grid{grid-template-columns:1fr}
  .tl-pile{max-width:620px;width:100%;margin-inline:auto}
  .tl-story .booklet-page-grid{grid-template-columns:1fr}
  .tl-practical__grid{grid-template-columns:1fr 1fr;grid-template-areas:"printer printer" "spreads chips" "rain sofa"}
}
@media (max-width:700px){
  .tl-wrap{width:calc(100% - 32px)}
  .tl-wall__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-inline:16px}
  .tl-wall__grid:not(.is-open) .tl-tile:nth-child(n+49){display:none}
  .tl-wall__more{display:inline-flex;align-items:center;min-height:48px;padding:10px 18px;border-radius:8px;border:1px solid var(--tl-ink);background:transparent;font:600 15px/1.2 system-ui,sans-serif;color:var(--tl-ink);cursor:pointer}
  .tl-wall__grid.is-open+.tl-wall__foot .tl-wall__more{display:none}
  .tl-tile:hover{transform:none}
  .tl-strip{grid-auto-flow:column;grid-template-columns:none;grid-template-rows:repeat(2,auto);grid-auto-columns:27vw;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x proximity}
  .tl-strip .tl-tile{scroll-snap-align:start}
  .tl-steps__list{grid-template-columns:1fr;gap:34px}
  .tl-step__art{aspect-ratio:5/4}
  .tl-step__art--arrive{padding:6% 12%}
  .tl-xmas__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
  .tl-variety__grid{grid-template-columns:1fr}
  .tl-kind__art{padding:12px;gap:8px}
  .tl-practical__grid{grid-template-columns:1fr;grid-template-areas:"printer" "spreads" "chips" "rain"}
  .tl-practical__sofa{display:none}
  .tl-chips{flex-direction:row;flex-wrap:wrap}.tl-chips li{font-size:17px;padding:10px 14px}
  .tl-tags{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 10px}.tl-tags span:nth-child(n+13){display:none}.tl-tags i{width:34px;height:34px;font-size:11px}
  .tl-facts{grid-template-columns:1fr 1fr;gap:16px 18px}
  .tl-last__cert{right:3%;bottom:-5%;width:46%}
  .tl-chips{justify-content:flex-start}
  .tl-button{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.tl-tile{transition:none}.tl-tile:hover{transform:none}}
