/* Crispy Mood | kurumsal renkler #B92812 + #FFFFFF
   Tipografi logodan türetildi: eğik, dar gövde başlıklar (Barlow Condensed) + logo altyazısındaki geometrik sans (Montserrat).
   Köşe sistemi: her yerde 2px. */
:root{
  --red:#B92812;
  --red-d:#98200e;
  --red-lite:#ff6a4d;      /* koyu film üstünde küçük metin için okunur kırmızı */
  --white:#fff;
  --ink:#141414;
  --mute:#5e5e5e;
  --soft:#f3f3f1;
  --line:#e4e4e1;
  --film:#0c0b0a;
  --display:"Barlow Condensed","Arial Narrow",Impact,sans-serif;
  --sans:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --r:2px;
  --pad:clamp(16px,3.4vw,48px);
  --top:68px;
  --ease:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--top);background:var(--white)}
body{background:var(--white);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
address{font-style:normal}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--red);outline-offset:3px}
::selection{background:var(--red);color:#fff}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--red);color:#fff;padding:10px 14px}
.skip:focus{left:8px}
.wrap{max-width:1320px;margin:0 auto;padding:0 var(--pad)}

.display{font-family:var(--display);font-style:italic;font-weight:800;line-height:1.02;letter-spacing:-.005em;padding-bottom:.04em}
.display.xl{font-size:clamp(58px,8.2vw,128px);line-height:.95}
.display.lg{font-size:clamp(44px,5.6vw,88px)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;border-radius:var(--r);font-size:15px;font-weight:700;white-space:nowrap;transition:background .2s,color .2s,border-color .2s,transform .1s}
.btn:active{transform:translateY(1px)}
.btn-red{background:var(--red);color:#fff}
.btn-red:hover{background:var(--red-d)}
.btn-light{background:#fff;color:var(--ink)}
.btn-light:hover{background:#ececec}
.btn-line{border:2px solid var(--ink);color:var(--ink)}
.btn-line:hover{background:var(--ink);color:#fff}

/* Üst bar */
.top{position:fixed;inset:0 0 auto 0;z-index:60;height:var(--top);display:flex;align-items:center;gap:32px;padding:0 var(--pad);background:#fff;border-bottom:1px solid var(--line);transition:background .3s,border-color .3s}
.brand img{height:24px;width:auto}
.nav{display:flex;align-items:center;gap:28px;margin-left:auto}
.nav a{font-size:15px;font-weight:600;color:var(--ink);opacity:.72;transition:opacity .2s;padding:6px 0;position:relative}
.nav a:hover,.nav a.on{opacity:1}
.nav a.on::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--red)}
.nav .nav-tel{opacity:1;color:var(--red);font-variant-numeric:tabular-nums}
.top-cta{min-height:42px;padding:10px 18px;font-size:14px}
.menu-btn{display:none;width:44px;height:44px;position:relative;margin-left:auto}
.menu-btn i{position:absolute;left:10px;right:10px;height:2px;background:currentColor;transition:transform .3s var(--ease)}
.menu-btn i:first-child{top:17px}.menu-btn i:last-child{top:25px}
.menu-btn[aria-expanded="true"] i:first-child{transform:translateY(4px) rotate(45deg)}
.menu-btn[aria-expanded="true"] i:last-child{transform:translateY(-4px) rotate(-45deg)}
.top.on-dark{background:transparent;border-bottom-color:transparent;color:#fff}
.top.on-dark .brand img{filter:brightness(0) invert(1)}
.top.on-dark .nav a{color:#fff}
.top.on-dark .nav .nav-tel{color:#fff}

/* ===== Film (hero) ===== */
.film{position:relative;height:900vh;background:var(--film)}
.film-stage{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden;color:#fff}
#seqCanvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.film-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(12,11,10,.78) 0%,rgba(12,11,10,.35) 38%,rgba(12,11,10,0) 60%),linear-gradient(180deg,rgba(12,11,10,.55) 0%,rgba(12,11,10,0) 18%)}
.beat{position:absolute;left:var(--pad);bottom:clamp(72px,12vh,128px);max-width:min(560px,44vw);opacity:0;will-change:opacity,transform;pointer-events:none}
.beat.live{pointer-events:auto}
.beat .lead{font-size:clamp(16px,1.3vw,19px);line-height:1.55;color:rgba(255,255,255,.82);margin:18px 0 28px;max-width:40ch}
.beat-b .lead,.beat-c .lead{margin-bottom:0}
.beat-d .display{margin-bottom:26px}
.ctas{display:flex;gap:10px;flex-wrap:wrap}
.film-progress{position:absolute;left:0;right:0;bottom:0;height:3px}
.film-progress i{display:block;height:100%;background:var(--red);transform-origin:left;transform:scaleX(0)}
html:not(.js) .film,.rm .film{height:100dvh}
html:not(.js) .beat-a,.rm .beat-a{opacity:1}
html:not(.js) #seqCanvas{background:var(--film) url(../hero18/desktop/f_001.webp) center/cover no-repeat}

/* Paket kâğıdı bandı (Crispy Mood tepsi kâğıdındaki baskı) */
.tape{background:#fff;border-block:3px solid var(--red);overflow:hidden;height:74px;position:relative}
.tape-in{position:absolute;inset:-20px -40px;background:url(../img/logo-red.png) 0 50%/180px auto repeat-x;transform:rotate(-1.2deg)}

/* ===== Menü ===== */
.menu{padding:clamp(80px,10vw,140px) 0 clamp(64px,8vw,110px)}
.menu-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:clamp(28px,4vw,48px);padding-bottom:18px;border-bottom:2px solid var(--ink)}
.tabs{display:flex;gap:26px;overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs button{flex:0 0 auto;min-height:44px;font-size:16px;font-weight:600;color:var(--mute);position:relative;transition:color .2s}
.tabs button:hover{color:var(--ink)}
.tabs button[aria-selected="true"]{color:var(--red)}
.tabs button[aria-selected="true"]::after{content:"";position:absolute;left:0;right:0;bottom:-20px;height:4px;background:var(--red)}
.dishes{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:18px;animation:rise .5s var(--ease)}
@keyframes rise{from{opacity:0;transform:translateY(10px)}}
.dishes.n4{--cols:4}
.dishes.n1{--cols:1}
/* Kutu */
.dish{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px 20px 22px;isolation:isolate;
  transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .6s var(--ease),border-color .3s,box-shadow .4s var(--ease)}
.dish::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(380px circle at var(--mx,50%) var(--my,30%),rgba(185,40,18,.10),transparent 62%);opacity:0;transition:opacity .35s}
.dish::after{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.dish:hover{border-color:#d9d9d5;box-shadow:0 34px 60px -34px rgba(120,24,10,.38);transition:transform .18s linear,border-color .3s,box-shadow .4s var(--ease)}
.dish:hover::before{opacity:1}
.dish:hover::after{transform:scaleX(1)}
.dish-meta{position:absolute;top:16px;left:20px;right:20px;z-index:2;display:flex;justify-content:space-between;align-items:center;pointer-events:none}
.no{font-family:var(--display);font-style:italic;font-weight:800;font-size:15px;color:#b9b9b4;letter-spacing:.02em}
.dish:hover .no{color:var(--red)}
.heat{font-family:var(--sans);font-style:normal;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--red);padding:4px 8px;border-radius:var(--r)}
/* Uçan ürün */
.dish-stage{position:relative;aspect-ratio:1.44;margin:6px -6px 0}
.dish-stage img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;
  transform:translate3d(var(--px,0px),var(--py,0px),0) scale(calc(var(--z,1)*var(--s,1)));transition:transform .7s var(--ease)}
.dish-shadow{position:absolute;left:24%;right:24%;bottom:4%;height:12%;border-radius:50%;background:radial-gradient(closest-side,rgba(60,20,10,.28),transparent);transition:transform .7s var(--ease),opacity .7s}
.dish:hover .dish-stage img{--s:1.06;animation:hover-bob 2.6s ease-in-out .4s infinite}
.dish:hover .dish-shadow{transform:scale(.72);opacity:.55}
@keyframes hover-bob{0%,100%{translate:0 -10px}50%{translate:0 -16px}}
.js .dish-stage img{opacity:0;translate:0 -40px}
.js .dish-shadow{opacity:0;transform:scale(.3)}
.js .dish.in .dish-stage img{opacity:1;translate:0 0;transition:transform .7s var(--ease),opacity .4s calc(var(--d)*110ms),translate .9s cubic-bezier(.34,1.56,.64,1) calc(var(--d)*110ms)}
.js .dish.in .dish-shadow{opacity:1;transform:none;transition:transform .9s cubic-bezier(.34,1.56,.64,1) calc(var(--d)*110ms + 120ms),opacity .6s calc(var(--d)*110ms)}
.js .dish.in:hover .dish-shadow{transform:scale(.72);opacity:.55}
/* Bilgi */
.dish-info{display:flex;flex-direction:column;flex:1}
.dish h3{font-family:var(--display);font-style:italic;font-weight:800;font-size:clamp(26px,2.1vw,32px);line-height:1.02;margin-top:8px}
/* Katman şeridi: içindekiler sırasıyla renk renk */
.dna{display:flex;gap:2px;height:7px;margin:auto 0 14px;padding-top:18px;box-sizing:content-box}
.dna i{flex:1 1 0;background:var(--c);border-radius:1px;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease),flex-grow .45s var(--ease),opacity .3s}
.dish.in .dna i{transform:none;transition:transform .55s var(--ease) calc(var(--d)*110ms + 380ms + var(--i)*55ms),flex-grow .45s var(--ease),opacity .3s}
.dna.hl i{opacity:.28}
.dna.hl i.on{opacity:1;flex-grow:4}
.dish:hover .dna{height:10px;margin-bottom:11px}
.ings{display:flex;flex-wrap:wrap;gap:6px;list-style:none}
.ings li{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;line-height:1.35;color:var(--mute);padding:5px 9px 5px 8px;border:1px solid var(--line);border-radius:var(--r);cursor:default;transition:color .2s,border-color .2s,background .2s}
.ings li::before{content:"";flex:0 0 8px;height:8px;border-radius:50%;background:var(--c);box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.ings li.on{color:var(--ink);border-color:var(--ink);background:#fff}
.ings-none{font-size:14px;color:var(--mute);margin-top:14px}
/* Tek ürünlü sekme: yatay kutu */
.dishes.n1 .dish{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:0 clamp(24px,4vw,64px);padding:28px clamp(20px,3vw,44px)}
.dishes.n1 .dish h3{font-size:clamp(36px,3.6vw,54px)}
.dishes.n1 .dna{margin-top:0}
.sides{margin-top:clamp(48px,6vw,80px);font-size:15px;color:var(--mute);line-height:1.9;max-width:90ch}
.sides b{color:var(--ink)}

/* ===== Kombolar (yatay) ===== */
.pan{position:relative;height:360vh;background:var(--soft)}
.pan-stage{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:clamp(24px,4vh,44px);padding-top:var(--top)}
.pan-head{width:100%}
.lead-dark{font-size:17px;color:var(--mute);margin-top:10px;max-width:48ch}
.pan-track{display:flex;gap:28px;padding:0 var(--pad);will-change:transform}
.combo{flex:0 0 min(430px,78vw);background:#fff;border-radius:var(--r);padding:0 0 24px}
.combo img{width:100%;aspect-ratio:1.44;object-fit:cover;background:#fff}
.combo h3{font-family:var(--display);font-style:italic;font-weight:800;font-size:34px;line-height:1.05;padding:6px 24px 0}
.combo p{font-size:14px;color:var(--mute);padding:8px 24px 0;line-height:1.55}

/* ===== Sipariş ===== */
.order{position:relative;background:var(--red);color:#fff;padding:clamp(80px,10vw,140px) 0;overflow:hidden}
.order::before{content:"";position:absolute;inset:-40px;background:url(../img/logo-white.png) 0 0/220px auto;opacity:.07;transform:rotate(-8deg)}
.order .wrap{position:relative}
.order-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:clamp(32px,4vw,52px)}
.oblock{display:flex;flex-direction:column;justify-content:space-between;gap:56px;min-height:240px;padding:32px;background:#fff;color:var(--ink);border-radius:var(--r);transition:transform .35s var(--ease)}
.oblock:hover{transform:translateY(-4px)}
.oblock-name{font-family:var(--display);font-style:italic;font-weight:800;font-size:clamp(48px,5.4vw,86px);line-height:.95}
.oblock-go{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--red)}
.oblock-go svg{width:20px;height:20px}
.order-tel{margin-top:28px;font-size:17px}
.order-tel a{font-weight:700;border-bottom:2px solid rgba(255,255,255,.5)}
.order-tel a:hover{border-bottom-color:#fff}

/* ===== Konum ===== */
.visit{padding:clamp(80px,10vw,140px) 0}
.visit-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,5vw,80px);align-items:start}
.map{aspect-ratio:1/1.08;background:var(--soft);border-radius:var(--r);overflow:hidden;position:sticky;top:calc(var(--top) + 24px)}
.map iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(.35) contrast(1.05)}
.visit-info address{font-size:20px;font-weight:600;line-height:1.5;margin:22px 0 36px}
.hours-title{display:flex;align-items:center;gap:12px;font-weight:700;margin-bottom:8px}
.open-state{font-size:12px;font-weight:700;color:#fff;padding:3px 8px;border-radius:var(--r)}
.open-state.open{background:#1d7a45}
.open-state.closed{background:var(--red)}
.hours{border-collapse:collapse;width:100%;max-width:420px;font-size:15px}
.hours th{text-align:left;font-weight:500;color:var(--mute);padding:6px 0}
.hours td{text-align:right;font-variant-numeric:tabular-nums;padding:6px 0}
.hours tr.today th,.hours tr.today td{color:var(--red);font-weight:700}
.feats{margin:28px 0 32px;color:var(--mute);max-width:44ch}

/* ===== Footer ===== */
.foot{background:var(--red);color:#fff;padding:72px 0 32px}
.foot-logo{width:min(420px,78vw)}
.foot-grid{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:24px 72px;margin:44px 0 48px;font-size:15px;line-height:1.7}
.foot-grid a:hover{text-decoration:underline}
.foot-copy{font-size:13px;opacity:.75}

.quick{display:none}

/* Belirme */
.js .rv{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.js .rv.in{opacity:1;transform:none}
.rm .rv{opacity:1!important;transform:none!important;transition:none}
.rm .dishes{animation:none}
.rm .dish-stage img,.rm .dish-shadow{opacity:1!important;translate:none!important;transform:none!important;animation:none!important}
.rm .dna i{transform:none!important}
.rm .dish{transform:none!important}

/* ===== Duyarlı ===== */
@media (max-width:1060px){
  .nav .nav-tel{display:none}
}
@media (max-width:900px){
  .menu-btn{display:block}
  .top-cta{display:none}
  .nav{position:fixed;inset:var(--top) 0 auto 0;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:8px var(--pad) 20px;background:#fff;border-bottom:1px solid var(--line);transform:translateY(-8px);opacity:0;visibility:hidden;transition:all .3s var(--ease)}
  .nav.open{transform:none;opacity:1;visibility:visible}
  .nav a,.top.on-dark .nav a{color:var(--ink);opacity:1;font-size:18px;padding:14px 0;border-bottom:1px solid var(--line)}
  .nav .nav-tel{display:block;color:var(--red)!important}
  .nav a.on::after{display:none}
  .dishes.n3,.dishes.n4{--cols:2}
  .dishes.n3 .dish:first-child{grid-column:span 2}
  .dishes.n3 .dish:first-child .dish-stage{width:62%;margin:6px auto 0}
  .order-grid,.visit-grid{grid-template-columns:1fr}
  .map{position:relative;top:0;aspect-ratio:4/3}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:768px){
  :root{--top:60px}
  .brand img{height:21px}
  .film-shade{background:linear-gradient(0deg,rgba(12,11,10,.9) 0%,rgba(12,11,10,.55) 34%,rgba(12,11,10,0) 58%),linear-gradient(180deg,rgba(12,11,10,.5) 0%,rgba(12,11,10,0) 16%)}
  .beat{left:var(--pad);right:var(--pad);max-width:none;bottom:96px}
  .beat .lead{margin:12px 0 22px}
  .beat-d .ctas .btn{flex:1 1 40%}
  .tape{height:58px}
  .tape-in{background-size:140px auto}
  .menu-head{flex-direction:column;align-items:flex-start}
  .tabs{width:100%;gap:22px}
  .tabs button[aria-selected="true"]::after{bottom:-14px}
  .oblock{min-height:180px;gap:36px;padding:24px}
  .quick{display:grid;grid-template-columns:1fr 1fr 1.3fr;position:fixed;left:0;right:0;bottom:0;z-index:70;background:#fff;border-top:1px solid var(--line);padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:8px;transform:translateY(110%);transition:transform .35s var(--ease)}
  .quick.show{transform:none}
  .quick a{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:var(--r);font-size:14px;font-weight:700;border:2px solid var(--ink)}
  .quick .quick-red{background:var(--red);border-color:var(--red);color:#fff}
  .foot{padding-bottom:100px}
}
@media (max-width:560px){
  /* Telefonda kutular yana kayar */
  .dishes.n3,.dishes.n4{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:4px var(--pad) 8px;scroll-padding:0 var(--pad)}
  .dishes::-webkit-scrollbar{display:none}
  .dishes.n3 .dish:first-child{grid-column:auto}
  .dishes.n3 .dish:first-child .dish-stage{width:auto;margin:6px -6px 0}
  .dish{scroll-snap-align:start}
  .dishes.n1 .dish{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
}

/* ===== Franchise başvurusu ===== */
.franchise{background:var(--soft);padding:clamp(80px,10vw,140px) 0;border-top:3px solid var(--red)}
.franchise-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(32px,6vw,96px);align-items:start}
.franchise-lead{font-size:clamp(18px,1.6vw,22px);font-weight:700;color:var(--red);line-height:1.45;margin-top:18px;max-width:30ch}
.fform{display:grid;gap:18px}
.frow.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:grid;gap:6px}
.field label{font-size:15px;font-weight:600}
.field input{width:100%;min-height:52px;padding:12px 14px;font:inherit;font-size:16px;color:var(--ink);background:#fff;border:2px solid var(--ink);border-radius:var(--r);transition:border-color .2s,box-shadow .2s}
.field input::placeholder{color:#767676}
.field input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(185,40,18,.18)}
.field.bad input{border-color:var(--red)}
.ferr{display:none;font-size:13px;font-weight:600;color:var(--red)}
.field.bad .ferr,.ferr.show{display:block}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.kvkk{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--mute);line-height:1.5;cursor:pointer}
.kvkk input{flex:0 0 auto;width:20px;height:20px;margin-top:2px;accent-color:var(--red)}
.fsubmit{width:100%;min-height:56px;font-size:16px}
.fsubmit[disabled]{opacity:.6;cursor:progress}
.fstatus{font-size:15px;font-weight:600;min-height:1.5em}
.fstatus.ok{color:#1d7a45}
.fstatus.err{color:var(--red)}
@media (max-width:900px){.franchise-grid{grid-template-columns:1fr}}
@media (max-width:560px){.frow.two{grid-template-columns:1fr}}

/* ===== Başvuru onay penceresi ===== */
.okmodal{border:0;padding:0;background:transparent;max-width:min(440px,calc(100vw - 32px));width:100%;margin:auto;overflow:visible}
.okmodal::backdrop{background:rgba(12,11,10,.62);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.okmodal[open]{animation:okIn .45s var(--ease) both}
.okmodal[open]::backdrop{animation:okFade .3s ease both}
.okmodal-box{background:#fff;border-radius:var(--r);border-top:6px solid var(--red);padding:40px 32px 32px;text-align:center}
.okcheck{width:96px;height:96px;display:block;margin:0 auto 20px}
.okcheck-ring{fill:none;stroke:var(--red);stroke-width:5;stroke-dasharray:264;stroke-dashoffset:264;transform:rotate(-90deg);transform-origin:50% 50%}
.okcheck-tick{fill:none;stroke:var(--red);stroke-width:7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60}
.okmodal[open] .okcheck-ring{animation:okDraw .6s .15s var(--ease) forwards}
.okmodal[open] .okcheck-tick{animation:okDraw .4s .65s var(--ease) forwards}
.okmodal[open] .okcheck{animation:okPop .35s 1.02s var(--ease)}
.okmodal h3{font-family:var(--display);font-style:italic;font-weight:800;font-size:38px;line-height:1.02;margin-bottom:12px}
.okmodal p{font-size:15.5px;color:var(--mute);line-height:1.6;margin-bottom:26px}
.okmodal p span{color:var(--ink);font-weight:700}
.okclose{width:100%;min-height:52px}
@keyframes okIn{from{opacity:0;transform:translateY(18px) scale(.96)}}
@keyframes okFade{from{opacity:0}}
@keyframes okDraw{to{stroke-dashoffset:0}}
@keyframes okPop{50%{transform:scale(1.08)}}
.rm .okmodal[open],.rm .okmodal[open]::backdrop,.rm .okmodal[open] .okcheck{animation:none}
.rm .okcheck-ring,.rm .okcheck-tick{stroke-dashoffset:0;animation:none!important}

/* ===== Çerez onayı ===== */
.cc{position:fixed;left:24px;bottom:24px;z-index:90;width:min(520px,calc(100vw - 48px));background:#fff;color:var(--ink);border-top:4px solid var(--red);border-radius:var(--r);padding:22px 24px 20px;box-shadow:0 24px 60px -20px rgba(12,11,10,.45);animation:ccIn .5s var(--ease) both}
@keyframes ccIn{from{opacity:0;transform:translateY(16px)}}
.cc-t{font-family:var(--display);font-style:italic;font-weight:800;font-size:26px;line-height:1}
.cc-x{font-size:14px;color:var(--mute);line-height:1.6;margin:10px 0 16px}
.cc-x a,.ccmodal a{color:var(--red);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.cc-b,.ccmodal-b{display:flex;gap:8px;flex-wrap:wrap}
.cc-b .btn,.ccmodal-b .btn{flex:1 1 auto;min-height:44px;padding:10px 16px;font-size:14px}
.ccmodal{border:0;padding:0;background:transparent;max-width:min(560px,calc(100vw - 32px));width:100%;margin:auto}
.ccmodal::backdrop{background:rgba(12,11,10,.62);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.ccmodal[open]{animation:ccIn .4s var(--ease) both}
.ccmodal-box{background:#fff;border-radius:var(--r);border-top:6px solid var(--red);padding:30px 28px 26px;max-height:calc(100dvh - 32px);overflow:auto}
.ccmodal h3{font-family:var(--display);font-style:italic;font-weight:800;font-size:34px;line-height:1}
.ccmodal-lead{font-size:14px;color:var(--mute);margin:10px 0 8px}
.ccrow{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.ccrow b{display:block;font-size:15px}
.ccrow span{display:block;font-size:13px;color:var(--mute);line-height:1.5;margin-top:2px}
.ccmodal-b{margin-top:22px}
.sw{position:relative;flex:0 0 48px;width:48px;height:28px;cursor:pointer}
.sw input{position:absolute;inset:0;opacity:0;margin:0;cursor:inherit}
.sw i{position:absolute;inset:0;background:#cfcfca;border-radius:14px;transition:background .25s}
.sw i::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .3s var(--ease)}
.sw input:checked+i{background:var(--red)}
.sw input:checked+i::after{transform:translateX(20px)}
.sw input:disabled+i{opacity:.55}
.sw input:focus-visible+i{outline:3px solid var(--red);outline-offset:3px}
.map-gate{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;text-align:center;background:var(--soft)}
.map-gate p{font-size:14px;color:var(--mute);max-width:30ch}
.map-gate a{font-size:13px;color:var(--mute);text-decoration:underline;text-underline-offset:3px}
.foot-links{margin-left:14px}
.foot-links a,.foot-links button{font-size:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;margin-right:12px}
.rm .cc,.rm .ccmodal[open]{animation:none}
@media (max-width:768px){
  .cc{left:0;right:0;bottom:0;width:auto;border-radius:0;padding:18px var(--pad) calc(16px + env(safe-area-inset-bottom))}
  .cc-b .btn{flex:1 1 30%}
  .foot-links{display:block;margin:8px 0 0}
}
.kvkk a{color:var(--red);font-weight:600;text-decoration:underline;text-underline-offset:3px}
