/* Import Poppins Font */

:root {
/* Colors */
--Tomato: #Ef6b3e;    /*DigitalTenant Color*/
--RangoonGreen: #1a1a1a; /*DigitalTenant Color*/ /* use this color instead */
--Zuez: #231f20;      /*DigitalTenant Color*/   /* Do not use this color */
--Grey: #93918d;      /*DigitalTenant Color*/
--Fantasy: #f4f3ef;   /*DigitalTenant Color*/
--White: #ffffff;     /*DigitalTenant Color*/
--BlackEel: #444444;
--BrightGrey: #374151;
--Flame: #E05A2D;
--WhiteSmoke: #f3f4f6;
--SnowDrift: #F8F9FA;
--PapayaWhip: #ffedd5;
--White-10: rgba(255, 255, 255, 0.1); /* 10% opacity - Form field background*/ 
--White-20: rgba(255, 255, 255, 0.2); /* 20% opacity - Border use */
--Fantasy-50: rgba(244, 243, 239, 0.5); /* 50% opacity - Hover use */
--White-70: rgba(255, 255, 255, 0.7); /* 70% opacity - Place holder text */
--White-90: rgba(255, 255, 255, 0.9); /* 90% opacity - Info Text when typing info into a form. */
--Black-10: rgba(0, 0, 0, 0.1);  /* Very light shadows, subtle depth */
--Black-20: rgba(0, 0, 0, 0.2);  /* Light shadows, hover states */
--Black-30: rgba(0, 0, 0, 0.3);  /* Medium shadows, modal overlays */
--Black-70: rgba(0, 0, 0, 0.7);  /* Dark overlays, strong emphasis */
--Black-90: rgba(0, 0, 0, 0.9);  /* Nearly opaque, very strong emphasis */

/* Typography Scale - Size */
--font-2xs: 0.75rem;      /* 12px - Small captions */
--font-xs: 0.875rem;      /* 14px - Fine print */
--font-sm: 0.9375rem;     /* 15px */
--font-base: 1rem;        /* 16px - Body text */
--font-md: 1.125rem;      /* 18px - Large body */
--font-lg: 1.25rem;       /* 20px - Larger body, h6 */
--font-xl: 1.5rem;        /* 24px - h5 */
--font-2xl: 1.75rem;      /* 28px */
--font-3xl: 1.875rem;     /* 30px - h4 */
--font-4xl: 2.25rem;      /* 36px - h3 */
--font-5xl: 2.5rem;       /* 40px - h2 */
--font-6xl: 2.6rem;       /* 41.6px */
--font-7xl: 2.75rem;      /* 44px */
--font-8xl: 3rem;         /* 48px - h1 */

/* Font Families */
--font-primary: 'Poppins', sans-serif;
--font-secondary: system-ui, sans-serif;
--font-mono: ui-monospace, monospace;

/* Font Weights */
--weight-thin: 100;
--weight-extralight: 200;
--weight-light: 300;
--weight-normal: 400;
--weight-medium: 500;
--weight-semibold: 600;
--weight-bold: 700;
--weight-extrabold: 800;
--weight-black: 900;

/* Line Heights */
--leading-none: 1;          /* Tight */
--leading-tight: 1.25;      /* Condensed */
--leading-snug: 1.375;      /* Slightly Condensed */
--leading-normal: 1.5;      /* Normal */
--leading-relaxed: 1.625;   /* Slightly Relaxed */
--leading-loose: 2;         /* Spacious */

/* Letter Spacing */
--tracking-tighter: -0.05em;
--tracking-tight: -0.025em;
--tracking-normal: 0;
--tracking-wide: 0.025em;
--tracking-wider: 0.05em;
--tracking-widest: 0.1em;

/* Paragraph Spacing */
--spacing-tight: 1rem;
--spacing-normal: 1.5rem;
--spacing-relaxed: 2rem;
--spacing-loose: 2.5rem;
}

/* Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

/* ========================================
   LAYOUT COMPONENTS
======================================== */

.salesdt-main-container {
    min-height: 100vh;
}

.salesdt-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* ========================================
   HERO SECTION
======================================== */

.salesdt-hero-section {
    background-color: var(--Fantasy);
    padding: 5rem 0;
}

