/* The Lantern — Begin page
   Loaded only on the WordPress page with slug: begin
*/

.lantern-begin{
  position:relative;
  z-index:1;
  background:
    radial-gradient(circle at 50% 0%,rgba(200,155,85,.055),transparent 30%),
    linear-gradient(180deg,#071018 0%,#09131d 44%,#071018 100%);
}

.lantern-begin section[id]{
  scroll-margin-top:96px;
}

.lantern-begin-threshold{
  position:relative;
  isolation:isolate;
  width:min(1480px,calc(100% - 40px));
  min-height:min(82vh,800px);
  margin:24px auto 0;
  display:flex;
  align-items:center;
  overflow:hidden;
  border:1px solid rgba(200,155,85,.17);
  border-radius:28px;
  background:#061018;
  box-shadow:0 38px 90px rgba(0,0,0,.34);
}

.lantern-begin-threshold__bg{
  position:absolute;
  inset:0;
  z-index:0;
}

.lantern-begin-threshold__bg img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:64% center;
  filter:saturate(.82) brightness(.76);
  transform:scale(1.01);
}

.lantern-begin-threshold__veil{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(4,10,15,.96) 0%,rgba(4,10,15,.90) 28%,rgba(4,10,15,.66) 52%,rgba(4,10,15,.28) 78%,rgba(4,10,15,.15) 100%),
    linear-gradient(180deg,rgba(4,10,15,.16),rgba(4,10,15,.42));
}

.lantern-begin-threshold__frame{
  position:absolute;
  inset:14px;
  z-index:2;
  pointer-events:none;
  border:1px solid rgba(200,155,85,.20);
  border-radius:18px;
}

.lantern-begin-threshold__content{
  position:relative;
  z-index:3;
  width:min(1240px,calc(100% - 120px));
}

.lantern-begin-threshold__inner{
  max-width:680px;
  padding:104px 0 110px;
}

.lantern-begin-overline,
.lantern-begin-kicker{
  font-family:Inter,system-ui,sans-serif;
  text-transform:uppercase;
  color:var(--lantern-gold);
}

.lantern-begin-overline{
  margin-bottom:20px;
  font-size:.68rem;
  font-weight:600;
  line-height:1.5;
  letter-spacing:.30em;
  color:#d8c29b;
}

.lantern-begin-kicker{
  margin-bottom:18px;
  font-size:.69rem;
  font-weight:600;
  line-height:1.5;
  letter-spacing:.25em;
}

.lantern-begin-threshold h1{
  margin:0 0 34px;
  font-size:clamp(4.7rem,9vw,8.4rem);
  font-weight:400;
  line-height:.92;
  letter-spacing:.07em;
  text-transform:uppercase;
  text-shadow:0 5px 30px rgba(0,0,0,.42);
}

.lantern-begin-threshold blockquote{
  margin:0 0 36px;
  padding:0 0 0 25px;
  border-left:1px solid rgba(200,155,85,.48);
}

.lantern-begin-threshold blockquote p{
  margin:0;
  font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Palatino,Georgia,serif;
  font-size:clamp(1.42rem,2.2vw,2rem);
  line-height:1.55;
  font-style:italic;
  color:#e6d8bd;
}

.lantern-begin-threshold__cta{
  background:#c89b55;
  box-shadow:0 14px 34px rgba(0,0,0,.26);
}

.lantern-begin-section{
  position:relative;
  padding:118px 0;
  border-top:1px solid rgba(200,155,85,.16);
}

.lantern-begin-section--reading{
  padding-top:130px;
  background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 22%);
}

.lantern-begin-reader{
  width:min(760px,calc(100% - 44px));
  margin-inline:auto;
}

.lantern-begin-reader h2,
.lantern-begin-covenant h2,
.lantern-begin-trailhead h2{
  margin:0;
  font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Palatino,Georgia,serif;
  font-weight:400;
  color:var(--lantern-paper);
}

.lantern-begin-reader h2{
  margin-bottom:52px;
  font-size:clamp(2.85rem,6vw,5rem);
  line-height:1.03;
  letter-spacing:.01em;
}

.lantern-begin-reader > p{
  margin:0 0 1.6em;
  font-family:Georgia,Cambria,Times New Roman,serif;
  font-size:clamp(1.1rem,1.7vw,1.28rem);
  line-height:1.9;
  color:#ddd4c4;
}

.lantern-begin-reader > p:first-of-type:not(.lantern-begin-epigraph){
  font-size:clamp(1.18rem,1.9vw,1.34rem);
}

.lantern-begin-sectionmark{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:18px;
  width:170px;
  margin:0 0 42px;
  color:var(--lantern-gold);
}

.lantern-begin-sectionmark span{
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(200,155,85,.55));
}

.lantern-begin-sectionmark span:last-child{
  background:linear-gradient(90deg,rgba(200,155,85,.55),transparent);
}

