:root{--wine:#6d2230;--gold:#b18a4a;--paper:#f7f3eb;--ink:#664f3d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Cormorant Garamond",serif;font-size:18px}.intro{position:fixed;inset:0;z-index:100;background:#fff;cursor:pointer;overflow:hidden;transition:opacity .8s,visibility .8s}.intro>img{width:100%;height:100%;object-fit:cover}.intro-mark{position:absolute;inset:0 0 0 48%;display:grid;place-items:center}.intro-mark img{width:min(560px,60vw);filter:sepia(1) saturate(2) hue-rotate(310deg)}.intro span{position:absolute;left:50%;bottom:6%;translate:-50%;color:#7a2b36;text-transform:uppercase;letter-spacing:.22em;font-size:12px}.intro.open{opacity:0;visibility:hidden}.lang,.sound{position:fixed;z-index:40;border:1px solid #ddd;background:#fff;border-radius:30px;box-shadow:0 3px 12px #0001}.lang{right:24px;top:18px;padding:5px;display:flex;gap:4px}.lang b,.lang span{padding:9px 13px;border-radius:22px}.lang b{background:#8c6735;color:#fff}.sound{right:28px;bottom:22px;width:48px;height:48px;font-size:22px}.hero{min-height:100vh;position:relative;overflow:hidden;background:#777}.hero-collage{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr)}.hero-collage img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#5a402577,#0001,#39231577),linear-gradient(#0004,#0001 55%,#0006)}.hero-copy{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:white;text-shadow:0 2px 20px #0005}.eyebrow{font-family:Georgia,serif;letter-spacing:.35em;font-size:15px;font-weight:bold}.hero h1{font-family:"Great Vibes",cursive;font-weight:400;font-size:clamp(82px,12vw,170px);line-height:.7;margin:55px 0}.hero h1 small{font-size:.3em;display:block;margin:30px}.ornament{display:flex;align-items:center;gap:18px}.ornament i{height:1px;width:80px;background:currentColor}.date{font-size:27px;letter-spacing:.08em}.pill{display:inline-block;border:1px solid currentColor;border-radius:30px;padding:11px 31px;color:inherit;text-decoration:none;letter-spacing:.17em;font-size:13px}.paper{background-color:var(--paper);background-image:url("https://premiumelegante.thedigitalyes.com/assets/white-textured-paper-KasY8RAJ.png");background-size:520px}.countdown{text-align:center;padding:90px 20px}.script,.paper h2,.gold h2,.dress h2,.gifts h2,.rsvp h2{font-family:"Great Vibes",cursive;font-weight:400;font-size:clamp(52px,7vw,86px)}.countdown>p{letter-spacing:.25em;font-size:13px}.numbers{display:flex;justify-content:center;gap:clamp(40px,11vw,150px);margin-top:45px}.numbers div{display:flex;flex-direction:column}.numbers b{font-size:65px;font-weight:300}.numbers span{letter-spacing:.2em;font-size:12px}.welcome{min-height:700px;padding:70px 10%;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%}.welcome .floral{max-height:570px;max-width:100%;object-fit:contain}.welcome p{font-size:23px;line-height:1.75}.gold{background:#b99155;color:#fff3df;text-align:center}.venue{padding:100px 20px}.venue header p{letter-spacing:.1em}.glass-card{max-width:760px;margin:55px auto 0;padding:50px;background:#fff6;border:1px solid #fff7;backdrop-filter:blur(12px);border-radius:18px}.glass-card h3{font-family:"Great Vibes";font-size:42px;font-weight:400}.glass-card hr{border:0;border-top:1px solid #fff5;margin:26px}.line-link{display:inline-block;color:inherit;margin-top:20px;text-underline-offset:8px}.programme{text-align:center;padding:90px 20px}.programme>img{height:180px}.programme h2{margin:15px}.sub{letter-spacing:.12em}.timeline{max-width:900px;margin:50px auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#c6b394}.timeline div{background:var(--paper);padding:32px 10px;display:flex;flex-direction:column;gap:10px}.timeline b{font-size:34px;font-weight:400}.timeline span{font-size:12px;letter-spacing:.17em}.dress{min-height:720px;position:relative;display:grid;place-items:center;padding:60px 20px}.dress-bg{position:absolute;inset:0;background:url("https://premiumelegante.thedigitalyes.com/assets/venue-hedsor-front-COdUzTcT.png") center/cover no-repeat}.dress .glass-card{position:relative;width:min(680px,90%);text-align:center;color:#785f3e;background:#f8f0dfbf}.dress h3{margin:15px}.events{text-align:center;padding:100px 8%}.events>p{max-width:720px;margin:15px auto}.event-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;max-width:900px;margin:50px auto}.event-grid article{padding:30px;border-top:1px solid #bca98d}.event-grid img{height:150px;max-width:100%;object-fit:contain}.event-grid h3{font-family:"Great Vibes";font-size:44px;font-weight:400}.travel{padding:100px 20px}.routes{display:flex;justify-content:center;gap:45px;margin-top:50px}.light{margin-top:25px}.stay{text-align:center;padding:100px 7%}.matchbox{height:150px}.stay>p{max-width:700px;margin:0 auto 40px}.hotel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:auto}.hotel-grid article{padding:32px;background:#fff9;border:1px solid #cdbb9d}.hotel-grid a{color:var(--wine)}.hotel-grid small{display:block;margin-top:20px}.gifts{background:#6b2735;color:#fff5ed;padding:90px 10%;display:grid;grid-template-columns:1fr 1.2fr;gap:7%;align-items:center}.gifts>img{width:100%;max-height:520px;object-fit:contain}.gifts p{line-height:1.7}.rsvp{text-align:center;padding:100px 20px}.rsvp>p{font-size:22px}.rsvp form{max-width:700px;margin:45px auto;text-align:left}.rsvp label{display:block;margin:24px 0 8px}.rsvp input,.rsvp textarea{width:100%;border:0;border-bottom:1px solid #9f8d72;background:transparent;padding:14px;font:inherit}.choice{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice button,.submit{border:1px solid #9f8d72;background:transparent;padding:14px;font:inherit}.choice .active,.submit{background:#7d2938;color:#fff}.submit{width:100%;margin-top:30px;border-radius:30px}footer{background:#441d25;color:#fff;text-align:center;padding:100px 20px}footer h2{font-family:"Great Vibes";font-size:70px;font-weight:400;margin:0}footer h2 span{font-size:.55em;margin:0 18px}.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s,transform 1s}.reveal.seen{opacity:1;transform:none}@media(max-width:700px){body{font-size:16px}.intro-mark{inset:52% 0 0}.intro-mark img{width:90vw}.hero-collage{grid-template-columns:1fr}.hero-collage img:not(:first-child){display:none}.hero h1{font-size:88px}.welcome,.gifts{grid-template-columns:1fr;text-align:center}.welcome{padding:50px 8%}.welcome .floral{max-height:360px}.timeline{grid-template-columns:repeat(2,1fr)}.event-grid,.hotel-grid{grid-template-columns:1fr}.routes{flex-direction:column;gap:10px}.numbers{gap:28px}.numbers b{font-size:45px}.choice{grid-template-columns:1fr}.lang{right:12px}.sound{right:14px}}
