.dp-section { padding:112px 24px; }
.dp-proof { padding-top:88px; padding-bottom:102px; background:var(--dp-paper); }
.dp-proof .dp-section-head { margin-bottom:48px; }
.dp-stats { display:grid; grid-template-columns:repeat(3,1fr); max-width:900px; margin:auto; }
.dp-stat { padding:14px 30px; text-align:center; border-right:1px solid var(--dp-line); }
.dp-stat:last-child { border-right:0; }
.dp-stat-value { color:var(--dp-orange); font-family:var(--dp-font-display); font-size:clamp(2.5rem,5vw,4.2rem); font-weight:600; line-height:1; letter-spacing:-.06em; }
.dp-stat-label { margin-top:12px; color:var(--dp-ink-soft); font-size:12px; font-weight:700; letter-spacing:.17em; text-transform:uppercase; }
.dp-about { background:var(--dp-mint); }
.dp-about-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:center; }
.dp-about-copy h2 { max-width:500px; margin:0; font-family:var(--dp-font-display); font-size:clamp(2.1rem,4vw,3.6rem); line-height:1.1; letter-spacing:-.045em; }
.dp-about-copy > p:last-child { max-width:500px; margin:26px 0 0; color:var(--dp-ink-soft); }
.dp-about-art { position:relative; padding:32px; }
.dp-about-art::before { content:""; position:absolute; z-index:0; inset:0 6% 7% 0; border-radius:30px; background:var(--dp-lime); transform:rotate(-4deg); }
.dp-about-art img { position:relative; z-index:1; width:75%; margin:auto; border-radius:18px; box-shadow:24px 26px 0 rgba(16,23,17,.1); transform:rotate(3deg); transition:transform .55s cubic-bezier(.2,.8,.2,1); }
.dp-about-art:hover img { transform:rotate(0) translateY(-8px); }
.dp-ecosystem { padding-top:100px; background:var(--dp-paper); }
.dp-ecosystem-intro { max-width:700px; margin:0 auto 48px; text-align:center; }
.dp-ecosystem-intro h2 { margin:0; font-family:var(--dp-font-display); font-size:clamp(2.1rem,4vw,3.6rem); line-height:1.1; letter-spacing:-.045em; }
.dp-ecosystem-intro > p:last-child { margin:20px auto 0; max-width:680px; color:var(--dp-ink-soft); }
.dp-role-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.dp-role-card { overflow:hidden; background:var(--dp-white); border-radius:22px; box-shadow:0 14px 40px rgba(16,23,17,.08); transition:transform .3s ease,box-shadow .3s ease; }
.dp-role-card:hover { transform:translateY(-8px); box-shadow:0 24px 48px rgba(16,23,17,.14); }
.dp-role-card img { width:100%; height:214px; object-fit:cover; }
.dp-role-content { padding:24px 25px 29px; }
.dp-role-content h3 { margin:0 0 10px; color:var(--dp-orange); font-size:20px; }
.dp-role-content p { margin:0; color:var(--dp-ink-soft); font-size:14px; line-height:1.65; }
.dp-tools { background:#f2f5ef; }
.dp-tools-layout { display:grid; grid-template-columns:1fr 1.1fr 1fr; align-items:center; gap:30px; }
.dp-tools-column { display:grid; gap:22px; }
.dp-tool-item { display:flex; align-items:flex-start; gap:14px; }
.dp-tool-item img { width:42px; height:42px; flex:none; border-radius:11px; }
.dp-tool-item h3 { margin:0 0 5px; font-size:16px; line-height:1.2; }
.dp-tool-item p { margin:0; color:var(--dp-ink-soft); font-size:12px; line-height:1.5; }
.dp-onboard { width:min(270px,100%); max-height:540px; margin:auto; object-fit:cover; object-position:top; border-radius:28px; box-shadow:0 20px 44px rgba(16,23,17,.18); }
.dp-store-section { background:var(--dp-paper); }
.dp-store-layout { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; }
.dp-store-list { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.dp-store-item { padding:17px; background:var(--dp-white); border:1px solid var(--dp-line); border-radius:15px; transition:border-color .25s ease,transform .25s ease; }
.dp-store-item:hover { border-color:var(--dp-orange); transform:translateY(-3px); }
.dp-store-icon { display:grid; place-items:center; width:43px; height:43px; margin-bottom:14px; border-radius:11px; font-family:var(--dp-font-display); font-size:20px; font-weight:700; }
.dp-store-item h3 { margin:0 0 3px; font-size:15px; }
.dp-store-item p { margin:0; color:var(--dp-ink-soft); font-size:12px; line-height:1.42; }
.dp-store-art { width:100%; border-radius:24px; }
.dp-peek { background:#111911; color:#fff; }
.dp-peek .dp-section-head p { color:rgba(255,255,255,.65); }
.dp-peek .dp-eyebrow { color:var(--dp-lime); }
.dp-carousel { position:relative; display:flex; align-items:center; gap:20px; }
.dp-carousel-viewport { overflow:hidden; flex:1; }
.dp-carousel-track { display:flex; gap:26px; transition:transform .5s cubic-bezier(.2,.8,.2,1); }
.dp-slide { flex:0 0 calc((100% - 52px)/3); min-width:0; }
.dp-slide img { width:100%; max-height:550px; object-fit:contain; border-radius:24px; background:#fff; box-shadow:0 18px 35px rgba(0,0,0,.24); }
.dp-carousel-button { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border:1px solid rgba(255,255,255,.25); border-radius:50%; background:rgba(255,255,255,.08); color:#fff; font-size:24px; transition:background .2s ease,transform .2s ease; }
.dp-carousel-button:hover,.dp-carousel-button:focus-visible { background:var(--dp-orange); border-color:var(--dp-orange); transform:scale(1.05); }
.dp-dots { display:flex; justify-content:center; gap:8px; margin-top:26px; }
.dp-dot { width:8px; height:8px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.28); transition:background .2s ease,transform .2s ease; }
.dp-dot.active { background:var(--dp-orange); transform:scale(1.35); }
.dp-faq { background:#fff; }
.dp-faq-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; align-items:start; }
.dp-faq-aside { position:sticky; top:112px; }
.dp-faq-aside h2 { margin:0; font-family:var(--dp-font-display); font-size:clamp(2.1rem,4vw,3.6rem); line-height:1.1; letter-spacing:-.045em; }
.dp-faq-aside > p:last-child { max-width:340px; color:var(--dp-ink-soft); }
.dp-accordion { border-top:1px solid var(--dp-line); }
.dp-faq-item { border-bottom:1px solid var(--dp-line); }
.dp-faq-question { display:flex; justify-content:space-between; align-items:center; width:100%; padding:20px 0; border:0; background:transparent; color:var(--dp-ink); text-align:left; font-size:15px; font-weight:600; }
.dp-faq-plus { color:var(--dp-orange); font-size:24px; font-weight:400; line-height:1; transition:transform .25s ease; }
.dp-faq-item.open .dp-faq-plus { transform:rotate(45deg); }
.dp-faq-answer { max-height:0; overflow:hidden; transition:max-height .35s ease,opacity .35s ease; opacity:0; }
.dp-faq-item.open .dp-faq-answer { max-height:220px; opacity:1; }
.dp-faq-answer p { margin:0 45px 21px 0; color:var(--dp-ink-soft); font-size:14px; }
.dp-contact { padding-top:70px; background:var(--dp-orange); color:#fff; }
.dp-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:start; }
.dp-contact h2 { max-width:480px; margin:0; font-family:var(--dp-font-display); font-size:clamp(2.1rem,4vw,3.6rem); line-height:1.1; letter-spacing:-.045em; }
.dp-contact > .dp-container > div > p:last-child { max-width:480px; color:rgba(255,255,255,.84); }
.dp-contact .dp-eyebrow { color:#fff; }
.dp-contact-form { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.dp-contact-form input,.dp-contact-form textarea { width:100%; padding:15px 16px; border:1px solid rgba(255,255,255,.3); border-radius:9px; outline:none; background:rgba(255,255,255,.14); color:#fff; }
.dp-contact-form input::placeholder,.dp-contact-form textarea::placeholder { color:rgba(255,255,255,.76); }
.dp-contact-form input:focus,.dp-contact-form textarea:focus { border-color:#fff; background:rgba(255,255,255,.2); }
.dp-contact-form textarea { min-height:126px; resize:vertical; grid-column:1/-1; }
.dp-contact-form .subject { grid-column:1/-1; }
.dp-submit-button { grid-column:1/-1; justify-self:start; padding:14px 23px; border:0; border-radius:10px; background:var(--dp-ink); color:#fff; font-weight:600; transition:transform .2s ease,background .2s ease; }
.dp-submit-button:hover,.dp-submit-button:focus-visible { background:#263229; transform:translateY(-2px); }
.dp-submit-button:disabled { cursor:wait; opacity:.7; }
.dp-form-success,.dp-form-error { grid-column:1/-1; margin:0; padding:12px 15px; border:1px solid rgba(255,255,255,.4); border-radius:8px; background:rgba(255,255,255,.12); font-size:13px; }
.dp-cta { position:relative; overflow:hidden; padding:116px 24px; background:#0e1710; color:#fff; }
.dp-cta::before { content:""; position:absolute; inset:0; background:linear-gradient(rgba(6,14,8,.7),rgba(6,14,8,.7)),url("../images/Splash-4-copy-2-scaled.webp") center/cover no-repeat; }
.dp-cta-inner { position:relative; z-index:1; width:min(1140px,100%); margin:auto; display:flex; align-items:center; justify-content:space-between; gap:50px; }
.dp-cta h2 { max-width:590px; margin:0; color:var(--dp-orange); font-family:var(--dp-font-display); font-size:clamp(2.5rem,5vw,4.6rem); font-weight:600; line-height:1.05; letter-spacing:-.05em; }
.dp-cta p:not(.dp-eyebrow) { max-width:520px; color:rgba(255,255,255,.76); }
.dp-cta .dp-eyebrow { color:var(--dp-lime); }
