
:root{
  --bg:#061311;
  --bg2:#091b18;
  --panel:#0b211d;
  --teal:#0c5d55;
  --teal2:#149488;
  --gold:#d7aa4a;
  --gold2:#f0ca75;
  --ivory:#f5efe4;
  --muted:#c4c2b8;
  --line:rgba(215,170,74,.42);
  --shadow:0 24px 70px rgba(0,0,0,.38);
  --serif:"Cinzel", Georgia, serif;
  --sans:"Inter", Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{
  margin:0;
  background:var(--bg);
  color:var(--ivory);
  font-family:var(--sans);
  line-height:1.65;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.055;
  background-image:
    linear-gradient(45deg, rgba(215,170,74,.08) 25%, transparent 25%),
    linear-gradient(-45deg, rgba(215,170,74,.06) 25%, transparent 25%);
  background-size:36px 36px;
  z-index:999;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.section{position:relative}
.section-inner{width:min(1180px,calc(100% - 44px));margin-inline:auto}
.eyebrow{
  margin:0 0 14px;
  color:var(--gold2);
  font-size:.76rem;
  letter-spacing:.18em;
  font-weight:700;
}
h1,h2,h3,.brand{font-family:var(--serif)}
h2{
  margin:0 0 22px;
  font-size:clamp(2rem,4vw,3.6rem);
  line-height:1.05;
  font-weight:600;
}
p{margin:0 0 18px}
.reveal{opacity:0;transform:translateY(22px);transition:.75s ease}
.reveal.visible{opacity:1;transform:none}

/* HEADER */
.site-header{
  position:fixed;
  left:0;right:0;top:0;
  z-index:1000;
  background:linear-gradient(180deg,rgba(3,14,13,.96),rgba(3,14,13,.82));
  backdrop-filter:blur(11px);
  border-bottom:1px solid var(--line);
}
.nav-wrap{
  width:min(1260px,calc(100% - 36px));
  min-height:74px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.brand{
  color:var(--ivory);
  font-size:1.18rem;
  letter-spacing:.09em;
  white-space:nowrap;
}
.primary-nav{
  display:flex;
  align-items:center;
  gap:30px;
  font-size:.91rem;
}
.primary-nav>a:not(.nav-cta){color:#e7ddcb}
.primary-nav>a:not(.nav-cta):hover{color:var(--gold2)}
.nav-cta{
  padding:10px 17px;
  border:1px solid var(--gold);
  border-radius:4px;
  color:var(--gold2);
  font-weight:700;
}
.nav-cta:hover{background:var(--gold);color:#16110a}
.menu-toggle{display:none}

/* HERO */
.hero{
  min-height:790px;
  padding-top:74px;
  background-image:url("../images/hero-bg.webp");
  background-size:cover;
  background-position:center;
  position:relative;
  display:grid;
  align-items:center;
  overflow:hidden;
}
.hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:160px;
  background:linear-gradient(transparent,var(--bg));
  z-index:1;
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(2,11,10,.44),rgba(2,11,10,.24) 43%,rgba(2,11,10,.72) 100%),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.35));
}
.hero-grid{
  position:relative;
  z-index:2;
  width:min(1260px,calc(100% - 44px));
  margin:auto;
  display:grid;
  grid-template-columns:minmax(320px,.9fr) minmax(460px,1.15fr);
  gap:50px;
  align-items:center;
  padding:58px 0 70px;
}
.hero-book{
  display:flex;
  justify-content:center;
  filter:drop-shadow(0 34px 40px rgba(0,0,0,.5));
}
.hero-book img{max-height:650px;width:auto}
.hero-copy{max-width:720px}
.hero-copy h1{
  margin:0;
  font-size:clamp(2.8rem,5.6vw,5.7rem);
  line-height:.96;
  letter-spacing:-.035em;
  text-shadow:0 7px 18px rgba(0,0,0,.75);
}
.hero-copy h1 span{font-size:.92em}
.hero-copy h2{
  margin:13px 0 12px;
  color:var(--gold2);
  font-size:clamp(1.55rem,2.6vw,2.5rem);
  font-weight:600;
}
.hero-lead{
  max-width:650px;
  font-family:Georgia,serif;
  font-size:1.18rem;
  color:#f2ecdf;
  text-shadow:0 2px 8px rgba(0,0,0,.65);
}
.award{
  margin:28px 0;
  width:fit-content;
  max-width:640px;
  display:flex;
  align-items:center;
  gap:15px;
  padding:13px 20px 13px 12px;
  border:1px solid var(--gold);
  background:rgba(4,23,20,.72);
  box-shadow:inset 0 0 0 3px rgba(215,170,74,.12),0 8px 25px rgba(0,0,0,.25);
}
.award img{width:92px;height:92px;object-fit:contain;flex:0 0 auto}
.award strong{display:block;font-family:Georgia,serif;color:var(--gold2);font-size:1rem}
.award span{display:block;color:#f6ead2;font-size:.85rem}
.hero-actions,.buy-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}
.btn{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:48px;
  padding:12px 22px;
  border:1px solid transparent;
  border-radius:4px;
  font-weight:700;
  transition:.2s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-teal{background:#0a5d56;border-color:#148a7e;color:white}
.btn-teal:hover{background:#0d756b}
.btn-gold{background:linear-gradient(#efc867,#d9a842);color:#191207;border-color:#f3d27a;box-shadow:0 10px 22px rgba(0,0,0,.2)}
.btn-gold:hover{filter:brightness(1.08)}
.btn-large{padding:14px 26px;font-size:1.04rem}

/* QUOTE */
.quote-band{
  position:relative;
  z-index:4;
  text-align:center;
  padding:38px 24px 42px;
  background:
    radial-gradient(circle at center,rgba(18,67,59,.3),transparent 48%),
    linear-gradient(180deg,#07120f,#091915);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.quote-band blockquote{
  margin:0 auto 12px;
  max-width:1040px;
  font-family:Georgia,serif;
  color:#e7bd66;
  font-size:clamp(1.5rem,2.4vw,2.35rem);
  line-height:1.35;
}
.quote-band p{margin:0;color:#dbd3c6}
.ornament{
  width:180px;height:18px;margin:0 auto 16px;
  background:url("../images/icon-divider.webp") center/contain no-repeat;
  opacity:.85
}
.ornament.reverse{margin:16px auto 0;transform:rotate(180deg)}

/* STORY */
.story-section{
  padding:85px 0;
  background:
    radial-gradient(circle at 76% 28%,rgba(17,83,73,.18),transparent 33%),
    linear-gradient(135deg,#06110f,#0a1c19 55%,#07110f);
}
.split-grid{
  display:grid;
  grid-template-columns:.86fr 1.14fr;
  gap:76px;
  align-items:center;
}
.video-copy h2{
  font-family:Georgia,serif;
  font-size:clamp(1.7rem,3vw,2.8rem);
  line-height:1.15;
  font-weight:400;
}
.divider-icon{width:130px;max-height:34px;object-fit:contain;margin:18px 0 28px}
.phone-video{
  width:min(100%,360px);
  aspect-ratio:9/16;
  margin-inline:auto;
  border:1px solid rgba(215,170,74,.55);
  box-shadow:var(--shadow);
  background:#000;
  overflow:hidden;
  border-radius:8px;
}
.phone-video iframe{width:100%;height:100%;border:0}
.synopsis{
  padding:42px;
  border-left:1px solid var(--line);
  background:linear-gradient(90deg,rgba(255,255,255,.025),transparent);
}
.synopsis p{color:#d9d5cb;font-size:1.03rem}
.synopsis .question{
  margin-top:26px;
  color:var(--gold2);
  font-family:Georgia,serif;
  font-weight:700;
  font-size:1.23rem
}

/* THEMES */
.themes{padding:0 0 80px;background:#06110f}
.theme-grid{
  width:min(1320px,calc(100% - 32px));
  margin:auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.theme-card{
  position:relative;
  min-height:330px;
  overflow:hidden;
  border:1px solid rgba(215,170,74,.48);
  background-size:cover;
  background-position:center;
}
.theme-card.history{background-image:url("../images/history.webp")}
.theme-card.adventure{background-image:url("../images/adventure.webp")}
.theme-card.legend{background-image:url("../images/legend.webp")}
.theme-shade{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(4,12,10,.08),rgba(3,13,11,.86));
}
.theme-content{
  position:absolute;
  inset:auto 0 0;
  padding:25px 28px;
  text-align:center;
}
.theme-content img{width:70px;height:70px;object-fit:contain;margin:0 auto 7px}
.theme-content h3{margin:0;color:#fff;font-size:2rem}
.theme-content p{margin:5px 0 0;color:#eee5d7}

/* INNER JOURNEY */
.inner-journey{
  min-height:820px;
  padding:90px 0;
  background:url("../images/journey.webp") center/cover no-repeat;
  overflow:hidden;
}
.inner-shade{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(3,15,13,.96) 0%,rgba(3,15,13,.82) 42%,rgba(3,15,13,.45) 100%);
}
.journey-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.12fr .72fr;
  gap:90px;
  align-items:center;
}
.journey-copy{max-width:650px}
.journey-copy h2{font-family:Georgia,serif}
.journey-lead{
  color:var(--gold2);
  font-family:Georgia,serif;
  font-size:1.45rem;
  line-height:1.35
}
.journey-copy>p:last-child{max-width:610px;color:#d4d3c9}

/* AUTHOR */
.author-section{
  padding:86px 0;
  background:
    radial-gradient(circle at 15% 40%,rgba(17,107,94,.16),transparent 24%),
    linear-gradient(110deg,#071411,#09211d);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.author-grid{
  display:grid;
  grid-template-columns:300px 1fr;
  gap:60px;
  align-items:center;
}
.portrait-ring{
  width:255px;height:255px;
  border-radius:50%;
  padding:9px;
  border:1px solid var(--gold);
  box-shadow:0 0 0 10px rgba(215,170,74,.07),var(--shadow);
  background:linear-gradient(145deg,#d5a844,#0e5149);
}
.portrait-ring img{
  width:100%;height:100%;object-fit:cover;object-position:50% 28%;border-radius:50%;
}
.author-copy p{color:#d7d3c9}

/* CLOSING */
.closing-line{
  min-height:260px;
  display:grid;
  place-items:center;
  padding:60px 25px;
  background:
    linear-gradient(rgba(2,14,12,.68),rgba(2,14,12,.82)),
    url("../images/history.webp") center 45%/cover no-repeat;
  text-align:center;
  border-bottom:1px solid var(--line);
}
.closing-line p{
  max-width:900px;
  margin:0;
  color:#f2c867;
  font-family:Georgia,serif;
  font-size:clamp(1.8rem,3.7vw,3.4rem);
  font-style:italic;
}

/* BUY */
.buy-section{
  min-height:620px;
  display:flex;
  align-items:center;
  background:url("../images/cta-bg.webp") center/cover no-repeat;
  position:relative;
}
.buy-shade{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(2,13,11,.6),rgba(2,13,11,.8) 56%,rgba(2,13,11,.48));
}
.buy-grid{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:420px 1fr;
  gap:72px;
  align-items:center;
  padding:65px 0;
}
.buy-book{
  max-height:480px;
  width:auto;
  margin:auto;
  filter:drop-shadow(0 30px 32px rgba(0,0,0,.55));
}
.buy-copy{max-width:620px}
.buy-copy h2{font-family:Georgia,serif}
.buy-copy>p{font-size:1.08rem}
.formats{font-weight:700;color:#f1eadf}
.text-link{
  display:inline-flex;align-items:center;gap:8px;
  color:#6fd3c4;font-weight:700
}
.text-link img{width:27px;height:27px;object-fit:contain}

/* FOOTER */
.site-footer{
  background:#04100e;
  border-top:1px solid var(--line);
  padding:34px 0 12px;
}
.footer-inner{
  width:min(1180px,calc(100% - 44px));
  margin:auto;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:50px;
}
.footer-brand{display:flex;align-items:center;gap:16px;max-width:620px}
.footer-brand img{width:78px;height:78px;object-fit:contain}
.footer-brand strong{font-family:var(--serif);letter-spacing:.08em;color:var(--gold2)}
.footer-brand p{margin:4px 0 0;color:#bfb9ad;font-size:.88rem}
.footer-links{display:flex;gap:22px;flex-wrap:wrap;color:#e2d7c5;font-size:.88rem}
.footer-links a:hover{color:var(--gold2)}
.copyright{
  width:min(1180px,calc(100% - 44px));
  margin:26px auto 0;
  padding-top:12px;
  border-top:1px solid rgba(215,170,74,.18);
  color:#827f78;
  font-size:.75rem;
  text-align:center;
}

/* RESPONSIVE */
@media(max-width:980px){
  .primary-nav{
    position:absolute;
    top:74px;left:18px;right:18px;
    padding:18px;
    background:rgba(4,16,14,.98);
    border:1px solid var(--line);
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    box-shadow:var(--shadow);
  }
  .primary-nav.open{display:flex}
  .primary-nav a{padding:10px 8px}
  .menu-toggle{
    display:grid;
    width:44px;height:44px;
    padding:9px;
    background:transparent;
    border:1px solid rgba(215,170,74,.4);
    border-radius:4px;
  }
  .menu-toggle span{display:block;height:2px;background:var(--gold2);margin:auto 0;width:100%}

  .hero{min-height:auto}
  .hero-grid{
    grid-template-columns:1fr;
    gap:16px;
    padding-top:42px;
    text-align:center;
  }
  .hero-book{order:2}
  .hero-book img{max-height:470px}
  .hero-copy{order:1;margin:auto}
  .award{margin:24px auto}
  .hero-actions{justify-content:center}

  .split-grid,.journey-grid,.author-grid,.buy-grid{grid-template-columns:1fr}
  .split-grid{gap:55px}
  .synopsis{border-left:0;border-top:1px solid var(--line);padding:34px 0 0}
  .theme-grid{grid-template-columns:1fr}
  .theme-card{min-height:350px}
  .inner-journey{min-height:auto}
  .inner-shade{background:rgba(3,15,13,.82)}
  .journey-grid{gap:45px}
  .author-grid{text-align:center}
  .portrait-ring{margin:auto}
  .buy-grid{text-align:center;gap:35px}
  .buy-book{max-height:420px}
  .buy-actions{justify-content:center}
  .footer-inner{flex-direction:column;text-align:center}
  .footer-brand{flex-direction:column}
  .footer-links{justify-content:center}
}
@media(max-width:620px){
  .section-inner{width:min(100% - 30px,1180px)}
  .brand{font-size:1rem}
  .hero-grid{width:min(100% - 24px,1260px)}
  .hero-copy h1{font-size:2.6rem}
  .hero-copy h2{font-size:1.45rem}
  .hero-lead{font-size:1rem}
  .award{align-items:flex-start;text-align:left}
  .award img{width:46px;height:46px}
  .hero-actions .btn{width:100%}
  .quote-band{padding:34px 17px}
  .quote-band blockquote{font-size:1.35rem}
  .story-section,.author-section,.inner-journey{padding:65px 0}
  .synopsis p{font-size:.97rem}
  .theme-grid{width:calc(100% - 18px)}
  .theme-card{min-height:300px}
  .portrait-ring{width:215px;height:215px}
  .buy-section{min-height:auto}
  .buy-book{max-height:350px}
  .buy-actions .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
  .btn:hover{transform:none}
}


/* Updated user-provided icon assets */
.video-frame-wrap{
  position:relative;
  width:min(100%,390px);
  margin-inline:auto;
}
.video-frame-wrap .phone-video{
  width:100%;
}
.video-mark{
  position:absolute;
  z-index:3;
  width:64px;
  height:64px;
  object-fit:contain;
  left:-26px;
  top:-26px;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.42));
  pointer-events:none;
}
.closing-line{
  grid-template-rows:auto auto;
  gap:14px;
}
.closing-icon{
  width:82px;
  height:82px;
  object-fit:contain;
  margin:auto;
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.35));
}
@media(max-width:620px){
  .award img{width:72px;height:72px}
  .video-mark{width:50px;height:50px;left:-12px;top:-18px}
  .closing-icon{width:68px;height:68px}
}


/* V3 — purchase choices, PDF sample, social/contact links */
.store-note{
  margin:22px 0 18px;
  padding:14px 16px;
  border-left:3px solid var(--gold);
  background:rgba(4,23,20,.64);
}
.store-note strong{display:block;color:var(--gold2);margin-bottom:2px}
.store-note span{display:block;color:#e7dfd0;font-size:.92rem}

.amazon-buttons{
  display:flex;
  gap:14px;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:18px;
}
.btn-outline{
  background:rgba(4,23,20,.72);
  border-color:var(--gold);
  color:var(--gold2);
}
.btn-outline:hover{
  background:rgba(215,170,74,.13);
  border-color:var(--gold2);
}
.sample-link{
  margin-top:2px;
  width:fit-content;
}

.site-footer .footer-inner{
  align-items:flex-start;
}
.contact-links{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:260px;
}
.contact-link{
  display:flex;
  align-items:center;
  gap:10px;
  color:#e8dfd0;
  font-size:.9rem;
  transition:.2s ease;
}
.contact-link:hover{color:var(--gold2)}
.contact-link img{
  width:27px;
  height:27px;
  object-fit:contain;
}
.social-badge{
  width:27px;
  height:27px;
  border:1px solid var(--gold);
  border-radius:7px;
  display:inline-grid;
  place-items:center;
  font-size:.68rem;
  font-weight:800;
  color:var(--gold2);
  background:rgba(10,93,86,.28);
}
.social-fb{
  border-radius:50%;
  font-family:Arial,sans-serif;
  font-size:1rem;
  text-transform:none;
}

@media(max-width:980px){
  .contact-links{align-items:center}
  .amazon-buttons{justify-content:center}
}
@media(max-width:620px){
  .amazon-buttons .btn{width:100%}
}


/* V4 refinements */
.amazon-buttons .btn{
  min-width: 220px;
  justify-content:center;
}
.amazon-buttons{
  gap: 16px;
}

.contact-link{
  display:flex;
  align-items:center;
  gap:12px;
}

.contact-social-icon{
  width:34px !important;
  height:34px !important;
  object-fit:contain;
  flex: 0 0 34px;
}

.contact-email-icon{
  width:20px !important;
  height:20px !important;
  object-fit:contain;
  flex: 0 0 20px;
}

.social-badge{
  display:none !important;
}

.sample-link img{
  width:42px !important;
  height:42px !important;
  object-fit:contain;
  vertical-align:middle;
}

.sample-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:1.18rem;
  line-height:1.2;
}

@media(max-width:620px){
  .contact-social-icon{width:30px !important;height:30px !important;}
  .sample-link img{width:38px !important;height:38px !important;}
}


/* V5 final adjustments requested by user */
.contact-social-icon{
  width:46px !important;
  height:46px !important;
  object-fit:contain;
  flex: 0 0 46px;
  display:block;
  filter: drop-shadow(0 4px 10px rgba(0,0,0,.20));
}

.contact-email-icon{
  width:30px !important;
  height:30px !important;
  object-fit:contain;
  flex: 0 0 30px;
  display:block;
  filter: drop-shadow(0 4px 10px rgba(0,0,0,.18));
}

.contact-link{
  display:flex;
  align-items:center;
  gap:12px;
}

.sample-link img{
  width:56px !important;
  height:56px !important;
  object-fit:contain;
  vertical-align:middle;
  flex: 0 0 56px;
}

.sample-link{
  display:inline-flex;
  align-items:center;
  gap:12px;
  font-size:1.18rem;
  line-height:1.2;
}

.amazon-buttons{
  display:flex;
  gap:16px;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:18px;
}
.amazon-buttons .btn{
  min-width:220px;
  justify-content:center;
}
.amazon-buttons .btn-outline{
  background:var(--gold);
  color:#1b1609;
  border-color:var(--gold);
}

.portrait-ring img{
  image-rendering:auto;
  object-fit:cover;
  object-position:50% 28%;
}

@media(max-width:620px){
  .contact-social-icon{
    width:40px !important;
    height:40px !important;
    flex-basis:40px;
  }
  .contact-email-icon{
    width:26px !important;
    height:26px !important;
    flex-basis:26px;
  }
  .sample-link img{
    width:46px !important;
    height:46px !important;
    flex-basis:46px;
  }
}


/* V6 final footer and sample-icon sizing overrides */
:root{
  --final-icon-size: 72px;
}

.sample-link,
.contact-link{
  align-items:center !important;
}

.sample-link img,
.contact-social-icon,
.contact-email-icon{
  width: var(--final-icon-size) !important;
  height: var(--final-icon-size) !important;
  max-width: var(--final-icon-size) !important;
  max-height: var(--final-icon-size) !important;
  object-fit: contain !important;
  flex: 0 0 var(--final-icon-size) !important;
  display:block !important;
}

.contact-links{
  gap: 14px !important;
}

.contact-link{
  gap: 12px !important;
  font-size: .95rem;
}

.footer-brand img{
  width: 64px;
  height: 64px;
}

/* keep footer icons harmonious and clearly smaller than the seal */
.contact-social-icon,
.contact-email-icon{
  filter: drop-shadow(0 4px 10px rgba(0,0,0,.18));
}

@media(max-width:620px){
  :root{
    --final-icon-size: 58px;
  }
}
