:root{color-scheme:light;--cream:#fbf3df;--ink:#482d1e;--maroon:#541f27;--gold:#9c762f;--line:#cbb581}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-size:16px;line-height:1.6}a{color:inherit}a:focus-visible,video:focus-visible{outline:3px solid #a05d18;outline-offset:6px}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:0}.masthead{max-width:1280px;margin:auto;padding:20px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.masthead a{text-decoration:none}.masthead a:first-child{font-size:25px;letter-spacing:.13em}.masthead span{color:var(--gold);font-style:italic}.masthead a:last-child{font:14px/1.5 Arial,sans-serif}.hero{max-width:1280px;margin:auto;display:grid;grid-template-columns:1fr 1.1fr;min-height:690px;align-items:center;padding:44px 5% 55px;gap:6%}.hero-art{height:555px;background-image:url('assets/pre-wedding.jpeg');background-size:100% auto;background-position:center top;border:1px solid var(--line);border-radius:220px 220px 3px 3px;box-shadow:0 16px 45px #4d2d1715}.hero-copy{text-align:center}.eyebrow{text-transform:uppercase;font:12px/1.7 Arial,sans-serif;letter-spacing:.18em;color:#79551f}.hero h1{font-weight:400;font-size:clamp(46px,5.5vw,76px);line-height:1.12;margin:24px 0;color:var(--maroon)}h1 span{display:block;font-size:.57em;font-style:italic;color:var(--gold);margin:8px}.wedding-date{font-size:19px}.wedding-date span{color:var(--gold);padding:0 8px}.welcome{font-size:18px;margin:25px 0 30px}.countdown-wrap{border-top:1px solid var(--line);padding-top:20px}.countdown{display:flex;justify-content:center;gap:25px;margin:18px 0}.countdown div{min-width:52px}.countdown b{display:block;font-size:37px;line-height:1.2;font-weight:400;font-variant-numeric:tabular-nums;color:var(--maroon)}.countdown span{font:12px Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}.time-note{font:14px/1.5 Arial,sans-serif;color:#6d5840}.thanks{font-size:27px;color:var(--maroon)}.video-section{background:var(--maroon);color:var(--cream);padding:65px 24px;text-align:center;border-top:5px double #b68c4e;border-bottom:5px double #b68c4e}.section-intro{text-align:center;margin-bottom:32px}.section-intro h2{font-weight:400;font-size:clamp(34px,4vw,48px);line-height:1.2;margin:10px 0 16px}.section-intro p{margin:9px 0}.video-section .eyebrow{color:#e2c58e}.video-frame{padding:9px;border:1px solid #b79559;max-width:480px;margin:auto;background:#32161b;box-shadow:0 20px 50px #210c1645}video{display:block;width:100%;max-height:640px;aspect-ratio:9/16;object-fit:contain;background:#281719}.video-note{font:14px/1.6 Arial,sans-serif;color:#ead5b9;margin:20px 0 0}.celebrations{max-width:1160px;margin:auto;padding:75px 35px 70px}.event-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}.event-heading{text-align:center;min-height:143px;padding:12px 0 20px}.event-heading h3{font-size:28px;font-weight:400;line-height:1.3;margin:12px 0;color:var(--maroon)}.event-heading p:last-child{font:14px/1.6 Arial,sans-serif}.invitation{display:block;box-shadow:0 8px 24px #593c201a;transition:transform .2s}.invitation:hover{transform:translateY(-3px)}.invitation img{display:block;width:100%;height:auto}.image-note,.rsvp-note{text-align:center;font:13px/1.6 Arial,sans-serif;color:#6d5840;margin:13px 0 18px}.rsvp{display:block;background:var(--maroon);color:#fff5e3;text-align:center;padding:16px 18px;text-decoration:none;font:16px/1.5 Arial,sans-serif;border:1px solid var(--maroon);min-height:56px}.rsvp[href]:hover{background:#73313a}.rsvp[aria-disabled=true]{background:#765349;cursor:default}.rsvp-note{font-size:14px;min-height:23px}footer{text-align:center;padding:48px 24px 55px;border-top:1px solid var(--line);background:#f3e7cb}footer h2{font-size:32px;line-height:1.25;font-weight:400;color:var(--maroon)}footer p{max-width:540px;margin:16px auto}.footer-monogram{font-size:31px;letter-spacing:.12em;color:var(--maroon)}.footer-monogram span{color:var(--gold);font-style:italic}.signature{font-style:italic;font-size:19px}[hidden]{display:none!important}@media(max-width:700px){.masthead{padding:16px 24px}.hero{display:flex;flex-direction:column;gap:30px;padding:30px 24px 40px}.hero-art{width:220px;height:174px;border-radius:130px 130px 0 0;background-position:center top;background-size:100% auto}.hero h1{font-size:51px;margin:16px 0}.hero h1 span{font-size:30px;display:inline;margin:0 5px}.hero-copy{width:100%}.eyebrow{letter-spacing:.13em}.welcome{margin:20px 0 24px;font-size:17px}.wedding-date{font-size:17px}.countdown{gap:19px}.countdown b{font-size:33px}.video-section{padding:44px 23px}.video-frame{max-width:360px}.celebrations{padding:48px 22px}.event-grid{grid-template-columns:1fr;gap:35px}.event-heading{min-height:0}.event-heading h3{font-size:27px}.event{max-width:470px;width:100%;margin:auto}.section-intro{margin-bottom:25px}footer h2{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.invitation{transition:none}}

@media(min-width:701px){.hero-art{height:auto;aspect-ratio:1.25}}
.hero .hero-art{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:none;border:0;border-radius:0;box-shadow:0 12px 35px #4d2d1712}@media(max-width:700px){.hero .hero-art{max-width:380px}}

@media (max-width: 700px) {
    .hero .hero-copy {
      order: 1;
    }
  
    .hero .hero-art {
      order: 2;
    }
  
    .hero {
      padding-top: 20px;
      gap: 24px;
    }
  
    .hero h1 {
      font-size: 42px;
      margin: 12px 0;
    }
  
    .welcome {
      margin: 14px 0;
    }
  
    .countdown-wrap {
      padding-top: 12px;
    }
  }
