*{box-sizing:border-box}.guest-page{margin:0;background:#f0f2f1;font-family:Arial,sans-serif}.mobile-invitation{--bg:#fff;--ink:#30332f;--accent:#60735f;background:var(--bg);color:var(--ink);font:16px/1.9 Arial,sans-serif;max-width:480px;margin:auto;overflow:hidden;text-align:center;min-height:100vh}.mobile-invitation[data-font=serif]{font-family:'Nanum Myeongjo',Georgia,serif}.mobile-invitation button,.mobile-invitation input,.mobile-invitation textarea,.mobile-invitation select{font:inherit}.mobile-invitation h1,.mobile-invitation h2,.mobile-invitation h3,.mobile-invitation p{margin:0}.mobile-invitation h1{font-size:44px;line-height:1.3;font-weight:400;overflow-wrap:anywhere}.mobile-invitation h2{font-size:24px;font-weight:400;line-height:1.6;margin:12px 0 26px}.mobile-invitation h3{font-size:18px;font-weight:400}.mobile-invitation p{white-space:pre-line;overflow-wrap:anywhere}.mobile-invitation a{color:inherit}.cover{position:relative;min-height:760px;display:flex;flex-direction:column;align-items:center;padding:54px 30px 38px;gap:24px}.cover .eyebrow,.section-label{font-family:Arial,sans-serif;font-size:12px;line-height:1.5;color:var(--accent)}.cover .cover-photo{width:100%;height:355px;display:block;object-fit:cover;object-position:center}.mobile-invitation[data-shape=arch] .cover-photo{border-radius:50% 50% 0 0}.mobile-invitation[data-shape=oval] .cover-photo{border-radius:50%}.cover-names{font-size:22px;line-height:1.6;display:flex;align-items:center;justify-content:center;gap:17px;width:100%;overflow-wrap:anywhere}.cover-names span{min-width:0}.cover-names i{font-size:12px;font-style:normal;color:var(--accent)}.cover-date{font-size:15px;line-height:1.8}.cover-venue{font-size:14px;line-height:1.7}.cover[data-style=arch]{padding-top:65px;gap:23px}.cover[data-style=arch] .cover-photo{height:410px}.cover[data-style=fullbleed]{padding:0;min-height:760px;justify-content:flex-end;gap:15px;color:white}.cover[data-style=fullbleed] .cover-photo{position:absolute;inset:0;width:100%;height:100%;border-radius:0;object-fit:cover}.cover[data-style=fullbleed]::after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55))}.cover[data-style=fullbleed]>:not(img){position:relative;z-index:1;text-shadow:0 1px 8px #0005}.cover[data-style=fullbleed] .eyebrow{color:white}.cover[data-style=fullbleed] h1{max-width:90%;font-size:45px}.cover[data-style=fullbleed] .cover-venue{padding-bottom:42px}.cover[data-style=letter]{justify-content:center;gap:36px;padding:80px 32px;min-height:730px;border-bottom:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.cover[data-style=letter] h1{font-size:54px;max-width:280px}.invitation-section{padding:68px 30px}.mobile-invitation[data-spacing=compact] .invitation-section{padding:44px 28px}.invitation-section:nth-of-type(even){background:color-mix(in srgb,var(--accent) 4%,var(--bg))}.invitation-section .copy{font-size:16px;line-height:2.15}.couple-signature{margin:28px 0 0!important;font-size:17px}.date-detail{font:15px/1.8 Arial,sans-serif}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:28px auto;max-width:300px;font:15px/2.1 Arial,sans-serif}.calendar .weekday{font-size:13px;color:var(--accent)}.calendar .sunday{color:#b45c68}.calendar .wedding-day{background:var(--accent);color:var(--bg);border-radius:50%;width:32px;height:32px;justify-self:center}.countdown{font-size:14px;line-height:1.8;margin-top:12px!important}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 -5px}.gallery button{border:0;padding:0;background:none;display:block;cursor:zoom-in}.gallery img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}.gallery[data-style=film],.gallery[data-style=carousel]{display:flex;overflow:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:12px;overscroll-behavior-x:contain}.gallery[data-style=film] button{flex:0 0 78%;scroll-snap-align:center}.gallery[data-style=carousel] button{flex:0 0 100%;scroll-snap-align:center}.gallery[data-style=carousel] img{aspect-ratio:4/5}.empty-gallery{font-size:14px;color:var(--accent);padding:35px 0}.venue-name{font-size:20px;line-height:1.6;margin-bottom:7px!important}.venue-address{font-size:14px;line-height:1.8}.map-links{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:24px 0}.map-links a{padding:9px 13px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:3px;font:13px/1.6 Arial,sans-serif;text-decoration:none}.transport{font-size:14px;line-height:1.9;border-top:1px solid color-mix(in srgb,var(--accent) 20%,transparent);padding-top:23px;margin-top:12px!important}.guest-form,.rsvp-form{text-align:left;font-family:Arial,sans-serif}.mobile-invitation input,.mobile-invitation textarea,.mobile-invitation select{border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:3px;padding:10px;display:block;width:100%;color:var(--ink);background:var(--bg);margin:6px 0 15px;min-width:0;font-size:16px}.mobile-invitation textarea{min-height:100px;resize:vertical}.mobile-invitation label{font-size:14px;display:block}.mobile-invitation .submit-button{border:0;padding:12px;background:var(--accent);color:var(--bg);width:100%;border-radius:3px;cursor:pointer;font-size:15px}.mobile-invitation .form-status{font:14px/1.6 Arial,sans-serif;margin:12px 0;min-height:22px}.guest-messages{text-align:left;margin-top:25px;font-family:Arial,sans-serif}.guest-message{border-bottom:1px solid color-mix(in srgb,var(--accent) 20%,transparent);padding:15px 0}.guest-message strong{font-size:14px;font-weight:500}.guest-message p{font-size:14px;line-height:1.9;margin-top:6px}.guest-message time{font-size:12px;color:var(--accent)}.privacy-note{font:12px/1.8 Arial,sans-serif;color:var(--accent);text-align:left;margin:14px 0!important}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.rsvp-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.invite-footer{padding:64px 24px 30px;border-top:1px solid color-mix(in srgb,var(--accent) 18%,transparent);font-size:14px}.invite-footer .brand-credit{margin-top:45px;font:12px Georgia,serif;color:var(--accent)}.mobile-invitation[data-motion=fade] .reveal{opacity:0;transform:translateY(16px);transition:opacity .8s ease,transform .8s ease}.mobile-invitation[data-motion=fade] .reveal.visible{opacity:1;transform:none}.lightbox{padding:0;border:0;background:transparent;max-width:95vw;max-height:95vh;overflow:visible}.lightbox::backdrop{background:#000e}.lightbox img{display:block;max-width:92vw;max-height:85vh;width:auto;height:auto;object-fit:contain}.lightbox button{position:absolute;right:0;top:-38px;background:white;border:0;padding:5px 12px;font-size:18px;cursor:pointer}.page-loading{text-align:center;padding:100px 24px;line-height:1.8}@media(max-width:370px){.cover{padding-left:24px;padding-right:24px}.mobile-invitation h1{font-size:40px}.cover[data-style=letter] h1{font-size:48px}.invitation-section{padding-left:24px;padding-right:24px}}@media(prefers-reduced-motion:reduce){.mobile-invitation[data-motion=fade] .reveal{opacity:1;transform:none;transition:none}}
