/* ============================================================
   GP GLOBAL HEADER + FOOTER
   Business3ree / Ignition child theme
   Scoped prefix: gp-shell-
   ============================================================ */

:root {
  --gp-shell-navy-900:#0B1E3D;
  --gp-shell-navy-800:#0D2249;
  --gp-shell-navy-700:#132D5E;
  --gp-shell-navy-600:#1B3A6B;
  --gp-shell-navy-100:#D3E2F4;
  --gp-shell-navy-50:#EBF1FA;
  --gp-shell-orange-700:#C04018;
  --gp-shell-orange-600:#E85D26;
  --gp-shell-orange-300:#F9AD8E;
  --gp-shell-orange-100:#FDE8DE;
  --gp-shell-neutral-900:#131C2B;
  --gp-shell-neutral-600:#4B5566;
  --gp-shell-neutral-500:#6B7A91;
  --gp-shell-neutral-300:#C4CEDC;
  --gp-shell-neutral-200:#DDE4EE;
  --gp-shell-neutral-100:#E8EDF5;
  --gp-shell-neutral-25:#F7F9FC;
  --gp-shell-white:#fff;
  --gp-shell-font-head:'Outfit',sans-serif;
  --gp-shell-font-body:'DM Sans',sans-serif;
  --gp-shell-shadow:0 8px 28px rgba(13,25,40,.13);
  --gp-shell-transition:180ms ease;
}

/* Hide the legacy Ignition mobile drawer. The new shell has its own. */
.navigation-mobile-wrap { display:none !important; }

/* Remove legacy header spacing/sticky artefacts if Ignition classes survive. */
.head-mast,
.header.header-sticky { box-shadow:none; }

body.gp-shell-menu-open { overflow:hidden; }

/* ---------------- HEADER ---------------- */
.gp-shell-header,
.gp-shell-header * { box-sizing:border-box; }

.gp-shell-header {
  position:sticky;
  top:0;
  z-index:9990;
  width:100%;
  background:rgba(13,34,73,.98);
  border-bottom:1px solid rgba(255,255,255,.08);
  font-family:var(--gp-shell-font-body);
  transition:box-shadow var(--gp-shell-transition), background var(--gp-shell-transition);
}

body.admin-bar .gp-shell-header { top:32px; }

.gp-shell-header.is-scrolled {
  background:rgba(13,34,73,.995);
  box-shadow:0 8px 24px rgba(8,20,42,.18);
}

.gp-shell-header-inner {
  width:min(1200px, calc(100% - 48px));
  min-height:78px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(210px,280px) 1fr auto;
  gap:30px;
  align-items:center;
}

.gp-shell-logo,
.gp-shell-mobile-logo,
.gp-shell-footer-logo { display:inline-flex; align-items:center; text-decoration:none; }

.gp-shell-logo img {
  display:block;
  width:245px;
  max-width:100%;
  height:auto;
}

.gp-shell-desktop-nav { min-width:0; justify-self:end; }

.gp-shell-menu,
.gp-shell-menu ul {
  margin:0;
  padding:0;
  list-style:none;
}

.gp-shell-menu-desktop {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:2px;
}

.gp-shell-menu-desktop > li { position:relative; }

.gp-shell-menu-desktop > li > a {
  position:relative;
  display:flex;
  align-items:center;
  min-height:78px;
  padding:0 11px;
  color:rgba(255,255,255,.82);
  text-decoration:none;
  font-family:var(--gp-shell-font-head);
  font-size:13px;
  font-weight:600;
  letter-spacing:.025em;
  white-space:nowrap;
  transition:color var(--gp-shell-transition);
}

.gp-shell-menu-desktop > li > a::after {
  content:'';
  position:absolute;
  left:11px;
  right:11px;
  bottom:17px;
  height:2px;
  border-radius:99px;
  background:var(--gp-shell-orange-600);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform var(--gp-shell-transition);
}

.gp-shell-menu-desktop > li:hover > a,
.gp-shell-menu-desktop > li:focus-within > a,
.gp-shell-menu-desktop > .current-menu-item > a,
.gp-shell-menu-desktop > .current-menu-ancestor > a { color:var(--gp-shell-white); }

