/* The Chronicle: self-contained page styles */
.chronicle-page{background:var(--dark)}
.chronicle-head{padding:56px 0 56px;border-bottom:1px solid #e5d3a326;background:linear-gradient(#141a16,#1c251d)}
.chronicle-head .eyebrow{color:var(--gold)}
.chronicle-head h2.chronicle-name{font-family:var(--serif);font-weight:400;font-size:clamp(46px,6vw,88px);line-height:1.05;letter-spacing:-.04em;margin:0 0 24px}
.book-title{padding:170px 0 64px;text-align:center;background:radial-gradient(ellipse at 50% 0,#2a3a2c,transparent 70%),#141a16;border-bottom:1px solid #e5d3a326}
.book-title-main{font-family:var(--serif);font-weight:400;font-size:clamp(48px,10vw,150px);line-height:1;letter-spacing:.14em;padding-left:.14em;color:var(--pale-gold);text-shadow:0 2px 30px #c4a46633}
.book-title-rule{display:block;width:min(360px,60%);height:1px;margin:34px auto 26px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.book-title-by{font-family:var(--serif);font-style:italic;font-size:clamp(18px,2vw,26px);letter-spacing:.12em;color:var(--cream)}
.chronicle-head p.lede{max-width:620px;font-family:var(--serif);font-size:20px;line-height:1.6;color:#d9d3c2;margin:0 0 30px}
.chronicle-list{list-style:none;margin:0;padding:0;max-width:880px}
.chronicle-entry{display:grid;grid-template-columns:110px 1fr;gap:28px;padding:34px 0;border-bottom:1px solid var(--line)}
.chronicle-day{font-size:10px;font-weight:650;letter-spacing:.2em;color:#75623d;text-transform:uppercase;padding-top:10px}
.chronicle-day strong{display:block;font-family:var(--serif);font-weight:400;font-size:44px;letter-spacing:-.03em;color:var(--ink);line-height:1;margin-top:6px}
.chronicle-entry h2{font-family:var(--serif);font-weight:400;font-size:clamp(28px,3vw,38px);line-height:1.15;letter-spacing:-.02em;margin:0 0 12px;color:var(--ink)}
.chronicle-entry p{font-family:var(--serif);font-size:17px;line-height:1.7;color:#3b4136;margin:0 0 18px;max-width:640px}
.button.dark{background:var(--olive);color:var(--pale-gold);border:1px solid #85734980}
.button.dark:hover{background:var(--dark);transform:translateY(-1px)}
.chronicle-cta{padding:90px 0;text-align:center;background:var(--olive);border-top:1px solid #e5d3a326}
.chronicle-cta h2{font-family:var(--serif);font-weight:400;margin:0 0 18px}
.chronicle-cta p{max-width:520px;margin:0 auto 30px;font-family:var(--serif);font-size:18px;line-height:1.6;color:#d9d3c2}
.chronicle-back{display:inline-block;margin:0 0 28px;color:var(--pale-gold);font-size:11px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
@media(max-width:600px){.book-title{padding:130px 0 44px}.book-title-main{letter-spacing:.08em;padding-left:.08em}.chronicle-head{padding:130px 0 40px}.chronicle-entry{grid-template-columns:1fr;gap:10px}.chronicle-day{padding-top:0}.chronicle-day strong{display:inline;font-size:30px;margin-left:10px}}

/* TRAIL */
.trail-section{background:var(--dark);padding:70px 0 90px;overflow:hidden}
.trail{list-style:none;margin:0 auto;padding:0;max-width:1000px;position:relative}
.trail:before{content:'';position:absolute;top:0;bottom:0;left:50%;width:120px;margin-left:-60px;background:url(/assets/trail.svg) repeat-y center top/120px 240px}
.stop{position:relative;width:50%;padding:0 64px 44px 0}
.stop:nth-child(even){margin-left:50%;padding:0 0 44px 64px}
.stop:after{content:'';position:absolute;top:34px;right:-9px;width:18px;height:18px;border-radius:50%;background:var(--gold);border:3px solid var(--dark);box-shadow:0 0 0 1px var(--gold),0 0 18px #c4a46680}
.stop:nth-child(even):after{right:auto;left:-9px}
.stop-card{position:relative;background:var(--cream);color:var(--ink);padding:26px 28px 28px;border:1px solid #c4a46670;box-shadow:0 18px 40px #0006;text-align:left}
.stop-card:before{content:'';position:absolute;top:36px;right:-9px;width:16px;height:16px;background:var(--cream);transform:rotate(45deg);border-top:1px solid #c4a46670;border-right:1px solid #c4a46670}
.stop:nth-child(even) .stop-card:before{right:auto;left:-9px;transform:rotate(225deg)}
.stop-day{display:block;font-size:10px;font-weight:650;letter-spacing:.2em;color:#75623d;text-transform:uppercase}
.stop-day strong{font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;color:var(--ink);margin-left:8px}
.stop-card h2{font-family:var(--serif);font-weight:400;font-size:clamp(24px,2.6vw,32px);line-height:1.15;letter-spacing:-.02em;margin:8px 0 12px;color:var(--ink)}
.stop-card p{font-family:var(--serif);font-size:16px;line-height:1.65;color:#3b4136;margin:0 0 18px}
.gate{width:100%;margin-left:0!important;padding:30px 0 0!important;text-align:center}
.gate:after{display:none}
.gate-card{max-width:520px;margin:0 auto;padding:60px 36px 44px;background:var(--olive);border:1px solid var(--gold);border-radius:200px 200px 0 0;box-shadow:0 18px 40px #0006;position:relative}
.gate-card .eyebrow{color:var(--gold);margin-bottom:14px}
.gate-card h2{font-family:var(--serif);font-weight:400;margin:0 0 14px}
.gate-card p:not(.eyebrow){font-family:var(--serif);font-size:18px;color:#d9d3c2;margin:0 0 26px}
.reviews{background:var(--olive);padding:80px 0;border-top:1px solid #e5d3a326}
.review-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.review{position:relative;padding:34px 24px 24px;border:1px solid #c4a46650;background:#141a16}
.stars{color:var(--gold);letter-spacing:.2em;margin:0 0 12px}
.review blockquote{margin:0 0 14px;font-family:var(--serif);font-size:17px;line-height:1.6;color:#d9d3c2}
.review cite{font-size:11px;letter-spacing:.12em;color:#b1b9ac;font-style:normal}
@media(max-width:800px){.review-list{grid-template-columns:1fr}.trail:before{left:20px;margin-left:-60px}.stop,.stop:nth-child(even){width:100%;margin-left:0;padding:0 0 32px 52px}.stop:after,.stop:nth-child(even):after{left:11px;right:auto}.stop-card:before,.stop:nth-child(even) .stop-card:before{left:-9px;right:auto;transform:rotate(225deg)}.gate{padding:20px 0 0 52px!important}.gate-card{border-radius:120px 120px 0 0;padding:50px 22px 36px}}

/* One man's journey, illustrated in ten stages. */
.trail{max-width:1040px}
.trail:before{left:336px}
.trail:after{display:none}
.stop,.stop:nth-child(even){display:grid;grid-template-columns:300px minmax(0,1fr);align-items:center;gap:72px;width:100%;margin-left:0;padding:0 0 64px;min-height:0}
.stop:after,.stop:nth-child(even):after{left:327px;right:auto;top:calc(50% - 41px)}
.stop .stop-card:before,.stop:nth-child(even) .stop-card:before{left:-9px;right:auto;top:50%;margin-top:-8px;transform:rotate(225deg)}
.journey-figure{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:14px}
.journey-art{--art-height:400px;display:block;flex:none;width:calc(var(--art-height) * var(--frame-ratio));height:var(--art-height);background-image:url(/assets/son-of-man-journey-v1.webp);background-repeat:no-repeat;filter:drop-shadow(0 15px 18px #0006)}
.journey-figure figcaption{display:flex;align-items:center;gap:12px;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--pale-gold)}
.journey-figure figcaption span{font-family:var(--serif);font-size:17px;font-weight:400;color:var(--gold);letter-spacing:.03em}
.gate.stop{display:block;padding:30px 0 0!important}
.journey-1{--frame-ratio:0.65322581;background-size:474.07407407% 206.45161290%;background-position:0.00000000% 0.00000000%}
.journey-2{--frame-ratio:0.59274194;background-size:522.44897959% 206.45161290%;background-position:26.08695652% 0.00000000%}
.journey-3{--frame-ratio:0.61290323;background-size:505.26315789% 206.45161290%;background-position:50.16233766% 0.00000000%}
.journey-4{--frame-ratio:0.61088710;background-size:506.93069307% 206.45161290%;background-position:74.77696675% 0.00000000%}
.journey-5{--frame-ratio:0.62701613;background-size:493.89067524% 206.45161290%;background-position:100.00000000% 0.00000000%}
.journey-6{--frame-ratio:0.57954545;background-size:501.96078431% 193.93939394%;background-position:0.00000000% 100.00000000%}
.journey-7{--frame-ratio:0.57954545;background-size:501.96078431% 193.93939394%;background-position:24.87804878% 100.00000000%}
.journey-8{--frame-ratio:0.57954545;background-size:501.96078431% 193.93939394%;background-position:49.75609756% 100.00000000%}
.journey-9{--frame-ratio:0.54924242;background-size:529.65517241% 193.93939394%;background-position:73.67576244% 100.00000000%}
.journey-10{--frame-ratio:0.62121212;background-size:468.29268293% 193.93939394%;background-position:100.00000000% 100.00000000%}
@media(max-width:1050px) and (min-width:801px){
  .stop,.stop:nth-child(even){grid-template-columns:240px minmax(0,1fr);gap:56px}
  .trail:before{left:268px}
  .stop:after,.stop:nth-child(even):after{left:259px}
  .journey-art{--art-height:350px}
}
@media(max-width:800px){
  .trail-section{padding-top:35px}
  .trail:before{left:16px}
  .stop,.stop:nth-child(even){grid-template-columns:minmax(0,1fr);gap:24px;padding:0 0 54px 44px}
  .journey-art{--art-height:340px}
  .journey-figure{gap:10px}
  .stop:after,.stop:nth-child(even):after{display:none}
  .stop .stop-card:after{content:'';position:absolute;top:29px;left:-38px;width:18px;height:18px;border-radius:50%;background:var(--gold);border:3px solid var(--dark);box-shadow:0 0 0 1px var(--gold),0 0 18px #c4a46680}
  .stop .stop-card:before,.stop:nth-child(even) .stop-card:before{top:30px;margin-top:0}
  .stop-card{padding:24px}
  .gate.stop{padding:20px 0 0 44px!important}
}
@media(max-width:380px){
  .stop,.stop:nth-child(even){padding-left:32px}
  .stop-card{padding:22px 18px}
  .stop .stop-card:after{left:-26px}
  .gate.stop{padding-left:32px!important}
}

/* REVIEWS visibility */
.reviews{background:var(--cream);color:var(--ink);padding:90px 0;border-top:1px solid var(--gold)}
.reviews-title{font-family:var(--serif);font-weight:400;font-size:clamp(34px,4vw,52px);letter-spacing:-.02em;color:var(--ink);text-align:center;margin:0 0 40px}
.review{background:var(--olive);border:1px solid var(--gold);padding:28px 26px;box-shadow:0 14px 30px #0003}
.stars{font-size:24px;color:var(--gold);letter-spacing:.15em;margin:0 0 14px}
.review blockquote{font-size:19px;color:var(--cream);margin:0 0 16px}
.review cite{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--pale-gold)}
