@charset "UTF-8";
:root{--cream:#fffaf0;--gold:#a78231;--ink:#413d2d;--muted:#77705a;--line:#ded0ab}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:18px/1.75 Georgia,'Times New Roman',serif}button{font:inherit}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #bda256;outline-offset:5px}[hidden]{display:none!important}.hero{position:relative;min-height:800px;min-height:100svh;display:grid;place-items:center;text-align:center;overflow:hidden;color:#fffdf3;background:#615f3c}.hero-bg,.hero-shade,.count-bg{position:absolute;inset:0}.hero-bg{background:url('yol.png') center 28%/cover;filter:blur(4px);transform:scale(1.035)}.hero-shade{background:linear-gradient(#33270c45,#20281280 55%,#45341145)}.hero-content{position:relative;z-index:2;padding:70px 20px 35px;width:100%;text-shadow:0 2px 10px #0006}.eyebrow{font:12px/1.8 Arial,sans-serif;letter-spacing:3px;color:var(--gold)}.eyebrow.light{color:#fff1b4}h1{font-weight:400;font-style:italic;font-size:clamp(72px,10vw,112px);line-height:1.03;margin:32px 0 20px;letter-spacing:-3px}h1 em{display:block;font-size:38px;line-height:1.4;color:#ffe2a1}h1{max-width:800px;margin-inline:auto}.engagement{font:15px/1.5 Arial,sans-serif;letter-spacing:7px;color:#ffe78e;margin:28px 0}.hero-date{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:35px}.hero-date span{font-size:16px;letter-spacing:2px;border-block:1px solid #ffffff70;padding:10px 0;min-width:70px}.hero-date strong{font-weight:400;font-size:73px;line-height:1}.day{font:13px/1.6 Arial,sans-serif;letter-spacing:3px;margin-top:16px}.calendar-buttons{margin:28px auto 0;display:grid;gap:10px;width:min(275px,100%)}.pill{background:#fffaf0ed;color:#51482e;text-decoration:none;border-radius:25px;padding:10px 18px;font:14px/1.6 Georgia,serif;text-shadow:none}.pill:hover{background:white}.scroll-cue{display:block;text-decoration:none;font-style:italic;margin-top:24px;font-size:20px}.scroll-cue span{display:block;font:38px/1 Arial,sans-serif;animation:cue 2.5s ease-in-out infinite}.section{max-width:860px;margin:auto;text-align:center;padding:90px 28px}h2{font-weight:400;font-style:italic;font-size:clamp(34px,5vw,49px);line-height:1.3;margin:24px 0}.ornament{font-size:32px;color:var(--gold)}.letter>p{max-width:610px;margin:20px auto;color:var(--muted)}.couple-full{font-size:24px;color:var(--gold);margin:38px 0}.couple-full em{margin:0 12px}.families{display:grid;grid-template-columns:1fr 1fr;max-width:610px;margin:50px auto 0;border-top:1px solid var(--line);padding-top:35px;gap:24px}.families>div+div{border-left:1px solid var(--line)}.families span{font:11px/1.5 Arial,sans-serif;letter-spacing:2px;color:var(--muted)}.families p{font-size:21px;line-height:1.7;margin:17px 0}.count-section{position:relative;overflow:hidden;background:#695325;color:white;text-align:center;padding:70px 20px}.count-bg{background:linear-gradient(#42320b9c,#42320b9c),url('yol.png') center 20%/cover;filter:blur(2px);transform:scale(1.02)}.count-content{position:relative}.countdown{display:flex;justify-content:center;align-items:center;gap:23px;margin:32px 0}.countdown div{min-width:75px;display:flex;flex-direction:column}.countdown strong{font-size:55px;line-height:1.2;font-weight:400;font-variant-numeric:tabular-nums}.countdown span{font:11px/1.5 Arial,sans-serif;letter-spacing:2px;margin-top:12px}.countdown b{font-size:24px;font-weight:400;padding-bottom:20px;color:#eedc9e}#countdown-note{font-size:14px;color:#f6ebd3;margin:25px 0 0}.date{font-size:20px}.date strong{display:block;font-size:32px;font-weight:400;color:var(--gold)}.venue{margin:40px auto 0;padding:40px 25px;border:1px solid var(--line);outline:1px solid var(--line);outline-offset:-8px;max-width:600px}.venue h3{font-size:35px;line-height:1.3;font-weight:400;margin:18px 0}address{font-style:normal;color:var(--muted)}.landmark{font-size:15px;color:var(--muted);margin:17px auto 25px}.actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:30px 0 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--gold);color:var(--ink);font:14px/1.5 Arial,sans-serif;text-decoration:none;background:transparent;cursor:pointer}.button:hover{background:#eee4cd}.button.primary{background:#917022;color:white}.keepsake{padding-top:15px}.invitation-card{display:block;width:min(420px,100%);height:auto;margin:40px auto;box-shadow:0 12px 45px #6c592922}#status{font-size:14px;min-height:24px}footer{text-align:center;border-top:1px solid var(--line);padding:42px 20px 50px}footer>p{color:var(--muted);font-size:16px}footer>span{display:block;font-size:38px;font-style:italic;color:var(--gold)}footer>small{display:block;letter-spacing:3px;font:12px/1.6 Arial,sans-serif;margin:14px}.replay{display:block;margin:25px auto 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--muted);font-size:14px;cursor:pointer;padding:8px}#petals{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.petal{position:absolute;top:-12%;width:var(--size);height:var(--size);object-fit:contain;opacity:0;animation:float-petal var(--duration) linear var(--delay) infinite;will-change:transform}.reveal.ready{opacity:0;transform:translateY(28px);transition:opacity .85s,transform .85s}.reveal.visible{opacity:1;transform:none}#intro{position:fixed;inset:0;z-index:20;background:#221f12;display:flex;justify-content:center;overflow:hidden;transition:opacity 1.1s;overscroll-behavior:contain}.intro-stage{position:relative;height:100%;width:100%;max-width:calc(100svh * .625);overflow:hidden;background:#77602f}.road{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.road-shade{position:absolute;inset:0;background:linear-gradient(#0000 45%,#0004)}.journey{position:absolute;z-index:3;left:50%;top:61%;width:44%;transform:translate(-50%,-50%);filter:drop-shadow(4px 15px 6px #0008)}.journey img{width:100%;height:auto;display:block}.playing .journey{animation:drive 7s cubic-bezier(.13,.3,.42,.98) forwards}.road-message{position:absolute;z-index:2;top:77%;left:50%;transform:translate(-50%,-50%) rotate(-7deg);width:96%;text-align:center;color:#ffdb69;text-shadow:0 2px 4px #503100;opacity:0}.road-message>span{font-size:clamp(40px,8vw,62px);font-style:italic;line-height:1.1;display:block}.road-message small{display:block;font-size:21px;letter-spacing:1px;margin-top:10px}.road-message i{font-size:55px;line-height:1;display:block}.playing .road-message{animation:message 6.5s ease forwards}.intro-heading{position:absolute;top:8%;left:0;right:0;text-align:center;color:#ffefc9;text-shadow:0 2px 8px #342300;font:11px/1.5 Arial,sans-serif;letter-spacing:3px;opacity:0}.playing .intro-heading{animation:message 5s 1.5s ease forwards}.skip{position:absolute;z-index:5;right:18px;bottom:20px;border:1px solid #fff6;border-radius:30px;background:#272513b8;color:white;padding:11px 18px;font:14px/1.5 Arial,sans-serif;cursor:pointer;backdrop-filter:blur(10px)}#intro.leaving{opacity:0;pointer-events:none}#trail{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:hidden}.trail-petal{position:absolute;width:var(--w);height:var(--w);object-fit:contain;opacity:0;transform:rotate(var(--r))}.playing .trail-petal{animation:trail 5s var(--delay) ease-out forwards}@keyframes drive{0%{top:63%;width:44%;transform:translate(-50%,-50%) rotate(-1deg)}30%{transform:translate(-50%,-50%) rotate(.7deg)}100%{top:29%;width:5%;transform:translate(-50%,-50%) rotate(0)}}@keyframes message{0%,10%{opacity:0}40%,100%{opacity:1}}@keyframes trail{0%{opacity:0;transform:translateY(-18px) rotate(var(--r))}15%{opacity:.9}100%{opacity:.78;transform:translateY(12px) rotate(calc(var(--r) + 80deg))}}@keyframes float-petal{0%{transform:translate3d(0,-20px,0) rotate(0) rotateY(0);opacity:0}12%{opacity:.85}88%{opacity:.8}100%{transform:translate3d(var(--drift),110vh,0) rotate(480deg) rotateY(260deg);opacity:0}}@keyframes cue{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}@media(min-width:800px){.hero-bg{background-position:center 36%}.hero-content{padding-top:55px}.hero{min-height:850px;min-height:100svh}}@media(max-width:600px){.hero-content{padding-top:45px}.hero h1{font-size:78px;margin-top:22px}.eyebrow{font-size:11px;letter-spacing:2px}.engagement{font-size:13px;letter-spacing:5px}.hero-date{margin-top:25px}.hero-date strong{font-size:65px}.section{padding:65px 22px}.families{gap:12px}.families p{font-size:17px}.families span{font-size:10px;letter-spacing:1px}.couple-full{font-size:22px}.countdown{gap:10px}.countdown div{min-width:52px}.countdown strong{font-size:39px}.countdown span{font-size:10px;letter-spacing:1px}.venue{padding:35px 18px}.venue h3{font-size:30px}.keepsake{padding-top:0}.intro-stage{max-width:none}.road-message>span{font-size:49px}.road-message{top:77%}.skip{font-size:12px;bottom:16px;right:12px}}@media(max-height:680px){.hero-content{padding:35px 18px}.hero h1{font-size:58px;margin:18px auto}.hero-date{margin-top:15px}.hero-date strong{font-size:50px}.calendar-buttons{margin-top:16px}.scroll-cue{margin-top:15px}.engagement{margin:15px}.hero{min-height:680px}.intro-stage{max-width:430px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.ready{opacity:1;transform:none}#petals,#intro{display:none!important}}@media print{#intro,.hero,.count-section,.letter,.meeting,footer,.actions,.keepsake>h2,.keepsake>.eyebrow{display:none!important}.section{padding:0}.invitation-card{width:auto;max-width:100%;max-height:95vh;box-shadow:none;margin:0 auto}.reveal.ready{opacity:1;transform:none}}

.music-toggle{position:fixed;right:18px;top:18px;z-index:25;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:rgba(39,37,19,.72);color:#fff;padding:10px 16px;font:14px/1.4 Arial,sans-serif;cursor:pointer;backdrop-filter:blur(10px);box-shadow:0 6px 18px rgba(0,0,0,.15)}
.music-toggle:hover{background:rgba(39,37,19,.88)}
.map-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:4px}
.map-buttons .button{min-width:170px}
@media(max-width:600px){.music-toggle{top:auto;bottom:72px;right:12px;font-size:12px;padding:9px 14px}.map-buttons .button{width:100%}}

/* V5 - Misafir fotoğraf / video yükleme */
.guest-upload{padding-top:55px}.upload-intro{max-width:650px;margin:0 auto 28px;color:var(--muted)}.upload-card{max-width:650px;margin:0 auto;padding:34px 26px;border:1px solid var(--line);outline:1px solid var(--line);outline-offset:-8px;background:#fffdf7}.upload-icons{font-size:38px;letter-spacing:8px;margin-bottom:16px}.upload-pick{cursor:pointer}.upload-note{font:12px/1.6 Arial,sans-serif;color:var(--muted);margin:14px auto 0}.upload-list{display:grid;gap:12px;margin-top:24px;text-align:left}.upload-item{border:1px solid #e5dcc4;background:#fff;padding:12px 14px}.upload-item-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.upload-item-name{font:14px/1.35 Arial,sans-serif;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-item-size{font:12px/1.35 Arial,sans-serif;color:var(--muted);white-space:nowrap}.upload-item-note{font:12px/1.5 Arial,sans-serif;color:var(--muted);margin-top:5px}.upload-progress{height:7px;background:#eee7d6;margin-top:10px;overflow:hidden;border-radius:10px}.upload-progress>span{display:block;width:0;height:100%;background:var(--gold);transition:width .2s}.upload-item.done .upload-progress>span{width:100%}.upload-item.error{border-color:#d9a9a4}.upload-item.done{border-color:#b9c9a9}.upload-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:22px}.upload-status{min-height:26px;font:14px/1.6 Arial,sans-serif;margin:16px 0 0}.upload-status.error{color:#a7382f}.upload-status.ok{color:#527046}@media(max-width:600px){.upload-card{padding:28px 18px}.upload-actions .button,.upload-pick{width:100%}}
.upload-hero{font-weight:700;background:#fffdf6;color:#4c4329}