.gp-shell-menu-desktop > li:hover > a::after,
.gp-shell-menu-desktop > li:focus-within > a::after,
.gp-shell-menu-desktop > .current-menu-item > a::after,
.gp-shell-menu-desktop > .current-menu-ancestor > a::after { transform:scaleX(1); }

.gp-shell-menu-desktop > .menu-item-has-children > a { padding-right:25px; }
.gp-shell-menu-desktop > .menu-item-has-children > a::before {
  content:'';
  position:absolute;
  right:10px;
  top:50%;
  width:6px;
  height:6px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:translateY(-70%) rotate(45deg);
}

.gp-shell-menu-desktop .sub-menu {
  position:absolute;
  top:calc(100% - 8px);
  left:50%;
  width:300px;
  padding:10px;
  border:1px solid var(--gp-shell-neutral-200);
  border-radius:10px;
  background:var(--gp-shell-white);
  box-shadow:var(--gp-shell-shadow);
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,10px);
  transition:opacity var(--gp-shell-transition), transform var(--gp-shell-transition), visibility var(--gp-shell-transition);
}

.gp-shell-menu-desktop li:hover > .sub-menu,
.gp-shell-menu-desktop li:focus-within > .sub-menu {
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}

.gp-shell-menu-desktop .sub-menu::before {
  content:'';
  position:absolute;
  top:-9px;
  left:50%;
  width:16px;
  height:16px;
  background:var(--gp-shell-white);
  border-left:1px solid var(--gp-shell-neutral-200);
  border-top:1px solid var(--gp-shell-neutral-200);
  transform:translateX(-50%) rotate(45deg);
}

.gp-shell-menu-desktop .sub-menu li { position:relative; }

.gp-shell-menu-desktop .sub-menu a {
  display:block;
  padding:11px 13px;
  border-radius:6px;
  color:var(--gp-shell-neutral-900);
  text-decoration:none;
  font-family:var(--gp-shell-font-body);
  font-size:14px;
  font-weight:600;
  line-height:1.35;
  transition:background var(--gp-shell-transition), color var(--gp-shell-transition), padding var(--gp-shell-transition);
}

.gp-shell-menu-desktop .sub-menu a:hover,
.gp-shell-menu-desktop .sub-menu a:focus {
  background:var(--gp-shell-navy-50);
  color:var(--gp-shell-navy-800);
  padding-left:17px;
}

/* Remove the legacy nav-button item because CALL ME is now the header CTA. */
.gp-shell-menu .nav-button { display:none !important; }

.gp-shell-header-actions {
  display:flex;
  align-items:center;
  gap:10px;
}

.gp-shell-contact-cta,
.gp-shell-mobile-header-call {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:10px 17px;
  border-radius:7px;
  background:var(--gp-shell-orange-600);
  color:var(--gp-shell-white) !important;
  text-decoration:none !important;
  font-family:var(--gp-shell-font-head);
  font-size:13px;
  font-weight:700;
  letter-spacing:.035em;
  box-shadow:0 5px 16px rgba(232,93,38,.27);
  transition:background var(--gp-shell-transition), transform var(--gp-shell-transition), box-shadow var(--gp-shell-transition);
}

.gp-shell-mobile-header-call { display:none; }

.gp-shell-contact-cta:hover,
.gp-shell-contact-cta:focus,
.gp-shell-mobile-header-call:hover,
.gp-shell-mobile-header-call:focus {
  background:var(--gp-shell-orange-700);
  color:var(--gp-shell-white) !important;
  transform:translateY(-1px);
  box-shadow:0 8px 20px rgba(232,93,38,.33);
}

.gp-shell-contact-cta svg,
.gp-shell-mobile-header-call svg,
.gp-shell-mobile-primary svg,
.gp-shell-mobile-call svg,
.gp-shell-footer-call svg,
.gp-shell-footer-email svg {
  width:16px;
  height:16px;
  fill:currentColor;
  flex:0 0 16px;
}

