/* PassionJet public site — cinematic brand layer v3 (after styles.css) */
:root{
  --pj-bg:#04070d;--pj-bg2:#0a1220;--pj-card:rgba(255,255,255,.045);--pj-card2:rgba(255,255,255,.08);
  --pj-bd:rgba(148,197,255,.14);--pj-bd2:rgba(108,196,242,.38);
  --pj-tx:#eef3fb;--pj-mu:#a8b6cc;--pj-acc:#1e96d6;--pj-navy:#0f2e4a;
  --pj-glow:0 0 0 1px rgba(30,150,214,.5),0 18px 50px rgba(30,150,214,.32);
  --pj-r:20px;--pj-touch:44px;
  --surface:rgba(255,255,255,.05);--surface-2:rgba(255,255,255,.09);
  --navy:#eef3fb;--ink:#eef3fb;--slate:#a8b6cc;--line:rgba(148,197,255,.14);
  --bg:#04070d;--bg-alt:#0a1220;--gold:#5ec0ef;--gold-dark:#8fd0f2;
}
html{background:var(--pj-bg);scroll-behavior:smooth}
body{
  background:var(--pj-bg)!important;color:var(--pj-tx)!important;
  font-family:Inter,system-ui,-apple-system,sans-serif!important;
  background-image:
    radial-gradient(1000px 500px at 90% -5%,rgba(30,150,214,.2),transparent 55%),
    radial-gradient(800px 480px at -10% 30%,rgba(15,46,74,.7),transparent 50%)!important;
  background-attachment:fixed!important;line-height:1.55;overflow-x:hidden;
}
h1,h2,h3,h4{color:#fff!important;letter-spacing:-.03em;font-weight:760}
p,li,.muted,.lead,.section-head p,td,.sub{color:var(--pj-mu)!important}
strong,b{color:#fff} a{color:#6cc4f2}
.eyebrow{color:#7cc8f2!important;letter-spacing:.18em;text-transform:uppercase;font-size:.7rem!important;font-weight:700}

/* —— Motion primitives —— */
@keyframes pj-aurora{
  0%{transform:translate3d(0,0,0) scale(1);opacity:.55}
  50%{transform:translate3d(-4%,3%,0) scale(1.08);opacity:.85}
  100%{transform:translate3d(0,0,0) scale(1);opacity:.55}
}
@keyframes pj-drift{
  0%{background-position:0% 40%,100% 60%,50% 0%}
  50%{background-position:30% 60%,70% 30%,40% 100%}
  100%{background-position:0% 40%,100% 60%,50% 0%}
}
@keyframes pj-fade-up{
  from{opacity:0;transform:translateY(28px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes pj-pulse-line{
  0%,100%{opacity:.35;transform:scaleX(.92)}
  50%{opacity:.9;transform:scaleX(1)}
}
@keyframes pj-shimmer{
  0%{background-position:-200% 0}
  100%{background-position:200% 0}
}
@keyframes pj-glow-breathe{
  0%,100%{box-shadow:0 0 0 1px rgba(30,150,214,.25),0 0 24px rgba(30,150,214,.08)}
  50%{box-shadow:0 0 0 1px rgba(30,150,214,.55),0 0 40px rgba(30,150,214,.28)}
}
.pj-rise{opacity:0;animation:pj-fade-up .9s cubic-bezier(.22,1,.36,1) forwards}
.pj-rise-1{animation-delay:.08s}.pj-rise-2{animation-delay:.2s}.pj-rise-3{animation-delay:.34s}
.pj-rise-4{animation-delay:.48s}.pj-rise-5{animation-delay:.62s}.pj-rise-6{animation-delay:.76s}

/* —— Header —— */
.site-header{background:rgba(4,7,13,.7)!important;backdrop-filter:blur(22px) saturate(1.25);border-bottom:1px solid var(--pj-bd)!important;box-shadow:0 10px 40px rgba(0,0,0,.35)!important}
.site-header .brand img,.brand-logo{height:38px!important;width:auto!important}
.nav-links a{color:#c8d4e6!important;min-height:var(--pj-touch);display:inline-flex;align-items:center;padding:0 12px!important;border-radius:10px;font-weight:560}
.nav-links a:hover,.nav-links a.active{color:#fff!important;background:rgba(255,255,255,.06);box-shadow:inset 0 -2px 0 var(--pj-acc)}
.dropdown{background:#0a1220!important;border:1px solid var(--pj-bd)!important;box-shadow:0 28px 70px rgba(0,0,0,.6)!important;border-radius:14px!important;padding:8px!important}
.dropdown a{color:#c8d4e6!important;border-radius:8px;padding:10px 12px!important;min-height:var(--pj-touch)}
.dropdown a:hover{background:rgba(30,150,214,.14)!important;color:#fff!important}
.nav-login{color:#c8d4e6!important;min-height:var(--pj-touch);display:inline-flex;align-items:center;font-weight:600}

.btn{min-height:var(--pj-touch);border-radius:14px!important;font-weight:720;letter-spacing:-.01em;padding:12px 22px;transition:transform .18s,box-shadow .18s,border-color .18s}
.btn-lg,.btn.btn-lg{min-height:54px;padding:15px 28px;font-size:1.06rem}
.btn-primary{
  background:linear-gradient(135deg,#0f2e4a 0%,#1a7ab8 50%,#1e96d6)!important;color:#fff!important;border:0!important;
  box-shadow:var(--pj-glow)!important;position:relative;overflow:hidden;
}
.btn-primary::after{
  content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.22) 50%,transparent 60%);
  background-size:200% 100%;animation:pj-shimmer 4.5s ease-in-out infinite;pointer-events:none;
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(30,150,214,.65),0 22px 56px rgba(30,150,214,.45)!important}
.btn-outline,.btn-dark{background:rgba(255,255,255,.05)!important;color:#fff!important;border:1px solid var(--pj-bd2)!important}
.btn-outline:hover,.btn-dark:hover{border-color:var(--pj-acc)!important;background:rgba(30,150,214,.14)!important}
.btn-ghost{background:transparent!important;color:#7cc8f2!important;border:0!important;padding-left:0!important}

/* —— Cinematic hero —— */
.hero{
  position:relative;min-height:min(100vh,980px);display:flex;align-items:center;
  text-align:left!important;padding:136px 0 100px!important;overflow:hidden;
  background:#04070d!important;
}
.hero[style*="background"]{background-size:cover!important;background-position:center 40%!important}
.hero::before{
  content:"";position:absolute;inset:-10%;z-index:0;pointer-events:none;
  background:
    radial-gradient(600px 400px at 70% 20%,rgba(30,150,214,.45),transparent 60%),
    radial-gradient(500px 360px at 20% 80%,rgba(15,46,74,.8),transparent 55%),
    radial-gradient(400px 300px at 90% 70%,rgba(59,130,246,.25),transparent 50%);
  background-size:120% 120%,140% 140%,100% 100%;
  animation:pj-aurora 18s ease-in-out infinite, pj-drift 28s ease-in-out infinite;
  mix-blend-mode:screen;opacity:.9;
}
.hero::after{
  content:"";position:absolute;left:8%;right:40%;bottom:18%;height:1px;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(108,196,242,.7),transparent);
  animation:pj-pulse-line 5s ease-in-out infinite;transform-origin:center;
}
.hero-overlay{
  background:
    linear-gradient(105deg,rgba(4,7,13,.96) 0%,rgba(4,7,13,.72) 38%,rgba(4,7,13,.25) 72%,rgba(4,7,13,.55) 100%),
    linear-gradient(180deg,rgba(4,7,13,.2),rgba(4,7,13,.85) 90%)!important;
  z-index:1;
}
.hero .container{
  display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
  grid-template-areas:"eb eb" "h1 badges" "lead badges" "cta badges" "tl badges";
  column-gap:56px;align-items:start;text-align:left!important;position:relative;z-index:2;max-width:1200px;
}
.hero .eyebrow{
  grid-area:eb;justify-self:start;margin:0!important;padding:8px 16px;border-radius:999px;
  border:1px solid rgba(108,196,242,.45);background:rgba(30,150,214,.14);color:#b6e0f7!important;
  box-shadow:0 0 24px rgba(30,150,214,.2);
}
.hero h1{
  grid-area:h1;text-align:left!important;margin:26px 0 20px!important;max-width:11ch;
  font-size:clamp(3rem,6.2vw,5.4rem)!important;line-height:.98!important;font-weight:800!important;
  background:linear-gradient(165deg,#fff 20%,#c5e4f8 55%,#6cb8e8 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent!important;
  text-shadow:0 0 80px rgba(30,150,214,.25);
}
.hero p.lead{
  grid-area:lead;text-align:left!important;margin:0!important;max-width:52ch;
  font-size:1.15rem!important;line-height:1.65;color:#c5d3e8!important;
}
.hero-cta{grid-area:cta;justify-content:flex-start!important;margin-top:34px!important;gap:14px;display:flex;flex-wrap:wrap}
.hero-cta .btn-primary{min-width:min(100%,280px);justify-content:center;font-size:1.08rem}
.hero .trust-line{grid-area:tl;text-align:left!important;margin-top:18px!important;color:#a8b6cc!important}
.hero .trust-line strong{color:#fff}
.hero-badges{grid-area:badges;display:grid!important;grid-template-columns:1fr!important;gap:14px!important;margin:12px 0 0!important;align-self:center}
.hero-badges div{
  display:flex!important;flex-direction:column;align-items:flex-start!important;text-align:left!important;
  padding:22px 24px!important;color:#c8d4e6!important;border-radius:18px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.03))!important;
  border:1px solid var(--pj-bd)!important;backdrop-filter:blur(18px);
  animation:pj-glow-breathe 6s ease-in-out infinite;
}
.hero-badges div:nth-child(2){animation-delay:1.2s}.hero-badges div:nth-child(3){animation-delay:2.4s}
.hero-badges strong{font-size:1.65rem!important;color:#fff!important;margin-bottom:4px;letter-spacing:-.02em}
@media(max-width:960px){
  .hero{min-height:auto;padding:110px 0 64px!important}
  .hero .container{grid-template-columns:1fr;grid-template-areas:"eb" "h1" "lead" "cta" "tl" "badges"}
  .hero h1{max-width:none;font-size:clamp(2.4rem,10vw,3.4rem)!important}
  .hero-badges{grid-template-columns:1fr!important;margin-top:28px!important}
  .hero-cta{flex-direction:column;align-items:stretch}.hero-cta .btn{width:100%;justify-content:center}
  .hero::after{display:none}
}

/* —— Alive proof / trust strip —— */
.trust-strip{
  position:relative;background:rgba(8,14,26,.95)!important;border-block:1px solid var(--pj-bd)!important;
  padding:0!important;overflow:hidden;
}
.trust-strip::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(30,150,214,.12),transparent);
  background-size:200% 100%;animation:pj-shimmer 7s linear infinite;
}
.trust-strip .container{
  display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:0!important;
  padding:0!important;max-width:1200px!important;position:relative;z-index:1;
}
.trust-strip .ti{
  display:flex!important;align-items:center;gap:12px;padding:24px 20px!important;min-height:80px;
  border-right:1px solid var(--pj-bd);color:#d0dbeb!important;background:transparent!important;
  border-radius:0!important;font-size:.92rem!important;line-height:1.35;transition:background .2s,color .2s;
}
.trust-strip .ti:hover{background:rgba(30,150,214,.1)!important;color:#fff!important}
.trust-strip .ti:last-child{border-right:0}
.trust-strip .ti svg{width:22px!important;height:22px!important;color:#6cc4f2!important;flex:none;filter:drop-shadow(0 0 8px rgba(30,150,214,.45))}
.trust-strip .ti b{color:#fff!important}
@media(max-width:900px){
  .trust-strip .container{grid-template-columns:1fr 1fr!important}
  .trust-strip .ti:nth-child(2){border-right:0}.trust-strip .ti:nth-child(-n+2){border-bottom:1px solid var(--pj-bd)}
}
@media(max-width:520px){.trust-strip .container{grid-template-columns:1fr!important}.trust-strip .ti{border-right:0!important;border-bottom:1px solid var(--pj-bd)}}

/* —— Sticky one-roof scroll story —— */
.roof-story{
  display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:48px;
  align-items:start;padding:120px 0;max-width:1200px;margin:0 auto;
}
.roof-pin{
  position:sticky;top:110px;padding:8px 8px 8px 0;
}
.roof-pin .eyebrow{margin-bottom:14px}
.roof-pin h2{font-size:clamp(2rem,3.6vw,3rem)!important;max-width:12ch;margin:0 0 18px;line-height:1.08}
.roof-pin p{max-width:38ch;margin:0 0 28px;font-size:1.05rem}
.roof-pin .roof-rule{
  width:120px;height:2px;border-radius:2px;margin:0 0 28px;
  background:linear-gradient(90deg,#1e96d6,transparent);animation:pj-pulse-line 4s ease-in-out infinite;
}
.roof-chapters{display:flex;flex-direction:column;gap:22px}
.roof-chapter{
  display:grid;grid-template-columns:56px 1fr;gap:18px;padding:26px 28px;border-radius:20px;
  background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
  border:1px solid var(--pj-bd);text-decoration:none;color:inherit;
  transition:transform .2s,border-color .2s,box-shadow .2s;
}
.roof-chapter:hover{
  transform:translateX(6px);border-color:rgba(30,150,214,.55);
  box-shadow:0 0 0 1px rgba(30,150,214,.25),0 24px 50px rgba(0,0,0,.35),0 0 40px rgba(30,150,214,.12);
}
.roof-chapter .n{
  width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-weight:800;color:#fff;
  background:linear-gradient(145deg,#0f2e4a,#1e96d6);box-shadow:0 0 0 4px rgba(30,150,214,.12);
}
.roof-chapter h3{margin:0 0 8px;font-size:1.2rem!important;color:#fff!important}
.roof-chapter p{margin:0;font-size:.95rem}
.roof-chapter .more{display:inline-block;margin-top:12px;font-weight:700;color:#7cc8f2}
@media(max-width:900px){
  .roof-story{grid-template-columns:1fr;gap:28px;padding:72px 20px}
  .roof-pin{position:static}
}

/* Sections */
section{padding:100px 0}
.section-alt{background:linear-gradient(180deg,transparent,rgba(30,150,214,.04),transparent)!important}
.section-head{max-width:720px;margin:0 0 48px;text-align:left!important}
.section-head h2{font-size:clamp(1.95rem,3.5vw,2.9rem)!important;margin:0 0 14px;max-width:16ch}
.section-head--center{margin-left:auto;margin-right:auto;text-align:center!important}
.section-head--center h2{max-width:none}

.card,.fleet-card,.step,.faq-item,.price-card,.tier,.calc,form.enq-form,.form-card,.cta-band,details,.cbox,.enq{
  background:var(--pj-card)!important;border:1px solid var(--pj-bd)!important;border-radius:var(--pj-r)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;backdrop-filter:blur(14px);color:var(--pj-tx);
}
.grid-3>.card,a.card{
  display:flex!important;flex-direction:column;padding:28px!important;min-height:260px;text-decoration:none;color:inherit;
  transition:transform .2s,box-shadow .2s,border-color .2s;
}
a.card:hover,.card:hover{
  border-color:rgba(30,150,214,.55)!important;transform:translateY(-4px);
  box-shadow:0 0 0 1px rgba(30,150,214,.3),0 24px 50px rgba(0,0,0,.4),0 0 48px rgba(30,150,214,.15)!important;
}
.card .icon{
  width:54px!important;height:54px!important;display:grid!important;place-items:center;border-radius:14px!important;
  margin-bottom:18px;background:linear-gradient(145deg,rgba(30,150,214,.3),rgba(59,130,246,.08))!important;
  border:1px solid rgba(108,196,242,.35);color:#7cc8f2!important;
}

/* Fleet glow */
.fleet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.fleet-card{
  overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s!important;
  border:1px solid var(--pj-bd)!important;background:rgba(255,255,255,.04)!important;
}
.fleet-card:hover{
  transform:translateY(-8px)!important;border-color:rgba(30,150,214,.6)!important;
  box-shadow:0 0 0 1px rgba(30,150,214,.35),0 28px 60px rgba(0,0,0,.45),0 0 60px rgba(30,150,214,.2)!important;
}
.fleet-photo{position:relative;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(150deg,#0f2e4a,#081018)}
.fleet-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.fleet-card:hover .fleet-photo img{transform:scale(1.06)}
.fleet-photo::after{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(4,7,13,.85));
  pointer-events:none;
}
.fleet-illus{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff;z-index:1}
.fleet-body{padding:22px!important}
@media(max-width:900px){.fleet-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.fleet-grid{grid-template-columns:1fr}}

/* Steps */
.steps{display:grid!important;grid-template-columns:repeat(4,1fr);gap:16px!important}
.steps .step{padding:26px!important}
.steps .step .num,.steps .step .n{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff!important;
  background:linear-gradient(135deg,#0f2e4a,#1e96d6)!important;box-shadow:0 0 0 6px rgba(30,150,214,.14);
}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.steps{grid-template-columns:1fr}}

/* Editorial trust moment */
.quote-band{
  max-width:100%;margin:0!important;padding:0!important;border:0!important;background:transparent!important;
  box-shadow:none!important;backdrop-filter:none!important;
}
.quote-band .container{max-width:1000px}
.quote-band .quote{
  position:relative;padding:72px 56px;border-radius:28px;
  background:
    radial-gradient(700px 320px at 100% 0%,rgba(30,150,214,.35),transparent 55%),
    linear-gradient(145deg,#0f2e4a,#081018);
  border:1px solid var(--pj-bd);overflow:hidden;
}
.quote-band .quote::before{
  content:"\201C";position:absolute;top:-20px;left:28px;font:700 160px/1 Georgia,serif;color:rgba(108,196,242,.22);
}
.quote-band blockquote{
  margin:0;font-size:clamp(1.35rem,2.6vw,1.85rem);line-height:1.45;color:#fff!important;
  font-weight:500;letter-spacing:-.02em;max-width:28ch;position:relative;z-index:1;
}
.quote-band cite{display:block;margin-top:28px;font-style:normal;font-weight:700;color:#7cc8f2!important;letter-spacing:.04em}
@media(max-width:700px){.quote-band .quote{padding:48px 24px}}

.cta-band{
  padding:80px 48px!important;text-align:center;border-radius:28px!important;
  background:
    radial-gradient(700px 320px at 80% 0%,rgba(30,150,214,.45),transparent),
    linear-gradient(135deg,#0f2e4a,#060a12)!important;
  border:1px solid var(--pj-bd2)!important;
}
.cta-band .btn{min-height:54px}

/* Programme / page heroes — bold opening frame */
.page-hero,.prog-hero{
  position:relative;padding:148px 0 96px!important;text-align:left!important;overflow:hidden;
  background:#04070d!important;border-bottom:1px solid var(--pj-bd);
}
.page-hero::before,.prog-hero::before{
  content:"";position:absolute;inset:-15%;pointer-events:none;
  background:
    radial-gradient(700px 420px at 85% 10%,rgba(30,150,214,.4),transparent 55%),
    radial-gradient(500px 360px at 10% 90%,rgba(15,46,74,.9),transparent 50%);
  animation:pj-aurora 20s ease-in-out infinite;
}
.page-hero .container,.prog-hero .container{position:relative;z-index:2;max-width:1100px}
.page-hero h1,.prog-hero h1{
  font-size:clamp(2.6rem,5vw,4.2rem)!important;line-height:1.02;margin:16px 0 20px;max-width:14ch;
  background:linear-gradient(165deg,#fff,#9ec9ea);-webkit-background-clip:text;background-clip:text;color:transparent!important;
  padding-bottom:.2em;margin-bottom:calc(20px - .2em); /* clip-text paints only inside the box: room for g/y/p descenders on the last line, same spacing */
}
.page-hero p,.prog-hero .lead{font-size:1.15rem;max-width:54ch;color:#c5d3e8!important}
.breadcrumb a{color:#9fd4f0!important}
.prog-hero .hero-cta{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}
.prog-hero .eyebrow,.page-hero .eyebrow{
  display:inline-flex;padding:7px 14px;border-radius:999px;border:1px solid rgba(108,196,242,.4);
  background:rgba(30,150,214,.12);
}
.page-hero--services .container{display:grid;grid-template-columns:1fr auto;gap:36px;align-items:end}
.page-hero--services .ph-cta{display:flex;flex-direction:column;gap:10px}
@media(max-width:800px){.page-hero--services .container{grid-template-columns:1fr}}

/* Programme frame: framed stage above the fold */
.pj-prog .container{max-width:1100px}
.prog-frame{
  display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;
}
.prog-frame .visual{
  aspect-ratio:1600/954;border-radius:24px;border:1px solid var(--pj-bd);
  background:#081018;position:relative;overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.06);
}
.prog-frame .visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left center;display:block}
@media(max-width:900px){.prog-frame{grid-template-columns:1fr}.prog-frame .visual{min-height:0}}

.ticks{list-style:none;padding:0;margin:0}
.ticks li{position:relative;padding:10px 0 10px 28px;color:#c8d4e6!important;border-bottom:1px solid rgba(148,197,255,.08)}
.ticks li::before{content:"";position:absolute;left:0;top:16px;width:14px;height:9px;border-left:2.5px solid #1e96d6;border-bottom:2.5px solid #1e96d6;transform:rotate(-45deg)}

.contact-band{
  background:radial-gradient(600px 280px at 10% 0%,rgba(30,150,214,.28),transparent),linear-gradient(160deg,#0f2e4a,#060a12)!important;
  color:#cfe0f2!important;padding:96px 0!important;border-top:1px solid var(--pj-bd);
}
.enq-form{
  background:rgba(255,255,255,.06)!important;border:1px solid var(--pj-bd)!important;border-radius:20px!important;padding:28px!important;
}
.enq-form label{color:#dbe5f3!important;font-weight:600!important}
.enq-form input,.enq-form select,.enq-form textarea,input,select,textarea{
  background:rgba(255,255,255,.05)!important;color:#fff!important;border:1px solid var(--pj-bd)!important;
  border-radius:12px!important;min-height:var(--pj-touch);padding:12px 14px!important;
}
input:focus,select:focus,textarea:focus,:focus-visible{outline:none!important;box-shadow:0 0 0 3px rgba(30,150,214,.5)!important}
::placeholder{color:#8fa0b8}
.form-success{background:rgba(16,185,129,.12)!important;border:1px solid rgba(52,211,153,.35)!important;color:#a7f3d0!important}

form{counter-reset:pjstep}
form fieldset{counter-increment:pjstep;border:1px solid var(--pj-bd)!important;border-radius:16px!important;padding:22px!important;margin:0 0 18px!important;background:rgba(255,255,255,.025)}
form fieldset>legend{display:flex;align-items:center;gap:10px;font-weight:750;color:#fff;padding:0 8px}
form fieldset>legend::before{content:"Step " counter(pjstep);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#0f2e4a,#1e96d6);border-radius:999px;padding:4px 10px}

/* Book — calm luxury + progress */
.book-main{max-width:960px;margin:0 auto;padding:120px 20px 80px}
.book-progress{
  display:flex;gap:8px;align-items:center;justify-content:center;margin:0 0 28px;flex-wrap:wrap;
}
.book-progress span{
  display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:6px 14px;border-radius:999px;
  font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  background:rgba(255,255,255,.05);border:1px solid var(--pj-bd);color:#a8b6cc;
}
.book-progress span.on{background:rgba(30,150,214,.18);border-color:rgba(108,196,242,.45);color:#fff;box-shadow:0 0 20px rgba(30,150,214,.2)}
.book-progress i{width:18px;height:1px;background:var(--pj-bd);display:inline-block}
.book-bar{
  display:grid;grid-template-columns:1.25fr .75fr;gap:28px;align-items:end;
  padding:40px 40px 36px;margin-bottom:24px;border-radius:28px;position:relative;overflow:hidden;
  background:radial-gradient(520px 240px at 100% 0%,rgba(30,150,214,.4),transparent),linear-gradient(145deg,#0f2e4a,#081018)!important;
  border:1px solid var(--pj-bd);
}
.book-bar::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.06) 50%,transparent 60%);background-size:200% 100%;animation:pj-shimmer 8s ease-in-out infinite;pointer-events:none}
.book-bar h1{font-size:clamp(2rem,3.8vw,2.8rem)!important;margin:0 0 12px;position:relative}
.book-bar p{margin:0;color:#a8b6cc!important;max-width:42ch;position:relative}
.book-points{display:flex;flex-direction:column;gap:10px;position:relative}
.book-point,.book-points>*{
  display:inline-flex;align-items:center;gap:10px;min-height:44px;
  background:rgba(255,255,255,.07);border:1px solid var(--pj-bd);border-radius:999px;padding:10px 16px;
  color:#dbe5f3!important;font-weight:600;font-size:.92rem;
}
.book-point svg{width:18px;height:18px;color:#6cc4f2;flex:none}
.book-logo{display:block;margin:0 auto 20px;height:64px!important;width:auto;max-width:200px;opacity:.95}
.book-wrap{
  background:rgba(255,255,255,.04)!important;border:1px solid var(--pj-bd)!important;border-radius:24px;
  padding:24px;min-height:440px;box-shadow:0 30px 70px rgba(0,0,0,.35);
}
@media(max-width:760px){.book-bar{grid-template-columns:1fr;padding:28px 22px}.book-main{padding-top:100px}}

/* Quote viewer */
body.pj-quote{background:var(--pj-bg)!important;color:var(--pj-tx)!important}
body.pj-quote header{background:linear-gradient(120deg,#060a12,#0f2e4a 55%,#1572b0)!important;border-bottom:1px solid var(--pj-bd)}
body.pj-quote .wrap{max-width:720px;padding:40px 20px 80px}
body.pj-quote .card{background:rgba(255,255,255,.05)!important;border:1px solid var(--pj-bd)!important;border-radius:20px!important;box-shadow:none!important;color:var(--pj-tx)!important}
body.pj-quote h1,body.pj-quote h2,body.pj-quote h3{color:#fff!important}
body.pj-quote .sub{color:var(--pj-mu)!important}
body.pj-quote .leg{color:#fff!important}
body.pj-quote th,body.pj-quote td{border-color:var(--pj-bd)!important}
body.pj-quote th{color:#a8b6cc!important}
body.pj-quote .btn.acc{background:linear-gradient(135deg,#0f2e4a,#1e96d6)!important;color:#fff!important;min-height:48px;box-shadow:var(--pj-glow)}
body.pj-quote .btn.dec{background:rgba(255,255,255,.06)!important;color:#e8eef9!important;border:1px solid var(--pj-bd)!important;min-height:48px}
body.pj-quote .btn.pay{background:linear-gradient(135deg,#0f2e4a,#1669a8)!important;color:#fff!important;min-height:48px}
body.pj-quote input,body.pj-quote textarea{background:rgba(255,255,255,.05)!important;color:#fff!important;border-color:var(--pj-bd)!important;min-height:44px}
body.pj-quote .dep{background:rgba(30,150,214,.1)!important;border:1px solid var(--pj-bd)!important}
body.pj-quote .dep .amt{color:#fff!important}
body.pj-quote .dep p{color:#a8b6cc!important}
body.pj-quote .notes{background:rgba(255,255,255,.04)!important;border-color:var(--pj-bd)!important;color:#c8d4e6!important}
body.pj-quote .badge.sent{background:rgba(30,150,214,.18)!important;color:#9fd4f0!important}
body.pj-quote .badge.accepted{background:rgba(16,185,129,.18)!important;color:#6ee7b7!important}
body.pj-quote .badge.declined{background:rgba(248,113,113,.18)!important;color:#fca5a5!important}
body.pj-quote .badge.expired{background:rgba(251,191,36,.15)!important;color:#fcd34d!important}
body.pj-quote .tot.grand{border-color:var(--pj-bd)!important;color:#fff!important}

.out{background:radial-gradient(500px 240px at 80% 0%,rgba(30,150,214,.35),transparent),linear-gradient(160deg,#0f2e4a,#0b1a2e)!important;border:1px solid rgba(108,196,242,.3)}
.note-box{background:rgba(30,150,214,.08)!important;border:1px solid var(--pj-bd)!important;color:#dbe5f3!important}
.site-footer{background:#03050a!important;border-top:1px solid var(--pj-bd)!important}
.site-footer *{color:#a8b6cc}.site-footer h4,.site-footer strong{color:#fff!important}
.disclaimer{color:#8fa0b8!important}
#cookie-banner,.cookie-banner,.pj-cc{background:#0f1626!important;border:1px solid var(--pj-bd)!important;color:#dbe5f3!important}
.pj-cc-ok{background:#1668a8!important;color:#fff!important}

@media(max-width:760px){
  section{padding:64px 0}.cta-band{padding:48px 22px!important}
  html,body{overflow-x:hidden}
  .nav-cta .nav-login{display:none!important}
  .site-header .brand img{height:28px!important}
}

/* Reduced motion — keep layout, kill animation */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .pj-rise{opacity:1;transform:none}
  html{scroll-behavior:auto}
}

/* Jet Card / Fractional fixes: header nav no-wrap, cookie banner contrast + compact */
.site-header{position:sticky!important;top:0;z-index:1000;background:rgba(4,7,13,.82)!important;transform:translateZ(0);will-change:auto}
.site-header .nav-links a,.site-header nav a{white-space:nowrap}
.pj-cc{max-width:300px!important;padding:14px 16px!important;z-index:900!important;box-shadow:0 18px 50px rgba(0,0,0,.55)!important}
.pj-cc h2{font-size:.95rem!important;color:#fff!important;margin:0 0 6px!important}
.pj-cc p{color:#c8d4e6!important;font-size:.82rem!important;margin:0 0 10px!important}
.pj-cc a{color:#7cc4ff!important}
.pj-cc-no{background:transparent!important;color:#fff!important;border-color:rgba(200,212,230,.55)!important}
.pj-cc-no:hover{border-color:#7cc4ff!important;color:#7cc4ff!important}
@media(max-width:1200px){.site-header .nav-links a,.site-header nav a{padding-left:7px!important;padding-right:7px!important;font-size:.84rem!important}.site-header .nav-links{gap:2px!important}}
.site-header .nav-links{gap:2px!important;margin-left:24px!important}
.site-header .container.nav{max-width:1320px}

/* —— v5 Energy pass: live video hero, punchy type, pulse CTA, impact counters —— */
.hero{min-height:100vh}
.hero .hero-video{display:block;filter:saturate(1.15) contrast(1.08)}
.hero-overlay{background:
  linear-gradient(100deg,rgba(2,5,10,.94) 0%,rgba(2,5,10,.7) 42%,rgba(2,5,10,.2) 75%,rgba(2,5,10,.5) 100%),
  linear-gradient(180deg,rgba(2,5,10,.35) 0%,transparent 30%,rgba(2,5,10,.9) 100%)!important}
.hero h1{font-size:clamp(3rem,6vw,5.6rem)!important;line-height:.92!important;letter-spacing:-.035em;max-width:12ch;font-weight:900!important;
  background:none!important;color:#fff!important;-webkit-background-clip:border-box;background-clip:border-box}
.hero h1 span{display:block}
.hero h1 .h1-pop{background:linear-gradient(90deg,#5fd0ff,#1e96d6 45%,#a9e6ff 70%,#5fd0ff);background-size:220% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;animation:pj-shine 6s linear infinite;
  filter:drop-shadow(0 0 28px rgba(30,150,214,.55))}
/* background-clip:text only paints inside the span's box; with line-height .92 the y/g descenders hang below it and vanish. Extend the paint box, keep spacing. */
.hero h1 .h1-pop{padding-bottom:.24em;margin-bottom:-.24em}
.hero h1 .h1-tail{font-weight:300;font-style:italic;color:#cfe6f7}
@keyframes pj-shine{to{background-position:-220% 0}}
.btn-pulse{position:relative;box-shadow:0 0 0 0 rgba(56,182,255,.7),0 10px 40px rgba(30,150,214,.55)!important;animation:pj-cta-pulse 2.4s ease-out infinite}
@keyframes pj-cta-pulse{0%{box-shadow:0 0 0 0 rgba(56,182,255,.65),0 10px 40px rgba(30,150,214,.55)}
  70%{box-shadow:0 0 0 18px rgba(56,182,255,0),0 10px 50px rgba(30,150,214,.8)}100%{box-shadow:0 0 0 0 rgba(56,182,255,0),0 10px 40px rgba(30,150,214,.55)}}
.btn-pulse:hover{transform:translateY(-2px) scale(1.03)}
.impact-band{position:relative;z-index:3;margin-top:-70px;padding:0 0 40px!important;background:transparent!important}
.impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-radius:22px;overflow:hidden;
  background:linear-gradient(120deg,#0b3a5e,#1668a8 50%,#0b3a5e);box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 60px rgba(30,150,214,.35)}
.impact{padding:30px 26px;border-right:1px solid rgba(255,255,255,.14);transition:transform .5s}
.impact:last-child{border-right:0}
.impact-n{display:block;font-size:clamp(2.8rem,5vw,4.4rem);font-weight:900;line-height:1;color:#fff;letter-spacing:-.04em;text-shadow:0 0 30px rgba(140,220,255,.6)}
.impact-l{display:block;margin-top:8px;color:#d7ecfa;font-weight:600;font-size:.95rem}
.impact.on{animation:pj-pop .6s cubic-bezier(.2,1.4,.4,1)}
@keyframes pj-pop{from{transform:translateY(16px);opacity:.3}to{transform:none;opacity:1}}
@media(max-width:860px){.impact-grid{grid-template-columns:1fr 1fr}.impact:nth-child(2){border-right:0}.impact{border-bottom:1px solid rgba(255,255,255,.14)}.impact-band{margin-top:-30px}}
@media(max-width:960px){.hero h1{font-size:clamp(2.8rem,12vw,4.2rem)!important}}
@media (prefers-reduced-motion: reduce){.btn-pulse,.hero h1 .h1-pop,.impact.on{animation:none!important}}
.hero{padding-top:96px!important}

/* —— Bigger, prominent logo (real passionjet-logo.svg) —— */
.site-header .brand img,.site-header .brand-logo,.brand-logo{height:60px!important;width:auto!important;max-width:min(340px,60vw)!important;object-fit:contain!important;overflow:visible;
  filter:brightness(1.12) drop-shadow(0 0 14px rgba(108,196,242,.35))}
.site-header .container.nav{min-height:84px;align-items:center}
.site-header .brand{flex-shrink:0;padding:6px 0}
@media(max-width:1200px){.site-header .brand img,.brand-logo{height:50px!important}}
@media(max-width:760px){.site-header .brand img,.site-header .brand-logo,.brand-logo{height:42px!important}.site-header .container.nav{min-height:68px}}
.book-logo{height:96px!important;max-width:min(380px,80vw)!important;object-fit:contain;opacity:1!important;filter:brightness(1.12) drop-shadow(0 0 18px rgba(108,196,242,.35))}

/* —— Hero fit: badges always fully visible —— */
.hero{min-height:calc(100vh - 84px)!important;height:auto!important;overflow:hidden;padding:56px 0 110px!important;align-items:center}
.hero .container{grid-template-areas:"eb badges" "h1 badges" "lead badges" "cta badges" "tl badges";align-items:center}
.hero h1{font-size:clamp(2.8rem,5.2vw,4.8rem)!important;margin:18px 0 14px!important}
.hero p.lead{font-size:1.05rem!important;line-height:1.55}
.hero-cta{margin-top:24px!important}
.hero-badges{align-self:center!important;margin:0!important;gap:12px!important}
.hero-badges div{padding:16px 20px!important}
.hero-badges strong{font-size:1.45rem!important}
@media(max-width:960px){.hero{min-height:0!important;padding:48px 0 90px!important}.hero .container{grid-template-areas:"eb" "h1" "lead" "cta" "tl" "badges"}.hero-badges{margin-top:24px!important}}

/* —— Stats band in the first screen (720–900px desktop heights) —— */
@media(min-width:961px){
  .hero{min-height:0!important;padding:28px 0 96px!important}
  .hero .eyebrow{font-size:.95rem!important;padding:6px 14px}
  .hero h1{font-size:clamp(2.5rem,4.4vw,4.1rem)!important;margin:12px 0 10px!important}
  .hero p.lead{font-size:1rem!important;line-height:1.5}
  .hero-cta{margin-top:16px!important}
  .hero .trust-line{margin-top:10px!important}
  .hero-badges{gap:10px!important}.hero-badges div{padding:12px 18px!important}
  .impact-band{margin-top:-80px!important;padding-bottom:28px!important}
  .impact{padding:18px 22px}
  .impact-n{font-size:clamp(2.2rem,3.6vw,3.2rem)}
  .impact-l{margin-top:4px;font-size:.88rem}
}
@media(min-width:961px) and (max-height:780px){
  .hero{padding:16px 0 92px!important}
  .hero h1{font-size:clamp(2.3rem,3.9vw,3.5rem)!important}
  .hero p.lead{font-size:.94rem!important;line-height:1.45;max-width:64ch}
  .hero-badges div{padding:10px 16px!important}.hero-badges strong{font-size:1.25rem!important}
}
/* Header fit 961–1440: keep "Book a Call" on screen */
@media(min-width:961px) and (max-width:1440px){
  .site-header .brand img,.site-header .brand-logo{height:46px!important;max-width:240px!important}
  .site-header .nav-links{margin-left:12px!important}
  .site-header .nav-links a,.site-header nav a{padding-left:6px!important;padding-right:6px!important;font-size:.82rem!important}
  .site-header .nav-cta{gap:8px!important;flex-shrink:0}
  .site-header .nav-cta .btn{padding:10px 14px!important}
}
@media(min-width:961px) and (max-width:1180px){.site-header .nav-cta .nav-login{display:none!important}}

/* —— Balance: pull "One Company" up under the hero (was 220px of stacked padding) —— */
#one-roof{padding-top:40px!important;padding-bottom:72px!important}
#one-roof .roof-story{padding:16px 0 24px!important}
.impact-band{padding-bottom:20px!important}
@media(max-width:960px){#one-roof{padding-top:32px!important}#one-roof .roof-story{padding:8px 20px 24px!important}}

/* ===== WOW ENERGY (design/site-wow-energy) — real footage only, no generated imagery ===== */
/* Bigger, more present logo */
@media(min-width:1341px){.site-header .brand img,.site-header .brand-logo{height:68px!important;max-width:400px!important}}
.site-header .brand img{filter:drop-shadow(0 2px 14px rgba(30,150,214,.35))}
/* Hero: slow real-photo push-in under the video + cinematic navy scrim and runway glow */
.hero{overflow:hidden;isolation:isolate}
/* The Global Express photo's nose and wingtip sit right at its left and right edges, so any
   side-crop (cover on a narrow box, a zoom, a horizontal bleed) cuts the aircraft. Width-fit it
   (100% auto: identical to cover on a wide hero, the whole jet on a narrow one), bleed and drift only
   vertically, and let a sky-to-apron gradient fill any band above or below. */
.hero::before{content:"";position:absolute;inset:-4% 0;z-index:-1;background:url('../assets/aircraft/exterior.jpg?v=2') center 40%/100% auto no-repeat,linear-gradient(180deg,#2e6aa6 0%,#3f7fb8 45%,#0b2a4f 60%,#081a30 100%);animation:pjKen 28s ease-in-out infinite alternate}
@keyframes pjKen{from{transform:translateY(-1.5%)}to{transform:translateY(1.5%)}}
.hero .hero-overlay{background:linear-gradient(100deg,rgba(6,18,38,.92) 0%,rgba(8,30,62,.72) 42%,rgba(8,30,62,.25) 75%,rgba(6,18,38,.55) 100%),linear-gradient(0deg,rgba(6,18,38,.85),transparent 40%)!important}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;z-index:2;background:linear-gradient(90deg,transparent,#1e96d6 30%,#5fd0ff 50%,#1e96d6 70%,transparent);opacity:.8}
.hero .lead{color:rgba(235,244,255,.92)!important;text-shadow:0 1px 12px rgba(0,0,0,.45)}
.hero .eyebrow{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hero-badges div{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:rgba(10,34,68,.55)!important;border:1px solid rgba(95,208,255,.28)!important;overflow-wrap:anywhere}
/* CTAs: stronger primary, clear focus */
.hero-cta .btn-primary{box-shadow:0 10px 30px -8px rgba(30,150,214,.75)}
.btn:focus-visible{outline:3px solid #5fd0ff!important;outline-offset:3px}
/* Tighter section rhythm */
main > section.section-alt,main > section:not(.hero):not(.impact-band):not(.trust-strip){padding-top:clamp(48px,6vw,76px)!important;padding-bottom:clamp(48px,6vw,76px)!important}
/* Final CTA band: real aircraft photo behind navy */
.cta-band{position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(8,30,62,.94),rgba(18,90,150,.82)),url('assets/aircraft/exterior.jpg?v=2') center/100% auto no-repeat #0b2a4f!important;background:linear-gradient(120deg,rgba(8,30,62,.94),rgba(18,90,150,.82)),url('../assets/aircraft/exterior.jpg?v=2') center/100% auto no-repeat #0b2a4f!important;color:#fff;border:1px solid rgba(95,208,255,.25)}
.cta-band h2,.cta-band p{color:#fff!important}
/* Mobile: header CTA no longer cut off */
@media(max-width:480px){.site-header .brand img,.site-header .brand-logo{height:34px!important;max-width:52vw!important}.site-header .nav-cta{margin-right:4px}.site-header .nav-cta .btn{padding:8px 11px!important;font-size:.82rem!important;white-space:nowrap}.site-header .container.nav{gap:8px}}
@media (prefers-reduced-motion: reduce){.hero::before{animation:none!important}}

/* —— Header fit (Oct 2026): "Book a Call" always fully on screen, logo kept at its size ——
   The header row used to sit in the 1320px content container, leaving wide empty margins on
   big screens while the nav overflowed on the right. The header now spans the full width (with
   modest side padding) so the logo moves left and everything fits. Logo sizes are unchanged.
   Only where it still cannot fit: slightly tighter nav spacing (1441–1560px) and the menu
   button from 901px up to 1000px (it used to start at 900px). The room freed up between 1101px
   and 1340px goes back to the logo, so its tagline is easier to read there. */
.site-header .container.nav{max-width:1760px!important;padding-left:clamp(16px,1.6vw,32px)!important;padding-right:clamp(16px,1.6vw,32px)!important}
.site-header .nav-cta .btn{flex-shrink:0}
@media(min-width:1101px) and (max-width:1260px){.site-header .brand img,.site-header .brand-logo{height:52px!important;max-width:290px!important}}
@media(min-width:1261px) and (max-width:1340px){.site-header .brand img,.site-header .brand-logo{height:58px!important;max-width:340px!important}}
@media(min-width:1441px) and (max-width:1560px){
  .site-header .nav-links{margin-left:16px!important}
  .site-header .nav-links a,.site-header nav a{padding-left:9px!important;padding-right:9px!important}
}
@media(min-width:901px) and (max-width:1000px){
  .site-header .nav-links{display:none}
  .site-header .nav-links.open{display:flex;flex-direction:column;position:absolute;top:74px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 24px;gap:16px}
  .site-header .nav-toggle{display:block}
  .site-header .nav-cta{margin-left:0;padding-left:0;border-left:0;gap:14px}
  .site-header .nav-links.open .dropdown{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-left:2px solid var(--line);border-radius:0;margin:6px 0 2px 6px;padding:0 0 0 12px;min-width:0}
  .site-header .nav-links.open .dropdown::before{display:none}
  .site-header .nav-links.open .has-dropdown>a::after{content:""}
  .site-header .nav-links.open .dropdown a{padding:7px 4px}
}
/* Open menu (menu button widths): dark panel that matches the header, links listed on the left,
   section names readable, long lists scroll inside the panel. It used to open as a white panel. */
@media(max-width:1000px){
  .site-header .nav-links.open{top:100%!important;margin:0!important;align-items:stretch!important;background:#0a1220!important;border-bottom:1px solid var(--pj-bd)!important;padding:12px 20px 20px!important;gap:4px!important;max-height:calc(100vh - 84px);overflow-y:auto;box-shadow:0 24px 60px rgba(0,0,0,.55)}
  .site-header .nav-links.open>li>a{color:#fff!important;font-size:1rem!important;padding:0 8px!important}
  .site-header .nav-links.open .dropdown{background:transparent!important;box-shadow:none!important;border:0!important;border-left:2px solid var(--pj-bd)!important;border-radius:0!important;padding:0 0 0 12px!important;margin:2px 0 8px 10px!important}
  .site-header .nav-links.open .dropdown a{padding:0 8px!important;min-height:40px}
}

/* —— Hero: let the aircraft's nose show on wide screens (Oct 2026) ——
   The left of every hero shot (the Global Express nose, the climbing jet's cockpit) sat under a
   92%-opaque navy band, so on wide screens the nose was lost in it. The band is now light, and
   the text keeps its contrast with a soft scrim behind the text block only, plus a tight dark
   halo on each line. Phones keep the darker overlay (the video is off there and the photo sits
   right behind the copy) and get a soft scrim behind the copy, see below. */
@media(min-width:961px){
  .hero .hero-overlay{background:
    linear-gradient(100deg,rgba(6,18,38,.42) 0%,rgba(8,30,62,.30) 34%,rgba(8,30,62,.12) 66%,rgba(6,18,38,.42) 100%),
    linear-gradient(0deg,rgba(6,18,38,.85),transparent 40%)!important}
  .hero .container::before{content:"";position:absolute;z-index:-1;pointer-events:none;
    left:-6%;width:82%;top:-16%;bottom:-16%;
    background:radial-gradient(closest-side,rgba(4,12,26,.7) 0%,rgba(4,12,26,.62) 55%,rgba(4,12,26,.4) 78%,rgba(4,12,26,.14) 92%,transparent 100%)}
}
.hero h1 .h1-kick,.hero h1 .h1-tail{text-shadow:0 1px 2px rgba(2,8,20,.75),0 2px 22px rgba(2,8,20,.6)}
.hero h1 .h1-pop{background-image:linear-gradient(90deg,#7fdcff,#45b4ec 45%,#b9ecff 70%,#7fdcff)!important;
  filter:drop-shadow(0 1px 2px rgba(2,8,20,.85)) drop-shadow(0 0 18px rgba(2,8,20,.55))}
.hero .trust-line{color:#dbe4f0!important}
.hero p.lead,.hero .trust-line{text-shadow:0 0 2px rgba(2,8,20,1),0 1px 4px rgba(2,8,20,.95),0 0 18px rgba(2,8,20,.8)!important}
/* Phones and tablets: no video, the photo sits right behind the copy, so add a soft even scrim. */
@media(max-width:960px){
  .hero .container::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-12px -8px;border-radius:24px;
    background:radial-gradient(closest-side,rgba(4,12,26,.5) 0%,rgba(4,12,26,.42) 70%,rgba(4,12,26,.18) 92%,transparent 100%)}
}
