:root{--pink:#ed1889;--teal:#00a99d;--yellow:#f5ce38;--ink:#242522;--cream:#fffaf5;--soft:#f5efe8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.announcement{background:#f8d545;text-align:center;font-size:10px;font-weight:800;letter-spacing:2px;padding:9px 12px}.announcement span{color:var(--pink);margin:0 14px}.site-header{height:90px;background:#fffdfa;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;gap:24px;position:relative;z-index:10;border-bottom:1px solid #eee8e0}.brand{display:flex;align-items:center;gap:8px}.brand img{width:65px;height:65px;object-fit:contain}.brand>span{font-family:Outfit,sans-serif;font-size:22px;font-weight:900;letter-spacing:-1px}.brand small{display:block;font:700 8px 'DM Sans';letter-spacing:2px;color:#777}.site-header nav{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:800}.site-header nav a:hover,.text-link:hover{color:var(--pink)}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:16px 24px;border-radius:5px;font-size:12px;letter-spacing:1.1px;font-weight:900;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-pink{background:var(--pink);color:white}.button-light,.button-white{background:#fff;color:#282522}.button-dark{background:#292725;color:#fff}.menu-toggle{display:none;background:none;border:0;font-size:26px;cursor:pointer}.hero{height:min(700px,74vw);min-height:550px;position:relative;overflow:hidden;background:#ead9c6}.hero-photo{position:absolute;inset:0;background:url('assets/hero.webp') center center/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,251,243,.97) 0%,rgba(255,250,242,.93) 23%,rgba(255,250,242,.56) 43%,rgba(255,250,242,.05) 68%)}.hero-content{position:relative;z-index:1;padding:140px 7% 90px;max-width:720px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:2.5px}.eyebrow.pink{color:var(--pink)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Outfit,Arial,sans-serif}h1{font-size:clamp(62px,7.3vw,120px);font-weight:900;line-height:.86;letter-spacing:-5px;margin:26px 0}h1 em,h2 em{font-style:normal;color:var(--pink)}.hero-sub{font-size:17px;line-height:1.7;font-weight:600}.hero-buttons{display:flex;gap:12px;margin-top:32px}.hero-corner{position:absolute;bottom:22px;right:35px;color:#fff;font-size:10px;font-weight:900;letter-spacing:1.8px;text-shadow:0 1px 4px #444}.intro-band{background:#fff;padding:22px 20px;display:flex;justify-content:center;gap:45px;align-items:center;font-size:10px;font-weight:900;letter-spacing:1.5px}.spark{color:var(--pink);font-size:20px}.section{padding:105px 7%}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:44px}.section-top>p{max-width:360px;color:#686762;line-height:1.8}.section h2,.story-content h2,.how-section h2,.community-section h2,.visit h2{font-size:clamp(40px,4.4vw,70px);line-height:.98;letter-spacing:-2px;font-weight:900;margin:18px 0}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.category-photo{aspect-ratio:4/5;background:#eee2d3;overflow:hidden;border-radius:7px;position:relative}.category-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.category:hover img{transform:scale(1.06)}.category-arrow{position:absolute;right:12px;top:12px;background:#fff;border-radius:50%;height:36px;width:36px;display:grid;place-items:center;font-size:19px}.category h3{font-size:25px;line-height:1.03;letter-spacing:-.6px;margin:18px 0 8px}.category>span{font-size:10px;letter-spacing:1px;font-weight:900;color:var(--pink)}.center{text-align:center;margin-top:48px}.tiny{color:#7c756e;font-size:13px}.text-link{font-size:12px;font-weight:900;letter-spacing:1px;border-bottom:2px solid var(--pink);padding-bottom:5px}.story-section{display:grid;grid-template-columns:1fr 1fr;background:#f3ece3;min-height:580px}.story-image img{width:100%;height:100%;object-fit:cover}.story-content{padding:90px 10%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.story-content p:not(.eyebrow){line-height:1.8;color:#5f5a54;max-width:500px}.story-content .story-signoff{font-weight:800;color:#292522!important}.how-section{padding:105px 7%;background:#fff;text-align:left}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:50px 0 36px}.steps>div{border-top:3px solid #eee7df;padding-top:25px}.steps b{font-family:Outfit;font-size:48px;color:var(--pink)}.steps h3{font-size:20px;margin:15px 0 8px}.steps p{color:#716d66;line-height:1.7}.community-section{background:#00a69c;color:white;padding:95px 7%;position:relative;overflow:hidden}.community-section:after{content:'✳';position:absolute;right:-20px;top:-95px;font-size:520px;color:#ffffff18;pointer-events:none}.community-inner{position:relative;z-index:1;max-width:740px}.community-section h2 em{color:#ffe052}.community-inner>p:not(.eyebrow){font-size:18px;line-height:1.7}.community-tags{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0}.community-tags span{border:1px solid #ffffff99;border-radius:100px;padding:10px 15px;font-size:11px;font-weight:900;letter-spacing:.6px}.faq-section{display:grid;grid-template-columns:1fr 1.3fr;gap:90px}.faq-section>div:first-child>p:not(.eyebrow){color:#716d66;line-height:1.8}.faq-list details{border-bottom:1px solid #ded8d0;padding:20px 0}.faq-list summary{cursor:pointer;font-weight:800;display:flex;justify-content:space-between;gap:15px;list-style:none}.faq-list summary span{color:var(--pink);font-size:24px}.faq-list p{line-height:1.8;color:#68635e;padding-top:12px}.visit{display:grid;grid-template-columns:1fr 1fr;background:#fff;min-height:460px}.visit>div:first-child{padding:85px 14%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.visit p:not(.eyebrow){line-height:1.8}.visit-visual img{height:100%;width:100%;object-fit:cover}footer{background:#242421;color:white;padding:70px 7% 25px;display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:35px}footer img{width:100px}footer p,footer span,footer a:not(.button){color:#dedbd5;font-size:13px;line-height:1.8}footer>div:not(.copyright){display:flex;flex-direction:column;align-items:flex-start;gap:13px}footer b{font-size:11px;letter-spacing:1.5px}footer .copyright{grid-column:1/-1;border-top:1px solid #44443f;padding-top:25px;font-size:11px;color:#aaa}.mobile-order{display:none}.subhero{background:#f3ece3;padding:80px 7% 70px}.subhero h1{font-size:clamp(45px,7vw,95px)}.subhero p{max-width:650px;line-height:1.8}.subpage{max-width:1080px;margin:auto;padding:70px 7%;line-height:1.9}.subpage h2{font-size:34px;font-family:Outfit}.subpage p{color:#5e5b55}.subpage .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.subpage .cards article{background:#f4ece4;padding:25px;border-radius:8px}.subpage .cards h3{font-size:21px}.subpage details{padding:20px 0;border-bottom:1px solid #ddd}.subpage summary{cursor:pointer;font-weight:800}
@media(max-width:1050px){.site-header{padding:0 3%}.site-header nav{gap:14px;font-size:11px}.hero-content{padding-top:120px}.category h3{font-size:21px}}@media(max-width:760px){.announcement{font-size:8px;letter-spacing:1px}.announcement span{margin:0 5px}.site-header{height:75px;padding:0 5%}.brand img{width:56px;height:56px}.brand>span{font-size:18px}.site-header nav{display:none;position:absolute;top:75px;left:0;right:0;background:white;padding:22px 7%;box-shadow:0 14px 20px #0001;flex-direction:column;align-items:flex-start;gap:20px;font-size:15px}.site-header nav.open{display:flex}.desktop-order{display:none}.menu-toggle{display:block}.hero{min-height:660px;height:80vh;max-height:760px}.hero-photo{background-position:63% center}.hero-shade{background:linear-gradient(180deg,rgba(255,250,243,.96) 0%,rgba(255,250,243,.86) 34%,rgba(255,250,243,.12) 75%)}.hero-content{padding:66px 6%}.hero h1{font-size:clamp(58px,13vw,92px);letter-spacing:-3px}.hero-sub{font-size:14px}.hero-buttons{flex-wrap:wrap}.hero-corner{font-size:8px;right:12px}.intro-band{gap:10px;font-size:8px;flex-wrap:wrap;padding:17px 10px}.intro-band .spark{font-size:13px}.section,.how-section{padding:70px 6%}.section-top{display:block}.section-top>p{margin-top:25px}.category-grid{grid-template-columns:repeat(2,1fr);gap:24px 12px}.category h3{font-size:21px}.category>span{font-size:9px}.story-section,.visit{grid-template-columns:1fr}.story-image{height:330px}.story-content{padding:65px 7%}.steps{grid-template-columns:1fr;gap:15px}.steps>div{padding-top:15px}.community-section{padding:70px 6%}.community-section:after{font-size:320px;right:-100px;top:100px}.community-inner>p:not(.eyebrow){font-size:16px}.faq-section{grid-template-columns:1fr;gap:20px}.visit>div:first-child{padding:70px 7%}.visit-visual{height:310px}footer{grid-template-columns:repeat(2,1fr);padding:60px 6% 90px;gap:35px 20px}footer>div:first-child{grid-column:1/-1}.mobile-order{display:flex;position:fixed;bottom:12px;left:15px;right:15px;background:var(--pink);color:#fff;z-index:20;border-radius:8px;align-items:center;justify-content:center;gap:12px;padding:17px;font-size:13px;font-weight:900;letter-spacing:1px;box-shadow:0 8px 30px #0004}.subpage .cards{grid-template-columns:1fr}.subhero{padding:55px 7%}.subhero h1{letter-spacing:-2px}}

/* Hype update: square category images and Bowls & Bites */
.category-photo{aspect-ratio:1/1;border-radius:8px}
.bowls-section{display:grid;grid-template-columns:1fr 1.15fr;align-items:stretch;background:#fff4e9;min-height:450px}
.bowls-copy{padding:75px 12%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.bowls-copy h2{font-family:Outfit,Arial,sans-serif;font-size:clamp(42px,4.5vw,72px);font-weight:900;line-height:1;letter-spacing:-2px;margin:18px 0}
.bowls-copy h2 em{font-style:normal;color:var(--pink)}
.bowls-copy p:not(.eyebrow){max-width:470px;color:#5f5a54;line-height:1.8}
.bowls-photo{min-height:400px}.bowls-photo img{width:100%;height:100%;object-fit:cover}
footer img{width:110px;height:auto;object-fit:contain}
@media(max-width:760px){.bowls-section{grid-template-columns:1fr}.bowls-copy{padding:65px 7%}.bowls-photo{min-height:280px;height:300px}}

/* Hype update v5: menu cards with photo and details */
.menu-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.menu-card{border-radius:22px;padding:22px 22px 30px;display:flex;flex-direction:column;gap:22px}
.menu-yellow{background:#f8d545;color:#242522}
.menu-teal{background:#4fb3b5;color:#242522}
.menu-cream{background:#f3efea;color:#242522}
.menu-photo{display:block;aspect-ratio:1/1;border-radius:16px;overflow:hidden;background:#eee2d3}
.menu-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.menu-photo:hover img{transform:scale(1.05)}
.menu-text{padding:0 8px;display:flex;flex-direction:column;gap:12px;flex:1}
.menu-text h3{font-size:clamp(24px,2.3vw,32px);line-height:1;letter-spacing:-.5px;font-weight:900;margin:0}
.menu-text p{margin:0;font-size:16px;line-height:1.6}
.menu-order{margin-top:auto;padding-top:10px;font-size:11px;font-weight:900;letter-spacing:1px;align-self:flex-start;border-bottom:2px solid currentColor;padding-bottom:3px}
.menu-order:hover{color:var(--pink)}
@media(max-width:1050px){.menu-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.menu-cards{grid-template-columns:1fr;gap:18px}.menu-card{padding:16px 16px 26px}}

/* Hype update v5: Our Story page */
.story-page{max-width:1240px;margin:auto;padding:70px 5.5% 90px}
.story-row{display:grid;grid-template-columns:1.35fr 1fr;gap:26px;margin-bottom:26px;align-items:start}
.story-row.flip{grid-template-columns:1fr 1.35fr}
.story-card{border-radius:22px;padding:0;display:flex;flex-direction:column;gap:10px}
.story-card.soft{background:#f3ece3;padding:24px 24px 34px}
.story-pic{aspect-ratio:4/3;border-radius:16px;overflow:hidden;margin-bottom:14px;background:#eee2d3}
.story-pic.tall{aspect-ratio:5/4}
.story-pic img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.story-card h2{font-family:Outfit,Arial,sans-serif;font-size:clamp(28px,2.6vw,40px);line-height:1;letter-spacing:-1px;font-weight:900;margin:0 0 6px}
.story-card p:not(.eyebrow){color:#5f5a54;line-height:1.8;margin:0;max-width:60ch}
.story-card .eyebrow{margin:0}
.values-head{font-family:Outfit,Arial,sans-serif;font-size:clamp(32px,4vw,58px);line-height:1;letter-spacing:-2px;font-weight:900;margin:80px 0 34px;padding-top:34px;border-top:2px solid #242522}
.values-head em{font-style:normal;color:var(--pink)}
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.values article{border-radius:22px;padding:44px 32px;min-height:260px;display:flex;flex-direction:column;justify-content:center;text-align:center;gap:12px}
.values h3{font-family:Outfit,Arial,sans-serif;font-size:28px;font-weight:900;letter-spacing:-.5px;margin:0}
.values p{margin:0;line-height:1.7;font-size:16px}
.value-pink{background:var(--pink);color:#fff}
.value-yellow{background:#f8d545;color:#242522}
.value-teal{background:#00a69c;color:#fff}
.story-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:50px}
@media(max-width:860px){.story-row,.story-row.flip{grid-template-columns:1fr}.values{grid-template-columns:1fr}.values article{min-height:0;padding:34px 26px}.story-page{padding:50px 6% 80px}.values-head{margin-top:50px}}
.story-pic.portrait{aspect-ratio:4/5}
.story-pic.portrait img{object-position:center 35%}
.story-pic.pair{display:grid;grid-template-columns:0.75fr 1fr;gap:10px;background:none;border-radius:0;aspect-ratio:auto;height:clamp(240px,24vw,330px)}
.story-pic.pair img{border-radius:16px;height:100%}
.story-pic.family{aspect-ratio:942/789}
.story-pic.family img{object-position:center}

/* Hype update v5: Our Hype Fam page */
.fam-page{max-width:1240px;margin:auto;padding:70px 5.5% 90px}
.fam-feature{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;background:#f3ece3;border-radius:22px;padding:24px}
.fam-feature-pic{border-radius:16px;overflow:hidden;aspect-ratio:4/3}
.fam-feature-pic img{width:100%;height:100%;object-fit:cover}
.fam-feature-copy{padding:10px 20px 10px 0}
.fam-feature-copy p:not(.eyebrow){color:#5f5a54;line-height:1.8}
.fam-page h2{font-family:Outfit,Arial,sans-serif;font-size:clamp(32px,3.6vw,54px);line-height:1;letter-spacing:-1.5px;font-weight:900;margin:14px 0 18px}
.fam-page h2 em{font-style:normal;color:var(--pink)}
.fam-section-top{margin:80px 0 28px}
.fam-section-top p:not(.eyebrow){color:#5f5a54;line-height:1.8;max-width:560px;margin:0}
.fam-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fam-wall figure{margin:0;border-radius:16px;overflow:hidden;aspect-ratio:4/5;background:#eee2d3}
.fam-wall img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transition:transform .4s}
.fam-wall figure:hover img{transform:scale(1.04)}
.fam-wall.friends figure{aspect-ratio:1/1}
@media(max-width:860px){.fam-feature{grid-template-columns:1fr;padding:16px}.fam-feature-copy{padding:0 6px 10px}.fam-wall{grid-template-columns:repeat(2,1fr);gap:10px}.fam-section-top{margin:56px 0 22px}.fam-page{padding:50px 6% 80px}}

/* Hype update v5: big family thank you */
.thanks{margin-top:90px;display:grid;grid-template-columns:0.68fr 1.5fr;gap:36px;align-items:center}
.thanks-copy h2{font-family:Outfit,Arial,sans-serif;font-size:clamp(30px,3.1vw,46px);line-height:.98;letter-spacing:-1.5px;font-weight:900;margin:14px 0 20px}
.thanks-copy h2 em{font-style:normal;color:var(--pink)}
.thanks-copy p:not(.eyebrow){color:#5f5a54;line-height:1.8;margin:0 0 16px}
.thanks-copy .thanks-sign{color:#242522!important;font-weight:800;margin-top:24px!important}
.thanks-sign span{display:block;font-family:Outfit,Arial,sans-serif;font-size:22px;color:var(--pink);margin-top:6px}
.thanks-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:14px}
.thanks-grid figure{margin:0;position:relative;border-radius:16px;overflow:hidden;background:#eee2d3;min-height:0}
.thanks-grid img{width:100%;height:100%;object-fit:cover;display:block}
.t-fall{grid-column:1/3;aspect-ratio:3/2}
.t-sign{grid-column:3;grid-row:1/3}
.t-red{grid-column:1/3;aspect-ratio:3/2}
.t-red img{object-position:center 35%}
.t-sign img{object-position:35% 40%}
.t-wedding,.t-beach{aspect-ratio:1/1}
.t-wedding img{object-position:68% center}
.t-beach img{object-position:center 45%}
.thanks-grid figcaption{position:absolute;left:10px;bottom:10px;background:#fffffff0;color:#242522;font-size:11px;font-weight:800;letter-spacing:.4px;padding:6px 10px;border-radius:100px}
@media(max-width:960px){.thanks{grid-template-columns:1fr;gap:28px;margin-top:64px}}
@media(max-width:560px){.thanks-grid{grid-template-columns:1fr 1fr}.t-red{grid-column:1/-1}.t-sign{grid-column:auto;grid-row:auto;aspect-ratio:1/1}}

/* Hype update v5: Community days, Give Back, Hype Love */
.comm-page,.love-page{max-width:1240px;margin:auto;padding:70px 5.5% 90px}
.comm-page h2,.love-page h2{font-family:Outfit,Arial,sans-serif;font-size:clamp(32px,3.6vw,54px);line-height:1;letter-spacing:-1.5px;font-weight:900;margin:14px 0 18px}
.comm-page h2 em,.love-page h2 em{font-style:normal;color:var(--pink)}
.comm-top p:not(.eyebrow){color:#5f5a54;line-height:1.8;max-width:600px}
.day-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}
.day-card{border-radius:22px;padding:30px 28px 32px;display:flex;flex-direction:column;gap:10px}
.day-card h3{font-family:Outfit,Arial,sans-serif;font-size:28px;font-weight:900;letter-spacing:-.5px;margin:0}
.day-card p{margin:0;line-height:1.7}
.day-tag{align-self:flex-start;font-size:10px;font-weight:900;letter-spacing:2px;padding:6px 11px;border-radius:100px;background:#ffffffd9;color:#242522}
.day-who{font-weight:800}
.day-how{margin-top:auto!important;padding-top:10px;font-size:13px;font-weight:700;opacity:.9}
.day-pink{background:var(--pink);color:#fff}.day-yellow{background:#f8d545;color:#242522}.day-teal{background:#00a69c;color:#fff}
.how-order{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px;background:#f3ece3;border-radius:22px;padding:34px}
.how-order h3{font-family:Outfit,Arial,sans-serif;font-size:30px;font-weight:900;letter-spacing:-.5px;margin:12px 0}
.how-order ol{padding-left:20px;line-height:1.8;color:#3d3a36;margin:0 0 14px}
.directions-slot{border:2px dashed #cdbfae;border-radius:16px;display:grid;place-items:center;min-height:260px;color:#8a7f73;font-weight:700;font-size:13px;letter-spacing:.5px;text-align:center;padding:20px}
.giveback{margin-top:80px;background:#00a69c;color:#fff;border-radius:26px;padding:44px;display:grid;grid-template-columns:0.9fr 1.3fr;gap:40px;align-items:center}
.giveback h2 em{color:#ffe052!important}
.giveback-copy p:not(.eyebrow){line-height:1.8;margin:0 0 14px}
.fan-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.fan-wall figure{margin:0;border-radius:14px;overflow:hidden;aspect-ratio:3/4;background:#ffffff22}
.fan-wall figure:first-child{grid-column:span 2;aspect-ratio:auto}
.fan-wall img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.love-google{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;align-items:center;background:#f8d545;border-radius:22px;padding:40px}
.love-google p:not(.eyebrow){line-height:1.8;color:#3d3a36;margin:0}
.love-google .eyebrow.pink{color:#242522}
.love-buttons{display:flex;flex-direction:column;gap:12px;align-items:stretch}
.love-wall{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.love-wall figure{margin:0;border-radius:16px;overflow:hidden;aspect-ratio:4/5;background:#eee2d3}
.love-wall img{width:100%;height:100%;object-fit:cover}
.love-page .fam-section-top{margin:70px 0 26px}
.love-page .fam-section-top p:not(.eyebrow){color:#5f5a54;line-height:1.8;margin:0}
@media(max-width:960px){.day-grid{grid-template-columns:1fr}.how-order,.giveback,.love-google{grid-template-columns:1fr;padding:26px}.love-wall{grid-template-columns:repeat(2,1fr);gap:10px}.comm-page,.love-page{padding:50px 6% 80px}}

/* Hype update v5: Hype Fam hero with Christmas photo */
.fam-hero{background:#f3ece3;padding:60px 5.5% 70px;display:grid;grid-template-columns:0.7fr 1.5fr;gap:44px;align-items:center}
.fam-hero h1{font-size:clamp(48px,6vw,92px);margin:18px 0}
.fam-hero-copy p:not(.eyebrow){line-height:1.8;max-width:360px}
.fam-hero-pic{margin:0;position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 24px 50px -24px #0006}
.fam-hero-pic img{width:100%;height:100%;object-fit:cover}
.fam-hero-pic figcaption{position:absolute;left:16px;bottom:16px;background:var(--pink);color:#fff;font-size:12px;font-weight:900;letter-spacing:1px;padding:9px 14px;border-radius:100px;text-transform:uppercase}
@media(max-width:860px){.fam-hero{grid-template-columns:1fr;gap:26px;padding:44px 6% 50px}}
.fam-wide{margin:16px 0 0;position:relative;border-radius:18px;overflow:hidden;aspect-ratio:16/8}
.fam-wide img{width:100%;height:100%;object-fit:cover;object-position:center}
.fam-wide figcaption{position:absolute;left:16px;bottom:16px;background:#f8d545;color:#242522;font-size:12px;font-weight:900;letter-spacing:1px;padding:9px 14px;border-radius:100px;text-transform:uppercase}
@media(max-width:860px){.fam-wide{aspect-ratio:4/3}}
.visit-visual img{object-position:center 45%}
.directions-graphics{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:start}.directions-graphics img{width:100%;border-radius:16px;display:block;box-shadow:0 8px 22px rgba(0,0,0,.12)}.directions-graphics .tiny{grid-column:1/-1;margin:0;text-align:center}
.review-scroll{margin:34px -5.5vw 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.review-track{display:flex;gap:18px;width:max-content;padding:6px 0;animation:review-scroll 110s linear infinite}
.review-scroll:hover .review-track{animation-play-state:paused}
.review-card{margin:0;width:320px;flex:none;border-radius:20px;padding:24px 24px 20px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 22px rgba(0,0,0,.07)}
.review-card blockquote{margin:0;font-size:15.5px;line-height:1.65;color:#242522;flex:1}
.review-stars{color:#f5a400;letter-spacing:2px;font-size:17px}
.review-card figcaption{font-family:Outfit,Arial,sans-serif;font-weight:800;font-size:15px;color:#242522}
.review-card figcaption span{font-weight:500;color:#6b655e;font-size:13px}
.rv-pink{background:#fde3f0}.rv-teal{background:#d8f1ee}.rv-yellow{background:#fdf2c4}.rv-cream{background:#f3ece3}
.rv-yellow .review-stars{color:#ed1889}
@keyframes review-scroll{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.review-scroll{overflow-x:auto}.review-track{animation:none}}
@media(max-width:960px){.review-card{width:270px}.review-track{animation-duration:80s}}
.announcement{display:flex;align-items:center;justify-content:center;position:relative;min-height:34px}.announcement p{margin:0}
.announcement .social-links{position:absolute;right:3%;top:50%;transform:translateY(-50%)}
.social-links{display:flex;gap:8px;align-items:center}
.social-links a{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#242522;color:#fff;transition:background .2s}
.social-links a:hover{background:var(--pink)}
.social-links svg{width:15px;height:15px}
footer .social-links a{width:36px;height:36px;background:var(--pink)}footer .social-links a:hover{background:var(--teal)}footer .social-links svg{width:19px;height:19px}
footer b.follow{margin-top:18px}
.brand>span{font-size:30px;letter-spacing:-1.2px;line-height:.95}
.brand small{font-size:9px;letter-spacing:1.6px;margin-top:3px;color:var(--pink)}
@media(max-width:760px){.announcement{justify-content:space-between;padding:7px 4%;gap:8px}.announcement .social-links{position:static;transform:none}.announcement .social-links a{width:22px;height:22px}.announcement .social-links svg{width:13px;height:13px}.brand>span{font-size:24px}.brand small{font-size:7.5px}}
@media(max-width:760px){.announcement p{font-size:7.5px;letter-spacing:.6px;white-space:nowrap}.announcement p span{margin:0 3px}.announcement .social-links{gap:5px}}
footer img.footer-logo{width:120px;height:120px;object-fit:contain;filter:none;background:none}
.hero-tagline{min-height:3.4em;max-width:460px;font-size:19px}.hero-tagline span{display:inline-block;transition:opacity .45s ease,transform .45s ease}.hero-tagline span.out{opacity:0;transform:translateY(8px)}@media(max-width:760px){.hero-tagline{font-size:15px;min-height:3.4em}}
.hero-tagline{min-height:0;max-width:600px;margin:6px 0 0;line-height:1.35}.hero-tagline+.hero-buttons{margin-top:18px}@media(max-width:760px){.hero-tagline{min-height:2.7em;margin-top:4px}.hero-tagline+.hero-buttons{margin-top:12px}}
.hero-content h1{margin-bottom:12px}
.snark{font-family:Outfit,Arial,sans-serif;font-style:italic;font-weight:700;font-size:14px;color:var(--pink);margin:8px 0 0;line-height:1.4}
.snark-inline{font-style:italic;color:var(--pink);font-weight:600;font-size:.92em}
.menu-text .snark{margin:-4px 0 14px}
.footer-tagline{display:block;margin-top:6px;color:#f8d545;font-family:Outfit,Arial,sans-serif;font-weight:700;font-style:italic}
.menu-teal .snark{color:#fff}
.menu-text .snark{text-align:center;font-family:Caveat,cursive;font-style:normal;font-weight:700;font-size:24px;line-height:1.15;margin:22px 0 16px}
.menu-text .snark{text-wrap:balance}
.menu-text .snark{font-family:Itim,cursive;font-weight:400;font-size:21px;line-height:1.25}
.menu-card .menu-text p.snark{font-size:22px}
.app-push{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:center;background:var(--pink);color:#fff;border-radius:28px;margin:30px 5.5% 70px;padding:60px 6%;overflow:hidden;position:relative}
.app-push .eyebrow{color:#f8d545}
.app-push h2{font-family:Outfit,Arial,sans-serif;font-size:clamp(36px,4.4vw,64px);line-height:.95;letter-spacing:-2px;font-weight:900;margin:12px 0 18px}
.app-push h2 em{font-style:normal;color:#f8d545}
.app-lead{font-size:18px;line-height:1.6;font-weight:600;max-width:560px;margin:0 0 26px}
.app-steps{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:14px}
.app-steps li{display:flex;gap:16px;align-items:flex-start;background:rgba(255,255,255,.14);border-radius:16px;padding:14px 18px}
.app-steps b{flex:none;width:38px;height:38px;border-radius:50%;background:#fff;color:var(--pink);display:grid;place-items:center;font:900 18px Outfit,sans-serif}
.app-steps h3{font:800 19px Outfit,sans-serif;margin:2px 0 3px}.app-steps p{margin:0;line-height:1.5}
.app-steps li:nth-child(2){background:#f8d545;color:#242522}.app-steps li:nth-child(2) b{background:#242522;color:#f8d545}
.app-push .snark{color:#fff;font-family:Itim,cursive;font-style:normal;font-weight:400;font-size:21px;margin:22px 0 0}
.app-visual{display:grid;place-items:center}
.phone{position:relative;width:260px;height:470px;border-radius:40px;background:linear-gradient(160deg,#00a69c,#0b6f6a);border:10px solid #242522;box-shadow:0 30px 60px rgba(0,0,0,.25);padding:70px 14px 0;transform:rotate(4deg)}
.phone-notch{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:90px;height:22px;background:#242522;border-radius:20px}
.notif{display:flex;gap:10px;background:rgba(255,255,255,.95);color:#242522;border-radius:16px;padding:12px;margin-bottom:12px;box-shadow:0 8px 18px rgba(0,0,0,.18);animation:notif-in .6s ease both}
.notif-2{animation-delay:.5s}
.notif img{width:34px;height:34px;border-radius:9px;object-fit:contain;background:#fff;flex:none}
.notif b{font:800 12px Outfit,sans-serif;letter-spacing:1px}.notif span{float:right;font-size:11px;color:#777}
.notif p{margin:3px 0 0;font-size:13.5px;line-height:1.35}
.bell{position:absolute;bottom:-18px;right:-22px;width:86px;height:86px;border-radius:50%;background:#f8d545;display:grid;place-items:center;font-size:42px;box-shadow:0 12px 26px rgba(0,0,0,.2);animation:ring 2.4s ease-in-out infinite;transform-origin:50% 20%}
@keyframes ring{0%,70%,100%{transform:rotate(0)}75%{transform:rotate(14deg)}80%{transform:rotate(-12deg)}85%{transform:rotate(8deg)}90%{transform:rotate(-5deg)}}
@keyframes notif-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.app-band{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;background:#f8d545;padding:22px 5%;text-align:center}
.app-band p{margin:0;font-size:16px;color:#242522}
.bell-sm{font-size:26px;animation:ring 2.4s ease-in-out infinite;display:inline-block}
@media(prefers-reduced-motion:reduce){.bell,.bell-sm,.notif{animation:none}}
@media(max-width:860px){.app-push{grid-template-columns:1fr;margin:20px 4% 50px;padding:40px 6% 60px;gap:30px}.phone{width:220px;height:380px}.app-lead{font-size:16px}}
.store-buttons{display:flex;gap:12px;flex-wrap:wrap}
.store-btn{display:inline-flex;align-items:center;gap:10px;background:#242522;color:#fff;border-radius:12px;padding:10px 18px 10px 14px;font:800 18px Outfit,Arial,sans-serif;line-height:1.05;transition:transform .15s,background .2s}
.store-btn:hover{transform:translateY(-2px);background:#000}
.store-btn svg{width:26px;height:26px;flex:none}
.store-btn small{display:block;font:600 10.5px 'DM Sans',Arial,sans-serif;letter-spacing:.3px;opacity:.85}
.store-sm .store-btn{padding:7px 14px 7px 11px;font-size:15px}.store-sm .store-btn svg{width:21px;height:21px}
.follow-push{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;background:var(--teal);color:#fff;border-radius:28px;margin:-40px 5.5% 70px;padding:50px 6%}
.follow-push .eyebrow{color:#f8d545}
.follow-push h2{font-family:Outfit,Arial,sans-serif;font-size:clamp(34px,4vw,58px);line-height:.95;letter-spacing:-2px;font-weight:900;margin:12px 0 16px}
.follow-push h2 em{font-style:normal;color:#f8d545}
.follow-lead{font-size:17px;line-height:1.6;font-weight:600;max-width:560px;margin:0}
.follow-push .snark{color:#fff;font-family:Itim,cursive;font-style:normal;font-weight:400;font-size:21px;margin:18px 0 0}
.follow-btns{display:grid;gap:12px}
.follow-btn{display:flex;align-items:center;gap:14px;background:#fff;color:#242522;border-radius:16px;padding:14px 20px;font:900 21px Outfit,Arial,sans-serif;line-height:1.05;transition:transform .15s}
.follow-btn:hover{transform:translateX(4px)}
.follow-btn svg{width:30px;height:30px;flex:none;color:var(--pink)}
.follow-btn small{display:block;font:600 11px 'DM Sans',Arial,sans-serif;letter-spacing:.4px;color:#6b655e}
.follow-fb{background:#f8d545;padding:20px 22px;font-size:26px}.follow-fb svg{width:38px;height:38px;color:#1877f2}
@media(max-width:860px){.follow-push{grid-template-columns:1fr;margin:-26px 4% 50px;padding:36px 6%;gap:24px}}
.app-band-thin{padding:10px 5%;gap:14px}.app-band-thin p{font-size:14.5px}.app-band-thin .bell-sm{font-size:20px}.app-band-thin .store-btn{padding:5px 12px 5px 9px;font-size:13.5px;border-radius:10px}.app-band-thin .store-btn svg{width:18px;height:18px}.app-band-thin .store-btn small{font-size:9px}@media(max-width:760px){.app-band-thin{padding:12px 4%;gap:8px}.app-band-thin p{font-size:13.5px}}
@media(max-width:760px){.app-band-thin .bell-sm{display:none}}
footer img.footer-logo{width:130px;height:auto;border-radius:0}
.notif-u{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;font-weight:700}.app-push h2 em{text-decoration:underline;text-decoration-thickness:6px;text-underline-offset:8px}

/* Inner pages fill the screen like the homepage (Reba 2026-10-16) */
@media(min-width:961px){.story-page,.fam-page,.comm-page,.love-page,.subpage{max-width:none;margin:0;padding-left:7%;padding-right:7%}.fam-hero{padding-left:7%;padding-right:7%}}
