/* =========================================================
   SERVICE ASSISTANTS / SERVICE PARTNER APP COLOR THEME ONLY
   Load AFTER expat_life/css/style.css

   IMPORTANT:
   This file changes colors/backgrounds only.
   It does NOT change spacing, sizes, heights, widths,
   secure badge image size, navbar size, floating CTA size,
   or footer layout.
========================================================= */

:root {
    --assist-deep: #0d1f2a;
    --assist-deeper: #081823;
    --assist-dark: #111827;
    --assist-teal: #0d9488;
    --assist-teal-dark: #0f766e;
    --assist-cyan: #20c997;
    --assist-blue: #0d6efd;
    --assist-soft: #eafff7;
    --assist-light: #f5fffb;
    --assist-gold: #ffc107;
    --assist-gold-dark: #ff9800;
    --assist-soft-border: rgba(13, 148, 136, 0.16);
}

/* =========================================================
   BASE
========================================================= */

body {
    background-color: var(--assist-light);
}

/* =========================================================
   GENERAL ACCENT COLORS
========================================================= */

.section-mini-title {
    color: var(--assist-teal);
}

.section-mini-title-light {
    color: var(--assist-gold);
}

.stat-box h3,
.price-tier-item strong,
.package-price,
.package-detail-price,
.budget-label i,
.budget-value,
.info-note-box i,
.mini-info-row i,
.comparison-price,
.signup-note-box i,
.consultation-note-box i,
.contact-note-box i,
.about-note-box i,
.location-style-icon,
.about-fit-item i,
.about-value-row strong,
.dashboard-link-card i,
.success-info-box i,
.login-note-box i {
    color: var(--assist-teal);
}

/* Keep success-related icons green where meaningful */
.package-mini-list i,
.signup-info-item i,
.consultation-info-item i,
.contact-info-item i,
.about-highlight-item i {
    color: #198754;
}

/* =========================================================
   LIGHT BACKGROUNDS
========================================================= */