.salesdt-hero-content {
    text-align: center;
}

.salesdt-hero-title {
    font-size: var(--font-8xl);
    font-weight: var(--weight-extrabold);
    color: var(--RangoonGreen);
    margin-bottom: 1rem;
    line-height: var(--leading-tight);
}

.salesdt-hero-subtitle {
    font-size: var(--font-lg);
    color: var(--BlackEel);
    max-width: 600px;
    margin: 0 auto;
    line-height: var(--leading-relaxed);
}

.salesdt-accent-text {
    color: var(--Tomato);
    font-weight: var(--weight-semibold);
}

/* ========================================
   SEPARATOR
======================================== */

.salesdt-separator {
    height: 1px;
    background: linear-gradient(to right, transparent, var(--Grey), transparent);
    opacity: 0.3;
}

/* ========================================
   CONTENT SECTION
======================================== */

.salesdt-content-section {
    background-color: var(--White);
    padding: 4rem 0;
}

.salesdt-content-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: start;
}

/* ========================================
   FORM CARD
======================================== */

.salesdt-form-card {
    background: var(--White);
    border-radius: 1rem;
    padding: 2rem;
    box-shadow: 0 10px 25px var(--Black-10);
    border: 1px solid var(--WhiteSmoke);
}

.salesdt-form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.salesdt-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.salesdt-form-group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.salesdt-label {
    color: var(--RangoonGreen);
    font-weight: var(--weight-medium);
    font-size: var(--font-xs);
}

.salesdt-input, .salesdt-textarea {
    width: 100%;
    border: 1px solid var(--Grey);
    border-radius: 0.5rem;
    padding: 0.75rem;
    font-size: var(--font-base);
    font-family: var(--font-primary);
    line-height: var(--leading-normal);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    background-color: var(--White);
    color: var(--RangoonGreen);
}

.salesdt-input:focus, .salesdt-textarea:focus {
    outline: none;
    border-color: var(--Tomato);
    box-shadow: 0 0 0 3px rgba(239, 107, 62, 0.1);
}

.salesdt-input::placeholder, .salesdt-textarea::placeholder {
    color: var(--Grey);
}

.salesdt-textarea {
    resize: vertical;
    min-height: 100px;
}

.salesdt-button-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-top: 1rem;
}

/* ========================================
   BUTTONS
======================================== */

.salesdt-btn-outline, .salesdt-btn-primary {
    padding: 0.75rem 1.5rem;
    border-radius: 0.5rem;
    font-weight: var(--weight-semibold);
    font-size: var(--font-base);
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-family: var(--font-primary);
    line-height: var(--leading-normal);
}

.salesdt-btn-outline {
    background: transparent;
    border: 2px solid var(--Tomato);
    color: var(--Tomato);
}

.salesdt-btn-outline:hover {
    background-color: var(--Fantasy-50);
}

.salesdt-btn-primary {
    background-color: var(--Tomato);
    border: none;
    color: var(--White);
    text-decoration: none;
}

.salesdt-btn-primary:hover {
    background-color: var(--Flame);
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(239, 107, 62, 0.2);
}

/* ========================================
   DEMO CARD
======================================== */

.salesdt-demo-card {
    background: var(--White);
    border-radius: 1rem;
    padding: 2rem;
    box-shadow: 0 10px 25px var(--Black-10);
    border: 1px solid var(--WhiteSmoke);
}

.salesdt-demo-header {
    text-align: center;
    margin-bottom: 2rem;
}

.salesdt-demo-title {
    font-size: var(--font-4xl);
    font-weight: var(--weight-bold);
    color: var(--RangoonGreen);
    margin-bottom: 1rem;
    line-height: var(--leading-tight);
}

.salesdt-demo-description {
    font-size: var(--font-md);
    color: var(--BlackEel);
    line-height: var(--leading-relaxed);
}

