/* digiPeeps design system. GENERATED by scripts/build-css.mjs from wp-design.mjs.
   Do not edit this file: edit wp-design.mjs and re-run, or your change is lost. */

/* ---- site chrome + theme neutralising ---- */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@700;800;900&family=Roboto:wght@400;500;600;700&display=swap");
/* skip-to-content link (WCAG 2.4.1) — hidden until keyboard-focused */
.dp-skip{position:absolute;left:8px;top:-48px;z-index:100001;background:#0a7349;color:#fff;padding:10px 18px;border-radius:0 0 12px 12px;font-family:Montserrat,sans-serif;font-weight:800;font-size:14px;text-decoration:none;transition:top .15s}
.dp-skip:focus{top:0;outline:3px solid #1cc6ec;outline-offset:2px}
/* light canvas + kill Storied's dark side-drawer chrome */
html body,html body.custom-background{background:linear-gradient(165deg,#f7f2e9 0%,#f3ecdd 52%,#f6f0e6 100%)!important;background-attachment:fixed!important;color:#16212e}
/* full-page LP/AI backdrop — subtle ambient mesh behind all content */
.dpbg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.dpblk{position:absolute;border-radius:26px;opacity:.34;filter:blur(4px)}
.dpblk.b0{background:linear-gradient(135deg,#a855f7,#6366f1)}
.dpblk.b1{background:linear-gradient(135deg,#ec4899,#a855f7)}
.dpblk.b2{background:linear-gradient(135deg,#06b6d4,#3b82f6)}
.dpblk.b3{background:linear-gradient(135deg,#34d399,#06b6d4)}
.dpblk.b4{background:linear-gradient(135deg,#f97316,#ec4899)}
.dpblk.b5{background:linear-gradient(135deg,#3b82f6,#8b5cf6)}
.dpblk.s0{border-radius:26px}
.dpblk.s1{border-radius:50%}
.dpblk.s2{border-radius:999px}
@media(prefers-reduced-motion:no-preference){
.dpblk{animation:dpfloatblk 17s ease-in-out infinite,dphue 24s linear infinite}
@keyframes dpfloatblk{0%,100%{transform:translate(0,0) rotate(0);opacity:.14}33%{transform:translate(16px,-26px) rotate(7deg);opacity:.26}66%{transform:translate(-13px,-12px) rotate(-6deg);opacity:.2}}
@keyframes dphue{to{filter:blur(4px) hue-rotate(360deg)}}
}
#floating_menu,.fx-b,.mobile-mask,.mobile-navbar,header.side,.m-s,.m-si,.m-sb,.header-center-logo,.m-f,.meta,.met,.brd,.ssf,.fmw,.entry-title,footer:not(.dpfoot),.awr.cmm,.lrp,.cmf,.cbw,.cbu,.cmb,.npa,#comments,.comments-area,.jp-relatedposts,#jp-relatedposts{display:none!important}
/* entry-title h1 is hidden above (chrome-hide list); the wrapper padding is
   zeroed below — together that collapses the title gap WITHOUT hiding content.
   NB: never display:none the section/awr — our #dp-site content lives inside it. */
.wrp,.wrp.cnt,.awr-e,.awr{max-width:100%!important;width:auto!important;margin:0!important;padding:0!important;background:#f5f0e6!important;float:none!important;box-shadow:none!important;border:0!important}
/* let position:sticky work — no ancestor may clip/transform between nav & viewport */
html,body,.wp-site-blocks,.wrp,.wrp.cnt,.cnt,.awr,.awr-e,main,article,.entry-content,.wp-block-post-content,.is-layout-flow{overflow:visible!important;overflow-x:clip;transform:none!important;filter:none!important}
.wrp.cnt{min-height:0!important}
/* brand wordmark (single unit — no split) */
.dpbrand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-family:Montserrat,sans-serif;font-weight:900;letter-spacing:-.02em;white-space:nowrap}
.dpbrand img{display:block}
.dpbrand .wm{color:#16212e}
.dpbrand .wm b{font-weight:900;background:linear-gradient(100deg,#06b6d4,#14b8a6);-webkit-background-clip:text;background-clip:text;color:transparent}
.dpbrand .wm .tm{font-size:.4em;font-weight:800;vertical-align:super;margin-left:1px;color:#8697a3;-webkit-text-fill-color:#8697a3;letter-spacing:0}
/* top nav */
.dpnav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:0 auto;padding:15px max(24px,calc((100% - 1200px)/2));background:rgba(246,241,232,.86);backdrop-filter:saturate(1.6) blur(14px);border-width:0 0 2.5px;border-style:solid;border-image:linear-gradient(90deg,#a855f7,#3b82f6 38%,#06b6d4 68%,#34d399) 1;font-family:Roboto,sans-serif}
.dpnav .dpbrand{font-size:23px}.dpnav .dpbrand img{width:36px;height:36px}
.dpnav .links{display:flex;gap:26px;flex-wrap:wrap;margin-left:auto;align-items:center}
.dpnav .links a{text-decoration:none;color:#2b3a48;font-weight:600;font-size:17px}
.dpnav .links a:hover{color:#0e7490}
.dpnav .links a.q{background:linear-gradient(100deg,#0a7349,#0e7490 55%,#06b6d4);color:#fff;padding:11px 22px;border-radius:999px;font-weight:800;box-shadow:0 12px 26px -12px rgba(6,182,212,.75)}
.dpnav .links a.q:hover{color:#fff;filter:brightness(1.07)}
.dpnav .dpnav-toggle,.dpnav .dpnav-burger{display:none}
@media(max-width:820px){.dpnav{flex-wrap:wrap;gap:12px}.dpnav .dpnav-burger{display:inline-flex;align-items:center;margin-left:auto;font-size:25px;line-height:1;cursor:pointer;color:#0e7490;padding:2px 8px;user-select:none}.dpnav .links{display:none;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:15px;margin:0;padding:6px 0 8px}.dpnav .dpnav-toggle:checked~.links{display:flex}.dpnav .links a.q{margin-top:4px}}
@media(max-width:600px){html,body{overflow-x:hidden}.dp .cards{grid-template-columns:1fr!important}.dp .hero h1{font-size:clamp(30px,8.5vw,44px)!important}.dp .hero{padding:54px 20px!important}.dp .band{padding:46px 20px!important}.dp .sec h2,.dp .band h2{font-size:27px!important}}
/* footer */
.dpfoot{position:relative;z-index:1;max-width:1200px;margin:80px auto 0;padding:52px 24px 40px;border-top:1px solid #e4eaf1;background:linear-gradient(180deg,#f4fbfd,#eef7fb);font-family:Roboto,sans-serif;color:#3f5061}
.dpfoot .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px}
.dpfoot h4{font-family:Montserrat,sans-serif;font-size:13px;letter-spacing:.13em;text-transform:uppercase;color:#0f1c28;margin:0 0 14px;font-weight:800}
.dpfoot a{display:block;color:#42566a;text-decoration:none;font-size:14.5px;margin:9px 0;font-weight:500}
.dpfoot a:hover{color:#0891b2}
.dpfoot .dpbrand{font-size:22px;margin-bottom:14px}.dpfoot .dpbrand img{width:34px;height:34px}
.dpfoot .tag{font-size:14.5px;line-height:1.6;max-width:290px;margin:0;color:#4a5c6d}
.dpfoot .dpsoc{display:flex;gap:10px;margin:14px 0 0}
.dpfoot .dpsoc a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin:0;border-radius:10px;color:#42566a;background:#eef4f7;transition:background .15s,color .15s}
.dpfoot .dpsoc a:hover{color:#fff;background:linear-gradient(120deg,#0a7349,#0891b2 55%,#22d3ee)}
.dpfoot .sub{display:inline-block;margin-top:16px;font-weight:700;color:#0891b2;text-decoration:none;font-size:14px}
.dpfoot .base{max-width:1200px;margin:38px auto 0;padding-top:26px;border-top:1px solid #dde8ef;display:flex;flex-direction:column;align-items:center;text-align:center;gap:13px}
.dpfoot .base-main{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:11px 16px}
.dpfoot .base .cr{font-size:13px;font-weight:600;color:#42566a}
.dpfoot .base a.tmbadge{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:12px;color:#0e7490;background:rgba(6,182,212,.08);border:1px solid rgba(6,182,212,.22);border-radius:999px;padding:5px 14px;font-weight:600;letter-spacing:.01em;text-decoration:none;transition:.15s}
.dpfoot .base a.tmbadge:hover{background:rgba(6,182,212,.16);border-color:rgba(6,182,212,.4);color:#0a7349}
.dpfoot .base .tmbadge b{font-weight:800;color:#0a7349}
.dpfoot .base a.grev{color:#b45309;background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.32)}
.dpfoot .base a.grev:hover{background:rgba(245,158,11,.18);border-color:rgba(245,158,11,.5);color:#92400e}
.dpfoot .base .statebubble{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#6d4bc4;background:linear-gradient(120deg,rgba(124,58,237,.09),rgba(6,182,212,.09));border:1px solid rgba(124,58,237,.2);border-radius:999px;padding:7px 18px;font-weight:600;line-height:1.45;max-width:600px}
/* click-to-reveal phone (anti-scrape: number is base64, revealed on human click) */
.dpphone{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.dpphone .phbtn{background:none;border:1px solid #cfe0ea;color:#0e7490;font-family:Roboto,sans-serif;font-weight:700;font-size:14px;padding:5px 13px;border-radius:999px;cursor:pointer}
.dpphone .phbtn:hover{background:#eaf6fb}
.dpphone .phhrs{color:#67788a;font-size:12.5px}
.dpphone a{color:#0891b2!important;font-weight:700;text-decoration:none}
/* nerve SVG art + animation */
.dp .art{position:absolute;pointer-events:none;z-index:1;line-height:0}
.dp .art svg{width:100%;height:auto;display:block}
.dp .art-tr{top:-60px;right:-60px;width:380px;opacity:.8}
.dp .art-bl{bottom:-70px;left:-60px;width:320px;opacity:.68}
.dp .band-art{top:50%;left:50%;width:820px;transform:translate(-50%,-50%);opacity:.3;z-index:0}
.dp .divider .art{position:static;display:inline-block;width:150px;margin:0 auto;opacity:.7}
@media(prefers-reduced-motion:no-preference){
 .dp .spin svg{animation:dpspin 55s linear infinite;transform-origin:50% 50%}
 .dp .spinr svg{animation:dpspin 70s linear infinite reverse;transform-origin:50% 50%}
 .dp .drift{animation:dpdrift 11s ease-in-out infinite}
 .dp .pulse svg{animation:dppulse 7s ease-in-out infinite;transform-origin:50% 50%}
 .dp .float{animation:dpfloat 20s ease-in-out infinite}
 .dp .float svg{animation:dpspin 120s linear infinite;transform-origin:50% 50%}
 @keyframes dpfloat{0%,100%{transform:translate(0,0) scale(1)}30%{transform:translate(-12px,-10px) scale(1.05)}60%{transform:translate(10px,8px) scale(1.03)}}
 @keyframes dpspin{to{transform:rotate(360deg)}}
 @keyframes dpdrift{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}
 @keyframes dppulse{0%,100%{transform:scale(1);opacity:.55}50%{transform:scale(1.07);opacity:.85}}
}
@media(max-width:760px){.dpfoot .cols{grid-template-columns:1fr 1fr}.dpnav .links{gap:16px}.dp .art-tr{width:210px}.dp .art-bl{width:170px}}
/* Forminator form → on-brand */
.forminator-ui{max-width:740px;margin:0 auto}
.forminator-label,.forminator-checkbox-label,.forminator-field label,.forminator-ui label,.forminator-checkbox span{color:#16212e!important;font-family:Roboto,sans-serif;font-weight:600}
.forminator-input,.forminator-textarea,.forminator-ui input[type=text],.forminator-ui input[type=email],.forminator-ui input[type=tel],.forminator-ui textarea{border:1px solid #d9e3ec!important;border-radius:12px!important;background:#fff!important;color:#16212e!important;padding:13px 15px!important;font-size:16px!important}
.forminator-button,.forminator-button-submit,button.forminator-button{background:linear-gradient(100deg,#0a7349,#0e7490 55%,#06b6d4)!important;color:#fff!important;border-radius:999px!important;border:0!important;font-family:Montserrat,sans-serif;font-weight:800!important;padding:14px 32px!important}
.forminator-button:hover{filter:brightness(1.07)}
/* card icon hover animations — the site comes alive on hover */
.dp .card .ic svg,.dp .card .ic [class^="pi-"]{transition:transform .35s ease,opacity .3s ease}
.dp .dpi-email .pi-flap{transform-box:fill-box;transform-origin:top center}
.dp a.card:hover .dpi-email .pi-flap{transform:scaleY(-.55) translateY(-2px)}
.dp .dpi-bot .pi-smile{opacity:0;transform-box:fill-box;transform-origin:center}
.dp a.card:hover .dpi-bot .pi-smile{opacity:1;transform:scale(1.1)}
.dp a.card:hover .dpi-search{transform:scale(1.18)}
.dp .dpi-social .pi-wave,.dp .dpi-compass .pi-needle,.dp .dpi-ads .pi-bar,.dp .dpi-chat .pi-dot,.dp .dpi-chartup .pi-arrow{transform-box:fill-box}
.dp .dpi-compass .pi-needle{transform-origin:center}
.dp .dpi-ads .pi-bar{transform-origin:bottom}
.dp .dpi-chat .pi-dot{transform-origin:center}
@media(prefers-reduced-motion:no-preference){
.dp a.card:hover .dpi-web{animation:pispin 1.4s linear infinite}
.dp a.card:hover .dpi-key{animation:piturn 1.3s ease-in-out infinite}
.dp a.card:hover .dpi-compass .pi-needle{animation:piwhirl 1.4s linear infinite}
.dp a.card:hover .dpi-social .w1{animation:piwave 1s ease-out infinite}
.dp a.card:hover .dpi-social .w2{animation:piwave 1s ease-out .2s infinite}
.dp a.card:hover .dpi-ads .b1{animation:pibar 1s ease-in-out infinite}
.dp a.card:hover .dpi-ads .b2{animation:pibar 1s ease-in-out .15s infinite}
.dp a.card:hover .dpi-ads .b3{animation:pibar 1s ease-in-out .3s infinite}
.dp a.card:hover .dpi-chat .d1{animation:pidot .8s ease-in-out infinite}
.dp a.card:hover .dpi-chat .d2{animation:pidot .8s ease-in-out .16s infinite}
.dp a.card:hover .dpi-chat .d3{animation:pidot .8s ease-in-out .32s infinite}
.dp a.card:hover .dpi-chartup .pi-arrow{animation:piboost 1s ease-in-out infinite}
.dp a.card:hover .dpi-chartup .pi-line{animation:piboost 1s ease-in-out .1s infinite}
@keyframes pispin{to{transform:rotate(360deg)}}
@keyframes piturn{0%,100%{transform:rotate(0)}50%{transform:rotate(85deg)}}
@keyframes piwhirl{to{transform:rotate(360deg)}}
@keyframes piwave{0%{opacity:.2;transform:translateX(-1px)}55%{opacity:1}100%{opacity:.2;transform:translateX(2px)}}
@keyframes pibar{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.5)}}
@keyframes pidot{0%,100%{transform:scale(.7);opacity:.5}50%{transform:scale(1.3);opacity:1}}
@keyframes piboost{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
}
/* animated peep mascot: blink, antenna glow, gentle bob + a smooth 3D flip */
.pkmark{display:inline-block;line-height:0}
.pkmark svg{display:block;width:100%;height:100%;overflow:visible}
.pkmark .pk-eye{transform-box:fill-box;transform-origin:center}
.pkmark .pk-hearts,.pkmark .pk-smile{opacity:0}
.dpnav .dpbrand .pkmark{width:38px;height:38px}
.dpfoot .dpbrand .pkmark{width:36px;height:36px}
@media(prefers-reduced-motion:no-preference){
.pkmark{animation:pkbob 5s ease-in-out infinite}
.pkmark .pk-eye{animation:pkblink 2.4s infinite}
.pkmark .pk-ant{animation:pkglow 2s ease-in-out infinite}
.pkmark .pk-eyes{animation:pkeyeshow 10s ease-in-out infinite}
.pkmark .pk-hearts{animation:pkhearts 10s ease-in-out infinite}
.pkmark .pk-smile{animation:pksmileshow 10s ease-in-out infinite}
.pkmark .pk-mouth{animation:pkmouthhide 10s ease-in-out infinite}
.pkmark .pk-feet .f1,.pkmark .pk-feet .f2{transform-box:fill-box;transform-origin:bottom}
.pkmark .pk-feet .f1{animation:pktap 1.3s ease-in-out infinite}
.pkmark .pk-feet .f2{animation:pktap 1.3s ease-in-out .65s infinite}
@keyframes pkbob{0%,100%{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-3px) rotate(-2.5deg)}75%{transform:translateY(-1px) rotate(2.5deg)}}
@keyframes pkblink{0%,90%,100%{transform:scaleY(1)}95%{transform:scaleY(.08)}}
@keyframes pkglow{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes pkeyeshow{0%,58%{opacity:1}62%,72%{opacity:0}76%,100%{opacity:1}}
@keyframes pkhearts{0%,58%{opacity:0}63%,71%{opacity:1}76%,100%{opacity:0}}
@keyframes pksmileshow{0%,30%{opacity:0}34%,42%{opacity:1}46%,100%{opacity:0}}
@keyframes pkmouthhide{0%,30%{opacity:1}34%,42%{opacity:0}46%,100%{opacity:1}}
@keyframes pktap{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
}

/* ---- components ---- */
.dp{position:relative;z-index:1;font-family:Roboto,-apple-system,Segoe UI,Arial,sans-serif;color:#263644;max-width:1160px;margin:0 auto;padding:8px 24px 10px;line-height:1.68;font-size:18.5px}
.dp h1,.dp h2,.dp h3{font-family:Montserrat,sans-serif;letter-spacing:-.02em;color:#12202c;line-height:1.1;text-transform:none!important}
.dp a{color:inherit}
.dp .grad{background:linear-gradient(100deg,#22d3a5,#3b82f6 40%,#06b6d4 70%,#14b8a6);-webkit-background-clip:text;background-clip:text;color:transparent}
.dp .hero{position:relative;overflow:hidden;background:linear-gradient(155deg,#e2fbef 0%,#dff5ff 46%,#eef1ff 100%);border:1px solid #dcecf4;border-radius:32px;padding:84px 34px;text-align:center;box-shadow:0 30px 70px -50px rgba(6,120,140,.5);display:flex;flex-direction:column;justify-content:center;min-height:clamp(452px,43vw,524px)}
.dp .hero-in{position:relative;z-index:2}
.dp .hero-bg{position:absolute;inset:0;z-index:0;border-radius:32px;overflow:hidden}
.dp .hero-bg svg{width:100%;height:100%;display:block}
/* animated vibrant gradient mesh — real oomph on the light heroes (sunset/aurora palette); content sits above (z-index 2) so text stays crisp */
.dp .hero:not(.hero-nerve)::before{content:"";position:absolute;inset:-20%;z-index:0;pointer-events:none;background:radial-gradient(38% 46% at 22% 26%,rgba(236,72,153,.48),transparent 62%),radial-gradient(44% 52% at 82% 20%,rgba(139,92,246,.5),transparent 62%),radial-gradient(48% 54% at 72% 84%,rgba(34,211,238,.48),transparent 60%),radial-gradient(40% 46% at 12% 82%,rgba(251,146,60,.44),transparent 60%),radial-gradient(42% 50% at 48% 58%,rgba(16,185,129,.32),transparent 66%);filter:blur(30px) saturate(1.35);animation:heroMesh 16s ease-in-out infinite alternate}
@keyframes heroMesh{0%{transform:translate3d(0,0,0) scale(1.02) rotate(0deg);opacity:.58}50%{transform:translate3d(2%,-2%,0) scale(1.16) rotate(3deg);opacity:1}100%{transform:translate3d(-2%,1.6%,0) scale(1.06) rotate(-3deg);opacity:.7}}
@media(prefers-reduced-motion:reduce){.dp .hero:not(.hero-nerve)::before{animation:none}}
/* nerve heroes: tone the mesh blocks right down + gentle drift, and a dark scrim so text always reads */
.dp .hero.hero-nerve .hero-bg{opacity:.5;animation:heropulse 17s ease-in-out infinite}
@keyframes heropulse{0%,100%{opacity:.4;transform:scale(1.02)}50%{opacity:.56;transform:scale(1.06)}}
.dp .hero.hero-nerve:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(135% 108% at 50% 50%,rgba(14,6,32,.68) 0%,rgba(14,6,32,.36) 44%,rgba(14,6,32,0) 78%)}
.dp .hero.hero-nerve{background:#241640;border-color:transparent;box-shadow:0 34px 90px -44px rgba(80,30,120,.65)}
.dp .hero.hero-nerve h1{color:#fff!important;text-shadow:0 2px 20px rgba(20,0,40,.35)}
.dp .hero.hero-nerve h1 .grad{-webkit-text-fill-color:#fff;color:#fff!important;background:none}
.dp .hero.hero-nerve p{color:#fff!important;opacity:.96;text-shadow:0 1px 12px rgba(20,0,40,.3)}
.dp .hero.hero-nerve .eyebrow{color:#fff;background:rgba(255,255,255,.24)}
.dp .hero.hero-nerve .btn{background:#fff;color:#7c2d92!important}
.dp .hero.hero-nerve .pkmark{filter:drop-shadow(0 10px 28px rgba(0,0,0,.4))}
.dp .pkswarm{position:absolute;inset:0;z-index:2;pointer-events:none}
.dp .pk-fl{position:absolute;transform:translate(-50%,-50%);filter:drop-shadow(0 6px 14px rgba(0,0,0,.25))}
.dp .pk-fl.he{font-size:42px;line-height:1;filter:drop-shadow(0 6px 12px rgba(0,0,0,.3))}
@media(max-width:760px){.dp .pk-fl{display:none}}
@media(prefers-reduced-motion:no-preference){
.dp .pk-fl.f0{animation:pkfl0 7s ease-in-out infinite}
.dp .pk-fl.f1{animation:pkfl1 9s ease-in-out infinite}
.dp .pk-fl.f2{animation:pkfl2 8s ease-in-out infinite}
.dp .pk-fl.f3{animation:pkfl3 6.5s ease-in-out infinite}
@keyframes pkfl0{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-66%)}}
@keyframes pkfl1{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-40%,-38%)}}
@keyframes pkfl2{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-60%,-42%)}}
@keyframes pkfl3{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-46%,-62%)}}
}
.dp .pkswarm .pk-fl .peepfam{display:block}
/* family scatter — stagger each member's blink so they don't wink in unison */
.dp .pkswarm .pk-fl:nth-of-type(1) .pf-eyes{animation-delay:-.4s}
.dp .pkswarm .pk-fl:nth-of-type(2) .pf-eyes{animation-delay:-1.7s}
.dp .pkswarm .pk-fl:nth-of-type(3) .pf-eyes{animation-delay:-2.9s}
.dp .pkswarm .pk-fl:nth-of-type(4) .pf-eyes{animation-delay:-1.1s}
.dp .pkswarm .pk-fl:nth-of-type(5) .pf-eyes{animation-delay:-3.3s}
.dp .pkswarm .pk-fl:nth-of-type(6) .pf-eyes{animation-delay:-.8s}
.dp .hero .mark{display:flex;justify-content:center;margin:0 auto 20px}
.dp .hero .pkmark{filter:drop-shadow(0 14px 26px rgba(6,150,190,.35))}
.dp .hero h1{font-size:clamp(40px,6vw,66px);line-height:1.03;letter-spacing:-.02em;font-weight:900;margin:0 0 18px;color:#0f1c28}
.dp .hero p{font-size:21px;color:#3c5060;max-width:680px;margin:0 auto 32px;font-weight:500}
.dp .btn{display:inline-block;background:linear-gradient(100deg,#0a7349,#0e7490 52%,#06b6d4);color:#fff!important;font-weight:800;font-family:Montserrat,sans-serif;padding:17px 38px;border-radius:999px;text-decoration:none;font-size:17px;box-shadow:0 16px 34px -14px rgba(6,182,212,.8)}
.dp .btn:hover{filter:brightness(1.07)}
.dp .eyebrow{display:inline-block;font-size:14px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#0b6076;background:rgba(6,182,212,.11);padding:7px 16px;border-radius:999px}
.dp .sec{margin:70px 0 0;text-align:center}
.dp .sec h2{font-size:38px;font-weight:900;margin:14px 0 10px;color:#0f1c28}
.dp .sec>p{color:#455566;font-size:20px;max-width:680px;margin:0 auto;font-weight:500}
.dp .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(248px,1fr));gap:18px;margin-top:36px;text-align:left}
.dp a.card,.dp .card{position:relative;overflow:hidden;border:1px solid #e3eaf1;border-radius:22px;padding:26px;background:rgba(255,255,255,.76);backdrop-filter:blur(12px) saturate(1.08);-webkit-backdrop-filter:blur(12px) saturate(1.08);display:flex;flex-direction:column;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s;box-shadow:0 10px 34px -22px rgba(16,40,60,.45)}
.dp a.card:hover{transform:translateY(-4px);box-shadow:0 26px 50px -26px rgba(8,120,150,.5);border-color:#9fe6f0}
.dp a.card:hover{border-color:#8fe3f2}
.dp .card .ic{width:74px;height:74px;border-radius:20px;background:#fff;display:flex;align-items:center;justify-content:center;line-height:1;font-size:34px;box-shadow:0 12px 26px -16px rgba(8,80,110,.5);border:1px solid #e8f1f6;transition:transform .3s ease}
.dp .card .ic .bic{width:47px;height:47px;display:block;transform-origin:center;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.dp .eic{line-height:1;display:inline-block;transform-origin:center;filter:drop-shadow(0 3px 6px rgba(0,0,0,.16))}
.dp .card .ic .eic{font-size:44px}
.dp .pcard .pic .eic{font-size:32px}
@media(prefers-reduced-motion:no-preference){
.dp .eic-web,.dp .eic-managed{animation:espin 9s linear infinite}
.dp .eic-compass{animation:espin 12s linear infinite}
.dp .eic-social,.dp .eic-chat,.dp .eic-network,.dp .eic-people{animation:epulse 3.2s ease-in-out infinite}
.dp .eic-email{animation:ebob 3s ease-in-out infinite}
.dp .eic-ads,.dp .eic-chartup{animation:ebounce 2.8s ease-in-out infinite}
.dp .eic-bot,.dp .eic-brand{animation:ewiggle 3.6s ease-in-out infinite}
.dp .eic-search,.dp .eic-key,.dp .eic-spark{animation:epulse 2.8s ease-in-out infinite}
.dp .eic-heart{animation:ebeat 1.8s ease-in-out infinite}
.dp .card:hover .eic,.dp .pcard:hover .eic{animation-duration:.85s}
.dp a.card:hover .eic-web,.dp a.card:hover .eic-compass{animation-duration:1.4s}
@keyframes espin{to{transform:rotate(360deg)}}
@keyframes epulse{0%,100%{transform:scale(1)}50%{transform:scale(1.16)}}
@keyframes ebob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes ebounce{0%,100%{transform:translateY(0)}30%{transform:translateY(-7px)}55%{transform:translateY(0)}}
@keyframes ewiggle{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}
@keyframes ebeat{0%,100%{transform:scale(1)}20%{transform:scale(1.22)}36%{transform:scale(1.05)}52%{transform:scale(1.16)}}
.dp .card:hover .bic-web{animation:bspin 1.6s linear infinite}
.dp .card:hover .bic-compass{animation:bspin 1.9s linear infinite}
.dp .card:hover .bic-brand{animation:bspin 2.2s linear infinite}
.dp .card:hover .bic-key{animation:bturn 1.1s ease-in-out infinite}
.dp .card:hover .bic-search{transform:scale(1.22) rotate(-8deg)}
.dp .card:hover .bic-bot,.dp .card:hover .bic-managed{animation:bwiggle .5s ease-in-out infinite}
.dp .card:hover .bic-social,.dp .card:hover .bic-chat,.dp .card:hover .bic-network{animation:bpulse .7s ease-in-out infinite}
.dp .card:hover .bic-heart{animation:bbeat .7s ease-in-out infinite}
@keyframes bbeat{0%,100%{transform:scale(1)}28%{transform:scale(1.2)}44%{transform:scale(1.04)}60%{transform:scale(1.15)}}
.dp .card:hover .bic-email{animation:bbob .6s ease-in-out infinite}
.dp .card:hover .bic-ads,.dp .card:hover .bic-chartup{animation:bbounce .6s ease-in-out infinite}
@keyframes bspin{to{transform:rotate(360deg)}}
@keyframes bturn{0%,100%{transform:rotate(0)}50%{transform:rotate(85deg)}}
@keyframes bwiggle{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@keyframes bpulse{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}
@keyframes bbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes bbounce{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.82) translateY(2px)}}
}
.dp a.card:hover .ic{transform:scale(1.08) rotate(-4deg)}
.dp .card h3{font-size:19px;margin:16px 0 6px;color:#12202c;font-weight:800}
.dp .card p{margin:0;color:#46586a;font-size:17px;line-height:1.6}
.dp .card .more{display:inline-block;margin-top:auto;padding-top:14px;color:#0891b2;font-weight:800;font-size:14.5px}
.dp .band{position:relative;overflow:hidden;background:linear-gradient(120deg,#0a7349,#0e7490 48%,#0369a1);border-radius:32px;padding:66px 34px;text-align:center;color:#fff;margin:74px 0 8px;box-shadow:0 34px 70px -40px rgba(3,105,161,.8)}
.dp .band h2{color:#fff;font-size:36px;font-weight:900;margin:0 0 14px;position:relative;z-index:2}
.dp .band p{color:rgba(255,255,255,.94);font-size:18px;max-width:580px;margin:0 auto 28px;position:relative;z-index:2;font-weight:500}
.dp .band .btn{background:#fff;color:#0e7490!important;position:relative;z-index:2}
/* .90 not .72: at .72 the floating background bubbles read straight through the text and
   fight the words. Still translucent enough to keep the glass look, just not at the cost
   of legibility. Long-form articles go further again (see .prose.article below). */
.dp .prose{max-width:800px;margin:40px auto 0;font-size:18px;line-height:1.8;color:#2f4150;background:rgba(255,255,255,.90);backdrop-filter:blur(14px) saturate(1.06);-webkit-backdrop-filter:blur(14px) saturate(1.06);border:1px solid rgba(255,255,255,.62);border-radius:22px;padding:26px 34px;box-shadow:0 10px 34px -24px rgba(16,40,60,.4)}
.dp .prose p,.dp .prose li,.dp .prose td{color:#33454f!important}
.dp .prose h2,.dp .prose h3,.dp .prose h4{color:#12202c!important}
.dp .prose strong{color:#12202c}
.dp .prose h2{font-size:28px;margin:38px 0 12px;font-weight:800}
.dp .prose a{color:#0891b2!important;font-weight:700}
.dp .prose img{max-width:100%;height:auto;border-radius:18px}
/* editorial / magazine styling for blog articles — de-legalise the wall of text */
/* sustained reading surface: the most solid of the lot, and a stronger blur so anything
   drifting behind it becomes a soft wash rather than distinct shapes behind the words.
   Wider than the rest (900 vs 880) because the panel edges were crowding the text, and
   tables need the room. The generous padding keeps the actual line length sensible. */
.dp .prose:where(.article){max-width:900px;padding:40px 54px 36px;background:rgba(255,255,255,.965);backdrop-filter:blur(18px) saturate(1.04);-webkit-backdrop-filter:blur(18px) saturate(1.04)}
@media(max-width:820px){.dp .prose:where(.article){padding:28px 22px 24px}}
/* NOTE on the :where(.article) above: these are DEFAULTS for a post that ships no CSS of its own.
   Written as .dp .prose.article they carried three classes and quietly outranked a page component
   (.dp .td ol li = two), which is how the teardown numbers ended up sitting on their own text.
   :where() contributes nothing to specificity, so the defaults still beat the theme but a page's
   own styles now beat the defaults - which is the order we actually want. */
/* tables: they had NO styling at all, so a table read as loose floating text. Bordered,
   tinted header, zebra rows, and it scrolls inside its own box on a phone rather than
   pushing the page sideways. */
.dp .prose .tw{overflow-x:auto;margin:22px 0;-webkit-overflow-scrolling:touch}
/* Same job for a table the team makes in the editor: the table block wraps itself in a figure, so
   that figure is the scroll box. Fixed layout as well, because auto layout plus the nowrap header
   below let one column eat 60% of the width and pushed the other two off the panel entirely. */
.dp .prose figure.wp-block-table{overflow-x:auto;margin:22px 0;-webkit-overflow-scrolling:touch}
.dp .prose figure.wp-block-table table{table-layout:fixed;width:100%;min-width:460px}
.dp .prose figure.wp-block-table thead th,
.dp .prose figure.wp-block-table tbody td:first-child{white-space:normal}
.dp .prose table{width:100%;border-collapse:separate;border-spacing:0;font-size:15.5px;line-height:1.55;background:#fff;border:1px solid #d7e3ea;border-radius:14px;overflow:hidden}
.dp .prose thead th{background:linear-gradient(100deg,#eaf7fb,#e3f2f7);color:#0b3c4a!important;font-family:Montserrat,sans-serif;font-weight:800;font-size:14px;letter-spacing:.01em;text-align:left;padding:13px 16px;border-bottom:2px solid #bcd9e3;white-space:nowrap}
.dp .prose tbody td{padding:12px 16px;border-bottom:1px solid #e6eef3;vertical-align:top}
.dp .prose tbody tr:last-child td{border-bottom:0}
.dp .prose tbody tr:nth-child(odd) td{background:rgba(6,182,212,.045)}
.dp .prose tbody td:first-child{font-weight:800;color:#0b3c4a!important;white-space:nowrap}
@media(max-width:620px){.dp .prose table{font-size:14px}.dp .prose thead th,.dp .prose tbody td:first-child{white-space:normal}}
.dp .prose:where(.article) h2{font-size:30px;margin:46px 0 8px;line-height:1.2}
.dp .prose:where(.article) h2:after{content:"";display:block;width:56px;height:4px;margin-top:12px;border-radius:3px;background:linear-gradient(90deg,#a855f7,#06b6d4)}
.dp .prose:where(.article) h3{font-size:21px;margin:32px 0 6px;color:#0e7490!important}
.dp .prose:where(.article) blockquote{margin:32px 0;padding:8px 4px 8px 26px;border-left:4px solid #06b6d4;font-family:Montserrat,sans-serif;font-style:italic;font-size:22px;line-height:1.5;color:#12202c}
.dp .prose:where(.article) ul{list-style:none;padding-left:2px}
.dp .prose:where(.article) ul>li{position:relative;padding-left:30px;margin:11px 0}
.dp .prose:where(.article) ul>li:before{content:"";position:absolute;left:2px;top:10px;width:11px;height:11px;border-radius:4px;background:linear-gradient(135deg,#a855f7,#06b6d4);box-shadow:0 3px 8px -3px rgba(6,120,150,.7)}
.dp .prose:where(.article) ol{padding-left:22px}
.dp .prose:where(.article) ol>li{margin:11px 0;padding-left:6px}
.dp .prose:where(.article) ol>li::marker{color:#0891b2;font-weight:800}
.dp .prose:where(.article)>p{margin:0 0 18px}
.dp .byline{max-width:760px;margin:16px auto 0;display:flex;gap:9px;align-items:center;justify-content:center;flex-wrap:wrap;color:#5a6b78;font-size:14.5px}
.dp .byline .ba{width:32px;height:32px;display:inline-flex}
.dp .byline b{color:#12202c;font-weight:800}
.dp .byline .dot{opacity:.45}
.dp .related-posts{max-width:900px;margin:46px auto 0}
.dp .related-posts h3{text-align:center;font-family:Montserrat,sans-serif;font-weight:900;color:#12202c;font-size:22px;margin-bottom:18px}
.dp .related-posts .rgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.dp .rcard{display:block;background:rgba(255,255,255,.8);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.55);border-radius:16px;overflow:hidden;box-shadow:0 12px 30px -22px rgba(16,40,60,.5);transition:transform .16s,box-shadow .16s;text-decoration:none}
.dp .rcard:hover{transform:translateY(-4px);box-shadow:0 22px 44px -24px rgba(8,120,150,.5)}
.dp .rcard img{width:100%;aspect-ratio:1200/630;object-fit:cover;display:block;background:#eef4fb}
.dp .rcard span{display:block;padding:12px 15px;font-family:Montserrat,sans-serif;font-weight:800;color:#12202c;font-size:14.5px;line-height:1.3}
.dp .postnav{max-width:860px;margin:34px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dp .pnav-item{display:flex;flex-direction:column;gap:4px;padding:16px 20px;background:rgba(255,255,255,.8);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.55);border-radius:16px;text-decoration:none;box-shadow:0 12px 30px -22px rgba(16,40,60,.5);transition:transform .15s}
.dp .pnav-item:hover{transform:translateY(-3px)}
.dp .pnav-next{text-align:right;align-items:flex-end}
.dp .pnav-item small{color:#0891b2;font-weight:700;font-size:12.5px}
.dp .pnav-item b{color:#12202c;font-family:Montserrat,sans-serif;font-size:15.5px;line-height:1.3}
.dp .postnav .ph{visibility:hidden}
@media(max-width:600px){.dp .postnav{grid-template-columns:1fr}}
.dp .note{max-width:760px;margin:26px auto 0;padding:18px 22px;background:linear-gradient(120deg,#effbfd,#f2f7ff);border:1px solid #dcecf4;border-radius:16px;color:#3f5566;font-size:14.5px}
.dp .divider{text-align:center;margin:52px 0 0}
.dp .steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:18px;margin-top:34px}
.dp .step{background:rgba(255,255,255,.76);backdrop-filter:blur(12px) saturate(1.08);-webkit-backdrop-filter:blur(12px) saturate(1.08);border:1px solid rgba(255,255,255,.55);border-radius:22px;padding:26px 22px;box-shadow:0 10px 34px -22px rgba(16,40,60,.45)}
.dp .step .num{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:13px;font-family:Montserrat,sans-serif;font-weight:900;font-size:19px;color:#fff;background:linear-gradient(120deg,#22d3a5,#06b6d4 55%,#3b82f6);box-shadow:0 12px 24px -12px rgba(6,182,212,.7)}
.dp .step h3{font-size:18px;margin:12px 0 6px;color:#12202c;font-weight:800}
.dp .step p{margin:0;color:#4a5c6b;font-size:15px;line-height:1.55}
.dp .deliv{max-width:860px;margin:32px auto 0;list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 30px}
.dp .deliv li{position:relative;padding-left:40px;color:#33454f;font-size:17px;line-height:1.5;min-height:26px;display:flex;align-items:center}
.dp .deliv li:before{content:"\2713";position:absolute;left:0;top:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#a855f7,#06b6d4);color:#fff;border-radius:8px;font-size:14px;font-weight:900;box-shadow:0 5px 13px -5px rgba(6,120,150,.7)}
.dp .deliv li:nth-child(4n+2):before{background:linear-gradient(135deg,#ec4899,#3b82f6)}
.dp .deliv li:nth-child(4n+3):before{background:linear-gradient(135deg,#34d399,#06b6d4)}
.dp .deliv li:nth-child(4n):before{background:linear-gradient(135deg,#f97316,#ec4899)}
.dp .faq{max-width:840px;margin:26px auto 0}
.dp .faq details{border:1px solid rgba(255,255,255,.55);border-radius:16px;margin:10px 0;background:rgba(255,255,255,.76);backdrop-filter:blur(12px) saturate(1.08);-webkit-backdrop-filter:blur(12px) saturate(1.08);overflow:hidden}
.dp .faq summary{cursor:pointer;padding:18px 22px;font-weight:800;color:#12202c;font-family:Montserrat,sans-serif;font-size:16.5px;list-style:none;position:relative}
.dp .faq summary::-webkit-details-marker{display:none}
.dp .faq summary:after{content:"+";position:absolute;right:22px;top:16px;color:#0891b2;font-size:22px;font-weight:700}
.dp .faq details[open] summary:after{content:"\2013"}
.dp .faq .fa{padding:0 22px 20px;color:#41545f;font-size:15.5px;line-height:1.7}
@media(max-width:640px){.dp .deliv{grid-template-columns:1fr}}

.peepfam.anim{transform-origin:center bottom}
.peepfam.anim .pf-eyes{transform-box:fill-box;transform-origin:center;animation:pf-blink 4.6s infinite}
.peepfam.pf-dad{animation:pf-bob 3.2s ease-in-out infinite}
.peepfam.pf-mama{animation:pf-sway 4s ease-in-out infinite}
.peepfam.pf-son{animation:pf-bounce 1.15s cubic-bezier(.5,0,.5,1) infinite}
.peepfam.pf-daughter{animation:pf-wobble 2.6s ease-in-out infinite}
.peepfam.pf-baby{animation:pf-giggle 2s ease-in-out infinite}
.peepfam.pf-baby .pf-eyes{animation:pf-blink2 3.2s infinite}
.peepfam.pf-grandpa{animation:pf-float 5s ease-in-out infinite}
.peepfam.pf-grandpa svg{animation:pf-neon 3.6s ease-in-out infinite}
@keyframes pf-bob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(2deg)}}
@keyframes pf-sway{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
@keyframes pf-bounce{0%,100%{transform:translateY(0) scaleY(1)}18%{transform:translateY(-15px) scaleY(1.06)}40%{transform:translateY(0) scaleY(.9)}55%{transform:translateY(-5px)}72%{transform:translateY(0) scaleY(1)}}
@keyframes pf-wobble{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(7deg) translateY(-3px)}}
@keyframes pf-giggle{0%,100%{transform:translateY(0) rotate(-3deg) scale(1)}25%{transform:translateY(-3px) rotate(3deg) scale(1.03)}50%{transform:translateY(0) rotate(-3deg)}75%{transform:translateY(-2px) rotate(2deg)}}
@keyframes pf-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes pf-neon{0%,100%{filter:brightness(1)}50%{filter:brightness(1.4)}}
@keyframes pf-blink{0%,92%,100%{transform:scaleY(1)}96%{transform:scaleY(.1)}}
@keyframes pf-blink2{0%,78%,86%,100%{transform:scaleY(1)}82%,90%{transform:scaleY(.12)}}
@media(prefers-reduced-motion:reduce){.peepfam.anim,.peepfam.anim .pf-eyes,.peepfam.pf-grandpa svg{animation:none}}

/* ---- chatbot widget ---- */
.dpbot{position:fixed;right:20px;bottom:20px;z-index:99999;font-family:system-ui,-apple-system,sans-serif}
.dpbot-launch{position:relative;width:66px;height:66px;border-radius:50%;border:1px solid #e3eef4;cursor:pointer;background:#fff;box-shadow:0 16px 34px -12px rgba(8,120,150,.5);display:flex;align-items:center;justify-content:center;padding:0;animation:dpbotbob 3.2s ease-in-out infinite}
.dpbot-launch .dpbot-av{width:52px;height:52px;display:block;pointer-events:none}
.dpbot-blip{position:absolute;top:5px;right:5px;width:14px;height:14px;border-radius:50%;background:#ff5c8a;border:2px solid #fff;animation:dpbotpulse 2s ease-in-out infinite}
@keyframes dpbotbob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}
@keyframes dpbotpulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.65}}
.dpbot-panel{position:absolute;right:0;bottom:82px;width:342px;max-width:calc(100vw - 32px);height:486px;max-height:calc(100vh - 130px);background:#fff;border-radius:22px;box-shadow:0 34px 74px -18px rgba(8,40,60,.55);display:flex;flex-direction:column;overflow:hidden;border:1px solid #e8f1f6}
.dpbot-panel[hidden]{display:none}
.dpbot-head{display:flex;align-items:center;gap:10px;padding:13px 15px;background:linear-gradient(120deg,#a855f7,#3b82f6 45%,#06b6d4);color:#fff}
.dpbot-head .dpbot-av{width:40px;height:40px;background:rgba(255,255,255,.22);border-radius:12px;padding:3px}
.dpbot-head .dpbot-av svg{width:100%;height:100%}
.dpbot-head b{font-family:Montserrat,sans-serif;font-size:15px;display:block;line-height:1.1}
.dpbot-head small{opacity:.9;font-size:11.5px}
.dpbot-head .dpbot-x{margin-left:auto;background:none;border:none;color:#fff;font-size:26px;cursor:pointer;line-height:1;padding:0 4px}
.dpbot-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:#f6fbfd}
.dpbot-msgs .dpm{max-width:84%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.45}
.dpbot-msgs .dpm.bot{background:#fff;border:1px solid #e8f1f6;color:#243642;align-self:flex-start;border-bottom-left-radius:5px}
.dpbot-msgs .dpm.me{background:linear-gradient(120deg,#3b82f6,#06b6d4);color:#fff;align-self:flex-end;border-bottom-right-radius:5px}
.dpbot-msgs .dpm.bot a{color:#0891b2;font-weight:700}
.dpbot-msgs .dpm.typing{display:flex;gap:5px}
.dpbot-msgs .dpm.typing span{width:7px;height:7px;border-radius:50%;background:#b8c6d0;animation:dptype 1s infinite}
.dpbot-msgs .dpm.typing span:nth-child(2){animation-delay:.15s}.dpbot-msgs .dpm.typing span:nth-child(3){animation-delay:.3s}
@keyframes dptype{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}
.dpbot-msgs .dpq{display:flex;flex-wrap:wrap;gap:8px;align-self:flex-start;max-width:100%}
.dpbot-msgs .dpq button,.dpbot-msgs .dpsend{background:#fff;border:1.5px solid #a5d8e8;color:#0e7490;font-family:inherit;font-weight:700;font-size:13.5px;padding:8px 13px;border-radius:20px;cursor:pointer;transition:transform .14s,background .14s}
.dpbot-msgs .dpq button:hover{background:#e8f7fc;transform:translateY(-1px)}
.dpbot-msgs .dpsend{background:linear-gradient(120deg,#22d3a5,#06b6d4);color:#fff;border:none;text-decoration:none;display:inline-block;font-size:14px}
.dpbot-input{display:flex;gap:8px;padding:11px 12px;border-top:1px solid #eef2f6;background:#fff}
.dpbot-input[hidden]{display:none}
.dpbot-input input{flex:1;border:1px solid #dbe6ee;border-radius:20px;padding:9px 14px;font-size:14px;outline:none;font-family:inherit}
.dpbot-input input:focus{border-color:#06b6d4}
.dpbot-send{width:38px;height:38px;flex:0 0 38px;border-radius:50%;border:none;background:linear-gradient(120deg,#3b82f6,#06b6d4);color:#fff;font-size:18px;cursor:pointer}
.dpbot-wa{display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 12px;background:#f2f8f5;border-top:1px solid #e6f0ea;color:#0e7a41;text-decoration:none;font-size:12.5px;font-weight:700;letter-spacing:.01em;transition:.14s}
.dpbot-wa svg{color:#25d366;flex:0 0 auto}
.dpbot-wa:hover{background:#e7f8ef;color:#0a5f32}
@media(max-width:480px){.dpbot{right:12px;bottom:12px}.dpbot-panel{bottom:78px;height:70vh}}

/* ---- legal / clause numbering ---- */
.dp .prose .lgl-h{color:#0891b2;font-family:Montserrat,sans-serif;font-weight:800;font-size:20px;margin:28px 0 8px}
.dp .prose .lgl-c{display:flex;gap:.55em;align-items:baseline;margin:0 0 10px;line-height:1.65}
.dp .prose .lgl-n{flex:0 0 2.7em;font-weight:700;color:#0f2530}
.dp .prose .lgl-d{margin:0 0 7px 1.7em;line-height:1.6}
.dp .prose .lgl-love{border-left:4px solid #06b6d4;background:#f2fbfd;padding:13px 17px;margin:18px 0;border-radius:0 12px 12px 0;line-height:1.6}
.dp .prose .lgl-love strong{color:#0891b2}
