/* MegaParty planner landing — extends the site brand tokens from assets/style.css */
.lp{--ease:cubic-bezier(.16,1,.3,1);--cta-a:#E11D74;--cta-b:#B5125F;--wa:#25D366;--wa-ink:#06210F;
  --ico-plus:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");
  --ico-minus:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");}
.lp button{font:inherit;color:inherit;}
.lp [hidden]{display:none !important;}
.lp-wrap{max-width:1120px;margin:0 auto;padding:0 16px;}
@media (min-width:720px){.lp-wrap{padding:0 24px;}}
.lp :focus-visible{outline:3px solid var(--gold);outline-offset:3px;}
.lp input,.lp textarea{caret-color:var(--gold);accent-color:var(--pink);}
.lp .ic{width:1.25em;height:1.25em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.lp .ic-fill{fill:currentColor;stroke:none;}
.lp-skip{position:absolute;inset-inline-start:8px;top:-64px;z-index:200;background:var(--gold);color:#241541;padding:10px 16px;border-radius:8px;font-weight:800;}
.lp-skip:focus{top:8px;}

/* header: logo, phone, WhatsApp — nothing else competes with the tiles */
.lp-head{position:sticky;top:0;z-index:80;background:var(--bg-2);border-bottom:1px solid var(--line);}
.lp-head-in{display:flex;align-items:center;justify-content:space-between;gap:12px;height:62px;}
.lp-logo{display:flex;align-items:center;}
.lp-logo img{height:44px;width:auto;}
.lp-acts{display:flex;align-items:center;gap:8px;}
.lp-call{width:44px;height:44px;border-radius:12px;border:1.5px solid var(--line);display:grid;place-items:center;color:var(--text);}
.lp-call:hover{border-color:var(--pink);}
.lp-wa{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:12px;background:var(--wa);color:var(--wa-ink);font:800 15px/1 Rubik,Heebo,sans-serif;}
.lp-wa:hover{filter:brightness(1.06);}

/* hero */
.lp-hero{padding:16px 0 12px;}
.lp-hero-in{display:grid;gap:14px 56px;}
.lp-hero h1{font:900 clamp(28px,7.4vw,54px)/1.08 Rubik,Heebo,sans-serif;letter-spacing:-.01em;margin:0 0 8px;max-width:20ch;text-wrap:balance;}
.lp-sub{font-size:clamp(16.5px,2.3vw,19px);color:var(--text-2);max-width:56ch;margin:0;text-wrap:balance;}
.lp-trust{display:none;margin:0;padding:0;list-style:none;}
.lp-trust li{display:flex;align-items:center;gap:10px;margin:0;color:var(--text-2);font:600 16px/1.3 Heebo,sans-serif;}
.lp .lp-trust .ic{width:22px;height:22px;color:var(--gold);stroke-width:2.6;}
@media (min-width:960px){
  .lp-hero{padding:34px 0 26px;}
  .lp-hero-in{grid-template-columns:minmax(0,1fr) auto;align-items:end;}
  .lp-trust{display:grid;gap:12px;padding-bottom:6px;}
}

/* quiz surface */
.lp-quiz-sec{scroll-margin-top:74px;}
.lp-quiz{view-transition-name:lp-quiz;padding:2px 0 8px;}
.lp-steps{display:flex;gap:8px;margin:0 0 16px;padding:0;list-style:none;}
.lp-steps li{position:relative;flex:1;margin:0;padding-top:12px;font:700 14px/1.2 Rubik,Heebo,sans-serif;color:var(--text-3);transition:color .3s;}
.lp-steps li::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;border-radius:2px;background:var(--line);transition:background .3s;}
.lp-steps li.on{color:var(--gold);}
.lp-steps li.on::before{background:var(--gold);}
.lp-steps li.done{color:var(--text-2);}
.lp-steps li.done::before{background:var(--pink);}
.lp .lp-h{margin:0 0 6px;padding:0;font:800 clamp(23px,4.6vw,32px)/1.15 Rubik,Heebo,sans-serif;text-wrap:balance;}
.lp .lp-h::before{display:none;}
.lp-h:focus{outline:none;}
.lp-view[data-v="event"] .lp-h{margin-bottom:14px;}
.lp-help{margin:0 0 18px;color:var(--text-3);font-size:16px;}

/* step 1: photo tiles */
.lp-tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
@media (min-width:720px){.lp-tiles{grid-template-columns:repeat(3,1fr);gap:16px;}}
.lp-tile{position:relative;aspect-ratio:4/3;padding:0;overflow:hidden;isolation:isolate;border:1px solid var(--line);border-radius:14px;background:var(--card);cursor:pointer;text-align:start;transition:transform .25s var(--ease),border-color .2s;animation:lp-rise .6s var(--ease) backwards;animation-delay:calc(var(--i,0) * 55ms);}
.lp-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease);}
.lp-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,10,34,0) 28%,rgba(18,10,34,.92) 100%);}
.lp-tile-t{position:absolute;inset-inline:12px;bottom:11px;z-index:1;display:block;}
.lp-tile-t b{display:block;font:800 clamp(17px,4.4vw,21px)/1.15 Rubik,Heebo,sans-serif;color:#fff;}
.lp-tile-t small{display:block;margin-top:3px;font:500 13px/1.35 Heebo,sans-serif;color:rgba(255,255,255,.9);}
@media (max-width:599px){
  .lp-tile-t small{display:none;}
  .lp-tile::after{background:linear-gradient(180deg,rgba(18,10,34,0) 50%,rgba(18,10,34,.88) 100%);}
}
.lp-tile:hover{border-color:var(--pink);}
.lp-tile:hover img{transform:scale(1.05);}
.lp-tile:active{transform:scale(.98);}
.lp-more{margin-top:14px;}
.lp-more-t{margin:0 0 8px;font:700 14.5px/1.3 Rubik,Heebo,sans-serif;color:var(--text-3);}
.lp-chips{display:flex;flex-wrap:wrap;gap:8px;}
.lp-chip{min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line);background:rgba(255,255,255,.05);color:var(--text-2);font:700 15px/1 Heebo,sans-serif;cursor:pointer;transition:border-color .2s,background .2s;}
.lp-chip:hover{border-color:var(--pink);}
.lp-chip[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:#241541;}
.lp-fine{margin:16px 0 0;font-size:14.5px;color:var(--text-3);}

/* step 2: the ready-made set */
.lp-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin:-8px 0 2px;padding:0 10px 0 4px;background:none;border:0;color:var(--pink-soft);font:700 15px/1 Rubik,Heebo,sans-serif;cursor:pointer;}
.lp-back:hover{color:var(--gold);}
.lp-set-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
@media (min-width:720px){.lp-set-grid{grid-template-columns:repeat(3,1fr);gap:16px;}}
.lp-pick{position:relative;display:block;overflow:hidden;border:1.5px solid var(--line);border-radius:14px;background:var(--card);cursor:pointer;transition:border-color .2s;animation:lp-rise .6s var(--ease) backwards;animation-delay:calc(var(--i,0) * 60ms);}
.lp-pick input{position:absolute;inset:0;z-index:2;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;}
.lp-pick img{width:100%;aspect-ratio:4/3;object-fit:cover;}
.lp-pick .chk{position:absolute;top:8px;inset-inline-start:8px;z-index:1;width:30px;height:30px;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;background:rgba(18,10,34,.6);color:transparent;transition:background .2s,color .2s,border-color .2s;}
.lp-pick.is-on{border-color:var(--gold);}
.lp-pick.is-on .chk{background:var(--gold);border-color:var(--gold);color:#241541;}
.lp-pick .chk .ic{width:17px;height:17px;stroke-width:2.6;}
.lp-pick .body{display:block;padding:10px 12px 13px;}
.lp-pick b{display:block;font:700 15.5px/1.25 Rubik,Heebo,sans-serif;color:var(--text);}
.lp-pick small{display:-webkit-box;margin-top:4px;color:var(--text-3);font-size:13.5px;line-height:1.4;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.lp-pick:has(input:focus-visible){outline:3px solid var(--gold);outline-offset:3px;}
.lp-add{margin-top:18px;border-top:1px solid var(--line);}
.lp-add summary{display:flex;align-items:center;gap:8px;min-height:52px;cursor:pointer;font:800 15.5px/1.2 Rubik,Heebo,sans-serif;color:var(--pink-soft);}
.lp-add .lp-chips{padding-bottom:4px;}
@keyframes lp-rise{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:none;}}

/* sticky action bar */
.lp-bar{position:fixed;inset-inline:0;bottom:0;z-index:90;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:var(--bg-2);border-top:1px solid var(--line);transform:translateY(105%);transition:transform .4s var(--ease);}
.lp-bar.on{transform:none;}
.lp-bar-in{display:flex;align-items:center;gap:14px;}
.lp-cnt{flex:none;font:700 14px/1.25 Rubik,Heebo,sans-serif;color:var(--text-2);}
@media (min-width:960px){
  .lp-bar-in{justify-content:space-between;}
  .lp-bar .lp-cta{flex:0 1 400px;}
}
.lp .a11y-btn,.lp .a11y-panel{inset-inline-start:auto;inset-inline-end:14px;}
.lp-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex:1;min-height:54px;padding:0 24px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--cta-a),var(--cta-b));color:#fff;font:800 17px/1.1 Rubik,Heebo,sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 10px 24px rgba(225,29,116,.32);transition:transform .2s var(--ease),box-shadow .2s var(--ease),opacity .2s;}
.lp-cta:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(225,29,116,.42);}
.lp-cta:active{transform:scale(.99);}
.lp-cta.wa{background:var(--wa);color:var(--wa-ink);box-shadow:0 10px 24px rgba(37,211,102,.28);}
.lp-cta.wa:hover{box-shadow:0 14px 30px rgba(37,211,102,.4);}
body[data-bar="on"] main{padding-bottom:84px;}
body[data-bar="on"] .a11y-btn{bottom:86px;}
body[data-bar="on"] .a11y-panel{bottom:146px;}

