/* ================================================================
   MAHARAJA PDF EDITOR — Global Stylesheet
   Maharaja Trading LLC  •  maharajatrading.com
   Version: 1.0.0  •  Last updated: March 2026
   ================================================================ */

/* ===================== CSS CUSTOM PROPERTIES ===================== */
:root {
    /* Brand Colors */
    --brand-primary: #6C3AED;
    --brand-primary-dark: #5B21B6;
    --brand-primary-light: #8B5CF6;
    --brand-primary-surface: #EDE9FE;
    --brand-secondary: #0EA5E9;
    --brand-secondary-dark: #0284C7;
    --brand-accent: #F59E0B;
    --brand-accent-dark: #D97706;

    /* Neutrals */
    --gray-50: #F8FAFC;
    --gray-100: #F1F5F9;
    --gray-200: #E2E8F0;
    --gray-300: #CBD5E1;
    --gray-400: #94A3B8;
    --gray-500: #64748B;
    --gray-600: #475569;
    --gray-700: #334155;
    --gray-800: #1E293B;
    --gray-900: #0F172A;

    /* Semantic */
    --success: #22C55E;
    --success-light: #DCFCE7;
    --warning: #F59E0B;
    --warning-light: #FEF3C7;
    --error: #EF4444;
    --error-light: #FEE2E2;
    --info: #3B82F6;
    --info-light: #DBEAFE;

    /* Typography */
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-heading: 'Outfit', 'Inter', sans-serif;

    /* Spacing */
    --section-pad: 80px;
    --section-pad-sm: 48px;
    --container-max: 1200px;
    --gap: 24px;
    --gap-sm: 16px;
    --gap-xs: 8px;

    /* Borders & Radii */
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    --radius-full: 9999px;
    --border-color: var(--gray-200);

    /* Shadows */
    --shadow-sm: 0 1px 2px rgba(15,23,42,.06);
    --shadow-md: 0 4px 12px rgba(15,23,42,.08);
    --shadow-lg: 0 10px 30px rgba(15,23,42,.10);
    --shadow-xl: 0 20px 50px rgba(15,23,42,.14);
    --shadow-glow: 0 0 40px rgba(108,58,237,.15);

    /* Transitions */
    --transition: all .25s cubic-bezier(.4,0,.2,1);
    --transition-slow: all .4s cubic-bezier(.4,0,.2,1);
}

/* ===================== RESET & BASE ===================== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);color:var(--gray-800);background:#fff;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand-primary);text-decoration:none;transition:var(--transition)}
a:hover{color:var(--brand-primary-dark)}
ul,ol{list-style:none}
button{cursor:pointer;border:none;background:none;font-family:inherit}
address{font-style:normal}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--gray-900)}
h1{font-size:clamp(2rem,5vw,3.25rem)}
h2{font-size:clamp(1.5rem,3.5vw,2.25rem)}
h3{font-size:clamp(1.15rem,2vw,1.5rem)}
h4{font-size:1.125rem}
p{margin-bottom:1rem}
p:last-child{margin-bottom:0}

/* ===================== UTILITIES ===================== */
.container{max-width:var(--container-max);margin:0 auto;padding:0 24px}
.section-pad{padding:var(--section-pad) 0}
.bg-alt{background:var(--gray-50)}
.text-center{text-align:center}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.section-label{display:inline-block;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--brand-primary);background:var(--brand-primary-surface);padding:6px 16px;border-radius:var(--radius-full);margin-bottom:16px}
.section-title{margin-bottom:16px}
.section-desc{font-size:1.1rem;color:var(--gray-600);max-width:700px;margin:0 auto 40px}
.section-header{margin-bottom:48px}

.required{color:var(--error)}

