@font-face{font-family:"Inter";src:url(/fonts/Inter-VF.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(/fonts/Cormorant-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(/fonts/Cormorant-500i.woff2) format("woff2");font-weight:500;font-style:italic;font-display:swap}
:root{--night:#140E1B;--plum:#2A1326;--oxblood:#681F2C;--oxblood-deep:#2A1326;--ink:#1F1520;--muted:#6F6270;--ivory:#FBF7F0;--ivory-2:#F3ECE1;--ivory-3:#EADFCF;--paper:#fff;--bg:#F6F1E9;--saffron:#F26722;--amber:#FF8A3D;--brand:#FF6D38;--moss:#3F8F6B;--bamboo:#DCCBB0;--gold:#F6CE8B;--line:rgba(31,21,32,.09);
--serif:"Cormorant Garamond",Georgia,serif;--sans:"Inter",system-ui,-apple-system,sans-serif;--grad:linear-gradient(135deg,#FF8A3D,#F26722 55%,#E5500F);
--shadow:0 1px 2px rgba(31,21,32,.04),0 24px 48px -28px rgba(42,19,38,.45);--r:22px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15.5px;line-height:1.55;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;padding-bottom:calc(96px + env(safe-area-inset-bottom))}
body.adm{padding-bottom:40px}
h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0;line-height:1.05;letter-spacing:-.01em}
a{color:#B4531A}
.wrap{max-width:640px;margin:0 auto;padding:0 18px}
/* brand header: dark glass */
.top{background:rgba(20,14,27,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--ivory);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(255,255,255,.06)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:58px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ivory)}
.brand img{height:28px;width:28px;display:block}
.brand b{font:800 24px var(--sans);letter-spacing:-.02em;line-height:1;color:var(--brand);text-shadow:0 1px 10px rgba(242,103,34,.35),0 1px 2px rgba(0,0,0,.35)}.brand b em{font-style:normal;color:inherit}
.brand small{font-size:9.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:rgba(251,247,240,.6);margin-left:2px;align-self:flex-end;padding-bottom:3px}
.top nav{display:flex;gap:6px;font-size:13px;font-weight:500}
.top nav a,.top nav button{color:rgba(251,247,240,.82);text-decoration:none;background:none;border:0;font:inherit;cursor:pointer;padding:7px 12px;border-radius:999px;transition:background .2s}
.top nav a:hover,.top nav button:hover{background:rgba(255,255,255,.09)}
/* hero: ganga at sunset */
.hero{background:radial-gradient(90% 70% at 50% 108%,rgba(255,150,60,.55) 0,rgba(242,103,34,.22) 38%,transparent 70%),linear-gradient(180deg,#140E1B 0,#2A1326 58%,#4A1D2A 100%);color:var(--ivory);padding:30px 0 70px;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;background:linear-gradient(180deg,transparent,rgba(255,180,84,.18) 60%,var(--bg));pointer-events:none}
.hero .sun{position:absolute;left:50%;bottom:-46px;width:150px;height:150px;border-radius:50%;transform:translateX(-50%);background:radial-gradient(circle at 50% 40%,#FFE2A8,#FFB454 45%,#EE8A2B 80%);box-shadow:0 0 90px 30px rgba(255,150,60,.45);animation:sunrise 1.4s cubic-bezier(.2,.8,.2,1) both}
@keyframes sunrise{from{transform:translate(-50%,60px);opacity:0}}
.hero .wrap{position:relative;z-index:1}
.hero .eyebrow{letter-spacing:.24em;font-size:11px;color:var(--amber);text-transform:uppercase;font-weight:600}
.hero h1{font-size:clamp(42px,12.5vw,66px);margin:12px 0 4px}
.hero h1 em{font-style:italic;font-weight:500;color:var(--gold)}
.hero p{max-width:34ch;margin:0;color:rgba(251,247,240,.75);font-size:16px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gold)}
.chip::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--amber);box-shadow:0 0 10px var(--amber)}
.hero.slim{padding:20px 0 54px}.hero.slim h1{font-size:40px}
.summary{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1px;margin-top:22px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);border-radius:20px;overflow:hidden;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.summary div{background:rgba(20,14,27,.45);padding:12px 14px}
.summary small{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(251,247,240,.6);font-weight:600}
.summary b{display:block;font:600 24px/1.1 var(--serif);margin-top:3px;color:#fff}
.summary i{display:block;font-style:normal;font-size:11.5px;color:var(--amber);margin-top:1px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:20px;margin:0 0 16px;position:relative}
.card.lift{margin-top:-34px;z-index:2}
.card+.card{margin-top:0}
.step{display:flex;align-items:center;gap:12px;margin:0 0 14px}
.step b{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--grad);color:#fff;font:700 12px var(--sans);flex:none}
.step h2{font-size:27px}
.dates{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none}.dates::-webkit-scrollbar{display:none}
.date{flex:0 0 auto;width:58px;padding:9px 0;border:1px solid var(--line);border-radius:16px;background:var(--bg);text-align:center;cursor:pointer;scroll-snap-align:start;font:inherit;color:var(--ink);transition:transform .2s,background .2s,box-shadow .2s}
.date:active{transform:scale(.94)}
.date small{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.date strong{font:600 25px var(--serif);display:block;line-height:1.1}
.date[aria-pressed=true]{background:var(--night);color:#fff;border-color:var(--night);box-shadow:0 10px 20px -10px rgba(20,14,27,.7);transform:translateY(-2px)}
.date[aria-pressed=true] small{color:var(--amber)}
.slots{display:grid;gap:10px;margin-top:6px}.slots:empty{display:none}
.slot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:var(--bg);cursor:pointer;text-align:left;font:inherit;color:var(--ink);width:100%;transition:all .2s}
.slot[aria-pressed=true]{border-color:var(--saffron);box-shadow:0 0 0 2px var(--saffron) inset;background:#fff}
.slot[disabled]{opacity:.5;cursor:not-allowed}
.slot .t{font:600 28px var(--serif)}.slot .l{font-size:13px;color:var(--muted)}.slot .p{text-align:right;font-size:12.5px;color:var(--muted)}.slot .p b{display:block;font:600 24px var(--serif);color:#B4531A}
.boats{display:grid;gap:8px;margin-bottom:14px}
.boatpick{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--bg);font:inherit;text-align:left;cursor:pointer;color:var(--ink)}
.boatpick[aria-pressed=true]{border-color:var(--saffron);box-shadow:0 0 0 2px var(--saffron) inset}
.boatpick small{display:block;color:var(--muted)}
/* seat map */
.legend{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;font-size:12px;color:var(--muted);margin:0 0 16px}
.legend i{display:inline-block;width:14px;height:14px;border-radius:5px;vertical-align:-2px;margin-right:6px;border:1.5px solid #D5C6AC;background:#fff}
.legend i.sel{background:var(--grad);border-color:transparent}.legend i.held{background:#F6CE8B;border-color:#F6CE8B}.legend i.booked{background:#D9D1C6;border-color:#D9D1C6}.legend i.blocked{background:repeating-linear-gradient(45deg,#D9D1C6 0 3px,#EBE5DB 3px 6px);border-color:#D9D1C6}
#seatcard{background:linear-gradient(180deg,#fff,#FBF7F0)}
.hull{margin:0 auto;max-width:350px;background:linear-gradient(180deg,#FFFDF9,#F2E8D8);border:1.5px solid #E4D5BB;border-radius:130px 130px 34px 34px/160px 160px 34px 34px;padding:58px 16px 20px;position:relative;box-shadow:inset 0 2px 0 #fff,0 22px 40px -26px rgba(42,19,38,.5)}
.hull .bow{position:absolute;top:20px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:.3em;color:#A59478;text-transform:uppercase;font-weight:600}
.hull .stern{text-align:center;font-size:10px;letter-spacing:.3em;color:#A59478;text-transform:uppercase;margin-top:14px;font-weight:600}
.row{display:grid;grid-template-columns:1fr 26px 1fr;align-items:center;margin-bottom:7px}
.side{display:flex;gap:6px}.side.l{justify-content:flex-end}.side.r{justify-content:flex-start}
.aisle{text-align:center;font-size:9px;color:#BBAA8E}
.seat{width:44px;height:42px;border-radius:12px 12px 9px 9px;border:1.5px solid #DCCBB0;background:#fff;color:var(--ink);font:600 12px var(--sans);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;position:relative;transition:transform .18s cubic-bezier(.3,1.6,.5,1),box-shadow .18s,background .18s}
.seat::before{content:"";position:absolute;left:5px;right:5px;top:4px;height:3px;border-radius:3px;background:rgba(104,31,44,.1)}
.seat:not([disabled]):hover{transform:translateY(-2px);box-shadow:0 8px 14px -8px rgba(42,19,38,.5)}
.seat:active{transform:scale(.9)}
.seat.sel{background:var(--grad);border-color:transparent;color:#fff;box-shadow:0 10px 18px -8px rgba(242,103,34,.8);animation:pop .38s cubic-bezier(.3,1.7,.5,1)}
.seat.sel::before{background:rgba(255,255,255,.45)}
@keyframes pop{0%{transform:scale(.8)}60%{transform:scale(1.14)}100%{transform:scale(1)}}
.seat.held{background:#F8DCA6;border-color:#F8DCA6;color:#8a5b12;cursor:not-allowed}
.seat.booked{background:#DDD5CA;border-color:#DDD5CA;color:#9b9183;cursor:not-allowed}
.seat.blocked{background:repeating-linear-gradient(45deg,#DDD5CA 0 4px,#ECE6DC 4px 8px);border-color:#DDD5CA;color:#9b9183;cursor:not-allowed}
.seat:focus-visible,button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid rgba(242,103,34,.55);outline-offset:2px}
.hull.enter .row{animation:rise .45s both}.hull.enter .row:nth-child(3){animation-delay:.04s}.hull.enter .row:nth-child(6){animation-delay:.1s}.hull.enter .row:nth-child(10){animation-delay:.18s}.hull.enter .row:nth-child(14){animation-delay:.26s}
@keyframes rise{from{opacity:0;transform:translateY(8px)}}
.live{font-size:11.5px;color:var(--moss);display:flex;align-items:center;gap:6px;margin-top:12px;justify-content:center;font-weight:600;letter-spacing:.06em}
.live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--moss);animation:pulse 1.6s infinite}
@keyframes pulse{50%{opacity:.25}}
/* sticky, centred Book button */
.bar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;justify-content:center;padding:26px 16px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,rgba(246,241,233,.92) 55%);pointer-events:none}
.bar .btn{pointer-events:auto}
.btn.cta{min-width:min(86vw,340px);padding:17px 28px;font-size:15px;box-shadow:0 18px 34px -12px rgba(242,103,34,.75),0 0 0 1px rgba(255,255,255,.25) inset;animation:ctain .5s cubic-bezier(.3,1.4,.5,1) both}
.btn.cta.go{animation:glow 2.2s ease-in-out infinite}
@keyframes ctain{from{transform:translateY(30px);opacity:0}}
@keyframes glow{50%{box-shadow:0 18px 40px -8px rgba(242,103,34,.95),0 0 0 1px rgba(255,255,255,.25) inset}}
.btn{background:var(--grad);color:#fff;border:0;border-radius:999px;padding:14px 26px;font:700 13px var(--sans);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:transform .15s,box-shadow .2s,filter .2s;text-decoration:none;display:inline-block;text-align:center}
.btn:hover{filter:brightness(1.05)}.btn:active{transform:scale(.97)}
.btn.dark{background:var(--night);color:#fff}.btn.ghost{background:transparent;border:1.5px solid rgba(31,21,32,.22);color:var(--ink)}.btn.danger{background:#B3382F;color:#fff}.btn.sm{padding:9px 16px;font-size:11.5px}
.btn[disabled]{opacity:.5;cursor:not-allowed;filter:grayscale(.3)}
.field{display:block;margin:0 0 14px}.field span{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-weight:600}
input,select,textarea{width:100%;padding:14px 15px;border:1.5px solid rgba(31,21,32,.12);border-radius:14px;background:#fff;font:inherit;color:var(--ink);transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--saffron);box-shadow:0 0 0 4px rgba(242,103,34,.18)}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:100px;background:var(--night);color:#fff;padding:12px 18px;border-radius:14px;z-index:60;font-size:14px;max-width:90vw;box-shadow:0 14px 30px -10px rgba(0,0,0,.5);animation:ctain .3s both}
.modal{position:fixed;inset:0;background:rgba(20,14,27,.6);backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;z-index:50}
.modal>div{background:#fff;width:100%;max-width:480px;border-radius:26px 26px 0 0;padding:24px 20px calc(24px + env(safe-area-inset-bottom))}
@media(min-width:600px){.modal{align-items:center}.modal>div{border-radius:26px}}
.notice{background:#FFF4E3;border:1px solid #F3D6A6;border-radius:14px;padding:11px 14px;font-size:13.5px;margin:0 0 14px;color:#6a3d12}
.pill{display:inline-block;padding:4px 11px;border-radius:999px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;background:var(--ivory-3);color:var(--muted)}
.pill.confirmed{background:#DDF1E6;color:#1F6A47}.pill.pending_verification,.pill.refund_review{background:#FFEBC8;color:#8a4f0a}.pill.rejected,.pill.expired{background:#F8DCDA;color:#9b2c2c}
.timer{font:600 40px var(--serif);color:#B4531A;line-height:1}
.kv{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0}.kv dt{color:var(--muted);font-size:12.5px;padding-top:2px}.kv dd{margin:0}
.upi{display:grid;gap:14px;justify-items:center;text-align:center;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff;margin-bottom:14px}
.upi svg{width:190px;height:190px}.upi .ph{width:190px;height:190px;border:2px dashed var(--bamboo);border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px;padding:14px}
.upi code{font-size:17px;background:var(--ivory-2);padding:6px 12px;border-radius:8px;word-break:break-all}
.bk{border:1px solid var(--line);border-radius:20px;background:#fff;padding:16px 18px;margin-bottom:14px;box-shadow:var(--shadow)}.bk h3{font-size:26px}
.foot{padding:20px 0 30px;color:var(--muted);font-size:13px;text-align:center}
.hide{display:none!important}
.tier{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;background:linear-gradient(90deg,#FFF1D9,#FFE3C0);border:1px solid #F3D09A;border-radius:999px;padding:9px 16px;margin:0 auto 16px;color:#7a3f0c;width:max-content;max-width:100%;font-size:13px}
.tier b{font:700 13px var(--sans)}.tier span{opacity:.8}.tier.hot{background:#FBE0DD;border-color:#EDB0AA;color:#9b2c2c}
.pay-hero{display:flex;justify-content:space-between;align-items:center}
.ok-badge{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:#DDF1E6;color:#1F6A47;font-size:24px;animation:pop .5s cubic-bezier(.3,1.7,.5,1)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
/* admin */
.adm .wrap{max-width:1000px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0}.tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 16px;font:inherit;cursor:pointer;color:var(--ink)}.tabs button[aria-pressed=true]{background:var(--oxblood);color:var(--ivory)}
table{width:100%;border-collapse:collapse;font-size:14px;background:#fff;border-radius:14px;overflow:hidden}th,td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:var(--ivory-2)}
.tablewrap{overflow-x:auto}.grid2{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.proof{max-width:260px;max-height:340px;border-radius:10px;border:1px solid var(--line);cursor:zoom-in}

.searchrow{margin:0 0 14px}.searchrow input{padding:14px 16px;font-size:16px;border-radius:14px}
.pbadge{display:inline-block;min-width:26px;padding:0 9px;border-radius:999px;background:var(--ivory-3);color:var(--muted);font:600 15px var(--sans);text-align:center;vertical-align:middle}
.pbadge.hot{background:var(--saffron);color:#fff}
.pendingsec{background:var(--paper);border:2px solid var(--saffron);border-radius:22px;padding:18px;box-shadow:var(--shadow)}
.pgrid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
.pcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:10px}
.pcard.dup{border-color:#b23a3a;box-shadow:0 0 0 2px rgba(178,58,58,.25)}
.phead{display:grid;grid-template-columns:auto auto 1fr;gap:14px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:10px}
.phead small{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.phead b{display:block;line-height:1.1}.pno{font:400 28px var(--serif);color:var(--oxblood)}.pamt{font:400 28px var(--serif)}.putr{font:600 14px ui-monospace,Menlo,monospace;word-break:break-all;background:var(--ivory-2);padding:4px 8px;border-radius:8px;margin-top:2px}
.pbody{display:flex;gap:12px;justify-content:space-between}.pinfo{display:grid;gap:3px;font-size:14px}.pid{background:#fff3df;border-radius:8px;padding:4px 8px}
.noproof{width:110px;height:110px;border:1.5px dashed var(--bamboo);border-radius:12px;color:var(--muted);display:flex;align-items:center;justify-content:center;text-align:center;font-size:13px}
.pact{display:flex;gap:10px}.pact .btn{flex:1;padding:14px}
.dupflag{background:#fbe0e0;color:#8a1f1f;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:600}
.refundsec{background:var(--paper);border:2px solid #b23a3a;border-radius:22px;padding:18px;box-shadow:var(--shadow);margin-bottom:0}
.tier{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff3df;border:1px solid #EBCB9A;border-radius:14px;padding:10px 14px;margin:0 0 14px;color:#6a3d12}.tier b{font:400 20px var(--serif)}.tier span{font-size:13px}.tier.hot{background:#f9dede;border-color:#e3a6a6;color:#8a1f1f}

.tabs button{border-radius:999px;font-weight:600;font-size:13px;transition:all .2s}.tabs button[aria-pressed=true]{background:var(--night);color:#fff;border-color:var(--night)}
.pendingsec{background:linear-gradient(180deg,#fff,#FFF8EC)}.pno{color:#B4531A}
table{box-shadow:var(--shadow);border:1px solid var(--line)}
.nudge{animation:nudge .6s}@keyframes nudge{30%{transform:scale(1.02)}60%{transform:scale(.995)}}

/* bright Dev Deepawali hero photo: no dark overlay, only a light scrim at the top where the headline sits */
.hero.photo{background:#2A1326 image-set(url(/img/hero-deepawali-mobile-960.webp) type("image/webp"),url(/img/hero-deepawali-mobile-960.jpg) type("image/jpeg")) 78% 60%/cover no-repeat;min-height:470px;display:flex;align-items:flex-end;padding:34px 0 64px}
.hero.photo>.wrap{width:100%}
.hero.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,10,28,.46) 0,rgba(26,10,28,.14) 34%,rgba(26,10,28,0) 52%);pointer-events:none}
.hero.photo::after{height:46px;background:linear-gradient(180deg,transparent,rgba(246,241,233,.7) 70%,var(--bg))}
.hero.photo .chip{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.4);color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.hero.photo h1{color:#fff;text-shadow:0 2px 20px rgba(20,8,24,.55),0 1px 2px rgba(20,8,24,.4)}
.hero.photo h1 em{color:#FFE2A8}
.hero.photo .summary{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.45);box-shadow:0 18px 40px -20px rgba(20,8,24,.6)}
.hero.photo .summary div{background:rgba(30,12,30,.5)}
@media(min-width:760px){.hero.photo{background-image:image-set(url(/img/hero-deepawali-1600.webp) type("image/webp"),url(/img/hero-deepawali-1600.jpg) type("image/jpeg"));background-position:72% 66%;min-height:560px}.hero.photo .wrap{max-width:900px}.hero.photo .summary{max-width:640px}.hero.photo h1{font-size:76px}}
.brand img{background:rgba(255,255,255,.92);border-radius:8px;padding:2px;box-sizing:border-box}
.hero.photo h1{text-shadow:0 2px 22px rgba(20,8,24,.75),0 1px 3px rgba(20,8,24,.65)}
.hero.photo h1 em{color:#FFD38A}
.hero.photo .summary div{background:rgba(30,12,30,.42)}
.hero.photo .summary .sub,.hero.photo .summary small{text-shadow:0 1px 6px rgba(0,0,0,.6)}
.hero.photo h1 em{color:#FFEBC2;text-shadow:0 2px 22px rgba(20,8,24,.85),0 1px 4px rgba(20,8,24,.8)}

/* mobile: show the whole photo; headline over the fireworks, price card sits just below the image */
@media(max-width:640px){
.hero.photo{background-color:var(--bg);background-size:100% auto;background-position:center top;background-repeat:no-repeat;display:block;min-height:0;padding:26px 0 44px}
.hero.photo::before{background:linear-gradient(180deg,rgba(26,10,28,.5) 0,rgba(26,10,28,.12) 24vw,rgba(26,10,28,0) 38vw);bottom:auto;height:90.5vw}
.hero.photo::after{display:none}
.hero.photo .herotop{min-height:calc(90.5vw - 12px)}
.hero.photo h1{font-size:clamp(40px,12vw,56px);margin:12px 0 0}
.hero.photo .summary{margin-top:18px;background:linear-gradient(135deg,#2A1326,#140E1B);border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 36px -18px rgba(20,8,24,.7)}
.hero.photo .summary div{background:transparent}
}

.payee-note{font-size:13px;color:var(--muted);margin:10px 0 0}.payee-note b{color:var(--ink)}
.qrfb{margin:10px 0 18px;font-size:13px;color:var(--muted)}.qrfb summary{cursor:pointer;font-weight:600;color:var(--ink)}.qrfb img{display:block;max-width:260px;width:100%;margin:12px auto 8px;border-radius:14px;border:1px solid var(--line)}
