/* CESGEN — Provisional training centre landing page · Light clinical theme */

:root {
  --blue:          #2563b0;
  --blue-dim:      rgba(37,99,176,.08);
  --blue-glow:     rgba(37,99,176,.18);
  --blue-light:    #4a90d9;
  --blue-xlight:   #eef4fc;
  --amber:         #f59e0b;
  --bg:            #ffffff;
  --bg-alt:        #f4f8fd;
  --bg-section:    #eef3fb;
  --text:          #1e293b;
  --text-light:    #4b6a8a;
  --text-xlight:   #7a96b4;
  --border:        #d1dce8;
  --border-light:  #e8f0f8;
  --radius:        12px;
  --radius-lg:     20px;
  --shadow:        0 2px 8px rgba(37,99,176,.07);
  --shadow-lg:     0 12px 32px rgba(37,99,176,.1);
  --font:          'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --max-w:         1080px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}

html[lang="es"] .en{display:none;}
html[lang="en"] .es{display:none;}

.container{max-width:var(--max-w);margin:0 auto;padding:0 24px;}
.section{padding:88px 0;}
.section-alt{background:var(--bg-alt);}
.section-dark{background:var(--bg-section);}
.section-mid{background:var(--bg-alt);}

h1{font-size:clamp(2rem,5vw,3.2rem);font-weight:800;line-height:1.1;letter-spacing:-.025em;}
h2{font-size:clamp(1.5rem,3vw,2.2rem);font-weight:700;line-height:1.2;letter-spacing:-.018em;}
h3{font-size:1.05rem;font-weight:600;line-height:1.4;}
p{font-size:1rem;color:var(--text-light);line-height:1.7;}

.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.73rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);background:var(--blue-dim);padding:5px 14px;border-radius:99px;margin-bottom:20px;}
.eyebrow .dot{width:6px;height:6px;background:var(--blue);border-radius:50%;animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.4;transform:scale(.75);}}

nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px;max-width:var(--max-w);margin:0 auto;padding:0 24px;}
.nav-logo{font-size:1.1rem;font-weight:800;color:var(--text);letter-spacing:-.02em;}
.nav-logo span{color:var(--blue);}
.nav-links{display:flex;gap:24px;}
.nav-links a{font-size:.875rem;font-weight:500;color:var(--text-light);transition:color .15s;}
.nav-links a:hover{color:var(--blue);}
.nav-right{display:flex;align-items:center;gap:10px;}

