/* Revizyon 1 bölümleri: Ne içsem? · Vonga'da bir gün · Kahve falı · Rezervasyon */

/* ---------- NE İÇSEM? ---------- */
.pick { background: var(--white); }
.pick::before { content: ""; position: absolute; inset: 0 0 auto; height: 100%; background: var(--lambiri); opacity: .45; pointer-events: none; }
.pick__in { position: relative; display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(1.5rem, 4vw, 4rem); align-items: center; }
.pick__intro h2 { font-size: clamp(2.3rem, 5vw, 3.8rem); margin: 1rem 0 .9rem; }
.pick__intro p { max-width: 40ch; font-size: 1.06rem; }
.pick__steps { list-style: none; padding: 0; margin: 1.6rem 0 0; display: flex; gap: .5rem; counter-reset: s; }
.pick__steps li { counter-increment: s; display: inline-flex; align-items: center; gap: .45rem; padding: .45rem .8rem .45rem .45rem; border-radius: 999px;
  background: var(--milk-50); color: var(--g-500); font-size: .85rem; font-weight: 600; transition: background-color .35s, color .35s; }
.pick__steps li::before { content: counter(s); width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center;
  background: var(--g-200); color: var(--g-700); font-size: .75rem; transition: background-color .35s, color .35s; }
.pick__steps li.on { background: var(--milk-200); color: var(--g-900); }
.pick__steps li.on::before, .pick__steps li.done::before { background: var(--g-900); color: var(--white); }
.pick__steps li.done::before { content: "✓"; }

.pick__box { position: relative; min-height: 400px; border-radius: calc(var(--r-l) + 6px); background: var(--milk-100); padding: clamp(1.25rem, 3vw, 2rem);
  box-shadow: 0 30px 60px -40px rgba(45, 79, 101, .6); overflow: hidden; perspective: 1200px; }
.pick__stage { animation: pkIn .55s var(--ease-out) both; }
.pick__stage.out { animation: pkOut .32s var(--ease-io) both; }
@keyframes pkIn { from { opacity: 0; transform: translateX(36px); } to { opacity: 1; transform: none; } }
@keyframes pkOut { to { opacity: 0; transform: translateX(-36px); } }
.pick__q { font: 500 clamp(1.35rem, 2.6vw, 1.75rem)/1.2 var(--f-display); color: var(--g-900); margin-bottom: 1.1rem; }
.pick__opts { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: .75rem; }
.pick__opt { position: relative; display: grid; gap: .3rem; justify-items: start; text-align: left; padding: 1.2rem 1.1rem 1.1rem; min-height: 150px;
  border-radius: var(--r-m); background: var(--white); box-shadow: 0 1px 0 rgba(255, 255, 255, .8) inset, 0 12px 26px -22px rgba(45, 79, 101, .8);
  transition: transform .35s var(--ease-out), box-shadow .35s var(--ease-out), opacity .3s, background-color .3s; }
.pick__opt:hover { transform: translateY(-4px); box-shadow: 0 20px 34px -22px rgba(45, 79, 101, .8); }
.pick__opt:active { transform: scale(.98); }
.pick__em { font-size: 2rem; line-height: 1; margin-bottom: auto; transition: transform .45s var(--ease-out); }
.pick__opt:hover .pick__em { transform: scale(1.15) rotate(-6deg); }
.pick__opt b { font: 500 1.3rem/1.15 var(--f-display); color: var(--g-900); }
.pick__opt small { font-size: .88rem; color: var(--g-600); }
.pick__opt.chosen { background: var(--g-900); transform: scale(1.03); }
.pick__opt.chosen b, .pick__opt.chosen small { color: var(--white); }
.pick__opts.has-chosen .pick__opt:not(.chosen) { opacity: .35; transform: scale(.97); }

/* sonuç */
.pick__res { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 1.25rem; align-items: center;
  transform-origin: 50% 50%; animation: pkFlip .8s var(--ease-out) both; }