.lantern-begin-sectionmark b{
  font-size:.65rem;
  font-weight:400;
}

.lantern-begin-observe{
  margin:2.15em 0 .18em!important;
  font-family:Iowan Old Style,Palatino,Georgia,serif!important;
  font-size:clamp(2.6rem,6vw,4.5rem)!important;
  line-height:1!important;
  color:#ead9b6!important;
}

.lantern-begin-observe-sub{
  margin:0 0 2.2em!important;
  font-family:Inter,system-ui,sans-serif!important;
  font-size:.76rem!important;
  line-height:1.6!important;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--lantern-gold)!important;
}

.lantern-begin-welcome{
  margin-top:2.8em!important;
  padding-top:2.1em;
  border-top:1px solid rgba(200,155,85,.22);
  font-family:Iowan Old Style,Palatino,Georgia,serif!important;
  font-size:clamp(1.6rem,3vw,2.15rem)!important;
  line-height:1.5!important;
  font-style:italic;
  color:#e6d6b6!important;
}

.lantern-begin-section--covenant{
  padding:132px 0;
  background:
    radial-gradient(circle at 50% 45%,rgba(200,155,85,.08),transparent 38%),
    linear-gradient(180deg,rgba(255,255,255,.012),rgba(200,155,85,.018));
}

.lantern-begin-covenant{
  position:relative;
  width:min(880px,calc(100% - 20px));
  margin-inline:auto;
  padding:74px 78px 78px;
  box-sizing:border-box;
  text-align:center;
  border:1px solid rgba(200,155,85,.30);
  border-radius:26px;
  background:
    radial-gradient(circle at 50% 0%,rgba(200,155,85,.08),transparent 38%),
    rgba(6,14,21,.70);
  box-shadow:0 30px 80px rgba(0,0,0,.20),inset 0 0 0 10px rgba(200,155,85,.014);
}

.lantern-begin-covenant:before{
  content:"";
  position:absolute;
  inset:12px;
  pointer-events:none;
  border:1px solid rgba(200,155,85,.10);
  border-radius:18px;
}

.lantern-begin-covenant__ornament{
  position:relative;
  z-index:1;
  margin-bottom:30px;
  font-size:1.15rem;
  color:var(--lantern-gold);
}

.lantern-begin-covenant__ornament--bottom{
  margin:35px 0 0;
}

.lantern-begin-covenant h2{
  position:relative;
  z-index:1;
  margin-bottom:24px;
  font-size:clamp(2.8rem,5vw,4.7rem);
  line-height:1.06;
}

.lantern-begin-covenant__intro{
  position:relative;
  z-index:1;
  max-width:660px;
  margin:0 auto 48px;
  font-family:Iowan Old Style,Palatino,Georgia,serif;
  font-size:clamp(1.2rem,2vw,1.42rem);
  line-height:1.75;
  font-style:italic;
  color:#d9cdb8;
}

.lantern-begin-covenant__text{
  position:relative;
  z-index:1;
  max-width:675px;
  margin-inline:auto;
}

.lantern-begin-covenant__text p{
  margin:0;
  padding:21px 0;
  border-top:1px solid rgba(200,155,85,.12);
  font-family:Georgia,Cambria,Times New Roman,serif;
  font-size:clamp(1.05rem,1.55vw,1.2rem);
  line-height:1.82;
  color:#ded5c5;
}

.lantern-begin-covenant__text p:first-child{
  border-top:0;
  padding-top:0;
  font-family:Iowan Old Style,Palatino,Georgia,serif;
  font-size:clamp(1.55rem,2.8vw,2.15rem);
  color:#eadab9;
}

.lantern-begin-section--prologue{
  padding-top:132px;
}

.lantern-begin-reader--prologue h2{
  margin-bottom:18px;
}

.lantern-begin-epigraph{
  margin:0 0 64px!important;
  padding-bottom:38px;
  border-bottom:1px solid rgba(200,155,85,.21);
  font-family:Iowan Old Style,Palatino,Georgia,serif!important;
  font-size:clamp(1.35rem,2.4vw,1.75rem)!important;
  line-height:1.58!important;
  font-style:italic;
  color:#d8c9ae!important;
}

.lantern-begin-questions{
  margin:48px 0 56px;
  padding:36px 38px;
  border-left:1px solid rgba(200,155,85,.47);
  background:linear-gradient(90deg,rgba(200,155,85,.052),transparent 82%);
}

.lantern-begin-questions p{
  margin:0 0 17px;
  font-family:Iowan Old Style,Palatino,Georgia,serif;
  font-size:clamp(1.25rem,2.1vw,1.55rem);
  line-height:1.55;
  font-style:italic;
  color:#eadfc8;
}

.lantern-begin-questions p:last-child{
  margin-bottom:0;
}