.gp-shell-menu-toggle {
  display:none;
  width:44px;
  height:42px;
  padding:9px 10px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:7px;
  background:rgba(255,255,255,.06);
  cursor:pointer;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:4px;
}

.gp-shell-menu-toggle span {
  width:19px;
  height:2px;
  border-radius:3px;
  background:var(--gp-shell-white);
}

/* ---------------- MOBILE DRAWER ---------------- */
.gp-shell-mobile-overlay {
  position:fixed;
  inset:0;
  z-index:9995;
  background:rgba(4,12,27,.58);
  backdrop-filter:blur(2px);
}

.gp-shell-mobile-panel {
  position:fixed;
  z-index:9999;
  top:0;
  right:0;
  width:min(430px,92vw);
  height:100dvh;
  display:flex;
  flex-direction:column;
  background:var(--gp-shell-white);
  box-shadow:-18px 0 55px rgba(0,0,0,.2);
  transform:translateX(105%);
  transition:transform 300ms cubic-bezier(.22,1,.36,1);
  font-family:var(--gp-shell-font-body);
  overflow:hidden;
}

body.admin-bar .gp-shell-mobile-panel { top:32px; height:calc(100dvh - 32px); }
.gp-shell-mobile-panel.is-open { transform:translateX(0); }

.gp-shell-mobile-top {
  height:70px;
  min-height:70px;
  flex:0 0 70px;
  padding:15px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--gp-shell-neutral-100);
  background:var(--gp-shell-navy-800);
  position:sticky;
  top:0;
  z-index:2;
}

.gp-shell-mobile-scroll {
  min-height:0;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}

.gp-shell-mobile-logo img { width:215px; max-width:70vw; height:auto; display:block; }

.gp-shell-mobile-close {
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:7px;
  background:rgba(255,255,255,.06);
  cursor:pointer;
}

.gp-shell-mobile-close svg { width:20px; height:20px; fill:var(--gp-shell-white); }

.gp-shell-mobile-nav { padding:15px 20px 8px; }

.gp-shell-menu-mobile > li { border-bottom:1px solid var(--gp-shell-neutral-100); }

.gp-shell-menu-mobile > li > a {
  display:block;
  padding:16px 42px 16px 2px;
  color:var(--gp-shell-navy-800);
  text-decoration:none;
  font-family:var(--gp-shell-font-head);
  font-size:17px;
  font-weight:700;
  line-height:1.3;
}

.gp-shell-menu-mobile .menu-item-has-children { position:relative; }

.gp-shell-submenu-toggle {
  position:absolute;
  right:0;
  top:8px;
  width:40px;
  height:40px;
  border:0;
  border-radius:6px;
  background:var(--gp-shell-neutral-25);
  cursor:pointer;
}

.gp-shell-submenu-toggle::after {
  content:'';
  position:absolute;
  left:50%;
  top:47%;
  width:8px;
  height:8px;
  border-right:2px solid var(--gp-shell-navy-600);
  border-bottom:2px solid var(--gp-shell-navy-600);
  transform:translate(-50%,-65%) rotate(45deg);
  transition:transform var(--gp-shell-transition);
}

.gp-shell-submenu-toggle[aria-expanded="true"]::after {
  transform:translate(-50%,-25%) rotate(225deg);
}

.gp-shell-menu-mobile .sub-menu {
  display:none;
  padding:0 0 12px 14px;
}

.gp-shell-menu-mobile .sub-menu.is-open { display:block; }

.gp-shell-menu-mobile .sub-menu a {
  display:block;
  padding:9px 10px;
  border-left:2px solid var(--gp-shell-neutral-100);
  color:var(--gp-shell-neutral-600);
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  line-height:1.4;
}

.gp-shell-menu-mobile .sub-menu a:hover,
.gp-shell-menu-mobile .sub-menu a:focus {
  color:var(--gp-shell-orange-700);
  border-left-color:var(--gp-shell-orange-600);
}

.gp-shell-mobile-contact {
  margin-top:0;
  padding:10px 20px 24px;
  background:var(--gp-shell-white);
  border-top:0;
}