@keyframes pkFlip { from { opacity: 0; transform: rotateY(-70deg) scale(.92); } to { opacity: 1; transform: none; } }
.pick__img { position: relative; aspect-ratio: 4 / 5; border-radius: var(--r-m); overflow: hidden; background: var(--g-200); }
.pick__img img { width: 100%; height: 100%; object-fit: cover; }
.pick__img span { position: absolute; left: .7rem; top: .7rem; padding: .35rem .7rem .4rem; border-radius: 999px; background: rgba(243, 248, 251, .94);
  font: 600 1.05rem/1 var(--f-hand); color: var(--milk-700); }
.pick__lbl { font: 600 .74rem/1 var(--f-body); letter-spacing: .2em; text-transform: uppercase; color: var(--milk-700); }
.pick__name { margin: .5rem 0 .2rem; font: 500 clamp(1.7rem, 3.2vw, 2.4rem)/1.05 var(--f-display); color: var(--g-900); }
.pick__price { font: 500 1.5rem/1 var(--f-display); color: var(--g-900); }
.pick__price small { font-family: var(--f-body); font-size: .7em; color: var(--g-600); margin-left: .15em; }
.pick__pair { margin-top: 1rem; padding: .8rem .95rem; border-radius: var(--r-s); background: var(--white); font-size: .93rem; line-height: 1.45; }
.pick__pair b { color: var(--g-900); }
.pick__btns { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: 1.1rem; }
.pick__btns .btn { min-height: 44px; padding: 0 1.1rem; font-size: .9rem; }
.pick__btns .btn--ghost { box-shadow: inset 0 0 0 1.5px var(--g-300); }

@media (max-width: 860px) {
  .pick__in { grid-template-columns: minmax(0, 1fr); }
  .pick__box { min-height: 0; }
  .pick__res { grid-template-columns: 1fr; }
  .pick__img { aspect-ratio: 16 / 10; }
}
@media (max-width: 420px) { .pick__opts { grid-template-columns: 1fr; } .pick__opt { min-height: 0; grid-template-columns: auto 1fr; column-gap: .9rem; align-items: center; }
  .pick__em { grid-row: span 2; margin: 0; } }

/* ---------- VONGA'DA BİR GÜN ---------- */
.day { background: var(--g-100); overflow: hidden; }
.day::before { content: ""; position: absolute; right: -10%; top: 10%; width: 60%; aspect-ratio: 1; border-radius: 50%;
  background: radial-gradient(circle, var(--milk-200) 0%, rgba(207, 225, 236, 0) 65%); pointer-events: none; }