.lantern-begin-pause{
  margin:58px 0 52px;
  padding:38px 40px;
  text-align:center;
  border-top:1px solid rgba(200,155,85,.24);
  border-bottom:1px solid rgba(200,155,85,.24);
}

.lantern-begin-pause p{
  margin:0 0 16px;
  font-family:Iowan Old Style,Palatino,Georgia,serif;
  font-size:clamp(1.3rem,2.2vw,1.65rem);
  line-height:1.65;
  color:#e3d7c0;
}

.lantern-begin-pause p:last-child{
  margin-bottom:0;
}

.lantern-begin-closing{
  margin:70px 0 0!important;
  text-align:center;
  font-family:Iowan Old Style,Palatino,Georgia,serif!important;
  font-size:clamp(2rem,4vw,3.1rem)!important;
  line-height:1.35!important;
  font-style:italic;
  color:#ead8b4!important;
}

.lantern-begin-section--trailhead{
  padding:112px 0 124px;
  background:linear-gradient(180deg,rgba(200,155,85,.018),rgba(255,255,255,.01));
}

.lantern-begin-trailhead{
  width:min(920px,100%);
  margin-inline:auto;
  text-align:center;
  padding:64px 54px 68px;
  box-sizing:border-box;
  border:1px solid rgba(200,155,85,.22);
  border-radius:24px;
  background:radial-gradient(circle at 50% 0%,rgba(200,155,85,.085),transparent 55%);
}

.lantern-begin-trailhead h2{
  margin-bottom:18px;
  font-size:clamp(2.7rem,5vw,4.5rem);
  line-height:1.08;
}

.lantern-begin-trailhead > p{
  max-width:620px;
  margin:0 auto;
  font-family:Georgia,Cambria,Times New Roman,serif;
  font-size:1.15rem;
  line-height:1.75;
  color:#cfc6b7;
}

.lantern-begin-trailhead__actions{
  justify-content:center;
  margin-top:34px;
}

@media(max-width:900px){
  .lantern-begin-threshold{
    width:min(100% - 28px,1480px);
    min-height:710px;
    margin-top:14px;
    border-radius:22px;
  }

  .lantern-begin-threshold__frame{
    inset:10px;
    border-radius:15px;
  }

  .lantern-begin-threshold__content{
    width:calc(100% - 64px);
  }

  .lantern-begin-threshold__bg img{
    object-position:69% center;
  }

  .lantern-begin-threshold__inner{
    max-width:570px;
    padding:90px 0 96px;
  }

  .lantern-begin-covenant{
    padding:62px 54px 66px;
  }
}

@media(max-width:620px){
  .lantern-begin-threshold{
    width:calc(100% - 16px);
    min-height:690px;
    margin-top:8px;
    align-items:flex-end;
    border-radius:18px;
  }

  .lantern-begin-threshold__frame{
    inset:8px;
    border-radius:12px;
  }

  .lantern-begin-threshold__content{
    width:calc(100% - 44px);
  }

  .lantern-begin-threshold__bg img{
    object-position:73% center;
  }

  .lantern-begin-threshold__veil{
    background:
      linear-gradient(180deg,rgba(4,10,15,.15) 0%,rgba(4,10,15,.30) 28%,rgba(4,10,15,.76) 58%,rgba(4,10,15,.97) 100%),
      linear-gradient(90deg,rgba(4,10,15,.36),rgba(4,10,15,.08));
  }

  .lantern-begin-threshold__inner{
    max-width:none;
    padding:300px 0 62px;
  }

  .lantern-begin-threshold h1{
    font-size:clamp(3.8rem,18vw,5.6rem);
  }

  .lantern-begin-threshold blockquote{
    padding-left:18px;
  }

  .lantern-begin-section{
    padding:86px 0;
  }

  .lantern-begin-section--reading,
  .lantern-begin-section--prologue{
    padding-top:94px;
  }

  .lantern-begin-reader{
    width:calc(100% - 38px);
  }

  .lantern-begin-reader h2{
    margin-bottom:38px;
  }

  .lantern-begin-covenant{
    width:100%;
    padding:54px 28px 58px;
    border-radius:20px;
  }

  .lantern-begin-covenant:before{
    inset:9px;
    border-radius:14px;
  }

  .lantern-begin-questions{
    padding:28px 24px;
  }

  .lantern-begin-pause{
    padding:30px 14px;
  }

  .lantern-begin-trailhead{
    padding:50px 24px 54px;
    border-radius:20px;
  }
}

@media(max-width:420px){
  .lantern-begin-threshold{
    min-height:660px;
  }

  .lantern-begin-threshold__content{
    width:calc(100% - 36px);
  }

  .lantern-begin-threshold__inner{
    padding-top:280px;
    padding-bottom:54px;
  }

  .lantern-begin-trailhead__actions{
    flex-direction:column;
    align-items:stretch;
  }
}

@media(prefers-reduced-motion:reduce){
  .lantern-begin *{
    scroll-behavior:auto;
  }
}
