/* === BASE === */
.page{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;background:#fff}
.header{background:rgba(255,255,255,0.92);backdrop-filter:blur(12px);position:sticky;top:0;z-index:100;height:72px;box-shadow:0 1px 3px rgba(0,0,0,0.04)}
.logo{height:38px!important;width:auto!important;object-fit:contain!important;cursor:pointer!important}
.nav-area{flex:1;display:flex;justify-content:center}
.nav-links{gap:32px}
.nav-link{cursor:pointer;font-size:17px;color:#111827!important;font-weight:500;white-space:nowrap}
.nav-link:hover{color:#1e6fff!important}
.nav-link.active{color:#1e6fff!important;font-weight:600}
.products-menu{position:relative}
.products-dropdown{display:none;position:absolute;top:100%;left:-16px;background:#fff;border-radius:12px;box-shadow:0 8px 40px rgba(0,0,0,0.12);padding:8px 0;min-width:160px;z-index:200;flex-direction:column}
.products-menu:hover .products-dropdown{display:flex}
.dropdown-item{cursor:pointer;font-size:16px;color:#111827!important;padding:10px 20px!important;white-space:nowrap}
.dropdown-item:hover{background:#f3f4f6!important}
.header-actions{gap:12px}
.theme-btn{background:transparent!important;border:1px solid #d1d5db!important;color:#111827!important;padding:6px 10px!important;border-radius:8px!important;font-size:16px!important;cursor:pointer!important;min-width:36px}
.theme-btn:hover{background:#f3f4f6!important}
.lang-btn{background:transparent!important;border:1px solid #d1d5db!important;color:#1e6fff!important;padding:6px 12px!important;border-radius:6px!important;font-size:15px!important;cursor:pointer!important;font-weight:500}
.lang-btn:hover{background:#eff6ff!important}
.login-pill{background:#000!important;color:#fff!important;border:none!important;padding:8px 22px!important;border-radius:99px!important;font-size:16px!important;font-weight:600!important;cursor:pointer!important}
.login-pill:hover{background:#1f2937!important}

/* === HERO === */
.hero{background:linear-gradient(180deg,#f0f7ff 0%,#fff 60%,#f5f8ff 100%)!important;min-height:520px;justify-content:center!important}
.hero-title{font-size:56px!important;font-weight:800!important;line-height:1.15!important;color:#111827!important;text-align:center!important;max-width:800px}
.hero-sub{font-size:22px!important;color:#4b5563!important;text-align:center!important}
.hero-btn-primary{background:#000!important;color:#fff!important;border:none!important;padding:14px 32px!important;border-radius:99px!important;font-size:16px!important;font-weight:600!important;cursor:pointer!important}
.hero-btn-primary:hover{background:#1f2937!important}
.hero-btn-outline{background:transparent!important;color:#111827!important;border:2px solid #d1d5db!important;padding:14px 32px!important;border-radius:99px!important;font-size:16px!important;font-weight:600!important;cursor:pointer!important}
.hero-btn-outline:hover{background:#f3f4f6!important}

/* === SECTION === */
.section{background:#fff!important}
.section-alt{background:#f8faff!important}
.section-title{font-size:32px!important;font-weight:700!important;color:#111827!important;text-align:left!important}

/* === CAROUSEL widget sizing === */
.carousel-widget{width:100%!important;overflow:visible!important}

/* === CARD TEXT helpers === */
.card-icon{font-size:44px!important;text-align:center!important}
.card-title{font-size:22px!important;font-weight:700!important;color:#111827!important;text-align:center!important}
.card-title-white{font-size:20px!important;font-weight:700!important;color:#fff!important;text-align:center!important}
.card-text-white{font-size:14px!important;color:rgba(255,255,255,0.9)!important;line-height:1.6!important;text-align:center!important}

/* === CAROUSEL LAYOUT === */
.carousel-container{position:relative;width:100%;height:460px;display:flex;align-items:center;justify-content:center;overflow:visible}
.carousel-track{position:relative!important;width:100%;height:100%;display:block!important}
.carousel-card{position:absolute!important;width:280px!important;height:360px!important;transition:all .5s cubic-bezier(.4,0,.2,1);cursor:pointer;transform-origin:center center;perspective:1000px}

/* === CARD FLIP === */
.cs-card-inner{position:relative!important;width:100%!important;height:100%!important;transition:transform .6s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}
.cs-card.flipped .cs-card-inner{transform:rotateY(180deg)}
.cs-card-front,.cs-card-back{position:absolute!important;width:100%!important;height:100%!important;backface-visibility:hidden;-webkit-backface-visibility:hidden;top:0;left:0;border-radius:16px;overflow:hidden}
.cs-card-back{transform:rotateY(180deg)}
.cs-card-front{background:#fff;box-shadow:0 18px 54px rgba(90,60,160,0.1),0 4px 16px rgba(90,60,160,0.05);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;gap:16px}
.cs-card-back{background:#3b82f6;box-shadow:0 18px 54px rgba(59,130,246,0.2);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:16px}

/* === CASE FLIP === */
.case-cards{display:flex;justify-content:center;gap:24px;flex-wrap:wrap}
.case-flip{perspective:1000px;height:460px;cursor:pointer;width:350px!important;flex-shrink:0}
.case-flip-inner{position:relative!important;width:100%!important;height:100%!important;transition:transform .6s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}
.case-flip:hover .case-flip-inner{transform:rotateY(180deg)}
.case-flip-front,.case-flip-back{position:absolute!important;width:100%!important;height:100%!important;backface-visibility:hidden;-webkit-backface-visibility:hidden;top:0;left:0;border-radius:16px;overflow:hidden}
.case-flip-back{transform:rotateY(180deg)}
.case-flip-front{background:#fff;box-shadow:0 4px 24px rgba(0,0,0,0.06);display:flex;flex-direction:column}
.case-flip-back{background:#111827;box-shadow:0 4px 24px rgba(0,0,0,0.15);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;gap:16px}

/* === CASE FLIP overrides === */
.case-flip-widget{width:380px!important;height:460px!important}
.case-img{width:100%!important;height:220px!important;object-fit:cover!important}
.case-name{font-size:22px!important;font-weight:700!important;color:#111827!important;padding:16px 20px 0!important}
.case-client{font-size:15px!important;color:#3b82f6!important;font-weight:600!important;padding:4px 20px!important}
.case-desc{font-size:14px!important;color:#6b7280!important;line-height:1.6!important;padding:8px 20px 20px!important}
.case-back-title{font-size:26px!important;font-weight:700!important;color:#fff!important;text-align:center!important}
.case-back-desc{font-size:15px!important;color:rgba(255,255,255,0.85)!important;line-height:1.8!important;text-align:center!important}

/* === CTA === */
.cta{background:linear-gradient(135deg,#f0f7ff,#eff6ff)!important}
.cta-title{font-size:34px!important;font-weight:700!important;color:#111827!important;text-align:center!important}
.cta-sub{font-size:18px!important;color:#4b5563!important;text-align:center!important}

/* === NEWS === */
.view-more{cursor:pointer;font-size:16px;color:#1e6fff!important;font-weight:500}
.news-card{background:#fff;border-radius:12px;padding:28px!important;box-shadow:0 2px 12px rgba(0,0,0,0.04);flex:1}
.news-title{font-size:20px!important;font-weight:700!important;color:#111827!important;line-height:1.4!important}
.news-desc{font-size:15px!important;color:#6b7280!important;line-height:1.6!important}
.news-date{font-size:13px!important;color:#9ca3af!important}

/* === FOOTER === */
.footer{background:#111827!important;color:#fff}
.footer-logo{height:32px!important;width:auto!important;object-fit:contain!important}
.footer-tagline{font-size:14px!important;color:rgba(255,255,255,0.5)!important}
.footer-heading{font-size:16px!important;color:#fff!important;font-weight:600!important}
.footer-link{font-size:14px!important;color:rgba(255,255,255,0.6)!important;cursor:pointer}
.footer-link:hover{color:#fff!important}
.footer-copyright{font-size:12px!important;color:rgba(255,255,255,0.35)!important;margin-top:8px!important}
.footer-consult{cursor:pointer!important;color:#60a5fa!important}
.footer-consult:hover{color:#93c5fd!important}
.footer-qr{width:100px!important;height:100px!important;object-fit:contain!important}
.footer-qr-label{font-size:12px!important;color:rgba(255,255,255,0.5)!important}

/* === ICP BAR === */
.footer-icp-bar{background:#0a0a1a!important}
.footer-icp-link{font-size:12px!important;color:rgba(255,255,255,0.35)!important;cursor:pointer!important}
.footer-icp-link:hover{color:rgba(255,255,255,0.6)!important}
.footer-icp-text{font-size:12px!important;color:rgba(255,255,255,0.25)!important;margin-left:12px!important}
[data-theme="dark"] .footer-icp-bar{background:#000!important}

/* === CONTACT MODAL === */
.contact-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.4)}
.contact-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:16px;padding:32px;width:380px;max-width:90vw;box-shadow:0 20px 60px rgba(0,0,0,0.2);z-index:10000}

/* === FLOATING CHAT === */
.float-chat{position:fixed!important;bottom:32px;right:24px;z-index:999;cursor:pointer!important;align-items:center!important}
.float-chat-avatar{width:56px!important;height:56px!important;border-radius:50%!important;object-fit:cover!important;box-shadow:0 4px 16px rgba(0,0,0,0.15)}
.float-chat-label{font-size:11px!important;color:#6b7280!important;text-align:center!important}

/* ===== DARK THEME ===== */
[data-theme="dark"] .page{background:#0f172a}
[data-theme="dark"] .header{background:rgba(15,23,42,0.92)!important;box-shadow:0 1px 3px rgba(0,0,0,0.3)}
[data-theme="dark"] .nav-link{color:#94a3b8!important}
[data-theme="dark"] .nav-link:hover{color:#60a5fa!important}
[data-theme="dark"] .nav-link.active{color:#60a5fa!important}
[data-theme="dark"] .theme-btn{color:#94a3b8!important;border-color:#334155!important}
[data-theme="dark"] .lang-btn{color:#60a5fa!important;border-color:#334155!important}
[data-theme="dark"] .login-pill{background:#f1f5f9!important;color:#0f172a!important}
[data-theme="dark"] .hero{background:linear-gradient(180deg,#0f172a 0%,#1e293b 60%,#0f172a 100%)!important}
[data-theme="dark"] .hero-title{color:#f1f5f9!important}
[data-theme="dark"] .hero-sub{color:#94a3b8!important}
[data-theme="dark"] .hero-btn-primary{background:#f1f5f9!important;color:#0f172a!important}
[data-theme="dark"] .hero-btn-outline{color:#f1f5f9!important;border-color:#475569!important}
[data-theme="dark"] .section{background:#0f172a!important}
[data-theme="dark"] .section-alt{background:#1e293b!important}
[data-theme="dark"] .section-title{color:#f1f5f9!important}
[data-theme="dark"] .products-dropdown{background:#1e293b;box-shadow:0 8px 40px rgba(0,0,0,0.4)}
[data-theme="dark"] .dropdown-item{color:#e2e8f0!important}
[data-theme="dark"] .dropdown-item:hover{background:#334155!important}
[data-theme="dark"] .card-title{color:#f1f5f9!important}
[data-theme="dark"] .case-name{color:#f1f5f9!important}
[data-theme="dark"] .case-desc{color:#94a3b8!important}
[data-theme="dark"] .cta{background:#1e293b!important}
[data-theme="dark"] .cta-title{color:#f1f5f9!important}
[data-theme="dark"] .cta-sub{color:#94a3b8!important}
[data-theme="dark"] .news-card{background:#1e293b;box-shadow:0 2px 12px rgba(0,0,0,0.2)}
[data-theme="dark"] .news-title{color:#f1f5f9!important}
[data-theme="dark"] .news-desc{color:#94a3b8!important}
[data-theme="dark"] .footer{background:#020617!important}
[data-theme="dark"] .cs-card-front{background:#1e293b;box-shadow:0 18px 54px rgba(0,0,0,0.3)}
[data-theme="dark"] .cs-card-back{background:#3b82f6}
[data-theme="dark"] .case-flip-front{background:#1e293b;box-shadow:0 4px 24px rgba(0,0,0,0.2)}
