@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Marcellus&family=Allura&display=swap";:root{--bg-1:#fbf7f1;--bg-2:#f0e8da;--leaf:#60765a;--leaf-soft:#90a487;--gold:#b6935c;--gold-soft:#dec79f;--text:#352f29;--text-soft:#6b6156;--panel:#fffbf599}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-height:100svh;color:var(--text);background:radial-gradient(60rem 30rem at -5% -10%, #e6d4ad70, transparent 65%), radial-gradient(46rem 28rem at 102% 10%, #92aa8352, transparent 66%), radial-gradient(36rem 24rem at 40% 95%, #d4bf964d, transparent 70%), linear-gradient(115deg, var(--bg-1), var(--bg-2))}.page{min-height:100svh}.layout{grid-template-columns:1.15fr .85fr;gap:clamp(10px,1.2vw,16px);width:100%;min-height:100svh;padding:16px 22px;display:grid;position:relative;overflow:hidden}.hero-area,.details-area{z-index:1;border:1px solid #b5935c66;border-radius:40px 14px;flex-direction:column;justify-content:center;min-height:0;padding:clamp(20px,4vw,58px);display:flex;position:relative}.hero-flower{transform-origin:50%;opacity:.92;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:2;height:auto;position:absolute;top:-2em;right:-3.5em;transform:scale(-1)}.invite-copy{text-transform:uppercase;letter-spacing:.2em;color:var(--text-soft);margin:0;font-family:Marcellus,serif;font-size:clamp(.72rem,1vw,1rem)}.names{color:#42503f;gap:6px;margin:16px 0 18px;display:grid}.names span{text-shadow:0 4px 18px #4c5f471a;font-family:Allura,cursive;font-size:clamp(4.8rem,13vw,12rem);line-height:.84;display:block}.names em{color:var(--gold);font-family:Cormorant Garamond,serif;font-size:clamp(2rem,4.2vw,4rem);font-style:normal;line-height:.6}.families{text-transform:uppercase;letter-spacing:.12em;color:var(--text-soft);margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(.82rem,1.4vw,1.3rem)}.details-area{gap:clamp(14px,2.6vh,26px)}.details-grid{background:var(--panel);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border:1px solid #ab90635c;border-radius:14px;grid-template-columns:auto 1fr;gap:clamp(6px,1.5vh,16px) 14px;padding:clamp(16px,2vw,28px);display:grid}.label{text-transform:uppercase;letter-spacing:.15em;color:#8a7454;vertical-align:middle;margin:0;font-family:Marcellus,serif;font-size:clamp(.64rem,.85vw,.86rem)}.value{margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(1.06rem,1.9vw,2.05rem);line-height:1.1}.countdown{background:linear-gradient(90deg,#fffcf7eb,#f7f0e5d1);border:1px solid #a68b5f59;border-radius:14px;padding:.5em clamp(14px,2vw,24px) 1em}.countdown-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(4px,.65vw,9px);display:grid}.count-item{text-align:center;background:linear-gradient(#fffdf8,#f1e9d8eb);border:1px solid #ab916773;padding:clamp(8px,1.2vw,14px) clamp(2px,.5vw,6px) clamp(6px,.8vw,10px);position:relative}.count-item strong{color:#4d5f47;font-family:Marcellus,serif;font-size:clamp(1.05rem,2.2vw,2rem);line-height:1;display:block}.count-item span{text-transform:uppercase;letter-spacing:.08em;color:#6c6052;margin-top:4px;font-family:Marcellus,serif;font-size:clamp(.5rem,.8vw,.82rem);display:block}.countdown-message{text-align:center;color:#4f6549;margin:0;font-family:Marcellus,serif;font-size:clamp(.95rem,1.4vw,1.25rem)}.map-button{color:#fffefb;text-transform:uppercase;letter-spacing:.08em;background:linear-gradient(110deg,#5c7555,#6f8a65);border:1px solid #4f6448;border-radius:8px;justify-content:center;align-self:flex-start;align-items:center;min-height:50px;padding:0 clamp(16px,2vw,26px);font-family:Marcellus,serif;font-size:clamp(.74rem,.95vw,.92rem);text-decoration:none;transition:filter .18s;display:inline-flex}.map-button:hover{filter:brightness(.94)}.map-button:focus-visible{outline-offset:2px;outline:3px solid #b89963cc}.countdown-label p{text-align:center;margin-top:.5em;margin-bottom:.5em;font-family:Cormorant Garamond,serif;font-size:clamp(1.06rem,1.9vw,2.05rem)}@media (width<=980px){.layout{grid-template-rows:auto auto;grid-template-columns:1fr;gap:12px;padding:12px}.hero-area,.details-area{border-radius:30px 12px;min-height:auto;padding:20px 16px}.hero-area{text-align:center;justify-content:center;align-items:center;padding-top:14px;padding-bottom:14px}.hero-flower{width:clamp(110px,32vw,170px);top:-1em;right:-1em}.names{margin:4px 0 8px}.details-area{justify-content:flex-start;gap:12px}.map-button{align-self:stretch;width:100%}}@media (prefers-reduced-motion:reduce){.map-button{transition:none}}
