
/* =========================================================
   NOT OUT LABS — V9.6 CONTENT + VISUAL BALANCE SYSTEM
   Complete compositions. Useful content before filler.
   ========================================================= */

:root{
  --v96-line:#dce8e6;
  --v96-soft:#f4faf8;
  --v96-ink:#082b49;
  --v96-muted:#5f7788;
  --v96-teal:#20c8b6;
  --v96-navy:#071a2f;
}

/* The four campaign "why now" sections have TWO children.
   V9.5 inherited a 3-column desktop override, leaving a literal blank column. */
.ui-unified.nol-final .v72-now-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:32px!important;
  align-items:stretch!important;
}
.ui-unified.nol-final .v72-now-grid>div:first-child,
.ui-unified.nol-final .v72-now-grid>.v72-now-note{
  height:100%;
}
.ui-unified.nol-final .v72-now-grid>div:first-child{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

/* ---------- Meaningful support rails ---------- */
.v96-context-rail{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:22px;
}
.v96-context-item{
  min-width:0;
  padding:12px 13px;
  border:1px solid rgba(8,43,73,.10);
  border-radius:12px;
  background:rgba(255,255,255,.56);
}
.v96-context-item b{
  display:block;
  margin-bottom:4px;
  color:#087d70;
  font-size:10.5px;
  line-height:1.2;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.v96-context-item span{
  display:block;
  color:#536f82;
  font-size:12px;
  line-height:1.45;
}

/* ---------- Human + AI co-operating section ----------
   Replaces three short isolated cards beside one tall OBE card. */
.ui-unified.nol-final .v72-operating{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:20px!important;
  align-items:stretch!important;
}
.v96-coop-panel{
  min-width:0;
  height:100%;
  display:flex;
  flex-direction:column;
  padding:22px;
  border:1px solid var(--v96-line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 38px rgba(8,43,73,.05);
}
.v96-coop-label{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:15px;
  color:#087d70;
  font-size:10.5px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.v96-coop-label i{
  width:8px;height:8px;border-radius:50%;background:var(--v96-teal);
  box-shadow:0 0 0 5px rgba(32,200,182,.10);
}
.v96-coop-pair{
  display:grid;
  grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);
  gap:9px;
  align-items:stretch;
}
.v96-coop-role{
  min-width:0;
  padding:16px;
  border:1px solid var(--v96-line);
  border-radius:14px;
  background:#f9fcfc;
}
.v96-coop-role.human{border-color:rgba(207,176,82,.26);background:rgba(231,208,132,.07)}
.v96-coop-role.ai{border-color:rgba(32,200,182,.24);background:rgba(32,200,182,.055)}
.v96-coop-role .tag{
  display:block;margin-bottom:6px;font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase
}
.v96-coop-role.human .tag{color:#a58428}
.v96-coop-role.ai .tag{color:#087d70}
.v96-coop-role strong{display:block;color:var(--v96-ink);font-size:14px;line-height:1.35}
.v96-coop-role p{margin:6px 0 0;color:var(--v96-muted);font-size:12.5px;line-height:1.5}
.v96-coop-plus{display:grid;place-items:center;position:relative}
.v96-coop-plus:before{
  content:"";position:absolute;left:0;right:0;top:50%;height:1px;
  background:linear-gradient(90deg,rgba(207,176,82,.45),rgba(32,200,182,.75))
}
.v96-coop-plus span{
  position:relative;z-index:1;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;
  color:#087d70;font-size:13px;font-weight:950;background:#fff;border:1px solid rgba(32,200,182,.30);
  box-shadow:0 0 0 5px rgba(32,200,182,.055)
}
.v96-joint-line{
  margin-top:10px;padding:12px 14px;border:1px solid rgba(32,200,182,.18);
  border-radius:12px;background:linear-gradient(100deg,rgba(207,176,82,.045),rgba(32,200,182,.07));
}
.v96-joint-line strong{display:block;color:var(--v96-ink);font-size:13px}
.v96-joint-line span{display:block;margin-top:3px;color:var(--v96-muted);font-size:12px;line-height:1.45}
.v96-system-line{
  margin-top:auto;
  padding:14px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:11px;
  align-items:center;
  border:1px solid rgba(103,148,212,.22);
  border-radius:13px;
  background:rgba(103,148,212,.055);
}
.v96-system-line b{
  width:36px;height:36px;display:grid;place-items:center;border-radius:10px;
  color:#4f7fb7;background:rgba(103,148,212,.09);font-size:9px;letter-spacing:.04em
}
.v96-system-line strong{display:block;color:var(--v96-ink);font-size:13px}
.v96-system-line span{display:block;margin-top:3px;color:var(--v96-muted);font-size:12px;line-height:1.45}

.ui-unified.nol-final .v72-obe{
  height:100%;
  display:flex!important;
  flex-direction:column;
}
.ui-unified.nol-final .v72-obe .v72-obe-steps{margin-top:auto}

/* ---------- Decision proof cards ----------
   Use relevant content to balance the FAQ column. */
.ui-unified.nol-final .v86-decision-grid{
  grid-template-columns:minmax(0,1fr) minmax(360px,1fr)!important;
  gap:24px!important;
  align-items:stretch!important;
}
.ui-unified.nol-final .v86-proof-card{
  height:100%;
  display:flex!important;
  flex-direction:column;
}
.v96-proof-stack{
  display:grid;
  gap:9px;
  margin:18px 0;
}
.v96-proof-fact{
  display:grid;
  grid-template-columns:29px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:11px;
  background:rgba(255,255,255,.035);
}
.v96-proof-fact b{
  width:28px;height:28px;display:grid;place-items:center;border-radius:8px;
  color:#7ee8dc;background:rgba(32,200,182,.10);font-size:9px;letter-spacing:.04em
}
.v96-proof-fact strong{display:block;color:#f2f8fb;font-size:12.5px;line-height:1.35}
.v96-proof-fact span{display:block;margin-top:2px;color:#9ab0bd;font-size:11.5px;line-height:1.45}
.ui-unified.nol-final .v86-proof-card .v86-proof-cta{margin-top:auto}

/* ---------- Non-campaign hero support ----------
   Useful triads fill otherwise visually underweighted copy columns. */
.v96-hero-support{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:22px;
}
.v96-hero-support-item{
  min-width:0;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:11px;
  background:rgba(255,255,255,.035);
}
.v96-hero-support-item b{
  display:block;margin-bottom:3px;color:#7ee8dc;font-size:9.5px;line-height:1.2;
  letter-spacing:.07em;text-transform:uppercase
}
.v96-hero-support-item span{display:block;color:#a9bdc9;font-size:11px;line-height:1.4}

/* Light hero variants */
.page-systems .v96-hero-support-item,
.page-tech .v96-hero-support-item,
.page-sales-commerce .v96-hero-support-item,
.page-ai-solutions .v96-hero-support-item,
.page-ai-workflow-automation .v96-hero-support-item{
  border-color:rgba(255,255,255,.11);
}

/* ---------- Forms: make the quiet side useful, not padded ---------- */
.v96-form-route{
  display:grid;
  gap:8px;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(8,43,73,.10);
}
.v96-form-route>span{
  color:#087d70;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.v96-form-route-row{
  display:grid;
  grid-template-columns:26px minmax(0,1fr);
  gap:9px;
  align-items:center;
}
.v96-form-route-row b{
  width:25px;height:25px;display:grid;place-items:center;border-radius:7px;
  color:#087d70;background:rgba(32,200,182,.09);font-size:9px
}
.v96-form-route-row strong{display:block;color:var(--v96-ink);font-size:12px}
.v96-form-route-row em{display:block;color:var(--v96-muted);font-style:normal;font-size:11px;line-height:1.4}

/* ---------- CONTACT: actual brief becomes the hero visual ---------- */
.ui-unified.nol-final.page-contact .v96-contact-hero{
  padding:70px 0 62px!important;
  background:
    radial-gradient(circle at 92% 10%,rgba(32,200,182,.12),transparent 30%),
    linear-gradient(135deg,#06172c,#0a3043);
  color:#fff;
}
.v96-contact-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,.84fr) minmax(520px,1.16fr);
  gap:46px;
  align-items:stretch;
}
.v96-contact-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:14px 0;
}
.v96-contact-copy .v7-kicker{justify-content:flex-start!important;color:#80e7db!important}
.v96-contact-copy h1{
  max-width:590px!important;
  margin:16px 0 18px!important;
  color:#fff!important;
  font-size:clamp(3rem,4.3vw,4.55rem)!important;
  line-height:.98!important;
  letter-spacing:-.052em!important;
  text-align:left!important;
}
.v96-contact-copy>p{
  max-width:590px!important;
  margin:0!important;
  color:#b7cad6!important;
  font-size:1.02rem;
  line-height:1.7;
  text-align:left!important;
}
.v96-contact-assurance{
  display:grid;
  gap:9px;
  margin-top:22px;
}
.v96-contact-assurance>div{
  display:grid;
  grid-template-columns:9px minmax(0,1fr);
  gap:10px;
  align-items:start;
  color:#c4d4de;
  font-size:12.5px;
  line-height:1.45;
}
.v96-contact-assurance i{
  width:7px;height:7px;margin-top:6px;border-radius:50%;background:#20c8b6;
  box-shadow:0 0 0 4px rgba(32,200,182,.09)
}
.v96-contact-direct{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:23px;
}
.v96-contact-direct a{
  min-width:0;
  padding:12px 13px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:11px;
  background:rgba(255,255,255,.035);
  color:#d9e7ee!important;
  text-decoration:none!important;
}
.v96-contact-direct small{
  display:block;color:#7797a9;font-size:9.5px;font-weight:900;letter-spacing:.07em;text-transform:uppercase
}
.v96-contact-direct strong{display:block;margin-top:4px;color:#f3fbff;font-size:12px;line-height:1.35}

.v96-contact-form-card{
  min-width:0;
  height:100%;
  display:flex;
  flex-direction:column;
  padding:19px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:#fff;
  box-shadow:0 30px 78px rgba(2,13,24,.28);
  color:var(--v96-ink);
}
.v96-contact-form-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:2px 3px 14px;
  border-bottom:1px solid #e5ecef;
}
.v96-contact-form-head span{
  display:block;color:#087d70;font-size:9.5px;font-weight:950;letter-spacing:.08em;text-transform:uppercase
}
.v96-contact-form-head strong{display:block;margin-top:3px;color:var(--v96-ink);font-size:18px}
.v96-contact-form-head em{
  display:flex;align-items:center;gap:7px;color:#087d70;font-style:normal;font-size:9.5px;font-weight:900;white-space:nowrap
}
.v96-contact-form-head em:before{
  content:"";width:7px;height:7px;border-radius:50%;background:#20c8b6;
  box-shadow:0 0 0 4px rgba(32,200,182,.09)
}
.page-contact .v96-contact-form-card .v5-enquiry{
  width:100%!important;
  padding:15px 2px 2px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.page-contact .v96-contact-form-card .v5-form-grid{width:100%}
.page-contact .v96-contact-form-card .v6-form-progress{margin-bottom:14px!important}
.page-contact .v96-contact-form-card .v6-step-label{margin-bottom:14px!important}
.page-contact .v96-contact-form-card .v5-field{margin-bottom:11px!important}
.page-contact .v96-contact-form-card .v5-field input,
.page-contact .v96-contact-form-card .v5-field select,
.page-contact .v96-contact-form-card .v5-field textarea{
  min-height:44px!important;
}
.page-contact .v96-contact-form-card .v6-form-nav{margin-top:13px!important}

.v96-contact-support{
  padding:64px 0 74px;
  background:#f6faf9;
}
.v96-contact-after{
  margin-bottom:24px;
}
.v96-contact-after .v74-after-form{
  margin-top:0!important;
}
.page-contact .v84-direct-panel{margin-top:0!important}

/* ---------- Insights index: match the centred full-width site rhythm ---------- */
.ui-unified.nol-final.page-insights .v6-page-hero>.site-container{
  max-width:900px!important;
  text-align:center;
}
.ui-unified.nol-final.page-insights .v6-page-hero h1,
.ui-unified.nol-final.page-insights .v6-page-hero .lede{
  margin-left:auto!important;margin-right:auto!important;
}

/* ---------- Mobile / tablet ---------- */
@media(max-width:1080px){
  .ui-unified.nol-final .v72-now-grid,
  .ui-unified.nol-final .v72-operating,
  .ui-unified.nol-final .v86-decision-grid,
  .v96-contact-hero-grid{
    grid-template-columns:1fr!important;
  }
  .v96-contact-hero-grid{gap:30px}
  .v96-contact-form-card{max-width:800px;width:100%}
  .v96-contact-copy{max-width:780px}
}
@media(max-width:760px){
  .v96-context-rail,
  .v96-hero-support{grid-template-columns:1fr}
  .v96-coop-pair{grid-template-columns:1fr}
  .v96-coop-plus{min-height:26px}
  .v96-coop-plus:before{left:50%;right:auto;top:0;bottom:0;width:1px;height:auto}
  .v96-contact-direct{grid-template-columns:1fr}
  .ui-unified.nol-final.page-contact .v96-contact-hero{padding:54px 0 46px!important}
  .v96-contact-copy h1{font-size:clamp(2.65rem,13vw,3.7rem)!important}
  .v96-contact-form-card{padding:14px;border-radius:18px}
  .v96-contact-form-head{display:block}
  .v96-contact-form-head em{margin-top:7px}
  .v96-contact-support{padding:48px 0 56px}
}


/* ============================================================
   V9.6.1 — CONTACT HERO FORM COLOR POLISH
   Same operating family as the Not Out Labs canvas,
   calmer because this is a working form.
   ============================================================ */

.ui-unified.nol-final.page-contact .v96-contact-form-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:16px!important;
  border:1px solid rgba(111,224,210,.18)!important;
  background:
    radial-gradient(circle at 100% 0,rgba(32,200,182,.12),transparent 32%),
    linear-gradient(145deg,#071a2f,#0a3142)!important;
  box-shadow:
    0 30px 78px rgba(2,13,24,.31),
    inset 0 1px 0 rgba(255,255,255,.035)!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.55;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:38px 38px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 70%);
}

.ui-unified.nol-final.page-contact .v96-contact-form-head{
  padding:4px 5px 15px!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-head span{
  color:#7fe7da!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-head strong{
  color:#f5fbff!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-head em{
  color:#7fe7da!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-head em:before{
  background:#20c8b6!important;
  box-shadow:
    0 0 0 4px rgba(32,200,182,.11),
    0 0 16px rgba(32,200,182,.12)!important;
}

/* The form itself becomes a bright working surface inside the operating shell. */
.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-enquiry{
  position:relative;
  width:100%!important;
  margin-top:14px!important;
  padding:18px 17px 15px!important;
  border:1px solid rgba(214,230,228,.95)!important;
  border-radius:17px!important;
  background:
    linear-gradient(180deg,#fbfefd 0%,#f4faf8 100%)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 12px 28px rgba(2,13,24,.10)!important;
}

/* Stronger visual hierarchy inside the light working surface. */
.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-step-label{
  padding:12px 13px!important;
  border:1px solid rgba(8,125,112,.10)!important;
  border-radius:11px!important;
  background:rgba(32,200,182,.045)!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-step-label b{
  color:#082b49!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-step-label span{
  color:#637b88!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-field label{
  color:#17364d!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-field input,
.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-field select,
.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-field textarea{
  border-color:#ceddda!important;
  background:#fff!important;
  color:#102f45!important;
  box-shadow:0 1px 0 rgba(255,255,255,.85)!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-field input:focus,
.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-field select:focus,
.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-field textarea:focus{
  border-color:#20b9a6!important;
  box-shadow:0 0 0 3px rgba(32,200,182,.10)!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-help,
.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-note,
.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-muted{
  color:#6a818e!important;
}

/* Progress strip stays teal/navy rather than introducing another palette. */
.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-progress-item{
  color:#6f8591!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-progress-item b{
  border-color:#cbded9!important;
  background:#fff!important;
  color:#648078!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-progress-item.active b,
.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-progress-item.current b{
  border-color:#20c8b6!important;
  background:#20c8b6!important;
  color:#052d2a!important;
  box-shadow:0 0 0 4px rgba(32,200,182,.08)!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-progress-item.active,
.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-progress-item.current{
  color:#087d70!important;
}

/* Navigation buttons use the same Human + AI operating palette. */
.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-next,
.ui-unified.nol-final.page-contact .v96-contact-form-card .v5-submit{
  background:#20c8b6!important;
  color:#052d2a!important;
  border-color:#20c8b6!important;
}

.ui-unified.nol-final.page-contact .v96-contact-form-card .v6-prev{
  background:#fff!important;
  color:#24465a!important;
  border-color:#ccdcd9!important;
}

@media(max-width:760px){
  .ui-unified.nol-final.page-contact .v96-contact-form-card{
    padding:12px!important;
    border-radius:19px!important;
  }

  .ui-unified.nol-final.page-contact .v96-contact-form-card .v5-enquiry{
    margin-top:11px!important;
    padding:15px 13px 12px!important;
    border-radius:14px!important;
  }
}
