:root{
  --teal-deep:#0F4A5F;
  --teal:#1C7C9C;
  --teal-light:#5FA9BE;
  --red:#C1392F;
  --red-dark:#9E2E26;
  --charcoal:#221F1D;
  --navy:#0C2A44;
  --grey-mark:#6E6A64;
  --paper:#FAF7F2;
  --paper-dim:#F1ECE3;
  --grey:#6E6A64;
  --line: rgba(34,31,29,0.12);
  --radius: 2px;
  --display: 'Space Grotesk', sans-serif;
  --body: 'Inter', sans-serif;
  --mono: 'IBM Plex Mono', monospace;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--body);
  color:var(--charcoal);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block;}
a{color:inherit;}
h1,h2,h3,h4{font-family:var(--display); margin:0; letter-spacing:-0.01em;}
p{line-height:1.65; margin:0 0 1em;}
.wrap{max-width:1180px; margin:0 auto; padding:0 28px;}
section{position:relative;}
:focus-visible{outline:3px solid var(--red); outline-offset:3px;}

/* ---------- eyebrow ---------- */
.eyebrow{
  font-family:var(--mono);
  font-size:12.5px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--teal);
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
}
.eyebrow::before{
  content:"";
  width:22px; height:2px;
  background:var(--red);
  display:inline-block;
  flex:0 0 auto;
}
.eyebrow.on-dark{color:var(--teal-light);}

