
/*
  BlueRay theme-only layer for the five main SEO Sprint 2 pages.
  This stylesheet deliberately changes presentation only. The underlying
  Sprint 2 copy, metadata, schema, URLs and form fields remain unchanged.
*/
.theme-main-page{
  --theme-ink:#071f4f;
  --theme-ink-2:#123863;
  --theme-blue:#078af4;
  --theme-cyan:#08b9f5;
  --theme-soft:#f2f9ff;
  --theme-soft-2:#eaf6ff;
  --theme-line:#dcebf7;
  --theme-muted:#587491;
  --theme-shadow:0 12px 34px rgba(21,79,122,.08);
  --theme-radius:18px;
  background:#fff;
  color:var(--theme-ink);
}
.theme-main-page a{transition:color .2s ease,transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.theme-main-page .container{width:min(1160px,calc(100% - 40px))}
.theme-main-page .skip-link{background:#fff;color:#071f4f;border:1px solid #dbe9f4;border-radius:8px}

/* top bar + navigation: same light BlueRay language as the chosen homepage */
.theme-main-page .topbar{
  background:linear-gradient(90deg,#edf7ff,#f7fbff);
  color:#496985;
  border-bottom:1px solid #e6f0f7;
  font-size:12px;
}
.theme-main-page .topbar .container{padding:7px 0}
.theme-main-page .topbar a{color:#365c7d}
.theme-main-page .header{
  background:rgba(255,255,255,.97);
  border-bottom:1px solid #e8f0f6;
  box-shadow:0 7px 24px rgba(27,73,108,.05);
  backdrop-filter:blur(15px);
}
.theme-main-page .nav{height:78px}
.theme-main-page .brand img{width:185px;max-height:59px;object-fit:contain}
.theme-main-page .nav-links{gap:27px}
.theme-main-page .nav-links a{
  position:relative;
  color:#18385e;
  font-size:13px;
  font-weight:700;
  padding:29px 0 27px;
}
.theme-main-page .nav-links a:hover,
.theme-main-page .nav-links a[aria-current="page"]{color:#087bd4}
.theme-main-page .nav-links a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:20px;
  height:2px;border-radius:99px;
  background:linear-gradient(90deg,var(--theme-blue),var(--theme-cyan));
}
.theme-main-page .nav-toggle{color:#0d3d68;border:1px solid #dbe9f4;background:#fff}

/* controls */
.theme-main-page .btn{
  min-height:48px;
  padding:0 22px;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
}
.theme-main-page .btn-primary{
  background:linear-gradient(90deg,var(--theme-blue),var(--theme-cyan));
  color:#fff;
  box-shadow:0 11px 24px rgba(0,148,245,.22);
}
.theme-main-page .btn-primary:hover{transform:translateY(-1px);filter:none;box-shadow:0 15px 28px rgba(0,148,245,.28)}
.theme-main-page .btn-secondary{
  background:#fff;
  border:1px solid #188cf0;
  color:#0c66b6;
}
.theme-main-page .btn-secondary:hover{background:#f5fbff;border-color:#078af4}
.theme-main-page .eyebrow{
  color:#1384ea;
  font-size:11px;
  letter-spacing:.18em;
  margin-bottom:12px;
}
.theme-main-page .eyebrow::before{background:#1484e9;width:27px;height:2px}

/* page hero */
.theme-main-page .page-hero{
  position:relative;
  overflow:hidden;
  padding:62px 0 54px;
  background:
    radial-gradient(circle at 83% 32%,rgba(8,185,245,.12),transparent 24%),
    linear-gradient(105deg,#fff 0%,#f8fcff 52%,#ebf7ff 100%);
  border-bottom:1px solid #e8f2f8;
}
.theme-main-page .page-hero::after{
  content:"";
  position:absolute;
  width:340px;height:340px;border-radius:50%;
  right:-115px;top:-190px;
  border:44px solid rgba(7,138,244,.045);
  pointer-events:none;
}
.theme-main-page .page-hero .container{position:relative;z-index:1;max-width:1160px}
.theme-main-page .page-hero .breadcrumbs{font-size:12px;color:#7890a7;margin-bottom:21px}
.theme-main-page .page-hero .breadcrumbs a{color:#087fdc;font-weight:700}
.theme-main-page .page-hero h1{
  max-width:830px;
  color:var(--theme-ink);
  font-size:clamp(38px,5vw,60px);
  line-height:1.03;
  letter-spacing:-.045em;
  margin:10px 0 17px;
  font-weight:800;
}
.theme-main-page .page-hero p{max-width:720px;color:#506d89;font-size:16px;line-height:1.6;margin:0}
.theme-main-page .page-hero .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}

/* common section rhythm */
.theme-main-page .section{padding:60px 0}
.theme-main-page .section-sm{padding:44px 0}
.theme-main-page .section:nth-of-type(even):not(.quote-section){background:linear-gradient(180deg,#fbfdff,#f5fbff)}
.theme-main-page .section-head{max-width:780px;margin-bottom:28px}
.theme-main-page .section-head h2{
  color:var(--theme-ink);
  font-size:clamp(29px,4vw,43px);
  line-height:1.08;
  letter-spacing:-.035em;
  margin:8px 0 13px;
}
.theme-main-page .section-head p,.theme-main-page .lead{color:var(--theme-muted);font-size:15px}

/* service cards */
.theme-main-page .grid-3{gap:18px}
.theme-main-page .card{
  position:relative;
  overflow:hidden;
  background:#fff;
  border:1px solid #e5eef5;
  border-radius:16px;
  padding:23px;
  box-shadow:var(--theme-shadow);
}
.theme-main-page .card:hover{transform:translateY(-3px);border-color:#cae7f8;box-shadow:0 16px 38px rgba(21,79,122,.11)}
.theme-main-page .card .icon{
  width:47px;height:47px;border-radius:50%;
  background:#e9f7ff;border:5px solid #fff;
  box-shadow:0 5px 15px rgba(8,126,209,.08);
  color:#098bee;
}
.theme-main-page .card h3{color:var(--theme-ink);font-size:17px;line-height:1.26;margin:16px 0 7px}
.theme-main-page .card p{color:#5f7892;font-size:13px;line-height:1.55;margin-bottom:13px}
.theme-main-page .text-link{color:#087bd5;font-weight:800;font-size:13px}
.theme-main-page .text-link:hover{color:#045fa9}

/* Photo strip on Services cards — decoration only, no copy changes */
.theme-services .grid-3 .card{padding-top:142px}
.theme-services .grid-3 .card::before{
  content:"";position:absolute;left:0;right:0;top:0;height:118px;
  background-size:cover;background-position:center;
}
.theme-services .grid-3 .card:nth-child(4n+1)::before{background-image:linear-gradient(rgba(4,48,84,.04),rgba(4,48,84,.04)),url('assets/images/service-office.jpg')}
.theme-services .grid-3 .card:nth-child(4n+2)::before{background-image:linear-gradient(rgba(4,48,84,.04),rgba(4,48,84,.04)),url('assets/images/service-retail.jpg')}
.theme-services .grid-3 .card:nth-child(4n+3)::before{background-image:linear-gradient(rgba(4,48,84,.04),rgba(4,48,84,.04)),url('assets/images/service-warehouse.jpg')}
.theme-services .grid-3 .card:nth-child(4n+4)::before{background-image:linear-gradient(rgba(4,48,84,.04),rgba(4,48,84,.04)),url('assets/images/service-strata.jpg')}
.theme-services .grid-3 .card .icon{position:absolute;left:20px;top:94px;z-index:2}

/* areas */
.theme-main-page .region-grid{gap:18px}
.theme-main-page .region-card{
  background:#fff;
  border:1px solid #e4eef5;
  border-radius:18px;
  padding:27px;
  box-shadow:var(--theme-shadow);
}
.theme-main-page .region-card h2,.theme-main-page .region-card h3{color:var(--theme-ink);font-size:21px;letter-spacing:-.02em}
.theme-main-page .region-card p{color:#5c7590;font-size:14px;line-height:1.65}
.theme-main-page .mini-proof{gap:7px}
.theme-main-page .mini-proof span,
.theme-main-page .mini-proof a{
  padding:7px 10px;
  border:1px solid #dcecf7;
  background:#f2f9ff;
  color:#32709f;
  font-size:11px;
}

/* guide hub */
.theme-main-page .resource-grid{gap:18px}
.theme-main-page .resource-card{
  min-height:260px;
  padding:25px;
  border-radius:18px;
  border:1px solid #e4eef5;
  background:#fff;
  box-shadow:var(--theme-shadow);
}
.theme-main-page .resource-card .tag{color:#0788e8;font-size:10px;letter-spacing:.15em}
.theme-main-page .resource-card h3{color:var(--theme-ink);font-size:20px;line-height:1.25}
.theme-main-page .resource-card p{color:#5d7690;font-size:14px;line-height:1.6}

/* about */
.theme-main-page .split{gap:54px}
.theme-main-page .service-copy h2{color:var(--theme-ink);font-size:35px;line-height:1.1;letter-spacing:-.035em;margin-top:0}
.theme-main-page .service-copy h3{color:var(--theme-ink)}
.theme-main-page .service-copy p,.theme-main-page .service-copy li{color:#56728c;font-size:15px;line-height:1.75}
.theme-main-page .feature-panel{
  border-radius:22px;
  padding:31px;
  background:linear-gradient(145deg,#eef9ff,#e1f3ff);
  border:1px solid #d8ebf8;
  box-shadow:var(--theme-shadow);
}
.theme-main-page .feature-panel::after{background:rgba(8,185,245,.08)}
.theme-main-page .feature-panel h2,.theme-main-page .feature-panel h3{color:var(--theme-ink)}
.theme-main-page .feature-panel p{color:#587590}
.theme-main-page .check-list li{color:#234b70;font-size:14px}
.theme-main-page .check-list li::before{background:#d9f1ff;color:#0788e8}

/* contact / quote panels */
.theme-main-page .quote-section{
  background:linear-gradient(110deg,#eef9ff,#ddf2ff);
}
.theme-main-page .quote-wrap{gap:45px;align-items:start}
.theme-main-page .quote-section .section-head h2,
.theme-main-page .quote-section .section-head p{color:var(--theme-ink)}
.theme-main-page .quote-form{
  background:#fff;
  color:#18385e;
  border-radius:18px;
  padding:24px;
  border:1px solid #e0edf6;
  box-shadow:0 15px 35px rgba(20,80,124,.09);
}
.theme-main-page .field label{color:#42627d;font-size:12px}
.theme-main-page .field input,
.theme-main-page .field select,
.theme-main-page .field textarea{
  border:1px solid #d9e6ef;
  border-radius:8px;
  color:#173b5f;
  padding:11px 12px;
  font-size:13px;
  background:#fff;
}
.theme-main-page .field input:focus,
.theme-main-page .field select:focus,
.theme-main-page .field textarea:focus{border-color:#0b94ef;box-shadow:0 0 0 3px rgba(11,148,239,.10)}
.theme-main-page .form-note{color:#6a8094}
.theme-contact .feature-panel{margin-top:24px}

/* CTA */
.theme-main-page .cta-band{
  background:linear-gradient(105deg,#eaf8ff,#dff3ff);
  border:1px solid #d7ebf8;
  border-radius:20px;
  padding:27px 30px;
  box-shadow:0 10px 28px rgba(21,79,122,.06);
}
.theme-main-page .cta-band h2,.theme-main-page .cta-band h3{color:var(--theme-ink)}
.theme-main-page .cta-band p{color:#5c7590}

/* footer: same deep navy finish as the chosen homepage */
.theme-main-page .footer{
  padding:46px 0 22px;
  border-top:0;
  background:#071c3f;
  color:#cfe4f6;
}
.theme-main-page .footer-grid{gap:32px}
.theme-main-page .footer-brand img{width:185px;background:#fff;border-radius:10px;padding:5px;height:auto;}
.theme-main-page .footer p,.theme-main-page .footer a{color:#a8c4d9;font-size:12px}
.theme-main-page .footer a:hover{color:#fff}
.theme-main-page .footer h3{color:#fff;font-size:12px;letter-spacing:.08em}
.theme-main-page .footer-bottom{border-top:1px solid rgba(255,255,255,.10);color:#88a8bf;font-size:11px}

@media(max-width:980px){
  .theme-main-page .nav-links{
    position:fixed;inset:78px 18px auto;
    background:#fff;
    border:1px solid #e1edf5;
    border-radius:18px;
    box-shadow:0 18px 40px rgba(18,65,101,.14);
    padding:10px 20px 18px;
  }
  .theme-main-page .nav-links a{padding:12px 0}
  .theme-main-page .nav-links a[aria-current="page"]::after{bottom:7px;right:auto;width:28px}
  .theme-main-page .page-hero{padding-top:50px}
  .theme-main-page .grid-3{grid-template-columns:repeat(2,1fr)}
  .theme-main-page .resource-grid{grid-template-columns:repeat(2,1fr)}
  .theme-main-page .quote-wrap,.theme-main-page .split{grid-template-columns:1fr}
}
@media(max-width:640px){
  .theme-main-page .container{width:min(100% - 28px,1160px)}
  .theme-main-page .brand img{width:160px}
  .theme-main-page .page-hero{padding:42px 0 38px}
  .theme-main-page .page-hero h1{font-size:39px}
  .theme-main-page .section{padding:44px 0}
  .theme-main-page .section-sm{padding:34px 0}
  .theme-main-page .grid-3,.theme-main-page .resource-grid{grid-template-columns:1fr}
  .theme-services .grid-3 .card{padding-top:165px}
  .theme-services .grid-3 .card::before{height:140px}
  .theme-services .grid-3 .card .icon{top:116px}
  .theme-main-page .cta-band{padding:23px;align-items:flex-start}
  .theme-main-page .quote-form{padding:18px}
}