.btn{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:600;padding:9px 20px;border-radius:8px;cursor:pointer;border:none;transition:all .15s;font-family:var(--font);}
.btn-blue{background:var(--blue);color:#fff;}
.btn-blue:hover{background:#1d4ed8;box-shadow:0 0 20px var(--blue-glow);}
.btn-ghost-light{background:transparent;color:var(--text-light);font-weight:700;font-size:.75rem;letter-spacing:.08em;padding:6px 10px;border:1px solid var(--border);border-radius:6px;}
.btn-ghost-light:hover{color:var(--blue);border-color:var(--blue);}

.hero{background:linear-gradient(160deg,#f0f6ff 0%,#ffffff 50%,#f4f8fd 100%);padding:140px 0 96px;text-align:center;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(37,99,176,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,176,.04) 1px,transparent 1px);background-size:56px 56px;}
.hero::after{content:'';position:absolute;top:-10%;left:50%;transform:translateX(-50%);width:800px;height:500px;background:radial-gradient(ellipse,rgba(37,99,176,.06) 0%,transparent 65%);pointer-events:none;}
.hero .container{position:relative;z-index:1;}
.hero h1{color:var(--text);margin-bottom:20px;}
.hero h1 em{font-style:normal;color:var(--blue);}
.hero .subtitle{font-size:clamp(.95rem,1.8vw,1.15rem);color:var(--text-light);max-width:600px;margin:0 auto 44px;line-height:1.7;}

.waitlist-form-wrap{max-width:520px;margin:0 auto;}
.waitlist-form{display:flex;gap:8px;background:#fff;border:1.5px solid var(--border);border-radius:12px;padding:6px 6px 6px 16px;box-shadow:var(--shadow);}
.waitlist-form input[type="email"]{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-size:.95rem;font-family:var(--font);min-width:0;}
.waitlist-form input[type="email"]::placeholder{color:var(--text-xlight);}
.waitlist-form button{background:var(--blue);color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:.875rem;font-weight:700;cursor:pointer;font-family:var(--font);white-space:nowrap;transition:background .15s;flex-shrink:0;}
.waitlist-form button:hover{background:#1d4ed8;}
.form-note{font-size:.78rem;color:var(--text-xlight);margin-top:12px;text-align:center;}
.form-success{display:none;background:var(--blue-dim);border:1px solid rgba(37,99,176,.2);border-radius:12px;padding:16px 24px;text-align:center;color:var(--blue);font-weight:600;font-size:.95rem;}
.form-lang-wrap{max-width:520px;margin:0 auto;}
html[lang="es"] .form-lang-wrap.en{display:none;}
html[lang="en"] .form-lang-wrap.es{display:none;}
.form-heading{font-size:.8rem;font-weight:600;color:var(--text-xlight);text-transform:uppercase;letter-spacing:.07em;margin-bottom:12px;text-align:center;}

.hero-trust{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-top:24px;}
.trust-badge{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-xlight);}

.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px;}
.pillar-card{background:var(--bg);border:1.5px solid var(--border-light);border-radius:var(--radius-lg);padding:36px 28px;transition:border-color .2s,box-shadow .2s;}
.pillar-card:hover{border-color:var(--blue);box-shadow:var(--shadow-lg);}
.pillar-icon{width:36px;height:3px;border-radius:2px;background:var(--blue);margin-bottom:20px;}
.pillar-card h3{margin-bottom:10px;color:var(--text);}
.pillar-card p{font-size:.9rem;}

.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px;}
.audience-card{background:#fff;border:1.5px solid var(--border-light);border-radius:var(--radius-lg);padding:32px 24px;transition:border-color .2s,box-shadow .2s;}
.audience-card:hover{border-color:var(--blue);box-shadow:var(--shadow);}
.audience-icon{width:28px;height:3px;border-radius:2px;background:var(--blue);margin-bottom:16px;opacity:.5;}
.audience-card h3{color:var(--text);font-size:1rem;margin-bottom:8px;}
.audience-card p{font-size:.875rem;}

.courses-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:48px;}
.course-card{background:#fff;border:1.5px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow .2s,border-color .2s;}
.course-card:hover{box-shadow:var(--shadow-lg);border-color:var(--blue);}
.course-header{background:linear-gradient(135deg,var(--blue-xlight),#ddeeff);padding:28px;border-bottom:1px solid var(--border-light);}
.course-level{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);background:rgba(37,99,176,.12);padding:3px 10px;border-radius:99px;display:inline-block;margin-bottom:12px;}
.course-header h3{color:var(--text);font-size:1.05rem;}
.course-body{padding:24px;}
.course-body p{font-size:.875rem;margin-bottom:16px;}
.course-meta{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:20px;}
.course-meta span{font-size:.78rem;color:var(--text-xlight);display:flex;align-items:center;gap:4px;}
.course-coming{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:var(--amber);background:rgba(245,158,11,.08);padding:5px 12px;border-radius:99px;}

.crosssell-card{max-width:720px;margin:0 auto;background:linear-gradient(135deg,var(--blue-xlight),#ddeeff);border:1.5px solid rgba(37,99,176,.2);border-radius:var(--radius-lg);padding:48px;display:grid;grid-template-columns:1fr;gap:32px;align-items:center;box-shadow:var(--shadow-lg);}
.crosssell-label{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-bottom:12px;}
.crosssell-card h3{color:var(--text);font-size:1.3rem;margin-bottom:12px;}
.crosssell-card p{font-size:.9rem;}
.crosssell-offer{background:#fff;border:1.5px solid var(--border);border-radius:12px;padding:20px 24px;text-align:center;flex-shrink:0;box-shadow:var(--shadow);}
.crosssell-offer .offer-pct{font-size:2.5rem;font-weight:800;color:var(--blue);line-height:1;}
.crosssell-offer .offer-off{font-size:.8rem;color:var(--text-light);font-weight:600;margin-bottom:4px;}
.crosssell-offer .offer-note{font-size:.72rem;color:var(--text-xlight);}
.btn-blue-light{background:var(--blue);color:#fff;margin-top:20px;}
.btn-blue-light:hover{background:#1d4ed8;}

.resources-card{max-width:720px;margin:32px auto 0;background:#fff;border:1.5px solid var(--border-light);border-radius:var(--radius-lg);padding:28px 36px;display:flex;align-items:center;gap:24px;box-shadow:var(--shadow);}
.resources-icon{display:none;}
.resources-card h3{color:var(--text);margin-bottom:6px;}
.resources-card p{font-size:.875rem;}
.resources-card a{color:var(--blue);font-weight:600;}

.final-cta{text-align:center;padding:96px 0;background:linear-gradient(160deg,#eef4fc 0%,#f8fbff 100%);position:relative;overflow:hidden;}
.final-cta::before{content:'';position:absolute;bottom:-20%;left:50%;transform:translateX(-50%);width:700px;height:400px;background:radial-gradient(ellipse,rgba(37,99,176,.06) 0%,transparent 65%);}
.final-cta .container{position:relative;z-index:1;}
.final-cta h2{color:var(--text);margin-bottom:16px;}
.final-cta p{max-width:480px;margin:0 auto 40px;}

footer{background:var(--bg-alt);padding:40px 0;border-top:1px solid var(--border-light);}
.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;}
.footer-logo{font-size:1rem;font-weight:800;color:var(--text);}
.footer-logo span{color:var(--blue);}
.footer-links{display:flex;gap:20px;flex-wrap:wrap;}
.footer-links a{font-size:.8rem;color:var(--text-xlight);transition:color .15s;}
.footer-links a:hover{color:var(--blue);}
.footer-copy{font-size:.73rem;color:var(--text-xlight);line-height:1.7;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-light);}

/* Kit.com form: force horizontal layout */
.seva-form .formkit-fields{flex-wrap:nowrap !important;align-items:center;margin:0 !important;}
.seva-form .formkit-fields .formkit-field{flex:1 1 auto !important;margin:0 !important;}
.seva-form .formkit-fields .formkit-submit{flex:0 0 auto !important;margin:0 0 0 8px !important;}
.seva-form .formkit-powered-by-convertkit-container{justify-content:flex-start;}
@media(max-width:420px){
  .seva-form .formkit-fields{flex-wrap:wrap !important;}
  .seva-form .formkit-fields .formkit-field{flex:1 0 100% !important;margin-bottom:8px !important;}
  .seva-form .formkit-fields .formkit-submit{margin:0 !important;width:100%;}
}

@media(max-width:768px){
  .section{padding:60px 0;}
  .hero{padding:110px 0 72px;}
  .nav-links{display:none;}
  .pillars-grid{grid-template-columns:1fr;}
  .audience-grid{grid-template-columns:1fr;}
  .crosssell-card{grid-template-columns:1fr;}
  .resources-card{flex-direction:column;}
  .footer-inner{flex-direction:column;}
}
@media(max-width:480px){.courses-grid{grid-template-columns:1fr;}}

/* ── Pillar level badge ── */
.pillar-level {
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--blue);
  background: var(--blue-dim);
  padding: 3px 10px;
  border-radius: 99px;
  display: inline-block;
  margin-bottom: 10px;
}
