/* Four Red Room compositions, all using the approved Fredoka display face. */
.layout-bar{background:var(--cream);color:var(--ink);border-bottom:1px solid var(--line);padding:13px 0;font-family:Nunito,Arial,sans-serif}.layout-bar>.wrap{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.layout-label{font-size:.65rem;font-weight:800;letter-spacing:.05em;line-height:1.5}.layout-label>span{display:block;letter-spacing:0;font-size:.7rem;font-weight:600}.layout-bar nav{display:flex;gap:6px;flex:1;justify-content:center}.layout-bar nav>a{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:99px;font-size:.8rem;font-weight:800;white-space:nowrap}.layout-bar nav>a span{font-size:.6rem;opacity:.7}.layout-bar nav>a[aria-current]{background:var(--ink);color:var(--cream)}.layout-bar nav>a:hover{border-color:var(--ink);text-decoration:none}.font-comparison{font-size:.7rem}.font-comparison summary{min-height:44px;display:flex;align-items:center;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.font-comparison summary:after{content:' +';margin-left:8px}.font-comparison[open]{width:100%}.font-comparison[open] summary:after{content:' −'}.font-comparison .type-bar{border:0}.font-comparison .type-bar-inner{width:100%;padding:0}.font-comparison .type-bar nav{justify-content:flex-end}.layout-hero h1{font-size:clamp(4rem,7.5vw,8rem);line-height:.98;letter-spacing:-.045em}.layout-hero .hero-intro{font-size:1rem}.layout-hero .hero-actions{position:relative;z-index:2}.layout-poster .site-header,.layout-stickers .site-header{border-bottom:1px solid var(--ink)}
/* Big mood: oversized centered type with a loose doodle frame. */
.poster-hero{text-align:center;padding-top:38px}.poster-headline{position:relative;margin:22px auto 0;max-width:1100px}.poster-headline h1{font-size:clamp(4.5rem,10.3vw,10.5rem);line-height:.94}.poster-headline h1 span{color:var(--cream);text-shadow:3px 4px 0 var(--ink);-webkit-text-stroke:1.5px var(--ink)}.poster-spark{position:absolute;left:0;top:12%;width:85px;height:85px;transform:rotate(-12deg)}.poster-smile{position:absolute;right:0;bottom:5%;width:88px;height:88px;transform:rotate(12deg)}.poster-hero .hero-intro{margin:24px 0}.poster-hero .hero-actions{justify-content:center}.poster-bottomline{display:flex;align-items:center;justify-content:space-between;max-width:690px;margin:25px auto 0;padding-bottom:26px;gap:20px}.poster-bottomline>span{font-size:.65rem;font-weight:800;letter-spacing:.08em;line-height:1.6;text-align:left}.poster-bottomline>span:last-child{text-align:right}.mini-logo{display:block;width:126px;transform:rotate(-7deg);border:2px solid var(--ink);border-radius:50%;overflow:hidden}.layout-poster .peanut-card,.layout-poster .teaser-card{border-radius:140px 140px 24px 24px;padding-top:48px}.layout-poster .peanut-card .card-top{justify-content:center;gap:15px}.layout-poster .teaser-card>.eyebrow{text-align:center}.layout-poster .manifesto{background:var(--red);border-color:var(--ink)}.layout-poster .manifesto .ink-red{color:var(--ink);text-decoration:underline;text-decoration-thickness:4px;text-underline-offset:8px}.layout-poster .manifesto-copy .doodle{color:var(--ink)}
/* Sticker party: cream message card paired with an expressive collage. */
.sticker-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;padding-block:36px 50px}.sticker-message{background:var(--cream);border:2px solid var(--ink);border-radius:36px;padding:42px 36px;box-shadow:7px 7px 0 var(--ink);position:relative}.sticker-message h1{font-size:clamp(3.5rem,5.7vw,6.5rem);margin-top:26px}.sticker-message h1 span{color:var(--deep-red)}.sticker-message .hero-actions{gap:10px}.sticker-message .btn{font-size:.82rem!important;padding-inline:18px;gap:16px}.sticker-arrow{position:absolute;width:76px;height:76px;right:24px;top:25px;transform:rotate(-65deg)}.sticker-wall{position:relative;min-height:600px}.sticker-logo{width:84%;position:absolute;left:6%;top:18%;background:var(--cream);transform:rotate(9deg);border:2px solid var(--ink);border-radius:28px;overflow:hidden;box-shadow:7px 7px 0 var(--ink);padding:0 12px 20px}.sticker-logo>span{display:block;text-align:center;font-size:.65rem;font-weight:800;border-top:1px solid var(--ink);padding-top:12px;letter-spacing:.06em}.sticker-tag{position:absolute;z-index:2;background:var(--ink);color:var(--cream);padding:22px 26px;right:0;top:2%;border-radius:50%;transform:rotate(14deg);font-size:.7rem;text-align:center;line-height:1.6}.sticker-tag b{font-family:Fredoka,sans-serif;font-size:1.6rem}.sticker-bowl{position:absolute;bottom:0;left:0;z-index:2;background:var(--cream);border:2px solid var(--ink);border-radius:50%;width:178px;height:178px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-13deg);box-shadow:4px 4px 0 var(--ink)}.sticker-bowl .doodle{width:90px;height:90px}.sticker-bowl span{font-family:Fredoka,sans-serif;font-size:1.1rem}.sticker-small{position:absolute;bottom:3%;right:0;transform:rotate(8deg);font-size:.68rem;font-weight:800;text-align:center;border:2px dashed var(--ink);border-radius:18px;padding:18px;line-height:1.5}.sticker-spark{position:absolute;top:1%;left:5%;width:70px;height:70px}.sticker-smile{position:absolute;right:6%;bottom:22%;width:80px;height:80px;z-index:2;transform:rotate(15deg)}.layout-stickers .peanut-card,.layout-stickers .teaser-card{border:2px solid var(--ink);border-radius:26px;box-shadow:5px 5px 0 var(--ink)}.layout-stickers .lineup-grid{gap:24px}.layout-stickers .manifesto{background:var(--cream)}.layout-stickers .manifesto-grid{border:2px solid var(--ink);border-radius:32px;padding:40px;gap:60px;background:#f1e6d5}.layout-stickers .signup-form input[type=email],.layout-stickers .signup-form .submit-btn{border-radius:16px}
/* Sauce counter: a quiet cream/red split and a horizontal product menu. */
.layout-counter{background:var(--cream)}.layout-counter .site-header{border-bottom:1px solid var(--ink)}.counter-hero{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--ink)}.counter-copy{padding:42px 40px 50px max(56px,calc((100vw - 1344px)/2))}.counter-copy h1{font-size:clamp(4rem,6.8vw,7rem);margin-top:25px;line-height:.95}.counter-copy h1 span{color:var(--deep-red)}.counter-art{background:var(--red);border-left:1px solid var(--ink);padding:30px max(56px,calc((100vw - 1344px)/2)) 32px 40px;display:flex;flex-direction:column;justify-content:center}.counter-topline{display:flex;justify-content:space-between;font-size:.65rem;font-weight:800;letter-spacing:.07em;border-bottom:1px solid var(--ink);padding-bottom:17px}.counter-logo{border-radius:50%;border:2px solid var(--ink);overflow:hidden;width:80%;max-width:370px;align-self:center;transform:rotate(-8deg);margin:32px 0}.counter-caption{display:flex;justify-content:space-between;align-items:center;gap:16px}.counter-caption h2{font-size:clamp(2rem,3.4vw,3.3rem)!important;line-height:1.1;margin-top:8px}.counter-caption .doodle{width:66px;height:66px;transform:rotate(15deg)}.counter-art .text-arrow{margin-top:22px;font-size:.8rem}.layout-counter .lineup-grid{grid-template-columns:1fr;gap:0;border-top:1px solid var(--ink)}.layout-counter .peanut-card{display:grid;grid-template-columns:1fr 1fr 2fr;min-height:0;border-bottom:1px solid var(--ink);padding:30px 24px;gap:30px;background:var(--cream)}.layout-counter .peanut-card .card-top{display:block;align-self:start}.layout-counter .card-top>span:last-child{display:block;margin-top:15px}.layout-counter .peanut-card .product-doodle{width:130px;height:130px}.layout-counter .teaser-card{display:grid;grid-template-columns:1fr 1fr 2fr;align-items:center;min-height:0;border:0;border-bottom:1px solid var(--ink);gap:30px;padding:28px 24px;background:var(--cream);color:var(--ink)}.layout-counter .teaser-card .doodle{width:85px;height:85px;color:var(--deep-red);margin:0}.layout-counter .question-doodle{font-size:6rem;text-align:left;margin-left:24px}.layout-counter .teaser-card h3 br{display:block}.layout-counter .teaser-card p{margin-top:9px}.layout-counter .manifesto{background:var(--red);border-color:var(--ink)}.layout-counter .manifesto .ink-red,.layout-counter .manifesto-copy .doodle{color:var(--ink)}.layout-counter .join-section{background:var(--cream);color:var(--ink)}.layout-counter .join-section .submit-btn{background:var(--ink);border-color:var(--ink);color:var(--cream)}.layout-counter .site-footer{width:100%;padding-inline:max(56px,calc((100% - 1344px)/2))}
@media(max-width:1100px){.layout-bar>.wrap{gap:12px}.layout-bar nav>a{padding:10px 12px;font-size:.74rem}.font-comparison{font-size:.65rem}.poster-spark,.poster-smile{width:60px;height:60px}.sticker-hero{gap:25px}.sticker-message{padding:32px 26px}.sticker-wall{min-height:540px}.sticker-message h1{font-size:5.7vw}.sticker-arrow{width:50px;height:50px;right:15px;top:55px}.sticker-bowl{width:140px;height:140px}.sticker-bowl .doodle{width:70px;height:70px}.sticker-small{font-size:.6rem;padding:12px}.counter-copy{padding-left:32px;padding-right:28px}.counter-art{padding-right:32px;padding-left:28px}.layout-counter .site-footer{padding-inline:32px}}
@media(max-width:850px){.layout-bar>.wrap{display:block}.layout-label{display:flex;justify-content:space-between;gap:15px}.layout-bar nav{justify-content:space-between;margin-top:9px}.layout-bar nav>a{flex:1;justify-content:center;padding:10px 7px;font-size:.72rem;gap:5px}.font-comparison summary{min-height:34px;justify-content:flex-end;font-size:.65rem}.font-comparison .type-bar-inner{display:block}.sticker-hero{grid-template-columns:1.15fr 1fr;gap:20px}.sticker-message{padding:28px 20px}.sticker-message h1{font-size:5.8vw}.sticker-message .eyebrow{font-size:.57rem!important}.sticker-message .hero-intro{font-size:.88rem}.sticker-wall{min-height:520px}.sticker-logo{width:90%;left:4%;top:24%}.sticker-tag{top:5%;padding:15px}.sticker-tag b{font-size:1.3rem}.sticker-spark{width:50px;height:50px;top:8%;left:0}.sticker-bowl{bottom:5%;width:125px;height:125px}.sticker-small{bottom:0}.sticker-smile{bottom:22%;width:65px;height:65px}.sticker-arrow{display:none}.layout-stickers .manifesto-grid{padding:28px;gap:30px}.layout-stickers .manifesto h2{font-size:5.8vw}.layout-poster .peanut-card{display:flex;min-height:0;padding-top:30px;border-radius:35px}.layout-poster .peanut-card .card-top{justify-content:space-between}.layout-poster .teaser-card{border-radius:90px 90px 20px 20px;padding-top:40px}.counter-copy{padding-left:20px;padding-right:20px}.counter-art{padding-inline:20px}.counter-copy h1{font-size:7vw}.counter-copy .eyebrow{font-size:.57rem!important}.counter-copy .hero-intro{font-size:.86rem}.counter-logo{width:95%;margin-block:30px}.counter-caption .doodle{width:50px;height:50px}.layout-counter .peanut-card{grid-template-columns:1fr 1fr;padding-inline:0}.layout-counter .peanut-card .card-top{grid-column:1/-1;display:flex;justify-content:space-between}.layout-counter .card-top>span:last-child{margin:0}.layout-counter .teaser-card{grid-template-columns:1fr 1fr;padding-inline:0;gap:20px}.layout-counter .teaser-card>.eyebrow{grid-column:1/-1}.layout-counter .site-footer{padding-inline:20px}}
@media(max-width:570px){.layout-bar nav{display:grid;grid-template-columns:1fr 1fr;gap:5px}.layout-bar nav>a{justify-content:flex-start;padding-inline:13px}.layout-label{font-size:.6rem}.layout-label>span{font-size:.65rem}.poster-hero{padding-top:30px}.poster-hero>.eyebrow{font-size:.57rem!important;letter-spacing:.05em!important}.poster-headline{margin-top:28px}.poster-headline h1{font-size:16.4vw;line-height:.98}.poster-headline h1 span{text-shadow:2px 2px 0 var(--ink);-webkit-text-stroke:1px var(--ink)}.poster-spark{width:30px;height:30px;top:-22px;left:0}.poster-smile{width:34px;height:34px;bottom:-33px;right:0}.poster-hero .hero-intro{font-size:.9rem;margin-top:32px}.poster-hero .hero-actions{gap:10px}.poster-hero .hero-actions .btn{font-size:.78rem;padding-inline:18px;gap:15px}.poster-bottomline{margin-top:28px;gap:10px}.poster-bottomline>span{font-size:.53rem;letter-spacing:.03em}.mini-logo{width:100px;flex-shrink:0}.layout-poster .teaser-card{padding-inline:16px}.sticker-hero{display:flex;flex-direction:column;gap:0;padding-top:22px;padding-bottom:35px}.sticker-message{padding:30px 22px;border-radius:26px;box-shadow:5px 5px 0 var(--ink);margin-right:5px}.sticker-message h1{font-size:12.8vw;margin-top:22px}.sticker-message .hero-intro{font-size:.9rem;margin:22px 0}.sticker-message .btn{font-size:.74rem!important;padding:12px 15px;gap:10px;min-height:48px}.sticker-wall{height:480px;min-height:0;width:100%;max-width:370px;align-self:center;margin-top:25px}.sticker-logo{width:78%;left:10%;top:15%;border-radius:22px}.sticker-tag{top:0;right:0}.sticker-spark{top:3%;left:0}.sticker-bowl{bottom:4%;left:0;width:140px;height:140px}.sticker-small{bottom:7%;right:0;font-size:.65rem}.sticker-smile{bottom:30%;right:0}.layout-stickers .lineup-grid{gap:16px}.layout-stickers .teaser-card{padding:20px 14px}.layout-stickers .manifesto-grid{padding:30px 22px}.layout-stickers .manifesto h2{font-size:11.5vw}.counter-hero{display:block}.counter-copy{padding:28px 20px 36px}.counter-copy h1{font-size:15vw;line-height:.96;margin-top:24px}.counter-copy .hero-intro{font-size:.93rem}.counter-copy .hero-actions .btn{font-size:.78rem;gap:15px;padding-inline:18px}.counter-art{border-left:0;border-top:1px solid var(--ink);padding:24px 20px 30px}.counter-logo{width:72%;max-width:300px;margin:24px 0 28px}.counter-caption h2{font-size:2.3rem!important}.counter-caption .doodle{width:65px;height:65px}.counter-topline{font-size:.61rem}.layout-counter .peanut-card{display:flex;gap:22px}.layout-counter .peanut-card .product-doodle{margin-block:4px}.layout-counter .teaser-card{grid-template-columns:70px 1fr;gap:20px}.layout-counter .teaser-card .doodle{width:65px;height:65px}.layout-counter .question-doodle{font-size:5rem;margin:0;text-align:center}.layout-counter .teaser-card h3{font-size:1.7rem}.layout-counter .teaser-card h3 br{display:initial}.layout-counter .teaser-card>.eyebrow{margin-bottom:0}.layout-counter .teaser-card p{font-size:.82rem}.layout-counter .join-section{border-top:1px solid var(--ink)}}
@media(max-width:350px){.poster-hero .hero-actions{align-items:stretch}.poster-bottomline{gap:8px}.poster-bottomline>span{font-size:.48rem}.mini-logo{width:85px}.sticker-message{padding-inline:18px}.sticker-message .hero-actions{align-items:stretch}.sticker-wall{height:410px}.sticker-bowl{width:120px;height:120px}.sticker-bowl span{font-size:.95rem}.sticker-small{font-size:.55rem;padding:10px}.sticker-logo{top:18%}.layout-stickers .manifesto-grid{padding-inline:18px}.layout-counter .counter-copy,.layout-counter .counter-art,.layout-counter .site-footer{padding-inline:16px}.counter-copy h1{font-size:15.5vw}}
@media(forced-colors:active){.poster-headline h1 span{color:CanvasText;text-shadow:none;-webkit-text-stroke:0}.layout-bar nav>a[aria-current]{outline:2px solid CanvasText}}
@media print{.layout-bar{display:none}}

