/* ==========================================================================
   PARTAKE FAMILY DAYS — its own kid-friendly sub-brand. Loaded ONLY by
   family.html, after pk.css (which it deliberately overrides).
   ========================================================================== */
body.kf{
  --lime:#8DC63F;--teal:#46B2B3;--orange:#F26522;--pink:#EC008C;--blue:#21409A;--red:#ED1C24;
  --green:#00604A;--green-deep:#003D2E;
  --cream:#FFFAEC;--sky:#E7F3FB;--mint:#EEF7E2;--butter:#FFF2CC;
  --ink:#243B33;--ink-2:#4C6259;
  --kf-d:'Baloo 2',system-ui,sans-serif;--kf-b:'Nunito',system-ui,sans-serif;
  background:var(--cream);color:var(--ink);font-family:var(--kf-b);font-size:18px;line-height:1.6;
}
/* text links only — buttons, nav and footer set their own colors below */
body.kf p a,body.kf .kf-sub a,body.kf .kf-faq__a a,body.kf .form__note a,body.kf .kf-lede a{color:#0E7677;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
body.kf p a:hover,body.kf .kf-sub a:hover,body.kf .kf-faq__a a:hover,body.kf .form__note a:hover,body.kf .kf-lede a:hover{color:#C24C13}
body.kf ::selection{background:var(--lime);color:#20370C}
.kf h1,.kf h2,.kf h3,.kf h4{font-family:var(--kf-d);font-weight:800;line-height:1.05;letter-spacing:-.01em;margin:0}
.kf p{margin:0 0 1em}

/* ---------- shell ---------- */
.kf-sec{padding:clamp(52px,7vw,104px) clamp(20px,5vw,72px);position:relative}
.kf-wrap{max-width:1180px;margin:0 auto}
.kf-wrap--n{max-width:820px;margin:0 auto}
.kf-cream{background:var(--cream)}
.kf-sky{background:var(--sky)}
.kf-mint{background:var(--mint)}
.kf-butter{background:var(--butter)}
.kf-dots{background-image:radial-gradient(var(--lime) 2.5px,transparent 2.6px);background-size:26px 26px;background-position:0 0}
.kf-center{text-align:center}

/* ---------- nav ---------- */
.kf-nav{position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;gap:16px;height:var(--nav-h);padding:0 var(--pad-x);background:rgba(0,61,46,.95);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(12px);border-bottom:3px solid rgba(36,59,51,.08)}
.kf-nav__logo{flex:0 0 auto;display:flex;align-items:center}
.kf-nav__logo img{height:30px;width:auto;display:block}
.kf-nav__links{display:flex;align-items:center;gap:6px;margin-left:auto}
.kf-nav__links a{font-family:var(--kf-b);font-weight:800;font-size:14px;color:rgba(242,239,228,.82);padding:9px 13px;border-radius:999px;transition:background .2s ease,color .2s ease}
.kf-nav__links a:nth-child(1):hover{background:rgba(141,198,63,.24);color:#FFFDF7}
.kf-nav__links a:nth-child(2):hover{background:rgba(236,0,140,.3);color:#FFFDF7}
.kf-nav__links a:nth-child(3):hover{background:rgba(70,178,179,.34);color:#FFFDF7}
.kf-nav__links a:nth-child(4):hover{background:rgba(242,101,34,.34);color:#FFFDF7}
.kf-nav__links a:nth-child(5):hover{background:rgba(141,198,63,.24);color:#FFFDF7}
.kf-nav__links a.is-here{background:var(--orange);color:#fff}
.kf-burger{display:none;width:48px;height:48px;border:1px solid rgba(255,253,247,.4);border-radius:50%;background:transparent;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;margin-left:auto}
.kf-burger span{width:18px;height:2px;background:#FFFDF7;border-radius:2px;display:block}
@media(max-width:1000px){.kf-nav__links{display:none}.kf-burger{display:flex}.kf-nav .kf-btn{display:none}}
.kf-mmenu{position:fixed;inset:0;z-index:59;background:var(--cream);padding:104px clamp(20px,6vw,40px) 40px;display:flex;flex-direction:column;gap:6px;opacity:0;pointer-events:none;transform:translateY(-10px);transition:opacity .28s ease,transform .28s ease}
.kf-mmenu.is-open{opacity:1;pointer-events:auto;transform:none}
.kf-mmenu a{font-family:var(--kf-d);font-weight:800;font-size:clamp(28px,7vw,40px);color:var(--ink)}
.kf-mmenu a:nth-child(odd){color:var(--green)}
.kf-mmenu a:nth-child(3n){color:var(--orange)}
.kf-mmenu__foot{margin-top:auto;font-size:15px;color:var(--ink-2);display:flex;flex-direction:column;gap:4px}

/* ---------- chunky buttons ---------- */
body.kf a.kf-btn,body.kf button.kf-btn{color:var(--ink)}
body.kf a.kf-btn--o,body.kf button.kf-btn--o{color:#fff}
body.kf a.kf-btn--t,body.kf button.kf-btn--t{color:#fff}
body.kf a.kf-btn--l,body.kf button.kf-btn--l{color:#1C3309}
body.kf a.kf-btn:hover{color:var(--ink)}
body.kf a.kf-btn--o:hover,body.kf a.kf-btn--t:hover{color:#fff}
body.kf a.kf-btn--l:hover{color:#1C3309}
.kf-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--kf-b);font-weight:800;font-size:16px;padding:15px 26px;border:3px solid var(--ink);border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 5px 0 0 var(--ink);transition:transform .13s ease,box-shadow .13s ease,background .2s ease,color .2s ease;cursor:pointer}
.kf-btn:hover{transform:translateY(-2px);box-shadow:0 7px 0 0 var(--ink);color:var(--ink)}
.kf-btn:active{transform:translateY(4px);box-shadow:0 1px 0 0 var(--ink)}
.kf-btn--o{background:var(--orange);color:#fff}
.kf-btn--o:hover{background:#FF7534;color:#fff}
.kf-btn--t{background:var(--teal);color:#fff}
.kf-btn--t:hover{background:#57C3C4;color:#fff}
.kf-btn--l{background:var(--lime);color:#20370C}
.kf-btn--l:hover{background:#9FD653;color:#20370C}
.kf-btn--sm{font-size:14px;padding:11px 18px;border-radius:14px;box-shadow:0 4px 0 0 var(--ink)}
.kf-btns{display:flex;flex-wrap:wrap;gap:14px}

/* ---------- stickers & labels ---------- */
.kf-sticker{display:inline-flex;align-items:center;gap:9px;font-family:var(--kf-b);font-weight:800;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:9px 16px;border:3px solid var(--ink);border-radius:999px;background:#fff;transform:rotate(-1.6deg)}
.kf-sticker i{width:10px;height:10px;border-radius:50%;background:var(--orange);display:block;animation:kfpulse 2.4s ease-in-out infinite}
@keyframes kfpulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(242,101,34,.5)}50%{transform:scale(1.15);box-shadow:0 0 0 7px rgba(242,101,34,0)}}
.kf-step__b{animation:kfbob 5s ease-in-out infinite}
.kf-steps>.kf-step:nth-child(2) .kf-step__b{animation-delay:-1.6s}
.kf-steps>.kf-step:nth-child(3) .kf-step__b{animation-delay:-3.2s}
.kf-photo{animation:kfsway 9s ease-in-out infinite}
@keyframes kfsway{0%,100%{rotate:-.7deg}50%{rotate:.7deg}}
.kf-room{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease}
.kf-room:hover{transform:translateY(-6px) rotate(-.5deg);box-shadow:11px 12px 0 0 var(--ink)}
@media(prefers-reduced-motion:reduce){.kf-sticker i,.kf-step__b,.kf-photo{animation:none}}
.kf-eye{font-family:var(--kf-b);font-weight:800;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin:0 0 12px}

/* ---------- hero ---------- */
.kf-hero{padding:calc(var(--nav-h) + clamp(28px,5vw,56px)) clamp(20px,5vw,72px) clamp(40px,5vw,72px)}
.kf-hero__grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,60px);align-items:center}
.kf-h1{font-size:clamp(40px,6.6vw,84px)}
.kf-h1 em{font-style:normal;color:var(--orange)}
.kf-h1 b{font-weight:800;color:var(--teal)}
.kf-lede{font-size:clamp(17px,1.6vw,21px);line-height:1.55;color:var(--ink-2);max-width:52ch;margin:16px 0 26px}
.kf-photo{position:relative;border-radius:64% 36% 58% 42%/48% 56% 44% 52%;overflow:hidden;border:5px solid var(--ink);box-shadow:12px 12px 0 0 var(--lime);background:#fff}
.kf-photo img,.kf-photo video{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3.4;display:block}
.kf-photo--t{box-shadow:10px 10px 0 0 var(--teal)}
.kf-photo--p{box-shadow:10px 10px 0 0 var(--pink)}
.kf-photo--o{box-shadow:10px 10px 0 0 var(--orange)}
.kf-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.kf-badge{display:flex;flex-direction:column;padding:12px 18px;border:3px solid var(--ink);border-radius:18px;background:#fff;min-width:130px}
.kf-badge b{font-family:var(--kf-d);font-size:22px;line-height:1.1;color:var(--green)}
.kf-badge span{font-size:13px;font-weight:700;color:var(--ink-2)}
.kf-badge:nth-child(2) b{color:var(--pink)}
.kf-badge:nth-child(3) b{color:var(--blue)}
@media(max-width:900px){.kf-hero__grid{grid-template-columns:1fr}.kf-photo{order:-1}}
/* hero frame: taller, rounder blob so vertical video isn't cropped to a sliver */
.kf-hero__grid>.kf-photo{border-radius:54% 46% 48% 52%/47% 50% 50% 53%}
.kf-hero__grid>.kf-photo video,.kf-hero__grid>.kf-photo img{aspect-ratio:1/1.2}
@media(max-width:900px){.kf-hero__grid>.kf-photo video,.kf-hero__grid>.kf-photo img{aspect-ratio:1/1}}

/* ---------- marquee ---------- */
.kf-mq{overflow:hidden;background:var(--green);padding:16px 0;border-block:4px solid var(--ink)}
.kf-mq__row{display:flex;width:max-content;animation:kfroll 30s linear infinite}
.kf-mq__row>span{display:inline-flex;align-items:center;gap:34px;padding-right:34px;font-family:var(--kf-d);font-weight:800;font-size:19px;color:#FFFAEC;white-space:nowrap}
.kf-mq__row i{width:11px;height:11px;border-radius:50%;display:block;flex:0 0 auto}
.kf-mq__row i:nth-of-type(6n+1){background:var(--lime)}
.kf-mq__row i:nth-of-type(6n+2){background:var(--orange)}
.kf-mq__row i:nth-of-type(6n+3){background:var(--pink)}
.kf-mq__row i:nth-of-type(6n+4){background:var(--teal)}
.kf-mq__row i:nth-of-type(6n+5){background:#FFD23F}
.kf-mq__row i:nth-of-type(6n+6){background:var(--red)}
@keyframes kfroll{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.kf-mq__row{animation:none}}

/* ---------- headings block ---------- */
.kf-head{max-width:760px;margin:0 auto clamp(30px,4vw,52px);text-align:center}
.kf-h2{font-size:clamp(30px,4.6vw,58px)}
.kf-h2 em{font-style:normal;color:var(--pink)}
body.kf .kf-sub{font-size:17px;color:var(--ink-2);margin:12px auto 0;max-width:52ch}
/* on the dotted field, sit the eyebrow and sub line on soft cards so they stay legible */
.kf-dots .kf-head .kf-sub{display:inline-block;background:rgba(255,255,255,.94);border-radius:18px;padding:11px 20px;text-align:center;color:var(--ink);font-weight:600;box-shadow:0 3px 0 0 rgba(36,59,51,.13)}
.kf-dots .kf-head .kf-eye{display:inline-block;background:rgba(255,255,255,.94);border-radius:999px;padding:6px 15px;color:#0E7677}

/* ---------- program cards: blobby, tilted, bouncy ---------- */
.kf-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,34px)}
@media(max-width:900px){.kf-cards{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.kf-cards{grid-template-columns:1fr}}
.kf-card{position:relative;padding:clamp(26px,2.6vw,38px) clamp(24px,2.4vw,34px) clamp(28px,2.8vw,38px);border:4px solid var(--ink);background:#fff;box-shadow:7px 8px 0 0 var(--ink);
  border-radius:76px 30px 76px 30px;transform:rotate(-1.4deg);
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,opacity .5s ease;
  animation:kfbob 6s ease-in-out infinite}
.kf-card:nth-child(even){border-radius:30px 76px 30px 76px;transform:rotate(1.2deg);animation-delay:-2s}
.kf-card:nth-child(3n){border-radius:70px 70px 30px 70px;animation-delay:-4s}
.kf-card:nth-child(5){border-radius:30px 70px 70px 70px}
.kf-card:hover{transform:rotate(0) translateY(-8px) scale(1.025);box-shadow:12px 14px 0 0 var(--ink);animation-play-state:paused;z-index:2}
@keyframes kfbob{0%,100%{translate:0 0}50%{translate:0 -7px}}
.kf-card h3{font-size:clamp(21px,1.95vw,27px);margin:16px 0 10px;position:relative;display:inline-block}
.kf-card h3::after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:7px;border-radius:999px;background:currentColor;opacity:.16;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.kf-card:hover h3::after{transform:scaleX(1)}
.kf-card p{font-size:16.5px;color:var(--ink-2);margin:0}
.kf-card__n{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border:4px solid var(--ink);border-radius:50%;font-family:var(--kf-d);font-weight:800;font-size:23px;color:var(--ink);box-shadow:0 5px 0 0 var(--ink);transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.kf-card:hover .kf-card__n{transform:rotate(-14deg) scale(1.12)}
.kf-card::after{content:'';position:absolute;width:16px;height:16px;border-radius:50%;top:22px;right:30px;background:currentColor;opacity:.28;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.kf-card:hover::after{transform:translate(4px,-6px) scale(1.5)}
.kf-cards>.kf-card:nth-child(1){background:#F3FAE6;color:#6FA22B}.kf-cards>.kf-card:nth-child(1) .kf-card__n{background:var(--lime)}
.kf-cards>.kf-card:nth-child(2){background:#E9F6F6;color:var(--teal)}.kf-cards>.kf-card:nth-child(2) .kf-card__n{background:var(--teal);color:#fff}
.kf-cards>.kf-card:nth-child(3){background:#FFF0E6;color:var(--orange)}.kf-cards>.kf-card:nth-child(3) .kf-card__n{background:var(--orange);color:#fff}
.kf-cards>.kf-card:nth-child(4){background:#FDEAF4;color:var(--pink)}.kf-cards>.kf-card:nth-child(4) .kf-card__n{background:var(--pink);color:#fff}
.kf-cards>.kf-card:nth-child(5){background:#EAEEF8;color:var(--blue)}.kf-cards>.kf-card:nth-child(5) .kf-card__n{background:var(--blue);color:#fff}
.kf-cards>.kf-card:nth-child(6){background:#FFEDED;color:var(--red)}.kf-cards>.kf-card:nth-child(6) .kf-card__n{background:var(--red);color:#fff}
.kf-cards>.kf-card h3,.kf-cards>.kf-card p{color:var(--ink)}
.kf-cards>.kf-card p{color:var(--ink-2)}
/* staggered pop-in when the grid scrolls into view */
.kf-cards.rv .kf-card{opacity:0;translate:0 18px}
.kf-cards.rv.in .kf-card{opacity:1;translate:0 0;animation:kfpop .62s cubic-bezier(.34,1.56,.64,1) both,kfbob 6s ease-in-out infinite 1s}
.kf-cards.rv.in .kf-card:nth-child(1){animation-delay:0s,.7s}
.kf-cards.rv.in .kf-card:nth-child(2){animation-delay:.09s,.9s}
.kf-cards.rv.in .kf-card:nth-child(3){animation-delay:.18s,1.1s}
.kf-cards.rv.in .kf-card:nth-child(4){animation-delay:.27s,1.3s}
.kf-cards.rv.in .kf-card:nth-child(5){animation-delay:.36s,1.5s}
.kf-cards.rv.in .kf-card:nth-child(6){animation-delay:.45s,1.7s}
@keyframes kfpop{0%{opacity:0;translate:0 26px;scale:.9}60%{opacity:1;scale:1.03}100%{opacity:1;translate:0 0;scale:1}}
@media(prefers-reduced-motion:reduce){
  .kf-card,.kf-cards.rv.in .kf-card{animation:none!important;opacity:1;translate:0 0}
  .kf-card:hover{transform:none}
}

/* ---------- steps ---------- */
.kf-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.4vw,30px);counter-reset:kf}
@media(max-width:820px){.kf-steps{grid-template-columns:1fr}}
.kf-step{text-align:center}
.kf-step__b{width:78px;height:78px;margin:0 auto 16px;border:4px solid var(--ink);border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--kf-d);font-weight:800;font-size:32px;box-shadow:0 5px 0 0 var(--ink)}
.kf-steps>.kf-step:nth-child(1) .kf-step__b{background:var(--lime)}
.kf-steps>.kf-step:nth-child(2) .kf-step__b{background:#FFD23F}
.kf-steps>.kf-step:nth-child(3) .kf-step__b{background:var(--pink);color:#fff}
.kf-step h3{font-size:24px;margin-bottom:6px}
.kf-step p{font-size:16px;color:var(--ink-2);margin:0}

/* ---------- rooms ---------- */
.kf-rooms{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.4vw,28px)}
@media(max-width:820px){.kf-rooms{grid-template-columns:1fr}}
.kf-room{border:4px solid var(--ink);border-radius:28px;overflow:hidden;background:#fff;box-shadow:7px 7px 0 0 var(--ink)}
.kf-room img,.kf-room video{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;border-bottom:4px solid var(--ink)}
.kf-room__media{position:relative}
.kf-room__strip{display:grid;grid-template-columns:1fr 1fr;border-top:4px solid var(--ink)}
.kf-room__strip button{margin:0;padding:0;border:0;background:none;cursor:pointer;display:block;position:relative;overflow:hidden}
.kf-room__strip button+button{border-left:4px solid var(--ink)}
.kf-room__strip img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;border:0;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.kf-room__strip button::after{content:'\2922';position:absolute;right:8px;bottom:8px;width:26px;height:26px;border-radius:50%;border:2px solid var(--ink);background:rgba(255,255,255,.94);color:var(--ink);font-size:13px;line-height:22px;text-align:center;opacity:0;transform:scale(.8);transition:opacity .2s ease,transform .25s cubic-bezier(.34,1.56,.64,1)}
.kf-room__strip button:hover img,.kf-room__strip button:focus-visible img{transform:scale(1.06)}
.kf-room__strip button:hover::after,.kf-room__strip button:focus-visible::after{opacity:1;transform:scale(1)}
.kf-room__b{padding:clamp(20px,2.2vw,30px)}
.kf-room__tag{display:inline-block;font-weight:800;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:var(--butter);border:2px solid var(--ink);margin-bottom:12px}
.kf-room h3{font-size:clamp(26px,2.6vw,34px);margin-bottom:8px}
.kf-room p{font-size:16px;color:var(--ink-2);margin:0 0 14px}

/* ---------- faq ---------- */
.kf-faq{display:grid;gap:12px}
.kf-faq details{border:3px solid var(--ink);border-radius:20px;background:#fff;overflow:hidden}
.kf-faq details[open]{background:#FFFDF5}
.kf-faq summary{list-style:none;cursor:pointer;padding:18px 54px 18px 22px;position:relative;font-family:var(--kf-d);font-weight:800;font-size:clamp(19px,2vw,24px)}
.kf-faq summary::-webkit-details-marker{display:none}
.kf-faq summary::after{content:'+';position:absolute;right:16px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:var(--teal);color:#fff;font-family:var(--kf-b);font-weight:800;font-size:19px;display:flex;align-items:center;justify-content:center;transition:transform .25s ease}
.kf-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg);background:var(--orange)}
.kf-faq__a{padding:0 22px 20px;font-size:16.5px;color:var(--ink-2)}
.kf-faq__a p:last-child{margin:0}

/* ---------- big CTA ---------- */
.kf-cta{background:var(--teal);border-block:4px solid var(--ink);padding:clamp(52px,7vw,96px) clamp(20px,5vw,72px);text-align:center}
.kf-cta h2{color:#fff;font-size:clamp(34px,6vw,72px)}
.kf-cta h2 em{font-style:normal;color:#FFD23F}
.kf-cta p{color:rgba(255,255,255,.92);font-size:19px;max-width:46ch;margin:14px auto 26px}
.kf-cta .kf-btns{justify-content:center}
body.kf .kf-cta a.kf-btn{color:var(--ink)}
body.kf .kf-cta a.kf-btn--l{color:#1C3309}

/* ---------- footer tweaks ---------- */
body.kf .foot{background:var(--green-deep);border-top:4px solid var(--ink)}
body.kf .foot::before{display:none}
body.kf .foot__cols h4{font-family:var(--kf-b);font-weight:800;color:#FFD23F}
body.kf .foot,body.kf .foot p,body.kf .foot a{font-family:var(--kf-b)}
body.kf .foot p a,body.kf .foot__bottom a{color:#F4F1E6;text-decoration:none}
body.kf .foot p a:hover,body.kf .foot__bottom a:hover{color:#C7E894;text-decoration:underline}
body.kf .mbar a{text-decoration:none}

/* ---------- mobile bar ---------- */
.kf-mbar{position:fixed;left:0;right:0;bottom:0;z-index:58;display:none;background:#fff;border-top:3px solid var(--ink)}
.kf-mbar a{flex:1;padding:13px 4px 15px;text-align:center;font-weight:800;font-size:12.5px;color:var(--ink-2)}
.kf-mbar a.is-key{color:var(--orange)}
@media(max-width:760px){body.kf{padding-bottom:calc(58px + env(safe-area-inset-bottom))}}

/* ---------- reveal ---------- */
body.kf .rv{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
body.kf .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){body.kf .rv{opacity:1;transform:none}}

/* ---------- reel: real clips from the room ---------- */
.kf-reel{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;scroll-padding-left:20px;-webkit-overflow-scrolling:touch}
.kf-reel figure{margin:0;position:relative;border:4px solid var(--ink);border-radius:22px;overflow:hidden;background:#000;aspect-ratio:9/14;box-shadow:8px 9px 0 0 var(--lime);transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease}
.kf-reel figure:nth-child(2){box-shadow:8px 9px 0 0 var(--teal)}
.kf-reel figure:nth-child(3){box-shadow:8px 9px 0 0 var(--orange)}
.kf-reel figure:nth-child(4){box-shadow:8px 9px 0 0 var(--pink)}
.kf-reel figure:nth-child(5){box-shadow:8px 9px 0 0 var(--blue)}
.kf-reel figure:nth-child(odd){rotate:-1.1deg}
.kf-reel figure:nth-child(even){rotate:1deg}
.kf-reel figure:hover{transform:translateY(-6px) scale(1.02);rotate:0deg}
.kf-reel video{width:100%;height:100%;object-fit:cover;display:block}
.kf-reel figure{container-type:size}
.kf-reel video.rot-ccw{position:absolute;top:50%;left:50%;width:100cqh;height:100cqw;transform:translate(-50%,-50%) rotate(-90deg)}
.kf-reel video.rot-cw{position:absolute;top:50%;left:50%;width:100cqh;height:100cqw;transform:translate(-50%,-50%) rotate(90deg)}
.kf-reel figcaption{position:absolute;left:8px;right:8px;bottom:8px;padding:8px 12px;border-radius:14px;background:rgba(255,255,255,.92);font-family:'Baloo 2','Nunito',var(--kf-b);font-weight:700;font-size:12.5px;line-height:1.2;color:var(--ink);text-align:center}
@media(max-width:900px){
  .kf-reel{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:6px 0 10px;margin-inline:calc(var(--kf-pad,20px) * -1);padding-inline:var(--kf-pad,20px);scrollbar-width:none}
  .kf-reel::-webkit-scrollbar{display:none}
  .kf-reel figure{flex:0 0 62%;scroll-snap-align:center}
}