/* ===================== BUTTONS ===================== */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body);font-weight:600;font-size:.95rem;padding:12px 28px;border-radius:var(--radius-md);transition:var(--transition);border:2px solid transparent;white-space:nowrap;text-align:center;justify-content:center}
.btn svg{flex-shrink:0}
.btn-primary{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}
.btn-primary:hover{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.btn-outline-primary{background:transparent;color:var(--brand-primary);border-color:var(--brand-primary)}
.btn-outline-primary:hover{background:var(--brand-primary);color:#fff;transform:translateY(-2px)}
.btn-outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
.btn-outline-light:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}
.btn-sm{padding:8px 18px;font-size:.85rem}
.btn-lg{padding:14px 32px;font-size:1rem}
.btn-xl{padding:16px 40px;font-size:1.05rem}
.btn-block{width:100%}

/* ===================== HEADER ===================== */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(15,23,42,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.06)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{display:flex;align-items:center;gap:10px}
.logo img{border-radius:var(--radius-sm)}
.logo-text{font-family:var(--font-heading);font-size:1.3rem;font-weight:400;color:rgba(255,255,255,.9);letter-spacing:-.02em}
.logo-text strong{font-weight:800;color:var(--brand-primary-light)}
.main-nav ul{display:flex;gap:4px}
.main-nav a{color:rgba(255,255,255,.7);font-size:.9rem;font-weight:500;padding:8px 14px;border-radius:var(--radius-sm);transition:var(--transition)}
.main-nav a:hover,.main-nav a.active{color:#fff;background:rgba(255,255,255,.08)}
.header-cta{display:flex;gap:10px}
.header-cta .btn{font-size:.85rem;padding:8px 20px}

.mobile-menu-toggle{display:none;flex-direction:column;gap:5px;width:32px;padding:4px 0}
.mobile-menu-toggle span{display:block;height:2px;background:#fff;border-radius:2px;transition:var(--transition)}
.mobile-nav{display:none}

/* ===================== BREADCRUMB ===================== */
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:.85rem;color:rgba(255,255,255,.5);margin-bottom:20px;flex-wrap:wrap}
.breadcrumb a{color:rgba(255,255,255,.6)}
.breadcrumb a:hover{color:#fff}
.breadcrumb svg{opacity:.4;flex-shrink:0}

/* ===================== PAGE HERO ===================== */
.page-hero{background:linear-gradient(135deg,var(--gray-900) 0%,#1a1040 50%,var(--gray-900) 100%);color:#fff;padding:120px 0 60px;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;top:-50%;right:-20%;width:600px;height:600px;background:radial-gradient(circle,rgba(108,58,237,.15) 0%,transparent 70%);pointer-events:none}
.page-hero h1{margin-bottom:16px}
.page-hero>div>p{font-size:1.15rem;color:rgba(255,255,255,.7);max-width:640px;line-height:1.7}

/* ===================== INDEX: HERO ===================== */
.hero-section{background:linear-gradient(135deg,var(--gray-900) 0%,#1a1040 50%,#0c1e3a 100%);color:#fff;padding:140px 0 100px;text-align:center;position:relative;overflow:hidden}
.hero-section::before{content:'';position:absolute;top:-200px;left:50%;transform:translateX(-50%);width:900px;height:900px;background:radial-gradient(circle,rgba(108,58,237,.12) 0%,transparent 70%);pointer-events:none}
.hero-section h1{font-size:clamp(2.2rem,5.5vw,3.75rem);margin-bottom:20px;font-weight:800}
.hero-section h1 span{background:linear-gradient(135deg,var(--brand-primary-light),var(--brand-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-desc{font-size:1.2rem;color:rgba(255,255,255,.7);max-width:680px;margin:0 auto 36px;line-height:1.7}
.hero-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:48px}
.hero-stats{display:flex;gap:48px;justify-content:center;flex-wrap:wrap}
.hero-stat{text-align:center}
.hero-stat-val{display:block;font-family:var(--font-heading);font-size:1.75rem;font-weight:800;color:#fff}
.hero-stat-label{font-size:.85rem;color:rgba(255,255,255,.5)}
.hero-badges{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-top:32px}
.hero-badge{display:flex;align-items:center;gap:8px;font-size:.82rem;color:rgba(255,255,255,.6)}
.hero-badge svg{color:var(--success)}

/* ===================== FEATURES GRID ===================== */
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.feature-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:36px 28px;transition:var(--transition)}
.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--brand-primary-light)}
.feature-icon{width:56px;height:56px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:20px;background:var(--brand-primary-surface);color:var(--brand-primary)}
.feature-card h3{margin-bottom:10px}
.feature-card p{color:var(--gray-600);font-size:.95rem}

/* ===================== HOW IT WORKS ===================== */
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);counter-reset:step}
.step-card{text-align:center;position:relative;padding:32px 20px}
.step-num{width:48px;height:48px;border-radius:50%;background:var(--brand-primary);color:#fff;font-family:var(--font-heading);font-weight:800;font-size:1.2rem;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}
.step-card h3{margin-bottom:8px;font-size:1.1rem}
.step-card p{color:var(--gray-600);font-size:.9rem}

/* ===================== PRICING ===================== */
.pricing-toggle{display:flex;align-items:center;gap:12px;justify-content:center;margin-bottom:40px;font-size:.95rem;font-weight:500}
.pricing-toggle-label{color:var(--gray-500)}
.pricing-toggle-label.active{color:var(--gray-900);font-weight:700}
.toggle-switch{width:52px;height:28px;background:var(--gray-300);border-radius:var(--radius-full);position:relative;cursor:pointer;transition:var(--transition)}
.toggle-switch.active{background:var(--brand-primary)}
.toggle-switch::after{content:'';position:absolute;top:3px;left:3px;width:22px;height:22px;background:#fff;border-radius:50%;transition:var(--transition);box-shadow:var(--shadow-sm)}
.toggle-switch.active::after{left:27px}

.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);align-items:start}
.pricing-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:36px 28px;transition:var(--transition);position:relative}
.pricing-card:hover{box-shadow:var(--shadow-lg)}
.pricing-card.popular{border-color:var(--brand-primary);box-shadow:var(--shadow-glow)}
.pricing-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--brand-primary);color:#fff;font-size:.75rem;font-weight:700;padding:4px 16px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.08em}
.pricing-plan-name{font-size:1.15rem;font-weight:700;margin-bottom:8px}
.pricing-price{font-family:var(--font-heading);font-size:2.5rem;font-weight:800;color:var(--gray-900);margin-bottom:4px}
.pricing-price span{font-size:1rem;font-weight:400;color:var(--gray-500)}
.pricing-period{font-size:.85rem;color:var(--gray-500);margin-bottom:20px}
.pricing-features{margin-bottom:24px}
.pricing-features li{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;color:var(--gray-700);padding:6px 0}
.pricing-features li svg{flex-shrink:0;margin-top:2px}

/* ===================== USE CASES ===================== */
.use-cases-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}
.use-case-card{display:flex;gap:20px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:28px;transition:var(--transition)}
.use-case-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.use-case-icon{width:48px;height:48px;flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:var(--brand-primary-surface);color:var(--brand-primary)}
.use-case-card h3{margin-bottom:6px;font-size:1.1rem}
.use-case-card p{color:var(--gray-600);font-size:.9rem}

/* ===================== TESTIMONIALS ===================== */
.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.testimonial-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:28px;transition:var(--transition)}
.testimonial-card:hover{box-shadow:var(--shadow-md)}
.testimonial-stars{color:var(--brand-accent);display:flex;gap:2px;margin-bottom:14px}
.testimonial-text{font-size:.95rem;color:var(--gray-700);font-style:italic;margin-bottom:16px;line-height:1.7}
.testimonial-author{display:flex;align-items:center;gap:12px}
.testimonial-avatar{width:40px;height:40px;border-radius:50%;background:var(--brand-primary-surface);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--brand-primary);font-size:.85rem}
.testimonial-name{font-weight:600;font-size:.9rem}
.testimonial-role{font-size:.8rem;color:var(--gray-500)}

