/*
Theme Name:  Neve BTE Child
Template:    neve
Version:     3.0.0
Description: Brand layer for Better Than Ever — warm brown & gold over cream
             ("leather and candlelight"). Structure comes from Neve + Neve Pro;
             this adds brand color, premium type, and the modern/interactive
             motion layer. All colors mirror Neve's global palette so the
             Customizer stays the source of truth.
*/

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Lato:wght@300;400;700&display=swap');

:root {
  --bte-brown:       #3B2A1E;  /* espresso — primary dark bg            */
  --bte-brown-dark:  #26190F;  /* deep espresso — footer / deepest      */
  --bte-brown-mid:   #6B4A33;  /* walnut — borders / secondary accents  */
  --bte-gold:        #C9A84C;  /* primary accent                        */
  --bte-gold-light:  #E2C97E;  /* glow / hover                          */
  --bte-gold-dark:   #9E7A2C;  /* button hover / dark accents           */
  --bte-cream:       #F9F5EE;  /* site bg                               */
  --bte-cream-warm:  #F3E9D6;  /* cards / blockquotes / bands           */
  --bte-text:        #2A2118;  /* body text on cream                    */
  --bte-muted:       #C9BBA8;  /* muted text on dark                    */
  --bte-shadow:      rgba(38,25,15,.18);
  --bte-shadow-lg:   rgba(38,25,15,.32);
}

html { scroll-behavior: smooth; }

body {
  background: #1E1611;          /* deep espresso — dark theme */
  color: #EDE4D6;
}
:root {
  --bte-page:  #1E1611;   /* page bg            */
  --bte-band:  #271C14;   /* alternating band  */
  --bte-panel: #2E2117;   /* cards / panels    */
  --bte-line:  #4A3525;   /* panel borders     */
  --bte-ink:   #EDE4D6;   /* body text on dark */
}

/* ── Headings get a touch more presence ──────────────────────────────────── */
h1, h2, h3, h4, .wp-block-heading {
  font-family: 'Cormorant Garamond', Georgia, serif;
  letter-spacing: .2px;
}

/* Decorative gold rule used under section headings (add class .bte-rule) */
.bte-rule:after,
.bte-section-title h2:after {
  content: "";
  display: block;
  width: 64px;
  height: 3px;
  margin: 18px auto 0;
  background: linear-gradient(90deg, var(--bte-gold), var(--bte-gold-light));
  border-radius: 3px;
}

/* ── Links ──────────────────────────────────────────────────────────────── */
a { color: var(--bte-gold-dark); }
a:hover { color: var(--bte-gold); }

/* ── Buttons: gold pill with lift ────────────────────────────────────────── */
.wp-block-button__link,
.button, button:not(.menu-toggle):not(.navbar-toggle),
input[type=submit] {
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.button:hover, input[type=submit]:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(201,168,76,.35);
}
/* Outline buttons → gold outline that fills on hover */
.wp-block-button.is-style-outline .wp-block-button__link {
  border: 2px solid var(--bte-gold) !important;
  color: var(--bte-gold-dark) !important;
  transition: all .2s ease;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--bte-gold) !important;
  color: var(--bte-brown) !important;
  transform: translateY(-2px);
}

/* ── Scripture blockquotes (used throughout module content) ───────────────── */
blockquote {
  border-left: 3px solid var(--bte-gold);
  background: var(--bte-panel);
  padding: 1.35rem 1.6rem;
  border-radius: 0 8px 8px 0;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.2rem;
  font-style: italic;
  color: #EDE4D6;
  box-shadow: 0 6px 18px rgba(0,0,0,.3);
}

/* ── Hero / dark cover sections: warm gradient + gold glow ────────────────── */
/* Paint the gradient onto the (opaque) overlay so the brown stays rich and the
   white hero text keeps full contrast. */
.wp-block-cover .wp-block-cover__background.has-background-dim {
  background-image:
    radial-gradient(120% 90% at 50% 0%, rgba(201,168,76,.20) 0%, rgba(201,168,76,0) 55%),
    linear-gradient(160deg, var(--bte-brown) 0%, var(--bte-brown-dark) 100%) !important;
  opacity: 1 !important;
}