.day__in { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.day__text h2 { font-size: clamp(2.3rem, 5vw, 3.8rem); margin: 1rem 0 .9rem; }
.day__text > p { max-width: 46ch; font-size: 1.06rem; }
.day__list { list-style: none; padding: 0; margin: 1.8rem 0 0; display: grid; gap: .5rem; max-width: 480px; }
.day__list button { position: relative; width: 100%; display: grid; grid-template-columns: 76px 1fr; align-items: center; gap: .8rem; text-align: left;
  padding: .95rem 1rem; border-radius: var(--r-m); background: rgba(255, 255, 255, .55); overflow: hidden; transition: background-color .35s; }
.day__list button:hover { background: rgba(255, 255, 255, .85); }
.day__time { font: 600 .72rem/1 var(--f-body); letter-spacing: .18em; text-transform: uppercase; color: var(--g-500); transition: color .3s; }
.day__list b { font: 500 1.2rem/1.2 var(--f-display); color: var(--g-700); transition: color .3s; }
.day__bar { position: absolute; left: 0; bottom: 0; height: 3px; width: 100%; background: var(--milk-700); transform-origin: 0 50%; transform: scaleX(var(--f, 0)); }
.day__list li.on button { background: var(--white); box-shadow: 0 14px 30px -24px rgba(45, 79, 101, .9); }
.day__list li.on .day__time { color: var(--milk-700); }
.day__list li.on b { color: var(--g-900); }

.phone { position: relative; width: min(330px, 78vw); aspect-ratio: 9 / 16; border-radius: 42px; padding: 10px; background: var(--g-900);
  box-shadow: 0 0 0 2px #3a3f44 inset, 0 40px 70px -36px rgba(18, 20, 22, .75), 0 0 0 10px rgba(255, 255, 255, .5); justify-self: center; }
.phone::before { content: ""; position: absolute; left: 50%; top: 18px; width: 30%; height: 20px; translate: -50% 0; border-radius: 999px; background: #0d0f10; z-index: 2; }
.phone video { width: 100%; height: 100%; object-fit: cover; border-radius: 32px; background: #1a1d20; }
.phone__btn { position: absolute; z-index: 3; width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center;
  background: rgba(18, 20, 22, .55); color: var(--white); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); transition: transform .3s var(--ease-out); }
.phone__btn:hover { transform: scale(1.08); }
.phone__btn svg { width: 20px; height: 20px; }
.phone__sound { right: 22px; bottom: 22px; }
.phone__play { left: 50%; top: 50%; width: 72px; height: 72px; translate: -50% -50%; background: rgba(243, 248, 251, .92); color: var(--g-900); }
.phone__play svg { width: 28px; height: 28px; margin-left: 4px; }

@media (max-width: 860px) {
  .day__in { grid-template-columns: minmax(0, 1fr); }
  .phone { order: -1; width: min(300px, 74vw); }
  .day__list { grid-auto-flow: column; grid-auto-columns: minmax(150px, 1fr); overflow-x: auto; scrollbar-width: none; margin-inline: calc(var(--gut) * -1);
    padding: 0 var(--gut) .25rem; max-width: none; scroll-snap-type: x mandatory; }
  .day__list::-webkit-scrollbar { display: none; }
  .day__list li { scroll-snap-align: start; }
  .day__list button { grid-template-columns: 1fr; gap: .35rem; height: 100%; }
  .day__list b { font-size: 1.02rem; }
}

/* ---------- KAHVE FALI ---------- */
.fal { background: var(--g-850); color: var(--g-300); overflow: hidden; }
.fal::before { content: ""; position: absolute; inset: 0; background: var(--lambiri-dark); opacity: .55; pointer-events: none; }
.fal__in { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(1.5rem, 5vw, 5rem); align-items: center; }
.fal .eyebrow { color: var(--milk-300); }
.fal h2 { color: var(--white); font-size: clamp(2.3rem, 5vw, 3.8rem); margin: 1rem 0 .9rem; }
.fal h2 .it { color: var(--milk-300); }
.fal__lead { max-width: 42ch; font-size: 1.06rem; }
.fal__actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.6rem; }
.fal .btn { --bg: var(--milk-200); --fg: var(--g-900); }
.fal .btn::after { background: radial-gradient(circle at var(--mx, 50%) 120%, var(--white) 0 0, transparent 0); }
.fal .btn:hover::after { background: radial-gradient(circle at var(--mx, 50%) 120%, var(--white) 0 160%, transparent 0); }
.fal .btn--ghost { --bg: transparent; --fg: var(--white); box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .5); }
.fal .btn--ghost::after { background: radial-gradient(circle at var(--mx, 50%) 120%, rgba(255, 255, 255, .14) 0 0, transparent 0); }
.fal .btn--ghost:hover::after { background: radial-gradient(circle at var(--mx, 50%) 120%, rgba(255, 255, 255, .14) 0 160%, transparent 0); }
.fal .btn[disabled] { opacity: .55; pointer-events: none; }

.fal__result { margin-top: 1.2rem; padding: 1.2rem 1.25rem; border-radius: var(--r-m); background: rgba(255, 255, 255, .06);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08); animation: fadeUp .6s var(--ease-out) both; }
.fal__symbol { font: 600 .74rem/1 var(--f-body); letter-spacing: .2em; text-transform: uppercase; color: var(--milk-300); }
.fal__text { margin: .6rem 0 .8rem; font: 400 italic clamp(1.25rem, 2.2vw, 1.55rem)/1.4 var(--f-display); color: var(--white); min-height: 2.8em; }
.fal__text::after { content: ""; display: inline-block; width: 2px; height: 1em; margin-left: 2px; vertical-align: -.12em; background: var(--milk-300); animation: blink 1s steps(1) infinite; }
.fal__text.done::after { display: none; }
@keyframes blink { 50% { opacity: 0; } }
.fal__note { color: var(--g-500); font-size: .82rem; }

