/* Training Course Tutor: Consultancy page (consultancy/index.php), added 2026-10-12.
   Self-contained tokens, the same palette as About.css, namespaced --cons-. */
:root{
    --cons-navy: #0B1F3A;
    --cons-navy-2: #14315C;
    --cons-navy-3: #1E4079;
    --cons-coral: #D6363C;
    --cons-coral-dark: #C22A30;
    --cons-amber: #FFB020;
    --cons-bg: #F5F7FB;
    --cons-ink: #1A2333;
    --cons-muted: #5B6478;
    --cons-border: #E3E7F0;
    --cons-heading-font: 'Zilla Slab', Georgia, serif;
    --cons-body-font: 'Karla', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

body{margin:0;background:var(--cons-bg);}
.cons-main{background:var(--cons-bg);font-family:var(--cons-body-font);color:var(--cons-ink);}
.cons-main *,.cons-main *::before,.cons-main *::after{box-sizing:border-box;}
.cons-main h2,.cons-main h3{font-family:var(--cons-heading-font);color:var(--cons-navy);}
.cons-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* Breadcrumb */
.cons-crumb{background:#fff;border-bottom:1px solid var(--cons-border);padding:12px 20px;}
.cons-crumb-wrap{max-width:1140px;margin:0 auto;display:flex;align-items:center;gap:8px;font-size:0.85rem;color:var(--cons-muted);}
.cons-crumb-wrap a{color:var(--cons-navy-3);text-decoration:none;}
.cons-crumb-wrap a:hover{text-decoration:underline;}

/* Hero */
.cons-hero{background:linear-gradient(100deg, var(--cons-navy) 0%, var(--cons-navy-2) 55%, var(--cons-navy-3) 100%);color:#fff;padding:64px 20px 96px;text-align:center;}
.cons-hero-inner{max-width:760px;margin:0 auto;}
.cons-eyebrow{display:inline-block;font-size:0.8rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--cons-amber);margin-bottom:10px;}
.cons-eyebrow-dark{color:var(--cons-coral-dark);}
.cons-hero h1{font-family:var(--cons-heading-font);font-size:clamp(1.9rem, 4.2vw, 2.8rem);font-weight:700;line-height:1.15;margin:0 0 14px;color:#fff;}
.cons-hero p{margin:0 auto;color:#D7DEEC;font-size:1.08rem;line-height:1.6;max-width:640px;}
.cons-hero-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:26px;}

/* Buttons */
.cons-btn{display:inline-flex;align-items:center;gap:10px;background:var(--cons-coral);color:#fff;font-weight:700;font-size:0.95rem;padding:12px 22px;border-radius:999px;text-decoration:none;border:1.5px solid var(--cons-coral);transition:background-color 0.2s ease, transform 0.2s ease;}
.cons-btn:hover{background:var(--cons-coral-dark);border-color:var(--cons-coral-dark);color:#fff;transform:translateY(-1px);}
.cons-btn-ghost{background:transparent;border-color:rgba(255,255,255,0.55);}
.cons-btn-ghost:hover{background:rgba(255,255,255,0.1);border-color:#fff;}

/* Fact strip, overlapping the hero */
.cons-facts{max-width:1140px;margin:-56px auto 0;padding:0 20px;display:grid;grid-template-columns:repeat(4, 1fr);gap:16px;position:relative;}
.cons-fact{background:#fff;border:1px solid var(--cons-border);border-radius:12px;box-shadow:0 8px 24px rgba(11,31,58,0.08);padding:18px 18px 16px;text-align:center;}
.cons-fact strong{display:block;font-family:var(--cons-heading-font);font-size:1.35rem;color:var(--cons-navy);margin-bottom:4px;}
.cons-fact span{display:block;color:var(--cons-muted);font-size:0.88rem;line-height:1.45;}

/* Layout */
.cons-wrap{max-width:1140px;margin:0 auto;padding-left:20px;padding-right:20px;}
.cons-section{padding-top:56px;}
.cons-section-last{padding-bottom:64px;}
.cons-head{text-align:center;max-width:680px;margin:0 auto 28px;}
.cons-head h2{font-size:clamp(1.5rem, 3vw, 2rem);margin:0 0 8px;}
.cons-head p{color:var(--cons-muted);margin:0;line-height:1.6;}

/* Intro split */
.cons-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:36px;align-items:center;margin-top:48px;background:#fff;border:1px solid var(--cons-border);border-radius:14px;box-shadow:0 8px 24px rgba(11,31,58,0.06);overflow:hidden;}
.cons-intro-media{display:block;height:100%;}
.cons-intro-media img{display:block;width:100%;height:100%;min-height:280px;object-fit:cover;}
.cons-intro-text{padding:32px 36px 32px 0;}
.cons-intro-text h2{font-size:1.5rem;margin:0 0 12px;}
.cons-intro-text p{line-height:1.75;margin:0 0 14px;}
.cons-text-link{color:var(--cons-navy-3);font-weight:700;text-decoration:none;}
.cons-text-link:hover{color:var(--cons-coral-dark);text-decoration:underline;}

/* Service cards */
.cons-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;}
.cons-grid > .cons-card{flex:1 1 300px;max-width:calc((100% - 40px) / 3);}
.cons-grid-2 > .cons-card{flex-basis:340px;max-width:calc((100% - 20px) / 2);}
.cons-card{background:#fff;border:1px solid var(--cons-border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;}
.cons-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(11,31,58,0.10);border-color:#C9D2E3;}
.cons-card-media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;}
.cons-card-body{padding:22px 22px 20px;display:flex;flex-direction:column;flex:1;}
.cons-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
.cons-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:#FDECEC;color:var(--cons-coral-dark);font-size:1.15rem;flex-shrink:0;}
.cons-tag{font-size:0.72rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--cons-navy-3);background:var(--cons-bg);border:1px solid var(--cons-border);padding:4px 10px;border-radius:999px;margin-left:auto;}
.cons-card h3{font-size:1.25rem;margin:0 0 8px;}
.cons-card p{line-height:1.65;margin:0 0 12px;font-size:0.97rem;}
.cons-best{color:var(--cons-muted);font-size:0.9rem !important;padding-top:10px;border-top:1px dashed var(--cons-border);}
.cons-best strong{color:var(--cons-navy);}
.cons-card-link{margin-top:auto;align-self:flex-start;color:var(--cons-coral-dark);font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:8px;}
.cons-card-link:hover{text-decoration:underline;}
.cons-card-link i{transition:transform 0.2s ease;}
.cons-card:hover .cons-card-link i{transform:translateX(3px);}

/* Dark band for specialist services */
.cons-band{background:linear-gradient(100deg, var(--cons-navy) 0%, var(--cons-navy-2) 100%);margin-top:56px;padding-bottom:56px;}
.cons-band .cons-head h2{color:#fff;}
.cons-card-dark .cons-icon{background:var(--cons-navy);color:var(--cons-amber);margin-bottom:14px;}

/* Training-provider callout */
.cons-callout{display:flex;gap:24px;align-items:flex-start;background:#fff;border:1px solid var(--cons-border);border-left:5px solid var(--cons-amber);border-radius:14px;padding:28px 32px;}
.cons-callout-icon{flex-shrink:0;width:56px;height:56px;border-radius:50%;background:#FFF4DE;color:#9A6400;display:flex;align-items:center;justify-content:center;font-size:1.4rem;}
.cons-callout h2{font-size:1.35rem;margin:0 0 10px;}
.cons-callout p{line-height:1.75;margin:0 0 12px;}
.cons-callout p:last-child{margin-bottom:0;}
.cons-callout a{color:var(--cons-navy-3);text-underline-offset:2px;}
.cons-callout a:hover{color:var(--cons-coral-dark);}

/* Closing CTA */
.cons-cta{background:linear-gradient(100deg, var(--cons-navy-2) 0%, var(--cons-navy-3) 100%);border-radius:16px;padding:44px 24px;text-align:center;color:#fff;}
.cons-cta h2{color:#fff;font-size:clamp(1.5rem, 3vw, 2rem);margin:0 0 8px;}
.cons-cta p{color:#D7DEEC;margin:0 auto;max-width:560px;line-height:1.6;}

@media (max-width: 900px){
    .cons-grid > .cons-card{max-width:calc((100% - 20px) / 2);}
    .cons-facts{grid-template-columns:repeat(2, 1fr);}
    .cons-intro{grid-template-columns:1fr;gap:0;}
    .cons-intro-media img{min-height:0;aspect-ratio:16/9;height:auto;}
    .cons-intro-text{padding:26px 24px 28px;}
}
@media (max-width: 560px){
    .cons-hero{padding:48px 16px 84px;}
    .cons-facts{padding:0 16px;gap:10px;}
    .cons-fact{padding:14px 10px;}
    .cons-fact strong{font-size:1.15rem;}
    .cons-wrap{padding-left:16px;padding-right:16px;}
    .cons-grid > .cons-card,.cons-grid-2 > .cons-card{max-width:100%;flex-basis:100%;}
    .cons-callout{flex-direction:column;padding:24px 20px;}
}
@media (prefers-reduced-motion: reduce){
    .cons-card,.cons-btn,.cons-card-link i{transition:none;}
    .cons-card:hover,.cons-btn:hover{transform:none;}
}
