/*
 Theme Name:   Astra Child
 Theme URI:    https://example.com/
 Description:  Astra Child Theme
 Author:       Your Name
 Author URI:   https://example.com/
 Template:     astra
 Version:      1.0.0
*/

/*=============================================
  Custom @font-face declarations
  –– Paste this at the TOP of /wp-content/themes/astra-child/style.css
=============================================*/

/* 1) Roxborough CF */
/* light 300 normal */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf-light-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf-light-webfont.woff')  format('woff');
  font-weight: 300;
  font-style:  normal;
  font-display: swap;
}
/* light 300 italic */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--lightitalic-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf--lightitalic-webfont.woff')  format('woff');
  font-weight: 300;
  font-style:  italic;
  font-display: swap;
}
/* regular 400 normal */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--regular-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf-regular-webfont.woff')  format('woff');
  font-weight: 400;
  font-style:  normal;
  font-display: swap;
}
/* regular 400 italic */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--regularitalic-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf--regularitalic-webfont.woff')  format('woff');
  font-weight: 400;
  font-style:  italic;
  font-display: swap;
}
/* medium 500 normal */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--medium-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf--medium-webfont.woff')  format('woff');
  font-weight: 500;
  font-style:  normal;
  font-display: swap;
}
/* medium 500 italic */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--mediumitalic-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf--mediumitalic-webfont.woff')  format('woff');
  font-weight: 500;
  font-style:  italic;
  font-display: swap;
}
/* bold 700 normal */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--bold-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf--bold-webfont.woff')  format('woff');
  font-weight: 700;
  font-style:  normal;
  font-display: swap;
}
/* bold 700 italic */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--bolditalic-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf--bolditalic-webfont.woff')  format('woff');
  font-weight: 700;
  font-style:  italic;
  font-display: swap;
}
/* extra-bold 800 normal */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--extrabold-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf--extrabold-webfont.woff')  format('woff');
  font-weight: 800;
  font-style:  normal;
  font-display: swap;
}
/* heavy 900 normal */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--heavy-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf--heavy-webfont.woff')  format('woff');
  font-weight: 900;
  font-style:  normal;
  font-display: swap;
}
/* heavy 900 italic */
@font-face {
  font-family: 'Roxborough CF';
  src: url('fonts/fonnts.com-roxboroughcf--heavyitalic-webfont.woff2') format('woff2'),
       url('fonts/fonnts.com-roxboroughcf--heavyitalic-webfont.woff')  format('woff');
  font-weight: 900;
  font-style:  italic;
  font-display: swap;
}


/* 2) Playfair Display SC */
/* regular 400 normal */
@font-face {
  font-family: 'Playfair Display SC';
  src: url('fonts/playfairdisplay-regular-webfont.woff2') format('woff2'),
       url('fonts/playfairdisplay-regular-webfont.woff')  format('woff');
  font-weight: 400;
  font-style:  normal;
  font-display: swap;
}
/* italic 400 italic */
@font-face {
  font-family: 'Playfair Display SC';
  src: url('fonts/playfairdisplay-italic-webfont.woff2') format('woff2'),
       url('fonts/playfairdisplay-italic-webfont.woff')  format('woff');
  font-weight: 400;
  font-style:  italic;
  font-display: swap;
}
/* bold 700 normal */
@font-face {
  font-family: 'Playfair Display SC';
  src: url('fonts/playfairdisplay-bold-webfont.woff2') format('woff2'),
       url('fonts/playfairdisplay-bold-webfont.woff')  format('woff');
  font-weight: 700;
  font-style:  normal;
  font-display: swap;
}
/* bold 700 italic */
@font-face {
  font-family: 'Playfair Display SC';
  src: url('fonts/playfairdisplay-bolditalic-webfont.woff2') format('woff2'),
       url('fonts/playfairdisplay-bolditalic-webfont.woff')  format('woff');
  font-weight: 700;
  font-style:  italic;
  font-display: swap;
}
/* black 900 normal */
@font-face {
  font-family: 'Playfair Display SC';
  src: url('fonts/playfairdisplay-black-webfont.woff2') format('woff2'),
       url('fonts/playfairdisplay-black-webfont.woff')  format('woff');
  font-weight: 900;
  font-style:  normal;
  font-display: swap;
}
/* black 900 italic */
@font-face {
  font-family: 'Playfair Display SC';
  src: url('fonts/playfairdisplay-blackitalic-webfont.woff2') format('woff2'),
       url('fonts/playfairdisplay-blackitalic-webfont.woff')  format('woff');
  font-weight: 900;
  font-style:  italic;
  font-display: swap;
}