/* ===================== TRUST BADGES ===================== */
.trust-badges-grid{display:flex;gap:40px;justify-content:center;flex-wrap:wrap;align-items:center}
.trust-badge{display:flex;align-items:center;gap:10px;color:var(--gray-600);font-size:.9rem;font-weight:500}
.trust-badge svg{color:var(--brand-primary)}

/* ===================== FAQ ===================== */
.faq-list{max-width:800px;margin:0 auto}
.faq-item{border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:12px;overflow:hidden;transition:var(--transition)}
.faq-item:hover{border-color:var(--brand-primary-light)}
.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:18px 24px;font-size:1rem;font-weight:600;color:var(--gray-900);text-align:left;background:transparent;transition:var(--transition)}
.faq-question svg{flex-shrink:0;color:var(--gray-400);transition:var(--transition)}
.faq-item.open .faq-question svg{transform:rotate(180deg);color:var(--brand-primary)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-item.open .faq-answer{max-height:500px}
.faq-answer-inner{padding:0 24px 18px;color:var(--gray-600);font-size:.95rem;line-height:1.7}

/* ===================== CATALOG ===================== */
.catalog-layout{display:grid;grid-template-columns:260px 1fr;gap:32px}
.catalog-sidebar{position:sticky;top:88px;align-self:start}
.filter-group{margin-bottom:24px}
.filter-group h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-500);margin-bottom:10px}
.filter-group label{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--gray-700);padding:4px 0;cursor:pointer;transition:var(--transition)}
.filter-group label:hover{color:var(--brand-primary)}
.filter-group input[type="checkbox"]{accent-color:var(--brand-primary);width:16px;height:16px}