.gp-shell-mobile-primary,
.gp-shell-mobile-call {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  border-radius:7px;
  text-decoration:none !important;
  font-family:var(--gp-shell-font-head);
  font-size:14px;
  font-weight:700;
}

.gp-shell-mobile-primary {
  gap:9px;
  background:var(--gp-shell-orange-600);
  color:var(--gp-shell-white) !important;
}

.gp-shell-mobile-primary svg,
.gp-shell-mobile-call svg {
  width:16px;
  height:16px;
  flex:0 0 16px;
  fill:currentColor;
}

.gp-shell-mobile-call {
  gap:9px;
  margin-top:9px;
  border:1px solid var(--gp-shell-navy-700);
  background:var(--gp-shell-navy-700);
  color:var(--gp-shell-white) !important;
}

.gp-shell-mobile-call:hover,
.gp-shell-mobile-call:focus {
  background:var(--gp-shell-navy-800);
  border-color:var(--gp-shell-navy-800);
  color:var(--gp-shell-white) !important;
}

/* ---------------- FOOTER CTA ---------------- */
.gp-shell-footer,
.gp-shell-footer * { box-sizing:border-box; }
.gp-shell-footer { font-family:var(--gp-shell-font-body); }

.gp-shell-footer-cta {
  position:relative;
  overflow:hidden;
  padding:62px 24px;
  background:linear-gradient(135deg,var(--gp-shell-navy-700),var(--gp-shell-navy-800));
  border-top:4px solid var(--gp-shell-orange-600);
}

.gp-shell-footer-cta::before {
  content:'';
  position:absolute;
  width:520px;
  height:520px;
  right:-170px;
  top:-240px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(232,93,38,.16),transparent 68%);
  pointer-events:none;
}

.gp-shell-footer-cta-inner {
  position:relative;
  z-index:1;
  width:min(1200px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:48px;
  align-items:center;
}

.gp-shell-footer-eyebrow {
  display:inline-block;
  margin-bottom:10px;
  color:var(--gp-shell-orange-300);
  font-size:11px;
  font-weight:700;
  letter-spacing:.1em;
}

.gp-shell-footer-cta h2 {
  max-width:780px;
  margin:0;
  color:var(--gp-shell-white);
  font-family:var(--gp-shell-font-head);
  font-size:clamp(1.7rem,3vw,2.45rem);
  font-weight:800;
  line-height:1.13;
  letter-spacing:-.025em;
}

.gp-shell-footer-cta p {
  max-width:760px;
  margin:14px 0 0;
  color:rgba(255,255,255,.64);
  font-size:16px;
  line-height:1.7;
}

.gp-shell-footer-cta-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:154px;
  min-height:50px;
  padding:13px 24px;
  border-radius:7px;
  background:var(--gp-shell-orange-600);
  color:var(--gp-shell-white) !important;
  text-decoration:none !important;
  font-family:var(--gp-shell-font-head);
  font-size:14px;
  font-weight:700;
  box-shadow:0 8px 22px rgba(232,93,38,.3);
  transition:background var(--gp-shell-transition), transform var(--gp-shell-transition);
}

.gp-shell-footer-cta-btn:hover,
.gp-shell-footer-cta-btn:focus { background:var(--gp-shell-orange-700); transform:translateY(-2px); }

/* ---------------- FOOTER MAIN ---------------- */
.gp-shell-footer-main {
  padding:68px 24px 58px;
  background:var(--gp-shell-navy-900);
}

.gp-shell-footer-grid {
  width:min(1200px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.55fr .8fr .65fr 1fr;
  gap:54px;
}

.gp-shell-footer-logo img { width:270px; max-width:100%; height:auto; display:block; }

.gp-shell-footer-brand > p {
  max-width:420px;
  margin:22px 0 0;
  color:rgba(255,255,255,.58);
  font-size:14px;
  line-height:1.75;
}

.gp-shell-partner-row { margin-top:22px; }

.gp-shell-partner-badge {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:6px;
  background:rgba(255,255,255,.055);
  color:rgba(255,255,255,.78) !important;
  text-decoration:none !important;
  font-size:12px;
  font-weight:700;
}

.gp-shell-partner-dot {
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--gp-shell-orange-600);
  box-shadow:0 0 0 4px rgba(232,93,38,.13);
}

