/*
Theme Name: Astra Child
Theme URI: http://wpastra.com/child-theme-creator/
Template: astra
Author: Zybroz Team
Author URI: http://wpastra.com/
Description: Zybroz Dark Theme (Custom Implementation) - Ported from HTML
Version: 1.2.0
Text Domain: astra-child
*/

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   IMPORTS & FONTS
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,600;0,9..144,700;0,9..144,800;1,9..144,300;1,9..144,600&family=DM+Sans:wght@300;400;500;600&display=swap");

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   DESIGN SYSTEM â€” dark edition
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
:root {
    /* â”€â”€ backgrounds â”€â”€ */
    --bg-base: var(--ast-global-color-5, #0f1117);
    /* Mapped to Astra Global - V0.2.1 */
    --bg-raised: #161922;
    --bg-deep: #0a0c10;
    --bg-input: #1c2030;
    /* Legacy/Woo Mappings (optional) */
    --zybroz-bg: var(--bg-base);
    --zybroz-line: var(--border);

    /* â”€â”€ text â”€â”€ */
    --text-primary: var(--ast-global-color-3, #eef0f4);
    /* Mapped to Astra Global - V0.2.1 */
    --text-mid: #c8d1e0;
    /* 25% brighter than #9ba5b5 */
    --text-muted: #8c96a8;
    /* 25% brighter than #5e6777 */

    /* â”€â”€ accent â”€â”€ */
    --cyan: var(--ast-global-color-0, #06b6d4);
    /* Mapped to Astra Global - V0.2.1 */
    --cyan-light: #67e8f9;
    --cyan-dim: rgba(6, 182, 212, .12);
    --cyan-glow: rgba(6, 182, 212, .28);

    /* â”€â”€ borders â”€â”€ */
    --border: rgba(255, 255, 255, .07);
    --border-hover: rgba(6, 182, 212, .30);

    /* â”€â”€ shadows â”€â”€ */
    --shadow-sm: 0 2px 10px rgba(0, 0, 0, 0.25);
    --shadow-md: 0 6px 28px rgba(0, 0, 0, 0.35);
    --shadow-lg: 0 16px 48px rgba(0, 0, 0, 0.45);

    /* â”€â”€ radii â”€â”€ */
    --radius: 14px;
    --radius-sm: 9px;
    --radius-pill: 999px;

    /* â”€â”€ type â”€â”€ */
    --font-display: 'Fraunces', Georgia, serif;
    --font-body: 'DM Sans', system-ui, sans-serif;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   HOME PAGE â€” pin variables to prevent Astra customizer bleed
   Same technique as .zymp-wrapper in zymarketplace.css
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
body.page-template-page-custom-home {
    --bg-base:      #0f1117;
    --text-primary: #eef0f4;
    --text-mid:     #c8d1e0;
    --text-muted:   #8c96a8;
    --cyan:         #06b6d4;
    background:     #0f1117;
    color:          #c8d1e0;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   RESET & GLOBAL
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-body);
    background: var(--bg-base);
    background-color: var(--bg-base);
    color: var(--text-mid);
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    line-height: 1.6;
    margin: 0;
    /* Reset default margin */
}

html {
    background-color: var(--bg-base);
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
}

button {
    font-family: inherit;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   NOISE OVERLAY
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
body::after {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 9999;
    opacity: .035;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   LAYOUT HELPERS
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.container {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 28px;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   NAV (From CSS Source)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.nav {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(15, 17, 23, .82);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
    border-bottom: 1px solid var(--border);
    transition: box-shadow .3s;
}

.nav.scrolled {
    box-shadow: var(--shadow-md);
}

.nav .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
}

.nav-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 1.35rem;
    color: var(--text-primary);
    font-style: italic;
}

.nav-logo {
    height: 60px;
    width: auto;
    display: block;
}

.nav-brand .z-mark {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: var(--cyan);
    color: #0a0c10;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-display);
    font-weight: 800;
    font-size: .95rem;
    font-style: italic;
    letter-spacing: -.02em;
    box-shadow: 0 0 16px var(--cyan-glow);
}

.nav-links {
    display: flex;
    gap: 32px;
}

.nav-links a {
    font-size: .88rem;
    font-weight: 500;
    color: #ffffff;
    position: relative;
    transition: color .25s;
    white-space: nowrap;
}

.nav-links a:hover {
    color: #06b6d4;
}

.nav-links a.active {
    color: var(--cyan);
}

.nav-cta {
    background: var(--cyan);
    color: #0a0c10;
    font-size: .82rem;
    font-weight: 600;
    padding: 9px 22px;
    border-radius: var(--radius-pill);
    border: none;
    cursor: pointer;
    box-shadow: 0 0 14px var(--cyan-glow);
    transition: box-shadow .2s, transform .15s;
}

.nav-cta:hover {
    box-shadow: 0 0 22px var(--cyan-glow);
    transform: translateY(-1px);
}

.nav-mobile-btn {
    display: none;
    background: none;
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    padding: 7px;
    color: var(--text-mid);
    cursor: pointer;
}

.mobile-panel {
    display: none;
    background: var(--bg-raised);
    border-top: 1px solid var(--border);
    padding: 20px 28px;
}

.mobile-panel a {
    display: block;
    padding: 11px 0;
    font-size: .95rem;
    font-weight: 500;
    color: var(--text-mid);
    border-bottom: 1px solid var(--border);
}

.mobile-panel a:last-of-type {
    border-bottom: none;
}

.mobile-panel .nav-cta {
    margin-top: 16px;
    display: inline-block;
}


/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   HERO
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.hero {
    padding: 100px 0 80px;
    position: relative;
    background:
        radial-gradient(ellipse 680px 480px at 72% 35%, rgba(6, 182, 212, .06) 0%, transparent 70%),
        radial-gradient(ellipse 380px 320px at 18% 78%, rgba(6, 182, 212, .035) 0%, transparent 65%);
}

.hero::before {
    content: '';
    position: absolute;
    top: -120px;
    right: -180px;
    width: 580px;
    height: 580px;
    border-radius: 50%;
    border: 1px solid var(--border);
    pointer-events: none;
}

.hero::after {
    content: '';
    position: absolute;
    top: 60px;
    right: 20px;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(6, 182, 212, .08) 0%, transparent 70%);
    pointer-events: none;
}

.hero .container {
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 60px;
    align-items: end;
    position: relative;
    z-index: 1;
}

.hero-left {
    max-width: 580px;
}

.hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: .78rem;
    font-weight: 600;
    color: var(--cyan);
    text-transform: uppercase;
    letter-spacing: .1em;
    margin-bottom: 28px;
}

.hero-eyebrow .line {
    width: 32px;
    height: 1.5px;
    background: var(--cyan);
}

.hero h1 {
    font-family: var(--font-display);
    font-size: clamp(38px, 5.8vw, 64px);
    font-weight: 700;
    line-height: 1.06;
    color: var(--text-primary);
    letter-spacing: -.02em;
}

.hero h1 em {
    font-style: italic;
    font-weight: 300;
    color: var(--cyan);
}

.hero-desc {
    margin-top: 28px;
    font-size: 1.02rem;
    color: var(--text-mid);
    max-width: 480px;
    line-height: 1.75;
}

.hero-desc strong {
    color: #007cba;
    font-weight: 600;
}

.hero-actions {
    margin-top: 36px;
    display: flex;
    gap: 14px;
    align-items: center;
    flex-wrap: wrap;
}

.hero-chips {
    margin-top: 32px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

/* Hero Right cards */
.hero-right {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.hero-card {
    background: rgba(238, 240, 244, .04);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 18px 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    transition: box-shadow .25s, transform .25s, border-color .25s;
    box-shadow: var(--shadow-sm);
}

.hero-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateX(-4px);
    border-color: var(--border-hover);
}

.hero-card .hc-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .72rem;
    font-weight: 700;
    flex-shrink: 0;
    letter-spacing: -.01em;
}

.hc-icon.aws {
    background: rgba(251, 146, 60, .18);
    color: #fb923c;
}

.hc-icon.gm {
    background: rgba(74, 222, 128, .18);
    color: #4ade80;
}

.hc-icon.chr {
    background: rgba(96, 165, 250, .18);
    color: #60a5fa;
}

.hc-icon.zoho {
    background: rgba(251, 113, 133, .18);
    color: #fb7185;
}

.hc-icon.scr {
    background: rgba(99, 102, 241, .18);
    color: #818cf8;
}

.hero-card .hc-label {
    font-size: .7rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: .06em;
}

.hero-card .hc-title {
    font-size: .88rem;
    font-weight: 600;
    color: #007cba;
    margin-top: 2px;
}

.hero-card .hc-arrow {
    margin-left: auto;
    color: var(--cyan);
    opacity: 0;
    transition: opacity .2s, transform .2s;
}

.hero-card:hover .hc-arrow {
    opacity: 1;
    transform: translateX(3px);
}

.hero-more {
    text-align: center;
    padding: 6px 0;
    font-size: .78rem;
    font-weight: 500;
    color: var(--cyan);
    cursor: pointer;
    transition: color .2s;
}

.hero-more:hover {
    color: var(--cyan-light);
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   MARQUEE STRIP
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.marquee-wrap {
    overflow: hidden;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    background: var(--bg-deep);
    padding: 18px 0;
}

.marquee-track {
    display: flex;
    gap: 64px;
    animation: marquee 30s linear infinite;
    white-space: nowrap;
}

.marquee-track .m-item {
    flex-shrink: 0;
    font-size: .78rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: .14em;
    display: flex;
    align-items: center;
    gap: 10px;
}

.marquee-track .m-item .m-dot {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--cyan);
}

@keyframes marquee {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   ABOUT
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.about {
    padding: 100px 0;
    position: relative;
    background: var(--bg-base);
}

.about .container {
    display: grid;
    grid-template-columns: 100px 1fr 1fr;
    gap: 48px;
    align-items: start;
}

.about-number {
    font-family: var(--font-display);
    font-size: 7rem;
    font-weight: 800;
    line-height: .9;
    color: rgba(255, 255, 255, .04);
    letter-spacing: -.04em;
}

.about-left h2 {
    font-family: var(--font-display);
    font-size: clamp(24px, 3vw, 32px);
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
    letter-spacing: -.01em;
}

.about-left p {
    margin-top: 18px;
    font-size: .97rem;
    color: var(--text-mid);
    line-height: 1.8;
}

.about-right {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 8px;
}

.about-stat {
    background: rgba(238, 240, 244, .04);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 22px 18px;
    box-shadow: var(--shadow-sm);
    transition: box-shadow .25s, border-color .25s;
}

.about-stat:hover {
    box-shadow: var(--shadow-md);
    border-color: var(--border-hover);
}

.about-stat .as-val {
    font-family: var(--font-display);
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--text-primary);
}

.about-stat .as-label {
    margin-top: 4px;
    font-size: .76rem;
    color: var(--text-muted);
    font-weight: 500;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   PRODUCTS
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.products {
    padding: 100px 0;
    background: var(--bg-deep);
    color: var(--text-primary);
    position: relative;
    overflow: hidden;
}

.products::before {
    content: 'PRODUCTS';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--font-display);
    font-size: 18vw;
    font-weight: 800;
    white-space: nowrap;
    color: rgba(255, 255, 255, .025);
    pointer-events: none;
    letter-spacing: -.04em;
}

.products .container {
    position: relative;
    z-index: 1;
}

.products-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 20px;
}

.products-header-left .section-eye {
    font-size: .76rem;
    font-weight: 600;
    color: var(--cyan);
    text-transform: uppercase;
    letter-spacing: .12em;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.products-header-left .section-eye .line {
    width: 22px;
    height: 1.5px;
    background: var(--cyan);
}

.products-header h2 {
    font-family: var(--font-display);
    font-size: clamp(26px, 3.2vw, 36px);
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: -.02em;
    line-height: 1.2;
}

.products-header-right p {
    max-width: 420px;
    font-size: .9rem;
    color: rgba(238, 240, 244, .50);
    line-height: 1.75;
}

.product-tabs {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 36px;
}

.ptab {
    background: rgba(238, 240, 244, .06);
    border: 1px solid rgba(238, 240, 244, .12);
    border-radius: var(--radius-pill);
    padding: 8px 18px;
    font-size: .8rem;
    font-weight: 500;
    color: rgba(238, 240, 244, .55);
    cursor: pointer;
    transition: all .2s;
}

.ptab:hover {
    background: rgba(238, 240, 244, .10);
    color: var(--text-primary);
}

.ptab.active {
    background: var(--cyan);
    border-color: var(--cyan);
    color: #0a0c10;
    font-weight: 600;
}

.product-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 28px;
}

.p-card {
    background: rgba(238, 240, 244, .04);
    border: 1px solid rgba(238, 240, 244, .10);
    border-radius: 18px;
    padding: 28px 24px;
    position: relative;
    overflow: hidden;
    transition: background .3s, border-color .3s, transform .25s;
}

.p-card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--cyan), transparent);
    opacity: 0;
    transition: opacity .3s;
}