/* Original Red Room: brand-wide flavor promise. */
.red.red-rounded.layout-baseline .red-hero .flavor-headline{font-size:clamp(2.5rem,5.1vw,4.8rem);line-height:1.04;letter-spacing:-.04em}
@media(max-width:700px){.red.red-rounded.layout-baseline .red-hero .flavor-headline{font-size:8.7vw;line-height:1.07}}

/* Paint the outline behind an opaque fill to prevent intersecting glyph strokes. */
.red.red-rounded.layout-baseline .flavor-headline .outline-word{color:var(--red);-webkit-text-stroke:1.6px var(--ink);paint-order:stroke fill}
.flavor-ticker{justify-content:flex-start}
.ticker-track{display:flex;width:max-content;flex:none;animation:flavor-scroll 24s linear infinite}
.ticker-group{display:flex;align-items:center;gap:44px;padding-right:44px;flex:none}
.flavor-ticker:hover .ticker-track{animation-play-state:paused}
@keyframes flavor-scroll{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none;width:100%}.ticker-group{width:100%;justify-content:space-around;gap:12px;padding:0;white-space:normal;text-align:center}.ticker-group:nth-child(2){display:none}.ticker-group b{display:none}.ticker-group span{flex:1;font-size:clamp(.7rem,2.8vw,1.4rem)}}
@media(forced-colors:active){.red.red-rounded.layout-baseline .flavor-headline .outline-word{color:CanvasText;-webkit-text-stroke:0}}