/* sahne (kare): tabak + vektör Türk kahvesi fincanı (fal.js çizer) + yüzük + kuşbakışı telve */
.fal__stage { position: relative; width: min(100%, 460px); aspect-ratio: 1; justify-self: center; }
.fal__glow { position: absolute; inset: 6%; border-radius: 50%; background: radial-gradient(circle at 50% 58%, rgba(201, 150, 90, .24) 0%, rgba(201, 150, 90, 0) 62%); }
.fal__saucer { position: absolute; left: 6%; top: 53.8%; width: 88%; height: auto; max-width: none; overflow: visible; }
.fal__cup { position: absolute; left: 22%; top: 20%; width: 56%; aspect-ratio: 1; }
.fal__cup svg { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; overflow: visible; will-change: transform; }
.fal__cup .cup-down { opacity: 0; }
.fal__ring { position: absolute; left: 50%; top: 34.6%; width: 11%; translate: -50% -50%; opacity: 0; overflow: visible; max-width: none; }
.fal__inside { position: absolute; left: 50%; top: 50%; width: 76%; margin: -38% 0 0 -38%; border-radius: 50%; opacity: 0;
  filter: drop-shadow(0 26px 30px rgba(0, 0, 0, .55)); }
.fal__timer { position: absolute; inset: 3%; width: 94%; height: 94%; max-width: none; transform: rotate(-90deg); opacity: 0; transition: opacity .3s; }
.fal__timer circle { fill: none; stroke: var(--milk-300); stroke-width: .6; stroke-linecap: round; stroke-dasharray: 289; stroke-dashoffset: 289; }
.fal__stage[data-state="cooling"] .fal__timer { opacity: 1; }
.fal__stage[data-state="cooling"] .fal__timer circle { animation: timer 2.6s linear forwards; }
@keyframes timer { to { stroke-dashoffset: 0; } }
@media (max-width: 860px) {
  .fal__in { grid-template-columns: minmax(0, 1fr); }
  .fal__stage { width: min(84vw, 360px); }
}