/* 3) Ballet Harmony (Quotes) */
@font-face {
  font-family: 'Ballet Harmony';
  src: url('fonts/ballet_harmony-webfont.woff2') format('woff2'),
       url('fonts/ballet_harmony-webfont.woff')  format('woff');
  font-weight: 400;
  font-style:  normal;
  font-display: swap;
}


/* 4) Chopin Script */
@font-face {
  font-family: 'Chopin Script';
  src: url('fonts/chopinscript-webfont.woff2') format('woff2'),
       url('fonts/chopinscript-webfont.woff')  format('woff');
  font-weight: 400;
  font-style:  normal;
  font-display: swap;
}


/* 5) Aston Script */
@font-face {
  font-family: 'Aston Script';
  src: url('fonts/aston_script-webfont.woff2') format('woff2'),
       url('fonts/aston_script-webfont.woff')  format('woff');
  font-weight: 400;
  font-style:  normal;
  font-display: swap;
}


/* 6) Cinzel Variable (if you want to support the entire axis) */
@font-face {
  font-family: 'Cinzel';
  src: url('fonts/cinzel-variablefont_wght-webfont.woff2') format('woff2'),
       url('fonts/cinzel-variablefont_wght-webfont.woff')  format('woff');
  font-weight:   100 900;   /* use in CSS as font-weight: 100–900 */
  font-style:    normal;
  font-display:  swap;
}


/* 7) Fairy Dust B */
@font-face {
  font-family: 'Fairy Dust B';
  src: url('fonts/fairydustb-webfont.woff2') format('woff2'),
       url('fonts/fairydustb-webfont.woff')  format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}


/* 8) Fairy Mother Alea */
@font-face {
  font-family: 'Fairy Mother';
  src: url('fonts/fairymother-alea8a-webfont.woff2') format('woff2'),
       url('fonts/fairymother-alea8a-webfont.woff')  format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}


/* 9) Great Vibes */
@font-face {
  font-family: 'greatvibes';
  src: url('fonts/greatvibes-regular-webfont.woff2') format('woff2'),
       url('fonts/greatvibes-regular-webfont.woff')  format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}


/* 10) Heart Romance */
@font-face {
  font-family: 'heart_romance';
  src: url('fonts/heart_romance-webfont.woff2') format('woff2'),
       url('fonts/heart_romance-webfont.woff')  format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}


/* 11) Louisa CP */
@font-face {
  font-family: 'Louisa CP';
  src: url('fonts/louisacp-webfont.woff2') format('woff2'),
       url('fonts/louisacp-webfont.woff')  format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}


