/*
THE FORTRESS OF MEMORIES
MA CAVALIERE
VISUAL FAMILY: MY SECRET GARDEN / MY DREAM
TEXT UNCHANGED
*/

#meski-memory-cavaliere.cavaliere-page{
  --c-ivory:#f7f2e8;
  --c-paper:#efe6d8;
  --c-paper-light:#fbf8f1;
  --c-ink:#191713;
  --c-brown:#695d50;
  --c-green:#16281e;
  --c-green-deep:#0b1811;
  --c-gold:#c3a04e;
  --c-gold-soft:#e7d191;
  --c-line:rgba(154,106,32,.21);
  --c-max:1380px;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  overflow:hidden;
  background:var(--c-ivory);
  color:var(--c-ink);
  font-family:"Jost",Arial,sans-serif;
}

#meski-memory-cavaliere,
#meski-memory-cavaliere *{box-sizing:border-box;}

#meski-memory-cavaliere img{
  display:block;
  width:100%;
  height:auto;
}

#meski-memory-cavaliere .cavaliere-shell,
#meski-memory-cavaliere .cavaliere-wide{
  width:min(calc(100% - 72px),var(--c-max));
  margin-inline:auto;
}

#meski-memory-cavaliere .cavaliere-reading{
  width:min(calc(100% - 44px),760px);
  margin-inline:auto;
}

#meski-memory-cavaliere .cavaliere-kicker,
#meski-memory-cavaliere .cavaliere-french{
  margin:0 0 18px;
  color:var(--c-gold);
  font-size:10px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.21em;
  text-transform:uppercase;
}

#meski-memory-cavaliere .cavaliere-kicker--light{
  color:var(--c-gold-soft);
}

#meski-memory-cavaliere h2{
  margin:0 0 30px;
  color:var(--c-green);
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:clamp(48px,5.6vw,78px);
  font-weight:500;
  line-height:.98;
  letter-spacing:-.045em;
}

#meski-memory-cavaliere p{
  text-wrap:pretty;
}


/* HERO */

#meski-memory-cavaliere .cavaliere-hero{
  position:relative;
  min-height:88vh;
  isolation:isolate;
  color:#fff;
  background:
    var(--cavaliere-hero) center/cover no-repeat,
    var(--c-green-deep);
}

#meski-memory-cavaliere .cavaliere-hero__veil{
  position:absolute;
  z-index:-1;
  inset:0;
  background:
    linear-gradient(90deg,
      rgba(6,15,10,.88) 0%,
      rgba(6,15,10,.66) 35%,
      rgba(6,15,10,.24) 64%,
      rgba(6,15,10,.05) 100%),
    linear-gradient(180deg,
      rgba(0,0,0,.04),
      rgba(0,0,0,.12) 60%,
      rgba(0,0,0,.54));
}

#meski-memory-cavaliere .cavaliere-hero__inner{
  position:relative;
  min-height:inherit;
}

#meski-memory-cavaliere .cavaliere-topbar{
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  background:transparent;
  border-bottom:1px solid rgba(255,255,255,.18);
}

#meski-memory-cavaliere .cavaliere-brand{
  display:grid;
  text-decoration:none;
}

#meski-memory-cavaliere .cavaliere-brand strong{
  color:var(--c-gold-soft);
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:26px;
  font-weight:500;
  letter-spacing:.16em;
}

#meski-memory-cavaliere .cavaliere-brand span{
  margin-top:5px;
  color:rgba(255,255,255,.62);
  font-size:8px;
  letter-spacing:.2em;
  text-transform:uppercase;
}

#meski-memory-cavaliere .cavaliere-return{
  color:rgba(255,255,255,.80);
  font-size:9px;
  font-weight:600;
  letter-spacing:.16em;
  text-decoration:none;
  text-transform:uppercase;
}

#meski-memory-cavaliere .cavaliere-hero__content{
  position:absolute;
  left:0;
  bottom:92px;
  width:min(790px,78vw);
}

#meski-memory-cavaliere .cavaliere-french{
  color:var(--c-gold-soft);
}

#meski-memory-cavaliere .cavaliere-hero h1{
  margin:0 0 24px;
  color:#fffaf0;
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:clamp(78px,9.5vw,140px);
  font-weight:500;
  line-height:.84;
  letter-spacing:-.065em;
}

#meski-memory-cavaliere .cavaliere-deck{
  margin:0;
  color:rgba(255,250,240,.92);
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:clamp(25px,3vw,42px);
  font-style:italic;
  line-height:1.38;
}


/* COMMON TEXT */

#meski-memory-cavaliere .cavaliere-opening p,
#meski-memory-cavaliere .cavaliere-lessons__copy p,
#meski-memory-cavaliere .cavaliere-meski__content p,
#meski-memory-cavaliere .cavaliere-own-memory p,
#meski-memory-cavaliere .cavaliere-generations__copy p,
#meski-memory-cavaliere .cavaliere-black-horse__copy p,
#meski-memory-cavaliere .cavaliere-money p,
#meski-memory-cavaliere .cavaliere-letter__content p{
  margin:0 0 20px;
  color:var(--c-brown);
  font-size:18px;
  line-height:1.82;
}