.salesdt-demo-features {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.salesdt-demo-feature {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    border-radius: 0.5rem;
    background-color: var(--Fantasy-50);
}

.salesdt-demo-icon {
    width: 48px;
    height: 48px;
    background-color: rgba(239, 107, 62, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.salesdt-demo-icon i {
    font-size: var(--font-lg);
    color: var(--Tomato);
}

.salesdt-demo-text {
    flex: 1;
}

.salesdt-feature-title {
    font-weight: var(--weight-semibold);
    color: var(--RangoonGreen);
    font-size: var(--font-md);
    margin-bottom: 0.25rem;
    line-height: var(--leading-snug);
}

.salesdt-feature-subtitle {
    color: var(--BlackEel);
    font-size: var(--font-xs);
    line-height: var(--leading-normal);
}

.salesdt-demo-details {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--WhiteSmoke);
}

.salesdt-details-box {
    background: linear-gradient(to right, rgba(239, 107, 62, 0.05), rgba(239, 107, 62, 0.1));
    border-radius: 0.5rem;
    padding: 1rem;
}

.salesdt-details-title {
    font-weight: var(--weight-semibold);
    color: var(--RangoonGreen);
    margin-bottom: 0.5rem;
    font-size: var(--font-sm);
}

.salesdt-details-list {
    list-style: none;
    color: var(--BlackEel);
    font-size: var(--font-xs);
}

.salesdt-details-list li {
    margin-bottom: 0.25rem;
    line-height: var(--leading-normal);
}

/* ========================================
   WHAT HAPPENS NEXT SECTION
======================================== */

.salesdt-next-steps-section {
    background-color: var(--Fantasy);
    padding: 4rem 0;
}

.salesdt-next-steps-header {
    text-align: center;
    margin-bottom: 3rem;
}

.salesdt-next-steps-title {
    font-size: var(--font-5xl);
    font-weight: var(--weight-bold);
    color: var(--RangoonGreen);
    margin-bottom: 1rem;
    line-height: var(--leading-tight);
}

.salesdt-next-steps-subtitle {
    color: var(--BlackEel);
    font-size: var(--font-md);
    max-width: 600px;
    margin: 0 auto;
    line-height: var(--leading-relaxed);
}

.salesdt-steps-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    align-items: start;
}

.salesdt-step-card {
    text-align: center;
    padding: 2rem 1.5rem;
    background: var(--White);
    border-radius: 1rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 6px var(--Black-10);
    border: 1px solid var(--WhiteSmoke);
}

.salesdt-step-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 25px var(--Black-10);
}

.salesdt-step-number {
    width: 64px;
    height: 64px;
    background: linear-gradient(135deg, var(--Tomato), var(--Flame));
    color: var(--White);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-xl);
    font-weight: var(--weight-bold);
    margin: 0 auto 1.5rem;
    box-shadow: 0 4px 15px rgba(239, 107, 62, 0.3);
}

.salesdt-step-title {
    font-size: var(--font-lg);
    font-weight: var(--weight-semibold);
    color: var(--RangoonGreen);
    margin-bottom: 0.75rem;
    line-height: var(--leading-snug);
}

.salesdt-step-description {
    color: var(--BlackEel);
    font-size: var(--font-sm);
    line-height: var(--leading-relaxed);
}

/* ========================================
   MOBILE RESPONSIVE
======================================== */

/* Tablet - 1024px and below */
@media (max-width: 1024px) {
    .salesdt-container {
        padding: 0 1.5rem;
    }

    .salesdt-hero-section {
        padding: 4rem 0;
    }

    .salesdt-hero-title {
        font-size: var(--font-6xl);
    }

    .salesdt-hero-subtitle {
        font-size: var(--font-base);
    }

    .salesdt-content-section {
        padding: 3rem 0;
    }

    .salesdt-content-grid {
        gap: 2.5rem;
    }

    .salesdt-steps-grid {
        gap: 1.5rem;
    }

    .salesdt-next-steps-section {
        padding: 3rem 0;
    }

    .salesdt-next-steps-title {
        font-size: var(--font-4xl);
    }

    .salesdt-demo-title {
        font-size: var(--font-3xl);
    }
}