.tools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}
.tool-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:28px;transition:var(--transition)}
.tool-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--brand-primary-light)}
.tool-card h3{margin-bottom:8px;font-size:1.1rem}
.tool-card p{color:var(--gray-600);font-size:.9rem;margin-bottom:16px}
.tool-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.tool-tag{font-size:.75rem;font-weight:600;padding:3px 10px;border-radius:var(--radius-full);background:var(--brand-primary-surface);color:var(--brand-primary)}

/* ===================== COMPARISON TABLE ===================== */
.comparison-table-wrap{overflow-x:auto;margin-bottom:32px}
.comparison-table{width:100%;border-collapse:collapse;font-size:.9rem}
.comparison-table th,.comparison-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-color)}
.comparison-table thead th{background:var(--gray-900);color:#fff;font-weight:600;position:sticky;top:0}
.comparison-table thead th:first-child{border-radius:var(--radius-md) 0 0 0}
.comparison-table thead th:last-child{border-radius:0 var(--radius-md) 0 0}
.comparison-table tbody tr:hover{background:var(--gray-50)}
.comparison-table .check{color:var(--success);font-weight:700}
.comparison-table .dash{color:var(--gray-300)}

/* ===================== PRODUCT DETAIL ===================== */
.product-layout{display:grid;grid-template-columns:1fr 340px;gap:40px}
.product-sidebar{position:sticky;top:88px;align-self:start}
.sidebar-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;margin-bottom:20px}
.sidebar-card h3,.sidebar-card h4{margin-bottom:12px;font-size:1rem}

.product-hero-section{background:linear-gradient(135deg,var(--gray-900) 0%,#1a1040 50%,var(--gray-900) 100%);color:#fff;padding:120px 0 60px}
.product-hero-stats{display:flex;gap:32px;flex-wrap:wrap;margin-top:24px}
.product-hero-stat{text-align:center;min-width:100px}
.product-hero-stat .phs-val{display:block;font-family:var(--font-heading);font-size:1.75rem;font-weight:800}
.product-hero-stat .phs-label{font-size:.8rem;color:rgba(255,255,255,.5)}

.capability-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px;margin-bottom:16px;transition:var(--transition)}
.capability-card:hover{box-shadow:var(--shadow-md);border-color:var(--brand-primary-light)}
.capability-card h3{margin-bottom:8px;display:flex;align-items:center;gap:10px;font-size:1.05rem}
.capability-card p{color:var(--gray-600);font-size:.9rem}

.spec-table{width:100%;border-collapse:collapse;font-size:.9rem}
.spec-table th,.spec-table td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--border-color)}
.spec-table th{font-weight:600;color:var(--gray-900);background:var(--gray-50);width:40%}
.spec-table td{color:var(--gray-700)}

/* Accordion */
.accordion-item{border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:10px;overflow:hidden}
.accordion-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;padding:16px 20px;font-size:.95rem;font-weight:600;color:var(--gray-900);text-align:left;background:transparent;transition:var(--transition)}
.accordion-trigger:hover{background:var(--gray-50)}
.accordion-trigger svg{transition:var(--transition);flex-shrink:0;color:var(--gray-400)}
.accordion-item.open .accordion-trigger svg{transform:rotate(180deg);color:var(--brand-primary)}
.accordion-panel{max-height:0;overflow:hidden;transition:max-height .35s ease}
.accordion-item.open .accordion-panel{max-height:600px}
.accordion-panel-inner{padding:0 20px 20px;color:var(--gray-600);font-size:.9rem;line-height:1.7}

