:root{--ivory:#f8f7f1;--paper:#fffefb;--ink:#1f2c27;--muted:#6f756d;--green:#2c6652;--green-soft:#eef5ef;--wine:#813347;--terracotta:#b76555;--champagne:#d7ad55;--coral:#b9525a;--rose:#f5dfd8;--mint:#e3f0e7;--graphite:#293831;--line:#1f2c271f;--shadow:0 18px 42px #1f2c271a;--radius:8px;--serif:"Fraunces", Georgia, "Times New Roman", serif;--display:"Cormorant Garamond", Garamond, Georgia, "Times New Roman", serif;--monogram:"Bodoni Moda", Didot, "Bodoni 72", Georgia, "Times New Roman", serif;--sans:"Nunito Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);font-family:var(--sans);background:linear-gradient(#fbfbf7 0%,#f7faf4 54%,#fbfbf7 100%);margin:0;line-height:1.55}body.nav-open{overflow:hidden}a{color:inherit}button,input,select,textarea{font:inherit}.site-header{z-index:20;min-height:76px;color:var(--paper);justify-content:space-between;align-items:center;padding:0 clamp(1rem,3vw,3rem);transition:background .18s,color .18s,box-shadow .18s;display:flex;position:fixed;inset:0 0 auto}.site-header.is-scrolled,.site-header.is-open{color:var(--ink);box-shadow:0 1px 0 var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffefbf0}.brand{letter-spacing:0;align-items:center;gap:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{width:42px;height:42px;font-family:var(--monogram);border:1px solid;border-radius:50%;place-items:center;font-weight:400;line-height:1;display:grid;position:relative}.brand-mark:before{content:"";opacity:.28;border:1px solid;border-radius:50%;position:absolute;inset:5px}.brand-monogram{z-index:1;font-size:.82rem;font-style:italic;font-weight:400;position:relative;transform:translateY(-.5px)}.site-nav{align-items:center;gap:clamp(1rem,2vw,2rem);font-size:.9rem;font-weight:700;display:flex}.site-nav a{text-decoration:none;position:relative}.site-nav a:after{content:"";opacity:0;background:currentColor;height:1px;transition:transform .16s,opacity .16s;position:absolute;bottom:-.35rem;left:0;right:0;transform:scaleX(.25)}.site-nav a:hover:after,.site-nav a:focus-visible:after{opacity:1;transform:scaleX(1)}.nav-toggle{width:44px;height:44px;color:inherit;background:0 0;border:1px solid;border-radius:50%;place-items:center;display:none}.nav-toggle span{background:currentColor;width:18px;height:1px;display:block}.nav-toggle span+span{margin-top:6px}.hero{min-height:min(760px,82svh);color:var(--paper);display:grid;position:relative;overflow:hidden}.hero-media,.hero:after{position:absolute;inset:0}.hero-media{background-image:linear-gradient(90deg,#1f1c1875,#1f1c1833 52%,#1f1c180a),radial-gradient(circle at 50% 42%,#1f1c182e,#0000 44%),linear-gradient(#d7ad551a,#2c66521a),url(/hero-wedding-vineyard-tandem.png);background-position:50%;background-size:cover;transform:scale(1.01)}.hero:after{content:"";background:linear-gradient(#1f1c1814,#0000 35%,#1f1c181f)}.hero-inner{z-index:1;text-align:center;align-self:center;width:min(1120px,100% - 2rem);margin:0 auto;padding:6rem 0 3rem;position:relative}.eyebrow,.section-kicker,.fact-label,.place-meta{color:var(--champagne);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.77rem;font-weight:800}.eyebrow.dark,.section-kicker,.fact-label,.place-meta{color:var(--coral)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);letter-spacing:0;font-weight:600;line-height:.9}h1{max-width:960px;font-family:var(--display);letter-spacing:0;text-shadow:0 3px 26px #2d1f183d;margin:0 auto 1.15rem;font-size:clamp(4.35rem,11.2vw,9.8rem);font-weight:500}h1 span{display:block}h2{margin-bottom:0;font-size:clamp(2.2rem,4vw,3.7rem)}h3{color:var(--green);font-family:var(--serif);margin-bottom:.7rem;font-size:1.55rem;font-weight:600;line-height:1.1}.hero-copy{color:#fffdf8f5;text-shadow:0 2px 18px #241c164d;max-width:650px;margin:0 auto 1rem;font-size:clamp(1.1rem,2vw,1.35rem)}.hero-actions,.section-heading,.place-grid,.form-layout{gap:1rem;display:grid}.hero-actions{grid-template-columns:repeat(2,max-content);justify-content:center}.button{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.55rem;min-height:48px;padding:.72rem 1.25rem;font-weight:800;text-decoration:none;transition:transform .15s,background .15s,color .15s,border-color .15s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.72;transform:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.button-primary{color:var(--paper);background:var(--green);box-shadow:0 12px 26px #1f2c272e}.button-ghost{color:var(--paper);background:#fffdf82e;border-color:#fffdf8b8}.button-outline{color:var(--green);background:0 0;border-color:#2f6f5859}.button-outline:hover,.button-outline:focus-visible{color:var(--paper);background:var(--green);border-color:#0000}.quick-facts{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);width:min(1120px,100% - 2rem);box-shadow:var(--shadow);z-index:2;grid-template-columns:repeat(3,1fr);margin:-2.5rem auto 0;display:grid;position:relative;overflow:hidden}.quick-facts article{border-right:1px solid var(--line);background:#fffefbeb;min-height:120px;padding:1.3rem}.quick-facts article:last-child{border-right:0}.quick-facts strong{color:var(--green);font-family:var(--serif);margin:.3rem 0 .2rem;font-size:clamp(1.55rem,2.25vw,2.05rem);font-weight:600;line-height:1.05;display:block}.quick-facts span:last-child{color:var(--muted)}.section{width:min(1120px,100% - 2rem);margin:0 auto;padding:clamp(3rem,6vw,5rem) 0}.section-heading{grid-template-columns:minmax(0,.9fr) minmax(280px,.65fr);align-items:end;gap:clamp(1.5rem,4vw,3.5rem);margin-bottom:clamp(1.75rem,4vw,2.75rem)}.section-heading[id]{scroll-margin-top:96px}.section-heading p{color:var(--muted);max-width:36rem;font-size:1.02rem}.section-heading p:last-child{margin-bottom:0}.roadmap-stop p,.place-card p,.logistics-grid p,.faq-list p{color:var(--muted)}.roadmap{isolation:isolate;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem);display:grid;position:relative}.roadmap:before{z-index:0;content:"";background:#2c665233;height:2px;position:absolute;top:51px;left:8%;right:8%}.roadmap-stop{z-index:1;align-content:start;justify-items:center;gap:.8rem;min-width:0;display:grid;position:relative}.stop-marker{aspect-ratio:1;width:104px;color:var(--green);background:#fffefbf5;border:1px solid #2f6f5829;border-radius:50%;place-items:center;display:grid;box-shadow:0 10px 24px #1f2c2714}.roadmap-stop-2 .stop-marker{color:var(--wine)}.roadmap-stop-3 .stop-marker{color:var(--terracotta)}.roadmap-stop-4 .stop-marker{color:var(--champagne)}.route-icon{width:84%;height:84%}.stop-card{border-radius:var(--radius);background:var(--paper);border:1px solid #2f6f5821;width:100%;min-height:154px;padding:clamp(1rem,2vw,1.25rem)}.stop-card time{color:var(--wine);text-transform:uppercase;font-weight:900;display:block}.stop-card span{color:var(--coral);letter-spacing:0;text-transform:uppercase;margin-bottom:.25rem;font-size:.75rem;font-weight:900;display:block}.stop-card h3{margin-bottom:.45rem}.stop-card p{margin-bottom:0}.stop-card .stop-place{color:var(--green);margin-bottom:0;font-weight:800}.place-grid{grid-template-columns:repeat(2,1fr)}.place-card{border-radius:var(--radius);background:var(--paper);border:1px solid #2f6f5824;min-height:0;padding:clamp(1.25rem,3vw,2rem)}.place-card.featured{color:var(--paper);background:var(--green);border-color:#0000}.place-card.featured h3,.place-card.featured .place-meta,.place-card.featured p{color:var(--paper)}.place-card.featured .button-outline{color:var(--paper);border-color:#fffaf280}.sketch-line{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;vector-effect:non-scaling-stroke}.sketch-soft{opacity:.54;stroke-width:1.35px}.festival-line{fill:none;stroke:var(--coral);stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;vector-effect:non-scaling-stroke}.logistics-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.logistics-grid article{border-radius:var(--radius);background:var(--paper);border:1px solid #2f6f5824;padding:clamp(1.25rem,3vw,2rem)}.logistics-grid a{color:var(--green);font-weight:800}.bank-account-row{gap:.75rem;margin-top:1rem;display:grid}.bank-account{border-radius:var(--radius);color:var(--ink);background:var(--green-soft);font-variant-numeric:tabular-nums;letter-spacing:0;overflow-wrap:anywhere;border:1px solid #2f6f5829;padding:.75rem .85rem;font-weight:800;display:block}.copy-account-button{justify-self:start}.bank-copy-status{min-height:1.4rem;margin:.65rem 0 0;font-size:.88rem;font-weight:800;color:var(--green)!important}.form-layout{max-width:860px;margin:0 auto;display:block}.rsvp-form{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);gap:0;padding:clamp(1.2rem,3vw,2rem);display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}label{color:var(--ink);gap:.42rem;font-size:.9rem;font-weight:800;display:grid}fieldset{border:0;border-top:1px solid var(--line);border-radius:0;min-width:0;margin:0;padding:1.4rem 0}fieldset:first-of-type{border-top:0;padding-top:0}legend{color:var(--green);font-family:var(--serif);padding:0 0 .85rem;font-size:1.45rem;font-weight:600;line-height:1.1}.transport-field{grid-template-columns:repeat(2,1fr);gap:.75rem 1rem;display:grid}.transport-field label{color:var(--ink);align-items:flex-start;font-weight:700;display:flex}.transport-field label.transport-select{align-items:initial;display:grid}.transport-note{color:var(--muted);font-size:.82rem;font-weight:600;line-height:1.45}.transport-field input{width:18px;min-height:18px;accent-color:var(--green);margin-top:.14rem}input,select,textarea{border-radius:var(--radius);width:100%;color:var(--ink);background:#fff;border:1px solid #1f2c2729;outline:none}input,select{min-height:48px;padding:0 .85rem}textarea{resize:vertical;padding:.8rem .85rem}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #2c665221}.wide{grid-column:1/-1}.checkbox-line{color:var(--ink);align-items:center;font-weight:700;display:flex}.checkbox-line input{width:18px;min-height:18px;accent-color:var(--green)}.form-status{min-height:1.5rem;color:var(--wine);margin-bottom:0;font-weight:800}.faq-list{gap:.85rem;max-width:860px;margin:0 auto;display:grid}details{border-radius:var(--radius);background:var(--paper);border:1px solid #2f6f5821}summary{cursor:pointer;color:var(--green);font-family:var(--serif);padding:1.2rem;font-size:1.35rem;font-weight:600}details p{margin:0;padding:0 1.2rem 1.2rem}.site-footer{color:var(--paper);background:var(--graphite);justify-content:space-between;align-items:center;gap:1rem;padding:2rem max(1rem,50vw - 560px);display:flex}.site-footer p{margin:0}.site-footer a{font-weight:800;text-decoration:none}@media (width<=900px){.nav-toggle{display:grid}.site-nav{color:var(--ink);background:#fffefbf7;grid-template-columns:1fr;gap:0;padding:.8rem 1rem 1rem;display:none;position:fixed;top:76px;left:0;right:0;box-shadow:0 18px 50px #22201d1f}.site-header.is-open .site-nav{display:grid}.site-nav a{border-top:1px solid var(--line);padding:.85rem 0}.section-heading,.logistics-grid,.quick-facts,.place-grid{grid-template-columns:1fr}.quick-facts article{border-right:0;border-bottom:1px solid var(--line)}.quick-facts article:last-child{border-bottom:0}.roadmap{grid-template-columns:1fr;gap:1rem;min-height:0;padding-left:.1rem}.roadmap:before{content:"";background:repeating-linear-gradient(#2c66528c 0 9px,#0000 9px 17px);width:2px;height:auto;inset:1.2rem auto 1.2rem 40px}.roadmap-stop,.roadmap-stop-1,.roadmap-stop-2,.roadmap-stop-3,.roadmap-stop-4{grid-template-columns:80px minmax(0,1fr);place-items:start stretch;gap:.95rem;margin-top:0}.stop-marker{width:80px}.stop-card{min-height:0}}@media (width<=620px){.site-header{min-height:66px}.brand{max-width:calc(100vw - 6rem)}.nav-toggle{z-index:3;background:#22201d2e;border-width:2px;flex:none;display:grid;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.site-header.is-scrolled .nav-toggle,.site-header.is-open .nav-toggle{background:#1f4a3b14}.site-nav{top:66px}.section-heading[id]{scroll-margin-top:82px}.hero{min-height:78svh}.hero-inner{padding-top:5rem}.hero-copy{max-width:22rem;font-size:1.05rem}h1{font-size:clamp(3.45rem,16vw,5.85rem)}.hero-actions{grid-template-columns:1fr}.button{width:100%}.quick-facts{margin-top:-1.25rem}.form-grid,.transport-field,.place-grid{grid-template-columns:1fr}.roadmap:before{left:34px}.roadmap-stop,.roadmap-stop-1,.roadmap-stop-2,.roadmap-stop-3,.roadmap-stop-4{grid-template-columns:68px minmax(0,1fr);gap:.8rem}.stop-marker{width:68px}.stop-card{padding:1rem}.site-footer{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