/* ---------- top strip ---------- */
.top-strip{
  background:var(--charcoal);
  color:#C7C2B7;
  font-family:var(--mono);
  font-size:12px;
  letter-spacing:0.03em;
}
.top-strip .wrap{
  display:flex; justify-content:space-between; align-items:center;
  padding:8px 28px; flex-wrap:wrap; gap:6px;
}
.top-strip a{text-decoration:none; color:#C7C2B7;}
.top-strip a:hover{color:#fff;}
.top-strip .tagline{color:var(--teal-light); letter-spacing:0.1em;}

/* ---------- NAV ---------- */
header.site{
  position:sticky; top:0; z-index:100;
  background:rgba(250,247,242,0.95);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.nav{
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 28px;
  max-width:1320px; margin:0 auto;
  gap:20px;
}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none; flex:0 0 auto;}
.brand img{height:46px; width:auto;}
nav.links{display:flex; gap:20px; align-items:center; flex-wrap:wrap;}
nav.links a{
  font-size:12px; font-weight:700; text-transform:uppercase; text-decoration:none; color:var(--charcoal);
  position:relative; padding:6px 0;
  letter-spacing:0.05em;
}
nav.links a::after{
  content:""; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--red);
  transition:width .2s ease;
}
nav.links a:hover::after, nav.links a.active::after{width:100%;}
nav.links a.active{color:var(--red);}
.nav-cta{
  background:var(--red); color:#fff;
  padding:11px 20px; font-size:13px; font-weight:700;
  text-decoration:none; border-radius:var(--radius);
  font-family:var(--body); letter-spacing:0.03em;
  white-space:nowrap;
}
.nav-cta:hover{background:var(--red-dark);}
.burger{display:none; background:none; border:none; cursor:pointer; padding:8px;}
.burger span{display:block; width:22px; height:2px; background:var(--charcoal); margin:5px 0;}

/* ---------- PAGE HERO (sub-pages) ---------- */
.page-hero{
  background:var(--navy);
  color:#fff;
  padding:64px 0 96px;
  position:relative;
  overflow:hidden;
}
.page-hero .wrap{position:relative; z-index:2;}
.page-hero h1{
  font-size:clamp(32px,4.6vw,52px);
  font-weight:600; color:#fff; line-height:1.05; max-width:16ch;
}
.page-hero p{
  color:#D8D3C9; font-size:17px; max-width:56ch; margin-top:18px;
}
.page-hero-cut{
  position:absolute; left:0; right:0; bottom:0; height:70px; z-index:1;
}
.page-hero-cut svg{width:100%; height:100%; display:block;}
.crumb{font-family:var(--mono); font-size:12px; color:var(--teal-light); letter-spacing:0.06em; margin-bottom:18px;}
.crumb a{text-decoration:none; color:var(--teal-light);}
.crumb a:hover{color:#fff;}

/* ---------- diagonal band divider (brand signature) ---------- */
.band{
  height:14px; width:100%;
  background:linear-gradient(100deg, var(--teal-deep) 0 48%, var(--red) 48% 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 40%);
}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:14px 24px; font-weight:700; font-size:12.5px; text-transform:uppercase;
  text-decoration:none; border-radius:var(--radius);
  font-family:var(--body); letter-spacing:0.03em;
  border:1px solid transparent;
  transition:transform .15s ease, background .15s ease, border-color .15s ease;
  cursor:pointer;
}
.btn:hover{transform:translateY(-2px);}
.btn-primary{background:var(--red); color:#fff;}
.btn-primary:hover{background:var(--red-dark);}
.btn-teal{background:var(--teal); color:#fff;}
.btn-teal:hover{background:var(--teal-deep);}
.btn-ghost{border-color:rgba(255,255,255,0.35); color:#fff; background:transparent;}
.btn-ghost:hover{border-color:#fff; background:rgba(255,255,255,0.08);}
.btn-outline{border-color:var(--teal-deep); color:var(--teal-deep); background:transparent;}
.btn-outline:hover{background:var(--teal-deep); color:#fff;}
.btn-block{width:100%; justify-content:center;}
.btn-sm{padding:10px 16px; font-size:12.5px;}

.cta-row{display:flex; gap:14px; flex-wrap:wrap;}

/* ---------- SECTION generic ---------- */
.section{padding:88px 0;}
.section.tight{padding:60px 0;}
.section-head{max-width:660px; margin-bottom:44px;}
.section-head.center{margin-left:auto; margin-right:auto; text-align:center;}
.section-head h2{font-size:clamp(28px,3.4vw,40px); font-weight:600;}
.section-head p{color:var(--grey); font-size:16px; margin-top:14px;}
.on-dark{background:var(--teal-deep); color:#fff;}
.on-dark .grey-text{color:#C9DCE1;}
.on-charcoal{background:var(--charcoal); color:#fff;}
.on-charcoal .grey-text{color:#C7C2B7;}
.on-paper-dim{background:var(--paper-dim);}

/* ---------- icon badges (poster-inspired) ---------- */
.icon-badge{
  width:56px; height:56px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  flex:0 0 56px;
}
.icon-badge svg{width:26px; height:26px;}
.icon-badge.badge-red{background:var(--red);}
.icon-badge.badge-teal{background:var(--teal);}
.icon-badge.badge-charcoal{background:var(--charcoal);}
.icon-badge.badge-grey{background:#8A857C;}

/* ---------- 4 core services (home) ---------- */
.services-grid4{
  display:grid; grid-template-columns:repeat(4,1fr); gap:1px;
  background:var(--line); border:1px solid var(--line);
}
.service-card{
  background:#fff; padding:32px 26px;
  display:flex; flex-direction:column;
}
.service-card .num{font-family:var(--mono); font-size:12.5px; color:var(--red); letter-spacing:0.05em;}
.service-card h3{font-size:18px; margin:16px 0 10px; font-weight:600; line-height:1.25;}
.service-card p{font-size:14px; color:var(--grey); flex:1;}
.service-card .btn{margin-top:16px; align-self:flex-start;}

/* ---------- why choose ---------- */
.why-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:1px;
  background:rgba(255,255,255,0.14); border:1px solid rgba(255,255,255,0.14);
}
.why-grid .cell{
  background:var(--teal-deep); padding:28px 26px;
  display:flex; gap:16px;
}
.why-grid h4{font-size:16px; margin-bottom:8px; font-weight:600;}
.why-grid p{font-size:13.5px; color:#C9DCE1; margin:0;}

/* ---------- pillars strip ---------- */
.pillars3{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border:1px solid var(--line); margin-top:8px;
}
.pillars3 div{
  padding:30px 26px; text-align:center; border-right:1px solid var(--line); background:#fff;
}
.pillars3 div:last-child{border-right:none;}
.pillars3 .t{font-family:var(--display); font-weight:700; font-size:15px; letter-spacing:0.02em; text-transform:uppercase;}

/* ---------- about / split layout ---------- */
.split{
  display:grid; grid-template-columns: 0.95fr 1.05fr; gap:56px; align-items:start;
}
.split.rev{grid-template-columns: 1.05fr 0.95fr;}
.split-photo{position:relative;}
.split-photo img{border-radius:var(--radius); width:100%; height:440px; object-fit:cover;}
.split-photo .tag{
  position:absolute; left:-1px; bottom:-1px;
  background:var(--red); color:#fff; font-family:var(--mono);
  font-size:12px; padding:10px 14px; letter-spacing:0.04em;
}
.copy p{color:#3A3634; font-size:16px;}
.copy p.pull{
  font-family:var(--display); font-size:21px; font-weight:500; color:var(--teal-deep);
  line-height:1.35; border-left:3px solid var(--red); padding-left:18px; margin:26px 0;
}
.check-list{list-style:none; margin:22px 0 0; padding:0; display:grid; gap:12px;}
.check-list li{
  display:flex; gap:12px; align-items:flex-start; font-size:15px; color:#3A3634;
}
.check-list li::before{
  content:"";
  flex:0 0 8px; height:8px; margin-top:6px;
  background:var(--teal); border-radius:1px;
}

/* ---------- service detail blocks (OHS / compliance / SDF / QCTO pages) ---------- */
.detail-block{
  border:1px solid var(--line); background:#fff; margin-bottom:24px;
}
.detail-head{
  display:flex; align-items:center; gap:18px;
  padding:26px 30px; border-bottom:1px solid var(--line);
  background:var(--paper-dim);
}
.detail-head h3{font-size:20px; font-weight:600;}
.detail-head .sub{font-family:var(--mono); font-size:12px; color:var(--teal); letter-spacing:0.04em;}
.detail-body{padding:28px 30px;}
.detail-body p{color:#3A3634; font-size:15px;}
.tick-grid{
  list-style:none; margin:8px 0 0; padding:0;
  display:grid; grid-template-columns:1fr 1fr; gap:10px 24px;
}
.tick-grid li{
  font-size:14.5px; color:#3A3634; display:flex; gap:10px; align-items:flex-start;
  padding:9px 0; border-bottom:1px dashed var(--line);
}
.tick-grid li::before{content:"✓"; color:var(--red); font-weight:700; flex:0 0 auto;}

/* ---------- notice / disclosure box ---------- */
.notice{
  border-left:3px solid var(--teal); background:var(--paper-dim);
  padding:18px 22px; font-size:14px; color:#3A3634; margin:26px 0;
}
.notice strong{color:var(--teal-deep);}

/* ---------- SKILLS / TRAINING PROGRAMMES ---------- */
.skills-shell{
  display:grid; grid-template-columns: 300px 1fr; gap:0;
  border:1px solid var(--line);
  background:#fff;
}
.skills-nav{
  border-right:1px solid var(--line);
  max-height:600px; overflow-y:auto;
}
.skills-nav button{
  display:flex; width:100%; align-items:center; gap:14px;
  text-align:left; padding:16px 20px; background:none; border:none;
  border-bottom:1px solid var(--line); cursor:pointer;
  font-family:var(--body); font-size:14px; color:var(--charcoal);
}
.skills-nav button .idx{
  font-family:var(--mono); font-size:12px; color:var(--grey); flex:0 0 22px;
}
.skills-nav button.active{
  background:var(--paper-dim);
  border-left:3px solid var(--red);
  padding-left:17px;
  font-weight:600;
}
.skills-nav button.active .idx{color:var(--red);}
.skills-nav button:hover{background:var(--paper-dim);}
.skills-panel{padding:36px 40px; min-height:560px;}
.skills-panel h3{font-size:24px; margin-bottom:6px;}
.skills-panel .count{font-family:var(--mono); font-size:12.5px; color:var(--grey); margin-bottom:8px; display:block;}
.skills-panel .desc{color:var(--grey); font-size:14.5px; margin-bottom:22px; max-width:60ch;}
.skills-cols{columns:2; column-gap:32px;}
.skills-cols li{
  font-size:14.5px; color:#3A3634; break-inside:avoid;
  padding:8px 0; border-bottom:1px dashed var(--line);
  list-style:none;
}
.skills-panel ul{margin:0; padding:0;}

/* ---------- founder ---------- */
.lead-grid{
  display:grid; grid-template-columns: 220px 1fr; gap:40px; align-items:center;
  padding:40px; border:1px solid var(--line); background:#fff;
}
.lead-avatar{
  width:180px; height:180px; border-radius:50%;
  background:linear-gradient(135deg, var(--teal), var(--teal-deep));
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-family:var(--display); font-size:52px; font-weight:600;
  flex:0 0 auto;
}
.lead-copy h3{font-size:22px;}
.lead-copy .role{color:var(--red); font-family:var(--mono); font-size:12.5px; margin:6px 0 16px; display:block;}
.lead-copy p{font-size:15px; color:#3A3634;}

/* ---------- contact / quote form ---------- */
.contact-grid{
  display:grid; grid-template-columns:1fr; gap:0;
  border:1px solid rgba(255,255,255,0.15);
}
.contact-info{padding:44px; background:var(--teal-deep);}
.contact-info h2{font-size:26px; color:#fff; margin-bottom:14px;}
.contact-info p{color:#C9DCE1; max-width:52ch;}
.contact-list{list-style:none; margin:26px 0 0; padding:0; display:grid; gap:16px; grid-template-columns:1fr 1fr;}
.contact-list li{display:flex; gap:14px; align-items:flex-start;}
.contact-list .k{
  font-family:var(--mono); font-size:11px; text-transform:uppercase; letter-spacing:0.08em;
  color:var(--teal-light); width:74px; flex:0 0 74px; padding-top:2px;
}
.contact-list a, .contact-list span.v{color:#fff; font-size:14.5px; text-decoration:none;}
.contact-list a:hover{color:var(--teal-light);}

.quote-form{background:var(--charcoal); padding:44px;}
.quote-form h3{color:#fff; font-size:19px; margin-bottom:6px; font-weight:600;}
.quote-form .sub{color:#8B867E; font-size:13.5px; margin-bottom:24px;}
.form-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.field{margin-bottom:16px;}
.field.full{grid-column:1 / -1;}
.field label{display:block; font-size:12px; color:#C7C2B7; margin-bottom:6px; font-family:var(--mono); letter-spacing:0.03em;}
.field input, .field textarea, .field select{
  width:100%; padding:12px 14px; background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.18); border-radius:var(--radius);
  color:#fff; font-family:var(--body); font-size:14px;
}
.field input::placeholder, .field textarea::placeholder{color:#8B867E;}
.field textarea{resize:vertical; min-height:90px;}
.field select option{background:var(--charcoal); color:#fff;}

/* ---------- CTA banner ---------- */
.cta-banner{
  background:var(--red);
  padding:52px 0;
  color:#fff;
}
.cta-banner .wrap{
  display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap;
}
.cta-banner h2{font-size:26px; color:#fff; max-width:32ch;}
.cta-banner .btn-ghost{border-color:rgba(255,255,255,0.55);}

footer{
  background:var(--charcoal); color:#8B867E; padding:44px 0 26px;
  font-size:13px;
}
.foot-grid{
  display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:32px;
  padding-bottom:30px; border-bottom:1px solid rgba(255,255,255,0.1); margin-bottom:22px;
}
.foot-grid img{height:38px; margin-bottom:14px;}
.foot-grid p{color:#8B867E; font-size:13px; max-width:32ch;}
.foot-grid h5{color:#fff; font-family:var(--mono); font-size:11.5px; text-transform:uppercase; letter-spacing:0.08em; margin-bottom:14px;}
.foot-grid ul{list-style:none; margin:0; padding:0; display:grid; gap:9px;}
.foot-grid a{color:#B5B0A7; text-decoration:none; font-size:13.5px;}
.foot-grid a:hover{color:#fff;}
.foot-row{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px;}

@media (max-width: 900px){
  .split, .split.rev{grid-template-columns:1fr;}
  .services-grid4{grid-template-columns:1fr 1fr;}
  .why-grid{grid-template-columns:1fr;}
  .pillars3{grid-template-columns:1fr;}
  .pillars3 div{border-right:none; border-bottom:1px solid var(--line);}
  .skills-shell{grid-template-columns:1fr;}
  .skills-nav{max-height:280px; border-right:none; border-bottom:1px solid var(--line);}
  .skills-cols{columns:1;}
  .contact-list{grid-template-columns:1fr;}
  .form-grid{grid-template-columns:1fr;}
  .lead-grid{grid-template-columns:1fr; text-align:center; justify-items:center;}
  .tick-grid{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr 1fr;}
  .cta-banner .wrap{flex-direction:column; align-items:flex-start;}
}
@media (max-width: 560px){
  .foot-grid{grid-template-columns:1fr;}
  .top-strip .wrap{justify-content:center; text-align:center;}
}


/* ================= poster-style components ================= */
.hero-light{position:relative; background:#fff; overflow:hidden;}
.hero-light .corner{position:absolute; top:0; right:0; width:300px; height:300px; z-index:1; pointer-events:none;}
.hero-light .wrap{position:relative; z-index:2;}
.hero-grid{display:grid; grid-template-columns:1.1fr 0.9fr; gap:44px; align-items:center; padding:52px 0 64px;}
.ribbon{
  display:inline-block; background:var(--red); color:#fff;
  font-family:var(--display); font-weight:600; letter-spacing:0.14em; text-transform:uppercase;
  font-size:11.5px; line-height:1.5; padding:12px 46px 12px 18px; margin-bottom:24px;
  clip-path:polygon(0 0,100% 0,calc(100% - 22px) 100%,0 100%); max-width:100%;
}
.hero-light h1{
  font-size:clamp(34px,4.8vw,60px); font-weight:700; line-height:1.0; letter-spacing:-0.02em;
  text-transform:uppercase; color:var(--navy);
}
.hero-light h1 span{display:block;}
.hero-light h1 .r{color:var(--red);}
.hero-light p.lede{color:#3A3634; font-size:17px; max-width:52ch; margin:22px 0 28px;}
.hero-photo{position:relative;}
.hero-photo img{width:100%; height:500px; object-fit:cover; clip-path:polygon(14% 0,100% 0,100% 100%,0 100%);}
.hero-photo .script{
  position:absolute; top:-6px; right:4px; z-index:3; text-align:center;
  font-family:'Caveat',cursive; font-weight:700; font-size:34px; line-height:0.95; color:var(--navy);
  transform:rotate(-6deg); background:rgba(255,255,255,0.88); padding:8px 16px 12px;
}
.hero-photo .script svg{display:block; margin:2px auto 0; width:110px; height:10px;}
.strip-navy{background:var(--navy); color:#fff;}
.strip-items{display:grid; grid-template-columns:repeat(3,1fr);}
.strip-item{display:flex; align-items:center; gap:16px; padding:26px 28px; border-right:1px solid rgba(255,255,255,0.14);}
.strip-item:last-child{border-right:none;}
.strip-item .t{font-family:var(--display); font-weight:700; font-size:14px; letter-spacing:0.04em; text-transform:uppercase; line-height:1.25;}
.services-grid2{display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); border:1px solid var(--line);}
.services-grid2 .service-card{padding:34px 32px;}
.services-grid2 .service-card h3{font-size:20px;}
.services-grid2 .service-card p{flex:0 0 auto; font-size:14.5px;}
.mini-list{list-style:none; margin:4px 0 14px; padding:0; display:grid; gap:2px; grid-template-columns:1fr 1fr;}
.mini-list li{font-size:13.5px; color:#3A3634; padding:6px 0 6px 20px; position:relative; border-bottom:1px dashed var(--line);}
.mini-list li::before{content:"✓"; position:absolute; left:0; color:var(--red); font-weight:700;}
.mini-list.one{grid-template-columns:1fr;}
.gallery{display:grid; grid-template-columns:repeat(4,1fr);}
.gallery figure{position:relative; margin:0; overflow:hidden;}
.gallery img{width:100%; height:280px; object-fit:cover; transition:transform .4s ease;}
.gallery figure:hover img{transform:scale(1.04);}
.gallery figcaption{
  position:absolute; left:0; bottom:0; right:0; padding:34px 18px 14px;
  background:linear-gradient(transparent, rgba(12,42,68,0.92)); color:#fff;
  font-family:var(--display); font-weight:700; font-size:13px; letter-spacing:0.08em; text-transform:uppercase;
}
.gallery figcaption::before{content:""; display:block; width:26px; height:3px; background:var(--red); margin-bottom:8px;}
.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-top:30px;}
.steps .s{background:#fff; padding:22px 22px;}
.steps .s .n{font-family:var(--mono); color:var(--red); font-size:12.5px;}
.steps .s .x{font-family:var(--display); font-weight:600; font-size:15.5px; margin-top:8px; line-height:1.3;}
.search{display:flex; gap:10px; margin-bottom:22px;}
.search input{flex:1; padding:15px 18px; border:1px solid var(--line); background:#fff; font-family:var(--body); font-size:15px; border-radius:var(--radius);}
.search input:focus{outline:3px solid var(--teal-light); outline-offset:1px;}
.res-tag{font-family:var(--mono); font-size:11px; color:var(--teal); letter-spacing:0.05em; text-transform:uppercase; margin-left:8px;}
.skills-cols li .res-tag{display:block; margin:2px 0 0;}
.manual-grid{display:grid; grid-template-columns:1fr 240px; gap:32px; align-items:center;}
.manual-grid img{width:100%; border:1px solid var(--line); box-shadow:0 12px 30px rgba(0,0,0,0.14);}

/* dropdown nav */
nav.links .has-sub{position:relative;}
nav.links .has-sub > a::before{content:""; }
nav.links .sub{
  position:absolute; top:100%; left:-16px; min-width:290px; background:#fff;
  border:1px solid var(--line); border-top:3px solid var(--red); box-shadow:0 16px 34px rgba(0,0,0,0.14);
  padding:8px 0; display:none; flex-direction:column; gap:0; z-index:60;
}
nav.links .has-sub:hover .sub, nav.links .has-sub:focus-within .sub{display:flex;}
nav.links .sub a{padding:10px 18px; text-transform:none; font-size:13px; font-weight:500; letter-spacing:0.01em; white-space:nowrap;}
nav.links .sub a::after{display:none;}
nav.links .sub a:hover{background:var(--paper-dim); color:var(--red);}

@media (max-width:1100px){
  nav.links{
    display:none; position:absolute; top:100%; left:0; right:0; background:var(--paper);
    flex-direction:column; align-items:flex-start; padding:18px 28px 26px; gap:14px;
    border-bottom:1px solid var(--line); max-height:80vh; overflow-y:auto;
  }
  nav.links.open{display:flex;}
  nav.links .sub{position:static; display:flex; box-shadow:none; border:none; border-left:2px solid var(--red); padding:2px 0 0 10px; min-width:0; background:transparent;}
  nav.links .sub a{padding:6px 10px; white-space:normal;}
  .burger{display:block;}
}
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr; padding:36px 0 44px;}
  .hero-photo img{height:340px;}
  .hero-photo .script{font-size:26px;}
  .strip-items{grid-template-columns:1fr;}
  .strip-item{border-right:none; border-bottom:1px solid rgba(255,255,255,0.14);}
  .services-grid2{grid-template-columns:1fr;}
  .mini-list{grid-template-columns:1fr;}
  .gallery{grid-template-columns:1fr 1fr;}
  .gallery img{height:200px;}
  .steps{grid-template-columns:1fr;}
  .manual-grid{grid-template-columns:1fr;}
  .manual-grid img{max-width:260px;}
  .hero-light .corner{width:150px; height:150px;}
}
@media (max-width:640px){
  .nav-cta{display:none;}
}
