/*
 * DTS Theme — shared components (Phase 1 foundation)
 *
 * Cross-page building blocks for the daddar.io visual redesign. Loaded via
 * includes/head.tpl AFTER custom.css, so these rules win same-specificity
 * ties against custom.css's existing base/legacy rules — safe to use for
 * targeted overrides, not just additive new classes.
 *
 * Constraint: all visuals here are code-only (gradients, borders, inline
 * SVG hooks) — no image files. See the redesign plan for context.
 *
 * Phase 2 agents: do not edit this file. Add page-specific CSS to your own
 * css/pages/<area>.css file and compose these classes into your markup.
 */

/* ── Dark / inverted section ─────────────────────────────────────────────
 * Full-bleed navy break-up section. Usage:
 *   <section class="dts-section--dark">
 *     <div class="container">...</div>
 *   </section>
 * ────────────────────────────────────────────────────────────────────── */

.dts-section--dark {
    background: var(--dts-bg-dark);
    color: var(--dts-text-on-dark);
    padding: var(--dts-space-12) 0;
}

.dts-section--dark h1,
.dts-section--dark h2,
.dts-section--dark h3,
.dts-section--dark h4 {
    color: var(--dts-text-on-dark);
}

.dts-section--dark p {
    color: var(--dts-text-on-dark-muted);
}

.dts-section--dark .dts-section-eyebrow {
    display: block;
    width: 100%;
    font-size: var(--dts-font-size-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--dts-blue-400);
    margin-bottom: var(--dts-space-3);
    text-align: center;
}

.dts-section--dark .dts-section-title {
    font-family: var(--dts-font-family);
    font-size: var(--dts-font-size-2xl);
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: var(--dts-space-4);
}

.dts-section--dark .dts-section-subtitle {
    font-size: var(--dts-font-size-lg);
    color: var(--dts-text-on-dark-muted);
    max-width: 640px;
    margin: 0 auto var(--dts-space-8);
}

.dts-section--dark .dts-section-eyebrow,
.dts-section--dark .dts-section-title,
.dts-section--dark .dts-section-subtitle {
    text-align: center;
}

/* Optional intro wrapper for dark section headers (eyebrow + title + lead). */
.dts-section-intro {
    text-align: center;
    margin-bottom: var(--dts-space-2);
}

.dts-section--dark hr,
.dts-section--dark .dts-divider {
    border-color: var(--dts-border-on-dark);
}

/* Gradient variant — for hero-style dark sections that want depth instead
 * of a flat navy fill. */
.dts-section--dark-gradient {
    background: var(--dts-gradient-hero);
    color: var(--dts-text-on-dark);
    padding: var(--dts-space-12) 0;
}

/* ── Testimonial / social-proof cards ────────────────────────────────────
 * Usage:
 *   <div class="dts-testimonial-grid">
 *     <figure class="dts-testimonial-card">
 *       <blockquote class="dts-testimonial-quote">"..."</blockquote>
 *       <figcaption class="dts-testimonial-author">
 *         <span class="dts-testimonial-avatar">JR</span>
 *         <span>
 *           <strong class="dts-testimonial-name">Jordan Rivera</strong>
 *           <span class="dts-testimonial-role">Rivera Design Co.</span>
 *         </span>
 *       </figcaption>
 *     </figure>
 *   </div>
 * ────────────────────────────────────────────────────────────────────── */

.dts-testimonial-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: var(--dts-space-6);
}

.dts-testimonial-card {
    background: var(--dts-bg);
    border: 1px solid var(--dts-border);
    border-radius: var(--dts-radius-lg);
    padding: var(--dts-space-6);
    box-shadow: var(--dts-shadow-sm);
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--dts-space-5);
    transition: var(--dts-transition-fast);
}

.dts-testimonial-card:hover {
    box-shadow: var(--dts-shadow-md);
    transform: translateY(-2px);
}

