:root{--vb-ink:#1a1710;--vb-ink-soft:#2c2818;--vb-olive-dark:#46432f;--vb-olive:#726c4e;--vb-tan:#ddc79b;--vb-cream:#fbf6ec;--vb-white:#fff;--vb-gray:#96907e;--vb-border:#e8e0cd;--vb-accent:#b0561a;--vb-accent-dark:#954a17;--vb-accent-light:#f2c290;--font-fallback:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-fallback-serif:Georgia, "Times New Roman", Times, serif;--font-heading:var(--font-display,var(--font-fallback-serif)), var(--font-fallback-serif);--font-sans:var(--font-body,var(--font-fallback)), var(--font-fallback);--sticky-cta-height:64px;--shadow-soft:0 12px 30px -14px #1a171059;--radius:4px;--radius-lg:6px;--rule-hair:1px solid var(--vb-border);--rule-heavy:2px solid var(--vb-ink);--leader-dot:#c9bd9d;--ease:cubic-bezier(.16, 1, .3, 1);--dur-fast:.18s;--dur-base:.35s;--dur-slow:.6s}.surcharge-ended [data-surcharge-note]{display:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{font-family:var(--font-sans);color:var(--vb-ink);background:var(--vb-cream);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}img,svg{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.02em;margin:0 0 .5em;font-weight:400;line-height:1.1}p{margin:0 0 1em}.container{width:100%;max-width:1120px;margin:0 auto;padding:0 1.25rem}.section{padding:4rem 0}.section-cream{background:var(--vb-cream)}.section-white{background:var(--vb-white)}.section-tint{border-top:var(--rule-hair);border-bottom:var(--rule-hair);background:#f2ecdd}.section-ink{background:linear-gradient(160deg, var(--vb-ink) 0%, var(--vb-ink-soft) 55%, #201c13 100%);color:var(--vb-cream)}.rule{border:0;border-top:1px solid var(--vb-border);margin:0}.lede{color:var(--vb-olive-dark);text-wrap:pretty;max-width:42ch;font-size:1.1rem;line-height:1.55}.standfirst{font-family:var(--font-heading);color:var(--vb-ink-soft);max-width:46ch;font-size:1.3rem;line-height:1.45}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--vb-accent-dark);font-size:.69rem;font-weight:700}h2{font-size:clamp(2rem,4vw,2.9rem)}.section-head{border-top:var(--rule-heavy);margin-bottom:2.5rem;padding-top:1.25rem}.section-head h2{margin:.6rem 0 0}.leader{border-bottom:1px dotted var(--leader-dot);flex:1;transform:translateY(-.25em)}.section-ink .eyebrow{color:var(--vb-accent-light)}.btn{border-radius:var(--radius);letter-spacing:.01em;cursor:pointer;transition:transform var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.95rem 1.75rem;font-size:.94rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative}.btn:hover{transform:translateY(-2px)}.btn:active{transform:scale(.97)}.btn:focus-visible{outline:2px solid var(--vb-accent-dark);outline-offset:3px}.btn-primary{background:var(--vb-accent);color:var(--vb-white)}.btn-primary:hover{background:var(--vb-accent-dark)}.btn-outline{color:inherit;background:0 0;border-color:currentColor}.btn-outline:hover{background:var(--vb-ink);border-color:var(--vb-ink);color:var(--vb-cream)}.section-ink .btn-outline:hover{background:var(--vb-cream);border-color:var(--vb-cream);color:var(--vb-ink)}.photo-frame{border-radius:var(--radius);background:var(--vb-olive-dark);position:relative;overflow:hidden}.photo-frame img{transition:transform var(--dur-slow) var(--ease)}.photo-frame:hover img{transform:scale(1.045)}.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease), translate .7s var(--ease);will-change:opacity, translate;transition-delay:0s;translate:0 16px}.js [data-reveal=left]{translate:-18px}.js [data-reveal=right]{translate:18px}.js [data-reveal].is-visible{opacity:1;transition-delay:var(--reveal-delay,0s);translate:0}@media (width<=720px){.section{padding:3rem 0}}@media (width>=1440px){.container{max-width:1320px}.section{padding:5rem 0}}
