/*
Theme Name: Vision Writer Publishing
Theme URI: https://visionwriter.com/
Author: Vision Writer Publishing
Description: Custom five-page publishing theme for Vision Writer Publishing.
Version: 1.13.0
Text Domain: visionwriter
*/
:root{
  --ink:#17202a; --navy:#1f3348; --gold:#b58a43; --cream:#f7f3ea;
  --paper:#fffdf8; --muted:#68717a; --line:#ded8ca; --white:#fff;
  --max:1180px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:Georgia,"Times New Roman",serif;color:var(--ink);background:var(--paper);line-height:1.65}
a{color:inherit}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,248,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{text-decoration:none}.brand strong{display:block;font-size:1.35rem;letter-spacing:.04em}.brand span{font:700 .7rem Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.menu{display:flex;gap:24px;list-style:none;margin:0;padding:0}.menu a{text-decoration:none;font:700 .8rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}
.hero{background:linear-gradient(125deg,#172536,#2b4257);color:white;padding:90px 0 84px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:65px;align-items:center}
.eyebrow{font:700 .75rem Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#d9b978}
h1,h2,h3{line-height:1.12;margin:0 0 18px}h1{font-size:clamp(2.7rem,6vw,5.4rem);font-weight:500}h2{font-size:clamp(2rem,4vw,3.25rem);font-weight:500}h3{font-size:1.45rem}
.hero p{font-size:1.2rem;max-width:700px;color:#e6e9eb}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-block;text-decoration:none;padding:13px 20px;border:1px solid var(--gold);background:var(--gold);color:#151515;font:700 .78rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}.btn.ghost{background:transparent;color:white}
.book-mock{aspect-ratio:2/3;max-width:310px;margin:auto;background:linear-gradient(150deg,#e8e0cf,#b59c73);box-shadow:22px 28px 45px rgba(0,0,0,.3);padding:28px;display:flex;flex-direction:column;justify-content:center;color:#17202a;text-align:center;border:1px solid rgba(255,255,255,.35)}
.book-mock small{font:700 .7rem Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase}.book-mock b{font-size:2rem;line-height:1.05;margin:16px 0}.book-mock em{font-size:.95rem}
.section{padding:76px 0}.section.alt{background:var(--cream)}.section-head{max-width:760px;margin-bottom:38px}.section-head p,.lead{font-size:1.12rem;color:var(--muted)}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:white;border:1px solid var(--line);padding:30px}.card .tag{font:700 .7rem Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.quote{font-size:1.5rem;border-left:4px solid var(--gold);padding-left:24px;max-width:850px}
.release{background:var(--navy);color:white}.release p{color:#dfe4e8}
.page-hero{padding:68px 0;background:var(--cream);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.5rem,5vw,4.6rem);color:var(--navy)}
.prose{max-width:850px}.prose p{font-size:1.08rem}.prose h2{margin-top:42px}
.footer{background:#111b25;color:#dfe5e9;padding:48px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr;gap:40px}.footer a{color:white}.fine{border-top:1px solid #33414e;margin-top:34px;padding-top:20px;color:#9eabb4;font:12px Arial,sans-serif}
.form-grid{display:grid;gap:14px;max-width:720px}.form-grid input,.form-grid textarea{width:100%;padding:14px;border:1px solid var(--line);background:white;font:16px Arial,sans-serif}.form-grid textarea{min-height:160px}
.notice{padding:18px 20px;background:#fff8e7;border-left:4px solid var(--gold)}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.post-card{border-top:3px solid var(--gold);background:white;padding:26px}
@media(max-width:800px){.hero-grid,.grid-2,.grid-3,.posts,.footer-grid{grid-template-columns:1fr}.hero{padding:65px 0}.menu{gap:12px;flex-wrap:wrap;justify-content:flex-end}.header-inner{align-items:flex-start;padding:16px 0}.brand strong{font-size:1.05rem}}

.hero-cover-img{display:block;width:100%;height:auto;max-width:330px;margin:auto;filter:drop-shadow(22px 28px 28px rgba(0,0,0,.32))}.brand-logo{display:block;max-width:270px;max-height:58px;width:auto;height:auto}

/* V1.2 editable page content */
.vwp-editable-page > .wp-block-group{margin:0}
.vwp-editable-page .wp-block-buttons{gap:12px}
.vwp-editable-page .wp-block-button__link{border-radius:999px;text-decoration:none}
.vwp-editable-page img{max-width:100%;height:auto}

/* V1.3 native editable Home blocks */
.vwp-home-block{padding:72px 5vw}
.vwp-home-block .wp-block-group__inner-container{max-width:1180px;margin:0 auto}
.vwp-home-hero{background:#0b3451;color:#fff}
.vwp-home-hero h1,.vwp-home-nuance h2{color:#fff}
.vwp-home-hero .wp-block-columns,.vwp-home-feature .wp-block-columns,.vwp-home-nuance .wp-block-columns{align-items:center}
.vwp-home-feature{background:#f6f2e8}
.vwp-home-nuance{background:#0b3451;color:#fff}
.vwp-home-library{background:#fbf9f3}
.vwp-eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#c89a38}
.vwp-home-hero h1{font-size:clamp(3rem,6vw,5.6rem);line-height:.96;margin:.2em 0}
.vwp-home-feature h2,.vwp-home-nuance h2,.vwp-home-library h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.05}
.vwp-home-card{background:#fff;padding:28px;border:1px solid rgba(20,35,45,.12);height:100%}
.vwp-home-callout{background:#fff;color:#26323a;padding:32px}
.vwp-home-block .wp-block-button__link{background:#c99a32;color:#13293a;border-radius:0;padding:13px 22px;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700}
.vwp-home-hero img,.vwp-home-nuance img{max-height:560px;width:auto;display:block;margin:auto}
@media(max-width:781px){.vwp-home-block{padding:48px 22px}.vwp-home-hero h1{font-size:3.2rem}}

/* V1.4 native editable Books blocks */
.vwp-books-block{padding:68px 5vw}
.vwp-books-block .wp-block-group__inner-container{max-width:1180px;margin:0 auto}
.vwp-books-hero{background:#f7f4ed}
.vwp-books-feature{background:#fff}
.vwp-books-alt{background:#f2f5f6}
.vwp-books-block .wp-block-columns{align-items:center}
.vwp-books-block .wp-block-button__link{background:#c99a32;color:#13293a;border-radius:0;padding:13px 22px;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700}
.vwp-books-block img{max-height:560px;width:auto;display:block;margin:auto}
.vwp-books-card{background:#fff;padding:26px;border:1px solid rgba(20,35,45,.12);height:100%}
@media(max-width:781px){.vwp-books-block{padding:46px 22px}}

/* V1.5 native editable Devotions & Teaching page */
.vwp-devotions-block{padding:68px 5vw}
.vwp-devotions-block .wp-block-group__inner-container{max-width:1180px;margin:0 auto}
.vwp-devotions-hero{background:#132f43;color:#fff}
.vwp-devotions-hero h1,.vwp-devotions-hero h2,.vwp-devotions-hero p{color:#fff}
.vwp-devotions-intro{background:#f7f4ed}
.vwp-devotions-feed{background:#fff}
.vwp-devotions-feed .wp-block-post-template{gap:28px}
.vwp-devotions-feed .wp-block-post{border:1px solid rgba(20,35,45,.12);background:#fff;padding:24px}
.vwp-devotions-feed .wp-block-post-featured-image img{aspect-ratio:16/9;object-fit:cover;width:100%}
.vwp-devotions-feed .wp-block-post-title a{color:#17364b;text-decoration:none}
.vwp-devotions-feed .wp-block-read-more{font-weight:700;color:#9a6d17;text-decoration:none}
.vwp-devotions-callout{background:#f2f5f6;padding:28px;border-left:4px solid #c99a32}
@media(max-width:781px){.vwp-devotions-block{padding:46px 22px}}

/* V1.6 native editable About + Connect pages */
.vwp-page-block{padding:68px 5vw}
.vwp-page-block .wp-block-group__inner-container{max-width:1180px;margin:0 auto}
.vwp-page-hero{background:#132f43;color:#fff}
.vwp-page-hero h1,.vwp-page-hero h2,.vwp-page-hero p{color:#fff}
.vwp-page-cream{background:#f7f4ed}
.vwp-page-white{background:#fff}
.vwp-page-soft{background:#f2f5f6}
.vwp-page-block .wp-block-columns{align-items:center}
.vwp-page-block img{max-width:100%;height:auto}
.vwp-page-card{background:#fff;padding:28px;border:1px solid rgba(20,35,45,.12);height:100%}
.vwp-page-callout{background:#fff;padding:28px;border-left:4px solid #c99a32}
.vwp-page-block .wp-block-button__link{background:#c99a32;color:#13293a;border-radius:0;padding:13px 22px;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700}
.vwp-contact-email a{font-size:1.08rem;font-weight:700;color:#17364b}
@media(max-width:781px){.vwp-page-block{padding:46px 22px}}

/* V1.7 single devotion presentation */
.vwp-single-post-header{padding:64px 5vw 34px;background:#f7f4ed}.vwp-single-post-header-inner{max-width:1180px;margin:auto}.vwp-single-post-meta{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#9a6d17;margin-bottom:14px}.vwp-single-post-title{max-width:1050px;margin:0;color:#17364b}.vwp-single-post-featured{max-width:1180px;margin:38px auto 0;padding:0 5vw}.vwp-single-post-featured img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.vwp-single-post-content{max-width:780px;margin:auto;padding:54px 24px 78px;font-size:1.06rem;line-height:1.8}.vwp-single-post-content p{margin:0 0 1.35em}.vwp-single-post-content blockquote{border-left:4px solid #c99a32;margin:2em 0;padding:.3em 0 .3em 1.4em}.vwp-single-post-tax{max-width:780px;margin:auto;padding:0 24px 60px;font-size:.88rem;color:#667}@media(max-width:781px){.vwp-single-post-header{padding:44px 22px 26px}.vwp-single-post-featured{padding:0 22px;margin-top:26px}.vwp-single-post-content{padding-top:38px}}

/* V1.8 — Devotions & Teaching Query Loop featured-image front-end fix */
body .wp-block-query .wp-block-post-featured-image {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 0 0 1.15rem;
}
body .wp-block-query .wp-block-post-featured-image a {
    display: block;
}
body .wp-block-query .wp-block-post-featured-image img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

/* V1.9 — Featured thumbnails in the actual Devotions & Teaching PHP listing */
.post-card .post-card-thumb {
    display: block;
    margin: 0 0 1rem;
    overflow: hidden;
}
.post-card .post-card-thumb img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

/* V1.10 — Devotions & Teaching unified public layout */
.vwp-devotions-library {
    max-width: 1180px;
    margin: 0 auto;
    padding: 42px 5vw 72px;
}
.vwp-devotions-library-header {
    margin-bottom: 28px;
}
.vwp-devotions-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 34px;
}
.vwp-devotions-grid .post-card {
    min-width: 0;
}
.vwp-devotions-grid .post-card-thumb {
    display: block;
    margin-bottom: 16px;
}
.vwp-devotions-grid .post-card-thumb img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
}
.vwp-teaching-placeholder {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 5vw 72px;
}
@media (max-width: 900px) {
    .vwp-devotions-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 620px) {
    .vwp-devotions-grid { grid-template-columns: 1fr; }
}