/* Tablet/Mobile - 768px and below */
@media (max-width: 768px) {
    .salesdt-container {
        padding: 0 1rem;
    }

    .salesdt-hero-section {
        padding: 3rem 0;
    }

    .salesdt-hero-title {
        font-size: var(--font-5xl);
    }

    .salesdt-hero-subtitle {
        font-size: var(--font-sm);
        max-width: 100%;
    }

    .salesdt-content-section {
        padding: 2.5rem 0;
    }

    .salesdt-content-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .salesdt-form-card, .salesdt-demo-card {
        padding: 1.5rem;
    }

    .salesdt-form-row {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }

    .salesdt-button-row {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .salesdt-form {
        gap: 1.25rem;
    }

    .salesdt-demo-header {
        margin-bottom: 1.5rem;
    }

    .salesdt-demo-title {
        font-size: var(--font-2xl);
    }

    .salesdt-demo-description {
        font-size: var(--font-base);
    }

    .salesdt-demo-features {
        gap: 1.25rem;
    }

    .salesdt-next-steps-section {
        padding: 2.5rem 0;
    }

    .salesdt-next-steps-header {
        margin-bottom: 2rem;
    }

    .salesdt-next-steps-title {
        font-size: var(--font-3xl);
    }

    .salesdt-next-steps-subtitle {
        font-size: var(--font-base);
        max-width: 100%;
    }

    .salesdt-steps-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .salesdt-step-card {
        padding: 1.5rem 1.25rem;
    }

    .salesdt-step-number {
        width: 56px;
        height: 56px;
        font-size: var(--font-lg);
        margin-bottom: 1.25rem;
    }
}

/* Small Mobile - 480px and below */
@media (max-width: 480px) {
    .salesdt-container {
        padding: 0 0.75rem;
    }

    .salesdt-hero-section {
        padding: 2rem 0;
    }

    .salesdt-hero-title {
        font-size: 2rem;
        margin-bottom: 0.875rem;
    }

    .salesdt-hero-subtitle {
        font-size: var(--font-xs);
    }

    .salesdt-content-section {
        padding: 2rem 0;
    }

    .salesdt-content-grid {
        gap: 1.5rem;
    }

    .salesdt-form-card, .salesdt-demo-card {
        padding: 1.25rem;
    }

    .salesdt-form {
        gap: 1rem;
    }

    .salesdt-form-row {
        gap: 1rem;
    }

    .salesdt-input, .salesdt-textarea {
        padding: 0.625rem;
        font-size: var(--font-sm);
    }

    .salesdt-textarea {
        min-height: 80px;
    }

    .salesdt-btn-outline, .salesdt-btn-primary {
        padding: 0.625rem 1.25rem;
        font-size: var(--font-sm);
    }

    .salesdt-demo-header {
        margin-bottom: 1.25rem;
    }

    .salesdt-demo-title {
        font-size: var(--font-xl);
    }

    .salesdt-demo-description {
        font-size: var(--font-sm);
    }

    .salesdt-demo-features {
        gap: 1rem;
    }

    .salesdt-demo-feature {
        padding: 0.875rem;
        gap: 0.75rem;
    }

    .salesdt-demo-icon {
        width: 40px;
        height: 40px;
    }

    .salesdt-demo-icon i {
        font-size: var(--font-base);
    }

    .salesdt-feature-title {
        font-size: var(--font-base);
    }

    .salesdt-feature-subtitle {
        font-size: var(--font-2xs);
    }

    .salesdt-demo-details {
        margin-top: 1.5rem;
        padding-top: 1.25rem;
    }

    .salesdt-details-box {
        padding: 0.875rem;
    }

    .salesdt-details-title {
        font-size: var(--font-xs);
    }

    .salesdt-details-list {
        font-size: var(--font-2xs);
    }

    .salesdt-next-steps-section {
        padding: 2rem 0;
    }

    .salesdt-next-steps-header {
        margin-bottom: 1.5rem;
    }

    .salesdt-next-steps-title {
        font-size: var(--font-2xl);
    }

    .salesdt-next-steps-subtitle {
        font-size: var(--font-sm);
    }

    .salesdt-steps-grid {
        gap: 1.25rem;
    }

    .salesdt-step-card {
        padding: 1.25rem 1rem;
    }

    .salesdt-step-number {
        width: 48px;
        height: 48px;
        font-size: var(--font-base);
        margin-bottom: 1rem;
    }

    .salesdt-step-title {
        font-size: var(--font-base);
    }

    .salesdt-step-description {
        font-size: var(--font-xs);
    }
}