/* Public sales page: the same palette as the application, without changing the offer. */
.fgo-sales {
    --ink: var(--app-text); --muted: var(--app-muted); --soft: var(--app-bg);
    --paper: var(--app-surface); --line: var(--app-border); --shadow: none;
    --green: var(--fgo-accent-text); --green-dark: var(--fgo-accent-text);
    font-size: 16px; background: var(--app-bg); color: var(--app-text);
}
.fgo-sales * { letter-spacing: 0; }
.fgo-sales :is(.section,.hero,.how,.social,.pricing,.faq,.bonus-band,.comparison,.site-header,.footer) {
    background: var(--app-bg); background-image: none; color: var(--app-text); border-color: var(--app-border-soft);
}
.fgo-sales .site-header { background: var(--app-surface); backdrop-filter: none; }
.fgo-sales .section { padding: 64px 0; }
.fgo-sales { padding-top: 0; }
.fgo-sales .offer-bar { background: #202020; box-shadow: none; visibility: hidden; transform: translateY(-100%); }
.fgo-sales .progress-bar { visibility: hidden; }
.fgo-sales.offer-visible .offer-bar { visibility: visible; transform: none; }
.fgo-sales.offer-visible .progress-bar { visibility: visible; }
.fgo-sales .offer-bar a { background: var(--fgo-accent); color: #18210a; font-weight: 600; }
.fgo-sales .offer-dot { background: var(--fgo-accent); animation: none; box-shadow: none; }
.fgo-sales .progress-bar { background: var(--fgo-accent); height: 2px; box-shadow: none; }
.fgo-sales :is(.brand,.section-title,.feature-row-copy h3,.value-card h3,.test-result,.bonus-title,.extras-title,.bonus-card.icon-only h3,.faq-q) { color: var(--app-text); }
.fgo-sales :is(.nav-links a,.hero-secondary-link,.hero-sub,.feature-mini-list li,.plan-list li,.testimonial p) { color: var(--app-muted); }
.fgo-sales :is(.brand span span,.eyebrow,.price-block strong,.bonus-band .eyebrow) { color: var(--fgo-accent-text); }
.fgo-sales .nav-login { background: var(--app-surface-soft); color: var(--app-text) !important; border-color: var(--app-border); }
.fgo-sales .nav { min-height: 68px; height: auto; padding-top: 12px; padding-bottom: 12px; }
.fgo-sales .nav-links { gap: 16px; }
.fgo-sales .sales-theme-toggle {
    display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
    width: 40px; height: 40px; border: 1px solid var(--app-border); border-radius: 8px;
    background: var(--app-surface); color: var(--app-text); cursor: pointer;
}
.sales-theme-toggle svg { width: 18px; height: 18px; }
.sales-theme-toggle .sales-sun,.dark .sales-theme-toggle .sales-moon { display: none; }
.dark .sales-theme-toggle .sales-sun { display: block; }
.fgo-sales :is(.primary-btn,.lm-btn,.billing-tab.active) { background: var(--fgo-accent); color: #18210a; box-shadow: none; font-weight: 600; }
.fgo-sales :is(.primary-btn,.lm-btn,.secondary-btn):hover { transform: none; box-shadow: none; }
.fgo-sales :is(.primary-btn,.lm-btn):hover { background: var(--fgo-accent-hover); }
.fgo-sales .primary-btn::after,.fgo-sales .bonus-card.icon-only::before,.fgo-sales .plan-card.complete::before { display: none; }
.fgo-sales .secondary-btn { color: var(--app-text); background: var(--app-surface); border-color: var(--app-border); font-weight: 600; }
.fgo-sales .hero { padding: 28px 0 24px; border-bottom: 1px solid var(--app-border-soft); }
.fgo-sales .hero-grid {
    display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); grid-template-areas: "copy copy" "price cta" "visual visual";
    justify-content: center; gap: 20px 24px; text-align: center;
}
.fgo-sales .hero-grid > * { min-width: 0; }
.fgo-sales .hero-copy { max-width: 800px; margin: 0 auto; text-align: center; }
.fgo-sales .hero h1 { font-size: 44px; line-height: 1.12; color: var(--app-text); margin: 0 0 12px; font-weight: 750; }
.fgo-sales .hero-offer { font-size: 24px; line-height: 1.35; font-weight: 500; }
.fgo-sales .hero-offer mark { color: var(--fgo-accent-text); background: transparent; font-weight: 700; }
.fgo-sales .hero-price { justify-self: end; margin: 0; align-items: center; }
.fgo-sales .price-block strong { font-size: 32px; }
.fgo-sales .price-block small { color: var(--app-muted); }
.fgo-sales .hero-cta { justify-self: start; gap: 16px; }
.fgo-sales .primary-btn { min-height: 46px; padding: 12px 20px; }
.fgo-sales .hero-visual { width: 100%; max-width: 860px; justify-self: center; padding: 0; }
.fgo-sales .hero-carousel { border: 0; border-radius: 0; box-shadow: none; background: transparent; }
.fgo-sales .hero-carousel::before,.fgo-sales .hero-carousel::after,.fgo-sales .browser-lights { display: none; }
.fgo-sales .hero-carousel-slide { background: transparent; }
.fgo-sales .hero-carousel-slide img { height: min(30svh, 290px); width: 100%; object-fit: contain; }
@media (min-width: 1024px) {
    .fgo-sales .hero-visual { max-width: 1040px; }
    .fgo-sales .hero-carousel { border: 1px solid var(--app-border); border-radius: 12px; }
    .fgo-sales .hero-carousel-slide img { display: block; height: auto; max-height: none; aspect-ratio: 8 / 5; }
}
.fgo-sales .hero-carousel-btn { width: 40px; height: 40px; background: var(--app-surface); border-color: var(--app-border); color: var(--app-text); backdrop-filter: none; border-radius: 8px; }
.fgo-sales .hero-carousel-btn:hover { background: var(--fgo-accent); color: #18210a; }
.fgo-sales .hero-carousel-dot { background: var(--app-border); }
.fgo-sales .hero-carousel-dot.active { background: var(--fgo-accent-text); box-shadow: none; transform: none; }
.fgo-sales .hero-badges { display: flex; justify-content: center; gap: 24px; margin-top: 8px; }
.fgo-sales .hero-badge { min-height: 30px; padding: 0; background: transparent; border: 0; color: var(--app-muted); box-shadow: none; font-weight: 500; }
.fgo-sales .hero-badge :is(i,svg) { color: var(--fgo-accent-text); }
.fgo-sales .sales-overview { padding: 0 0 48px; margin-bottom: 48px; border-bottom: 1px solid var(--app-border-soft); }
.fgo-sales .hero-sub { margin: 0 auto 20px; text-align: center; max-width: 760px; font-size: 16px; }
.fgo-sales .hero-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.fgo-sales .hero-list li { padding: 0; background: transparent; border: 0; box-shadow: none; color: var(--app-muted); font-weight: 500; }
.fgo-sales .hero-list :is(i,svg) { flex-shrink: 0; width: 18px; height: 18px; color: var(--fgo-accent-text); }
.fgo-sales .section-title { font-size: 32px; font-weight: 700; line-height: 1.2; }
.fgo-sales .bonus-title { font-size: 28px; font-weight: 700; }
.fgo-sales :is(.value-card,.bonus-card,.testimonial,.step,.plan-card,.faq-item) { background: var(--app-surface); border-color: var(--app-border-soft); box-shadow: none; border-radius: 8px; }
.fgo-sales :is(.value-card,.bonus-card,.testimonial,.step,.plan-card):hover { transform: none; box-shadow: none; border-color: var(--app-border); }
.fgo-sales :is(.bonus-band .bonus-card.icon-only p,.bonus-band .section-sub,.comparison .section-sub) { color: var(--app-muted); }
.fgo-sales .feature-row-alt { background: transparent; border: 0; border-bottom: 1px solid var(--app-border-soft); border-radius: 0; padding: 28px 0; box-shadow: none; }
.fgo-sales :is(.icon-box,.bonus-icon,.plan-tag,.complete-highlight,.guarantee-box,.content-list li::before) { background: var(--fgo-accent-soft); color: var(--fgo-accent-text); border-color: var(--app-border-soft); box-shadow: none; border-radius: 8px; }
.fgo-sales :is(.complete-highlight strong,.complete-highlight span) { color: var(--fgo-accent-text); }
.fgo-sales .bonus-icon { transform: none !important; box-shadow: none !important; }
.fgo-sales .bonus-icon :is(i,svg) { color: var(--fgo-accent-text); }
.fgo-sales .bonus-band .addon-card { background: var(--app-surface) !important; border-color: var(--app-border) !important; }
.fgo-sales .bonus-unlock { background: var(--fgo-accent-soft); box-shadow: none !important; animation: none !important; }
.fgo-sales .bonus-unlock::before { background: var(--app-surface); }
.fgo-sales .extras-title::before,.fgo-sales .extras-title::after { background: var(--app-border); }
.fgo-sales .comparison-table { background: var(--app-surface); border-radius: 8px; border-color: var(--app-border); box-shadow: none; }
.fgo-sales .comparison-table :is(th,td) { color: var(--app-text); border-color: var(--app-border-soft); }
.fgo-sales .comparison-table thead th { background: var(--app-surface-soft); color: var(--app-muted); }
.fgo-sales .comparison-table .col-us { background: var(--fgo-accent-soft); color: var(--fgo-accent-text); }
.fgo-sales .comparison-table tbody td:first-child { color: var(--app-text); }
.fgo-sales .comparison-table thead .col-us,.fgo-sales .comparison-table .price-row .col-us { color: var(--fgo-accent-text); background: var(--fgo-accent-soft); }
.fgo-sales .comparison-table .col-us .comparison-label { color: var(--fgo-accent-text); }
.fgo-sales .comparison-table .col-them,.fgo-sales .comparison-note,.fgo-sales .comparison-label { color: var(--app-muted); }
.fgo-sales .comparison-table .col-us .comparison-mark.ok { background: var(--fgo-accent-soft); box-shadow: none; }
.fgo-sales .comparison-table .price-row td:first-child { color: var(--app-text); }
.fgo-sales .comparison-mark.ok { color: var(--fgo-accent-text); background: var(--fgo-accent-soft); box-shadow: none; }
.fgo-sales .pricing-grid:not(.trial-pricing-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; }
.fgo-sales .plan-card { display: flex; flex-direction: column; }
.fgo-sales .plan-card.complete { transform: none; border: 1px solid var(--fgo-focus); padding: 26px; box-shadow: none; }
.fgo-sales .plan-card > a.full { margin-top: auto; }
.fgo-sales .billing-tabs { background: var(--app-surface-soft); border-color: var(--app-border-soft); box-shadow: none; }
.fgo-sales .billing-tab { color: var(--app-muted); }
.fgo-sales .billing-tab.active { color: #18210a; }
.fgo-sales .billing-tab.active .billing-save { color: #18210a; background: #ffffff66; }
.fgo-sales .plan-list .locked { opacity: 1; color: var(--app-muted); }
.fgo-sales .faq-item { border: 0; border-bottom: 1px solid var(--app-border); border-radius: 0; background: transparent; }
.fgo-sales .faq-q { background: transparent; font-weight: 600; }
.fgo-sales .faq-item.open .faq-a { max-height: 640px; }
.fgo-sales .footer { background: var(--app-surface-soft); }
.fgo-sales .footer h4 { color: var(--app-text); }
.fgo-sales .footer :is(p,a,.footer-bottom) { color: var(--app-muted); border-color: var(--app-border); }
.fgo-sales .reveal { opacity: 1; transform: none; filter: none; }
.fgo-sales .button-pop,.fgo-sales .stars span { animation: none !important; opacity: 1; transform: none; }
.fgo-sales .login-modal { background: var(--app-surface); border: 1px solid var(--app-border); border-radius: 8px; box-shadow: 0 24px 64px #0003; max-height: calc(100svh - 40px); overflow-y: auto; }
.fgo-sales .login-modal::before { display: none; }
.fgo-sales .lm-title { color: var(--app-text); }
.fgo-sales :is(.lm-sub,.lm-remember,.lm-register,.lm-fl label) { color: var(--app-muted); }
.fgo-sales :is(.lm-forgot,.lm-register a) { color: var(--fgo-accent-text); }
.fgo-sales .lm-fl input { background: var(--app-surface-soft); border-color: var(--app-border); color: var(--app-text); border-radius: 8px; }
.fgo-sales .lm-fl input:focus { border-color: var(--fgo-focus); }
.fgo-sales .lm-fl input:focus+label,.fgo-sales .lm-fl input:not(:placeholder-shown)+label { color: var(--fgo-accent-text); }
.fgo-sales .login-close { background: var(--app-surface-soft); color: var(--app-text); }
.fgo-sales .lm-divider { display: flex; align-items: center; gap: 12px; margin: 18px 0; color: var(--app-muted); font-size: 13px; }
.fgo-sales .lm-divider::before,.fgo-sales .lm-divider::after { content: ''; flex: 1; height: 1px; background: var(--app-border); }
.fgo-sales .lm-google { gap: 10px; font-size: 14px; }
.fgo-sales .lm-legal { font-size: 12px; line-height: 1.5; color: var(--app-muted); text-align: center; margin-top: 10px; }
.fgo-sales .lm-legal a { color: var(--fgo-accent-text); font-weight: 600; }
.fgo-sales .login-modal input:-webkit-autofill { -webkit-box-shadow: 0 0 0 100px var(--app-surface-soft) inset !important; -webkit-text-fill-color: var(--app-text) !important; }
@media (max-width: 900px) {
    .fgo-sales .nav-links { gap: 10px; }
    .fgo-sales .hero-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 640px) {
    .fgo-sales .container { width: calc(100% - 32px); }
    .fgo-sales .section { padding: 40px 0; }
    .fgo-sales .nav { gap: 8px; }
    .fgo-sales .brand { font-size: 16px; gap: 6px; }
    .fgo-sales .brand img { width: 30px; height: 30px; }
    .fgo-sales .nav-links > a:not(.nav-login) { display: none; }
    .fgo-sales .nav-links { display: flex; }
    .fgo-sales .offer-bar { gap: 8px; }
    .fgo-sales .offer-bar strong { font-size: 11px; font-weight: 600; line-height: 1.3; }
    .fgo-sales .offer-bar a { padding: 6px 10px; font-size: 11px; }
    .fgo-sales .offer-dot { flex-shrink: 0; width: 6px; height: 6px; }
    .fgo-sales .hero-grid { grid-template-columns: minmax(0,1fr); grid-template-areas: "copy" "cta" "visual"; gap: 18px; }
    .fgo-sales .hero h1 { font-size: 32px; }
    .fgo-sales .hero-offer { font-size: 22px; }
    .fgo-sales .hero-price { display: none; }
    .fgo-sales .hero-cta { justify-self: stretch; justify-content: center; }
    .fgo-sales .hero-cta .primary-btn { width: 100%; }
    .fgo-sales .hero-carousel-slide img { height: min(24svh, 220px); }
    .fgo-sales .hero-badges { gap: 16px; }
    .fgo-sales .hero-badge { font-size: 12px; }
    .fgo-sales .hero-list,.fgo-sales .pricing-grid:not(.trial-pricing-grid) { grid-template-columns: minmax(0,1fr); }
    .fgo-sales .section-title { font-size: 26px; }
    .fgo-sales .bonus-title { font-size: 24px; }
    .fgo-sales .sales-overview { padding-bottom: 32px; margin-bottom: 32px; }
    .fgo-sales .login-modal { padding: 32px 20px; }
    .fgo-sales .lm-row { gap: 10px; flex-wrap: wrap; }
}
.fgo-sales .sales-product-preview {
    position: relative;
    width: 100%;
    padding: 8px 16% 8% 0;
}
.fgo-sales .generated-mockup .sales-product-desktop {
    display: block;
    width: 100%;
    height: auto;
    border: 3px solid #303030;
    border-radius: 8px;
    filter: none;
}
.fgo-sales .generated-mockup .sales-product-mobile {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 25%;
    height: auto;
    border: 3px solid #303030;
    border-radius: 8px;
    filter: none;
}
