@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Montserrat:wght@300;400;500&display=swap');
:root{--ivory:#f7f1e6;--wine:#6e1f2a;--indigo:#233451;--saffron:#c8793a;--gold:#b6935b;--ink:#2c2725;--line:#cfb994}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-weight:300}a{color:inherit}.wrap{width:min(1120px,88vw);margin:auto}.nav{position:sticky;top:0;z-index:5;background:rgba(247,241,230,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(110,31,42,.15)}.nav .wrap{height:70px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:'Cormorant Garamond',serif;font-size:1.55rem;color:var(--wine)}.links{display:flex;gap:24px;font-size:.75rem;text-transform:uppercase;letter-spacing:.14em}.links a{text-decoration:none}.hero{min-height:83vh;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";position:absolute;width:420px;height:420px;border:1px solid var(--gold);border-radius:50% 50% 0 0;opacity:.32}.hero:before{left:-210px;bottom:-260px}.hero:after{right:-210px;top:-250px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:var(--saffron);font-weight:500}.hero h1{font:500 clamp(4rem,10vw,8rem)/.88 'Cormorant Garamond',serif;color:var(--wine);margin:.25em 0}.hero .date{font:400 1.35rem 'Cormorant Garamond',serif;letter-spacing:.08em}.accommodation-note{margin:16px auto 0;max-width:560px;font:400 1.05rem/1.5 'Cormorant Garamond',serif;color:var(--indigo)}.hero-linework{display:block;width:min(760px,82vw);height:auto;margin:34px auto 0;color:var(--gold);opacity:.82}section{padding:100px 0;border-top:1px solid rgba(182,147,91,.35)}.section-title{font:500 clamp(2.6rem,6vw,4.6rem)/1 'Cormorant Garamond',serif;color:var(--indigo);margin:0 0 40px}.intro{max-width:680px;font:400 1.25rem/1.6 'Cormorant Garamond',serif}.events-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.event-card{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:34px;background:var(--ivory);min-height:210px}.event-num{font:400 1rem 'Cormorant Garamond';color:var(--gold);padding-top:4px}.event-card h3,.spot h3{font:500 2rem 'Cormorant Garamond',serif;color:var(--wine);margin:5px 0 10px}.event-card p,.spot p,.venue-copy p,.travel p,details p{line-height:1.7;font-size:.92rem}.venue-grid,.travel-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.venue-art{min-height:420px;background:var(--wine);position:relative;display:grid;place-items:end center;color:var(--ivory);padding:35px;overflow:hidden}.venue-art:before{content:"";width:75%;height:70%;border:1px solid rgba(247,241,230,.7);border-bottom:0;border-radius:50% 50% 0 0;position:absolute;bottom:0}.venue-art:after{content:"";width:48%;height:48%;border:1px solid rgba(247,241,230,.45);border-bottom:0;border-radius:50% 50% 0 0;position:absolute;bottom:0}.venue-art span{z-index:1;font:500 2rem 'Cormorant Garamond',serif}.button{display:inline-block;margin-top:20px;padding:12px 18px;border:1px solid var(--wine);text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:.7rem}.travel-note{padding:34px;border-left:2px solid var(--saffron);background:rgba(200,121,58,.07)}.spots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.spot{padding:26px 0;border-top:1px solid var(--gold)}details{border-top:1px solid var(--line);padding:20px 0}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font:500 1.3rem 'Cormorant Garamond',serif;color:var(--indigo)}footer{text-align:center;padding:70px 20px;color:var(--wine);font:500 1.4rem 'Cormorant Garamond',serif}.access-tag{position:fixed;right:18px;bottom:18px;background:var(--indigo);color:white;padding:9px 12px;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;z-index:4}@media(max-width:760px){.links{display:none}.events-grid,.venue-grid,.travel-grid,.spots-grid{grid-template-columns:1fr}.event-card{grid-template-columns:45px 1fr}.hero{min-height:72vh}section{padding:75px 0}.venue-grid,.travel-grid{gap:35px}.spots-grid{gap:5px}}

body[data-access="wedding"] .events-grid{background:transparent;border:0;gap:1px 1px}
body[data-access="wedding"] .event-card{border:1px solid var(--line)}
body[data-access="wedding"] .event-card:last-child{grid-column:1 / -1;width:calc(50% - .5px);justify-self:center}
@media(max-width:760px){body[data-access="wedding"] .event-card:last-child{grid-column:auto;width:100%}}
