/* Cofibit public identity. Shared by / and /lp/; scoped away from tenant UI.
 * Official source: #422E59, #9D7DAE, #B6A7D2. Existing components and handlers stay intact. */
body.cofibit-public {
    --primary-color: #422E59;
    --primary-dark: #30213F;
    --primary-custom: #422E59;
    --secondary-color: #9D7DAE;
    --accent-color: #B6A7D2;
    --bg-body: #F7F4F9;
    --bg-light: #F0EBF3;
    --text-main: #30243A;
    --text-muted: #786D80;
    --card-bg: #FFFFFF;
    --border-color: #D8CEE0;
    --gradient-main: linear-gradient(135deg, #422E59, #634879);
    --gradient-hero: linear-gradient(135deg, #422E59, #52396A);
    --bs-body-color: #30243A;
    --bs-body-bg: #F7F4F9;
    --bs-secondary-color: #786D80;
    --bs-border-color: #D8CEE0;
    --bs-primary: #422E59;
    --bs-primary-rgb: 66, 46, 89;
    --bs-link-color: #422E59;
    --bs-link-hover-color: #634879;
    color-scheme: light;
    background: #F7F4F9;
    color: var(--text-main);
    direction: inherit;
    text-align: start;
    font-family: 'Cairo', sans-serif;
}
html[lang='en'] body.cofibit-public { font-family: 'Montserrat', 'Segoe UI', sans-serif; }
.cofibit-public :is(button,input,select,textarea) { font-family: inherit; }
.cofibit-public .hero-header-wrap {
    background: #422E59;
    border-bottom: 1px solid rgba(182,167,210,.34);
}
.cofibit-public .modern-nav { overflow: visible; }
.cofibit-public .modern-nav-main { min-height: 92px; padding: 12px 0; gap: 18px; }
.cofibit-public :is(.brand-mini,.public-brand-mini,.landing-brand-link) {
    background: #FFFFFF;
    border: 1px solid #B6A7D2;
    border-radius: 14px;
    padding: 6px 14px;
    box-shadow: none;
}
.cofibit-public :is(.brand-mini-logo,.public-brand-mini-logo,.landing-brand-logo) {
    width: 82px; height: 62px; object-fit: contain; filter: none; margin: 0;
}
.cofibit-public .brand-mini-name { color: #422E59; font-size: .75rem; letter-spacing: 0; }
.cofibit-public .nav-strip-inline { color: #EEE7F5; gap: 18px; font-size: .78rem; padding: 0; }
.cofibit-public .nav-strip-inline i { color: #B6A7D2; }
.cofibit-public .btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 9px;
    min-height: 44px; border-radius: 12px; font-weight: 700;
    white-space: normal; line-height: 1.65; box-shadow: none;
}
.cofibit-public .btn-main {
    color: #FFFFFF; background: #422E59; border: 1px solid #422E59;
}
.cofibit-public .btn-main:hover { background: #52396A; border-color: #52396A; filter: none; transform: none; }
.cofibit-public .hero-header-wrap :is(.btn-main,.public-language-toggle,.modern-nav-mobile-toggle) {
    color: #FFFFFF; background: rgba(255,255,255,.06); border: 1px solid rgba(182,167,210,.48);
}
.cofibit-public .hero-header-wrap .nav-cta-btn { background: #B6A7D2; color: #30213F; border-color: #B6A7D2; }
.cofibit-public .hero-header-wrap :is(.btn-main,.public-language-toggle):hover {
    background: #FFFFFF; color: #422E59; border-color: #FFFFFF;
}
.cofibit-public .hero-merged-bg { background: none; }
.cofibit-public .hero-merged-bg::after { display: none; }
.cofibit-public .modern-hero {
    padding: 68px 0 76px;
    background: radial-gradient(ellipse at 15% 20%, rgba(157,125,174,.25), transparent 58%), #422E59;
    color: #FFFFFF; border-radius: 0 0 36px 36px;
}
.cofibit-public .modern-hero::before { background: none; }
.cofibit-public .hero-kicker {
    display: inline-flex; align-items: center; gap: 9px; padding: 7px 16px;
    margin-bottom: 20px; border: 1px solid rgba(182,167,210,.48);
    border-radius: 999px; color: #EEE7F5; background: rgba(255,255,255,.05);
    font-size: .85rem; font-weight: 600;
}
.cofibit-public .modern-hero .headline {
    color: #FFFFFF; background: none; -webkit-text-fill-color: currentColor;
    font-size: clamp(2rem,4.1vw,3.5rem); font-weight: 900; line-height: 1.45;
    letter-spacing: normal; margin-inline: auto; max-width: 900px;
}
.cofibit-public .modern-hero .lead { color: #E8DFF0; font-size: 1.04rem; line-height: 2; max-width: 760px; margin-inline: auto; }
.cofibit-public .hero-actions .btn-main { background: #B6A7D2; border-color: #B6A7D2; color: #30213F; }
.cofibit-public .hero-actions .btn-outline-primary { color: #FFFFFF; border: 1px solid #9D7DAE; background: transparent; }
.cofibit-public .hero-actions .btn:hover { background: #FFFFFF; border-color: #FFFFFF; color: #422E59; }
.cofibit-public :is(.public-glass-shell,.public-statistics-shell,.registered-coffee-showcase,.public-erp-shell) {
    background: #FFFFFF !important; border: 1px solid #D8CEE0 !important;
    box-shadow: 0 12px 30px rgba(66,46,89,.06) !important;
    backdrop-filter: none; -webkit-backdrop-filter: none; border-radius: 22px;
}
.cofibit-public :is(.public-section-title,.registered-coffee-copy h2,.public-statistics-heading h2) { color: #422E59 !important; }
.cofibit-public :is(.public-section-description,.registered-coffee-copy p,.public-statistics-heading p) { color: #786D80 !important; }
.cofibit-public :is(.public-section-kicker,.public-statistics-kicker,.registered-coffee-kicker) { color: #422E59; background: #F0EBF3; border-color: #D8CEE0; }
.cofibit-public :is(.public-stat-card,.feature-card,.feature-bento-card,.erp-feature-card,.public-erp-section .bg-white,.public-erp-fallback-section .bg-white) {
    background: #FBF9FC !important; border: 1px solid #E8E0ED !important;
    color: #30243A; box-shadow: none !important; border-radius: 18px;
}
.cofibit-public :is(.public-stat-value,.public-stat-icon,.public-stat-label,.text-primary-custom) { color: #422E59 !important; background-image: none; -webkit-text-fill-color: currentColor; }
.cofibit-public :is(.public-stat-icon,.feature-icon,.package-badge-icon) { background: #F0EBF3; color: #422E59; border-color: #D8CEE0; }
.cofibit-public .text-muted { color: #786D80 !important; }
.cofibit-public .public-statistics-shell { padding: 30px; }
.cofibit-public :is(.landing-overview-card,.landing-overview-card--shared,.marketing-feature-card,.package-card,.trial-teaser,.register-card) {
    background: #FFFFFF !important; border: 1px solid #D8CEE0 !important;
    color: #30243A !important; box-shadow: 0 8px 24px rgba(66,46,89,.06) !important;
    border-radius: 22px;
}
.cofibit-public :is(.landing-overview-card::before,.package-card::before,.public-statistics-shell::before) { background: none; }
.cofibit-public :is(.landing-overview-copy h3,.public-pricing-title,.package-card h4) { color: #422E59 !important; }
.cofibit-public :is(.landing-overview-copy p,.public-pricing-description,.public-pricing-features) { color: #786D80 !important; }
.cofibit-public .landing-overview-media { background: #F0EBF3; border-color: #D8CEE0; }
.cofibit-public .pricing-discount-badge { background: #F0EBF3; color: #422E59; }
.cofibit-public .package-badge-icon { color: #422E59 !important; background: #EEE7F5 !important; box-shadow: none; }
.cofibit-public .site-footer { background: #422E59; color: #FFFFFF; border-top: 1px solid #9D7DAE; margin-top: 24px; }
.cofibit-public :is(.site-footer-brand,.footer-title,.site-footer strong) { color: #FFFFFF; }
.cofibit-public :is(.site-footer-text,.site-footer-link,.site-footer-copyright,.site-footer-social a) { color: #E8DFF0; }
.cofibit-public .site-footer-link:hover { color: #FFFFFF; }
.cofibit-public .site-footer-icon { color: #B6A7D2; background: rgba(255,255,255,.08); }
.cofibit-public .site-footer-divider { border-color: rgba(182,167,210,.38); }
.cofibit-public .site-footer-payments-wrap { background: #FFFFFF; border: 1px solid #B6A7D2; padding: 12px 20px; border-radius: 14px; }
.cofibit-public .site-footer-pay { filter: none; }
.cofibit-public :is(.modal-content,.public-status-modal,.landing-status-modal) {
    background: #FFFFFF !important; color: #30243A !important; border: 1px solid #D8CEE0 !important;
    border-radius: 22px; box-shadow: 0 24px 64px rgba(66,46,89,.2) !important;
}
.cofibit-public .modal :is(h3,h4,label,.public-status-title,.public-status-strong) { color: #422E59 !important; }
.cofibit-public .modal :is(p,.public-status-text,.public-status-meta) { color: #786D80 !important; }
.cofibit-public :is(.form-control,.form-select) { background: #FFFFFF !important; color: #30243A !important; border: 1px solid #D8CEE0 !important; text-align: start; }
.cofibit-public :is(.form-control,.form-select):focus { border-color: #9D7DAE !important; box-shadow: 0 0 0 .2rem rgba(157,125,174,.18); }
.cofibit-public .form-check-input:checked { background-color: #422E59; border-color: #422E59; }
.cofibit-public .btn-close { filter: none; }
.cofibit-public .google-signup-btn { background: #FFFFFF; color: #422E59; border: 1px solid #D8CEE0; }
.cofibit-public .public-message-alert { background: #F0EBF3; color: #422E59; }
.cofibit-public .landing-whatsapp-float { color: #FFFFFF; background: #422E59; border: 1px solid #9D7DAE; box-shadow: 0 8px 26px rgba(66,46,89,.18); }
.cofibit-public .modern-nav-mobile-menu { background: #422E59 !important; border: 1px solid #9D7DAE; border-radius: 16px; box-shadow: 0 18px 44px rgba(66,46,89,.22); }
.cofibit-public :is(a,button,input,select,textarea):focus-visible { outline: 3px solid #B6A7D2; outline-offset: 3px; }
@media (max-width: 1199.98px) { .cofibit-public .nav-strip-inline { display: none; } .cofibit-public .modern-nav-main { grid-template-columns: auto 1fr; } }
@media (max-width: 767.98px) {
    .cofibit-public .modern-nav-main { padding: 10px 2px; min-height: 80px; }
    .cofibit-public .modern-hero { padding: 40px 0 46px; border-radius: 0 0 24px 24px; }
    .cofibit-public .modern-hero .headline { font-size: 2rem; }
    .cofibit-public .modern-hero .lead { font-size: .95rem; line-height: 1.95; }
    .cofibit-public .hero-kicker { font-size: .75rem; }
    .cofibit-public .hero-actions { display: grid; grid-template-columns: 1fr; width: 100%; }
    .cofibit-public .hero-actions .btn { width: 100%; }
    .cofibit-public .public-statistics-shell { padding: 22px 14px; }
    .cofibit-public .public-stat-value { font-size: clamp(1.3rem,5vw,1.8rem); }
    .cofibit-public .modern-nav-mobile-flyout { justify-self: end; }
    .cofibit-public .modal-dialog { margin: 12px; }
}
@media (prefers-reduced-motion: reduce) {
    .cofibit-public *, .cofibit-public *::before, .cofibit-public *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
