@font-face{font-family:'Cormorant Garamond';src:url('CormorantGaramond-Regular.ttf') format('truetype');font-weight:400;font-display:swap;}
@font-face{font-family:'Cormorant Garamond';src:url('CormorantGaramond-Bold.ttf') format('truetype');font-weight:700;font-display:swap;}
@font-face{font-family:'Libre Franklin';src:url('LibreFranklin-Regular.ttf') format('truetype');font-weight:400;font-display:swap;}
@font-face{font-family:'Libre Franklin';src:url('LibreFranklin-Bold.ttf') format('truetype');font-weight:700;font-display:swap;}

:root{
  --paper:#FBFAF7; --shelf:#F5F2EC; --stone:#DCD7CE; --tan:#C9A987;
  --stone4:#A8A39A; --brown:#77604A; --graphite:#4A4844; --ink:#191817; --olive:#3E4438;
  --wrap:1120px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);
  font-family:'Libre Franklin',Arial,Helvetica,sans-serif;font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--olive)}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}

/* display type: Cormorant capitals at 0.20 em, per the brand */
.dsp{font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;
  letter-spacing:.20em;text-transform:uppercase}
.eyebrow{font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;font-size:14px;
  letter-spacing:.20em;text-transform:uppercase;color:var(--brown)}

/* header */
header.site{border-bottom:1px solid var(--stone);background:var(--paper);
  position:sticky;top:0;z-index:50}
header.site .row{max-width:var(--wrap);margin:0 auto;padding:20px 32px;
  display:flex;align-items:center;justify-content:space-between;gap:24px}
header.site .mark{width:196px;flex:0 0 auto}
nav.site{display:flex;gap:28px;flex-wrap:wrap}
nav.site a{font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--graphite);
  text-decoration:none;font-weight:700}
nav.site a:hover,nav.site a[aria-current]{color:var(--olive)}

/* hero */
.hero{background:var(--olive);color:var(--paper);padding:96px 0 104px}
.hero h1{font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;
  letter-spacing:.20em;text-transform:uppercase;font-size:clamp(34px,5.2vw,62px);line-height:1.2}
.hero p.lede{font-size:20px;color:var(--stone);margin-top:26px;max-width:640px}
.hero .eyebrow{color:var(--tan)}

section{padding:80px 0}
section.alt{background:var(--shelf)}
h2.sec{font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;
  letter-spacing:.20em;text-transform:uppercase;font-size:clamp(26px,3.4vw,38px);color:var(--olive)}
h3{font-size:22px;font-weight:700;margin-bottom:8px}
.sub{color:var(--graphite);margin-top:14px;max-width:680px}

/* package cards */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(236px,1fr));gap:24px;margin-top:44px}
.pack{background:var(--paper);border:1px solid var(--stone);border-top:3px solid var(--olive);
  padding:30px 28px;display:flex;flex-direction:column}
.pack .price{font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;font-size:46px;
  letter-spacing:.04em;color:var(--ink);margin:14px 0 4px}
.pack .once{font-size:14px;color:var(--graphite)}
.pack p{font-size:16px;color:var(--graphite);margin-top:16px;flex:1}
.pack .go{margin-top:22px;display:inline-block;text-decoration:none;
  font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;font-size:15px;
  letter-spacing:.20em;text-transform:uppercase;color:var(--olive);
  border-bottom:1px solid var(--stone);padding-bottom:6px}
.pack .go:hover{border-bottom-color:var(--olive)}
.pack.bundle{background:var(--olive);border-top-color:var(--tan)}
.pack.bundle h3,.pack.bundle .price{color:var(--paper)}
.pack.bundle p,.pack.bundle .once{color:var(--stone)}
.pack.bundle .go{color:var(--paper);border-bottom-color:var(--tan)}

/* three things row */
.three{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:26px;margin-top:44px}
.thing{border:1px solid var(--stone);background:var(--paper);padding:26px 26px 28px}
.thing .n{font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;font-size:14px;
  letter-spacing:.20em;color:var(--brown)}
