.wedding-welcome{padding:80px 0 60px}.wedding-welcome .grid{grid-template-columns:1fr 1fr;align-items:center;gap:80px;max-width:1100px;margin:0 auto;display:grid}.wedding-welcome h1{font-family:var(--serif-display);letter-spacing:.18em;text-transform:uppercase;color:var(--ink);margin-bottom:28px;font-size:clamp(40px,5.2vw,72px);font-weight:400;line-height:1.05}.wedding-welcome p{font-family:var(--sans);color:var(--ink-2);max-width:520px;margin-bottom:16px;font-size:14.5px;line-height:1.75}.wedding-welcome .scroll-cue{border:1px solid var(--gold);width:44px;height:44px;color:var(--gold);cursor:pointer;transition:background var(--t-fast), color var(--t-fast);border-radius:50%;justify-content:center;align-items:center;margin-top:18px;display:inline-flex}.wedding-welcome .scroll-cue:hover{background:var(--gold);color:#fff}.wedding-welcome .img-ph{aspect-ratio:4/5;background:repeating-linear-gradient(135deg, var(--bg-warm) 0 14px, var(--bg-blush-soft) 14px 28px);border:1px solid var(--rule);justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.img-ph .ph-label{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;background:var(--bg);border:1px solid var(--rule);color:var(--ink-2);padding:6px 10px;font-size:10.5px}.img-ph .ph-corner{font-family:var(--mono);letter-spacing:.16em;color:var(--ink-3);text-transform:uppercase;background:#fff9;padding:3px 7px;font-size:9.5px;position:absolute;top:8px;right:8px}.wedding-info{max-width:900px;margin:0 auto;padding:60px 0 80px}.wedding-info h2{font-family:var(--serif-display);letter-spacing:.18em;text-transform:uppercase;text-align:center;color:var(--ink);margin-bottom:40px;font-size:clamp(28px,3.4vw,44px);font-weight:400}.wedding-info p{font-family:var(--sans);color:var(--ink-2);margin-bottom:18px;font-size:14px;line-height:1.85}.wedding-cta{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-top:40px;display:flex}.wedding-cta .left{flex-direction:column;gap:18px;display:flex}.btn-outline{border:1px solid var(--gold);color:var(--gold-2);font-family:var(--serif-display);letter-spacing:.22em;text-transform:uppercase;transition:all var(--t-fast);background:0 0;padding:14px 28px;font-size:11px;text-decoration:none;display:inline-block}.btn-outline:hover{background:var(--gold);color:#fff}.btn-link{font-family:var(--serif-display);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-2);text-underline-offset:6px;cursor:pointer;font-size:11px;text-decoration:underline}.btn-link:hover{color:var(--gold)}.photo-strip{grid-template-columns:1fr 1fr 1fr;gap:0;width:100%;display:grid}.photo-strip .img-ph{aspect-ratio:4/3;background:repeating-linear-gradient(135deg, var(--bg-warm) 0 14px, var(--bg-blush-soft) 14px 28px);border:1px solid var(--rule);justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.faq-section{background:var(--bg-blush-soft);padding:80px 0}.faq-section h2{font-family:var(--serif-display);letter-spacing:.18em;text-transform:uppercase;text-align:center;color:var(--ink);margin-bottom:50px;font-size:clamp(24px,3vw,36px);font-weight:400}.faq-list{background:var(--bg);max-width:880px;margin:0 auto}.faq-item{border-bottom:1px solid var(--rule)}.faq-item:last-child{border-bottom:none}.faq-item .q{font-family:var(--sans);color:var(--ink);cursor:pointer;transition:background var(--t-fast);justify-content:space-between;align-items:center;padding:22px 28px;font-size:13.5px;display:flex}.faq-item .q:hover{background:var(--bg-warm)}.faq-item.open .q{background:var(--bg-blush-soft)}.faq-item .toggle{color:var(--ink-3);text-align:center;width:16px;font-size:18px;font-weight:300}.faq-item .a{font-family:var(--sans);color:var(--ink-2);background:var(--bg-blush-soft);padding:0 28px 26px;font-size:13.5px;line-height:1.75;display:none}.faq-item.open .a{display:block}.faq-item .a a{color:var(--gold-2)}.faq-item .a address{color:var(--ink-2);margin-top:14px;font-size:13.5px;font-style:normal;line-height:1.7}.faq-footnote{text-align:center;max-width:720px;font-family:var(--serif-italic);color:var(--ink-2);margin:36px auto 0;font-size:13.5px;font-style:italic;line-height:1.7}.faq-footnote .accent{color:var(--gold-2)}@media (width<=800px){.wedding-welcome .grid{grid-template-columns:1fr;gap:40px}.photo-strip{grid-template-columns:1fr}}@media (width<=640px){.wedding-welcome{padding:56px 0 40px}.wedding-welcome h1{margin-bottom:20px;font-size:clamp(32px,9vw,48px)}.wedding-welcome p{font-size:13.5px;line-height:1.7}.wedding-info{padding:40px 0 56px}.wedding-info h2{margin-bottom:24px;font-size:clamp(24px,7vw,32px)}.wedding-info p{font-size:13.5px;line-height:1.75}.wedding-cta{flex-direction:column;align-items:stretch;gap:16px;margin-top:28px}.wedding-cta .left{gap:14px}.wedding-cta .btn,.wedding-cta .btn-outline{text-align:center}.faq-section{padding:56px 0}.faq-section h2{margin-bottom:32px;font-size:clamp(22px,6.5vw,28px)}.faq-item .q{padding:18px;font-size:13px}.faq-item .a{padding:0 18px 22px;font-size:13px}.faq-footnote{padding:0 8px;font-size:12.5px}}
