@import url('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;450;500;600&display=swap');
:root{--green:#143c32;--deep:#0d2c25;--ivory:#f8f5ed;--gold:#a78b53;--ink:#243a32;--muted:#627167;--line:#d9ddce}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-underline-offset:5px}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #bd9b5d;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand,.footer-mark,.gift-mark{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h1{font-size:clamp(48px,6vw,88px);line-height:1.02;letter-spacing:-2px}h2{font-size:clamp(36px,4vw,55px);line-height:1.12;letter-spacing:-1px}h3{font-size:30px;line-height:1.15}em{font-weight:400}.eyebrow{font-size:11px;letter-spacing:2.1px;font-weight:600;line-height:1.7;color:var(--gold);margin-bottom:20px}.small{font-size:13px;line-height:1.7;color:var(--muted)}.skip{position:absolute;left:10px;top:-100px;z-index:99;background:var(--ivory);padding:10px}.skip:focus{top:10px}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(248,245,237,.97);border-bottom:1px solid var(--line);padding:17px 4.5%}.brand{text-decoration:none;font-size:35px;line-height:1;white-space:nowrap;letter-spacing:-3px}.brand span{font-style:italic;color:var(--gold);font-size:28px;margin:0 3px}#site-nav{display:flex;gap:25px}#site-nav a{font-size:12px;text-decoration:none;padding:7px 0;color:var(--muted)}#site-nav a:hover,#site-nav a[aria-current]{color:var(--green);box-shadow:0 1px var(--gold)}.header-book{font-size:11px;letter-spacing:.7px;font-weight:600;text-decoration:none;border:1px solid var(--green);padding:11px 15px;white-space:nowrap}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;text-decoration:none;background:var(--green);color:var(--ivory);padding:15px 23px;font-size:13px;line-height:1.5;border:1px solid var(--green);transition:background .2s}.button:hover{background:#245343}.button span{font-size:20px}.button.secondary{color:var(--green);background:transparent}.button.secondary:hover{background:#e7ebdf}.text-link{text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:5px;font-size:13px}.hero{display:grid;grid-template-columns:46% 54%;min-height:670px;background:var(--green);color:var(--ivory);overflow:hidden}.hero-photo{background-image:url('/assets/couple.jpg');background-size:auto 100%;background-position:30.2% center;min-height:660px;position:relative}.hero-photo:after{content:'';position:absolute;inset:25px;border:1px solid rgba(231,213,170,.5);pointer-events:none}.hero-copy{padding:75px clamp(35px,6vw,100px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;position:relative}.hero-copy:before,.page-intro:after,footer:before{content:'';position:absolute;width:280px;height:290px;right:-35px;top:-20px;opacity:.13;background:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300" fill="none" stroke="%23b6bd8a" stroke-width="2"%3E%3Cpath d="M300 0Q160 90 10 285M275 20Q170 5 95 20Q180 45 255 40M250 45Q140 30 70 55Q155 70 225 70M225 75Q110 60 45 100Q125 105 200 100M200 105Q90 100 25 150Q110 140 175 130M175 135Q65 145 15 205Q90 180 145 165M145 170Q40 200 10 260Q60 225 115 205M275 20Q300 130 280 195Q250 120 255 40M250 45Q265 160 235 225Q215 140 225 70M225 75Q230 200 190 250Q185 160 200 100M200 105Q190 230 145 275Q155 195 175 130M175 135Q140 255 90 290Q115 215 145 165M145 170Q95 275 40 295Q75 235 115 205"/%3E%3C/svg%3E') center/contain no-repeat;pointer-events:none}.hero h1{font-size:clamp(65px,7vw,100px);margin:5px 0 28px}.hero-date{font-family:'Cormorant Garamond',Georgia,serif;font-size:31px;margin:20px 0 0}.hero-place{font-size:12px;letter-spacing:2px;text-transform:uppercase}.hero-note{font-size:14px;margin:20px 0 29px;color:#e4e7da}.hero .button{background:var(--ivory);color:var(--green);border-color:var(--ivory)}.hairline{height:1px;width:60px;background:var(--gold)}.narrow{max-width:780px;margin:auto;padding-left:28px;padding-right:28px}.welcome{padding-top:90px;padding-bottom:90px;text-align:center;max-width:800px}.welcome p:not(.eyebrow){max-width:590px;margin:25px auto 28px;color:var(--muted)}.deadline-band{padding:30px 8%;background:#e8ecdf;display:grid;grid-template-columns:repeat(3,1fr);text-align:center;gap:24px}.deadline-band div+div{border-left:1px solid #cbd2c0}.deadline-band span{display:block;font-size:10px;letter-spacing:2px;margin-bottom:8px;color:var(--muted)}.deadline-band strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;font-weight:500}.deadline-band small{font-family:'DM Sans',sans-serif;font-size:12px}.section{max-width:1240px;margin:auto;padding:85px 48px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:36px}.section-heading h2{margin:0}.section-heading .text-link{white-space:nowrap}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.event-card{padding:33px 28px 32px;position:relative;text-decoration:none;min-height:330px;border:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s}.event-card:hover{transform:translateY(-4px)}.event-number{font-family:'Cormorant Garamond',Georgia,serif;font-size:65px;line-height:1;color:var(--gold);margin-bottom:15px}.event-card .eyebrow{font-size:10px;color:inherit}.event-card h3{font-size:31px;margin-bottom:12px}.event-card>p:not(.eyebrow){font-size:13px}.event-tag{margin-top:auto;font-size:11px;padding-top:18px;border-top:1px solid var(--line);width:100%}.white-event{background:#fffdfa}.wedding-event{background:#eee8dd}.green-event{background:var(--green);color:var(--ivory)}.green-event .event-tag{border-color:#557060}.travel-callout{max-width:1144px;margin:0 auto 90px;padding:48px;background:#e8ecdf;display:grid;grid-template-columns:1.6fr 1fr;gap:50px;align-items:center}.travel-callout p:not(.eyebrow){max-width:560px;color:var(--muted)}.callout-actions{display:flex;flex-direction:column;gap:15px;max-width:280px}.page-intro{text-align:center;position:relative;overflow:hidden;padding:85px 25px 65px;background:#eceee3;border-bottom:1px solid var(--line)}.page-intro:after{right:0;opacity:.25}.page-intro h1{font-size:clamp(46px,6vw,75px);margin-bottom:25px}.lede{font-size:16px;max-width:600px;margin:0 auto;color:var(--muted);line-height:1.8}.story-layout{max-width:1200px;margin:auto;display:grid;grid-template-columns:32% 1fr;gap:85px;padding:75px 45px}.story-aside{align-self:start;position:sticky;top:110px}.story-portrait{aspect-ratio:3/4;background:url('/assets/couple.jpg') 30.2% center/auto 100% no-repeat}.story-aside>p{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;text-align:center;margin-top:25px;line-height:1.3}.story-aside nav{border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;gap:13px}.story-aside nav a{font-size:11px;line-height:1.6;text-decoration:none;color:var(--muted)}.story-chapter{padding-bottom:45px;margin-bottom:48px;border-bottom:1px solid var(--line)}.story-chapter:last-child{border-bottom:0;margin:0}.story-chapter h2{font-size:39px}.story-chapter p:not(.eyebrow){font-size:16px;line-height:1.9;color:#435448}.end-note{text-align:center;background:#e8ecdf;padding:65px 25px}.end-note h2{font-size:42px;margin-bottom:30px}.arrival-note{background:#e8ecdf;padding:24px 30px;margin-bottom:30px;display:flex;gap:35px;align-items:center}.arrival-note strong{white-space:nowrap}.arrival-note p{margin:0;font-size:14px}.itinerary{max-width:1040px}.event-detail{display:grid;grid-template-columns:100px 1fr;gap:45px;padding:52px 0;border-bottom:1px solid var(--line)}.event-detail:last-child{border:0}.date-tile{text-align:center;align-self:start;border:1px solid #c7cfbc;padding:12px 8px;color:var(--green)}.date-tile span{display:block;font-size:10px;letter-spacing:1.5px}.date-tile strong{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:57px;line-height:1.2;font-weight:400}.event-detail h2{font-size:47px}.event-time{font-size:19px;font-weight:500}.attire{margin:28px 0;background:#eeece3;padding:22px 25px;border-left:2px solid var(--gold)}.attire span{display:block;font-size:10px;letter-spacing:2px;color:var(--muted);margin-bottom:6px}.attire strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;font-weight:500}.attire p{font-size:13px;margin:8px 0 0}.attire.green{background:var(--green);color:var(--ivory)}.attire.green span{color:#c8d2c2}.mini-timeline{padding-left:25px;border-left:1px solid var(--gold)}.mini-timeline>div{margin:22px 0}.mini-timeline strong{font-size:15px}.mini-timeline p{font-size:13px;margin:4px 0}.palette-heading{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:500;margin:30px 0 6px}.swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;margin:25px 0 30px}.swatches>div{text-align:center}.swatches span{display:block;width:59px;height:59px;border-radius:50%;margin:0 auto;border:1px solid #d2ccbb}.swatches p{font-size:10px;line-height:1.5;margin:10px 0 0}.travel-intro{display:grid;grid-template-columns:1fr 360px;gap:90px;align-items:start}.travel-intro>div p{color:var(--muted);font-size:15px}.reservation-card{border:1px solid #c9cdbb;padding:30px;background:#fffdf7}.reservation-card h3{font-size:35px}.reservation-card dl{font-size:12px;border-top:1px solid var(--line);margin:25px 0}.reservation-card dl>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.reservation-card dd{margin:0;text-align:right;font-weight:500}.reservation-card .button{width:100%;gap:10px;padding:14px}.reservation-card .small{margin:18px 0 0;font-size:11px}.resorts{padding-top:0}.resort-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.resort-grid article{padding:38px;background:#eeeee4;border-top:2px solid var(--gold)}.resort-grid h3{font-size:35px}.resort-grid ul{padding-left:18px;font-size:14px;line-height:2}.resort-grid article>p:not(.eyebrow):not(.small){font-size:15px}.diamond{max-width:none;background:var(--green);color:var(--ivory);padding-left:max(48px,calc((100vw - 1144px)/2));padding-right:max(48px,calc((100vw - 1144px)/2));}.diamond-lede{max-width:650px;color:#d1d9cc}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:38px 0}.benefits span{color:#c7ad73;font-size:12px}.benefits h3{font-size:30px;margin:12px 0}.benefits p{color:#d1d9cc;font-size:14px}.diamond .small{color:#bbc8ba;max-width:820px}.diamond .button{border-color:#9da88b;background:transparent;margin-top:18px}.faq-list{padding-top:55px;padding-bottom:70px;max-width:900px}.faq-list details{border-bottom:1px solid #ccd2c1}.faq-list summary{padding:23px 0;display:flex;gap:30px;justify-content:space-between;cursor:pointer;font-size:16px;line-height:1.6;list-style:none;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--gold);font-size:22px;line-height:1}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details div{padding-bottom:17px;color:var(--muted);font-size:15px;line-height:1.8}.gift-note{text-align:center;padding-top:65px;padding-bottom:85px;max-width:650px}.gift-mark{font-size:85px;color:var(--gold);line-height:1.1;margin-bottom:30px}.gift-mark span,.footer-mark span{font-style:italic;margin:0 -6px}.gift-note .button{margin:20px 0}.gift-note .small{margin:0}footer{position:relative;text-align:center;overflow:hidden;background:var(--deep);color:#e1e6d9;padding:60px 25px 35px}footer:before{top:auto;bottom:-80px;right:auto;left:-20px;transform:rotate(180deg);opacity:.12}.footer-mark{font-size:53px;color:#bfa365;line-height:1.3}footer>p:first-of-type{font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;margin:10px 0}.footer-hashtag{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:26px;margin:13px 0 20px}footer .small{color:#b1c0ad;font-size:10px;letter-spacing:1.6px}.footer-links{display:flex;justify-content:center;gap:30px;font-size:12px}.closing{margin:35px 0 0;color:#a7b4a2;font-size:11px}
@media(min-width:1500px){.hero{min-height:740px}.hero-photo{min-height:740px}}
@media(max-width:1000px){.site-header{padding:16px 25px;gap:15px}#site-nav{gap:17px}.header-book{display:none}.hero{grid-template-columns:45% 55%;min-height:590px}.hero-photo{min-height:590px}.hero-copy{padding:50px 35px}.hero h1{font-size:75px}.hero-note{font-size:12px}.section{padding-left:30px;padding-right:30px}.travel-callout{margin-left:30px;margin-right:30px;padding:35px}.event-card{padding:26px 20px}.event-card h3{font-size:28px}.story-layout{gap:45px;padding:55px 30px}.travel-intro{gap:35px;grid-template-columns:1fr 320px}.swatches{gap:9px}.swatches span{width:48px;height:48px}.benefits{gap:25px}}
@media(max-width:700px){body{font-size:15px}.site-header{padding:15px 22px}.brand{font-size:32px}.menu-toggle{display:flex;gap:12px;align-items:center;background:none;border:0;font:500 12px 'DM Sans',sans-serif;color:var(--green);padding:8px}.menu-toggle span{font-size:20px}#site-nav{display:none;position:absolute;top:69px;left:0;right:0;background:var(--ivory);border-bottom:1px solid var(--line);padding:22px;box-shadow:0 12px 20px #0b261c12}#site-nav.open{display:flex;flex-direction:column;gap:8px}#site-nav a{font-size:15px;padding:10px}#site-nav a[aria-current]{box-shadow:none;color:var(--green);font-weight:600}.hero{display:flex;flex-direction:column;min-height:0}.hero-photo{min-height:0;height:430px;background-position:30.2% center}.hero-photo:after{inset:17px}.hero-copy{padding:42px 28px 48px;align-items:center;text-align:center}.hero-copy:before{width:230px;right:-90px}.hero .eyebrow{font-size:9px;letter-spacing:1.7px;margin-bottom:15px}.hero h1{font-size:72px;line-height:.98;margin-bottom:25px;letter-spacing:-2px}.hero-date{font-size:28px;margin-top:19px}.hero-place{font-size:10px}.hero-note{font-size:13px;margin:15px 0 25px}.hero .button{min-width:260px}.welcome{padding:55px 28px}.welcome .eyebrow{font-size:9px;letter-spacing:1.5px}.welcome h2{font-size:37px}.welcome p:not(.eyebrow){font-size:14px}.deadline-band{padding:25px 20px;gap:18px;grid-template-columns:1fr}.deadline-band div+div{border-left:0;border-top:1px solid #cbd2c0;padding-top:18px}.deadline-band span{font-size:9px;letter-spacing:1.5px;margin-bottom:3px}.deadline-band strong{font-size:25px}.section{padding:50px 24px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:36px;margin-bottom:20px}.section-heading .eyebrow{font-size:9px}.event-grid{grid-template-columns:1fr;gap:15px}.event-card{min-height:0;padding:26px 24px 23px}.event-number{position:absolute;right:24px;top:24px;font-size:57px;opacity:.65}.event-card .eyebrow{margin:5px 0 24px}.event-card h3{font-size:32px;padding-right:35px}.event-card>p:not(.eyebrow){font-size:13px}.event-tag{padding-top:14px;margin-top:8px}.travel-callout{display:block;padding:30px 25px;margin:0 24px 50px}.travel-callout h2{font-size:36px}.travel-callout p:not(.eyebrow){font-size:14px}.callout-actions{max-width:none;margin-top:25px}.page-intro{padding:55px 25px 40px}.page-intro h1{font-size:50px;letter-spacing:-1px}.page-intro .eyebrow{font-size:9px}.page-intro:after{width:210px;right:-100px;opacity:.17}.lede{font-size:14px}.story-layout{display:block;padding:35px 25px}.story-aside{position:static;max-width:350px;margin:0 auto 45px}.story-portrait{aspect-ratio:4/4.8}.story-aside nav{display:none}.story-aside>p{font-size:27px}.story-chapter{margin-bottom:35px;padding-bottom:25px}.story-chapter h2{font-size:34px}.story-chapter .eyebrow{font-size:9px;margin-bottom:14px}.story-chapter p:not(.eyebrow){font-size:15px;line-height:1.9}.end-note{padding:45px 25px}.end-note h2{font-size:34px}.arrival-note{display:block;padding:22px}.arrival-note p{margin-top:8px;font-size:13px}.event-detail{grid-template-columns:65px 1fr;gap:18px;padding:35px 0}.date-tile{padding:10px 3px}.date-tile strong{font-size:42px}.date-tile span{font-size:8px;letter-spacing:.6px}.event-detail .eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:15px}.event-detail h2{font-size:34px}.event-detail p{font-size:13px}.event-detail .event-time{font-size:15px}.mini-timeline{padding-left:15px}.mini-timeline strong{font-size:13px}.mini-timeline p{font-size:12px}.attire{padding:17px 15px}.attire strong{font-size:24px}.attire span{font-size:8px;letter-spacing:1.6px}.attire p{font-size:12px}.swatches{grid-template-columns:repeat(2,1fr);gap:22px 12px}.swatches span{width:52px;height:52px}.swatches p{font-size:10px}.event-detail .button{font-size:12px;padding:13px 15px;gap:15px;width:100%}.travel-intro{grid-template-columns:1fr;gap:30px}.travel-intro h2{font-size:37px}.reservation-card{padding:25px}.resorts{padding-top:0}.resort-grid{grid-template-columns:1fr;gap:20px}.resort-grid article{padding:26px}.resort-grid h3{font-size:31px}.diamond{padding:45px 25px}.diamond h2{font-size:37px}.diamond-lede{font-size:14px}.benefits{grid-template-columns:1fr;gap:22px;margin:30px 0}.benefits>div{border-bottom:1px solid #56705c;padding-bottom:15px}.benefits h3{font-size:28px}.diamond .small{font-size:11px}.narrow.section{padding-left:25px;padding-right:25px}.faq-list{padding:25px 25px 40px}.faq-list summary{font-size:14px;gap:20px;padding:22px 0}.faq-list details div{font-size:14px}.gift-note{padding:40px 25px 55px}.gift-mark{font-size:70px}.gift-note h2{font-size:39px}.gift-note p:not(.small){font-size:14px}footer{padding-top:45px}.footer-links{gap:20px;font-size:11px}.closing{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original engagement photography */
.hero-photo{background-image:url('/assets/couple-hallway.jpg');background-size:cover;background-position:center 56%}.story-portrait{background-image:url('/assets/couple-close.jpg');background-size:cover;background-position:center 55%}.story-moment{margin:10px 0 55px}.story-moment img{width:100%;max-height:720px;object-fit:cover;object-position:center 65%;display:block}.story-moment figcaption{font-size:11px;color:var(--muted);padding-top:12px;letter-spacing:.6px}.gift-photo{width:290px;max-width:100%;height:370px;object-fit:cover;object-position:center 48%;display:block;margin:0 auto 35px}@media(max-width:700px){.hero-photo{height:540px;background-position:center 58%}.story-moment{margin-bottom:35px}.story-moment img{max-height:none;height:auto}.story-portrait{background-position:center 55%}}

.welcome,.gift-note{background-image:url(/assets/palm-paper.png);background-size:cover;background-position:center}.welcome{max-width:none}.welcome h2,.welcome .eyebrow,.welcome p,.welcome .text-link{position:relative}.welcome h2{max-width:780px;margin-left:auto;margin-right:auto}
