/* MR BUS Core Pages Shared CSS
   Load this once for all MR BUS Core pages. Page HTML rows are CSS-light and require this shared stylesheet.
*/
.mrbus-core-page,
.mrbus-core-page *{box-sizing:border-box}
.mrbus-core-page{
  position:relative;
  z-index:1;
  width:calc(100vw - 2cm);
  max-width:calc(100vw - 2cm);
  margin:0 0 0 50%;
  transform:translateX(-50%);
  background:linear-gradient(180deg,#eaf8ff 0%,#f8fdff 42%,#ffffff 100%);
  font-family:Arial,Helvetica,sans-serif;
  color:#142a3f;
  overflow:hidden;
  padding:0 0 56px;
}
.mrbus-wrap{width:100%;max-width:none;margin:0 auto;padding:0}
.mrbus-hero{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:34px;
  align-items:center;
  padding:58px 0 42px;
}
.mrbus-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#fff;
  color:#075f9f;
  border:1px solid #ccecff;
  border-radius:999px;
  padding:9px 15px;
  font-size:14px;
  line-height:1.35;
  font-weight:800;
  box-shadow:0 10px 26px rgba(9,91,150,.08);
}
.mrbus-hero h1{
  font-size:clamp(36px,4.6vw,64px);
  line-height:1.03;
  letter-spacing:-1.4px;
  color:#052c55;
  margin:18px 0 16px;
  text-transform:none!important;
}
.mrbus-lead{
  font-size:18px;
  line-height:1.76;
  color:#39546b;
  max-width:860px;
  margin:0;
}
.mrbus-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:25px}
.mrbus-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 20px;
  border-radius:14px;
  text-decoration:none!important;
  font-weight:800;
  transition:.2s ease;
  box-shadow:0 10px 25px rgba(5,103,180,.12);
  border-bottom:0!important;
}
.mrbus-btn-primary{background:linear-gradient(135deg,#075fb0,#13a8ee);color:#fff!important}
.mrbus-btn-secondary{background:#fff;color:#075fb0!important;border:1px solid #bfe8ff}
.mrbus-btn-soft{background:#eef9ff;color:#064f91!important;border:1px solid #caeeff}
.mrbus-btn:hover{transform:translateY(-2px)}
.mrbus-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.mrbus-chip{
  background:rgba(255,255,255,.84);
  border:1px solid #d8f0ff;
  border-radius:999px;
  padding:9px 12px;
  font-size:13px;
  line-height:1.35;
  font-weight:700;
  color:#24516f;
}
.mrbus-hero-image{
  position:relative;
  background:rgba(255,255,255,.78);
  border:1px solid #d7efff;
  border-radius:34px;
  padding:14px;
  box-shadow:0 26px 72px rgba(4,72,125,.16);
}
.mrbus-hero-image img{
  width:100%;
  display:block;
  border-radius:25px;
  aspect-ratio:16/10;
  object-fit:cover;
}
.mrbus-float{
  position:absolute;
  left:28px;
  bottom:28px;
  background:rgba(255,255,255,.94);
  border:1px solid #d8f1ff;
  border-radius:18px;
  padding:13px 15px;
  box-shadow:0 18px 38px rgba(6,78,130,.16);
  max-width:310px;
  font-weight:800;
  color:#084c85;
}
.mrbus-topic-strip{
  width:100%;
  height:5px;
  margin:34px 0 0;
  border-radius:999px;
  background:linear-gradient(90deg,#ff4d2d 0%,#ff7b22 48%,#ffc36b 100%);
}
.mrbus-section{
  background:rgba(255,255,255,.92);
  border:1px solid #d9f0ff;
  border-radius:30px;
  padding:34px;
  margin:28px 0;
  box-shadow:0 18px 54px rgba(4,74,130,.08);
}
.mrbus-section h2{
  font-size:clamp(26px,2.6vw,42px);
  line-height:1.12;
  color:#063b70;
  margin:0 0 15px;
  letter-spacing:-.6px;
  text-transform:none!important;
}
.mrbus-section h3{
  font-size:21px;
  line-height:1.25;
  color:#075f9f;
  margin:0 0 10px;
  text-transform:none!important;
}
.mrbus-section p,
.mrbus-section li{
  font-size:16.5px;
  line-height:1.78;
  color:#38536d;
}
.mrbus-section a{
  color:#075f9f;
  font-weight:800;
  text-decoration:none;
  border-bottom:1px solid rgba(7,95,159,.24);
}
.mrbus-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:20px}
.mrbus-grid-three{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}
.mrbus-card{
  background:#fff;
  border:1px solid #dcefff;
  border-radius:24px;
  padding:22px;
  box-shadow:0 14px 36px rgba(6,76,130,.07);
}
.mrbus-card p{margin-bottom:0}
.mrbus-split{
  display:grid;
  grid-template-columns:1fr .82fr;
  gap:26px;
  align-items:center;
}
.mrbus-split img,
.mrbus-image-row img{
  width:100%;
  border-radius:26px;
  object-fit:cover;
  border:1px solid #d8f0ff;
  box-shadow:0 18px 46px rgba(7,79,145,.11);
}
.mrbus-split img{aspect-ratio:16/11}
.mrbus-image-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:22px;
}
.mrbus-image-row figure{
  margin:0;
  background:#fff;
  border:1px solid #dcefff;
  border-radius:24px;
  padding:12px;
  box-shadow:0 14px 38px rgba(6,76,130,.07);
}
.mrbus-image-row img{aspect-ratio:16/10}
.mrbus-image-row figcaption{
  font-size:14px;
  line-height:1.55;
  color:#49647b;
  margin-top:10px;
}
.mrbus-list{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  margin:18px 0 0;
  padding:0;
  list-style:none;
}
.mrbus-list li{
  background:#f7fcff;
  border:1px solid #dcefff;
  border-radius:16px;
  padding:13px 15px;
}
.mrbus-form-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:start}
.mrbus-form{
  background:#fff;
  border:1px solid #d7efff;
  border-radius:28px;
  padding:24px;
  box-shadow:0 16px 42px rgba(4,74,130,.08);
}
.mrbus-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.mrbus-field{display:flex;flex-direction:column;gap:7px}
.mrbus-field label{font-size:13px;font-weight:800;color:#0a4c82}
.mrbus-field input,
.mrbus-field select,
.mrbus-field textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #bfdef3;
  border-radius:14px;
  padding:12px 13px;
  font-size:15px;
  color:#18324a;
  background:#f8fdff;
}
.mrbus-field textarea{min-height:128px;resize:vertical}
.mrbus-field-full{grid-column:1/-1}
.mrbus-form-note{font-size:13px;line-height:1.65;color:#5d7284;margin:13px 0 0}
.mrbus-faq{display:grid;gap:14px;margin-top:22px}
.mrbus-faq details{
  background:#fff;
  border:1px solid #dcefff;
  border-radius:20px;
  padding:18px 20px;
  box-shadow:0 10px 28px rgba(4,74,130,.06);
}
.mrbus-faq summary{
  cursor:pointer;
  font-weight:850;
  color:#063b70;
  font-size:17px;
  line-height:1.45;
}
.mrbus-faq p{margin:12px 0 0}
.mrbus-final{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#063b70,#0786d8);
  border-radius:32px;
  padding:40px;
  margin-top:34px;
  color:#fff;
  box-shadow:0 22px 64px rgba(4,70,130,.16);
}
.mrbus-final h2{
  font-size:clamp(28px,3vw,44px);
  color:#fff;
  margin:0 0 12px;
  text-transform:none!important;
}
.mrbus-final p{
  font-size:17px;
  line-height:1.75;
  color:#eaf8ff;
  max-width:920px;
}
.mrbus-final .mrbus-btn-secondary{color:#075f9f!important}
@media(max-width:1050px){
  .mrbus-core-page{width:calc(100vw - 44px);max-width:calc(100vw - 44px)}
  .mrbus-hero,.mrbus-split,.mrbus-form-wrap{grid-template-columns:1fr}
  .mrbus-grid{grid-template-columns:repeat(2,1fr)}
  .mrbus-grid-three,.mrbus-image-row{grid-template-columns:1fr}
}
@media(max-width:800px){
  .mrbus-core-page{width:calc(100vw - 18px);max-width:calc(100vw - 18px)}
  .mrbus-hero{grid-template-columns:1fr;padding-top:36px}
  .mrbus-grid,.mrbus-list,.mrbus-form-grid{grid-template-columns:1fr}
  .mrbus-section{padding:24px}
  .mrbus-float{position:static;margin-top:14px;max-width:none}
  .mrbus-topic-strip{height:4px;margin-top:24px}
}

/* MR BUS Core final WordPress container overrides */
.entry-content .mrbus-core-page,
.page-content .mrbus-core-page,
.wp-block-post-content .mrbus-core-page,
.elementor-widget-container .mrbus-core-page{
  width:calc(100vw - 2cm)!important;
  max-width:calc(100vw - 2cm)!important;
  margin-left:50%!important;
  margin-right:0!important;
  transform:translateX(-50%)!important;
}
body .mrbus-core-page img{max-width:100%;height:auto}
.mrbus-inline-text{font-weight:800;color:#075f9f}
@media(max-width:1300px){
  .entry-content .mrbus-core-page,
  .page-content .mrbus-core-page,
  .wp-block-post-content .mrbus-core-page,
  .elementor-widget-container .mrbus-core-page,
  .mrbus-core-page{width:calc(100vw - 30px)!important;max-width:calc(100vw - 30px)!important}
}
@media(max-width:1050px){
  .entry-content .mrbus-core-page,
  .page-content .mrbus-core-page,
  .wp-block-post-content .mrbus-core-page,
  .elementor-widget-container .mrbus-core-page,
  .mrbus-core-page{width:calc(100vw - 22px)!important;max-width:calc(100vw - 22px)!important}
}
@media(max-width:800px){
  .entry-content .mrbus-core-page,
  .page-content .mrbus-core-page,
  .wp-block-post-content .mrbus-core-page,
  .elementor-widget-container .mrbus-core-page,
  .mrbus-core-page{width:calc(100vw - 18px)!important;max-width:calc(100vw - 18px)!important}
}
