/* ===== Masal ===== */
.t-masal{--bg:#fbf4ec;--paper:#fff;--ink:#4a3b35;--muted:#8d7b72;--accent:#df7487;--line:rgba(223,116,135,.28);
  --f-name:'Fraunces',Georgia,serif;--f-head:'Fraunces',Georgia,serif;--f-body:'Nunito',system-ui,sans-serif;font-weight:400}
.t-masal .names{font-weight:500;letter-spacing:-.01em}
.t-masal .names i{font-family:'Fraunces',serif}

.ms-scene{position:absolute;inset:0;overflow:hidden;background:linear-gradient(#ffd8c4 0%,#fde8d9 38%,#eef3f5 70%,#eef3f5 100%)}
.ms-sun{position:absolute;top:3%;right:7%;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,#fff3c9 0 45%,#ffe08f 46% 60%,rgba(255,224,143,0) 61%);box-shadow:0 0 80px 30px rgba(255,214,150,.55);animation:ms-sun 6s ease-in-out infinite}
@keyframes ms-sun{50%{transform:scale(1.06)}}
.ms-cloud{position:absolute;width:86px;height:26px;background:#fff;border-radius:20px;opacity:.9;animation:ms-drift 26s linear infinite}
.ms-cloud::before,.ms-cloud::after{content:"";position:absolute;background:#fff;border-radius:50%}
.ms-cloud::before{width:40px;height:40px;left:14px;top:-20px}
.ms-cloud::after{width:30px;height:30px;left:44px;top:-13px}
.ms-cloud.c1{top:24%;left:-20%}
.ms-cloud.c2{top:15%;left:30%;transform:scale(.7);animation-duration:34s;animation-delay:-12s}
.ms-cloud.c3{top:33%;left:60%;transform:scale(.55);animation-duration:40s;animation-delay:-20s;opacity:.7}
@keyframes ms-drift{from{translate:-40vw 0}to{translate:120vw 0}}

.ms-text{position:absolute;left:0;right:0;top:11%;text-align:center;padding:0 24px;z-index:3}
.ms-once{font-family:'Fraunces',serif;font-style:italic;font-size:1.25rem;color:#8a6a62;animation:rise 1.2s .3s both}
.ms-names{opacity:0;transform:translateY(14px) scale(.96);transition:1s cubic-bezier(.2,.8,.2,1) .5s}
.ms-met .ms-names{opacity:1;transform:none}
.ms-names .names{font-size:clamp(3rem,14vw,4.4rem);color:#4a3b35;margin-top:14px}
.ms-names .cover-date{color:#8a6a62;margin-top:12px}
.ms-btn{position:absolute;left:50%;bottom:4.5%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:5;background:#fff;border-color:#fff;color:var(--ink);transition:opacity .8s 1.3s,transform .8s 1.3s;box-shadow:0 10px 30px -10px rgba(120,60,50,.4)}
.ms-met .ms-btn{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.ms-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}

.ms-hills{position:absolute;left:0;right:0;bottom:0;width:100%;height:40%;z-index:1}
.ms-ground{position:absolute;left:50%;bottom:13%;width:220px;height:240px;margin-left:-110px;z-index:2}
.ms-arch{position:absolute;left:10px;bottom:0;width:200px;height:220px}
.ms-arch .vine{stroke-dasharray:520;stroke-dashoffset:520;animation:ms-draw 1.8s .3s ease forwards}
@keyframes ms-draw{to{stroke-dashoffset:0}}
.ms-arch .fl{transform:scale(0);animation:ms-pop .5s cubic-bezier(.3,1.6,.5,1) forwards}
@keyframes ms-pop{to{transform:scale(1)}}

.ms-walk{position:absolute;bottom:-2px;width:62px;height:124px}
.ms-walk .ch{width:100%;height:100%;overflow:visible;animation:ms-bob .42s ease-in-out infinite alternate}
.ms-g{left:44px;animation:ms-in-l 3.5s cubic-bezier(.3,.1,.4,1) both}
.ms-b{left:112px;animation:ms-in-r 3.5s cubic-bezier(.3,.1,.4,1) both}
@keyframes ms-in-l{from{transform:translateX(-62vw)}}
@keyframes ms-in-r{from{transform:translateX(62vw)}}
@keyframes ms-bob{to{transform:translateY(-3px)}}
.ch .leg,.ch .arm{transform-box:fill-box;transform-origin:50% 0}
.ms-walk .leg.l,.ms-walk .arm.r{animation:ms-swing .42s ease-in-out infinite alternate}
.ms-walk .leg.r,.ms-walk .arm.l{animation:ms-swing .42s ease-in-out infinite alternate-reverse}
@keyframes ms-swing{from{transform:rotate(-16deg)}to{transform:rotate(16deg)}}
.ms-met .ms-walk .ch,.ms-met .ms-walk .leg,.ms-met .ms-walk .arm{animation:none}
.ms-met .ms-g .arm.r{transform:rotate(-38deg);transition:transform .5s}
.ms-met .ms-b .arm.l{transform:rotate(38deg);transition:transform .5s}
.ms-heart{position:absolute;left:50%;bottom:132px;width:34px;height:34px;margin-left:-17px;opacity:0;transform:scale(0)}
.ms-met .ms-heart{animation:ms-heart 2.4s .2s ease-out forwards}
@keyframes ms-heart{0%{opacity:0;transform:scale(0)}25%{opacity:1;transform:scale(1.25)}40%{transform:scale(1)}100%{opacity:1;transform:translateY(-10px) scale(1.05)}}
.ms-hop .ms-walk{animation:ms-hop .5s ease-out 2 alternate}
@keyframes ms-hop{to{transform:translateY(-22px)}}

.ms-birds{position:absolute;top:30%;left:0;z-index:2;opacity:0}
.ms-birds svg{width:22px;height:10px;display:inline-block;margin:0 6px}
.ms-birds svg:nth-child(2){transform:translateY(-12px) scale(.8)}
.ms-birds svg:nth-child(3){transform:translateY(6px) scale(.7)}
.ms-met .ms-birds{animation:ms-fly 7s linear forwards}
@keyframes ms-fly{0%{opacity:1;transform:translate(-20vw,0)}100%{opacity:1;transform:translate(120vw,-60px)}}

.ms-petals{position:absolute;inset:0;z-index:6;pointer-events:none}
.ms-petals i{position:absolute;top:-20px;width:10px;height:14px;border-radius:60% 0 60% 0;animation:ms-fall 2s ease-in forwards}
@keyframes ms-fall{to{transform:translateY(105vh) rotate(540deg)}}

/* ===== Masal: iç sayfalar (masal kitabı) ===== */
.t-masal{background:linear-gradient(#ffd8c4 0%,#fde8d9 30%,#eef3f5 70%,#dcefd4 100%) fixed}
.mc-sky{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.mc-sky::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:
  radial-gradient(120% 100% at 20% 100%,#b5d6a7 60%,transparent 61%),radial-gradient(120% 100% at 85% 100%,#93c487 55%,transparent 56%)}
.mc-book{position:relative;z-index:1;max-width:460px;margin:0 auto;padding:34px 18px 150px;display:grid;gap:26px}
.mc-page{position:relative;background:#fffaf3;border-radius:6px 22px 22px 6px;padding:44px 26px 38px 34px;text-align:center;
  box-shadow:inset 14px 0 18px -14px rgba(120,80,60,.35),0 24px 40px -28px rgba(120,70,50,.55);
  background-image:linear-gradient(90deg,rgba(0,0,0,.035) 0 2px,transparent 2px),radial-gradient(rgba(223,116,135,.06) 1px,transparent 1.5px);background-size:auto,16px 16px}
.mc-page::before{content:"";position:absolute;left:8px;top:14px;bottom:14px;border-left:1px dashed rgba(223,116,135,.35)}
.mc-page::after{content:"";position:absolute;top:-6px;right:28px;width:16px;height:50px;background:#df7487;clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%)}
.mc-page:nth-child(2)::after{background:#93c487}
.mc-page:nth-child(3)::after{background:#f3c969}
.mc-page:nth-child(4)::after{background:#8fb7e0}
.mc-ch{font-family:'Fraunces',serif;font-style:italic;font-size:.95rem;color:#c06a7a}
.mc-t{font-family:'Fraunces',serif;font-weight:500;font-size:1.9rem;line-height:1.15;margin:4px 0 20px;color:#4a3b35}
.mc-pair{display:flex;justify-content:center;align-items:flex-end;gap:4px;margin-bottom:6px}
.mc-pair span{width:46px;height:92px;display:block}
.mc-pair .ch{width:100%;height:100%;overflow:visible;animation:ms-bob 1.4s ease-in-out infinite alternate}
.mc-pair span:last-child .ch{animation-delay:-.7s}
.mc-pair .h{width:22px;height:22px;align-self:center;animation:ms-beat 1.2s ease-in-out infinite}
@keyframes ms-beat{50%{transform:scale(1.25)}}
.mc-names{font-size:clamp(2.4rem,11vw,3rem)!important;margin:6px 0 18px}
.mc-text{font-family:'Fraunces',serif;font-size:1.15rem;line-height:1.65;text-align:left}
.mc-drop{float:left;font-size:3.6rem;line-height:.85;margin:6px 8px 0 0;color:#df7487;font-weight:500}
.mc-fam-t{clear:both;margin-top:24px;font-style:italic;color:var(--muted);font-family:'Fraunces',serif}
.mc-fam{list-style:none;margin-top:8px;display:grid;gap:4px;font-weight:600}
.mc-fam li::before{content:"❀ ";color:#df7487}
.mc-cal{width:190px;margin:0 auto;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 14px 28px -18px rgba(120,70,50,.6);transform:rotate(-3deg)}
.mc-cal-top{background:#df7487;color:#fff;font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;padding:10px;position:relative}
.mc-cal-top::before,.mc-cal-top::after{content:"";position:absolute;top:-6px;width:10px;height:18px;border-radius:6px;background:#8d7b72}
.mc-cal-top::before{left:44px}.mc-cal-top::after{right:44px}
.mc-cal b{display:block;font-family:'Fraunces',serif;font-weight:500;font-size:5rem;line-height:1.1;color:#4a3b35}
.mc-cal span{display:block;padding:0 0 14px;color:var(--muted);font-size:.9rem}
.mc-small{color:var(--muted);margin:26px 0 4px;font-style:italic;font-family:'Fraunces',serif}
.mc-count{margin:12px auto 24px}
.mc-count div{border:0;border-radius:50% 50% 46% 46%;background:#fff;box-shadow:0 8px 16px -10px rgba(120,70,50,.5);padding:14px 0}
.mc-count div:nth-child(1){background:#ffe3e8}.mc-count div:nth-child(2){background:#e6f3e0}.mc-count div:nth-child(3){background:#fff3d6}.mc-count div:nth-child(4){background:#e3eef9}
.mc-count b{font-family:'Fraunces',serif}
.mc-place{width:100%;max-width:300px;margin:0 auto 10px;display:block;overflow:visible}
.mc-pin{animation:mc-pin 1.4s ease-in-out infinite}
@keyframes mc-pin{50%{transform:translateY(-6px)}}
.mc-flag{transform-box:fill-box;transform-origin:0 50%;animation:mc-flag 1s ease-in-out infinite alternate}
@keyframes mc-flag{to{transform:scaleX(.7)}}
.mc-venue{font-family:'Fraunces',serif;font-weight:500;font-size:1.7rem;margin-top:6px}
.mc-addr{color:var(--muted);margin:6px 0 22px}
.t-masal .btn{border-radius:16px}
.t-masal .choice span,.t-masal input,.t-masal select,.t-masal textarea{border-radius:14px;background:#fff}
.mc-end{padding:20px 0 0;text-align:center}
.mc-fin{font-family:'Fraunces',serif;font-style:italic;font-size:1.5rem;color:#6d5148}
.mc-ground{position:relative;width:220px;height:240px;margin:18px auto 0}
.mc-ground .ms-arch{position:absolute;left:10px;bottom:0;width:200px;height:220px}
.mc-c{position:absolute;bottom:-2px;width:62px;height:124px}
.mc-c .ch{width:100%;height:100%;overflow:visible}
.mc-c.g{left:46px}.mc-c.b{left:110px}
.mc-c.g .arm.r{transform:rotate(-38deg)}.mc-c.b .arm.l{transform:rotate(38deg)}
.mc-sig{font-family:'Fraunces',serif;font-size:2rem;margin-top:22px;color:#4a3b35}
.mc-end .credit{color:#5b6b52}
/* düzeltmeler */
.mc-ground .ms-arch .vine{stroke-dashoffset:0;animation:none}
.mc-ground .ms-arch .fl{transform:none;animation:none}