/*
Theme Name: Classic Jazz Visions
Theme URI: https://classicjazzvisions.org/
Author: Quest Computer Services
Description: A cinematic, accessible jazz heritage and live performance WordPress theme.
Version: 1.4.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: classic-jazz-visions
*/
:root{--ink:#0b1019;--ink2:#151d2a;--gold:#d5ad68;--cream:#f3ede1;--muted:#b7b8bd;--line:#37404a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font:17px/1.7 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--gold)}a:hover{color:#fff}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}h1,h2,h3,.brand{font-family:Georgia,'Times New Roman',serif;line-height:1.14;font-weight:500}h1{font-size:clamp(3rem,7vw,6.7rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4vw,3.6rem)}h3{font-size:1.55rem}.wrap{max-width:1200px;margin:auto;padding:0 26px}.site-header{position:relative;z-index:10;background:#0b1019ee;border-bottom:1px solid #ffffff20}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:88px}.brand{font-size:1.6rem;letter-spacing:.015em;text-decoration:none;color:var(--cream);white-space:nowrap}.brand span{color:var(--gold)}.nav-menu{display:flex;gap:20px;list-style:none;align-items:center;padding:0;margin:0;flex-wrap:wrap}.nav-menu a{color:#e8e3db;text-decoration:none;font-size:.82rem;text-transform:uppercase;letter-spacing:.09em}.nav-menu a:hover{color:var(--gold)}.button,.wp-block-button__link{display:inline-block;border:1px solid var(--gold);background:var(--gold);color:#11161f!important;padding:12px 23px;text-decoration:none;font-size:.8rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;border-radius:0;transition:.2s}.button:hover{background:#efc988}.button.outline{background:transparent;color:var(--gold)!important}.button.outline:hover{background:var(--gold);color:var(--ink)!important}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.24em;font-size:.73rem;font-weight:700}.hero{min-height:660px;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,#0b1019 0%,#0b1019e8 49%,#0b101980 100%),radial-gradient(circle at 78% 35%,#76542c 0%,#171c26 50%,#0b1019 85%)}.hero::after{content:'♪';font-family:Georgia,serif;position:absolute;right:7%;top:7%;font-size:28rem;color:#d5ad6812;line-height:1;pointer-events:none}.hero .wrap{position:relative;z-index:1;width:100%}.hero h1{max-width:860px;margin:22px 0}.hero p{max-width:630px;font-size:1.18rem;color:#d6d3cf}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.section{padding:95px 0}.section.alt{background:var(--ink2)}.section-head{max-width:760px;margin-bottom:34px}.section-head h2{margin:12px 0}.section-head p,.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.tile{background:#1b2430;border:1px solid #ffffff18;padding:30px;min-height:270px;display:flex;flex-direction:column;justify-content:space-between}.tile h3{margin:10px 0}.tile p{color:#c4c4c8}.tile a{text-decoration:none;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase}.tile .number{color:var(--gold);font:2rem Georgia,serif}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.art{min-height:430px;border:1px solid #ffffff28;background:radial-gradient(circle at 50% 32%,#947044 0%,#443421 18%,#19212b 52%,#0c111a 100%);display:grid;place-items:center;color:#e9c589;font:italic 3rem Georgia,serif;text-align:center;padding:30px}.events{display:grid;gap:12px}.event{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.event strong{font:1.5rem Georgia,serif}.event p{margin:3px 0;color:var(--muted)}.event .button{flex-shrink:0}.cta{text-align:center;background:linear-gradient(130deg,#1a2330,#2b241c);padding:85px 24px}.cta h2{margin:10px auto;max-width:740px}.site-footer{padding:55px 0 25px;border-top:1px solid #ffffff20;background:#090d14}.footer-cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer-cols ul{list-style:none;padding:0}.footer-cols a{text-decoration:none}.small{font-size:.8rem;color:#aaa}.page-hero{padding:95px 0 55px;background:linear-gradient(110deg,#131e2b,#272119)}.page-hero h1{font-size:clamp(2.6rem,6vw,5rem);margin:15px 0}.entry{max-width:900px;margin:65px auto 100px;padding:0 26px}.entry img{max-width:100%;height:auto}.entry p{font-size:1.08rem}.post-list{display:grid;gap:20px}.post-item{border-bottom:1px solid var(--line);padding:20px 0}.skip-link{position:absolute;left:-9999px;top:8px;background:white;color:black;padding:12px;z-index:100}.skip-link:focus{left:10px}.notice{border-left:3px solid var(--gold);padding:15px 20px;background:#ffffff0b}.site-footer .brand{display:block;margin-bottom:12px}@media(max-width:950px){.header-inner{align-items:flex-start;flex-direction:column;padding-top:18px;padding-bottom:18px}.nav-menu{gap:12px}.grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.footer-cols{grid-template-columns:1fr 1fr}}@media(max-width:650px){.hero{min-height:580px}.section{padding:65px 0}.grid,.footer-cols{grid-template-columns:1fr}.event{align-items:flex-start;flex-direction:column}.brand{font-size:1.35rem}.nav-menu a{font-size:.72rem}.art{min-height:300px}}

/* Supplied Classic Jazz Visions imagery */
.cjv-brand-image{height:65px;width:auto;max-width:185px;object-fit:contain;display:block}.cjv-feature-figure{margin:0}.cjv-feature-figure img{display:block;width:100%;height:460px;object-fit:cover;border:1px solid #d5ad6844}.cjv-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.cjv-media-grid figure,.cjv-promo figure{margin:0}.cjv-media-grid img{width:100%;height:330px;object-fit:cover;display:block;border:1px solid #d5ad6844}.cjv-media-grid figcaption{padding:13px 0;color:var(--gold);font-family:Georgia,serif}.cjv-media-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.cjv-media-grid-two img{height:440px;object-fit:contain;background:#080808}.cjv-promo{display:grid;grid-template-columns:1fr .75fr;gap:60px;align-items:center}.cjv-promo figure img{width:100%;max-height:670px;object-fit:contain;display:block}.cjv-promo p{max-width:550px}.hero{background-position:center!important}.hero::after{display:none}@media(max-width:800px){.cjv-promo{grid-template-columns:1fr}.cjv-media-grid{grid-template-columns:1fr 1fr}.cjv-media-grid img{height:290px}}@media(max-width:550px){.cjv-media-grid,.cjv-media-grid-two{grid-template-columns:1fr}.cjv-media-grid-two img{height:340px}.cjv-brand-image{height:54px}}

/* Cinematic, muted video hero; image remains a browser fallback. */
.hero .cjv-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none;}
.hero .cjv-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,15,.96) 0%,rgba(7,10,15,.79) 49%,rgba(7,10,15,.45) 100%);z-index:0;pointer-events:none;}
.hero .wrap{z-index:2;}
@media(prefers-reduced-motion:reduce){.hero .cjv-hero-video{display:none}}
@media(max-width:650px){.hero .cjv-hero-shade{background:linear-gradient(90deg,rgba(7,10,15,.94),rgba(7,10,15,.62))}}

