:root{color-scheme:light;--ivory:#fbf8f5;--blush:#f8edef;--powder:#e9c8cf;--rose:#975360;--espresso:#2b211f;--brown:#65504b;--gold:#b89a64;font-family:'Segoe UI','Helvetica Neue',Arial,sans-serif;color:var(--espresso);background:var(--ivory)}
*{box-sizing:border-box}body{margin:0;-webkit-font-smoothing:antialiased}.header{max-width:1600px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;flex-direction:column;align-items:center;width:max-content}.ribbon{width:118px;height:25px;color:#c98696}.brand-name{font:italic 36px/1.12 'Bodoni MT',Didot,'Times New Roman',serif;letter-spacing:-1.5px}.brand-tagline{text-transform:uppercase;font-size:8px;letter-spacing:2px;margin-top:7px}.header-note{font-size:11px;letter-spacing:1.8px;color:var(--brown);text-transform:uppercase}.hero{max-width:1600px;margin:auto;display:grid;grid-template-columns:1.06fr 1fr;min-height:660px}.copy{padding:76px 8% 52px 9.5%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:linear-gradient(120deg,var(--ivory) 30%,var(--blush) 100%)}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.8px;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin:0 0 36px}.eyebrow span{height:6px;width:6px;background:var(--rose);border-radius:50%}h1{font:normal clamp(42px,4.65vw,74px)/1.04 'Bodoni MT',Didot,'Times New Roman',serif;letter-spacing:-2px;margin:0 0 28px}h1 em{font-weight:normal;color:var(--rose)}.intro{font:normal 24px/1.3 'Bodoni MT',Didot,'Times New Roman',serif;margin:0 0 18px}.description{max-width:365px;font-size:14px;line-height:1.85;color:var(--brown);margin:0}.invitation{display:flex;gap:17px;align-items:center;margin-top:32px}.line{width:34px;height:1px;background:var(--gold)}.invitation p{margin:0;font-size:12px;line-height:1.9;color:var(--brown)}.invitation strong{font-weight:500;color:var(--espresso)}.signature{font:italic 21px/1.4 'Bodoni MT',Didot,'Times New Roman',serif;color:var(--rose);margin:40px 0 0}.portrait{position:relative;margin:0;min-width:0;overflow:hidden}.portrait img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 42%}.portrait:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(43,33,31,.58))}.portrait figcaption{position:absolute;z-index:1;bottom:30px;left:32px;right:32px;color:white;display:flex;align-items:end;justify-content:space-between;gap:20px}.portrait figcaption span:first-child{font:italic 30px/1.2 'Times New Roman',serif}.portrait figcaption span:last-child{font-size:9px;text-transform:uppercase;letter-spacing:2px}footer{max-width:1600px;margin:auto;display:flex;justify-content:space-between;gap:20px;padding:28px 5%;font-size:10px;letter-spacing:.3px;color:var(--brown)}::selection{background:var(--powder);color:var(--espresso)}
@media(min-width:1600px){.hero{border:1px solid #e9ddd5}.header{padding-left:0;padding-right:0}}
@media(max-width:900px){.header-note{max-width:160px;line-height:1.8;text-align:right}.copy{padding:50px 7%}.hero{min-height:610px}h1{font-size:46px}.portrait figcaption{left:20px;right:20px}.portrait figcaption span:last-child{display:none}}
@media(max-width:620px){.header{justify-content:center;padding:22px 20px}.header-note{display:none}.brand-name{font-size:32px}.brand-tagline{font-size:7px}.ribbon{width:105px;height:22px}.hero{grid-template-columns:1fr;min-height:0}.copy{padding:43px 26px 39px}.eyebrow{margin-bottom:27px;font-size:9px;letter-spacing:2.2px}h1{font-size:clamp(38px,10.7vw,60px);letter-spacing:-1.5px;margin-bottom:23px}.intro{font-size:23px}.description{font-size:13px;max-width:400px}.invitation{margin-top:24px}.signature{margin-top:27px;font-size:20px}.portrait{height:440px}.portrait img{object-position:50% 35%}.portrait figcaption{bottom:24px;left:26px}.portrait figcaption span:last-child{display:block}footer{padding:23px 26px;flex-wrap:wrap;font-size:9px;gap:12px}footer span:nth-child(2){order:3;width:100%}footer span:last-child{margin-left:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
