/* ===== FalconX v2: logo + block system styles ===== */
.logo-full{display:block;width:auto;height:40px;max-width:240px;object-fit:contain}
@media(max-width:600px){.nav-inner .logo-full{max-width:150px;height:auto!important;max-height:34px}}

/* bilingual visibility for any block (Ngôn ngữ hiển thị) */
html[lang="en"] .fx-only-vi,html:not([lang="en"]) .fx-only-en{display:none!important}

/* section style options */
.fx-blocks>.section:first-child:not(.hero){padding-top:72px}
.section.fx-no-top{padding-top:0}
.fx-bg-alt{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fx-bg-glow{background:radial-gradient(800px 420px at 50% 100%,rgba(225,29,44,.22),transparent 60%),var(--bg2);border-top:1px solid var(--line)}
.hero .fx-net{position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:.8}
[data-fx-modal]{cursor:pointer}
[data-fx-modal]:focus-visible{outline:2px solid var(--red2);outline-offset:3px}

/* free section */
.fx-free-body>*:first-child{margin-top:0}

/* generic cards */
.fx-cards{display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}
.fx-cards.fx-cols-2{grid-template-columns:repeat(2,1fr)}
.fx-cards.fx-cols-4{grid-template-columns:repeat(4,1fr)}
.fx-cards>.card{cursor:default}
.fx-cards>[data-fx-modal].card{cursor:pointer}
.fx-card-link{display:inline-block;margin-top:12px;font-size:13.5px;font-weight:700;color:#fff}
.fx-card-link:hover{color:var(--red2)}

/* media + text */
.fx-mt{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.fx-mt.img-left .fx-mt-text{order:2}
.fx-mt h2{font-size:36px;margin:12px 0 14px}
.fx-mt-media img,.fx-mt-media video,.fx-embed{width:100%;border-radius:20px;border:1px solid var(--line2);box-shadow:0 30px 70px rgba(0,0,0,.4)}
.fx-embed{overflow:hidden;aspect-ratio:16/9}
.fx-embed iframe{width:100%;height:100%;border:0}
.fx-media-ph{aspect-ratio:4/3;border-radius:20px;border:1px dashed var(--line2);background:linear-gradient(135deg,var(--panel),var(--bg2));display:flex;align-items:center;justify-content:center;color:var(--red2)}
.fx-media-ph svg{width:72px;height:72px;opacity:.6}
.fx-checks{list-style:none;margin:18px 0 0;display:grid;gap:9px;padding:0}
.fx-checks li{display:flex;gap:10px;font-size:15px}
.fx-checks li::before{content:"\2713";color:var(--green);font-weight:800}

/* stats */
.fx-stats{margin:0 auto;grid-template-columns:repeat(var(--fx-n,3),1fr)}

/* FAQ */
.fx-faq{display:grid;gap:12px}
.fx-faq-item{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:14px;transition:.2s}
.fx-faq-item[open]{border-color:rgba(255,90,99,.45);background:rgba(255,255,255,.055)}
.fx-faq-item summary{cursor:pointer;list-style:none;padding:18px 52px 18px 22px;font-weight:700;color:#fff;font-size:16.5px;position:relative}
.fx-faq-item summary::-webkit-details-marker{display:none}
.fx-faq-item summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--red2)}
.fx-faq-item[open] summary::after{content:"\2013"}
.fx-faq-a{padding:0 22px 20px;color:var(--muted);font-size:15px}

/* logos */
.fx-logo-row{display:flex;flex-wrap:wrap;gap:34px;justify-content:center;align-items:center}
.fx-logo img{height:38px;width:auto;max-width:150px;object-fit:contain;transition:.2s}
.fx-logos.is-gray .fx-logo img{filter:grayscale(1) brightness(1.6);opacity:.65}
.fx-logos.is-gray .fx-logo:hover img{filter:none;opacity:1}

/* pricing */
.fx-pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;align-items:stretch}
.fx-plan{position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--panel),var(--bg2));border:1px solid var(--line);border-radius:20px;padding:30px 28px}
.fx-plan.is-featured{border-color:rgba(255,90,99,.6);box-shadow:0 24px 60px rgba(225,29,44,.18)}
.fx-plan-badge{position:absolute;top:20px;right:20px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:20px;background:var(--redsoft);color:var(--red2)}
.fx-plan h3{font-size:20px;color:#fff}
.fx-price{margin:14px 0 8px;display:flex;align-items:baseline;gap:6px}
.fx-price b{font-size:34px;font-weight:900;color:#fff;letter-spacing:-.02em}
.fx-price span{color:var(--muted);font-size:14px}
.fx-plan>p{color:var(--muted);font-size:14.5px}
.fx-plan .fx-checks{margin-bottom:24px}
.fx-plan .btn{margin-top:auto;justify-content:center}

/* testimonials */
.fx-quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.fx-quote{margin:0;background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:22px}
.fx-quote blockquote{margin:0;font-size:16.5px;color:var(--ink);line-height:1.65;position:relative;padding-top:26px}
.fx-quote blockquote::before{content:"\201C";position:absolute;top:-14px;left:-4px;font-size:64px;color:var(--red2);font-weight:900;line-height:1}
.fx-quote figcaption{display:flex;gap:12px;align-items:center;font-size:14px}
.fx-quote figcaption img,.fx-quote-av{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}
.fx-quote-av{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--red),var(--red3));color:#fff;font-weight:800}
.fx-quote figcaption b{display:block;color:#fff}
.fx-quote figcaption span span{color:var(--muted);font-size:13px}

/* contact form */
.fx-contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.fx-contact h2{font-size:36px;margin:12px 0 14px}
.fx-contact-mail{display:flex;gap:8px;align-items:center;margin-top:24px;color:var(--muted)}
.fx-contact-mail svg{color:var(--red2)}
.fx-contact-mail a:hover{color:#fff}
.fx-form{position:relative;background:rgba(255,255,255,.04);border:1px solid var(--line2);border-radius:20px;padding:28px;display:grid;gap:14px;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.fx-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fx-field{display:grid;gap:6px;font-size:13.5px;font-weight:600;color:var(--muted)}
.fx-field input,.fx-field select,.fx-field textarea{width:100%;background:rgba(255,255,255,.05);border:1px solid var(--line2);border-radius:10px;color:#fff;padding:11px 13px;font-size:15px;outline:none;transition:.15s}
.fx-field select option{background:#0F2040}
.fx-field input:focus,.fx-field select:focus,.fx-field textarea:focus{border-color:var(--red2);box-shadow:0 0 0 3px rgba(225,29,44,.18)}
.fx-form .btn{justify-content:center}
.fx-form .btn[disabled]{opacity:.6;cursor:wait}
.fx-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.fx-form-msg.is-err{color:var(--red2);font-size:14px}
.fx-form-ok{background:rgba(61,214,140,.12);border:1px solid rgba(61,214,140,.4);color:var(--green);border-radius:12px;padding:12px 14px;font-weight:600}
.fx-form.is-sent .fx-form-grid,.fx-form.is-sent .fx-field,.fx-form.is-sent button{display:none}
.fx-form-note{font-size:12.5px;color:var(--faint)}

@media(max-width:980px){
  .fx-cards,.fx-cards.fx-cols-4{grid-template-columns:1fr 1fr}
  .fx-mt,.fx-contact{grid-template-columns:1fr;gap:30px}
  .fx-mt.img-left .fx-mt-text{order:0}
  .fx-stats{grid-template-columns:1fr 1fr}
  .fx-mt h2,.fx-contact h2{font-size:29px}
}
@media(max-width:600px){
  .fx-cards,.fx-cards.fx-cols-2,.fx-cards.fx-cols-4,.fx-form-grid,.fx-stats{grid-template-columns:1fr}
}

/* product cards: keep the kicker clear of the status pill */
.prod .pill+.k{max-width:calc(100% - 128px);line-height:1.35}

/* loop diagram: a bit larger, same two-column layout */
.loop-wrap{grid-template-columns:1.22fr .78fr;gap:32px}
.loop-svg{max-width:760px}
@media(max-width:980px){.loop-wrap{grid-template-columns:1fr}.loop-svg{max-width:640px}}
