/* Cadde · cadde.gg — boxed, minimal */
:root{
  --bg:#faf6ee;
  --surface:#fff;
  --card:#f3ecdf;
  --ink:#1b2a44;
  --ink-2:#13233f;
  --muted:#5b6272;
  --line:#ebe3d4;
  --accent:#c9561f;      /* Cadde turuncusu, beyaz yazıya yetecek koyulukta */
  --accent-h:#b04a19;
  --gold:#f2c14e;
  --pink:#f7e6ec;
  --green:#e4ede4;
  --blue:#e3edf2;
  --r:28px;
  --r-s:18px;
  --box:1160px;
  --shadow:0 1px 2px rgba(27,42,68,.05),0 12px 32px -12px rgba(27,42,68,.14);
  --ease:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--bg);color:var(--ink);font:500 17px/1.6 Nunito,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{font-family:"Baloo 2",Nunito,sans-serif;font-weight:800;margin:0;letter-spacing:-.025em;color:var(--ink)}
p{margin:0}
button,input{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.box{max-width:var(--box);margin:0 auto;padding-inline:24px}
.narrow{max-width:760px}
.sec{padding-top:144px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 26px;border-radius:14px;background:var(--accent);color:#fff;font-weight:800;font-size:16px;text-decoration:none;border:0;cursor:pointer;white-space:nowrap;box-shadow:0 6px 16px -6px rgba(201,86,31,.55);transition:background .2s,transform .25s var(--ease),box-shadow .25s}
.btn:hover{background:var(--accent-h);transform:translateY(-2px);box-shadow:0 10px 22px -8px rgba(201,86,31,.6)}
.btn:active{transform:translateY(0)}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn-ghost:hover{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn-sm{height:42px;padding:0 18px;font-size:15px;border-radius:12px}
.btn-block{width:100%}
.btn[disabled]{opacity:.6;cursor:progress;transform:none}
.meta{font-size:14px;color:var(--muted)}

/* promo bar */
.promo{display:block;background:var(--ink);color:#fff;text-decoration:none;font-size:14px}
.promo-in{display:flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding-block:6px;text-align:center}
.promo img{flex:none}
.promo b{color:var(--gold)}
.promo-go{transition:transform .25s var(--ease)}
.promo:hover .promo-go{transform:translateX(4px)}

/* nav */
.nav{position:sticky;top:0;z-index:20;background:rgba(250,246,238,.88);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid transparent;transition:border-color .3s}
.nav.stuck{border-bottom-color:var(--line)}
.nav-in{display:flex;align-items:center;gap:32px;height:72px}
.logo{display:inline-flex;align-items:center;gap:10px;font:800 24px/1 "Baloo 2",sans-serif;text-decoration:none;color:var(--ink)}
.links{display:flex;gap:30px;margin:0 auto}
.links a{text-decoration:none;font-weight:700;font-size:15px;color:var(--muted);transition:color .2s}
.links a:hover{color:var(--ink)}

/* hero */
.hero{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center;padding-top:64px}
.title{font-size:clamp(50px,6.4vw,84px);line-height:.96;letter-spacing:-.04em}
.title .line{display:block;overflow:hidden;padding-bottom:.06em}
.title .line>span{display:block}
.title .line:nth-child(2)>span{color:var(--accent)}
.lead{font-size:19px;color:var(--muted);margin-top:24px;max-width:29em}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.gifts-mini{display:flex;align-items:center;gap:14px;margin-top:28px;padding:10px 18px 10px 10px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow);text-decoration:none;width:fit-content;max-width:100%;transition:transform .25s var(--ease)}
.gifts-mini:hover{transform:translateY(-2px)}
.gifts-mini>span:last-child{font-size:14px;color:var(--muted);line-height:1.35}
.gifts-mini b{display:block;color:var(--ink);font-size:15px}
.gm-icons{display:flex;flex:none}
.gm-icons>*{width:40px;height:40px;border-radius:12px;background:var(--card);object-fit:contain;border:2px solid var(--surface)}
.gm-icons>*+*{margin-left:-10px}
.gm-icons img:nth-child(2){object-fit:cover;object-position:70% 30%;background:#ede4f7}
.gm-vip{display:grid;place-items:center;font:800 11px/1 Nunito,sans-serif;color:#5a3d00;background:linear-gradient(135deg,#ffe28a,#e3a21a)!important}

.demo{background:var(--blue);border-radius:var(--r);padding:18px;position:relative}
.demo-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 4px 14px}
.demo-top>span{font-weight:800;font-size:15px}
.name input{width:160px;height:38px;border:0;border-radius:10px;background:#fff;padding:0 14px;font-weight:700;font-size:15px}
.name input::placeholder{color:#8b93a1}
.map{position:relative;border-radius:var(--r-s);overflow:hidden}
.spot{position:absolute;transform:translate(-50%,-50%);width:26px;height:26px;border:3px solid #fff;padding:0;border-radius:50%;background:var(--accent);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.25);transition:transform .25s var(--ease),background .2s}
.spot::after{content:"";width:8px;height:8px;border-radius:50%;background:#fff;transition:.2s}
.spot:hover{transform:translate(-50%,-50%) scale(1.2)}
.spot[aria-selected=true]{background:var(--ink);transform:translate(-50%,-50%) scale(1.25)}
.spot .tip{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;font-size:12px;font-weight:800;padding:2px 8px;border-radius:6px;white-space:nowrap;opacity:0;transition:opacity .2s;pointer-events:none}
.spot:hover .tip,.spot:focus-visible .tip{opacity:1}
.spot:not([aria-selected=true])::before{content:"";position:absolute;inset:0;border-radius:50%;background:rgba(255,255,255,.5);animation:ping 2.4s ease-out infinite}
@keyframes ping{from{transform:scale(.8);opacity:.9}to{transform:scale(1.8);opacity:0}}
.bubble{display:flex;gap:14px;align-items:center;background:#fff;border-radius:16px;padding:10px;margin-top:12px}
.bubble img{width:84px;height:60px;object-fit:cover;border-radius:10px;flex:none;transition:opacity .2s}
.bubble b{font-size:14px;color:var(--accent)}
.bubble p{font-weight:700;font-size:15px;line-height:1.4}
.bubble.swap>div{animation:pop .35s var(--ease)}
.demo-hint{font-size:13px;color:var(--muted);text-align:center;margin-top:10px}
@keyframes pop{from{opacity:0;transform:translateY(6px)}}

/* facts */
.facts{list-style:none;margin:88px 0 0;padding:28px 8px;display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}
.facts li{padding:0 24px;border-left:1px solid var(--line)}
.facts li:first-child{border-left:0}
.facts b{display:block;font:800 34px/1.1 "Baloo 2",sans-serif;letter-spacing:-.02em}
.facts span{font-size:15px;color:var(--muted)}

/* section head */
.sec-head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:44px}
.sec-head p,.split-text>p:not(.meta){color:var(--muted);max-width:32em}
h2{font-size:clamp(36px,4.2vw,54px);line-height:1.02}

/* houses */
.house{display:grid;grid-template-columns:280px 1fr;gap:12px;background:var(--surface);border-radius:var(--r);padding:12px;box-shadow:var(--shadow)}
.house-tabs{display:flex;flex-direction:column;gap:6px;padding:6px}
.house-tabs button{text-align:left;border:0;background:none;border-radius:16px;padding:16px 18px;cursor:pointer;transition:background .2s,color .2s}
.house-tabs b{display:block;font:800 19px/1.2 "Baloo 2",sans-serif;color:var(--ink)}
.house-tabs span{font-size:14px;color:var(--muted)}
.house-tabs button:hover{background:var(--bg)}
.house-tabs button[aria-selected=true]{background:var(--ink)}
.house-tabs button[aria-selected=true] b{color:#fff}
.house-tabs button[aria-selected=true] span{color:#c3cad8}
.house-view{margin:0;position:relative;border-radius:20px;overflow:hidden;background:#cfe3c6}
.house-view img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:opacity .25s,transform 1.2s var(--ease)}
.house-view:hover img{transform:scale(1.02)}
.house-view figcaption{position:absolute;left:16px;right:16px;bottom:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(6px);border-radius:14px;padding:12px 16px;font-size:15px;font-weight:600;max-width:36em}
.rooms{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.rooms figure{margin:0;background:var(--surface);border-radius:var(--r);padding:12px;box-shadow:var(--shadow)}
.rooms img{border-radius:18px;width:100%;aspect-ratio:3/2;object-fit:cover}
.rooms figcaption{padding:14px 8px 4px;color:var(--muted);font-size:15px}
.rooms figcaption b{display:block;color:var(--ink);font-size:17px}

/* bento */
.bento{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.card{border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.card-text{padding:36px 36px 0}
.card h3{font-size:30px;line-height:1.1}
.card p{color:var(--muted);margin-top:10px;max-width:30em}
.tint-pink{background:var(--pink)} .tint-green{background:var(--green)}
.chars{display:flex;justify-content:center;align-items:flex-end;gap:12px;margin-top:auto;padding:24px 24px 0}
.chars img{height:180px;width:auto;transition:transform .35s var(--ease)}
.chars img:nth-child(2){height:200px}
.chars img:hover{transform:translateY(-8px)}
.card-shot{margin:auto 0 0;padding:28px 36px 0}
.card-shot img{border-radius:16px 16px 0 0;aspect-ratio:16/9;object-fit:cover;width:100%}

/* places */
.places{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:20px}
.places figure{margin:0}
.places img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-s);transition:transform .5s var(--ease)}
.places figure:hover img{transform:translateY(-4px)}
.places figcaption{margin-top:14px;font-size:15px;color:var(--muted)}
.places b{display:block;color:var(--ink);font-size:17px}

/* split */
.split{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;align-items:center}
.split-text>*+*{margin-top:18px}

/* schedule */
.sched{background:var(--surface);border-radius:var(--r);padding:20px;box-shadow:var(--shadow)}
.days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;background:var(--bg);border-radius:12px;padding:4px}
.days button{border:0;background:none;height:38px;border-radius:9px;font-weight:800;font-size:14px;color:var(--muted);cursor:pointer;transition:.2s}
.days button:hover{color:var(--ink)}
.days button[aria-selected=true]{background:var(--ink);color:#fff}
.slots{list-style:none;margin:12px 0 0;padding:0}
.slots li{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:12px;padding:12px 6px;border-bottom:1px solid var(--line)}
.slots li:last-child{border-bottom:0}
.slots time{font-weight:800;font-variant-numeric:tabular-nums}
.slots span{font-weight:700}
.slots small{font-size:14px;color:var(--muted)}
.slots li.quiz span{color:var(--accent)}
.slots.swap li{animation:pop .3s var(--ease) both}

/* pre-registration */
.pre{background:var(--ink);color:#fff;border-radius:32px;padding:56px;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:start;position:relative;overflow:hidden}
.pre::before{content:"";position:absolute;width:520px;height:520px;right:-160px;top:-220px;border-radius:50%;background:radial-gradient(closest-side,rgba(242,193,78,.18),transparent);pointer-events:none}
.pre h2{color:#fff}
.pre-lead{color:#c3cad8;margin-top:14px;max-width:30em;font-size:18px}
.gifts{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:12px}
.gift{display:grid;grid-template-columns:96px 1fr;gap:18px;align-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:14px;transition:background .25s,transform .25s var(--ease)}
.gift:hover{background:rgba(255,255,255,.1);transform:translateX(4px)}
.gift>img,.gift>.vipcard{width:96px;height:96px;border-radius:14px}
.gift>img{object-fit:cover;object-position:100% 30%;background:#2b2457}
.gift-badge>img{object-fit:contain;background:rgba(255,255,255,.08);padding:8px}
.gift b{display:block;font:800 19px/1.2 "Baloo 2",sans-serif;color:#fff}
.gift-badge b{color:var(--gold)}
.gift>div>span{font-size:15px;color:#c3cad8;line-height:1.45}
.vipcard{display:flex;flex-direction:column;justify-content:space-between;padding:10px;background:linear-gradient(140deg,#ffe9a3 0%,#f2c14e 45%,#c98a12 100%);color:#4a3000;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
.vipcard small{font:800 10px/1 Nunito,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#6b4a00}
.vipcard b{font:800 17px/1 "Baloo 2",sans-serif;color:#4a3000}
.vipcard em{font-style:normal;font-weight:800;font-size:12px;color:#4a3000}

.form{background:var(--surface);color:var(--ink);border-radius:24px;padding:30px;position:relative}
.form-body{display:grid;gap:12px}
.form-body[hidden]{display:none}
.form h3{font-size:26px;margin-bottom:4px}
.form label{font-weight:800;font-size:14px}
.form input[type=email]{height:52px;border:1.5px solid var(--line);border-radius:12px;padding:0 16px;background:var(--bg);transition:border-color .2s}
.form input[type=email]:focus{border-color:var(--ink);outline:none}
.form .check{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-weight:600;font-size:13px;color:var(--muted);line-height:1.45;cursor:pointer;margin:4px 0}
.check input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--ink)}
.form-msg{font-size:14px;font-weight:700}
.form-msg:empty{display:none}
.form-msg.err{color:#b3261e}
.form-done{text-align:center;display:grid;justify-items:center;gap:10px;padding:8px 0}
.form-done:not([hidden]){animation:pop .5s var(--ease)}
.form-done[hidden]{display:none}
.form-done p{color:var(--muted);font-size:15px}

/* faq */
#sss h2{margin-bottom:28px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-weight:800;font-size:17px;transition:color .2s}
.faq summary:hover{color:var(--accent)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;font-weight:600;color:var(--muted);transition:transform .25s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{padding:0 0 22px;color:var(--muted);max-width:40em}

/* footer */
.foot{margin-top:120px;padding-bottom:48px;font-size:14px;color:var(--muted)}
.foot-in{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding-top:32px;border-top:1px solid var(--line)}
.foot nav{display:flex;gap:18px;flex-wrap:wrap;margin:0 auto}
.foot nav a{text-decoration:none;transition:color .2s}
.foot nav a:hover{color:var(--ink)}
.foot .logo{font-size:20px}

/* motion */
.js .title .line>span{transform:translateY(105%);animation:rise .9s var(--ease) forwards}
.js .title .line:nth-child(2)>span{animation-delay:.1s}
@keyframes rise{to{transform:none}}
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .reveal.in{opacity:1;transform:none}

/* responsive */
@media (max-width:960px){
  .links{display:none}
  .nav-in .btn{margin-left:auto}
  .hero,.split,.sec-head,.pre{grid-template-columns:1fr}
  .hero{gap:44px;padding-top:36px}
  .sec{padding-top:104px}
  .sec-head{gap:14px}
  .facts{grid-template-columns:1fr 1fr;row-gap:24px}
  .facts li:nth-child(3){border-left:0}
  .house{grid-template-columns:1fr}
  .house-tabs{flex-direction:row;padding:0}
  .house-tabs button{flex:1 1 0;padding:12px 16px}
  .places{grid-template-columns:1fr 1fr}
  .pre{padding:40px}
}
@media (max-width:600px){
  .box{padding-inline:16px}
  .promo-in{font-size:13px;justify-content:flex-start;text-align:left}
  .nav-in{height:62px}
  .title{font-size:50px}
  .actions{flex-direction:column}
  .actions .btn{width:100%}
  .demo{padding:12px;border-radius:22px}
  .demo-top{flex-direction:column;align-items:stretch}
  .name input{width:100%;height:44px}
  .spot{width:22px;height:22px;border-width:2px}
  .spot::after{width:6px;height:6px}
  .facts{margin-top:64px;padding:22px 0}
  .facts li{padding:0 16px}
  .facts b{font-size:28px}
  .house{padding:8px;border-radius:22px}
  .house-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}
  .house-tabs button{padding:10px 6px;text-align:center;border-radius:12px}
  .house-tabs b{font-size:14px}
  .house-tabs span{display:none}
  .house-view{border-radius:16px}
  .house-view figcaption{position:static;background:none;backdrop-filter:none;padding:12px 6px 4px;font-size:14px;color:var(--muted)}
  .rooms,.bento{grid-template-columns:1fr}
  .card-text{padding:26px 26px 0}
  .card-shot{padding:24px 26px 0}
  .places{gap:14px}
  .pre{padding:24px 18px;border-radius:24px}
  .gift{grid-template-columns:72px 1fr;gap:14px;padding:12px}
  .gift>img,.gift>.vipcard{width:72px;height:72px}
  .vipcard b{font-size:14px}
  .form{padding:22px}
  .days button{font-size:13px}
  .slots li{grid-template-columns:52px 1fr;row-gap:0}
  .slots small{grid-column:2}
  .foot nav{margin:0}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js .reveal{opacity:1;transform:none}
  .js .title .line>span{transform:none}
}
