@font-face{font-family:Melvin and Emily;src:url(/fonts/MelvinAndEmily-Script.woff2) format("woff2"),url(/fonts/MelvinAndEmily-Script.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--color-bg, #f4efe6);color:var(--color-ink, #2c3a2b);font-family:var(--font-body, Georgia, serif);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5{font-family:var(--font-display, serif);font-weight:400;margin:0;letter-spacing:.01em}a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:1px;transition:opacity .18s}a:hover{opacity:.65}.eyebrow{font-family:var(--font-eyebrow, sans-serif);letter-spacing:.34em;text-transform:uppercase;font-size:11px;color:var(--color-gold, #a87d3f)}.couple-script{font-family:var(--font-couple, cursive);font-weight:400;font-size:clamp(3.5rem,10vw,8rem);line-height:.95;letter-spacing:.005em;color:var(--color-ink)}.display{font-family:var(--font-display, serif);font-size:clamp(2rem,5vw,3.75rem);line-height:1.1;color:var(--color-ink)}.body-copy{font-family:var(--font-body, serif);font-size:1.05rem;line-height:1.75;color:var(--color-ink)}.muted{color:var(--color-muted)}.rule{border:none;border-top:1px solid var(--color-rule);max-width:160px;margin:2rem auto}.container{max-width:1100px;margin:0 auto;padding:0 1.5rem}.section{padding:5.5rem 1.5rem}.btn{display:inline-block;font-family:var(--font-eyebrow);letter-spacing:.26em;text-transform:uppercase;font-size:11px;padding:.95rem 2.1rem;border:1px solid var(--color-ink);background:transparent;color:var(--color-ink);cursor:pointer;transition:background .18s,color .18s;text-decoration:none}.btn:hover,.btn-filled{background:var(--color-ink);color:var(--color-bg)}.btn-filled:hover{opacity:.9;background:var(--color-ink);color:var(--color-bg)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center}@media (max-width: 720px){.grid-2{grid-template-columns:1fr;gap:2.5rem}.section{padding:3.5rem 1.25rem}}img{max-width:100%;display:block}.photo-frame{background:var(--color-surface, #fff);padding:0;overflow:hidden}
