/* Each concept has its own visual vocabulary; agency styles stay in styles.css. */
@font-face{font-family:Bricolage;src:url('assets/bricolage-grotesque.ttf') format('truetype');font-weight:200 800;font-display:swap}
/* SMASH — a diner: sign lettering, order button, checkerboard edge. */
.smash-diner-nav{position:absolute;z-index:8;left:5%;right:5%;top:26px;display:flex;align-items:center;justify-content:space-between}
.smash-diner-nav strong{font:italic 700 44px/.9 Georgia,serif;letter-spacing:-3px;color:#f1ba73;transform:rotate(-6deg)}
.smash-diner-nav button{border:0;background:none;color:#f6e9ce;display:flex;align-items:center;gap:12px;font-size:12px;padding:12px 0}
.smash-menu-icon{display:block;width:22px;height:13px;border-block:2px solid currentColor;position:relative}.smash-menu-icon:after{content:'';position:absolute;left:0;right:0;top:4px;border-top:2px solid currentColor}
.smash-order{position:absolute;z-index:6;left:5%;bottom:9%;display:flex;align-items:center;gap:24px}
.smash-order button{background:#ec4d28;color:#fff5e3;border:0;border-radius:3px;box-shadow:5px 5px 0 #fcbe74;padding:15px 28px;font:28px/1 Anton,Impact,sans-serif;transform:rotate(-3deg);transition:transform .18s,box-shadow .18s}@media(hover:hover) and (pointer:fine){.smash-order button:hover{transform:rotate(0deg) translate(-2px,-2px);box-shadow:7px 7px 0 #fcbe74}}
.smash-order p{font-size:12px;line-height:1.6;color:#efdfbf}
.smash-checks{position:absolute;bottom:0;left:0;right:0;height:18px;background:repeating-conic-gradient(#f1c589 0 25%,#161615 0 50%) 0 0/36px 36px;z-index:7}
.brand-food .smash-menu-sheet{background:#f3ce91;color:#37211c;padding:42px 8% 30px}.smash-menu-sheet .menu-logo{font:italic bold 32px Georgia,serif;color:#b12f19}.smash-menu-sheet h4{font:6.5cqw/.95 Anton,Impact,sans-serif;margin:20px 0}.smash-menu-sheet dl>div{border:0;padding:13px 0}.smash-menu-sheet dt{font:22px Anton,Impact,sans-serif}.smash-menu-sheet dt span{font:12px monospace;display:inline-block;width:28px;color:#ae341f}.smash-menu-sheet dd{color:#5a3d2e;padding-left:28px}.smash-menu-sheet>p{font:italic 22px Georgia,serif;margin-top:18px}
/* AFTER HOURS — a fly-poster with its own ticket, not a site footer. */
.after-nav{position:absolute;inset:25px 5% auto;z-index:8;display:flex;justify-content:space-between;align-items:center}.after-nav strong{font:700 22px/1 monospace;letter-spacing:-1px}.after-nav button{background:none;border:0;color:#241740;font:12px monospace;padding:8px}.after-nav button span{font-size:26px;vertical-align:middle;margin-left:10px}
.brand-popup .pop-heading h3,.hero-window .brand-popup .pop-heading h3{font:900 11.5cqw/.91 Arial,sans-serif;letter-spacing:-.075em;transform:rotate(-4deg)}.brand-popup .pop-heading em{font:inherit;font-style:normal;-webkit-text-stroke:1.5px #23163c;color:#eeff9a;letter-spacing:-.075em}.brand-popup .pop-heading>span{font:10px monospace;letter-spacing:1px}.brand-popup .pop-heading,.hero-window .brand-popup .pop-heading{top:23%}.brand-popup .pop-photo{right:3%;top:16%;height:68%;width:49%;filter:contrast(1.08)}.brand-popup .pop-tape{bottom:26%;padding:9px 0}.brand-popup .pop-tape span{font:19px monospace;letter-spacing:-1px}.brand-popup .pop-date{font-family:monospace}
.after-ticket{position:absolute;z-index:8;left:6%;bottom:5%;width:47%;max-width:420px;min-height:103px;display:flex;align-items:center;text-align:left;gap:20px;padding:17px 23px;background:#fff0cf;color:#27173c;border:0;transform:rotate(2deg);transition:transform .2s;filter:drop-shadow(4px 5px 0 #38255833)}.after-ticket:before,.after-ticket:after{content:'';position:absolute;top:calc(50% - 9px);width:18px;height:18px;border-radius:50%;background:#c3b8e8}.after-ticket:before{left:-9px}.after-ticket:after{right:-9px}@media(hover:hover) and (pointer:fine){.after-ticket:hover{transform:rotate(-1deg)}}.ticket-date{font:23px/.9 monospace;letter-spacing:-2px;border-right:2px dashed #27173c4a;padding-right:18px}.ticket-title{font:700 18px/.95 monospace;letter-spacing:-.6px}.ticket-title small{display:block;font:9px monospace;margin-top:11px;letter-spacing:.6px}.ticket-barcode{margin-left:auto;width:32px;height:63px;background:repeating-linear-gradient(90deg,#25133b 0 2px,transparent 2px 4px,#25133b 4px 5px,transparent 5px 8px);flex:none}
.brand-popup .after-program{background:#23173b;color:#edff94;padding:48px 7%}.after-program-title{font:11px monospace!important}.after-program h4{font:700 5.9cqw/1 Arial,sans-serif;letter-spacing:-.06em;margin:30px 0}.after-night{display:flex;align-items:center;gap:30px;margin:25px 0}.after-night>strong{font:70px/1 monospace;background:#c3b8e8;color:#23173b;padding:15px;transform:rotate(-3deg)}.after-night:nth-of-type(2)>strong{background:#edff94;transform:rotate(3deg)}.after-night h5{font:22px monospace;margin:0 0 9px}.after-night p{font-size:12px!important;color:#d3cce4;margin:0 0 13px}.after-night span{font:12px monospace;color:#edff94}
/* ZEST — a product-first drinks brand: wide type, central bottle, wave edge. */
.brand-drinks{background:#1649e7}.brand-drinks:before{background:radial-gradient(ellipse at 53% 49%,#6996fc44,transparent 65%)}
.zest-club-nav{position:absolute;inset:22px 5% auto;z-index:8;display:flex;align-items:center;justify-content:space-between}.zest-club-nav strong{font:800 40px/1 Bricolage,Arial,sans-serif;letter-spacing:-2.5px;transform:rotate(-6deg)}.zest-club-nav button{background:#efff8d;color:#143bbb;border:0;border-radius:6px;padding:12px 18px;font:700 11px Bricolage,Arial,sans-serif;transform:rotate(3deg);transition:transform .2s}@media(hover:hover) and (pointer:fine){.zest-club-nav button:hover{transform:rotate(-3deg)}}
.zest-supertype{position:absolute;left:4%;right:4%;top:23%;z-index:2;font:800 15.8cqw/.79 Bricolage,Arial,sans-serif;letter-spacing:-.075em;color:#efff8d;transform:translateX(calc(var(--progress)*-12px));margin:0}.zest-supertype span{display:block}.zest-supertype span+span{text-align:right;margin-top:.08em;color:#fffbed}
.brand-drinks .zest-product,.hero-window .brand-drinks .zest-product{top:11%;bottom:13%;width:46%;left:27%;right:auto;z-index:3}.zest-ground{display:none}.zest-side-note{position:absolute;left:6%;bottom:18%;z-index:4;font:14px/1.5 Bricolage,Arial,sans-serif;color:#fffbed}.zest-side-note em{font:italic 20px/1.4 Georgia,serif}.zest-wave{position:absolute;left:-2%;right:-2%;width:104%;bottom:-2px;height:18%;z-index:4;fill:#efff8d;transform:scaleX(calc(1 + var(--progress)*.08));pointer-events:none}.zest-taste{position:absolute;right:7%;bottom:3.5%;z-index:6;color:#123dcd;background:none;border:0;text-align:right;font:800 22px/.94 Bricolage,Arial,sans-serif;letter-spacing:-1px;transform:rotate(-4deg);padding:8px}@media(hover:hover) and (pointer:fine){.zest-taste:hover{transform:rotate(0deg)}}
.brand-drinks .zest-drink-list{background:#efff8d;color:#123dc9;padding:50px 6% 30px}.zest-drink-list h4{font:800 6.7cqw/.97 Bricolage,Arial,sans-serif;letter-spacing:-.06em;margin:10px 0 30px}.zest-drink-list h4 em{font-style:normal;color:#f05737}.zest-flavours{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.zest-flavours article{padding:25px 20px 23px;background:#1949df;color:#efff8d;transform:rotate(-3deg);border-radius:44% 44% 6px 6px;min-height:230px;display:flex;flex-direction:column;justify-content:center}.zest-flavours article:nth-child(2){background:#f66b35;color:#40211b;transform:rotate(3deg)}.zest-flavours article:nth-child(3){background:#d3acf3;color:#472571;transform:rotate(-2deg)}.zest-flavours strong{font:800 3.9cqw/.95 Bricolage,Arial,sans-serif;letter-spacing:-.055em}.zest-flavours p{font:12px/1.5 Bricolage,Arial,sans-serif;margin-top:18px}
@media(min-width:701px){.hero-window .smash-order{gap:18px}.hero-window .smash-order button{font-size:23px;padding:14px 22px}.hero-window .smash-order p{font-size:10px}.hero-window .smash-headline{top:21%}.hero-window .after-ticket{width:64%;min-height:90px;padding:12px 20px}.hero-window .ticket-title{font-size:16px}.hero-window .ticket-barcode{height:55px}.hero-window .zest-supertype{top:26%;font-size:15.7cqw}.hero-window .zest-side-note{font-size:12px;bottom:20%}.hero-window .zest-side-note em{font-size:17px}.hero-window .zest-taste{font-size:20px;bottom:4%}}
@media(max-width:700px){.smash-diner-nav{top:23px;left:7%;right:7%}.smash-diner-nav strong{font-size:36px}.smash-diner-nav button{font-size:9px;gap:8px}.smash-menu-icon{width:17px;height:12px}.smash-order{left:7%;right:7%;bottom:9%;display:block}.smash-order button{font-size:25px;padding:13px 21px}.smash-order p{font-size:9px;margin-top:16px;line-height:1.4}.smash-order p br{display:none}.smash-checks{height:14px;background-size:28px 28px}.brand-food .smash-menu-sheet{padding:60px 8% 25px}.smash-menu-sheet h4{font-size:14cqw}.smash-menu-sheet dt{font-size:19px}.smash-menu-sheet dd{font-size:10px;line-height:1.5}.smash-menu-sheet>p{font-size:19px}.after-nav{inset:23px 6% auto}.after-nav strong{font-size:15px;letter-spacing:-1px}.after-nav button{font-size:9px;padding-right:0}.after-nav button span{font-size:19px;margin-left:4px}.brand-popup .pop-heading,.hero-window .brand-popup .pop-heading{top:22%;left:6%}.brand-popup .pop-heading h3,.hero-window .brand-popup .pop-heading h3{font-size:22cqw;margin-top:16px}.brand-popup .pop-heading>span{font-size:7px;letter-spacing:.7px}.brand-popup .pop-date,.hero-window .brand-popup .pop-date{top:13%;font-size:19px}.brand-popup .pop-date span{font-size:8px}.brand-popup .pop-photo{top:40%;height:43%;width:86%;right:-6%}.brand-popup .pop-tape{bottom:28%;padding:9px 0}.brand-popup .pop-tape span{font-size:16px}.after-ticket{left:6%;right:6%;bottom:5%;width:auto;min-height:100px;gap:13px;padding:15px 19px}.ticket-date{font-size:22px;padding-right:12px}.ticket-title{font-size:15px;letter-spacing:-.5px}.ticket-title small{font-size:7px;letter-spacing:.2px}.ticket-barcode{width:23px;height:55px}.brand-popup .after-program{padding:66px 8% 25px}.after-program-title{font-size:8px!important}.after-program h4{font-size:11cqw;margin:22px 0}.after-night{gap:16px;margin:28px 0}.after-night>strong{font-size:35px;padding:12px}.after-night h5{font-size:15px}.after-night p{font-size:10px!important;line-height:1.6}.after-night span{font-size:10px}.zest-club-nav{inset:22px 7% auto}.zest-club-nav strong{font-size:32px}.zest-club-nav button{font-size:9px;padding:10px 12px}.zest-supertype,.hero-window .zest-supertype{top:19%;font-size:22cqw;line-height:.85;left:5%;right:5%;transform:none}.zest-supertype span+span{margin-top:1.72em}.brand-drinks .zest-product,.hero-window .brand-drinks .zest-product{top:23%;bottom:22%;width:84%;left:8%;right:auto}.zest-side-note,.hero-window .zest-side-note{bottom:15%;left:7%;font-size:11px;line-height:1.2}.zest-side-note em,.hero-window .zest-side-note em{font-size:14px}.zest-wave{height:13%}.zest-taste,.hero-window .zest-taste{font-size:19px;bottom:1.8%;right:6%}.brand-drinks .zest-drink-list{padding:60px 7% 22px}.zest-drink-list h4{font-size:13cqw;margin-bottom:22px}.zest-flavours{grid-template-columns:1fr;gap:13px}.zest-flavours article{border-radius:5px;min-height:105px;padding:16px 22px;display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:12px;transform:rotate(-2deg)}.zest-flavours strong{font-size:8cqw}.zest-flavours p{font-size:10px;margin:0}.hero-window .zest-supertype span+span{margin-top:1.55em}}
@media(prefers-reduced-motion:reduce){.smash-order button,.after-ticket,.zest-club-nav button,.zest-taste{transition:none}.zest-supertype,.zest-wave{transform:none}}
@media(max-width:700px){.zest-wave{height:17%}.zest-taste,.hero-window .zest-taste{bottom:1.5%}}
