@font-face{font-family:Album Script;font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/album-script.ttf') format('truetype')}
:root{--green:#53614e;--ink:#3f483a;--paper:#faf8f2;--mint:#e4ebe0;--line:#cbd2c3;--brown:#9b6a50;--muted:#63705e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Wedding Serif',Georgia,serif}p{line-height:1.85}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--brown);outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:auto;padding:25px 5%;border-bottom:1px solid var(--line)}.brand{font:500 29px/1.3 'Album Script',cursive;text-decoration:none;color:var(--green)}nav{display:flex;gap:25px;font:13px Arial,sans-serif}nav a{text-decoration:none;padding:8px 0}.hero{padding:40px 24px 70px;text-align:center;overflow:hidden}.hero-inner{max-width:930px;margin:auto}.kicker{font-size:19px;font-style:italic;letter-spacing:.2px;margin:0 0 36px;color:var(--green)}.photo{position:relative;background:#fffefa;padding:15px 15px 12px;box-shadow:0 9px 22px #424c321a;transform:rotate(-2deg);max-width:720px;margin:0 auto 35px}.photo:before,.photo:after{content:'';position:absolute;width:100px;height:29px;background:#e9dfc8b8;top:-9px;left:-20px;transform:rotate(-30deg);z-index:1}.photo:after{left:auto;right:-22px;transform:rotate(33deg)}.photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}.photo figcaption{font:11px/1.6 Arial,sans-serif;color:var(--muted);padding-top:12px;letter-spacing:.2px}h1{font:500 clamp(66px,9vw,104px)/1.4 'Album Script',cursive;margin:28px 0 6px;color:var(--green)}h1 span{display:inline-block}h1 .heart{font:normal .44em/1 'Wedding Serif',serif;color:var(--brown);vertical-align:middle;margin:0 .3em}.hero-copy{font-size:16px;margin:0 auto 18px;max-width:440px;color:var(--muted)}.hero-dates{font:13px/1.7 Arial,sans-serif;letter-spacing:3px;color:var(--brown);margin:20px 0}.button{display:inline-flex;min-height:46px;justify-content:center;align-items:center;padding:13px 25px;background:var(--green);color:var(--paper);text-decoration:none;font:14px/1.4 Arial,sans-serif;border-radius:4px}.family-section{padding:60px 24px 75px;max-width:1050px;margin:auto;text-align:center;border-top:1px solid var(--line)}.section-title{font-size:clamp(27px,3.6vw,39px);font-weight:400;font-style:italic;color:var(--green);line-height:1.5;margin:0 0 12px}.section-intro{font-size:15px;color:var(--muted);max-width:560px;margin:0 auto 36px}.families{display:grid;grid-template-columns:1fr 1fr;gap:60px}.family h3{font:13px/1.5 Arial,sans-serif;color:var(--brown);margin:0 0 15px}.parents{font-size:19px;margin:0;line-height:1.9}.parents span{display:block}.address{font:14px/1.9 Arial,sans-serif;color:var(--muted);margin:15px auto 0;max-width:360px}.couple{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;margin-top:35px;padding-top:30px;border-top:1px solid var(--line)}.couple-name{font:500 35px/1.55 'Album Script',cursive;margin:0;color:var(--green)}.role{display:block;font:12px/1.8 Arial,sans-serif;color:var(--muted);margin-top:8px}.couple-heart{color:var(--brown);font-size:22px}.invites{position:relative;padding:65px 24px 75px;background:var(--mint);text-align:center}.invites:before{content:'';position:absolute;top:-10px;left:0;width:100%;height:12px;background:var(--mint);clip-path:polygon(0 70%,3% 25%,7% 60%,12% 0,18% 55%,24% 20%,30% 75%,37% 10%,45% 55%,52% 0,60% 65%,67% 20%,75% 70%,82% 10%,89% 50%,95% 0,100% 60%,100% 100%,0 100%)}.switcher{display:flex;justify-content:center;gap:5px;border:1px solid #b8c4b1;padding:5px;width:max-content;max-width:100%;margin:25px auto 36px;border-radius:5px}.switcher button{border:0;background:transparent;color:var(--green);padding:12px 18px;min-height:44px;border-radius:3px;font:14px Arial,sans-serif}.switcher button[aria-pressed=true]{background:var(--green);color:white}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;max-width:1100px;margin:auto}.cards.single{max-width:590px;grid-template-columns:1fr}.card{background:var(--paper);padding:36px 32px 30px;border:1px solid #d9ded1;border-radius:12px;box-shadow:0 4px 0 #c8d1c34d}.occasion{display:inline-block;font:13px/1.6 Arial,sans-serif;color:var(--green);margin:0 0 18px;padding:5px 20px;background:#e8ecdf;border-radius:35% 5% 30% 10%}.card h3{font:500 46px/1.5 'Album Script',cursive;color:var(--green);margin:0 0 15px}.invitation-copy{font-size:14px;margin:0 0 25px;line-height:1.9}.date-block{display:grid;grid-template-columns:1fr 1.1fr 1fr;align-items:center;max-width:350px;margin:auto;color:var(--green)}.day{font-size:57px;line-height:1.25;border-left:1px solid var(--line);border-right:1px solid var(--line)}.date-side{font:14px/1.8 Arial,sans-serif}.lunar{font-size:13px;color:var(--muted);margin:15px 0 26px}.schedule{border-top:1px solid var(--line);padding-top:23px;text-align:left}.event{display:grid;grid-template-columns:64px 1fr;gap:12px}.event+.event{margin-top:23px;padding-top:23px;border-top:1px solid var(--line)}.time{font-size:20px;color:var(--brown);padding-top:3px}.event h4{font-weight:400;font-size:18px;margin:0 0 8px;color:var(--green)}.event p{font:14px/1.8 Arial,sans-serif;margin:0;color:var(--muted)}.event .venue{font-weight:bold;color:var(--ink);margin-bottom:5px}.map{display:inline-block;font:13px/1.6 Arial,sans-serif;color:var(--green);text-underline-offset:5px;margin-top:12px;padding:5px 0}.honor{font-size:14px;font-style:italic;margin:26px auto 0;color:var(--muted)}.closing{text-align:center;padding:65px 24px}.love{color:var(--brown);font-size:25px}.closing h2{font:500 57px/1.5 'Album Script',cursive;margin:10px 0;color:var(--green)}.closing p{font-size:15px;color:var(--muted);margin:0}footer{text-align:center;padding:20px;font:12px/1.6 Arial,sans-serif;color:var(--muted);border-top:1px solid var(--line)}[hidden]{display:none!important}@media(max-width:700px){header{padding:18px 6%}.brand{font-size:25px}nav{gap:16px;font-size:12px}.hero{padding:30px 25px 45px}.kicker{font-size:16px;margin-bottom:27px}.photo{padding:9px 9px 10px;max-width:510px}.photo:before,.photo:after{width:65px;height:23px;left:-12px}.photo:after{left:auto;right:-10px}.photo figcaption{font-size:10px}h1{font-size:clamp(49px,10.5vw,74px);margin:25px 0 12px;white-space:nowrap}.hero-copy{font-size:14px;max-width:340px}.hero-dates{font-size:12px;letter-spacing:2px}.family-section{padding:42px 22px 55px}.families{gap:25px}.parents{font-size:16px}.address{font-size:12px}.couple{grid-template-columns:1fr;gap:15px}.couple-name{font-size:33px}.couple-heart{font-size:18px}.invites{padding:45px 16px}.cards{grid-template-columns:1fr;max-width:530px;gap:25px}.card{padding:32px 24px 27px}.switcher button{font-size:13px;padding:12px 14px}.event{grid-template-columns:58px 1fr;gap:10px}.closing{padding:45px 24px}}@media(max-width:360px){.parents{font-size:14px}.card{padding-left:19px;padding-right:19px}.event{grid-template-columns:53px 1fr}.time{font-size:18px}.brand{font-size:22px}nav{gap:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(min-width:701px) and (max-width:900px){.cards{grid-template-columns:1fr;max-width:590px}}