/* Reviews */
.reviews-summary{display:flex;gap:40px;margin-bottom:32px;align-items:center;flex-wrap:wrap}
.reviews-avg{text-align:center}
.reviews-avg-val{font-family:var(--font-heading);font-size:3rem;font-weight:800;color:var(--gray-900);line-height:1}
.reviews-bars{flex:1;min-width:250px}
.review-bar-row{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--gray-600);margin-bottom:6px}
.review-bar{flex:1;height:8px;background:var(--gray-200);border-radius:var(--radius-full);overflow:hidden}
.review-bar-fill{height:100%;background:var(--brand-accent);border-radius:var(--radius-full);transition:var(--transition-slow)}

.review-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px;margin-bottom:16px}
.review-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.review-author-name{font-weight:600;font-size:.95rem}
.review-author-role{font-size:.8rem;color:var(--gray-500)}
.review-text{color:var(--gray-700);font-size:.9rem;line-height:1.7}

/* ===================== ABOUT PAGE ===================== */
.about-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.about-story-grid--reverse{direction:rtl}
.about-story-grid--reverse>*{direction:ltr}
.about-story-text h2{margin-bottom:20px}
.about-story-text p{color:var(--gray-700);font-size:1rem;margin-bottom:16px}
.about-story-image img{border-radius:var(--radius-lg);width:100%;object-fit:cover}
.about-story-quote{margin-top:20px;background:var(--brand-primary-surface);border-radius:var(--radius-md);padding:24px;position:relative}
.about-story-quote svg{color:var(--brand-primary);opacity:.3;margin-bottom:8px}
.about-story-quote p{font-style:italic;color:var(--gray-700);font-size:.95rem;margin-bottom:8px}
.about-story-quote span{font-size:.85rem;font-weight:600;color:var(--brand-primary)}

.about-solution-list{margin-top:16px}
.about-solution-list li{display:flex;align-items:flex-start;gap:10px;padding:6px 0;font-size:.95rem;color:var(--gray-700)}
.about-solution-list li svg{flex-shrink:0;margin-top:3px}

/* Problem Cards */
.problem-cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}
.problem-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;transition:var(--transition)}
.problem-card:hover{box-shadow:var(--shadow-md)}
.problem-num{font-family:var(--font-heading);font-size:2.5rem;font-weight:800;color:var(--brand-primary-surface);margin-bottom:12px;line-height:1}
.problem-card h3{margin-bottom:10px;font-size:1.15rem}
.problem-card p{color:var(--gray-600);font-size:.9rem;line-height:1.7}

/* Timeline */
.timeline{position:relative;max-width:860px;margin:0 auto;padding:20px 0}
.timeline::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,var(--brand-primary),var(--brand-secondary));border-radius:2px;transform:translateX(-50%)}
.timeline-item{position:relative;width:50%;padding:0 40px 40px}
.timeline-item--left{padding-right:60px;text-align:right}
.timeline-item--right{margin-left:50%;padding-left:60px}
.timeline-year{font-family:var(--font-heading);font-weight:800;font-size:1.3rem;color:var(--brand-primary);margin-bottom:8px}
.timeline-content h3{font-size:1.05rem;margin-bottom:6px}
.timeline-content p{font-size:.9rem;color:var(--gray-600);line-height:1.6}
.timeline-item::after{content:'';position:absolute;top:6px;width:16px;height:16px;background:#fff;border:3px solid var(--brand-primary);border-radius:50%;z-index:1}
.timeline-item--left::after{right:-8px}
.timeline-item--right::after{left:-8px}
.timeline-item--current::after{background:var(--brand-primary);border-color:var(--brand-primary-light);box-shadow:0 0 0 4px var(--brand-primary-surface)}

/* Team */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.team-card{text-align:center;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px 20px;transition:var(--transition)}
.team-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.team-card img{width:100px;height:100px;border-radius:50%;margin:0 auto 16px;object-fit:cover;border:3px solid var(--brand-primary-surface)}
.team-card h3{font-size:1.05rem;margin-bottom:4px}
.team-role{display:block;font-size:.8rem;color:var(--brand-primary);font-weight:600;margin-bottom:12px;text-transform:uppercase;letter-spacing:.04em}
.team-card p{font-size:.85rem;color:var(--gray-600);line-height:1.6}

/* Numbers */
.about-numbers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.about-number-card{text-align:center;padding:32px 20px}
.abn-value{display:block;font-family:var(--font-heading);font-size:2.5rem;font-weight:800;color:var(--brand-primary);margin-bottom:4px;line-height:1}
.abn-label{display:block;font-size:.9rem;font-weight:700;color:var(--gray-900);margin-bottom:10px}
.about-number-card p{font-size:.85rem;color:var(--gray-600)}

/* Mission */
.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.mission-text h2{margin-bottom:20px}
.mission-text p{color:var(--gray-700);margin-bottom:16px}
.mission-quote{border-left:4px solid var(--brand-primary);margin:24px 0;padding:16px 20px;background:var(--gray-50);border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:italic;color:var(--gray-700)}
.mission-quote cite{display:block;margin-top:10px;font-style:normal;font-weight:600;font-size:.85rem;color:var(--brand-primary)}
.mission-values h3{margin-bottom:20px}
.value-item{display:flex;gap:16px;margin-bottom:20px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px;transition:var(--transition)}
.value-item:hover{box-shadow:var(--shadow-sm)}
.value-icon{font-size:1.5rem;flex-shrink:0}
.value-item h4{margin-bottom:4px;font-size:.95rem}
.value-item p{font-size:.85rem;color:var(--gray-600)}

/* CTA */
.final-cta-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin:32px 0 24px}
.about-cta-address p{font-size:.85rem;color:var(--gray-600);margin-top:12px}
.about-cta-address a{color:var(--brand-primary)}