/* ---------- REZERVASYON ---------- */
.rez { background: var(--milk-200); overflow: hidden; }
.rez::before { content: ""; position: absolute; inset: 0; background: var(--lambiri); opacity: .55; pointer-events: none; }
.rez__in { position: relative; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(1.5rem, 5vw, 5rem); align-items: start; }
.rez__text h2 { font-size: clamp(2.3rem, 5vw, 3.8rem); margin: 1rem 0 .9rem; }
.rez__text > p { max-width: 42ch; font-size: 1.06rem; }
.rez__perks { list-style: none; padding: 0; margin: 1.6rem 0 0; display: grid; gap: .8rem; }
.rez__perks li { display: flex; align-items: center; gap: .7rem; font-weight: 500; color: var(--g-700); }
.rez__perks svg { flex: none; width: 36px; height: 36px; padding: 8px; border-radius: 50%; background: var(--white); color: var(--milk-700); }
.rez__perks a { color: var(--g-900); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.rez__perks li { flex-wrap: wrap; column-gap: .7rem; }

.rez__form { background: var(--white); border-radius: calc(var(--r-l) + 4px); padding: clamp(1.25rem, 3vw, 2rem); display: grid; gap: 1.05rem;
  box-shadow: 0 30px 60px -40px rgba(45, 79, 101, .8); }
.fld { display: grid; gap: .45rem; min-width: 0; }
.fld--row { grid-template-columns: 1fr 1fr; gap: .9rem; }
.fld label, .fld__lbl { font: 600 .74rem/1 var(--f-body); letter-spacing: .14em; text-transform: uppercase; color: var(--g-600); }
.fld label i { font-style: normal; text-transform: none; letter-spacing: 0; color: var(--g-500); }
.fld input[type="text"], .fld select { width: 100%; height: 50px; padding: 0 1rem; border: 0; border-radius: var(--r-s); background: var(--milk-50); color: var(--g-900);
  font: 500 1rem/1 var(--f-body); box-shadow: inset 0 0 0 1.5px var(--g-200); outline: none; transition: box-shadow .25s; -webkit-appearance: none; appearance: none; }
.fld select { background-image: linear-gradient(45deg, transparent 50%, var(--g-600) 50%), linear-gradient(135deg, var(--g-600) 50%, transparent 50%);
  background-position: calc(100% - 20px) 22px, calc(100% - 15px) 22px; background-size: 5px 5px; background-repeat: no-repeat; padding-right: 2.4rem; }
.fld input:focus, .fld select:focus { box-shadow: inset 0 0 0 2px var(--milk-700); }
.fld__err { display: none; color: #B4432F; font-size: .82rem; font-weight: 500; }
.fld.bad .fld__err { display: block; }
.fld.bad input, .fld.bad select { box-shadow: inset 0 0 0 2px #C9634F; }

.seg { display: flex; flex-wrap: wrap; gap: .45rem; }
.seg__b { min-height: 44px; padding: 0 1rem; border-radius: 999px; background: var(--milk-50); box-shadow: inset 0 0 0 1.5px var(--g-200);
  font-weight: 600; font-size: .92rem; color: var(--g-700); transition: background-color .25s, color .25s, box-shadow .25s; }
.seg__b:hover { box-shadow: inset 0 0 0 1.5px var(--milk-400); }
.seg__b.on { background: var(--g-900); color: var(--white); box-shadow: none; }
.seg__date { position: relative; flex: 1 1 150px; }
.seg__date input { width: 100%; min-height: 44px; padding: 0 .9rem; border: 0; border-radius: 999px; background: var(--milk-50); color: var(--g-900);
  box-shadow: inset 0 0 0 1.5px var(--g-200); font: 600 .92rem/1 var(--f-body); outline: none; }
.seg__date.on input { background: var(--g-900); color: var(--white); box-shadow: none; color-scheme: dark; }
.ctr { display: grid; grid-template-columns: 50px 1fr 50px; align-items: center; height: 50px; border-radius: var(--r-s); background: var(--milk-50);
  box-shadow: inset 0 0 0 1.5px var(--g-200); overflow: hidden; }
.ctr__b { height: 100%; font-size: 1.4rem; color: var(--g-900); transition: background-color .2s; }
.ctr__b:hover { background: var(--milk-100); }
.ctr output { text-align: center; font: 500 1.35rem/1 var(--f-display); color: var(--g-900); }
.rez__send { --bg: #1F7A4D; width: 100%; min-height: 56px; font-size: 1rem; margin-top: .3rem; }
.rez__send::after { background: radial-gradient(circle at var(--mx, 50%) 120%, #186640 0 0, transparent 0); }
.rez__send:hover::after { background: radial-gradient(circle at var(--mx, 50%) 120%, #186640 0 160%, transparent 0); }
.rez__send svg { width: 22px; height: 22px; }
.rez__send:hover svg { transform: none; }
.rez__fine { font-size: .8rem; color: var(--g-500); text-align: center; }

@media (max-width: 860px) {
  .rez__in { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 380px) { .fld--row { grid-template-columns: 1fr; } }