.thing h3{margin-top:10px}
.thing p{font-size:16px;color:var(--graphite)}
.thing a.btn{margin-top:18px}

.btn{display:inline-block;text-decoration:none;background:var(--olive);color:var(--paper);
  font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;font-size:15px;
  letter-spacing:.20em;text-transform:uppercase;padding:14px 30px;border:1px solid var(--olive)}
.btn:hover{background:var(--ink);border-color:var(--ink)}
.btn.ghost{background:transparent;color:var(--olive)}
.btn.ghost:hover{background:var(--olive);color:var(--paper)}
.btn.on-ink{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.btn.on-ink:hover{background:var(--tan);border-color:var(--tan)}

/* video frame */
.player{margin-top:40px;border:1px solid var(--stone);background:var(--olive);
  box-shadow:0 24px 60px rgba(25,24,23,.18)}
.player .ratio{position:relative;width:100%;padding-top:56.25%}
.player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.cap-note{font-size:14px;color:var(--graphite);margin-top:12px}

/* inside list */
.inside{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:36px}
.inside div{border-left:3px solid var(--olive);background:var(--paper);padding:16px 20px;
  border-top:1px solid var(--stone);border-right:1px solid var(--stone);border-bottom:1px solid var(--stone)}
.inside b{display:block;font-family:'Cormorant Garamond',Garamond,serif;font-size:15px;
  letter-spacing:.20em;text-transform:uppercase;color:var(--brown);font-weight:700}
.inside span{font-size:17px}

.pages{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-top:36px}
.pages figure{border:1px solid var(--stone);background:var(--paper);
  box-shadow:0 14px 34px rgba(25,24,23,.12)}
.pages figcaption{font-size:13px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--graphite);padding:10px 14px;border-top:1px solid var(--stone)}

.buy{background:var(--olive);color:var(--paper);padding:76px 0}
.buy .price{font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;
  font-size:clamp(64px,10vw,140px);letter-spacing:.04em;line-height:1}
.buy .terms{color:var(--stone);margin-top:16px}
.buy .row{display:flex;gap:20px;flex-wrap:wrap;margin-top:34px;align-items:center}

.hold{border:1px dashed var(--brown);background:var(--shelf);padding:14px 18px;
  font-size:15px;color:var(--brown);margin-top:20px;display:inline-block}

footer.site{background:var(--shelf);border-top:1px solid var(--stone);padding:56px 0 64px}
footer.site .mark{width:170px;margin-bottom:20px}
footer.site p{font-size:13.5px;color:var(--graphite);max-width:820px;line-height:1.7}
footer.site .legal{margin-top:18px;font-size:12.5px;color:var(--graphite)}

@media (max-width:640px){
  .wrap,header.site .row{padding-left:20px;padding-right:20px}
  section{padding:56px 0}
  .hero{padding:64px 0 68px}
}

/* legal pages */
.doc{max-width:760px}
.doc h1{font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;letter-spacing:.20em;
  text-transform:uppercase;font-size:clamp(26px,3.4vw,38px);color:var(--olive);
  margin:0 0 10px;line-height:1.2}
.doc h2{font-family:'Cormorant Garamond',Garamond,serif;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;font-size:19px;color:var(--olive);margin:44px 0 14px}
.doc h2:first-of-type{margin-top:0}
.doc p{font-size:16px;line-height:1.72;color:var(--graphite);margin:0 0 14px}
.doc ul{margin:0 0 16px;padding-left:22px}
.doc li{font-size:16px;line-height:1.72;color:var(--graphite);margin:7px 0}
.doc .updated{font-size:13.5px;color:var(--brown);letter-spacing:.03em;margin-bottom:34px}
.doc .box{border:1px solid var(--stone);border-left:3px solid var(--olive);background:var(--shelf);
  padding:18px 22px;margin:0 0 18px}
.doc .box p:last-child{margin-bottom:0}
.doc address{font-style:normal;font-size:16px;line-height:1.72;color:var(--graphite)}