/* ===================== CONTACT PAGE ===================== */
.contact-channels-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.contact-channel-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:28px 24px;text-align:center;transition:var(--transition);color:var(--gray-800);display:block}
.contact-channel-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);color:var(--gray-800)}
.channel-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.channel-icon--blue{background:#DBEAFE;color:#2563EB}
.channel-icon--violet{background:var(--brand-primary-surface);color:var(--brand-primary)}
.channel-icon--emerald{background:var(--success-light);color:#16A34A}
.channel-icon--amber{background:var(--warning-light);color:var(--brand-accent-dark)}
.contact-channel-card h3{font-size:1.1rem;margin-bottom:4px}
.contact-channel-card p{font-size:.95rem;font-weight:500;color:var(--gray-900);margin-bottom:4px}
.contact-channel-card span{font-size:.8rem;color:var(--gray-500)}

.contact-layout{display:grid;grid-template-columns:1fr 400px;gap:40px;align-items:start}
.contact-form-panel{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:40px}
.contact-form-panel h2{margin-bottom:8px}
.contact-form-intro{color:var(--gray-600);font-size:.9rem;margin-bottom:28px}

.contact-info-panel{}
.map-container{border-radius:var(--radius-lg);overflow:hidden;margin-bottom:20px;border:1px solid var(--border-color)}
.map-container iframe{display:block}
.contact-info-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;margin-bottom:20px}
.contact-info-card h3{margin-bottom:16px}
.contact-info-list li{display:flex;gap:12px;align-items:flex-start;padding:8px 0;font-size:.9rem;color:var(--gray-700)}
.contact-info-list li svg{flex-shrink:0;margin-top:2px;color:var(--brand-primary)}
.contact-info-list li a{color:var(--gray-700)}
.contact-info-list li a:hover{color:var(--brand-primary)}

.contact-response-box{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;margin-bottom:20px}
.contact-response-box h4{display:flex;align-items:center;gap:8px;margin-bottom:14px;font-size:.95rem}
.response-time-list li{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--gray-100);font-size:.85rem}
.response-time-list li:last-child{border-bottom:0}
.rt-type{color:var(--gray-700)}
.rt-time{font-weight:600;padding:2px 10px;border-radius:var(--radius-full);font-size:.8rem}
.rt-time--fast{background:var(--success-light);color:#16A34A}
.rt-time--medium{background:var(--warning-light);color:var(--brand-accent-dark)}

.contact-enterprise-box{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}
.contact-enterprise-box img{width:100%;height:160px;object-fit:cover}
.enterprise-box-content{padding:20px}
.enterprise-box-content h4{margin-bottom:8px;font-size:1rem}
.enterprise-box-content p{font-size:.85rem;color:var(--gray-600);margin-bottom:14px}

.contact-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}
.contact-faq-item{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px}
.contact-faq-item h4{margin-bottom:8px;font-size:.95rem}
.contact-faq-item p{font-size:.9rem;color:var(--gray-600)}
.contact-faq-item a{color:var(--brand-primary)}

