*,::before,::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;min-height:100%}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,p,figure{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
input,select,textarea,button{font:inherit;color:inherit}
button{background:none;border:0;cursor:pointer}
a{color:inherit}
:root{
--ink:#23282A;
--rust:#D2543F;
--pine:#1F6B4F;
--soft:#63706A;
--wide:clamp(2.4rem,6.4vw,5rem);
--half:clamp(1.8rem,3.8vw,2.8rem);
--lead:clamp(1.08rem,1.9vw,1.36rem);
--read:1.06rem;
--thin:.74rem;
--side:clamp(1.2rem,4vw,3.2rem);
--airy:clamp(2.8rem,6vw,5.4rem);
}
body{
background:linear-gradient(163deg,#FDF3E7 0%,#EAF2E4 54%,#E3EEF4 100%);
background-attachment:fixed;
color:var(--ink);
font-family:"Lato",Helvetica,Arial,sans-serif;
font-size:var(--read);
line-height:1.74;
-webkit-font-smoothing:antialiased;
}
h1,h2{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-weight:300;line-height:1.08;letter-spacing:.004em}
h1{font-size:var(--half)}
h2{font-size:var(--wide)}
.page{max-width:72rem;margin-left:auto;margin-right:auto;padding-left:var(--side);padding-right:var(--side)}
.part{padding-top:var(--airy);padding-bottom:var(--airy)}
.hold{padding-top:var(--airy)}
.head{max-width:24ch}
.lede{margin-top:1.1rem;max-width:56ch;font-size:1.12rem;color:var(--soft)}
.hero{margin-top:1.8rem}
.hero img{width:100%;height:auto;aspect-ratio:15/7;object-fit:cover}
.intro{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1.6rem 2.2rem}
.intro .copy{flex:1 1 22rem;min-width:16rem}
.intro .hero{flex:0 0 18rem;max-width:18rem;margin-top:.2rem}
.intro .hero img{aspect-ratio:1;object-fit:cover}
.caps{margin-top:.6rem;font-size:var(--thin);line-height:1.5;color:var(--soft)}
.name{margin-top:0}
.town{margin-top:.7rem;font-size:var(--thin);letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.line{margin-top:1.1rem;font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:var(--lead);line-height:1.38;max-width:38ch}
.pair{display:flex;flex-direction:row-reverse;flex-wrap:wrap;align-items:flex-start;gap:2rem;margin-top:1.8rem}
.shot{flex-basis:18rem;flex-grow:0;flex-shrink:1;min-width:14rem}
.shot img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.text{flex-basis:26rem;flex-grow:1;min-width:16rem}
.unit{margin-top:1.3rem}
.unit:first-child{margin-top:0}
.mark{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:1.2rem;color:var(--pine);margin-bottom:.25rem}
.text p{max-width:58ch}
.plea{margin-top:1.6rem;padding-left:1.1rem;border-left:5px solid var(--rust);max-width:58ch}
.plea b{display:block;font-size:var(--thin);letter-spacing:.26em;text-transform:uppercase;color:var(--rust);margin-bottom:.3rem}
.date{margin-top:1.2rem;font-size:var(--thin);letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.list{margin-top:var(--airy)}
.item{padding-top:1rem;padding-bottom:1rem}
.item a{font-family:"Cormorant Garamond",Georgia,serif;font-weight:300;font-size:clamp(1.7rem,5vw,3.4rem);line-height:1.1;text-decoration:none;display:inline}
.from{font-size:var(--thin);letter-spacing:.2em;text-transform:uppercase;color:var(--soft);display:block;margin-top:.3rem}
.tail{margin-top:var(--airy);padding-left:1.1rem;border-left:5px solid var(--pine);max-width:68ch;font-size:.95rem;color:var(--soft)}
.link{color:var(--rust);text-decoration:underline;text-underline-offset:3px}
.sign{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:1.4rem;text-decoration:none;margin-right:auto}
.menu{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;width:100%}
.menu a{text-decoration:none;font-size:var(--thin);letter-spacing:.2em;text-transform:uppercase}
.menu a[aria-current="page"]{color:var(--rust)}
.knob{display:none;font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:var(--rust)}
[data-js="on"] .knob{display:block}
[data-js="on"] .menu[data-open="false"]{display:none}
[data-js="on"] .menu[data-open="true"]{display:flex;flex-direction:column;gap:.9rem}
@media (min-width:720px){
.menu{width:auto;flex-wrap:nowrap}
[data-js="on"] .menu[data-open="false"]{display:flex;flex-direction:row}
[data-js="on"] .knob{display:none}
}
@media (min-width:1120px){
.page{max-width:76rem}
.shot{flex-basis:22rem}
}
.foot{margin-top:var(--airy);padding-top:var(--airy);padding-bottom:var(--airy);border-top:1px solid var(--soft)}
.feet a{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;font-size:clamp(1.2rem,2.4vw,1.8rem);text-decoration:none;padding-top:.3rem;padding-bottom:.3rem}
.note{margin-top:1.6rem;max-width:56ch;font-size:.94rem;color:var(--soft)}
.flow{max-width:62ch}
.flow p{margin-top:1rem}
.sign{display:block}
.knob{margin-top:1rem;margin-bottom:1rem}
.menu{margin-top:1rem}
.list a{color:var(--ink)}
.item a:hover{color:var(--rust)}
.feet a:hover{color:var(--rust)}
.flow label{font-size:var(--thin);letter-spacing:.2em;text-transform:uppercase;color:var(--soft)}
.flow input,.flow select,.flow textarea{width:100%;max-width:34rem;background:none;border:0;border-bottom:1px solid var(--soft);padding-top:.4rem;padding-bottom:.4rem}
.flow input[type="checkbox"]{width:auto;border-bottom:0}
.flow button{color:var(--rust);text-transform:uppercase;letter-spacing:.24em;font-size:var(--thin);padding-left:0}
:focus-visible{outline:3px solid var(--pine);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
