/* Production font contract: keep typography identical even when a view omits
   its own font tags. This import must remain before all Tailwind directives. */
@import url('https://fonts.bunny.net/css?family=poppins:300,400,500,600,700|sora:500,600,700,800|space-grotesk:500,600,700|tajawal:400,500,700,800,900&display=swap');

@tailwind base;
@tailwind components;
@tailwind utilities;

/* Universal premium course landing — mirrors the IPC diploma visual system. */
.qfa-universal-landing{--ul-red:#fa1225;--ul-dark:#111827;--ul-ink:#172033;--ul-muted:#64748b;--ul-line:#e2e8f0;--ul-soft:#f5f7fa;background:#fff;color:var(--ul-muted);padding-bottom:74px}.qfa-universal-landing *{box-sizing:border-box}.ul-nav{height:76px;padding:0 max(5vw,24px);display:flex;align-items:center;gap:35px;border-bottom:1px solid var(--ul-line);background:#fff;position:relative;z-index:10}.ul-logo img{width:130px;max-height:52px;object-fit:contain}.ul-nav nav{display:flex;gap:28px;margin-inline:auto;font-size:13px;font-weight:800;color:var(--ul-ink)}.ul-nav nav a:hover{color:var(--ul-red)}.ul-whatsapp{background:#25d366;color:#fff;padding:10px 18px;border-radius:999px;font-size:12px;font-weight:900}.ul-hero{background:linear-gradient(135deg,#0d1422 0%,#172033 65%,#24151a 100%);color:#fff;padding:84px max(7vw,30px);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:6vw;align-items:center;min-height:680px}.ul-hero-copy{max-width:790px}.ul-kicker{display:inline-block;color:#ff5260;font-size:12px;font-weight:900;letter-spacing:1.4px;text-transform:uppercase}.ul-cobrand{display:flex;align-items:center;gap:20px;margin:24px 0 5px;min-height:70px}.ul-cobrand img{height:66px;max-width:210px;object-fit:contain}.ul-cobrand span{color:#d5ad5b;font-size:28px}.ul-cobrand b{font-size:18px;color:#fff}.ul-partner-line{font-size:12px;color:#cbd5e1;margin-bottom:18px}.ul-hero h1{font-size:clamp(38px,5vw,66px);line-height:1.28;font-weight:950;color:#fff;margin:14px 0}.ul-hero h1 small{display:block;color:#aeb8c8;font-size:18px;direction:ltr;text-align:right;margin-top:10px;letter-spacing:.4px}.ul-lead{font-size:17px;line-height:2;color:#d6deea;max-width:720px}.ul-checklist{display:grid;gap:11px;margin:22px 0}.ul-checklist li{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:700;color:#f8fafc}.ul-checklist li span,.ul-invest li span{width:21px;height:21px;display:inline-grid;place-items:center;border-radius:50%;background:rgba(250,18,37,.15);color:#ff5260;flex:none}.ul-urgency{display:inline-flex;background:var(--ul-red);padding:7px 14px;border-radius:5px;font-size:11px;font-weight:900}.ul-hero-price{display:flex;align-items:center;flex-wrap:wrap;gap:15px;background:#fff;color:var(--ul-ink);border-radius:14px;padding:16px;margin-top:16px;max-width:620px}.ul-hero-price>div{display:grid;gap:3px;padding:0 12px}.ul-hero-price small{color:#64748b;font-size:10px;font-weight:800}.ul-hero-price del{color:#94a3b8;font-size:17px;font-weight:800;text-decoration-color:var(--ul-red);text-decoration-thickness:2px}.ul-hero-price strong{font-size:30px;font-weight:950}.ul-hero-price>span{background:#fff5dc;color:#8a5a08;border:1px solid #f6d889;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900}.ul-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.ul-primary,.ul-secondary{padding:13px 22px;border-radius:10px;font-size:13px;font-weight:900;display:inline-flex;justify-content:center}.ul-primary{background:var(--ul-red);color:#fff;box-shadow:0 10px 28px rgba(250,18,37,.3)}.ul-secondary{border:1px solid #64748b;color:#fff}.ul-hero-panel{background:#fff;border:1px solid #d7c18b;border-radius:24px;color:var(--ul-ink);padding:34px 28px;text-align:center;box-shadow:0 22px 60px rgba(0,0,0,.28),inset 0 0 0 9px #fff;outline:1px dashed #d8ba73;outline-offset:-12px}.ul-hero-panel>span{display:inline-block;background:var(--ul-red);color:#fff;border-radius:999px;padding:6px 12px;font-size:10px;font-weight:900}.ul-seal{width:125px;height:125px;border:8px solid #d5ad5b;border-radius:50%;margin:28px auto 20px;display:grid;place-items:center;font-size:38px;font-weight:950;color:var(--ul-red);box-shadow:0 12px 28px rgba(138,106,45,.2)}.ul-seal small{font-size:7px;color:#475569;display:block}.ul-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.ul-stats div{background:var(--ul-soft);border:1px solid var(--ul-line);border-radius:10px;padding:14px 5px}.ul-stats b,.ul-stats small{display:block}.ul-stats b{font-size:21px;color:var(--ul-ink)}.ul-stats small{font-size:9px;margin-top:4px}.ul-countdown{margin-top:20px;border-top:1px solid var(--ul-line);padding-top:15px}.ul-countdown p{font-size:10px;font-weight:800}.ul-countdown>div{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:7px}.ul-countdown b{font-size:17px;color:var(--ul-red)}.ul-countdown span{font-size:8px}.ul-proof{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ul-soft);border-bottom:1px solid var(--ul-line);padding:28px max(6vw,25px)}.ul-proof div{padding:0 24px;border-left:1px solid var(--ul-line);position:relative}.ul-proof div:last-child{border:0}.ul-proof div:before{content:"";position:absolute;right:8px;top:5px;width:6px;height:6px;background:var(--ul-red);border-radius:50%}.ul-proof b,.ul-proof span{display:block}.ul-proof b{color:var(--ul-ink);font-size:13px}.ul-proof span{font-size:10px;margin-top:4px}.ul-section{padding:92px max(6vw,26px)}.ul-soft{background:var(--ul-soft)}.ul-heading{text-align:center;max-width:780px;margin:0 auto 50px}.ul-heading>span{color:var(--ul-red);font-size:11px;font-weight:950;letter-spacing:1.4px}.ul-heading h2{font-size:clamp(31px,4vw,49px);line-height:1.4;margin:10px 0;color:var(--ul-ink);font-weight:950}.ul-heading p{line-height:1.9;font-size:15px}.ul-workshops,.ul-tools{max-width:1220px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ul-workshops article,.ul-tools article{background:#fff;border:1px solid var(--ul-line);border-radius:18px;padding:32px;position:relative;transition:.2s;box-shadow:0 4px 14px rgba(15,23,42,.04)}.ul-workshops article{min-height:290px}.ul-workshops article:hover,.ul-tools article:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(15,23,42,.1)}.ul-workshops em{position:absolute;top:0;left:0;background:var(--ul-red);color:#fff;border-radius:18px 0 10px 0;padding:7px 12px;font-size:9px;font-style:normal;font-weight:900}.ul-workshops i,.ul-tools i{width:55px;height:55px;border-radius:15px;background:var(--ul-soft);border:1px solid var(--ul-line);display:grid;place-items:center;color:var(--ul-red);font-style:normal;font-size:25px;margin:20px 0}.ul-workshops h3,.ul-tools h3{font-size:19px;color:var(--ul-ink);font-weight:900;margin-bottom:5px}.ul-workshops b{color:var(--ul-red);font-size:10px;direction:ltr;display:block;margin-bottom:10px}.ul-workshops p,.ul-tools p{font-size:13px;line-height:1.9}.ul-tools article{min-height:235px}.ul-tools em{position:absolute;left:22px;top:20px;font-style:normal;font-size:10px;font-weight:900;color:#94a3b8}.ul-modules{max-width:1050px;margin:auto;display:grid;gap:13px}.ul-modules details{background:#fff;border:1px solid var(--ul-line);border-radius:13px;overflow:hidden;box-shadow:0 3px 10px rgba(15,23,42,.04)}.ul-modules details[open]{border-color:#cbd5e1;box-shadow:0 10px 25px rgba(15,23,42,.08)}.ul-modules summary{display:grid;grid-template-columns:48px 1fr 25px;align-items:center;padding:20px;cursor:pointer;list-style:none}.ul-modules summary>span{color:var(--ul-red);font-weight:950}.ul-modules summary b,.ul-modules summary small{display:block}.ul-modules summary b{color:var(--ul-ink);font-size:16px}.ul-modules summary small{font-size:10px;direction:ltr;text-align:right;margin-top:4px}.ul-modules summary i{font-style:normal;font-size:20px}.ul-modules ul{margin:0 68px 22px 20px;padding-right:18px;border-right:2px solid var(--ul-line);display:grid;gap:8px;font-size:13px}.ul-modules li:before{content:"•";color:var(--ul-red);margin-left:8px}.ul-mentor{padding:88px max(9vw,30px);display:grid;grid-template-columns:230px 1fr;gap:55px;align-items:center}.ul-avatar{width:220px;height:220px;border-radius:50%;overflow:hidden;border:1px solid var(--ul-line);box-shadow:0 15px 38px rgba(15,23,42,.15),0 0 0 7px var(--ul-soft);display:grid;place-items:center;background:#fff}.ul-avatar img{width:100%;height:100%;object-fit:cover}.ul-avatar span{font-size:70px;font-weight:950;color:var(--ul-red)}.ul-mentor h2{font-size:39px;margin:10px 0;color:var(--ul-ink)}.ul-mentor>div>p{color:var(--ul-red);font-weight:800;margin-bottom:18px}.ul-mentor ul{display:grid;gap:9px;line-height:1.8}.ul-mentor li:before{content:"✓";color:var(--ul-red);font-weight:900;margin-left:8px}.ul-register{background:#fff}.ul-register-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:6vw}.ul-invest h3,.ul-form h3{font-size:21px;color:var(--ul-ink);margin-bottom:20px}.ul-invest>ul{display:grid;gap:12px}.ul-invest>ul li{display:flex;gap:9px;align-items:center;color:var(--ul-ink);font-size:13px;font-weight:800}.ul-pricing-card{margin-top:27px;border:1px solid var(--ul-line);border-radius:17px;padding:22px;display:grid;gap:6px;box-shadow:0 8px 25px rgba(15,23,42,.07)}.ul-pricing-card>span{justify-self:start;background:#fff5dc;color:#8a5a08;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900}.ul-pricing-card small{font-size:10px;font-weight:800}.ul-pricing-card del{color:#94a3b8;font-weight:800}.ul-pricing-card strong{font-size:35px;color:var(--ul-ink);font-weight:950}.ul-pricing-card p{font-size:11px}.ul-payment{margin-top:18px;background:var(--ul-soft);border:1px solid var(--ul-line);padding:17px;border-radius:13px}.ul-payment h4{color:var(--ul-ink);font-weight:900;margin-bottom:10px}.ul-payment>div{padding:10px 0;border-top:1px dashed #cbd5e1}.ul-payment p,.ul-payment small{font-size:11px;line-height:1.8}.ul-payment strong,.ul-payment a{color:var(--ul-red);font-weight:900}.ul-form{border:1px solid var(--ul-line);border-radius:18px;padding:34px;box-shadow:0 15px 40px rgba(15,23,42,.1)}.ul-form label{display:grid;gap:6px;margin-bottom:14px;color:var(--ul-ink);font-size:11px;font-weight:900}.ul-form input,.ul-form select{width:100%;border:1px solid var(--ul-line);border-radius:9px;background:#fff;padding:13px;font-size:13px}.ul-form input:focus,.ul-form select:focus{border-color:var(--ul-red);box-shadow:0 0 0 4px rgba(250,18,37,.1);outline:0}.ul-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ul-form button{width:100%;background:var(--ul-red);color:#fff;border-radius:10px;padding:14px;font-weight:950;margin-top:5px}.ul-form>small{display:block;text-align:center;font-size:10px;margin-top:12px}.ul-errors{color:#b91c1c;background:#fff1f2;padding:10px;border-radius:8px;font-size:12px;margin-bottom:10px}.ul-faq{max-width:1040px;margin:auto}.ul-faq details{border-top:1px solid var(--ul-line);padding:20px 5px}.ul-faq details:last-child{border-bottom:1px solid var(--ul-line)}.ul-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;color:var(--ul-ink);font-weight:900}.ul-faq summary span{color:var(--ul-red);font-size:20px}.ul-faq p{font-size:13px;line-height:1.9;margin-top:12px}.ul-footer{background:#111827;color:#cbd5e1;padding:48px max(6vw,28px) 90px;display:flex;align-items:center;gap:30px}.ul-footer img{width:140px;filter:brightness(0) invert(1)}.ul-footer p{max-width:530px;font-size:12px}.ul-footer a{margin-right:auto;background:#25d366;color:#fff;padding:11px 17px;border-radius:999px;font-size:12px;font-weight:900}.ul-sticky{position:fixed;z-index:50;bottom:0;left:0;width:100%;height:74px;background:#fff;border-top:1px solid var(--ul-line);box-shadow:0 -5px 18px rgba(15,23,42,.08);display:flex;align-items:center;justify-content:space-between;padding:10px max(5vw,22px)}.ul-sticky>div{display:flex;align-items:center;gap:12px}.ul-sticky small{font-size:10px}.ul-sticky b{font-size:21px;color:var(--ul-ink)}.ul-sticky del{font-size:12px}.ul-sticky a{background:var(--ul-red);color:#fff;border-radius:9px;padding:11px 20px;font-weight:900;font-size:12px}
@media(max-width:900px){.ul-nav nav{display:none}.ul-hero{grid-template-columns:1fr;padding-top:55px}.ul-hero-panel{max-width:520px;width:100%;margin:auto}.ul-proof{grid-template-columns:1fr 1fr;gap:20px}.ul-proof div:nth-child(2){border:0}.ul-workshops,.ul-tools{grid-template-columns:1fr 1fr}.ul-register-grid{grid-template-columns:1fr}.ul-mentor{grid-template-columns:1fr;text-align:center}.ul-avatar{margin:auto}.ul-mentor ul{text-align:right}.ul-footer{flex-wrap:wrap}.ul-footer a{margin-right:0}}
@media(max-width:580px){.ul-nav{height:65px}.ul-logo img{width:105px}.ul-whatsapp{padding:8px 12px}.ul-hero{padding:45px 20px}.ul-hero h1{font-size:36px}.ul-hero h1 small{font-size:14px}.ul-cobrand{gap:12px}.ul-cobrand img{height:48px;max-width:135px}.ul-hero-price{align-items:flex-start}.ul-section{padding:66px 18px}.ul-workshops,.ul-tools{grid-template-columns:1fr}.ul-proof{padding:24px 15px}.ul-proof div{padding:0 15px}.ul-two{grid-template-columns:1fr}.ul-form{padding:23px 18px}.ul-mentor{padding:68px 22px}.ul-avatar{width:185px;height:185px}.ul-footer{display:grid}.ul-sticky b{font-size:17px}.ul-sticky del,.ul-sticky small{display:none}.ul-sticky a{padding:10px 14px}}

/* Universal landing refinements: clean QFA summary card and content-aware grids. */
.ul-workshops.ul-count-1,.ul-tools.ul-count-1{grid-template-columns:minmax(0,620px);justify-content:center}.ul-workshops.ul-count-2,.ul-tools.ul-count-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px}.ul-hero{background:radial-gradient(circle at 12% 20%,#fff1f2 0,transparent 34%),linear-gradient(135deg,#fff 0%,#f8fafc 100%);color:var(--ul-ink);border-bottom:1px solid var(--ul-line)}.ul-hero h1{color:var(--ul-ink)}.ul-hero h1 small,.ul-lead,.ul-partner-line{color:var(--ul-muted)}.ul-checklist li{color:var(--ul-ink)}.ul-secondary{border-color:#cbd5e1;color:var(--ul-ink);background:#fff}.ul-cobrand b{color:var(--ul-ink)}.ul-hero-summary{background:#fff;color:var(--ul-ink);border:1px solid var(--ul-line);outline:0;box-shadow:0 20px 50px rgba(15,23,42,.09);padding-top:28px}.ul-hero-summary>span{color:var(--ul-red);background:#fff1f2}.ul-hero-summary .ul-countdown{background:#f8fafc;border:1px solid var(--ul-line);border-radius:12px;padding:15px}.ul-hero-summary .ul-countdown p,.ul-hero-summary .ul-countdown span{color:var(--ul-muted)}
@media(max-width:900px){.ul-workshops.ul-count-1,.ul-tools.ul-count-1{grid-template-columns:minmax(0,620px)}.ul-workshops.ul-count-2,.ul-tools.ul-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.ul-workshops.ul-count-1,.ul-workshops.ul-count-2,.ul-tools.ul-count-1,.ul-tools.ul-count-2{grid-template-columns:1fr}}

/* FireShot 874 reference alignment. */
.qfa-universal-landing{--ul-red:#f4132d;--ul-ink:#202124;--ul-muted:#737982;--ul-line:#e9edf2;--ul-soft:#f7f8fa;font-family:"Tajawal","Cairo",system-ui,sans-serif}.ul-nav{height:68px;padding-inline:max(calc((100vw - 1180px)/2),24px);box-shadow:none}.ul-logo img{width:106px;max-height:40px}.ul-nav nav{font-size:11px;font-weight:700;gap:25px}.ul-hero{min-height:610px;padding:72px max(calc((100vw - 1180px)/2),24px);grid-template-columns:minmax(0,1.2fr) 310px;gap:76px;background:#fff}.ul-hero-copy{max-width:720px}.ul-kicker{font-size:10px;letter-spacing:.6px}.ul-hero h1{font-size:clamp(40px,4.2vw,58px);line-height:1.22;margin:10px 0 12px}.ul-hero h1 small{font-size:14px;margin-top:7px}.ul-lead{font-size:13px;line-height:1.9;max-width:650px}.ul-checklist{gap:8px;margin:17px 0}.ul-checklist li{font-size:12px;font-weight:700}.ul-checklist li span,.ul-invest li span{width:18px;height:18px;font-size:10px}.ul-urgency{font-size:9px;padding:6px 11px;border-radius:999px}.ul-hero-price{border:1px solid var(--ul-line);box-shadow:0 8px 24px rgba(15,23,42,.07);border-radius:10px;padding:13px;gap:10px;max-width:520px}.ul-hero-price strong{font-size:27px}.ul-primary,.ul-secondary{padding:11px 18px;border-radius:7px;font-size:11px}.ul-primary{box-shadow:none}.ul-hero-summary{border-radius:13px;padding:24px 20px;box-shadow:0 12px 30px rgba(15,23,42,.1)}.ul-stats{grid-template-columns:repeat(auto-fit,minmax(70px,1fr));margin-top:18px}.ul-stats div{border-radius:7px;padding:12px 4px}.ul-stats b{font-size:18px}.ul-section{padding:78px max(calc((100vw - 1180px)/2),24px)}.ul-heading{margin-bottom:38px;max-width:660px}.ul-heading>span{font-size:9px;letter-spacing:.5px}.ul-heading h2{font-size:clamp(29px,3.3vw,43px);line-height:1.35;margin:8px 0}.ul-heading p{font-size:12px}.ul-workshops,.ul-tools{gap:14px;max-width:930px}.ul-workshops article,.ul-tools article{border-radius:11px;padding:25px;box-shadow:0 3px 10px rgba(15,23,42,.035)}.ul-workshops article{min-height:230px}.ul-tools article{min-height:175px}.ul-workshops i,.ul-tools i{width:43px;height:43px;border-radius:9px;font-size:19px;margin:15px 0}.ul-workshops h3,.ul-tools h3{font-size:15px}.ul-workshops p,.ul-tools p{font-size:10px}.ul-modules{max-width:880px;gap:9px}.ul-modules details{border-radius:7px;box-shadow:0 2px 7px rgba(15,23,42,.035)}.ul-modules details[open]{border-color:#f3a4af;box-shadow:0 8px 20px rgba(15,23,42,.06)}.ul-modules summary{grid-template-columns:38px 1fr 20px;padding:15px 18px}.ul-modules summary>span{width:23px;height:23px;border-radius:5px;background:#fff1f2;display:grid;place-items:center;font-size:9px}.ul-modules summary b{font-size:12px}.ul-modules summary small{font-size:8px}.ul-modules ul{margin:0 56px 17px 18px;font-size:10px;line-height:1.8}.ul-mentor{padding:74px max(calc((100vw - 1050px)/2),24px);grid-template-columns:170px 1fr;gap:44px}.ul-avatar{width:165px;height:165px;box-shadow:0 8px 24px rgba(15,23,42,.1),0 0 0 5px var(--ul-soft)}.ul-mentor h2{font-size:29px}.ul-mentor ul{font-size:11px}.ul-register-grid{max-width:930px;grid-template-columns:1fr 1fr;gap:42px;align-items:start}.ul-invest h3,.ul-form h3{font-size:17px}.ul-invest>ul li{font-size:11px}.ul-pricing-card{border-radius:10px;padding:18px;box-shadow:0 6px 20px rgba(15,23,42,.06)}.ul-pricing-card strong{font-size:31px}.ul-payment{border-radius:8px;padding:14px;background:#fafbfc}.ul-payment [data-payment-details][hidden]{display:none}.ul-payment [data-payment-details]{margin-top:9px}.ul-form{border-radius:11px;padding:26px;box-shadow:0 10px 28px rgba(15,23,42,.1)}.ul-form label{font-size:9px;margin-bottom:11px}.ul-form input,.ul-form select{border-radius:6px;padding:11px;font-size:11px}.ul-form button{border-radius:6px;padding:12px;font-size:11px}.ul-faq{max-width:780px}.ul-faq details{padding:16px 4px}.ul-faq summary,.ul-faq p{font-size:11px}
@media(max-width:900px){.ul-hero{grid-template-columns:1fr;gap:35px}.ul-register-grid{grid-template-columns:1fr}.ul-mentor{grid-template-columns:1fr}.ul-avatar{margin-inline:auto}}
@media(max-width:580px){.ul-hero{padding-inline:18px;min-height:auto}.ul-section{padding:58px 18px}.ul-hero h1{font-size:35px}.ul-heading h2{font-size:29px}.ul-hero-summary{padding:20px 16px}.ul-register-grid{gap:28px}}

/* QFA Platform Elite White Design System
 * Accent: Ruby Red #FF1C26 | Base: Pure White | RTL-First
 */

/* ================================================================
   BASE LAYER
================================================================ */
@layer base {
  html { -webkit-text-size-adjust:100%; scroll-behavior:smooth; font-size:16px; }

  body { background-color:#ffffff; color:#475569; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
  body, [dir="ltr"] body { font-family:'Poppins','Inter',system-ui,sans-serif; }
  [dir="rtl"] body { font-family:'Tajawal','Noto Naskh Arabic',sans-serif; line-height:1.85; }

  h1,h2,h3,h4,h5,h6 { font-family:'Sora','Space Grotesk','Tajawal',system-ui,sans-serif; font-weight:700; color:#1e293b; letter-spacing:0; line-height:1.12; }
  [dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[dir="rtl"] h4,[dir="rtl"] h5,[dir="rtl"] h6 { font-family:'Tajawal','Noto Naskh Arabic',sans-serif; }
  h1 { letter-spacing:0; line-height:1.06; }
  h2 { letter-spacing:0; }

  ::selection { background:rgba(255,28,38,0.15); color:#1e293b; }

  [type="text"],[type="email"],[type="password"],[type="number"],[type="tel"],[type="url"],[type="search"],[type="date"],[type="time"],textarea,select {
    background-color:#f8fafc; border:1px solid #e2e8f0; color:#1e293b; border-radius:0.5rem;
  }
  [type="text"]::placeholder,[type="email"]::placeholder,[type="password"]::placeholder,[type="number"]::placeholder,[type="tel"]::placeholder,[type="url"]::placeholder,[type="search"]::placeholder,textarea::placeholder { color:#94a3b8; }
  [type="checkbox"],[type="radio"] { background-color:#ffffff; border-color:#cbd5e1; color:#FF1C26; border-radius:0.25rem; }
}

/* ================================================================
   COMPONENTS LAYER
================================================================ */
@layer components {

  /* Layout */
  .container-app { @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8; }
  .section-soft { background-color:#f8f9fa; }
  .section-slate { background-color:#f1f5f9; }
  .section-xl { @apply py-14 md:py-20 lg:py-28; }
  .section-lg { @apply py-10 md:py-14 lg:py-20; }
  .section-md { @apply py-8 md:py-12 lg:py-16; }
  .section-sm { @apply py-6 md:py-10; }

  /* Elite Headline Typography */
  .eyebrow {
    display:inline-flex; align-items:center; gap:0.625rem;
    font-size:0.6875rem; font-weight:700; letter-spacing:0.22em;
    text-transform:uppercase; color:#FF1C26; line-height:1;
  }
  [dir="rtl"] .eyebrow {
    letter-spacing:0;
    text-transform:none;
  }
  .eyebrow::before {
    content:''; display:inline-block; width:1.75rem; height:2px;
    background:#FF1C26; border-radius:999px; flex-shrink:0;
  }
  [dir="rtl"] .eyebrow::before { display:none; }
  [dir="rtl"] .eyebrow::after {
    content:''; display:inline-block; width:1.75rem; height:2px;
    background:#FF1C26; border-radius:999px; flex-shrink:0; order:1;
  }
  .section-headline { text-align:center; max-width:52rem; margin-inline:auto; }
  .display-title {
    font-family:'Sora','Space Grotesk','Tajawal',system-ui,sans-serif;
    font-size:clamp(1.875rem,4.5vw,3.5rem); font-weight:800;
    line-height:1.08; letter-spacing:0; color:#1e293b;
  }
  .section-sub { font-size:1.0625rem; line-height:1.85; color:#64748b; max-width:44rem; margin-inline:auto; }

  /* Buttons */
  .btn {
    @apply inline-flex items-center justify-center gap-2 px-5 py-2.5 font-semibold text-[13px] tracking-wide rounded-xl transition-all duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:cursor-not-allowed select-none;
    --tw-ring-offset-color:#ffffff;
  }
  .btn-primary { @apply btn text-white; background-color:#FF1C26; box-shadow:0 1px 0 rgba(255,255,255,.2) inset,0 6px 20px rgba(255,28,38,.28); }
  .btn-primary:hover { background-color:#D9151E; box-shadow:0 1px 0 rgba(255,255,255,.24) inset,0 12px 32px rgba(255,28,38,.36); transform:translateY(-2px); }
  .btn-primary:active { transform:translateY(0); }
  .btn-primary:focus-visible { --tw-ring-color:rgba(255,28,38,.5); }
  .btn-secondary { @apply btn text-charcoal border; background-color:#ffffff; border-color:#e2e8f0; box-shadow:0 1px 3px rgba(15,23,42,.06); }
  .btn-secondary:hover { color:#FF1C26; border-color:rgba(255,28,38,.4); box-shadow:0 4px 16px rgba(255,28,38,.14); transform:translateY(-1px); }
  .btn-ghost { @apply btn text-slate-600 border; background-color:transparent; border-color:transparent; }
  .btn-ghost:hover { background-color:#f1f5f9; color:#1e293b; }
  .btn-danger { @apply btn-primary; }

  /* Form controls */
  .input { @apply block w-full px-4 py-2.5 transition rounded-xl; background-color:#f8fafc; border:1px solid #e2e8f0; color:#1e293b; }
  .input::placeholder { color:#94a3b8; }
  .input:focus { @apply outline-none; border-color:#FF1C26; box-shadow:0 0 0 4px rgba(255,28,38,.12); }
  .label { @apply block text-[12px] font-semibold tracking-wide text-charcoal mb-1.5; }

  /* Base card */
  .card { background:#ffffff; border:1px solid rgba(226,232,240,0.85); border-radius:1rem; box-shadow:0 1px 2px rgba(15,23,42,.04),0 4px 16px rgba(15,23,42,.04); }

  /* Standard hover lift */
  .card-hover { transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s ease,border-color .25s ease; position:relative; overflow:hidden; }
  .card-hover:hover { transform:translateY(-4px); border-color:rgba(255,28,38,.14); box-shadow:0 8px 32px rgba(255,28,38,.08),0 20px 48px rgba(15,23,42,.08); }

  /* Elite White card with glassmorphism hover — consumes the shared QFA tokens */
  .card-elite {
    background:#ffffff; border:1px solid rgba(226,232,240,0.8); border-radius:var(--qfa-radius-card);
    box-shadow:0 1px 3px rgba(15,23,42,.04),0 4px 18px rgba(15,23,42,.04);
    transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s ease,border-color .28s ease,background .28s ease;
    position:relative; overflow:hidden;
  }
  .card-elite::before {
    content:''; position:absolute; inset-block:0; inset-inline-start:0; width:3px;
    background:linear-gradient(180deg,var(--qfa-brand-red) 0%,rgba(255,28,38,.4) 100%);
    border-radius:0 2px 2px 0; opacity:0; transition:opacity .28s ease;
  }
  [dir="rtl"] .card-elite::before { border-radius:2px 0 0 2px; }
  .card-elite:hover { transform:translateY(-5px); border-color:rgba(255,28,38,.16); box-shadow:0 0 0 1px rgba(255,28,38,.06),0 12px 40px rgba(15,23,42,.10),0 4px 12px rgba(255,28,38,.08); background:rgba(255,255,255,0.94); backdrop-filter:blur(12px) saturate(160%); -webkit-backdrop-filter:blur(12px) saturate(160%); }
  .card-elite:hover::before { opacity:1; }

  /* Feature card */
  .feature-card { background:#ffffff; border:1px solid rgba(226,232,240,0.7); border-radius:1.125rem; padding:2rem 1.75rem; transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s ease,border-color .28s ease; position:relative; overflow:hidden; }
  .feature-card:hover { transform:translateY(-5px); border-color:rgba(255,28,38,.18); box-shadow:0 0 0 1px rgba(255,28,38,.07),0 14px 44px rgba(15,23,42,.10),0 3px 10px rgba(255,28,38,.07); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }

  /* Power Triangle card - ruby bottom bar on hover */
  .triangle-card {
    background:#ffffff; border:1px solid rgba(226,232,240,0.8); border-radius:1.25rem;
    padding:2.75rem 2rem 2.25rem; text-align:center;
    box-shadow:0 1px 4px rgba(15,23,42,.04),0 4px 20px rgba(15,23,42,.04);
    transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s ease,border-color .28s ease;
    position:relative; overflow:hidden;
  }
  .triangle-card::after { content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:0; height:3px; background:#FF1C26; border-radius:999px 999px 0 0; transition:width .32s cubic-bezier(.16,1,.3,1),opacity .32s ease; opacity:0; }
  .triangle-card:hover { transform:translateY(-6px); border-color:rgba(255,28,38,.16); box-shadow:0 16px 52px rgba(15,23,42,.10),0 4px 14px rgba(255,28,38,.09); }
  .triangle-card:hover::after { width:60%; opacity:1; }

  /* Stats card */
  .stat-card { background:#ffffff; border:1px solid rgba(226,232,240,0.65); border-radius:var(--qfa-radius-card); padding:1.5rem 1.25rem; text-align:center; transition:transform .2s ease,box-shadow .2s ease; }
  .stat-card:hover { transform:translateY(-2px); box-shadow:0 8px 28px rgba(255,28,38,.10); }

  /* Surface tokens */
  .surface { background:#ffffff; border:1px solid #e2e8f0; border-radius:0.875rem; }
  .surface-soft { background-color:#f8f9fa; border:1px solid #e2e8f0; border-radius:0.75rem; }
  .surface-slate { background-color:#f1f5f9; border:1px solid #e2e8f0; border-radius:0.75rem; }

  /* Icon wrappers */
  .icon-ruby { display:grid; place-items:center; width:2.75rem; height:2.75rem; border-radius:0.625rem; background:rgba(255,28,38,0.08); color:#FF1C26; flex-shrink:0; transition:background .2s ease,transform .2s ease; }
  .icon-ruby-lg { display:grid; place-items:center; width:3.5rem; height:3.5rem; border-radius:0.875rem; background:rgba(255,28,38,0.08); color:#FF1C26; flex-shrink:0; transition:background .2s ease,transform .2s ease; }
  .card-elite:hover .icon-ruby,.feature-card:hover .icon-ruby,.triangle-card:hover .icon-ruby,
  .card-elite:hover .icon-ruby-lg,.feature-card:hover .icon-ruby-lg,.triangle-card:hover .icon-ruby-lg { background:rgba(255,28,38,0.14); transform:scale(1.08); }

  /* Badges */
  .badge { @apply inline-flex items-center gap-1.5 px-2.5 py-0.5 text-[11px] font-medium tracking-wide rounded-full border; background-color:#f8f9fa; border-color:#e2e8f0; color:#475569; }
  .badge-ruby { @apply badge; background-color:rgba(255,28,38,.06); border-color:rgba(255,28,38,.2); color:#D9151E; }
  .badge-green { @apply badge; background-color:#f0fdf4; border-color:#bbf7d0; color:#166534; }
  .badge-blue { @apply badge; background-color:#eff6ff; border-color:#bfdbfe; color:#1d4ed8; }
  .badge-rose { @apply badge-ruby; }

  /* Nav */
  .nav-link { @apply text-[13px] font-medium tracking-wide text-slate-600 hover:text-charcoal transition; }
  .nav-link-active { @apply text-ruby; }

  /* Progress */
  .progress { height:4px; background-color:#f1f5f9; border-radius:999px; overflow:hidden; }
  .progress > .progress-fill { height:100%; background-color:#FF1C26; border-radius:999px; transition:width .3s ease; }

  /* Effects */
  .ring-ruby { box-shadow:0 0 0 4px rgba(255,28,38,.14); }
  .text-glow { text-shadow:0 0 14px rgba(255,28,38,.35); }
  .ruby-rail { @apply absolute inset-y-0 start-0 w-[3px] opacity-0 transition-opacity; background-color:#FF1C26; }
  .group:hover .ruby-rail { @apply opacity-100; }
  .skeleton { @apply relative overflow-hidden border rounded-xl; background-color:#f1f5f9; border-color:#e2e8f0; }

  /* Prose */
  .prose-light { color:#475569; line-height:1.75; }
  .prose-light h1,.prose-light h2,.prose-light h3 { color:#1e293b; }
  .prose-light a { color:#FF1C26; text-decoration:none; }
  .prose-light a:hover { color:#D9151E; }
  .prose-rtl { @apply leading-loose; }

  /* Partner marks */
  .partner-mark { filter:grayscale(1); opacity:0.55; transition:filter .2s ease,opacity .2s ease,transform .2s ease; }
  .partner-card:hover .partner-mark { filter:grayscale(0); opacity:1; transform:translateY(-1px); }
}

/* ================================================================
   UTILITIES LAYER
================================================================ */
@layer utilities {
  .text-ruby { color:#FF1C26; }
  .bg-ruby { background-color:#FF1C26; }
  .border-ruby { border-color:#FF1C26; }
  .text-charcoal { color:#1e293b; }
  .bg-charcoal { background-color:#1e293b; }
  .text-slate-body { color:#64748b; }
  .divider-ruby { display:block; width:3rem; height:3px; background:#FF1C26; border-radius:999px; margin-top:1.25rem; }
  .divider-ruby-center { display:block; width:3rem; height:3px; background:#FF1C26; border-radius:999px; margin:1.25rem auto 0; }
}

/* ================================================================
   GLOBAL STYLES — sticky header, scrollbar, RTL, animations
================================================================ */

/* Sticky frosted header */
.qfa-header {
  position:sticky; top:0; z-index:40;
  background:rgba(255,255,255,0.82);
  backdrop-filter:saturate(200%) blur(16px);
  -webkit-backdrop-filter:saturate(200%) blur(16px);
  border-bottom:1px solid rgba(15,23,42,0.05);
  box-shadow:0 1px 0 rgba(226,232,240,0.5);
  transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.qfa-header.is-scrolled {
  background:rgba(255,255,255,0.97);
  border-bottom:1px solid rgba(226,232,240,1);
  box-shadow:0 1px 0 rgba(226,232,240,1),0 4px 24px rgba(15,23,42,0.07);
}

/* ================================================================
   HEADER / NAV — BASE STYLES (desktop-first)
   These were missing and caused the nav to stack vertically.
================================================================ */

/* Nav shell: three-column grid — logo | nav links | actions */
.qfa-nav-shell {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1.25rem;
  min-height: 60px;
  padding: 0.375rem 0;
}

/* Brand logo */
.qfa-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  text-decoration: none;
  color: #1e293b;
  flex-shrink: 0;
}
.qfa-brand:hover { color: #1e293b; }
.qfa-brand strong {
  display: block;
  font-size: 0.9375rem;
  font-weight: 800;
  color: #1e293b;
  line-height: 1.2;
}
.qfa-brand small {
  display: block;
  font-size: 0.625rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: #64748b;
  text-transform: uppercase;
  line-height: 1;
  margin-top: 1px;
}
.qfa-brand-mark {
  display: grid;
  place-items: center;
  width: 2.625rem;
  height: 2.625rem;
  border-radius: 0.75rem;
  background-color: #FF1C26;
  color: #fff;
  flex-shrink: 0;
}
.qfa-brand-mark svg { display: block; width: 1.625rem; height: 1.625rem; }
.qfa-brand-logo-img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.qfa-brand-fallback {
  font-size:.8rem;
  font-weight:900;
  letter-spacing:.02em;
}

/* Desktop nav links — centered */
.qfa-nav-links {
  display: flex;
  align-items: center;
  gap: 0.0625rem;
  justify-content: center;
  flex-wrap: nowrap;
}
.qfa-nav-links > a,
.qfa-nav-links > div > button {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.375rem 0.6875rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #475569;
  border-radius: 0.5rem;
  transition: color 0.2s ease, background-color 0.2s ease;
  white-space: nowrap;
  background: transparent;
  border: none;
  cursor: pointer;
  line-height: 1.4;
}
.qfa-nav-links > a:hover,
.qfa-nav-links > div > button:hover {
  color: #FF1C26;
  background-color: rgba(255, 28, 38, 0.05);
}
.qfa-nav-links > a.is-active,
.qfa-nav-links > div > button.is-active {
  color: #FF1C26;
  font-weight: 700;
}

/* Dropdown */
.qfa-nav-dropdown { position: relative; }
.qfa-nav-menu {
  position: absolute;
  top: calc(100% + 0.375rem);
  left: 50%;
  right: auto;
  translate: -50% 0;
  min-width: 13rem;
  padding: 0.375rem;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 0.875rem;
  box-shadow: 0 20px 48px rgba(17, 24, 39, 0.14);
  z-index: 50;
}
.qfa-nav-menu a {
  display: block;
  padding: 0.5rem 0.875rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #475569;
  border-radius: 0.5rem;
  transition: color 0.2s ease, background-color 0.2s ease;
  white-space: nowrap;
}
.qfa-nav-menu a:hover,
.qfa-nav-menu a.is-active { color: #FF1C26; background-color: rgba(255, 28, 38, 0.05); }

/* Nav actions: locale + auth */
.qfa-nav-actions {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  flex-shrink: 0;
}
.qfa-locale-link {
  font-size: 0.75rem;
  font-weight: 700;
  color: #64748b;
  padding: 0.25rem 0.625rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.5rem;
  transition: color 0.2s ease, border-color 0.2s ease;
  white-space: nowrap;
  line-height: 1.6;
}
.qfa-locale-link:hover { color: #FF1C26; border-color: rgba(255, 28, 38, 0.3); }
.qfa-login-link {
  font-size: 0.8125rem;
  font-weight: 700;
  color: #1e293b;
  padding: 0.25rem 0.625rem;
  transition: color 0.2s ease;
  white-space: nowrap;
  line-height: 1.6;
}
.qfa-login-link:hover { color: #FF1C26; }
.qfa-register-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.125rem;
  padding: 0 1rem;
  font-size: 0.8rem;
  font-weight: 800;
  color: #fff;
  background-color: #FF1C26;
  border-radius: 0.625rem;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  white-space: nowrap;
  line-height: 1;
}
.qfa-register-link:hover {
  background-color: #D9151E;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(255,28,38,0.26);
}

/* Mobile toggle: hidden on desktop */
.qfa-mobile-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 2.125rem;
  height: 2.125rem;
  border-radius: 0.5rem;
  border: 1px solid #e2e8f0;
  background: transparent;
  cursor: pointer;
  color: #1e293b;
  transition: border-color 0.2s ease, color 0.2s ease;
  flex-shrink: 0;
}
.qfa-mobile-toggle svg { display: block; width: 1.125rem; height: 1.125rem; }
.qfa-mobile-toggle:hover { border-color: rgba(255,28,38,0.35); color: #FF1C26; }

/* Mobile nav: shown when hamburger opens it */
.qfa-mobile-nav {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  padding: 0.625rem 0 0.5rem;
  border-top: 1px solid #f1f5f9;
  margin-top: 0.25rem;
}
.qfa-mobile-nav.hidden { display: none; }
.qfa-mobile-nav > a {
  display: block;
  padding: 0.625rem 0.875rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #475569;
  border-radius: 0.5rem;
  transition: color 0.2s ease, background-color 0.2s ease;
}
.qfa-mobile-nav > a:hover,
.qfa-mobile-nav > a.is-active { color: #FF1C26; background-color: rgba(255,28,38,0.05); }

.qfa-mobile-details > summary {
  display: flex;
  align-items: center;
  padding: 0.625rem 0.875rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #475569;
  border-radius: 0.5rem;
  cursor: pointer;
  list-style: none;
  transition: color 0.2s ease, background-color 0.2s ease;
}
.qfa-mobile-details > summary::-webkit-details-marker { display: none; }
.qfa-mobile-details[open] > summary { color: #FF1C26; }
.qfa-mobile-details > a {
  display: block;
  padding-block: 0.5rem;
  padding-inline: 2rem 0.875rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #64748b;
  border-radius: 0.5rem;
  transition: color 0.2s ease, background-color 0.2s ease;
}
.qfa-mobile-details > a:hover,
.qfa-mobile-details > a.is-active { color: #FF1C26; background-color: rgba(255,28,38,0.05); }

.qfa-mobile-auth {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  flex-wrap: wrap;
  padding: 0.625rem 0.5rem 0.25rem;
  border-top: 1px solid #f1f5f9;
  margin-top: 0.375rem;
}

/* RTL helpers */
[dir="rtl"] .ltr-flip { transform:scaleX(-1); }
[x-cloak] { display:none !important; }

/* Keyboard focus */
:focus-visible { outline:2px solid rgba(255,28,38,0.55); outline-offset:2px; border-radius:0.25rem; }

/* Scrollbar */
::-webkit-scrollbar { height:8px; width:8px; }
::-webkit-scrollbar-track { background:#f8f9fa; }
::-webkit-scrollbar-thumb { background:#cbd5e1; border-radius:999px; }
::-webkit-scrollbar-thumb:hover { background:#FF1C26; }

/* Home page layout grids */
.ecosystem-grid {
  background-image:linear-gradient(rgba(148,163,184,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.12) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.7),transparent 80%);
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.7),transparent 80%);
}
.ecosystem-hero-layout { display:grid; }
.partner-strip-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.ecosystem-tabs-layout { display:grid; }

@media (min-width:640px) {
  .partner-strip-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (min-width:1024px) {
  .ecosystem-hero-layout { grid-template-columns:1.05fr .95fr; }
  .partner-strip-grid { grid-template-columns:repeat(8,minmax(0,1fr)); }
  .ecosystem-tabs-layout { grid-template-columns:280px 1fr; }
}

.ecosystem-tab-active { background:#FF1C26; color:#ffffff; box-shadow:0 4px 14px rgba(255,28,38,.28); }

/* Animations */
@keyframes pulse-ruby {
  0%,100% { box-shadow:0 0 0 0 rgba(255,28,38,.55); }
  50% { box-shadow:0 0 0 8px rgba(255,28,38,0); }
}
.animate-pulse-ruby { animation:pulse-ruby 2.4s ease-out infinite; }

@keyframes float-up {
  0%,100% { transform:translateY(0); }
  50% { transform:translateY(-6px); }
}
.animate-float { animation:float-up 4s ease-in-out infinite; }

/* ================================================================
   HOMEPAGE — Premium Hero Split
================================================================ */

/* Dark split hero section */
.hero-split {
  background:#1e293b;
  position:relative;
  overflow:hidden;
}
.hero-split::after {
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse 70% 60% at 110% 50%, rgba(255,28,38,.12) 0%, transparent 60%);
  pointer-events:none;
}
[dir="rtl"] .hero-split::after {
  background:radial-gradient(ellipse 70% 60% at -10% 50%, rgba(255,28,38,.12) 0%, transparent 60%);
}
.hero-split .ecosystem-grid {
  mask-image:linear-gradient(135deg,rgba(0,0,0,.4),transparent 75%);
  -webkit-mask-image:linear-gradient(135deg,rgba(0,0,0,.4),transparent 75%);
}

/* Certificate accreditation placeholder card */
.cert-placeholder {
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.10);
  border-radius:1.5rem;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1.25rem;
  padding:3rem 2rem;
  text-align:center;
  min-height:340px;
  position:relative;
  overflow:hidden;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.cert-placeholder::before {
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  border:1.5px dashed rgba(255,28,38,.30);
  pointer-events:none;
}
.cert-placeholder::after {
  content:'';
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:2px;
  background:linear-gradient(90deg, transparent, rgba(255,28,38,.5), transparent);
  pointer-events:none;
}

/* Value pillar image cards */
.value-img-card {
  background:#ffffff;
  border:1px solid rgba(226,232,240,0.8);
  border-radius:1.25rem;
  overflow:hidden;
  box-shadow:0 1px 4px rgba(15,23,42,.04),0 4px 20px rgba(15,23,42,.04);
  transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s ease,border-color .28s ease;
  display:flex;
  flex-direction:column;
  position:relative;
}
.value-img-card:hover {
  transform:translateY(-6px);
  border-color:rgba(255,28,38,.18);
  box-shadow:0 16px 52px rgba(15,23,42,.10),0 4px 14px rgba(255,28,38,.09);
}
.value-img-card .card-img-placeholder {
  width:100%;
  height:185px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  position:relative;
  overflow:hidden;
}
.value-img-card .card-img-placeholder::before {
  content:'';
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(
    45deg,
    transparent,
    transparent 12px,
    rgba(255,255,255,.04) 12px,
    rgba(255,255,255,.04) 24px
  );
}
.value-img-card .card-body {
  padding:1.75rem 1.75rem 2rem;
  flex:1;
  display:flex;
  flex-direction:column;
}
.value-img-card:hover .icon-ruby-lg {
  background:rgba(255,28,38,.14);
  transform:scale(1.08);
}

/* Stats bar item */
.stat-bar-item {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:2rem 1rem;
  gap:0.625rem;
  position:relative;
}
.stat-bar-item + .stat-bar-item::before {
  content:'';
  position:absolute;
  inset-inline-start:0;
  top:25%;
  bottom:25%;
  width:1px;
  background:#e2e8f0;
}

/* Problem / Solution dual card layout */
.problem-card {
  border-radius:1.25rem;
  border:1px solid #e2e8f0;
  background:#ffffff;
  padding:2rem;
  position:relative;
  overflow:hidden;
  transition:box-shadow .25s ease;
}
.problem-card::before {
  content:'';
  position:absolute;
  inset-inline-start:0;
  top:0;
  bottom:0;
  width:4px;
  background:#cbd5e1;
  border-radius:0 2px 2px 0;
}
[dir="rtl"] .problem-card::before { border-radius:2px 0 0 2px; }

.solution-card {
  border-radius:1.25rem;
  border:1px solid rgba(255,28,38,.2);
  background:rgba(255,28,38,.025);
  padding:2rem;
  position:relative;
  overflow:hidden;
  transition:box-shadow .25s ease;
}
.solution-card::before {
  content:'';
  position:absolute;
  inset-inline-start:0;
  top:0;
  bottom:0;
  width:4px;
  background:#FF1C26;
  border-radius:0 2px 2px 0;
}
[dir="rtl"] .solution-card::before { border-radius:2px 0 0 2px; }

/* ================================
   QFA SHARED DESIGN SYSTEM
================================ */
:root {
  /* Single source of truth for the brand red. Every other red token
     (and any legacy alias below) resolves back to this one value —
     do not hardcode a different red hex anywhere in the codebase. */
  --qfa-brand-red:#FF1C26;
  --qfa-red:var(--qfa-brand-red);          /* legacy alias — kept for existing call sites */
  --qfa-red-dark:#D9151E;
  --qfa-red-soft:rgba(255, 28, 38, 0.08);
  --qfa-red-border:rgba(255, 28, 38, 0.18);
  --qfa-black:#0D0D0D;
  --qfa-dark:#111827;
  --qfa-gray:#2B2B2B;
  --qfa-muted:#64748B;
  --qfa-bg:#F8FAFC;
  --qfa-surface:#FFFFFF;
  --qfa-border:#E5E7EB;
  --qfa-radius-card:18px;
  --qfa-radius-btn:12px;
  --qfa-radius-button:var(--qfa-radius-btn); /* legacy alias — kept for existing call sites */
  --qfa-radius-badge:999px;
  --qfa-shadow-soft:0 10px 28px rgba(17,24,39,.06);
  --qfa-shadow-premium:0 18px 52px rgba(17,24,39,.10);
  --qfa-shadow-hero:0 26px 70px rgba(13,13,13,.24);
  --qfa-section-padding:clamp(3.25rem,6vw,5.75rem);
  --qfa-container-width:80rem;
  --qfa-card-padding:1.5rem;
}

.qfa-container,
.container-app {
  width:100%;
  max-width:var(--qfa-container-width);
  margin-inline:auto;
  padding-inline:1rem;
}
@media (min-width:640px) {
  .qfa-container,
  .container-app { padding-inline:1.5rem; }
}
@media (min-width:1024px) {
  .qfa-container,
  .container-app { padding-inline:2rem; }
}

.qfa-page {
  min-height:100vh;
  background:var(--qfa-bg);
  color:var(--qfa-gray);
}
.qfa-section,
.qfa-section-soft,
.qfa-section-muted {
  padding-block:var(--qfa-section-padding);
}
.qfa-section { background:var(--qfa-surface); }
.qfa-section-soft,
.qfa-section-muted {
  background:
    radial-gradient(circle at 85% 8%, var(--qfa-red-soft), transparent 30%),
    linear-gradient(180deg, #fff 0%, var(--qfa-bg) 100%);
}
.qfa-grid { display:grid; gap:1rem; }
.qfa-grid-2,
.qfa-grid-3,
.qfa-grid-4 { grid-template-columns:1fr; }
@media (min-width:640px) {
  .qfa-grid-2,
  .qfa-grid-3,
  .qfa-grid-4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:1024px) {
  .qfa-grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .qfa-grid-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
.qfa-stack { display:grid; gap:1rem; }
.qfa-section-header {
  max-width:48rem;
  margin-inline:auto;
  text-align:center;
}
.qfa-title-accent {
  display:block;
  width:2.875rem;
  height:3px;
  margin-top:.875rem;
  background:var(--qfa-red);
  border-radius:999px;
}
.qfa-section-header .qfa-title-accent {
  margin-inline:auto;
}
.qfa-kicker,
.qfa-section-eyebrow,
.qfa-hero-kicker {
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  color:var(--qfa-red);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.qfa-kicker::after,
.qfa-section-eyebrow::after,
.qfa-hero-kicker::after {
  content:'';
  width:2.5rem;
  height:2px;
  border-radius:999px;
  background:var(--qfa-red);
}
[dir="rtl"] .qfa-kicker,
[dir="rtl"] .qfa-section-eyebrow,
[dir="rtl"] .qfa-hero-kicker {
  letter-spacing:0;
  text-transform:none;
}
[dir="ltr"] .qfa-kicker::after,
[dir="ltr"] .qfa-section-eyebrow::after,
[dir="ltr"] .qfa-hero-kicker::after { order:-1; }
.qfa-title,
.qfa-section-title {
  margin-top:.65rem;
  color:var(--qfa-dark);
  font-size:clamp(1.8rem,3vw,2.65rem);
  font-weight:900;
  line-height:1.22;
}
.qfa-subtitle,
.qfa-section-subtitle {
  margin-top:.85rem;
  color:var(--qfa-muted);
  font-size:1rem;
  line-height:1.9;
}

.qfa-hero,
.qfa-hero-light,
.qfa-hero-dark,
.qfa-page-hero {
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(15,23,42,.08);
}
.qfa-hero,
.qfa-hero-light,
.qfa-page-hero,
.qfa-page-hero.is-light {
  background:
    radial-gradient(circle at 84% 10%, var(--qfa-red-soft), transparent 30%),
    radial-gradient(circle at 12% 78%, rgba(148,163,184,.12), transparent 32%),
    linear-gradient(180deg, #fff 0%, #fbfcfe 52%, #f5f7fb 100%);
  color:var(--qfa-gray);
}
.qfa-hero-dark {
  background:
    radial-gradient(circle at 78% 18%, rgba(255,28,38,.16), transparent 30%),
    radial-gradient(circle at 18% 84%, rgba(148,163,184,.10), transparent 32%),
    linear-gradient(135deg, var(--qfa-black) 0%, var(--qfa-dark) 100%);
  color:#fff;
}
.qfa-hero::before,
.qfa-hero-light::before,
.qfa-hero-dark::before,
.qfa-page-hero::before {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(148,163,184,.10) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,.10) 1px, transparent 1px);
  background-size:44px 44px;
  opacity:.38;
}
.qfa-hero-dark::before {
  background:
    linear-gradient(135deg, rgba(255,255,255,.05) 0 1px, transparent 1px 100%),
    linear-gradient(112deg, transparent 0 72%, rgba(255,28,38,.10) 72.2%, transparent 73% 100%);
  background-size:42px 42px, auto;
  opacity:.46;
}
.qfa-home-hero-shell {
  isolation:isolate;
  border-color:rgba(0,0,0,.08);
  background:
    radial-gradient(circle at 78% 12%, rgba(250,18,37,.10), transparent 30%),
    radial-gradient(circle at 10% 80%, rgba(28,28,28,.05), transparent 28%),
    linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 50%, #f7f7f7 100%);
  color:#1C1C1C;
}
.qfa-home-hero-shell::after {
  content:'';
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(112deg, transparent 0 70%, rgba(250,18,37,.08) 70.2%, transparent 71% 100%),
    radial-gradient(circle at 84% 42%, rgba(250,18,37,.07), transparent 18%);
}
.qfa-home-hero-shell::before {
  opacity:.34;
  background:
    linear-gradient(rgba(28,28,28,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(28,28,28,.06) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.48), transparent 84%);
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,.48), transparent 84%);
}
.qfa-home-hero-shell .qfa-hero-badge {
  color:var(--qfa-brand-red);
  background:#FFFFFF;
  border-color:rgba(28,28,28,.12);
  box-shadow:0 10px 24px rgba(0,0,0,.055);
}
.qfa-hero-accent-dot {
  display:inline-block;
  width:.375rem;
  height:.375rem;
  flex:0 0 auto;
  background:var(--qfa-brand-red);
  border-radius:999px;
}
.qfa-home-hero-shell .qfa-btn-primary {
  background:var(--qfa-brand-red);
  border-color:var(--qfa-brand-red);
  box-shadow:0 1px 0 rgba(255,255,255,.18) inset, 0 10px 24px rgba(250,18,37,.28);
}
.qfa-home-hero-shell .qfa-btn-primary:hover {
  background:#000;
  border-color:#000;
  box-shadow:0 16px 34px rgba(0,0,0,.26);
}
.qfa-home-hero-shell .qfa-btn-secondary {
  color:#1C1C1C;
  background:#FFFFFF;
  border-color:rgba(28,28,28,.14);
  box-shadow:0 12px 28px rgba(0,0,0,.06);
}
.qfa-home-hero-shell .qfa-btn-secondary:hover {
  color:#FFFFFF;
  background:#1C1C1C;
  border-color:#1C1C1C;
}
.qfa-home-hero-layout {
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  align-items:center;
  gap:48px;
  direction:ltr;
}
.qfa-home-hero-copy-panel {
  grid-column:6 / -1;
  grid-row:1;
  max-width:860px;
  margin-inline:0;
  padding:12px 0;
  text-align:start;
  direction:rtl;
}
[dir="ltr"] .qfa-home-hero-copy-panel {
  direction:ltr;
}
.qfa-home-hero-title {
  max-width:820px;
  margin-inline:0;
  color:#000000;
  text-wrap:balance;
  text-shadow:none;
}
.qfa-home-hero-subtitle {
  color:rgba(28,28,28,.74);
  max-width:690px;
  margin-inline:0;
  font-weight:600;
  text-shadow:none;
}
.qfa-home-hero-platform {
  color:#1C1C1C;
  margin-inline:0;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(28,28,28,.10);
  box-shadow:0 16px 36px rgba(0,0,0,.07);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.qfa-home-hero-shell .qfa-home-hero-copy-panel > .mt-8 {
  justify-content:flex-start;
}
.qfa-home-hero-stats {
  grid-column:1 / 6;
  grid-row:1;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:24px;
  width:100%;
  max-width:100%;
  direction:rtl;
}
.qfa-home-hero-stat-card:last-child {
  grid-column:1 / -1;
}
.qfa-home-hero-stat-card {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:16px;
  min-height:132px;
  padding:22px;
  color:#1C1C1C;
  background:#FFFFFF;
  border:1px solid rgba(28,28,28,.09);
  border-radius:18px;
  box-shadow:0 12px 30px rgba(0,0,0,.05);
  text-align:right;
  direction:rtl;
}
.qfa-home-hero-stats i {
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  flex:0 0 44px;
  color:var(--qfa-brand-red);
  background:rgba(250,18,37,.08);
  border:1px solid rgba(250,18,37,.16);
  border-radius:14px;
  box-shadow:0 10px 20px rgba(250,18,37,.10);
}
.qfa-home-hero-stat-copy {
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:7px;
}
.qfa-home-hero-stats strong {
  color:#000000;
  font-size:clamp(27px, 2.6vw, 34px);
  font-weight:900;
  line-height:1;
  direction:ltr;
}
.qfa-home-hero-stats small {
  color:#1C1C1C;
  font-size:13.5px;
  font-weight:800;
  line-height:1.55;
}
@media (max-width:1023px) {
  .qfa-home-hero-shell::after {
    background:
      linear-gradient(180deg, rgba(250,18,37,.05) 0%, rgba(0,0,0,0) 62%, rgba(28,28,28,.03) 100%),
      radial-gradient(circle at 78% 24%, rgba(250,18,37,.08), transparent 24%);
  }
  .qfa-home-hero-layout {
    display:grid;
    grid-template-columns:1fr;
    max-width:760px;
    margin-inline:auto;
    gap:28px;
  }
  .qfa-home-hero-copy-panel {
    grid-column:1;
    grid-row:1;
    order:1;
    max-width:760px;
    padding:10px 0 0;
  }
  .qfa-home-hero-stats {
    grid-column:1;
    grid-row:2;
    order:2;
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:16px;
    width:100%;
    max-width:100%;
    padding-bottom:4px;
  }
  .qfa-home-hero-stat-card {
    min-width:0;
  }
}
@media (max-width:639px) {
  .qfa-home-hero-copy-panel {
    padding-top:0;
  }
  .qfa-home-hero-title {
    text-wrap:wrap;
  }
  .qfa-home-hero-subtitle {
    font-size:15px;
    line-height:1.9;
  }
  .qfa-home-hero-platform {
    padding:14px;
  }
  .qfa-home-hero-stats {
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
    overflow:visible;
    padding-bottom:0;
  }
  .qfa-home-hero-stat-card:last-child {
    grid-column:1;
  }
  .qfa-home-hero-stat-card {
    min-height:auto;
    padding:18px;
  }
  .qfa-home-hero-stat-card {
    min-width:0;
  }
}
.qfa-hero-content,
.qfa-hero .qfa-container,
.qfa-hero-light .qfa-container,
.qfa-hero-dark .qfa-container,
.qfa-page-hero .qfa-container,
.qfa-hero .container-app,
.qfa-hero-light .container-app,
.qfa-hero-dark .container-app,
.qfa-page-hero .container-app {
  position:relative;
  z-index:1;
}
.qfa-hero-title {
  margin-top:1.25rem;
  color:inherit;
  font-size:clamp(2.35rem,5vw,4.25rem);
  font-weight:900;
  line-height:1.12;
}
.qfa-hero-subtitle {
  margin-top:1.25rem;
  max-width:46rem;
  color:var(--qfa-muted);
  font-size:clamp(1rem,1.4vw,1.15rem);
  line-height:1.95;
}
.qfa-hero-dark .qfa-hero-subtitle { color:rgba(255,255,255,.78); }
.qfa-hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:2rem;
}
.qfa-hero-card {
  position:relative;
  border:1px solid rgba(255,255,255,.12);
  border-radius:calc(var(--qfa-radius-card) + 10px);
  background:linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.055));
  box-shadow:var(--qfa-shadow-hero);
  backdrop-filter:blur(14px);
}
.qfa-hero-card::before {
  content:'';
  position:absolute;
  inset:-2rem;
  z-index:-1;
  border-radius:inherit;
  background:radial-gradient(circle, rgba(255,28,38,.18), transparent 62%);
  filter:blur(20px);
}
.qfa-hero-panel {
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--qfa-radius-card);
  background:linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.055));
}

.qfa-card,
.qfa-card-premium,
.qfa-form-card,
.qfa-impact-card,
.qfa-step-card,
.qfa-list-card {
  border:1px solid var(--qfa-border);
  border-radius:var(--qfa-radius-card);
  background:var(--qfa-surface);
  box-shadow:var(--qfa-shadow-soft);
}
.qfa-card-premium,
.qfa-form-card {
  box-shadow:var(--qfa-shadow-premium);
}
.qfa-card-hover,
.qfa-impact-card,
.qfa-step-card {
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.qfa-card-hover:hover,
.qfa-impact-card:hover,
.qfa-step-card:hover {
  transform:translateY(-4px);
  border-color:var(--qfa-red-border);
  box-shadow:0 20px 54px rgba(15,23,42,.12);
}

.qfa-btn,
.qfa-btn-primary,
.qfa-btn-secondary,
.qfa-btn-dark,
.qfa-btn-soft,
.qfa-btn-outline,
.qfa-button-primary,
.qfa-button-secondary,
.btn-primary,
.btn-secondary {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  min-height:2.75rem;
  padding:.7rem 1.25rem;
  border-radius:var(--qfa-radius-button);
  font-size:.85rem;
  font-weight:800;
  line-height:1;
  text-align:center;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
}
.qfa-btn-primary,
.qfa-button-primary,
.btn-primary {
  color:#fff;
  border:1px solid var(--qfa-red);
  background:var(--qfa-red);
  box-shadow:0 12px 28px rgba(255,28,38,.20);
}
.qfa-btn-primary:hover,
.qfa-button-primary:hover,
.btn-primary:hover {
  color:#fff;
  background:var(--qfa-red-dark);
  border-color:var(--qfa-red-dark);
  transform:translateY(-2px);
  box-shadow:0 18px 38px rgba(255,28,38,.26);
}
.qfa-btn-secondary,
.qfa-button-secondary,
.btn-secondary {
  color:var(--qfa-dark);
  border:1px solid var(--qfa-border);
  background:#fff;
  box-shadow:0 3px 12px rgba(15,23,42,.05);
}
.qfa-btn-secondary:hover,
.qfa-button-secondary:hover,
.btn-secondary:hover {
  color:var(--qfa-red);
  border-color:rgba(255,28,38,.28);
  transform:translateY(-1px);
}
.qfa-btn-outline {
  color:var(--qfa-dark);
  border:1px solid rgba(43,43,43,.28);
  background:transparent;
}
.qfa-btn-outline:hover {
  color:var(--qfa-red);
  border-color:rgba(255,28,38,.35);
}
.qfa-btn-dark {
  color:#fff;
  border:1px solid rgba(255,255,255,.10);
  background:var(--qfa-black);
  box-shadow:0 14px 34px rgba(15,23,42,.18);
}
.qfa-btn-soft {
  color:var(--qfa-red);
  border:1px solid var(--qfa-red-border);
  background:var(--qfa-red-soft);
}

.qfa-badge,
.qfa-badge-red,
.qfa-badge-soft,
.qfa-service-badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  border-radius:var(--qfa-radius-badge);
  padding:.35rem .7rem;
  font-size:.72rem;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
.qfa-badge { color:var(--qfa-dark); border:1px solid var(--qfa-border); background:#fff; }
.qfa-badge-red,
.badge-ruby {
  color:var(--qfa-red);
  border:1px solid var(--qfa-red-border);
  background:var(--qfa-red-soft);
}
.qfa-service-badge {
  color:var(--qfa-red);
  border:1px solid var(--qfa-red-border);
  background:var(--qfa-red-soft);
}
.qfa-badge-soft,
.badge {
  color:var(--qfa-muted);
  border:1px solid var(--qfa-border);
  background:#fff;
}

.qfa-stat-card {
  border:1px solid var(--qfa-border);
  border-radius:var(--qfa-radius-card);
  background:#fff;
  padding:1.25rem;
  text-align:center;
  box-shadow:var(--qfa-shadow-soft);
}
.qfa-stat-card strong {
  display:block;
  color:var(--qfa-dark);
  font-size:2rem;
  font-weight:900;
  line-height:1;
}
.qfa-stat-card span {
  display:block;
  margin-top:.55rem;
  color:var(--qfa-muted);
  font-size:.78rem;
  font-weight:700;
}
.qfa-hero-dark .qfa-stat-card {
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.08);
  box-shadow:0 12px 28px rgba(2,6,23,.16);
  backdrop-filter:blur(10px);
}
.qfa-hero-dark .qfa-stat-card strong { color:#fff; }
.qfa-hero-dark .qfa-stat-card span { color:rgba(255,255,255,.68); }

.qfa-choice-card:has(:checked) {
  border-color:rgba(255,28,38,.28);
  background:linear-gradient(180deg, var(--qfa-red-soft), #fff 62%);
}

.consulting-standard-emblem {
  position:absolute;
  inset-block-start:-2.75rem;
  inset-inline-start:50%;
  transform:translateX(-50%);
  display:grid;
  place-items:center;
  width:5.5rem;
  height:5.5rem;
  border:1px solid rgba(255,28,38,.22);
  outline:6px solid #fff;
  border-radius:999px;
  color:#FF1C26;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.14);
  text-align:center;
}
.consulting-standard-emblem.is-static {
  position:relative;
  inset:auto;
  transform:none;
  margin-inline:auto;
}
.consulting-standard-emblem strong {
  display:block;
  color:#FF1C26;
  font-size:1.15rem;
  font-weight:900;
  line-height:1.05;
}
.consulting-standard-emblem span {
  display:block;
  margin-top:.15rem;
  color:#1e293b;
  font-size:.86rem;
  font-weight:900;
  line-height:1.05;
}

.consulting-systems-section {
  position:relative;
  overflow:hidden;
  background:#f8fafc;
}
.consulting-systems-section .container-app,
#rfq .container-app {
  max-width:86rem;
}
.consulting-systems-section::before {
  content:'QFA';
  position:absolute;
  inset-block-start:2.5rem;
  inset-inline-end:7vw;
  color:rgba(15,23,42,.028);
  font-size:9rem;
  font-weight:900;
  line-height:1;
  pointer-events:none;
}

.qfa-reference-standards-section {
  position:relative;
  overflow:hidden;
  padding:5.5rem 0;
  background:
    linear-gradient(180deg, #ffffff 0%, #f8fafc 42%, #f1f5f9 100%);
  border-block:1px solid rgba(226,232,240,.76);
}
.qfa-reference-standards-section::before {
  content:'QFA';
  position:absolute;
  inset-block-start:2.6rem;
  inset-inline-end:7vw;
  color:rgba(15,23,42,.024);
  font-size:9rem;
  font-weight:900;
  line-height:1;
  pointer-events:none;
}
.qfa-reference-standards-container {
  width:100%;
  max-width:86rem;
  margin-inline:auto;
  padding-inline:1rem;
  position:relative;
  z-index:1;
}
.qfa-reference-standards-container > div:first-child {
  max-width:52rem;
  margin-inline:auto;
  text-align:center;
}
.qfa-reference-standards-container > div:first-child > div {
  display:inline-flex;
  align-items:center;
  gap:.625rem;
  padding:.5rem .85rem;
  color:#FF1C26;
  background:rgba(255,28,38,.055);
  border:1px solid rgba(255,28,38,.14);
  border-radius:999px;
  font-size:.78rem;
  font-weight:900;
  line-height:1;
}
.qfa-reference-standards-container > div:first-child > div::before,
.qfa-reference-standards-container > div:first-child > div::after {
  content:'';
  display:inline-block;
  width:1.75rem;
  height:2px;
  background:#FF1C26;
  border-radius:999px;
}
.qfa-reference-standards-container > div:first-child h2 {
  margin:1.25rem 0 0;
  color:#0f172a;
  font-size:3rem;
  font-weight:900;
  line-height:1.16;
  overflow-wrap:break-word;
}
.qfa-reference-standards-container > div:first-child p {
  max-width:46rem;
  margin:1.15rem auto 0;
  color:#475569;
  font-size:1.02rem;
  font-weight:600;
  line-height:1.9;
}
@media (min-width:640px) {
  .qfa-reference-standards-container {
    padding-inline:1.5rem;
  }
}
@media (min-width:1024px) {
  .qfa-reference-standards-container {
    padding-inline:2rem;
  }
}
.qfa-premium-standards-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:22px;
  width:100%;
  max-width:1280px;
  margin:3.25rem auto 0;
}
.qfa-premium-standard-card {
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:214px;
  padding:26px;
  direction:rtl;
  text-align:right;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.92)),
    #fff;
  border:1px solid rgba(226,232,240,.94);
  border-radius:10px;
  box-shadow:0 14px 32px rgba(15,23,42,.075);
  overflow:hidden;
  isolation:isolate;
  transition:transform .28s cubic-bezier(.16,1,.3,1), box-shadow .28s ease, border-color .28s ease, background .28s ease;
}
.qfa-premium-standard-card::before {
  content:'';
  position:absolute;
  inset-block-start:0;
  inset-inline:0;
  height:3px;
  background:linear-gradient(90deg, #FF1C26, #D9151E);
  z-index:1;
}
.qfa-premium-standard-card::after {
  content:'';
  position:absolute;
  inset-block-start:0;
  inset-inline-end:0;
  width:6rem;
  height:6rem;
  background:radial-gradient(circle at top right, rgba(255,28,38,.12), transparent 66%);
  opacity:.72;
  pointer-events:none;
  transition:opacity .28s ease, transform .28s ease;
}
[dir="rtl"] .qfa-premium-standard-card::after {
  inset-inline-end:auto;
  inset-inline-start:0;
  background:radial-gradient(circle at top left, rgba(255,28,38,.12), transparent 66%);
}
.qfa-premium-standard-card:hover {
  transform:translateY(-5px);
  border-color:rgba(255,28,38,.26);
  background:#fff;
  box-shadow:0 20px 46px rgba(15,23,42,.115), 0 8px 18px rgba(255,28,38,.06);
}
.qfa-premium-standard-card:hover::after {
  opacity:1;
  transform:scale(1.12);
}
.qfa-premium-standard-mark {
  display:flex;
  flex-direction:column;
  align-items:center;
  align-self:flex-end;
  max-width:100%;
  color:#FF1C26;
  font-family:Arial, Helvetica, sans-serif;
  font-size:46px;
  font-weight:900;
  letter-spacing:0;
  line-height:.9;
  text-align:center;
  direction:ltr;
  transition:color .28s ease, transform .28s ease;
  overflow-wrap:anywhere;
}
.qfa-premium-standard-card:hover .qfa-premium-standard-mark {
  color:#D9151E;
  transform:translateY(-1px);
}
.qfa-premium-standard-number {
  display:block;
  margin-top:11px;
  padding:.26rem .55rem;
  color:#0f172a;
  background:#f1f5f9;
  border:1px solid rgba(226,232,240,.9);
  border-radius:6px;
  font-size:15px;
  font-weight:900;
  line-height:1.15;
  transition:background .28s ease, border-color .28s ease, color .28s ease;
}
.qfa-premium-standard-card:hover .qfa-premium-standard-number {
  color:#D9151E;
  background:rgba(255,28,38,.07);
  border-color:rgba(255,28,38,.22);
}
.qfa-premium-standard-title {
  margin:24px 0 0;
  color:#0f172a;
  font-size:22px;
  font-weight:900;
  line-height:1.36;
  transition:color .28s ease;
}
.qfa-premium-standard-card:hover .qfa-premium-standard-title {
  color:#D9151E;
}
.qfa-premium-standard-code {
  margin:9px 0 0;
  color:#64748b;
  font-size:13px;
  font-weight:800;
  line-height:1.45;
  direction:ltr;
  unicode-bidi:plaintext;
}
.qfa-premium-standard-cta {
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  align-self:flex-start;
  margin-top:auto;
  padding-top:24px;
  color:#0f172a;
  font-size:13px;
  font-weight:900;
  line-height:1.2;
  text-decoration:none;
  transition:color .2s ease, transform .2s ease;
}
.qfa-premium-standard-cta:hover {
  color:#D9151E;
}
.qfa-premium-standard-card:hover .qfa-premium-standard-cta {
  color:#FF1C26;
  transform:translateX(-2px);
}
[dir="ltr"] .qfa-premium-standard-card:hover .qfa-premium-standard-cta {
  transform:translateX(2px);
}
@media (max-width:1180px) {
  .qfa-premium-standards-grid {
    grid-template-columns:repeat(2, minmax(260px, 1fr));
    gap:20px;
  }
}
@media (max-width:767px) {
  .qfa-reference-standards-section {
    padding:4rem 0;
  }
  .qfa-reference-standards-container > div:first-child h2 {
    font-size:1.9rem;
    line-height:1.24;
  }
  .qfa-reference-standards-container > div:first-child p {
    font-size:.95rem;
  }
}
@media (max-width:640px) {
  .qfa-premium-standards-grid {
    grid-template-columns:1fr;
    gap:16px;
    margin-top:2.5rem;
    direction:ltr;
  }
  .qfa-premium-standard-card {
    width:100%;
    min-width:0;
    min-height:184px;
    padding:22px;
    border-radius:10px;
  }
  .qfa-premium-standard-mark {
    font-size:38px;
  }
  .qfa-premium-standard-title {
    font-size:20px;
  }
}

/* == QSC: Service Category Cards ============================================= */
.qsc-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:2rem;
}
@media (min-width:640px) {
  .qsc-grid { grid-template-columns:repeat(2, minmax(0,1fr)); }
}

.qsc-card {
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:20rem;
  padding:1.85rem 2rem 1.65rem;
  border-radius:1.125rem;
  background:#fff;
  border:1px solid rgba(215,225,238,.95);
  box-shadow:0 4px 24px rgba(15,23,42,.055), 0 1px 4px rgba(15,23,42,.04);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  overflow:hidden;
}
.qsc-card::before {
  content:'';
  position:absolute;
  inset-block-start:0;
  inset-inline:0;
  height:3px;
  background:#FF1C26;
}
.qsc-card:hover {
  transform:translateY(-3px);
  border-color:rgba(255,28,38,.18);
  box-shadow:0 16px 44px rgba(15,23,42,.09), 0 4px 14px rgba(255,28,38,.06);
}

/* Standard badges row */
.qsc-std-badges {
  display:flex;
  flex-wrap:wrap;
  gap:.38rem;
  margin-bottom:1rem;
}
.qsc-std-badge {
  display:inline-flex;
  align-items:center;
  padding:.18rem .65rem;
  background:rgba(255,28,38,.07);
  border:1px solid rgba(255,28,38,.2);
  border-radius:.3rem;
  color:#BF111A;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.02em;
  white-space:nowrap;
  direction:ltr;
}

/* Title */
.qsc-title {
  margin:0 0 .6rem;
  color:#0f172a;
  font-size:1.28rem;
  font-weight:900;
  line-height:1.4;
}

/* Description */
.qsc-desc {
  margin:0;
  color:#475569;
  font-size:.88rem;
  line-height:1.72;
}

/* Divider */
.qsc-rule {
  height:1px;
  background:#e2e8f0;
  margin:1rem 0;
  flex-shrink:0;
}

/* Services */
.qsc-services-head {
  margin:0 0 .55rem;
  color:#1e293b;
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.01em;
}
.qsc-services-list {
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.28rem .65rem;
}
.qsc-services-list li {
  position:relative;
  padding-inline-start:1.05rem;
  color:#334155;
  font-size:.8rem;
  line-height:1.5;
}
.qsc-services-list li::before {
  content:'';
  position:absolute;
  inset-inline-start:.05rem;
  top:.42rem;
  width:.38rem;
  height:.38rem;
  border-inline-end:1.5px solid #FF1C26;
  border-block-end:1.5px solid #FF1C26;
  transform:rotate(-45deg);
}
[dir="rtl"] .qsc-services-list li::before {
  transform:rotate(135deg);
}

/* Standards pills */
.qsc-stds-row {
  display:flex;
  flex-direction:column;
  gap:.42rem;
}
.qsc-stds-label {
  color:#1e293b;
  font-size:.79rem;
  font-weight:700;
}
.qsc-stds-pills {
  display:flex;
  flex-wrap:wrap;
  gap:.32rem;
}
.qsc-std-pill {
  display:inline-flex;
  align-items:center;
  padding:.15rem .55rem;
  background:#f1f5f9;
  border:1px solid #dde5f0;
  border-radius:.28rem;
  color:#334155;
  font-size:.71rem;
  font-weight:700;
  direction:ltr;
}

/* Suitable for */
.qsc-suitable {
  margin:.7rem 0 0;
  color:#94a3b8;
  font-size:.75rem;
  font-weight:500;
  letter-spacing:.01em;
}

/* CTA pushed to card bottom */
.qsc-cta-row {
  margin-top:auto;
  padding-top:1rem;
}
.qsc-cta {
  display:inline-flex;
  align-items:center;
  gap:.28rem;
  color:#FF1C26;
  font-size:.84rem;
  font-weight:900;
  line-height:1.2;
  transition:color .18s ease, transform .18s ease;
}
.qsc-cta:hover {
  color:#D9151E;
  transform:translateX(-2px);
}

/* == QSP: Category Filter Pills ============================================== */
.qsp-cat-filter {
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin-bottom:1.15rem;
}
.qsp-cat-btn {
  display:inline-flex;
  align-items:center;
  padding:.35rem .85rem;
  border:1.5px solid #dde5f0;
  border-radius:.42rem;
  background:#fff;
  color:#475569;
  font-size:.8rem;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
  transition:border-color .16s ease, background .16s ease, color .16s ease;
  touch-action:manipulation;
}
.qsp-cat-btn:hover {
  border-color:#FF1C26;
  color:#FF1C26;
}
.qsp-cat-btn.is-active {
  border-color:#FF1C26;
  background:#FF1C26;
  color:#fff;
}

.qfa-picker-panel {
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(226,232,240,.96);
  border-radius:10px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.075);
}
@media (min-width:1024px) {
  .qfa-picker-panel {
    flex-direction:row;
    align-items:stretch;
  }
}

.qfa-picker-options {
  flex:1.55;
  min-width:0;
  padding:1.7rem 1.9rem;
}

.qfa-picker-divider {
  display:none;
}
@media (min-width:1024px) {
  .qfa-picker-divider {
    display:block;
    flex-shrink:0;
    width:1px;
    background:#dde5f0;
  }
}

.qfa-picker-summary {
  flex:.95;
  min-width:0;
  display:flex;
  flex-direction:column;
  padding:1.7rem 1.9rem;
  border-block-start:1px solid #e2e8f0;
  background:linear-gradient(180deg, #fff, #f8fafc);
}
@media (min-width:1024px) {
  .qfa-picker-summary {
    border-block-start:none;
    min-width:19rem;
    max-width:25rem;
  }
}

.qfa-picker-col-head {
  display:flex;
  align-items:center;
  gap:.5rem;
  color:#111827;
  font-size:1rem;
  font-weight:900;
  line-height:1.4;
  margin-bottom:1.1rem;
}
.qfa-picker-col-head svg {
  color:#FF1C26;
  flex-shrink:0;
}
.qfa-picker-col-head--summary {
  color:#1e293b;
}
.qfa-picker-count {
  color:#FF1C26;
  font-size:.9rem;
  font-weight:900;
}

/* Available options chips */
.consulting-form-options {
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:.75rem;
}
@media (min-width:640px) {
  .consulting-form-options {
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
}
@media (min-width:1180px) {
  .consulting-form-options {
    grid-template-columns:repeat(5, minmax(0,1fr));
  }
}

.consulting-specialization-option {
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  min-width:0;
  min-height:2.55rem;
  padding:.52rem .9rem;
  border:1px solid rgba(203,213,225,.95);
  border-radius:8px;
  color:#0f172a;
  background:#fff;
  font-size:.86rem;
  font-weight:900;
  line-height:1.2;
  cursor:pointer;
  touch-action:manipulation;
  user-select:none;
  text-align:center;
  box-shadow:0 1px 2px rgba(15,23,42,.035);
  transition:background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.consulting-specialization-option:hover {
  transform:translateY(-1px);
  border-color:rgba(255,28,38,.38);
  background:#fffafa;
  box-shadow:0 8px 18px rgba(15,23,42,.07), 0 3px 10px rgba(255,28,38,.07);
}
.consulting-specialization-option:focus-visible {
  outline:3px solid rgba(255,28,38,.2);
  outline-offset:3px;
}
.consulting-specialization-option.is-selected {
  border-color:#FF1C26;
  color:#fff;
  background:linear-gradient(135deg, #FF1C26, #D9151E);
  box-shadow:0 10px 22px rgba(255,28,38,.24);
}
.consulting-specialization-option.is-selected:hover {
  background:linear-gradient(135deg, #f01721, #c9111a);
  border-color:#e8111b;
  box-shadow:0 12px 24px rgba(255,28,38,.3);
  transform:translateY(-1px);
}
.consulting-option-check {
  display:grid;
  place-items:center;
  flex-shrink:0;
  width:1.05rem;
  height:1.05rem;
  border:1.5px solid rgba(148,163,184,.5);
  border-radius:999px;
  color:transparent;
  background:transparent;
  transition:background .16s ease, border-color .16s ease, color .16s ease;
}
.consulting-specialization-option:hover .consulting-option-check {
  border-color:#FF1C26;
}
.consulting-specialization-option.is-selected .consulting-option-check {
  color:#FF1C26;
  background:rgba(255,255,255,.95);
  border-color:rgba(255,255,255,.8);
}

/* Selected chips panel */
.consulting-selected-chips {
  flex:1;
  display:flex;
  flex-wrap:wrap;
  align-content:flex-start;
  gap:.7rem;
  min-height:5.5rem;
  padding:.25rem 0;
}
.consulting-selected-chip {
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  max-width:100%;
  min-height:2.4rem;
  padding:.48rem .9rem;
  border:1px solid #FF1C26;
  border-radius:8px;
  color:#fff;
  background:linear-gradient(135deg, #FF1C26, #D9151E);
  font-size:.86rem;
  font-weight:900;
  line-height:1.3;
  box-shadow:0 8px 16px rgba(255,28,38,.2);
  transition:background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.consulting-selected-chip:hover {
  background:linear-gradient(135deg, #f01721, #c9111a);
  border-color:#e8111b;
  transform:translateY(-1px);
  box-shadow:0 10px 20px rgba(255,28,38,.28);
}
.consulting-selected-chip span {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.consulting-selected-chip strong {
  display:grid;
  place-items:center;
  flex-shrink:0;
  width:.95rem;
  height:.95rem;
  color:#fff;
  background:transparent;
  font-size:.95rem;
  line-height:1;
}
.consulting-selected-empty {
  color:#94a3b8;
  font-size:.84rem;
  font-weight:600;
  display:flex;
  align-items:center;
  width:100%;
  padding:.25rem 0;
}

/* Clear all button - bottom of summary column */
.consulting-clear-selection {
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  margin-top:1rem;
  padding:.48rem .85rem;
  border:1px solid rgba(255,28,38,.28);
  border-radius:8px;
  color:#FF1C26;
  background:transparent;
  font-size:.8rem;
  font-weight:900;
  white-space:nowrap;
  transition:color .18s ease, background .18s ease, border-color .18s ease;
}
.consulting-clear-selection:hover {
  color:#D9151E;
  background:rgba(255,28,38,.05);
  border-color:#FF1C26;
}
.qfa-license-trust-block {
  background:linear-gradient(135deg, #fff, #f8fafc);
}
.qfa-license-preview-grid {
  display:grid;
  grid-template-columns:1fr .72fr;
  gap:1rem;
  align-items:end;
}
.qfa-license-preview {
  position:relative;
  display:block;
  overflow:hidden;
  border:1px solid rgba(226,232,240,.92);
  border-radius:1rem;
  background:#fff;
  box-shadow:0 16px 42px rgba(15,23,42,.12);
}
.qfa-license-preview img {
  width:100%;
  height:100%;
  max-height:24rem;
  object-fit:cover;
  object-position:top center;
}
.qfa-license-preview.is-secondary img {
  max-height:18rem;
}
.qfa-license-preview span {
  position:absolute;
  inset-inline:1rem;
  inset-block-end:1rem;
  display:inline-flex;
  justify-content:center;
  padding:.55rem .85rem;
  border-radius:999px;
  color:#fff;
  background:rgba(15,23,42,.84);
  font-size:.78rem;
  font-weight:800;
  backdrop-filter:blur(10px);
}

.qfa-form-card {
  padding:var(--qfa-card-padding);
}
.qfa-form-grid {
  display:grid;
  gap:1rem;
}
@media (min-width:640px) {
  .qfa-form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
.qfa-input,
.qfa-textarea,
.qfa-form-card .input {
  width:100%;
  border:1px solid var(--qfa-border);
  border-radius:var(--qfa-radius-button);
  background:#f8fafc;
  color:var(--qfa-gray);
}
.qfa-input:focus,
.qfa-textarea:focus,
.qfa-form-card .input:focus {
  border-color:var(--qfa-red);
  box-shadow:0 0 0 4px rgba(255,28,38,.10);
  outline:none;
}
.qfa-choice-card {
  display:block;
  cursor:pointer;
  border:1px solid var(--qfa-border);
  border-radius:var(--qfa-radius-button);
  background:#fff;
  padding:1rem;
  transition:border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.qfa-choice-card:hover {
  border-color:rgba(255,28,38,.22);
  box-shadow:var(--qfa-shadow-soft);
}
.qfa-choice-card-selected {
  border-color:rgba(255,28,38,.28);
  background:linear-gradient(180deg, var(--qfa-red-soft), #fff 70%);
}
.qfa-choice-check {
  display:grid;
  place-items:center;
  width:1.25rem;
  height:1.25rem;
  border:1px solid #cbd5e1;
  border-radius:999px;
  color:#fff;
}
.qfa-choice-card:has(:checked) .qfa-choice-check {
  border-color:var(--qfa-red);
  background:var(--qfa-red);
}
.qfa-choice-card:has(:checked) .qfa-choice-check svg {
  opacity:1;
}

.qfa-steps {
  display:grid;
  gap:1rem;
}
@media (min-width:768px) {
  .qfa-steps { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
.qfa-step-card {
  padding:1.25rem;
}
.qfa-step-number {
  display:grid;
  place-items:center;
  width:2.5rem;
  height:2.5rem;
  border-radius:999px;
  color:#fff;
  background:var(--qfa-red);
  box-shadow:0 10px 24px rgba(255,28,38,.16);
  font-size:.9rem;
  font-weight:900;
}
.qfa-impact-card {
  padding:1.25rem;
}
.qfa-impact-icon {
  display:grid;
  place-items:center;
  width:2.75rem;
  height:2.75rem;
  border-radius:1rem;
  color:var(--qfa-red);
  background:var(--qfa-red-soft);
}

.qfa-cta-band,
.qfa-cta-dark,
.qfa-cta-soft {
  border-radius:calc(var(--qfa-radius-card) + 10px);
  padding:clamp(1.5rem,4vw,2.35rem);
  text-align:center;
}
.qfa-cta-band,
.qfa-cta-dark {
  color:#fff;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,28,38,.14), transparent 32%),
    linear-gradient(135deg, var(--qfa-black), var(--qfa-dark));
  box-shadow:var(--qfa-shadow-premium);
}
.qfa-cta-soft {
  color:var(--qfa-gray);
  border:1px solid var(--qfa-border);
  background:#fff;
  box-shadow:var(--qfa-shadow-soft);
}

/* Shared design-system refinements: opt-in only, never applied to generic elements. */
.qfa-design-page {
  background:
    linear-gradient(180deg, #fff 0%, #fff 42%, #f8fafc 100%);
  color:var(--qfa-gray);
}
.qfa-design-page .qfa-title,
.qfa-design-page .qfa-section-title,
.qfa-design-page .qfa-subtitle,
.qfa-design-page .qfa-section-subtitle {
  overflow-wrap:anywhere;
}
.qfa-shared-hero {
  background:
    radial-gradient(circle at 82% 12%, rgba(255,28,38,.10), transparent 28%),
    radial-gradient(circle at 12% 82%, rgba(43,43,43,.06), transparent 30%),
    linear-gradient(180deg, #fff 0%, #fbfcfe 64%, #f6f8fb 100%);
}
.qfa-shared-hero::before {
  opacity:.26;
}
.qfa-shared-hero-dark {
  color:#fff;
  background:
    radial-gradient(circle at 80% 16%, rgba(255,28,38,.18), transparent 30%),
    linear-gradient(135deg, #0D0D0D 0%, #111827 100%);
}
.qfa-shared-surface,
.qfa-shared-card,
.qfa-shared-callout {
  border:1px solid rgba(229,231,235,.95);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(17,24,39,.055);
}
.qfa-shared-card {
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.qfa-shared-card:hover {
  transform:translateY(-3px);
  border-color:rgba(255,28,38,.18);
  box-shadow:0 18px 44px rgba(17,24,39,.10);
}
.qfa-shared-callout {
  background:
    linear-gradient(180deg, rgba(255,28,38,.035), #fff 72%);
}
.qfa-shared-cta {
  border:1px solid rgba(255,255,255,.10);
  border-radius:26px;
  background:
    radial-gradient(circle at 16% 20%, rgba(255,28,38,.16), transparent 32%),
    linear-gradient(135deg, #0D0D0D, #111827);
  box-shadow:0 18px 52px rgba(13,13,13,.18);
}
.qfa-shared-filter-bar {
  border-bottom:1px solid rgba(226,232,240,.85);
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);
  box-shadow:0 10px 28px rgba(17,24,39,.045);
  top:86px;
}
.qfa-dropdown { position:relative; }
.qfa-dropdown-menu {
  background:#fff;
  border:1px solid var(--qfa-border);
  border-radius:14px;
  box-shadow:0 20px 48px rgba(17,24,39,.14);
}
.qfa-auth-shell {
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 16%, var(--qfa-red-soft), transparent 28%),
    radial-gradient(circle at 82% 72%, rgba(17,24,39,.08), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, var(--qfa-bg) 100%);
}
.qfa-auth-shell::before {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(148,163,184,.11) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,.11) 1px, transparent 1px);
  background-size:44px 44px;
  opacity:.45;
}

.qfa-hero-split {
  display:grid;
  gap:2rem;
  align-items:center;
}
@media (min-width:1024px) {
  .qfa-hero-split { grid-template-columns:1.05fr .95fr; gap:3rem; }
}
.qfa-form-layout {
  display:grid;
  gap:2rem;
  align-items:start;
}
@media (min-width:1024px) {
  .qfa-form-layout { grid-template-columns:.85fr 1.15fr; }
}

.qfa-course-card,
.qfa-instructor-card,
.qfa-blog-card {
  overflow:hidden;
}
.qfa-course-card .aspect-video,
.qfa-blog-card .aspect-video {
  background:
    radial-gradient(circle at 18% 30%, rgba(255,28,38,.10), transparent 34%),
    linear-gradient(135deg, #f8fafc, #eef2f7);
}
.qfa-instructor-card {
  background:
    linear-gradient(180deg, rgba(255,28,38,.018), transparent 38%),
    #fff;
}
.qfa-footer-brand h3 {
  margin-top:20px;
  color:#fff;
  font-size:13px;
  font-weight:900;
}

.qfa-home-page {
  background:#ffffff;
  color:#1C1C1C;
  overflow:hidden;
}
.qfa-home-page h1,
.qfa-home-page h2,
.qfa-home-page h3 {
  font-family:'Tajawal','Sora',system-ui,sans-serif;
  letter-spacing:0;
}
.qfa-header svg,
.qfa-home-page svg,
.qfa-footer svg {
  display:block;
  flex-shrink:0;
}
.qfa-header .h-4,
.qfa-home-page .h-4,
.qfa-footer .h-4 { height:1rem; }
.qfa-header .w-4,
.qfa-home-page .w-4,
.qfa-footer .w-4 { width:1rem; }
.qfa-header .h-5,
.qfa-home-page .h-5,
.qfa-footer .h-5 { height:1.25rem; }
.qfa-header .w-5,
.qfa-home-page .w-5,
.qfa-footer .w-5 { width:1.25rem; }
.qfa-header .h-6,
.qfa-home-page .h-6,
.qfa-footer .h-6 { height:1.5rem; }
.qfa-header .w-6,
.qfa-home-page .w-6,
.qfa-footer .w-6 { width:1.5rem; }
.qfa-header .h-7,
.qfa-home-page .h-7,
.qfa-footer .h-7 { height:1.75rem; }
.qfa-header .w-7,
.qfa-home-page .w-7,
.qfa-footer .w-7 { width:1.75rem; }
.qfa-header .h-10,
.qfa-home-page .h-10,
.qfa-footer .h-10 { height:2.5rem; }
.qfa-header .w-10,
.qfa-home-page .w-10,
.qfa-footer .w-10 { width:2.5rem; }
.qfa-home-hero {
  padding:8px 0 0;
}
.qfa-home-clean-section {
  padding-block:5rem;
  background:#FFFFFF;
  border-bottom:1px solid rgba(28,28,28,.08);
}
.qfa-home-clean-section:not(.is-white) {
  background:
    radial-gradient(circle at 88% 10%, rgba(250,18,37,.055), transparent 28%),
    linear-gradient(180deg, #FFFFFF 0%, #f7f7f7 100%);
}
.qfa-home-section-header {
  max-width:780px;
  margin-bottom:2rem;
}
.qfa-home-narrative-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:1rem;
}
.qfa-home-clean-card,
.qfa-home-platform-callout,
.qfa-home-final-card {
  /* Frosted-glass surface: translucent background + blur so the token
     matches the bg-white/80 + backdrop-blur-md treatment used sitewide. */
  background:rgba(255,255,255,.8);
  backdrop-filter:blur(16px) saturate(160%);
  -webkit-backdrop-filter:blur(16px) saturate(160%);
  border:1px solid rgba(28,28,28,.10);
  border-radius:var(--qfa-radius-card);
  box-shadow:0 16px 40px rgba(0,0,0,.06);
}
.qfa-home-clean-card {
  min-height:230px;
  padding:1.75rem;
}
.qfa-home-clean-card h3 {
  margin:.9rem 0 0;
  color:#000000;
  font-size:1.1rem;
  font-weight:900;
  line-height:1.45;
}
.qfa-home-clean-card p {
  margin:.75rem 0 0;
  color:#1C1C1C;
  font-size:.94rem;
  font-weight:600;
  line-height:1.9;
}
.qfa-home-card-icon {
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  color:var(--qfa-brand-red);
  background:rgba(250,18,37,.07);
  border:1px solid rgba(250,18,37,.16);
  border-radius:var(--qfa-radius-btn);
}
.qfa-home-platform-callout {
  display:flex;
  align-items:flex-start;
  gap:1rem;
  margin-bottom:3rem;
  padding:1.25rem 1.5rem;
}
.qfa-home-platform-callout p {
  margin:0;
  color:#1C1C1C;
  font-size:.95rem;
  font-weight:800;
  line-height:1.9;
}
.qfa-home-final-section {
  padding-block:5rem;
  background:
    radial-gradient(circle at 50% 0%, rgba(250,18,37,.07), transparent 30%),
    linear-gradient(180deg, #FFFFFF 0%, #f7f7f7 100%);
}
.qfa-home-final-card {
  max-width:960px;
  margin-inline:auto;
  padding:2.5rem;
  text-align:center;
}
.qfa-home-final-card h2 {
  color:#000000;
}
.qfa-home-final-card p {
  color:#1C1C1C;
}
.qfa-home-page .qfa-card,
.qfa-home-page .qfa-stat-card {
  border-color:rgba(28,28,28,.10) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.055) !important;
}
.qfa-home-page .text-slate-900,
.qfa-home-page .text-slate-600,
.qfa-home-page .text-slate-500,
.qfa-home-page .text-slate-400 {
  color:#1C1C1C !important;
}
.qfa-home-page .border-slate-100,
.qfa-home-page .border-slate-200\/60,
.qfa-home-page .border-slate-200\/80,
.qfa-home-page .border-slate-200,
.qfa-home-page .border-slate-100 {
  border-color:rgba(28,28,28,.10) !important;
}
@media (max-width:1023px) {
  .qfa-home-narrative-grid {
    grid-template-columns:1fr;
  }
}
@media (max-width:639px) {
  .qfa-home-clean-section,
  .qfa-home-final-section {
    padding-block:3.5rem;
  }
  .qfa-home-clean-card,
  .qfa-home-final-card {
    padding:1.35rem;
  }
  .qfa-home-platform-callout {
    display:grid;
    padding:1.15rem;
  }
}
.qfa-hero-card {
  position:relative;
  overflow:hidden;
  border-radius:14px;
  min-height:520px;
  color:#fff;
  background:
    linear-gradient(90deg, rgba(15,23,42,.34) 0%, rgba(7,12,22,.84) 48%, rgba(4,7,13,.94) 100%),
    radial-gradient(circle at 20% 38%, rgba(255,28,38,.10) 0 11%, transparent 28%),
    radial-gradient(circle at 78% 22%, rgba(255,28,38,.18) 0 8%, transparent 27%),
    linear-gradient(135deg, #172033 0%, #0b1220 42%, #05070c 100%);
  box-shadow:0 24px 70px rgba(15,23,42,.23), inset 0 0 0 1px rgba(255,255,255,.11);
}
.qfa-hero-card::before {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(135deg, rgba(255,255,255,.075) 0 1px, transparent 1px 100%),
    linear-gradient(112deg, transparent 0 27%, rgba(255,255,255,.07) 27.2%, transparent 27.9% 100%),
    linear-gradient(0deg, rgba(0,0,0,.34), transparent 36%, rgba(0,0,0,.18));
  background-size:42px 42px, auto, auto;
  opacity:.50;
}
.qfa-hero-card::after {
  content:'';
  position:absolute;
  inset:-1px;
  pointer-events:none;
  background:
    linear-gradient(115deg, transparent 0 58%, rgba(255,28,38,.16) 58.2%, transparent 59% 100%),
    radial-gradient(ellipse at 25% 78%, rgba(255,28,38,.08), transparent 42%);
  opacity:.62;
}
.qfa-hero-card-grid {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);
  grid-template-areas:"visual copy";
  min-height:520px;
}
[dir="rtl"] .qfa-hero-card-grid,
[dir="ltr"] .qfa-hero-card-grid {
  direction:ltr;
}
[dir="rtl"] .qfa-hero-visual,
[dir="rtl"] .qfa-hero-copy {
  direction:rtl;
}
[dir="ltr"] .qfa-hero-visual,
[dir="ltr"] .qfa-hero-copy {
  direction:ltr;
}
.qfa-hero-visual {
  grid-area:visual;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:48px 32px;
}
.qfa-certificate-stage {
  width:100%;
  max-width:332px;
  padding:14px;
  border-radius:8px;
  background:linear-gradient(145deg, #ffffff 0%, #f8fafc 54%, #fff1f2 100%);
  border:1px solid rgba(255,28,38,.16);
  box-shadow:0 26px 54px rgba(15,23,42,.18), 0 0 0 1px rgba(255,255,255,.82) inset;
}
.qfa-certificate-placeholder {
  position:relative;
  overflow:hidden;
  min-height:340px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
  padding:28px 22px;
  text-align:center;
  color:#6b7280;
  background:linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border:1px dashed #9ca7b5;
  border-radius:4px;
  box-shadow:inset 0 0 0 12px #fff, inset 0 0 0 13px rgba(148,163,184,.36), inset 0 0 0 24px rgba(248,250,252,.72);
}
.qfa-certificate-placeholder::before {
  content:'';
  position:absolute;
  inset:30px;
  border:1px solid rgba(148,163,184,.34);
  pointer-events:none;
}
.qfa-certificate-placeholder > * {
  position:relative;
  z-index:1;
}
.qfa-certificate-placeholder p {
  max-width:190px;
  margin:0;
  color:#6b7280;
  font-size:15px;
  font-weight:700;
  line-height:1.8;
}
.qfa-certificate-empty-icon {
  display:grid;
  place-items:center;
  width:70px;
  height:70px;
  color:#8f9aaa;
  background:#f3f4f6;
  border:1px solid #d1d5db;
  border-radius:6px;
}
.qfa-certificate-caption {
  margin:14px 0 0;
  color:#111827;
  background:rgba(255,255,255,.92);
  border-radius:7px;
  padding:10px 12px;
  font-size:14px;
  font-weight:800;
  line-height:1.5;
  text-align:center;
}
.qfa-certificate-preview-wrap {
  position:relative;
  width:100%;
  max-width:430px;
  margin-inline:auto;
  padding:18px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 46px rgba(15,23,42,.08);
}
.qfa-certificate-preview-wrap .qfa-certificate-placeholder {
  min-height:300px;
  border-radius:12px;
  box-shadow:inset 0 0 0 10px #fff, inset 0 0 0 11px rgba(148,163,184,.30), inset 0 0 0 22px rgba(248,250,252,.72);
}
.qfa-hero-copy {
  grid-area:copy;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:66px 58px 72px;
}
[dir="rtl"] .qfa-hero-copy {
  text-align:right;
}
[dir="ltr"] .qfa-hero-copy {
  text-align:left;
}
.qfa-hero-badge {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:16px;
  padding:10px 15px;
  color:#fff;
  background:rgba(255,28,38,.15);
  border:1px solid rgba(255,28,38,.46);
  border-radius:999px;
  font-size:13px;
  font-weight:900;
  box-shadow:0 12px 28px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08);
}
.qfa-hero-badge svg {
  color:#FF1C26;
}
.qfa-hero-brand {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  margin-bottom:18px;
  padding-inline-start:16px;
  border-inline-start:3px solid #FF1C26;
}
.qfa-hero-brand strong {
  display:block;
  color:#fff;
  font-size:28px;
  font-weight:900;
  line-height:1.35;
}
.qfa-hero-brand small {
  display:block;
  color:rgba(255,255,255,.72);
  font-size:18px;
  font-weight:900;
  line-height:1;
}
.qfa-hero-brand span {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#fff;
  background:rgba(255,28,38,.14);
  border:1px solid rgba(255,28,38,.34);
  border-radius:999px;
  padding:7px 12px;
  font-size:13px;
  font-weight:900;
  line-height:1.45;
}
.qfa-hero-brand span svg {
  color:#FF1C26;
}
.qfa-hero-copy h1 {
  margin:0;
  color:#fff;
  font-size:41px;
  font-weight:900;
  line-height:1.25;
  max-width:680px;
}
.qfa-hero-copy h1 span {
  display:block;
}
.qfa-hero-copy h1 span + span {
  margin-top:6px;
  font-size:30px;
  line-height:1.45;
}
.qfa-hero-subtitle {
  margin:22px 0 0;
  max-width:620px;
  color:rgba(255,255,255,.86);
  font-size:17px;
  font-weight:500;
  line-height:2;
}
.qfa-hero-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:14px;
  margin-top:34px;
}
.qfa-hero-primary,
.qfa-hero-secondary {
  min-width:178px;
  min-height:50px;
  border-radius:9px;
  font-size:15px;
  font-weight:900;
}
.qfa-hero-primary {
  box-shadow:0 14px 32px rgba(255,28,38,.34);
}
.qfa-hero-secondary {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 24px;
  color:#111827;
  background:#fff;
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
  transition:transform .2s ease, box-shadow .2s ease;
}
.qfa-hero-secondary:hover {
  transform:translateY(-1px);
  box-shadow:0 16px 34px rgba(0,0,0,.24);
}
.qfa-hero-trust {
  position:absolute;
  z-index:2;
  inset-inline-start:28px;
  bottom:28px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 17px;
  color:#fff;
  background:rgba(12,18,30,.88);
  border:1px solid rgba(255,255,255,.16);
  border-radius:11px;
  font-size:14px;
  font-weight:900;
  box-shadow:0 14px 30px rgba(0,0,0,.32), inset 3px 0 0 #FF1C26;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.qfa-hero-trust svg {
  color:#FF1C26;
}

.qfa-accreditation-section {
  padding:46px 0;
  background:#f7f7f7;
}
.qfa-accreditation-card {
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(300px, 430px);
  gap:42px;
  align-items:center;
  padding:38px;
  background:#fff;
  border:1px solid #e8e8e8;
  border-radius:14px;
  box-shadow:0 18px 48px rgba(0,0,0,.08);
}
.qfa-accreditation-copy {
  min-width:0;
}
.qfa-accreditation-kicker {
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:14px;
  color:var(--qfa-brand-red);
  font-size:13px;
  font-weight:900;
}
.qfa-accreditation-kicker svg {
  color:var(--qfa-brand-red);
}
.qfa-accreditation-card h2 {
  margin:0;
  max-width:760px;
  color:#000;
  font-size:32px;
  font-weight:900;
  line-height:1.35;
}
.qfa-accreditation-lead {
  margin:14px 0 0;
  max-width:720px;
  color:#1C1C1C;
  font-size:20px;
  font-weight:900;
  line-height:1.7;
}
.qfa-accreditation-body {
  margin:14px 0 0;
  max-width:760px;
  color:#1C1C1C;
  font-size:16px;
  font-weight:600;
  line-height:2;
}
.qfa-accreditation-points {
  display:grid;
  gap:10px;
  margin:22px 0 0;
  padding:0;
  list-style:none;
}
.qfa-accreditation-points li {
  position:relative;
  padding-inline-start:24px;
  color:#1C1C1C;
  font-size:15px;
  font-weight:800;
  line-height:1.8;
}
.qfa-accreditation-points li::before {
  content:'';
  position:absolute;
  inset-inline-start:0;
  top:.75em;
  width:8px;
  height:8px;
  background:var(--qfa-brand-red);
  border-radius:999px;
}
.qfa-accreditation-details {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
  margin:24px 0 0;
  max-width:520px;
}
.qfa-accreditation-details div {
  padding:14px 15px;
  background:#f7f7f7;
  border:1px solid #e8e8e8;
  border-radius:9px;
}
.qfa-accreditation-details dt {
  margin:0 0 7px;
  color:#1C1C1C;
  font-size:12px;
  font-weight:900;
}
.qfa-accreditation-details dd {
  margin:0;
  color:#000;
  font-size:15px;
  font-weight:900;
  line-height:1.4;
}
.qfa-accreditation-cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  margin-top:24px;
  padding:0 22px;
  color:#fff;
  background:var(--qfa-brand-red);
  border:1px solid var(--qfa-brand-red);
  border-radius:var(--qfa-radius-btn);
  font-size:14px;
  font-weight:900;
  box-shadow:0 12px 26px rgba(250,18,37,.22);
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.qfa-accreditation-cta:hover {
  color:#fff;
  background:#000;
  border-color:#000;
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(0,0,0,.18);
}
.qfa-accreditation-preview {
  margin:0;
}
.qfa-accreditation-frame {
  position:relative;
  display:block;
  overflow:hidden;
  width:100%;
  max-width:430px;
  margin-inline:auto;
  padding:12px;
  background:#fff;
  border:1px solid #d9d9d9;
  border-radius:10px;
  box-shadow:0 22px 44px rgba(0,0,0,.14);
}
.qfa-accreditation-frame::before {
  content:'';
  position:absolute;
  inset:12px;
  border:1px solid rgba(250,18,37,.18);
  border-radius:6px;
  pointer-events:none;
}
.qfa-accreditation-frame img {
  display:block;
  width:100%;
  height:auto;
  border-radius:6px;
}

.qfa-stats-section {
  padding:18px 0 32px;
  background:#fff;
}
.qfa-stats-grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:22px;
}
.qfa-stat-card {
  /* NOTE: this previously duplicated the .qfa-stat-card rule defined
     earlier in the QFA shared design system with a divergent 10px
     radius, silently overriding it since it appears later in the
     cascade. Normalized to the shared --qfa-radius-card token. */
  min-height:136px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  background:#fff;
  border:1px solid rgba(226,232,240,.96);
  border-radius:var(--qfa-radius-card);
  box-shadow:0 12px 34px rgba(15,23,42,.08);
}
.qfa-stat-icon {
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  color:var(--qfa-brand-red);
}
.qfa-stat-value {
  color:#0f172a;
  font-size:31px;
  font-weight:900;
  line-height:1;
}
.qfa-stat-label {
  color:#111827;
  font-size:15px;
  font-weight:700;
}

.qfa-problem-section {
  padding:8px 0 42px;
  background:#fff;
}
.qfa-problem-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:24px;
}
.qfa-problem-card {
  position:relative;
  min-height:238px;
  padding:36px 34px 32px;
  background:#fff;
  border:1px solid rgba(226,232,240,.94);
  border-radius:12px;
  box-shadow:0 14px 38px rgba(15,23,42,.07);
}
.qfa-problem-card.is-problem {
  background:linear-gradient(180deg, #fff, #fff7f7);
}
.qfa-problem-card.is-solution {
  background:linear-gradient(180deg, #fff, #f8fffb);
}
.qfa-problem-icon {
  position:absolute;
  top:26px;
  inset-inline-start:26px;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:999px;
  color:#fff;
}
.qfa-problem-card.is-problem .qfa-problem-icon {
  background:#FF1C26;
}
.qfa-problem-card.is-solution .qfa-problem-icon {
  background:#4f9c61;
}
.qfa-problem-card h2 {
  margin:0 56px 18px 0;
  color:#101827;
  font-size:25px;
  font-weight:900;
  line-height:1.35;
}
.qfa-problem-card p {
  margin:0;
  color:#334155;
  font-size:16px;
  font-weight:500;
  line-height:2;
}
.qfa-problem-card p + p {
  margin-top:12px;
}

.qfa-value-section,
.qfa-sessions-section,
.qfa-pricing-section,
.qfa-partners-strip {
  padding:42px 0;
  background:#fff;
}
.qfa-section-heading {
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:12px;
  margin-bottom:34px;
}
.qfa-section-heading h2 {
  margin:0;
  color:#101827;
  font-size:30px;
  font-weight:900;
  line-height:1.35;
}
.qfa-section-heading span {
  width:46px;
  height:3px;
  background:#FF1C26;
  border-radius:999px;
}
.qfa-section-heading-compact {
  margin-bottom:28px;
}
.qfa-value-grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:22px;
}
.qfa-value-card {
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:332px;
  color:#111827;
  background:#fff;
  border:1px solid rgba(226,232,240,.96);
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 14px 38px rgba(15,23,42,.08);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.qfa-value-card:hover {
  transform:translateY(-4px);
  border-color:rgba(255,28,38,.22);
  box-shadow:0 18px 48px rgba(15,23,42,.12);
}
.qfa-value-image {
  height:138px;
  background:#111827;
}
.qfa-value-training .qfa-value-image {
  background:
    linear-gradient(135deg, rgba(2,6,23,.22), rgba(2,6,23,.38)),
    linear-gradient(135deg, #c5d4e5, #314155 48%, #151f2c);
}
.qfa-value-consulting .qfa-value-image {
  background:
    linear-gradient(135deg, rgba(2,6,23,.18), rgba(2,6,23,.34)),
    linear-gradient(135deg, #d7dde7, #5b6471 48%, #1a202c);
}
.qfa-value-company .qfa-value-image {
  background:
    linear-gradient(135deg, rgba(2,6,23,.16), rgba(2,6,23,.32)),
    linear-gradient(135deg, #e4e9ef, #768393 48%, #222b37);
}
.qfa-value-awarding .qfa-value-image {
  background:
    linear-gradient(135deg, rgba(2,6,23,.14), rgba(2,6,23,.30)),
    linear-gradient(135deg, #eef2f7, #99a4b1 45%, #333b47);
}
.qfa-value-image::after {
  content:'';
  display:block;
  height:100%;
  background:linear-gradient(135deg, transparent 0 42%, rgba(255,255,255,.16) 42% 44%, transparent 44% 100%);
}
.qfa-value-icon {
  position:absolute;
  top:108px;
  left:50%;
  transform:translateX(-50%);
  z-index:1;
  display:grid;
  place-items:center;
  width:62px;
  height:62px;
  color:#fff;
  background:#FF1C26;
  border:6px solid #fff;
  border-radius:999px;
  box-shadow:0 12px 26px rgba(255,28,38,.26);
}
.qfa-value-body {
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  flex:1;
  padding:48px 28px 28px;
}
.qfa-value-body h3 {
  margin:0;
  color:#111827;
  font-size:19px;
  font-weight:900;
  line-height:1.45;
}
.qfa-value-body p {
  margin:14px 0 0;
  color:#475569;
  font-size:15px;
  font-weight:500;
  line-height:1.9;
}
.qfa-value-cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  margin-top:auto;
  padding:0 18px;
  color:#FF1C26;
  background:rgba(255,28,38,.06);
  border:1px solid rgba(255,28,38,.24);
  border-radius:999px;
  font-size:13px;
  font-weight:900;
  transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.qfa-value-card:hover .qfa-value-cta {
  color:#fff;
  background:#FF1C26;
  border-color:#FF1C26;
}

.qfa-sessions-section {
  padding-top:34px;
}
.qfa-sessions-grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:16px;
}
.qfa-session-card {
  min-height:184px;
  display:flex;
  flex-direction:column;
  padding:18px;
  background:#fff;
  border:1px solid rgba(226,232,240,.96);
  border-radius:9px;
  box-shadow:0 12px 30px rgba(15,23,42,.07);
}
.qfa-session-meta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#FF1C26;
  font-size:11px;
  font-weight:900;
}
.qfa-session-card h3 {
  margin:14px 0 12px;
  color:#111827;
  font-size:15px;
  font-weight:900;
  line-height:1.55;
  min-height:46px;
}
.qfa-session-date {
  display:flex;
  align-items:center;
  gap:7px;
  color:#334155;
  font-size:12px;
  font-weight:600;
  line-height:1.5;
}
.qfa-session-date + .qfa-session-date {
  margin-top:7px;
}
.qfa-session-date svg {
  color:#64748b;
  flex:0 0 auto;
}
.qfa-session-countdown {
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:9px;
  color:#64748b;
  font-size:12px;
  font-weight:700;
  line-height:1.5;
}
.qfa-session-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  margin-top:auto;
  color:#fff;
  background:#d80f1f;
  border-radius:5px;
  font-size:12px;
  font-weight:900;
  box-shadow:0 8px 18px rgba(255,28,38,.22);
}
.qfa-session-empty,
.qfa-plan-empty {
  grid-column:1 / -1;
  padding:26px;
  color:#64748b;
  text-align:center;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:10px;
}
.qfa-section-link {
  margin-top:18px;
  text-align:center;
}
.qfa-section-link a {
  color:#111827;
  font-size:13px;
  font-weight:800;
}
.qfa-section-link a:hover {
  color:#FF1C26;
}

.qfa-pricing-section {
  padding-top:26px;
  overflow-x:hidden;
}
.qfa-pricing-page {
  width:100%;
  overflow-x:hidden;
}
html:has(.qfa-pricing-page),
body:has(.qfa-pricing-page) {
  overflow-x:hidden;
}
.qfa-pricing-section .qfa-section-header {
  margin-bottom:44px;
}
.qfa-pricing-note {
  max-width:760px;
  margin:-12px auto 28px;
  color:#334155;
  background:rgba(255,28,38,.055);
  border:1px solid rgba(255,28,38,.16);
  border-radius:10px;
  padding:13px 18px;
  text-align:center;
  font-size:15px;
  font-weight:800;
  line-height:1.8;
}
.qfa-pricing-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  align-items:stretch;
  gap:24px;
}
.qfa-plan-card {
  position:relative;
  display:flex;
  flex-direction:column;
  height:100%;
  min-height:520px;
  padding:34px 24px 26px;
  background:#fff;
  border:1px solid rgba(226,232,240,.96);
  border-radius:10px;
  box-shadow:0 12px 30px rgba(15,23,42,.07);
}
.qfa-plan-card.is-recommended {
  border-color:#FF1C26;
  box-shadow:0 16px 40px rgba(255,28,38,.14), 0 10px 28px rgba(15,23,42,.07);
}
.qfa-plan-card-founder {
  border-color:rgba(255,28,38,.32);
  background:linear-gradient(180deg, rgba(255,28,38,.045), #fff 34%);
  box-shadow:0 18px 44px rgba(15,23,42,.09);
}
.qfa-plan-card-founder .qfa-plan-top {
  padding-top:10px;
}
.qfa-plan-badge {
  position:absolute;
  top:-12px;
  left:50%;
  transform:translateX(-50%);
  min-width:92px;
  padding:5px 12px;
  color:#fff;
  background:#FF1C26;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  text-align:center;
  box-shadow:0 8px 18px rgba(255,28,38,.28);
}
.qfa-plan-top h3 {
  margin:0;
  color:#111827;
  font-size:21px;
  font-weight:900;
  line-height:1.35;
}
.qfa-plan-top p {
  min-height:44px;
  margin:14px 0 0;
  color:#64748b;
  font-size:13.5px;
  font-weight:800;
  line-height:1.7;
}
.qfa-plan-card-founder .qfa-plan-top {
  min-height:92px;
}
.qfa-plan-price {
  display:flex;
  align-items:flex-end;
  gap:8px;
  margin-top:26px;
  padding-top:20px;
  border-top:1px solid #eef2f7;
}
.qfa-plan-price strong {
  color:#111827;
  font-size:32px;
  font-weight:900;
  line-height:1;
}
.qfa-plan-price span,
.qfa-plan-local {
  color:#64748b;
  font-size:12px;
  font-weight:800;
}
.qfa-plan-local {
  margin-top:6px;
}
.qfa-plan-credit {
  width:fit-content;
  margin-top:14px;
  padding:7px 11px;
  color:#FF1C26;
  background:rgba(255,28,38,.07);
  border:1px solid rgba(255,28,38,.16);
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  line-height:1.4;
}
.qfa-plan-features {
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:28px 0 38px;
  padding:0;
  list-style:none;
}
.qfa-plan-features li {
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:#334155;
  font-size:13px;
  font-weight:600;
  line-height:1.55;
}
.qfa-plan-features li.qfa-plan-feature-highlight {
  color:#FF1C26;
  font-weight:900;
  background:rgba(255,28,38,.06);
  border:1px solid rgba(255,28,38,.16);
  border-radius:8px;
  padding:8px 9px;
}
.qfa-plan-features li.qfa-plan-feature-highlight svg {
  color:#FF1C26;
}
.qfa-plan-features svg {
  color:#111827;
  flex:0 0 auto;
  margin-top:2px;
}
.qfa-plan-card.is-recommended .qfa-plan-features svg {
  color:#FF1C26;
}
.qfa-plan-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  margin-top:auto;
  padding:12px 16px;
  color:#fff;
  background:#d80f1f;
  border-radius:6px;
  font-size:13px;
  font-weight:900;
  box-shadow:0 8px 18px rgba(255,28,38,.24);
}
.qfa-plan-button.is-free {
  color:#111827;
  background:#fff;
  border:1px solid #FF1C26;
  box-shadow:none;
}
.qfa-plan-card-founder .qfa-plan-button {
  background:#111827;
  box-shadow:0 10px 22px rgba(15,23,42,.2);
}
.qfa-pricing-footnote {
  max-width:760px;
  margin:28px auto 0;
  padding:14px 18px;
  color:#475569;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:10px;
  text-align:center;
  font-size:14px;
  font-weight:800;
  line-height:1.8;
}

.qfa-final-cta {
  padding:0 0 34px;
  background:#fff;
}
.qfa-final-cta-panel {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:center;
  justify-items:center;
  gap:26px;
  min-height:126px;
  padding:28px 40px;
  color:#fff;
  background:
    linear-gradient(90deg, rgba(100,5,10,.16), rgba(84,4,9,.34)),
    linear-gradient(135deg, #FF1C26 0%, #D9151E 48%, #7a0a14 100%);
  border-radius:10px;
  box-shadow:0 18px 44px rgba(255,28,38,.25);
  overflow:hidden;
  text-align:center;
}
.qfa-final-cta-panel h2 {
  margin:0;
  color:#fff;
  font-size:28px;
  font-weight:900;
  line-height:1.35;
}
.qfa-final-cta-panel p {
  margin:8px 0 0;
  color:rgba(255,255,255,.86);
  font-size:15px;
  font-weight:600;
  line-height:1.8;
}
.qfa-final-actions {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
}
.qfa-final-actions a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:220px;
  min-height:42px;
  padding:0 20px;
  color:#7a0a14;
  background:#fff;
  border-radius:6px;
  font-size:14px;
  font-weight:900;
  box-shadow:0 12px 26px rgba(0,0,0,.14);
}

.qfa-partners-strip {
  padding-top:6px;
  padding-bottom:48px;
}
.qfa-partners-strip h2 {
  margin:0 0 22px;
  color:#111827;
  text-align:center;
  font-size:21px;
  font-weight:900;
}
.qfa-partners-grid {
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:16px;
  align-items:center;
}
.qfa-partner-mark {
  min-height:58px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  color:#111827;
  background:#fff;
  border:1px solid rgba(226,232,240,.88);
  border-radius:8px;
  filter:grayscale(1);
  opacity:.68;
}
.qfa-partner-mark strong {
  font-size:18px;
  font-weight:900;
  line-height:1;
}
.qfa-partner-mark span {
  color:#64748b;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
}

.qfa-footer {
  margin-top:0;
  padding:42px 0 0;
  color:#cbd5e1;
  background:linear-gradient(135deg, #070b12 0%, #0d1420 52%, #111827 100%);
  border-top:1px solid rgba(255,255,255,.08);
}
.qfa-footer-grid {
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:44px;
  padding-bottom:34px;
}
.qfa-footer-brand a {
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:#fff;
}
.qfa-footer-logo {
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  color:#FF1C26;
  background:#fff;
  border:2px solid #FF1C26;
  border-radius:12px;
}
.qfa-footer .qfa-footer-logo svg {
  width:34px;
  height:34px;
}
.qfa-footer-logo-img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.qfa-footer-brand strong {
  display:block;
  color:#fff;
  font-size:18px;
  font-weight:900;
  line-height:1.2;
}
.qfa-footer-brand small {
  display:block;
  margin-top:4px;
  color:#FF1C26;
  font-size:13px;
  font-weight:900;
}
.qfa-footer-brand p {
  max-width:460px;
  margin:18px 0 0;
  color:#cbd5e1;
  font-size:14px;
  font-weight:500;
  line-height:1.9;
}
.qfa-footer-column h3 {
  margin:0 0 16px;
  color:#fff;
  font-size:15px;
  font-weight:900;
}
.qfa-footer-column ul {
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
.qfa-footer-column a,
.qfa-footer-column span {
  color:#cbd5e1;
  font-size:14px;
  font-weight:600;
}
.qfa-footer-column a:hover {
  color:#fff;
}
.qfa-footer-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 0;
  border-top:1px solid rgba(255,255,255,.08);
  color:#94a3b8;
  font-size:12px;
  font-weight:700;
}
.qfa-home-license-fallback {
  min-height:320px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:28px;
  text-align:center;
  color:#1e293b;
  font-size:1rem;
  font-weight:800;
  line-height:1.8;
  background:linear-gradient(180deg,#fff 0%,#f8fafc 100%);
}
.qfa-admin-shell {
  grid-template-columns:280px minmax(0,1fr);
}

@media (max-width:1399px) {
  .qfa-nav-shell {
    grid-template-columns:minmax(245px,auto) 1fr;
  }
  .qfa-nav-links,
  .qfa-locale-link {
    display:none;
  }
  .qfa-mobile-toggle {
    display:inline-flex;
  }
}

@media (max-width:1023px) {
  .qfa-admin-shell {
    grid-template-columns:1fr;
  }
  .qfa-admin-shell > aside {
    position:static;
  }
}

@media (max-width:1399px) {
  .qfa-nav-links {
    display:none !important;
  }
  .qfa-mobile-toggle {
    display:inline-flex !important;
  }
}

@media (min-width:1400px) {
  .qfa-mobile-toggle,
  .qfa-mobile-nav {
    display:none !important;
  }
}

@media (min-width:1024px) and (max-width:1199px) {
  .qfa-value-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:1023px) {
  .qfa-hero-card-grid {
    grid-template-columns:1fr;
    grid-template-areas:"copy" "visual";
    min-height:auto;
  }
  .qfa-hero-copy {
    padding:42px 28px 18px;
  }
  .qfa-hero-copy h1 {
    font-size:33px;
  }
  .qfa-hero-copy h1 span + span {
    font-size:24px;
  }
  .qfa-hero-visual {
    padding:24px 24px 62px;
  }
  .qfa-hero-trust {
    inset-inline-start:22px;
    bottom:18px;
  }
  .qfa-stats-grid,
  .qfa-sessions-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .qfa-accreditation-card {
    grid-template-columns:1fr;
    gap:26px;
  }
  .qfa-value-grid {
    grid-template-columns:1fr;
  }
  .qfa-license-preview-grid {
    grid-template-columns:1fr;
  }
  .qfa-license-preview img,
  .qfa-license-preview.is-secondary img {
    max-height:22rem;
  }
  .qfa-problem-grid,
  .qfa-final-cta-panel {
    grid-template-columns:1fr;
  }
  .qfa-final-actions {
    flex-wrap:wrap;
  }
  .qfa-partners-grid {
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
  .qfa-footer-grid {
    grid-template-columns:1fr;
    gap:28px;
  }
}

@media (max-width:639px) {
  .container-app {
    padding-left:14px;
    padding-right:14px;
  }
  .qfa-header {
    padding-top:10px;
  }
  .qfa-nav-shell {
    display:flex;
    position:relative;
    align-items:center;
    justify-content:space-between;
    grid-template-columns:minmax(0,1fr) auto;
    min-height:60px;
    padding:8px 54px 8px 10px;
    border-radius:12px;
    gap:8px;
  }
  [dir="rtl"] .qfa-nav-shell {
    padding:8px 10px 8px 54px;
  }
  .qfa-brand-mark {
    width:38px;
    height:38px;
    border-radius:10px;
  }
  .qfa-brand {
    min-width:0;
    flex-shrink:1;
  }
  .qfa-brand > span:last-child {
    min-width:0;
    overflow:hidden;
  }
  .qfa-brand-mark svg {
    width:24px;
    height:24px;
  }
  .qfa-brand strong {
    font-size:13px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .qfa-brand small {
    font-size:9.5px;
    letter-spacing:0;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .qfa-login-link {
    font-size:11px;
  }
  .qfa-nav-actions > .qfa-login-link {
    display:none;
  }
  .qfa-nav-actions > .qfa-register-link {
    display:none;
  }
  .qfa-mobile-toggle {
    position:absolute;
    inset-inline-end:10px;
    top:50%;
    transform:translateY(-50%);
  }
  .qfa-register-link {
    min-height:36px;
    min-width:70px;
    padding:0 10px;
    font-size:11px;
  }
  .qfa-hero-card {
    min-height:0;
    border-radius:12px;
    max-width:100%;
  }
  .qfa-hero-card-grid,
  .qfa-hero-copy,
  .qfa-hero-visual {
    min-width:0;
    max-width:100%;
  }
  .qfa-hero-copy {
    padding:32px 20px 14px;
  }
  .qfa-hero-brand {
    margin-bottom:12px;
  }
  .qfa-hero-brand strong {
    font-size:22px;
  }
  .qfa-hero-brand small {
    font-size:15px;
  }
  .qfa-hero-brand span {
    font-size:12px;
    padding:6px 10px;
  }
  .qfa-hero-copy h1 {
    font-size:28px;
  }
  .qfa-hero-copy h1 span + span {
    font-size:21px;
  }
  .qfa-hero-subtitle {
    font-size:15px;
    line-height:1.9;
  }
  .qfa-hero-actions {
    width:100%;
  }
  .qfa-hero-primary,
  .qfa-hero-secondary {
    width:100%;
    min-width:0;
  }
  .qfa-pricing-grid {
    grid-template-columns:1fr;
  }
  .qfa-accreditation-section {
    padding:16px 0 24px;
  }
  .qfa-accreditation-card {
    padding:22px 18px;
    border-radius:12px;
  }
  .qfa-accreditation-card h2 {
    font-size:22px;
    line-height:1.75;
  }
  .qfa-accreditation-lead {
    font-size:17px;
  }
  .qfa-accreditation-body,
  .qfa-accreditation-points li {
    font-size:14px;
  }
  .qfa-accreditation-details {
    grid-template-columns:1fr;
  }
  .qfa-accreditation-frame {
    max-width:260px;
  }
  .qfa-certificate-stage {
    max-width:280px;
  }
}

/* ================================================================
   QFA SHARED EMBED v6 MATRIX — FIXED SYSTEM CLOSURE
================================================================ */

/* ── 1. FIXED PREMIUM HERO STATS GROUPING ────────────────────── */
.qfa-home-hero-stats-compact {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  direction: rtl !important;
}

/* ── 2. PORTRAIT MATRICES: CERT SHOWCASE COHESION ─────────────── */
.qfa-premium-standards-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  column-gap: 16px !important;
  row-gap: 60px !important;
  padding-top: 48px !important;
  margin-top: 2rem !important;
}

.qfa-premium-standard-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 58px 14px 20px !important;
  background: linear-gradient(180deg, #ffffff 0%, #fafbfc 100%) !important;
  border: 1px solid rgba(226, 232, 240, 0.94) !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 6px rgba(15,23,42,0.04), 0 1px 2px rgba(15,23,42,0.02) !important;
  overflow: visible !important;
  min-height: 288px !important;
}

.qfa-premium-standard-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(255, 28, 38, 0.26) !important;
  box-shadow: 0 20px 48px rgba(15,23,42,0.11), 0 6px 18px rgba(255,28,38,0.07) !important;
}

.qfa-premium-standard-badge-wrap {
  position: absolute !important;
  top: -40px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 80px !important;
  height: 80px !important;
  z-index: 4 !important;
}

.qfa-premium-standard-badge-wrap::before {
  content: '' !important;
  position: absolute !important;
  inset: -6px !important;
  border: 2px dashed rgba(255,28,38,0.2) !important;
  border-radius: 50% !important;
  transition: border-color .28s ease, transform .4s ease !important;
  pointer-events: none !important;
}

.qfa-premium-standard-card:hover .qfa-premium-standard-badge-wrap::before {
  border-color: rgba(255,28,38,.52) !important;
  transform: rotate(30deg) !important;
}

.qfa-premium-standard-mark {
  width: 80px !important;
  height: 80px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  border: 1.5px solid rgba(226,232,240,.88) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: Arial, sans-serif !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  color: #FF1C26 !important;
  white-space: nowrap !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  overflow: hidden !important;
}

.qfa-premium-standard-title {
  margin-top: 10px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.65 !important;
  color: #0f172a !important;
  text-align: center !important;
}

.qfa-premium-standard-code {
  display: inline-block !important;
  padding: .18rem .6rem !important;
  background: rgba(15,23,42,.05) !important;
  border: 1px solid rgba(15,23,42,.09) !important;
  border-radius: 999px !important;
  color: #334155 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  margin: 6px auto 14px !important;
}

.qfa-premium-standard-cta {
  display: block !important;
  margin-top: auto !important;
  padding: .52rem .8rem !important;
  width: 100% !important;
  background: #FF1C26 !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  font-size: 12.5px !important;
  font-weight: 900 !important;
  text-align: center !important;
}

#systems-grid:not(.qfa-grid-expanded) .qfa-cert-card-extra {
  display: none !important;
}

#systems-grid.qfa-grid-expanded .qfa-cert-card-extra {
  display: flex !important;
}

/* ── 3. FORM OPTION PICKER CHIPS FIX ─────────────────────────── */
.consulting-form-options {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .75rem !important;
}

.consulting-specialization-option {
  min-height: 3rem !important;
  padding: .55rem 1rem !important;
  border-radius: 10px !important;
  font-size: .88rem !important;
  font-weight: 700 !important;
  white-space: normal !important;
}

.consulting-specialization-option.is-selected {
  background: linear-gradient(145deg, #fff7f7, #ffecec) !important;
  border-color: #FF1C26 !important;
  color: #B00D14 !important;
}

/* ── 4. RESPONSIVE BREAKPOINTS CLOSURE ────────────────────────── */
@media (max-width: 1199px) {
  .qfa-premium-standards-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .consulting-form-options { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 1023px) {
  .qfa-home-hero-stats-compact { gap: 12px !important; }
}

@media (max-width: 640px) {
  .qfa-premium-standards-grid { grid-template-columns: 1fr !important; }
  .consulting-form-options { grid-template-columns: 1fr !important; }
  .qfa-home-hero-stats-compact { grid-template-columns: 1fr !important; }
}
/* ================================================================
   CRITICAL EMERGENCY OVERRIDES — HERO STATS ALIGNMENT FIXED v7
================================================================ */

/* إجبار حاوية الإحصائيات على الانكماش الجانبي المتناسق */
.lg\:w-\[40\%\] {
  width: 40% !important;
  max-width: 420px !important;
}

/* إعادة ترويض الأرقام ومنعها من التمدد العشوائي الموروث */
.qfa-home-page section .text-2xl.font-black,
.qfa-home-page section strong,
.text-2xl.font-black {
  font-size: 1.65rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  display: block !important;
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* إجبار الأيقونات الـ SVG على الظهور باللون الأحمر الرسمي والحجم الصحيح */
.qfa-home-page section flex-shrink-0 svg,
.qfa-home-page section .w-9.h-9 svg,
.qfa-home-page section svg {
  display: block !important;
  width: 1.35rem !important;
  height: 1.35rem !important;
  stroke: var(--qfa-brand-red) !important; /* اللون الأحمر الرسمي كـ Accent */
  color: var(--qfa-brand-red) !important;
  fill: none !important;
}

/* منع نصوص الوصف الصغيرة من التمدد أو التداخل */
.text-\[11px\].font-bold {
  font-size: 11.5px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  color: #64748B !important;
  display: block !important;
  margin-top: 4px !important;
}

/* Universal partner landing v2 — clean light presentation layer. */
.qfa-universal-landing{--ul-red:#ed1c24;--ul-ink:#0f172a;--ul-muted:#64748b;--ul-line:#e2e8f0;--ul-soft:#f8fafc;background:#fff;color:var(--ul-muted)}
.qfa-universal-landing .ul-nav{position:sticky;top:0;z-index:30;height:72px;padding-inline:max(5vw,20px);background:rgba(255,255,255,.94);border-bottom:1px solid var(--ul-line);backdrop-filter:blur(14px)}
.qfa-universal-landing .ul-hero{min-height:auto;padding:78px max(7vw,24px);color:var(--ul-muted);background:linear-gradient(145deg,#fff 0%,#f8fafc 72%,#fff1f2 100%);grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);gap:5vw}
.qfa-universal-landing .ul-hero h1{color:var(--ul-ink);font-size:clamp(36px,5vw,62px)}
.qfa-universal-landing .ul-hero h1 small{color:#64748b}
.qfa-universal-landing .ul-lead{color:#475569}
.qfa-universal-landing .ul-checklist li{color:#334155}
.qfa-universal-landing .ul-cobrand b{color:var(--ul-ink)}
.qfa-universal-landing .ul-partner-line{color:#64748b}
.qfa-universal-landing .ul-hero-price{border:1px solid var(--ul-line);box-shadow:0 14px 36px rgba(15,23,42,.08)}
.qfa-universal-landing .ul-secondary{color:#334155;border-color:#cbd5e1;background:#fff}
.qfa-universal-landing .ul-hero-panel{padding:36px 30px;border:1px solid var(--ul-line);outline:0;border-radius:22px;box-shadow:0 22px 55px rgba(15,23,42,.1);text-align:right}
.qfa-universal-landing .ul-hero-panel>span{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}
.qfa-universal-landing .ul-hero-panel h2{margin:20px 0 10px;color:var(--ul-ink);font-size:26px;font-weight:900;line-height:1.55}
.qfa-universal-landing .ul-hero-panel>p{font-size:14px;line-height:1.9}
.qfa-universal-landing .ul-stats{margin-top:25px;grid-template-columns:repeat(auto-fit,minmax(88px,1fr))}
.qfa-universal-landing .ul-proof{background:#fff}
.qfa-universal-landing .ul-workshops,.qfa-universal-landing .ul-tools{grid-template-columns:repeat(3,minmax(0,1fr))}
.qfa-universal-landing .ul-workshops,.qfa-universal-landing .ul-tools{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));align-items:stretch}
.qfa-universal-landing .ul-workshops article,.qfa-universal-landing .ul-tools article{height:100%}
.qfa-universal-landing .ul-original-price{display:inline-block;color:#94a3b8;font-size:1rem;font-weight:800;text-decoration-line:line-through;text-decoration-color:#ef4444;text-decoration-thickness:2px}
.qfa-universal-landing .ul-discount-badge,.qfa-universal-landing .ul-hero-price>.ul-discount-badge,.qfa-universal-landing .ul-pricing-card>.ul-discount-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:.35rem .75rem;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;box-shadow:0 1px 2px rgba(15,23,42,.06);font-size:.875rem;font-weight:900;line-height:1.5}
.qfa-universal-landing .ul-sticky-pricing{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.qfa-universal-landing .ul-sticky-original{color:#94a3b8;font-size:.875rem;font-weight:800;text-decoration-line:line-through;text-decoration-color:#ef4444;text-decoration-thickness:2px}
.qfa-universal-landing .ul-sticky-saving{padding:.2rem .5rem;color:#fff;background:#dc2626;border-radius:.375rem;font-size:.75rem;font-weight:900}
.qfa-universal-landing .ul-sticky-final{color:#0f172a;font-size:1.25rem;font-weight:950;white-space:nowrap}
@media(max-width:639px){.qfa-universal-landing .ul-sticky{height:auto;min-height:74px;gap:10px}.qfa-universal-landing .ul-sticky-pricing{gap:4px}.qfa-universal-landing .ul-sticky-original{font-size:.7rem}.qfa-universal-landing .ul-sticky-saving{font-size:.65rem}.qfa-universal-landing .ul-sticky-final{font-size:1rem}}
.qfa-universal-landing .ul-workshops article,.qfa-universal-landing .ul-tools article{min-height:0}
.qfa-universal-landing .ul-modules details,.qfa-universal-landing .ul-faq details,.qfa-universal-landing .ul-pricing-card,.qfa-universal-landing .ul-payment,.qfa-universal-landing .ul-form{background:#fff}
.qfa-universal-landing .ul-success{margin-bottom:14px;padding:12px;border:1px solid #bbf7d0;border-radius:10px;background:#f0fdf4;color:#166534;font-size:13px;font-weight:800}

@media (max-width:1023px){.qfa-universal-landing .ul-hero{grid-template-columns:1fr}.qfa-universal-landing .ul-workshops,.qfa-universal-landing .ul-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.qfa-universal-landing .ul-proof{grid-template-columns:repeat(2,1fr)}.qfa-universal-landing .ul-register-grid{grid-template-columns:1fr}}
@media (max-width:767px){.qfa-universal-landing .ul-nav nav{display:none}.qfa-universal-landing .ul-nav{height:64px}.qfa-universal-landing .ul-logo img{width:108px}.qfa-universal-landing .ul-whatsapp{margin-inline-start:auto;padding:9px 13px}.qfa-universal-landing .ul-hero{padding:52px 20px}.qfa-universal-landing .ul-cobrand{gap:12px}.qfa-universal-landing .ul-cobrand img{height:48px;max-width:145px}.qfa-universal-landing .ul-hero-price{align-items:stretch}.qfa-universal-landing .ul-hero-price>div{padding:0}.qfa-universal-landing .ul-workshops,.qfa-universal-landing .ul-tools{grid-template-columns:1fr}.qfa-universal-landing .ul-proof{grid-template-columns:1fr}.qfa-universal-landing .ul-proof div{border-left:0;border-bottom:1px solid var(--ul-line);padding:14px 24px}.qfa-universal-landing .ul-section{padding:64px 18px}.qfa-universal-landing .ul-mentor{grid-template-columns:1fr;text-align:center;padding:64px 20px}.qfa-universal-landing .ul-avatar{margin:auto;width:170px;height:170px}.qfa-universal-landing .ul-two{grid-template-columns:1fr}.qfa-universal-landing .ul-form{padding:24px 18px}.qfa-universal-landing .ul-sticky{padding-inline:14px}}

/* IPC-style mentor profile: portrait on the RTL start (right), copy on the left. */
.qfa-universal-landing .ul-mentor{direction:rtl;grid-template-columns:16rem minmax(0,1fr);max-width:1180px;margin-inline:auto;padding:88px 36px;gap:72px;text-align:right}
.qfa-universal-landing .ul-mentor-copy{min-width:0;align-self:center;overflow-wrap:anywhere}
.qfa-universal-landing .ul-mentor-copy>.ul-kicker{color:var(--ul-red);font-size:12px;font-weight:900;letter-spacing:0;text-transform:none}
.qfa-universal-landing .ul-mentor-copy h2{margin:10px 0 8px;color:var(--ul-ink);font-size:clamp(32px,4vw,46px);font-weight:950;line-height:1.3}
.qfa-universal-landing .ul-mentor-copy>p{margin-bottom:24px;color:var(--ul-red);font-size:17px;font-weight:800;line-height:1.8}
.qfa-universal-landing .ul-mentor-copy ul{display:grid;gap:12px;color:#475569;font-size:14px;line-height:1.9}
.qfa-universal-landing .ul-mentor-copy li{position:relative;padding-inline-start:28px}
.qfa-universal-landing .ul-mentor-copy li:before{content:"✓";position:absolute;inset-inline-start:0;top:1px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff1f2;color:var(--ul-red);font-size:11px;font-weight:900}
.qfa-universal-landing .ul-avatar{width:16rem;height:16rem;aspect-ratio:1/1;flex-shrink:0;border:4px solid #fff;border-radius:9999px;overflow:hidden;background:#f3f4f6;box-shadow:0 20px 48px rgba(15,23,42,.18)}
.qfa-universal-landing .ul-avatar img{width:100%;height:100%;border-radius:9999px;object-fit:cover;object-position:top}
.qfa-universal-landing .ul-avatar-fallback{display:block;width:100%;height:100%;border-radius:9999px}
@media(max-width:767px){.qfa-universal-landing .ul-mentor{grid-template-columns:1fr;padding:64px 20px;gap:34px;text-align:center}.qfa-universal-landing .ul-avatar{order:1;width:14rem;height:14rem;margin-inline:auto}.qfa-universal-landing .ul-mentor-copy{order:2}.qfa-universal-landing .ul-mentor-copy ul{text-align:right}}
