:root{--cream:#f6eee2;--paper:#fff8ee;--brown:#6b431f;--gold:#b78a35;--text:#70472c}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--brown);font-family:Arial,sans-serif}.hero{padding:32px 16px}.card{position:relative;max-width:980px;min-height:520px;margin:auto;background:#fff8eecc;border:1px solid #cfaa55;border-radius:38px;box-shadow:0 24px 60px #4c2f1629;overflow:hidden}.border{position:absolute;inset:24px;border:2px solid #c89a3eaa}.content{position:relative;z-index:2;text-align:center;padding:105px 20px}.intro{font:32px 'Cormorant Garamond',serif}.content h1{font:118px/.84 'Great Vibes',cursive;margin:25px 0}.content h1 span{display:block;font:52px 'Cormorant Garamond',serif;padding:15px}.line{width:450px;max-width:80%;height:1px;background:var(--gold);margin:25px auto}.date{font:700 42px 'Cormorant Garamond',serif;letter-spacing:.2em;text-transform:uppercase}.day-section,.practical-section,.rsvp,.gallery-page{padding:30px 16px}.day-wrap,.practical-card,.formbox,.gallery-card{background:var(--paper);border:1px solid #cfaa55;border-radius:28px;padding:30px;box-shadow:0 12px 35px #4c2f1617}.day-wrap{max-width:1000px;margin:auto;position:relative}.practical-wrap,.wrap{max-width:1100px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:24px}.wrap.form-only{display:block;max-width:760px}.timeline{position:relative;display:grid;gap:0;margin-top:26px;padding:8px 0}.timeline:before{content:"";position:absolute;top:22px;bottom:22px;left:145px;width:2px;background:linear-gradient(180deg,rgba(183,138,53,.15),rgba(183,138,53,.95),rgba(183,138,53,.15));border-radius:999px}.timeline-item{position:relative;display:grid;grid-template-columns:110px 42px 1fr;gap:18px;align-items:start;padding:18px 0}.timeline-item:before{content:"";grid-column:2;width:18px;height:18px;margin:7px auto 0;border-radius:50%;background:#fff8ee;border:3px solid #b78a35;box-shadow:0 0 0 7px rgba(183,138,53,.16),0 8px 18px rgba(77,47,22,.16);z-index:2}.timeline-item:after{content:"";position:absolute;left:164px;top:35px;width:34px;height:2px;background:rgba(183,138,53,.75);border-radius:999px}.timeline-item:first-child:before{background:#b78a35;border-color:#fff8ee}.timeline-item:last-child:before{background:#6b431f;border-color:#fff8ee}.time{grid-column:1;text-align:right;font:700 26px 'Cormorant Garamond',serif;color:#6b431f;background:#fff8ee;border:1px solid rgba(207,170,85,.85);border-radius:999px;padding:8px 14px;box-shadow:0 8px 20px rgba(77,47,22,.08)}.timeline-item>div:last-child{grid-column:3;background:#fff;border:1px solid rgba(207,170,85,.65);border-radius:22px;padding:15px 18px;box-shadow:0 10px 24px rgba(77,47,22,.08)}.timeline-item h3{font:34px 'Great Vibes',cursive;margin:0;text-align:left}.timeline-item p,.place-item span,.practical-card ul{font:20px 'Cormorant Garamond',serif;color:var(--text)}.place-list{display:grid;gap:14px}.place-item{border:1px solid #d9bd79;border-radius:20px;background:white;padding:16px;display:grid;gap:7px}.place-item a{justify-self:start;text-decoration:none;border-radius:999px;background:#8a5a2d;color:#fff8ee;padding:12px 20px;font-weight:700}.kicker{letter-spacing:.3em;color:var(--gold);text-transform:uppercase}h2,h3{font-family:'Great Vibes',cursive;font-weight:400}h2{font-size:58px;margin:10px 0}h3{font-size:52px;text-align:center;margin:0 0 20px}.hint{padding:12px 14px;background:#f4ead8;border-radius:16px;margin:0 0 18px}.grid,.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}label,.label{display:block;font:22px 'Cormorant Garamond',serif;margin:14px 0 8px}input,textarea,select{width:100%;border:1px solid #d9bd79;border-radius:20px;padding:14px;background:#fff;font:16px Arial}input{border-radius:999px}.choices,.actions{display:flex;gap:12px;flex-wrap:wrap}.choices{margin-bottom:28px}.choice,.secondary,.primary{border-radius:999px;padding:14px 20px;cursor:pointer;font-weight:700}.choice,.secondary{border:1px solid var(--gold);background:#fff;color:var(--brown)}.choice.active{background:#efe0c5}.primary{width:100%;margin-top:18px;border:0;background:#8a5a2d;color:#fff}.participant{position:relative;background:#fff;border:1px solid #d9bd79;border-radius:22px;padding:16px;margin:12px 0}.remove{position:absolute;right:12px;top:10px;border:0;background:transparent;color:#9b1c1c;font-weight:bold;cursor:pointer}#participantsBlock{margin-top:26px}#participantsBlock .actions{margin-top:18px;margin-bottom:32px}#formMessage,.upload-message{display:none;margin-top:14px;padding:13px;border-radius:16px}.success{display:block!important;background:#f0fdf4;color:#166534}.error{display:block!important;background:#fff1f1;color:#9b1c1c}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}.gallery-grid img{width:100%;height:190px;object-fit:cover;border-radius:18px}footer{text-align:center;background:#6b431f;color:#fff8ee;padding:28px}@media(max-width:800px){.wrap,.grid,.row,.practical-wrap{grid-template-columns:1fr}.content h1{font-size:78px}.date{font-size:30px}.timeline:before{left:22px;top:24px;bottom:24px}.timeline-item{grid-template-columns:44px 1fr;gap:12px;padding:16px 0}.timeline-item:before{grid-column:1;grid-row:1/span 2;margin:11px auto 0}.timeline-item:after{display:none}.time{grid-column:2;grid-row:1;justify-self:start;text-align:left;font-size:22px;padding:7px 14px}.timeline-item>div:last-child{grid-column:2;grid-row:2;padding:14px 16px}.gallery-grid{grid-template-columns:1fr}}