/* BLH client review: deeper navy and original training photography.
   Additive layer after V5 motion.css; brand logo files remain unchanged. */
:root{
  --navy:#061831;
  --blue:#173c70;
  --ink:#13243d;
  --muted:#4b6079;
  --cream:#e9f0f8;
  --fit-border:rgba(136,160,188,.74);
  --shadow:0 15px 38px rgba(6,26,52,.19);
}
.topline{background:linear-gradient(95deg,#041023,#102c55);color:#e0eafa}
header{background:#e5eef9}
.header-inner{background:rgba(249,251,255,.98);box-shadow:0 11px 26px rgba(3,21,49,.22),inset 0 1px 5px #fff}
.hero{
  background:radial-gradient(ellipse at 78% 28%,rgba(40,96,158,.42),transparent 49%),
    radial-gradient(ellipse at 105% 90%,rgba(154,80,47,.26),transparent 38%),
    linear-gradient(115deg,#030d20 0%,#071d3d 51%,#0c3158 100%);
}
.page-hero{
  background:radial-gradient(ellipse at 95% 12%,rgba(44,94,153,.30),transparent 47%),
    linear-gradient(110deg,#06152d,#0d2b50 78%,#103963);
}
.section-soft{
  background:radial-gradient(ellipse at 12% 16%,#e9f0f8 0%,#dee9f4 65%,#edf3fa 100%);
}
.section-blue{
  background:radial-gradient(ellipse at 90% 13%,rgba(45,103,169,.30),transparent 44%),
    linear-gradient(120deg,#041226,#0b2445 71%,#112f57);
}
.band{
  background:radial-gradient(ellipse at 83% 25%,rgba(54,110,169,.42),transparent 47%),
    linear-gradient(110deg,#051733,#123966);
}
.metric-panel{
  background:linear-gradient(135deg,#061730,#112f56);
  border:1px solid rgba(149,181,220,.42);
}
.feature,.industry,.value,.step,.stat{
  border-color:var(--fit-border);
  box-shadow:0 11px 27px rgba(7,29,66,.15),inset 0 2px 4px rgba(255,255,255,.87);
}
.section-blue .step{background:linear-gradient(140deg,#f6f9ff,#dceafa)}
.eyebrow{color:#bf4b07}
.hero .eyebrow,.page-hero .eyebrow{color:#ffd1a2}
.stats{border-color:#a5bcd7;background:linear-gradient(130deg,rgba(233,241,251,.97),rgba(217,232,249,.93))}
.stat strong{color:#092e5f}
footer{background:#030b17}
.contact-box{background:linear-gradient(140deg,#e5eef8,#f4f7fb);border-color:#ceddeb}
.info-panel{background:linear-gradient(145deg,#f0dfcb,#e2ebf7)}
/* The familiar V5 glass composition now incorporates an authentic training photograph. */
.glass-card--photographic{
  isolation:isolate;overflow:hidden;
  background:#0c2a50!important;
  border-color:rgba(224,238,255,.81);
  box-shadow:0 25px 60px rgba(0,9,28,.65),inset 0 2px 7px rgba(255,255,255,.52);
}
.glass-card--photographic .glass-card-photo{
  position:absolute;inset:0;z-index:0;width:100%;height:100%;
  max-width:none;object-fit:cover;object-position:65% 47%;
  filter:saturate(.88) brightness(.80);
  pointer-events:none;
}
.glass-card--photographic:after{
  content:"";z-index:1;position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(7,19,42,.30) 0%,rgba(6,22,43,.16) 29%,rgba(4,13,33,.93) 100%);
}
.glass-card--photographic > :not(.glass-card-photo){
  position:relative;z-index:2;
}
.glass-card--photographic .glass-symbol{display:none}
.glass-card--photographic .glass-pill{background:rgba(10,31,63,.68);backdrop-filter:blur(6px)}
.glass-card--photographic h3{font-size:1.52rem;line-height:1.18;text-shadow:0 2px 9px #041126}
.glass-card--photographic p{color:#eff5ff;text-shadow:0 2px 8px #041126}
.glass-card--photographic .glass-floating-label{background:rgba(239,248,255,.18)}
/* Genuine training imagery integrated into the existing rounded card language. */
.field-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.field-gallery--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.field-photo,.project-image-card{
  margin:0;border:1px solid rgba(160,186,215,.76);
  overflow:hidden;background:#f3f7fc;border-radius:25px;
  box-shadow:0 14px 30px rgba(7,29,62,.17),inset 0 2px 3px #fff;
}
.field-photo img,.project-image-card img{
  width:100%;display:block;object-fit:cover;
  height:265px;object-position:center 28%;
  transition:transform 390ms ease,filter 390ms ease;
}
.field-photo--landscape img{object-position:center center}
.field-photo figcaption{
  padding:17px 21px 19px;color:#213b5e;font-size:.94rem;
  font-weight:700;line-height:1.4;background:linear-gradient(150deg,#f6f9ff,#e4edf8);
}
.photo-kicker{color:#bf4b07;font-weight:800;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;margin:0 0 7px}
.photo-section{background:linear-gradient(150deg,#eaf1f8,#dee8f4)}
.photo-story{
  display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  align-items:center;gap:55px;
}
.photo-story .field-photo img{height:390px;object-position:center 24%}
.photo-story .photo-copy p{max-width:590px}
.photo-story .photo-copy h2{max-width:590px}
.project-image-card{position:relative;border-radius:25px;min-height:315px}
.project-image-card img{height:340px;object-position:center 37%}
.project-image-card figcaption{
  position:absolute;bottom:0;left:0;right:0;
  padding:30px 22px 20px;color:#fff;font-weight:700;font-size:.98rem;
  background:linear-gradient(0deg,rgba(4,17,39,.90),transparent)
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .field-photo:hover img,.project-image-card:hover img{transform:scale(1.035);filter:saturate(1.055)}
}
@media(max-width:900px){
  .photo-story{grid-template-columns:1fr;gap:28px}
  .field-gallery{gap:14px}
  .field-photo img{height:225px}
}
@media(max-width:700px){
  .field-gallery,.field-gallery--two{grid-template-columns:1fr}
  .field-photo img{height:245px}
  .photo-story .field-photo img{height:315px}
  .project-image-card img{height:300px}
  .photo-story{gap:24px}
  .glass-card--photographic h3{font-size:1.28rem}
}
@media(prefers-reduced-motion:reduce){
  .field-photo img,.project-image-card img{transition:none!important}
}


/* V5 refinements: slightly larger homepage image, accessible photo rotation,
   and visible but inactive social profile spaces until approved URLs arrive. */
@media(min-width:1101px) {
  .hero-grid { grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:clamp(20px,2.5vw,42px); }
  .liquid-stage {width:min(100%,485px);height:378px;min-height:378px;max-width:none;}
  .glass-card.hero-card--slideshow {width:min(100%,390px);max-width:390px;min-height:320px;}
  .glass-rear {width:160px;height:226px;right:2%;top:42px;}
}
.hero-card--slideshow{
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.hero-card--slideshow .hero-slides{
  position:absolute!important;
  inset:0;
  z-index:0!important;
  overflow:hidden;
  border-radius:inherit;
  pointer-events:none;
}
.hero-card--slideshow .hero-slide{
  position:absolute;inset:0;width:100%;height:100%;max-width:none;
  object-fit:cover;object-position:center 30%;
  opacity:0;
  transition:opacity 880ms ease-in-out,filter 400ms ease;
  will-change:opacity;
}
.hero-card--slideshow .hero-slide.active{opacity:1;}
.hero-card--slideshow .hero-slide:nth-child(1){object-position:55% center;}
.hero-card--slideshow .hero-slide:nth-child(4){object-position:58% 35%;}
.hero-card--slideshow .glass-pill,
.hero-card--slideshow .glass-floating-label,
.hero-card--slideshow h3,
.hero-card--slideshow p,
.hero-card--slideshow .hero-rotator-dots{z-index:3;position:relative;}
.hero-card--slideshow:after{z-index:1;}
.hero-card--slideshow .hero-rotator-dots{
  position:absolute;right:19px;bottom:22px;
  display:flex;gap:7px;align-items:center;
  padding:6px 7px;border-radius:50px;
  background:rgba(5,20,45,.47);
  backdrop-filter:blur(8px);
}
.hero-dot{
  display:block;min-width:12px;min-height:12px;width:12px;height:12px;
  padding:0;margin:0;border:1px solid rgba(255,255,255,.62);border-radius:50%;
  background:rgba(255,255,255,.4);cursor:pointer;
  box-shadow:0 1px 6px rgba(0,0,0,.24);
  transition:background-color 180ms ease,transform 180ms ease;
}
.hero-dot.active{background:#fff;transform:scale(1.12);}
.hero-dot:hover{background:#ffc18c;}
.hero-dot:focus-visible{outline:3px solid #ffc18c;outline-offset:3px;}
.social-shell{margin-top:23px;}
.social-heading{color:#fff;font-size:.9rem;font-weight:750;margin:0 0 11px;}
.social-icons{display:flex;flex-wrap:wrap;gap:11px;}
.social-icon{
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid rgba(155,186,226,.33);
  padding:9px 13px;border-radius:14px;
  color:#dae7f6;font-weight:680;font-size:.84rem;
  background:rgba(224,239,255,.07);
}
.social-icon svg{
  width:19px;height:19px;stroke:currentColor;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round;fill:none;
}
.social-icon--pending{cursor:default;user-select:none;}
.social-shell--contact{
  margin:22px 0 23px;padding:19px 20px;
  border-radius:18px;background:linear-gradient(130deg,#061832,#153960);
  box-shadow:0 11px 28px rgba(5,24,53,.17);
}
.social-shell--contact .social-heading{margin-bottom:12px;}
.social-shell--contact .social-icon{border-color:rgba(213,234,255,.4);}
@media(min-width:701px) and (max-width:1100px){
  .liquid-stage{width:min(100%,480px);min-height:355px;height:355px;}
  .glass-card.hero-card--slideshow{width:min(100%,375px);max-width:375px;min-height:310px;}
}
@media(max-width:700px){
  .liquid-stage{width:min(100%,420px);height:298px;min-height:298px;}
  .glass-card.hero-card--slideshow{width:min(100%,320px);max-width:320px;min-height:258px;padding:18px 19px;}
  .hero-card--slideshow .glass-pill{font-size:.56rem;}
  .hero-card--slideshow .glass-floating-label{font-size:.65rem;display:block;margin-right:75px;}
  .hero-card--slideshow h3{font-size:1.32rem;line-height:1.17;}
  .hero-card--slideshow .hero-rotator-dots{right:14px;bottom:19px;gap:7px;}
  .hero-dot{width:11px;height:11px;min-width:11px;min-height:11px;}
  .social-icon{padding:9px 11px;font-size:.8rem;}
}
@media(prefers-reduced-motion:reduce){
  .hero-card--slideshow .hero-slide{transition:none!important;will-change:auto;}
  .hero-dot{transition:none!important;}
}

/* BLH staged email-composition enquiry form: no third-party processing. */
.contact-grid{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);align-items:start;gap:clamp(22px,3.3vw,50px)}
.contact-details{min-width:0}
.contact-details a[href^="mailto"]{color:#14558d;overflow-wrap:anywhere;font-weight:700}
.contact-box--enquiry{border:1px solid rgba(135,165,196,.64);box-shadow:0 17px 35px rgba(5,27,61,.12),inset 0 2px 4px #fff}
.contact-box--enquiry h2{font-size:clamp(1.65rem,2.65vw,2.2rem)}
.contact-box--enquiry > p:not(.eyebrow){color:#456078}
.enquiry-form{display:grid;gap:15px;margin-top:22px}
.enquiry-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.enquiry-field label{font-size:.91rem;color:#17375c;font-weight:750}
.enquiry-field label span{color:#b94a12}
.enquiry-field input,.enquiry-field select,.enquiry-field textarea{width:100%;min-width:0;background:#fff;border:1.35px solid #adc4de;color:#122b4a;font:inherit;font-size:.96rem;padding:12px 14px;border-radius:12px;box-shadow:inset 0 1px 3px rgba(22,64,118,.07);transition:border-color 180ms ease,box-shadow 180ms ease}
.enquiry-field input::placeholder,.enquiry-field textarea::placeholder{color:#677d98;opacity:1}
.enquiry-field textarea{min-height:128px;resize:vertical;line-height:1.55}
.enquiry-field input:focus-visible,.enquiry-field select:focus-visible,.enquiry-field textarea:focus-visible{outline:3px solid rgba(248,135,52,.30);outline-offset:1px;border-color:#b85a18}
.enquiry-fields-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.enquiry-actions{display:flex;gap:11px;flex-wrap:wrap;align-items:center;margin-top:2px}
.enquiry-actions .btn{font-size:.95rem;padding:13px 17px;min-height:46px}
.enquiry-copy{min-height:46px;padding:12px 16px;background:transparent;border:1px solid #a3bddc;border-radius:13px;color:#19395e;font-weight:750;transition:background 180ms ease}
.enquiry-copy:hover{background:#e0ebf7}
.enquiry-copy:focus-visible{outline:3px solid #f7a66d;outline-offset:2px}
.enquiry-explanation{font-size:.83rem;color:#526681;line-height:1.55;margin:0}
.enquiry-status{font-size:.91rem;color:#0d4b37;font-weight:650;min-height:0;margin:0}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}.contact-box--enquiry{max-width:750px;width:100%}}
@media(max-width:510px){.enquiry-fields-two{grid-template-columns:1fr}.contact-box--enquiry{padding:24px 19px}.enquiry-actions{flex-direction:column;align-items:stretch}.enquiry-actions .btn,.enquiry-copy{width:100%;justify-content:center}}