.gp-shell-socials {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:26px;
}

.gp-shell-socials a {
  width:38px;
  height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.16);
  border-radius:50%;
  background:rgba(255,255,255,.055);
  color:rgba(255,255,255,.78) !important;
  text-decoration:none !important;
  transition:background var(--gp-shell-transition), border-color var(--gp-shell-transition), color var(--gp-shell-transition), transform var(--gp-shell-transition);
}

.gp-shell-socials svg {
  width:17px;
  height:17px;
  fill:currentColor;
}

.gp-shell-socials a:hover,
.gp-shell-socials a:focus {
  background:var(--gp-shell-orange-600);
  border-color:var(--gp-shell-orange-600);
  color:var(--gp-shell-white) !important;
  transform:translateY(-1px);
}

.gp-shell-footer-col h3 {
  margin:3px 0 19px;
  color:var(--gp-shell-white);
  font-family:var(--gp-shell-font-head);
  font-size:15px;
  font-weight:700;
  letter-spacing:.01em;
}

.gp-shell-footer-col ul { margin:0; padding:0; list-style:none; }
.gp-shell-footer-col li + li { margin-top:10px; }

.gp-shell-footer-col li a {
  color:rgba(255,255,255,.58) !important;
  text-decoration:none !important;
  font-size:13.5px;
  line-height:1.45;
  transition:color var(--gp-shell-transition), transform var(--gp-shell-transition);
}

.gp-shell-footer-col li a:hover,
.gp-shell-footer-col li a:focus { color:var(--gp-shell-orange-300) !important; }

.gp-shell-footer-contact p {
  margin:0 0 16px;
  color:rgba(255,255,255,.55);
  font-size:13.5px;
  line-height:1.7;
}

.gp-shell-footer-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  margin-top:18px;
}

.gp-shell-footer-email,
.gp-shell-footer-call {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:10px 14px;
  border-radius:7px;
  color:var(--gp-shell-white) !important;
  text-decoration:none !important;
  font-family:var(--gp-shell-font-head);
  font-size:12.5px;
  font-weight:700;
  transition:background var(--gp-shell-transition), border-color var(--gp-shell-transition), transform var(--gp-shell-transition);
}

.gp-shell-footer-email {
  background:var(--gp-shell-orange-600);
  border:1px solid var(--gp-shell-orange-600);
}

.gp-shell-footer-email:hover,
.gp-shell-footer-email:focus {
  background:var(--gp-shell-orange-700);
  border-color:var(--gp-shell-orange-700);
  transform:translateY(-1px);
}

.gp-shell-footer-call {
  background:var(--gp-shell-navy-700);
  border:1px solid rgba(255,255,255,.18);
}

.gp-shell-footer-call:hover,
.gp-shell-footer-call:focus {
  background:var(--gp-shell-navy-600);
  border-color:rgba(255,255,255,.28);
  transform:translateY(-1px);
}

.gp-shell-footer-bottom {
  padding:19px 24px;
  background:#08162E;
  border-top:1px solid rgba(255,255,255,.07);
}