#meski-memory-cavaliere .cavaliere-lead{
  color:var(--c-green)!important;
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:clamp(27px,3vw,39px)!important;
  font-style:italic;
  line-height:1.45!important;
}

#meski-memory-cavaliere .cavaliere-photo{
  margin:0;
}


/* OPENING */

#meski-memory-cavaliere .cavaliere-opening{
  padding-top:clamp(120px,14vw,190px);
  padding-bottom:clamp(105px,12vw,165px);
}


/* PROMISE */

#meski-memory-cavaliere .cavaliere-promise{
  padding:clamp(72px,8vw,110px) 0;
  text-align:center;
  border-top:1px solid var(--c-line);
  border-bottom:1px solid var(--c-line);
}

#meski-memory-cavaliere .cavaliere-promise p{
  margin:0 0 25px;
  color:#8a7a69;
  font-size:14px;
  line-height:1.6;
}

#meski-memory-cavaliere .cavaliere-promise blockquote{
  margin:0;
  padding:0;
  border:0;
  color:var(--c-green);
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:clamp(54px,7vw,100px);
  font-style:italic;
  font-weight:500;
  line-height:.98;
  letter-spacing:-.05em;
}


/* LESSONS */

#meski-memory-cavaliere .cavaliere-lessons{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:clamp(60px,7vw,110px);
  align-items:center;
  padding-top:clamp(120px,14vw,190px);
  padding-bottom:clamp(120px,14vw,190px);
}

#meski-memory-cavaliere .cavaliere-photo--portrait{
  padding:16px;
  border:1px solid var(--c-line);
  background:#fffaf0;
}

#meski-memory-cavaliere .cavaliere-photo--portrait img{
  width:100%;
  height:auto;
  object-fit:contain;
  box-shadow:none;
}

#meski-memory-cavaliere .cavaliere-lessons__strong{
  margin-top:35px!important;
  color:var(--c-green)!important;
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:clamp(30px,3.6vw,44px)!important;
  font-style:italic;
  line-height:1.3!important;
}


/* MESKI */

#meski-memory-cavaliere .cavaliere-meski{
  position:relative;
  min-height:92vh;
  display:flex;
  align-items:flex-end;
  isolation:isolate;
  color:#fff;
  background:
    var(--meski-image) center/cover no-repeat,
    var(--c-green-deep);
}

#meski-memory-cavaliere .cavaliere-meski__veil{
  position:absolute;
  z-index:-1;
  inset:0;
  background:
    linear-gradient(90deg,
      rgba(6,15,10,.95),
      rgba(6,15,10,.72) 48%,
      rgba(6,15,10,.20) 80%),
    linear-gradient(180deg,
      rgba(0,0,0,.02),
      rgba(0,0,0,.66));
}

#meski-memory-cavaliere .cavaliere-meski__content{
  padding-top:clamp(90px,10vw,140px);
  padding-bottom:clamp(90px,10vw,140px);
}

#meski-memory-cavaliere .cavaliere-meski__content h2{
  color:#fffaf0;
}

#meski-memory-cavaliere .cavaliere-meski__content p{
  width:min(680px,72vw);
  color:rgba(255,250,240,.84);
}


/* OWN MEMORY */

#meski-memory-cavaliere .cavaliere-own-memory{
  padding-top:clamp(120px,14vw,195px);
  padding-bottom:clamp(120px,14vw,195px);
}

#meski-memory-cavaliere .cavaliere-own-memory__quote{
  margin-top:42px!important;
  color:var(--c-green)!important;
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:clamp(32px,4vw,50px)!important;
  font-style:italic;
  line-height:1.35!important;
}


/* GENERATIONS */

#meski-memory-cavaliere .cavaliere-generations{
  padding:clamp(95px,11vw,145px) 0;
  background:var(--c-green);
  color:#fff;
}

#meski-memory-cavaliere .cavaliere-generations__inner{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:clamp(60px,8vw,120px);
}

#meski-memory-cavaliere .cavaliere-generations__title h2{
  color:#fffaf0;
  font-size:clamp(48px,5.6vw,76px);
}

#meski-memory-cavaliere .cavaliere-generations__copy p{
  color:rgba(255,250,240,.79);
}


/* BLACK HORSE */

#meski-memory-cavaliere .cavaliere-black-horse{
  padding:clamp(110px,14vw,190px) 0;
  background:var(--c-green-deep);
}

#meski-memory-cavaliere .cavaliere-black-horse__inner{
  display:flex;
  justify-content:center;
}

#meski-memory-cavaliere .cavaliere-black-horse__copy{
  width:min(100%,820px);
  text-align:center;
}

