/* Fanoos landing page. Shared by / (Arabic, RTL) and /en/ (English, LTR).
   Colours, type and spacing follow the Fanoos design system; see HANDOFF.md. */
@font-face{font-family:"Baloo Bhaijaan 2";src:url(../fonts/BalooBhaijaan2-Variable.woff) format("woff");font-weight:400 800;font-display:swap}
@font-face{font-family:"Almarai";src:url(../fonts/Almarai-Regular.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:"Almarai";src:url(../fonts/Almarai-Bold.woff) format("woff");font-weight:700;font-display:swap}
@font-face{font-family:"Almarai";src:url(../fonts/Almarai-ExtraBold.woff) format("woff");font-weight:800;font-display:swap}
html{background:#100C22}
body{margin:0;background:#100C22}
a{color:#FFD9A8}a:hover{color:#FFF6EC}
.fz *{box-sizing:border-box}
.fz{background:#100C22;color:#FFF6EC;font-family:'Almarai','Baloo Bhaijaan 2',system-ui,sans-serif;overflow:hidden}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.disp{font-family:'Baloo Bhaijaan 2','Almarai',sans-serif}
/* hero */
.hero{position:relative;min-height:880px;overflow:hidden;isolation:isolate}
.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:260px;background:linear-gradient(180deg,rgba(16,12,34,0),#100C22);z-index:-1;pointer-events:none}
.field{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;transition:background 2.4s ease;z-index:-3}
.f1{width:720px;height:720px;left:-160px;top:120px;background:var(--b);animation:drift1 22s ease-in-out infinite}
.f2{width:620px;height:620px;left:260px;top:-180px;background:var(--c);animation:drift2 26s ease-in-out infinite}
.f3{width:520px;height:520px;left:60px;top:420px;background:var(--a);opacity:.35;animation:drift3 18s ease-in-out infinite}
@keyframes drift1{50%{transform:translate(120px,-60px) scale(1.1)}}
@keyframes drift2{50%{transform:translate(-100px,80px) scale(.9)}}
@keyframes drift3{50%{transform:translate(80px,-90px) scale(1.15)}}
.lattice{position:absolute;inset:0;z-index:-2;opacity:.09;background:url(../img/lattice.svg);-webkit-mask-image:radial-gradient(ellipse 60% 70% at 28% 50%,transparent 20%,#000 75%);mask-image:radial-gradient(ellipse 60% 70% at 28% 50%,transparent 20%,#000 75%)}
.star{position:absolute;width:3px;height:3px;border-radius:50%;background:#FFF6EC;animation:tw 4s ease-in-out infinite;z-index:-1}
@keyframes tw{0%,100%{opacity:.15}50%{opacity:.9}}
.wrap{max-width:1240px;margin:0 auto;padding:28px 32px 0;display:flex;flex-direction:column;min-height:880px}
.hdr{display:flex;justify-content:space-between;align-items:center;gap:12px}
.hdr nav{display:flex;gap:10px;align-items:center}
.hdr a{color:#FFF6EC;text-decoration:none;font-weight:700;font-size:15px;padding:12px 16px;min-height:44px;display:inline-flex;align-items:center}
.pill{border:1px solid rgba(255,246,236,.35);border-radius:999px;backdrop-filter:blur(8px);background:rgba(255,246,236,.06)}
.main{flex:1;display:flex;align-items:center;gap:40px;flex-wrap:wrap;padding:40px 0 80px}
.copy{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;gap:22px}
.eyebrow{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 14px;border-radius:999px;background:rgba(255,246,236,.08);border:1px solid rgba(255,246,236,.16);font-size:14px;font-weight:700;color:#FFD9A8;backdrop-filter:blur(10px)}
.live{width:8px;height:8px;border-radius:50%;background:#FFB48A;animation:ping 2s infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(255,180,138,.7)}70%{box-shadow:0 0 0 10px rgba(255,180,138,0)}100%{box-shadow:0 0 0 0 rgba(255,180,138,0)}}
.h1{margin:0;font-weight:800;font-size:clamp(44px,6.4vw,84px);line-height:1.1}
.h1 span{display:inline-block;opacity:0;transform:translateY(24px);filter:blur(8px);animation:in .9s cubic-bezier(.2,.7,.2,1) forwards}
.glow{background:linear-gradient(180deg,#FFF6EC 20%,#FFB48A 110%);-webkit-background-clip:text;background-clip:text;color:transparent}
@keyframes in{to{opacity:1;transform:none;filter:none}}
.sub{margin:0;font-size:20px;line-height:1.85;color:rgba(255,246,236,.8);max-width:560px}
.form{display:flex;gap:6px;padding:6px;border-radius:999px;background:rgba(255,246,236,.07);border:1px solid rgba(255,246,236,.18);max-width:540px;backdrop-filter:blur(14px)}
.form:focus-within{outline:3px solid #FFF6EC;outline-offset:3px}
.form input{flex:1;min-width:0;border:0;background:transparent;color:#FFF6EC;font:inherit;font-size:16px;padding:0 20px;outline:none;min-height:52px}
.form input::placeholder{color:rgba(255,246,236,.6)}
.btn{min-height:56px;padding:0 30px;border:0;border-radius:999px;background:#FFB48A;color:#1E1838;font:inherit;font-weight:800;font-size:16px;cursor:pointer;box-shadow:0 10px 40px -8px rgba(255,180,138,.7)}
.btn:focus-visible,.chip:focus-visible{outline:3px solid #FFF6EC;outline-offset:3px}
.fine{font-size:13px;color:rgba(255,246,236,.7);margin:12px 0 0}
.who{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.who > span{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;padding:8px 14px;border-radius:999px;background:rgba(30,24,56,.5);border:1px solid rgba(255,246,236,.12);color:rgba(255,246,236,.88)}
.dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.thanks{max-width:560px;padding:22px;border-radius:28px;background:rgba(30,24,56,.7);border:1px solid rgba(255,217,168,.4);backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:12px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(255,217,168,.55);background:transparent;color:#FFF6EC;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.chip:hover{background:#FFD9A8;color:#1E1838}
.stage{flex:1 1 420px;min-width:0;position:relative;height:660px;display:flex;justify-content:center;align-items:center;padding-left:150px}
.aura{position:absolute;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,var(--a) 0%,transparent 62%);opacity:.5;filter:blur(30px);animation:breathe 5s ease-in-out infinite}
@keyframes breathe{50%{transform:scale(1.12);opacity:.7}}
.ripple{position:absolute;width:300px;height:300px;border-radius:50%;border:1.5px solid var(--a);opacity:0;animation:rip 3.2s ease-out infinite}
.rp2{animation-delay:1.06s}.rp3{animation-delay:2.12s}
@keyframes rip{0%{transform:scale(.8);opacity:.55}100%{transform:scale(2);opacity:0}}
.lantern{position:relative;width:360px;height:432px;filter:drop-shadow(0 30px 60px rgba(0,0,0,.5));animation:float 7s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-14px)}}
.lantern svg{width:100%;height:100%;overflow:visible}
.swirl{transform-box:fill-box;transform-origin:center;animation:spin 14s linear infinite}
.swirl2{transform-box:fill-box;transform-origin:center;animation:spin 20s linear infinite reverse}
@keyframes spin{to{transform:rotate(360deg)}}
.core{transform-box:fill-box;transform-origin:center;animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.14)}}
.blob{transition:fill 2.4s}
.em{animation:em 5s linear infinite;opacity:0}
.e2{animation-delay:1s}.e3{animation-delay:2s}.e4{animation-delay:3s}.e5{animation-delay:4s}
@keyframes em{0%{transform:translateY(0);opacity:0}15%{opacity:.9}100%{transform:translateY(-200px);opacity:0}}
.mote{position:absolute;width:4px;height:4px;border-radius:50%;background:#FFD9A8;box-shadow:0 0 10px #FFB48A;animation:mote 9s ease-in-out infinite;opacity:0}
@keyframes mote{0%{transform:translate(0,40px);opacity:0}20%{opacity:.9}100%{transform:translate(var(--x),-260px);opacity:0}}
.floor{position:absolute;bottom:40px;width:280px;height:40px;border-radius:50%;background:radial-gradient(ellipse,rgba(255,180,138,.35),transparent 70%);filter:blur(6px)}
.bubble{position:absolute;top:120px;left:-20px;width:300px;padding:16px 18px;border-radius:22px 22px 22px 6px;background:rgba(30,24,56,.66);border:1px solid rgba(255,246,236,.18);backdrop-filter:blur(18px);box-shadow:0 20px 50px -20px rgba(0,0,0,.6);transition:opacity .5s,transform .5s}
.bubble.out{opacity:0;transform:translateY(10px)}
.meta{display:flex;justify-content:space-between;font-size:12px;color:#FFD9A8;font-weight:700;margin-bottom:8px}
.bubble p{margin:0;font-size:18px;line-height:1.6;font-weight:700}
.wave{display:inline-flex;gap:3px;align-items:center;height:14px;margin-top:10px}
.wave b{width:3px;border-radius:2px;background:#FFD9A8;animation:wv 1s ease-in-out infinite}
.wave b:nth-child(2){animation-delay:.15s}.wave b:nth-child(3){animation-delay:.3s}.wave b:nth-child(4){animation-delay:.45s}
@keyframes wv{0%,100%{height:4px}50%{height:14px}}
.dayc{position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:flex;gap:6px;padding:8px;border-radius:999px;background:rgba(30,24,56,.6);border:1px solid rgba(255,246,236,.12);backdrop-filter:blur(10px)}
.dayc > span{font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;color:rgba(255,246,236,.7);transition:.5s}
.dayc > span.on{background:#FFF6EC;color:#1E1838}
/* sections */
.sec{position:relative;padding:120px 32px;overflow:hidden;isolation:isolate}
.in{max-width:1180px;margin:0 auto}
.kicker{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:#FFD9A8}
.kicker:before{content:"";width:28px;height:2px;border-radius:2px;background:#FFB48A}
.h2{margin:14px 0 0;font-weight:800;font-size:clamp(34px,4.6vw,58px);line-height:1.15}
.lead{margin:18px 0 0;font-size:19px;line-height:1.85;color:rgba(255,246,236,.78);max-width:620px}
.glass{background:linear-gradient(160deg,rgba(255,246,236,.10),rgba(255,246,236,.03));border:1px solid rgba(255,246,236,.14);border-radius:28px;backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,246,236,.12),0 30px 60px -30px rgba(0,0,0,.6)}
.skyband{position:relative;margin-top:56px;height:300px;border-radius:36px;overflow:hidden;background:linear-gradient(270deg,#2A2150 0%,#8A4670 12%,#E8867C 20%,#FFD9A8 34%,#F6E3C8 50%,#FFB48A 66%,#BF6276 76%,#3A2A5E 88%,#151030 100%)}
.skyband:after{content:"";position:absolute;inset:0;background:url(../img/lattice.svg);opacity:.12}
.skyband svg{position:absolute;inset:0;width:100%;height:100%}
.moments{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:-70px;position:relative;z-index:2;padding:0 18px}
.mo{padding:18px;display:flex;flex-direction:column;gap:10px;background:rgba(22,17,44,.8)}
.mo .t{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;color:rgba(255,246,236,.7)}
.to{color:#1E1838;padding:4px 10px;border-radius:999px}
.mo p{margin:0;font-size:16px;line-height:1.65;font-weight:700}
.mo small{font-size:13px;line-height:1.6;color:rgba(255,246,236,.7)}
.people{background:radial-gradient(1000px 600px at 80% 0%,#2E2354,transparent 60%),#120E26}
.bento{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;margin-top:56px}
.b{padding:28px;display:flex;flex-direction:column;gap:14px;min-height:300px;position:relative;overflow:hidden}
.b h3{margin:0;font-weight:700;font-size:28px;line-height:1.3}
.b p{margin:0;font-size:16px;line-height:1.8;color:rgba(255,246,236,.78)}
.tag{align-self:flex-start;font-size:12px;font-weight:800;padding:6px 12px;border-radius:999px;background:rgba(255,246,236,.1);color:#FFD9A8}
.span3{grid-column:span 3}.span2{grid-column:span 2}.span4{grid-column:span 4}
.viz{margin-top:auto;position:relative}
.starrow{display:flex;gap:10px;flex-wrap:wrap}
.kid{flex:1 1 120px;padding:14px;border-radius:18px;background:rgba(30,24,56,.6);border:1px solid rgba(255,246,236,.1)}
.kid b{display:block;font-size:14px;margin-bottom:8px}
.stars{display:flex;gap:4px}
.st{width:20px;height:20px;clip-path:polygon(50% 0,62% 36%,100% 38%,70% 60%,80% 100%,50% 76%,20% 100%,30% 60%,0 38%,38% 36%);background:#FFD9A8;display:inline-block}
.st.off{background:rgba(255,246,236,.15)}
.st.new{animation:pop 2.4s ease-in-out infinite}
@keyframes pop{0%,70%,100%{transform:scale(1)}80%{transform:scale(1.5)}}
.crown{position:absolute;top:22px;left:22px;font-size:12px;font-weight:800;padding:8px 12px;border-radius:999px;background:#FFD9A8;color:#1E1838;box-shadow:0 0 30px rgba(255,217,168,.6)}
.route{position:relative;height:110px;border-radius:18px;background:rgba(30,24,56,.6);border:1px solid rgba(255,246,236,.1);overflow:hidden}
.route svg{position:absolute;inset:0;width:100%;height:100%}
.dash{stroke-dasharray:6 10;animation:dash 2s linear infinite}
@keyframes dash{to{stroke-dashoffset:-32}}
.check{display:flex;flex-direction:column;gap:8px}
.check div{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:rgba(30,24,56,.6);font-size:14px;font-weight:700}
.tick{width:22px;height:22px;border-radius:50%;border:2px solid #FFB48A;flex:0 0 auto;display:grid;place-items:center}
.tick.ok{background:#FFB48A}
.tick.ok:after{content:"";width:9px;height:5px;border-left:2.5px solid #1E1838;border-bottom:2.5px solid #1E1838;transform:rotate(-45deg) translate(1px,-1px)}
.done{color:rgba(255,246,236,.5);text-decoration:line-through}
.phone{width:200px;height:300px;margin:6px auto -60px;border-radius:34px;background:#0D0A1C;border:6px solid #2A2150;padding:14px;display:flex;flex-direction:column;gap:8px;box-shadow:0 30px 60px -20px rgba(0,0,0,.7)}
.prow{height:38px;border-radius:12px;background:#2A2150;display:flex;align-items:center;gap:8px;padding:0 10px;font-size:11px;font-weight:700;color:rgba(255,246,236,.85)}
.add{margin-top:auto;height:40px;border-radius:999px;background:#FFB48A;color:#1E1838;font-size:12px;font-weight:800;display:grid;place-items:center}
.rhythm{background:#100C22}
.orbit-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:40px}
.orbit-copy{flex:1 1 380px;min-width:0}
.orbit{flex:1 1 460px;min-width:0;position:relative;height:540px;display:grid;place-items:center}
.ring{position:absolute;border-radius:50%;border:1px solid rgba(255,246,236,.12)}
.r1{width:240px;height:240px}.r2{width:380px;height:380px}.r3{width:510px;height:510px;border-style:dashed;border-color:rgba(255,246,236,.08)}
.spinner{position:absolute;inset:0;animation:spin 70s linear infinite}
.sat{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--a)) translate(var(--r)) rotate(calc(-1 * var(--a)))}
.sat span{display:inline-block;animation:spin 70s linear infinite reverse;padding:10px 16px;border-radius:999px;font-size:14px;font-weight:800;white-space:nowrap;background:rgba(30,24,56,.88);border:1px solid rgba(255,246,236,.16)}
.sat span.hot{background:#FFB48A;color:#1E1838;border-color:transparent;box-shadow:0 0 30px rgba(255,180,138,.5)}
.mini{width:120px;height:auto;filter:drop-shadow(0 0 40px rgba(255,180,138,.6))}
.pts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:30px}
.pt{padding:18px}
.pt.wide{grid-column:1 / -1}
.pt b{display:block;font-size:20px;margin-bottom:6px;font-family:'Baloo Bhaijaan 2',sans-serif}
.pt span{font-size:14px;line-height:1.7;color:rgba(255,246,236,.75)}
.wall{background:linear-gradient(180deg,#100C22,#2A1E3E 40%,#5B3468)}
.room{position:relative;margin-top:56px;height:560px;border-radius:40px;overflow:hidden;background:radial-gradient(600px 380px at 50% 46%,rgba(255,180,138,.55),transparent 70%),linear-gradient(180deg,#3A2A5E,#24193F)}
.room:before{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(180deg,#1A1230,#120C24)}
.frame{position:absolute;left:50%;top:70px;transform:translateX(-50%);width:min(620px,86%);aspect-ratio:16/10;border-radius:22px;background:#0B081A;padding:12px;box-shadow:0 0 0 2px #2A2150,0 40px 80px -20px rgba(0,0,0,.8),0 0 120px 20px rgba(255,180,138,.35)}
.screen{width:100%;height:100%;border-radius:12px;overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr;gap:10px;padding:14px;background:linear-gradient(160deg,#2A2150,#1E1838)}
.scol{display:flex;flex-direction:column;gap:10px;min-width:0}
.tile{border-radius:12px;background:rgba(255,246,236,.07);padding:12px;font-size:12px;font-weight:700;color:rgba(255,246,236,.88)}
.tile.big{flex:1;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 50% 70%,rgba(255,180,138,.45),transparent 70%),rgba(255,246,236,.05)}
.clock{font-size:44px;font-weight:700;line-height:1}
.date{font-size:12px;color:rgba(255,246,236,.7)}
.chip2{position:absolute;padding:10px 16px;border-radius:999px;font-size:14px;font-weight:800;background:rgba(255,246,236,.94);color:#1E1838;box-shadow:0 10px 30px -10px rgba(0,0,0,.5);animation:float 6s ease-in-out infinite}
.trust{background:#5B3468;padding-top:40px}
.tgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:40px}
.tc{padding:26px;background:rgba(30,24,56,.35)}
.tc b{display:block;font-size:22px;margin-bottom:8px;font-family:'Baloo Bhaijaan 2',sans-serif}
.tc span{font-size:15px;line-height:1.8;color:rgba(255,246,236,.86)}
.ico{width:44px;height:44px;border-radius:14px;background:rgba(255,246,236,.1);display:grid;place-items:center;margin-bottom:16px}
.final{background:linear-gradient(180deg,#5B3468 0%,#BF6276 30%,#FFB48A 62%,#FFF6EC 100%);text-align:center;padding:140px 32px 120px}
.card{max-width:760px;margin:0 auto;padding:60px 32px;border-radius:44px;background:#1E1838;position:relative;overflow:hidden;box-shadow:0 40px 100px -30px rgba(30,24,56,.7);display:flex;flex-direction:column;align-items:center}
.card:before{content:"";position:absolute;left:50%;top:-180px;width:520px;height:520px;transform:translateX(-50%);background:radial-gradient(circle,rgba(255,180,138,.5),transparent 65%)}
.card > *{position:relative}
.foot{background:#FFF6EC;color:#1E1838;padding:28px 32px 40px}
.foot .in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;font-size:14px}
.foot a{color:#5B3468;font-weight:700}
.fz[dir=ltr] .stage{padding-left:0;padding-right:150px}.fz[dir=ltr] .bubble{left:auto;right:-20px;border-radius:22px 22px 6px 22px}.fz[dir=ltr] .crown{left:auto;right:22px}.fz[dir=ltr] .skyband{background:linear-gradient(90deg,#2A2150 0%,#8A4670 12%,#E8867C 20%,#FFD9A8 34%,#F6E3C8 50%,#FFB48A 66%,#BF6276 76%,#3A2A5E 88%,#151030 100%)}.fz[dir=ltr] .h1{line-height:1.02}
@media (max-width:900px){.moments{grid-template-columns:minmax(0,1fr);margin-top:24px;padding:0}.skyband{height:200px}.bento{grid-template-columns:minmax(0,1fr)}.span3,.span2,.span4{grid-column:auto}.tgrid,.pts{grid-template-columns:minmax(0,1fr)}}
@media (max-width:700px){.chip2{display:none}.room{height:380px}.orbit{flex-basis:100%;transform:scale(.6);margin:-100px 0}.orbit > *{transform:none}}
@media (max-width:560px){.fz[dir=ltr] .stage{padding-right:0}.fz[dir=ltr] .bubble{right:0}.hdr .pill{display:none}.form{flex-direction:column;border-radius:28px}.btn{width:100%}.stage{height:560px;padding-left:0;padding-top:90px}.lantern{width:250px;height:300px}.bubble{width:260px;top:10px;left:0}.main{padding-top:24px}.sec{padding:90px 20px}.wrap{padding:22px 20px 0}}

/* differentiator strip */
.strip{position:relative;z-index:2;margin-top:-64px;padding:0 32px 40px}
.sgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sitem{display:flex;gap:14px;align-items:center;padding:18px 20px;border-radius:24px}
.sico{width:48px;height:48px;border-radius:16px;flex:0 0 auto;display:grid;place-items:center;background:rgba(255,180,138,.14);border:1px solid rgba(255,180,138,.3)}
.sitem b{display:block;font-size:17px;font-weight:800;line-height:1.4}
.sitem small{display:block;font-size:13px;line-height:1.6;color:rgba(255,246,236,.72)}
/* light */
.light{background:radial-gradient(900px 520px at 50% 62%,#2A1E48,transparent 70%),linear-gradient(180deg,#100C22 0,#0C0919 280px,#0C0919 calc(100% - 260px),#100C22 100%)}
.lamps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:64px}
.lamp{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:44px 24px 30px;border-radius:32px;background:linear-gradient(180deg,rgba(255,246,236,.05),rgba(255,246,236,0));border:1px solid rgba(255,246,236,.09);overflow:hidden;isolation:isolate}
.halo{position:absolute;top:0;left:50%;width:380px;height:380px;margin-left:-190px;border-radius:50%;filter:blur(30px);background:radial-gradient(circle,var(--g) 0%,transparent 68%);z-index:-1}
.lamp svg{width:180px;height:216px;overflow:visible;filter:drop-shadow(0 0 28px var(--g))}
.l1 .halo{animation:ramp 7s ease-in-out infinite alternate}
.l1 .lcore{animation:ramp2 7s ease-in-out infinite alternate}
@keyframes ramp{from{opacity:.12;transform:scale(.7)}to{opacity:.95;transform:scale(1.1)}}
@keyframes ramp2{from{opacity:.15}to{opacity:1}}
.l2 .halo,.l2 .lcore{animation:pulse2 1.6s ease-in-out infinite}
@keyframes pulse2{0%,100%{opacity:1}50%{opacity:.35}}
.l3 .halo{opacity:.55;animation:breathe 7s ease-in-out infinite}
.when{font-size:12px;font-weight:800;padding:6px 12px;border-radius:999px;background:rgba(255,246,236,.08);color:#FFD9A8;margin-top:8px}
.lamp b{font-family:'Baloo Bhaijaan 2',sans-serif;font-size:26px;line-height:1.3}
.lamp span.d{font-size:15px;line-height:1.8;color:rgba(255,246,236,.76);max-width:300px}
/* helpers */
.helpers{background:radial-gradient(1000px 640px at 15% 42%,#2E2354,transparent 62%),#100C22}
.hwrap{display:flex;flex-wrap:wrap;gap:40px;align-items:center;margin-top:56px}
.wallui{flex:1 1 520px;min-width:0;border-radius:30px;background:#0B081A;padding:12px;box-shadow:0 0 0 2px #2A2150,0 40px 80px -20px rgba(0,0,0,.8),0 0 110px 10px rgba(255,180,138,.18)}
.wscreen{border-radius:20px;background:linear-gradient(160deg,#2A2150,#1E1838);padding:20px;min-height:400px;display:flex;flex-direction:column;gap:16px}
.tabs{display:flex;gap:8px;flex-wrap:wrap}
.tabb{min-height:52px;padding:0 20px;border-radius:999px;border:1px solid rgba(255,246,236,.22);background:transparent;color:#FFF6EC;font:inherit;font-weight:800;font-size:15px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.tabb:focus-visible{outline:3px solid #FFF6EC;outline-offset:3px}
.tabb.on{background:#FFF6EC;color:#1E1838;border-color:transparent}
.whead{font-family:'Baloo Bhaijaan 2',sans-serif;font-size:26px;font-weight:700}
.wl{display:flex;flex-direction:column;gap:10px}
.wi{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:rgba(255,246,236,.07);font-size:16px;font-weight:700}
.wi .tm{flex:0 0 auto;font-size:13px;font-weight:800;color:#FFD9A8;min-width:72px}
.wi .tx{flex:1;min-width:0}
.wi small{display:block;font-size:13px;font-weight:400;color:rgba(255,246,236,.7);margin-top:2px}
.wnote{font-size:13px;color:rgba(255,246,236,.7);margin-top:auto}
.hside{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:14px}
.hp{padding:22px 24px;display:flex;flex-direction:column;gap:8px}
.hp b{font-family:'Baloo Bhaijaan 2',sans-serif;font-size:22px}
.hp span{font-size:15px;line-height:1.8;color:rgba(255,246,236,.8)}
.priv{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;padding:12px 14px;border-radius:16px;background:#0D0A1C;border:1px solid rgba(255,246,236,.12);font-size:14px;font-weight:700}
.sw{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#FFB48A}
.sw i{width:44px;height:26px;border-radius:999px;background:#FFB48A;position:relative;display:inline-block}
.sw i:after{content:"";position:absolute;top:3px;inset-inline-end:3px;width:20px;height:20px;border-radius:50%;background:#1E1838}
.also{margin:44px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:center}
.also > span:first-child{font-size:15px;font-weight:700;color:rgba(255,246,236,.85);margin-inline-end:6px}
.also .ac{font-size:14px;font-weight:700;padding:10px 16px;border-radius:999px;background:rgba(30,24,56,.5);border:1px solid rgba(255,246,236,.16)}
@media (max-width:1100px){.sgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.lamps{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.tgrid{grid-template-columns:minmax(0,1fr)}.orbit{transform:scale(.5);margin:-130px 0}.sgrid{grid-template-columns:minmax(0,1fr)}.strip{padding:8px 20px 30px}.wi .tm{min-width:60px}}
/* thanks state + moment chips (shared by both forms) */
[hidden]{display:none !important}
.thanks .chip[aria-pressed="true"]{background:#FFD9A8;color:#1E1838}
.form-error{margin:8px 0 0;font-size:13px;color:#FFD9A8}
/* respect reduced motion: stop ambient loops, keep content */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .h1 span{opacity:1;transform:none;filter:none}
  .spinner,.sat span{animation:none !important}
}
