/*
Theme Name: FCT Academia Elementor
Theme URI: https://forensiccleaningtechnician.com/
Description: Tema hijo profesional para Academia Forensic Cleaning Technician. Compatible con Elementor y Hello Elementor.
Author: Forensic Cleaning Technician Biohazard Cleaner Specialist Corp.
Template: hello-elementor
Version: 1.0.0
Text Domain: fct-academia
*/

:root{--fct-red:#B21F2D;--fct-red-dark:#8C1722;--fct-dark:#101820;--fct-dark2:#17222B;--fct-ink:#1F2933;--fct-gray:#F3F5F7;--fct-muted:#66727D;--fct-white:#fff;--fct-gold:#C7A35B;--fct-radius:16px;--fct-shadow:0 12px 38px rgba(16,24,32,.10)}
html{scroll-behavior:smooth} body{margin:0;color:var(--fct-ink);font-family:Inter,Arial,sans-serif;background:#fff;line-height:1.65} a{color:var(--fct-red)}
.fct-site-header{position:sticky;top:0;z-index:999;background:rgba(16,24,32,.98);border-bottom:1px solid rgba(255,255,255,.08)}
.fct-header-inner{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 24px} .fct-brand{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none;font-weight:800} .fct-brand img{max-height:58px;width:auto} .fct-brand-text small{display:block;font-weight:500;color:#d4dbe1;font-size:11px;letter-spacing:.08em;text-transform:uppercase} .fct-brand-text span{display:block;color:#fff;font-size:16px}
.fct-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:18px} .fct-nav a{color:#fff;text-decoration:none;font-size:14px;font-weight:650} .fct-nav a:hover{color:#ffd5d9} .fct-header-cta{background:var(--fct-red);padding:10px 16px;border-radius:999px!important}
.fct-hero{background:radial-gradient(circle at 90% 10%,rgba(178,31,45,.35),transparent 28%),linear-gradient(135deg,var(--fct-dark),var(--fct-dark2));color:#fff;padding:104px max(24px,calc((100vw - 1200px)/2));min-height:460px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start} .fct-hero .elementor-widget{max-width:900px} .fct-hero h1,.fct-hero-title h1{font-size:clamp(42px,6vw,78px);line-height:1.02;letter-spacing:-.03em;margin:.2em 0;color:#fff} .fct-eyebrow p,.fct-eyebrow{color:#ffbac1!important;font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:12px} .fct-hero-subtitle p,.fct-hero-subtitle{font-size:clamp(18px,2vw,23px);color:#e5eaee!important;max-width:820px}
.fct-section{max-width:1200px;margin:0 auto;padding:72px 24px} .fct-section h2{font-size:clamp(30px,4vw,48px);line-height:1.1;color:var(--fct-dark);margin:0 0 18px} .fct-section h3{font-size:22px;line-height:1.2;color:var(--fct-dark)} .fct-section p{font-size:17px} .fct-section li{margin:.5em 0}
.fct-card-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;width:100%} .fct-card{background:#fff;border:1px solid #e3e8ec;border-top:4px solid var(--fct-red);border-radius:var(--fct-radius);padding:28px!important;box-shadow:var(--fct-shadow)} .fct-card h3{margin-top:0} .fct-card ul{padding-left:20px}
.fct-steps{counter-reset:fctstep} .fct-step{position:relative;border-left:3px solid var(--fct-red);background:var(--fct-gray);border-radius:0 var(--fct-radius) var(--fct-radius) 0;padding:26px 30px!important;margin:18px 0!important} .fct-step-number{display:inline-block;color:var(--fct-red);font-weight:900;letter-spacing:.12em;font-size:13px}
.fct-button,.elementor-widget-button .elementor-button{display:inline-block;background:var(--fct-red)!important;color:#fff!important;text-decoration:none!important;border-radius:999px!important;padding:13px 22px!important;font-weight:800!important;margin:8px 8px 8px 0!important;border:0!important} .fct-button:hover,.elementor-widget-button .elementor-button:hover{background:var(--fct-red-dark)!important;transform:translateY(-1px)}
.fct-cta{background:var(--fct-dark);color:#fff;border-radius:26px;margin-top:38px;margin-bottom:38px} .fct-cta h2,.fct-cta h3,.fct-cta p{color:#fff}
.fct-notice{background:#fff7f2;border:1px solid #f1d8ca;border-left:5px solid var(--fct-gold);border-radius:var(--fct-radius);padding:32px!important;margin-top:36px;margin-bottom:36px}
.fct-form-placeholder{background:var(--fct-gray);border:2px dashed #b9c2ca;border-radius:var(--fct-radius);padding:34px;font-size:16px}
.fct-site-footer{background:var(--fct-dark);color:#cad3da;margin-top:60px} .fct-footer-inner{max-width:1200px;margin:auto;padding:48px 24px;display:grid;grid-template-columns:2fr 1fr;gap:36px} .fct-footer-inner h3{color:#fff} .fct-footer-menu ul{list-style:none;margin:0;padding:0} .fct-footer-menu li{margin:8px 0} .fct-footer-menu a{color:#e7edf1;text-decoration:none} .fct-copyright{border-top:1px solid rgba(255,255,255,.1);max-width:1200px;margin:auto;padding:18px 24px;font-size:13px;color:#9ba9b3}
.fct-content-wrap{min-height:60vh} .fct-default-content{max-width:1200px;margin:auto;padding:50px 24px}
@media(max-width:960px){.fct-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))} .fct-nav{display:none} .fct-header-inner{padding:12px 18px} .fct-hero{padding:80px 24px;min-height:400px}}
@media(max-width:640px){.fct-card-grid{grid-template-columns:1fr} .fct-footer-inner{grid-template-columns:1fr} .fct-section{padding:52px 18px} .fct-hero h1,.fct-hero-title h1{font-size:40px}}

.fct-menu-toggle{display:none;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:9px 14px;font-weight:800}
@media(max-width:960px){.fct-menu-toggle{display:inline-flex;align-items:center}.fct-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--fct-dark);padding:16px 22px 24px;border-top:1px solid rgba(255,255,255,.1)}.fct-nav.is-open{display:block}.fct-nav ul{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.fct-nav a{display:block;padding:8px 0}.fct-header-cta{display:none!important}}
