:root{
  --navy:#06233c;
  --navy-deep:#031a2c;
  --navy-mid:#0a365e;
  --gold:#f3b629;
  --gold-deep:#d99800;
  --ink:#082b50;
  --muted:#526d84;
  --soft:#f5f8fa;
  --line:#dce5ec;
  --white:#fff;
  --shadow:0 8px 22px rgba(7,37,63,.08);
}

/* V17.4: live floorlayer opportunity cards bridge the hero and page content. */
.landing-floorlayer-kpis{
  position:relative;
  z-index:8;
  margin-top:-39px;
  margin-bottom:6px;
  pointer-events:none;
}
.landing-live-label{
  display:flex;
  align-items:center;
  gap:6px;
  height:17px;
  margin-bottom:5px;
  color:#ef3f4f;
  font-size:9px;
  font-weight:950;
  letter-spacing:.13em;
  text-transform:uppercase;
  pointer-events:none;
}
.landing-live-label i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#ef3f4f;
  box-shadow:0 0 0 3px rgba(239,63,79,.18);
}
.landing-floorlayer-kpi-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  max-width:1120px;
}
.landing-floorlayer-kpi{
  position:relative;
  min-height:82px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:13px 18px 12px 23px;
  overflow:hidden;
  border:1px solid #cfdbe3;
  border-radius:11px;
  background:#f7f9fb;
  box-shadow:0 9px 22px rgba(8,39,66,.12);
  color:#082742;
  text-decoration:none;
  pointer-events:auto;
}
.landing-floorlayer-kpi::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:#1679ac;
}
.landing-floorlayer-kpi.interested::before{background:#d4aa4b}
.landing-floorlayer-kpi.booked::before{background:#35ad77}
.landing-floorlayer-kpi strong{
  color:#082742;
  font-size:28px;
  line-height:1;
  font-weight:900;
}
.landing-floorlayer-kpi span{
  margin-top:7px;
  color:#082742;
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.landing-floorlayer-kpi:hover{
  border-color:#9eb5c4;
  box-shadow:0 12px 26px rgba(8,39,66,.16);
  transform:translateY(-2px);
}
@media(max-width:700px){
  .landing-floorlayer-kpis{margin-top:-33px;padding:0 12px}
  .landing-live-label{padding:0}
  .landing-floorlayer-kpi-grid{gap:7px;padding:0}
  .landing-floorlayer-kpi{min-height:70px;padding:10px 9px 9px 15px}
  .landing-floorlayer-kpi strong{font-size:23px}
  .landing-floorlayer-kpi span{font-size:8px}
}

/* V17.6: prominent explanation of the automatic matching service. */
.automatic-matching-feature{
  position:relative;
  margin-top:24px;
  padding:25px 28px 22px;
  overflow:hidden;
  border:1px solid #cddce6;
  border-top:4px solid #f3b629;
  border-radius:14px;
  background:linear-gradient(135deg,#082b49 0%,#0c4167 100%);
  box-shadow:0 16px 34px rgba(6,35,60,.14);
  color:#fff;
}
.automatic-matching-feature::after{
  content:"";
  position:absolute;
  right:-90px;
  top:-110px;
  width:290px;
  height:290px;
  border:1px solid rgba(243,182,41,.17);
  border-radius:50%;
  pointer-events:none;
}
.automatic-matching-heading{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:15px;
}
.automatic-matching-icon{
  flex:0 0 48px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#f3b629;
  color:#082742;
  font-size:23px;
  font-weight:900;
}
.automatic-matching-heading p{
  margin:0 0 4px;
  color:#f3b629;
  font-size:9px;
  font-weight:950;
  letter-spacing:.15em;
}
.automatic-matching-heading h3{
  margin:0;
  color:#fff;
  font-size:25px;
  line-height:1.15;
}
.automatic-matching-intro{
  position:relative;
  z-index:1;
  max-width:1020px;
  margin:17px 0 18px;
  color:#d9e5ec;
  font-size:14px;
  line-height:1.65;
}
.automatic-matching-audiences{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.automatic-matching-audiences>div{
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  background:rgba(255,255,255,.07);
}
.automatic-matching-audiences strong{
  display:block;
  margin-bottom:6px;
  color:#f3b629;
  font-size:14px;
}
.automatic-matching-audiences p{
  margin:0;
  color:#e4edf3;
  font-size:12px;
  line-height:1.6;
}
.automatic-matching-flow{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  margin:18px 0 14px;
  padding:12px 14px;
  border-radius:9px;
  background:#f5f8fa;
  color:#082742;
}
.automatic-matching-flow span{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11px;
  font-weight:850;
}
.automatic-matching-flow b{
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#f3b629;
  color:#082742;
  font-size:11px;
}
.automatic-matching-flow i{
  color:#d69d10;
  font-size:23px;
  font-style:normal;
}
.automatic-matching-control{
  position:relative;
  z-index:1;
  margin:0;
  color:#c8d9e4;
  font-size:11px;
  line-height:1.5;
  text-align:center;
}
.automatic-matching-control strong{color:#fff}
@media(max-width:760px){
  .automatic-matching-feature{padding:21px 18px 19px}
  .automatic-matching-heading{align-items:flex-start}
  .automatic-matching-heading h3{font-size:20px}
  .automatic-matching-audiences{grid-template-columns:1fr}
  .automatic-matching-flow{align-items:stretch;flex-direction:column;gap:8px}
  .automatic-matching-flow i{display:none}
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Montserrat,Avenir,"Segoe UI",Arial,sans-serif;line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{display:block;max-width:100%}
.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.center{text-align:center}

/* header */
.site-header{position:sticky;top:0;z-index:100;background:linear-gradient(90deg,#06233c 0%,#072a48 100%);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 2px 10px rgba(0,0,0,.12)}
.header-row{min-height:64px;display:flex;align-items:center;gap:26px}
.brand{flex:0 0 auto}
.brand img{width:166px;height:44px;object-fit:contain;object-position:left center}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:32px}
.main-nav a{text-decoration:none;color:#fff;font-size:14px;font-weight:700;position:relative;white-space:nowrap}
.main-nav a:not(.sign-in):not(.floorlayer-cta)::after{content:"";position:absolute;left:0;right:100%;bottom:-13px;height:3px;border-radius:3px;background:var(--gold);transition:right .18s ease}
.main-nav a.active::after,.main-nav a:hover::after{right:0!important}
.main-nav .sign-in{padding:13px 18px;border:1px solid rgba(255,255,255,.18);border-radius:7px;background:#0a3357}
.user-mini{margin-right:5px}
.nav-sign-out{margin:0}
.nav-sign-out button{padding:0;border:0;background:transparent;color:#c8d6e1;font:inherit;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.nav-sign-out button:hover{color:#fff;text-decoration:underline}
.main-nav .floorlayer-cta{padding:14px 24px;border-radius:6px;background:linear-gradient(180deg,#f7bf38,#e5a81d);color:#092740;box-shadow:0 2px 0 rgba(0,0,0,.12);font-size:13px}
.menu-toggle{display:none;margin-left:auto;background:none;border:0;padding:8px;cursor:pointer}
.menu-toggle span{display:block;width:28px;height:2px;margin:5px 0;background:#fff}

/* hero uses the approved artwork exactly; no extra heading overlays */
.hero{
  position:relative;
  overflow:hidden;
  background:#fff;
  margin-bottom:0;
}
.hero-frame{
  position:relative;
  width:100%;
  max-width:none;
  margin-inline:auto;
  box-shadow:none;
}
.hero-frame > .hero-image{
  width:100%;
  height:auto;
  object-fit:contain;
}

/* The approved hero artwork contains both role buttons. These transparent
   hotspots keep the buttons clickable without laying duplicate graphics over it. */
.hero-hotspots{
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
}
.hero-hotspot{
  position:absolute;
  top:88.8%;
  width:23.25%;
  height:9.1%;
  border-radius:7px;
  pointer-events:auto;
}
.hero-hotspot-floorlayer{left:50.75%}
.hero-hotspot-company{left:26.25%}
.hero-hotspot:hover{
  box-shadow:0 0 0 3px rgba(255,255,255,.32) inset;
}
.hero-hotspot:focus-visible{
  outline:3px solid #fff;
  outline-offset:3px;
}

/* approved two-pill selector beneath the hero */
.hero-pills{
  position:absolute;
  z-index:5;
  left:50%;
  bottom:-34px;
  transform:translateX(-50%);
  width:min(900px,calc(100% - 40px));
  display:grid;
  grid-template-columns:1fr 1.08fr;
  gap:24px;
}
.hero-pill{
  min-height:70px;
  display:grid;
  grid-template-columns:50px 1fr 26px;
  align-items:center;
  gap:10px;
  padding:9px 17px;
  border-radius:6px;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(5,31,52,.22);
  transition:transform .16s ease,box-shadow .16s ease;
}
.hero-pill:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(5,31,52,.27);
}
.hero-pill-floorlayer{
  color:#fff;
  background:#082d4f;
  border:1px solid rgba(255,255,255,.18);
}
.hero-pill-company{
  color:#08253f;
  background:linear-gradient(180deg,#f7c33d,#edaf21);
}
.hero-pill-icon{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  overflow:hidden;
}
.hero-pill-icon img{
  width:26px;
  height:26px;
  object-fit:contain;
}
.hero-pill-copy strong{
  display:block;
  font-size:13px;
  line-height:1.15;
  letter-spacing:.01em;
}
.hero-pill-copy small{
  display:block;
  margin-top:3px;
  font-size:10px;
  line-height:1.2;
  opacity:.88;
}
.hero-pill-arrow{
  justify-self:end;
  font-size:27px;
  line-height:1;
}

/* shared */
.section{padding:72px 0}
.section-heading{max-width:860px;margin:0 auto 34px}
.eyebrow{margin:0 0 8px;color:var(--gold-deep);font-size:12px;font-weight:900;letter-spacing:.28em;text-transform:uppercase}
.eyebrow.light{color:var(--gold)}
h1,h2,h3,p{margin-top:0}
.section-heading h1,.section-heading h2,.why h2,.advice h2,.join h2{font-weight:800;letter-spacing:-.035em}
.section-heading h1{margin-bottom:10px;font-size:44px;line-height:1.05;color:#082b50}
.section-heading h2{margin-bottom:10px;font-size:42px;line-height:1.05;color:#082b50}
.section-heading h2 span{position:relative}
.section-heading h2 span::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:4px;border-radius:3px;background:var(--gold)}
.section-intro{max-width:790px;margin:0 auto;color:#4c6780;font-size:16px}

/* how it works */
.how{background:#fff}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.step-card{position:relative;min-height:320px;padding:54px 26px 26px;border:1px solid #dbe4ea;border-radius:6px;background:#fff;text-align:center;box-shadow:0 9px 24px rgba(7,37,63,.07)}
.step-number{position:absolute;top:18px;left:18px;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#0a3a67;color:#fff;font-size:20px;font-weight:900}
.step-icon{width:78px;height:78px;margin:12px auto 18px;color:#0b3f70;fill:currentColor}
.step-card h3{margin:0 0 10px;color:#092f56;font-size:18px;line-height:1.15}
.step-card p{margin:0;color:#506b82;font-size:14px;line-height:1.5}

/* why join */
/* Why Join section – richer visual background */
.why{
  position:relative;
  overflow:hidden;
  padding:52px 0 58px;
  background:linear-gradient(102deg,#052642 0%,#073259 56%,#06243c 100%);
  color:#fff;
}
.why::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(5,35,58,.90) 0%,rgba(5,35,58,.84) 36%,rgba(5,35,58,.58) 62%,rgba(5,35,58,.78) 100%),
    repeating-linear-gradient(135deg,transparent 0 32px,rgba(255,255,255,.025) 32px 33px);
  pointer-events:none;
  z-index:1;
}
.why::after{
  content:"";
  position:absolute;
  right:-110px;
  top:-95px;
  width:520px;
  height:520px;
  border:1px solid rgba(243,182,41,.22);
  transform:rotate(35deg);
  pointer-events:none;
  z-index:1;
}
.why-photo{
  position:absolute;
  inset:0;
  background-image:url('assets/why-section-bg.jpg');
  background-size:cover;
  background-position:center right;
  opacity:.64;
}
.why .shell{
  position:relative;
  z-index:2;
}
.why-heading-clean{
  text-align:left !important;
  max-width:760px;
  margin:0 0 36px;
}
.why-heading-clean .eyebrow{
  color:#f0b62c;
  margin-bottom:12px;
}
.why-heading-clean h2{
  margin:0 0 14px;
  color:#fff;
  font-size:62px;
  line-height:1.04;
  letter-spacing:-.03em;
  text-align:left;
}
.why-heading-clean .section-intro{
  margin:0;
  max-width:720px;
  color:#e5edf4;
  font-size:18px;
  line-height:1.48;
  text-align:left;
}
.why-slogan{
  position:absolute;
  right:26px;
  top:-4px;
  width:168px;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.26));
}
.benefit-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  margin-top:12px;
}
.benefit-card{
  min-height:270px;
  padding:28px 24px;
  border-radius:8px;
  background:#fff;
  text-align:center;
  color:#0b355e;
  box-shadow:0 14px 28px rgba(0,0,0,.14);
}
.benefit-card svg{
  width:74px;
  height:74px;
  margin:0 auto 14px;
  color:#0a3a67;
  fill:currentColor;
}
.benefit-card h3{
  margin:0 0 10px;
  font-size:19px;
  line-height:1.16;
}
.benefit-card p{
  margin:0;
  color:#4b6680;
  font-size:14px;
  line-height:1.5;
}
@media(max-width:1200px){
  .why-heading-clean h2{font-size:50px}
  .why-heading-clean .section-intro{font-size:16px}
  .why-slogan{width:148px;right:14px}
}
@media(max-width:980px){
  .why{padding:44px 0 50px}
  .why-heading-clean{max-width:none;padding-right:0}
  .why-slogan{
    position:relative;
    right:auto;
    top:auto;
    display:block;
    margin:8px 0 20px auto;
    width:140px;
  }
  .benefit-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .why{padding:40px 0 44px}
  .why-heading-clean h2{font-size:38px}
  .why-heading-clean .section-intro{font-size:15px}
  .benefit-grid{grid-template-columns:1fr;gap:16px}
  .benefit-card{min-height:auto;padding:22px 18px}
}

/* flooring work */
.work{position:relative;background:linear-gradient(180deg,#fff,#f7f9fb)}
.work::after{content:"";position:absolute;right:0;top:0;width:260px;height:100%;background:linear-gradient(130deg,transparent 0 40%,rgba(17,54,86,.035) 40% 44%,transparent 44% 52%,rgba(17,54,86,.025) 52% 56%,transparent 56%);pointer-events:none}
.work-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.work-card{min-height:210px;padding:16px 18px 15px;border:1px solid #e0e7ec;border-radius:6px;background:#fff;text-align:center;box-shadow:0 7px 18px rgba(7,37,63,.055)}
.work-card h3{margin:8px 0 0;color:#0a3157;font-size:16px}
/* approved flooring product images */
.work-product-image{
  display:block;
  width:100%;
  height:138px;
  object-fit:contain;
  object-position:center;
  margin:0 auto;
  padding:4px 8px 0;
}

/* advice */
.advice{background:#fff;border-top:4px solid #0a3157}
.advice-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:28px}
.advice-head>div{max-width:760px}
.advice h2{margin:0 0 8px;font-size:42px;color:#082b50}
.advice-head p:not(.eyebrow){margin:0;color:#526d84;font-size:16px}
.outline-navy{flex:0 0 auto;padding:14px 22px;border:2px solid #0c3d6a;border-radius:6px;color:#0b355e;font-size:14px;font-weight:800;text-decoration:none;background:#fff}
.outline-navy span{margin-left:8px}
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.article-card{overflow:hidden;border:1px solid #dfe7ec;border-radius:5px;background:#fff;box-shadow:0 9px 22px rgba(7,37,63,.07)}
.article-image{height:190px;background-size:cover;background-repeat:no-repeat;background-position:center}
.image-floorlayer{background-image:url('assets/advice-subfloor.jpg')}
.image-flooring{background-image:url('assets/advice-lvt-vinyl.jpg')}
.image-business{background-image:url('assets/advice-tools.jpg')}
.article-body{padding:18px 20px 20px}
.tag{display:inline-block;margin-bottom:10px;padding:5px 10px;border-radius:14px;background:var(--gold);color:#5f4300;font-size:10px;font-weight:900;letter-spacing:.03em}
.article-card h3{margin:0 0 8px;color:#092e55;font-size:19px;line-height:1.18}
.article-card p{margin:0 0 16px;color:#597086;font-size:14px}
.article-card a{color:var(--gold-deep);font-weight:900;text-decoration:none;font-size:14px}
.article-card a span{margin-left:7px}

/* join */
.join{position:relative;overflow:hidden;padding:64px 0;background:linear-gradient(105deg,#06233c,#07345b 70%,#082947);color:#fff}
.join::after{content:"";position:absolute;right:-100px;top:-170px;width:560px;height:560px;border:1px solid rgba(243,182,41,.25);transform:rotate(33deg)}
.join-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(4,31,52,.9) 0%,rgba(4,31,52,.82) 56%,rgba(4,31,52,.5) 100%),url('assets/cta-bg.webp');background-size:cover;background-position:center;opacity:.88}
.join-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.55fr .65fr;gap:70px;align-items:center}
.join-main h2{margin:0 0 12px;color:#fff;font-size:44px;line-height:1.05}
.join-main>p:not(.eyebrow){max-width:760px;margin:0 0 26px;color:#e6eef4;font-size:16px}
.join-buttons{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.join-buttons a{min-height:86px;display:grid;grid-template-columns:45px 1fr 20px;align-items:center;gap:10px;padding:13px 18px;border-radius:7px;text-decoration:none;box-shadow:0 8px 20px rgba(0,0,0,.15)}
.join-company{background:linear-gradient(180deg,#f7bf38,#e7a61d);color:#082b50}
.join-floorlayer{background:#0b3459;color:#fff;border:1px solid rgba(255,255,255,.65)}
.button-icon{font-size:26px;text-align:center}
.join-buttons strong{display:block;font-size:14px}
.join-buttons small{display:block;margin-top:3px;font-size:11px;opacity:.9}
.join-buttons b{font-size:22px}
.join-benefits{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.join-benefits li{position:relative;padding-left:38px;font-weight:700;color:#fff;font-size:14px}
.join-benefits li::before{content:"✓";position:absolute;left:0;top:-3px;width:24px;height:24px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:14px;font-weight:900}

/* footer */
.site-footer{background:#041d31;color:#d6e1ea}
.footer-top{display:grid;grid-template-columns:1.35fr repeat(3,.8fr) 1fr;gap:34px;padding:42px 0 34px}
.footer-brand img{width:185px;height:62px;object-fit:contain;object-position:left center}
.footer-brand p{max-width:240px;margin:10px 0 18px;color:#aebdcc;font-size:13px}
.socials{display:flex;gap:10px}.socials span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#06233c;font-size:12px;font-weight:900}
.site-footer h3{margin:0 0 13px;color:#fff;font-size:13px}
.site-footer nav{display:grid;align-content:start;gap:7px}
.site-footer nav a{color:#cad6df;text-decoration:none;font-size:12px}
.contact-block p{margin:0 0 10px;color:#cad6df;font-size:12px}
.uk-proud{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:16px;
  color:#fff;
  font-size:11px;
  line-height:1.25;
}
.uk-proud img{
  width:38px;
  height:auto;
  flex:0 0 auto;
  border-radius:2px;
}
.uk-proud strong{
  color:#fff;
  font-size:11px;
}
.footer-bottom{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.12);color:#91a7b8;font-size:11px}
.footer-bottom a{color:#b8c6d1;text-decoration:none}.footer-bottom i{margin:0 9px;font-style:normal;color:#5d7385}

@media(max-width:1100px){
  .main-nav{gap:19px}.main-nav a{font-size:12px}.main-nav .floorlayer-cta{padding:12px 16px}
  .steps-grid,.benefit-grid,.work-grid{grid-template-columns:repeat(2,1fr)}
  .why-slogan{position:relative;right:auto;top:auto;display:block;width:128px;margin:20px 0 0 auto}
  .footer-top{grid-template-columns:1.3fr repeat(2,1fr)}
}

@media(max-width:820px){
  .shell{width:min(100% - 28px,720px)}
  .header-row{min-height:68px}.brand img{width:155px;height:48px}.menu-toggle{display:block}
  .main-nav{display:none;position:absolute;top:68px;left:0;right:0;padding:12px 18px 20px;background:#06233c;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 16px 28px rgba(0,0,0,.25)}
  .main-nav.open{display:flex}.main-nav a,.main-nav .sign-in,.main-nav .floorlayer-cta{padding:13px 8px;border:0;border-radius:0;background:transparent;color:#fff}.main-nav .floorlayer-cta{margin-top:8px;background:var(--gold);color:#082b50;border-radius:5px;text-align:center}.main-nav a::after{display:none!important}.nav-sign-out{padding:0 8px}.nav-sign-out button{padding:13px 0;font-size:12px;text-align:left;width:100%}
  .section{padding:52px 0}.section-heading h1,.section-heading h2,.why-copy h2,.advice h2,.join-main h2{font-size:34px}
  .steps-grid,.benefit-grid,.work-grid,.article-grid{grid-template-columns:1fr 1fr}
  .why{padding-top:52px}.why-copy{max-width:none}.why-slogan{display:none}
  .advice-head{align-items:flex-start;flex-direction:column}.outline-navy{align-self:flex-start}
  .join-grid{grid-template-columns:1fr;gap:36px}.join-buttons{grid-template-columns:1fr 1fr}.join-benefits{grid-template-columns:1fr 1fr}
  .footer-top{grid-template-columns:1fr 1fr}
}

@media(max-width:1100px){
  .hero-frame{width:100%;max-width:none;}
}

@media(max-width:850px){
  .hero-pills{
    width:calc(100% - 28px);
    gap:12px;
  }
  .hero-pill{
    min-height:64px;
    padding:8px 14px;
  }
}

@media(max-width:560px){
  .hero{overflow:hidden;margin-bottom:0}
  .hero-frame > .hero-image{width:100%;height:auto}
  .hero-pills{
    bottom:-103px;
    width:calc(100% - 28px);
    grid-template-columns:1fr;
    gap:8px;
  }
  .hero-pill{
    min-height:62px;
    grid-template-columns:44px 1fr 22px;
    padding:8px 13px;
  }
  .hero-pill-icon{width:36px;height:36px}
  .hero-pill-icon img{width:23px;height:23px}
  .section-heading h1,.section-heading h2,.why-copy h2,.advice h2,.join-main h2{font-size:30px}
  .eyebrow{font-size:10px;letter-spacing:.18em}.section-intro{font-size:14px}
  .steps-grid,.benefit-grid,.work-grid,.article-grid,.join-buttons,.join-benefits,.footer-top{grid-template-columns:1fr}
  .step-card{min-height:0}.benefit-card{min-height:0}.work-card{min-height:180px}.article-image{height:170px}
  .footer-bottom{padding:16px 0;align-items:flex-start;flex-direction:column}
}

/* === INVESTOR FOOTER / CTA LOCK 2026-09-15 === */

/* Preferred final CTA: clean navy/gold, no embedded slogan artwork */
.join{
  position:relative;
  overflow:hidden;
  padding:34px 0 28px;
  color:#fff;
  text-align:center;
  background:
    linear-gradient(100deg,rgba(5,31,52,.985),rgba(7,49,83,.985)),
    repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 1px,transparent 1px 18px);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.1);
}
.join::after{display:none}
.join-inner{
  position:relative;
  z-index:2;
  max-width:860px;
}
.join .eyebrow{
  margin:0 0 7px;
  color:#f0b62c;
  font-size:10px;
  font-weight:800;
  letter-spacing:.09em;
}
.join .join-inner h2{
  margin:0 0 7px;
  color:#fff;
  font-size:32px;
  line-height:1.08;
}
.join .join-inner>p:not(.eyebrow){
  max-width:680px;
  margin:0 auto 15px;
  color:#e5edf3;
  font-size:13px;
}
.join-buttons-compact{
  display:flex;
  justify-content:center;
  gap:14px;
}
.join-buttons-compact a.compact{
  min-width:220px;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  padding:8px 18px;
  border-radius:4px;
  text-decoration:none;
  box-shadow:none;
  font-size:12px;
  font-weight:800;
}
.join-buttons-compact .join-floorlayer.compact{
  color:#fff;
  background:#0a3154;
  border:1px solid rgba(255,255,255,.65);
}
.join-buttons-compact .join-company.compact{
  color:#082540;
  background:linear-gradient(180deg,#f6c13c,#e9aa20);
  border:0;
}
.join-buttons-compact b{
  font-size:19px;
  line-height:1;
  font-weight:400;
}

/* Fuller approved-style footer */
.site-footer{
  background:#041d31;
  color:#d6e1ea;
}
.footer-top{
  display:grid;
  grid-template-columns:1.35fr .8fr .8fr .8fr 1.1fr;
  gap:32px;
  padding:30px 0 24px;
}
.footer-brand img{
  width:185px;
  height:58px;
  object-fit:contain;
  object-position:left center;
}
.footer-brand p{
  max-width:225px;
  margin:7px 0 0;
  color:#aebdcc;
  font-size:11px;
}
.site-footer h3{
  margin:0 0 11px;
  color:#fff;
  font-size:12px;
}
.site-footer nav{
  display:grid;
  align-content:start;
  gap:5px;
}
.site-footer nav a{
  color:#cad6df;
  text-decoration:none;
  font-size:11px;
}
.site-footer nav a:hover{color:#fff}
.contact-block p{
  margin:0 0 9px;
  color:#cad6df;
  font-size:11px;
}
.contact-line span{
  display:inline-block;
  width:18px;
  color:#fff;
}
.uk-proud{
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:12px;
  color:#fff;
  font-size:10px;
  line-height:1.25;
}
.uk-proud img{
  width:34px;
  height:auto;
  flex:0 0 auto;
  border-radius:2px;
}
.uk-proud strong{
  color:#fff;
  font-size:10px;
}
.social-buttons{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:14px;
}
.social-btn{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:4px;
  color:#fff;
  font-size:14px;
  font-weight:900;
  line-height:1;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.15);
}
.social-btn.linkedin{background:#0a66c2}
.social-btn.facebook{background:#1877f2}
.social-btn.instagram{background:linear-gradient(135deg,#7b2ff7,#f1077a,#ff8a00)}
.social-btn.youtube{background:#ff0000;font-size:11px}

.footer-bottom{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid rgba(255,255,255,.12);
  color:#91a7b8;
  font-size:10px;
}
.footer-bottom a{
  color:#b8c6d1;
  text-decoration:none;
}
.footer-bottom i{
  margin:0 8px;
  color:#5d7385;
  font-style:normal;
}

@media(max-width:1100px){
  .footer-top{grid-template-columns:1.2fr repeat(2,1fr)}
}

@media(max-width:820px){
  .join-buttons-compact{flex-wrap:wrap}
  .footer-top{grid-template-columns:1fr 1fr}
  .footer-brand,.contact-block{grid-column:1/-1}
}

@media(max-width:560px){
  .join{padding:30px 0 26px}
  .join .join-inner h2{font-size:28px}
  .join-buttons-compact{
    flex-direction:column;
    align-items:stretch;
  }
  .join-buttons-compact a.compact{
    width:100%;
    min-width:0;
  }
  .footer-top{
    grid-template-columns:1fr 1fr;
    gap:24px;
  }
  .footer-brand,.contact-block{grid-column:1/-1}
  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    padding:14px 0;
  }
}

/* === HOW IT WORKS PANEL LOCK 2026-09-15 === */
.how{
  padding:58px 0 54px;
  background:#fff;
}
.how .section-heading.center{
  text-align:center;
}
.how .section-heading h2{
  margin:2px 0 0;
  color:#0b3157;
  font-size:50px;
  line-height:1.02;
}
.how .section-intro{
  display:none;
}
.how-panels{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin-top:24px;
}
.how-panel{
  border-radius:8px;
  padding:22px 26px 22px;
  box-shadow:0 6px 18px rgba(8,35,63,.05);
  border:1px solid #e5eaef;
}
.how-floorlayer{
  background:linear-gradient(180deg,#edf5fb 0%, #eef6fc 100%);
}
.how-company{
  background:linear-gradient(180deg,#fcf8ef 0%, #fbf7ef 100%);
}
.how-panel-head{
  display:flex;
  align-items:flex-start;
  gap:16px;
  margin-bottom:18px;
}
.how-panel-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  font-size:31px;
  line-height:1;
  color:#0a3760;
}
.how-company .how-panel-icon{
  color:#c48a07;
}
.how-panel-head h3{
  margin:0 0 2px;
  color:#0b3157;
  font-size:22px;
  line-height:1.1;
}
.how-panel-head p{
  margin:0;
  color:#456076;
  font-size:15px;
}
.how-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:16px;
}
.how-list li{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:16px;
  align-items:flex-start;
}
.how-list li > span{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#0b3965;
  color:#fff;
  font-weight:800;
  font-size:20px;
  line-height:1;
}
.how-company .how-list li > span{
  background:#c89008;
}
.how-list strong{
  display:block;
  color:#0b3157;
  font-size:16px;
  line-height:1.2;
}
.how-list p{
  margin:2px 0 0;
  color:#4f6779;
  font-size:14px;
  line-height:1.35;
}

@media(max-width:820px){
  .how-panels{
    grid-template-columns:1fr;
    gap:14px;
  }
  .how-panel{
    padding:20px 18px;
  }
}

@media(max-width:560px){
  .how{
    padding:50px 0 44px;
  }
  .how .section-heading h2{
    font-size:42px;
  }
  .how-panel-head{
    gap:12px;
  }
  .how-panel-icon{
    width:46px;
    height:46px;
    font-size:27px;
  }
  .how-panel-head h3{
    font-size:20px;
  }
  .how-list li{
    grid-template-columns:38px 1fr;
    gap:12px;
  }
  .how-list li > span{
    width:34px;
    height:34px;
    font-size:18px;
  }
  .how-list strong{
    font-size:15px;
  }
  .how-list p{
    font-size:13px;
  }
}

/* === FLOORING WORK PHOTO GRID LOCK 2026-09-15 === */
.work{
  padding:56px 0 54px;
  background:#f5f6f8;
}
.work .section-heading.center{
  text-align:center;
}
.work .section-heading h2{
  margin:4px 0 0;
  color:#0b3157;
}
.work .section-heading .section-intro{
  max-width:720px;
  margin:10px auto 0;
}
.work-grid.work-grid-photo{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-top:24px;
}
.work-card-photo{
  overflow:hidden;
  border-radius:4px;
  background:#fff;
  border:1px solid #dfe5ea;
  box-shadow:0 3px 10px rgba(8,35,63,.04);
}
.work-card-photo img{
  width:100%;
  height:105px;
  display:block;
  object-fit:cover;
}
.work-card-copy{
  padding:10px 14px 12px;
}
.work-card-copy h3{
  margin:0 0 3px;
  color:#0b3157;
  font-size:17px;
  line-height:1.15;
}
.work-card-copy p{
  margin:0;
  color:#4f6779;
  font-size:13px;
  line-height:1.25;
}

@media(max-width:1000px){
  .work-grid.work-grid-photo{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:560px){
  .work{
    padding:50px 0 46px;
  }
  .work-grid.work-grid-photo{
    grid-template-columns:1fr;
    gap:14px;
  }
  .work-card-photo img{
    height:140px;
  }
}

/* === WHY CONNECT CLEAN SECTION LOCK 2026-09-15 === */
.why{
  position:relative;
  padding:58px 0 52px;
  background:#fff;
  color:#0b3157;
}
.why::after,
.why-photo,
.why-slogan{
  display:none !important;
}
.why-heading-clean{
  text-align:center;
}
.why-heading-clean h2{
  margin:4px 0 0;
  color:#0b3157;
  font-size:50px;
  line-height:1.02;
}
.why-heading-clean .section-intro{
  max-width:860px;
  margin:10px auto 0;
  color:#4d667b;
  font-size:18px;
}
.benefit-grid-clean{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  margin-top:28px;
}
.benefit-card-clean{
  min-height:210px;
  padding:26px 24px 24px;
  border-radius:6px;
  border:1px solid #e2e8ed;
  background:#fff;
  text-align:center;
  color:#0b3157;
  box-shadow:0 6px 18px rgba(7,37,63,.05);
}
.benefit-icon{
  width:64px;
  height:64px;
  margin:0 auto 12px;
  color:#d19a10;
}
.benefit-icon.navy{
  color:#0b3965;
}
.benefit-icon svg{
  width:100%;
  height:100%;
  display:block;
}
.benefit-card-clean h3{
  margin:0 0 8px;
  color:#082f58;
  font-size:20px;
  line-height:1.15;
}
.benefit-card-clean p{
  margin:0;
  color:#4f6779;
  font-size:14px;
  line-height:1.42;
}

@media(max-width:1000px){
  .benefit-grid-clean{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:560px){
  .why{
    padding:50px 0 44px;
  }
  .why-heading-clean h2{
    font-size:42px;
  }
  .why-heading-clean .section-intro{
    font-size:16px;
  }
  .benefit-grid-clean{
    grid-template-columns:1fr;
    gap:16px;
  }
  .benefit-card-clean{
    min-height:0;
    padding:22px 18px 20px;
  }
}

/* === HELP ADVICE CLEAN FIVE CARD LOCK 2026-09-15 === */
.advice-clean{
  padding:54px 0 48px;
  background:linear-gradient(180deg,#f7f9fb 0%,#f1f5f7 100%);
  border-top:0;
}
.advice-heading-clean{
  text-align:center;
}
.advice-heading-clean h2{
  margin:4px 0 0;
  color:#0b3157;
  font-size:42px;
  line-height:1.05;
}
.advice-heading-clean .section-intro{
  max-width:760px;
  margin:9px auto 0;
  color:#4f6779;
  font-size:16px;
}
.advice-card-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
  margin-top:26px;
}
.advice-card-clean{
  overflow:hidden;
  border-radius:5px;
  border:1px solid #dde5ea;
  background:#fff;
  box-shadow:0 5px 14px rgba(7,37,63,.05);
}
.advice-card-clean img{
  width:100%;
  height:128px;
  display:block;
  object-fit:cover;
}
.advice-card-copy{
  padding:12px 12px 14px;
}
.advice-card-copy h3{
  margin:0 0 6px;
  color:#0b3157;
  font-size:15px;
  line-height:1.12;
}
.advice-card-copy p{
  margin:0;
  color:#526b7e;
  font-size:12px;
  line-height:1.3;
}
.advice-hub-row{
  display:flex;
  justify-content:center;
  margin-top:24px;
}
.advice-hub-button{
  min-width:230px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  padding:10px 22px;
  border-radius:4px;
  color:#fff;
  background:#082f54;
  text-decoration:none;
  font-size:13px;
  font-weight:800;
  box-shadow:0 5px 12px rgba(7,37,63,.14);
}
.advice-hub-button span{
  font-size:20px;
  font-weight:400;
}

@media(max-width:1050px){
  .advice-card-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:760px){
  .advice-card-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:520px){
  .advice-clean{
    padding:48px 0 42px;
  }
  .advice-heading-clean h2{
    font-size:34px;
  }
  .advice-card-grid{
    grid-template-columns:1fr;
  }
  .advice-card-clean img{
    height:180px;
  }
}

/* === WHY COMPANIES STORY LOCK 2026-09-15 === */
.company-story{
  position:relative;
  overflow:hidden;
  padding:34px 0;
  color:#fff;
  background:
    linear-gradient(110deg,#06233d 0%,#082f52 58%,#07385f 100%);
}
.company-story::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.12;
  background-image:
    repeating-linear-gradient(135deg,transparent 0 18px,rgba(255,255,255,.08) 18px 19px);
}
.company-story-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr 1.55fr;
  gap:40px;
  align-items:center;
}
.company-story-copy{
  padding-right:34px;
  border-right:1px solid rgba(255,255,255,.22);
}
.company-story-copy h2{
  margin:0 0 8px;
  color:#fff;
  font-size:34px;
  line-height:1.08;
}
.company-story-copy>p:not(.eyebrow){
  max-width:470px;
  margin:0 0 16px;
  color:#e0eaf1;
  font-size:14px;
  line-height:1.45;
}
.company-story-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  min-width:175px;
  min-height:42px;
  padding:8px 18px;
  border-radius:4px;
  background:linear-gradient(180deg,#f7c33e,#e9aa20);
  color:#082742;
  font-size:12px;
  font-weight:800;
  text-decoration:none;
  box-shadow:inset 0 -1px 0 rgba(0,0,0,.12);
}
.company-story-button span{
  font-size:20px;
  font-weight:400;
}
.company-story-benefits{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px 30px;
}
.company-story-benefits article{
  display:grid;
  grid-template-columns:52px 1fr;
  gap:14px;
  align-items:center;
}
.company-story-icon{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:2px solid #d8a521;
  color:#f2bb2d;
  font-size:22px;
  font-weight:800;
}
.company-story-benefits p{
  margin:0;
  color:#fff;
  font-size:13px;
  line-height:1.3;
}
.company-story-benefits strong{
  color:#fff;
}

@media(max-width:900px){
  .company-story-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
  .company-story-copy{
    padding-right:0;
    padding-bottom:24px;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.2);
  }
}

@media(max-width:560px){
  .company-story{
    padding:30px 0;
  }
  .company-story-copy h2{
    font-size:30px;
  }
  .company-story-benefits{
    grid-template-columns:1fr;
    gap:16px;
  }
}

/* === COMPANY STORY VISUAL LOCK 2026-09-15 === */
.company-story-visual{
  position:relative;
  overflow:hidden;
  padding:38px 0 34px;
  color:#fff;
  background:
    radial-gradient(circle at 15% 20%,rgba(0,136,206,.16),transparent 28%),
    radial-gradient(circle at 85% 12%,rgba(215,163,30,.12),transparent 26%),
    linear-gradient(115deg,#061f35 0%,#082f50 52%,#08243b 100%);
}
.company-story-visual::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.12;
  background-image:repeating-linear-gradient(135deg,transparent 0 18px,rgba(255,255,255,.055) 18px 19px);
}
.company-story-visual > .shell{
  position:relative;
  z-index:2;
}
.company-story-head{
  max-width:860px;
  margin:0 auto 20px;
}
.company-story-head h2{
  margin:3px 0 8px;
  color:#fff;
  font-size:31px;
  line-height:1.08;
  letter-spacing:-.025em;
}
.company-story-head > p:not(.eyebrow){
  max-width:700px;
  margin:0 auto;
  color:#dce7ef;
  font-size:13px;
  line-height:1.45;
}

.story-bridge{
  display:grid;
  grid-template-columns:1fr 160px 1fr;
  gap:14px;
  align-items:stretch;
}
.story-side{
  position:relative;
  padding:20px 22px 18px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 10px 22px rgba(0,0,0,.14);
}
.story-company{
  background:linear-gradient(145deg,rgba(10,65,105,.82),rgba(7,43,72,.95));
}
.story-floorlayer{
  background:linear-gradient(145deg,rgba(105,75,8,.30),rgba(17,48,72,.96));
}
.story-side-icon{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  margin-bottom:10px;
  border-radius:50%;
  background:#fff;
  color:#0a3a66;
  font-size:21px;
  box-shadow:0 5px 10px rgba(0,0,0,.14);
}


.story-floorlayer .story-side-icon{
  color:#c99008;
}

.story-kicker{
  margin:0 0 4px;
  color:#f1b72b;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
}
.story-side h3{
  margin:0 0 7px;
  color:#fff;
  font-size:22px;
  line-height:1.08;
}
.story-side > p:not(.story-kicker){
  margin:0;
  color:#dce7ef;
  font-size:12px;
  line-height:1.4;
}
.story-scenario{
  margin-top:14px;
  padding:10px 12px;
  border-radius:6px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
}
.story-scenario span{
  display:block;
  margin-bottom:2px;
  color:#f1b72b;
  font-size:8px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.story-scenario strong{
  display:block;
  color:#fff;
  font-size:12px;
}
.story-scenario small{
  display:block;
  margin-top:2px;
  color:#cbd9e3;
  font-size:10px;
  line-height:1.3;
}

.story-connector{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:190px;
}
.connector-orbit{
  position:relative;
  width:140px;
  height:140px;
  display:grid;
  place-items:center;
}
.connector-badge{
  position:relative;
  z-index:4;
  width:90px;
  height:90px;
  display:grid;
  place-items:center;
  align-content:center;
  border-radius:50%;
  border:2px solid #d5a21d;
  background:#06233d;
  box-shadow:0 0 0 8px rgba(255,255,255,.035),0 10px 20px rgba(0,0,0,.25);
}
.connector-badge span{
  color:#fff;
  font-size:8px;
  font-weight:700;
  letter-spacing:.1em;
}
.connector-badge strong{
  color:#f2b92c;
  font-size:14px;
  letter-spacing:.04em;
}
.orbit-ring{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px dashed rgba(242,185,44,.34);
}
.ring-two{
  inset:12px;
  border-color:rgba(0,136,206,.32);
}
.orbit-rotator{
  position:absolute;
  inset:0;
  animation-timing-function:linear;
  animation-iteration-count:infinite;
}
.orbit-tile-path{
  animation-name:orbitClockwise;
  animation-duration:8s;
}
.orbit-person-path{
  inset:9px;
  animation-name:orbitCounterClockwise;
  animation-duration:6.6s;
}
.orbit-node{
  position:absolute;
  left:50%;
  top:-7px;
  transform:translateX(-50%);
  display:grid;
  place-items:center;
  box-shadow:0 4px 12px rgba(0,0,0,.16);
}
.orbit-company{
  width:24px;
  height:24px;
  border-radius:50%;
  background:#fff;
  color:#0a3a66;
  font-size:13px;
  font-weight:900;
}
.orbit-person{
  width:24px;
  height:24px;
  border-radius:50%;
  background:#f2b92c;
  color:#06233d;
  font-size:13px;
  font-weight:900;
}
@keyframes orbitClockwise{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@keyframes orbitCounterClockwise{
  from{transform:rotate(360deg)}
  to{transform:rotate(0deg)}
}

.connector-line{
  position:absolute;
  top:50%;
  width:48px;
  height:2px;
  background:linear-gradient(90deg,transparent,#d5a21d);
}
.left-line{
  right:calc(50% + 44px);
}
.right-line{
  left:calc(50% + 44px);
  transform:scaleX(-1);
}
.connector-caption{
  margin-top:8px;
  color:#cbd9e3;
  font-size:10px;
  font-weight:700;
  text-align:center;
}

.story-result{
  margin-top:14px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border-radius:8px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.1);
}
.story-result > div:first-child{
  display:flex;
  align-items:center;
  gap:10px;
}
.result-icon{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:#d6a41f;
  color:#06233d;
  font-size:17px;
  font-weight:900;
}
.story-result p{
  margin:0;
  color:#dce7ef;
  font-size:12px;
  line-height:1.35;
}
.story-result strong{
  color:#fff;
  font-size:13px;
}
.story-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.story-action{
  min-width:170px;
  min-height:34px;
  display:inline-grid;
  grid-template-columns:18px 1fr 10px;
  align-items:center;
  gap:8px;
  padding:7px 13px;
  border-radius:4px;
  text-decoration:none;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
}
.action-icon{
  display:grid;
  place-items:center;
  font-size:12px;
  line-height:1;
}
.action-label{
  text-align:left;
}
.action-arrow{
  text-align:right;
  font-size:16px;
  line-height:1;
  font-weight:400;
}
.story-action.gold{
  color:#08233c;
  background:linear-gradient(180deg,#f5c13b,#e8aa20);
}
.story-action.outline{
  color:#fff;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(255,255,255,.025);
}

.story-usecases{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-top:14px;
}
.story-usecases article{
  min-height:70px;
  display:grid;
  grid-template-columns:30px 1fr;
  gap:8px;
  align-items:center;
  padding:10px 10px;
  border-radius:7px;
  background:#fff;
  color:#0b3157;
  box-shadow:0 6px 14px rgba(0,0,0,.08);
}
.story-usecases article > span{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff5d7;
  color:#c68d06;
  font-size:15px;
  font-weight:800;
}
.story-usecases strong{
  display:block;
  color:#0b3157;
  font-size:12px;
  line-height:1.12;
}
.story-usecases small{
  display:block;
  margin-top:2px;
  color:#5a6f80;
  font-size:9px;
  line-height:1.25;
}

@media(max-width:960px){
  .story-bridge{
    grid-template-columns:1fr;
  }
  .story-connector{
    min-height:140px;
  }
  .connector-line{
    display:none;
  }
  .story-usecases{
    grid-template-columns:repeat(2,1fr);
  }
  .story-result{
    align-items:flex-start;
    flex-direction:column;
  }
}

@media(max-width:560px){
  .company-story-visual{
    padding:34px 0 30px;
  }
  .company-story-head h2{
    font-size:28px;
  }
  .story-side{
    padding:18px 16px 16px;
  }
  .story-side h3{
    font-size:22px;
  }
  .story-usecases{
    grid-template-columns:1fr;
  }
  .story-actions{
    width:100%;
  }
  .story-action{
    min-width:100%;
    flex:1 1 100%;
  }
}

/* === ROLE ICON SYSTEM LOCK 2026-09-15 === */
:root{
  --role-floorlayer:#61c7ff;
  --role-floorlayer-deep:#0b3157;
  --role-company:#f2b92c;
  --role-company-deep:#6f4a00;
}

/* one consistent icon language across the page */
.role-icon{
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
.role-icon .role-glyph{
  display:grid;
  place-items:center;
  line-height:1;
  transform:translateY(-1px);
}

/* floorlayer = light blue */
.role-icon-floorlayer{
  background:var(--role-floorlayer) !important;
  color:var(--role-floorlayer-deep) !important;
  border-color:rgba(255,255,255,.55) !important;
}

/* company = gold */
.role-icon-company{
  background:var(--role-company) !important;
  color:var(--role-company-deep) !important;
  border-color:rgba(255,255,255,.45) !important;
}

/* hero choice icons */
.hero-pill-icon.role-icon{
  width:40px;
  height:40px;
  border-radius:50%;
  overflow:hidden;
}
.hero-pill-icon.role-icon img{
  width:24px;
  height:24px;
  object-fit:contain;
  filter:none;
}
.hero-pill-icon.role-icon-floorlayer img{
  filter:brightness(0) saturate(100%) invert(17%) sepia(33%) saturate(1408%) hue-rotate(169deg) brightness(92%) contrast(96%);
}
.hero-pill-icon.role-icon-company img{
  filter:brightness(0) saturate(100%) invert(29%) sepia(34%) saturate(1169%) hue-rotate(5deg) brightness(91%) contrast(102%);
}

/* How It Works */
.how-panel-icon.role-icon{
  width:54px;
  height:54px;
  border-radius:12px;
  font-size:25px;
  box-shadow:0 5px 12px rgba(7,37,63,.08);
}

/* Company story cards */
.story-side-icon.role-icon{
  width:40px;
  height:40px;
  border-radius:50%;
  margin-bottom:10px;
  font-size:18px;
  box-shadow:0 5px 10px rgba(0,0,0,.14);
}

/* orbit icons */
.orbit-node.role-icon{
  width:24px;
  height:24px;
  border-radius:50%;
  font-size:12px;
  box-shadow:0 4px 12px rgba(0,0,0,.16);
}

/* action pills */
.action-icon.role-icon{
  width:20px;
  height:20px;
  border-radius:50%;
  font-size:10px;
  box-shadow:none;
}

/* ensure role colours still read clearly inside opposite-colour pills */
.story-action.gold .action-icon.role-icon-company{
  background:#fff !important;
  color:var(--role-company-deep) !important;
}
.story-action.outline .action-icon.role-icon-floorlayer{
  background:var(--role-floorlayer) !important;
  color:var(--role-floorlayer-deep) !important;
}

/* subtle role accents in the story cards */
.story-company{
  border-top:2px solid var(--role-company);
}
.story-floorlayer{
  border-top:2px solid var(--role-floorlayer);
}

/* === ROLE ICON BUTTON FIX 2026-09-15 === */
:root{
  --role-floorlayer:#6fd0ff;
  --role-floorlayer-ink:#073150;
  --role-company:#f2b92c;
  --role-company-ink:#604000;
}
.role-svg{
  width:62%;
  height:62%;
  display:block;
  overflow:visible;
}
.role-icon-floorlayer{
  background:var(--role-floorlayer) !important;
  color:var(--role-floorlayer-ink) !important;
}
.role-icon-company{
  background:var(--role-company) !important;
  color:var(--role-company-ink) !important;
}

/* HERO: equal pills and real role icons, no legacy PNGs */
.hero-pills{
  grid-template-columns:1fr 1fr !important;
}
.hero-pill-icon.role-icon{
  width:40px;
  height:40px;
  border-radius:50%;
  overflow:visible;
  display:grid;
  place-items:center;
}
.hero-pill-icon.role-icon img{display:none !important;}
.hero-pill-floorlayer .hero-pill-icon{
  background:var(--role-floorlayer) !important;
  color:var(--role-floorlayer-ink) !important;
}
.hero-pill-company .hero-pill-icon{
  background:#fff !important;
  color:#a87300 !important;
}

/* FINAL CTA: same-width pills with matching role icons */
.join-buttons-compact{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,220px));
  justify-content:center;
  gap:14px;
}
.join-buttons-compact a.compact{
  width:220px;
  min-width:220px;
  min-height:46px;
  display:grid !important;
  grid-template-columns:30px 1fr 14px;
  align-items:center;
  justify-content:stretch;
  gap:10px;
  padding:7px 13px;
  text-align:left;
}
.join-role-icon{
  width:28px;
  height:28px;
  border-radius:50%;
  display:grid;
  place-items:center;
}
.join-floorlayer .join-role-icon{
  background:var(--role-floorlayer) !important;
  color:var(--role-floorlayer-ink) !important;
}
.join-company .join-role-icon{
  background:#fff !important;
  color:#a87300 !important;
}
.join-role-label{
  display:block;
  text-align:left;
  line-height:1.15;
}
.join-buttons-compact b{
  justify-self:end;
}

/* Story and How It Works use the same two SVGs and colours */
.story-side-icon.role-icon,
.how-panel-icon.role-icon,
.orbit-node.role-icon,
.action-icon.role-icon{
  overflow:hidden;
}
.story-side-icon.role-icon-company,
.how-panel-icon.role-icon-company,
.orbit-node.role-icon-company,
.action-icon.role-icon-company{
  background:var(--role-company) !important;
  color:var(--role-company-ink) !important;
}
.story-side-icon.role-icon-floorlayer,
.how-panel-icon.role-icon-floorlayer,
.orbit-node.role-icon-floorlayer,
.action-icon.role-icon-floorlayer{
  background:var(--role-floorlayer) !important;
  color:var(--role-floorlayer-ink) !important;
}

@media(max-width:560px){
  .hero-pills{grid-template-columns:1fr !important;}
  .join-buttons-compact{grid-template-columns:1fr !important;}
  .join-buttons-compact a.compact{
    width:100%;
    min-width:0;
  }
}

/* === PREFERRED ROLE GLYPHS LOCK 2026-09-15 === */
/* Restore the earlier person + shop icon style while keeping the unified colour system. */
.role-glyph{
  display:grid;
  place-items:center;
  line-height:1;
  font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;
}

.hero-pill-icon .role-glyph{
  font-size:18px;
}
.story-side-icon .role-glyph{
  font-size:18px;
}
.how-panel-icon .role-glyph{
  font-size:24px;
}
.orbit-node .role-glyph{
  font-size:12px;
}
.action-icon .role-glyph{
  font-size:10px;
}
.join-role-icon .role-glyph{
  font-size:13px;
}

/* Keep the intended role colours */
.role-icon-floorlayer{
  background:#61c7ff !important;
  color:#0b3157 !important;
}
.role-icon-company{
  background:#f2b92c !important;
  color:#6f4a00 !important;
}

/* Bottom gold company button gets a white icon disc for contrast */
.join-company .join-role-icon.role-icon-company{
  background:#fff !important;
  color:#9a6900 !important;
}

/* === JOIN REFERENCE MATCH LOCK 2026-09-15 === */
.join-reference{
  position:relative;
  overflow:hidden;
  padding:0;
  min-height:520px;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(5,35,58,.78) 0%,rgba(5,35,58,.70) 36%,rgba(5,35,58,.45) 60%,rgba(5,35,58,.32) 100%),
    url("assets/join-reference-bg.png") center center / cover no-repeat;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:4px solid rgba(17,102,177,.35);
}
.join-reference::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(5,27,46,.18),rgba(5,27,46,.24)),
    repeating-linear-gradient(135deg,transparent 0 34px,rgba(255,255,255,.02) 34px 35px);
  pointer-events:none;
}
.join-reference-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.55fr .65fr;
  gap:30px;
  align-items:center;
  min-height:520px;
  padding:44px 64px 48px;
}
.join-reference-main{
  max-width:1020px;
}
.join-reference-kicker{
  margin:0 0 14px;
  color:#e4ae28;
  font-size:16px;
  font-weight:800;
  letter-spacing:.28em;
}
.join-reference-main h2{
  margin:0 0 16px;
  color:#fff;
  font-size:78px;
  line-height:1.03;
  letter-spacing:-.035em;
  text-shadow:0 3px 12px rgba(0,0,0,.28);
}
.join-reference-main > p:not(.join-reference-kicker){
  max-width:860px;
  margin:0 0 40px;
  color:#edf2f6;
  font-size:22px;
  line-height:1.42;
  text-shadow:0 2px 10px rgba(0,0,0,.32);
}
.join-reference-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:34px;
  max-width:1380px;
}
.join-reference-card{
  min-height:160px;
  display:grid;
  grid-template-columns:86px 1fr 28px;
  align-items:center;
  gap:24px;
  padding:28px 34px;
  border-radius:14px;
  text-decoration:none;
  box-shadow:0 12px 26px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.05);
}
.join-reference-company{
  background:#f0b632;
  color:#0a2f56;
}
.join-reference-floorlayer{
  background:rgba(7,39,67,.88);
  color:#fff;
  border:3px solid rgba(255,255,255,.42);
}
.join-reference-icon{
  width:70px;
  height:70px;
  display:grid;
  place-items:center;
  border-radius:50%;
  box-shadow:0 8px 18px rgba(0,0,0,.18);
}
.join-reference-company .join-reference-icon.role-icon-company{
  background:rgba(255,255,255,.24) !important;
  color:#0a2f56 !important;
}
.join-reference-floorlayer .join-reference-icon.role-icon-floorlayer{
  background:#ffffff !important;
  color:#0b3157 !important;
}
.join-reference-icon .role-glyph{
  font-size:34px;
}
.join-reference-copy strong{
  display:block;
  margin-bottom:8px;
  font-size:30px;
  line-height:1.04;
  letter-spacing:.01em;
}
.join-reference-copy small{
  display:block;
  font-size:21px;
  line-height:1.3;
  opacity:.95;
}
.join-reference-card b{
  font-size:44px;
  line-height:1;
  font-weight:400;
}
.join-reference-side{
  position:relative;
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
.join-reference-side::before{
  content:"";
  position:absolute;
  inset:0 0 0 40px;
  background:linear-gradient(90deg,rgba(6,28,47,0) 0%,rgba(6,28,47,.18) 18%,rgba(6,28,47,.22) 100%);
}
.join-reference-map{
  position:absolute;
  right:0;
  top:2px;
  width:250px;
  height:360px;
  background:url("assets/uk-map.svg") center/contain no-repeat;
  opacity:.26;
  filter:drop-shadow(0 10px 24px rgba(0,0,0,.12));
}
.join-reference-benefits{
  position:relative;
  z-index:2;
  list-style:none;
  margin:0;
  padding:0;
  width:100%;
  max-width:340px;
  display:grid;
  gap:34px;
}
.join-reference-benefits li{
  position:relative;
  padding-left:64px;
  color:#fff;
  font-size:24px;
  font-weight:700;
  line-height:1.16;
  text-shadow:0 2px 8px rgba(0,0,0,.25);
}
.join-reference-benefits li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:40px;
  height:40px;
  border:4px solid #e4ae28;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#e4ae28;
  font-size:22px;
  font-weight:900;
  box-sizing:border-box;
}
@media(max-width:1450px){
  .join-reference-grid{padding:40px 40px 44px;}
  .join-reference-main h2{font-size:64px;}
  .join-reference-main > p:not(.join-reference-kicker){font-size:19px;max-width:720px;}
  .join-reference-card{min-height:138px;padding:24px 26px;gap:20px;}
  .join-reference-copy strong{font-size:26px;}
  .join-reference-copy small{font-size:18px;}
  .join-reference-benefits li{font-size:21px;padding-left:56px;}
  .join-reference-map{width:230px;height:330px;}
}
@media(max-width:1100px){
  .join-reference{min-height:auto;}
  .join-reference-grid{grid-template-columns:1fr;min-height:auto;gap:24px;padding:34px 26px 36px;}
  .join-reference-main h2{font-size:50px;}
  .join-reference-main > p:not(.join-reference-kicker){font-size:17px;margin-bottom:24px;}
  .join-reference-buttons{grid-template-columns:1fr;gap:18px;max-width:none;}
  .join-reference-card{min-height:116px;}
  .join-reference-side{min-height:280px;justify-content:flex-start;}
  .join-reference-side::before{inset:0;}
  .join-reference-map{right:auto;left:0;top:4px;width:180px;height:260px;}
  .join-reference-benefits{max-width:340px;margin-left:150px;gap:20px;}
  .join-reference-benefits li{font-size:18px;}
}
@media(max-width:640px){
  .join-reference-grid{padding:28px 18px 28px;}
  .join-reference-kicker{font-size:11px;letter-spacing:.2em;}
  .join-reference-main h2{font-size:36px;}
  .join-reference-main > p:not(.join-reference-kicker){font-size:14px;line-height:1.42;}
  .join-reference-card{grid-template-columns:48px 1fr 14px;gap:14px;min-height:94px;padding:18px 16px;border-radius:10px;}
  .join-reference-icon{width:42px;height:42px;}
  .join-reference-icon .role-glyph{font-size:20px;}
  .join-reference-copy strong{font-size:18px;margin-bottom:4px;}
  .join-reference-copy small{font-size:13px;}
  .join-reference-card b{font-size:28px;}
  .join-reference-side{min-height:205px;display:block;padding-top:4px;}
  .join-reference-map{position:relative;left:auto;top:auto;width:140px;height:200px;margin:0 0 10px auto;opacity:.24;}
  .join-reference-benefits{max-width:none;margin-left:0;gap:14px;}
  .join-reference-benefits li{font-size:15px;padding-left:40px;}
  .join-reference-benefits li::before{width:28px;height:28px;font-size:16px;border-width:3px;}
}

/* === FINAL JOIN BANNER LOCK 2026-09-15 === */
.join-final{
  position:relative;
  background:#05233d;
  overflow:hidden;
  padding:14px 0 10px;
}
.join-final-wrap{
  position:relative;
  width:min(92%, 1620px);
  max-width:1620px;
  margin:0 auto;
}

/* CLEAN HERO: keep the artwork free of baked-in controls and layer the two
   registration choices over it as crisp, accessible HTML links. */
.hero-frame .hero-pills{
  bottom:0;
  width:min(900px,calc(100% - 40px));
}

@media(max-width:850px){
  .hero-frame .hero-pills{bottom:0;}
}

@media(max-width:560px){
  .hero-frame .hero-pills{
    position:relative;
    left:auto;
    bottom:auto;
    transform:none;
    width:calc(100% - 28px);
    margin:-8px auto 14px;
  }
}
.join-final-art{
  display:block;
  width:100%;
  height:auto;
}
.join-hotspot{
  position:absolute;
  display:block;
  z-index:3;
  border-radius:12px;
  text-decoration:none;
  cursor:pointer;
}
.join-hotspot-company{
  left:5.05%;
  top:53.0%;
  width:29.75%;
  height:22.2%;
}
.join-hotspot-floorlayer{
  left:36.5%;
  top:53.0%;
  width:27.8%;
  height:22.2%;
}
.join-hotspot:focus-visible{
  outline:3px solid #fff;
  outline-offset:4px;
}
.join-hotspot:hover{
  box-shadow:0 0 0 3px rgba(255,255,255,.35) inset;
}
@media(max-width:700px){
  .join-final{
    padding:10px 0 8px;
  }
  .join-final-wrap{
    min-width:700px;
    width:700px;
    left:50%;
    transform:translateX(-50%);
  }
}

/* === RESTORED APPROVED JOIN BANNER 2026-09-16 === */
.join-final{
  position:relative;
  background:#05233d;
  overflow:hidden;
  padding:14px 0 10px;
  border-top:0;
  border-bottom:0;
}
.join-final::before,
.join-final::after{
  display:none;
  content:none;
}
.join-final-wrap{
  position:relative;
  width:min(92%,1620px);
  max-width:1620px;
  margin:0 auto;
}
.join-final-art{
  display:block;
  width:100%;
  height:auto;
}

/* === WHY SECTION FINAL OVERRIDE 2026-09-15 === */
.why{
  position:relative !important;
  overflow:hidden !important;
  padding:52px 0 58px !important;
  background:#052642 !important;
  color:#fff !important;
}
.why::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(5,35,58,.93) 0%,rgba(5,35,58,.84) 38%,rgba(5,35,58,.50) 67%,rgba(5,35,58,.80) 100%),
    repeating-linear-gradient(135deg,transparent 0 32px,rgba(255,255,255,.025) 32px 33px) !important;
}
.why::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  right:-110px !important;
  top:-95px !important;
  width:520px !important;
  height:520px !important;
  border:1px solid rgba(243,182,41,.22) !important;
  transform:rotate(35deg) !important;
  pointer-events:none !important;
  z-index:1 !important;
}
.why-photo{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background-image:url('assets/why-section-bg.jpg') !important;
  background-size:cover !important;
  background-position:center right !important;
  background-repeat:no-repeat !important;
  opacity:.68 !important;
}
.why .shell{
  position:relative !important;
  z-index:2 !important;
}
.why-heading-clean{
  text-align:left !important;
  max-width:760px !important;
  margin:0 0 34px !important;
}
.why-heading-clean .eyebrow{
  color:#f0b62c !important;
  margin-bottom:11px !important;
}
.why-heading-clean h2{
  margin:0 0 12px !important;
  color:#fff !important;
  font-size:56px !important;
  line-height:1.04 !important;
  letter-spacing:-.03em !important;
  text-align:left !important;
}
.why-heading-clean .section-intro{
  margin:0 !important;
  max-width:720px !important;
  color:#e5edf4 !important;
  font-size:17px !important;
  line-height:1.48 !important;
  text-align:left !important;
}
.why-slogan{
  display:block !important;
  position:absolute !important;
  right:24px !important;
  top:-2px !important;
  width:150px !important;
  height:auto !important;
  opacity:1 !important;
  object-fit:contain !important;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.30)) !important;
}
.why .benefit-grid-clean{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:20px !important;
  margin-top:12px !important;
}
.why .benefit-card-clean{
  min-height:218px !important;
  padding:25px 22px 22px !important;
  border-radius:7px !important;
  background:#fff !important;
  color:#0b3157 !important;
  border:1px solid rgba(221,229,234,.95) !important;
  box-shadow:0 12px 26px rgba(0,0,0,.15) !important;
}
.why .benefit-card-clean h3{
  color:#082f58 !important;
}
.why .benefit-card-clean p{
  color:#4f6779 !important;
}
@media(max-width:1000px){
  .why-heading-clean h2{font-size:46px !important;}
  .why-heading-clean .section-intro{font-size:16px !important;}
  .why-slogan{
    position:relative !important;
    right:auto !important;
    top:auto !important;
    width:135px !important;
    margin:6px 0 18px auto !important;
  }
  .why .benefit-grid-clean{grid-template-columns:repeat(2,1fr) !important;}
}
@media(max-width:560px){
  .why{padding:42px 0 44px !important;}
  .why-heading-clean h2{font-size:37px !important;}
  .why-heading-clean .section-intro{font-size:15px !important;}
  .why .benefit-grid-clean{grid-template-columns:1fr !important;gap:15px !important;}
}

/* === LANDING PAGE TYPOGRAPHY + ROLE TIDY 2026-09-16 === */
:root{
  --type-section-title:42px;
  --type-section-intro:16px;
  --type-eyebrow:11px;
  --type-card-title:17px;
  --type-card-copy:13px;
}

/* A consistent hierarchy across every main landing-page section. */
.section-heading h2,
.how .section-heading h2,
.why-heading-clean h2,
.work .section-heading h2,
.advice-heading-clean h2,
.join-final-main h2{
  font-size:var(--type-section-title) !important;
  line-height:1.08 !important;
  letter-spacing:-.03em !important;
}
.section-heading,
.how .section-heading.center{
  margin-bottom:30px;
}
.eyebrow,
.why-heading-clean .eyebrow,
.join-final .eyebrow{
  font-size:var(--type-eyebrow) !important;
  line-height:1.3 !important;
  letter-spacing:.22em !important;
}
.section-intro,
.why-heading-clean .section-intro,
.advice-heading-clean .section-intro{
  font-size:var(--type-section-intro) !important;
  line-height:1.5 !important;
}
.company-story-head h2{
  font-size:34px;
  line-height:1.1;
}
.company-story-head > p:not(.eyebrow){
  font-size:14px;
  line-height:1.5;
}
.how-panel-head h3{font-size:20px;}
.how-panel-head p{font-size:14px;}
.how-list strong{font-size:15px;}
.how-list p{font-size:13px;}
.why .benefit-card-clean h3,
.work-card-copy h3,
.advice-card-copy h3{
  font-size:var(--type-card-title) !important;
  line-height:1.2 !important;
}
.why .benefit-card-clean p,
.work-card-copy p,
.advice-card-copy p{
  font-size:var(--type-card-copy) !important;
  line-height:1.45 !important;
}

/* The approved company and floorlayer symbols are now identical everywhere. */
.role-icon{
  position:relative;
  border-radius:50% !important;
  overflow:hidden !important;
}
.role-icon .role-glyph{
  display:none !important;
}
.role-icon::before{
  content:"";
  display:block;
  width:100%;
  height:100%;
  border-radius:50%;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}
.role-icon-company::before{
  /* Embedded so the approved icon cannot disappear because of an SVG path/MIME issue on the live host. */
  background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NCA2NCIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsbGVkYnk9InRpdGxlIj4KICA8dGl0bGUgaWQ9InRpdGxlIj5GbG9vcmluZyBjb21wYW55PC90aXRsZT4KICA8ZGVmcz4KICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iYnVpbGRpbmciIHgxPSIxNiIgeTE9IjE4IiB4Mj0iNDkiIHkyPSI0OSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgogICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjNThjOGU4Ii8+CiAgICAgIDxzdG9wIG9mZnNldD0iMC41IiBzdG9wLWNvbG9yPSIjM2Q3OWI4Ii8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzY4NDE4ZSIvPgogICAgPC9saW5lYXJHcmFkaWVudD4KICA8L2RlZnM+CiAgPGNpcmNsZSBjeD0iMzIiIGN5PSIzMiIgcj0iMzAiIGZpbGw9IiNmZmYiIHN0cm9rZT0iI2Q5ZTJlYSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz4KICA8cGF0aCBkPSJNMTggNDhWMjMuNWMwLTEuMS45LTIgMi0yaDE1LjVjMS4xIDAgMiAuOSAyIDJWMjlINDRjMS4xIDAgMiAuOSAyIDJ2MTdIMTh6IiBmaWxsPSJ1cmwoI2J1aWxkaW5nKSIvPgogIDxwYXRoIGQ9Ik0yMyAyN2g0djVoLTR6bTcgMGg0djVoLTR6bS03IDhoNHY1aC00em03IDBoNHY1aC00em0xMC0xaDN2NWgtM3ptMCA4aDN2NmgtM3oiIGZpbGw9IiNkOWYzZmEiLz4KICA8cGF0aCBkPSJNMjggNDFoNnY3aC02eiIgZmlsbD0iIzM4MmQ2MyIvPgogIDxwYXRoIGQ9Ik0xNSA0OGgzNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjM2EzMjZmIiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPgo=');
}
.role-icon-floorlayer::before{
  /* Embedded so every floorlayer icon renders from this one stylesheet. */
  background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NCA2NCIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsbGVkYnk9InRpdGxlIj4KICA8dGl0bGUgaWQ9InRpdGxlIj5GbG9vcmxheWVyPC90aXRsZT4KICA8Y2lyY2xlIGN4PSIzMiIgY3k9IjMyIiByPSIzMCIgZmlsbD0iIzY5YzlmMiIgc3Ryb2tlPSIjMTY3M2E1IiBzdHJva2Utd2lkdGg9IjEuNSIvPgogIDxjaXJjbGUgY3g9IjMyIiBjeT0iMjQiIHI9IjkiIGZpbGw9IiM2ODQxOGUiLz4KICA8cGF0aCBkPSJNMTYuNSA0OS41YzEuNC05LjEgNy41LTE0IDE1LjUtMTRzMTQuMSA0LjkgMTUuNSAxNGMuMiAxLjMtLjggMi41LTIuMSAyLjVIMTguNmMtMS4zIDAtMi4zLTEuMi0yLjEtMi41eiIgZmlsbD0iIzY4NDE4ZSIvPgo8L3N2Zz4K');
}

/* Keep the two smaller connection pills equal as well. */
.story-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  min-width:350px;
}
.story-action{
  width:100%;
  min-width:0;
}

/* Compact, responsive final invitation — no flattened text artwork. */
.join-final{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:46px 0 44px;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(4,29,49,.97) 0%,rgba(5,37,63,.93) 48%,rgba(5,37,63,.78) 100%),
    url('assets/company-workspace-showroom.png') center 55% / cover no-repeat;
  border-top:4px solid #0a3d68;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.join-final::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(126deg,transparent 0 59%,rgba(243,182,41,.52) 59.08% 59.22%,transparent 59.3%),
    repeating-linear-gradient(135deg,transparent 0 34px,rgba(255,255,255,.025) 34px 35px);
}
.join-final::after{
  content:"";
  position:absolute;
  z-index:-1;
  right:1.5%;
  top:7%;
  width:310px;
  height:86%;
  pointer-events:none;
  opacity:.18;
  background:url('assets/uk-map.svg') center / contain no-repeat;
}
.join-final-grid{
  position:relative;
  z-index:2;
  min-height:260px;
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(235px,.68fr);
  align-items:center;
  gap:50px;
}
.join-final-main{
  max-width:760px;
}
.join-final .eyebrow{
  margin:0 0 9px;
  color:var(--gold);
}
.join-final-main h2{
  margin:0 0 12px;
  color:#fff;
}
.join-final-intro{
  max-width:690px;
  margin:0 0 24px;
  color:#e3edf4;
  font-size:15px;
  line-height:1.48;
}
.join-final-pills{
  width:100%;
  max-width:708px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.join-role-pill{
  width:100%;
  min-width:0;
  min-height:68px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 14px;
  align-items:center;
  gap:12px;
  padding:10px 14px;
  border-radius:8px;
  text-decoration:none;
  box-shadow:0 10px 22px rgba(0,0,0,.18);
  transition:transform .16s ease,box-shadow .16s ease;
}
.join-role-pill:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 27px rgba(0,0,0,.23);
}
.join-role-company{
  color:#082943;
  background:linear-gradient(180deg,#f7c33d,#eaae20);
  border:1px solid rgba(255,255,255,.2);
}
.join-role-floorlayer{
  color:#fff;
  background:rgba(5,45,78,.96);
  border:1px solid rgba(255,255,255,.55);
}
.join-role-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  background:transparent !important;
  box-shadow:0 4px 10px rgba(0,0,0,.13);
}
.join-role-copy{
  min-width:0;
  display:block;
  text-align:left;
}
.join-role-copy strong{
  display:block;
  font-size:13px;
  line-height:1.12;
  letter-spacing:.01em;
}
.join-role-copy small{
  display:block;
  margin-top:4px;
  font-size:11px;
  line-height:1.2;
  opacity:.9;
}
.join-role-arrow{
  justify-self:end;
  font-size:25px;
  font-weight:400;
  line-height:1;
}
.join-final-benefits{
  position:relative;
  z-index:2;
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:17px;
}
.join-final-benefits li{
  position:relative;
  min-height:30px;
  display:flex;
  align-items:center;
  padding-left:43px;
  color:#fff;
  font-size:15px;
  font-weight:700;
  line-height:1.25;
}
.join-final-benefits li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border:3px solid var(--gold);
  border-radius:50%;
  color:var(--gold);
  font-size:15px;
  font-weight:900;
}

@media(max-width:1000px){
  :root{--type-section-title:38px;}
  .join-final-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
  .join-final-main{max-width:none;}
  .join-final-pills{max-width:708px;}
  .join-final-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:708px;
  }
  .join-final::after{right:-40px;width:250px;opacity:.12;}
}

@media(max-width:700px){
  :root{
    --type-section-title:30px;
    --type-section-intro:14px;
    --type-eyebrow:10px;
  }
  .company-story-head h2{font-size:28px;}
  .join-final{padding:38px 0 36px;}
  .join-final-grid{min-height:0;gap:26px;}
  .join-final-intro{font-size:14px;margin-bottom:20px;}
  .join-final-pills{grid-template-columns:1fr;gap:12px;}
  .join-role-pill{min-height:66px;}
  .join-final-benefits{grid-template-columns:1fr;gap:13px;}
  .story-actions{
    width:100%;
    min-width:0;
    grid-template-columns:1fr;
  }
}

/* Final lock: retain the approved image-based banner after later legacy rules. */
.join-final{
  position:relative;
  background:#05233d;
  overflow:hidden;
  padding:14px 0 10px;
  border-top:0;
  border-bottom:0;
}
.join-final::before,
.join-final::after{
  display:none;
  content:none;
}
.join-final-wrap{
  position:relative;
  width:min(92%,1620px);
  max-width:1620px;
  margin:0 auto;
}
.join-final-art{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:700px){
  .join-final{padding:10px 0 8px;}
  .join-final-wrap{
    min-width:700px;
    width:700px;
    left:50%;
    transform:translateX(-50%);
  }
}

/* === IMAGE-FREE LANDING PAGE REFRESH 2026-09-17 === */
.hero-no-image{
  position:relative;
  isolation:isolate;
  min-height:520px;
  overflow:hidden;
  padding:62px 0 58px;
  color:#fff;
  background:
    radial-gradient(circle at 82% 18%,rgba(29,113,171,.30),transparent 30%),
    radial-gradient(circle at 14% 94%,rgba(243,182,41,.12),transparent 27%),
    linear-gradient(118deg,#031a2d 0%,#062b4b 52%,#07385f 100%);
}
.hero-no-image::before{
  content:"";
  position:absolute;
  z-index:-2;
  right:-160px;
  top:-260px;
  width:670px;
  height:670px;
  border:1px solid rgba(243,182,41,.20);
  border-radius:50%;
  box-shadow:
    0 0 0 70px rgba(243,182,41,.025),
    0 0 0 140px rgba(255,255,255,.018);
}
.hero-no-image::after{
  content:"";
  position:absolute;
  z-index:-2;
  inset:0;
  opacity:.17;
  background:repeating-linear-gradient(135deg,transparent 0 31px,rgba(255,255,255,.055) 31px 32px);
  mask-image:linear-gradient(90deg,transparent 0%,#000 55%,#000 100%);
}
.hero-pattern{
  position:absolute;
  z-index:-1;
  left:0;
  right:0;
  bottom:0;
  height:4px;
  background:linear-gradient(90deg,#f3b629 0 34%,rgba(243,182,41,.12) 34% 100%);
}
.hero-layout{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);
  align-items:center;
  gap:68px;
}
.hero-copy{min-width:0}
.hero-kicker{
  display:flex;
  align-items:center;
  gap:11px;
  margin:0 0 17px;
  color:#d4e0e9;
  font-size:10px;
  font-weight:800;
  letter-spacing:.13em;
}
.hero-kicker span{color:#f3b629}
.hero-kicker i{
  width:28px;
  height:1px;
  background:rgba(255,255,255,.42);
}
.hero-no-image h1{
  max-width:720px;
  margin:0;
  color:#fff;
  font-size:52px;
  font-weight:800;
  line-height:1.055;
  letter-spacing:-.045em;
}
.hero-no-image h1 em{
  display:block;
  color:#f3b629;
  font-style:normal;
}
.hero-lead{
  max-width:680px;
  margin:21px 0 27px;
  color:#dce7ef;
  font-size:17px;
  line-height:1.55;
}
.hero-no-image .hero-pills{
  position:static;
  left:auto;
  bottom:auto;
  transform:none;
  width:100%;
  max-width:720px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.hero-no-image .hero-pill{
  min-height:86px;
  display:grid;
  grid-template-columns:44px 1fr 18px;
  align-items:center;
  gap:12px;
  padding:12px 15px;
  border-radius:9px;
  box-shadow:0 12px 26px rgba(0,0,0,.22);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.hero-no-image .hero-pill:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(0,0,0,.27);
}
.hero-no-image .hero-pill:focus-visible{
  outline:3px solid #fff;
  outline-offset:3px;
}
.hero-no-image .hero-pill-company{
  color:#082742;
  border:1px solid #ffd56b;
  background:linear-gradient(145deg,#ffd057,#efae1e);
}
.hero-no-image .hero-pill-floorlayer{
  color:#fff;
  border:1px solid rgba(255,255,255,.42);
  background:linear-gradient(145deg,#0a426f,#082d4e);
}
.hero-no-image .hero-pill-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  overflow:visible;
  color:#082f54;
  background:rgba(255,255,255,.92);
}
.hero-no-image .hero-pill-icon svg{
  width:25px;
  height:25px;
  display:block;
}
.hero-no-image .hero-pill-copy small{
  display:block;
  margin:0 0 2px;
  color:inherit;
  opacity:.72;
  font-size:8px;
  font-weight:900;
  line-height:1.1;
  letter-spacing:.10em;
}
.hero-no-image .hero-pill-copy strong{
  display:block;
  color:inherit;
  font-size:14px;
  font-weight:900;
  line-height:1.15;
  letter-spacing:0;
  text-transform:none;
}
.hero-no-image .hero-pill-copy b{
  display:block;
  margin-top:3px;
  color:inherit;
  opacity:.82;
  font-size:10px;
  font-weight:600;
  line-height:1.2;
}
.hero-no-image .hero-pill-arrow{
  color:inherit;
  font-size:27px;
  font-weight:300;
}
.hero-uk{
  display:flex;
  align-items:center;
  gap:8px;
  margin:18px 0 0;
  color:#bdccd8;
  font-size:11px;
  font-weight:700;
}
.hero-uk span{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#f3b629;
  box-shadow:0 0 0 4px rgba(243,182,41,.13);
}
.hero-connection{
  position:relative;
  width:100%;
  max-width:430px;
  justify-self:end;
  padding:22px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.045));
  box-shadow:0 24px 50px rgba(0,0,0,.24);
  backdrop-filter:blur(5px);
}
.connection-card{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:14px;
  align-items:center;
  min-height:91px;
  padding:15px 17px;
  border-radius:11px;
  background:#fff;
  color:#082f54;
  box-shadow:0 9px 22px rgba(0,0,0,.15);
}
.connection-company{border-left:4px solid #f3b629}
.connection-floorlayer{border-left:4px solid #1685ca}
.connection-icon{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#0b3d68;
  background:#edf4f9;
}
.connection-company .connection-icon{
  color:#8a6200;
  background:#fff4d5;
}
.connection-icon svg{width:27px;height:27px}
.connection-card small{
  display:block;
  margin-bottom:3px;
  color:#a87806;
  font-size:8px;
  font-weight:900;
  letter-spacing:.12em;
}
.connection-floorlayer small{color:#0a6fae}
.connection-card strong{
  display:block;
  font-size:16px;
  line-height:1.15;
}
.connection-card b{
  display:block;
  margin-top:4px;
  color:#61778a;
  font-size:10px;
  font-weight:700;
}
.connection-path{
  height:76px;
  display:grid;
  grid-template-rows:1fr auto 1fr;
  place-items:center;
}
.connection-path .connection-line{
  position:static;
  width:2px;
  height:100%;
  background:linear-gradient(#f3b629,#3e85b5);
}
.connection-match{
  width:54px;
  height:54px;
  display:grid;
  grid-template-columns:auto auto;
  place-items:center;
  gap:4px;
  padding:5px 7px;
  border:2px solid #f3b629;
  border-radius:50%;
  color:#fff;
  background:#062844;
  box-shadow:0 0 0 6px rgba(243,182,41,.08);
}
.connection-match b{
  color:#f3b629;
  font-size:13px;
}
.connection-match small{
  font-size:6px;
  font-weight:900;
  line-height:1.1;
  letter-spacing:.05em;
}
.connection-result{
  display:grid;
  grid-template-columns:28px 1fr;
  column-gap:9px;
  align-items:center;
  margin-top:15px;
  padding:10px 12px;
  border-radius:8px;
  color:#fff;
  background:rgba(0,0,0,.16);
}
.connection-result>span{
  grid-row:1/3;
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#06233c;
  background:#f3b629;
  font-size:13px;
  font-weight:900;
}
.connection-result strong{font-size:11px;line-height:1.15}
.connection-result small{color:#bdccd8;font-size:9px}

/* Image-free closing call to action */
.join-final.join-final-redesign{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:52px 0;
  color:#fff;
  border:0;
  background:
    radial-gradient(circle at 85% 30%,rgba(29,113,171,.28),transparent 30%),
    linear-gradient(112deg,#041d32 0%,#062d4d 60%,#07375d 100%);
}
.join-final.join-final-redesign::before{
  content:"";
  display:block;
  position:absolute;
  z-index:-1;
  inset:0;
  opacity:.12;
  background:repeating-linear-gradient(135deg,transparent 0 28px,rgba(255,255,255,.06) 28px 29px);
}
.join-final.join-final-redesign::after{
  content:"";
  display:block;
  position:absolute;
  z-index:-1;
  right:-130px;
  bottom:-280px;
  width:540px;
  height:540px;
  border:1px solid rgba(243,182,41,.2);
  border-radius:50%;
}
.join-redesign-grid{
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:68px;
  align-items:center;
}
.join-redesign-copy .eyebrow{
  margin:0 0 9px;
  color:#f3b629;
  font-size:10px;
  letter-spacing:.16em;
}
.join-redesign-copy h2{
  margin:0 0 12px;
  color:#fff;
  font-size:42px;
  line-height:1.06;
  letter-spacing:-.035em;
}
.join-redesign-copy>p:not(.eyebrow){
  max-width:650px;
  margin:0;
  color:#d9e5ed;
  font-size:15px;
  line-height:1.52;
}
.join-points{
  display:flex;
  flex-wrap:wrap;
  gap:12px 22px;
  margin-top:20px;
}
.join-points span{
  display:flex;
  align-items:center;
  gap:7px;
  color:#fff;
  font-size:11px;
  font-weight:800;
}
.join-points i{
  width:19px;
  height:19px;
  display:grid;
  place-items:center;
  border:1px solid #f3b629;
  border-radius:50%;
  color:#f3b629;
  font-size:9px;
  font-style:normal;
}
.join-redesign-actions{display:grid;gap:12px}
.join-choice{
  min-height:77px;
  display:grid;
  grid-template-columns:1fr 22px;
  align-items:center;
  gap:12px;
  padding:13px 17px;
  border-radius:9px;
  text-decoration:none;
  box-shadow:0 10px 22px rgba(0,0,0,.18);
  transition:transform .16s ease,box-shadow .16s ease;
}
.join-choice:hover{transform:translateY(-2px);box-shadow:0 14px 27px rgba(0,0,0,.24)}
.join-choice:focus-visible{outline:3px solid #fff;outline-offset:3px}
.join-choice-company{
  color:#082742;
  background:linear-gradient(145deg,#ffd057,#efae1e);
}
.join-choice-floorlayer{
  color:#fff;
  border:1px solid rgba(255,255,255,.48);
  background:#0a3459;
}
.join-choice small{
  display:block;
  margin-bottom:2px;
  color:inherit;
  opacity:.7;
  font-size:8px;
  font-weight:900;
  letter-spacing:.11em;
}
.join-choice strong{display:block;font-size:15px;line-height:1.15}
.join-choice b{display:block;margin-top:3px;font-size:10px;font-weight:600;opacity:.82}
.join-choice>i{font-size:27px;font-weight:300;font-style:normal}
.contact-line a{color:inherit;text-decoration:none}
.contact-line a:hover{text-decoration:underline}

@media(max-width:1050px){
  .hero-layout{grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr);gap:38px}
  .hero-no-image h1{font-size:45px}
  .hero-lead{font-size:15px}
  .join-redesign-grid{gap:38px}
}

@media(max-width:900px){
  .hero-no-image{min-height:0;padding:54px 0 50px}
  .hero-layout{grid-template-columns:1fr}
  .hero-copy{max-width:760px;margin:0 auto;text-align:center}
  .hero-kicker,.hero-uk{justify-content:center}
  .hero-no-image h1{max-width:760px}
  .hero-lead{margin-left:auto;margin-right:auto}
  .hero-no-image .hero-pills{margin-inline:auto}
  .hero-connection{display:none}
  .join-redesign-grid{grid-template-columns:1fr;gap:28px}
  .join-redesign-copy{text-align:center}
  .join-redesign-copy>p:not(.eyebrow){margin-inline:auto}
  .join-points{justify-content:center}
  .join-redesign-actions{max-width:650px;width:100%;margin-inline:auto;grid-template-columns:1fr 1fr}
}

@media(max-width:620px){
  .hero-no-image{padding:43px 0 42px}
  .hero-kicker{gap:8px;font-size:8px;letter-spacing:.09em}
  .hero-kicker i{width:15px}
  .hero-no-image h1{font-size:36px;line-height:1.08}
  .hero-lead{margin:17px 0 22px;font-size:14px;line-height:1.48}
  .hero-no-image .hero-pills{grid-template-columns:1fr;gap:10px}
  .hero-no-image .hero-pill{min-height:76px}
  .hero-uk{margin-top:15px}
  .join-final.join-final-redesign{padding:42px 0 40px}
  .join-redesign-copy h2{font-size:34px}
  .join-redesign-copy>p:not(.eyebrow){font-size:14px}
  .join-points{display:grid;grid-template-columns:1fr;justify-items:start;width:max-content;max-width:100%;margin:18px auto 0}
  .join-redesign-actions{grid-template-columns:1fr}
}

/* === FINAL JOIN SECTION: CLEAR MAP, NO DIAGONAL GOLD LINE === */
.join-final{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:46px 0 44px;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(4,29,49,.97) 0%,rgba(5,37,63,.93) 48%,rgba(5,37,63,.78) 100%),
    url('assets/company-workspace-showroom.png') center 55% / cover no-repeat;
  border-top:4px solid #0a3d68;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.join-final::before{
  content:"";
  display:block;
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:repeating-linear-gradient(135deg,transparent 0 34px,rgba(255,255,255,.025) 34px 35px);
}
.join-final::after{
  content:"";
  display:block;
  position:absolute;
  z-index:-1;
  right:1%;
  top:4%;
  width:360px;
  height:92%;
  pointer-events:none;
  opacity:.34;
  background:url('assets/uk-map.svg') center / contain no-repeat;
}
@media(max-width:1000px){
  .join-final::after{right:-25px;width:285px;opacity:.24;}
}
@media(max-width:700px){
  .join-final{padding:38px 0 36px;}
  .join-final::after{right:-55px;width:230px;opacity:.18;}
}

/* === FINAL APPROVED IMAGE-BASED JOIN BANNER === */
.join-final{
  position:relative;
  background:#05233d;
  overflow:hidden;
  padding:14px 0 10px;
  border-top:0;
  border-bottom:0;
}
.join-final::before,
.join-final::after{
  display:none;
  content:none;
}
.join-final-wrap{
  position:relative;
  width:min(92%,1620px);
  max-width:1620px;
  margin:0 auto;
}
.join-final-art{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:700px){
  .join-final{padding:10px 0 8px;}
  .join-final-wrap{
    min-width:700px;
    width:700px;
    left:50%;
    transform:translateX(-50%);
  }
}

/* === DASHBOARD, ROLE CHOICES AND PRICING UPDATE V10 === */
.main-nav{gap:25px}

.hero-no-image{
  min-height:540px;
  padding:58px 0 54px;
}
.hero-layout{
  grid-template-columns:minmax(0,1.08fr) minmax(370px,.92fr);
  gap:56px;
}
.hero-summary-list{
  list-style:none;
  max-width:700px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  margin:27px 0 0;
  padding:18px 0 0;
  border-top:1px solid rgba(255,255,255,.17);
}
.hero-summary-list li{
  min-width:0;
  display:grid;
  grid-template-columns:29px 1fr;
  gap:9px;
  align-items:start;
  padding-right:13px;
}
.hero-summary-list li>span{
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border:1px solid rgba(243,182,41,.65);
  border-radius:50%;
  color:#f3b629;
  font-size:10px;
  font-weight:900;
}
.hero-summary-list strong{
  display:block;
  color:#fff;
  font-size:11px;
  line-height:1.25;
}
.hero-summary-list small{
  display:block;
  margin-top:3px;
  color:#aebfcb;
  font-size:9px;
  line-height:1.25;
}

.hero-start-panel,
.hero-member-panel{
  width:100%;
  max-width:450px;
  justify-self:end;
  padding:23px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.055));
  box-shadow:0 24px 48px rgba(0,0,0,.23);
  backdrop-filter:blur(5px);
}
.start-panel-heading{margin-bottom:17px}
.start-panel-heading>span{
  display:block;
  margin-bottom:5px;
  color:#f3b629;
  font-size:9px;
  font-weight:900;
  letter-spacing:.15em;
}
.start-panel-heading h2,
.member-panel-heading h2{
  margin:0;
  color:#fff;
  font-size:25px;
  line-height:1.1;
  letter-spacing:-.025em;
}
.start-panel-heading p,
.member-panel-heading p{
  margin:7px 0 0;
  color:#c9d7e1;
  font-size:11px;
  line-height:1.45;
}
.hero-no-image .hero-start-panel .hero-pills{
  max-width:none;
  display:flex !important;
  flex-direction:column;
  gap:11px;
}
.hero-no-image .hero-start-panel .hero-pill{
  min-height:82px;
  padding:12px 15px;
  border-radius:12px;
}
.hero-no-image .hero-start-panel .hero-pill-company{
  border-color:#ffd773;
  background:linear-gradient(135deg,#ffd461,#efae1f);
}
.hero-no-image .hero-start-panel .hero-pill-floorlayer{
  border-color:#54a9dd;
  background:linear-gradient(135deg,#0c70ae,#084572);
}
.hero-no-image .hero-start-panel .hero-pill-copy small{
  font-size:8px;
  letter-spacing:.12em;
}
.hero-no-image .hero-start-panel .hero-pill-copy strong{font-size:15px}
.hero-no-image .hero-start-panel .hero-pill-copy b{font-size:10px}
.start-panel-signin{
  margin:14px 0 0;
  color:#bdccd8;
  font-size:10px;
  text-align:center;
}
.start-panel-signin a{
  color:#fff;
  font-weight:800;
}

.member-panel-heading{position:relative;padding-right:78px;margin-bottom:17px}
.member-panel-heading>small{
  display:block;
  margin-bottom:5px;
  color:#f3b629;
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
}
.member-live-status{
  position:absolute;
  right:0;
  top:0;
  display:flex;
  align-items:center;
  gap:5px;
  padding:5px 8px;
  border:1px solid rgba(73,211,158,.35);
  border-radius:20px;
  color:#9fe5c9;
  background:rgba(22,116,81,.16);
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
}
.member-live-status i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#49d39e;
  box-shadow:0 0 0 3px rgba(73,211,158,.12);
}
.member-quick-links{display:grid;gap:9px}
.member-quick-links a{
  display:grid;
  grid-template-columns:36px 1fr;
  column-gap:11px;
  align-items:center;
  min-height:62px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:9px;
  color:#fff;
  background:rgba(2,25,43,.32);
  text-decoration:none;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.member-quick-links a:hover{
  transform:translateX(2px);
  border-color:rgba(243,182,41,.48);
  background:rgba(2,25,43,.48);
}
.member-quick-links a>span{
  grid-row:1/3;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#06233c;
  background:#f3b629;
  font-size:15px;
  font-weight:900;
}
.member-quick-links strong{font-size:11px;line-height:1.15}
.member-quick-links small{color:#afc0cd;font-size:9px;line-height:1.2}
.member-dashboard-button{
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:13px;
  padding:10px 14px;
  border-radius:7px;
  color:#082742;
  background:linear-gradient(135deg,#ffd15b,#efae1f);
  text-decoration:none;
  font-size:11px;
  font-weight:900;
}
.member-dashboard-button span{font-size:21px;font-weight:300}
.member-switch-link{
  display:block;
  margin:12px 0 0;
  color:#d4e0e9;
  font-size:9px;
  font-weight:700;
  text-align:center;
}

/* Example dashboard */
.dashboard-showcase{
  position:relative;
  overflow:hidden;
  padding:66px 0 70px;
  background:linear-gradient(180deg,#f4f7f9 0%,#fff 100%);
}
.dashboard-showcase::before{
  content:"";
  position:absolute;
  left:-220px;
  top:-250px;
  width:520px;
  height:520px;
  border:1px solid rgba(8,58,99,.06);
  border-radius:50%;
}
.dashboard-showcase-heading{
  position:relative;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:60px;
  align-items:end;
  margin-bottom:28px;
}
.dashboard-showcase-heading h2{
  margin:3px 0 0;
  color:#0b3157;
  font-size:42px;
  line-height:1.05;
  letter-spacing:-.035em;
}
.dashboard-showcase-heading>p{
  margin:0;
  color:#506b80;
  font-size:14px;
  line-height:1.52;
}
.dashboard-demo-window{
  position:relative;
  overflow:hidden;
  border:1px solid #d7e1e8;
  border-radius:15px;
  background:#fff;
  box-shadow:0 22px 55px rgba(7,37,63,.13);
}
.dashboard-demo-bar{
  min-height:48px;
  display:grid;
  grid-template-columns:100px 1fr 100px;
  align-items:center;
  padding:0 18px;
  color:#fff;
  background:#06233c;
}
.dashboard-demo-bar>strong{font-size:11px;text-align:center}
.dashboard-demo-bar>small{
  justify-self:end;
  padding:4px 7px;
  border-radius:3px;
  color:#f3b629;
  background:rgba(243,182,41,.1);
  font-size:7px;
  font-weight:900;
  letter-spacing:.1em;
}
.dashboard-demo-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  padding:22px;
  background:#eef3f6;
}
.dashboard-demo-panel{
  min-width:0;
  padding:20px;
  border:1px solid #dce5eb;
  border-radius:11px;
  background:#fff;
  box-shadow:0 6px 14px rgba(7,37,63,.055);
}
.dashboard-demo-company{border-top:4px solid #f3b629}
.dashboard-demo-floorlayer{border-top:4px solid #1586c8}
.dashboard-demo-panel>header{
  display:flex;
  align-items:center;
  gap:11px;
  margin-bottom:17px;
}
.demo-role-icon{
  width:39px;
  height:39px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  color:#815c00;
  background:#fff2cb;
  font-size:18px;
  font-weight:900;
}
.dashboard-demo-floorlayer .demo-role-icon{color:#075f96;background:#e6f4fc}
.dashboard-demo-panel header small{
  display:block;
  margin-bottom:2px;
  color:#b27f05;
  font-size:7px;
  font-weight:900;
  letter-spacing:.11em;
}
.dashboard-demo-floorlayer header small{color:#0873b4}
.dashboard-demo-panel h3{
  margin:0;
  color:#0b3157;
  font-size:18px;
  line-height:1.1;
}
.demo-kpi-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-bottom:13px;
}
.demo-kpi-grid.two{grid-template-columns:1fr 1fr}
.demo-kpi-grid>div{
  min-height:69px;
  padding:10px;
  border:1px solid #e1e8ed;
  border-radius:7px;
  background:#f8fafb;
}
.demo-kpi-grid strong{
  display:block;
  color:#0b3157;
  font-size:22px;
  line-height:1;
}
.demo-kpi-grid span{
  display:block;
  margin-top:5px;
  color:#5c7182;
  font-size:8px;
  line-height:1.2;
}
.demo-work-card,
.demo-match-row,
.demo-availability{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:63px;
  padding:11px 12px;
  border-radius:7px;
  background:#082f52;
  color:#fff;
}
.demo-work-card small,
.demo-match-row small,
.demo-availability small{
  display:block;
  margin-bottom:3px;
  color:#f3b629;
  font-size:6px;
  font-weight:900;
  letter-spacing:.1em;
}
.demo-work-card strong,
.demo-match-row strong,
.demo-availability strong{display:block;font-size:10px;line-height:1.2}
.demo-work-card span{display:block;margin-top:3px;color:#bdccd8;font-size:8px}
.demo-work-card>b,
.demo-availability>b{
  padding:4px 7px;
  border-radius:20px;
  color:#06233c;
  background:#f3b629;
  font-size:7px;
}
.demo-availability{margin-bottom:9px;background:#eef7fb;color:#0b3157;border:1px solid #d7eaf5}
.demo-availability>span{position:relative;padding-left:18px}
.demo-availability>span>i{
  position:absolute;
  left:0;
  top:50%;
  width:9px;
  height:9px;
  transform:translateY(-50%);
  border-radius:50%;
  background:#2bc78d;
  box-shadow:0 0 0 4px rgba(43,199,141,.11);
}
.demo-availability small{color:#07805a}
.demo-availability>b{color:#086244;background:#d8f6e9}
.demo-match-row{min-height:51px;background:#0b426e}
.demo-match-row>b{color:#fff;font-size:9px}
.demo-caption{
  margin:12px 0 0;
  color:#5a7183;
  font-size:10px;
  line-height:1.4;
}
.dashboard-demo-note{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  min-height:58px;
  padding:10px 22px;
  color:#dce7ef;
  background:#06233c;
}
.dashboard-demo-note>span{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  color:#06233c;
  background:#f3b629;
  font-size:12px;
  font-weight:900;
}
.dashboard-demo-note p{margin:0;font-size:10px;line-height:1.4}

/* Pricing */
.pricing-section{
  position:relative;
  padding:66px 0 62px;
  overflow:hidden;
  background:#fff;
}
.pricing-section::after{
  content:"";
  position:absolute;
  right:-150px;
  top:-180px;
  width:440px;
  height:440px;
  border:1px solid rgba(243,182,41,.14);
  border-radius:50%;
}
.pricing-heading{position:relative;z-index:1}
.pricing-heading h2{
  margin:4px 0 0;
  color:#0b3157;
  font-size:44px;
  line-height:1.05;
}
.pricing-heading .section-intro{margin-top:10px}
.pricing-grid{
  position:relative;
  z-index:1;
  max-width:950px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin:30px auto 0;
}
.pricing-card{
  position:relative;
  min-height:440px;
  display:flex;
  flex-direction:column;
  padding:28px;
  border:1px solid #dce5eb;
  border-radius:13px;
  background:#fff;
  box-shadow:0 14px 34px rgba(7,37,63,.09);
}
.pricing-floorlayer{border-top:5px solid #1586c8}
.pricing-company{border-top:5px solid #f3b629}
.pricing-highlight{
  position:absolute;
  right:22px;
  top:22px;
  padding:6px 9px;
  border-radius:20px;
  color:#735000;
  background:#fff1c8;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}
.pricing-card-head{
  display:flex;
  align-items:center;
  gap:12px;
}
.pricing-icon{
  width:43px;
  height:43px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#0869a5;
  background:#e9f5fc;
  font-size:19px;
  font-weight:900;
}
.pricing-company .pricing-icon{color:#8b6300;background:#fff2ce}
.pricing-card-head small{
  display:block;
  margin-bottom:3px;
  color:#0780c4;
  font-size:7px;
  font-weight:900;
  letter-spacing:.12em;
}
.pricing-company .pricing-card-head small{color:#aa7800}
.pricing-card h3{
  margin:0;
  color:#0b3157;
  font-size:19px;
  line-height:1.1;
}
.pricing-amount{
  display:flex;
  align-items:baseline;
  gap:10px;
  margin:27px 0 20px;
  padding-bottom:20px;
  border-bottom:1px solid #e4eaee;
}
.pricing-amount strong{
  color:#0b3157;
  font-size:46px;
  line-height:.9;
  letter-spacing:-.04em;
}
.pricing-amount span{color:#536c7e;font-size:11px;font-weight:700}
.pricing-card ul{
  list-style:none;
  display:grid;
  gap:11px;
  margin:0 0 21px;
  padding:0;
}
.pricing-card li{
  position:relative;
  padding-left:23px;
  color:#405d73;
  font-size:12px;
  line-height:1.35;
}
.pricing-card li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:16px;
  height:16px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:#1586c8;
  font-size:8px;
  font-weight:900;
}
.pricing-company li::before{color:#082742;background:#f3b629}
.pricing-after{
  margin:0 0 17px;
  padding:11px 12px;
  border-radius:7px;
  color:#526b7e;
  background:#f6f8fa;
  font-size:9px;
  line-height:1.4;
}
.pricing-card>a{
  min-height:45px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-top:auto;
  padding:10px 14px;
  border-radius:7px;
  color:#fff;
  background:#0a4f7f;
  text-decoration:none;
  font-size:11px;
  font-weight:900;
}
.pricing-company>a{color:#082742;background:linear-gradient(135deg,#ffd15b,#efae1f)}
.pricing-card>a span{font-size:21px;font-weight:300}
.pricing-note{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:21px 0 0;
  color:#476277;
  font-size:11px;
  font-weight:800;
}
.pricing-note span{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:#1586c8;
  font-size:9px;
}

@media(max-width:1100px){
  .main-nav{gap:16px}
  .hero-layout{grid-template-columns:minmax(0,1fr) minmax(350px,.9fr);gap:34px}
  .hero-summary-list strong{font-size:10px}
  .dashboard-showcase-heading{gap:36px}
}

@media(max-width:900px){
  .hero-start-panel,
  .hero-member-panel{max-width:720px;justify-self:center}
  .member-quick-links{grid-template-columns:repeat(3,1fr)}
  .member-quick-links a{grid-template-columns:34px 1fr;align-content:center}
  .dashboard-showcase-heading{grid-template-columns:1fr;gap:10px;text-align:center}
  .dashboard-showcase-heading>p{max-width:700px;margin-inline:auto}
  .dashboard-demo-grid{grid-template-columns:1fr}
  .pricing-grid{max-width:720px}
}

@media(max-width:760px){
  .dashboard-showcase{padding:52px 0 55px}
  .dashboard-showcase-heading h2{font-size:35px}
  .dashboard-demo-grid{padding:14px;gap:14px}
  .dashboard-demo-bar{grid-template-columns:60px 1fr 75px;padding:0 12px}
  .dashboard-demo-bar>strong{font-size:9px}
  .pricing-section{padding:52px 0 50px}
  .pricing-heading h2{font-size:36px}
  .pricing-grid{grid-template-columns:1fr;max-width:520px}
  .pricing-card{min-height:0}
}

@media(max-width:620px){
  .hero-layout{gap:28px}
  .hero-summary-list{display:none}
  .hero-start-panel,
  .hero-member-panel{padding:17px;border-radius:14px}
  .start-panel-heading{text-align:left}
  .start-panel-heading h2,
  .member-panel-heading h2{font-size:22px}
  .hero-no-image .hero-start-panel .hero-pill{min-height:76px}
  .member-quick-links{grid-template-columns:1fr}
  .member-quick-links a{min-height:58px}
  .dashboard-demo-panel{padding:16px}
  .demo-kpi-grid{grid-template-columns:1fr 1fr}
  .demo-kpi-grid>div:last-child:nth-child(3){grid-column:1/-1}
  .dashboard-demo-note{align-items:flex-start}
  .pricing-card{padding:22px 18px}
  .pricing-highlight{position:static;align-self:flex-start;margin:0 0 14px}
  .pricing-amount strong{font-size:40px}
}

/* === PRICING CLARITY AND ADVICE COMING SOON V11 === */
.pricing-floorlayer .pricing-amount strong,
.pricing-company .pricing-amount strong{
  font-size:38px;
  white-space:nowrap;
}
.pricing-note{
  max-width:800px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.advice-coming-soon{
  padding:60px 0 58px;
  background:linear-gradient(180deg,#f7f9fb 0%,#eef3f6 100%);
}
.advice-coming-soon .advice-heading-clean{
  max-width:850px;
  margin-bottom:27px;
}
.advice-coming-soon-card{
  position:relative;
  overflow:hidden;
  max-width:850px;
  min-height:170px;
  display:grid;
  grid-template-columns:76px 1fr;
  gap:22px;
  align-items:center;
  margin:0 auto;
  padding:30px 34px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:13px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 18%,rgba(24,132,198,.25),transparent 32%),
    linear-gradient(115deg,#05233c 0%,#07375d 100%);
  box-shadow:0 16px 36px rgba(7,37,63,.14);
}
.advice-coming-soon-card::after{
  content:"";
  position:absolute;
  right:-75px;
  top:-110px;
  width:290px;
  height:290px;
  border:1px solid rgba(243,182,41,.20);
  border-radius:50%;
  pointer-events:none;
}
.advice-coming-soon-mark{
  width:70px;
  height:70px;
  display:grid;
  place-items:center;
  border:2px solid #f3b629;
  border-radius:50%;
  color:#f3b629;
  background:rgba(243,182,41,.07);
  font-family:Georgia,serif;
  font-size:34px;
  font-weight:700;
  font-style:italic;
}
.advice-coming-soon-card>div:last-child{
  position:relative;
  z-index:1;
}
.advice-coming-soon-card span{
  display:block;
  margin-bottom:5px;
  color:#f3b629;
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
}
.advice-coming-soon-card h3{
  margin:0 0 7px;
  color:#fff;
  font-size:24px;
  line-height:1.1;
  letter-spacing:-.02em;
}
.advice-coming-soon-card p{
  max-width:650px;
  margin:0;
  color:#d8e4ec;
  font-size:13px;
  line-height:1.48;
}

@media(max-width:620px){
  .pricing-floorlayer .pricing-amount strong,
  .pricing-company .pricing-amount strong{font-size:34px}
  .advice-coming-soon{padding:48px 0 46px}
  .advice-coming-soon-card{
    grid-template-columns:1fr;
    gap:15px;
    padding:25px 20px;
    text-align:center;
  }
  .advice-coming-soon-mark{
    width:58px;
    height:58px;
    margin:0 auto;
    font-size:29px;
  }
  .advice-coming-soon-card h3{font-size:21px}
  .advice-coming-soon-card p{font-size:12px}
}

/* === SIGNED-IN COMPANY SUMMARY V12 === */
.hero-layout{
  grid-template-columns:minmax(0,1fr) minmax(470px,.9fr);
  gap:42px;
}
.hero-member-panel{
  max-width:520px;
}
.member-quick-links-company{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.member-quick-links-company a{
  min-height:66px;
}
.member-kpi-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:13px;
}
.member-kpi-grid a{
  position:relative;
  min-width:0;
  min-height:94px;
  display:grid;
  grid-template-columns:29px minmax(0,1fr) 8px;
  grid-template-rows:auto auto auto;
  column-gap:7px;
  align-content:center;
  padding:10px 8px;
  border:1px solid rgba(243,182,41,.35);
  border-radius:9px;
  color:#082b50;
  background:rgba(255,255,255,.96);
  box-shadow:0 7px 16px rgba(0,0,0,.13);
  text-decoration:none;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.member-kpi-grid a:hover{
  transform:translateY(-2px);
  border-color:#f3b629;
  box-shadow:0 10px 20px rgba(0,0,0,.17);
}
.member-kpi-grid a:focus-visible{
  outline:3px solid #f3b629;
  outline-offset:2px;
}
.member-kpi-icon{
  grid-column:1;
  grid-row:1/4;
  width:28px;
  height:38px;
  display:grid;
  place-items:center;
  align-self:center;
  border:1px solid rgba(218,157,12,.45);
  border-radius:8px;
  color:#a87300;
  background:#fffaf0;
  font-size:15px;
  font-weight:900;
}
.member-kpi-grid small{
  grid-column:2;
  grid-row:1;
  min-width:0;
  color:#5a7184;
  font-size:6.5px;
  font-weight:900;
  line-height:1.15;
  letter-spacing:.07em;
}
.member-kpi-grid strong{
  grid-column:2;
  grid-row:2;
  color:#062b4f;
  font-size:26px;
  line-height:1;
  letter-spacing:-.035em;
}
.member-kpi-grid em{
  grid-column:2;
  grid-row:3;
  overflow:hidden;
  color:#657b8d;
  font-size:6.5px;
  font-style:normal;
  font-weight:700;
  line-height:1.15;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.member-kpi-grid i{
  grid-column:3;
  grid-row:1/4;
  align-self:center;
  color:#9badbb;
  font-size:18px;
  font-style:normal;
  font-weight:300;
}

@media(max-width:1100px){
  .hero-layout{
    grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);
    gap:30px;
  }
}

@media(max-width:900px){
  .hero-layout{grid-template-columns:1fr}
  .hero-member-panel{max-width:720px}
  .member-quick-links-company{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:620px){
  .member-quick-links-company{grid-template-columns:1fr}
  .member-kpi-grid{gap:6px}
  .member-kpi-grid a{
    min-height:88px;
    grid-template-columns:1fr 7px;
    padding:9px 7px;
    text-align:left;
  }
  .member-kpi-icon{display:none}
  .member-kpi-grid small,
  .member-kpi-grid strong,
  .member-kpi-grid em{grid-column:1}
  .member-kpi-grid small{font-size:6px;letter-spacing:.04em}
  .member-kpi-grid strong{font-size:24px}
  .member-kpi-grid em{font-size:6px}
  .member-kpi-grid i{grid-column:2}
}

/* === TOP-OF-PAGE AND JOIN-SECTION TIDY V14 === */
.hero-pattern{
  background:linear-gradient(
    90deg,
    #f3b629 0%,
    #f3b629 27%,
    rgba(243,182,41,.82) 29.5%,
    rgba(243,182,41,.34) 32%,
    rgba(243,182,41,0) 34%
  );
}

.join-final.join-final-redesign::after{
  display:none !important;
  content:none !important;
}
.join-final.join-final-redesign .join-redesign-grid{
  position:relative;
  z-index:2;
  padding-right:150px;
}
.join-uk-map{
  position:absolute;
  z-index:0;
  right:-18px;
  top:3%;
  width:370px;
  height:94%;
  color:#6692b8;
  opacity:.34;
  pointer-events:none;
}
.join-uk-map path{
  fill:currentColor;
}
.join-slogan{
  position:absolute;
  z-index:3;
  right:30px;
  top:50%;
  width:122px;
  height:auto;
  display:block;
  transform:translateY(-50%);
  object-fit:contain;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.32));
  pointer-events:none;
}

@media(max-width:1180px){
  .join-final.join-final-redesign .join-redesign-grid{padding-right:120px}
  .join-slogan{right:18px;width:104px}
  .join-uk-map{right:-45px;width:320px;opacity:.28}
}

@media(max-width:900px){
  .join-final.join-final-redesign .join-redesign-grid{padding-right:0}
  .join-slogan{
    position:relative;
    right:auto;
    top:auto;
    width:118px;
    margin:24px auto 0;
    transform:none;
  }
  .join-uk-map{right:-70px;width:285px;opacity:.22}
}

@media(max-width:620px){
  .join-slogan{width:104px;margin-top:20px}
  .join-uk-map{right:-78px;width:235px;opacity:.18}
}

/* === V15 READABILITY, EXAMPLE DASHBOARD AND TRANSPARENT FOOTER LOGO === */
:root{
  --type-section-intro:17px;
  --type-eyebrow:12px;
  --type-card-copy:14px;
}

body{font-size:16px}

/* Hero and signed-in homepage workspace */
.hero-kicker{font-size:11px}
.hero-summary-list strong{font-size:13px}
.hero-summary-list small{font-size:11px}
.start-panel-heading>span,
.member-panel-heading>small{font-size:10px}
.start-panel-heading p,
.member-panel-heading p{font-size:13px}
.hero-no-image .hero-start-panel .hero-pill-copy small{font-size:10px}
.hero-no-image .hero-start-panel .hero-pill-copy strong{font-size:17px}
.hero-no-image .hero-start-panel .hero-pill-copy b{font-size:12px}
.start-panel-signin{font-size:12px}
.member-live-status{font-size:10px}
.member-quick-links strong{font-size:13px}
.member-quick-links small{font-size:11px}
.member-switch-link{font-size:11px}
.member-kpi-grid a{min-height:104px}
.member-kpi-grid small{font-size:9px;line-height:1.25}
.member-kpi-grid em{
  overflow:visible;
  font-size:9px;
  line-height:1.25;
  text-overflow:clip;
  white-space:normal;
}

/* Two problems, one connection */
.company-story-head h2 span{display:block}
.company-story-head > p:not(.eyebrow){font-size:15px}
.story-kicker{font-size:10px}
.story-side > p:not(.story-kicker){font-size:14px}
.story-scenario span{font-size:10px}
.story-scenario strong{font-size:14px}
.story-scenario small{font-size:12px}
.connector-badge span{font-size:9px}
.connector-badge strong{font-size:16px}
.connector-caption{font-size:12px}
.story-result p{font-size:14px}
.story-result strong{font-size:15px}
.story-action{min-height:40px;font-size:12px}
.story-usecases strong{font-size:14px}
.story-usecases small{font-size:12px;line-height:1.35}

/* Clearly-labelled example dashboard */
.dashboard-showcase-heading>p{font-size:16px}
.dashboard-demo-bar{
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
}
.dashboard-demo-bar>strong{
  justify-self:start;
  font-size:14px;
  text-align:left;
}
.dashboard-demo-bar>small{font-size:10px}
.dashboard-demo-panel header small{font-size:10px}
.dashboard-demo-panel h3{font-size:20px}
.demo-kpi-grid>div{min-height:76px}
.demo-kpi-grid strong{font-size:26px}
.demo-kpi-grid span{font-size:11px}
.demo-work-card small,
.demo-match-row small,
.demo-availability small{font-size:9px}
.demo-work-card strong,
.demo-match-row strong,
.demo-availability strong{font-size:13px}
.demo-work-card span{font-size:11px}
.demo-work-card>b,
.demo-availability>b{font-size:9px}
.demo-match-row>b{font-size:11px}
.demo-caption{font-size:13px}
.dashboard-demo-note p{font-size:13px}

/* Main content cards and supporting copy */
.how-panel-head p{font-size:15px}
.how-list strong{font-size:16px}
.how-list p{font-size:14px}
.why .benefit-card-clean h3,
.work-card-copy h3{font-size:18px !important}
.why .benefit-card-clean p,
.work-card-copy p{font-size:14px !important}

/* Pricing and coming-soon information */
.pricing-card{min-height:465px}
.pricing-highlight{font-size:10px}
.pricing-card-head small{font-size:10px}
.pricing-card h3{font-size:21px}
.pricing-amount span{font-size:14px}
.pricing-card li{font-size:14px}
.pricing-after{font-size:12px}
.pricing-card>a{font-size:13px}
.pricing-note{font-size:13px}
.advice-coming-soon-card span{font-size:11px}
.advice-coming-soon-card p{font-size:15px}

/* Final invitation */
.join-redesign-copy .eyebrow{font-size:12px}
.join-redesign-copy>p:not(.eyebrow){font-size:16px}
.join-points span{font-size:13px}
.join-choice small{font-size:10px}
.join-choice strong{font-size:17px}
.join-choice b{font-size:12px}

/* Footer: use the same transparent logo as the header and readable type. */
.footer-brand img{
  width:205px;
  height:54px;
  object-fit:contain;
  object-position:left center;
}
.footer-brand p{font-size:14px;line-height:1.45}
.site-footer h3{font-size:14px}
.site-footer nav{gap:7px}
.site-footer nav a{font-size:13px}
.contact-block p{font-size:13px;overflow-wrap:anywhere}
.uk-proud,
.uk-proud strong{font-size:12px}
.footer-bottom{font-size:12px}

@media(max-width:760px){
  .dashboard-demo-bar{grid-template-columns:minmax(0,1fr) auto}
  .dashboard-demo-bar>strong{font-size:13px}
}

/* === PRE-LAUNCH CONTENT REFINEMENTS V16.1 === */
.why{padding:64px 0 68px !important}
.why-heading-clean{max-width:900px !important;margin-bottom:30px !important}
.why-audience-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.why-audience-card{display:flex;flex-direction:column;min-height:530px;padding:30px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.97);box-shadow:0 16px 34px rgba(0,0,0,.18)}
.why-card-label{margin:0 0 8px;color:#bd7e00;font-size:12px;font-weight:900;letter-spacing:.14em}
.why-audience-card h3{margin:0 0 12px;color:#082f58;font-size:27px;line-height:1.16;letter-spacing:-.02em}
.why-card-intro{margin:0 0 22px;color:#4f6779;font-size:15px;line-height:1.55}
.why-audience-card ul{display:grid;gap:15px;margin:0 0 25px;padding:0;list-style:none}
.why-audience-card li{position:relative;padding-left:34px;color:#183d5d}
.why-audience-card li::before{content:"✓";position:absolute;left:0;top:1px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#f3b629;color:#082b50;font-size:12px;font-weight:900}
.why-audience-card li strong,.why-audience-card li span{display:block}
.why-audience-card li strong{font-size:15px}.why-audience-card li span{margin-top:2px;color:#5a7184;font-size:13px;line-height:1.42}
.why-audience-card>a{margin-top:auto;padding:14px 18px;border-radius:7px;text-decoration:none;text-align:center;font-size:14px;font-weight:900}
.why-company-card>a{background:#f3b629;color:#082b50}.why-floorlayer-card>a{background:#082f58;color:#fff}

.work-grid.work-grid-text{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.work-card-text{position:relative;min-height:235px;padding:25px 22px;border:1px solid #dbe5ec;border-top:4px solid #0a3a67;border-radius:8px;background:#fff;box-shadow:0 8px 22px rgba(7,37,63,.07)}
.work-card-text>span{display:block;margin-bottom:17px;color:#cc8c00;font-size:13px;font-weight:900;letter-spacing:.12em}
.work-card-text h3{margin:0 0 10px;color:#082f58;font-size:19px;line-height:1.2}
.work-card-text p{margin:0;color:#526d84;font-size:14px;line-height:1.55}

.site-footer .footer-top{gap:26px;padding-top:28px;padding-bottom:22px}
.site-footer .footer-brand img{height:46px;width:180px}
.site-footer .footer-brand p{margin-top:8px;margin-bottom:0}
.site-footer nav{gap:5px}
.site-footer h3{margin-bottom:8px}
.site-footer .uk-proud{margin-top:12px}
.site-footer .footer-bottom{min-height:50px}
.footer-contact-link a{display:inline-block;color:#f3b629!important;font-weight:900;text-decoration:none}

@media(max-width:1000px){
  .why-audience-grid{grid-template-columns:1fr}
  .why-audience-card{min-height:0}
  .work-grid.work-grid-text{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .why-audience-card{padding:23px 19px}
  .why-audience-card h3{font-size:23px}
  .work-grid.work-grid-text{grid-template-columns:1fr}
  .work-card-text{min-height:0}
  .site-footer .footer-top{padding-top:24px;padding-bottom:18px}
}

@media(max-width:620px){
  .hero-summary-list{display:none}
  .member-kpi-grid{grid-template-columns:1fr}
  .member-kpi-grid a{min-height:82px}
  .member-kpi-grid small{font-size:10px}
  .member-kpi-grid em{font-size:10px}
  .dashboard-demo-bar{min-height:58px;padding:8px 12px}
  .dashboard-demo-bar>strong{font-size:12px;line-height:1.25}
  .dashboard-demo-bar>small{font-size:9px;white-space:nowrap}
  .demo-kpi-grid span{font-size:10px}
  .dashboard-demo-note p{font-size:12px}
  .pricing-card{min-height:0}
  .footer-brand img{width:195px}
}

/* === LANDING PAGE LIGHT COLOUR SCHEME V17.2 ===
   Visual-only overrides. The header and hero retain the established navy;
   the main landing-page content uses the newer light, spacious palette. */
.company-story.company-story-visual{
  color:#082f58;
  border-top:1px solid #d8a72f;
  border-bottom:1px solid #dbe4ea;
  background:
    radial-gradient(circle at 8% 12%,rgba(21,134,200,.08),transparent 27%),
    radial-gradient(circle at 92% 12%,rgba(243,182,41,.10),transparent 25%),
    linear-gradient(180deg,#f7fafc 0%,#eef3f6 100%);
}
.company-story.company-story-visual::after{
  opacity:.32;
  background-image:repeating-linear-gradient(135deg,transparent 0 28px,rgba(8,47,88,.025) 28px 29px);
}
.company-story-head h2{color:#082f58}
.company-story-head>p:not(.eyebrow){color:#506b80}
.story-side{
  border-color:#d7e2e9;
  background:#fff;
  box-shadow:0 10px 26px rgba(7,37,63,.08);
}
.story-company{border-top:4px solid #f3b629}
.story-floorlayer{border-top:4px solid #1586c8}
.story-side h3{color:#082f58}
.story-side>p:not(.story-kicker){color:#526d84}
.story-scenario{
  border-color:#dde6ec;
  background:#f5f8fa;
}
.story-scenario strong{color:#173b5b}
.story-scenario small{color:#62798b}
.story-connector .connector-line{background:linear-gradient(90deg,rgba(243,182,41,.5),rgba(21,134,200,.45))}
.story-connector .connector-caption{color:#315670}
.story-result{
  border-color:#d7e2e9;
  color:#173b5b;
  background:#fff;
  box-shadow:0 8px 22px rgba(7,37,63,.07);
}
.story-result p,.story-result strong{color:#173b5b}
.story-action.outline{
  border-color:#0a4f7f;
  color:#fff;
  background:#0a4f7f;
}
.story-usecases article{
  border-color:#dbe4ea;
  color:#173b5b;
  background:#fff;
  box-shadow:0 5px 15px rgba(7,37,63,.05);
}
.story-usecases strong{color:#173b5b}
.story-usecases small{color:#60788b}

.dashboard-showcase{background:linear-gradient(180deg,#fff 0%,#f2f6f8 100%)}
.how{background:#fff}

.why{
  color:#082f58 !important;
  border-top:1px solid #dbe4ea !important;
  border-bottom:1px solid #dbe4ea !important;
  background:#eef3f6 !important;
}
.why::before{
  background:
    radial-gradient(circle at 86% 14%,rgba(21,134,200,.09),transparent 27%),
    radial-gradient(circle at 10% 85%,rgba(243,182,41,.10),transparent 25%) !important;
}
.why::after{border-color:rgba(21,91,139,.09) !important}
.why-photo{display:none !important}
.why-heading-clean .eyebrow{color:#bd7e00 !important}
.why-heading-clean h2{color:#082f58 !important}
.why-heading-clean .section-intro{color:#506b80 !important}
.why-audience-card{
  border-color:#d7e2e9;
  box-shadow:0 12px 30px rgba(7,37,63,.09);
}

.pricing-section{background:#fff}
.work{background:#f2f6f8}

.join-final.join-final-redesign{
  color:#082f58;
  border-top:1px solid #d8a72f;
  border-bottom:1px solid #dbe4ea;
  background:
    radial-gradient(circle at 88% 28%,rgba(21,134,200,.10),transparent 28%),
    linear-gradient(115deg,#fff 0%,#eef4f7 100%);
}
.join-final.join-final-redesign::before{
  opacity:.38;
  background:repeating-linear-gradient(135deg,transparent 0 28px,rgba(8,47,88,.025) 28px 29px);
}
.join-redesign-copy h2{color:#082f58}
.join-redesign-copy>p:not(.eyebrow){color:#506b80}
.join-points span{color:#173b5b}
.join-uk-map{color:#9eb9cc;opacity:.25}
.join-slogan{display:none}
.join-choice-floorlayer{
  color:#fff;
  border-color:#0a4f7f;
  background:#0a4f7f;
}

@media(max-width:700px){
  .company-story.company-story-visual{padding-top:34px;padding-bottom:30px}
  .story-usecases article{box-shadow:none}
}