/* step 3: date and city */
.lp-det{display:grid;gap:24px;}
@media (min-width:900px){.lp-det{grid-template-columns:1.05fr .95fr;gap:40px;align-items:start;}}
.lp-fields .field{margin:0 0 16px;}
.lp-err{display:none;margin:6px 0 0;color:#FFB4C8;font-size:14.5px;}
.field.bad .lp-err{display:block;}
.field.bad input{border-color:#FF6B9A;}
.lp-recap{padding:14px 16px 6px;border:1px solid var(--line);border-radius:14px;background:var(--card);}
.lp-recap h3{margin:0 0 10px;font:800 16px/1.2 Rubik,Heebo,sans-serif;}
.lp-recap dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0 0 10px;}
.lp-recap dt{color:var(--text-3);font-size:14px;}
.lp-recap dd{margin:0;color:var(--text);font-size:15.5px;font-weight:600;overflow-wrap:anywhere;}
.lp-edit{margin-top:14px;}
.lp-edit summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:var(--text-3);font-size:14.5px;}
.lp-edit textarea{width:100%;min-height:190px;margin-top:6px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:rgba(255,255,255,.06);color:var(--text);font:inherit;font-size:15.5px;line-height:1.6;}
.lp-note{margin:14px 0 0;color:var(--text-3);font-size:14.5px;}
.lp-note a{color:var(--pink-soft);text-decoration:underline;}
.lp-status{display:flex;align-items:flex-start;gap:12px;margin-top:14px;padding:14px 16px;border:1px solid rgba(37,211,102,.4);border-radius:12px;background:rgba(37,211,102,.1);color:var(--text);font-size:15.5px;}
.lp .lp-status .ic{width:22px;height:22px;margin-top:2px;color:var(--wa);stroke-width:2.6;}
.lp-status .lp-chip{margin-top:10px;}