/* ===================== FORMS ===================== */
.form-group{margin-bottom:20px}
.form-group label{display:block;font-size:.85rem;font-weight:600;color:var(--gray-700);margin-bottom:6px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="url"],input[type="password"],select,textarea{width:100%;padding:11px 14px;font-size:.9rem;font-family:var(--font-body);color:var(--gray-900);background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-md);transition:var(--transition);outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px rgba(108,58,237,.12)}
textarea{resize:vertical;min-height:100px}
.field-error{display:block;font-size:.8rem;color:var(--error);margin-top:4px;min-height:0}
.field-error:not(:empty){min-height:18px}

.form-group--checkbox{position:relative}
.checkbox-label{display:flex;gap:10px;cursor:pointer;font-size:.85rem;color:var(--gray-700);line-height:1.5}
.checkbox-label input[type="checkbox"]{width:18px;height:18px;margin-top:2px;flex-shrink:0;accent-color:var(--brand-primary)}
.consent-group{background:var(--gray-50);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px}

.form-disclaimer{font-size:.78rem;color:var(--gray-500);margin-top:12px;text-align:center}
.form-disclaimer a{color:var(--brand-primary)}

/* ===================== LEGAL PAGES ===================== */
.legal-hero{padding-bottom:48px}
.legal-container{max-width:860px}
.legal-content section{margin-bottom:36px;padding-bottom:36px;border-bottom:1px solid var(--gray-100)}
.legal-content section:last-child{border-bottom:0}
.legal-content h2{font-size:1.35rem;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--brand-primary-surface)}
.legal-content h3{font-size:1.1rem;margin:20px 0 10px;color:var(--gray-800)}
.legal-content p{color:var(--gray-700);font-size:.95rem;margin-bottom:14px;line-height:1.8}
.legal-content ul,.legal-content ol{margin:12px 0 16px 24px;color:var(--gray-700)}
.legal-content ul{list-style:disc}
.legal-content ol{list-style:decimal}
.legal-content li{font-size:.93rem;margin-bottom:6px;line-height:1.7;padding-left:4px}

.legal-toc{background:var(--gray-50);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px 32px;margin-bottom:36px}
.legal-toc h2{font-size:1.1rem;margin-bottom:12px;border-bottom:0;padding-bottom:0}
.legal-toc ol{margin:0;padding-left:20px}
.legal-toc li{margin-bottom:4px;font-size:.9rem}
.legal-toc a{color:var(--brand-primary)}
.legal-toc a:hover{text-decoration:underline}

.legal-address-block{background:var(--gray-50);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px;margin:16px 0;font-size:.9rem;line-height:1.8;color:var(--gray-700)}
.legal-address-block a{color:var(--brand-primary)}

