/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, 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;-webkit-text-decoration:inherit;-webkit-text-decoration: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{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}: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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:#02100b;--ink-soft:#195042;--forest:#195042;--gold:#91855a;--beige:#d6cabc;--ivory:#d6cabc;--paper:#d6cabc;--silver:#91855a;--line:#91855a80;--font-display:"Baskerville", "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;--font-body:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline-offset:6px;outline:1px solid}.hero{background-color:var(--ink);min-height:max(100svh,680px);position:relative;overflow:hidden}.hero:before{content:none}.hero__image{background-image:url(/cover-landscape-gold-seal.png);background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero__veil{z-index:-2;background:linear-gradient(#02100b6b,#1950421f 35%,#02100bb3),radial-gradient(circle at 50% 48%,#1950421f,#02100b7a 72%);position:absolute;inset:0}.hero:after{content:none}.nav{z-index:5;letter-spacing:.18em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:34px 5vw;font-size:.69rem;display:flex;position:absolute;top:0;left:0;right:0}.monogram{font-family:var(--font-display);letter-spacing:.08em;font-size:1.35rem}.monogram span,footer span{color:var(--silver);font-style:italic}.nav__links{gap:clamp(20px,3vw,48px);display:flex}.nav__links a{position:relative}.nav__links a:after{content:"";transform-origin:100%;background:currentColor;width:100%;height:1px;transition:transform .28s;position:absolute;bottom:-7px;left:0;transform:scaleX(0)}.nav__links a:hover:after{transform-origin:0;transform:scaleX(1)}.hero__content{z-index:2;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:48px 5vw;animation:1.3s cubic-bezier(.2,.7,0,1) .2s both rise;display:flex;position:relative}.hero__crest{aspect-ratio:1;width:clamp(88px,8vw,126px);font-family:var(--font-display);color:var(--silver);border:1px solid #91855ab8;border-radius:50%;justify-content:center;align-items:center;margin-bottom:clamp(28px,4vh,44px);font-size:clamp(1.6rem,2.6vw,2.5rem);display:flex;box-shadow:inset 0 0 0 6px #02100bbd,inset 0 0 0 7px #91855a61,0 14px 34px #00000085}.hero__crest i{margin:0 4px;font-size:.5em;font-weight:400}.eyebrow,.hero__announcement,.hero__date,.kicker,.section__label,.schedule__time,.gift-links span,.gift-links i,.rsvp small{text-transform:uppercase;letter-spacing:.25em}.eyebrow{margin:0 0 clamp(34px,5vh,56px);font-size:clamp(.62rem,.72vw,.78rem)}.hero h1{width:min(94vw,1600px);font-family:var(--font-display);letter-spacing:-.055em;text-shadow:0 4px 28px #000000a6;justify-content:center;align-items:baseline;margin:0;font-size:clamp(4.8rem,10vw,11.5rem);font-weight:400;line-height:.82;display:flex}.hero h1 i{color:var(--silver);margin:0 .25em;font-size:.3em;font-weight:400}.hero__rule{justify-content:center;align-items:center;gap:9px;width:170px;margin:clamp(34px,5vh,54px) auto 25px;display:flex}.hero__rule:before,.hero__rule:after{content:"";background:#e9e5dca6;flex:1;height:1px}.hero__rule span{border:1px solid #e9e5dca6;width:5px;height:5px;transform:rotate(45deg)}.hero__announcement{font-family:var(--font-display);margin:0;font-size:.92rem}.hero__date{font-family:var(--font-display);margin:18px 0 0;font-size:.76rem}.scroll-cue{letter-spacing:.16em;text-transform:uppercase;flex-direction:column;align-items:center;gap:9px;font-size:.62rem;display:flex;position:absolute;bottom:42px;left:50%;transform:translate(-50%)}.scroll-cue span{font-size:1.1rem;animation:1.6s ease-in-out infinite drift}.section{padding:clamp(88px,11vw,160px) clamp(24px,7vw,110px);position:relative}.section__label{writing-mode:vertical-rl;color:var(--gold);font-size:.62rem;position:absolute;top:clamp(96px,11vw,165px);left:clamp(24px,3vw,48px);transform:rotate(180deg)}.section__label--light{color:#91855ac7}.welcome{background:radial-gradient(circle at 78% 55%, #91855a33, transparent 26%), var(--paper);grid-template-columns:minmax(0,1.6fr) minmax(250px,.8fr);align-items:center;gap:10vw;min-height:720px;display:grid}.welcome__copy{max-width:760px;margin-left:6vw}.kicker{color:var(--gold);margin:0 0 25px;font-size:.66rem;font-weight:600}.kicker--light{color:var(--silver)}.welcome h2,.gallery h2,.venue h2,.gifts h2,.rsvp h2,.celebration h2{font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-weight:400}.welcome h2{max-width:850px;font-size:clamp(3rem,6vw,6.5rem);line-height:.98}.welcome__lede{max-width:560px;font-family:var(--font-display);color:var(--forest);margin:38px 0 0 30%;font-size:clamp(1.1rem,1.55vw,1.4rem);line-height:1.65}.promise{aspect-ratio:1;width:min(28vw,330px);font-family:var(--font-display);border:1px solid #1950426b;border-radius:50%;place-items:center;display:grid;position:relative}.promise:before,.promise:after{content:"";border:1px solid #91855a80;border-radius:50%;position:absolute;inset:11%}.promise:after{opacity:.6;border-style:dotted;inset:-10px}.promise strong{font-size:clamp(4rem,8vw,7rem);font-weight:400}.promise__month,.promise__year{letter-spacing:.22em;text-transform:uppercase;font-size:.65rem;position:absolute}.promise__month{top:20%}.promise__year{bottom:20%}.gallery{background:var(--beige);padding-bottom:clamp(110px,14vw,210px)}.gallery__heading{grid-template-columns:1.2fr 1fr;align-items:end;gap:5vw;max-width:1180px;margin:0 auto 70px;display:grid}.gallery__heading .kicker{grid-column:1/-1;margin:0}.gallery__heading h2{font-size:clamp(3rem,5.5vw,5.4rem);line-height:.96}.gallery__heading>p:last-child{max-width:410px;color:var(--forest);margin:0;line-height:1.7}.gallery__grid{grid-template-rows:270px 310px;grid-template-columns:1.15fr .85fr .85fr;gap:14px;max-width:1180px;margin:auto;display:grid}.photo-slot{color:#e9e5dcb8;background:linear-gradient(135deg, #ffffff0d, transparent 40%), radial-gradient(circle at 60% 20%, var(--forest), var(--ink-soft) 70%);justify-content:space-between;align-items:flex-end;min-height:230px;margin:0;padding:22px;display:flex;position:relative;overflow:hidden}.photo-slot:before,.photo-slot:after{content:"";border:1px solid #e9e5dc1f;border-radius:50%;position:absolute}.photo-slot:before{aspect-ratio:1;width:72%;top:-32%;right:-22%}.photo-slot:after{aspect-ratio:1;width:46%;bottom:-24%;left:-14%}.photo-slot--one{grid-row:1/3}.photo-slot--two{background:linear-gradient(45deg, #ffffff0a, transparent 50%), radial-gradient(circle at 20% 70%, var(--forest), var(--ink) 66%);grid-column:2/4}.photo-slot--four{background:linear-gradient(125deg, #ffffff0d, transparent), var(--ink-soft)}.photo-slot span,.photo-slot figcaption{z-index:1;position:relative}.photo-slot span{font-family:var(--font-display);font-size:1.1rem}.photo-slot figcaption{letter-spacing:.12em;text-transform:uppercase;font-size:.62rem}.celebration{background:radial-gradient(circle at 18% 35%, #54755a33, transparent 25%), linear-gradient(145deg, #07281a, var(--ink) 75%);color:var(--ivory)}.celebration__intro{max-width:1050px;margin:0 auto 90px}.celebration h2{color:var(--gold);font-size:clamp(3.3rem,7vw,7.4rem);line-height:.92}.schedule{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);max-width:1180px;margin:auto;display:grid}.schedule article{border-right:1px solid var(--line);min-height:330px;padding:35px 38px 45px}.schedule article:last-child{border-right:0}.schedule__number{font-family:var(--font-display);color:var(--silver)}.schedule__time{color:var(--silver);margin:70px 0 18px;font-size:.58rem}.schedule h3{font-family:var(--font-display);color:var(--gold);margin:0 0 16px;font-size:clamp(1.7rem,2.3vw,2.3rem);font-weight:400}.schedule p:last-child{max-width:280px;color:var(--silver);margin:0;font-size:.91rem;line-height:1.6}.venue{background:var(--paper)}.venue__card{border:1px solid #19504252;grid-template-columns:.9fr 1.15fr;max-width:1150px;min-height:620px;margin:auto;display:grid}.venue__seal{background:repeating-radial-gradient(circle at 45% 30%, #ffffff06 0 1px, transparent 1px 5px), var(--ink);place-items:center;display:grid;position:relative;overflow:hidden}.venue__seal:before,.venue__seal:after{content:"";aspect-ratio:1;border:1px solid #91855a4d;border-radius:50%;width:80%;position:absolute}.venue__seal:after{width:66%}.wax-seal{z-index:2;aspect-ratio:1;color:#3f3928;width:52%;font-family:var(--font-display);background:radial-gradient(circle at 34% 28%,#d6cabc3d,#0000 18%),radial-gradient(circle at 55% 58%,#9b8d5d 0 34%,#746a48 64%,#4c452f 100%);border:2px solid #aa9b68;border-radius:50%;position:relative;box-shadow:inset 0 0 0 7px #5e563a,inset 0 0 0 9px #b2a471,inset 8px 8px 22px #d6cabc26,inset -10px -12px 24px #02100b57,0 18px 35px #0000008c}.wax-seal:before{content:"";border:1px solid #3f392894;border-radius:50%;position:absolute;inset:9%}.wax-seal__horseshoe{border:clamp(5px,.55vw,9px) double;border-top-color:#0000;border-radius:0 0 48% 48%;position:absolute;inset:22% 18% 16%}.wax-seal__horseshoe:before,.wax-seal__horseshoe:after{content:"";background:currentColor;border-radius:50%;width:18%;height:14%;position:absolute;top:-7%}.wax-seal__horseshoe:before{left:-8%}.wax-seal__horseshoe:after{right:-8%}.wax-seal__letter,.wax-seal__divider{z-index:1;position:absolute;left:50%;transform:translate(-50%)}.wax-seal__letter{text-shadow:1px 1px #d6cabc47;font-size:clamp(1.55rem,3.2vw,3.2rem);line-height:1}.wax-seal__letter--c{top:25%}.wax-seal__divider{background:currentColor;width:18%;height:2px;top:49%}.wax-seal__letter--n{top:53%}.venue__copy{flex-direction:column;justify-content:center;padding:clamp(45px,7vw,105px);display:flex}.venue h2{max-width:590px;font-size:clamp(3rem,5vw,5.3rem);line-height:.98}.venue__copy>p:not(.kicker){max-width:530px;color:var(--forest);margin:32px 0 0;line-height:1.7}.button-row{align-items:center;gap:32px;margin-top:40px;display:flex}.button{letter-spacing:.18em;text-transform:uppercase;border:1px solid;justify-content:center;align-items:center;min-height:54px;padding:0 28px;font-size:.66rem;font-style:normal;font-weight:600;transition:background .22s,color .22s;display:inline-flex}.button--dark{background:var(--ink);color:var(--ivory)}.button--dark:hover{color:var(--ink);background:0 0}.text-link{letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid #1950427a;padding-bottom:5px;font-size:.7rem}.gifts{background:var(--beige);grid-template-columns:1.1fr .9fr;gap:9vw;display:grid}.gifts__copy{max-width:650px;margin-left:6vw}.gifts h2{font-size:clamp(3rem,5.6vw,5.7rem);line-height:.98}.gifts__copy>p:last-child{max-width:480px;color:var(--forest);margin-top:35px;line-height:1.75}.gift-links{border-top:1px solid #19504257}.gift-links a{border-bottom:1px solid #19504257;grid-template-columns:1fr auto;gap:12px;padding:28px 0;display:grid}.gift-links span,.gift-links i{color:var(--gold);font-size:.56rem;font-style:normal}.gift-links strong{font-family:var(--font-display);grid-column:1;font-size:1.7rem;font-weight:400}.gift-links i{grid-area:2/2;align-self:center}.rsvp{min-height:760px;color:var(--ivory);text-align:center;background:radial-gradient(circle at 50% 50%, #195042a3, transparent 36%), repeating-radial-gradient(circle at 80% 20%, #ffffff05 0 1px, transparent 1px 6px), var(--ink);border-top:1px solid #91855a80;border-bottom:1px solid #91855a80;place-items:center;padding:clamp(84px,10vw,150px) clamp(22px,7vw,110px);display:grid;position:relative;overflow:hidden}.rsvp:before,.rsvp:after{content:"";pointer-events:none;position:absolute}.rsvp:before{border:1px solid #91855a57;inset:24px}.rsvp:after{border:1px solid var(--gold);background:var(--ink);width:10px;height:10px;top:24px;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.rsvp__word{color:#0000;font-family:var(--font-display);letter-spacing:.05em;opacity:.24;pointer-events:none;white-space:nowrap;-webkit-text-stroke:1px #d6cabc80;font-size:clamp(10rem,24vw,27rem);font-weight:400;line-height:.7;position:absolute;top:50%;left:50%;transform:translate(-48%,-50%)}.rsvp__inner{z-index:1;background:#02100bd1;border:1px solid #91855aad;width:min(100%,940px);padding:clamp(58px,7vw,96px) clamp(24px,8vw,120px);position:relative;box-shadow:inset 0 0 0 7px #02100be6,inset 0 0 0 8px #91855a2e,0 30px 80px #00000040}.rsvp__inner:before{content:"C · N";width:72px;color:var(--gold);font-family:var(--font-display);letter-spacing:.16em;border-bottom:1px solid #91855ab3;margin:0 auto 32px;padding-bottom:14px;font-size:1rem;display:block}.rsvp h2{max-width:760px;color:var(--gold);margin-inline:auto;font-size:clamp(3.5rem,7vw,7rem);line-height:.92}.rsvp__inner>p:not(.kicker){max-width:560px;color:var(--beige);margin:32px auto 38px;line-height:1.7}.button--rsvp{border-color:var(--gold);background:var(--gold);min-height:62px;color:var(--ink);padding-inline:36px;box-shadow:0 12px 34px #0000003d}.button--rsvp span{margin-left:14px;font-size:1rem;transition:transform .22s}.button--rsvp:hover{border-color:var(--beige);background:var(--beige)}.button--rsvp:hover span{transform:translate(3px,-3px)}.rsvp small{color:var(--gold);margin-top:26px;font-size:.52rem;display:block}footer{color:var(--ivory);border-top:1px solid #e9e5dc1f;justify-content:space-between;align-items:center;padding:34px 5vw;display:flex}footer p{font-family:var(--font-display);margin:0;font-size:1.45rem}footer small{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;font-size:.6rem}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes settle{0%{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1.025)}}@keyframes drift{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}@media (width<=840px){.hero{min-height:100svh;display:block}.hero:before{content:none}.hero__image{filter:none;background-image:url(/cover-portrait-gold-seal.png);background-position:50%;background-size:100% 100%;width:min(100vw,81.83svh);height:min(100svh,122.21vw);inset:50% auto auto 50%;transform:translate(-50%,-50%)}.hero__content,.nav__links{display:none}.nav{justify-content:center}.hero:after{content:none}.hero h1{font-size:clamp(4.2rem,22vw,7rem)}.scroll-cue{bottom:26px}.section__label{writing-mode:initial;margin-bottom:50px;position:static;transform:none}.welcome,.gifts{grid-template-columns:1fr}.welcome{gap:70px}.welcome__copy,.gifts__copy,.welcome__lede{margin-left:0}.promise{width:min(70vw,310px);margin:auto}.gallery__heading{grid-template-columns:1fr}.gallery__heading .kicker{grid-column:1}.gallery__grid{grid-template-rows:390px 230px 230px;grid-template-columns:1fr 1fr}.photo-slot--one{grid-area:1/1/auto/3}.photo-slot--two{grid-column:1/3}.schedule{grid-template-columns:1fr}.schedule article{border-right:0;border-bottom:1px solid var(--line);min-height:auto}.schedule article:last-child{border-bottom:0}.schedule__time{margin-top:38px}.venue__card{grid-template-columns:1fr}.venue__seal{min-height:420px}.wax-seal{width:min(52vw,240px)}}@media (width<=560px){.hero__content{padding-top:120px}.eyebrow{margin-bottom:42px}.section{padding:84px 22px}.welcome h2,.gallery h2,.venue h2,.gifts h2,.celebration h2{font-size:clamp(2.75rem,14vw,4.2rem)}.gallery__grid{scroll-snap-type:x mandatory;margin-right:-22px;padding-right:22px;display:flex;overflow-x:auto}.photo-slot{scroll-snap-align:start;flex:0 0 82vw;min-height:420px}.celebration__intro{margin-bottom:55px}.venue__card{border:0}.venue__seal{min-height:330px}.venue__copy{padding:48px 0 0}.button-row{flex-direction:column;align-items:stretch}.text-link{align-self:flex-start}.rsvp{min-height:680px;padding-inline:16px}.rsvp:before{inset:12px}.rsvp:after{top:12px}.rsvp__inner{padding:48px 24px 52px}.rsvp h2{font-size:clamp(3.1rem,15vw,4.4rem)}.button--rsvp{width:100%;padding-inline:20px}footer{flex-direction:column;align-items:flex-start;gap:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