/* below the fold */
.lp-sec{padding-top:56px;}
.lp h2.lp-s{margin:0 0 18px;padding:0;font:900 clamp(24px,4.2vw,34px)/1.15 Rubik,Heebo,sans-serif;text-wrap:balance;}
.lp h2.lp-s::before{display:none;}
.lp-incl ul{display:grid;gap:14px 32px;margin:0;padding:0;list-style:none;}
@media (min-width:760px){.lp-incl ul{grid-template-columns:repeat(3,1fr);}}
.lp-incl li{display:flex;align-items:flex-start;gap:12px;margin:0;color:var(--text-2);font-size:16.5px;line-height:1.5;}
.lp .lp-incl .ic{width:24px;height:24px;color:var(--gold);stroke-width:2.6;}
.lp-incl li span{text-wrap:balance;}
.lp .faq summary::after{content:"";flex:none;width:20px;height:20px;background:var(--pink-soft);-webkit-mask:var(--ico-plus) center/contain no-repeat;mask:var(--ico-plus) center/contain no-repeat;}
.lp .faq details[open] summary::after{content:"";-webkit-mask-image:var(--ico-minus);mask-image:var(--ico-minus);}
.lp-sec-end{padding-top:48px;}
.lp-final{padding:38px 22px;text-align:center;border:1px solid rgba(255,46,136,.35);border-radius:16px;background:rgba(255,46,136,.12);}
.lp .lp-final h2{margin:0 0 10px;padding:0;font:900 clamp(24px,4.2vw,34px)/1.15 Rubik,Heebo,sans-serif;text-wrap:balance;}
.lp .lp-final h2::before{display:none;}
.lp-final p{max-width:52ch;margin:0 auto 22px;color:var(--text-2);}
.lp-final .lp-cta{flex:none;min-width:240px;}
.lp-final .lp-alt{display:block;margin-top:14px;color:var(--pink-soft);font-weight:700;text-decoration:underline;}
.lp-foot{margin-top:56px;padding:28px 0 40px;border-top:1px solid var(--line);color:var(--text-3);font-size:14px;}
@media (max-width:719px){.lp-foot{padding-bottom:96px;}}
.lp-foot .lp-wrap{display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:space-between;}
.lp-foot a{color:var(--text-2);text-decoration:underline;}
.lp-foot nav{display:flex;flex-wrap:wrap;gap:8px 18px;}

::view-transition-old(lp-quiz),::view-transition-new(lp-quiz){animation-duration:.32s;animation-timing-function:cubic-bezier(.16,1,.3,1);}
@media (prefers-reduced-motion:reduce){
  .lp *,.lp *::before,.lp *::after{animation:none !important;transition:none !important;}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none !important;}
}