/* Book landing page */
.cjv-book-hero{background:linear-gradient(110deg,#090909 0%,#16100d 100%);padding:80px 0 70px;border-bottom:1px solid #71572b}.cjv-book-hero-inner{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:6%;}.cjv-book-hero h1{font-family:Georgia,serif;font-size:clamp(2.8rem,5vw,5.5rem);line-height:1.1;color:#f4e9d6;margin:20px 0 10px}.cjv-book-hero h2{font-family:Georgia,serif;color:#e6b95e;font-size:clamp(1.3rem,2.5vw,2.2rem);font-weight:400}.cjv-book-hero p{max-width:580px}.cjv-book-hero img{width:100%;max-height:560px;object-fit:contain;box-shadow:0 20px 55px #0009}.cjv-book-byline{color:#e8c782}.cjv-book-purchase{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.cjv-book-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cjv-book-gallery img{width:100%;height:auto;box-shadow:0 12px 35px #0006}.cjv-book-info h2{font-family:Georgia,serif;font-size:clamp(2rem,3.2vw,3.4rem)}.cjv-book-subtitle{font-size:1.2rem}.cjv-book-price{color:#edc66e;font-size:2.6rem;font-weight:700;margin:18px 0}.cjv-book-price small{font-size:.4em}.cjv-book-info li{margin:8px 0}.cjv-book-buy{display:inline-block;margin-top:15px}.cjv-book-unavailable{padding:18px;border:1px solid #a88a4c;border-radius:8px;margin-top:24px}.cjv-book-story{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.cjv-book-story img{width:100%;border-radius:5px}.cjv-book-values{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center}.cjv-book-values>div{border:1px solid #6c5531;padding:28px 18px}.cjv-book-values h3{color:#e8c782}.cjv-book-home{display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:6%;align-items:center}.cjv-book-home img{width:100%;box-shadow:0 15px 35px #0007}@media(max-width:780px){.cjv-book-hero-inner,.cjv-book-purchase,.cjv-book-story,.cjv-book-home{grid-template-columns:1fr}.cjv-book-values{grid-template-columns:1fr}.cjv-book-hero{padding:45px 0}.cjv-book-hero img{max-height:420px}}

/* v1.4 — editorial collection and shop */
.cjv-page-banner{padding:105px 0 72px;background:linear-gradient(95deg,#090d14ee,#0a1019b0),url('assets/armstrong.jpg') center 35%/cover;border-bottom:1px solid #8e7042}.cjv-page-banner h1{max-width:850px;margin:12px 0;font-size:clamp(2.6rem,5.4vw,5rem)}.cjv-page-banner p{max-width:700px;color:#e2dbcf;font-size:1.1rem}.cjv-prose{max-width:820px}.cjv-prose p{color:#d5d0c9;font-size:1.09rem}.cjv-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.cjv-card{background:#151c25;border:1px solid #55442b;overflow:hidden}.cjv-card img{width:100%;height:330px;object-fit:cover;display:block}.cjv-card-content{padding:28px}.cjv-card h2,.cjv-card h3{margin:8px 0 12px}.cjv-card p{color:#d2cdc4}.cjv-price{font:2.2rem Georgia,serif;color:#f0c77b}.cjv-product-card{display:grid;grid-template-columns:42% 1fr;gap:0;align-items:stretch}.cjv-product-card img{height:100%;min-height:300px;object-fit:contain;background:#080c11;padding:18px}.cjv-product-card .cjv-card-content{padding:34px}.cjv-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cjv-gallery figure{margin:0}.cjv-gallery img{width:100%;height:360px;object-fit:cover}.cjv-gallery figcaption{color:#caa76c;padding:10px 0}.cjv-note{border-left:3px solid #cba869;padding:15px 22px;background:#ffffff09;color:#e0d9cc}.cjv-mini{font-size:.85rem;color:#c3b6a1}.cjv-section-title{margin:0 0 28px}.cjv-feature{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.cjv-feature img{width:100%;max-height:550px;object-fit:contain}.cjv-hero-links{display:flex;gap:12px;flex-wrap:wrap}.cjv-full-video{width:100%;max-height:650px;background:#000}.cjv-archive-image{border:1px solid #6d5535;max-width:100%}.cjv-footer-cta{padding:68px 0;text-align:center;background:#1b1c20}.cjv-footer-cta h2{margin:0 0 22px}.cjv-admin-warning{color:#d6ad68}.cjv-shop-tiles{display:grid;grid-template-columns:1fr 1fr;gap:24px}.cjv-shop-tiles .cjv-product-card{grid-template-columns:1fr}.cjv-shop-tiles .cjv-product-card img{height:300px;min-height:0}.cjv-shop-tiles .cjv-product-card .cjv-card-content{padding:25px}@media(max-width:780px){.cjv-cards,.cjv-feature,.cjv-shop-tiles,.cjv-gallery,.cjv-product-card{grid-template-columns:1fr}.cjv-product-card img{height:310px;min-height:0}.cjv-page-banner{padding:65px 0}.cjv-gallery img{height:280px}}

.cjv-product-art{min-height:300px;background:radial-gradient(circle at 40% 25%,#55432a,#0b1019 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#d6b778;text-align:center}.cjv-product-art span{font:2rem/1.2 Georgia,serif;letter-spacing:.13em}.cjv-product-art small{font-size:.75rem;color:#ded4c4}.cjv-shop-tiles .cjv-product-art{min-height:300px}.cjv-feature figure{margin:0}.cjv-feature figure img{display:block;max-height:550px;object-fit:contain}.cjv-price small{font:1rem system-ui,sans-serif}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cjv-hero-video{display:none}} .nav-menu a[aria-current=page]{color:var(--gold)}

.cjv-footer-directory{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:24px}.cjv-footer-directory ul{list-style:none;margin:8px 0 0;padding:0}.cjv-prose article+article{margin-top:2rem}

/* Cognac wood finish shared by every page. */
:root {
  --ink: #1d110c;
  --ink2: #352015;
  --line: #6b4630;
  --muted: #ddcbb9;
}
body {
  background: linear-gradient(#211209c9, #24140bce), url('/assets/cognac-wood.jpg') center top / 1200px 116px repeat;
}
.site-header, .section.alt, .site-footer, .cta, .cjv-footer-cta {
  background: linear-gradient(100deg, #25150eeb, #532f1bc7), url('/assets/cognac-wood.jpg') center / 1200px 116px repeat;
}
.cjv-page-banner {
  background: linear-gradient(95deg, #231209f2, #54301bb8), url('/assets/cognac-wood.jpg') center / 1200px 116px repeat;
}
.tile, .cjv-card, .event, .notice {
  background: #2e1b12ed;
  border-color: #805437;
}

/* Keep the primary navigation legible over the woodgrain header. */
.header-inner nav {
  background: #1d100be8;
  border: 1px solid #a37547;
  border-radius: 5px;
  padding: 8px 14px;
}
.header-inner .nav-menu { gap: 4px 12px; }
.header-inner .nav-menu a {
  display: block;
  padding: 5px 0;
  color: #fff0d9;
  font-weight: 650;
}
.header-inner .nav-menu a:hover,
.header-inner .nav-menu a[aria-current="page"] {
  color: #f4ca83;
  text-decoration: underline;
  text-underline-offset: 5px;
}

@view-transition { navigation: auto; }

@media (prefers-reduced-motion: reduce) {
  ::view-transition-old(root), ::view-transition-new(root) { animation: none; }
}

@media (prefers-reduced-motion: no-preference) {
  ::view-transition-old(root) {
    animation: 160ms ease-out both cjv-fade-out;
  }
  ::view-transition-new(root) {
    animation: 320ms ease-out both cjv-fade-in;
  }

  .hero > .wrap,
  .cjv-book-hero-inner > div,
  .cjv-page-banner > .wrap {
    animation: 620ms cubic-bezier(.2,.65,.3,1) both cjv-hero-enter;
  }

  .button,
  .header-inner .nav-menu a {
    transition: color 180ms ease, background-color 180ms ease,
      border-color 180ms ease, box-shadow 220ms ease;
  }

  @media (hover: hover) {
    .cjv-media-grid figure img,
    .cjv-gallery figure img,
    .poster-zoom img {
      transition: filter 260ms ease, box-shadow 260ms ease;
    }
    .cjv-media-grid figure:hover img,
    .cjv-gallery figure:hover img,
    .poster-zoom:focus-visible img {
      filter: brightness(1.1);
      box-shadow: 0 10px 28px #12090488;
    }
    .button:hover {
      box-shadow: 0 4px 18px #d5ad6833;
    }
  }

  .poster-dialog[open] {
    animation: 240ms cubic-bezier(.2,.65,.3,1) both cjv-poster-enter;
  }
}

@keyframes cjv-fade-out { to { opacity: 0; } }
@keyframes cjv-fade-in { from { opacity: 0; } }
@keyframes cjv-hero-enter {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes cjv-poster-enter {
  from { opacity: 0; transform: scale(.97); }
  to { opacity: 1; transform: scale(1); }
}