/* On a dark section, swap the card to a translucent glass treatment rather
 * than a jarring white box. */
.dts-section--dark .dts-testimonial-card,
.dts-section--dark-gradient .dts-testimonial-card {
    background: rgba(255, 255, 255, 0.06);
    border-color: var(--dts-border-on-dark);
    box-shadow: none;
}

.dts-testimonial-quote {
    font-size: var(--dts-font-size-lg);
    line-height: var(--dts-line-height);
    color: var(--dts-text);
    margin: 0;
}

.dts-section--dark .dts-testimonial-quote,
.dts-section--dark-gradient .dts-testimonial-quote {
    color: var(--dts-text-on-dark);
}

.dts-testimonial-quote::before {
    content: '\201C';
    font-family: Georgia, serif;
    font-size: 2rem;
    line-height: 0;
    color: var(--dts-blue-400);
    display: block;
    margin-bottom: var(--dts-space-2);
}

.dts-testimonial-author {
    display: flex;
    align-items: center;
    gap: var(--dts-space-3);
    margin: 0;
}

.dts-testimonial-avatar {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--dts-gradient-cta);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: var(--dts-font-size-sm);
}

.dts-testimonial-name {
    display: block;
    font-size: var(--dts-font-size-sm);
    color: var(--dts-text);
}

.dts-section--dark .dts-testimonial-name,
.dts-section--dark-gradient .dts-testimonial-name {
    color: var(--dts-text-on-dark);
}

.dts-testimonial-role {
    display: block;
    font-size: var(--dts-font-size-xs);
    color: var(--dts-text-secondary);
}

.dts-section--dark .dts-testimonial-role,
.dts-section--dark-gradient .dts-testimonial-role {
    color: var(--dts-text-on-dark-muted);
}

/* Identity strip — small trust line, e.g. "Built in Ontario, Canada" */
.dts-identity-strip {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dts-space-3);
    flex-wrap: wrap;
    text-align: center;
    font-size: var(--dts-font-size-sm);
    color: var(--dts-text-secondary);
    margin-top: var(--dts-space-6);
}

.dts-identity-strip i {
    color: var(--dts-accent);
}

/* ── CSS browser / terminal mockup frames ────────────────────────────────
 * Code-only visual "screenshots" — no image files. Usage:
 *   <div class="dts-browser-mockup">
 *     <div class="dts-browser-mockup-bar">
 *       <span class="dts-browser-mockup-dot"></span>...
 *       <span class="dts-browser-mockup-url">yoursite.com</span>
 *     </div>
 *     <div class="dts-browser-mockup-body">...page content mockup...</div>
 *   </div>
 *
 *   <div class="dts-terminal-mockup">
 *     <div class="dts-terminal-mockup-bar">
 *       <span class="dts-terminal-mockup-dot"></span>...
 *       <span class="dts-terminal-mockup-title">bash</span>
 *     </div>
 *     <pre class="dts-terminal-mockup-body"><code>$ ...</code></pre>
 *   </div>
 * ────────────────────────────────────────────────────────────────────── */

.dts-browser-mockup,
.dts-terminal-mockup {
    border-radius: var(--dts-radius-lg);
    overflow: hidden;
    box-shadow: var(--dts-shadow-lg);
    background: var(--dts-bg);
    border: 1px solid var(--dts-border);
}

.dts-browser-mockup-bar,
.dts-terminal-mockup-bar {
    display: flex;
    align-items: center;
    gap: var(--dts-space-2);
    padding: 10px var(--dts-space-4);
    background: #eef1f5;
    border-bottom: 1px solid var(--dts-border);
}

.dts-terminal-mockup-bar {
    background: #2a2f3a;
    border-bottom-color: rgba(255, 255, 255, 0.08);
}

.dts-browser-mockup-dot,
.dts-terminal-mockup-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #d5dae1;
    display: inline-block;
}

