@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: "Manrope", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono)}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities;:root{--paper: #fbf6f1;--wine: #652d3c;--ink: #34282c;--rose: #ead6d2;--muted: #75656a;--line: #d9c5c2;--display: "Cormorant Garamond",Georgia,serif;font-family:Manrope,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}button:not(:disabled),a{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--wine);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500}em{font-weight:400}h2{font-size:clamp(42px,5.2vw,68px);line-height:1.02;letter-spacing:-1.8px}h2 em{color:var(--wine)}p{font-size:14px;line-height:1.95}.section-shell{max-width:1180px;margin:auto;padding-left:48px;padding-right:48px}.section-space{padding-top:112px;padding-bottom:112px}.eyebrow,.section-number{font-size:10px;letter-spacing:2.2px;text-transform:uppercase;font-weight:600}.section-number{display:block;margin-bottom:26px;color:var(--wine)}.site-header{height:96px;max-width:1320px;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.monogram{font-family:var(--display);font-size:34px;letter-spacing:-2px;color:var(--wine);white-space:nowrap}.monogram span{font-style:italic;font-size:25px;margin:0 2px}.monogram .monogram-dot{font-size:34px;margin:0}.site-header nav{display:flex;align-items:center;gap:32px;font-size:11px}.site-header nav a{transition:color .2s}.site-header nav a:hover{color:var(--wine)}.nav-button{border:1px solid var(--line);padding:13px 18px}.nav-button span{margin-left:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:center;padding-top:70px;padding-bottom:80px;min-height:760px}.hero .eyebrow{display:flex;gap:12px;align-items:center;color:var(--wine)}.little-line{width:28px;height:1px;background:var(--wine)}h1{font-size:clamp(62px,6.8vw,88px);line-height:.99;letter-spacing:-3.5px;margin-top:28px;color:var(--wine)}.ampersand{font-style:italic;font-size:.64em;color:#ac7979}.title-dot{color:#b77b73}.hero-tagline{font-family:var(--display);font-size:30px;line-height:1.14;margin-top:28px}.hero-tagline em{color:var(--wine)}.hero-description{margin:20px 0 26px;max-width:350px;color:var(--muted);font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:17px 23px;background:var(--wine);color:var(--paper);font-size:11px;font-weight:600;border:1px solid var(--wine);transition:background .2s,transform .2s}.button:hover:not(:disabled){background:#4d2030;transform:translateY(-2px)}.button-primary span{font-size:20px;line-height:12px}.hero-date{margin-top:35px;display:flex;gap:20px;align-items:center}.date-number{font-family:var(--display);font-size:38px;letter-spacing:-1px}.date-number i{font-size:25px;color:#a77b78}.hero-date>span:last-child{border-left:1px solid var(--line);padding-left:20px;font-size:11px;line-height:1.9}.hero-date small{font-size:10px;color:var(--muted)}.hero-visual{position:relative;padding:15px 12px 15px 0}.photo-arch{height:570px;border-radius:230px 230px 4px 4px;overflow:hidden;position:relative;background:var(--rose)}.photo-arch:after{content:"";position:absolute;inset:10px;border:1px solid #fff6;border-radius:220px 220px 0 0;pointer-events:none}.photo-arch img{width:100%;height:100%;object-position:50% 38%}.photo-arch picture{display:block;height:100%}.hero-visual:before{content:"";position:absolute;inset:0 0 28px 14px;border:1px solid #b78985;border-radius:240px 240px 0 0;transform:rotate(4deg);z-index:-1}.union-seal{position:absolute;bottom:52px;left:-43px;width:140px;height:140px;border-radius:50%;background:var(--paper);border:1px solid var(--line);box-shadow:0 0 0 7px var(--paper);display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(-10deg);color:var(--wine)}.union-seal span{font-size:8px;letter-spacing:1px}.union-seal strong{font-family:var(--display);font-size:31px;font-weight:500;margin:8px}.photo-side-note{position:absolute;right:-19px;top:220px;writing-mode:vertical-rl;font-size:9px;letter-spacing:1.7px;color:var(--muted)}.botanical{position:absolute;right:-45px;bottom:-40px;width:135px;color:#a27b69;pointer-events:none}.invitation-ribbon{background:var(--wine);color:var(--paper);display:flex;justify-content:center;align-items:center;gap:42px;padding:21px 25px;font-size:10px;letter-spacing:1.4px;text-transform:uppercase}.invitation-ribbon span:nth-child(2n){font-size:18px;color:#d8b5ab}.story{display:grid;grid-template-columns:1fr 1.12fr;gap:100px}.story-signature{font-family:var(--display);font-size:26px;font-style:italic;color:var(--wine);margin-top:32px}.story-body{position:relative;padding-top:20px}.story-body>p{margin-bottom:23px;color:var(--muted);font-size:13px}.story-body .story-promise{font-family:var(--display);font-size:25px;line-height:1.45;color:var(--ink)}.story-star{position:absolute;top:-15px;right:0;color:#a17568;font-size:32px}.union-note{border-top:1px solid var(--line);padding-top:20px;font-size:10px;color:var(--wine);display:flex;align-items:center;gap:10px}.status-dot{height:6px;width:6px;border-radius:50%;background:var(--wine)}.celebrations{background:#f0e5df}.center-heading{text-align:center;margin-bottom:48px}.center-heading p{margin-top:22px;font-size:12px;color:var(--muted)}.event-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:960px;margin:auto}.event-card{padding:30px 36px 0;background:var(--paper);border:1px solid #ddc8c2}.event-top{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;text-transform:uppercase}.event-day{font-family:var(--display);font-size:96px;line-height:1.15;color:var(--wine);display:flex;justify-content:space-between;align-items:center;margin:12px 0}.event-day>span{font-size:40px;color:#bc8b83}.event-card>.eyebrow{color:var(--muted);font-size:8px}.event-card h3{font-size:43px;line-height:1.2;margin:9px 0 13px}.event-card>p{font-size:11px;min-height:85px;color:var(--muted)}.event-address{display:flex;align-items:center;gap:12px;margin:22px 0;font-size:11px}.event-address>span{font-size:24px;color:#a16a68}.event-address small{display:block;font-size:9px;color:var(--muted);margin-top:6px}.calendar-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:20px 0;border:0;border-top:1px solid var(--line);background:none;font-size:10px}.calendar-button span:first-child{font-size:20px}.calendar-button:hover{text-decoration:underline}.event-card-dark{background:var(--wine);color:var(--paper);border-color:var(--wine)}.event-card-dark .event-day,.event-card-dark>.eyebrow,.event-card-dark>p,.event-card-dark small,.event-card-dark .event-address>span{color:#edd7d0}.event-card-dark .calendar-button{border-color:#ffffff30;color:var(--paper)}.countdown{display:flex;align-items:center;justify-content:space-between;max-width:960px;margin:55px auto 0;padding-top:34px;border-top:1px solid #cfb5af;gap:20px}.countdown .eyebrow{font-size:8px;color:var(--wine)}.countdown h3{font-size:29px;margin-top:7px}.countdown p{font-size:10px;color:var(--muted);margin-top:5px}.countdown-values{display:flex;gap:23px;text-align:center}.countdown-values strong{display:block;font-family:var(--display);font-weight:400;font-size:45px;line-height:1.1;color:var(--wine)}.countdown-values span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:1px;margin-top:7px}.countdown-values .days-only{text-align:right}.days-only strong{font-size:64px}.gallery-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.gallery-heading>p{color:var(--muted);font-size:12px}.gallery-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:65px}.gallery-frame{height:630px;position:relative;background:#e9ddd4;overflow:hidden;touch-action:pan-y}.gallery-frame picture,.gallery-frame img{width:100%;height:100%;display:block}.gallery-frame img{object-fit:contain}.gallery-controls{position:absolute;bottom:0;left:0;right:0;padding:25px;background:linear-gradient(transparent,#2d1c22a8);color:#fff;display:flex;align-items:center;justify-content:space-between;font-size:13px}.counter-divider{font-size:10px;opacity:.7;margin-left:8px}.gallery-controls>div{display:flex;gap:8px}.gallery-controls button{width:40px;height:40px;border:1px solid #ffffff70;border-radius:50%;background:#fbf6f11c;color:#fff}.gallery-controls button:hover{background:var(--wine)}.gallery-aside{display:flex;flex-direction:column;justify-content:center;align-items:start}.gallery-quote-mark{font-family:var(--display);font-size:100px;color:#cda9a1;height:65px;line-height:1}.gallery-aside blockquote{font-family:var(--display);font-size:45px;line-height:1.13;margin:15px 0 23px}.gallery-aside blockquote em{color:var(--wine)}.small-line{width:40px;height:1px;background:#b38e84;margin-bottom:20px}.gallery-aside>p{font-size:11px;color:var(--muted)}.thumbnail-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-top:28px;width:100%;max-width:310px}.thumbnail-grid button{padding:0;background:none;border:2px solid transparent;opacity:.6}.thumbnail-grid button.selected{border-color:var(--wine);opacity:1}.thumbnail-grid img{width:100%;height:49px}.locations-section{background:#f3ece6;border-top:1px solid #e8d9d1}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.location-card{background:var(--paper);border:1px solid #e1d2c9;overflow:hidden}.map-placeholder{height:230px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:#e8e4d9;isolation:isolate}.map-placeholder:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(25deg,transparent 0 45px,#f6f4ed 46px 53px,transparent 54px 95px),repeating-linear-gradient(115deg,transparent 0 90px,#f6f4ed 91px 99px,transparent 100px 160px);opacity:.8;z-index:-1}.map-road{position:absolute;height:10px;width:160%;background:#fbf6f1;border:1px solid #d8d5cb;z-index:-1}.road-one{transform:rotate(-32deg)}.road-two{transform:rotate(60deg)}.road-three{transform:rotate(9deg);top:40px}.map-pin{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;color:var(--paper);background:var(--wine);font-size:30px;box-shadow:0 4px 0 5px #652d3c15;margin-bottom:14px}.map-placeholder strong{font-size:11px;background:var(--paper);padding:5px 10px}.map-placeholder small{font-size:8px;background:var(--paper);padding:3px 7px;color:var(--muted)}iframe{border:0;width:100%;height:230px;display:block}.location-body{padding:28px}.location-body .eyebrow{font-size:8px;color:var(--wine)}.location-body h3{font-size:33px;margin-top:10px;display:flex;justify-content:space-between;align-items:center;gap:10px}.location-body h3 span{font-family:Manrope,sans-serif;font-size:9px;color:var(--muted)}.location-body p{font-size:11px;margin:14px 0 24px}.location-body small{font-size:10px;color:var(--muted)}.location-actions{display:flex;gap:8px;flex-wrap:wrap}.button-small{padding:12px 14px;font-size:9px;gap:8px}.button-outline{background:transparent;color:var(--wine);border-color:#c7a8a7}.button-outline:hover:not(:disabled){color:#fff}.gratitude{display:grid;grid-template-columns:.85fr 1fr;align-items:center;gap:110px}.gratitude-photo{transform:rotate(-4deg);padding:12px 12px 0;background:#fffdf9;box-shadow:0 10px 40px #492e3710;border:1px solid #e8d9d0}.gratitude-photo img{width:100%;height:440px;object-position:center 35%}.gratitude-photo span{display:block;text-align:center;font-family:var(--display);font-size:18px;font-style:italic;padding:17px 0}.gratitude-copy{position:relative}.gratitude-copy p{font-size:12px;color:var(--muted);margin-top:25px;max-width:310px}.gratitude-star{position:absolute;right:0;bottom:-20px;font-size:70px;color:#b88e7e}.closing{text-align:center;background:var(--wine);color:var(--paper);padding:90px 24px}.closing>.eyebrow{color:#e5c5bd;font-size:9px}.closing h2{font-size:70px;margin:25px 0}.closing h2 em{color:#e5c5bd}.closing p{font-size:11px;color:#e2c9c5}.closing-date{display:inline-flex;align-items:center;gap:15px;font-family:var(--display);font-size:28px;padding:20px 0 10px;margin-top:15px;border-bottom:1px solid #dfb9af70}.closing-date span{font-style:italic;color:#d8a69a}.site-footer{padding:35px 48px;display:flex;align-items:center;justify-content:space-between;gap:20px}.site-footer p,.site-footer>span{font-size:9px;color:var(--muted)}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--wine);color:#fff;padding:15px}.skip-link:focus{top:10px}.union-seal{text-align:center;padding:14px 12px;gap:6px}.union-seal span{display:block;width:100%;line-height:1.5}.union-seal strong{flex:none;margin:0;line-height:1.1}@media(min-width:1400px){.hero{padding-top:85px;padding-bottom:100px}.photo-arch{height:610px}}@media(max-width:1000px){.section-shell{padding-left:32px;padding-right:32px}.site-header{padding:0 32px}.site-header nav{gap:20px}.hero{gap:30px}.photo-arch{height:510px}.union-seal{left:-20px;width:120px;height:120px}.story{gap:50px}.gratitude{gap:60px}.gallery-layout{gap:40px}.location-body{padding:22px}.button-small{padding:11px 10px;font-size:8px}}@media(max-width:760px){html{scroll-padding-top:20px}.site-header{height:78px;padding:0 24px;position:relative;z-index:10}.monogram{font-size:30px}.menu-toggle{display:block;border:0;background:none;color:var(--wine);font-size:11px;padding:10px 0}.site-header nav{display:none;position:absolute;top:77px;left:0;right:0;background:var(--paper);padding:25px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #34282c10;align-items:stretch;gap:0}.site-header nav.open{display:flex;flex-direction:column}.site-header nav a{padding:15px}.nav-button{margin-top:10px}.section-shell{padding-left:24px;padding-right:24px}.section-space{padding-top:75px;padding-bottom:75px}.hero{grid-template-columns:1fr;gap:40px;padding-top:42px;padding-bottom:65px;min-height:0}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}h1{font-size:70px;letter-spacing:-3px;margin-top:25px}.hero-tagline{font-size:29px}.hero-description{font-size:12px;max-width:330px}.hero-date{margin-top:28px}.hero-visual{margin:0 auto;max-width:420px;width:100%;padding-right:15px;padding-left:15px}.photo-arch{height:470px}.hero-visual:before{left:24px;right:3px}.union-seal{left:0;bottom:35px;width:120px;height:120px}.union-seal span{font-size:7px}.photo-side-note{right:-4px;top:175px}.botanical{right:-12px;width:100px;bottom:-35px}.invitation-ribbon{gap:17px;padding:18px 14px;flex-wrap:wrap;font-size:8px;letter-spacing:1px}.invitation-ribbon span:nth-last-child(-n+2){display:none}.story{grid-template-columns:1fr;gap:25px}.section-number{font-size:9px;margin-bottom:20px}.story-signature{margin-top:23px}.story-body{padding-top:20px}.story-star{top:-15px}.story-body>p{font-size:12px}.story-body .story-promise{font-size:24px}.center-heading{margin-bottom:32px}.center-heading p{font-size:11px}.event-grid{grid-template-columns:1fr;gap:18px}.event-card{padding:25px 27px 0}.event-card>p{min-height:0;font-size:12px}.event-day{font-size:95px}.event-card h3{font-size:42px}.event-address{margin:25px 0}.countdown{margin-top:35px;align-items:start;flex-direction:column;gap:25px}.countdown h3{font-size:28px}.countdown-values{gap:24px}.countdown-values .days-only{text-align:left}.days-only strong{font-size:62px}.gallery-heading{flex-direction:column;align-items:start;gap:20px;margin-bottom:30px}.gallery-heading>p{font-size:11px}.gallery-layout{grid-template-columns:1fr;gap:30px}.gallery-frame{height:510px}.gallery-aside{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:12px}.gallery-quote-mark,.gallery-aside .small-line{display:none}.gallery-aside blockquote{font-size:32px;margin:0}.gallery-aside>p{font-size:10px}.thumbnail-grid{grid-column:1/-1;max-width:100%;grid-template-columns:repeat(11,1fr);margin-top:10px;gap:3px}.thumbnail-grid img{height:45px}.location-grid{grid-template-columns:1fr;gap:20px}.location-body{padding:25px}.location-body h3{font-size:34px}.button-small{font-size:9px;padding:12px}.map-placeholder{height:210px}.gratitude{grid-template-columns:1fr;gap:55px}.gratitude-photo{max-width:350px;width:90%;margin:auto}.gratitude-photo img{height:360px}.gratitude-copy h2{font-size:52px}.gratitude-copy .section-number{margin-bottom:20px}.gratitude-star{right:10px;bottom:0}.closing{padding:70px 24px}.closing h2{font-size:60px}.closing p{font-size:11px}.closing-date{font-size:25px;gap:10px}.site-footer{padding:30px 24px;flex-direction:column;gap:12px;text-align:center}.site-footer p{font-size:9px}.desktop-break{display:none}}@media(max-width:380px){h1{font-size:61px}.photo-arch{height:420px}.gallery-frame{height:450px}.location-actions{flex-direction:column}.thumbnail-grid{grid-template-columns:repeat(6,1fr)}.countdown-values{gap:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
