/* One signature, two intentional environments: editorial cream and campaign dark. */
@font-face{font-family:Caviar;src:url('/assets/fonts/CaviarDreams-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:DM;src:url('/assets/fonts/DMSans-Latin.woff2') format('woff2');font-weight:100 1000;font-display:swap}
html:has(.blog-editorial){--ink:#f7f3eb;--paper:#eeeae4;--line:#6b269c26}
body.blog-editorial{--white:#302538;--gray:#65576e;--purple:#6b269c;--purple-light:#8d4fbb;--bg-deep:#f7f3eb;--bg-dark:#eee8dd;background:#f7f3eb;color:#302538;padding-top:0;font-family:DM,'DM Sans',sans-serif}
body.blog-editorial .theme-toggle{display:none}
body.blog-editorial :is(.noise,.page-bg-grid,.hero-orb){display:none}
body.blog-editorial :is(.blog-header,.hub-header){width:88%;max-width:1240px;padding:130px 0 38px;margin:auto}
body.blog-editorial :is(.blog-header,.hub-header) h1{font:400 clamp(38px,5.5vw,72px)/1.12 Caviar,sans-serif;letter-spacing:-.04em;max-width:1050px;margin:18px 0 24px}
body.blog-editorial .gradient-text{color:#6b269c;background:none;-webkit-text-fill-color:currentColor}
body.blog-editorial .blog-label{padding:0;background:none;border-radius:0;font:500 11px/1.5 DM,sans-serif;letter-spacing:.14em;color:#6b269c;margin-bottom:16px}
body.blog-editorial :is(.blog-header,.hub-header) p{font:400 16px/1.7 DM,sans-serif;max-width:750px;color:#65576e}
body.blog-editorial .blog-layout{width:88%;max-width:1240px;padding:0 0 104px;grid-template-columns:minmax(0,1fr) 230px;gap:48px}
body.blog-editorial .posts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 28px}
body.blog-editorial .post-card{border:0;background:none;box-shadow:none;border-radius:0;min-width:0;height:auto}
body.blog-editorial .post-card:hover{box-shadow:none;transform:none}
body.blog-editorial .post-card-img-link{border-radius:20px;overflow:hidden}
body.blog-editorial .post-card-img{aspect-ratio:16/9;object-fit:cover;display:block}
body.blog-editorial .post-card-body{padding:20px 0 0}
body.blog-editorial .post-card h2{font:600 23px/1.3 DM,sans-serif;letter-spacing:-.025em}
body.blog-editorial .post-card h2 a{color:#302538}
body.blog-editorial .post-card h2 a:hover{color:#6b269c}
body.blog-editorial .post-excerpt{font:400 14px/1.7 DM,sans-serif;color:#65576e}
body.blog-editorial .post-meta{font:500 10px/1.7 DM,sans-serif;letter-spacing:.04em;color:#65576e}
body.blog-editorial .post-tag{color:#6b269c;background:none}
body.blog-editorial .read-more{font:500 13px/1.5 DM,sans-serif;color:#6b269c}
body.blog-editorial .editorial-featured{grid-column:1 / -1;display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center;padding-bottom:34px;border-bottom:1px solid #6b269c26}
body.blog-editorial .editorial-featured .post-card-body{padding:0}
body.blog-editorial .editorial-featured .post-card-img{aspect-ratio:4/3}
body.blog-editorial .editorial-featured h2{font-size:clamp(24px,2.4vw,32px)}
body.blog-editorial .blog-filter-bar{gap:20px;margin-bottom:36px}
body.blog-editorial .blog-tabs{border-radius:30px;background:#eee8dd;box-shadow:none}
body.blog-editorial .blog-tab{font:500 12px/1.5 DM,sans-serif;padding:12px 16px}
body.blog-editorial .blog-search-container input{background:#fffaf3;border:1px solid #6b269c30;border-radius:30px}
body.blog-editorial :is(.sidebar-widget,.sidebar-box){background:none;box-shadow:none;border:0;padding:0 0 28px}
body.blog-editorial .sidebar-title{font:500 18px/1.4 DM,sans-serif;color:#302538}
body.blog-editorial .weekly-news-view{grid-template-columns:1fr}
body.blog-editorial:has(.article-title) main{padding-top:112px}
body.blog-editorial .article-wrapper{width:calc(100% - 3rem);max-width:1040px;margin-inline:auto;padding:2rem 0 6rem}
@media(max-width:600px){body.blog-editorial .article-wrapper{width:92%;padding:1.2rem 0 4rem}}
body.blog-editorial .article-title{font:600 clamp(30px,3.5vw,46px)/1.2 DM,sans-serif!important;color:#302538;letter-spacing:-.035em}
body.blog-editorial .article-body{font-family:DM,'DM Sans',sans-serif;color:#302538}
body.blog-editorial .article-body :is(p,li){font-size:17px;line-height:1.8}
body.blog-editorial .article-body :is(h2,h3){font-family:DM,sans-serif!important;font-weight:600!important;line-height:1.3;letter-spacing:-.02em}
body.blog-editorial .article-intro{font:400 19px/1.7 DM,sans-serif;color:#65576e}
body.blog-editorial .article-body blockquote{font-family:Fraunces,serif;color:#6b269c;border-left-color:#6b269c;background:#eee8dd;border-radius:0 18px 18px 0}
/* Premium offers retain their own dark stage, content, prices and demonstrations. */
html:has(.campaign-page){--ink:#14101d;--paper:#f7f3eb;--line:#ffffff26}
body.campaign-page{--font-body:DM,'DM Sans',sans-serif;--font-display:Caviar,sans-serif;background:#14101d;color:#f7f3eb}
body.campaign-page .theme-toggle,body.campaign-page .rail{display:none}
body.campaign-page .hero{margin:12px;border-radius:24px;overflow:hidden;min-height:calc(100svh - 24px);padding-top:120px}
body.campaign-page .hero .mega{font-family:Caviar,sans-serif;font-weight:400;font-size:clamp(42px,5.7vw,78px);line-height:1.12;letter-spacing:-.045em}
body.campaign-page .hero .mega em{color:#d4afe9}
body.campaign-page .hero-say{font-size:16px;line-height:1.7;max-width:680px;color:#e1d8e8}
body.campaign-page .blk:not(.hero){padding-top:110px;padding-bottom:110px}
body.campaign-page .big{font-family:Caviar,sans-serif;font-weight:400;line-height:1.15;font-size:clamp(34px,4vw,54px)}
body.campaign-page .big em{color:#d4afe9}
body.campaign-page .btn{border-radius:40px;min-height:46px;padding:13px 24px;font-family:Caviar,sans-serif;line-height:1.4}
body.campaign-page .btn-main{background:#f7f3eb;color:#302538;border-color:#f7f3eb}
body.campaign-page .btn-main:hover{background:#d4afe9;border-color:#d4afe9}
body.campaign-page .btn-wa svg{fill:#25d366}
body.campaign-page :is(.tier-price,.hs-num,.step-num){font-family:Fraunces,serif;font-weight:400;font-style:normal}
body.campaign-page .tier{border-radius:24px}
body.campaign-page :is(.tier p,.step p){line-height:1.7}
body.campaign-page .site-footer{border-top:1px solid #ffffff26}
body.campaign-page .site-menu{color:#f7f3eb}
@media(max-width:900px){body.blog-editorial .blog-layout{grid-template-columns:1fr;gap:56px}body.blog-editorial .blog-sidebar{position:static}body.campaign-page .blk:not(.hero){padding:80px 0}}
@media(max-width:600px){
 body.blog-editorial :is(.blog-header,.hub-header){width:88%;padding-top:96px}
 body.blog-editorial :is(.blog-header,.hub-header) h1{font-size:40px}
 body.blog-editorial .posts-grid{grid-template-columns:1fr;gap:36px}
 body.blog-editorial .editorial-featured{grid-template-columns:1fr;gap:20px}
 body.blog-editorial .editorial-featured .post-card-img{aspect-ratio:16/9}
 body.blog-editorial .post-card h2{font-size:24px}
 body.blog-editorial .blog-filter-bar{flex-direction:column;align-items:stretch}
 body.blog-editorial:has(.article-title) main{padding-top:86px}
 body.blog-editorial .article-body :is(p,li){font-size:16px;line-height:1.8}
 body.campaign-page .hero{margin:0 8px;border-radius:24px;padding-top:105px;min-height:calc(100svh - 16px)}
 body.campaign-page .hero .mega{font-size:40px}
 body.campaign-page .blk:not(.hero){padding:64px 0}
}
body.campaign-page{padding-left:0}
body.campaign-page .hero{padding-left:0}
body.blog-editorial .editorial-featured .post-card-img{aspect-ratio:16/9}
body:is(.blog-editorial,.campaign-page) .site-scroll-indicator{display:none!important}
body.campaign-page .setup-num{font-family:Fraunces,serif;font-weight:400;font-style:normal;white-space:nowrap}
body.campaign-page .btn{box-shadow:none}
body.campaign-page .tiers{gap:20px;background:none;border:0;overflow:visible}
body.campaign-page .tier{border:1px solid rgba(255,255,255,.14)}
/* Campaign heroes share the central reading position of the service heroes. */
body.campaign-page .hero{justify-content:center;padding-block:100px 80px}
body.campaign-page .hero-inner{margin-top:0}
@media(max-width:600px){body.campaign-page .hero{padding-block:100px 56px}}
/* Article opening uses the full reading width; the index forms two compact columns. */
body.blog-editorial .article-wrapper>.article-intro{max-width:none;width:100%}
body.blog-editorial .article-toc-box{padding:24px 28px}
body.blog-editorial .article-toc-title{margin-bottom:20px}
body.blog-editorial .article-toc-list{display:block;columns:2;column-gap:40px;counter-reset:contents}
body.blog-editorial .article-toc-item{break-inside:avoid;margin:0 0 14px;padding:0;counter-increment:contents}
body.blog-editorial .article-toc-item a{display:grid;grid-template-columns:24px 1fr;gap:10px;line-height:1.5}
body.blog-editorial .article-toc-item a::before{content:counter(contents,decimal-leading-zero);color:var(--purple);font-family:Fraunces,serif}
@media(max-width:700px){body.blog-editorial .article-toc-list{columns:1}body.blog-editorial .article-toc-box{padding:20px}}