.dts-browser-mockup-dot:nth-child(1),
.dts-terminal-mockup-dot:nth-child(1) { background: #ff5f57; }
.dts-browser-mockup-dot:nth-child(2),
.dts-terminal-mockup-dot:nth-child(2) { background: #febc2e; }
.dts-browser-mockup-dot:nth-child(3),
.dts-terminal-mockup-dot:nth-child(3) { background: #28c840; }

.dts-browser-mockup-url {
    margin-left: var(--dts-space-3);
    background: #fff;
    border: 1px solid var(--dts-border);
    border-radius: var(--dts-radius-pill);
    padding: 3px 14px;
    font-size: var(--dts-font-size-xs);
    color: var(--dts-text-secondary);
    flex: 1;
    max-width: 280px;
}

.dts-terminal-mockup-title {
    margin-left: var(--dts-space-3);
    font-size: var(--dts-font-size-xs);
    color: rgba(255, 255, 255, 0.6);
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
}

.dts-browser-mockup-body {
    padding: var(--dts-space-6);
    background: var(--dts-bg);
}

.dts-terminal-mockup-body {
    margin: 0;
    padding: var(--dts-space-5) var(--dts-space-6);
    background: #1c2029;
    color: #d7dbe0;
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
    font-size: var(--dts-font-size-sm);
    line-height: 1.7;
    overflow-x: auto;
    white-space: pre-wrap;
}

.dts-terminal-mockup-body code {
    background: none;
    color: inherit;
    padding: 0;
}

.dts-terminal-mockup-body .dts-term-prompt { color: #6fd07a; }
.dts-terminal-mockup-body .dts-term-comment { color: #7d8493; }
.dts-terminal-mockup-body .dts-term-highlight { color: #6fb3e0; }

/* ── SVG illustration wrapper ─────────────────────────────────────────── */

.dts-illustration {
    display: block;
    width: 100%;
    height: auto;
}

.dts-illustration-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ── Roadmap card — polished "Coming Soon" teaser (no disabled buttons) ──
 * Usage:
 *   <div class="dts-roadmap-card">
 *     <span class="dts-roadmap-badge">On the Roadmap</span>
 *     <div class="dts-roadmap-icon"><i class="fas fa-server"></i></div>
 *     <h3 class="dts-roadmap-title">Shared Hosting</h3>
 *     <p class="dts-roadmap-desc">...</p>
 *     <ul class="dts-roadmap-features">...</ul>
 *     <a href="/contact?topic=shared-hosting" class="dts-roadmap-cta">
 *       Get Notified When It Launches <i class="fas fa-arrow-right"></i>
 *     </a>
 *   </div>
 * ────────────────────────────────────────────────────────────────────── */

.dts-roadmap-card {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: var(--dts-bg-alt);
    border: 1px dashed var(--dts-border-input);
    border-radius: var(--dts-radius-lg);
    padding: var(--dts-space-6);
    transition: var(--dts-transition-fast);
}

.dts-roadmap-card:hover {
    border-color: var(--dts-accent);
    background: var(--dts-bg);
    box-shadow: var(--dts-shadow-sm);
}

.dts-roadmap-badge {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(74, 144, 217, 0.12);
    color: var(--dts-primary);
    font-size: var(--dts-font-size-xs);
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: var(--dts-radius-pill);
    margin-bottom: var(--dts-space-4);
}

.dts-roadmap-icon {
    width: 52px;
    height: 52px;
    border-radius: var(--dts-radius);
    background: var(--dts-bg);
    border: 1px solid var(--dts-border);
    color: var(--dts-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.375rem;
    margin-bottom: var(--dts-space-4);
}

.dts-roadmap-title {
    font-size: var(--dts-font-size-xl);
    margin: 0 0 var(--dts-space-2);
}

.dts-roadmap-desc {
    color: var(--dts-text-secondary);
    margin-bottom: var(--dts-space-4);
}

.dts-roadmap-features {
    list-style: none;
    padding: 0;
    margin: 0 0 var(--dts-space-6);
    color: var(--dts-text-secondary);
    font-size: var(--dts-font-size-sm);
    flex: 1;
}

.dts-roadmap-features li {
    padding-left: var(--dts-space-5);
    position: relative;
    margin-bottom: var(--dts-space-2);
}

.dts-roadmap-features li::before {
    content: '\f00c';
    font-family: 'Font Awesome 5 Pro', 'Font Awesome 6 Pro', 'Font Awesome 6 Free';
    font-weight: 900;
    position: absolute;
    left: 0;
    color: var(--dts-accent);
}

.dts-roadmap-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 12px 20px;
    border-radius: var(--dts-radius-sm);
    border: 1px solid var(--dts-primary);
    color: var(--dts-primary);
    font-weight: 500;
    text-decoration: none;
    transition: var(--dts-transition-fast);
    margin-top: auto;
}

.dts-roadmap-cta:hover {
    background: var(--dts-primary);
    color: #fff;
    text-decoration: none;
}

.dts-roadmap-cta i {
    font-size: 0.8em;
    transition: transform 0.2s ease;
}

.dts-roadmap-cta:hover i {
    transform: translateX(3px);
}

/* Mega-menu roadmap badge — replaces greyed-out disabled nav items */
.dts-nav-roadmap-badge {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--dts-primary);
    background: rgba(74, 144, 217, 0.12);
    border-radius: var(--dts-radius-pill);
    padding: 2px 8px;
    margin-left: var(--dts-space-2);
    vertical-align: middle;
}

/* ── Comparison table polish ─────────────────────────────────────────────
 * Usage:
 *   <div class="dts-compare-table-wrap">
 *     <table class="dts-compare-table">
 *       <thead><tr><th></th><th class="dts-compare-highlight">Plan</th>...
 *       <tbody><tr><th scope="row">Feature</th><td>...
 *     </table>
 *   </div>
 * ────────────────────────────────────────────────────────────────────── */

.dts-compare-table-wrap {
    overflow-x: auto;
    border-radius: var(--dts-radius-lg);
    border: 1px solid var(--dts-border);
    box-shadow: var(--dts-shadow-sm);
}

.dts-compare-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--dts-bg);
    font-size: var(--dts-font-size-sm);
}

.dts-compare-table th,
.dts-compare-table td {
    padding: var(--dts-space-4) var(--dts-space-5);
    text-align: center;
    border-bottom: 1px solid var(--dts-border);
    white-space: nowrap;
}

.dts-compare-table th[scope="row"] {
    text-align: left;
    font-weight: 500;
    color: var(--dts-text);
    white-space: normal;
}

.dts-compare-table thead th {
    background: var(--dts-bg-alt);
    color: var(--dts-text);
    font-size: var(--dts-font-size-base);
    font-weight: 700;
    border-bottom: 2px solid var(--dts-border);
}

.dts-compare-table tbody tr:last-child th,
.dts-compare-table tbody tr:last-child td {
    border-bottom: none;
}

.dts-compare-table .dts-compare-highlight {
    background: rgba(74, 144, 217, 0.06);
    position: relative;
}

.dts-compare-table thead .dts-compare-highlight {
    background: var(--dts-primary);
    color: #fff;
}

.dts-compare-table .dts-compare-yes {
    color: var(--dts-success);
}

.dts-compare-table .dts-compare-no {
    color: var(--dts-text-muted);
}

/* ── Payment / trust footer strip ────────────────────────────────────────
 * Usage:
 *   <div class="dts-trust-strip">
 *     <span class="dts-trust-item"><i class="fas fa-lock"></i> Secure Checkout</span>
 *     <span class="dts-trust-item"><i class="fab fa-cc-visa"></i>...</span>
 *   </div>
 * ────────────────────────────────────────────────────────────────────── */

.dts-trust-strip {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: var(--dts-space-6);
    padding: var(--dts-space-5) 0;
    border-top: 1px solid var(--dts-border-on-dark);
    margin-top: var(--dts-space-6);
}

.dts-trust-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: var(--dts-font-size-sm);
    color: var(--dts-text-on-dark-muted);
}

.dts-trust-item i {
    font-size: 1.1em;
    color: var(--dts-blue-400);
}

/* ── Skeleton / loading state ─────────────────────────────────────────────
 * Usage: <span class="dts-skeleton" style="width:60px;height:1em;"></span>
 * ────────────────────────────────────────────────────────────────────── */

.dts-skeleton {
    display: inline-block;
    border-radius: var(--dts-radius-sm);
    background: linear-gradient(90deg, var(--dts-border) 25%, var(--dts-bg-alt) 50%, var(--dts-border) 75%);
    background-size: 200% 100%;
    animation: dts-skeleton-shimmer 1.4s ease-in-out infinite;
}

@keyframes dts-skeleton-shimmer {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ═══════════════════════════════════════════════════════════════════════
   BEAUTY KIT — shared visual-polish layer (foundation for the site-wide
   polish pass). Everything below is additive and progressive-enhancement
   safe: without JS or on reduced-motion, content renders fully visible.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Reveal-on-scroll ─────────────────────────────────────────────────────
 * footer.tpl's observer adds .dts-js on <html> when it boots, tags curated
 * elements with .dts-reveal, and flips .is-visible as they enter the
 * viewport. Without JS, .dts-reveal is never hidden.
 * ────────────────────────────────────────────────────────────────────── */

html.dts-js .dts-reveal {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),
                transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: calc(var(--dts-reveal-idx, 0) * 70ms);
    will-change: opacity, transform;
}

html.dts-js .dts-reveal.is-visible {
    opacity: 1;
    transform: none;
}

@media (prefers-reduced-motion: reduce) {
    html.dts-js .dts-reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* ── Hero mesh background ─────────────────────────────────────────────────
 * Add .dts-hero--mesh next to .dts-page-hero (or any dark hero) for a
 * richer, depth-y gradient instead of the flat CTA gradient.
 * ────────────────────────────────────────────────────────────────────── */

.dts-hero--mesh {
    background: var(--dts-gradient-mesh) !important;
    position: relative;
    overflow: hidden;
}

.dts-hero--mesh::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, 0.09) 1px, transparent 1px);
    background-size: 22px 22px;
    -webkit-mask-image: radial-gradient(ellipse 90% 70% at 50% 30%, #000 30%, transparent 75%);
    mask-image: radial-gradient(ellipse 90% 70% at 50% 30%, #000 30%, transparent 75%);
    pointer-events: none;
}

.dts-hero--mesh > .container {
    position: relative;
    z-index: 1;
}

/* ── Section eyebrow chip ─────────────────────────────────────────────────
 * Upgrade plain uppercase eyebrows to a pill chip. Compose:
 *   <span class="dts-eyebrow-chip">Managed WordPress</span>
 * Works on light sections; add .dts-eyebrow-chip--on-dark inside heroes.
 * ────────────────────────────────────────────────────────────────────── */

.dts-eyebrow-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: var(--dts-font-size-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--dts-blue-700);
    background: rgba(74, 144, 217, 0.12);
    border: 1px solid rgba(74, 144, 217, 0.25);
    border-radius: var(--dts-radius-pill);
    padding: 5px 14px;
    margin-bottom: var(--dts-space-4);
}

.dts-eyebrow-chip--on-dark {
    color: #aad4ff;
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.18);
}