.red.red-rounded.layout-baseline .red-hero .flavor-headline{letter-spacing:.005em;font-kerning:none;font-variant-ligatures:none}

.flavor-ticker:focus .ticker-track{animation-play-state:paused}

/* Larger hero type and room below the rotated poster. */
.red.red-rounded.layout-baseline .red-hero .flavor-headline{font-size:clamp(2.8rem,6vw,5.65rem)}
.red.red-rounded.layout-baseline .red-art{padding-bottom:100px}
.red.red-rounded.layout-baseline .red-art>.hand-note{bottom:0}
@media(max-width:700px){.red.red-rounded.layout-baseline .red-hero .flavor-headline{font-size:9.7vw}.red.red-rounded.layout-baseline .red-art{padding-bottom:85px}}

.ticker-shell{position:relative;background:var(--ink);color:var(--cream);padding-bottom:38px}
.ticker-toggle{position:absolute;bottom:5px;right:20px;min-height:28px;padding:4px 12px;border:1px solid currentColor;border-radius:20px;font:700 .75rem/1.4 Arial,sans-serif}
.ticker-toggle:focus-visible{outline:3px solid currentColor;outline-offset:3px}
.ticker-shell.is-paused .ticker-track{animation-play-state:paused}
.join-section .signup-form .btn.solid{background:var(--cream);color:var(--ink);border-color:var(--cream)}
@media(prefers-reduced-motion:reduce){.ticker-toggle{display:none}.ticker-shell{padding-bottom:0}}

/* Keep each half of the marquee at least one viewport wide. */
.flavor-ticker .ticker-group{min-width:100vw;justify-content:space-around;box-sizing:border-box}
@media(prefers-reduced-motion:reduce){.flavor-ticker .ticker-group{min-width:0}}
