/* Homepage content sections: SEO hero, trust + award, cash problem, steps, bottom line, switching. */
:root{--dpp-ease-out:cubic-bezier(.23,1,.32,1);--dpp-accent:#5f8a2e;--dpp-ink:#102e28;--dpp-forest:#103e36;--dpp-lime:#d9f77b;--dpp-muted:#465c50;--dpp-line:#d6dfcf}

/* Shared: accent words in headings, pressable buttons. */
.wp-block-post-content :is(h2) em{font-style:normal;color:var(--dpp-accent)}
:is(.stories-v2,.pricing) h2 em{color:var(--dpp-lime)}
.wp-block-post-content .wp-block-button__link{transition:transform 160ms var(--dpp-ease-out),box-shadow .2s ease,background-color .2s ease}
.wp-block-post-content .wp-block-button__link:active{transform:scale(.97)!important}

/* Hero: the H1 is the kicker, the tagline keeps the display scale. */
.hero .hero-copy h1.hero-kicker{display:flex;align-items:center;gap:12px;font-size:13px!important;line-height:1.45!important;letter-spacing:.14em!important;text-transform:uppercase;font-weight:700;color:var(--dpp-lime);max-width:none;margin:0 0 26px!important}
.hero .hero-copy h1.hero-kicker:before{content:'';flex:none;width:7px;height:7px;background:var(--dpp-lime);border-radius:50%;box-shadow:0 0 0 5px #d9f77b15}
.hero .hero-copy>p.hero-display{font-size:clamp(52px,5.5vw,78px);line-height:1.04;letter-spacing:-.04em;font-weight:700;color:#fff;max-width:none;margin:0 0 26px}
.hero-display em{font-style:normal;color:var(--dpp-lime);position:relative;display:inline-block}
.hero-display em:after{content:'';position:absolute;left:3%;right:0;bottom:-7px;height:8px;border-top:2px solid #d9f77b80;border-radius:50%;transform:rotate(-2deg)}
.hero .hero-copy>p.hero-lead{max-width:540px}
.hero-lead a:not(.wp-block-button__link){color:#fff!important;text-decoration-color:#d9f77b99!important}
.hero-lead a:not(.wp-block-button__link):hover{text-decoration-color:var(--dpp-lime)!important}

/* Trust: logos only; the award sits with the intro film. */
.trust-v2>.wrap{display:block}
.trust-v2 .trust-row{display:grid;grid-template-columns:170px minmax(0,1fr);gap:32px;align-items:center}

.intro-award-copy{margin:18px 0 0!important;font-size:15px;line-height:1.6;color:var(--dpp-muted);max-width:360px}

/* Why cash-only holds you back. */
.cash-section{padding-bottom:110px}
.cash-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(40px,7vw,96px);align-items:center}
.cash-copy h2{max-width:560px;margin-bottom:26px}
.cash-lead{font-size:18px;line-height:1.75;color:var(--dpp-muted);max-width:520px;margin:0}
.cash-ledger{position:relative;background:#fff;border-radius:18px 18px 4px 4px;padding:12px 30px 22px;box-shadow:0 1px 2px #102e280d,0 24px 48px -24px #102e2840}
.cash-ledger:after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:14px;background:radial-gradient(circle at 9px 14px,#f7f8f2 7px,transparent 7.5px) 0 0/18px 14px repeat-x}
.cash-cost{display:grid;grid-template-columns:46px minmax(0,1fr);gap:18px;align-items:center;margin:0!important;padding:22px 0;border-bottom:1px dashed #cfdac6;font-size:17px;line-height:1.55;color:var(--dpp-ink);font-weight:500}
.cash-cost:last-child{border-bottom:0}
.cash-cost:before{content:'';width:46px;height:46px;border-radius:13px;background:#eef3e6 center/22px no-repeat}
.cost-drawer:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23103e36' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='6' width='20' height='12' rx='2'/%3E%3Ccircle cx='12' cy='12' r='2.2'/%3E%3Cpath d='M6 12h.01M18 12h.01'/%3E%3C/svg%3E")}
.cost-risk:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23103e36' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='M12 8v4M12 16h.01'/%3E%3C/svg%3E")}
.cost-atm:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23103e36' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 7V4a1 1 0 0 0-1-1H5a2 2 0 0 0 0 4h15a1 1 0 0 1 1 1v4h-3a2 2 0 0 0 0 4h3a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1'/%3E%3Cpath d='M3 5v14a2 2 0 0 0 2 2h15a1 1 0 0 0 1-1v-4'/%3E%3C/svg%3E")}
.cash-ledger.reveal-ready .cash-cost{animation:dpp-cost-in .6s var(--dpp-ease-out) both}
.cash-ledger.reveal-ready .cash-cost:nth-child(2){animation-delay:.08s}
.cash-ledger.reveal-ready .cash-cost:nth-child(3){animation-delay:.16s}
@keyframes dpp-cost-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.cash-turn{margin:72px 0 0!important;padding-top:40px;border-top:1px solid var(--dpp-line);font-size:clamp(20px,1.9vw,25px);line-height:1.5;letter-spacing:-.015em;color:#5d7266;padding-right:min(16%,180px)}
.cash-turn strong{color:var(--dpp-ink);font-weight:600}

/* How DPP works: three steps beside the terminals. */
.steps-section{background:#eaf0e5}
.steps-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(40px,7vw,100px);align-items:center}
.steps-copy h2{margin-bottom:44px}
.steps-list{display:grid;gap:0}
.step{position:relative;padding:0 0 34px 78px;margin:0!important}
.step:not(:last-child):after{content:'';position:absolute;left:26px;top:60px;bottom:6px;width:1px;background:#b4c7aa}
.step h3{font-size:23px;line-height:1.25;letter-spacing:-.025em;margin:10px 0 8px!important;min-height:32px}
.step-num{position:absolute;left:0;top:0;width:52px;height:52px;border-radius:50%;background:var(--dpp-forest);color:var(--dpp-lime);display:grid;place-items:center;font-size:17px;letter-spacing:0;font-variant-numeric:tabular-nums;box-shadow:0 0 0 6px #eaf0e5,0 0 0 7px #c9d8bf}
.step p{margin:0;font-size:17px;line-height:1.7;color:var(--dpp-muted);max-width:470px}
.steps-copy .wp-block-buttons{margin-top:14px;padding-left:78px}
.steps-copy .wp-block-button__link{background:var(--dpp-forest);color:#fff}
.steps-copy .dpp-cta-icon:after{border-color:var(--dpp-forest)}
.steps-copy .wp-block-button__link:hover{box-shadow:0 8px 22px #103e3626}
.steps-photo{justify-self:end;max-width:440px!important}
.steps-list .step.reveal-ready:nth-child(2){transition-delay:.08s}
.steps-list .step.reveal-ready:nth-child(3){transition-delay:.16s}


/* Counter to curb. */
.solutions-v2 .solutions-title{max-width:880px;margin-bottom:48px}
.solutions-v2 .solutions-title em{display:block}
.solutions-v2 .service-card{min-height:0}
.solutions-v2 .service-card>p:last-child{margin-top:0;padding-top:0}
.solutions-v2 .service-card h3{margin-top:24px}

/* Bottom line + pricing. */
.benefits-v2{border-top:1px solid #dce4d7}
.bottom-line{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,96px);align-items:end;margin-bottom:64px}
.bottom-line h2{margin:0;max-width:520px}
.bottom-line-copy>*{margin:0}
.bottom-line-lead{font-size:clamp(21px,2vw,26px);line-height:1.42;letter-spacing:-.02em;color:var(--dpp-ink);font-weight:500}
.bottom-line-vault{margin-top:22px!important;padding-top:20px;border-top:1px solid var(--dpp-line);font-size:17px;color:var(--dpp-muted)}
.bottom-line-vault strong{display:inline-block;padding:0 .32em;margin-inline:.08em;border-radius:6px;background:var(--dpp-lime);color:var(--dpp-forest);font-weight:700}
.pricing-v2{align-items:center}
.pricing-v2 h2{margin-bottom:18px}
.pricing-v2 h2{max-width:480px}
.pricing-v2 p{font-size:17px;max-width:420px}
.pricing-v2 .wp-block-buttons{margin-top:30px}
.pricing-v2 .offer-list{align-self:center}

/* Compliance. */
.compliance-v2 .compliance-grid{align-items:center}
.compliance-v2 .compliance-copy h2{margin-bottom:24px}
.compliance-v2 .compliance-copy p{font-size:18px;line-height:1.75;max-width:520px}
.compliance-panel{padding:34px 38px 38px}
.compliance-note{margin:0!important;padding:0!important;border:0!important;font-size:17px!important;line-height:1.7;color:var(--dpp-muted)}
.compliance-note strong{display:block;margin-bottom:8px;font-size:23px;line-height:1.25;letter-spacing:-.025em;color:var(--dpp-ink);font-weight:700}

/* Switching providers: the one lime moment. */
.switch-section{padding-top:0}
.switch-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,80px);align-items:center;background:var(--dpp-lime);color:var(--dpp-ink);border-radius:24px;padding:clamp(32px,5vw,64px)}
.switch-card h2{margin:0!important;max-width:480px;color:var(--dpp-ink)}
.switch-card h2:before{content:'';display:block;width:52px;height:52px;margin-bottom:26px;border-radius:14px;background:var(--dpp-forest) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d9f77b' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3 4 7l4 4M4 7h16M16 21l4-4-4-4M20 17H4'/%3E%3C/svg%3E") center/24px no-repeat}
.switch-copy>p{margin:0;font-size:17px;line-height:1.75;color:#24443a}
.switch-copy .wp-block-buttons{margin-top:28px}
.switch-copy .wp-block-button__link{background:var(--dpp-forest);color:#fff}
.switch-copy .dpp-cta-icon{background:var(--dpp-lime)}
.switch-copy .dpp-cta-icon:after{border-color:var(--dpp-forest)}
.switch-copy .wp-block-button__link:hover{box-shadow:0 8px 22px #103e3633}

/* FAQ + contact headings. */
.faq-v2 .faq-grid h2{max-width:460px}
.dpp-home-contact .dpp-contact-copy h2{max-width:520px}
@media(min-width:701px){.dpp-home-contact .dpp-contact-copy{position:sticky;top:120px}}

@media(max-width:1100px){.hero .hero-copy>p.hero-display{font-size:clamp(46px,5vw,58px)}}
@media(max-width:1000px){.trust-v2 .trust-row{grid-template-columns:140px minmax(0,1fr);gap:22px}}
@media(max-width:900px){
.cash-grid,.steps-grid,.bottom-line,.switch-card{grid-template-columns:1fr}
.cash-ledger{max-width:620px}
.cash-turn{margin-top:56px!important}
.steps-photo{justify-self:start;max-width:380px!important}
.bottom-line{align-items:start;gap:28px}
}
@media(max-width:780px){.trust-v2 .trust-row{display:block}}
@media(max-width:650px){
.hero .hero-copy h1.hero-kicker{font-size:11px!important;letter-spacing:.12em!important;margin-bottom:20px!important}
.hero .hero-copy>p.hero-display{font-size:clamp(43px,13.8vw,54px)}
.hero-display em:after{bottom:-5px}
.cash-turn{padding-right:0}
.cash-section{padding-bottom:72px}
.cash-lead,.compliance-v2 .compliance-copy p{font-size:17px}
.cash-ledger{padding:6px 20px 16px}
.cash-cost{grid-template-columns:40px minmax(0,1fr);gap:14px;font-size:16px;padding:18px 0}
.cash-cost:before{width:40px;height:40px;border-radius:11px;background-size:20px}
.cash-turn{font-size:19px;padding-top:30px;margin-top:44px!important}
.steps-copy h2{margin-bottom:32px}
.step{padding-left:64px;padding-bottom:28px}
.step:not(:last-child):after{left:21px;top:52px}
.step-num{width:44px;height:44px;font-size:15px}
.step h3{font-size:20px;margin-top:8px!important}
.step p{font-size:16px}
.steps-copy .wp-block-buttons{padding-left:0}
.steps-photo{max-width:100%!important}
.solutions-v2 .solutions-title{margin-bottom:30px}
.bottom-line{margin-bottom:40px}
.compliance-panel{padding:26px 24px 28px}
.compliance-note strong{font-size:20px}
.switch-card{border-radius:20px;padding:30px 24px 32px}
.switch-card h2:before{width:46px;height:46px;margin-bottom:20px;background-size:22px}
}
@media(prefers-reduced-motion:reduce){.cash-ledger,.cash-ledger .cash-cost{animation:none!important;transition:none!important}.wp-block-post-content .wp-block-button__link:active{transform:none!important}}

/* Review pass: flow-layout margins, focus, balance, outline-preserving styles. */
.cash-grid>*,.bottom-line>*,.switch-card>*,.steps-grid>*{margin-block-start:0!important}
.wp-block-post-content :focus-visible{outline-color:#4f7a26}
.switch-card :focus-visible{outline-color:var(--dpp-forest)}
.wp-block-post-content h2{text-wrap:balance}
.wp-block-details summary .faq-q{font:inherit;letter-spacing:inherit;color:inherit;margin:0;display:inline}
.dcs-form .dcs-form-title{font-size:36px;font-weight:700;line-height:1.15;letter-spacing:-.03em;color:#123f35;margin:0 0 12px}
.dcs-form p.ff-el-section-title{font-size:12px;font-weight:700;line-height:1.06;letter-spacing:.1em;text-transform:uppercase;color:#567148;margin:0}
@media(hover:none){.wp-block-post-content .wp-block-button__link:hover{transform:none;box-shadow:none}}
@media(max-width:900px){
.dcs-form .dcs-form-title{font-size:25px}
.pricing-v2{display:flex;flex-direction:column;gap:0}
.pricing-v2>.wp-block-group:first-child{display:contents}
.pricing-v2 .offer-list{order:2;margin-top:24px!important}
.pricing-v2 .wp-block-buttons{order:3;margin-top:28px}
.steps-photo{justify-self:center}
}

/* Stories: keep the longer SEO heading on two lines, like the original "Real businesses. Real voices." */
@media(min-width:901px){.stories-v2 .section-intro h2{max-width:none;font-size:clamp(44px,4.15vw,60px);text-wrap:wrap}}