/* ── Gradient text accent ────────────────────────────────────────────────
 * <span class="dts-text-gradient">key phrase</span> inside hero titles.
 * ────────────────────────────────────────────────────────────────────── */

.dts-text-gradient {
    background: var(--dts-gradient-accent);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: var(--dts-blue-400); /* fallback */
}

/* ── Glass card (for dark sections) ──────────────────────────────────────
 * <div class="dts-glass-card">...</div> on .dts-section--dark / heroes.
 * ────────────────────────────────────────────────────────────────────── */

.dts-glass-card {
    background: var(--dts-glass-bg);
    border: 1px solid var(--dts-glass-border);
    border-radius: var(--dts-radius-lg);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
}

/* ── Card hover polish (site-wide upgrade of existing cards) ─────────────
 * Applies to the shared card classes already used across pages — richer
 * lift, accent border sweep, and icon pop on hover.
 * ────────────────────────────────────────────────────────────────────── */

.dts-feature-card,
.dts-service-card,
.dts-testimonial-card {
    position: relative;
    transition: transform 0.25s cubic-bezier(0.22, 1, 0.36, 1),
                box-shadow 0.25s cubic-bezier(0.22, 1, 0.36, 1),
                border-color 0.25s ease;
}

.dts-feature-card:hover,
.dts-service-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--dts-shadow-lg);
    border-color: rgba(74, 144, 217, 0.45);
}