.gp-shell-footer-bottom-inner {
  width:min(1200px,100%);
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.gp-shell-footer-bottom p {
  margin:0;
  color:rgba(255,255,255,.4);
  font-size:12px;
}

.gp-shell-footer-bottom nav { display:flex; gap:18px; flex-wrap:wrap; }
.gp-shell-footer-bottom a {
  color:rgba(255,255,255,.47) !important;
  text-decoration:none !important;
  font-size:12px;
}
.gp-shell-footer-bottom a:hover,
.gp-shell-footer-bottom a:focus { color:var(--gp-shell-white) !important; }

/* ---------------- RESPONSIVE ---------------- */
@media (max-width:1140px) {
  .gp-shell-header-inner { width:min(100% - 36px,1200px); grid-template-columns:minmax(180px,230px) 1fr auto; gap:18px; }
  .gp-shell-logo img { width:220px; }
  .gp-shell-menu-desktop > li > a { padding-left:8px; padding-right:8px; font-size:12.5px; }
  .gp-shell-menu-desktop > .menu-item-has-children > a { padding-right:21px; }
  .gp-shell-menu-desktop > .menu-item-has-children > a::before { right:7px; }
  .gp-shell-contact-cta { padding-left:14px; padding-right:14px; }
  .gp-shell-footer-grid { grid-template-columns:1.4fr .8fr .7fr 1fr; gap:36px; }
}

@media (max-width:991px) {
  .gp-shell-header-inner { min-height:70px; grid-template-columns:minmax(0,1fr) auto; gap:15px; }
  .gp-shell-desktop-nav { display:none; }
  .gp-shell-menu-toggle { display:flex; }
  .gp-shell-logo img { width:225px; }
  .gp-shell-contact-cta { display:none; }
  .gp-shell-mobile-header-call { display:inline-flex; min-height:40px; }
  .gp-shell-footer-cta-inner { grid-template-columns:1fr; gap:26px; }
  .gp-shell-footer-cta-btn { justify-self:start; }
  .gp-shell-footer-grid { grid-template-columns:1.35fr 1fr 1fr; }
  .gp-shell-footer-contact { grid-column:2 / 4; }
}

@media (max-width:782px) {
  body.admin-bar .gp-shell-header { top:46px; }
  body.admin-bar .gp-shell-mobile-panel { top:46px; height:calc(100dvh - 46px); }
}

@media (max-width:680px) {
  .gp-shell-header-inner { width:calc(100% - 28px); min-height:66px; }
  .gp-shell-logo img { width:190px; }
  .gp-shell-mobile-top { height:66px; min-height:66px; flex-basis:66px; padding:12px 14px; }
  .gp-shell-mobile-logo img { width:190px; max-width:62vw; }
  .gp-shell-mobile-header-call { min-height:38px; padding:8px 12px; font-size:12px; }
  .gp-shell-mobile-header-call svg { width:14px; height:14px; flex-basis:14px; }
  .gp-shell-menu-toggle { width:40px; height:38px; padding:8px; }
  .gp-shell-header-actions { gap:7px; }
  .gp-shell-footer-cta { padding:50px 18px; }
  .gp-shell-footer-cta p { font-size:15.5px; }
  .gp-shell-menu-mobile > li > a { font-size:18px; }
  .gp-shell-menu-mobile .sub-menu a { font-size:14.5px; }
  .gp-shell-mobile-primary,
  .gp-shell-mobile-call { font-size:14.5px; }
  .gp-shell-footer-col li a,
  .gp-shell-footer-contact p { font-size:14px; }
  .gp-shell-footer-email,
  .gp-shell-footer-call { font-size:13px; }
  .gp-shell-footer-bottom p,
  .gp-shell-footer-bottom a { font-size:12.5px; }
  .gp-shell-footer-main { padding:52px 18px 44px; }
  .gp-shell-footer-grid { grid-template-columns:1fr 1fr; gap:38px 26px; }
  .gp-shell-footer-brand { grid-column:1 / -1; }
  .gp-shell-footer-contact { grid-column:1 / -1; text-align:center; }
  .gp-shell-footer-actions { justify-content:center; }
  .gp-shell-socials { justify-content:center; }
  .gp-shell-footer-bottom { padding:18px; }
  .gp-shell-footer-bottom-inner { align-items:center; flex-direction:column; gap:9px; text-align:center; }
  .gp-shell-footer-bottom nav { justify-content:center; }
  .gp-shell-footer-bottom p { text-align:center; }
}

@media (max-width:420px) {
  .gp-shell-logo img { width:160px; }
  .gp-shell-mobile-logo img { width:160px; }
  .gp-shell-mobile-header-call { padding-left:10px; padding-right:10px; }
  .gp-shell-footer-grid { grid-template-columns:1fr; }
  .gp-shell-footer-brand,
  .gp-shell-footer-contact { grid-column:auto; }
}