/* ── Dark "value stack" bands ────────────────────────────────────────────── */
.bte-value-stack {
  background: linear-gradient(160deg, var(--bte-brown) 0%, var(--bte-brown-dark) 100%) !important;
  border-top: 1px solid rgba(201,168,76,.25);
  border-bottom: 1px solid rgba(201,168,76,.25);
}

/* ════════════════════════════════════════════════════════════════════════
   MOTION LAYER — scroll reveal + sticky header (paired with assets/bte.js)
   ════════════════════════════════════════════════════════════════════════ */
.bte-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .7s ease, transform .7s ease;
  will-change: opacity, transform;
}
.bte-reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .bte-reveal { opacity: 1; transform: none; transition: none; }
  html { scroll-behavior: auto; }
}

/* Sticky/condensing header */
.bte-scrolled .header-main,
.bte-scrolled .hfg-header .header-main {
  box-shadow: 0 6px 22px rgba(38,25,15,.28);
  transition: box-shadow .3s ease;
}

/* ════════════════════════════════════════════════════════════════════════
   LIFTERLMS — recolored to brown/gold over the Neve Pro Booster
   ════════════════════════════════════════════════════════════════════════ */
/* Course cards: espresso with gold hover ring + image zoom */
.llms-course-list .llms-loop-item-content,
.llms-loop-item .llms-loop-item-content {
  background: var(--bte-brown);
  border: 1px solid rgba(201,168,76,.20);
  border-radius: 14px;
  overflow: hidden;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.llms-course-list .llms-loop-item-content:hover,
.llms-loop-item .llms-loop-item-content:hover {
  transform: translateY(-6px);
  border-color: rgba(201,168,76,.55);
  box-shadow: 0 20px 48px rgba(38,25,15,.40);
}
.llms-loop-item .llms-featured-image,
.llms-loop-item-content .llms-featured-image { overflow: hidden; }
.llms-loop-item .llms-featured-image img { transition: transform .5s ease; display:block; }
.llms-loop-item-content:hover .llms-featured-image img { transform: scale(1.06); }

.llms-course-list .llms-loop-title,
.llms-course-list .llms-loop-title:hover,
.llms-loop-item .llms-loop-title a {
  color: #fff;
  font-family: 'Cormorant Garamond', serif;
}
.llms-course-list .llms-loop-item-content .llms-meta-info,
.llms-course-list .llms-loop-item-content p,
.llms-loop-item .llms-meta-info { color: rgba(255,255,255,.66); }

/* Hide the placeholder instructor avatar on catalog cards (cleaner grid) */
.llms-loop-item .llms-author { display: none; }
/* Hide the empty "Course Instructor / Author" block on single course pages
   until a real instructor profile is added. */
.llms-instructor-info { display: none; }

/* Progress bars: gold */
.llms-progress .llms-progress-bar-complete,
.llms-progress-bar .progress-bar-complete { background-color: var(--bte-gold) !important; }
.llms-progress .llms-progress-bar { background-color: rgba(107,74,51,.25); }

/* LLMS buttons: gold pill */
.llms-button-primary,
.llms-button-action,
.llms-field-button button {
  background: var(--bte-gold) !important;
  color: var(--bte-brown) !important;
  border-radius: 50px !important;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: .8rem;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
}
.llms-button-primary:hover,
.llms-button-action:hover {
  background: var(--bte-gold-dark) !important;
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(201,168,76,.35);
}

/* Lesson navigation */
.llms-lesson-preview .llms-lesson-link { border-radius: 12px; transition: box-shadow .25s ease; }
.llms-lesson-preview .llms-lesson-link:hover { box-shadow: 0 10px 26px var(--bte-shadow); }
.llms-lesson-complete, .llms-lesson-complete-placeholder { color: var(--bte-gold-dark); }

/* Student dashboard */
.llms-sd-nav .llms-sd-items .llms-sd-item.current a { color: var(--bte-gold-dark); }

/* ── PMPro checkout: match brand ─────────────────────────────────────────── */
#pmpro_form input[type=submit], .pmpro_btn {
  background: var(--bte-gold) !important;
  color: var(--bte-brown) !important;
  border-radius: 50px !important;
  border: none !important;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .05em;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
}
#pmpro_form input[type=submit]:hover, .pmpro_btn:hover {
  background: var(--bte-gold-dark) !important;
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(201,168,76,.35);
}

