/* =====================================================================
   DIGILYSE DESIGN SYSTEM v2
   Loaded by the Digilyse Design System plugin. Edit this file, not the
   WordPress Customiser. Customiser CSS is deliberately disabled by the
   plugin so there is one source of truth. Cache-busted on filemtime.
   ===================================================================== */


/* ===================== DIGILYSE DESIGN SYSTEM v2 ===================== */
:root{
--dg-ink:#0f172a;--dg-body:#475569;--dg-muted:#64748b;--dg-line:#e2e8f0;
--dg-tint:#f1f5f9;--dg-brand:#f5b301;--dg-brand-dk:#d99f00;
--dg-dark:#101f38;--dg-dark-2:#1b3055;
--dg-max:1200px;--dg-gut:40px;--dg-read:800px;
--dg-s1:.5rem;--dg-s2:1rem;--dg-s3:1.5rem;--dg-s4:2rem;--dg-s5:3rem;--dg-s6:5.5rem;
--dg-r:16px}
/* ---------- 1. FULL-BLEED SHELL ---------- */
body{background:#fff}
#page,.site-content,.content-area,.site-main,.inside-article,article.page,.entry-content{
max-width:none!important;width:100%!important;flex:1 1 100%!important;
margin-left:0!important;margin-right:0!important;
padding-left:0!important;padding-right:0!important;
background:transparent!important;box-shadow:none!important;border:0!important}
.separate-containers .site-main{margin-top:0!important;margin-bottom:0!important}
.inside-article{padding-top:0!important;padding-bottom:0!important}
.separate-containers .inside-article{padding:0!important}
.entry-content{margin-top:0!important}
.entry-content>*{box-sizing:border-box}
.entry-content>.wp-block-spacer,.wp-block-spacer{display:none!important}
/* ---------- 2. SECTION SYSTEM ---------- */
.entry-content>.wp-block-group,.entry-content>.wp-block-cover{
padding-top:var(--dg-s6);padding-bottom:var(--dg-s6);margin:0!important;border-radius:0!important}
.entry-content>.wp-block-group>.wp-block-group__inner-container,
.entry-content>.wp-block-cover>.wp-block-cover__inner-container{
max-width:var(--dg-max)!important;margin-inline:auto!important;padding:0 var(--dg-gut)!important;width:100%}
.dg-tint,.entry-content .has-light-background-background-color{background:var(--dg-tint)!important}
.dg-dark{background:var(--dg-dark)!important}
.dg-dark h1,.dg-dark h2,.dg-dark h3{color:#fff!important}
.dg-dark p,.dg-dark li{color:#cbd5e1!important}
.entry-content .has-white-background-color{background-color:transparent!important}
/* ---------- 3. TYPE ---------- */
.entry-content h1,.entry-content h2,.entry-content h3{color:var(--dg-ink);letter-spacing:-.022em;line-height:1.14}
.entry-content h1{font-size:clamp(2.1rem,4.4vw,3.3rem);margin:0 0 var(--dg-s3)}
.entry-content h2{font-size:clamp(1.6rem,2.9vw,2.2rem);margin:0 0 var(--dg-s3)}
.entry-content h3{font-size:1.3rem;margin:0 0 var(--dg-s1)}
.entry-content p,.entry-content li{color:var(--dg-body);line-height:1.68;font-size:1.05rem}
.entry-content p{margin:0 0 var(--dg-s3)}
.entry-content p:last-child,.entry-content ul:last-child{margin-bottom:0}
.entry-content ul,.entry-content ol{padding-left:1.2rem}
.entry-content li{margin-bottom:.5rem}
.entry-content .dg-lede{font-size:1.18rem;max-width:58ch;margin-left:0;margin-right:0;color:var(--dg-body)}
.entry-content .dg-prose{max-width:70ch}
.entry-content .dg-eyebrow{font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--dg-brand);margin:0 0 var(--dg-s2)}
.entry-content .dg-center,.entry-content .dg-center h2,.entry-content .dg-center p{text-align:center}
.entry-content .dg-center .dg-lede,.entry-content .dg-center>p,.entry-content .dg-center .dg-prose{margin-left:auto;margin-right:auto}
.entry-content .has-text-align-center{text-align:center}
.entry-content p.has-text-align-center{margin-left:auto;margin-right:auto}
/* ---------- 4. SPLIT HERO ---------- */
.dg-hero,.dg-hero-simple{
background:linear-gradient(135deg,#0c1a30 0%,#16294a 52%,#1e3763 100%)!important;
position:relative;overflow:hidden;border-bottom:0!important}
.dg-hero::after,.dg-hero-simple::after{content:"";position:absolute;right:-12%;top:-40%;width:56%;height:180%;
background:radial-gradient(circle at 50% 50%,rgba(245,179,1,.14),transparent 62%);pointer-events:none}
.dg-hero>.wp-block-group__inner-container,.dg-hero-simple>.wp-block-group__inner-container{position:relative;z-index:2}
.dg-hero h1,.dg-hero-simple h1{color:#fff!important}
.dg-hero .dg-lede,.dg-hero-simple .dg-lede,.dg-hero p,.dg-hero-simple p{color:rgba(255,255,255,.84)!important}
.dg-hero .dg-lede{font-size:1.2rem}
.dg-hero-grid{align-items:center;gap:var(--dg-s5)!important;margin-top:0!important;margin-bottom:0!important}
.dg-hero-grid>.wp-block-column{min-width:0}
.dg-hero-img{margin:0!important}
.dg-hero-img img{border-radius:var(--dg-r);width:100%;height:430px;object-fit:cover;
box-shadow:0 26px 64px rgba(0,0,0,.45);display:block}
/* ---------- 5. CARDS ---------- */
.dg-offer-cards{align-items:stretch;gap:var(--dg-s3)!important;margin-top:0!important;margin-bottom:0!important;flex-wrap:wrap}
.dg-offer-cards>.wp-block-column{min-width:0;flex-basis:0!important;flex-grow:1}
.dg-offer-cards .dg-card{background:#fff;border:1px solid var(--dg-line);border-radius:var(--dg-r);
padding:var(--dg-s4);display:flex;flex-direction:column;
box-shadow:0 1px 2px rgba(15,23,42,.05),0 10px 28px rgba(15,23,42,.05)}
.dg-offer-cards .dg-card-featured{border:2px solid var(--dg-brand);box-shadow:0 14px 40px rgba(245,179,1,.20)}
.dg-offer-cards .dg-card p.dg-card-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.14em;color:var(--dg-muted);margin:0 0 var(--dg-s2);text-transform:uppercase}
.dg-card-featured p.dg-card-eyebrow{color:#a97600}
.dg-offer-cards .dg-card h3{margin:0 0 .3rem;font-size:1.45rem}
.dg-offer-cards .dg-card p.dg-card-price{font-size:2.05rem;font-weight:700;color:var(--dg-ink);margin:0;line-height:1.05;letter-spacing:-.03em}
.dg-offer-cards .dg-card p.dg-card-dur{font-size:.88rem;color:var(--dg-muted);margin:.35rem 0 var(--dg-s3)}
.dg-offer-cards .dg-card ul{margin:var(--dg-s2) 0 var(--dg-s3)}
.dg-offer-cards .dg-card p{font-size:1rem}
.entry-content .dg-card-note{font-size:.9rem;color:var(--dg-muted);line-height:1.55;margin:0 0 var(--dg-s3);padding-top:var(--dg-s2);border-top:1px solid #eef2f7}
.entry-content .dg-centered-note{border-top:0;padding-top:0;max-width:62ch;margin:var(--dg-s4) auto 0;text-align:center;font-size:.92rem;color:var(--dg-muted)}
.dg-offer-cards .dg-card .wp-block-buttons{margin-top:auto;padding-top:var(--dg-s2)}
.dg-offer-cards .dg-card .wp-block-button{width:100%}
/* ---------- 6. BUTTONS ---------- */
.entry-content .wp-block-button__link,.entry-content .wp-block-button__link.wp-element-button{
display:inline-block;padding:1rem 2.1rem;font-size:1rem;font-weight:600;line-height:1.25;
border-radius:10px;border:2px solid var(--dg-brand)!important;text-decoration:none;
background-color:var(--dg-brand)!important;color:#101f38!important;
transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}
.entry-content .wp-block-button__link:hover{background-color:var(--dg-brand-dk)!important;border-color:var(--dg-brand-dk)!important;
transform:translateY(-2px);box-shadow:0 12px 26px rgba(245,179,1,.3)}
.entry-content .is-style-outline .wp-block-button__link{
background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.45)!important}
.entry-content .is-style-outline .wp-block-button__link:hover{background:rgba(255,255,255,.1)!important;border-color:#fff!important;box-shadow:none}
.entry-content .dg-card:not(.dg-card-featured) .wp-block-button__link{
background:#fff!important;color:var(--dg-ink)!important;border-color:#cbd5e1!important;width:100%;text-align:center}
.entry-content .dg-card:not(.dg-card-featured) .wp-block-button__link:hover{background:var(--dg-tint)!important;border-color:var(--dg-ink)!important;box-shadow:none}
.entry-content .dg-card-featured .wp-block-button__link{width:100%;text-align:center}
.wp-block-buttons{gap:var(--dg-s2)}
/* ---------- 7. QUOTES + LISTS ---------- */
.entry-content .wp-block-quote{border-left:3px solid var(--dg-brand);padding:var(--dg-s1) 0 var(--dg-s1) var(--dg-s3);
margin:0 0 var(--dg-s4);font-style:normal;max-width:70ch}
.entry-content .wp-block-quote p{font-size:1.08rem;color:var(--dg-ink);line-height:1.6}
.entry-content .wp-block-quote cite{display:block;margin-top:.8rem;font-style:normal;font-size:.9rem;color:var(--dg-muted)}
.entry-content .dg-checklist{max-width:64ch;list-style:none;padding-left:0}
.entry-content .dg-checklist li{position:relative;padding-left:1.9rem;margin-bottom:.7rem}
.entry-content .dg-checklist li::before{content:"";position:absolute;left:0;top:.45em;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--dg-brand)}
.entry-content .dg-checklist li::after{content:"";position:absolute;left:.34rem;top:.72em;width:.28rem;height:.55rem;border:solid #101f38;border-width:0 2px 2px 0;transform:rotate(45deg)}
/* ---------- 8. CONTACT ---------- */
.dg-contact-aside{background:var(--dg-tint);border-radius:var(--dg-r);padding:var(--dg-s4)}
.dg-contact-aside h3:first-child{margin-top:0}
.dg-contact-aside h3{margin-top:var(--dg-s3)}
/* ---------- 9. FOOTER ---------- */
.site-footer{background:var(--dg-dark)!important;padding:0!important}
.footer-widgets{background:var(--dg-dark);padding:var(--dg-s5) 0}
.footer-widgets .widget-title{color:#fff;font-size:.95rem;font-weight:600;margin-bottom:var(--dg-s2)}
.footer-widgets,.footer-widgets p,.footer-widgets li{color:#94a3b8}
.footer-widgets a{color:#cbd5e1;text-decoration:none}
.footer-widgets a:hover{color:var(--dg-brand)}
.footer-widgets ul{list-style:none;margin:0;padding:0}
.footer-widgets li{margin-bottom:.55em}
.site-footer .site-info{background:var(--dg-dark)!important;color:#94a3b8!important;
padding:var(--dg-s3) 0!important;font-size:.85rem;border-top:1px solid rgba(255,255,255,.08)}
.site-info .copyright-bar{text-align:center}

.site-info .copyright-bar .copyright{font-size:.85rem;color:#94a3b8}

/* ---------- 10. HEADER ---------- */
.site-header{border-bottom:1px solid var(--dg-line)}
.main-navigation .main-nav ul li a{font-weight:500}
/* ---------- 11. RESPONSIVE ---------- */
@media(max-width:900px){
:root{--dg-s6:3.5rem;--dg-s5:2.25rem;--dg-gut:24px}
.dg-hero-grid{flex-wrap:wrap!important}
.dg-hero-grid>.wp-block-column{flex-basis:100%!important}
.dg-hero-img img{height:260px}
.entry-content h1{font-size:2.05rem}
}
@media(max-width:781px){
.dg-offer-cards>.wp-block-column{flex-basis:100%!important}
.dg-offer-cards .dg-card{padding:var(--dg-s3)}
.entry-content .wp-block-button__link{display:block;width:100%;text-align:center}
.entry-content .wp-block-buttons{flex-direction:column}
}
/* ---------- 12. LEGACY SECTION CLASSES ---------- */
.dg-band{background:var(--dg-tint)!important}
.dg-cta-band{background:var(--dg-dark)!important;border-radius:0!important}
.dg-cta-band h2,.dg-cta-band h3{color:#fff!important}
.dg-cta-band p{color:rgba(255,255,255,.86)!important;max-width:62ch;margin-left:auto!important;margin-right:auto!important}
.dg-cta-band .wp-block-buttons{justify-content:center}
/* ---------- 13. LOOSE TOP-LEVEL ELEMENTS (must stay last) ---------- */
.entry-content>h1,.entry-content>h2,.entry-content>h3,.entry-content>p,
.entry-content>ul,.entry-content>ol,.entry-content>figure,.entry-content>blockquote,
.entry-content>.wp-block-quote,.entry-content>.wp-block-columns,
.entry-content>.wp-block-buttons,.entry-content>.wp-block-list{
max-width:var(--dg-max);margin-left:auto;margin-right:auto;
padding-left:var(--dg-gut);padding-right:var(--dg-gut)}
.entry-content>h2{margin-top:var(--dg-s6);margin-bottom:var(--dg-s3)}
.entry-content>p{margin-bottom:var(--dg-s3)}
.entry-content>.wp-block-quote{padding-top:0;padding-bottom:0;border-left:0;margin-bottom:var(--dg-s4)}
.entry-content>.wp-block-quote p{max-width:70ch;border-left:3px solid var(--dg-brand);padding-left:var(--dg-s3)}
.entry-content>.wp-block-quote cite{padding-left:calc(var(--dg-s3) + 3px)}
.entry-content>.wp-block-columns{padding-top:var(--dg-s5);padding-bottom:var(--dg-s5)}
.entry-content>.wp-block-buttons{margin-top:var(--dg-s4);margin-bottom:var(--dg-s6)}
.entry-content>.dg-centered-note{margin-top:var(--dg-s4);margin-bottom:0}
/* ---------- 14. CENTRED SECTION CONTENT ---------- */
.dg-band .dg-checklist,.dg-tint .dg-checklist{margin-left:auto;margin-right:auto}
.entry-content>.wp-block-quote{max-width:calc(var(--dg-read) + var(--dg-gut)*2)}
.entry-content>.wp-block-quote p{max-width:none}
.entry-content>.wp-block-columns.dg-offer-cards{padding-top:var(--dg-s4);padding-bottom:0}
.entry-content>h2+.wp-block-columns.dg-offer-cards{padding-top:var(--dg-s4)}
/* ---------- 15. STATS STRIP ---------- */
.dg-stats{background:var(--dg-dark)!important;padding-top:var(--dg-s4)!important;padding-bottom:var(--dg-s4)!important;border-top:1px solid rgba(255,255,255,.09)}
.dg-stats-grid{margin:0!important;gap:var(--dg-s4)!important}
.entry-content .dg-stats p.dg-stat-n{font-size:2.4rem;font-weight:700;color:#fff;letter-spacing:-.03em;line-height:1;margin:0 0 .3rem}
.entry-content .dg-stats p.dg-stat-l{font-size:.92rem;color:#94a3b8;margin:0;line-height:1.4}
@media(max-width:781px){.dg-stats-grid{flex-wrap:wrap!important;gap:var(--dg-s3)!important}
.dg-stats-grid>.wp-block-column{flex-basis:100%!important}
.entry-content .dg-stats p.dg-stat-n{font-size:1.9rem}}
/* ---------- 16. HOMEPAGE PAIN CARDS + SECTION RHYTHM ---------- */
.home .entry-content>.wp-block-columns.has-background,
.home .entry-content>.wp-block-group.has-background{padding-top:var(--dg-s6);padding-bottom:var(--dg-s6)}
.entry-content .dg-pain{gap:var(--dg-s3)!important}
.entry-content .dg-pain .wp-block-column{background:var(--dg-tint);border-radius:var(--dg-r);padding:var(--dg-s3) var(--dg-s4);border-left:3px solid var(--dg-brand)}
.entry-content .dg-pain p{margin:0;color:var(--dg-ink);font-size:1.02rem;font-weight:500}
.entry-content .dg-pain p.has-text-color{color:var(--dg-ink)!important}
/* how-it-works anchor offset */
#how-it-works{scroll-margin-top:90px}
/* ---------- 17. OVERRIDE LEGACY INLINE SECTION STYLES ---------- */
.entry-content>.wp-block-group,.entry-content>.wp-block-columns{
padding-top:var(--dg-s6)!important;padding-bottom:var(--dg-s6)!important;
margin-top:0!important;margin-bottom:0!important}
.entry-content>.wp-block-columns.dg-offer-cards{padding-top:var(--dg-s4)!important;padding-bottom:0!important}
.entry-content>h2{margin-top:var(--dg-s6)!important;margin-bottom:var(--dg-s3)!important}
.entry-content>h2+p{margin-bottom:0!important}
.entry-content>p{margin-bottom:0!important}
.entry-content>.wp-block-buttons{margin-top:var(--dg-s4)!important;margin-bottom:var(--dg-s6)!important}
/* pain cards: beat the legacy inline pink */
.entry-content .dg-pain>.wp-block-column{
background-color:var(--dg-tint)!important;border-left-color:var(--dg-brand)!important;
border-left-width:3px!important;border-radius:var(--dg-r)!important;padding:var(--dg-s3) var(--dg-s4)!important}
.entry-content .dg-pain p{margin:0;color:var(--dg-ink)!important;font-weight:500;font-size:1.02rem}
/* founder portrait in the "work directly with me" row */
.entry-content .wp-block-columns .wp-block-image.is-resized{width:100%!important;margin:0!important}
.entry-content .wp-block-columns .wp-block-image.is-resized img{
width:100%!important;height:380px!important;object-fit:cover!important;object-position:center 18%;
border-radius:var(--dg-r);display:block}
/* closing band */
.dg-close-band{background:var(--dg-tint)!important}
.dg-close-band p{max-width:60ch;margin-left:auto!important;margin-right:auto!important}
/* how-it-works step cards */
.entry-content #how-it-works+p{margin-bottom:0!important}
/* ---------- 18. FOUNDER ROW BALANCE ---------- */
.entry-content>.wp-block-columns.are-vertically-aligned-center>.wp-block-column:first-child{flex-basis:38%!important}
.entry-content>.wp-block-columns.are-vertically-aligned-center>.wp-block-column:last-child{flex-basis:62%!important}
.entry-content>.wp-block-columns.are-vertically-aligned-center{gap:var(--dg-s5)!important}
.entry-content .wp-block-columns .wp-block-image.is-resized img{height:440px!important}
@media(max-width:781px){
.entry-content>.wp-block-columns.are-vertically-aligned-center>.wp-block-column{flex-basis:100%!important}
.entry-content .wp-block-columns .wp-block-image.is-resized img{height:280px!important}}
/* ---------- 19. READABLE PROSE MEASURE ---------- */
.entry-content>h2,.entry-content>h3,.entry-content>p,.entry-content>ul,.entry-content>ol,
.entry-content>.wp-block-list,.entry-content>blockquote,.entry-content>.wp-block-quote{
max-width:calc(var(--dg-read) + var(--dg-gut)*2)}
.entry-content>.wp-block-columns,.entry-content>.wp-block-buttons{max-width:var(--dg-max)}
.dg-band .wp-block-group__inner-container>p,.dg-tint .wp-block-group__inner-container>p{max-width:var(--dg-read)}
/* ---------- 20. HIDE DUPLICATE THEME PAGE TITLE ---------- */
.page .entry-header .entry-title{display:none}
.page .entry-header{margin:0;padding:0}
/* ---------- 21. FORMS ---------- */
.entry-content .wpforms-container{margin:0}
.entry-content .wpforms-form input[type=text],
.entry-content .wpforms-form input[type=email],
.entry-content .wpforms-form input[type=tel],
.entry-content .wpforms-form textarea,
.entry-content .wpforms-form select{
width:100%!important;max-width:none!important;border:1px solid var(--dg-line)!important;
border-radius:10px!important;padding:.8rem .9rem!important;font-size:1rem!important;
background:#fff!important;color:var(--dg-ink)!important;box-shadow:none!important;transition:border-color .15s ease}
.entry-content .wpforms-form input:focus,.entry-content .wpforms-form textarea:focus{
border-color:var(--dg-brand)!important;outline:2px solid rgba(245,179,1,.25)!important;outline-offset:0}
.entry-content .wpforms-form .wpforms-field-label{font-weight:600!important;color:var(--dg-ink)!important;font-size:.95rem!important;margin-bottom:.4rem!important}
.entry-content .wpforms-form .wpforms-field-sublabel{color:var(--dg-muted)!important;font-size:.8rem!important}
.entry-content .wpforms-form .wpforms-required-label{color:#dc2626!important}
.entry-content .wpforms-form button[type=submit],
.entry-content .wpforms-submit{
background:var(--dg-brand)!important;color:#101f38!important;border:2px solid var(--dg-brand)!important;
border-radius:10px!important;padding:.95rem 2rem!important;font-size:1rem!important;font-weight:600!important;
cursor:pointer;transition:.15s ease;box-shadow:none!important}
.entry-content .wpforms-form button[type=submit]:hover,.entry-content .wpforms-submit:hover{
background:var(--dg-brand-dk)!important;border-color:var(--dg-brand-dk)!important;transform:translateY(-1px)}
.entry-content .wpforms-field{padding:0 0 var(--dg-s3)!important}

/* ---------- 22. PROSE COLUMN CONSISTENCY (must stay last) ----------
   Headings and body share one reading column and one left edge.
   Fixed px, never ch: ch scales with font-size, so a heading and a
   paragraph compute different widths from the very same rule.       */
.entry-content>h2,.entry-content>h3,.entry-content>p,.entry-content>ul,.entry-content>ol,
.entry-content>.wp-block-list,.entry-content>blockquote,.entry-content>.wp-block-quote{
max-width:calc(var(--dg-read) + var(--dg-gut)*2)!important;
margin-left:auto!important;margin-right:auto!important}
.entry-content>p,.entry-content>ul,.entry-content>ol{margin-bottom:var(--dg-s3)!important}
.entry-content>h2{margin-top:var(--dg-s6)!important;margin-bottom:var(--dg-s3)!important}
.entry-content>h2+p{margin-bottom:var(--dg-s3)!important}
.entry-content>.wp-block-quote p{max-width:none}
.entry-content .dg-lede{max-width:min(58ch,560px)}
.entry-content .dg-prose{max-width:var(--dg-read)}


/* ============================================================
   24. BLOG, ARCHIVES, SEARCH AND SINGLE POSTS
   These templates have no dg- section system, so the global shell
   reset in section 1 left them with no container and no padding.
   Everything below re-establishes a container for them.
   ============================================================ */
.blog .site-content,.archive .site-content,.search .site-content,
.single .site-content,.error404 .site-content{
max-width:var(--dg-max)!important;margin-left:auto!important;margin-right:auto!important;
padding:var(--dg-s5) var(--dg-gut) var(--dg-s6)!important;
gap:var(--dg-s5);align-items:flex-start}
.blog .content-area,.archive .content-area,.search .content-area,
.single .content-area,.error404 .content-area{
flex:1 1 auto!important;width:auto!important;min-width:0}
.blog .sidebar,.archive .sidebar,.search .sidebar,.single .sidebar{
flex:0 0 300px!important;width:300px!important;max-width:300px!important;position:sticky;top:var(--dg-s3)}
.blog .inside-article,.archive .inside-article,.search .inside-article,.single .inside-article{padding:0!important}

/* archive header, injected by the plugin */
.dg-archive-head{padding-bottom:var(--dg-s4);border-bottom:1px solid var(--dg-line);margin-bottom:var(--dg-s4)}
.dg-archive-head h1{font-size:clamp(1.9rem,3.4vw,2.5rem);color:var(--dg-ink);letter-spacing:-.022em;margin:0 0 var(--dg-s2)}
.dg-archive-head .dg-lede{margin:0;max-width:60ch}
.dg-archive-head .dg-eyebrow{color:#a56f00}

/* post cards on archives */
.blog .site-main,.archive .site-main,.search .site-main{
display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--dg-s4);align-items:start}
.blog .site-main>*:not(article),.archive .site-main>*:not(article),.search .site-main>*:not(article){grid-column:1/-1}
.blog .site-main>article,.archive .site-main>article,.search .site-main>article{
background:#fff;border:1px solid var(--dg-line);border-radius:var(--dg-r);overflow:hidden;
margin:0!important;display:flex;flex-direction:column;
box-shadow:0 1px 2px rgba(15,23,42,.05),0 10px 26px rgba(15,23,42,.04);
transition:transform .15s ease,box-shadow .15s ease}
.blog .site-main>article:hover,.archive .site-main>article:hover{
transform:translateY(-2px);box-shadow:0 16px 38px rgba(15,23,42,.10)}
.blog .post-image,.archive .post-image{margin:0!important}
.blog .post-image img,.archive .post-image img{
display:block;width:100%;height:190px;object-fit:cover;border-radius:0!important}
.blog .entry-header,.archive .entry-header{padding:var(--dg-s3) var(--dg-s3) 0}
.blog .entry-title,.archive .entry-title{font-size:1.2rem!important;line-height:1.3;margin:0 0 .45rem!important;letter-spacing:-.01em}
.blog .entry-title a,.archive .entry-title a{color:var(--dg-ink);text-decoration:none}
.blog .entry-title a:hover,.archive .entry-title a:hover{color:#a56f00}
.blog .entry-meta,.archive .entry-meta{
font-size:.8rem;color:var(--dg-muted);padding:0 var(--dg-s3);margin:0 0 var(--dg-s2)}
.blog .entry-meta a,.archive .entry-meta a{color:var(--dg-muted);text-decoration:none}
.blog .entry-summary,.archive .entry-summary{
padding:0 var(--dg-s3) var(--dg-s3);margin:0;color:var(--dg-body);font-size:.97rem;line-height:1.6}
.blog .entry-summary p,.archive .entry-summary p{font-size:.97rem;margin:0 0 var(--dg-s2)}
.read-more,.blog .read-more,.archive .read-more{
display:inline-block;font-weight:600;font-size:.92rem;color:var(--dg-ink);text-decoration:none;
border-bottom:2px solid var(--dg-brand);padding-bottom:1px}
.read-more:hover{color:#a56f00}

/* pagination */
.paging-navigation,.nav-links,.post-navigation{margin-top:var(--dg-s4)}
.paging-navigation .page-numbers,.nav-links .page-numbers{
display:inline-block;padding:.55rem .9rem;border:1px solid var(--dg-line);border-radius:8px;
margin:0 .35rem .35rem 0;color:var(--dg-ink);text-decoration:none;font-size:.92rem}
.paging-navigation .page-numbers:hover{border-color:var(--dg-ink)}
.paging-navigation .page-numbers.current{background:var(--dg-brand);border-color:var(--dg-brand);font-weight:600}

/* single post */
.single .site-main>article{background:transparent}
.single .entry-header{margin-bottom:var(--dg-s3)}
.single .entry-title{
font-size:clamp(1.9rem,3.6vw,2.7rem)!important;line-height:1.14;letter-spacing:-.022em;
color:var(--dg-ink);margin:0 0 var(--dg-s2)!important;max-width:22ch}
.single .entry-meta{font-size:.85rem;color:var(--dg-muted);margin-bottom:var(--dg-s4)}
.single .entry-meta a{color:var(--dg-muted)}
.single .post-image{margin:0 0 var(--dg-s5)!important}
.single .post-image img{width:100%;height:auto;border-radius:var(--dg-r);display:block}
/* undo the page-level section constraints inside post bodies */
.single .entry-content{max-width:var(--dg-read)}
.single .entry-content>*{
max-width:none!important;margin-left:0!important;margin-right:0!important;
padding-left:0!important;padding-right:0!important}
.single .entry-content>h2{font-size:1.65rem!important;margin-top:var(--dg-s5)!important;margin-bottom:var(--dg-s2)!important}
.single .entry-content>h3{font-size:1.25rem!important;margin-top:var(--dg-s4)!important}
.single .entry-content>p,.single .entry-content>ul,.single .entry-content>ol{
font-size:1.06rem;line-height:1.72;margin-bottom:var(--dg-s3)!important}
.single .entry-content img{max-width:100%;height:auto;border-radius:var(--dg-r)}
.single .entry-content figure{margin:var(--dg-s4) 0}
.single .entry-content blockquote{border-left:3px solid var(--dg-brand);padding-left:var(--dg-s3);margin:var(--dg-s4) 0}

/* sidebar widgets */
.sidebar .widget{
background:var(--dg-tint);border:1px solid var(--dg-line);border-radius:var(--dg-r);
padding:var(--dg-s3);margin-bottom:var(--dg-s3)}
.sidebar .widget-title{font-size:.9rem;font-weight:700;color:var(--dg-ink);margin:0 0 var(--dg-s2);letter-spacing:.01em}
.sidebar .widget ul{list-style:none;margin:0;padding:0}
.sidebar .widget li{margin-bottom:.65rem;line-height:1.45}
.sidebar .widget li:last-child{margin-bottom:0}
.sidebar .widget a{color:var(--dg-body);text-decoration:none;font-size:.94rem}
.sidebar .widget a:hover{color:#a56f00}
.sidebar input[type=search],.sidebar input[type=text]{
width:100%;border:1px solid var(--dg-line);border-radius:8px;padding:.6rem .7rem;font-size:.95rem;background:#fff}
.sidebar input[type=search]:focus{border-color:var(--dg-brand);outline:2px solid rgba(245,179,1,.25)}

/* ============================================================
   25. CASE STUDY CARDS
   ============================================================ */
.dg-case .dg-eyebrow{color:#a56f00}
.dg-case h2{max-width:26ch}
.entry-content .dg-case-stat{font-size:1.1rem;color:var(--dg-ink);font-weight:500;margin:0 0 var(--dg-s4);max-width:60ch}
.dg-case-grid{gap:var(--dg-s5)!important;margin:0 0 var(--dg-s4)!important}
.dg-case-grid>.wp-block-column{min-width:0}
.entry-content .dg-case-label{
font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
color:var(--dg-muted);margin:0 0 var(--dg-s1)}
.entry-content .dg-case-result{
margin:0;padding:var(--dg-s3);background:#fff;border-left:3px solid var(--dg-brand);
border-radius:0 var(--dg-r) var(--dg-r) 0;color:var(--dg-ink);max-width:none}
.dg-tint .dg-case-result{background:#fff}
.dg-case:not(.dg-tint) .dg-case-result{background:var(--dg-tint)}

/* ---------- 26. RESPONSIVE FOR BLOG AND CASES ---------- */
@media(max-width:900px){
.blog .site-content,.archive .site-content,.search .site-content,.single .site-content{
flex-wrap:wrap;padding:var(--dg-s4) var(--dg-gut) var(--dg-s5)!important}
.blog .sidebar,.archive .sidebar,.search .sidebar,.single .sidebar{
flex:1 1 100%!important;width:100%!important;max-width:none!important;position:static}
}
@media(max-width:781px){
.blog .site-main,.archive .site-main,.search .site-main{grid-template-columns:1fr}
.dg-case-grid{gap:var(--dg-s3)!important}
.dg-case-grid>.wp-block-column{flex-basis:100%!important}
}

/* ---------- 27. BLOG CARD ORDER AND WIDGET CORRECTIONS ----------
   GeneratePress outputs entry-header before post-image, and block
   widgets carry no .widget-title class, so the earlier rules missed.  */
.blog .site-main>article>.inside-article,
.archive .site-main>article>.inside-article,
.search .site-main>article>.inside-article{
display:flex;flex-direction:column;height:100%}
.blog .post-image,.archive .post-image{order:1}
.blog .entry-header,.archive .entry-header{order:2}
.blog .entry-meta,.archive .entry-meta{order:3;margin-top:auto}
.blog .entry-summary,.archive .entry-summary{order:4}
.blog .entry-header,.archive .entry-header{padding:var(--dg-s3) var(--dg-s3) 0!important}
.blog .entry-meta,.archive .entry-meta{padding:0 var(--dg-s3)!important;margin-bottom:var(--dg-s2)!important;margin-top:0!important}
.blog .entry-summary,.archive .entry-summary{padding:0 var(--dg-s3) var(--dg-s3)!important;margin-top:auto!important}

/* block widgets: headings have no .widget-title class */
.sidebar .widget h2,.sidebar .widget h3,
.widget-area .widget h2,.widget-area .widget h3{
font-size:.9rem!important;font-weight:700!important;color:var(--dg-ink)!important;
letter-spacing:.02em;margin:0 0 var(--dg-s2)!important;line-height:1.3}
.sidebar .widget,.widget-area.sidebar .widget{padding:var(--dg-s3)!important}
.sidebar .wp-block-latest-posts__list li,.sidebar .wp-block-latest-posts li{margin-bottom:.7rem;line-height:1.4}

/* sidebar search button on brand */
.sidebar .wp-block-search__button,.widget-area .wp-block-search__button{
background-color:var(--dg-brand)!important;color:#101f38!important;border:2px solid var(--dg-brand)!important;
border-radius:8px!important;font-weight:600;padding:.55rem 1rem!important;margin-left:.4rem}
.sidebar .wp-block-search__button:hover{background-color:var(--dg-brand-dk)!important;border-color:var(--dg-brand-dk)!important}
.sidebar .wp-block-search__input{border:1px solid var(--dg-line)!important;border-radius:8px!important;padding:.55rem .7rem!important}

/* de-emphasise the author byline, keep the date */
.blog .entry-meta .byline,.archive .entry-meta .byline,.single .entry-meta .byline{display:none}
.blog .entry-meta .comments-link,.archive .entry-meta .comments-link{display:none}

/* ============================================================
   28. FIGURES AND HEADING CONSISTENCY
   ============================================================ */
/* wide in-section figures, constrained to the content column */
.entry-content figure.dg-figure-wide{
margin:var(--dg-s4) auto 0!important;max-width:var(--dg-max);
padding-left:var(--dg-gut);padding-right:var(--dg-gut);box-sizing:border-box}
.entry-content figure.dg-figure-wide img{
display:block;width:100%;height:auto;border-radius:var(--dg-r);
border:1px solid var(--dg-line);box-shadow:0 10px 30px rgba(15,23,42,.07)}
/* figures inside a tinted band get no border, the tint already separates them */
.dg-tint figure.dg-figure-wide img,.dg-band figure.dg-figure-wide img{border-color:#e2e8f0}
/* banner figure inside a dark hero */
.dg-hero figure.dg-hero-banner{margin:var(--dg-s4) 0 0!important;padding:0!important;max-width:none}
.dg-hero figure.dg-hero-banner img{
display:block;width:100%;height:auto;border-radius:var(--dg-r);
box-shadow:0 24px 60px rgba(0,0,0,.4)}

/* one heading scale everywhere, legacy inline sizes are now stripped from
   content but keep this as a backstop against future paste-ins */
.entry-content h2[style],.entry-content h3[style]{font-size:inherit!important}
.entry-content>h2,.dg-hero h2,.dg-tint h2,.dg-band h2,.dg-case h2,
.dg-cta-band h2,.dg-close-band h2,.dg-stats h2{
font-size:clamp(1.6rem,2.9vw,2.2rem)!important;font-weight:700!important;letter-spacing:-.022em}
.entry-content h3{font-size:1.3rem!important;font-weight:700!important}
/* homepage step cards: one accent colour, not three */
.entry-content .wp-block-columns .wp-block-column>h3:first-child[class*="has-text-color"]{
color:#a56f00!important;font-size:.72rem!important;font-weight:700!important;
letter-spacing:.14em;text-transform:uppercase}


/* ============================================================
   29. AI SORTED PAGE COMPONENTS
   Rebuilt on the design system in August 2026. The old page had
   its own 13k stylesheet, a 720px column, 30px headings and body
   text that failed contrast on the dark CTA. All of that is gone.
   ============================================================ */
.dg-section{padding-top:var(--dg-s6);padding-bottom:var(--dg-s6)}
.entry-content .dg-section-lede{
max-width:64ch;margin-left:auto!important;margin-right:auto!important;
font-size:1.1rem;color:var(--dg-body);margin-bottom:var(--dg-s5)!important}
.dg-dark .dg-section-lede{color:#cbd5e1!important}
.entry-content .dg-hero-note{
display:inline-block;font-size:.85rem;font-weight:600;letter-spacing:.02em;
color:#101f38!important;background:var(--dg-brand);border-radius:999px;
padding:.35rem .9rem;margin:0 0 var(--dg-s3)!important}

/* deliverables */
.dg-deliverable{
background:#fff;border:1px solid var(--dg-line);border-left:3px solid var(--dg-brand);
border-radius:var(--dg-r);padding:var(--dg-s3) var(--dg-s4)!important;
margin:0 auto var(--dg-s2)!important;max-width:var(--dg-max)}
.dg-deliverable>.wp-block-group__inner-container{padding:0!important;max-width:none!important}
.dg-deliverable h3{font-size:1.1rem!important;margin:0 0 .35rem!important}
.dg-deliverable p{margin:0;font-size:1rem;color:var(--dg-body)}
.dg-tint .dg-deliverable{background:#fff}

/* three-step row */
.dg-steps{gap:var(--dg-s4)!important;margin-top:var(--dg-s2)!important}
.dg-steps>.wp-block-column{
background:#fff;border:1px solid var(--dg-line);border-radius:var(--dg-r);padding:var(--dg-s4)}
.entry-content .dg-step-n{
width:2.4rem;height:2.4rem;border-radius:999px;background:var(--dg-brand);
color:#101f38!important;font-weight:700;display:flex;align-items:center;justify-content:center;
margin:0 0 var(--dg-s2)!important;font-size:1.05rem}
.dg-steps h3{font-size:1.2rem!important;margin-bottom:.4rem!important}
.dg-steps p{font-size:.98rem;margin:0}

/* sector grid on dark */
.dg-sectors{gap:var(--dg-s3)!important;margin:0 0 var(--dg-s3)!important}
.dg-sectors>.wp-block-column{
background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);
border-radius:var(--dg-r);padding:var(--dg-s3)}
.dg-sectors h3{color:#fff!important;font-size:1.05rem!important;margin-bottom:.3rem!important}
.dg-sectors p{color:#94a3b8!important;font-size:.92rem;margin:0}
.entry-content .dg-sector-note{color:#94a3b8!important;font-size:.92rem;margin-top:var(--dg-s3)!important}

/* FAQ */
.dg-faq{max-width:var(--dg-read);margin:0 auto}
.dg-faq-item{
background:#fff;border:1px solid var(--dg-line);border-radius:var(--dg-r);
margin-bottom:var(--dg-s2);overflow:hidden}
.dg-faq-item summary{
cursor:pointer;list-style:none;padding:var(--dg-s3);font-weight:600;color:var(--dg-ink);
font-size:1.02rem;position:relative;padding-right:3rem}
.dg-faq-item summary::-webkit-details-marker{display:none}
.dg-faq-item summary::after{
content:"+";position:absolute;right:var(--dg-s3);top:50%;transform:translateY(-50%);
font-size:1.3rem;font-weight:400;color:#a56f00;line-height:1}
.dg-faq-item[open] summary::after{content:"\2212"}
.dg-faq-item[open]{border-color:var(--dg-brand)}
.dg-faq-a{padding:0 var(--dg-s3) var(--dg-s3)}
.dg-faq-a p{margin:0;color:var(--dg-body);font-size:1rem;line-height:1.65}

/* guarantee */
.dg-guarantee{
background:#fff;border:1px solid var(--dg-brand);border-radius:var(--dg-r);
padding:var(--dg-s4)!important;max-width:760px;margin:0 auto!important;text-align:center}
.dg-guarantee>.wp-block-group__inner-container{padding:0!important;max-width:none!important}
.dg-guarantee .dg-eyebrow{color:#a56f00}
.dg-guarantee h3{font-size:1.3rem!important;margin-bottom:var(--dg-s2)!important}
.dg-guarantee p{color:var(--dg-body);margin-bottom:var(--dg-s2)}
.dg-guarantee p:last-child{margin-bottom:0;font-size:.95rem;color:var(--dg-muted)}
.entry-content .dg-cta-note{color:rgba(255,255,255,.65)!important;font-size:.9rem;margin-top:var(--dg-s3)!important}

/* preserved workspace mock, recoloured onto brand */
.ais-mockup{border-radius:12px;overflow:hidden;border:1px solid #d0d7de;margin-top:32px;box-shadow:0 8px 32px rgba(0,0,0,.1);max-width:680px}
.ais-mock-bar{background:#1e1e2e;padding:10px 16px;display:flex;align-items:center;gap:8px}
.ais-mock-dot{width:12px;height:12px;border-radius:50%;background:#ff5f57;display:inline-block}
.ais-mock-dot:nth-child(2){background:#febc2e}
.ais-mock-dot:nth-child(3){background:#28c840}
.ais-mock-title{font-size:.78rem;color:rgba(255,255,255,.5);margin-left:8px;font-family:monospace}
.ais-mock-body{display:flex;min-height:260px}
.ais-mock-sidebar{width:168px;flex-shrink:0;background:#1a1a2e;padding:16px 0}
.ais-mock-sidebar-hd{font-size:.7rem;font-weight:600;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.08em;padding:0 14px 10px}
.ais-mock-proj{padding:8px 14px;font-size:.82rem;color:rgba(255,255,255,.55);cursor:default;border-radius:6px;margin:0 6px 2px;transition:background .15s}
.ais-mock-proj.active{background:rgba(245,179,1,.18);color:var(--teal-lt)}
.ais-mock-main{flex:1;background:#fff;display:flex;flex-direction:column}
.ais-mock-instr{background:#f6f8fa;border-bottom:1px solid #e8ecf0;padding:10px 16px;font-size:.78rem;color:#57606a;line-height:1.5}
.ais-mock-instr strong{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#8b949e;margin-bottom:4px}
.ais-mock-chat{padding:14px 16px;display:flex;flex-direction:column;gap:12px}
.ais-mock-you{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:10px 14px;font-size:.82rem;color:#0c4a6e;line-height:1.5}
.ais-mock-you::before{content:"You  ";font-weight:700;font-size:.72rem;color:#0369a1;display:block;margin-bottom:4px}
.ais-mock-ai-resp{background:#fff;font-size:.82rem;color:#374151;line-height:1.6}
.ais-mock-ai-resp::before{content:"Claude  ";font-weight:700;font-size:.72rem;color:var(--teal-dk);display:block;margin-bottom:4px}
.ais-mock-caption{text-align:center;font-size:.8rem;color:var(--g400);margin-top:10px;font-style:italic}
.ais-mock-sidebar{width:120px}
.ais-mockup { max-width:100%; overflow:hidden; }
.ais-mock-body { overflow:hidden; }
.entry-content .ais-mockup{max-width:var(--dg-max);margin:var(--dg-s5) auto 0}
.entry-content .ais-mock-caption{
text-align:center;font-size:.9rem;color:var(--dg-muted);margin-top:var(--dg-s2)}

@media(max-width:781px){
.dg-steps>.wp-block-column,.dg-sectors>.wp-block-column{flex-basis:100%!important}
.dg-steps,.dg-sectors{gap:var(--dg-s3)!important}
}

/* ============================================================
   30. FIGURE BREATHING ROOM AND CONTACT FORM POLISH
   ============================================================ */
/* graphics need air, especially where a dark band follows */
.entry-content figure.dg-figure-wide{
margin-top:var(--dg-s5)!important;margin-bottom:var(--dg-s5)!important}
.entry-content figure.dg-figure-wide:last-child{margin-bottom:0!important}
.dg-tint figure.dg-figure-wide,.dg-band figure.dg-figure-wide{margin-bottom:0!important}
.entry-content>.wp-block-group>.wp-block-group__inner-container>figure.dg-figure-wide:last-child{margin-bottom:0!important}
/* the graphics carry their own rounded frame, so drop the extra border */
.entry-content figure.dg-figure-wide img{border:0!important;box-shadow:0 18px 44px rgba(15,23,42,.13)}

/* contact form: strip the WPForms defaults that read as unfinished */
.entry-content .wpforms-field-label{
font-size:.95rem!important;font-weight:600!important;color:var(--dg-ink)!important;
margin-bottom:.45rem!important;display:block}
.entry-content .wpforms-field-sublabel{
color:var(--dg-muted)!important;font-size:.78rem!important;margin-top:.3rem!important;font-weight:400}
.entry-content .wpforms-field{padding:0 0 var(--dg-s3)!important}
.entry-content .wpforms-field-name .wpforms-field-row{gap:var(--dg-s2)}
.entry-content .wpforms-form input[type=text],
.entry-content .wpforms-form input[type=email],
.entry-content .wpforms-form textarea{
font-size:1rem!important;line-height:1.5!important;color:var(--dg-ink)!important}
.entry-content .wpforms-form input::placeholder,
.entry-content .wpforms-form textarea::placeholder{color:#94a3b8}
.entry-content .wpforms-form textarea{min-height:150px}
.entry-content .wpforms-submit-container{padding-top:var(--dg-s1)!important}
/* contact aside sits level with the form */
.dg-contact-aside{align-self:start}
.dg-contact-aside h3{font-size:1.15rem!important}
.dg-contact-aside ul{margin:0 0 var(--dg-s3);padding-left:1.1rem}
.dg-contact-aside li{margin-bottom:.5rem;font-size:.98rem}
.dg-contact-aside p{font-size:.98rem}

/* external links opened in a new tab get no visual change, but keep focus visible */
.entry-content a[target="_blank"]:focus-visible,
.main-navigation a[target="_blank"]:focus-visible{outline:2px solid var(--dg-brand);outline-offset:2px}

/* ============================================================
   31. DESIGN DIRECTION PASS
   Six pages had the same first screen: portrait right, product
   below the fold. On the pages that sell, the product is the
   offer and its price, so the hero now shows the work and gets
   out of the way sooner.
   ============================================================ */
/* shorter heroes so pricing and content rise into the first viewport */
.entry-content>.wp-block-group.dg-hero{
padding-top:var(--dg-s5)!important;padding-bottom:var(--dg-s5)!important}
.dg-hero-img img{height:360px!important}

/* a diagram in the hero slot: no crop, no heavy shadow, sits on the navy */
.dg-hero figure.dg-hero-figure{margin:0!important;padding:0!important;max-width:none}
.dg-hero figure.dg-hero-figure img{
display:block;width:100%;height:auto;border:0!important;border-radius:var(--dg-r);
box-shadow:0 22px 54px rgba(0,0,0,.38)}

/* compact text-only hero, used where a portrait would be filler */
.dg-hero-compact{padding-top:var(--dg-s5)!important;padding-bottom:var(--dg-s5)!important}
.dg-hero-compact h1{max-width:20ch}
.dg-hero-compact .dg-lede{max-width:58ch}

/* outcomes strip: real results, above the fold, before any prose */
.dg-outcomes{background:var(--dg-tint)!important;
padding-top:var(--dg-s5)!important;padding-bottom:var(--dg-s5)!important;
border-bottom:1px solid var(--dg-line)}
.dg-outcomes-grid{gap:var(--dg-s4)!important;margin:0!important}
.dg-outcomes-grid>.wp-block-column{min-width:0}
.entry-content .dg-outcomes p.dg-outcome-n{
font-size:2.1rem;font-weight:700;color:var(--dg-ink);letter-spacing:-.03em;
line-height:1.05;margin:0 0 .45rem}
.entry-content .dg-outcomes p.dg-outcome-l{
font-size:.95rem;color:var(--dg-body);line-height:1.45;margin:0;max-width:24ch}
@media(max-width:781px){
.dg-outcomes-grid{flex-wrap:wrap!important;gap:var(--dg-s3)!important}
.dg-outcomes-grid>.wp-block-column{flex-basis:calc(50% - var(--dg-s2))!important}
.entry-content .dg-outcomes p.dg-outcome-n{font-size:1.7rem}
.dg-hero-img img{height:260px!important}
}


/* ============================================================
   32. CONTACT FORM CORRECTIONS
   The previous pass left a stray "(" because an ::after rule had
   a syntax error, and the name row inherited WPForms' 60% medium
   width, so the two 189px name fields wrapped and reversed.
   ============================================================ */
/* every field container spans the column, not WPForms' 60% */
.entry-content .wpforms-field-medium,
.entry-content .wpforms-field-row,
.entry-content div.wpforms-container .wpforms-field-medium{
max-width:100%!important;width:100%!important}

/* first and last name: two equal columns that never wrap */
.entry-content .wpforms-field-name .wpforms-field-row{
display:flex!important;flex-wrap:nowrap!important;gap:var(--dg-s2)!important;width:100%!important}
.entry-content .wpforms-field-name .wpforms-field-row-block{
flex:1 1 0!important;width:auto!important;max-width:none!important;
margin:0!important;padding:0!important;float:none!important}
.entry-content .wpforms-field-name .wpforms-field-row-block input{width:100%!important}

/* all three fields are required, so say it once instead of asterisking each */
.entry-content .wpforms-required-label{display:none!important}
.entry-content .dg-form-note{
font-size:.88rem;color:var(--dg-muted);margin:0 0 var(--dg-s3)!important}

/* sublabels sit quietly under their input */
.entry-content .wpforms-field-sublabel{
color:var(--dg-muted)!important;font-size:.78rem!important;
margin-top:.35rem!important;font-weight:400;display:block}

/* keep the honeypot fields out of the flow entirely */
.entry-content .wpforms-field[id*="field_4-container"],
.entry-content .wpforms-field[id*="field_5-container"]{
position:absolute!important;left:-9999px!important;height:0!important;overflow:hidden}

@media(max-width:600px){
.entry-content .wpforms-field-name .wpforms-field-row{flex-wrap:wrap!important}
.entry-content .wpforms-field-name .wpforms-field-row-block{flex:1 1 100%!important}
}


/* ============================================================
   33. TEXT AND HEADING CORRECTIONS
   ============================================================ */
/* "Step 1" is a label, not a heading. Six h3s became three. */
.entry-content .dg-step-eyebrow{
font-size:.72rem!important;font-weight:700!important;letter-spacing:.14em;
text-transform:uppercase;color:#a56f00!important;margin:0 0 .4rem!important}
/* step cards: one accent, and body copy back on the type scale */
.entry-content .wp-block-columns .wp-block-column[style*="border-top-color"]{
border-top-color:var(--dg-brand)!important;background-color:var(--dg-tint)!important}
.entry-content .wp-block-columns .wp-block-column[style*="border-top-color"] p{
font-size:1rem!important;color:var(--dg-body)!important}
.entry-content .wp-block-columns .wp-block-column[style*="border-top-color"] h3{
font-size:1.2rem!important;margin-bottom:.4rem!important}


/* ============================================================
   34. ABOUT REDESIGN + STACKED DIAGRAM HEROES
   About was headings and bullets on white, a word doc. It now
   has a pull-stat, a fit / not-fit comparison, and badges.
   Hero diagrams were 1200px graphics crushed into a 480px
   column; they now sit full width under the hero text.
   ============================================================ */

/* --- stacked hero: text, then the diagram at full readable width --- */
.dg-hero-stack h1{max-width:22ch}
.dg-hero-stack .dg-lede{max-width:62ch}
.dg-hero figure.dg-hero-panel{
margin:var(--dg-s4) 0 0!important;padding:0!important;max-width:none}
.dg-hero figure.dg-hero-panel img{
display:block;width:100%;height:auto;border:0!important;border-radius:var(--dg-r);
box-shadow:0 26px 60px rgba(0,0,0,.4)}

/* --- pull stat card --- */
.dg-pullstat{
display:flex;flex-direction:column;gap:.5rem;height:100%;justify-content:center;
background:linear-gradient(135deg,#0c1a30,#1e3763);border-radius:var(--dg-r);
padding:var(--dg-s4);position:relative;overflow:hidden}
.dg-pullstat::after{content:"";position:absolute;right:-30%;top:-40%;width:80%;height:120%;
background:radial-gradient(circle,rgba(245,179,1,.18),transparent 65%);pointer-events:none}
.dg-pullstat-n{font-size:3.6rem;font-weight:700;color:#f5b301;letter-spacing:-.03em;line-height:1}
.dg-pullstat-l{font-size:1.05rem;color:#fff;line-height:1.45;font-weight:600;max-width:22ch}
.dg-pullstat-s{font-size:.9rem;color:#94a3b8;line-height:1.5;max-width:26ch}
.dg-split{gap:var(--dg-s5)!important;align-items:stretch}
.dg-split>.wp-block-column{min-width:0}
.dg-about-why h2{margin-top:0!important}

/* --- fit / not-fit comparison --- */
.dg-fit-grid{
display:grid;grid-template-columns:1fr 1fr;gap:var(--dg-s3);
max-width:var(--dg-max);margin:var(--dg-s4) auto 0}
.dg-fit-card{background:#fff;border-radius:var(--dg-r);padding:var(--dg-s4);
border:1px solid var(--dg-line);box-shadow:0 1px 2px rgba(15,23,42,.05),0 10px 26px rgba(15,23,42,.05)}
.dg-fit-card h3{display:flex;align-items:center;gap:.6rem;font-size:1.1rem!important;
margin:0 0 var(--dg-s3)!important;color:var(--dg-ink)}
.dg-fit-yes{border-top:3px solid var(--dg-brand)}
.dg-fit-yes h3 svg{color:#a56f00;background:rgba(245,179,1,.18);border-radius:50%;padding:5px;width:32px;height:32px;flex:none}
.dg-fit-no{border-top:3px solid #cbd5e1}
.dg-fit-no h3 svg{color:#64748b;background:#f1f5f9;border-radius:50%;padding:5px;width:32px;height:32px;flex:none}
.dg-fit-card ul{list-style:none;margin:0;padding:0}
.dg-fit-card li{position:relative;padding-left:1.35rem;margin-bottom:.7rem;
color:var(--dg-body);font-size:1rem;line-height:1.55}
.dg-fit-card li:last-child{margin-bottom:0}
.dg-fit-yes li::before{content:"";position:absolute;left:0;top:.55em;width:.45rem;height:.45rem;border-radius:50%;background:var(--dg-brand)}
.dg-fit-no li::before{content:"";position:absolute;left:0;top:.55em;width:.45rem;height:.45rem;border-radius:50%;background:#cbd5e1}

/* --- badges --- */
.dg-badges{display:flex;justify-content:center;gap:var(--dg-s2);flex-wrap:wrap;margin:var(--dg-s3) 0}
.dg-badge{display:inline-flex;align-items:center;gap:.55rem;
background:var(--dg-tint);border:1px solid var(--dg-line);border-radius:999px;
padding:.65rem 1.2rem;font-size:.95rem;font-weight:600;color:var(--dg-ink)}
.dg-badge svg{color:#a56f00;flex:none}
.entry-content .dg-where-note{color:var(--dg-muted);font-size:.95rem;max-width:52ch;
margin-left:auto!important;margin-right:auto!important}
.dg-where{padding-top:var(--dg-s5)!important;padding-bottom:var(--dg-s5)!important}

@media(max-width:781px){
.dg-fit-grid{grid-template-columns:1fr}
.dg-split>.wp-block-column{flex-basis:100%!important}
.dg-pullstat{margin-top:var(--dg-s3)}
.dg-pullstat-n{font-size:2.8rem}
}
