:root{--paper:#e9d9be;--paper-light:#f0e3cc;--ink:#30251b;--olive:#303320;--cream:#efe1c6;--line:#8b765344;--serif:'Cormorant Garamond','Palatino Linotype',Georgia,serif;--body-serif:'EB Garamond',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:#d3c3a9;color:var(--ink);font:18px/1.55 var(--body-serif)}img{display:block;max-width:100%}a{color:inherit}button,input,textarea{font:inherit}button,summary{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.1}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #9c7043;outline-offset:5px}.skip-link{position:fixed;top:-70px;left:15px;z-index:100;padding:10px;background:var(--cream)}.skip-link:focus{top:10px}.site-shell,.site-header,footer{width:min(100%,1200px);margin-inline:auto}.site-shell{box-shadow:0 10px 65px #36281914}.site-header{height:68px;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:center;background:var(--paper-light);border-bottom:1px solid var(--line)}.nav{display:flex;gap:clamp(18px,2.3vw,32px);padding:0 100px;align-items:center}.nav a{text-transform:uppercase;text-decoration:none;letter-spacing:.16em;font:500 12px var(--serif);white-space:nowrap;padding:12px 0}.nav a:hover{text-decoration:underline;text-underline-offset:5px}.nav-sprig{position:absolute;width:95px;height:55px;object-fit:contain;pointer-events:none;top:7px}.nav-sprig-left{left:10px}.nav-sprig-right{right:10px;transform:scaleX(-1)}.menu-toggle,.mobile-menu,.mobile-brand{display:none}.paper-section{position:relative;background:radial-gradient(ellipse at 90% 10%,#bd9c6220,transparent 55%),var(--paper)}.hero{display:grid;grid-template-columns:42% 58%;min-height:555px;overflow:hidden}.hero-photo{position:relative;overflow:hidden;min-width:0}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 43%}.hero-copy{position:relative;display:grid;place-items:center;text-align:center;padding:88px 42px 48px;isolation:isolate}.hero-text{position:relative;z-index:2;width:100%;max-width:560px}.hero h1{margin:0;font-size:clamp(54px,6.2vw,79px);line-height:1;letter-spacing:.055em;font-weight:500}.subhead{font-family:var(--serif);font-size:22px;letter-spacing:.23em;line-height:1.5;margin:22px 0 12px}.subhead span{font-size:15px;letter-spacing:.18em}.antique-divider{width:108px;display:flex;align-items:center;gap:9px;margin:17px auto;color:#725b3c}.antique-divider i{height:1px;background:currentColor;flex:1}.antique-divider b{font-size:8px;font-weight:400}.antique-divider.small{width:85px;margin:20px auto}.date,.place{font-family:var(--serif);font-size:17px;letter-spacing:.2em;line-height:1.65;margin:0}.invitation{font-size:20px;line-height:1.4;font-style:italic;margin:21px auto 0;max-width:365px}.hero-actions{display:flex;justify-content:center;gap:11px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:12px 23px;border:1px solid #38271955;text-decoration:none;text-transform:uppercase;font:500 12px/1.4 var(--serif);letter-spacing:.17em;color:var(--cream);background:#333720;box-shadow:inset 0 0 0 3px #ead2a410;transition:background-color .18s}.button:hover{background-color:#484b2e}.hero-actions .button{padding:13px 17px;flex:1}.oxblood{background:#522725}.oxblood:hover{background:#6a3630}.umber{background:#684821}.umber:hover{background:#805b2b}.hero-decor{position:absolute;pointer-events:none;z-index:1;width:130px;top:12px}.hero-decor-left{left:-11px;transform:scaleX(-1) rotate(-7deg)}.hero-decor-right{right:-4px;top:7px;width:145px}.dark-section{position:relative;background:radial-gradient(ellipse at 50% 5%,#66603a26,transparent 70%),var(--olive);color:var(--cream)}.story{padding:39px 8% 43px;overflow:hidden}.story>*{position:relative;z-index:2}.eyebrow{font:500 13px/1.5 var(--serif);text-transform:uppercase;letter-spacing:.23em;margin:0 0 8px}.section-heading h2,.ornament-card h2{font-size:clamp(36px,4.2vw,54px);letter-spacing:.055em;text-transform:uppercase;margin:0}.story-heading h2{font-size:50px;letter-spacing:.09em}.centered{text-align:center}.narrow{max-width:660px;margin-inline:auto}.script-line{font-size:19px;font-style:italic;line-height:1.4;margin:10px auto 0;color:#e2d3b8}.mini-flourish{font-size:12px;letter-spacing:.25em;margin-top:8px;color:#bea77d}.family-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;max-width:940px;margin:25px auto 0}.portrait-card{min-width:0;text-align:center}.photo-frame{aspect-ratio:4/5;padding:3px;border:1px solid #d2bd97;background:#e5d4b4;overflow:hidden;box-shadow:0 3px 8px #0002;clip-path:polygon(0 1%,99% 0,100% 99%,1% 100%)}.photo-frame img{width:100%;height:100%;object-fit:cover}.portrait-card:nth-child(odd) .photo-frame{transform:rotate(-.5deg)}.portrait-card:nth-child(even) .photo-frame{transform:rotate(.5deg)}.portrait-card:nth-child(1) img{object-position:50% 26%}.portrait-card:nth-child(2) img{object-position:24% 48%}.portrait-card:nth-child(4) img{object-position:50% 63%}.portrait-card:nth-child(5) img{object-position:50% 52%}.portrait-card h3{font-size:19px;letter-spacing:.12em;text-transform:uppercase;margin:13px 0 5px}.portrait-card p{font-size:15px;font-style:italic;line-height:1.3;color:#e1d1b5;margin:0}.story-floral{position:absolute!important;z-index:1!important;pointer-events:none;width:200px;opacity:.78}.story-floral-tl{left:-100px;top:-55px;transform:rotate(165deg)}.story-floral-tr{right:-95px;top:-40px;transform:scaleX(-1) rotate(170deg)}.story-floral-bl{left:-65px;bottom:-32px;transform:scaleX(-1)}.story-floral-br{right:-65px;bottom:-30px}.torn-edge{position:absolute!important;left:0;right:0;height:11px;z-index:3!important;pointer-events:none;background:var(--paper);clip-path:polygon(0 0,100% 0,100% 45%,96% 25%,91% 50%,87% 30%,80% 55%,73% 35%,69% 62%,61% 37%,56% 60%,49% 35%,43% 55%,36% 32%,30% 55%,23% 30%,18% 55%,12% 35%,6% 54%,0 30%)}.torn-edge-top{top:0}.torn-edge-bottom{bottom:0;transform:rotate(180deg)}.location-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);padding:50px 7%;gap:6%;overflow:hidden;align-items:center}.location-photo{position:relative;min-height:280px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);background:#ddcbaa44}.farm-placeholder-mark{position:relative;z-index:2;text-align:center;color:#67583f;padding:24px}.farm-placeholder-mark>span{font-size:10px;letter-spacing:.23em}.farm-placeholder-mark p{font:34px/1.25 var(--serif);margin:17px 0}.farm-placeholder-mark small{font-size:13px;font-style:italic}.location-copy{position:relative;padding:25px 60px 25px 0}.location-content{position:relative;z-index:2;max-width:405px}.location-copy .eyebrow{font-size:23px;letter-spacing:.16em}.location-rule{width:42px;height:1px;background:#765f3d;margin:13px 0 20px}.location-copy p:not(.eyebrow){font-size:19px;line-height:1.6;margin-bottom:25px}.location-right-floral,.location-left-floral{position:absolute;pointer-events:none;width:155px;z-index:1}.location-right-floral{right:-93px;bottom:-40px}.location-left-floral{left:-74px;bottom:-100px;opacity:.35;transform:scaleX(-1)}.wedding-details{padding:45px 8% 55px;border-top:1px solid var(--line)}.details-grid{max-width:930px;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin:30px auto 20px}.details-grid div{padding:15px 0;border-top:1px solid var(--line)}.details-grid span{font-size:11px;text-transform:uppercase;letter-spacing:.14em;display:block;margin-bottom:8px;color:#78664b}.details-grid strong{font-size:18px;font-weight:400}.small-note{font-size:15px;font-style:italic;color:#766448;margin:15px auto 0}.rsvp-section{padding:45px 7%}.section-heading>p:last-child{margin:15px auto 0;max-width:570px}.rsvp-disclosure{border:0;max-width:680px;margin:25px auto 0}.rsvp-disclosure>summary{display:flex;width:max-content;max-width:100%;margin:auto;gap:35px;list-style:none}.rsvp-disclosure>summary:after{content:none}.rsvp-disclosure>summary::-webkit-details-marker{display:none}.light-button{color:var(--olive);background:var(--cream);border-color:var(--cream)}.light-button:hover{background:#dcc6a0}.rsvp-form{display:grid;gap:18px;max-width:680px;margin:26px auto 0;padding:28px;border:1px solid #ecdabb55}.rsvp-form label,.rsvp-form legend{font-size:14px}.rsvp-form label span{font-size:12px;float:right;font-style:italic;color:#cebe9f}.rsvp-form input,.rsvp-form textarea{display:block;width:100%;margin-top:7px;padding:10px 12px;background:#f3e5c911;border:1px solid #ead8b766;color:var(--cream);font-size:16px;border-radius:0}.rsvp-form textarea{resize:vertical}.rsvp-form fieldset{border:1px solid #ead8b766;padding:12px 16px}.radio{display:block;margin:8px 0}.radio input{display:inline-block;width:auto;margin:0 10px 0 0;accent-color:#dfc89f}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rsvp-form .button{justify-self:start}.form-status{font-size:15px;margin:0}.info-band{padding:45px 8%}.ornament-card{position:relative;text-align:center;max-width:820px;margin:auto;padding:32px 60px;border:1px solid var(--line)}.ornament-card:before,.ornament-card:after{content:'❦';position:absolute;color:#734436;font-size:32px}.ornament-card:before{left:20px;top:20px}.ornament-card:after{right:20px;bottom:20px;transform:rotate(180deg)}.ornament-card p:not(.eyebrow){max-width:570px;margin:15px auto;font-size:18px}.coming-soon{font:11px var(--serif);text-transform:uppercase;letter-spacing:.18em;border-bottom:1px solid #9b845b;padding:5px}.travel-section{padding:45px 8%}.travel-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:930px;margin:30px auto 0}.travel-cards article{border-top:1px solid #b9a57e66;padding-top:18px}.travel-cards h3{font-size:23px;margin:0 0 10px}.travel-cards p{font-size:16px;color:#dccbaa;margin:0}.faq-section{padding:45px 8% 60px}.faq-list{max-width:820px;margin:25px auto 0;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{font-size:18px;padding:16px 25px 16px 0;list-style:none;position:relative}.faq-list summary:after{content:'+';position:absolute;right:2px;top:12px;font-size:23px;color:#826b49}.faq-list details[open] summary:after{content:'−'}.faq-list summary::-webkit-details-marker{display:none}.faq-list p{font-size:16px;margin:0 25px 20px 0;color:#69583e}footer{background:#262b1d;color:#d8c6a7;padding:25px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}footer a{text-decoration:none}.build-label{font-size:10px;opacity:.6;white-space:nowrap}.dev-build{display:none}
@media(max-width:1000px){.nav{gap:20px;padding:0 75px}.nav a{font-size:11px;letter-spacing:.1em}.nav-sprig{width:65px}.hero-copy{padding:80px 27px 40px}.hero{min-height:540px}.hero h1{font-size:60px}.hero-decor{width:115px}.hero-decor-right{width:125px}.hero-actions{gap:8px}.hero-actions .button{font-size:11px;letter-spacing:.12em;padding:12px 10px}.story{padding-inline:6%}.family-grid{gap:15px}.portrait-card p{font-size:14px}.location-section{padding-inline:6%;gap:5%}.location-copy{padding-right:35px}.details-grid{gap:15px}.details-grid strong{font-size:17px}}
@media(max-width:760px){html{scroll-padding-top:75px}.site-header{height:62px;justify-content:space-between;padding:0 6%}.nav,.nav-sprig-right{display:none}.nav-sprig-left{left:42%;opacity:.55;width:65px}.mobile-brand{display:block;text-decoration:none;font:22px var(--serif)}.mobile-menu{display:block}.mobile-menu>summary{list-style:none;border:1px solid var(--line);padding:8px 13px;font:12px var(--serif);text-transform:uppercase;letter-spacing:.1em}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>summary span{margin-left:8px}.mobile-links{position:absolute;left:0;right:0;top:62px;background:var(--paper-light);display:grid;grid-template-columns:1fr 1fr;padding:18px 6%;gap:4px 24px;box-shadow:0 12px 18px #30251b22;border-bottom:1px solid var(--line)}.mobile-links a{padding:10px 0;text-decoration:none;font-size:15px;border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr;min-height:0}.hero-photo{aspect-ratio:1.32;max-height:440px}.hero-photo>img{object-position:50% 38%}.hero-copy{padding:65px 8% 40px}.hero h1{font-size:clamp(51px,10vw,72px)}.hero-text{max-width:470px}.hero-decor{left:-15px;top:6px;width:135px}.hero-decor-right{left:auto;right:-12px;width:135px}.subhead{margin-top:18px;font-size:21px}.hero-actions{gap:12px}.hero-actions .button{font-size:12px}.family-grid{grid-template-columns:repeat(6,minmax(0,1fr));max-width:580px;gap:22px 18px}.portrait-card{grid-column:span 2}.portrait-card:nth-child(1){grid-column:2/span 2}.portrait-card:nth-child(2){grid-column:4/span 2}.portrait-card:nth-child(3){grid-column:1/span 2}.story{padding:35px 7% 40px}.story-heading h2{font-size:43px}.script-line{font-size:18px}.location-section{grid-template-columns:1fr 1fr;padding:35px 6%;gap:6%}.location-photo{min-height:270px}.farm-placeholder-mark{padding:20px}.farm-placeholder-mark p{font-size:29px}.location-copy{padding:0}.location-copy p:not(.eyebrow){font-size:17px}.location-copy .eyebrow{font-size:20px}.location-right-floral{opacity:.3}.location-copy .button{font-size:10px;padding:12px 15px}.details-grid{grid-template-columns:1fr 1fr}.travel-cards{gap:20px}.travel-cards h3{font-size:21px}.travel-cards p{font-size:15px}footer{flex-wrap:wrap}.build-label{margin-left:auto}}
@media(max-width:580px){.desktop-break{display:none}.hero-photo{aspect-ratio:1.1;max-height:370px}.hero-copy{padding:62px 6% 35px}.hero-decor{width:107px;left:-23px}.hero-decor-right{left:auto;right:-21px;width:112px}.hero h1{font-size:clamp(43px,12vw,66px);letter-spacing:.04em}.subhead{font-size:19px}.subhead span{font-size:13px}.date,.place{font-size:15px;letter-spacing:.17em}.invitation{font-size:19px;max-width:315px;margin-top:16px}.hero-actions{gap:7px}.hero-actions .button{font-size:10px;letter-spacing:.09em;padding:12px 6px;min-height:46px}.antique-divider{margin:14px auto}.antique-divider.small{margin:16px auto}.family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 17px;max-width:375px}.portrait-card,.portrait-card:nth-child(1),.portrait-card:nth-child(2),.portrait-card:nth-child(3){grid-column:auto}.portrait-card:last-child{grid-column:1/-1;width:calc((100% - 17px)/2);justify-self:center}.portrait-card p{font-size:15px}.portrait-card h3{font-size:19px}.story-heading h2{font-size:39px}.story-floral{opacity:.5;width:175px}.location-section{grid-template-columns:1fr;gap:25px;padding:32px 7%}.location-photo{min-height:210px}.farm-placeholder-mark p{font-size:32px}.location-copy{padding:0 25px 5px 0}.location-copy p:not(.eyebrow){font-size:18px}.location-copy .button{font-size:11px;padding:13px 20px}.location-right-floral{right:-83px;width:125px;opacity:.6}.wedding-details,.rsvp-section,.info-band,.travel-section,.faq-section{padding:35px 7%}.section-heading h2,.ornament-card h2{font-size:37px}.details-grid{gap:8px 20px;margin-top:22px}.details-grid strong{font-size:17px}.details-grid div{padding:12px 0}.small-note{font-size:14px}.rsvp-form{padding:20px 15px}.two-col{grid-template-columns:1fr}.ornament-card{padding:30px 22px}.ornament-card:before,.ornament-card:after{font-size:23px}.ornament-card:before{left:10px;top:10px}.ornament-card:after{right:10px;bottom:10px}.travel-cards{grid-template-columns:1fr;gap:20px;margin-top:25px}.travel-cards article{padding-top:13px}.travel-cards h3{font-size:23px;margin-bottom:6px}.travel-cards p{font-size:16px}.faq-list summary{font-size:17px}footer{font-size:11px;gap:12px}footer>div{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* Build 7: original photographs, clean separation, no botanical overlays. */
.hero{grid-template-columns:1fr 1fr;min-height:510px;align-items:stretch}
.hero-photo{display:flex;align-items:center;justify-content:center;padding:28px;background:var(--paper-light)}
.hero-photo>img{position:static;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;object-position:center;border:1px solid #8b765344}
.hero-copy{padding:54px 30px;overflow:hidden}
.hero h1{font-size:clamp(46px,5.1vw,67px)}
.hero-decor,.story-floral,.location-left-floral,.location-right-floral{display:none}
@media(max-width:1000px) and (min-width:761px){.hero-photo{padding:20px}.hero-copy{padding:40px 22px}.hero h1{font-size:43px}.hero-actions{flex-wrap:wrap}.hero-actions .button{flex-basis:40%}}
@media(max-width:760px){.hero{grid-template-columns:1fr}.hero-photo{aspect-ratio:auto;max-height:none;padding:22px 22px 0}.hero-copy{padding:35px 7%}.hero h1{font-size:clamp(44px,10vw,66px)}}

/* Build 7.3 RSVP additional-name control */
.add-name-button{justify-self:start;border:0;border-bottom:1px solid #dfc89f;background:transparent;color:#ead8b7;padding:3px 0 5px;font:500 12px/1.4 var(--serif);letter-spacing:.14em;text-transform:uppercase}.add-name-button:hover{color:#fff0d0;border-bottom-color:#fff0d0}.add-name-button:focus-visible{outline:2px solid #dfc89f;outline-offset:5px}.second-name-fields[hidden]{display:none}.second-name-fields{margin-top:-2px}
.additional-names{display:grid;gap:18px}.additional-name-row{display:grid;gap:10px;padding-top:4px;width:100%}.additional-name-heading{display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #ead8b733;padding-top:12px;font:500 11px/1.4 var(--serif);letter-spacing:.14em;text-transform:uppercase;color:#cebe9f}.rsvp-form .remove-name-button{appearance:none;-webkit-appearance:none;margin-left:auto;border:0;border-bottom:1px solid #dfc89f;background:transparent!important;color:#ead8b7!important;padding:3px 0 5px;border-radius:0;box-shadow:none;font:500 10px/1.4 var(--serif);letter-spacing:.14em;text-transform:uppercase}.rsvp-form .remove-name-button:hover{color:#fff0d0!important;border-bottom-color:#fff0d0;background:transparent!important}.rsvp-form .remove-name-button:focus-visible{outline:2px solid #dfc89f;outline-offset:4px}
