/*
 * Marketing homepage styles (#marketing PR1). Scoped under .ae-home /
 * .ae-* class names so nothing here leaks into the order / account pages
 * that share main.css + Bootstrap. Brand: ink text + a single teal accent.
 */

.ae-home {
    --ae-ink: #16191d;
    --ae-muted: #5b6470;
    --ae-accent: #0f7a63;
    --ae-accent-dark: #0b5c4a;
    --ae-line: #e6e8e4;
    --ae-surface: #f6f7f5;

    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    color: var(--ae-ink);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

.ae-home a { color: inherit; text-decoration: none; }
.ae-home img { max-width: 100%; }
.ae-wrap { max-width: 1120px; margin: 0 auto; padding: 0 24px; }

/* ---- buttons ---- */
.ae-btn {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 15px; font-weight: 600; line-height: 1;
    padding: 12px 20px; border-radius: 8px; border: 1px solid transparent;
    cursor: pointer; transition: background-color .15s ease, border-color .15s ease;
}
.ae-btn-primary { background: var(--ae-ink); color: #fff; }
.ae-btn-primary:hover { background: #000; color: #fff; }
.ae-btn-accent { background: var(--ae-accent); color: #fff; }
.ae-btn-accent:hover { background: var(--ae-accent-dark); color: #fff; }
.ae-btn-ghost { background: transparent; color: var(--ae-ink); border-color: var(--ae-line); }
.ae-btn-ghost:hover { background: var(--ae-surface); }

/* ---- nav ---- */
.ae-nav { border-bottom: 1px solid var(--ae-line); background: #fff; }
.ae-nav-inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; flex-wrap: wrap; }
.ae-logo { display: inline-flex; align-items: center; gap: 8px; font-size: 19px; font-weight: 700; letter-spacing: .2px; }
.ae-logo i { color: var(--ae-accent); font-size: 22px; }
.ae-nav-links { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.ae-nav-links a.ae-nav-link { color: var(--ae-muted); font-size: 15px; }
.ae-nav-links a.ae-nav-link:hover { color: var(--ae-ink); }
.ae-nav-cta { display: flex; align-items: center; gap: 10px; }

/* keep the shared language-switcher dropdown compact in the nav */
.ae-home .dropdown .btn { font-size: 15px; padding: 6px 12px; background: transparent; color: var(--ae-muted); border: 1px solid var(--ae-line); border-radius: 8px; }

/* ---- hero ---- */
.ae-hero { text-align: center; padding: 72px 0 56px; background: #fff; }
.ae-eyebrow { display: inline-block; font-size: 13px; font-weight: 600; color: var(--ae-accent-dark); background: #e7f3ef; padding: 6px 14px; border-radius: 20px; margin-bottom: 20px; }
.ae-hero h1 { font-size: 44px; line-height: 1.12; font-weight: 700; margin: 0 auto 18px; max-width: 720px; letter-spacing: -.5px; }
.ae-hero p.ae-sub { font-size: 19px; color: var(--ae-muted); max-width: 640px; margin: 0 auto 32px; }

.ae-codebox { display: flex; gap: 10px; justify-content: center; max-width: 460px; margin: 0 auto 12px; }
.ae-codebox input { flex: 1; min-width: 0; height: 48px; padding: 0 16px; font-size: 16px; border: 1px solid var(--ae-line); border-radius: 8px; outline: none; }
.ae-codebox input:focus { border-color: var(--ae-accent); box-shadow: 0 0 0 3px rgba(15,122,99,.15); }
.ae-codebox .ae-btn { height: 48px; white-space: nowrap; }
.ae-codehint { font-size: 13px; color: var(--ae-muted); margin: 0; }

/* ---- ribbon ---- */
.ae-ribbon { background: var(--ae-surface); border-top: 1px solid var(--ae-line); border-bottom: 1px solid var(--ae-line); }
.ae-ribbon-inner { display: flex; justify-content: center; gap: 36px; flex-wrap: wrap; padding: 16px 0; font-size: 14px; color: var(--ae-muted); }
.ae-ribbon-inner span { display: inline-flex; align-items: center; gap: 8px; }
.ae-ribbon-inner i { color: var(--ae-accent); font-size: 16px; }

/* ---- sections ---- */
.ae-section { padding: 64px 0; }
.ae-section-head { text-align: center; max-width: 620px; margin: 0 auto 40px; }
.ae-section-head h2 { font-size: 32px; font-weight: 700; margin: 0 0 10px; letter-spacing: -.3px; }
.ae-section-head p { font-size: 17px; color: var(--ae-muted); margin: 0; }

.ae-grid { display: grid; gap: 20px; }
.ae-grid-4 { grid-template-columns: repeat(4, 1fr); }
.ae-grid-3 { grid-template-columns: repeat(3, 1fr); }

.ae-card { background: #fff; border: 1px solid var(--ae-line); border-radius: 12px; padding: 24px; }
.ae-card .ae-card-icon { font-size: 26px; color: var(--ae-accent); }
.ae-card h3 { font-size: 17px; font-weight: 700; margin: 14px 0 6px; }
.ae-card p { font-size: 15px; color: var(--ae-muted); margin: 0; }

/* ---- how it works ---- */
.ae-step { text-align: center; padding: 8px; }
.ae-step-num { width: 44px; height: 44px; margin: 0 auto 14px; border-radius: 50%; background: var(--ae-surface); border: 1px solid var(--ae-line); display: flex; align-items: center; justify-content: center; font-size: 22px; color: var(--ae-accent); }
.ae-step h3 { font-size: 17px; font-weight: 700; margin: 0 0 6px; }
.ae-step p { font-size: 15px; color: var(--ae-muted); margin: 0; }

/* ---- browse band ---- */
.ae-browse { background: var(--ae-ink); color: #fff; text-align: center; padding: 56px 24px; border-radius: 16px; }
.ae-browse h2 { font-size: 28px; font-weight: 700; margin: 0 0 10px; color: #fff; }
.ae-browse p { font-size: 17px; color: #c4ccd2; margin: 0 0 24px; }

/* ---- footer ---- */
.ae-footer { border-top: 1px solid var(--ae-line); margin-top: 8px; }
.ae-footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 28px 0; font-size: 14px; color: var(--ae-muted); }
.ae-footer-links { display: flex; gap: 22px; flex-wrap: wrap; }
.ae-footer-links a:hover { color: var(--ae-ink); }

/* ---- responsive ---- */
@media (max-width: 900px) {
    .ae-grid-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 760px) {
    .ae-hero h1 { font-size: 33px; }
    .ae-hero p.ae-sub { font-size: 17px; }
    .ae-section-head h2 { font-size: 26px; }
    .ae-grid-3 { grid-template-columns: 1fr; }
    .ae-nav-links { gap: 14px; }
    .ae-codebox { flex-direction: column; }
    .ae-codebox .ae-btn { justify-content: center; }
}
@media (max-width: 480px) {
    .ae-grid-4 { grid-template-columns: 1fr; }
}
