/* ===== Türközü Gülveren Anaokulu ===== */
:root{
  --purple:#7B2CBF; --purple-d:#5A189A; --pink:#E83E8C; --orange:#FF7A00; --yellow:#FFC93C;
  --turq:#22C7D6; --green:#2BB673; --navy:#2B2350; --cream:#FFF8EE; --text:#3A3350; --muted:#6B6485;
  --radius:24px; --shadow:0 18px 40px -18px rgba(91,24,154,.35);
  --font-h:'Baloo 2',system-ui,sans-serif; --font-b:'Nunito',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:var(--font-b);color:var(--text);background:var(--cream);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
.container{width:min(1200px,100% - 32px);margin-inline:auto}
section{position:relative}

/* ---------- Preloader ---------- */
#preloader{position:fixed;inset:0;z-index:9999;background:linear-gradient(135deg,var(--purple),var(--pink));display:grid;place-content:center;justify-items:center;gap:18px;transition:opacity .6s,visibility .6s}
#preloader.done{opacity:0;visibility:hidden}
.pl-sun{width:70px;height:70px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 12px rgba(255,201,60,.3),0 0 0 26px rgba(255,201,60,.15);animation:spin 3s linear infinite,pulse 1.2s ease-in-out infinite}
.pl-text{font-family:var(--font-h);font-weight:800;font-size:clamp(40px,10vw,72px);color:#fff;display:flex}
.pl-text span{display:inline-block;animation:hop 1s ease-in-out infinite;animation-delay:calc(var(--d,0)*1s)}
.pl-text span:nth-child(1){--d:0}.pl-text span:nth-child(2){--d:.08}.pl-text span:nth-child(3){--d:.16}.pl-text span:nth-child(4){--d:.24}.pl-text span:nth-child(5){--d:.32}.pl-text span:nth-child(6){--d:.4}.pl-text span:nth-child(7){--d:.48}.pl-text span:nth-child(8){--d:.56}

/* ---------- Logo ---------- */
.logo{display:inline-flex;flex-direction:column;line-height:.8;font-family:var(--font-h);font-weight:800;user-select:none}
.lg-top{color:var(--orange);font-size:15px;align-self:flex-end;margin-right:6px;letter-spacing:.3px}
.lg-mid{font-size:32px;color:#fff;-webkit-text-stroke:7px var(--purple);paint-order:stroke fill;letter-spacing:-.5px}
.lg-bot{color:var(--orange);font-size:15px;align-self:flex-end;margin-right:4px}
.logo-light .lg-mid{-webkit-text-stroke-color:var(--pink)}

/* ---------- Nav ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .3s,box-shadow .3s,padding .3s;padding:14px 0}
.nav.scrolled{background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 6px 24px -12px rgba(43,35,80,.3);padding:8px 0}
.nav-inner{width:min(1240px,100% - 32px);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:16px}
.menu{display:flex;align-items:center;gap:4px}
.menu a{font-weight:800;font-size:15px;padding:8px 12px;border-radius:999px;color:var(--navy);transition:background .2s,color .2s,transform .2s}
.menu a:not(.btn):hover{background:#fff;color:var(--purple);transform:translateY(-2px)}
.burger{display:none;width:46px;height:46px;border-radius:14px;background:#fff;box-shadow:var(--shadow);position:relative}
.burger span{position:absolute;left:12px;right:12px;height:3px;border-radius:3px;background:var(--purple);transition:.3s}
.burger span:nth-child(1){top:15px}.burger span:nth-child(2){top:22px}.burger span:nth-child(3){top:29px}
.burger.open span:nth-child(1){top:22px;transform:rotate(45deg)}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){top:22px;transform:rotate(-45deg)}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-h);font-weight:700;font-size:17px;padding:12px 24px;border-radius:999px;transition:transform .2s,box-shadow .2s;box-shadow:0 6px 0 rgba(0,0,0,.15);position:relative;white-space:nowrap}
.btn:hover{transform:translateY(-3px) scale(1.03)}
.btn:active{transform:translateY(2px);box-shadow:0 2px 0 rgba(0,0,0,.15)}
.btn-sm{padding:8px 18px;font-size:15px}
.btn-lg{padding:15px 30px;font-size:19px}
.btn-block{width:100%}
.btn-pink{background:var(--pink);color:#fff!important}
.btn-orange{background:var(--orange);color:#fff}
.btn-green{background:#25D366;color:#fff}
.btn-white{background:#fff;color:var(--purple)}

/* ---------- Hero ---------- */
.hero{min-height:100vh;min-height:100svh;padding:120px 0 140px;background:linear-gradient(180deg,#BDEBFF 0%,#E3F6FF 45%,#FFF1F8 100%);overflow:hidden;display:flex;align-items:center}
.sky{position:absolute;inset:0;pointer-events:none}
.cloud{position:absolute;background:#fff;border-radius:100px;opacity:.9;filter:drop-shadow(0 8px 10px rgba(0,80,140,.08))}
.cloud::before,.cloud::after{content:"";position:absolute;background:#fff;border-radius:50%}
.cloud.c1{width:180px;height:54px;top:16%;left:-200px;animation:drift 48s linear infinite}
.cloud.c1::before{width:80px;height:80px;top:-40px;left:30px}.cloud.c1::after{width:60px;height:60px;top:-26px;left:92px}
.cloud.c2{width:130px;height:40px;top:34%;left:-160px;animation:drift 62s linear infinite -20s;transform:scale(.8)}
.cloud.c2::before{width:60px;height:60px;top:-30px;left:20px}.cloud.c2::after{width:44px;height:44px;top:-20px;left:66px}
.cloud.c3{width:220px;height:62px;top:8%;left:-240px;animation:drift 80s linear infinite -45s}
.cloud.c3::before{width:96px;height:96px;top:-50px;left:40px}.cloud.c3::after{width:70px;height:70px;top:-30px;left:118px}
.sun{position:absolute;top:92px;right:7%;width:96px;height:96px;border-radius:50%;background:radial-gradient(circle at 40% 40%,#FFE27A,var(--yellow));box-shadow:0 0 0 14px rgba(255,201,60,.25),0 0 60px 20px rgba(255,201,60,.45);animation:pulse 3s ease-in-out infinite}
.sun::before{content:"";position:absolute;inset:-34px;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(255,201,60,.55) 0 8deg,transparent 8deg 30deg);-webkit-mask:radial-gradient(circle,transparent 58%,#000 60%);mask:radial-gradient(circle,transparent 58%,#000 60%);animation:spin 20s linear infinite}
.sun-face{position:absolute;inset:0;display:grid;place-items:center;font-weight:800;color:#C77800;font-size:20px;letter-spacing:2px}
.plane{position:absolute;width:56px;top:22%;left:40%;animation:fly 14s ease-in-out infinite}
.star,.heart{position:absolute;font-size:26px;animation:twinkle 2.6s ease-in-out infinite}
.star{color:var(--yellow);text-shadow:0 2px 0 #E0A800}
.s1{top:24%;left:6%}.s2{top:70%;left:48%;animation-delay:.8s;font-size:20px}.s3{top:14%;left:58%;animation-delay:1.5s}
.heart{color:var(--pink)}.h1{top:62%;left:4%;animation-delay:.4s}.h2{top:30%;right:3%;animation-delay:1.2s;color:var(--green)}

.hero-inner{position:relative;z-index:2;width:min(1200px,100% - 32px);margin-inline:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.badge-live{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--pink);font-weight:800;padding:8px 16px;border-radius:999px;box-shadow:var(--shadow);font-size:14px;animation:floaty 4s ease-in-out infinite}
.dot{width:10px;height:10px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 0 rgba(232,62,140,.6);animation:ping 1.5s infinite}
.hero-title{display:flex;flex-direction:column;line-height:.8;margin:22px 0 10px;font-family:var(--font-h);font-weight:800}
.ht-small{font-size:clamp(28px,4vw,44px);color:var(--orange);-webkit-text-stroke:5px #fff;paint-order:stroke fill;margin-left:8px;margin-bottom:10px;position:relative;z-index:1}
.ht-small.alt{align-self:flex-start;margin-left:clamp(120px,22vw,300px);margin-top:4px}
.ht-big{font-size:clamp(72px,11vw,150px);color:#fff;-webkit-text-stroke:clamp(10px,1.6vw,18px) var(--purple);paint-order:stroke fill;letter-spacing:-2px;filter:drop-shadow(0 10px 0 rgba(90,24,154,.25));display:inline-flex}
.ht-big .ch{display:inline-block;animation:letterIn .8s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(var(--i)*.07s + .9s)}
.ht-big .ch:hover{animation:jelly .6s}
.slogan{font-family:'Caveat',cursive;font-size:clamp(30px,4vw,46px);color:var(--navy);margin-bottom:10px}
.hl{color:var(--pink);position:relative;white-space:nowrap}
.hl::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:12px;background:rgba(255,201,60,.6);z-index:-1;border-radius:6px;transform-origin:left;animation:grow 1s 1.8s both}
.hero-lead{font-size:18px;max-width:540px;color:var(--muted)}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin:26px 0 20px}
.hero-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none}
.hero-chips li{background:rgba(255,255,255,.75);padding:6px 14px;border-radius:999px;font-weight:700;font-size:14px;border:2px dashed rgba(123,44,191,.25)}

.hero-visual{position:relative;height:min(560px,70vw);min-height:380px}
.polaroid-stack{position:absolute;inset:0}
.pol{position:absolute;top:50%;left:50%;width:min(78%,420px);aspect-ratio:4/4.6;background:#fff;padding:12px 12px 52px;border-radius:14px;box-shadow:0 30px 60px -25px rgba(43,35,80,.55);transition:transform .9s cubic-bezier(.2,.9,.3,1.2),opacity .9s,z-index 0s .45s;transform:translate(-50%,-50%) rotate(var(--r,0deg)) scale(var(--s,1));opacity:var(--o,1)}
.pol img{width:100%;height:100%;object-fit:cover;border-radius:8px}
.pol figcaption{position:absolute;bottom:10px;left:0;right:0;text-align:center;font-family:'Caveat',cursive;font-size:30px;color:var(--purple)}
.pol.p0{--r:-4deg;z-index:4}
.pol.p1{--r:7deg;--s:.94;z-index:3;transform:translate(-38%,-52%) rotate(var(--r)) scale(var(--s))}
.pol.p2{--r:-11deg;--s:.9;z-index:2;transform:translate(-62%,-48%) rotate(var(--r)) scale(var(--s))}
.pol.p3{--r:3deg;--s:.86;--o:.0;z-index:1}
.pol.p0 img{animation:kenburns 7s ease-out both}
.bubble{position:absolute;background:#fff;padding:10px 18px;border-radius:22px;font-weight:800;box-shadow:var(--shadow);z-index:6;font-size:16px}
.bubble::after{content:"";position:absolute;bottom:-9px;left:24px;border:10px solid transparent;border-top-color:#fff;border-bottom:0}
.b1{top:4%;left:-4%;color:var(--purple);animation:floaty 5s ease-in-out infinite}
.b2{bottom:8%;right:-2%;color:var(--green);animation:floaty 5s ease-in-out infinite 1.5s}
.wave{position:absolute;bottom:-1px;left:0;width:100%;height:110px;fill:var(--cream)}

/* ---------- Marquee ---------- */
.marquee{background:var(--purple);color:#fff;overflow:hidden;padding:14px 0;transform:rotate(-1.5deg);margin:-10px -20px 0;position:relative;z-index:3;box-shadow:0 10px 30px -10px rgba(90,24,154,.5)}
.marquee-track{display:flex;gap:48px;width:max-content;animation:marquee 38s linear infinite;font-family:var(--font-h);font-weight:700;font-size:20px}
.marquee:hover .marquee-track{animation-play-state:paused}

/* ---------- Common section heads ---------- */
.sec-head{text-align:center;max-width:720px;margin:0 auto 46px}
.sec-head p{color:var(--muted);font-size:18px;margin-top:6px}
.kicker{display:inline-block;font-family:var(--font-h);font-weight:700;color:var(--pink);background:rgba(232,62,140,.1);padding:4px 16px;border-radius:999px;font-size:15px;letter-spacing:.5px;margin-bottom:10px}
.kicker.light{color:#fff;background:rgba(255,255,255,.18)}
.kicker.green{color:var(--green);background:rgba(43,182,115,.12)}
.kicker.orange{color:var(--orange);background:rgba(255,122,0,.12)}
.title{font-family:var(--font-h);font-weight:800;font-size:clamp(32px,4.6vw,54px);line-height:1.05;color:var(--navy)}
.title.light{color:#fff}
.scribble{position:relative;color:var(--purple);white-space:nowrap;display:inline-block;line-height:1}
.title.light .scribble{color:var(--yellow)}
.scribble::after{content:"";position:absolute;left:-4px;right:-4px;bottom:-8px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 14'%3E%3Cpath d='M2 9 Q50 1 100 7 T198 5' fill='none' stroke='%23FF7A00' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;transform:scaleX(0);transform-origin:left;transition:transform .9s .3s cubic-bezier(.6,0,.2,1)}
.in .scribble::after,.scribble.in::after{transform:scaleX(1)}

/* ---------- Features ---------- */
.features{padding:90px 0 40px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.feat{background:#fff;border-radius:var(--radius);padding:30px 24px;box-shadow:var(--shadow);border-bottom:6px solid var(--c);transition:transform .3s,box-shadow .3s;text-align:center}
.feat:hover{transform:translateY(-10px) rotate(-1deg);box-shadow:0 28px 50px -22px rgba(91,24,154,.45)}
.feat-ico{font-size:44px;width:84px;height:84px;margin:0 auto 16px;display:grid;place-items:center;border-radius:28px;background:color-mix(in srgb,var(--c) 16%,#fff);transition:transform .5s}
.feat:hover .feat-ico{transform:rotate(12deg) scale(1.12)}
.feat h3{font-family:var(--font-h);font-size:21px;line-height:1.15;margin-bottom:8px;color:var(--navy)}
.feat p{color:var(--muted);font-size:15px}

/* ---------- About ---------- */
.about{padding:70px 0 90px}
.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}
.about-img{position:relative;padding:20px}
.blob-frame{border-radius:58% 42% 50% 50% / 45% 55% 45% 55%;overflow:hidden;box-shadow:var(--shadow);animation:morph 12s ease-in-out infinite;aspect-ratio:1/1;border:10px solid #fff}
.blob-frame img{width:100%;height:100%;object-fit:cover}
.about-mini{position:absolute;width:40%;bottom:-20px;right:-10px;border-radius:20px;border:8px solid #fff;box-shadow:var(--shadow);aspect-ratio:3/4;object-fit:cover;object-position:top;transform:rotate(6deg);animation:floaty 6s ease-in-out infinite}
.sticker{position:absolute;top:0;left:0;width:110px;height:110px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-content:center;text-align:center;font-family:var(--font-h);line-height:1;font-size:15px;box-shadow:var(--shadow);animation:spin 18s linear infinite;border:4px dashed #fff}
.sticker b{font-size:20px}
.big-quote{font-family:var(--font-h);font-size:clamp(19px,2vw,23px);font-weight:600;color:var(--purple-d);margin:22px 0;padding:22px 26px;background:#fff;border-radius:22px;border-left:8px solid var(--pink);box-shadow:var(--shadow);line-height:1.45}
.about-text>p:last-child{font-size:18px;color:var(--muted)}

.stairs-wrap{margin-top:90px;text-align:center}
.stairs-title{font-family:var(--font-h);font-size:clamp(24px,3vw,36px);color:var(--navy);line-height:1.1;margin-bottom:34px}
.stairs-title span{color:var(--green);display:block}
.stairs{display:flex;align-items:flex-end;justify-content:center;gap:10px;height:300px;max-width:820px;margin:0 auto}
.step{flex:1;height:calc(20% + var(--i)*20%);background:linear-gradient(180deg,#F4D9A8,#DDB77A);border-radius:14px 14px 6px 6px;position:relative;box-shadow:inset 0 -8px 0 rgba(0,0,0,.08),0 12px 20px -12px rgba(0,0,0,.3);transform:scaleY(0);transform-origin:bottom;transition:transform .7s cubic-bezier(.3,1.5,.5,1);transition-delay:calc(var(--i)*.18s)}
.stairs.in .step{transform:scaleY(1)}
.step span{position:absolute;top:-44px;left:50%;transform:translateX(-50%) rotate(-8deg);font-family:'Caveat',cursive;font-size:clamp(20px,3vw,34px);color:var(--green);white-space:nowrap;opacity:0;transition:opacity .4s;transition-delay:calc(var(--i)*.18s + .6s)}
.stairs.in .step span{opacity:1}
.flag{position:absolute;top:-96px;right:10%;font-style:normal;font-size:40px;opacity:0;transition:opacity .4s 1.6s}
.stairs.in .flag{opacity:1;animation:wave-flag 1.4s ease-in-out infinite 2s}

/* ---------- Counters ---------- */
.counters{padding:60px 0;background:linear-gradient(135deg,var(--purple),var(--pink));color:#fff;overflow:hidden}
.counters::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 20%,rgba(255,255,255,.15) 0 60px,transparent 61px),radial-gradient(circle at 90% 80%,rgba(255,255,255,.12) 0 90px,transparent 91px)}
.count{text-align:center;position:relative}
.count b{font-family:var(--font-h);font-size:clamp(46px,6vw,72px);line-height:1;display:block;text-shadow:0 6px 0 rgba(0,0,0,.12)}
.count span{font-weight:800;font-size:18px;line-height:1.2;display:block;margin-top:4px}
.count small{font-weight:600;opacity:.85;font-size:14px}

/* ---------- Programs ---------- */
.programs{padding:100px 0}
.prog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.prog{background:#fff;border-radius:var(--radius);padding:26px 22px;position:relative;overflow:hidden;box-shadow:var(--shadow);transition:transform .35s,background .35s,color .35s;isolation:isolate}
.prog::before{content:"";position:absolute;width:160px;height:160px;border-radius:50%;background:var(--c);opacity:.14;top:-60px;right:-60px;transition:transform .5s;z-index:-1}
.prog:hover{transform:translateY(-8px)}
.prog:hover::before{transform:scale(6);opacity:1}
.prog:hover h3,.prog:hover p{color:#fff}
.p-ico{font-size:40px;margin-bottom:10px;display:inline-block;transition:transform .5s}
.prog:hover .p-ico{transform:scale(1.2) rotate(-10deg)}
.prog h3{font-family:var(--font-h);font-size:22px;color:var(--navy);line-height:1.1;margin-bottom:6px;transition:color .3s}
.prog p{color:var(--muted);font-size:15px;transition:color .3s}

.etut{margin-top:56px;background:linear-gradient(120deg,#22C7D6,#4D7CFE);border-radius:32px;padding:44px;color:#fff;display:grid;grid-template-columns:1.5fr 1fr;gap:30px;align-items:center;box-shadow:0 30px 60px -30px rgba(34,100,214,.6);overflow:hidden;position:relative}
.etut h3{font-family:var(--font-h);font-size:clamp(28px,3.4vw,40px);line-height:1.1;margin-bottom:18px}
.etut-list{list-style:none;display:grid;gap:10px;margin-bottom:24px}
.etut-list li{background:rgba(255,255,255,.18);padding:10px 16px;border-radius:16px;font-weight:700;display:flex;gap:12px;align-items:center;backdrop-filter:blur(4px)}
.etut-list span{font-size:24px}
.etut-art{font-size:clamp(60px,9vw,110px);text-align:center;line-height:1.2;animation:floaty 5s ease-in-out infinite}

/* ---------- Highlights ---------- */
.highlights{padding:40px 0 100px}
.hl-row{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;margin-bottom:90px}
.hl-row.rev .hl-img{order:2}
.hl-img{position:relative}
.hl-img::before{content:"";position:absolute;inset:-18px 18px 18px -18px;border-radius:32px;background:repeating-linear-gradient(45deg,var(--yellow) 0 12px,transparent 12px 24px);opacity:.5;z-index:-1}
.hl-row.rev .hl-img::before{inset:-18px -18px 18px 18px;background:repeating-linear-gradient(-45deg,var(--turq) 0 12px,transparent 12px 24px)}
.hl-img img{border-radius:28px;box-shadow:var(--shadow);cursor:zoom-in;transition:transform .5s;max-height:620px;width:100%;object-fit:cover;object-position:top}
.hl-img:hover img{transform:rotate(-1.5deg) scale(1.02)}
.hl-text h3{font-family:var(--font-h);font-size:clamp(28px,3.4vw,42px);line-height:1.1;color:var(--navy);margin-bottom:16px}
.hl-text em{color:var(--pink);font-style:normal}
.hl-text p{font-size:18px;color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.tags span{background:var(--c);color:#fff;font-family:var(--font-h);font-weight:700;padding:6px 18px;border-radius:12px;transform:rotate(-2deg);box-shadow:0 4px 0 rgba(0,0,0,.12)}
.tags span:nth-child(even){transform:rotate(2deg)}

/* ---------- Day scroller ---------- */
.day{padding:100px 0 80px;background:#fff;overflow:hidden}
.day::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(123,44,191,.1) 2px,transparent 2px);background-size:26px 26px;pointer-events:none}
.day-scroller{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:20px max(16px,calc((100vw - 1200px)/2)) 40px;scrollbar-width:none;cursor:grab;position:relative}
.day-scroller::-webkit-scrollbar{display:none}
.day-scroller.drag{cursor:grabbing;scroll-snap-type:none}
.day-card{flex:0 0 clamp(220px,24vw,290px);scroll-snap-align:center;background:#fff;padding:10px 10px 0;border-radius:22px;box-shadow:var(--shadow);transition:transform .35s;transform:rotate(var(--rot,0deg))}
.day-card:nth-child(odd){--rot:-2deg}.day-card:nth-child(even){--rot:2deg}
.day-card:hover{transform:rotate(0) translateY(-10px) scale(1.03)}
.day-card img{width:100%;aspect-ratio:9/15;object-fit:cover;border-radius:16px;pointer-events:none;user-select:none}
.day-card figcaption{font-family:var(--font-h);font-weight:700;padding:12px 6px 14px;color:var(--navy);font-size:17px;line-height:1.2}
.day-nav{display:flex;justify-content:center;gap:14px}
.round-btn{width:56px;height:56px;border-radius:50%;background:var(--purple);color:#fff;font-size:24px;box-shadow:0 6px 0 var(--purple-d);transition:transform .2s}
.round-btn:hover{transform:translateY(-3px)}
.round-btn:active{transform:translateY(3px);box-shadow:0 2px 0 var(--purple-d)}

/* ---------- Gallery ---------- */
.gallery{padding:100px 0}
.filters{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:34px}
.filter{padding:10px 22px;border-radius:999px;background:#fff;font-weight:800;box-shadow:var(--shadow);transition:.25s;color:var(--navy)}
.filter.active,.filter:hover{background:var(--purple);color:#fff;transform:translateY(-2px)}
.masonry{columns:4 240px;column-gap:18px}
.g-item{display:block;margin-bottom:18px;break-inside:avoid;border-radius:20px;overflow:hidden;position:relative;box-shadow:var(--shadow);transition:transform .4s,opacity .4s}
.g-item img{width:100%;transition:transform .6s}
.g-item::after{content:"🔍";position:absolute;inset:0;display:grid;place-items:center;font-size:36px;background:rgba(123,44,191,.45);opacity:0;transition:opacity .3s}
.g-item:hover img{transform:scale(1.07)}
.g-item:hover::after{opacity:1}
.g-item.hide{display:none}

/* ---------- Videos ---------- */
.videos{padding:110px 0;background:linear-gradient(160deg,var(--navy),#3D2A7A 60%,var(--purple-d));color:#fff;overflow:hidden}
.videos::before{content:"";position:absolute;inset:0;background-image:radial-gradient(#fff 1px,transparent 1.5px);background-size:60px 60px;opacity:.15}
.video-feature{position:relative;max-width:900px;margin:0 auto 60px;border-radius:28px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.7);border:6px solid rgba(255,255,255,.15)}
.video-feature video{width:100%;aspect-ratio:16/9;background:#000;object-fit:cover}
.vf-text{padding:18px 24px;background:rgba(255,255,255,.08)}
.vf-text h3{font-family:var(--font-h);font-size:24px}
.phones{display:flex;justify-content:center;gap:34px;flex-wrap:wrap}
.phone{width:260px;text-align:center}
.phone video{width:100%;aspect-ratio:9/16;object-fit:cover;background:#000;border-radius:34px;border:10px solid #111;box-shadow:0 0 0 2px #444,0 30px 60px -20px rgba(0,0,0,.8);transition:transform .4s}
.phone:hover video{transform:translateY(-8px) rotate(-1deg)}
.phone span{display:block;margin-top:14px;font-family:var(--font-h);font-weight:700;font-size:19px}

/* ---------- Guide ---------- */
.guide{padding:100px 0}
.flip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.flip{perspective:1200px;height:320px;outline:none}
.flip-inner{position:relative;width:100%;height:100%;transition:transform .8s cubic-bezier(.3,1.3,.5,1);transform-style:preserve-3d}
.flip:hover .flip-inner,.flip:focus .flip-inner,.flip.flipped .flip-inner{transform:rotateY(180deg)}
.flip-front,.flip-back{position:absolute;inset:0;border-radius:28px;backface-visibility:hidden;-webkit-backface-visibility:hidden;padding:30px;box-shadow:var(--shadow)}
.flip-front{background:var(--c);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.flip-front b{font-family:var(--font-h);font-size:90px;line-height:.8;opacity:.35}
.flip-front h3{font-family:var(--font-h);font-size:30px;line-height:1.05}
.flip-front small{font-weight:800;opacity:.85;font-size:14px;display:inline-flex;gap:6px;align-items:center;margin-top:8px}
.flip-front small::after{content:"↻";font-size:18px;display:inline-block;animation:spin 2.5s linear infinite}
.flip-front::before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.12);right:-60px;bottom:-70px}
.flip-front .emoji{position:absolute;right:22px;top:22px;font-size:56px;animation:floaty 4s ease-in-out infinite}
.flip-back{background:#fff;transform:rotateY(180deg);display:flex;align-items:center;border:4px dashed #F0D6E4}
.flip-back ul{list-style:none;display:grid;gap:16px}
.flip-back li{font-weight:700;font-size:17px;padding-left:30px;position:relative;color:var(--navy)}
.flip-back li::before{content:"✿";position:absolute;left:0;color:var(--pink);font-size:20px;top:-2px}

/* ---------- Signup ---------- */
.signup{padding:110px 0;background:radial-gradient(circle at 18% 22%,#FF8A1F 0 190px,transparent 191px),radial-gradient(circle at 96% 96%,rgba(255,201,60,.9) 0 120px,transparent 121px),linear-gradient(160deg,#1D3FA8,#2A4FCC);overflow:hidden;color:#fff}
.stars-bg{position:absolute;inset:0;background-image:radial-gradient(#fff 1.2px,transparent 1.6px),radial-gradient(#fff 1px,transparent 1.4px);background-size:90px 90px,140px 140px;background-position:0 0,40px 60px;opacity:.35;animation:twinkleBg 4s ease-in-out infinite}
.signup-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;position:relative}
.rocket{font-size:clamp(90px,14vw,170px);animation:rocket 3s ease-in-out infinite;display:inline-block;filter:drop-shadow(0 20px 20px rgba(0,0,0,.3))}
.rocket-side h2{font-family:var(--font-h);font-size:clamp(30px,4vw,48px);line-height:1.05;margin:10px 0 18px;text-shadow:0 4px 0 rgba(0,0,0,.15)}
.rocket-side h2 span{color:var(--yellow);text-shadow:0 3px 0 rgba(0,0,0,.25)}
.season{display:inline-block;background:#fff;color:#1D3FA8;font-weight:800;padding:10px 20px;border-radius:16px;box-shadow:0 6px 0 rgba(0,0,0,.15)}
.form{background:#fff;color:var(--text);border-radius:30px;padding:34px;box-shadow:0 40px 80px -30px rgba(0,0,0,.6);display:grid;gap:14px}
.form h3{font-family:var(--font-h);font-size:30px;color:var(--navy);line-height:1}
.form-note{color:var(--muted);font-size:15px;margin-top:-6px}
.form label{display:grid;gap:6px;font-weight:800;font-size:14px;color:var(--navy)}
.form input,.form select,.form textarea{font:inherit;font-weight:600;padding:13px 16px;border-radius:14px;border:2px solid #ECE6F5;background:#FBF9FE;transition:border-color .2s,box-shadow .2s;width:100%;color:var(--text)}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 4px rgba(123,44,191,.15)}
.form .invalid{border-color:var(--pink);animation:shake .4s}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0;pointer-events:none}
.form-ok{background:#E3F7EC;color:#157347;font-weight:800;padding:12px 16px;border-radius:14px;animation:dropIn .6s both}
.form-err{color:var(--pink);font-weight:700;min-height:1em;font-size:14px}

/* ---------- Contact ---------- */
.contact{padding:100px 0 140px}
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:44px;align-items:stretch}
.contact-cards .title{margin-bottom:24px}
.c-card{display:flex;gap:16px;align-items:center;background:#fff;padding:16px 18px;border-radius:20px;box-shadow:var(--shadow);margin-bottom:14px;transition:transform .25s}
.c-card:hover{transform:translateX(8px)}
.c-ico{flex:0 0 54px;height:54px;border-radius:16px;display:grid;place-items:center;font-size:26px;background:color-mix(in srgb,var(--c) 18%,#fff)}
.c-card small{display:block;color:var(--muted);font-weight:700;font-size:13px}
.c-card b{color:var(--navy);font-size:17px;line-height:1.25;word-break:break-word}
.map{border-radius:30px;overflow:hidden;box-shadow:var(--shadow);border:8px solid #fff;min-height:420px}
.map iframe{width:100%;height:100%;min-height:420px;border:0;display:block}

/* ---------- Footer ---------- */
.footer{background:var(--navy);color:#D8D2EE;padding:60px 0 24px;position:relative}
.footer .wave.top{position:absolute;top:-1px;left:0;width:100%;height:80px;fill:var(--cream);transform:none;bottom:auto}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-top:40px}
.footer h4{font-family:var(--font-h);color:#fff;font-size:20px;margin-bottom:12px}
.footer a:not(.logo),.footer span{display:block;margin-bottom:6px;transition:color .2s}
.footer a:not(.logo):hover{color:var(--yellow)}
.footer p{margin-top:14px}
.footer .copy span{display:inline;margin:0}
.copy{text-align:center;border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:20px;font-size:14px;opacity:.8}

/* ---------- FABs ---------- */
.fab{position:fixed;right:18px;z-index:90;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;box-shadow:0 10px 25px -8px rgba(0,0,0,.4);transition:transform .25s,opacity .3s;font-size:26px}
.fab:hover{transform:scale(1.1)}
.fab.wa{bottom:20px;background:#25D366;animation:ring 2.5s infinite}
.fab.wa svg{width:34px;height:34px}
.fab.call{bottom:92px;background:var(--pink);color:#fff;animation:wiggle 3s ease-in-out infinite}
@keyframes wiggle{0%,86%,100%{transform:rotate(0)}88%{transform:rotate(-14deg)}92%{transform:rotate(14deg)}96%{transform:rotate(-8deg)}}
.fab.up{bottom:164px;background:#fff;color:var(--purple);font-weight:800;opacity:0;pointer-events:none;width:48px;height:48px;right:24px;font-size:22px}
.fab.up.show{opacity:1;pointer-events:auto}

/* ---------- Lightbox ---------- */
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(20,14,40,.92);display:grid;place-items:center;opacity:0;visibility:hidden;transition:.3s;padding:20px}
.lightbox.open{opacity:1;visibility:visible}
.lightbox img{max-height:88vh;max-width:min(92vw,1000px);border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.6);transform:scale(.9);transition:transform .35s cubic-bezier(.3,1.4,.5,1)}
.lightbox.open img{transform:scale(1)}
.lb-close,.lb-prev,.lb-next{position:absolute;color:#fff;font-size:44px;width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.12);display:grid;place-items:center;line-height:1}
.lb-close{top:16px;right:16px}.lb-prev{left:16px;top:50%;transform:translateY(-50%)}.lb-next{right:16px;top:50%;transform:translateY(-50%)}
.lb-close:hover,.lb-prev:hover,.lb-next:hover{background:var(--pink)}

#confetti{position:fixed;inset:0;pointer-events:none;z-index:300;width:100%;height:100%}

/* ---------- Eklemeler ---------- */
.nw{white-space:nowrap}
.minis{display:flex;gap:14px;margin-top:26px}
.minis figure{flex:1;background:#fff;padding:6px 6px 0;border-radius:16px;box-shadow:var(--shadow);transform:rotate(var(--r,-3deg));transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
.minis figure:nth-child(2){--r:2deg;margin-top:14px}
.minis figure:nth-child(3){--r:-1deg}
.minis figure:hover{transform:rotate(0) scale(1.08);z-index:2}
.minis img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:11px;cursor:zoom-in}
.minis figcaption{font-family:'Caveat',cursive;font-size:22px;text-align:center;color:var(--purple);padding:2px 0 4px}
.in .minis figure{animation:dropIn .7s cubic-bezier(.3,1.5,.5,1) both}
.in .minis figure:nth-child(2){animation-delay:.12s}.in .minis figure:nth-child(3){animation-delay:.24s}

.day-card{position:relative}
.day-card img{aspect-ratio:3/4}
.day-no{position:absolute;top:-10px;left:-10px;width:40px;height:40px;border-radius:50%;background:var(--orange);color:#fff;font-family:var(--font-h);font-weight:800;display:grid;place-items:center;box-shadow:0 4px 0 rgba(0,0,0,.15);z-index:2;font-size:17px}
.day-card:nth-child(3n+2) .day-no{background:var(--pink)}.day-card:nth-child(3n) .day-no{background:var(--turq)}
.day-nav{align-items:center}
.day-progress{flex:0 1 320px;height:10px;border-radius:10px;background:#EFE7F8;overflow:hidden}
.day-progress span{display:block;height:100%;width:10%;border-radius:10px;background:linear-gradient(90deg,var(--orange),var(--pink),var(--purple));transition:width .2s}

.balloons{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.balloons i{position:absolute;bottom:-160px;left:var(--x);width:54px;height:66px;border-radius:50% 50% 48% 48%;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.7) 0 8%,transparent 9%),var(--c);opacity:.85;animation:rise 16s linear infinite;animation-delay:var(--d)}
.balloons i::after{content:"";position:absolute;top:100%;left:50%;width:2px;height:70px;background:rgba(0,0,0,.18);transform-origin:top;animation:string 2s ease-in-out infinite}

.vbanner{position:relative;min-height:440px;display:flex;align-items:center;overflow:hidden;color:#fff;background:var(--navy)}
.vb-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vb-shade{position:absolute;inset:0;background:linear-gradient(100deg,rgba(90,24,154,.92) 0%,rgba(232,62,140,.75) 55%,rgba(255,122,0,.35) 100%)}
.bunting{position:absolute;top:0;left:0;width:100%;height:90px;z-index:1}
.bunting .flags path{transform-box:fill-box;transform-origin:top center;animation:flagSwing 2.4s ease-in-out infinite}
.vb-inner{position:relative;z-index:2;display:grid;grid-template-columns:auto 1fr auto;gap:30px;align-items:center;padding:90px 0 60px}
.vb-inner h2{font-family:var(--font-h);font-size:clamp(32px,4.4vw,54px);line-height:1;text-shadow:0 4px 0 rgba(0,0,0,.15)}
.vb-inner h2 span{color:var(--yellow);display:block}
.vb-inner p{font-size:19px;font-weight:700;margin-top:12px;max-width:560px;opacity:.95}
.megaphone{font-size:clamp(80px,10vw,130px);animation:shout 1.6s ease-in-out infinite;transform-origin:70% 60%;filter:drop-shadow(0 12px 16px rgba(0,0,0,.3))}

.more-wrap{text-align:center;margin-top:20px}
.g-item.more-hidden{display:none}
.masonry.expanded .g-item.more-hidden:not(.hide){display:block;animation:dropIn .6s both}

.tilt{transform-style:preserve-3d}
.tilt.settled{transition:transform .18s ease-out,box-shadow .3s,background .35s}
.spark{position:fixed;pointer-events:none;z-index:250;font-size:14px;animation:sparkFade .9s ease-out forwards}

/* ---------- Reveal ---------- */
.reveal,.reveal-left,.reveal-right{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.2,.8,.2,1)}
.reveal{transform:translateY(50px)}
.reveal-left{transform:translateX(-60px)}
.reveal-right{transform:translateX(60px)}
.reveal.in,.reveal-left.in,.reveal-right.in{opacity:1;transform:none}
.no-js .reveal,.no-js .reveal-left,.no-js .reveal-right{opacity:1;transform:none}

/* ---------- Keyframes ---------- */
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes pulse{50%{transform:scale(1.07)}}
@keyframes hop{0%,100%{transform:translateY(0)}40%{transform:translateY(-22px)}}
@keyframes drift{from{transform:translateX(0)}to{transform:translateX(calc(100vw + 300px))}}
@keyframes fly{0%{transform:translate(-30vw,40px) rotate(8deg)}50%{transform:translate(10vw,-30px) rotate(-6deg)}100%{transform:translate(-30vw,40px) rotate(8deg)}}
@keyframes twinkle{50%{transform:scale(.6) rotate(20deg);opacity:.5}}
@keyframes floaty{50%{transform:translateY(-12px)}}
@keyframes ping{80%,100%{box-shadow:0 0 0 12px rgba(232,62,140,0)}}
@keyframes letterIn{from{opacity:0;transform:translateY(-120px) rotate(-20deg) scale(.5)}}
@keyframes jelly{30%{transform:scale(1.25,.75)}45%{transform:scale(.8,1.2)}60%{transform:scale(1.1,.9)}75%{transform:scale(.95,1.05)}}
@keyframes grow{from{transform:scaleX(0)}}
@keyframes kenburns{from{transform:scale(1.18)}to{transform:scale(1)}}
@keyframes marquee{to{transform:translateX(-50%)}}
@keyframes morph{50%{border-radius:42% 58% 45% 55% / 55% 45% 55% 45%}}
@keyframes wave-flag{50%{transform:rotate(-10deg)}}
@keyframes rocket{0%,100%{transform:translate(0,0) rotate(0)}25%{transform:translate(6px,-18px) rotate(3deg)}75%{transform:translate(-6px,-8px) rotate(-3deg)}}
@keyframes twinkleBg{50%{opacity:.15}}
@keyframes shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
@keyframes ring{0%,100%{box-shadow:0 0 0 0 rgba(37,211,102,.55),0 10px 25px -8px rgba(0,0,0,.4)}70%{box-shadow:0 0 0 18px rgba(37,211,102,0),0 10px 25px -8px rgba(0,0,0,.4)}}

@keyframes dropIn{from{opacity:0;transform:translateY(-40px) rotate(-10deg) scale(.8)}}
@keyframes rise{0%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-60vh) rotate(4deg) translateX(20px)}100%{transform:translateY(-130vh) rotate(-4deg)}}
@keyframes string{50%{transform:rotate(8deg)}}
@keyframes flagSwing{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}
@keyframes shout{0%,100%{transform:rotate(-8deg) scale(1)}20%{transform:rotate(6deg) scale(1.12)}40%{transform:rotate(-4deg) scale(1.02)}}
@keyframes sparkFade{to{opacity:0;transform:translateY(24px) scale(.3) rotate(90deg)}}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  .menu a{padding:8px 8px;font-size:14px}
}
@media (max-width:980px){
  .burger{display:block;z-index:2}
  .menu{position:fixed;inset:0;background:linear-gradient(160deg,var(--purple),var(--pink));flex-direction:column;justify-content:center;gap:10px;transform:translateY(-100%);transition:transform .5s cubic-bezier(.7,0,.2,1)}
  .menu.open{transform:none}
  .menu a{color:#fff;font-size:24px;font-family:var(--font-h)}
  .menu a:not(.btn):hover{background:rgba(255,255,255,.15);color:#fff}
  .menu .btn{background:#fff;color:var(--pink)!important;margin-top:10px}
  .hero-inner,.about-grid,.hl-row,.signup-grid,.contact-grid,.etut{grid-template-columns:1fr}
  .hero{padding-top:110px}
  .hero-visual{height:440px;max-width:480px;margin:0 auto;width:100%}
  .hero-text{text-align:center}
  .hero-title{align-items:center}
  .ht-small.alt{align-self:center;margin-left:40%}
  .hero-cta,.hero-chips{justify-content:center}
  .hero-lead{margin-inline:auto}
  .grid-4,.prog-grid{grid-template-columns:repeat(2,1fr)}
  .hl-row.rev .hl-img{order:0}
  .hl-row{gap:40px;margin-bottom:70px}
  .flip-grid{grid-template-columns:1fr;max-width:460px;margin:0 auto}
  .etut-art{display:none}
  .vb-inner{grid-template-columns:1fr;text-align:center;justify-items:center}
  .vb-inner p{margin-inline:auto}
  .foot-grid{grid-template-columns:1fr 1fr}
  .foot-grid>div:first-child{grid-column:1/-1}
  .about-img{max-width:480px;margin:0 auto}
  .sun{width:70px;height:70px;top:88px}
}
@media (max-width:600px){
  .grid-4,.prog-grid{grid-template-columns:1fr 1fr;gap:12px}
  .feat{padding:20px 14px}.feat h3{font-size:17px}.feat p{font-size:13px}
  .feat-ico{width:64px;height:64px;font-size:34px}
  .prog{padding:18px 14px}.prog h3{font-size:18px}.prog p{font-size:13px}
  .hero-visual{height:360px;min-height:0}
  .bubble{font-size:13px;padding:8px 12px}
  .b1{left:0}.b2{right:0}
  .etut{padding:28px 20px}
  .form{padding:24px 18px}
  .row2{grid-template-columns:1fr}
  .stairs{height:200px;gap:6px}
  .stairs-title{margin-bottom:84px}
  .badge-live{font-size:12px;padding:7px 12px}
  .step span{font-size:18px;top:-34px}
  .flag{top:-70px;font-size:30px}
  .foot-grid{grid-template-columns:1fr}
  .marquee-track{font-size:16px}
  .phone{width:78%}
  .minis{gap:8px}
  .masonry{columns:2;column-gap:10px}
  .signup{background:radial-gradient(circle at 24% 150px,#FF8A1F 0 105px,transparent 106px),radial-gradient(circle at 100% 100%,rgba(255,201,60,.9) 0 90px,transparent 91px),linear-gradient(160deg,#1D3FA8,#2A4FCC)}
  .rocket-side{text-align:left}
  .g-item{margin-bottom:10px;border-radius:14px}
  .b2{bottom:-4%}
  .minis figcaption{font-size:17px}
  .balloons i{width:38px;height:46px}
  .vbanner{min-height:0}
  .vb-inner{padding:80px 0 50px;gap:16px}
  .vb-inner p{font-size:16px}
  .day-no{left:-4px}
  .counters .grid-4{gap:26px 10px}
  .btn-lg{padding:13px 22px;font-size:17px}
  .map,.map iframe{min-height:320px}
  .contact{padding-bottom:110px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