.legal-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.9rem}
.legal-table th,.legal-table td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--border-color)}
.legal-table thead th{background:var(--gray-900);color:#fff;font-weight:600}
.legal-table tbody tr:hover{background:var(--gray-50)}

.legal-highlight-box{background:var(--success-light);border:1px solid rgba(34,197,94,.3);border-radius:var(--radius-lg);padding:28px 32px;margin-bottom:32px}
.legal-highlight-box h3{color:#16A34A;margin-bottom:10px;font-size:1.15rem}
.legal-highlight-box p{color:var(--gray-700);font-size:.95rem}

/* ===================== FOOTER ===================== */
.site-footer{background:var(--gray-900);color:rgba(255,255,255,.7);padding:64px 0 0}
.footer-inner{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.footer-logo{margin-bottom:16px}
.footer-tagline{font-size:.85rem;color:rgba(255,255,255,.5);margin-bottom:20px;line-height:1.6}
.footer-address{font-size:.85rem;color:rgba(255,255,255,.5);line-height:1.6;margin-bottom:16px}
.footer-contact-links{display:flex;flex-direction:column;gap:6px}
.footer-contact-link{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;color:rgba(255,255,255,.6);transition:var(--transition)}
.footer-contact-link:hover{color:#fff}
.footer-contact-link svg{flex-shrink:0}
.footer-col h4{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.4);margin-bottom:16px}
.footer-col ul li{margin-bottom:8px}
.footer-col ul a{font-size:.9rem;color:rgba(255,255,255,.6);transition:var(--transition)}
.footer-col ul a:hover{color:#fff;padding-left:4px}
.footer-bottom{margin-top:48px;border-top:1px solid rgba(255,255,255,.08);padding:20px 0}
.footer-bottom-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-copyright{font-size:.8rem;color:rgba(255,255,255,.35)}
.footer-legal-links{display:flex;gap:20px}
.footer-legal-links a{font-size:.8rem;color:rgba(255,255,255,.4);transition:var(--transition)}
.footer-legal-links a:hover{color:rgba(255,255,255,.8)}

/* ===================== TOAST ===================== */
.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column-reverse;gap:10px}
.toast{background:var(--gray-900);color:#fff;padding:14px 20px;border-radius:var(--radius-md);font-size:.9rem;box-shadow:var(--shadow-xl);animation:toastIn .3s ease;display:flex;align-items:center;gap:10px;max-width:400px}
.toast.toast-success{border-left:4px solid var(--success)}
.toast.toast-error{border-left:4px solid var(--error)}
.toast.toast-info{border-left:4px solid var(--info)}
.toast-close{background:none;border:none;color:rgba(255,255,255,.5);cursor:pointer;font-size:1.1rem;padding:0 4px;margin-left:auto}
@keyframes toastIn{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}
@keyframes toastOut{from{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}

/* ===================== RESPONSIVE ===================== */
@media(max-width:1024px){
    .features-grid,.pricing-grid,.about-numbers-grid{grid-template-columns:repeat(2,1fr)}
    .steps-grid{grid-template-columns:repeat(2,1fr)}
    .team-grid{grid-template-columns:repeat(2,1fr)}
    .footer-inner{grid-template-columns:1fr 1fr}
    .catalog-layout{grid-template-columns:1fr}
    .catalog-sidebar{position:static}
    .product-layout{grid-template-columns:1fr}
    .product-sidebar{position:static}
    .contact-layout{grid-template-columns:1fr}
    .contact-channels-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:768px){
    :root{--section-pad:48px}
    .main-nav,.header-cta{display:none}
    .mobile-menu-toggle{display:flex}
    .mobile-nav.open{display:block;position:absolute;top:72px;left:0;right:0;background:var(--gray-900);padding:20px;border-top:1px solid rgba(255,255,255,.08);animation:slideDown .3s ease}
    .mobile-nav ul li{margin-bottom:4px}
    .mobile-nav a{display:block;padding:12px 16px;color:rgba(255,255,255,.7);border-radius:var(--radius-sm);font-size:.95rem}
    .mobile-nav a:hover{background:rgba(255,255,255,.06);color:#fff}

    .page-hero{padding:100px 0 40px}
    .hero-section{padding:110px 0 60px}
    .hero-stats{gap:24px}

    .features-grid,.use-cases-grid,.problem-cards-grid,.testimonials-grid,.pricing-grid,.contact-faq-grid{grid-template-columns:1fr}
    .steps-grid{grid-template-columns:1fr}
    .about-story-grid,.about-story-grid--reverse,.mission-grid{grid-template-columns:1fr}
    .about-story-grid--reverse{direction:ltr}
    .team-grid,.about-numbers-grid{grid-template-columns:1fr 1fr}
    .contact-channels-grid{grid-template-columns:1fr}
    .tools-grid{grid-template-columns:1fr}
    .form-row{grid-template-columns:1fr}

    .timeline::before{left:20px}
    .timeline-item,.timeline-item--left,.timeline-item--right{width:100%;margin-left:0;padding-left:56px;padding-right:0;text-align:left}
    .timeline-item--left::after,.timeline-item--right::after{left:12px;right:auto}

    .footer-inner{grid-template-columns:1fr}
    .footer-bottom-inner{flex-direction:column;text-align:center}
    .footer-legal-links{justify-content:center}
}

@media(max-width:480px){
    .hero-section h1{font-size:1.7rem}
    .hero-actions{flex-direction:column;align-items:center}
    .hero-actions .btn{width:100%}
    .final-cta-actions{flex-direction:column;align-items:center}
    .final-cta-actions .btn{width:100%}
    .team-grid,.about-numbers-grid{grid-template-columns:1fr}
    .pricing-price{font-size:2rem}
}

@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