.dts-feature-card::after,
.dts-service-card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 3px;
    border-radius: var(--dts-radius-lg) var(--dts-radius-lg) 0 0;
    background: var(--dts-gradient-accent);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

.dts-feature-card:hover::after,
.dts-service-card:hover::after {
    transform: scaleX(1);
}

.dts-feature-card .dts-feature-icon {
    transition: transform 0.25s cubic-bezier(0.22, 1, 0.36, 1);
}

.dts-feature-card:hover .dts-feature-icon {
    transform: scale(1.08) translateY(-2px);
}

/* ── Button polish ───────────────────────────────────────────────────────
 * Primary buttons get a subtle lift + brighter hover; light hero buttons
 * get a soft glow. Applies to existing markup, no changes needed.
 * ────────────────────────────────────────────────────────────────────── */

.btn-primary,
.dts-cta-strip .btn-light,
.dts-page-hero .btn-light {
    transition: transform 0.18s ease, box-shadow 0.18s ease,
                background-color 0.18s ease, color 0.18s ease;
}

.btn-primary:hover,
.dts-cta-strip .btn-light:hover,
.dts-page-hero .btn-light:hover {
    transform: translateY(-1px);
    box-shadow: var(--dts-shadow-md);
}

.btn-primary:active,
.dts-cta-strip .btn-light:active,
.dts-page-hero .btn-light:active {
    transform: translateY(0);
}

