@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600;700&family=Great+Vibes&display=swap";.site-header{justify-content:space-between;align-items:center;max-width:1160px;margin:auto;padding:26px 32px;display:flex}.monogram{font:30px Cormorant Garamond,Georgia,serif;text-decoration:none}.monogram span{color:var(--rose);font-style:italic}nav{align-items:center;gap:30px;display:flex}nav a{font-size:13px;text-decoration:none}nav a:hover,.text-link:hover{color:var(--rose)}.nav-rsvp{border-bottom:1px solid var(--gold);padding-bottom:4px}.hero{isolation:isolate;text-align:center;background:radial-gradient(ellipse at 18% 35%, #f2bed37a, transparent 52%), radial-gradient(ellipse at 85% 65%, #d1c3e87a, transparent 55%), radial-gradient(ellipse at 55% 85%, #fad6df99, transparent 55%), var(--ivory);padding:80px 24px 64px;position:relative;overflow:hidden}.hero:before{content:"";border:1px solid var(--gold);pointer-events:none;z-index:-1;border-radius:2px;position:absolute;inset:24px}.eyebrow{letter-spacing:2.5px;text-transform:uppercase;color:var(--rose);font-size:10px;font-weight:700;line-height:1.8;display:block}.hero .eyebrow{color:var(--plum)}h1,h2,h3,.intro>p{font-family:Cormorant Garamond,Georgia,serif;font-weight:500}h1{overflow-wrap:anywhere;margin:24px 0 14px;font-family:Great Vibes,cursive;font-size:clamp(80px,11vw,138px);font-weight:400;line-height:1.2}.ampersand{margin:0 18px;font-family:Cormorant Garamond,Georgia,serif;font-size:.6em;font-style:italic;display:inline-block}.hero-copy{color:#76526b;font-size:15px;line-height:1.8}.date-pill{background:#fffaf5a6;border:1px solid #b79a49a6;border-radius:100px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;width:fit-content;margin:28px auto;padding:12px 22px;font-size:12px;line-height:1.8;display:flex}.date-pill>span:first-of-type{color:var(--rose)}.button{background:var(--plum);color:#fff;border-radius:100px;padding:15px 27px;font-size:13px;text-decoration:none;transition:transform .2s,background .2s;display:inline-block;box-shadow:0 5px 16px #641d451f}.button:hover{background:#812b59;transform:translateY(-2px)}.countdown{color:var(--muted);margin-top:19px;font-size:11px}.flower{-webkit-user-select:none;user-select:none;pointer-events:none;opacity:.65;line-height:1;position:absolute}.flower-one{color:#d58ea5;font-size:190px;top:90px;left:6%;transform:rotate(-20deg)}.flower-two{color:#aa90bf;font-size:130px;bottom:90px;right:8%}.section{max-width:1020px;margin:auto;padding:60px 28px}.intro{text-align:center;padding-top:40px;padding-bottom:48px}.tiny-flower{color:#a56d9d;font-size:36px;display:block}.intro>p{margin:16px 0;font-size:clamp(25px,4vw,35px);line-height:1.5}.intro-description,.card p,.questions p,.rsvp p,.memories .section-heading>p{color:var(--muted);font-size:13px;line-height:1.9}.section-heading{text-align:center;margin-bottom:30px}h2{margin:10px 0 16px;font-size:clamp(36px,5vw,48px)}h3{margin:10px 0;font-size:29px}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.card{border:1px solid var(--line);background:#fffdfae6;border-radius:20px;overflow:hidden;box-shadow:0 8px 28px #641d450a}.card-body{padding:27px}.card-body p{margin:8px 0}.text-link{text-underline-offset:5px;margin-top:14px;font-size:12px;display:inline-block}.timeline-card{background:linear-gradient(145deg, #fcebf1a6, #f0e9f799), var(--ivory);padding:30px}.timeline{margin:27px 0 0;padding:0;list-style:none}.timeline-item{grid-template-columns:70px 1fr;gap:18px;padding-bottom:23px;display:grid}.timeline-item:last-child{padding-bottom:0}.event-time{color:var(--rose);padding-top:4px;font-size:10px}h4{margin:0;font-size:13px;font-weight:600}.timeline-item p{margin:5px 0 0;font-size:12px}.wedding-art{background:radial-gradient(ellipse at 20% 70%, #f4c1d1b3, transparent 60%), radial-gradient(ellipse at 85% 25%, #d3c4e6bf, transparent 65%), var(--ivory);flex-direction:column;justify-content:center;align-items:center;height:210px;display:flex;position:relative;overflow:hidden}.wedding-art:before{content:"";pointer-events:none;border:1px solid #b79a4973;border-radius:100px 100px 10px 10px;position:absolute;inset:14px}.wedding-rings{width:200px;height:135px;color:var(--gold);filter:drop-shadow(0 3px 5px #641d4514)}.wedding-art-sparkle{color:var(--rose);font-size:32px;position:absolute}.sparkle-left{top:48px;left:20%}.sparkle-right{top:74px;right:20%}.wedding-art-caption{font:italic 21px Cormorant Garamond,Georgia,serif}.photo-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;gap:28px;display:grid}.photo-card{border:1px solid var(--line);background:#fffdfa;border-radius:6px;justify-self:center;width:100%;max-width:420px;margin:0;padding:12px 12px 20px;box-shadow:0 8px 25px #641d4512}.photo-link{background:#f4eaf1;border-radius:3px;display:block;overflow:hidden}.photo-card img{aspect-ratio:4/5;object-fit:cover;width:100%;transition:transform .3s;display:block}.photo-card--invitation img{aspect-ratio:auto;object-fit:contain;height:auto}.photo-link:hover img{transform:scale(1.02)}.photo-card figcaption{text-align:center;padding:17px 8px 0;font:italic 23px Cormorant Garamond,Georgia,serif}.photo-placeholder{text-align:center;background:linear-gradient(135deg, var(--blush), var(--lavender));flex-direction:column;justify-content:center;align-items:center;min-height:320px;padding:24px;display:flex}.photo-placeholder>span{font-size:48px}.photo-placeholder p{font:italic 26px Cormorant Garamond,Georgia,serif}.photo-placeholder small{overflow-wrap:anywhere;line-height:1.8}.questions{grid-template-columns:.8fr 1.2fr;gap:60px;display:grid}.faq-list details{border-bottom:1px solid var(--line);padding:19px 0}.faq-list summary{cursor:pointer;padding-right:12px;font-size:14px}.faq-list p{margin-bottom:0}.rsvp{isolation:isolate;text-align:center;background:radial-gradient(at 15% 20%,#f2bed38c,#0000 60%),radial-gradient(at 90% 80%,#d3c3e8a6,#0000 60%),#fbf0f3;border:1px solid #b79a49a6;border-radius:24px;max-width:964px;margin-top:20px;margin-bottom:60px;padding:48px 24px;position:relative}.rsvp:before{content:"";pointer-events:none;z-index:-1;border:1px solid #b79a4959;border-radius:16px;position:absolute;inset:10px}.rsvp .tiny-flower{margin-bottom:14px}.rsvp .button{margin-top:15px}.rsvp small{color:#76526b;margin-top:17px;font-size:11px;line-height:1.7;display:block}footer{text-align:center;padding:0 24px 40px}footer>span{font:italic 30px Cormorant Garamond,Georgia,serif}footer p{color:var(--muted);margin:12px 0;font-size:12px}footer small{color:var(--muted);font-size:10px}@media (width<=900px){.flower-one{opacity:.45;left:-50px}.flower-two{opacity:.5;right:-30px}}@media (width<=700px){.site-header{padding:22px}nav{gap:18px}nav a{font-size:11px}.details-nav{display:none}.hero{padding:65px 28px 60px}.hero:before{inset:12px}h1{font-size:clamp(80px,17vw,110px);line-height:1.1}.ampersand{margin:8px 0;font-size:44px;display:block}.flower-one{opacity:.35;font-size:95px;top:135px;left:-25px}.flower-two{opacity:.4;font-size:85px;bottom:100px;right:-15px}.details-grid,.questions,.photo-grid{grid-template-columns:1fr}.questions{gap:8px}.section{padding:38px 22px}.rsvp{margin:20px 18px 45px;padding:38px 22px}.date-pill{max-width:280px}}@media (prefers-reduced-motion:reduce){.button,.photo-card img{transition:none}.button:hover,.photo-link:hover img{transform:none}}.language-toggle{appearance:none;width:38px;height:38px;color:var(--plum);cursor:pointer;background:#fffaf5d9;border:1px solid #b79a49a6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .2s,transform .2s;display:inline-flex}.language-toggle>span{font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:23px;line-height:1}.language-toggle:hover{background:var(--blush);transform:translateY(-1px)}.language-toggle:focus-visible{outline:3px solid var(--rose);outline-offset:4px}html[lang=ko] body{word-break:keep-all;overflow-wrap:break-word;font-family:Noto Sans KR,sans-serif}html[lang=ko] h1,html[lang=ko] h2,html[lang=ko] h3,html[lang=ko] .intro>p,html[lang=ko] .wedding-art-caption,html[lang=ko] .photo-card figcaption,html[lang=ko] footer>span{font-family:Noto Serif KR,serif}html[lang=ko] h1{font-size:clamp(56px,8vw,100px);line-height:1.6}html[lang=ko] h2{font-size:clamp(28px,4vw,38px);line-height:1.6}html[lang=ko] h3{font-size:24px;line-height:1.6}html[lang=ko] .eyebrow{letter-spacing:1px}html[lang=ko] .wedding-art-caption{font-size:18px}html[lang=ko] .timeline-item{grid-template-columns:85px 1fr;gap:12px}@media (width<=700px){.site-header{gap:12px;padding:20px 16px}nav{gap:12px}.language-toggle{width:34px;height:34px;padding:0}.language-toggle>span{font-size:21px}html[lang=ko] h1{font-size:clamp(56px,14vw,80px)}}@media (width<=380px){nav{gap:8px}nav a{font-size:10px}}@media (prefers-reduced-motion:reduce){.language-toggle{transition:none}.language-toggle:hover{transform:none}}:root{color:#641d45;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--plum:#641d45;--rose:#8d365e;--muted:#806576;--gold:#b79a49;--blush:#f7dce5;--lavender:#e9e0f1;--ivory:#fffaf5;--line:#e6d4df;background:#fffaf5;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}a{color:inherit}a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:6px}section{scroll-margin-top:30px}::selection{color:var(--plum);background:#edc4d6}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
