
:root{--navy:#071827;--navy2:#0a1b2e;--green:#7cb518;--light:#f1f5f9;--white:#fff;--muted:#9aa9b8;--ink:#142231}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.6}
a{text-decoration:none;color:inherit}.wrap{width:min(1160px,92%);margin:auto}.topbar{background:#06131f;color:#cbd5df;font-size:.86rem;padding:.35rem 0}.topbar .wrap{display:flex;justify-content:flex-end}
header{background:var(--navy);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(255,255,255,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;min-height:82px}.brand img{width:210px;display:block}
.menu{display:flex;gap:1.45rem;align-items:center;color:#fff;font-size:.9rem;font-weight:700}.menu a:hover,.menu a.active{color:var(--green)}
.btn{display:inline-block;background:var(--green);color:#071827;padding:.85rem 1.25rem;font-weight:800;border:2px solid var(--green);transition:.2s}.btn:hover{transform:translateY(-1px);filter:brightness(1.08)}
.btn.alt{background:transparent;color:#fff;border-color:#fff}.btn.dark{background:var(--navy);color:#fff;border-color:var(--navy)}
.hero{background:linear-gradient(115deg,#06131f 0%,#0a1b2e 60%,#15304a 100%);color:#fff;padding:7rem 0;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-140px;top:-190px;width:580px;height:580px;border:80px solid rgba(124,181,24,.08);border-radius:50%}
.eyebrow{color:var(--green);font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem}
h1{font-size:clamp(2.6rem,6vw,5.2rem);line-height:1.02;margin:.7rem 0 1.2rem;max-width:900px}h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.15;margin:.35rem 0 1rem}h3{margin:.2rem 0 .6rem;font-size:1.35rem}
.hero p{max-width:730px;font-size:1.18rem;color:#dbe4eb}.actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}
section{padding:5.5rem 0}.section-head{max-width:760px;margin-bottom:2.2rem}.section-head p{color:#526474}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}.card{border:1px solid #dfe6ec;padding:2rem;background:#fff;position:relative}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--green)}
.card p{color:#526474}.tag{display:inline-block;background:#edf6db;color:#395f00;padding:.3rem .55rem;font-weight:800;font-size:.75rem;letter-spacing:.06em}
.dark-section{background:var(--navy);color:#fff}.dark-section p{color:#c8d3dc}.dark-section .card{background:#0e2539;border-color:#284158}.dark-section .card p{color:#c8d3dc}
.list{padding-left:1.15rem}.list li{margin:.45rem 0}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.step{padding:1.5rem;border-left:3px solid var(--green);background:#f6f8fa}.num{font-size:2rem;font-weight:900;color:var(--green)}
.band{background:var(--green);color:#071827;padding:3rem 0}.band .wrap{display:flex;align-items:center;justify-content:space-between;gap:2rem}.band h2{margin:0;font-size:2rem}
.page-hero{background:linear-gradient(120deg,#06131f,#102d45);color:#fff;padding:5rem 0}.page-hero h1{font-size:clamp(2.5rem,5vw,4.2rem)}
.two{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:start}.panel{background:#f4f7f9;padding:2rem;border-left:5px solid var(--green)}
footer{background:#04101a;color:#b8c5d0;padding:3rem 0 1.2rem}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}.footer-logo{width:210px}.footer-title{color:#fff;font-weight:800;margin-bottom:.6rem}.footer-links a{display:block;margin:.4rem 0}.copyright{border-top:1px solid #203343;margin-top:2rem;padding-top:1rem;font-size:.82rem}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field label{display:block;font-weight:700;margin-bottom:.3rem}.field input,.field textarea{width:100%;padding:.9rem;border:1px solid #cbd5df;font:inherit}.field.full{grid-column:1/-1}
.mobile-toggle{display:none;background:none;border:0;color:#fff;font-size:1.7rem}
@media(max-width:900px){.mobile-toggle{display:block}.menu{display:none;position:absolute;left:0;right:0;top:82px;background:var(--navy);padding:1.3rem 4%;flex-direction:column;align-items:flex-start}.menu.open{display:flex}.grid3,.process,.two,.footer-grid{grid-template-columns:1fr}.hero{padding:5rem 0}.band .wrap{display:block}.band .btn{margin-top:1rem}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}


/* Homepage photographic industry showcase */
.industry-showcase{background:var(--navy);color:#fff;padding:6rem 0}
.industry-heading p{color:#c8d3dc}
.industry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:310px;gap:1.15rem}
.industry-tile{
    position:relative;overflow:hidden;display:flex;align-items:flex-end;
    min-height:310px;background:#10283d;
    background-image:linear-gradient(180deg,rgba(4,16,26,.06) 15%,rgba(4,16,26,.9) 100%),var(--industry-image);
    background-size:cover;background-position:center;
    border:1px solid rgba(255,255,255,.12);
    isolation:isolate;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease
}
.industry-tile:before{
    content:"";position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(124,181,24,.16),transparent 48%);
    opacity:0;transition:opacity .28s ease;z-index:-1
}
.industry-tile:hover{transform:translateY(-4px);border-color:rgba(124,181,24,.75);box-shadow:0 22px 45px rgba(0,0,0,.28)}
.industry-tile:hover:before{opacity:1}
.industry-wide{grid-column:span 2}
.industry-overlay{width:100%;padding:1.65rem 1.7rem}
.industry-kicker{display:block;color:#9bd13d;font-size:.72rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;margin-bottom:.35rem}
.industry-overlay h3{font-size:1.65rem;line-height:1.12;margin:0 0 .45rem;color:#fff}
.industry-overlay p{margin:0;color:#d8e2e9;max-width:560px;font-size:.96rem}
@media(max-width:900px){
    .industry-grid{grid-template-columns:1fr;grid-auto-rows:285px}
    .industry-wide{grid-column:auto}
}

.industry-tile{position:relative;background:#10283d!important;background-image:none!important}
.industry-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0;transition:transform .45s ease}
.industry-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(4,16,26,.05) 5%,rgba(4,16,26,.92) 100%)}
.industry-overlay{position:relative;z-index:2}
.industry-tile:hover .industry-photo{transform:scale(1.045)}

/* Dramatic homepage photography — retained CCG navy and green palette */
.hero-photo{
  min-height:610px;
  display:flex;
  align-items:center;
  background:
    linear-gradient(90deg,rgba(3,15,25,.98) 0%,rgba(3,15,25,.90) 38%,rgba(3,15,25,.40) 64%,rgba(3,15,25,.12) 100%),
    url('images/hero-destroyer.jpg') center right/cover no-repeat;
  padding:6.6rem 0;
}
.hero-photo:after{
  width:520px;height:520px;right:-230px;top:-245px;
  border-color:rgba(124,181,24,.10)
}
.hero-photo .wrap{position:relative;z-index:2}
.hero-photo h1{max-width:690px;font-size:clamp(3rem,6.4vw,5.8rem);text-transform:uppercase;letter-spacing:-.045em}
.hero-photo h1 span{color:var(--green)}
.hero-photo p{max-width:560px;font-size:1.22rem;text-shadow:0 2px 12px rgba(0,0,0,.45)}
.industry-showcase{background:linear-gradient(180deg,#071827,#04111d)}
.industry-grid{gap:.85rem}
.industry-tile{border:1px solid rgba(124,181,24,.38);box-shadow:0 12px 28px rgba(0,0,0,.22)}
.industry-photo{filter:saturate(1.08) contrast(1.06)}
.industry-shade{background:linear-gradient(180deg,rgba(4,16,26,.02) 20%,rgba(4,16,26,.93) 100%)}
.industry-tile:hover{border-color:var(--green);box-shadow:0 25px 52px rgba(0,0,0,.38)}
.industry-kicker{color:var(--green)}
@media(max-width:900px){
  .hero-photo{
    min-height:570px;
    background:
      linear-gradient(180deg,rgba(3,15,25,.62),rgba(3,15,25,.96)),
      url('images/hero-destroyer.jpg') 62% center/cover no-repeat;
  }
  .hero-photo h1{font-size:clamp(2.7rem,13vw,4.6rem)}
}