.p-card:hover {
    background: rgba(238, 240, 244, .07);
    border-color: rgba(6, 182, 212, .25);
    transform: translateY(-3px);
}

.p-card:hover::after {
    opacity: 1;
}

.p-card .pc-cat {
    font-size: .7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .09em;
    color: var(--cyan-light);
}

.p-card h3 {
    margin-top: 8px;
    font-size: .95rem;
    font-weight: 600;
    color: var(--text-primary);
}

.p-card ul {
    list-style: none;
    margin-top: 18px;
}

.p-card ul li {
    padding: 8px 0;
    border-top: 1px solid rgba(238, 240, 244, .08);
    font-size: .8rem;
    color: rgba(238, 240, 244, .50);
    line-height: 1.6;
}

.p-card ul li strong {
    color: rgba(238, 240, 244, .85);
    font-weight: 600;
}

.p-card .pc-note {
    margin-top: 14px;
    font-size: .8rem;
    color: rgba(238, 240, 244, .40);
    line-height: 1.6;
}

.p-card.p-soon {
    background: linear-gradient(145deg, rgba(6, 182, 212, .08), rgba(194, 113, 90, .05));
    border-color: rgba(6, 182, 212, .18);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 220px;
}

.p-soon .soon-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(6, 182, 212, .10);
    border: 1px solid rgba(6, 182, 212, .20);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    color: var(--cyan);
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   PRODUCT GRID â€” Individual Cards
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.prod-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 28px;
    align-items: start;
}

