/* Children's Village — site styles */
@font-face{font-family:"TrashHand";src:url("../fonts/trashhand.woff2") format("woff2");font-display:swap;unicode-range:U+0000-0023,U+0025-FFFF}

:root{
  --pink:#FF2E93;
  --pink-hi:#FF5AA8;
  --pink-soft:#F49AD6;
  --pink-deep:#C2186B;
  --pink-tint:#FFE1F0;
  --pink-line:#F6D3E6;
  --blush:#FFF4FA;
  --ink:#16121A;
  --ink-2:#2A2328;
  --muted:#5A5058;
  --muted-dk:#CFC5CD;
  --white:#FFFFFF;
  --radius:24px;
  --wrap:1280px;
  --gutter:clamp(20px,5vw,80px);
  --body:"Outfit",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --hand:"TrashHand","Outfit",cursive;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--body);font-size:17px;line-height:1.6;color:var(--ink-2);background:var(--white)}
img{max-width:100%;height:auto;display:block}
a{color:var(--pink-deep);text-decoration:none}
a:hover{color:var(--pink)}
h1,h2,h3{margin:0;line-height:1.05}
p{margin:0}
.hand{font-family:var(--hand);font-weight:400;letter-spacing:.01em}
.wrap{max-width:var(--wrap);margin:0 auto}
.sec{padding:120px var(--gutter)}
.sec-dark{background:var(--ink);color:#F6F1F5}
.sec-blush{background:var(--blush)}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--pink-deep)}
.sec-dark .eyebrow{color:#FFB3D9}
.h2{font-family:var(--hand);font-weight:400;font-size:clamp(40px,5vw,64px);line-height:1.02;margin-top:14px}
.sec-dark .h2{color:#fff}
.lead{font-size:18px;color:var(--muted);max-width:560px}
.sec-dark .lead{color:var(--muted-dk)}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:var(--ink);padding:10px 16px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--pink);outline-offset:3px;border-radius:6px}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 28px;border-radius:999px;font-weight:600;font-size:16px;border:0;cursor:pointer;font-family:inherit;transition:background .2s,transform .2s,box-shadow .2s}
.btn svg{width:18px;height:18px;flex:none}
.btn-pink{background:var(--pink);color:var(--ink);box-shadow:0 0 0 6px rgba(255,46,147,.16),0 10px 40px rgba(255,46,147,.4)}
.btn-pink:hover{background:var(--pink-hi);color:var(--ink);transform:translateY(-2px)}
.btn-ghost{border:1px solid rgba(255,255,255,.3);color:#fff;background:transparent}
.btn-ghost:hover{background:rgba(255,255,255,.08);color:#fff}
.btn-white{background:#fff;color:var(--ink);box-shadow:0 18px 40px rgba(22,18,26,.25)}
.btn-white:hover{color:var(--ink);transform:translateY(-2px)}
.link-arrow{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600}

/* Header / nav */
.site-head{position:absolute;top:0;left:0;right:0;z-index:20;padding:0 var(--gutter)}
.site-head.solid{position:relative;background:var(--ink)}
.nav{max-width:var(--wrap);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0}
.brand{display:flex;align-items:center;gap:12px;color:#fff}
.brand:hover{color:#fff}
.brand img{width:46px;height:46px}
.brand span{font-family:var(--hand);font-size:30px;line-height:1}
.nav-links{display:flex;align-items:center;gap:32px;list-style:none;margin:0;padding:0;font-size:15px;font-weight:500}
.nav-links a{color:#EDE6EC;padding:8px 0;position:relative}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--pink)}
.nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--pink);border-radius:2px}
.nav .btn{min-height:46px;padding:0 22px;font-size:15px}
.menu-btn{display:none;width:48px;height:48px;border-radius:14px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;cursor:pointer;align-items:center;justify-content:center}
.menu-btn svg{width:24px;height:24px}

/* Home hero */
.hero{position:relative;background:var(--ink);color:#F6F1F5;min-height:min(980px,100vh);padding:150px var(--gutter) 80px;overflow:hidden}
.glow{position:absolute;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,46,147,.34) 0%,rgba(255,46,147,0) 62%)}
.hero .glow{right:-180px;top:60px;width:820px;height:820px}
.hero-grid{position:relative;z-index:2;max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:40px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border:1px solid rgba(255,46,147,.45);border-radius:999px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#FFB3D9}
.pill i{width:8px;height:8px;border-radius:50%;background:var(--pink);box-shadow:0 0 12px var(--pink)}
.hero h1{font-family:var(--hand);font-weight:400;font-size:clamp(52px,6.4vw,96px);line-height:.98;color:#fff;margin-top:28px}
.neon{color:var(--pink);text-shadow:0 0 34px rgba(255,46,147,.55)}
.hero p{margin-top:28px;font-size:19px;color:var(--muted-dk);max-width:500px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:40px}

/* 3D stage */
.stage{position:relative;height:640px;perspective:1700px;perspective-origin:40% 50%}
.rig{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateY(var(--ry,-17deg)) rotateX(var(--rx,7deg));transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.card3d{position:absolute;margin:0;border-radius:24px;overflow:hidden}
.card3d img{width:100%;height:100%;object-fit:cover}
.c-back{left:110px;top:30px;width:420px;height:300px;transform:translate3d(-150px,-60px,-220px);box-shadow:0 30px 70px rgba(0,0,0,.55);opacity:.85}
.c-mid{left:150px;top:70px;width:520px;height:390px;transform:translate3d(40px,30px,0);box-shadow:0 0 0 2px var(--pink),0 40px 100px rgba(255,46,147,.35)}
.c-front{left:60px;top:120px;width:330px;height:230px;transform:translate3d(-60px,250px,180px);border:6px solid #fff;box-shadow:0 30px 60px rgba(0,0,0,.6)}
.fly{position:absolute;animation:fl 7s ease-in-out infinite;pointer-events:none}
.fly.f2{animation-duration:9s;animation-direction:reverse}
.fly.f3{animation-duration:6s;animation-delay:-2s}
@keyframes fl{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-22px) rotate(6deg)}}
.badge{position:absolute;right:0;bottom:90px;display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:18px;background:rgba(22,18,26,.78);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#E4DAE2;font-size:14px;line-height:1.35}
.badge b{font-family:var(--hand);font-weight:400;font-size:40px;line-height:1;color:var(--pink)}

/* Stats */
.stats{background:var(--pink);color:var(--ink);padding:40px var(--gutter)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.stats b{display:block;font-family:var(--hand);font-weight:400;font-size:64px;line-height:1}
.stats span{display:block;margin-top:6px;font-size:15px;font-weight:500}

/* Section heads */
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px}
.sec-head > div{max-width:660px}

/* Feature cards */
.cards{margin-top:64px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.card{background:#fff;border-radius:var(--radius);padding:32px;border:1px solid var(--pink-line);transition:transform .35s,box-shadow .35s}
.card:hover{transform:translateY(-8px);box-shadow:0 24px 48px rgba(255,46,147,.2)}
.card h3{margin-top:22px;font-size:22px;font-weight:600;color:var(--ink-2)}
.card p{margin-top:8px;font-size:15px;color:var(--muted)}
.card.dark{background:var(--ink);border-color:var(--ink)}
.card.dark h3{color:#fff}.card.dark p{color:#D6CCD4}
.ico{width:56px;height:56px;border-radius:16px;background:var(--pink-tint);color:var(--pink-deep);display:flex;align-items:center;justify-content:center}
.ico svg{width:28px;height:28px}
.card.dark .ico{background:var(--pink);color:var(--ink)}

/* Split blocks */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.tilt{position:relative;perspective:1600px}
.tilt-inner{position:relative;transform-style:preserve-3d;transform:rotateY(var(--ry,12deg)) rotateX(var(--rx,4deg));transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.tilt-inner > img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:28px;box-shadow:0 40px 90px rgba(42,35,40,.28)}
.float-note{position:absolute;left:-24px;bottom:36px;transform:translateZ(90px);background:var(--pink);color:var(--ink);border-radius:20px;padding:20px 24px;max-width:260px;box-shadow:0 24px 50px rgba(255,46,147,.4)}
.float-note b{display:block;font-family:var(--hand);font-weight:400;font-size:34px;line-height:1}
.float-note span{display:block;margin-top:6px;font-size:14px;line-height:1.45;font-weight:500}

/* Timeline */
.timeline{list-style:none;margin:44px 0 0;padding:0}
.timeline li{display:flex;gap:24px}
.timeline .dot{display:flex;flex-direction:column;align-items:center}
.timeline .dot::before{content:"";width:16px;height:16px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 6px var(--pink-tint);flex:none}
.timeline .dot::after{content:"";flex:1;width:2px;background:var(--pink-line)}
.timeline li:last-child .dot::after{display:none}
.timeline li:last-child .dot::before{background:#fff;border:2px dashed var(--pink)}
.timeline .body{padding-bottom:32px}
.timeline small{display:block;font-weight:700;font-size:15px;color:var(--pink-deep)}
.timeline p{margin-top:4px;font-size:18px}

/* 3D photo wall */
.wall{margin-top:72px;perspective:1400px}
.wall-row{display:flex;justify-content:center;gap:18px;align-items:center;transform-style:preserve-3d}
.wall-row figure{flex:1 1 0;min-width:0;max-width:300px}
.wall figure{margin:0;border-radius:22px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.5);transition:transform .5s}
.wall img{width:100%;height:100%;object-fit:cover}
.wall .w1{height:330px;transform:rotateY(34deg) translateZ(-60px)}
.wall .w2{height:400px;transform:rotateY(17deg) translateZ(10px)}
.wall .w3{height:460px;transform:translateZ(40px);box-shadow:0 0 0 2px var(--pink),0 40px 90px rgba(255,46,147,.4)}
.wall .w4{height:400px;transform:rotateY(-17deg) translateZ(10px)}
.wall .w5{height:330px;transform:rotateY(-34deg) translateZ(-60px)}
.wall figure:hover{transform:translateZ(80px) rotateY(0)}

/* Sponsor */
.help-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px}
.sponsor{position:relative;background:var(--pink);color:var(--ink);border-radius:32px;padding:56px;overflow:hidden}
.sponsor .bg-fly{position:absolute;right:-30px;top:-20px;width:220px;opacity:.35}
.price{display:flex;align-items:baseline;gap:12px;margin-top:18px;font-family:var(--hand)}
.price b{font-weight:400;font-size:clamp(90px,10vw,150px);line-height:.85}
.price span{font-size:44px;line-height:1}
.sponsor p{position:relative;margin-top:22px;max-width:460px;font-size:18px;font-weight:500}
.sponsor .btn{margin-top:30px}
.side-cards{display:flex;flex-direction:column;gap:24px}
.side-card{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:20px;border-radius:32px;padding:40px;min-height:230px;transition:transform .35s,box-shadow .35s}
.side-card:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(255,46,147,.2)}
.side-card.dark{background:var(--ink);color:#fff}.side-card.dark:hover{color:#fff}
.side-card.dark .ico{background:rgba(255,46,147,.18);color:#FF7BBE}
.side-card.light{background:#fff;color:var(--ink-2);border:1px solid var(--pink-line)}
.side-card h3{font-size:26px;font-weight:600}
.side-card p{margin-top:8px;font-size:15px;opacity:.85}

/* Quote */
.quote{max-width:980px;margin:0 auto;text-align:center}
.quote img.mark{width:64px;margin:0 auto}
.quote blockquote{margin:28px 0 0;font-size:clamp(24px,3vw,34px);line-height:1.4;color:var(--ink-2)}
.quote cite{display:block;margin-top:28px;font-style:normal;font-weight:600}
.quote cite small{display:block;font-weight:400;font-size:14px;color:var(--muted);margin-top:4px}

/* Inner page hero */
.page-hero{position:relative;background:var(--ink);color:#F6F1F5;padding:170px var(--gutter) 100px;overflow:hidden}
.page-hero .glow{right:-120px;top:-120px;width:620px;height:620px}
.page-hero .wrap{position:relative;z-index:2}
.page-hero h1{font-family:var(--hand);font-weight:400;font-size:clamp(52px,7vw,104px);line-height:.98;color:#fff;margin-top:20px;max-width:900px}
.page-hero p{margin-top:24px;font-size:19px;color:var(--muted-dk);max-width:620px}
.crumbs{font-size:14px;color:#A99DA7}
.crumbs a{color:#FFB3D9}

/* Prose */
.prose p{font-size:18px;color:var(--muted);margin-top:18px}
.prose p:first-child{margin-top:0}
.prose strong{color:var(--ink-2)}
.checks{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px}
.checks li{display:flex;gap:14px;align-items:flex-start;font-size:17px}
.checks li::before{content:"";flex:none;width:24px;height:24px;margin-top:2px;border-radius:50%;background:var(--pink-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2186B' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat}

.photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:64px}
.photo-pair figure{margin:0}
.photo-pair .ph{border-radius:24px;overflow:hidden;aspect-ratio:4/3;background:var(--pink-tint)}
.photo-pair img{width:100%;height:100%;object-fit:cover}
.photo-pair figcaption{margin-top:12px;font-size:14px;color:var(--muted)}

/* Gallery page */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px}
.chip{min-height:44px;padding:0 20px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;font:inherit;font-size:15px;font-weight:500;cursor:pointer}
.chip[aria-pressed="true"]{background:var(--pink);border-color:var(--pink);color:var(--ink)}
.masonry{columns:4 260px;column-gap:18px;margin-top:48px}
.masonry button{display:block;width:100%;margin:0 0 18px;padding:0;border:0;background:#241e27;border-radius:18px;overflow:hidden;cursor:zoom-in;break-inside:avoid;transition:transform .35s,box-shadow .35s}
.masonry button:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 20px 50px rgba(255,46,147,.3)}
.masonry img{width:100%;height:auto}
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(10,8,12,.94);display:none;align-items:center;justify-content:center;padding:60px 80px}
.lightbox.open{display:flex}
.lightbox img{max-width:100%;max-height:100%;border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.lb-btn{position:absolute;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(22,18,26,.6);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.lb-btn svg{width:22px;height:22px}
.lb-close{top:20px;right:20px}.lb-prev{left:16px;top:50%;margin-top:-26px}.lb-next{right:16px;top:50%;margin-top:-26px}
.lb-count{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#A99DA7;font-size:14px}

/* Fees table */
.fees{width:100%;border-collapse:collapse;margin-top:28px;font-size:16px;background:#fff;border-radius:20px;overflow:hidden;border:1px solid var(--pink-line)}
.fees th,.fees td{padding:16px 22px;text-align:left;border-bottom:1px solid var(--pink-line)}
.fees th{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--pink-deep);background:var(--pink-tint)}
.fees td:not(:first-child),.fees th:not(:first-child){text-align:right}
.fees tr.total td{font-weight:700;border-bottom:0;background:var(--ink);color:#fff}
.table-box{overflow-x:auto}
.pay{display:grid;grid-template-columns:auto minmax(0,1fr);gap:32px;align-items:center;background:#fff;border-radius:28px;padding:32px;border:1px solid var(--pink-line)}
.pay .qr{width:200px;height:200px;border-radius:16px;background:var(--pink-tint);display:flex;align-items:center;justify-content:center;overflow:hidden}
.pay .qr img{width:100%;height:100%;object-fit:contain;background:#fff}
.upi{display:inline-flex;align-items:center;gap:10px;margin-top:14px;padding:10px 16px;border-radius:12px;background:var(--blush);border:1px dashed var(--pink);font-weight:600;font-size:18px;color:var(--ink-2)}
.copy{min-height:36px;padding:0 14px;border-radius:999px;border:0;background:var(--ink);color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}

/* Testimonials page */
.t-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:64px}
.t-card{position:relative;background:#fff;border:1px solid var(--pink-line);border-radius:28px;padding:40px;transition:transform .35s,box-shadow .35s}
.t-card:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(255,46,147,.18)}
.t-card.feature{background:var(--ink);color:#fff;border-color:var(--ink);grid-column:1/-1}
.t-card blockquote{margin:0;font-size:20px;line-height:1.55;color:var(--ink-2)}
.t-card.feature blockquote{font-size:clamp(22px,2.6vw,30px);color:#fff}
.t-card .qmark{font-family:var(--hand);font-size:80px;line-height:.6;color:var(--pink);display:block;height:36px}
.who{display:flex;align-items:center;gap:14px;margin-top:28px}
.avatar{width:56px;height:56px;border-radius:50%;overflow:hidden;background:var(--pink-tint);color:var(--pink-deep);display:flex;align-items:center;justify-content:center;font-weight:700;flex:none}
.avatar img{width:100%;height:100%;object-fit:cover}
.who b{display:block;font-size:16px}
.who small{display:block;font-size:14px;color:var(--muted)}
.t-card.feature .who small{color:#D6CCD4}

/* Contact */
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px}
.addr{background:#fff;border:1px solid var(--pink-line);border-radius:28px;padding:36px}
.addr + .addr{margin-top:20px}
.addr h3{font-size:22px;font-weight:600;margin-top:16px}
.addr p{margin-top:10px;color:var(--muted)}
.addr a{font-weight:600}
.form{background:var(--ink);color:#fff;border-radius:32px;padding:44px}
.form h2{font-family:var(--hand);font-weight:400;font-size:44px}
.field{display:flex;flex-direction:column;gap:8px;margin-top:20px}
.field label{font-size:14px;font-weight:500;color:#E4DAE2}
.field input,.field select,.field textarea{min-height:52px;padding:12px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;font:inherit;font-size:16px}
.field textarea{min-height:140px;resize:vertical}
.field select option{color:var(--ink)}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 4px rgba(255,46,147,.25)}
.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.hp{position:absolute;left:-9999px}
.form .btn{margin-top:28px}
.notice{margin-top:18px;padding:14px 18px;border-radius:14px;font-size:15px}
.notice.ok{background:rgba(255,46,147,.15);color:#FFD0E7}

/* CTA band + footer */
.footer{background:var(--ink);color:#D6CCD4;padding:96px var(--gutter) 40px}
.f-cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding-bottom:64px;border-bottom:1px solid rgba(255,255,255,.12)}
.f-cta h2{font-family:var(--hand);font-weight:400;font-size:clamp(40px,5vw,60px);color:#fff;max-width:680px}
.f-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;padding:56px 0}
.f-cols h4{margin:0;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#FFB3D9}
.f-cols p,.f-cols ul{margin:14px 0 0;font-size:15px;line-height:1.7}
.f-cols ul{list-style:none;padding:0;display:grid;gap:6px}
.f-cols a{color:#EDE6EC}.f-cols a:hover{color:var(--pink)}
.f-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#A99DA7}

/* Reveal on scroll */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}

/* Image fallback (old-site images missing) */
.img-missing{display:none!important}

/* Responsive */
@media (max-width:1100px){
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .f-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wall .w1,.wall .w5{display:none}
}
@media (max-width:960px){
  .menu-btn{display:inline-flex}
  .nav{flex-wrap:wrap}
  .nav-links{display:none;order:3;width:100%;flex-direction:column;align-items:flex-start;gap:0;padding:12px 0 8px;border-top:1px solid rgba(255,255,255,.12)}
  .nav-links.open{display:flex}
  .nav-links li{width:100%}
  .nav-links a{display:block;padding:14px 0;font-size:18px}
  .nav-links a[aria-current="page"]::after{display:none}
  .nav .btn{display:none}
  .site-head{background:var(--ink)}
  .hero{padding-top:130px}
  .hero-grid,.split,.help-grid,.contact-grid{grid-template-columns:minmax(0,1fr)}
  .stage{height:420px}
  .rig{transform:none!important}
  .c-back,.c-front,.badge{display:none}
  .c-mid{left:0;top:0;right:0;width:auto;height:100%;transform:none}
  .stats .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .t-grid{grid-template-columns:minmax(0,1fr)}
  .split{gap:48px}
  .tilt-inner{transform:none!important}
  .float-note{left:16px;bottom:16px;transform:none}
}
@media (max-width:640px){
  body{font-size:16px}
  .sec{padding:80px var(--gutter)}
  .cards{grid-template-columns:minmax(0,1fr)}
  .wall-row figure{max-width:none}
  .wall figure{transform:none!important;height:300px!important}
  .wall .w2,.wall .w4{display:none}
  .sponsor{padding:36px 28px}
  .f-cols{grid-template-columns:minmax(0,1fr)}
  .pay{grid-template-columns:minmax(0,1fr)}
  .row2{grid-template-columns:minmax(0,1fr)}
  .photo-pair{grid-template-columns:minmax(0,1fr)}
  .lightbox{padding:70px 12px}
  .stats b{font-size:52px}
  .page-hero{padding:140px var(--gutter) 70px}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}
.masonry button[hidden]{display:none}