/* ── Section divider (soft wave between light sections) ──────────────────
 * <div class="dts-section-divider" aria-hidden="true"></div>
 * ────────────────────────────────────────────────────────────────────── */

.dts-section-divider {
    height: 64px;
    background:
        radial-gradient(ellipse 60% 100% at 50% 0%, var(--dts-bg-alt) 0%, transparent 70%);
}

/* ── Stat number pop ─────────────────────────────────────────────────────
 * Big stat values get the accent gradient for extra punch.
 * ────────────────────────────────────────────────────────────────────── */

.dts-home-stat-value {
    background: linear-gradient(180deg, #ffffff 30%, #a8cdf0 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* ── Mobile base polish (site-wide) ──────────────────────────────────── */

@media (max-width: 767px) {
    /* Comfier tap targets on primary actions */
    .dts-page-hero-actions .btn,
    .dts-cta-strip .btn {
        padding-top: 13px;
        padding-bottom: 13px;
        min-width: 200px;
    }

    /* Tables scroll instead of squish */
    .dts-compare-table-wrap,
    .table-responsive {
        -webkit-overflow-scrolling: touch;
    }

    /* Tighter hero rhythm on small screens */
    .dts-page-hero-title {
        font-size: clamp(1.8rem, 8vw, 2.4rem);
    }

    .dts-marketing-section-title {
        font-size: clamp(1.5rem, 6.5vw, 1.9rem);
    }
}