.prod-card {
    background: #161922;
    border: 1px solid rgba(238, 240, 244, .10);
    border-radius: 18px;
    padding: 26px 24px 22px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 360px;
    transition: background .3s, border-color .3s, transform .3s, box-shadow .3s;
    box-shadow: 0 2px 16px rgba(0, 0, 0, .30);
}

.prod-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; bottom: 0;
    width: 3px;
    border-radius: 18px 0 0 18px;
    transition: opacity .3s;
}

.prod-card[data-cat~="suitecrm"]::before { background: #6366f1; }
.prod-card[data-cat~="zoho"]:not([data-cat~="suitecrm"])::before { background: #06b6d4; }
.prod-card[data-cat~="sugarcrm"]:not([data-cat~="suitecrm"]):not([data-cat~="zoho"])::before { background: #f59e0b; }
.prod-card[data-cat~="aws"]::before { background: #f97316; }
.prod-card[data-cat~="gmail"]::before { background: #ef4444; }
.prod-card[data-cat="chrome"]::before { background: #a855f7; }

.prod-card:hover {
    background: #1c2235;
    border-color: rgba(238, 240, 244, .20);
    transform: translateY(-5px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, .40);
}

.prod-card:hover .pcard-cta { gap: 9px; color: var(--cyan); }

.pcard-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.pcard-chip {
    font-size: .62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    padding: 3px 10px;
    border-radius: 100px;
    background: rgba(238, 240, 244, .08);
    color: rgba(238, 240, 244, .55);
}
.pcard-chip.scr        { background: rgba(99,102,241,.15);  color: #818cf8; }
.pcard-chip.zoho       { background: rgba(6,182,212,.15);   color: #22d3ee; }
.pcard-chip.sugar      { background: rgba(245,158,11,.15);  color: #fbbf24; }
.pcard-chip.aws        { background: rgba(249,115,22,.15);  color: #fb923c; }
.pcard-chip.gmail      { background: rgba(239,68,68,.15);   color: #f87171; }
.pcard-chip.chrome-ext { background: rgba(168,85,247,.15);  color: #c084fc; }
.pcard-chip.multi      { background: rgba(238,240,244,.08); color: rgba(238,240,244,.45); }

.pcard-badge {
    font-size: .58rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    padding: 2px 8px;
    border-radius: 100px;
    white-space: nowrap;
    background: rgba(107,114,128,.15);
    color: #9ca3af;
}
.pcard-badge.live     { background: rgba(16,185,129,.15);  color: #34d399; }
.pcard-badge.early    { background: rgba(245,158,11,.15);  color: #fbbf24; padding: 2px 8px; }
.pcard-badge.soon     { background: rgba(6,182,212,.15);   color: #22d3ee; }
.pcard-badge.dev      { background: rgba(139,92,246,.15);  color: #a78bfa; }
.pcard-badge.pipeline { background: rgba(107,114,128,.15); color: #9ca3af; }

.pcard-name {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 4px 0 0;
    line-height: 1.3;
}

.pcard-desc {
    font-size: .8rem;
    color: rgba(238, 240, 244, .50);
    line-height: 1.65;
    flex: 1;
}

.pcard-serves {
    font-size: .68rem;
    font-weight: 600;
    color: rgba(238, 240, 244, .28);
    letter-spacing: .03em;
    border-top: 1px solid rgba(238, 240, 244, .07);
    padding-top: 10px;
    margin-top: 2px;
}

.pcard-cta {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: .76rem;
    font-weight: 600;
    color: #007cba;
    text-decoration: none;
    margin-top: 2px;
    transition: gap .2s, color .2s;
}
.pcard-cta:hover { gap: 9px; color: var(--cyan); }

.pcard-cta-soft {
    font-size: .72rem;
    font-weight: 500;
    color: rgba(238, 240, 244, .28);
    margin-top: 2px;
    font-style: italic;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   VISION / MISSION
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.vision {
    padding: 100px 0;
    position: relative;
    background: var(--bg-base);
}

.vision::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 180px;
    background: linear-gradient(180deg, var(--cyan), transparent);
    border-radius: 0 2px 2px 0;
}

.vision .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}

.vision-left .section-eye {
    font-size: .76rem;
    font-weight: 600;
    color: var(--cyan);
    text-transform: uppercase;
    letter-spacing: .12em;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.vision-left .section-eye .line {
    width: 22px;
    height: 1.5px;
    background: var(--cyan);
}

.vision-left h2 {
    font-family: var(--font-display);
    font-size: clamp(26px, 3.2vw, 34px);
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
    letter-spacing: -.02em;
}

.vision-left p {
    margin-top: 18px;
    font-size: .95rem;
    color: var(--text-mid);
    line-height: 1.8;
}

.vision-left p.hl {
    color: var(--text-primary);
    font-size: 1rem;
    font-weight: 500;
}

.why-block {
    background: rgba(238, 240, 244, .04);
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 36px 32px;
    box-shadow: var(--shadow-md);
}

.why-block h3 {
    font-family: var(--font-display);
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 24px;
}

.why-item {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 14px 0;
    border-bottom: 1px solid var(--border);
}

.why-item:last-child {
    border-bottom: none;
}

.why-item .wi-num {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: var(--cyan-dim);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .72rem;
    font-weight: 700;
    color: var(--cyan);
    font-family: var(--font-display);
}

.why-item .wi-text {
    font-size: .87rem;
    color: rgba(238, 240, 244, .50);
    line-height: 1.6;
}

.why-item .wi-text strong {
    color: #007cba;
    font-weight: 600;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   EARLY ACCESS
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.early {
    padding: 100px 0;
    background: var(--bg-deep);
    position: relative;
    overflow: hidden;
}

.early::after {
    content: '';
    position: absolute;
    bottom: -200px;
    right: -200px;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    border: 1px solid var(--border);
    pointer-events: none;
}

.early .container {
    max-width: 680px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 1;
}

.early .section-eye {
    font-size: .76rem;
    font-weight: 600;
    color: var(--cyan);
    text-transform: uppercase;
    letter-spacing: .12em;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.early .section-eye .line {
    width: 22px;
    height: 1.5px;
    background: var(--cyan);
}

.early h2 {
    font-family: var(--font-display);
    font-size: clamp(28px, 3.8vw, 40px);
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: -.02em;
    line-height: 1.2;
}

.early>.container>p {
    margin-top: 18px;
    font-size: .95rem;
    color: rgba(238, 240, 244, .50);
    line-height: 1.75;
}

.early-form {
    margin-top: 30px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 10px;
}

.early-form input[type="email"] {
    width: 100%;
    padding: 14px 20px;
    border-radius: var(--radius-pill);
    border: 1px solid var(--border);
    background: var(--bg-input);
    color: var(--text-primary);
    font-family: inherit;
    font-size: .88rem;
    outline: none;
    transition: border-color .25s, box-shadow .25s;
    box-shadow: var(--shadow-sm);
}

.early-form input::placeholder {
    color: var(--text-muted);
}

.early-form input:focus {
    border-color: var(--cyan);
    box-shadow: 0 0 0 3px var(--cyan-dim);
}

.early-form button {
    background: var(--cyan);
    color: #0a0c10;
    font-size: .86rem;
    font-weight: 600;
    padding: 14px 28px;
    border-radius: var(--radius-pill);
    border: none;
    cursor: pointer;
    box-shadow: 0 0 16px var(--cyan-glow);
    transition: box-shadow .2s, transform .15s;
}

.early-form button:hover {
    box-shadow: 0 0 24px var(--cyan-glow);
    transform: translateY(-1px);
}

.early-privacy {
    margin-top: 16px;
    font-size: .75rem;
    color: var(--text-muted);
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   CONTACT
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.contact {
    padding: 100px 0;
    background: var(--bg-base);
}

.contact .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: start;
}

.contact-left .section-eye {
    font-size: .76rem;
    font-weight: 600;
    color: var(--cyan);
    text-transform: uppercase;
    letter-spacing: .12em;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.contact-left .section-eye .line {
    width: 22px;
    height: 1.5px;
    background: var(--cyan);
}

.contact-left h2 {
    font-family: var(--font-display);
    font-size: clamp(26px, 3.2vw, 34px);
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: -.02em;
    line-height: 1.2;
}

.contact-left>p {
    margin-top: 18px;
    font-size: .95rem;
    color: var(--text-mid);
    line-height: 1.8;
}

.contact-details {
    margin-top: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.cd-row {
    display: flex;
    align-items: center;
    gap: 14px;
}

.cd-row .cd-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: rgba(6, 182, 212, .10);
    border: 1px solid rgba(6, 182, 212, .20);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--cyan);
    flex-shrink: 0;
}

.cd-row .cd-lbl {
    font-size: .7rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: .06em;
}

.cd-row .cd-val {
    font-size: .88rem;
    color: var(--text-primary);
    margin-top: 1px;
}

.cd-row .cd-val a {
    color: var(--cyan);
}

.cd-row .cd-val a:hover {
    text-decoration: underline;
}

.contact-form-card {
    background: rgba(238, 240, 244, .04);
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 36px 32px;
    box-shadow: var(--shadow-md);
}

.contact-form-card h3 {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.cf-group {
    margin-top: 18px;
}

.cf-group input,
.cf-group textarea {
    width: 100%;
    padding: 12px 16px;
    border-radius: var(--radius);
    border: 1px solid var(--border);
    background: var(--bg-input);
    color: var(--text-primary);
    font-family: inherit;
    font-size: .86rem;
    outline: none;
    transition: border-color .25s, box-shadow .25s;
}

.cf-group input::placeholder,
.cf-group textarea::placeholder {
    color: var(--text-muted);
}

.cf-group input:focus,
.cf-group textarea:focus {
    border-color: var(--cyan);
    box-shadow: 0 0 0 3px var(--cyan-dim);
}

.cf-group textarea {
    resize: vertical;
    min-height: 100px;
}

.btn-send {
    margin-top: 22px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--cyan);
    color: #0a0c10;
    font-size: .86rem;
    font-weight: 600;
    padding: 12px 24px;
    border-radius: var(--radius-pill);
    border: none;
    cursor: pointer;
    box-shadow: 0 0 14px var(--cyan-glow);
    transition: box-shadow .2s, transform .15s;
}

.btn-send:hover {
    box-shadow: 0 0 22px var(--cyan-glow);
    transform: translateY(-1px);
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   FOOTER
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
footer {
    border-top: 1px solid var(--border);
    padding: 28px 0;
    background: var(--bg-base);
}

footer .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
}

footer p {
    font-size: .8rem;
    color: var(--text-muted);
}

.footer-links {
    display: flex;
    gap: 22px;
}

.footer-links a {
    font-size: .8rem;
    color: var(--text-muted);
    transition: color .2s;
}

.footer-links a:hover {
    color: var(--cyan);
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   ANIMATIONS (Scroll Reveal)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.rev {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .75s cubic-bezier(.4, 0, .2, 1), transform .75s cubic-bezier(.4, 0, .2, 1);
}

.rev.vis {
    opacity: 1;
    transform: translateY(0);
}

.rev-d1 {
    transition-delay: .1s;
}

.rev-d2 {
    transition-delay: .2s;
}

.rev-d3 {
    transition-delay: .3s;
}

.rev-d4 {
    transition-delay: .4s;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   BUTTONS & CHIPS (Global)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.btn-fill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--cyan);
    color: #0a0c10;
    font-size: .88rem;
    font-weight: 600;
    padding: 13px 28px;
    border-radius: var(--radius-pill);
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 20px var(--cyan-glow);
    transition: transform .2s, box-shadow .2s;
}

.btn-fill:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 28px var(--cyan-glow);
    color: #0a0c10;
}

.btn-fill svg {
    transition: transform .2s;
}

.btn-fill:hover svg {
    transform: translateX(3px);
}

.btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid var(--border);
    color: rgba(238, 240, 244, .55);
    font-size: .88rem;
    font-weight: 500;
    padding: 12px 24px;
    border-radius: var(--radius-pill);
    background: rgba(238, 240, 244, .04);
    cursor: pointer;
    transition: border-color .2s, color .2s, background .2s;
}

.btn-outline:hover {
    border-color: var(--border-hover);
    color: var(--text-primary);
    background: rgba(238, 240, 244, .07);
}

.chip {
    display: inline-block;
    padding: 5px 13px;
    border: 1px solid var(--border);
    border-radius: var(--radius-pill);
    font-size: .74rem;
    font-weight: 500;
    color: rgba(238, 240, 244, .55);
    background: rgba(238, 240, 244, .04);
    transition: border-color .2s, color .2s;
}

.chip:hover {
    border-color: var(--border-hover);
    color: var(--cyan);
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   SECTION TITLE STYLES
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.section-eye {
    font-size: .76rem;
    font-weight: 600;
    color: var(--cyan);
    text-transform: uppercase;
    letter-spacing: .12em;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.section-eye .line {
    width: 22px;
    height: 1.5px;
    background: var(--cyan);
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   DARK THEME â€” Kill Astra's dark-colour bleed on strong/bold
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   POLICY PAGES â€” Title area (Astra default template)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
body.policy-page .ast-page-header-wrap,
body.policy-page .entry-header,
body.policy-page .ast-single-post-order .entry-header {
    text-align: center;
    padding-top: 52px;
    padding-bottom: 0;
}

body.policy-page .entry-title,
body.policy-page .page-title {
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    color: #eef0f4;
    margin-bottom: 4px;
}

body.policy-page .ast-breadcrumbs-wrapper,
body.policy-page .ast-page-header-wrap + .ast-container > .entry-content {
    text-align: left;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   POLICY PAGES (privacy, terms, refund)
   Simple readable layout â€” no decorative fonts, centered column
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.page-id-policy-page,
body.page-slug-privacy-policy,
body.page-slug-terms-conditions,
body.page-slug-refund-policy {
    background: #0f1117;
}

.policy-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 60px 32px 80px;
    color: #c8d1e0;
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 1rem;
    line-height: 1.75;
}

.policy-content h1 {
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 1.75rem;
    font-weight: 700;
    color: #eef0f4;
    margin: 0 0 8px;
}

.policy-content .policy-meta {
    font-size: .85rem;
    color: #8c96a8;
    margin-bottom: 40px;
    border-bottom: 1px solid rgba(255,255,255,.07);
    padding-bottom: 20px;
}

.policy-content h2 {
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 1.1rem;
    font-weight: 600;
    color: #eef0f4;
    margin: 36px 0 10px;
}

.policy-content h3 {
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 1rem;
    font-weight: 600;
    color: #c8d1e0;
    margin: 24px 0 8px;
}

.policy-content p {
    margin: 0 0 16px;
    color: #c8d1e0;
}

.policy-content ul,
.policy-content ol {
    padding-left: 24px;
    margin: 0 0 16px;
}

.policy-content li {
    margin-bottom: 6px;
    color: #c8d1e0;
}

.policy-content a {
    color: #06b6d4;
    text-decoration: none;
}

.policy-content a:hover {
    text-decoration: underline;
}

.policy-content strong {
    color: #eef0f4;
    font-weight: 600;
}

@media(max-width:600px) {
    .policy-content {
        padding: 40px 20px 60px;
    }
    .policy-content h1 {
        font-size: 1.4rem;
    }
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   RESPONSIVE
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
@media(max-width:900px) {
    .product-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .prod-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .hero .container {
        grid-template-columns: 1fr;
    }

    .hero-right {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .hero-card {
        flex: 1 1 calc(50% - 6px);
        min-width: 180px;
    }

    .hero-more {
        display: none;
    }

    .about .container {
        grid-template-columns: 1fr 1fr;
    }

    .about-number {
        display: none;
    }
}

@media(max-width:768px) {

    .nav-links,
    .nav-cta {
        display: none;
    }

    .nav-mobile-btn {
        display: inline-flex;
    }

    .hero {
        padding: 72px 0 56px;
    }

    .hero .container,
    .about .container,
    .vision .container,
    .contact .container {
        grid-template-columns: 1fr;
    }

    .about-right {
        grid-template-columns: 1fr 1fr;
    }

    .product-grid {
        grid-template-columns: 1fr;
    }
    .prod-grid {
        grid-template-columns: 1fr;
    }

    .early-form {
        grid-template-columns: 1fr;
    }

    .products-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .products-header-right p {
        max-width: 100%;
    }
}

@media(max-width:420px) {
    .hero-card {
        flex: 1 1 100%;
    }

    .about-right {
        grid-template-columns: 1fr 1fr;
    }
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   ASTRA OVERRIDES (Fix Double Footer & Layout)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
/* Hide default Astra footer while keeping ours */
.site-footer {
    display: none !important;
}

.zybroz-custom-footer {
    display: block !important;
}

/* 2. Fix "White Background" on Hero/Sections */
/* Astra puts a white bg on these; we need transparent to let body dark bg show */
.ast-container,
.site-content,
.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-single,
div#primary,
div#content,
main#main,
.entry-content {
    background-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

/* 3. Fix "Horizontal Sections" */
/* Force standard vertical block stacking */
.site-content,
.ast-container,
div#primary,
main#main,
.entry-content {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
}

/* Ensure no flex row behavior on rows if present */
.ast-row {
    display: block !important;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   WP MENU OVERRIDES (Dynamic Menus)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.nav-links ul.menu-list,
.footer-links ul.footer-menu-list {
    display: flex;
    gap: 32px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-links ul.footer-menu-list {
    gap: 22px;
}

/* Link Styles */
.nav-links ul.menu-list li a {
    font-size: .88rem;
    font-weight: 500;
    color: #ffffff;
    transition: color .25s;
}

.footer-links ul.footer-menu-list li a {
    font-size: .8rem;
    color: var(--text-muted);
    transition: color .2s;
}

/* Hover & Active States */
.nav-links ul.menu-list li a:hover {
    color: #06b6d4;
}

.nav-links ul.menu-list li.current-menu-item a {
    color: var(--cyan);
}

.footer-links ul.footer-menu-list li a:hover {
    color: var(--cyan);
}

/* Mobile Menu */
.mobile-panel ul.mobile-menu-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mobile-panel ul.mobile-menu-list li {
    border-bottom: 1px solid var(--border);
}

.mobile-panel ul.mobile-menu-list li:last-child {
    border-bottom: none;
}

.mobile-panel ul.mobile-menu-list li a {
    display: block;
    padding: 11px 0;
    font-size: .95rem;
    font-weight: 500;
    color: var(--text-mid);
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   GLOBAL FIXES (Re-applied)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/

/* 4. Fix "White Space" Gaps */
body.home .entry-content>*,
body.home .entry-content>.wp-block-group,
body.home p {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    max-width: 100% !important;
}

body.home .entry-content {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
}

/* 5. Fix "White Background" */
.hero,
.about,
.products,
.vision,
.early,
.contact {
    background-color: transparent !important;
}

/* 6. Enforce Typography */
h1,
h2,
h3,
h4,
h5,
h6,
.entry-content h1,
.entry-content h2,
.entry-content h3 {
    font-family: var(--font-display) !important;
}

body,
p,
.entry-content p,
li,
a {
    font-family: var(--font-body) !important;
}

/* 7. Design Widths */
.hero .container,
.about .container,
.products .container,
.vision .container,
.early .container {
    max-width: 1180px !important;
    width: 100% !important;
}

/* 8. Hero Grid Fix */
@media (min-width: 992px) {
    .hero .container {
        display: grid !important;
        grid-template-columns: 1fr 420px !important;
        gap: 60px !important;
        align-items: end !important;
    }
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   MAIN MENU FIXES (Dropdowns & Fonts)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/

/* 0. Ensure Parent is Relative for Submenu Positioning */
.main-header-menu .menu-item,
.ast-primary-menu-items .menu-item,
.ast-builder-menu .menu-item,
ul.menu li,
.menu-item-has-children,
.page_item_has_children {
    position: relative !important;
}

/* 0b. Fix LOGO Font */
.site-title,
.site-title a,
.ast-site-identity .site-title a {
    font-family: var(--font-display) !important;
    font-weight: 700 !important;
    font-style: italic !important;
}

/* 1. Target ALL possible Astra Menu Selectors for Fonts */
.main-header-menu a,
.ast-primary-menu-items .menu-item a,
.ast-builder-menu .menu-item a,
#primary-menu a {
    font-family: var(--font-display) !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
    color: var(--text-mid);
}

.main-header-menu a:hover,
.ast-primary-menu-items .menu-item a:hover {
    color: var(--cyan) !important;
}

/* 2. Target SUBMENUS (Dropdowns) to Hide/Show correctly */
.main-header-menu .sub-menu,
.ast-primary-menu-items .sub-menu,
ul.sub-menu,
ul.children {
    display: none !important;
    position: absolute !important;
    top: 100%;
    left: 0;
    width: auto !important;
    list-style: none !important;
    padding: 10px !important;
    margin: 0 !important;
    background: var(--bg-raised) !important;
    border: 1px solid var(--border) !important;
    min-width: 220px !important;
    z-index: 99999 !important;
    box-shadow: var(--shadow-md) !important;
    border-radius: var(--radius-sm) !important;
}
ul.sub-menu li,
ul.children li {
    list-style: none !important;
}

/* Show on Hover - Use specific Astra classes */
.menu-item-has-children:hover>.sub-menu,
.page_item_has_children:hover>.children,
.ast-primary-menu-items .menu-item:hover>.sub-menu,
li.menu-item:hover>.sub-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 3. Submenu Link Styles */
.sub-menu a,
.children a {
    display: block !important;
    padding: 10px 14px !important;
    color: var(--text-mid) !important;
    font-size: 0.9rem !important;
    white-space: nowrap !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03) !important;
}

.sub-menu a:last-child {
    border-bottom: none !important;
}

.sub-menu a:hover,
.children a:hover {
    color: var(--cyan) !important;
    background: rgba(255, 255, 255, 0.03) !important;
    padding-left: 18px !important;
    /* Slide effect */
}

/* 4. Fix Arrow Position if present */
.menu-item-has-children>a:after {
    margin-left: 8px;
    font-size: 0.8rem;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   GLOBAL CONTENT TYPOGRAPHY (Site-Wide Adoption)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
h1,
h2,
h3,
h4,
h5,
h6,
.entry-title,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
    color: var(--text-primary) !important;
    font-family: var(--font-display) !important;
}

p,
li,
span,
div,
.entry-content,
.entry-content p {
    color: var(--text-mid);
    /* Allow override if needed locally */
    font-family: var(--font-body);
}

.entry-content strong,
.entry-content b {
    color: #06b6d4;
}

/* Fix Gutenberg Block Colors */
.wp-block-heading {
    color: var(--text-primary) !important;
}

/* Fix Input Fields on Dark Bg */
input,
textarea,
select {
    background: var(--bg-input) !important;
    border: 1px solid var(--border) !important;
    color: var(--text-primary) !important;
    border-radius: var(--radius-sm) !important;
    padding: 10px 14px !important;
}

input:focus,
textarea:focus,
select:focus {
    border-color: var(--cyan) !important;
    outline: none !important;
}

/* WooCommerce Form Labels Visibility Fix */
.woocommerce-form-row label,
.woocommerce-form-login__rememberme label,
.woocommerce-Address-title label,
.woocommerce-EditAccountForm label,
label.woocommerce-form-login__rememberme {
    color: var(--text-primary) !important;
    font-weight: 500 !important;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   WOOCOMMERCE PRODUCT PAGE OVERHAUL
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
/* 1. Global Container & Backgrounds */
.woocommerce div.product,
.woocommerce-page div.product,
.woocommerce-page .site-content {
    background: transparent !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 28px !important;
    display: block !important;
    /* Ensure it respects margin auto */
}

/* Remove white bg from summary/images if present */
.ast-woocommerce-container,
.ast-woocommerce-product,
.summary.entry-summary,
.woocommerce-product-gallery {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

/* 2. Product Title */
.product_title.entry-title {
    font-family: var(--font-display) !important;
    font-size: clamp(2rem, 3vw, 2.4rem) !important;
    /* Scaled down to match Home */
    font-weight: 700 !important;
    color: var(--text-primary) !important;
    letter-spacing: -0.02em !important;
    line-height: 1.1 !important;
    margin-bottom: 12px !important;
}

/* 3. Pricing */
p.price,
span.price {
    font-family: var(--font-body) !important;
    font-size: 1.25rem !important;
    /* Scaled down */
    font-weight: 600 !important;
    color: var(--cyan) !important;
    /* Neon Cyan */
    opacity: 1 !important;
}

/* 4. Short Description */
.woocommerce-product-details__short-description p {
    font-size: 0.95rem !important;
    /* Scaled down */
    line-height: 1.65 !important;
    color: var(--text-mid) !important;
    max-width: 100%;
}

/* 5. Add to Cart Section */
form.cart {
    margin-top: 32px !important;
    display: flex;
    gap: 16px;
    align-items: center;
}

/* Quantity Input */
.quantity input.qty {
    background: var(--bg-deep) !important;
    border: 1px solid var(--border) !important;
    color: var(--text-primary) !important;
    border-radius: var(--radius-sm) !important;
    height: 48px !important;
    width: 70px !important;
}

/* Add to Cart Button */
button.single_add_to_cart_button {
    background: linear-gradient(135deg, var(--cyan), #0891b2) !important;
    color: #0a0c10 !important;
    font-family: var(--font-body) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 14px 36px !important;
    height: 48px !important;
    border-radius: var(--radius-pill) !important;
    border: none !important;
    box-shadow: 0 0 20px var(--cyan-glow) !important;
    transition: all 0.25s ease !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

button.single_add_to_cart_button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 0 30px var(--cyan-glow) !important;
    filter: brightness(1.1) !important;
}

/* 6. Tabs (Line Style / Menu Like) */
.woocommerce-tabs ul.tabs {
    border-bottom: 1px solid var(--border) !important;
    background: transparent !important;
    margin: 0 0 32px !important;
    padding: 0 !important;
    display: flex !important;
    gap: 32px !important;
}

.woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 10px 0 !important;
}

.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after {
    display: none !important;
    /* Remove Astra specific pseudo-elements */
}

.woocommerce-tabs ul.tabs li.active {
    background: transparent !important;
    border-bottom-color: var(--cyan) !important;
}

.woocommerce-tabs ul.tabs li a {
    color: var(--text-mid) !important;
    font-family: var(--font-body) !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
    padding: 0 !important;
}

.woocommerce-tabs ul.tabs li.active a {
    color: var(--text-primary) !important;
    font-weight: 600 !important;
}

/* Tab Panel Content */
.woocommerce-Tabs-panel {
    background: transparent !important;
    padding-top: 24px !important;
    color: var(--text-mid) !important;
}

.woocommerce-Tabs-panel h2 {
    display: none !important;
}

/* 7. Meta & Price (Section Eye Style) */
.product_meta {
    margin-top: 40px !important;
    border-top: 1px solid var(--border) !important;
    padding-top: 20px !important;
}

.product_meta .sku_wrapper,
.product_meta .posted_in,
.product_meta .tagged_as {
    display: block;
    margin-bottom: 12px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--cyan);
}

.product_meta a {
    color: var(--text-muted) !important;
    text-decoration: none;
    transition: color 0.2s;
}

.product_meta a:hover {
    color: var(--cyan-light) !important;
}

/* Price as Section Eye (if requested, but usually Price is Big) */
/* User asked: class="woocommerce-Price-amount amount" should replicate class="section-eye rev vis" style */
/* This might make the MAIN price look like a label. Let's adjust carefully. */
/* Keeping Main Price big, but maybe the subs? User said "amount". */
/* Let's apply it generally but override for main price if needed. */

/* 8. Buttons & CTAs (Nav CTA Style) */
button.single_add_to_cart_button,
.button,
button,
input[type="submit"],
.wc-block-grid__product-add-to-cart .wp-block-button__link {
    background: var(--cyan) !important;
    color: #0a0c10 !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    padding: 12px 30px !important;
    border-radius: 999px !important;
    /* Pill */
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 0 14px var(--cyan-glow) !important;
    transition: all 0.2s !important;
    text-transform: none !important;
    /* Reset uppercase if Astra adds it */
}

button.single_add_to_cart_button:hover,
.button:hover,
button:hover,
input[type="submit"]:hover {
    box-shadow: 0 0 22px var(--cyan-glow) !important;
    transform: translateY(-2px) !important;
    background: var(--cyan-light) !important;
}

/* Specific Fix for Quantity Input next to Button */
.quantity {
    display: inline-flex !important;
    margin-right: 16px !important;
}

/* 9. Support Form Styling */
.zybroz-support-form {
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
}

.zybroz-support-form input,
.zybroz-support-form textarea {
    width: 100% !important;
    background: var(--bg-input) !important;
    border: 1px solid var(--border) !important;
    color: var(--text-primary) !important;
    border-radius: var(--radius-sm) !important;
    padding: 14px !important;
    margin-bottom: 12px;
}

.zybroz-support-form button {
    width: 100% !important;
    margin-top: 10px;
}

/* 10. Top Margin for Product Content */
.single-product .site-content {
    margin-top: 20px !important;
}

/* Ensure Tab Content is full width */
.zybroz-tab-content {
    width: 100%;
}

.woocommerce-Tabs-panel--features .product-features,
.woocommerce-Tabs-panel--pricing .product-pricing {
    margin-top: 0 !important;
    /* Reset internal margins if now in dedicated tabs */
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   CUSTOM OVERRIDES
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
h1,
h2,
h3,
h4,
h5,
h6,
.entry-title,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
    color: #ffffff !important;
}

.zyv2-checklist {
    margin-left: 0 !important;
}

.zyv2-fomo-bar {
    background-color: #191c25 !important;
}

.zybroz-custom-footer {
    background-color: #0f1117d1 !important;
}
/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   WPFORMS â€” global field helper text
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€*/
.wpforms-field-description,
.wpforms-field .wpforms-field-description,
div[id$="-description"].wpforms-field-description {
    color: #c8d1e0 !important;   /* --text-mid â€” was near-invisible dark grey */
    font-size: 0.8rem !important;
    margin-top: 4px !important;
    opacity: 1 !important;
}

/* -----------------------------------------------------------
   ZYMP — Problem section full-bleed banner image
   ----------------------------------------------------------- */
.zymp-problem-banner {
    width: 100%;
    overflow: hidden;
    line-height: 0;          /* removes inline-block gap under img */
    margin-bottom: 2.5rem;
}

.zymp-problem-banner-img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    border-radius: 0;        /* intentionally edge-to-edge */
}