.light-section,
.final-cta-section,
.package-detail-hero,
.package-list-hero,
.signup-hero,
.consultation-hero,
.contact-hero,
.about-sl-hero,
.success-page-section,
.dashboard-hero,
.login-hero {
    background: linear-gradient(180deg, #ffffff 0%, var(--assist-light) 100%);
}

.hero-info-content,
.package-target-box,
.package-tagline-box,
.info-note-box,
.signup-note-box,
.consultation-note-box,
.contact-note-box,
.about-note-box,
.success-info-box,
.login-note-box,
.custom-check {
    background: var(--assist-soft);
    border-color: var(--assist-soft-border);
}

/* =========================================================
   HERO / GRADIENT AREAS
========================================================= */

.hero-section {
    background:
        linear-gradient(rgba(13, 31, 42, 0.78), rgba(13, 31, 42, 0.78)),
        url('/static/expat_life/images/service_partner_hero.webp') center/cover no-repeat;
}

.hero-overlay {
    background: linear-gradient(
        135deg,
        rgba(13, 148, 136, 0.28),
        rgba(255, 193, 7, 0.08)
    );
}

.hero-badge {
    background: rgba(255, 193, 7, 0.16);
    border-color: rgba(255, 193, 7, 0.30);
    color: #ffffff;
}

.hero-point-box i {
    color: var(--assist-gold);
}

.gradient-section {
    background: linear-gradient(135deg, var(--assist-deep), var(--assist-teal));
}

.final-cta-box {
    background: linear-gradient(135deg, var(--assist-deep), var(--assist-teal));
}

/* =========================================================
   ICON / PLACEHOLDER BACKGROUNDS
========================================================= */

.icon-wrap,
.location-style-icon,
.about-fit-item i {
    background: var(--assist-soft);
    color: var(--assist-teal);
}

.package-image-placeholder,
.package-detail-placeholder,
.about-hero-image-placeholder {
    background: linear-gradient(135deg, var(--assist-soft), #ffffff);
    color: var(--assist-teal);
}

.detail-feature-icon {
    background: var(--assist-soft);
    color: var(--assist-teal);
}

/* =========================================================
   CARDS WITH SOFT TINTS
========================================================= */

.quick-summary-card,
.total-budget-card,
.about-value-card {
    background: linear-gradient(180deg, #ffffff 0%, var(--assist-light) 100%);
}

.comparison-highlight {
    border-color: var(--assist-gold);
    background: linear-gradient(180deg, #fffdf5 0%, #ffffff 100%);
}

/* =========================================================
   FORM FOCUS COLORS
========================================================= */

.signup-form-card .form-control:focus,
.signup-form-card .form-select:focus,
.consultation-form-card .form-control:focus,
.consultation-form-card .form-select:focus,
.contact-form-card .form-control:focus,
.contact-form-card .form-select:focus,
.login-form-card .form-control:focus {
    border-color: rgba(13, 148, 136, 0.55);
    box-shadow: 0 0 0 0.18rem rgba(13, 148, 136, 0.12);
}

.custom-accordion .accordion-button:not(.collapsed) {
    background: var(--assist-soft);
    color: var(--assist-teal);
}

/* =========================================================
   TOP BAR
========================================================= */

.topbar {
    background: var(--assist-deeper);
    color: rgba(255, 255, 255, 0.86);
}

.topbar i {
    color: var(--assist-gold);
}

.topbar a {
    color: rgba(255, 255, 255, 0.88);
}

.topbar a:hover {
    color: #ffffff;
}

/* =========================================================
   NAVBAR COLORS ONLY
========================================================= */

.premium-navbar {
    background: rgba(245, 255, 251, 0.96);
    box-shadow: 0 8px 24px rgba(13, 31, 42, 0.08);
}

.brand-logo-circle {
    background: linear-gradient(135deg, var(--assist-cyan), var(--assist-blue));
    box-shadow: 0 8px 20px rgba(13, 148, 136, 0.22);
}

.brand-title {
    color: var(--assist-deep);
}

.brand-subtitle {
    color: var(--assist-teal);
}

.premium-nav-link {
    color: #263a42;
}

.premium-nav-link:hover,
.premium-nav-link:focus {
    color: var(--assist-teal);
    background: var(--assist-soft);
}

.premium-navbar .dropdown-menu {
    background: #ffffff;
    border-color: var(--assist-soft-border);
}

.premium-navbar .dropdown-item {
    color: #263a42;
}

.premium-navbar .dropdown-item:hover,
.premium-navbar .dropdown-item:focus {
    color: var(--assist-teal);
    background: var(--assist-soft);
}

/* =========================================================
   BUTTON COLORS ONLY
========================================================= */

.btn-primary {
    background: linear-gradient(135deg, var(--assist-cyan), var(--assist-blue));
    border-color: var(--assist-teal);
    color: #ffffff;
}

.btn-primary:hover,
.btn-primary:focus {
    background: linear-gradient(135deg, var(--assist-teal), var(--assist-blue));
    border-color: var(--assist-teal);
    color: #ffffff;
}

.btn-dark {
    background: linear-gradient(135deg, var(--assist-deep), var(--assist-teal));
    border-color: var(--assist-deep);
    color: #ffffff;
}

.btn-dark:hover,
.btn-dark:focus {
    background: linear-gradient(135deg, var(--assist-deeper), var(--assist-teal));
    border-color: var(--assist-teal);
    color: #ffffff;
}

.btn-warning {
    background: linear-gradient(135deg, var(--assist-gold), var(--assist-gold-dark));
    border-color: var(--assist-gold);
    color: #212529;
}

.btn-warning:hover,
.btn-warning:focus {
    background: linear-gradient(135deg, #ffcf33, var(--assist-gold-dark));
    border-color: var(--assist-gold-dark);
    color: #212529;
}

.btn-outline-primary {
    color: var(--assist-teal);
    border-color: var(--assist-teal);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    background: var(--assist-teal);
    border-color: var(--assist-teal);
    color: #ffffff;
}

.btn-outline-dark {
    color: var(--assist-deep);
    border-color: var(--assist-deep);
}

.btn-outline-dark:hover,
.btn-outline-dark:focus {
    background: var(--assist-deep);
    border-color: var(--assist-deep);
    color: #ffffff;
}

/* Specific green button from main style */
.hero-visa-btn {
    background: linear-gradient(135deg, var(--assist-cyan), var(--assist-blue));
}

.hero-visa-btn:hover {
    background: linear-gradient(135deg, var(--assist-teal), var(--assist-blue));
}

/* =========================================================
   LABELS / SELECTED STATES
========================================================= */

.featured-label {
    background: var(--assist-gold);
    color: #212529;
}

.selected-label {
    background: var(--assist-teal);
    color: #ffffff;
}

.package-selected {
    border-color: var(--assist-teal);
}

.dashboard-profile-icon {
    border-color: var(--assist-teal);
    box-shadow: 0 4px 12px rgba(13, 148, 136, 0.15);
}

/* =========================================================
   FLOATING CTA
   Do NOT change size or position from style.css.
   Only color.
========================================================= */

.floating-guest-btn {
    background: linear-gradient(135deg, var(--assist-gold), var(--assist-gold-dark));
    border-color: var(--assist-gold);
    color: #212529;
}

.floating-guest-btn:hover {
    color: #212529;
}

/* =========================================================
   PAGINATION COLORS
========================================================= */

.pagination .page-link:hover {
    background-color: var(--assist-deep);
    color: #ffffff;
    border-color: var(--assist-deep);
}

.pagination .page-item.active .page-link {
    background-color: var(--assist-teal);
    border-color: var(--assist-teal);
    color: #ffffff;
}

/* =========================================================
   FOOTER COLORS ONLY
========================================================= */

.premium-footer {
    background: var(--assist-deeper);
    color: rgba(255, 255, 255, 0.88);
}

.footer-main {
    background:
        linear-gradient(rgba(8, 24, 35, 0.96), rgba(13, 31, 42, 0.96)),
        radial-gradient(circle at top right, rgba(13, 148, 136, 0.24), transparent 35%);
}

.footer-brand-title {
    color: #ffffff;
}

.footer-brand-subtitle {
    color: var(--assist-gold);
}

.footer-text {
    color: rgba(255, 255, 255, 0.78);
}

.footer-heading {
    color: #ffffff;
}

.footer-links a {
    color: rgba(255, 255, 255, 0.78);
}

.footer-links a:hover {
    color: var(--assist-gold);
}

.footer-logo-circle {
    background: linear-gradient(135deg, var(--assist-cyan), var(--assist-blue));
}

.footer-bottom {
    background: #050f16;
    border-top-color: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.68);
}

/* =========================================================
   SECURE TRUST BADGES
   Keep image sizes from original style.css.
   Only change badge background/border.
========================================================= */

.footer-secure-trust-badge {
    background: linear-gradient(
        135deg,
        rgba(255, 255, 255, 0.12),
        rgba(13, 148, 136, 0.10)
    );
    border-color: rgba(255, 255, 255, 0.18);
}

.checkout-secure-trust-badge {
    background: linear-gradient(
        135deg,
        rgba(245, 255, 251, 0.98),
        rgba(255, 255, 255, 0.98)
    );
    border-color: rgba(13, 148, 136, 0.18);
}

.checkout-secure-trust-text strong {
    color: var(--assist-deep);
}

.checkout-heading-secure-note {
    background: rgba(234, 255, 247, 0.92);
    border-color: rgba(13, 148, 136, 0.18);
    color: var(--assist-teal);
}

/* =========================================================
   FORGOT PASSWORD LINK
========================================================= */

.forgot-password-link {
    color: #065f46;
    background: rgba(13, 148, 136, 0.12);
}

.forgot-password-link:hover {
    color: var(--assist-deep);
    background: rgba(13, 148, 136, 0.22);
}

/* =========================================================
   SERVICE PARTNER / ASSISTANTS HOME PAGE SPECIFIC COLORS
   These match the service partner homepage styles you attached.
   Only colors/backgrounds are adjusted.
========================================================= */

.service-partner-hero {
    background-color: var(--assist-deep);
}

.service-partner-hero-bg {
    background:
        linear-gradient(
            90deg,
            rgba(8, 24, 35, 0.90) 0%,
            rgba(8, 24, 35, 0.76) 42%,
            rgba(8, 24, 35, 0.48) 72%,
            rgba(8, 24, 35, 0.36) 100%
        ),
        url('/static/expat_life/images/service_partner_hero.webp') center center / cover no-repeat;
}

.service-hero-badge,
.service-floating-language-bar {
    background: rgba(255, 193, 7, 0.14);
    color: var(--assist-gold);
    border-color: rgba(255, 193, 7, 0.32);
}

.service-hero-point i,
.service-type-box i,
.service-floating-language-title {
    color: var(--assist-gold);
}

.service-side-card-header {
    background: linear-gradient(135deg, var(--assist-cyan) 0%, var(--assist-blue) 100%);
    color: #ffffff;
}

.service-mini-icon,
.service-feature-icon {
    background: var(--assist-soft);
    color: var(--assist-teal);
}

.service-stat-box h3 {
    color: var(--assist-teal);
}

.service-process-number {
    background: var(--assist-teal);
    color: #ffffff;
}

.service-gradient-section,
.final-service-cta {
    background: linear-gradient(135deg, var(--assist-deep) 0%, var(--assist-teal) 100%);
}

.service-type-box {
    background: rgba(255, 255, 255, 0.10);
    border-color: rgba(255, 255, 255, 0.15);
    color: #ffffff;
}