/* ── Locked-content notice ───────────────────────────────────────────────── */
.llms-access-plan, .pmpro_content_message {
  background: linear-gradient(160deg, var(--bte-brown) 0%, var(--bte-brown-dark) 100%);
  color: rgba(255,255,255,.82);
  border-radius: 14px;
  padding: 2rem;
  border: 1px solid rgba(201,168,76,.30);
  text-align: center;
}
.pmpro_content_message a { color: var(--bte-gold-light); }

/* ════════════════════════════════════════════════════════════════════════
   EARLY-ACCESS SIGNUP FORM  [bte_signup]
   ════════════════════════════════════════════════════════════════════════ */
.bte-signup { max-width: 460px; margin: 0 auto; }
.bte-signup--card {
  background: linear-gradient(165deg, rgba(59,42,30,.96), rgba(38,25,15,.98));
  border: 1px solid rgba(201,168,76,.35);
  border-radius: 16px;
  padding: 32px 30px;
  box-shadow: 0 24px 60px rgba(38,25,15,.45);
  backdrop-filter: blur(2px);
}
.bte-signup__title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.7rem; line-height: 1.15; margin: 0 0 6px;
}
.bte-signup--card .bte-signup__title { color: #fff; }
.bte-signup__sub { font-size: .95rem; margin: 0 0 18px; }
.bte-signup--card .bte-signup__sub { color: var(--bte-muted); }
.bte-signup__input {
  width: 100%; display: block; margin: 0 0 12px;
  padding: 13px 16px; font-size: 1rem;
  border-radius: 10px; border: 1px solid rgba(201,168,76,.35);
  background: rgba(255,255,255,.97); color: var(--bte-text);
  box-sizing: border-box;
}
.bte-signup__input:focus { outline: none; border-color: var(--bte-gold); box-shadow: 0 0 0 3px rgba(201,168,76,.25); }
.bte-signup__btn {
  width: 100%; cursor: pointer; border: none;
  padding: 14px 22px; border-radius: 50px;
  background: var(--bte-gold); color: var(--bte-brown);
  font-weight: 700; letter-spacing: .06em; text-transform: uppercase; font-size: .85rem;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
}
.bte-signup__btn:hover { background: var(--bte-gold-dark); color: #fff; transform: translateY(-2px); box-shadow: 0 10px 24px rgba(201,168,76,.4); }
.bte-signup__btn:disabled { opacity: .7; cursor: default; transform: none; }
.bte-signup__msg { font-size: .9rem; margin: 12px 0 0; min-height: 1em; }
.bte-signup__msg.is-ok  { color: #7CCB8E; }
.bte-signup__msg.is-err { color: #E89A8A; }
.bte-signup--bare .bte-signup__msg.is-ok { color: #2f7d44; }
.bte-signup--bare .bte-signup__msg.is-err { color: #b23b22; }
.bte-signup__fine { font-size: .72rem; letter-spacing: .03em; margin: 14px 0 0; }
.bte-signup--card .bte-signup__fine { color: rgba(255,255,255,.45); }
.bte-signup--bare .bte-signup__fine { color: #8a7a66; }
.bte-signup--bare .bte-signup__title { color: var(--bte-brown); }
.bte-signup--bare .bte-signup__sub { color: var(--bte-text); }
.bte-signup__form.is-done .bte-signup__input,
.bte-signup__form.is-done .bte-signup__btn { display: none; }

/* ════════════════════════════════════════════════════════════════════════
   FRONT-PAGE MODULE GRID  [bte_modules]
   ════════════════════════════════════════════════════════════════════════ */
.bte-modules {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px;
  max-width: 1180px; margin: 0 auto;
}
@media (max-width: 960px) { .bte-modules { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .bte-modules { grid-template-columns: 1fr; } }
.bte-mod {
  background: var(--bte-brown);
  border: 1px solid rgba(201,168,76,.20);
  border-radius: 14px; overflow: hidden;
  display: flex; flex-direction: column;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.bte-mod--live:hover {
  transform: translateY(-6px);
  border-color: rgba(201,168,76,.55);
  box-shadow: 0 20px 48px rgba(38,25,15,.40);
}
.bte-mod__banner { position: relative; line-height: 0; overflow: hidden; }
.bte-mod__banner img { width: 100%; height: auto; display: block; transition: transform .5s ease; }
.bte-mod--live:hover .bte-mod__banner img { transform: scale(1.05); }
.bte-mod__tag {
  position: absolute; top: 12px; right: 12px;
  font-family: 'Lato', sans-serif; font-size: .62rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  padding: 5px 11px; border-radius: 50px;
}
.bte-mod--live .bte-mod__tag { background: var(--bte-gold); color: var(--bte-brown); }
.bte-mod--soon .bte-mod__tag { background: rgba(255,255,255,.12); color: var(--bte-muted); border: 1px solid rgba(201,168,76,.3); }
.bte-mod__body { padding: 22px 22px 26px; }
.bte-mod__num {
  font-family: 'Lato', sans-serif; font-size: .68rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase; color: var(--bte-gold);
}
.bte-mod__title {
  font-family: 'Cormorant Garamond', serif; color: #fff;
  font-size: 1.5rem; line-height: 1.15; margin: 6px 0 10px;
}
.bte-mod__desc { color: rgba(255,255,255,.7); font-size: .94rem; line-height: 1.55; margin: 0; }
/* Coming-soon cards: muted, emblem desaturated */
.bte-mod--soon { opacity: .82; }
.bte-mod--soon .bte-mod__banner img { filter: grayscale(.55) brightness(.82); }
.bte-mod--soon .bte-mod__title { color: rgba(255,255,255,.78); }

/* ── Constrain cover inner content (hero, quote bands) to the site width ─── */
.wp-block-cover__inner-container {
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}
@media (max-width: 782px) {
  /* hero columns: form sits under the headline on mobile, full width */
  .wp-block-cover .bte-signup { max-width: 100%; }
}

/* ── FAQ accordion (core/details) on dark ───────────────────────────────── */
.wp-block-details { color: #EDE4D6; }
.wp-block-details summary {
  cursor: pointer; list-style: none;
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.2rem; font-weight: 600; color: #F3E9D6;
  display: flex; justify-content: space-between; align-items: center; gap: 14px;
}
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after { content: "+"; color: var(--bte-gold); font-size: 1.5rem; line-height: 1; }
.wp-block-details[open] summary::after { content: "\2013"; }
.wp-block-details[open] summary { margin-bottom: 8px; }

/* Downloads-page "coming soon" line + any muted notes readable on dark */

/* ── Trust strip (full-width band, icon + label) ────────────────────────── */
.bte-strip {
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
  gap: 12px 30px;
}
.bte-strip__item {
  display: inline-flex; align-items: center; gap: 9px;
  color: var(--bte-gold); font-size: 14px; letter-spacing: .5px;
}
.bte-strip__icon { display: inline-flex; color: var(--bte-gold); }
.bte-strip__icon svg { width: 20px; height: 20px; display: block; }

/* ── Pillar cards: gold icon beside the heading ─────────────────────────── */
.bte-pillar h3 { display: flex; align-items: center; gap: 11px; }
.bte-pillar h3::before {
  content: ""; width: 24px; height: 24px; flex: 0 0 auto;
  background: center / contain no-repeat;
}
.bte-pillar--sacred h3::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23C9A84C' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z'/%3E%3C/svg%3E"); }
.bte-pillar--grace h3::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23C9A84C' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 1 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E"); }
.bte-pillar--private h3::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23C9A84C' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E"); }
.bte-pillar--practical h3::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23C9A84C' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpolyline points='22 4 12 14.01 9 11.01'/%3E%3C/svg%3E"); }
