@import url('https://fonts.googleapis.com/css2?family=Italiana&family=Playfair+Display:ital,wght@0,500;0,700;1,500&family=Space+Grotesk:wght@400;500;600;700&display=swap');
.style-picker{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:10px 5%;background:#252723;color:#fff;font:9px/1.5 'DM Sans',sans-serif;letter-spacing:1px}.style-picker>div{display:flex;gap:18px}.style-picker a{padding:4px 0;opacity:.65}.style-picker a[aria-current]{opacity:1;border-bottom:1px solid white}.style-picker a:hover{opacity:1}
/* 02 — monochrome editorial: masthead, oversize typography, cinematic spread */
[data-style=editorial]{--cream:#f5f4f0;--ink:#171717;--olive:#232323;--sage:#e5e3df;--line:#c7c5c0}
[data-style=editorial] body{font-family:'DM Sans',sans-serif}[data-style=editorial] header{height:76px;border-bottom:2px solid #171717}[data-style=editorial] .monogram{font-family:'Space Grotesk',sans-serif;font-size:32px;font-weight:700;letter-spacing:-3px;text-transform:uppercase}[data-style=editorial] nav{text-transform:uppercase;font-size:10px;letter-spacing:1px}
[data-style=editorial] .hero{display:block;position:relative;min-height:850px;background:#161616;color:#fff;isolation:isolate}[data-style=editorial] .hero-image{position:absolute;inset:0;margin:0;z-index:-1}[data-style=editorial] .hero-image img{width:100%;height:100%;max-height:none;filter:grayscale(1) brightness(.65);object-position:50% 36%}[data-style=editorial] .hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0008,transparent 65%)}[data-style=editorial] .hero-copy{min-height:850px;padding:40px 5%;width:100%;position:relative}[data-style=editorial] h1{font-family:'Space Grotesk',sans-serif;font-weight:500;font-size:clamp(75px,11vw,178px);line-height:.89;letter-spacing:-9px;text-transform:uppercase;margin:0 0 auto;max-width:95%}[data-style=editorial] h1 br{display:none}[data-style=editorial] h1 span{font-family:'Italiana',serif;color:white;font-weight:400;font-size:.8em;margin:0 15px}[data-style=editorial] .hero .eyebrow{border-top:1px solid #fff9;padding-top:12px;width:100%;margin-bottom:30px}[data-style=editorial] .hero-note{color:#eee;max-width:300px}[data-style=editorial] .hero .date{margin-top:120px}[data-style=editorial] .hero .button{background:#f5f4f0;color:#111;border-color:white}[data-style=editorial] .hero-bottom{color:white;margin-top:20px;padding-top:20px;border-top:1px solid #fff6}[data-style=editorial] .image-note{display:none}[data-style=editorial] h2{font-family:'Italiana',serif;font-size:72px;letter-spacing:-2px}[data-style=editorial] h2 em{font-style:normal}[data-style=editorial] .welcome{display:grid;grid-template-columns:1fr 1fr;text-align:left;gap:0 80px;padding:95px 8%}[data-style=editorial] .welcome .eyebrow{grid-column:1/-1}[data-style=editorial] .welcome h2{grid-row:2/5}[data-style=editorial] .welcome p:not(.eyebrow){margin:0 0 20px}[data-style=editorial] .small-leaf{display:none}[data-style=editorial] .story{grid-template-columns:1.25fr 1fr;gap:7%;border-top:1px solid var(--line)}[data-style=editorial] .story-images{padding:0}[data-style=editorial] .story-images>img:first-child{height:650px}[data-style=editorial] .story-images .inset{display:none}[data-style=editorial] img{filter:grayscale(1)}[data-style=editorial] .weekend{background:#171717;color:#f5f4f0}[data-style=editorial] .weekend em,[data-style=editorial] .weekend .section-heading>p:last-child,[data-style=editorial] .weekend .demo-note,[data-style=editorial] .events article>p:not(.eyebrow):not(.event-time){color:#c5c5be}[data-style=editorial] .events{display:block}[data-style=editorial] .events article{border:0;border-top:1px solid #666;display:grid;grid-template-columns:40px 1fr 1.2fr 1.5fr;gap:25px;padding:30px 0;align-items:baseline}[data-style=editorial] .events h3{font-family:'Space Grotesk';font-size:28px;margin:0}[data-style=editorial] .event-num{color:#ddd;margin:0}[data-style=editorial] .event-time{grid-column:2}[data-style=editorial] .event-location{border:0;margin:0;padding:0}[data-style=editorial] .gallery-grid{grid-template-columns:repeat(4,1fr);gap:5px}[data-style=editorial] .gallery-grid img{height:380px}[data-style=editorial] .gallery-grid button:nth-child(even){margin:0}[data-style=editorial] .people>img{height:680px}[data-style=editorial] .travel{background:#e4e3df}[data-style=editorial] .rsvp{background:#171717;color:#fff}[data-style=editorial] .rsvp em{color:#ddd}[data-style=editorial] .rsvp form{color:#171717}[data-style=editorial] footer{border-top:4px solid #171717}
/* 03 — vintage: symmetrical invitation, wine ink, fine double rules */
[data-style=vintage]{--cream:#f2e5d4;--ink:#572b36;--olive:#7c3446;--sage:#e8d6bf;--line:#c7a99b}
[data-style=vintage] body{background-image:repeating-linear-gradient(90deg,#8b4c3603 0 1px,transparent 1px 4px)}[data-style=vintage] h1,[data-style=vintage] h2,[data-style=vintage] h3{font-family:'Playfair Display',Georgia,serif}[data-style=vintage] header{justify-content:center;gap:65px;border-bottom:3px double var(--line)}[data-style=vintage] .hero{display:flex;flex-direction:column;align-items:center;padding:55px 6% 65px;position:relative;min-height:0}[data-style=vintage] .hero:before{content:'';position:absolute;inset:20px;border:1px solid var(--line);pointer-events:none}[data-style=vintage] .hero-copy{padding:0;align-items:center;text-align:center;width:100%}[data-style=vintage] .hero h1{font-size:clamp(65px,7vw,100px);letter-spacing:-4px;line-height:1.15;margin:5px 0 12px}[data-style=vintage] .hero h1 br{display:none}[data-style=vintage] h1 span{font-style:italic;font-size:.65em;margin:0 10px;vertical-align:baseline}[data-style=vintage] .hero-note{font-family:'Cormorant Garamond',serif;font-size:22px;line-height:1.3;color:var(--ink);margin:12px 0 20px}[data-style=vintage] .hero-image{order:2;width:340px;height:390px;max-width:80%;margin:35px 0 0;border-radius:180px 180px 0 0;padding:7px;border:1px solid var(--olive);overflow:hidden}[data-style=vintage] .hero-image img{border-radius:170px 170px 0 0;width:100%;height:100%;filter:sepia(.22)}[data-style=vintage] .hero-bottom{display:none}[data-style=vintage] .image-note{font-size:23px;bottom:20px}[data-style=vintage] .button{border-radius:0;padding:12px 28px;background:transparent;color:var(--ink);border:1px solid var(--ink);outline:1px solid var(--ink);outline-offset:3px}[data-style=vintage] .button:hover{background:var(--ink);color:var(--cream)}[data-style=vintage] h2{font-size:51px;line-height:1.18;letter-spacing:-1px}[data-style=vintage] .welcome{margin:0 9%;border-top:3px double var(--line);border-bottom:3px double var(--line)}[data-style=vintage] .welcome:before{content:'✧';font-size:40px;display:block;margin-bottom:20px}[data-style=vintage] .story{gap:12%}[data-style=vintage] .story-images>img:first-child{border-radius:48% 48% 0 0;filter:sepia(.4)}[data-style=vintage] .story-images .inset{transform:rotate(8deg);border:10px solid #fffbef;box-shadow:0 5px 15px #572b3620}[data-style=vintage] .weekend{margin:25px;background:var(--ink);color:var(--cream);border:1px solid var(--cream);outline:8px solid var(--ink)}[data-style=vintage] .weekend em,[data-style=vintage] .weekend .section-heading>p:last-child,[data-style=vintage] .weekend .demo-note,[data-style=vintage] .events article>p:not(.eyebrow):not(.event-time){color:#e4cbbd}[data-style=vintage] .events{text-align:center}[data-style=vintage] .event-num{color:#d7bda0;font-style:italic}[data-style=vintage] .image-banner{margin:65px 10%;height:420px;outline:1px solid var(--olive);outline-offset:10px}[data-style=vintage] .image-banner img{filter:sepia(.3) brightness(.65)}[data-style=vintage] .people>img{border-radius:48% 48% 0 0}[data-style=vintage] .gallery-grid{gap:32px}[data-style=vintage] .gallery-grid button{padding:10px 10px 35px;background:#fff9ed;box-shadow:0 4px 15px #572b3612;transform:rotate(-4deg)}[data-style=vintage] .gallery-grid button:nth-child(even){transform:rotate(4deg)}[data-style=vintage] .gallery-grid img{height:280px;filter:sepia(.2)}[data-style=vintage] .travel{background:#e8d8c5;border-block:3px double var(--line)}[data-style=vintage] .travel>img{padding:10px;border:1px solid var(--olive)}[data-style=vintage] .places{text-align:center}[data-style=vintage] .places h3{font-size:26px}[data-style=vintage] .rsvp{background:#e8d8c5;border-top:3px double var(--olive)}[data-style=vintage] .rsvp form{border:1px solid var(--line);outline:1px solid var(--line);outline-offset:6px}[data-style=vintage] footer:before{content:'❦';display:block;font-size:40px;margin-bottom:20px}[data-style=vintage] .story-copy p:not(.eyebrow),[data-style=vintage] .people p:not(.eyebrow),[data-style=vintage] .welcome p:not(.eyebrow),[data-style=vintage] details p{color:#775653}
/* 04 — coastal: cobalt, citrus, playful graphic type and postcard collage */
[data-style=coastal]{--cream:#fff9e9;--ink:#1748a5;--olive:#2158be;--sage:#f8df7e;--line:#bbcae4}
[data-style=coastal] body{font-family:'Space Grotesk',sans-serif}[data-style=coastal] h1,[data-style=coastal] h2,[data-style=coastal] h3{font-family:'Space Grotesk',sans-serif;font-weight:600;letter-spacing:-2px}[data-style=coastal] h2 em{font-family:'Cormorant Garamond',serif;font-weight:500}[data-style=coastal] header{background:#fff9e9;border-bottom:2px solid var(--ink)}[data-style=coastal] .hero{background:#f8df7e;grid-template-columns:1.15fr 1fr;padding:45px 6% 60px;gap:5%;min-height:740px;position:relative;border-bottom:14px solid var(--ink)}[data-style=coastal] .hero-copy{padding:25px 0 0}[data-style=coastal] .hero .eyebrow{font-size:10px;max-width:280px}[data-style=coastal] h1{font-size:clamp(80px,8vw,120px);line-height:.95;letter-spacing:-7px;transform:rotate(-3deg);margin:35px 0}[data-style=coastal] h1 span{font-family:'Cormorant Garamond',serif;font-size:1em;line-height:.7;margin:0 0 0 10px}[data-style=coastal] .hero-image{margin:35px 0 20px;transform:rotate(5deg);background:#fff9e9;border:13px solid #fff9e9;border-bottom-width:55px;box-shadow:8px 8px 0 #1748a5;height:550px;overflow:visible}[data-style=coastal] .hero-image img{height:100%;width:100%;object-position:50% 35%}[data-style=coastal] .image-note{bottom:-47px;color:var(--ink);text-shadow:none;font-size:25px}[data-style=coastal] .hero-note{color:#1748a5}[data-style=coastal] .hero-bottom{color:var(--ink)}[data-style=coastal] .button{border-radius:50px;padding:16px 25px;background:var(--ink);color:#fff9e9;font-weight:600;border:2px solid var(--ink)}[data-style=coastal] .button:hover{background:transparent;color:var(--ink)}[data-style=coastal] .welcome{background:#fff9e9;padding:90px 20%}[data-style=coastal] .welcome:before{content:'☀';display:block;font-size:65px;color:#d99710;line-height:1;margin-bottom:30px}[data-style=coastal] .welcome h2{font-size:60px}[data-style=coastal] .small-leaf{display:none}[data-style=coastal] .story{background:#dfeafb;grid-template-columns:1fr 1.1fr;gap:10%}[data-style=coastal] .story-images>img:first-child{border:12px solid white;transform:rotate(-5deg);height:470px}[data-style=coastal] .story-images .inset{border-color:white;transform:rotate(8deg)}[data-style=coastal] .story .photo-caption{padding-top:35px}[data-style=coastal] .weekend{background:var(--ink);color:#fff9e9}[data-style=coastal] .weekend h2 em{color:#f8df7e}[data-style=coastal] .weekend .section-heading>p:last-child,[data-style=coastal] .weekend>.demo-note{color:#d1ddf4}[data-style=coastal] .events{gap:25px}[data-style=coastal] .events article{border:0;border-radius:130px 130px 12px 12px;background:#fff9e9;color:var(--ink);padding:35px;text-align:center}[data-style=coastal] .events article:nth-child(2){background:#f8df7e;transform:translateY(20px)}[data-style=coastal] .events h3{font-size:29px;letter-spacing:-1px}[data-style=coastal] .event-num{font-size:50px;color:var(--ink)}[data-style=coastal] .weekend>.demo-note{margin-top:50px}[data-style=coastal] .image-banner{height:400px}[data-style=coastal] .people{grid-template-columns:1.1fr 1fr}[data-style=coastal] .people>img{border-radius:50% 50% 0 0;border:10px solid #f8df7e;box-shadow:10px 10px 0 #1748a5;height:540px}[data-style=coastal] .gallery{background:#f8df7e}[data-style=coastal] .gallery-grid{gap:22px}[data-style=coastal] .gallery-grid img{height:300px}[data-style=coastal] .gallery-grid button{border:8px solid #fff9e9;border-bottom-width:30px;transform:rotate(-3deg)}[data-style=coastal] .gallery-grid button:nth-child(even){transform:rotate(4deg)}[data-style=coastal] .travel{background:#fff9e9}[data-style=coastal] .travel>img{border-radius:220px 220px 0 0;height:560px}[data-style=coastal] .explore{background:#dfeafb}[data-style=coastal] .places{gap:20px}[data-style=coastal] .places a{background:#fff9e9;border:2px solid var(--ink);padding:30px;box-shadow:5px 5px 0 var(--ink)}[data-style=coastal] .places h3{font-size:25px;letter-spacing:-1px}[data-style=coastal] .questions img{border-radius:50%;height:170px;border:5px solid #f8df7e}[data-style=coastal] .rsvp{background:#f8df7e}[data-style=coastal] .rsvp form{border:2px solid var(--ink);box-shadow:10px 10px 0 var(--ink)}[data-style=coastal] footer{background:var(--ink);color:white}[data-style=coastal] .footer-credit{color:#c9d7f1}
@media(max-width:700px){.style-picker{padding:9px 12px;display:block;text-align:center}.style-picker>span{font-size:7px}.style-picker>div{justify-content:center;gap:17px;margin-top:6px;font-size:9px}[data-style=editorial] h1{font-size:65px;letter-spacing:-4px;line-height:1}[data-style=editorial] h1 br{display:block}[data-style=editorial] .hero,[data-style=editorial] .hero-copy{min-height:690px}[data-style=editorial] .hero-copy{padding:30px 7%}[data-style=editorial] .hero-image{height:auto}[data-style=editorial] h1 span{margin:0;font-size:.8em}[data-style=editorial] h2{font-size:48px}[data-style=editorial] .welcome{display:block;padding:65px 7%}[data-style=editorial] .welcome h2{margin-bottom:30px}[data-style=editorial] .story{grid-template-columns:1fr}[data-style=editorial] .story-images>img:first-child{height:480px}[data-style=editorial] .events article{grid-template-columns:30px 1fr;gap:12px 20px}[data-style=editorial] .events h3,[data-style=editorial] .events article>p{grid-column:2}[data-style=editorial] .events .eyebrow{margin:0}[data-style=editorial] .events .event-num{grid-column:1;grid-row:1/3}[data-style=editorial] .gallery-grid{grid-template-columns:1fr 1fr}[data-style=editorial] .gallery-grid img{height:230px}[data-style=editorial] .gallery-grid button:nth-child(3){margin:0}[data-style=editorial] .people>img{height:470px}[data-style=vintage] header{justify-content:space-between;gap:0}[data-style=vintage] .hero{padding:45px 7% 50px}[data-style=vintage] .hero h1{font-size:53px;letter-spacing:-3px}[data-style=vintage] .hero h1 br{display:block}[data-style=vintage] h1 span{margin:0 5px}[data-style=vintage] .hero:before{inset:12px}[data-style=vintage] .hero .eyebrow{max-width:240px}[data-style=vintage] .hero-image{width:270px;height:330px}[data-style=vintage] h2{font-size:39px}[data-style=vintage] .welcome{margin:0 7%;padding:60px 0}[data-style=vintage] .weekend{margin:15px;padding:55px 8%}[data-style=vintage] .image-banner{margin:45px 8%;height:310px}[data-style=vintage] .gallery-grid{gap:18px}[data-style=vintage] .gallery-grid img{height:210px}[data-style=vintage] .gallery-grid button{padding:6px 6px 22px}[data-style=vintage] .gallery-grid button:nth-child(3){margin-top:0}[data-style=vintage] .places h3{font-size:24px}[data-style=coastal] .hero{display:flex;gap:0;padding:30px 8% 45px;min-height:0}[data-style=coastal] .hero-copy{padding:0}[data-style=coastal] h1{font-size:85px;letter-spacing:-5px;margin:25px 0}[data-style=coastal] .hero-image{width:85%;height:390px;align-self:center;margin:45px 0 10px;border-width:9px;border-bottom-width:45px}[data-style=coastal] .image-note{font-size:21px;bottom:-39px}[data-style=coastal] .welcome{padding:60px 7%}[data-style=coastal] .welcome h2{font-size:43px}[data-style=coastal] .story,[data-style=coastal] .people{grid-template-columns:1fr}[data-style=coastal] .story-images>img:first-child{height:380px}[data-style=coastal] .events article{border-radius:90px 90px 8px 8px;padding:35px 25px}[data-style=coastal] .events article:nth-child(2){transform:none}[data-style=coastal] .people>img{height:460px}[data-style=coastal] .gallery-grid{gap:15px}[data-style=coastal] .gallery-grid img{height:210px}[data-style=coastal] .travel>img{height:440px}[data-style=coastal] .places{gap:22px}[data-style=coastal] .rsvp form{box-shadow:6px 6px 0 var(--ink)}}
