/* Utsav · site styles (home page + create flow). Mobile-first, fluid, no fixed widths. */
:root{
  --ivory:#FBF6EE;--paper:#FFFFFF;--sand:#F3EADD;--line:#EADFCF;--line2:#CFC3B5;
  --ink:#1F1714;--ink2:#4A3F38;--mute:#6E6158;--maroon:#B0271B;--maroon2:#8E1E14;--gold:#E3A21A;--gold2:#F2C77B;
  --teal:#0F5C5A;--teal-soft:#E4EFEC;--night:#1F1714;
  --f-disp:'Fraunces',Georgia,serif;--f-body:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --f-ind:'Noto Serif Tamil','Noto Serif Devanagari','Noto Serif Kannada','Noto Serif Malayalam','Noto Serif Telugu','Noto Serif Bengali','Noto Serif Gujarati','Noto Serif Gurmukhi','Noto Serif Oriya','Noto Nastaliq Urdu',serif;
  --pad:clamp(18px,5vw,56px);--max:1200px;--r:18px;
  --sh:0 1px 2px rgba(31,23,20,.06),0 10px 30px rgba(31,23,20,.08);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font:16px/1.55 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video,svg{max-width:100%;display:block}
img{height:auto}
a{color:var(--maroon)}a:hover{color:var(--maroon2)}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2.5px solid var(--teal);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.disp{font-family:var(--f-disp);font-weight:500;letter-spacing:-.01em}
.ind{font-family:var(--f-ind)}
.cap{font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--maroon)}
.mute{color:var(--mute)}
.strip{height:8px;background:url(/assets/border.svg) repeat-x;background-size:19.2px 8px}
.kolam{background-image:url(/assets/kolam.svg);background-size:40px 40px}
.kolam-dark{background-image:url(/assets/kolam-dark.svg);background-size:40px 40px}
h1,h2,h3{margin:0;font-family:var(--f-disp);font-weight:500;letter-spacing:-.015em;line-height:1.08}
h1{font-size:clamp(38px,7.2vw,76px)}
h2{font-size:clamp(30px,4.6vw,50px)}
h3{font-size:clamp(20px,2.2vw,24px);line-height:1.2}
h1 em,h2 em{font-style:italic;color:var(--maroon)}
.lead{font-size:clamp(16px,1.6vw,19px);line-height:1.6;color:var(--ink2);margin:18px 0 0;max-width:40ch}
section{padding:clamp(56px,9vw,104px) 0}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 24px;border-radius:999px;border:1.5px solid transparent;font-weight:700;font-size:16px;text-decoration:none;cursor:pointer;transition:transform .15s,background .15s,box-shadow .15s;white-space:nowrap}
.btn:active{transform:scale(.98)}
.btn-primary{background:var(--maroon);color:#fff;box-shadow:0 8px 20px rgba(176,39,27,.25)}.btn-primary:hover{background:var(--maroon2);color:#fff}
.btn-line{background:transparent;border-color:var(--ink);color:var(--ink)}.btn-line:hover{background:var(--ink);color:var(--ivory)}
.btn-light{background:var(--ivory);color:var(--maroon2)}.btn-light:hover{background:#fff;color:var(--maroon2)}
.btn-sm{min-height:42px;padding:0 18px;font-size:14px}
.btn-block{width:100%}

/* header */
.top{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--ivory) 92%,transparent);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid transparent;transition:border-color .2s}
.top.scrolled{border-bottom-color:var(--line)}
.top .wrap{display:flex;align-items:center;gap:16px;height:68px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-family:var(--f-disp);font-weight:600;font-size:24px}
.brand img{width:34px;height:34px}
.nav{display:none;gap:28px;margin-left:auto}
.nav a{color:var(--ink2);text-decoration:none;font-weight:500;font-size:15px}.nav a:hover{color:var(--maroon)}
.top .btn{margin-left:auto}
.menu-btn{width:44px;height:44px;border-radius:12px;border:1px solid var(--line2);background:var(--paper);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.mnav{display:none;position:absolute;left:0;right:0;top:68px;background:var(--ivory);border-bottom:1px solid var(--line);padding:8px var(--pad) 18px;box-shadow:0 20px 30px rgba(31,23,20,.08)}
.mnav a{display:block;padding:14px 2px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600;font-size:17px}
.top.open .mnav{display:block}
@media (min-width:960px){.nav{display:flex}.top .btn{margin-left:8px}.menu-btn,.mnav{display:none!important}}

/* hero */
.hero{padding:clamp(28px,6vw,72px) 0 clamp(56px,8vw,96px);position:relative;overflow:hidden}
.hero .wrap{display:grid;gap:clamp(32px,5vw,64px);align-items:center}
@media (min-width:900px){.hero .wrap{grid-template-columns:1.15fr .85fr}}
.hello{display:flex;align-items:center;gap:12px;height:48px;overflow:hidden;margin-bottom:14px}
.hello-roll{height:48px;overflow:hidden;position:relative;min-width:120px}
.hello-roll ul{list-style:none;margin:0;padding:0;animation:roll 26s cubic-bezier(.7,0,.3,1) infinite}
.hello-roll li{height:48px;display:flex;align-items:center;gap:12px;white-space:nowrap}
.hello-roll .w{font-family:var(--f-ind);font-size:clamp(26px,4vw,34px);color:var(--maroon);line-height:1}
.hello-roll .t{font-size:14px;color:var(--mute)}
@keyframes roll{0%,6%{transform:translateY(0)}8%,14%{transform:translateY(-48px)}16%,22%{transform:translateY(-96px)}24%,30%{transform:translateY(-144px)}32%,38%{transform:translateY(-192px)}40%,46%{transform:translateY(-240px)}48%,54%{transform:translateY(-288px)}56%,62%{transform:translateY(-336px)}64%,70%{transform:translateY(-384px)}72%,78%{transform:translateY(-432px)}80%,86%{transform:translateY(-480px)}88%,94%{transform:translateY(-528px)}96%,100%{transform:translateY(-576px)}}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.ctas .btn{flex:1 1 220px}
@media (min-width:560px){.ctas .btn{flex:0 0 auto}}
.ticks{display:flex;flex-wrap:wrap;gap:10px 22px;margin:22px 0 0;padding:0;list-style:none;font-size:14.5px;color:var(--ink2)}
.ticks li{display:flex;align-items:center;gap:8px}
.ticks svg{color:var(--teal);flex-shrink:0}
.stage{position:relative;display:flex;justify-content:center;padding:10px 0}
.stage::before{content:"";position:absolute;inset:-10% -20%;background:url(/assets/mandala.svg) center/contain no-repeat;opacity:.5;animation:spin 180s linear infinite;z-index:0}
@keyframes spin{to{transform:rotate(360deg)}}
.phone{position:relative;z-index:1;width:min(300px,72vw);aspect-ratio:540/1108;border-radius:40px;border:9px solid #1F1714;background:#1F1714;box-shadow:0 30px 60px rgba(31,23,20,.28);overflow:hidden}
.phone img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:fadeCycle 12s infinite}
.phone img:nth-child(1){animation-delay:0s}.phone img:nth-child(2){animation-delay:4s}.phone img:nth-child(3){animation-delay:8s}
@keyframes fadeCycle{0%{opacity:0;transform:scale(1.04)}5%,33%{opacity:1;transform:scale(1)}38%,100%{opacity:0}}
.phone.six img{animation:fadeCycle6 24s infinite}
.phone.six img:nth-child(4){animation-delay:12s}.phone.six img:nth-child(5){animation-delay:16s}.phone.six img:nth-child(6){animation-delay:20s}
@keyframes fadeCycle6{0%{opacity:0;transform:scale(1.04)}2.5%,16.7%{opacity:1;transform:scale(1)}19.2%,100%{opacity:0}}
.chip{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:10px 14px;box-shadow:var(--sh);font-size:13px;line-height:1.3;animation:floaty 5s ease-in-out infinite}
.chip b{display:block;font-size:14px}.chip span{color:var(--mute)}
.chip i{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.chip.a{left:max(0px,calc(50% - 250px));top:22%}.chip.a i{background:var(--teal-soft);color:var(--teal)}
.chip.b{right:max(0px,calc(50% - 250px));bottom:14%;animation-delay:-2.5s}.chip.b i{background:#FBE5E2;color:var(--maroon)}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media (max-width:420px){.chip{font-size:12px;padding:8px 10px}.chip b{font-size:12.5px}.chip i{width:26px;height:26px}.chip.a{left:0}.chip.b{right:0}}

/* languages band */
.band{background-color:var(--night);color:var(--ivory);padding:clamp(44px,7vw,72px) 0;overflow:hidden}
.band .wrap{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 30px}
.band h2{color:var(--ivory)}.band h2 em{color:var(--gold2)}
.band p{margin:0;color:#CFC3B5}
.marquee{margin-top:30px;display:flex;width:max-content;gap:14px;animation:marquee 60s linear infinite}
.band:hover .marquee{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}
.lang{flex-shrink:0;min-width:150px;padding:18px 22px;border-radius:16px;border:1px solid #3A2F29;background:#2A201C}
.lang .w{font-family:var(--f-ind);font-size:28px;color:var(--gold2);line-height:1.3}
.lang .t{font-size:13px;color:#CFC3B5;margin-top:4px}

/* section heads */
.head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 40px;margin-bottom:clamp(28px,4vw,48px)}
.head .cap{margin-bottom:12px}
.head p{margin:0;max-width:44ch;color:var(--ink2)}

/* steps */
.steps{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));counter-reset:s}
.step{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px 24px;position:relative;box-shadow:var(--sh)}
.step .n{width:42px;height:42px;border-radius:50%;background:var(--maroon);color:#fff;font-family:var(--f-disp);font-size:20px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.step p{margin:10px 0 0;color:var(--ink2)}
.step .tag{display:inline-block;margin-top:16px;font-size:12.5px;font-weight:700;color:var(--teal);background:var(--teal-soft);padding:4px 10px;border-radius:999px}

/* guests see */
.see{display:grid;gap:clamp(32px,5vw,64px);align-items:center}
@media (min-width:900px){.see{grid-template-columns:.8fr 1.2fr}}
.see .phone{width:min(280px,70vw);margin:0 auto}
.see .phone video{width:100%;height:100%;object-fit:cover}
.feats{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));margin-top:26px}
.feat{display:flex;gap:12px;align-items:flex-start;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.feat .ic{width:36px;height:36px;border-radius:10px;background:#FBEFD2;color:#8A5A00;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}
.feat b{display:block;font-size:15px}.feat span{font-size:13.5px;color:var(--mute)}

/* designs */
/* design gallery: films of every opening, premium and included side by side */
.dfilter{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1*var(--pad)) clamp(22px,3vw,30px);padding:2px var(--pad) 6px;-webkit-overflow-scrolling:touch}
.dfilter::-webkit-scrollbar{display:none}
.dfilter button{flex:0 0 auto;min-height:40px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line2);background:var(--paper);font-weight:700;font-size:14px;color:var(--ink2);cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.dfilter button:hover{border-color:var(--ink)}
.dfilter button.on{background:var(--ink);border-color:var(--ink);color:var(--ivory)}
.dgroup+.dgroup{margin-top:clamp(44px,6vw,68px)}
.dg-head{display:grid;gap:6px;margin-bottom:clamp(16px,2.4vw,24px)}
.dg-head h3{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.dg-head p{margin:0;color:var(--mute);max-width:66ch;font-size:15px}
.dg-price{font-family:var(--f-body);font-size:12.5px;font-weight:700;letter-spacing:.03em;padding:5px 12px;border-radius:999px;color:#4A2A00;background:linear-gradient(100deg,#E9B94F,#FFF1C4 45%,#F6D27A 60%,#D9A441)}
.dg-price b{font-weight:700}
.dg-price.free{color:var(--teal);background:var(--teal-soft)}
.dgrid{display:grid;gap:clamp(12px,1.8vw,22px);grid-template-columns:repeat(2,minmax(0,1fr))}
.dc{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);transition:transform .25s,box-shadow .25s}
.dc:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(31,23,20,.14)}
.dc[hidden]{display:none}
.dc-film{position:relative;display:block;aspect-ratio:432/886;background:#1F1714;overflow:hidden}
.dc-film video{width:100%;height:100%;object-fit:cover}
.dc-tag{position:absolute;top:9px;left:9px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--teal);box-shadow:0 2px 8px rgba(0,0,0,.18)}
.dc-meta{display:flex;flex-direction:column;gap:5px;padding:13px 13px 15px;flex:1;min-width:0}
.dc-name{margin:0;font-family:var(--f-disp);font-weight:500;font-size:clamp(21px,2.4vw,28px);line-height:1.05;letter-spacing:-.01em}
.dc-for{margin:0;font-size:13px;line-height:1.35;color:var(--mute)}
.dc-open{margin:5px 0 0;display:flex;gap:7px;align-items:flex-start;font-size:13.5px;line-height:1.4;color:var(--ink2)}
.dc-open svg{flex:0 0 auto;margin-top:3px;color:var(--maroon)}
.dc-in{margin:0;font-family:var(--f-disp);font-style:italic;font-size:14px;line-height:1.35}
.dc-pals{margin-top:auto;padding-top:10px;display:flex;align-items:center;gap:10px;min-width:0}
.dc-pn{display:none;font-size:12.5px;color:var(--mute);min-width:0}
.dc-foot{padding-top:10px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}
.dc-use{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;border:1.5px solid var(--ink);color:var(--ink);font-weight:700;font-size:13px;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s}
.dc-use:hover{background:var(--ink);color:var(--ivory)}
.dc-cols{display:flex;gap:5px;flex:none}
.dc-cols i{width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--a) 50%,var(--b) 50%);box-shadow:0 0 0 1px rgba(31,23,20,.14)}
.dc-go{font-weight:700;font-size:13.5px;text-decoration:none;color:var(--maroon);white-space:nowrap}
/* premium: dark silk, gold edge, foil name */
.dc.prem{background:linear-gradient(165deg,#2E0B18,#4C1232 52%,#240816);border-color:rgba(230,190,106,.6);color:#F7E9D2;box-shadow:0 1px 2px rgba(31,23,20,.12),0 18px 40px rgba(58,10,30,.3)}
.dc.prem::before{content:"";position:absolute;inset:5px;border:1px solid rgba(230,190,106,.28);border-radius:calc(var(--r) - 4px);pointer-events:none}
.dc.prem .dc-film{margin:10px 10px 0;border-radius:calc(var(--r) - 8px);box-shadow:0 0 0 1px rgba(230,190,106,.7),0 10px 24px rgba(0,0,0,.35)}
.dc.prem .dc-tag{background:linear-gradient(100deg,#E9B94F,#FFF1C4 45%,#F6D27A 60%,#D9A441);color:#3A2200}
.dc.prem .dc-name{background:linear-gradient(100deg,#B8862B,#FFF0C8 38%,#E6BE6A 58%,#A87A22);-webkit-background-clip:text;background-clip:text;color:transparent}
.dc.prem .dc-for{color:#E3C9A6}
.dc.prem .dc-open{color:#FBEFD9}.dc.prem .dc-open svg{color:#E6BE6A}
.dc.prem .dc-in{color:#F2D188}
.dc.prem .dc-cols i{box-shadow:0 0 0 1px rgba(230,190,106,.55)}
.dc.prem .dc-go{color:#F2D188}
.dc.prem .dc-pn{color:#E3C9A6}
.dc.prem .dc-use{border-color:#E6BE6A;color:#F7E9D2}.dc.prem .dc-use:hover{background:#E6BE6A;color:#2E0B18}
@media (max-width:599px){.dc-meta{padding:12px 11px 13px}.dc-open{font-size:12.5px}.dc-in{font-size:13px}.dc-foot{flex-direction:column;align-items:stretch}.dc-use{justify-content:center;min-height:38px;padding:0 8px;font-size:12.5px;white-space:normal;text-align:center}.dc-go{font-size:12.5px;white-space:normal}.dc.prem .dc-film{margin:7px 7px 0}.dc.prem::before{inset:3px}}
@media (min-width:600px){.dgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:980px){
  .dgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dc{display:grid;grid-template-columns:minmax(0,46fr) minmax(0,54fr)}
  .dc.prem .dc-film{margin:10px 0 10px 10px}
  .dc-meta{padding:clamp(20px,2.2vw,28px) clamp(18px,2vw,26px);gap:7px}
  .dc-open{font-size:15px;margin-top:10px}.dc-in{font-size:16px}
  .dc-pn{display:block}
}
.dcompare{margin-top:clamp(40px,5vw,60px);border:1px solid var(--line);border-radius:var(--r);background:var(--paper);overflow:hidden;box-shadow:var(--sh)}
.dcr{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px;padding:13px 18px;border-top:1px solid var(--line);font-size:14.5px;line-height:1.45;color:var(--ink2)}
.dcr>span:first-child{grid-column:1/-1;font-weight:700;color:var(--ink);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.dcr>:nth-child(3){color:var(--ink)}
.dch{border-top:0;background:var(--ivory)}.dch>span:first-child{display:none}
.dch b{font-size:14px}.dch b.p{color:#8A5A00}
@media (min-width:760px){
  .dcompare{background:linear-gradient(90deg,var(--paper) 60%,#FFF8E8 60%)}
  .dcr{grid-template-columns:.8fr 1fr 1.25fr;padding:15px 22px}
  .dcr>span:first-child{grid-column:auto;font-size:14.5px;letter-spacing:0;text-transform:none}
  .dch>span:first-child{display:block}
}
.dask{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px 18px;margin-top:18px;padding:18px 20px;border:1.5px dashed var(--line2);border-radius:var(--r);background:var(--ivory);text-decoration:none;color:inherit}
.dask:hover{color:inherit;border-color:var(--maroon)}
.dask img{width:72px;grid-row:span 2}
.dask b{display:block;font-family:var(--f-disp);font-weight:500;font-size:21px;line-height:1.15}
.dask small{display:block;color:var(--mute);font-size:14px;margin-top:3px}
.dask .go{font-weight:700;font-size:14px;color:var(--maroon)}
@media (min-width:760px){.dask{grid-template-columns:auto 1fr auto}.dask img{grid-row:auto}}
.switchline{margin:26px 0 0;color:var(--ink2);max-width:70ch}

/* price */
.price{display:grid;gap:20px}
@media (min-width:900px){.price{grid-template-columns:1fr 1fr}}
.pcard{background:var(--maroon);color:#fff;border-radius:24px;padding:clamp(26px,4vw,40px);position:relative;overflow:hidden}
.pcard::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;background:url(/assets/mandala.svg) center/contain no-repeat;opacity:.18;filter:brightness(3)}
.pcard .big{font-family:var(--f-disp);font-size:clamp(64px,10vw,96px);line-height:1;margin-top:10px}
.pcard .per{font-size:18px;opacity:.9}
.pcard ul{list-style:none;padding:0;margin:22px 0 26px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.pcard li{display:flex;gap:8px;align-items:center;font-size:15px}
.pcard .note{font-size:13px;opacity:.8;margin-top:6px}
.pside{display:grid;gap:16px}
.box{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:22px 22px 18px}
.rows{margin-top:14px}
.rows div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed var(--line)}
.rows div:last-child{border-bottom:0}
.rows b{font-family:var(--f-disp);font-weight:600}

/* trust */
.trust{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.trust>div{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:22px}
.trust .ic{width:44px;height:44px;border-radius:12px;background:var(--teal-soft);color:var(--teal);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.trust p{margin:6px 0 0;color:var(--ink2);font-size:15px}

/* faq */
.faq{display:grid;gap:10px;max-width:860px}
.faq details{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:0 18px}
.faq summary{list-style:none;cursor:pointer;padding:18px 0;font-weight:700;display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:24px;line-height:1;color:var(--maroon);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{margin:0 0 18px;color:var(--ink2)}

/* final cta */
.final{background-color:var(--maroon);color:#fff;text-align:center}
.final .ind{font-size:clamp(20px,3vw,26px);color:var(--gold2)}
.final h2{color:#fff;margin:14px auto 26px;max-width:18ch}

/* footer */
.foot{background-color:var(--night);color:#CFC3B5;padding:48px 0 28px;font-size:14.5px}
.foot .grid{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}
.foot .brand{color:var(--ivory)}
.foot h4{margin:0 0 10px;color:var(--ivory);font-size:15px}
.foot a{display:block;color:#CFC3B5;text-decoration:none;padding:4px 0}.foot a:hover{color:#fff}
.foot .legal{margin-top:34px;padding-top:18px;border-top:1px solid #3A2F29;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:13px}

/* reveal on scroll (home page) */
.up{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.75,.2,1),transform .8s cubic-bezier(.2,.75,.2,1)}
.up.in{opacity:1;transform:none}
.no-js .up{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.up{opacity:1;transform:none}}
/* pricing v2: plans, what an invite is, premium and extras */
.cta-note{margin:12px 0 0;font-size:14px;color:var(--mute)}.cta-note b{color:var(--ink)}
.plans{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));align-items:stretch}
.plan{position:relative;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:26px 24px 22px;box-shadow:var(--sh)}
.plan .pn{font-weight:700;font-size:15px;letter-spacing:.04em}
.plan .pp{font-family:var(--f-disp);font-size:clamp(48px,7vw,60px);line-height:1;margin-top:8px}
.plan .pi{font-size:17px;font-weight:700;color:var(--teal);margin-top:6px}
.plan p{color:var(--mute);font-size:14.5px;margin:10px 0 18px;flex:1}
.plan.hot{background:var(--maroon);border-color:var(--maroon);color:#fff}.plan.hot .pi{color:var(--gold2)}.plan.hot p{color:rgba(255,255,255,.82)}
.plan .pop{position:absolute;top:-12px;left:24px;background:var(--gold);color:var(--night);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.inv-note{margin:20px 0 0;background:var(--teal-soft);color:var(--ink2);border-radius:16px;padding:16px 18px;font-size:15px;line-height:1.55}
.every{list-style:none;padding:0;margin:16px 0 28px;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14px;color:var(--ink2)}
.every li::before{content:"✓";color:var(--teal);font-weight:700;margin-right:6px}
.price2{display:grid;gap:20px}
@media (min-width:900px){.price2{grid-template-columns:1fr 1fr}}
.pcard.prem{background:linear-gradient(150deg,#3A0A16,#6A1A3A 70%,#3A0A16);border:1px solid rgba(230,190,106,.5)}
.pcard.prem .big{color:#F2D188}.pcard.prem ul{grid-template-columns:1fr;margin:18px 0 22px}.pcard.prem li{display:block}.pcard.prem li::before{content:"✦";color:#E6BE6A;margin-right:2px}
