:root{--ink:#713b29;--sand:#f5e6cf;--line:#b89c7280;--rust:#ae4b25;--script:'Pinyon Script',cursive;--serif:'Cormorant Garamond',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:linear-gradient(#fff7e5bc,#fff7e5bc),url('assets/beach-sand-texture.png');background-size:auto,620px;color:var(--ink);font-family:var(--serif);font-size:23px}a{color:inherit;text-decoration:none}button,input{font:inherit}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--rust);outline-offset:5px}header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 5%;background:#fff7e6ed;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{font-size:27px;letter-spacing:3px;white-space:nowrap}nav{display:flex;gap:28px;font-size:20px}.main-site{font-size:18px;border-bottom:1px solid var(--line)}h1,h2,h3{font-weight:400;margin:0;line-height:1.06}h1{font-size:clamp(76px,8.4vw,140px);letter-spacing:-4px}h1 em,h2 em{font-family:var(--script);font-weight:400;letter-spacing:0;color:var(--rust)}h2{font-size:clamp(52px,5.4vw,86px);letter-spacing:-2px}h3{font-size:32px}p{line-height:1.5;margin:23px 0}.eyebrow{font-family:Montserrat,Arial,sans-serif;font-size:10px;letter-spacing:2.6px;display:block;margin-bottom:30px}.hero{max-width:1600px;margin:auto;min-height:730px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:7%;padding:75px 8% 105px;position:relative}.hero-copy{position:relative;z-index:2}.hero-copy p{font-size:26px;max-width:450px;margin:32px 0}.hero-photo{position:relative;padding:13px 13px 45px;background:#fffaf1;transform:rotate(3deg);box-shadow:15px 22px 40px #70442420}.hero-photo img{width:100%;height:485px;object-fit:cover;display:block}.hero-photo span{position:absolute;bottom:17px;left:23px;font:9px Montserrat,Arial,sans-serif;letter-spacing:3px}.shell{width:170px;position:absolute;right:43%;bottom:42px;filter:drop-shadow(9px 15px 12px #6b3c2125);transform:rotate(-20deg)}.button{display:inline-flex;gap:30px;align-items:center;background:var(--rust);color:#fff7e7;padding:20px 25px;font:10px/1.7 Montserrat,Arial,sans-serif;letter-spacing:1.4px;transition:background .2s}.button:hover{background:#713b29}.day-strip{display:flex;justify-content:space-evenly;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px;background:#f4ddc65c;letter-spacing:2px;font-size:18px}.section{max-width:1500px;margin:auto;padding:100px 7%}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:end;margin-bottom:60px}.section-heading p{max-width:420px;margin-top:0}.section-note label{font:11px Montserrat,Arial,sans-serif;display:block;margin-bottom:10px}.section-note input{width:100%;background:#fffaf1a8;padding:14px 17px;border:1px solid #b49876;color:var(--ink);border-radius:0;font-size:20px}.section-note small{display:block;margin-top:12px;font-size:17px}.pairs{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 55px}.pair{min-width:0}.pair-portraits{display:grid;grid-template-columns:1fr 1fr;gap:18px}figure{margin:0;min-width:0}.portrait{position:relative;width:100%;aspect-ratio:1/1.4;overflow:hidden;background:#e6d4be}.portrait img{position:absolute;display:block}figcaption{padding:16px 0 14px}figcaption h3{font-size:clamp(23px,2.1vw,33px);line-height:1.15;margin-bottom:6px}figcaption span{font-size:16px;line-height:1.3;display:block}.pair-note{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-style:italic;padding-top:10px;font-size:22px}.pair-arrow{font-style:normal}.family{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.kids{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:45px}.center-note{font-size:22px;text-align:center;margin:35px 0 0}.family-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.family-grid h3{font-size:28px}.day{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;border-top:1px solid var(--line)}.venue-image{background:#fffaf1;padding:15px 15px 25px;transform:rotate(-2deg)}.venue-image img{display:block;width:100%;height:520px;object-fit:cover}.venue-image span{display:block;margin-top:18px;font:9px Montserrat,Arial,sans-serif;letter-spacing:2px}.day h3{margin:30px 0 12px}.day p{margin:15px 0}.times{display:flex;gap:60px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:30px 0}.times strong{display:block;font-size:59px;font-weight:400;line-height:1}.times small{font-size:19px}.times span{font-size:20px}.fine{font-size:18px;line-height:1.5}.text-link{display:inline-block;border-bottom:1px solid var(--ink);padding-bottom:6px}.palette{text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.swatches{display:grid;grid-template-columns:repeat(7,1fr);gap:15px;margin:45px auto 30px;max-width:950px}.swatches i{display:block;height:100px;border-radius:80px 80px 0 0;box-shadow:inset 0 0 0 1px #78462715}.swatches span{display:block;margin-top:13px;font-size:19px}.airports{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding-bottom:50px}.airports h3{font-size:31px}.airports p{font-size:21px}.stays{display:grid;grid-template-columns:1fr 1fr;gap:0 7%}.stay{position:relative;padding:26px 30px 26px 0;border-top:1px solid var(--line)}.stay h3{font-size:29px;margin-bottom:8px}.stay span{font-size:19px}.stay b{position:absolute;right:0;top:30px;font-weight:400}.stay:hover h3{color:var(--rust)}.questions{display:grid;grid-template-columns:1fr 1.4fr;gap:10%;border-top:1px solid var(--line)}.faq-shell{width:180px;margin:50px 0 0 20px;transform:rotate(-15deg)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;position:relative;padding:22px 30px 22px 0;font-size:30px}summary::after{content:'+';position:absolute;right:0;top:20px;font-size:26px}details[open] summary::after{content:'−'}details p{margin:0 0 26px;font-size:22px}details a{text-decoration:underline}.closing{text-align:center;padding:60px 25px 95px;background:linear-gradient(#ffe9cb70,#f6d7ba80),url('assets/beach-sand-texture.png');background-size:auto,700px;border-top:1px solid var(--line)}.closing>img{width:130px;display:block;margin:0 auto 30px}.closing h2{font-size:clamp(60px,7vw,110px)}footer{display:flex;justify-content:space-between;gap:24px;padding:25px 5%;border-top:1px solid var(--line);font-size:17px}.clear-search{border:1px solid var(--ink);color:var(--ink);background:transparent;padding:10px 25px;margin-top:20px}article[hidden]{display:none}section{scroll-margin-top:20px}
@media(min-width:1500px){.hero-photo img{height:600px}}
@media(max-width:1000px){header{flex-wrap:wrap}.main-site{display:none}.hero{gap:5%;padding:65px 6% 85px;min-height:650px}.hero-photo img{height:420px}.hero-copy p{font-size:23px}.pairs{gap:45px 28px}.section{padding:75px 6%}.family-grid{grid-template-columns:repeat(2,1fr)}.venue-image img{height:420px}.times{gap:30px}.times strong{font-size:47px}.questions{gap:6%}.swatches{gap:9px}.swatches span{font-size:16px}}
@media(max-width:650px){header{padding:17px 5% 13px;gap:12px;justify-content:center}.brand{font-size:24px}nav{width:100%;justify-content:center;gap:22px;font-size:17px}.hero{display:flex;flex-direction:column;padding:55px 7% 80px;gap:45px;min-height:auto}.hero-copy{width:100%;text-align:center}h1{font-size:83px;letter-spacing:-2px}.hero-copy p{font-size:24px;margin:23px auto}.hero-photo{width:88%;transform:rotate(2deg);padding-bottom:37px}.hero-photo img{height:330px}.shell{width:110px;right:2%;bottom:34px}.day-strip{flex-direction:column;align-items:center;gap:10px;padding:23px;font-size:16px}.section{padding:65px 6%}.section-heading{display:block;margin-bottom:35px}.section-heading h2{margin-bottom:25px}h2{font-size:57px}.section-note p{font-size:22px}.pairs{grid-template-columns:1fr;gap:40px}.pair-portraits{gap:15px}figcaption h3{font-size:27px}figcaption span{font-size:16px}.kids{gap:14px;grid-template-columns:1fr 1fr}.kids figure:last-child{width:65%;grid-column:1/-1;justify-self:center;margin-top:18px}.family-grid{gap:28px 16px}.family-grid h3{font-size:25px}.center-note{font-size:21px}.day{grid-template-columns:1fr;gap:45px}.venue-image img{height:330px}.day h2{font-size:60px}.times strong{font-size:62px}.times{gap:60px}.swatches{grid-template-columns:repeat(4,1fr);gap:22px 13px}.swatches i{height:80px}.palette p{font-size:21px}.airports,.stays,.questions{grid-template-columns:1fr}.airports{gap:40px}.faq-shell{display:none}.questions h2{margin-bottom:25px}summary{font-size:27px}.closing .button{font-size:9px;padding:17px}.closing h2{font-size:63px}footer{flex-direction:column;align-items:center;text-align:center;font-size:16px;gap:12px}.eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.rehearsal-dinner{border-top:1px solid var(--line);margin-top:28px;padding-top:25px}.rehearsal-dinner .eyebrow{margin-bottom:12px}.rehearsal-dinner h3{margin:0 0 12px}.rehearsal-dinner p{font-size:23px}

.property-gallery{border-top:1px solid var(--line)}.property-photos{display:grid;grid-template-columns:1.3fr 1fr;gap:32px}.property-photo{display:block;width:100%;padding:0;border:0;background:transparent;position:relative;cursor:zoom-in}.property-photo img{width:100%;height:350px;object-fit:cover;display:block}.property-photo span{position:absolute;right:15px;bottom:15px;display:grid;place-items:center;width:38px;height:38px;background:#fff8e8e8;border-radius:50%;color:var(--ink)}.property-photos figcaption{font-size:26px;font-style:italic;padding:12px 0}.property-photos figure:nth-child(even){padding-top:45px}#property-lightbox{border:0;padding:55px 22px 15px;background:#fff7e9;color:var(--ink);max-width:min(1000px,94vw);max-height:92vh}#property-lightbox::backdrop{background:#321e15db}#property-lightbox img{display:block;max-width:100%;max-height:70vh;object-fit:contain;margin:auto}#property-lightbox p{text-align:center;margin:15px 0;font-size:25px}.close-photo{position:absolute;right:15px;top:6px;font:35px Georgia;background:none;border:0;color:var(--ink);cursor:pointer;width:44px;height:44px}@media(max-width:650px){.property-photos{grid-template-columns:1fr;gap:23px}.property-photo img{height:270px}.property-photos figure:nth-child(even){padding-top:0}}

nav{flex-wrap:wrap;justify-content:center}@media(max-width:650px){nav{column-gap:18px;row-gap:10px}}