/* 12) English Serif (all weights) */
@font-face {
  font-family: 'English Serif';
  src: url('fonts/fontts.com-englishserif-regular-webfont.woff2') format('woff2'),
       url('fonts/fontts.com-englishserif-regular-webfont.woff')  format('woff');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'English Serif';
  src: url('fonts/fontts.com-englishserif-medium-webfont.woff2') format('woff2'),
       url('fonts/fontts.com-englishserif-medium-webfont.woff')  format('woff');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'English Serif';
  src: url('fonts/fontts.com-englishserif-mediumitalic-webfont.woff2') format('woff2'),
       url('fonts/fontts.com-englishserif-mediumitalic-webfont.woff')  format('woff');
  font-weight: 500; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'English Serif';
  src: url('fonts/fontts.com-englishserif-bold-webfont.woff2') format('woff2'),
       url('fonts/fontts.com-englishserif-bold-webfont.woff')  format('woff');
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'English Serif';
  src: url('fonts/fontts.com-englishserif-bolditalic-webfont.woff2') format('woff2'),
       url('fonts/fontts.com-englishserif-bolditalic-webfont.woff')  format('woff');
  font-weight: 700; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'English Serif';
  src: url('fonts/fontts.com-englishserif-extrabold-webfont.woff2') format('woff2'),
       url('fonts/fontts.com-englishserif-extrabold-webfont.woff')  format('woff');
  font-weight: 800; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'English Serif';
  src: url('fonts/fontts.com-englishserif-black-webfont.woff2') format('woff2'),
       url('fonts/fontts.com-englishserif-black-webfont.woff')  format('woff');
  font-weight: 900; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'English Serif';
  src: url('fonts/fontts.com-englishserif-italic-webfont.woff2') format('woff2'),
       url('fonts/fontts.com-englishserif-italic-webfont.woff')  format('woff');
  font-weight: 400; font-style: italic; font-display: swap;
}

/* …and so on for any additional faces you have (just follow the same pattern) */

