.weekend-invitation{background:var(--ivory);color:var(--forest);padding:clamp(2.5rem,5vw,5rem) clamp(1.25rem,4vw,4.5rem);border-block:1px solid var(--line);scroll-margin-top:1.25rem;overflow:hidden}
.weekend-inner{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(20rem,.85fr);gap:clamp(2rem,5.5vw,6rem);align-items:start;max-width:86rem;margin:auto}
.weekend-story{min-width:0}
.weekend-eyebrow{font:500 .875rem/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--copper);margin:0 0 1.2rem}
.weekend-place{white-space:nowrap}
@media(max-width:680px){.weekend-eyebrow>span{display:block}.weekend-eyebrow>span[aria-hidden]{display:none}}
.weekend-story :is(h1,h2){font:500 clamp(3rem,5.8vw,5.5rem)/.97 var(--serif);letter-spacing:-.035em;margin:0 0 1.35rem;text-wrap:balance}
.weekend-story :is(h1,h2) span{display:block}
.weekend-intro{font:500 clamp(1.6rem,2.1vw,2rem)/1.25 var(--serif);color:var(--copper);margin:0 0 1rem}
.weekend-description{font:400 1rem/1.75 var(--sans);max-width:47ch;color:#425246}
.weekend-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;width:100%;margin:1.5rem 0 0}
.weekend-photo{position:relative;min-width:0;margin:0}
.weekend-photos img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
.weekend-photo-caption{margin:.65rem 0 0;font:400 .875rem/1.5 var(--sans);letter-spacing:.015em;color:#705d46}
.weekend-actions{display:grid;gap:1rem;min-width:0}
.weekend-registration{position:relative;background:var(--forest);color:var(--ivory);padding:clamp(1.6rem,3vw,3rem);border-top:3px solid var(--gold)}
.weekend-general{padding:1.4rem 1.6rem;border:1px solid var(--gold);background:var(--paper);color:var(--forest)}
.weekend-general h3{font:500 2rem/1.1 var(--serif);letter-spacing:-.025em;margin:0}
.weekend-general p{font:400 1rem/1.55 var(--sans);color:var(--muted);margin:.65rem 0 1rem}
.weekend-general .weekend-inquiry-link{width:100%;min-height:3rem;font-size:1rem}
.weekend-form-eyebrow{font:500 .875rem/1.5 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:#dabb91;margin:0 0 1rem}
.weekend-form-heading h3{font:500 clamp(2.5rem,3.3vw,3.5rem)/1.05 var(--serif);letter-spacing:-.035em;margin:0 0 .85rem}
.weekend-form-heading>p:last-child{font-size:1rem;line-height:1.65;color:#e0e3d9;margin:0 0 1.5rem}
.weekend-form{display:grid;gap:1rem}
.weekend-field{min-width:0}
.weekend-field label{display:block;font-size:.9375rem;line-height:1.5;margin-bottom:.4rem;color:var(--ivory)}
.weekend-field input{display:block;width:100%;min-width:0;min-height:3rem;background:#f5f1e7;color:var(--forest);border:1px solid #d7ccb6;border-radius:0;padding:.65rem .8rem;font:400 1rem/1.5 var(--sans);box-shadow:none}
.weekend-field input:focus-visible{outline:2px solid #e9bc82;outline-offset:3px}
.weekend-submit{display:flex;align-items:center;justify-content:center;width:100%;min-height:3.4rem;margin-top:.3rem;padding:.85rem 1rem;background:#d2a269;color:#102d21;border:1px solid #d2a269;border-radius:0;font:600 1rem/1.45 var(--sans);transition:background .15s,border-color .15s}
.weekend-submit:hover{background:#e0b883;border-color:#e0b883}
.weekend-submit:disabled{opacity:.75;cursor:wait}
.weekend-form-note{font-size:.875rem;line-height:1.6;text-align:center;color:#dce0d5;margin:0}
.weekend-status:empty{display:none}
.weekend-status{font-size:.9375rem;line-height:1.6;color:#f2d6ad;padding:.85rem 0 0;border-top:1px solid #dabb9166}
.weekend-honeypot{display:none}
.weekend-success h3{font-size:2.7rem;margin:0 0 1rem}.weekend-success p{font-size:1rem;line-height:1.75}
@media(max-width:900px){.weekend-inner{grid-template-columns:minmax(0,1fr) minmax(19rem,.95fr);gap:2rem}.weekend-story :is(h1,h2){font-size:clamp(2.8rem,5.5vw,4.1rem)}}
@media(max-width:680px){.weekend-invitation{padding:2.6rem 1.25rem 2rem}.weekend-inner{grid-template-columns:1fr;gap:1.65rem}.weekend-eyebrow{font-size:.875rem;letter-spacing:.095em;margin-bottom:1rem}.weekend-story :is(h1,h2){font-size:clamp(2.8rem,12vw,4.4rem);margin-bottom:1.2rem}.weekend-intro{font-size:1.75rem}.weekend-description{font-size:1rem;line-height:1.75}.weekend-photos{grid-template-columns:1fr;gap:.85rem;max-width:27rem;margin:1.35rem 0 0}.weekend-registration{padding:1.6rem 1.4rem 1.7rem}.weekend-form-heading h3{font-size:2.8rem}.weekend-form-heading>p:last-child{margin-bottom:1.4rem}.weekend-form{gap:.9rem}.weekend-field input{min-height:3.1rem}}
