:root{--ink:#2b241d;--sand:#e8dbc8;--paper:#f5efe6;--clay:#a65337;--night:#241d18;--line:rgba(43,36,29,.2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}img{display:block;width:100%}button,a{font:inherit}.nav{position:fixed;z-index:20;top:0;left:0;right:0;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;color:white;background:linear-gradient(to bottom,rgba(20,14,10,.55),transparent)}.wordmark{font-size:13px;letter-spacing:.28em;color:inherit;text-decoration:none}.nav-actions{position:relative;display:flex;align-items:center;gap:4px}.nav-rsvp{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:0;border-radius:999px;color:var(--ink);text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:bold;padding:13px 21px;background:#f4d8b9;box-shadow:0 7px 24px #0005;transition:transform .2s,box-shadow .2s,background .2s}.nav-rsvp:hover,.nav-rsvp:focus-visible{background:white;transform:translateY(-2px) scale(1.03);box-shadow:0 10px 30px #0007}.nav-rsvp:active{transform:scale(.98)}.menu-button{border:0;background:transparent;color:inherit;text-transform:uppercase;letter-spacing:.15em;font-size:10px;padding:12px}.menu{display:none;position:absolute;top:58px;right:16px;min-width:165px;background:var(--paper);padding:10px;box-shadow:0 12px 40px #0003}.menu.open{display:grid}.menu a{padding:11px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);font-family:Georgia,serif}.hero{height:100svh;min-height:680px;position:relative;color:white;background:#312218}.hero>img,.hero-shade{position:absolute;inset:0;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(180deg,rgba(27,18,12,.2) 10%,rgba(22,15,10,.08) 38%,rgba(22,15,10,.8) 100%)}.hero-copy{position:absolute;left:24px;right:24px;bottom:92px}.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:10px;font-weight:bold;margin:0 0 18px;color:var(--clay)}.eyebrow.light{color:#f4d8b9}.hero h1,.section h2,.patrick h2,.rsvp h2,.calendly-modal h2{font-family:Georgia,'Times New Roman',serif;font-weight:normal;line-height:.94;margin:0;letter-spacing:-.035em}.hero h1{font-size:clamp(56px,17vw,82px)}.hero h1 em{font-weight:normal;font-size:.65em}.date{font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin:24px 0}.button{display:inline-flex;align-items:center;gap:26px;border:1px solid var(--ink);background:transparent;color:var(--ink);padding:15px 18px;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:bold}.button-light{border-color:#fff8;color:white}.hero-copy .button{border:0;border-radius:999px;background:#f4d8b9;color:var(--ink);padding:17px 25px;font-size:11px;box-shadow:0 10px 30px #0006;transition:transform .2s,box-shadow .2s,background .2s}.hero-copy .button:hover,.hero-copy .button:focus-visible{background:white;transform:translateY(-2px) scale(1.03);box-shadow:0 14px 38px #0008}.hero-copy .button:active{transform:scale(.98)}.scroll-note{position:absolute;bottom:22px;right:24px;margin:0;font-family:Georgia,serif;font-style:italic;font-size:12px;opacity:.75}.section{padding:88px 24px}.section h2,.patrick h2,.rsvp h2{font-size:clamp(39px,11vw,60px)}.invitation .lead{font-family:Georgia,serif;font-size:21px;line-height:1.45}.invitation>p:last-child{color:#665d55}.rule{width:58px;border-top:1px solid var(--clay);margin:30px 0}.full-image{position:relative;height:72svh;min-height:520px;background:#37251c;color:white}.full-image img{height:100%;object-fit:cover}.full-image:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 60%,#1d140fbb)}.full-image p{position:absolute;z-index:1;left:24px;bottom:24px;font:italic 27px Georgia,serif;margin:0}.experience{background:var(--sand)}.moments{margin-top:45px;border-top:1px solid var(--line)}.moments article{position:relative;padding:26px 0 26px 45px;border-bottom:1px solid var(--line)}.moments span{position:absolute;left:0;top:29px;font-size:9px;letter-spacing:.15em;color:var(--clay)}.moments h3{font:normal 27px Georgia,serif;margin:0 0 7px}.moments p{margin:0;color:#5b5148}.stay{background:#e7dfd2}.stay-image{height:56svh;min-height:420px}.stay-image img{height:100%;object-fit:cover}.stay-copy ul{list-style:none;padding:0;margin:32px 0 0;border-top:1px solid var(--line)}.stay-copy li{padding:13px 0 13px 24px;border-bottom:1px solid var(--line);position:relative}.stay-copy li:before{content:'✦';position:absolute;left:0;color:var(--clay);font-size:9px}.gallery{background:var(--night);color:white}.gallery-heading>p{color:#bdb2a8}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:38px}.photo{position:relative;padding:0;border:0;background:#000;overflow:hidden;min-height:180px;cursor:zoom-in}.photo.wide{grid-column:1/-1;min-height:230px}.photo.tall{grid-row:span 2;min-height:368px}.photo img{position:absolute;inset:0;height:100%;object-fit:cover;transition:transform .5s}.photo:active img{transform:scale(1.03)}.photo span{position:absolute;left:-9999px}.patrick{position:relative;min-height:690px;color:white;background:#2f211a}.patrick>img{height:690px;object-fit:cover;object-position:57% center}.patrick:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,#20130de8)}.patrick-copy{position:absolute;z-index:1;left:24px;right:24px;bottom:42px}.patrick-copy p:last-child{max-width:430px;color:#f2e6dc}.details{text-align:center}.details .location{font:italic 18px Georgia,serif;color:#685e55}.price-card{margin:42px 0 24px;border:1px solid var(--line)}.price-card>div{padding:25px 15px}.price-card>div+div{border-top:1px solid var(--line)}.price-card p{margin:0 0 7px;text-transform:uppercase;letter-spacing:.12em;font-size:10px}.price-card strong{display:block;font:normal 43px Georgia,serif}.price-card small{color:#6d635a}.deposit{font-size:12px;color:#6d635a}.rsvp{background:var(--clay);color:white;padding:90px 24px;text-align:center}.rsvp>p:not(.eyebrow){font-family:Georgia,serif;font-size:18px;max-width:500px;margin:25px auto}.rsvp small{display:block;margin-top:22px;opacity:.75}.rsvp-form{max-width:560px;margin:32px auto 0;text-align:left}.rsvp-form label{display:block;margin-bottom:8px;text-transform:uppercase;letter-spacing:.14em;font-size:10px}.rsvp-field{display:flex;border-bottom:1px solid #fff9}.rsvp-field input{min-width:0;flex:1;border:0;background:transparent;color:white;padding:15px 4px;font:18px Georgia,serif;outline:none}.rsvp-field input::placeholder{color:#ffffff88}.rsvp-field .button{border:0;border-left:1px solid #fff8;margin:0;white-space:nowrap;padding:18px 22px;background:#f4d8b9;color:var(--ink);font-size:11px}.rsvp-field .button:disabled{opacity:.6}.rsvp-form output{display:block;min-height:28px;padding-top:10px;text-align:center;font-size:13px}.rsvp-form.success .rsvp-field,.rsvp-form.success label{display:none}footer{background:#18130f;color:#cfc5bb;padding:36px 24px;display:flex;justify-content:space-between;gap:20px;align-items:flex-end}footer span{letter-spacing:.25em;font-size:12px}footer p{font:italic 12px Georgia,serif;margin:0;text-align:right}dialog{border:0;padding:0;background:#17110e;max-width:none;width:100vw;height:100vh}dialog::backdrop{background:#000d}dialog img{width:100%;height:100%;object-fit:contain}.close{position:absolute;z-index:2;right:18px;top:18px;width:42px;height:42px;border:1px solid #fff6;background:#1b120dbb;color:white;font-size:28px}.calendly-modal{width:min(92vw,500px);height:auto;color:var(--ink);background:var(--paper);padding:55px 28px 32px}.calendly-modal .close{color:var(--ink);border-color:var(--line);background:transparent}.calendly-modal h2{font-size:42px}.calendly-modal .button{margin-top:12px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}@media(min-width:720px){.nav{padding:0 5vw}.menu-button{display:none}.menu{display:flex;position:static;background:transparent;box-shadow:none;gap:25px;padding:0}.menu a{border:0;color:white;font:10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}.hero-copy{left:8vw;bottom:12vh}.hero h1{font-size:96px}.section{padding:120px max(8vw,40px)}.invitation{max-width:1000px}.stay{display:grid;grid-template-columns:1.1fr .9fr}.stay-image{height:auto}.gallery-heading{display:flex;justify-content:space-between;align-items:end}.gallery-heading>p{max-width:320px}.gallery-grid{grid-template-columns:repeat(4,1fr)}.photo.wide{grid-column:span 2}.patrick{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);min-height:680px;background:#241d18}.patrick:after{display:none}.patrick>img{grid-column:2;grid-row:1;height:680px;min-height:680px;object-position:center top}.patrick-copy{position:relative;grid-column:1;grid-row:1;left:auto;right:auto;bottom:auto;align-self:end;padding:80px max(5vw,48px)}.patrick-copy p:last-child{font-size:17px;line-height:1.7}.price-card{display:grid;grid-template-columns:1fr 1fr;max-width:760px;margin:48px auto 24px}.price-card>div+div{border-top:0;border-left:1px solid var(--line)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