/* BOOK PAGE TEMPLATE UPGRADE */
:root{
  --lp-pink:#FFD6D6; --lp-green:#BCDFDB; --lp-light-green:#C1D8C5; --lp-lavender:#D3C0EB;
  --lp-orange:#FFD8A9; --lp-navy:#31456B; --lp-cream:#FCF3E3; --lp-brown:#564036;
  --lp-gray-azure:#3D4A55; --lp-gold:#E1A730; --lp-border:#E7C1A8; --lp-shadow:0 10px 24px rgba(0,0,0,.08);
  --lp-font-heading:"Amerosa Aged","Roxborough CF","Cormorant Garamond",serif;
  --lp-font-subhead:"Baskerville Display PT","Libre Baskerville",serif;
  --lp-font-body:"Lora",serif;
  --lp-font-script:"Ballet Harmony",cursive;
}
.lp-book-hero{background:radial-gradient(circle at top center, rgba(255,255,255,.48), rgba(255,255,255,0) 40%),linear-gradient(180deg, #FCF3E3 0%, #FFF9F0 100%);}
.lp-dummy-cover img{border:8px solid #E8D8C7;border-radius:18px;box-shadow:0 12px 28px rgba(0,0,0,.13);display:block;margin:0 auto;max-width:100%;}
.lp-cover-note .elementor-heading-title{font-family:var(--lp-font-subhead);font-size:18px;color:#857454;margin-top:16px;}
.lp-book-title .elementor-heading-title{font-family:var(--lp-font-heading);font-size:clamp(40px, 6.5vw, 84px);line-height:.98;color:var(--lp-brown);letter-spacing:.2px;}
.lp-book-subtitle .elementor-heading-title{font-family:var(--lp-font-subhead);font-size:clamp(22px, 3vw, 34px);color:var(--lp-navy);margin-top:8px;}
.lp-tagline{font-family:var(--lp-font-subhead);font-size:25px;line-height:1.45;color:var(--lp-brown);margin:18px 0 10px;}
.lp-book-copy-col .elementor-widget-text-editor,.lp-book-copy-col .elementor-widget-text-editor p,.lp-excerpt-card,.lp-love-copy{font-family:var(--lp-font-body);color:var(--lp-brown);font-size:19px;line-height:1.8;}
.lp-quill-button .elementor-button{background:linear-gradient(180deg,#FCF3E4 0%,#FFF8EF 100%);border:2px solid var(--lp-border);border-radius:999px;color:var(--lp-gray-azure);box-shadow:0 8px 16px rgba(0,0,0,.10);padding:16px 28px;font-family:var(--lp-font-subhead);font-size:18px;transition:transform .25s ease, background .25s ease, box-shadow .25s ease;}
.lp-quill-button .elementor-button:hover{background:var(--lp-green);transform:translateY(-2px);box-shadow:0 12px 20px rgba(0,0,0,.10);}
.lp-section-title .elementor-heading-title,.lp-cta-title .elementor-heading-title{font-family:var(--lp-font-heading);font-size:clamp(30px, 5vw, 54px);line-height:1.05;color:var(--lp-brown);}
.lp-pill-wrap{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:20px;}
.lp-pill-wrap span{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;background:#FFF9F1;border:1px solid var(--lp-border);border-radius:999px;box-shadow:0 4px 10px rgba(0,0,0,.05);font-family:var(--lp-font-subhead);color:var(--lp-navy);font-size:17px;}
.lp-excerpt-section{background:rgba(255,248,238,.55);}
.lp-excerpt-section .elementor-toggle-item{border:1px solid #E9DAC7 !important;border-radius:18px;overflow:hidden;box-shadow:var(--lp-shadow);background:#FFFDF8;}
.lp-excerpt-section .elementor-tab-title{font-family:var(--lp-font-subhead);color:var(--lp-navy);font-size:20px;padding:20px 22px;}
.lp-excerpt-card{background:linear-gradient(180deg,#FFFBF3 0%,#F8EEDC 100%);border-top:1px solid #E9DAC7;padding:26px;}
.lp-video-placeholder{min-height:280px;display:flex;align-items:center;justify-content:center;text-align:center;padding:18px;border:1px dashed #CDA250;border-radius:18px;background:#FFF9F1;font-family:var(--lp-font-subhead);color:var(--lp-brown);}
.lp-love-copy{text-align:center;font-family:var(--lp-font-subhead);font-size:24px;line-height:1.6;color:#544541;}
.lp-signup-section{border-radius:28px;box-shadow:0 12px 26px rgba(0,0,0,.08);}
@media (max-width:1024px){.lp-tagline{font-size:22px}.lp-love-copy{font-size:22px}.lp-video-placeholder{min-height:240px}}
@media (max-width:767px){.lp-book-title .elementor-heading-title{font-size:42px}.lp-book-subtitle .elementor-heading-title{font-size:24px}.lp-tagline{font-size:20px}.lp-book-copy-col .elementor-widget-text-editor,.lp-book-copy-col .elementor-widget-text-editor p,.lp-excerpt-card,.lp-love-copy{font-size:17px;line-height:1.7}.lp-pill-wrap span{font-size:15px;padding:10px 14px}.lp-video-placeholder{min-height:180px}.lp-excerpt-card{padding:20px}}

/* Character Page Template with Interview + Audio */
.character-interview {
  display: grid;
  gap: 14px;
}

.character-interview .qa {
  padding: 20px 22px;
}

.character-interview h3 {
  font-family: "Lora", Georgia, serif;
  color: #AC863F;
  margin: 0 0 8px;
  font-size: 1.08rem;
}

.character-interview p {
  margin: 0;
  font-family: "RoxboroughCF", Georgia, serif;
  color: #5A3D07;
  line-height: 1.7;
}

.audio-intro {
  color: #AA974A;
  font-family: "Lora", Georgia, serif;
}

.character-audio-block {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.audio-card {
  padding: 20px;
}

.audio-card h3 {
  margin-top: 0;
  margin-bottom: 12px;
  font-family: "Lora", Georgia, serif;
  color: #5A3D07;
  font-size: 1.05rem;
}

.audio-card audio,
.character-audio audio {
  width: 100%;
  border-radius: 12px;
  background: #F7E7CC;
  padding: 10px;
  box-shadow: 0 8px 16px rgba(0,0,0,0.08);
}

.audio-script-note {
  margin: 12px 0 0;
  font-size: .95rem;
  line-height: 1.6;
  color: #5A3D07;
}