#meski-memory-cavaliere .cavaliere-black-horse__copy h2{
  color:#fffaf0;
  font-size:clamp(60px,7vw,96px);
}

#meski-memory-cavaliere .cavaliere-black-horse__copy p{
  color:rgba(255,250,240,.78);
}

#meski-memory-cavaliere .cavaliere-black-horse__copy p:nth-of-type(2){
  margin:34px 0!important;
  color:var(--c-gold-soft)!important;
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:clamp(34px,4.8vw,60px)!important;
  font-style:italic;
  line-height:1.2!important;
}


/* MONEY */

#meski-memory-cavaliere .cavaliere-money{
  padding-top:clamp(120px,14vw,190px);
  padding-bottom:clamp(120px,14vw,190px);
}


/* LETTER */

#meski-memory-cavaliere .cavaliere-letter{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:flex-end;
  isolation:isolate;
  color:#fff;
  background:
    var(--letter-image) center/cover no-repeat,
    var(--c-green-deep);
}

#meski-memory-cavaliere .cavaliere-letter__veil{
  position:absolute;
  z-index:-1;
  inset:0;
  background:
    linear-gradient(90deg,
      rgba(6,15,10,.95),
      rgba(6,15,10,.72) 50%,
      rgba(6,15,10,.18) 82%),
    linear-gradient(180deg,
      rgba(0,0,0,.04),
      rgba(0,0,0,.72));
}

#meski-memory-cavaliere .cavaliere-letter__content{
  padding-top:clamp(90px,10vw,140px);
  padding-bottom:clamp(90px,10vw,140px);
}

#meski-memory-cavaliere .cavaliere-letter__content h2{
  color:#fffaf0;
}

#meski-memory-cavaliere .cavaliere-letter__content p{
  width:min(690px,72vw);
  color:rgba(255,250,240,.86);
}

#meski-memory-cavaliere .cavaliere-letter__last{
  margin-top:48px!important;
  color:var(--c-gold-soft)!important;
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:clamp(38px,5vw,66px)!important;
  font-style:italic;
  line-height:1.18!important;
}


/* FOOTER */

#meski-memory-cavaliere .cavaliere-footer{
  width:100%;
  background:var(--c-green-deep);
}

#meski-memory-cavaliere .cavaliere-footer__inner{
  min-height:105px;
  display:flex;
  align-items:center;
  border-top:1px solid rgba(231,209,145,.15);
}

#meski-memory-cavaliere .cavaliere-footer a{
  display:grid;
  text-decoration:none;
}

#meski-memory-cavaliere .cavaliere-footer span{
  color:var(--c-gold);
  font-size:9px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

#meski-memory-cavaliere .cavaliere-footer strong{
  margin-top:5px;
  color:#fffaf0;
  font-family:"Bodoni Moda",Georgia,serif;
  font-size:23px;
  font-weight:500;
}


/* TABLET */

@media(max-width:1080px){

  #meski-memory-cavaliere .cavaliere-generations__inner{
    grid-template-columns:1fr;
  }
}


/* MOBILE */

@media(max-width:820px){

  #meski-memory-cavaliere .cavaliere-shell,
  #meski-memory-cavaliere .cavaliere-wide{
    width:min(calc(100% - 30px),var(--c-max));
  }

  #meski-memory-cavaliere .cavaliere-topbar{
    min-height:80px;
  }

  #meski-memory-cavaliere .cavaliere-brand strong{
    font-size:21px;
  }

  #meski-memory-cavaliere .cavaliere-return{
    max-width:145px;
    text-align:right;
    font-size:8px;
  }

  #meski-memory-cavaliere .cavaliere-hero{
    min-height:84svh;
    background-position:58% center;
  }

  #meski-memory-cavaliere .cavaliere-hero__content{
    bottom:65px;
    width:100%;
  }

  #meski-memory-cavaliere .cavaliere-hero h1{
    font-size:clamp(64px,17.5vw,96px);
  }

  #meski-memory-cavaliere h2{
    font-size:clamp(42px,11.8vw,58px);
  }

  #meski-memory-cavaliere .cavaliere-lessons{
    grid-template-columns:1fr;
  }

  #meski-memory-cavaliere .cavaliere-photo--portrait{
    padding:12px;
  }

  #meski-memory-cavaliere .cavaliere-meski{
    min-height:94svh;
    background-position:62% center;
  }

  #meski-memory-cavaliere .cavaliere-meski__content p,
  #meski-memory-cavaliere .cavaliere-letter__content p{
    width:100%;
  }

  #meski-memory-cavaliere .cavaliere-letter{
    min-height:100svh;
    background-position:62% center;
  }
}


/* NARROW MOBILE */

@media(max-width:540px){

  #meski-memory-cavaliere .cavaliere-footer__inner{
    min-height:0;
    padding:30px 0;
  }
}
