/*
Theme Name: Protech Automotive Solutions
Theme URI: https://protechautomotivesolutions.com
Author: Protech
Author URI: https://protechautomotivesolutions.com
Description: Custom theme for Protech Automotive Solutions - ADAS Calibrations & Advanced Diagnostics
Version: 1.1.1
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: protech
Tags: automotive, business, custom-menu, custom-logo, featured-images, flexible-header, full-width-template, responsive-layout

This theme, like WordPress, is licensed under the GPL.
*/

/* ==========================================================================
   CSS Variables
   ========================================================================== */
:root {
  --color-primary: #002D5B;
  --color-secondary: #00A8E1;
  --color-accent: #FFB81C;
  --color-accent-orange: #FF7A30;
  --color-cyan: #0CB6F4;
  --color-teal: #0CD3A3;
  --color-navy: #0A2646;
  --color-dark: #1a1a1a;
  --color-text: #333333;
  --color-text-light: #666666;
  --color-bg: #ffffff;
  --color-bg-light: #f8f9fa;
  --color-border: #e0e0e0;
  
  --font-primary: "legacy-gotham", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-heading: "legacy-cera-bold", "Helvetica Neue", Helvetica, Arial, sans-serif;
  
  --spacing-xs: 0.5rem;
  --spacing-sm: 1rem;
  --spacing-md: 2rem;
  --spacing-lg: 3rem;
  --spacing-xl: 4rem;
  
  --container-max: 1200px;
  --container-wide: 1400px;
  
  --transition: all 0.3s ease;
}

/* About artboard overrides must remain last in the cascade. */
.protech-about-hero {
  min-height: 620px;
  padding: 150px 24px 0 !important;
  align-items: stretch;
  background: linear-gradient(90deg, rgba(0,19,31,.72), rgba(0,32,49,.35)), url("assets/images/august/contact/contact-wave-background.svg") center 42% / cover no-repeat;
}
.protech-about-hero > .wp-block-group__inner-container { display:flex; min-height:470px; flex-direction:column; justify-content:center; }
.protech-about-jump { position:relative; left:50%; width:100vw; margin:auto 0 0 -50vw; gap:10px; padding:22px max(28px, calc((100vw - 1320px) / 2)); background:rgba(0,45,66,.96); }
.protech-about-history { padding-top:82px; padding-bottom:62px; }
.protech-about-history .wp-block-column { min-height:165px; background:linear-gradient(145deg,rgba(0,93,124,.42),rgba(0,31,48,.12)),linear-gradient(180deg,#004a66,#002f45); box-shadow:inset 0 1px rgba(255,255,255,.12),0 10px 24px rgba(0,38,56,.12); }
.protech-about-who { min-height:0; margin-top:24px !important; margin-bottom:54px !important; padding:58px 68px !important; }
.protech-about-who .wp-block-columns { align-items:center; gap:65px; }
.protech-about-who img { min-height:0; height:330px; }
.protech-about-purpose { padding-top:72px; padding-bottom:78px; }
.protech-about-purpose .wp-block-column { min-height:350px; background:radial-gradient(circle at 50% 0%,rgba(0,132,160,.28),transparent 58%),linear-gradient(155deg,#00445e,#002e44); box-shadow:0 15px 30px rgba(0,38,56,.16); }
.protech-about-purpose .wp-block-column::before { top:42px; width:86px; height:86px; filter:sepia(1) saturate(4) hue-rotate(350deg) brightness(.72); }
.protech-about-impact { min-height:0; margin-top:26px !important; margin-bottom:42px !important; padding:68px !important; background:radial-gradient(circle at 50% -25%,rgba(0,124,157,.52),transparent 56%),linear-gradient(155deg,#00445e,#00283d 72%); box-shadow:0 22px 48px rgba(0,36,53,.18); }
.protech-about-impact .wp-block-column { min-height:170px; border:1px solid rgba(255,255,255,.78); background:linear-gradient(145deg,#fff,#edf0f1); box-shadow:inset 0 1px #fff,0 8px 18px rgba(0,30,45,.12); }
.protech-about-story { padding-top:78px; padding-bottom:80px; }
.protech-about-story .wp-block-column { flex:0 0 min(520px,68vw); min-height:230px; padding:28px 32px; background:linear-gradient(145deg,#00455f,#002e44); }
.protech-about-story .wp-block-column p { font-size:.9rem; line-height:1.42; }
.protech-about-why { min-height:0; margin-top:30px !important; margin-bottom:40px !important; padding:62px 68px !important; }
.protech-about-why img { min-height:0; height:360px; object-position:center; }
.protech-about-why h3 { color:#fff; }
.protech-about-leadership { padding-top:80px; padding-bottom:82px; }
.protech-about-leadership .wp-block-column { position:relative; min-height:430px; padding:0; background:transparent; box-shadow:0 16px 30px rgba(0,36,54,.18); }
.protech-about-leadership figure { height:100%; margin:0; }
.protech-about-leadership img { height:430px; border:0; border-radius:20px; }
.protech-about-leadership h3,.protech-about-leadership .wp-block-column>p,.protech-about-leadership .wp-block-column>a { position:absolute; z-index:2; left:0; width:100%; margin:0; color:#fff; text-align:center; }
.protech-about-leadership h3 { bottom:62px; padding-top:70px; background:linear-gradient(transparent,rgba(0,27,43,.95)); }
.protech-about-leadership .wp-block-column>p { bottom:36px; }
.protech-about-leadership .wp-block-column>a { bottom:15px; color:#00d9f5; }
.protech-about-careers { position:relative; overflow:visible; min-height:0; margin-top:32px !important; margin-bottom:80px !important; padding:62px 72px !important; background:linear-gradient(100deg,rgba(238,240,241,.97) 0 58%,rgba(238,240,241,.74)),url("assets/images/resources/content-bg-desktop.webp") center/cover no-repeat; }
.protech-about-careers .wp-block-columns { min-height:430px; align-items:stretch; }
.protech-about-careers .wp-block-column:first-child { align-self:center; }
.protech-about-careers .wp-block-column:last-child,.protech-about-careers figure { position:relative; min-height:430px; margin:0; }
.protech-about-careers img { position:absolute; right:-30px; bottom:-62px; width:115%; height:520px; min-height:0; object-fit:contain; object-position:center bottom; transform:none; }
.protech-about-press .wp-block-column:first-child h3 { position:relative; padding-left:66px; }
.protech-about-press .wp-block-column:first-child h3::before { content:""; position:absolute; top:50%; left:0; width:44px; height:44px; background:center/contain no-repeat; filter:invert(52%) sepia(98%) saturate(2274%) hue-rotate(354deg) brightness(100%) contrast(103%); transform:translateY(-50%); }
.protech-about-press .wp-block-column:first-child h3:nth-of-type(1)::before { background-image:url("assets/images/redesign/icons/icon-clipboard.svg"); }
.protech-about-press .wp-block-column:first-child h3:nth-of-type(2)::before { background-image:url("assets/images/redesign/icons/icon-identify.svg"); }
.protech-about-press .wp-block-column:first-child h3:nth-of-type(3)::before { background-image:url("assets/images/redesign/icons/icon-mobile.svg"); }
@media(max-width:782px){
 .protech-about-hero{min-height:690px;padding:112px 18px 0!important}.protech-about-hero>.wp-block-group__inner-container{min-height:578px}.protech-about-jump{padding:18px}.protech-about-who{margin-bottom:28px!important;padding:38px 24px!important}.protech-about-who img{height:260px}.protech-about-purpose .wp-block-column::before{width:58px;height:58px}.protech-about-story .wp-block-column{flex-basis:86%;min-height:210px}.protech-about-why img{height:260px}.protech-about-leadership .wp-block-column,.protech-about-leadership img{min-height:0;height:330px}.protech-about-careers{margin-bottom:65px!important;padding-bottom:0!important}.protech-about-careers .wp-block-columns{min-height:0}.protech-about-careers .wp-block-column:last-child,.protech-about-careers figure{min-height:360px}.protech-about-careers img{right:-20px;bottom:0;height:390px}
}

/* ==========================================================================
   2026 Redesign Page Blocks
   ========================================================================== */
.protech-redesign-page {
  --pt-rd-navy: #001A29;
  --pt-rd-blue: #003A54;
  --pt-rd-cyan: #00D9FF;
  --pt-rd-white: #ffffff;
  --pt-rd-muted: #D6E7EE;
  --pt-rd-ink: #07344A;
  --pt-rd-card: #003A54;
  --pt-rd-max: 1200px;
  --pt-rd-type-hero: clamp(3rem, 5.6vw, 6.7rem);
  --pt-rd-type-eyebrow: clamp(1.55rem, 2.15vw, 2.55rem);
  --pt-rd-type-section: clamp(2.2rem, 4vw, 5rem);
  --pt-rd-type-callout: clamp(2.35rem, 4vw, 3.75rem);
  --pt-rd-type-card-title: clamp(1.6rem, 2.1vw, 2.35rem);
  --pt-rd-type-feature-title: clamp(2.45rem, 3vw, 3.05rem);
  --pt-rd-type-step-title: clamp(1.28rem, 1.55vw, 1.62rem);
  overflow: hidden;
  color: var(--pt-rd-ink);
  background: #fff;
}

.protech-redesign-page.alignfull,
.protech-redesign-page .alignfull {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.protech-redesign-page * {
  min-width: 0;
}

.protech-redesign-page.wp-block-group,
.protech-redesign-page .wp-block-group:not([class*="protech-redesign-"]) {
  padding: 0;
}

.protech-redesign-page .wp-block-group__inner-container {
  width: 100%;
}

.protech-redesign-page h1,
.protech-redesign-page h2,
.protech-redesign-page h3,
.protech-redesign-page h4 {
  color: inherit;
  font-family: var(--font-primary);
  font-weight: 500;
}

.protech-redesign-section {
  padding: clamp(36px, 3.8vw, 58px) 24px;
  position: relative;
}

.protech-redesign-section > .wp-block-group__inner-container,
.protech-redesign-inner {
  max-width: var(--pt-rd-max);
  margin: 0 auto;
}

.protech-redesign-hero {
  position: relative;
  overflow: hidden;
  min-height: clamp(430px, 38vw, 720px);
  padding: 118px 24px 90px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: var(--pt-rd-white);
  background: var(--pt-rd-navy);
}

.protech-redesign-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(rgba(0, 26, 41, 0.62), rgba(0, 26, 41, 0.68));
  pointer-events: none;
}

.protech-redesign-adas .protech-redesign-hero::before {
  background: linear-gradient(rgba(0, 26, 41, 0.5), rgba(0, 26, 41, 0.7));
}

.protech-redesign-collision .protech-redesign-hero::before {
  background: linear-gradient(rgba(0, 26, 41, 0.42), rgba(0, 26, 41, 0.72));
}

.protech-redesign-page .protech-redesign-hero .protech-redesign-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  pointer-events: none;
}

.protech-redesign-page .protech-redesign-hero .protech-redesign-hero-bg img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}

.protech-redesign-hero .wp-block-group__inner-container {
  position: relative;
  z-index: 2;
  max-width: min(var(--pt-rd-max), calc(100vw - 48px));
  margin: 0 auto;
}

.protech-redesign-hero > .wp-block-group__inner-container {
  position: static;
}

.protech-redesign-hero > .wp-block-group__inner-container > :not(.protech-redesign-hero-bg) {
  position: relative;
  z-index: 2;
}

.protech-redesign-hero > :not(.protech-redesign-hero-bg):not(.wp-block-group__inner-container) {
  position: relative;
  z-index: 2;
}

.protech-redesign-eyebrow {
  margin: 0 0 22px;
  color: var(--pt-rd-white);
  font-family: var(--font-primary);
  font-size: var(--pt-rd-type-eyebrow);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.18;
  text-transform: uppercase;
}

.protech-redesign-hero h1 {
  margin: 0 auto 44px;
  max-width: min(100%, var(--pt-rd-max));
  color: var(--pt-rd-cyan);
  font-size: var(--pt-rd-type-hero);
  font-weight: 400;
  line-height: 0.98;
  overflow-wrap: break-word;
  text-wrap: balance;
}

.protech-redesign-buttons {
  display: flex;
  justify-content: center;
  gap: 28px;
  flex-wrap: wrap;
}

.protech-redesign-page .wp-block-button__link {
  min-width: 220px;
  border-radius: 999px;
  padding: 14px 30px;
  font-family: var(--font-heading);
  font-size: 0.95rem;
  line-height: 1.2;
  text-decoration: none;
}

.protech-redesign-page .protech-redesign-btn-primary .wp-block-button__link {
  background: var(--pt-rd-cyan);
  color: var(--pt-rd-navy);
  border: 1px solid var(--pt-rd-cyan);
}

.protech-redesign-page .protech-redesign-btn-outline .wp-block-button__link {
  background: transparent;
  color: var(--pt-rd-white);
  border: 1px solid var(--pt-rd-cyan);
}

.protech-redesign-light {
  background-color: #fff;
  background-image: url("assets/images/redesign/adas-light-wave-pattern.svg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}

.protech-redesign-dark {
  color: var(--pt-rd-white);
  background:
    radial-gradient(circle at 18% 40%, rgba(0, 217, 255, 0.3), transparent 22%),
    repeating-radial-gradient(circle at 10% 60%, rgba(0, 217, 255, 0.32) 0 2px, transparent 2px 18px),
    linear-gradient(180deg, #001A29 0%, #003A54 100%);
}

.protech-redesign-section h2 {
  margin: 0 auto 18px;
  max-width: 980px;
  color: var(--pt-rd-ink);
  font-size: var(--pt-rd-type-section);
  font-weight: 400;
  line-height: 1.04;
  text-align: center;
}

.protech-redesign-dark h2,
.protech-redesign-dark h3,
.protech-redesign-dark p {
  color: var(--pt-rd-white);
}

.protech-redesign-dark a {
  color: var(--pt-rd-cyan);
}

.protech-redesign-lede {
  max-width: min(1120px, calc(100vw - 48px));
  margin: 0 auto 34px;
  font-size: clamp(1rem, 1.35vw, 1.35rem);
  line-height: 1.45;
  text-align: center;
  overflow-wrap: break-word;
}

.protech-redesign-split,
.protech-redesign-two-up {
  max-width: var(--pt-rd-max);
  margin: 0 auto;
}

.protech-redesign-page .protech-redesign-split,
.protech-redesign-page .protech-redesign-two-up,
.protech-redesign-page .protech-redesign-card-grid,
.protech-redesign-page .protech-redesign-steps,
.protech-redesign-page .protech-redesign-risk-grid,
.protech-redesign-page .protech-redesign-workflow-grid,
.protech-redesign-page .protech-redesign-workflow-item {
  padding: 0;
}

.protech-redesign-split > .wp-block-group__inner-container,
.protech-redesign-two-up > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr);
  gap: clamp(32px, 5vw, 74px);
  align-items: center;
  max-width: var(--pt-rd-max);
  margin: 0 auto;
}

.protech-redesign-split,
.protech-redesign-two-up {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr);
  gap: clamp(32px, 5vw, 74px);
  align-items: center;
}

.protech-redesign-split:has(> .wp-block-group__inner-container),
.protech-redesign-two-up:has(> .wp-block-group__inner-container),
.protech-redesign-card-grid:has(> .wp-block-group__inner-container),
.protech-redesign-steps:has(> .wp-block-group__inner-container),
.protech-redesign-risk-grid:has(> .wp-block-group__inner-container),
.protech-redesign-workflow-grid:has(> .wp-block-group__inner-container) {
  display: block;
}

.protech-redesign-two-up h2,
.protech-redesign-two-up h3,
.protech-redesign-two-up p {
  text-align: left;
}

.protech-redesign-two-up h2 {
  margin-left: 0;
  margin-right: 0;
}

.protech-redesign-media-card {
  overflow: hidden;
  border-radius: 28px;
  box-shadow: 0 34px 58px rgba(0, 26, 41, 0.24);
}

.protech-redesign-media-card img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.protech-redesign-adas .protech-redesign-media-card {
  aspect-ratio: 1 / 1;
}

.protech-redesign-adas .protech-redesign-media-card img {
  height: 100%;
}

.protech-redesign-media-card a,
.protech-redesign-media-card iframe {
  display: block;
  width: 100%;
}

.protech-redesign-media-card iframe {
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
}

.wp-block-embed.protech-redesign-media-card {
  margin: 0;
  background: #001b2d;
}

.wp-block-embed.protech-redesign-media-card .wp-block-embed__wrapper {
  margin: 0;
}

.protech-redesign-video-trigger {
  position: relative;
  aspect-ratio: 16 / 9;
  background: #001b2d;
}

.protech-redesign-video-trigger::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(0, 26, 41, 0.04), rgba(0, 26, 41, 0.24));
  pointer-events: none;
  transition: background 180ms ease;
}

.protech-redesign-video-trigger a {
  position: relative;
  color: inherit;
}

.protech-redesign-video-trigger a::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  width: 86px;
  height: 86px;
  border-radius: 999px;
  background: var(--pt-rd-cyan);
  box-shadow: 0 18px 34px rgba(0, 26, 41, 0.32);
  transform: translate(-50%, -50%);
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.protech-redesign-video-trigger a::after {
  content: "";
  position: absolute;
  left: calc(50% + 4px);
  top: 50%;
  z-index: 3;
  width: 0;
  height: 0;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
  border-left: 23px solid #fff;
  transform: translate(-50%, -50%);
}

.protech-redesign-video-trigger:hover::before,
.protech-redesign-video-trigger:focus-within::before {
  background: linear-gradient(180deg, rgba(0, 26, 41, 0.02), rgba(0, 26, 41, 0.34));
}

.protech-redesign-video-trigger:hover a::before,
.protech-redesign-video-trigger:focus-within a::before {
  transform: translate(-50%, -50%) scale(1.05);
  box-shadow: 0 22px 44px rgba(0, 26, 41, 0.38);
}

.protech-redesign-video-trigger a,
.protech-redesign-video-trigger img {
  height: 100%;
}

.protech-redesign-video-trigger img {
  min-height: 320px;
}

.protech-video-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: clamp(18px, 3vw, 44px);
}

.protech-video-modal.is-open {
  display: flex;
}

.protech-video-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 20, 36, 0.82);
  backdrop-filter: blur(8px);
}

.protech-video-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(1080px, 100%);
}

.protech-video-modal__frame {
  overflow: hidden;
  aspect-ratio: 16 / 9;
  border: 1px solid rgba(0, 217, 255, 0.46);
  border-radius: 24px;
  background: #001b2d;
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.42);
}

.protech-video-modal__frame iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.protech-video-modal__close {
  position: absolute;
  right: -16px;
  top: -16px;
  z-index: 2;
  width: 46px;
  height: 46px;
  border: 0;
  border-radius: 999px;
  color: var(--pt-rd-navy);
  background: var(--pt-rd-cyan);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.28);
  cursor: pointer;
  font-size: 30px;
  line-height: 1;
}

.has-protech-video-modal {
  overflow: hidden;
}

.protech-redesign-faq {
  margin-top: 18px;
  max-width: 720px;
}

.protech-redesign-faq .wp-block-details {
  border-bottom: 1px solid rgba(0, 58, 84, 0.18);
  padding: 22px 0;
}

.protech-redesign-faq summary {
  cursor: pointer;
  color: var(--pt-rd-ink);
  font-family: var(--font-heading);
  font-size: 1.12rem;
}

.protech-redesign-faq summary::marker {
  color: var(--pt-rd-cyan);
}

.protech-redesign-feature-card {
  max-width: var(--pt-rd-max);
  margin: 0 auto;
  padding: clamp(28px, 4vw, 56px);
  border-radius: 26px;
  color: var(--pt-rd-white);
  background: linear-gradient(135deg, #00253B 0%, #00506D 100%);
  box-shadow: 0 28px 60px rgba(0, 26, 41, 0.28);
}

.protech-redesign-feature-card .wp-block-columns {
  align-items: center !important;
}

.protech-redesign-feature-card .wp-block-columns,
.protech-redesign-testimonial .wp-block-columns,
.protech-redesign-assessment .wp-block-columns {
  gap: clamp(32px, 4vw, 64px);
  margin-bottom: 0;
}

.protech-redesign-feature-card h3,
.protech-redesign-feature-card p {
  color: var(--pt-rd-white);
}

.protech-redesign-feature-card h2 {
  color: var(--pt-rd-cyan);
  text-align: left;
}

.protech-redesign-feature-card h3 {
  text-align: left;
}

.protech-redesign-card-grid > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px;
  max-width: var(--pt-rd-max);
  margin: 44px auto 0;
}

.protech-redesign-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 36px;
  max-width: var(--pt-rd-max);
  margin: 44px auto 0;
}

.protech-redesign-info-card {
  min-height: 360px;
  height: 100%;
  padding: 34px 26px 30px;
  border-radius: 18px;
  color: var(--pt-rd-white);
  background:
    repeating-linear-gradient(52deg, rgba(0, 217, 255, 0.08) 0 1px, transparent 1px 9px),
    linear-gradient(180deg, #004E6E 0%, #002A43 100%);
  box-shadow: 0 28px 52px rgba(0, 26, 41, 0.22);
  text-align: center;
}

.protech-redesign-info-card > .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.protech-redesign-info-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}

.protech-redesign-info-card > .wp-block-group__inner-container > * {
  margin-block-start: 0;
  margin-block-end: 0;
}

.protech-redesign-card-grid > .protech-redesign-info-card,
.protech-redesign-info-card > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.protech-redesign-info-card::before,
.protech-redesign-risk-item::before,
.protech-redesign-workflow-item::before {
  content: none;
  display: none;
}

.protech-redesign-icon {
  width: 84px;
  height: 84px;
  margin: 0 auto 22px;
  opacity: 0.95;
}

.protech-redesign-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.protech-redesign-info-card .protech-redesign-icon {
  width: 86px;
  height: 86px;
  margin: 0 auto 24px !important;
}

.protech-redesign-info-card h3 {
  margin: 12px 0 10px !important;
  color: var(--pt-rd-cyan);
  font-size: var(--pt-rd-type-feature-title);
  font-weight: 400;
  line-height: 1;
}

.protech-redesign-info-card .protech-redesign-card-kicker {
  margin: 0 !important;
  color: var(--pt-rd-white);
  font-family: var(--font-primary);
  font-size: clamp(0.92rem, 1.1vw, 1.12rem);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.08;
  text-transform: uppercase;
}

.protech-redesign-info-card p {
  margin: 0 !important;
  color: var(--pt-rd-white);
  max-width: 100%;
  font-size: clamp(0.86rem, 0.98vw, 1rem);
  font-weight: 400;
  line-height: 1.22;
}

.protech-redesign-steps > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px 86px;
  max-width: var(--pt-rd-max);
  margin: 48px auto 0;
}

.protech-redesign-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px 86px;
  max-width: var(--pt-rd-max);
  margin: 48px auto 0;
}

.protech-redesign-step {
  padding: 28px 32px;
  border: 1px solid rgba(0, 217, 255, 0.75);
  border-radius: 12px;
  background: rgba(0, 58, 84, 0.44);
}

.protech-redesign-step h3 {
  margin-bottom: 10px;
  color: var(--pt-rd-cyan);
  font-size: var(--pt-rd-type-step-title);
}

.protech-redesign-step p {
  margin-bottom: 0;
  font-size: 0.98rem;
}

.protech-redesign-step.is-centered {
  grid-column: 1 / -1;
  justify-self: center;
  max-width: 530px;
}

.protech-redesign-scheduling-section.protech-redesign-dark {
  overflow: hidden;
  background: #001436;
}

.protech-redesign-scheduling-section::before {
  content: none;
  display: none;
}

.protech-redesign-scheduling-section > :not(.protech-redesign-steps):not(.protech-redesign-scheduling-bg) {
  position: relative;
  z-index: 1;
}

.protech-redesign-scheduling-section > .wp-block-group__inner-container {
  position: static;
  max-width: none;
  margin: 0;
}

.protech-redesign-scheduling-section > .wp-block-group__inner-container > :not(.protech-redesign-scheduling-bg) {
  position: relative;
  z-index: 1;
  margin-left: auto;
  margin-right: auto;
}

.protech-redesign-scheduling-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  max-width: none !important;
  margin: 0 !important;
  pointer-events: none;
}

.protech-redesign-scheduling-bg img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none;
  object-fit: fill;
}

.protech-redesign-scheduling-section h2 {
  max-width: 1160px;
  color: var(--pt-rd-cyan);
  font-size: var(--pt-rd-type-section);
  font-weight: 400;
  line-height: 1.08;
}

.protech-redesign-scheduling-section .protech-redesign-lede {
  max-width: 1050px;
  margin-bottom: 0;
}

.protech-redesign-scheduling-section .protech-redesign-steps > .wp-block-group__inner-container {
  position: relative;
  gap: 70px 124px;
  margin-top: clamp(60px, 5.4vw, 86px);
  max-width: 1040px;
}

.protech-redesign-scheduling-section .protech-redesign-steps {
  --pt-step-column-gap: 124px;
  --pt-step-row-gap: 70px;
  position: relative;
  gap: 70px 124px;
  margin-top: clamp(60px, 5.4vw, 86px);
  max-width: 1040px;
}

.protech-redesign-scheduling-section .protech-redesign-steps > .wp-block-group__inner-container::before {
  content: none;
  display: none;
}

.protech-redesign-scheduling-section .protech-redesign-steps > .wp-block-group__inner-container::after {
  content: none;
  display: none;
}

.protech-redesign-schedule-lines,
.protech-redesign-schedule-dots {
  display: none;
}

.protech-redesign-schedule-lines {
  z-index: 0;
  opacity: 0.9;
}

.protech-redesign-schedule-dots {
  z-index: 2;
  opacity: 1;
}

.protech-redesign-schedule-lines img,
.protech-redesign-schedule-dots img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: fill;
}

.protech-redesign-scheduling-section .protech-redesign-step {
  position: relative;
  z-index: 1;
  min-height: 205px;
  margin: 0 !important;
  padding: 42px 34px 26px;
  border-color: rgba(0, 217, 255, 0.75);
  border-radius: 14px;
  background: rgba(0, 27, 45, 0.96);
  text-align: center;
}

/* Anchor the scheduling connectors to the cards instead of a fixed-height SVG. */
:is(.protech-redesign-steps, .protech-redesign-steps > .wp-block-group__inner-container)
  > .protech-redesign-step:nth-of-type(1)::after,
:is(.protech-redesign-steps, .protech-redesign-steps > .wp-block-group__inner-container)
  > .protech-redesign-step:nth-of-type(3)::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  z-index: 0;
  width: var(--pt-step-column-gap);
  border-top: 3px solid #00d9ff;
  pointer-events: none;
}

:is(.protech-redesign-steps, .protech-redesign-steps > .wp-block-group__inner-container)
  > .protech-redesign-step:nth-of-type(2)::before,
:is(.protech-redesign-steps, .protech-redesign-steps > .wp-block-group__inner-container)
  > .protech-redesign-step:nth-of-type(4)::before {
  content: "";
  position: absolute;
  top: calc(50% - 15px);
  left: -16px;
  z-index: 3;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  border: 3px solid #00d9ff;
  border-radius: 50%;
  background: #001b2d;
  pointer-events: none;
}

:is(.protech-redesign-steps, .protech-redesign-steps > .wp-block-group__inner-container)
  > .protech-redesign-step:nth-of-type(2)::after {
  content: "";
  position: absolute;
  top: 100%;
  right: 50%;
  z-index: 0;
  box-sizing: border-box;
  width: calc(100% + var(--pt-step-column-gap));
  height: var(--pt-step-row-gap);
  border-right: 3px solid #00d9ff;
  border-bottom: 3px solid #00d9ff;
  border-bottom-left-radius: 18px;
  pointer-events: none;
}

:is(.protech-redesign-steps, .protech-redesign-steps > .wp-block-group__inner-container)
  > .protech-redesign-step:nth-of-type(3)::before,
:is(.protech-redesign-steps, .protech-redesign-steps > .wp-block-group__inner-container)
  > .protech-redesign-step:nth-of-type(5)::before {
  content: "";
  position: absolute;
  top: -16px;
  left: 50%;
  z-index: 3;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  border: 3px solid #00d9ff;
  border-radius: 50%;
  background: #001b2d;
  transform: translateX(-50%);
  pointer-events: none;
}

:is(.protech-redesign-steps, .protech-redesign-steps > .wp-block-group__inner-container)
  > .protech-redesign-step:nth-of-type(4)::after {
  content: "";
  position: absolute;
  top: 100%;
  right: 50%;
  z-index: 0;
  box-sizing: border-box;
  width: calc(50% + (var(--pt-step-column-gap) / 2));
  height: var(--pt-step-row-gap);
  border-right: 3px solid #00d9ff;
  border-bottom: 3px solid #00d9ff;
  border-bottom-left-radius: 18px;
  pointer-events: none;
}

.protech-redesign-scheduling-section .protech-redesign-step h3 {
  margin: 0 0 18px !important;
  color: var(--pt-rd-cyan);
  font-size: var(--pt-rd-type-step-title);
  font-weight: 600;
  line-height: 1.08;
}

.protech-redesign-scheduling-section .protech-redesign-step p {
  margin: 0 !important;
  font-size: 0.92rem;
  line-height: 1.28;
}

.protech-redesign-operation .wp-block-details,
.protech-redesign-workflow-list .wp-block-group {
  border-bottom: 1px solid rgba(255, 255, 255, 0.24);
  padding: 18px 0;
}

.protech-redesign-operation.protech-redesign-dark {
  background:
    radial-gradient(ellipse at 30% 62%, rgba(0, 217, 255, 0.12), transparent 48%),
    linear-gradient(180deg, #00202e 0%, #00384b 100%);
}

.protech-redesign-operation h2 {
  color: var(--pt-rd-cyan);
}

.protech-redesign-operation summary {
  color: var(--pt-rd-white);
  font-family: var(--font-heading);
  font-size: 1.25rem;
}

.protech-redesign-operation summary::marker {
  color: var(--pt-rd-cyan);
}

.protech-redesign-risk-grid,
.protech-redesign-risk-grid > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 36px 76px;
  max-width: var(--pt-rd-max);
  margin: 42px auto 0;
  text-align: center;
}

.protech-redesign-risk-item h3 {
  margin: 0 0 12px !important;
  margin-block-start: 0 !important;
  color: var(--pt-rd-ink);
  font-size: var(--pt-rd-type-card-title);
  line-height: 1.08;
}

.protech-redesign-collision .protech-redesign-risk-item .protech-redesign-icon {
  width: 112px;
  height: 112px;
  margin: 0 auto 20px;
}

.protech-redesign-risk-item p {
  margin: 0 !important;
  margin-block-start: 0 !important;
  font-size: 1rem;
  line-height: 1.45;
}

.protech-redesign-risk-item:last-child {
  grid-column: 1 / -1;
  max-width: 520px;
  justify-self: center;
}

.protech-redesign-testimonial {
  max-width: var(--pt-rd-max);
  margin: 0 auto;
  padding: clamp(28px, 4vw, 54px);
  border-radius: 26px;
  color: var(--pt-rd-white);
  background: linear-gradient(135deg, #003A54 0%, #00657E 100%);
}

.protech-redesign-testimonial h3,
.protech-redesign-testimonial p {
  color: var(--pt-rd-white);
  text-align: left;
}

.protech-redesign-testimonial h2 {
  color: var(--pt-rd-cyan);
  text-align: left;
}

.protech-redesign-workflow-grid,
.protech-redesign-workflow-grid > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px 72px;
  max-width: var(--pt-rd-max);
  margin: 44px auto 0;
}

.protech-redesign-workflow-item {
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: 0 22px;
  align-items: start;
  padding: 0;
}

.protech-redesign-workflow-item > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: 22px;
  align-items: start;
}

.protech-redesign-workflow-item::before {
  margin: 0;
}

.protech-redesign-workflow-item .protech-redesign-icon {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 84px;
  height: 84px;
  margin: 0;
}

.protech-redesign-workflow-item h3 {
  grid-column: 2;
  margin: 0 0 8px !important;
  margin-block-start: 0 !important;
  color: var(--pt-rd-cyan);
  font-size: 1.35rem;
}

.protech-redesign-workflow-item p {
  grid-column: 2;
  margin: 0 !important;
  margin-block-start: 0 !important;
}

.protech-redesign-workflow-section.protech-redesign-dark,
.protech-redesign-shop-assessment-section.protech-redesign-dark {
  background:
    radial-gradient(circle at 50% 0%, rgba(0, 88, 110, 0.18), transparent 42%),
    linear-gradient(180deg, #001d2a 0%, #003447 100%);
}

.protech-redesign-shop-assessment-section.protech-redesign-dark {
  background: #003447;
}

.protech-redesign-workflow-section {
  padding-top: clamp(72px, 6.4vw, 116px);
  padding-bottom: clamp(64px, 5.2vw, 96px);
}

.protech-redesign-workflow-section h2 {
  max-width: 960px;
  color: var(--pt-rd-cyan);
  font-size: var(--pt-rd-type-section);
  font-weight: 500;
  line-height: 1.12;
}

.protech-redesign-workflow-section .protech-redesign-lede {
  max-width: 980px;
  margin-bottom: 0;
}

.protech-redesign-workflow-section .protech-redesign-workflow-grid,
.protech-redesign-workflow-section .protech-redesign-workflow-grid > .wp-block-group__inner-container {
  margin-top: clamp(34px, 3.2vw, 48px);
  gap: 12px 86px;
}

.protech-redesign-workflow-section .protech-redesign-workflow-item {
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 0 18px;
  align-items: start;
}

.protech-redesign-workflow-section .protech-redesign-workflow-item > .wp-block-group__inner-container {
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 18px;
}

.protech-redesign-workflow-section .protech-redesign-workflow-item .protech-redesign-icon {
  width: 104px;
  height: 104px;
  margin-top: 0;
  align-self: start;
}

.protech-redesign-workflow-section .protech-redesign-workflow-item h3 {
  font-size: clamp(1.35rem, 1.75vw, 1.7rem);
  line-height: 1.12;
}

.protech-redesign-assessment {
  max-width: var(--pt-rd-max);
  margin: 0 auto;
  padding: clamp(28px, 4vw, 56px);
  border-radius: 26px;
  background: #eef2f3;
}

.protech-redesign-assessment .wp-block-columns {
  align-items: center !important;
}

.protech-redesign-assessment .wp-block-column:last-child {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

.protech-redesign-assessment h2,
.protech-redesign-assessment h3 {
  color: var(--pt-rd-ink);
  text-align: left;
}

.protech-redesign-assessment p,
.protech-redesign-assessment li {
  color: var(--pt-rd-ink);
}

.protech-redesign-assessment img {
  width: auto;
  max-width: 100%;
  max-height: 470px;
  object-fit: contain;
}

.protech-redesign-assessment figure {
  margin: 0;
}

.protech-redesign-assessment.protech-redesign-workflow-callout {
  position: relative;
  overflow: hidden;
  min-height: 455px;
  padding: 54px 56px;
  background-color: #eef2f3;
}

.protech-redesign-workflow-bg-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  pointer-events: none;
}

.protech-redesign-workflow-bg-image img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
}

.protech-redesign-workflow-callout h2 {
  max-width: 470px;
  margin-bottom: 18px;
  font-size: var(--pt-rd-type-callout);
  line-height: 1.02;
}

.protech-redesign-workflow-callout p {
  max-width: 520px;
}

.protech-redesign-workflow-callout .wp-block-columns {
  position: relative;
  z-index: 1;
  min-height: 345px;
}

.protech-redesign-workflow-callout .wp-block-column:first-child {
  align-self: center;
  flex-basis: 42% !important;
}

.protech-redesign-workflow-callout .wp-block-column:last-child {
  display: none;
}

.protech-redesign-shop-assessment {
  padding: 48px 56px;
}

.protech-redesign-shop-assessment h2 {
  max-width: 560px;
  font-size: clamp(2.45rem, 4vw, 4.1rem);
  line-height: 1.04;
}

.protech-redesign-shop-assessment img {
  max-height: 390px;
}

@media (max-width: 900px) {
  .protech-redesign-scheduling-section .protech-redesign-step::before,
  .protech-redesign-scheduling-section .protech-redesign-step::after {
    content: none !important;
    display: none !important;
  }

  .protech-redesign-collision > .wp-block-group__inner-container {
    display: flex;
    flex-direction: column;
  }

  .protech-redesign-collision .protech-redesign-shop-assessment-section {
    order: 5;
  }

  .protech-redesign-collision .protech-redesign-workflow-section {
    order: 6;
  }

  .protech-redesign-hero {
    min-height: 520px;
    padding: 106px 22px 72px;
  }

  .protech-redesign-hero h1 {
    max-width: 330px;
    margin-bottom: 30px;
    font-size: clamp(2.25rem, 9.6vw, 3.1rem);
    line-height: 1.02;
  }

  .protech-redesign-buttons {
    gap: 14px;
  }

  .protech-redesign-page .wp-block-button,
  .protech-redesign-page .wp-block-button__link {
    width: 100%;
  }

  .protech-redesign-split > .wp-block-group__inner-container,
  .protech-redesign-two-up > .wp-block-group__inner-container {
    grid-template-columns: 1fr;
  }

  .protech-redesign-split,
  .protech-redesign-two-up {
    grid-template-columns: 1fr;
  }

  .protech-redesign-section {
    padding: 42px 22px;
  }

  .protech-redesign-section > .wp-block-group__inner-container,
  .protech-redesign-inner {
    max-width: calc(100vw - 44px);
  }

  .protech-redesign-section h2 {
    max-width: calc(100vw - 44px);
    font-size: clamp(2rem, 8vw, 2.7rem);
    overflow-wrap: break-word;
    text-wrap: balance;
  }

  .protech-redesign-lede {
    max-width: calc(100vw - 44px);
    font-size: 1rem;
  }

  .protech-redesign-card-grid > .wp-block-group__inner-container,
  .protech-redesign-steps > .wp-block-group__inner-container,
  .protech-redesign-risk-grid > .wp-block-group__inner-container,
  .protech-redesign-workflow-grid > .wp-block-group__inner-container {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .protech-redesign-card-grid,
  .protech-redesign-steps,
  .protech-redesign-risk-grid,
  .protech-redesign-workflow-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .protech-redesign-step.is-centered,
  .protech-redesign-risk-item:last-child {
    grid-column: auto;
    max-width: none;
  }

  .protech-redesign-workflow-item {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .protech-redesign-workflow-item > .wp-block-group__inner-container {
    display: block;
  }

  .protech-redesign-workflow-item .protech-redesign-icon {
    margin: 0 auto;
  }

  .protech-redesign-scheduling-section h2 {
    font-size: clamp(2.25rem, 8.5vw, 3.25rem);
  }

  .protech-redesign-scheduling-section .protech-redesign-steps > .wp-block-group__inner-container {
    gap: 22px;
    margin-top: 34px;
  }

  .protech-redesign-scheduling-section .protech-redesign-steps > .wp-block-group__inner-container::before,
  .protech-redesign-scheduling-section .protech-redesign-steps > .wp-block-group__inner-container::after {
    display: none;
  }

  .protech-redesign-scheduling-section .protech-redesign-step {
    min-height: 0;
    padding: 26px 24px;
  }

  .protech-redesign-workflow-callout,
  .protech-redesign-shop-assessment {
    padding: 34px 26px;
  }

  .protech-redesign-assessment.protech-redesign-workflow-callout {
    min-height: 620px;
  }

  .protech-redesign-workflow-bg-image img {
    object-position: center bottom;
  }

  .protech-redesign-workflow-callout .wp-block-columns {
    min-height: auto;
  }

  .protech-redesign-workflow-callout .wp-block-column:first-child {
    flex-basis: 100% !important;
  }

  .protech-redesign-workflow-callout h2,
  .protech-redesign-shop-assessment h2 {
    max-width: none;
    font-size: clamp(2rem, 8vw, 2.6rem);
  }

  .protech-redesign-workflow-callout img,
  .protech-redesign-shop-assessment img {
    max-height: 320px;
  }
}

/* ==========================================================================
   Base Styles
   ========================================================================== */
* {
  box-sizing: border-box;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  padding: 0;
  font-family: var(--font-primary);
  font-size: 1rem;
  line-height: 1.6;
  color: var(--color-text);
  background-color: var(--color-bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ==========================================================================
   Typography
   ========================================================================== */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom: var(--spacing-sm);
  color: var(--color-dark);
}

h1 {
  font-size: 3rem;
  line-height: 1.1;
}

h2 {
  font-size: 2.5rem;
}

h3 {
  font-size: 2rem;
}

h4 {
  font-size: 1.5rem;
}

h5 {
  font-size: 1.25rem;
}

h6 {
  font-size: 1rem;
}

p {
  margin-top: 0;
  margin-bottom: var(--spacing-sm);
}

a {
  color: var(--color-secondary);
  text-decoration: none;
  transition: var(--transition);
}

a:hover {
  color: var(--color-primary);
}

/* ==========================================================================
   Layout
   ========================================================================== */
.container {
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}

.container-wide {
  max-width: var(--container-wide);
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}

.container-fluid {
  width: 100%;
  padding: 0 var(--spacing-md);
}

/* ==========================================================================
   Buttons
   ========================================================================== */
.btn {
  display: inline-block;
  padding: 0.75rem 2rem;
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  border: 2px solid transparent;
  border-radius: 4px;
  cursor: pointer;
  transition: var(--transition);
  line-height: 1.5;
}

.btn-primary {
  background-color: var(--color-secondary);
  color: #ffffff;
  border-color: var(--color-secondary);
}

.btn-primary:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: #ffffff;
}

.btn-secondary {
  background-color: var(--color-primary);
  color: #ffffff;
  border-color: var(--color-primary);
}

.btn-secondary:hover {
  background-color: var(--color-secondary);
  border-color: var(--color-secondary);
  color: #ffffff;
}

.btn-outline {
  background-color: transparent;
  color: var(--color-primary);
  border-color: var(--color-primary);
}

.btn-outline:hover {
  background-color: var(--color-primary);
  color: #ffffff;
}

/* ==========================================================================
   Utility Classes
   ========================================================================== */
.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.mt-0 { margin-top: 0; }
.mt-1 { margin-top: var(--spacing-xs); }
.mt-2 { margin-top: var(--spacing-sm); }
.mt-3 { margin-top: var(--spacing-md); }
.mt-4 { margin-top: var(--spacing-lg); }
.mt-5 { margin-top: var(--spacing-xl); }

.mb-0 { margin-bottom: 0; }
.mb-1 { margin-bottom: var(--spacing-xs); }
.mb-2 { margin-bottom: var(--spacing-sm); }
.mb-3 { margin-bottom: var(--spacing-md); }
.mb-4 { margin-bottom: var(--spacing-lg); }
.mb-5 { margin-bottom: var(--spacing-xl); }

.py-0 { padding-top: 0; padding-bottom: 0; }
.py-1 { padding-top: var(--spacing-xs); padding-bottom: var(--spacing-xs); }
.py-2 { padding-top: var(--spacing-sm); padding-bottom: var(--spacing-sm); }
.py-3 { padding-top: var(--spacing-md); padding-bottom: var(--spacing-md); }
.py-4 { padding-top: var(--spacing-lg); padding-bottom: var(--spacing-lg); }
.py-5 { padding-top: var(--spacing-xl); padding-bottom: var(--spacing-xl); }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 768px) {
  html {
    font-size: 14px;
  }
  
  h1 {
    font-size: 2rem;
  }
  
  h2 {
    font-size: 1.75rem;
  }
  
  h3 {
    font-size: 1.5rem;
  }
  
  .container,
  .container-wide {
    padding: 0 var(--spacing-sm);
  }
}

/* ==========================================================================
   Header Styles
   ========================================================================== */
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 12px 0;
  background: #033754;
  transition: var(--transition);
}

.site-header.scrolled {
  box-shadow: none;
}

.header-top {
  display: none;
}

.header-main {
  padding: 0;
}

.header-main .container {
  max-width: 1340px;
}

.header-main-content {
  display: flex;
  align-items: center;
  gap: 14px;
}

.site-branding {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.site-title {
  margin: 0;
  font-size: 1rem;
  line-height: 1;
}

.site-title a {
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #e5f6ff;
}

.custom-logo-link img {
  max-height: 22px;
  width: auto;
}

.main-navigation {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
  justify-content: flex-end;
}

.primary-menu-container {
  flex: 1;
  min-width: 0;
  display: flex;
  justify-content: flex-end;
}

.primary-menu-container > ul {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 10px 22px;
  gap: 18px;
  align-items: center;
  border-radius: 999px;
  border: 1px solid rgba(95, 200, 255, 0.24);
  background: rgba(8, 32, 54, 0.55);
  backdrop-filter: blur(8px);
  box-shadow: 0 10px 26px rgba(5, 16, 28, 0.25), inset 0 0 0 1px rgba(13, 84, 121, 0.12);
}

.primary-menu-container li {
  position: relative;
}

.primary-menu-container > .menu > li {
  z-index: 1;
}

.primary-menu-container > .menu > li:hover,
.primary-menu-container > .menu > li:focus-within {
  z-index: 30;
}

.primary-menu-container > .menu > li.menu-item-has-children {
  --dropdown-width: min(660px, calc(100vw - 60px));
  --dropdown-col-image: 160px;
  --dropdown-image-ratio: 540 / 760;
  --dropdown-image-height: calc(var(--dropdown-col-image) / var(--dropdown-image-ratio));
  --dropdown-col-links: 186px;
  --dropdown-col-copy: 182px;
  --dropdown-gap: 12px;
  --dropdown-links-indent: 10px;
  --dropdown-pad: 11px;
  --dropdown-copy-left: calc(
    var(--dropdown-pad) +
    var(--dropdown-col-image) +
    var(--dropdown-gap) +
    var(--dropdown-col-links) +
    var(--dropdown-gap)
  );
  --dropdown-divider-right: calc(
    var(--dropdown-pad) +
    var(--dropdown-col-image) +
    var(--dropdown-gap) +
    var(--dropdown-col-links) +
    (var(--dropdown-gap) / 2)
  );
  --protech-dropdown-image: linear-gradient(135deg, #1b3d5e 0%, #0f2d49 100%);
  padding-bottom: 12px;
  margin-bottom: -12px;
}

.primary-menu-container .menu > li > a {
  color: #e5f6ff;
  font-size: 0.8rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.01em;
  padding: 8px 0;
  border: 0;
  background: transparent;
  display: block;
  position: relative;
}

.primary-menu-container .menu > li > a::after {
  content: '';
  display: block;
  height: 2px;
  margin-top: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #0cb6f4 0%, #0cd3a3 100%);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.2s ease;
}

.primary-menu-container .menu > li > a:hover,
.primary-menu-container .menu > .current-menu-item > a,
.primary-menu-container .menu > .current_page_parent > a,
.primary-menu-container .menu > .current-menu-ancestor > a {
  color: #ffffff;
}

.primary-menu-container .menu > li > a:hover::after,
.primary-menu-container .menu > .current-menu-item > a::after,
.primary-menu-container .menu > .current_page_parent > a::after,
.primary-menu-container .menu > .current-menu-ancestor > a::after {
  transform: scaleX(1);
}

.primary-menu-container .sub-menu {
  list-style: none;
}

.primary-menu-container > .menu > li.menu-item-has-children > .sub-menu {
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  z-index: 20;
  width: var(--dropdown-width);
  min-width: 580px;
  margin: 0;
  padding: var(--dropdown-pad);
  display: grid;
  grid-template-columns: var(--dropdown-col-image) var(--dropdown-col-links) var(--dropdown-col-copy);
  gap: 4px var(--dropdown-gap);
  border-radius: 12px;
  border: 1px solid rgba(126, 208, 248, 0.26);
  background:
    linear-gradient(
      to bottom,
      transparent 14px,
      rgba(95, 182, 231, 0.28) 14px,
      rgba(95, 182, 231, 0.28) calc(100% - 14px),
      transparent calc(100% - 14px)
    ) var(--dropdown-divider-right) 0 / 1px 100% no-repeat,
    rgba(7, 34, 63, 0.94);
  box-shadow: 0 18px 36px rgba(2, 17, 32, 0.35);
  min-height: max(calc((var(--dropdown-pad) * 2) + var(--dropdown-image-height)), 280px);
  white-space: normal;
  overflow: hidden;
  align-content: start;
  grid-auto-rows: min-content;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 10px) scale(0.98);
  transition: opacity 0.2s ease, transform 0.24s ease, visibility 0.2s ease;
}

.primary-menu-container > .menu > li.menu-item-has-children > .sub-menu::before {
  content: '';
  position: absolute;
  left: var(--dropdown-pad);
  top: var(--dropdown-pad);
  display: block;
  width: var(--dropdown-col-image);
  aspect-ratio: var(--dropdown-image-ratio);
  height: auto;
  min-height: 0;
  border-radius: 10px;
  border: 1px solid rgba(109, 202, 249, 0.26);
  background-image:
    linear-gradient(160deg, rgba(1, 13, 24, 0.1) 0%, rgba(1, 13, 24, 0.42) 100%),
    linear-gradient(135deg, #1b3d5e 0%, #0f2d49 100%);
  background-size: cover, contain;
  background-position: center, center center;
  background-repeat: no-repeat, no-repeat;
  overflow: hidden;
  z-index: 0;
  box-shadow: inset 0 0 0 1px rgba(95, 194, 240, 0.14);
}

.primary-menu-container > .menu > li.menu-item-has-children > .sub-menu::after {
  content: none;
}

.primary-menu-container > .menu > li:hover > .sub-menu,
.primary-menu-container > .menu > li:focus-within > .sub-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0) scale(1);
}

.primary-menu-container > .menu > li.menu-item-has-children > .sub-menu > li {
  grid-column: 2;
  margin: 0;
  padding: 0 3px 0 calc(3px + var(--dropdown-links-indent));
  position: relative;
  z-index: 1;
}

.primary-menu-container .sub-menu a {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 6px 0;
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.35;
}

.primary-menu-container > .menu > li.menu-item-has-children > .sub-menu > li > a {
  min-height: 0;
  display: block;
  color: #fff;
}

.primary-menu-container > .menu > li.menu-item-has-children > .sub-menu > li.protech-submenu-parent-link {
  margin-bottom: 4px;
}

.primary-menu-container > .menu > li.menu-item-has-children > .sub-menu > li.protech-submenu-parent-link > a {
  color: #fff;
  font-size: 0.82rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  padding-top: 1px;
  padding-bottom: 7px;
}

.primary-menu-container .sub-menu a:hover,
.primary-menu-container .sub-menu .current-menu-item > a,
.primary-menu-container .sub-menu .current_page_parent > a,
.primary-menu-container .sub-menu .current-menu-ancestor > a {
  color: #fff;
  border-color: transparent;
  background: transparent;
}

.primary-menu-container > .menu > li.menu-item-has-children > .sub-menu > li.protech-submenu-parent-link > a:hover,
.primary-menu-container > .menu > li.menu-item-has-children > .sub-menu > li.protech-submenu-parent-link.current-menu-item > a {
  color: #fff;
}

.primary-menu-container > .menu > li.menu-item-has-children::before,
.primary-menu-container > .menu > li.menu-item-has-children::after {
  position: absolute;
  left: calc(50% - (var(--dropdown-width) / 2) + var(--dropdown-copy-left) + 10px);
  width: calc(var(--dropdown-col-copy) - 18px);
  top: calc(100% + var(--dropdown-pad) + 2px);
  pointer-events: none;
  opacity: 0;
  transform: translateY(8px);
  z-index: 25;
  transition: opacity 0.2s ease, transform 0.24s ease;
}

.primary-menu-container > .menu > li.menu-item-has-children::before {
  content: var(--protech-dropdown-heading, "Overview");
  color: #58d4ff;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.2;
}

.primary-menu-container > .menu > li.menu-item-has-children::after {
  content: var(--protech-dropdown-copy, "Calibrations and diagnostics support tailored to your workflow.");
  white-space: pre-line;
  top: calc(100% + var(--dropdown-pad) + 20px);
  color: #9ecce7;
  font-size: 0.74rem;
  line-height: 1.55;
}

.primary-menu-container > .menu > li:hover::before,
.primary-menu-container > .menu > li:focus-within::before,
.primary-menu-container > .menu > li:hover::after,
.primary-menu-container > .menu > li:focus-within::after {
  opacity: 1;
  transform: translateY(0);
}

.primary-menu-container .protech-nav-products {
  --protech-dropdown-heading: "Products";
  --protech-dropdown-copy: "ADAS calibrations and advanced diagnostics across all product lines.\A\A Fast turnaround, expert technicians, and consistent quality controls.";
}

.primary-menu-container .protech-nav-solutions {
  --protech-dropdown-heading: "Solutions";
  --protech-dropdown-copy: "Tailored service models for each business type.\A\A Collision, glass, fleet, mechanical, and dealership workflows supported end-to-end.";
}

.primary-menu-container .protech-nav-resources {
  --protech-dropdown-heading: "Resources";
  --protech-dropdown-copy: "Get answers quickly with FAQs, PCS guidance, and current updates.\A\A Use these resources to train teams and accelerate intake.";
}

.primary-menu-container .protech-nav-about {
  --protech-dropdown-heading: "About Protech";
  --protech-dropdown-copy: "Learn about our leadership, story, and latest company updates.\A\A Built around responsiveness, quality, and long-term partnerships.";
}

.primary-menu-container .protech-nav-locations {
  --protech-dropdown-heading: "Locations";
  --protech-dropdown-copy: "Find service coverage and local support details.\A\A Regional teams and mobile specialists are available where you operate.";
  --dropdown-col-links: 146px;
  --dropdown-col-copy: 222px;
}

.primary-menu-container .protech-nav-contact {
  --protech-dropdown-heading: "Contact Us";
  --protech-dropdown-copy: "Connect with the right team for support, intake, and work order requests.\A\A We route inquiries quickly so service starts faster.";
  --dropdown-col-links: 146px;
  --dropdown-col-copy: 222px;
}

.primary-menu-container .protech-nav-careers {
  --protech-dropdown-heading: "Careers";
  --protech-dropdown-copy: "Explore career growth, benefits, and training pathways.\A\A Join a team focused on technical excellence and customer outcomes.";
  --dropdown-col-links: 146px;
  --dropdown-col-copy: 222px;
}

/* Explicit dropdown image mapping (vertical artwork slot) */
.primary-menu-container > .menu > li.protech-nav-products.menu-item-has-children > .sub-menu::before {
  background-image:
    linear-gradient(160deg, rgba(1, 13, 24, 0.1) 0%, rgba(1, 13, 24, 0.42) 100%),
    url('/wp-content/themes/protech/assets/images/nav/dropdown-vert-products.jpg') !important;
}

.primary-menu-container > .menu > li.protech-nav-solutions.menu-item-has-children > .sub-menu::before {
  background-image:
    linear-gradient(160deg, rgba(1, 13, 24, 0.1) 0%, rgba(1, 13, 24, 0.42) 100%),
    url('/wp-content/themes/protech/assets/images/nav/dropdown-vert-solutions.jpg') !important;
}

.primary-menu-container > .menu > li.protech-nav-resources.menu-item-has-children > .sub-menu::before {
  background-image:
    linear-gradient(160deg, rgba(1, 13, 24, 0.1) 0%, rgba(1, 13, 24, 0.42) 100%),
    url('/wp-content/themes/protech/assets/images/nav/dropdown-vert-resources.jpg') !important;
}

.primary-menu-container > .menu > li.protech-nav-about.menu-item-has-children > .sub-menu::before {
  background-image:
    linear-gradient(160deg, rgba(1, 13, 24, 0.1) 0%, rgba(1, 13, 24, 0.42) 100%),
    url('/wp-content/themes/protech/assets/images/nav/dropdown-vert-about.jpg') !important;
}

.primary-menu-container > .menu > li.protech-nav-locations.menu-item-has-children > .sub-menu::before {
  background-image:
    linear-gradient(160deg, rgba(1, 13, 24, 0.1) 0%, rgba(1, 13, 24, 0.42) 100%),
    url('/wp-content/themes/protech/assets/images/nav/dropdown-vert-locations.jpg') !important;
}

.primary-menu-container > .menu > li.protech-nav-contact.menu-item-has-children > .sub-menu::before {
  background-image:
    linear-gradient(160deg, rgba(1, 13, 24, 0.1) 0%, rgba(1, 13, 24, 0.42) 100%),
    url('/wp-content/themes/protech/assets/images/nav/dropdown-vert-contact.jpg') !important;
}

.primary-menu-container > .menu > li.protech-nav-careers.menu-item-has-children > .sub-menu::before {
  background-image:
    linear-gradient(160deg, rgba(1, 13, 24, 0.1) 0%, rgba(1, 13, 24, 0.42) 100%),
    url('/wp-content/themes/protech/assets/images/nav/dropdown-vert-careers.jpg') !important;
}

.header-cta {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

.header-cta .btn {
  border-radius: 999px;
  padding: 12px 22px;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.1;
  border: 1px solid transparent;
  min-height: 56px;
  display: inline-flex;
  align-items: center;
}

.header-intake-btn {
  color: #eaf6ff;
  border: 1px solid rgba(120, 214, 255, 0.65);
  background: rgba(8, 32, 54, 0.58);
  backdrop-filter: blur(8px);
  box-shadow: 0 10px 26px rgba(5, 16, 28, 0.25);
}

.header-intake-btn:hover {
  color: #ffffff;
  background: rgba(8, 32, 54, 0.68);
}

.header-portal-btn {
  color: #0a2c4a;
  border-color: rgba(95, 209, 255, 0.45);
  background: linear-gradient(90deg, #0cb6f4 0%, #0ec5f6 100%);
}

.header-portal-btn:hover {
  color: #ffffff;
  filter: brightness(1.04);
}

.menu-toggle {
  display: none;
  background: none;
  border: none;
  padding: var(--spacing-xs);
  cursor: pointer;
}

.menu-toggle-icon {
  display: block;
  width: 24px;
  height: 2px;
  background-color: #dff4ff;
  position: relative;
}

.menu-toggle-icon::before,
.menu-toggle-icon::after {
  content: '';
  display: block;
  width: 24px;
  height: 2px;
  background-color: #dff4ff;
  position: absolute;
  transition: var(--transition);
}

.menu-toggle-icon::before {
  top: -8px;
}

.menu-toggle-icon::after {
  top: 8px;
}

.dropdown-toggle {
  display: none;
}

/* ==========================================================================
   Footer Styles
   ========================================================================== */
.site-footer {
  background: #063454;
  color: #d9e8f4;
  margin-top: 0;
}

.footer-main {
  padding: 28px 0 14px;
}

.footer-columns {
  display: grid;
  grid-template-columns: minmax(240px, 1.35fr) repeat(2, minmax(180px, 1fr)) minmax(130px, 0.9fr);
  gap: 28px;
  align-items: start;
}

.footer-title {
  display: none;
}

.footer-about .footer-logo {
  margin-bottom: 10px;
}

.footer-about .footer-logo img {
  max-height: 30px;
  margin-bottom: 2px;
  filter: brightness(0) invert(1) opacity(0.9);
}

.footer-about .footer-logo h3 {
  margin: 0;
}

.footer-about .footer-logo h3 a {
  color: #9fe7ff;
  font-size: 0.94rem;
  letter-spacing: 0.02em;
  font-weight: 700;
  text-transform: uppercase;
}

.footer-contact p {
  margin-bottom: 4px;
  color: #a8c0d1;
  font-size: 0.72rem;
  line-height: 1.42;
  max-width: 280px;
}

.footer-contact a {
  color: #bfd4e5;
  text-decoration: none;
}

.footer-social {
  display: flex;
  gap: 12px;
  margin-top: 12px;
}

.footer-social a {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #e3f1fb;
  font-size: 0.96rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  opacity: 0.92;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.footer-social a:hover {
  opacity: 1;
  transform: translateY(-1px);
}

.footer-menu ul,
.footer-solutions-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-menu li,
.footer-solutions-menu li {
  margin-bottom: 8px;
}

.footer-menu a,
.footer-solutions-menu a {
  color: #e5f0f8;
  font-size: 0.88rem;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  line-height: 1.28;
  text-decoration: none;
  transition: var(--transition);
}

.footer-menu a:hover,
.footer-solutions-menu a:hover {
  color: #4ad9ff;
}

.footer-newsletter {
  display: none;
}

.footer-bottom {
  border-top: 1px solid rgba(166, 194, 214, 0.16);
  background-color: transparent;
  padding: 8px 0 10px;
}

.footer-bottom-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.footer-bottom p {
  margin: 0;
  font-size: 0.62rem;
  color: #88a6ba;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.footer-bottom a {
  color: #9ebcd1;
  text-decoration: none;
}

.footer-bottom a:hover {
  color: #e8f4fc;
}

.social-icon::before {
  display: block;
}

.social-facebook::before {
  content: 'f';
}

.social-instagram::before {
  content: 'ig';
  font-size: 0.58rem;
}

.social-linkedin::before {
  content: 'in';
}

.social-twitter::before {
  content: 'x';
}

/* ==========================================================================
   Hero Section
   ========================================================================== */
.hero-section {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
  color: #ffffff;
  padding: var(--spacing-xl) 0;
  position: relative;
  overflow: hidden;
}

.hero-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('data:image/svg+xml,<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg"><defs><pattern id="grid" width="100" height="100" patternUnits="userSpaceOnUse"><path d="M 100 0 L 0 0 0 100" fill="none" stroke="rgba(255,255,255,0.1)" stroke-width="1"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');
  opacity: 0.3;
}

.hero-content {
  position: relative;
  z-index: 1;
}

.hero-eyebrow {
  font-size: 0.875rem;
  letter-spacing: 2px;
  font-weight: 700;
  margin-bottom: var(--spacing-sm);
  text-transform: uppercase;
}

.hero-title {
  font-size: 3.5rem;
  margin-bottom: var(--spacing-sm);
  line-height: 1.1;
}

.hero-subtitle {
  font-size: 1.25rem;
  margin-bottom: var(--spacing-lg);
  opacity: 0.9;
}

.hero-features {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: var(--spacing-md);
  margin-top: var(--spacing-lg);
}

.hero-feature {
  background-color: rgba(255, 255, 255, 0.1);
  padding: var(--spacing-md);
  border-radius: 8px;
  backdrop-filter: blur(10px);
}

.hero-feature h4 {
  color: var(--color-accent);
  margin-bottom: var(--spacing-xs);
}

.hero-feature p {
  margin: 0;
  font-size: 0.95rem;
}

/* ==========================================================================
   Partnership Section
   ========================================================================== */
.partnership-section {
  background-color: var(--color-bg-light);
}

.partnership-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: var(--spacing-md);
}

.partnership-item {
  background-color: #ffffff;
  padding: var(--spacing-lg);
  border-radius: 8px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.partnership-content h2 {
  color: var(--color-primary);
  margin-bottom: var(--spacing-sm);
}

.partnership-content h3 {
  color: var(--color-secondary);
  margin-bottom: var(--spacing-sm);
}

/* ==========================================================================
   Features Grid
   ========================================================================== */
.features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--spacing-lg);
  margin-top: var(--spacing-lg);
}

.feature-item {
  text-align: center;
  padding: var(--spacing-md);
}

.feature-icon {
  margin-bottom: var(--spacing-sm);
}

.feature-icon img {
  max-width: 80px;
  height: auto;
}

.feature-item h4 {
  color: var(--color-primary);
  margin-bottom: var(--spacing-sm);
}

/* ==========================================================================
   Solutions Section
   ========================================================================== */
.solutions-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--spacing-md);
  margin-top: var(--spacing-lg);
}

.solution-item {
  background-color: var(--color-bg-light);
  padding: var(--spacing-lg);
  border-radius: 8px;
  transition: var(--transition);
}

.solution-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.solution-item-featured {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
  color: #ffffff;
}

.solution-item-featured h3,
.solution-item-featured p {
  color: #ffffff;
}

/* ==========================================================================
   Coverage Map
   ========================================================================== */
.coverage-map {
  text-align: center;
  margin-top: var(--spacing-lg);
}

.coverage-map-image {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}

/* ==========================================================================
   Careers Section
   ========================================================================== */
.careers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: var(--spacing-md);
  margin-top: var(--spacing-lg);
}

.career-item {
  background-color: var(--color-bg-light);
  padding: var(--spacing-lg);
  border-radius: 8px;
}

/* ==========================================================================
   Page Content
   ========================================================================== */
.page-content-wrapper {
  padding: var(--spacing-xl) 0;
}

.entry-header {
  margin-bottom: var(--spacing-lg);
}

.entry-content {
  line-height: 1.8;
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
  margin-top: var(--spacing-lg);
  margin-bottom: var(--spacing-sm);
}

.section-title {
  font-size: 2.5rem;
  margin-bottom: var(--spacing-md);
}

/* ==========================================================================
   Pattern Pages (old-site look)
   ========================================================================== */
.page .entry-header,
.page-template-default .entry-header {
  display: none;
}

.page-content-wrapper .container {
  max-width: none;
  padding: 0;
}

.protech-page {
  background: #f4f7fb;
}

.protech-page .wp-block-group__inner-container {
  padding: 0;
}

.protech-page .protech-section {
  max-width: 1100px;
  margin: 0 auto;
  padding: 64px 32px;
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 14px 36px rgba(8, 31, 58, 0.08);
}

.protech-page h1,
.protech-page h2,
.protech-page h3 {
  color: #0c2847;
  letter-spacing: -0.01em;
}

.protech-page h1 {
  font-size: clamp(2.2rem, 3vw, 2.9rem);
  margin-bottom: 22px;
}

.protech-page h3 {
  margin-top: 28px;
  margin-bottom: 12px;
  font-size: 1.25rem;
  color: #15385c;
}

.protech-page p,
.protech-page li {
  color: #4a5f78;
  font-size: 1rem;
  line-height: 1.75;
}

.protech-page ul {
  padding-left: 20px;
  margin: 12px 0 18px;
  list-style: disc;
}

.protech-page .wp-block-group.alignwide {
  max-width: none;
}

.protech-page .wp-block-group.alignfull {
  margin-left: 0;
  margin-right: 0;
}

/* ==========================================================================
   Responsive Adjustments
   ========================================================================== */
@media (max-width: 992px) {
  .partnership-grid,
  .careers-grid {
    grid-template-columns: 1fr;
  }

  .footer-columns {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
    gap: 18px;
  }

  .footer-about {
    grid-column: 1 / -1;
  }
}

@media (max-width: 768px) {
  .menu-toggle {
    display: block;
  }
  
  .main-navigation .primary-menu-container,
  .main-navigation .header-cta {
    display: none;
  }
  
  .main-navigation.toggled .primary-menu-container,
  .main-navigation.toggled .header-cta {
    display: block;
  }
  
  .main-navigation.toggled {
    position: fixed;
    top: 90px;
    left: 10px;
    right: 10px;
    background: #07223f;
    color: #dff4ff;
    border: 1px solid rgba(126, 208, 248, 0.3);
    border-radius: 16px;
    padding: 14px;
    box-shadow: 0 18px 36px rgba(3, 14, 28, 0.45);
    max-height: calc(100vh - 100px);
    overflow-y: auto;
  }
  
  .main-navigation.toggled .primary-menu-container ul {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    white-space: normal;
    overflow: visible;
    border: 0;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
  }
  
  .main-navigation.toggled .primary-menu-container li {
    border: 0;
  }
  
  .main-navigation.toggled .primary-menu-container .menu > li > a {
    padding: 12px 14px;
    border-radius: 10px;
    background: rgba(17, 62, 92, 0.58);
    border: 1px solid rgba(122, 206, 248, 0.2);
    color: #dff4ff;
  }

  .main-navigation.toggled .primary-menu-container .menu > li > a::after {
    display: none;
  }
  
  .main-navigation.toggled .primary-menu-container .sub-menu {
    display: block;
    position: static;
    min-width: 0;
    width: auto;
    margin: 0;
    padding: 0 0 0 8px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.24s ease, opacity 0.2s ease;
    transition-delay: 0s;
  }

  .main-navigation.toggled .primary-menu-container .menu > li.menu-item-has-children {
    padding-bottom: 0;
    margin-bottom: 0;
  }

  .main-navigation.toggled .primary-menu-container .sub-menu::before,
  .main-navigation.toggled .primary-menu-container .sub-menu::after {
    display: none;
  }

  .main-navigation.toggled .primary-menu-container .menu > li::before,
  .main-navigation.toggled .primary-menu-container .menu > li::after {
    display: none;
  }

  .main-navigation.toggled .primary-menu-container .sub-menu a {
    min-height: 0;
    border: 1px solid rgba(122, 206, 248, 0.2);
    background: rgba(17, 62, 92, 0.58);
    padding: 10px 12px;
  }

  .main-navigation.toggled .primary-menu-container .sub-menu {
    display: block;
    grid-template-columns: none;
    gap: 0;
  }

  .main-navigation.toggled .primary-menu-container .sub-menu.toggled {
    max-height: 460px;
  }

  .main-navigation.toggled .dropdown-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin-left: 8px;
    border-radius: 999px;
    border: 1px solid rgba(122, 206, 248, 0.32);
    background: rgba(9, 41, 68, 0.9);
    color: #dff4ff;
    cursor: pointer;
  }

  .main-navigation.toggled .dropdown-toggle::before {
    content: '+';
    font-size: 1rem;
    line-height: 1;
  }

  .main-navigation.toggled .dropdown-toggle[aria-expanded="true"]::before {
    content: '-';
  }

  .main-navigation.toggled .menu-item-has-children {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 0;
  }

  .main-navigation.toggled .menu-item-has-children > a {
    flex: 1 1 auto;
  }

  .main-navigation.toggled .menu-item-has-children > .sub-menu {
    flex-basis: 100%;
  }

  .header-cta {
    margin-top: 12px;
    flex-direction: column;
  }

  .header-cta .btn {
    width: 100%;
    text-align: center;
  }

  .footer-columns {
    grid-template-columns: repeat(2, minmax(150px, 1fr));
    gap: 14px 22px;
  }

  .footer-about {
    grid-column: 1 / -1;
  }
  
  .hero-title {
    font-size: 2rem;
  }
  
  .hero-features {
    grid-template-columns: 1fr;
  }
  
  .footer-bottom-content {
    flex-direction: column;
    text-align: center;
    gap: 8px;
  }
}

/* ==========================================================================
   Block Editor (Gutenberg) Styles
   ========================================================================== */

/* Alignments */
.alignleft {
  float: left;
  margin-right: var(--spacing-md);
  margin-bottom: var(--spacing-sm);
}

.alignright {
  float: right;
  margin-left: var(--spacing-md);
  margin-bottom: var(--spacing-sm);
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.alignwide {
  max-width: var(--container-wide);
  margin-left: auto;
  margin-right: auto;
}

.alignfull {
  max-width: none;
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

/* Block: Button */
.wp-block-button__link {
  background-color: var(--color-accent);
  color: var(--color-primary);
  padding: 12px 30px;
  border-radius: 4px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  text-decoration: none;
  display: inline-block;
  transition: var(--transition);
  border: none;
}

.wp-block-button__link:hover {
  background-color: var(--color-primary);
  color: white;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 45, 91, 0.2);
}

.wp-block-button.is-style-outline .wp-block-button__link {
  background-color: transparent;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background-color: var(--color-primary);
  color: white;
}

/* Block: Quote */
.wp-block-quote {
  border-left: 4px solid var(--color-accent);
  padding-left: var(--spacing-md);
  margin: var(--spacing-md) 0;
  font-style: italic;
  font-size: 1.25rem;
}

.wp-block-quote cite {
  display: block;
  margin-top: var(--spacing-sm);
  color: var(--color-primary);
  font-style: normal;
  font-weight: 600;
  font-size: 1rem;
}

.wp-block-quote.is-large,
.wp-block-quote.is-style-large {
  border-left: none;
  padding-left: 0;
  font-size: 1.75rem;
}

/* Block: Pullquote */
.wp-block-pullquote {
  border-top: 4px solid var(--color-accent);
  border-bottom: 4px solid var(--color-accent);
  padding: var(--spacing-md) 0;
  margin: var(--spacing-lg) 0;
  text-align: center;
}

.wp-block-pullquote blockquote {
  font-size: 1.75rem;
  font-style: italic;
  margin: 0;
}

/* Block: Cover */
.wp-block-cover {
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--spacing-lg);
  position: relative;
}

.wp-block-cover__inner-container {
  z-index: 1;
  color: white;
}

/* Block: Group */
.wp-block-group {
  padding: var(--spacing-md);
}

.wp-block-group.has-background {
  padding: var(--spacing-lg);
}

/* Block: Columns */
.wp-block-columns {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-md);
}

.wp-block-column {
  flex: 1;
  min-width: 0;
}

@media (max-width: 768px) {
  .wp-block-columns {
    flex-direction: column;
  }
}

/* Block: Separator */
.wp-block-separator {
  border: none;
  border-top: 2px solid currentColor;
  margin: var(--spacing-lg) auto;
  max-width: 100px;
  color: var(--color-accent);
}

.wp-block-separator.is-style-wide {
  max-width: 100%;
}

.wp-block-separator.is-style-dots {
  border: none;
  text-align: center;
}

.wp-block-separator.is-style-dots::before {
  content: "···";
  color: currentColor;
  font-size: 2rem;
  letter-spacing: 1rem;
}

/* Block: Image */
.wp-block-image {
  margin: var(--spacing-md) 0;
}

.wp-block-image img {
  max-width: 100%;
  height: auto;
  display: block;
}

.wp-block-image figcaption {
  margin-top: var(--spacing-sm);
  text-align: center;
  font-size: 0.875rem;
  color: var(--color-text-light);
}

/* Block: Gallery */
.wp-block-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-sm);
  list-style: none;
  padding: 0;
  margin: var(--spacing-md) 0;
}

/* Block: Media & Text */
.wp-block-media-text {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: var(--spacing-lg);
  align-items: center;
  margin: var(--spacing-lg) 0;
}

@media (max-width: 768px) {
  .wp-block-media-text {
    grid-template-columns: 1fr;
  }
}

/* Block: Table */
.wp-block-table {
  margin: var(--spacing-md) 0;
  width: 100%;
  border-collapse: collapse;
}

.wp-block-table td,
.wp-block-table th {
  padding: 12px;
  border: 1px solid var(--color-border);
}

.wp-block-table thead {
  background-color: var(--color-primary);
  color: white;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background-color: var(--color-bg-light);
}

/* Block: List */
.wp-block-list {
  margin: var(--spacing-md) 0;
  padding-left: var(--spacing-md);
}

.wp-block-list li {
  margin-bottom: var(--spacing-xs);
}

/* Block: Code */
.wp-block-code {
  background-color: var(--color-bg-light);
  border: 1px solid var(--color-border);
  border-radius: 4px;
  padding: var(--spacing-md);
  font-family: 'Courier New', monospace;
  overflow-x: auto;
}

/* Block: Preformatted */
.wp-block-preformatted {
  background-color: var(--color-bg-light);
  padding: var(--spacing-md);
  border-radius: 4px;
  overflow-x: auto;
  font-family: 'Courier New', monospace;
}

/* Block: Verse */
.wp-block-verse {
  background-color: var(--color-bg-light);
  padding: var(--spacing-md);
  border-left: 4px solid var(--color-accent);
  font-family: inherit;
}

/* Color Classes */
.has-protech-navy-color {
  color: #001a29;
}

.has-protech-navy-background-color {
  background-color: #001a29;
}

.has-deep-teal-color {
  color: #003a54;
}

.has-deep-teal-background-color {
  background-color: #003a54;
}

.has-primary-blue-color {
  color: #002d5b;
}

.has-primary-blue-background-color {
  background-color: #002d5b;
}

.has-protech-blue-color {
  color: #005c8c;
}

.has-protech-blue-background-color {
  background-color: #005c8c;
}

.has-secondary-blue-color {
  color: #00a8e1;
}

.has-secondary-blue-background-color {
  background-color: #00a8e1;
}

.has-cyan-color {
  color: #00d9ff;
}

.has-cyan-background-color {
  background-color: #00d9ff;
}

.has-sky-blue-color {
  color: #8bccff;
}

.has-sky-blue-background-color {
  background-color: #8bccff;
}

.has-accent-yellow-color {
  color: #ffb81c;
}

.has-accent-yellow-background-color {
  background-color: #ffb81c;
}

.has-white-color {
  color: #fff;
}

.has-white-background-color {
  background-color: #fff;
}

.has-cloud-color {
  color: #f0f2f4;
}

.has-cloud-background-color {
  background-color: #f0f2f4;
}

.has-light-gray-color {
  color: #f8f9fa;
}

.has-light-gray-background-color {
  background-color: #f8f9fa;
}

.has-silver-color {
  color: #c4c5c5;
}

.has-silver-background-color {
  background-color: #c4c5c5;
}

.has-dark-gray-color {
  color: #333;
}

.has-dark-gray-background-color {
  background-color: #333;
}

.has-protech-dark-blue-gradient-background {
  background: linear-gradient(135deg, #001a29 0%, #003a54 100%);
}

.has-protech-cyan-blue-gradient-background {
  background: linear-gradient(135deg, #005c8c 0%, #00d9ff 100%);
}

.has-protech-light-panel-gradient-background {
  background: linear-gradient(135deg, #fff 0%, #f0f2f4 100%);
}

/* Font Size Classes */
.has-small-font-size {
  font-size: 14px;
}

.has-normal-font-size {
  font-size: 16px;
}

.has-medium-font-size {
  font-size: 20px;
}

.has-large-font-size {
  font-size: 28px;
}

.has-huge-font-size {
  font-size: 42px;
}

.has-protech-body-font-family {
  font-family: legacy-gotham, "Avenir Next", "Helvetica Neue", Arial, sans-serif;
}

.has-protech-heading-font-family {
  font-family: legacy-cera-bold, "Helvetica Neue", Arial, sans-serif;
}

/* ==========================================================================
   Protech Homepage Pattern
   ========================================================================== */
.protech-home {
  color: #11253b;
  background: #ffffff;
  margin: 0;
  padding: 0;
}

.home .site-main,
.home .site-main article.page,
.home .site-main .entry-content {
  margin: 0;
  padding: 0;
}

.protech-home > .wp-block-group__inner-container {
  margin: 0;
  padding: 0;
}

.protech-home .wp-block-group,
.protech-home .wp-block-group.has-background {
  padding-left: 0;
  padding-right: 0;
}

.home .site-header {
  position: absolute;
  top: 12px;
  left: 0;
  width: 100%;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

.home .header-main {
  padding: 0;
}

.protech-home .wp-block-group.alignfull,
.protech-home .wp-block-cover.alignfull {
  width: auto;
  max-width: none;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.protech-hero {
  position: relative;
  overflow: hidden;
  padding: 210px 0 118px;
  color: #ffffff;
}

.protech-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(55% 55% at 78% 8%, rgba(0, 243, 209, 0.24) 0%, transparent 70%), radial-gradient(42% 42% at 14% 12%, rgba(0, 140, 255, 0.28) 0%, transparent 74%);
  pointer-events: none;
}

.protech-hero__inner {
  position: relative;
  z-index: 1;
  text-align: center;
}

.protech-eyebrow {
  letter-spacing: 0.19em;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 700;
  margin-bottom: 10px;
}

.protech-hero .protech-eyebrow {
  color: #9de9ff;
}

.protech-hero__title {
  color: #11d0ff;
  font-size: clamp(2.2rem, 4.1vw, 3.75rem);
  margin: 0;
}

.protech-section {
  padding: 76px 0;
}

.protech-why:not(.has-background) {
  background: #f3f5f8;
}

.protech-section__title:not(.has-text-color) {
  color: #17324e;
  margin-bottom: 10px;
}

.protech-section__lede:not(.has-text-color) {
  color: #73889f;
  margin-bottom: 30px;
}

/* Respect parent block text color choices made in the editor */
.protech-section.has-text-color .protech-eyebrow:not(.has-text-color),
.protech-section.has-text-color .protech-section__title:not(.has-text-color),
.protech-section.has-text-color .protech-section__lede:not(.has-text-color) {
  color: inherit;
}

.protech-feature-grid {
  gap: 22px;
}

.protech-feature-card {
  border-radius: 14px;
  box-shadow: 0 12px 28px rgba(13, 24, 42, 0.06);
  background: #ffffff;
  min-height: 190px;
}

.protech-feature-card h5 {
  margin: 4px 0 6px;
  color: #17324e;
  font-size: 1rem;
}

.protech-feature-card p {
  color: #6c8097;
  font-size: 0.86rem;
  margin-bottom: 0;
}

.protech-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(255, 122, 48, 0.12);
  color: #ff7a30;
  font-size: 1.15rem;
  margin-bottom: 8px;
}

.protech-slider-indicator {
  width: 56px;
  height: 4px;
  border-radius: 999px;
  margin: 20px auto 0;
  background: linear-gradient(90deg, #ff7a30 0 34%, #d7dee7 34% 100%);
}

.protech-grid {
  gap: 28px;
}

.protech-grid.two-up {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
}

.protech-card {
  border-radius: 22px;
  overflow: hidden;
}

.protech-btn-primary .wp-block-button__link {
  border-radius: 999px;
  border: none;
  color: #0a2c4a;
  font-size: 0.78rem;
  letter-spacing: 0.02em;
  padding: 11px 18px;
  background: #0ec5f6;
  box-shadow: 0 10px 20px rgba(7, 129, 175, 0.25);
}

.protech-btn-primary .wp-block-button__link:hover {
  background: #29cff8;
  color: #0a2c4a;
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(7, 129, 175, 0.3);
}

.protech-cta-card {
  color: #ffffff;
}

.protech-cta-card .wp-block-cover__inner-container {
  align-items: flex-end;
  justify-content: flex-start;
  padding: 30px 24px;
}

.protech-cta-card__content h4 {
  color: #ffffff;
  font-size: 1.5rem;
  line-height: 1.08;
  margin-bottom: 16px;
}

.protech-roadside .protech-wide-card {
  color: #ffffff;
  border-radius: 20px;
  padding: 34px 38px;
  box-shadow: 0 16px 30px rgba(6, 24, 49, 0.22);
  position: relative;
  overflow: hidden;
}

.protech-roadside .protech-wide-card:not(.has-background) {
  background: linear-gradient(136deg, #082341 0%, #0d4264 52%, #0d6a84 100%);
}

.protech-roadside .protech-wide-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 89% 42%, rgba(0, 182, 244, 0.36) 0%, transparent 42%);
  pointer-events: none;
}

.protech-coverage:not(.has-background) {
  background: #022946;
  color: #dcebf7;
  text-align: center;
}

.protech-coverage:not(.has-text-color) .protech-section__title:not(.has-text-color),
.protech-coverage:not(.has-text-color) .protech-eyebrow:not(.has-text-color) {
  color: #f2fbff;
}

.protech-map {
  margin: 32px auto 0;
  min-height: 370px;
  max-width: 920px;
  border-radius: 26px;
  position: relative;
  background: #07243f;
  overflow: hidden;
}

.protech-map::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 390px;
  height: 390px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 6px solid rgba(255, 123, 36, 0.94);
  box-shadow: 0 0 0 34px rgba(255, 123, 36, 0.2), 0 0 0 84px rgba(255, 123, 36, 0.12);
}

.protech-map::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 26px;
  height: 26px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: #ff7b24;
}

.protech-map p {
  position: absolute;
  left: 50%;
  bottom: 22px;
  transform: translateX(-50%);
  margin: 0;
  color: #9fc2da;
  font-size: 0.8rem;
}

.protech-talent {
  background: #edf2f6;
}

.protech-talent-layout {
  gap: 26px;
}

.protech-talent-card {
  background: #ffffff;
  border-radius: 20px;
  box-shadow: 0 12px 24px rgba(12, 21, 36, 0.08);
}

.protech-talent-card h3 {
  color: #1b3552;
  margin-bottom: 18px;
}

.protech-portrait {
  border-radius: 20px;
  box-shadow: 0 16px 32px rgba(11, 23, 39, 0.12);
}

@media (max-width: 1000px) {
  .protech-feature-grid {
    display: grid;
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .home .site-header {
    position: relative;
    top: 0;
    background: #041c35;
    padding: 10px 0;
  }

  .home .header-main-content {
    border-radius: 16px;
  }

  .home .menu-toggle-icon,
  .home .menu-toggle-icon::before,
  .home .menu-toggle-icon::after {
    background-color: #dff4ff;
  }

  .home .main-navigation.toggled {
    top: 84px;
    background: #07223f;
    color: #dff4ff;
  }

  .home .main-navigation.toggled .primary-menu-container .menu > li > a {
    background: rgba(17, 62, 92, 0.58);
    border: 1px solid rgba(122, 206, 248, 0.2);
    color: #dff4ff;
    padding: 12px 14px;
  }

  .protech-hero {
    padding: 152px 0 82px;
  }

  .protech-grid.two-up {
    grid-template-columns: 1fr;
  }

  .protech-map {
    min-height: 278px;
  }

  .protech-map::before {
    width: 220px;
    height: 220px;
    box-shadow: 0 0 0 18px rgba(255, 123, 36, 0.2), 0 0 0 46px rgba(255, 123, 36, 0.12);
  }
}

/* ==========================================================================
   Homepage Design Alignment (2026-02)
   ========================================================================== */
.protech-home .protech-section__inner {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 24px;
}

.protech-hero {
  min-height: 560px;
  padding: 176px 0 92px;
}

.protech-hero .wp-block-cover__background {
  background: linear-gradient(130deg, rgba(3, 16, 33, 0.82) 0%, rgba(5, 64, 103, 0.6) 52%, rgba(5, 110, 141, 0.5) 100%);
}

.protech-hero__title {
  font-size: clamp(2rem, 4.5vw, 3.4rem);
  color: #0fd2ff;
  line-height: 1.06;
}

.protech-hero-buttons {
  margin-top: 26px;
  gap: 12px;
}

.protech-hero-buttons .wp-block-button {
  margin: 0;
}

.protech-hero-buttons .wp-block-button .wp-block-button__link {
  min-height: 40px;
  padding: 11px 22px;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1;
  display: inline-flex;
  align-items: center;
}

.protech-btn-outline .wp-block-button__link {
  border: 1px solid rgba(110, 212, 255, 0.48);
  color: #d9f1ff;
  background: rgba(9, 42, 68, 0.72);
}

.protech-btn-outline .wp-block-button__link:hover {
  color: #ffffff;
  border-color: rgba(152, 226, 255, 0.62);
  background: rgba(9, 42, 68, 0.88);
}

.protech-why {
  background: #ffffff;
}

.protech-why-grid {
  margin-top: 26px;
  gap: 28px;
}

.protech-why-points {
  display: grid;
  gap: 14px;
}

.protech-why-point {
  margin: 0;
  padding: 8px 0 14px;
  border-bottom: 1px solid #dae3ec;
}

.protech-why-point:last-child {
  border-bottom: 0;
}

.protech-why-point h5 {
  margin: 0 0 6px;
  padding-left: 18px;
  font-size: 1.02rem;
  color: #163451;
  position: relative;
}

.protech-why-point h5::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.43em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ff8a3d;
}

.protech-why-point p {
  margin: 0;
  color: #6f849a;
  font-size: 0.85rem;
  line-height: 1.45;
}

.protech-why-photo {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 16px 30px rgba(12, 24, 42, 0.12);
}

.protech-slider-indicator {
  margin-top: 10px;
}

.protech-partner {
  background: #ffffff;
}

.protech-partner .protech-grid.two-up {
  margin-top: 22px;
  gap: 26px;
}

.protech-cta-card {
  border-radius: 22px;
  box-shadow: 0 18px 34px rgba(8, 21, 37, 0.16);
}

.protech-cta-card .wp-block-cover__inner-container {
  padding: 22px 20px;
}

.protech-cta-card__content h4 {
  font-size: 1.8rem;
  margin-bottom: 14px;
}

.protech-roadside {
  background: #ffffff;
}

.protech-roadside .protech-wide-card {
  padding: 0;
  border-radius: 20px;
  overflow: hidden;
}

.protech-roadside .protech-wide-card .wp-block-cover__inner-container {
  padding: 30px 34px;
  max-width: 520px;
}

.protech-coverage:not(.has-background) {
  background: #052741;
  padding-top: 84px;
  padding-bottom: 84px;
}

.protech-coverage:not(.has-text-color) .protech-section__title:not(.has-text-color) {
  color: #0fd2ff;
  font-size: clamp(2rem, 3.8vw, 2.8rem);
}

.protech-map {
  margin-top: 26px;
  border-radius: 24px;
  overflow: hidden;
}

.protech-map .wp-block-cover__background {
  background: rgba(5, 35, 60, 0.46);
}

.protech-map p {
  display: none;
}

.protech-map::before {
  width: 340px;
  height: 340px;
}

.protech-talent {
  background: #eaf0f5;
}

.protech-talent-layout {
  gap: 24px;
}

.protech-talent-card {
  border-radius: 22px;
  box-shadow: 0 14px 30px rgba(10, 20, 34, 0.1);
}

.protech-portrait {
  border-radius: 22px;
}

@media (max-width: 900px) {
  .protech-hero {
    padding: 156px 0 82px;
    min-height: 500px;
  }

  .protech-why-grid {
    grid-template-columns: 1fr;
  }

  .protech-partner .protech-grid.two-up {
    grid-template-columns: 1fr;
  }

  .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
    max-width: none;
    padding: 24px 24px;
  }
}

@media (max-width: 768px) {
  .protech-home .protech-section__inner {
    padding: 0 16px;
  }

  .protech-hero {
    min-height: 430px;
    padding: 132px 0 66px;
  }

  .protech-hero__title {
    font-size: 2.05rem;
  }

  .protech-cta-card__content h4 {
    font-size: 1.35rem;
  }

  .protech-map::before {
    width: 232px;
    height: 232px;
    box-shadow: 0 0 0 18px rgba(255, 123, 36, 0.2), 0 0 0 46px rgba(255, 123, 36, 0.12);
  }
}

/* ==========================================================================
   Legacy About Page
   ========================================================================== */
@font-face {
  font-family: "legacy-cera-bold";
  src: url("assets/fonts/cera_gr_bold-webfont.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: "legacy-gotham";
  src: url("assets/fonts/gotham-medium-webfont.woff2") format("woff2");
  font-display: swap;
}

.legacy-about-page:not(.has-background) {
  position: relative;
  overflow: hidden;
  color: #093251;
  background: #ffffff;
}

.legacy-about-page .solutions-tabs {
  display: flex;
  width: 100%;
}

.legacy-about-page .solutions-tab-wrap {
  width: 25%;
  min-height: 430px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  filter: grayscale(100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.legacy-about-page #trustTheExperts,
.legacy-about-page #leadingTheWay {
  background-position: 35%;
}

.legacy-about-page .solutions-tab-wrap:hover {
  cursor: pointer;
}

.legacy-about-page .solutions-title {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 102px;
  padding: 14px 10px;
  margin-top: auto;
  margin-bottom: 110px;
  letter-spacing: 1px;
  text-align: center;
  font-family: "legacy-cera-bold", "Helvetica Neue", Arial, sans-serif;
  font-size: 2rem;
}

.legacy-about-page .solutions-title:not(.has-text-color) {
  color: #ffffff;
}

.legacy-about-page .solutions-title:not(.has-background) {
  background-color: rgba(85, 85, 86, 0.9);
}

.legacy-about-page .solutions-bottom-title {
  text-align: center;
  font-family: "legacy-cera-bold", "Helvetica Neue", Arial, sans-serif;
  padding: 15px 0;
  font-size: 1.2rem;
}

.legacy-about-page .solutions-bottom-title:not(.has-background) {
  background-color: #d1d2d4;
}

.legacy-about-page .solutions-bottom-title:not(.has-text-color) {
  color: #093250;
}

.legacy-about-page .solutions-tab-wrap.active {
  filter: none;
}

.legacy-about-page #whyProtech.active .solutions-title,
.legacy-about-page #yourSolution.active .solutions-title {
  background-color: rgba(9, 50, 81, 0.87);
}

.legacy-about-page #whyProtech.active .solutions-bottom-title,
.legacy-about-page #yourSolution.active .solutions-bottom-title {
  background-color: #093250;
  color: #6ecff6;
}

.legacy-about-page #trustTheExperts.active .solutions-title,
.legacy-about-page #leadingTheWay.active .solutions-title {
  background-color: rgba(110, 207, 246, 0.87);
  color: #093250;
}

.legacy-about-page #trustTheExperts.active .solutions-bottom-title,
.legacy-about-page #leadingTheWay.active .solutions-bottom-title {
  background-color: #6ecff6;
  color: #093250;
}

.legacy-about-page .solutions-content {
  display: none;
}

.legacy-about-page .solutions-content.solutions-show {
  display: block;
}

.legacy-about-page .sol-content-header {
  display: flex;
  flex-wrap: wrap;
  width: 80%;
  margin: 0 auto;
  padding: 70px;
  position: relative;
}

.legacy-about-page .sol-content-header:not(.has-background) {
  background-color: #093251;
}

.legacy-about-page .sol-content-header:not(.has-text-color) {
  color: #ffffff;
}

.legacy-about-page .solutions-content:nth-of-type(3) .sol-content-header,
.legacy-about-page .solutions-content:nth-of-type(5) .sol-content-header {
  background-color: #6ecff6;
}

.legacy-about-page .solutions-content:nth-of-type(3) .sol-content-header:not(.has-text-color),
.legacy-about-page .solutions-content:nth-of-type(5) .sol-content-header:not(.has-text-color) {
  color: #093251;
}

.legacy-about-page .article-image {
  width: 100%;
  height: auto;
  padding-bottom: 70px;
}

.legacy-about-page .sol-header-content {
  font-family: "legacy-gotham", "Avenir Next", Arial, sans-serif;
  font-size: 1.08rem;
  line-height: 1.75;
  position: relative;
  z-index: 2;
}

.legacy-about-page .sol-header-content h2:not(.has-text-color) {
  font-family: "legacy-cera-bold", "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2rem, 3vw, 2.85rem);
  line-height: 1.18;
  margin-bottom: 24px;
  color: inherit;
}

.legacy-about-page .sol-header-content p:not(.has-text-color) {
  color: inherit;
  margin-bottom: 18px;
}

.legacy-about-page .stripe-set1 {
  height: 600px;
  width: 280px;
  position: absolute;
  top: 180px;
  right: -40px;
  z-index: 0;
  pointer-events: none;
}

.legacy-about-page .stripe-wrap {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
}

.legacy-about-page .stripe1,
.legacy-about-page .stripe2,
.legacy-about-page .stripe3,
.legacy-about-page .stripe4 {
  height: 95px;
  width: 500px;
  position: absolute;
  right: -100px;
  transform: rotate(29deg);
}

.legacy-about-page .stripe1 {
  background: #002640;
  top: 92px;
}

.legacy-about-page .stripe2 {
  background: #ff7006;
  top: 200px;
}

.legacy-about-page .stripe3 {
  background: #002640;
  top: 307px;
}

.legacy-about-page .stripe4 {
  background: #ff7006;
  top: 415px;
}

.legacy-about-page .grey-wrap:not(.has-background) {
  margin-top: 15px;
  padding: 50px 0;
  background-color: #d1d2d4;
}

.legacy-about-page .work-request {
  display: inline-block;
  margin: 0 auto 26px;
  padding: 14px 24px;
  border-radius: 10px;
  border: none;
  font-family: "legacy-gotham", "Helvetica Neue", Arial, sans-serif;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  text-decoration: none;
}

.legacy-about-page .work-request:not(.has-background) {
  background-color: #093251;
}

.legacy-about-page .work-request:not(.has-text-color) {
  color: #ffffff;
}

.legacy-about-page .work-request:hover:not(.has-background) {
  color: #ffffff;
  background-color: #0f4e7f;
}

.legacy-about-page .grey-wrap {
  text-align: center;
}

.legacy-about-page .about-article {
  width: 70%;
  margin: 25px auto;
  text-align: left;
  font-family: "legacy-gotham", "Avenir Next", Arial, sans-serif;
  font-size: 1.06rem;
  line-height: 1.75;
}

.legacy-about-page .about-article:not(.has-text-color) {
  color: #093251;
}

.legacy-about-page .about-article h2:not(.has-text-color) {
  font-family: "legacy-cera-bold", "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2rem, 2.8vw, 2.5rem);
  margin: 25px 0;
  color: #093251;
}

.legacy-about-page .back-to-top {
  height: 60px;
  width: 60px;
  border-radius: 50%;
  border: 2px solid #093250;
  position: relative;
  margin: 84px auto;
  display: block;
  text-decoration: none;
}

.legacy-about-page .btt-bar {
  width: 45%;
  height: 7px;
  background: #093250;
  display: block;
}

.legacy-about-page .btt-bar-left {
  transform-origin: right;
  top: 32%;
  left: 9%;
  position: absolute;
  transform: translateY(-50%) rotate(-40deg);
}

.legacy-about-page .btt-bar-right {
  transform-origin: left;
  top: 32%;
  right: 9%;
  position: absolute;
  transform: translateY(-50%) rotate(40deg);
}

.legacy-about-page .button-text {
  position: absolute;
  width: 100px;
  font-size: 0.95rem;
  text-align: center;
  top: 120%;
  left: 50%;
  transform: translateX(-50%);
  font-family: "legacy-cera-bold", "Helvetica Neue", Arial, sans-serif;
  color: #093250;
}

@media (max-width: 1200px) {
  .legacy-about-page .solutions-title {
    font-size: 1.5rem;
  }

  .legacy-about-page .sol-content-header {
    width: 92%;
    padding: 28px;
  }

  .legacy-about-page .about-article {
    width: 90%;
  }
}

@media (max-width: 940px) {
  .legacy-about-page .solutions-tabs {
    flex-wrap: wrap;
  }

  .legacy-about-page .solutions-tab-wrap {
    width: 50%;
    min-height: 320px;
  }

  .legacy-about-page .solutions-title {
    margin-bottom: 0;
    min-height: 70px;
    font-size: 1.2rem;
    padding: 10px;
  }

  .legacy-about-page .solutions-bottom-title {
    display: none;
  }

  .legacy-about-page .sol-content-header {
    width: 100%;
    padding: 20px;
  }

  .legacy-about-page .article-image {
    padding-bottom: 24px;
  }

  .legacy-about-page .stripe-set1 {
    display: none;
  }
}

@media (max-width: 550px) {
  .legacy-about-page .solutions-tab-wrap {
    width: 100%;
    min-height: 250px;
  }

  .legacy-about-page .sol-header-content {
    font-size: 1rem;
  }

  .legacy-about-page .work-request {
    width: 90%;
    text-align: center;
  }
}

/* ==========================================================================
   Legacy About Blocks (native block version)
   ========================================================================== */
.legacy-about-page .solutions-content {
  display: block !important;
}

.legacy-about-page .legacy-about-tabs {
  margin: 0;
  padding: 0;
}

.legacy-about-page .solutions-tabs {
  gap: 0 !important;
  margin-bottom: 0;
}

.legacy-about-page .solutions-tabs .wp-block-column {
  margin: 0 !important;
}

.legacy-about-page .solutions-tab-wrap {
  width: 100%;
  min-height: 320px;
  filter: none;
  border-radius: 0;
}

.legacy-about-page .solutions-title {
  margin: 0;
}

.legacy-about-page .solutions-title a {
  color: inherit;
  text-decoration: none;
}

.legacy-about-page .solutions-bottom-title {
  margin: 0;
}

.legacy-about-page .solutions-bottom-title a {
  color: inherit;
  text-decoration: none;
}

.legacy-about-page .sol-content-header {
  width: 80%;
  margin: 0 auto;
}

.legacy-about-page .sol-content-header:not(.has-background) {
  background-color: #093251;
}

.legacy-about-page .sol-content-header:not(.has-text-color) {
  color: #ffffff;
}

.legacy-about-page .sol-content-header.is-light-panel:not(.has-background) {
  background-color: #6ecff6;
}

.legacy-about-page .sol-content-header.is-light-panel:not(.has-text-color) {
  color: #093251;
}

.legacy-about-page .sol-content-header .wp-block-group__inner-container {
  padding: 0;
}

.legacy-about-page .sol-content-header.is-light-panel .sol-header-content h2:not(.has-text-color),
.legacy-about-page .sol-content-header.is-light-panel .sol-header-content p:not(.has-text-color) {
  color: #093251;
}

.legacy-about-page .work-request .wp-block-button__link:not(.has-background) {
  background-color: #093251;
}

.legacy-about-page .work-request .wp-block-button__link:not(.has-text-color) {
  color: #ffffff;
}

.legacy-about-page .work-request .wp-block-button__link {
  border-radius: 10px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  padding: 14px 24px;
  font-size: 0.9rem;
}

.legacy-about-page .work-request .wp-block-button__link:hover:not(.has-background) {
  background-color: #0f4e7f;
  color: #ffffff;
}

@media (max-width: 940px) {
  .legacy-about-page .sol-content-header {
    width: 100%;
  }
}

/* ==========================================================================
   Reusable Internal Page Patterns
   ========================================================================== */
.protech-inner-hero {
  padding: 84px 0 64px;
  color: #ffffff;
  background: linear-gradient(130deg, #05152e 0%, #093a60 52%, #0aa9cb 100%);
}

.protech-inner-hero__content {
  max-width: 1200px;
  margin: 0 auto;
}

.protech-inner-eyebrow {
  margin: 0 0 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-size: 0.75rem;
  color: #9ddff7;
}

.protech-inner-hero h1 {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.protech-inner-hero .wp-block-post-title {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.15;
}

.protech-inner-lead {
  margin: 0;
  max-width: 760px;
  color: #dbe7f3;
  font-size: 1.06rem;
}

.protech-inner-hero .wp-block-post-excerpt__excerpt {
  margin: 0;
}

.protech-content-band {
  padding: 72px 0;
  background: #eef3f8;
}

.protech-content-band__card {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(5, 20, 43, 0.08);
}

.protech-content-band__card h2,
.protech-content-band__card h3 {
  color: #093251;
}

.protech-content-band__card ul {
  margin: 0;
  padding-left: 1.2rem;
}

.protech-global-cta-strip {
  padding: 30px 0 34px;
  background: #052642;
}

.protech-global-cta-strip__lead {
  margin: 0 0 14px;
  color: #a9c8df;
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.protech-global-cta-strip .wp-block-button__link {
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  padding: 10px 22px;
}

.protech-global-cta-strip .is-style-fill .wp-block-button__link {
  color: #0a2c4a;
  border: 0;
  background: #0ec5f6;
}

.protech-global-cta-strip .is-style-outline .wp-block-button__link {
  color: #9ddff7;
  border: 1px solid #9ddff7;
  background: transparent;
}

.protech-link-grid-wrap {
  padding: 58px 0;
  background: #e9f0f7;
}

.protech-link-grid {
  margin: 0 auto;
}

.protech-link-grid.wp-block-columns {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 18px;
}

.protech-link-grid.wp-block-columns .wp-block-column {
  margin: 0;
}

.protech-link-card {
  height: 100%;
  min-height: 176px;
  padding: 22px 18px;
  border-radius: 14px;
  border: 1px solid rgba(8, 43, 71, 0.08);
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(7, 31, 54, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.protech-link-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 30px rgba(7, 31, 54, 0.14);
}

.protech-link-card h3 {
  margin: 0 0 10px;
  font-size: 1.12rem;
  color: #082a46;
}

.protech-link-card p {
  margin: 0;
  color: #395671;
  font-size: 0.95rem;
  line-height: 1.6;
}

.protech-link-card a {
  color: inherit;
}

@media (max-width: 768px) {
  .protech-inner-hero {
    padding: 66px 0 52px;
  }

  .protech-content-band {
    padding: 52px 0;
  }

  .protech-content-band__card {
    padding: 24px;
  }

  .protech-link-grid-wrap {
    padding: 44px 0;
  }
}

/* ==========================================================================
   Homepage Precision Pass (2026-02)
   ========================================================================== */
.protech-home .protech-section__inner {
  max-width: 1180px;
  padding: 0 28px;
}

.protech-hero {
  min-height: 620px;
  padding: 176px 0 104px;
}

.protech-hero .wp-block-cover__image-background {
  object-position: center 46%;
}

.protech-hero .wp-block-cover__background {
  opacity: 0.38;
}

.protech-hero__title {
  font-size: clamp(2.2rem, 4.8vw, 4rem);
  line-height: 1.04;
}

.protech-section__title {
  font-size: clamp(2.1rem, 4vw, 4rem);
  line-height: 1.08;
}

.protech-section__lede {
  font-size: clamp(1.05rem, 1.55vw, 1.75rem);
}

.protech-why:not(.has-background),
.protech-partner:not(.has-background),
.protech-roadside:not(.has-background),
.protech-talent:not(.has-background) {
  background-color: #f0f2f4;
  background-image: repeating-radial-gradient(circle at -20% 50%, rgba(19, 52, 81, 0.11) 0 2px, transparent 2px 20px);
}

.protech-why-points {
  display: grid;
  gap: 22px;
}

.protech-why-points .wp-block-details {
  margin: 0;
  padding: 16px 0;
  border-bottom: 1px solid #d5dfe8;
  overflow: hidden;
  height: auto;
}

.protech-why-points .wp-block-details.is-animating {
  transition: height 0.34s cubic-bezier(0.33, 1, 0.68, 1);
}

.protech-why-points .wp-block-details:last-child {
  border-bottom: 0;
}

.protech-why-points .wp-block-details summary {
  list-style: none;
  cursor: pointer;
  position: relative;
  margin: 0;
  padding-right: 28px;
  color: #163451;
  font-size: 1.18rem;
  font-weight: 700;
  line-height: 1.25;
}

.protech-why-points .wp-block-details summary::-webkit-details-marker {
  display: none;
}

.protech-why-points .wp-block-details summary::after {
  content: "+";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  color: #0a4a73;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
  transition: transform 0.24s ease, opacity 0.2s ease;
}

.protech-why-points .wp-block-details[open] summary::after {
  transform: translateY(-50%) rotate(45deg);
}

.protech-why-points .wp-block-details p {
  margin: 0;
  color: #6f849a;
  font-size: 0.95rem;
  line-height: 1.58;
}

.protech-why-points .wp-block-details[open] p {
  margin-top: 10px;
}

.protech-why-photo {
  width: min(100%, 390px);
  aspect-ratio: 1 / 1;
  height: 390px !important;
  min-height: 390px !important;
  margin-left: auto;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 16px 30px rgba(8, 24, 43, 0.16);
}

.protech-why-photo .wp-block-cover__image-background {
  object-position: 58% 34%;
}

.protech-slider-indicator {
  display: none;
}

.protech-why-photo .wp-block-cover__background,
.protech-cta-card .wp-block-cover__background,
.protech-roadside .protech-wide-card .wp-block-cover__background {
  background: linear-gradient(142deg, rgba(4, 28, 54, 0.95) 0%, rgba(7, 66, 106, 0.74) 50%, rgba(9, 198, 236, 0.42) 100%);
  opacity: 0.68;
}

.protech-why-photo .wp-block-cover__background {
  opacity: 0.78;
}

.protech-cta-card .wp-block-cover__background {
  opacity: 0.62;
}

.protech-roadside .protech-wide-card .wp-block-cover__background {
  opacity: 0.7;
}

.protech-cta-card {
  min-height: 520px !important;
  border-radius: 36px;
  box-shadow: 0 26px 44px rgba(8, 22, 39, 0.24);
}

.protech-cta-card .wp-block-cover__background {
  background: linear-gradient(180deg, rgba(5, 46, 76, 0.08) 0%, rgba(6, 58, 93, 0.46) 58%, rgba(5, 48, 79, 0.78) 100%);
  opacity: 0.96;
}

.protech-cta-card .wp-block-cover__image-background {
  object-position: center 24%;
}

.protech-cta-card .wp-block-cover__inner-container {
  min-height: 100%;
  padding: 36px 30px 28px;
  display: flex;
  align-items: flex-end;
}

.protech-cta-card__content h4 {
  font-size: clamp(1.9rem, 2.5vw, 2.9rem);
  line-height: 1.03;
  max-width: 84%;
  margin-bottom: 10px;
}

.protech-cta-card__content p {
  margin: 0 0 10px;
  color: #d8eaf7;
  font-size: 1rem;
  line-height: 1.42;
  max-width: 92%;
}

.protech-cta-card .protech-btn-primary .wp-block-button__link {
  min-width: 214px;
  justify-content: center;
}

.protech-roadside .protech-wide-card {
  min-height: 244px !important;
  box-shadow: 0 20px 40px rgba(5, 18, 34, 0.26);
}

.protech-roadside .protech-wide-card .wp-block-cover__image-background {
  object-position: center 50%;
}

.protech-coverage {
  padding-top: 76px;
  padding-bottom: 74px;
}

.protech-map {
  min-height: 470px;
  max-width: 1120px;
  border-radius: 0;
  box-shadow: none;
}

.protech-map::before,
.protech-map::after {
  content: none;
}

.protech-map .wp-block-cover__background {
  opacity: 0.16;
}

.protech-map .wp-block-cover__image-background {
  object-fit: contain;
  object-position: center center;
}

.protech-talent {
  padding-top: 58px;
  padding-bottom: 0;
}

.protech-talent-layout > .wp-block-column:first-child {
  flex-basis: 40% !important;
}

.protech-talent-layout > .wp-block-column:last-child {
  flex-basis: 60% !important;
}

.protech-talent-card {
  max-width: 420px;
  box-shadow: none;
}

.protech-portrait {
  border-radius: 0;
  box-shadow: none;
  min-height: 500px !important;
}

.protech-portrait .wp-block-cover__image-background {
  object-fit: contain;
  object-position: center bottom;
}

@media (max-width: 900px) {
  .protech-home .protech-section__inner {
    padding: 0 18px;
  }

  .protech-hero {
    min-height: 520px;
    padding: 140px 0 74px;
  }

  .protech-cta-card {
    min-height: 400px !important;
  }

  .protech-cta-card__content h4 {
    max-width: none;
    font-size: 1.7rem;
  }

  .protech-cta-card__content p {
    font-size: 0.92rem;
  }

  .protech-map {
    min-height: 310px;
  }

  .protech-why-photo {
    width: 100%;
    max-width: 420px;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1;
    margin: 14px auto 0;
  }

  .protech-talent {
    padding-bottom: 24px;
  }

  .protech-portrait {
    min-height: 360px !important;
  }
}

/* ==========================================================================
   Home Assets Sync (2026-02-21)
   ========================================================================== */
.site-branding .protech-wordmark-link {
  display: block;
  line-height: 0;
}

.site-branding .protech-wordmark {
  display: block;
  width: auto;
  height: 20px;
  max-width: 220px;
}

.footer-about .protech-wordmark-link {
  display: inline-block;
  line-height: 0;
}

.footer-about .protech-wordmark {
  display: block;
  width: min(238px, 100%);
  height: auto;
}

.footer-about .footer-logo .custom-logo {
  max-height: 30px;
  width: auto;
  filter: brightness(0) invert(1) opacity(0.9);
}

.footer-social .social-icon {
  display: inline-flex;
  width: 18px;
  height: 18px;
  align-items: center;
  justify-content: center;
}

.footer-social .social-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.footer-social .social-icon::before {
  content: none !important;
}

.protech-roadside .protech-wide-card {
  position: relative;
  overflow: hidden;
  width: min(1200px, calc(100vw - 40px));
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 1810 / 360 !important;
  min-height: 0 !important;
  height: auto !important;
}

.protech-roadside .protech-wide-card[style*='aspect-ratio'] {
  aspect-ratio: 1810 / 360 !important;
}

.protech-roadside .protech-wide-card::after {
  content: none;
  display: none;
}

.protech-roadside .protech-wide-card .wp-block-cover__inner-container {
  position: relative;
  z-index: 3;
  max-width: 56%;
}

.protech-roadside .protech-wide-card .wp-block-cover__image-background {
  object-fit: cover;
  object-position: center center;
}

.protech-map .wp-block-cover__image-background {
  object-fit: cover;
  object-position: center 52%;
}

@media (max-width: 900px) {
  .site-branding .protech-wordmark {
    height: 18px;
    max-width: 190px;
  }

  .protech-roadside .protech-wide-card::after {
    right: 0;
    width: 52%;
  }

  .protech-roadside .protech-wide-card {
    width: calc(100vw - 24px);
    aspect-ratio: 3 / 1 !important;
  }

  .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
    max-width: 68%;
  }
}

/* Remove extra gradient/dim overlays from baked home assets */
.protech-hero .wp-block-cover__background,
.protech-why-photo .wp-block-cover__background,
.protech-cta-card .wp-block-cover__background,
.protech-roadside .protech-wide-card .wp-block-cover__background {
  opacity: 0 !important;
  background: transparent !important;
}

.protech-cta-card .wp-block-cover__gradient-background {
  opacity: 0 !important;
  background: transparent !important;
}

/* Match partner cards to the source image ratio */
.protech-partner .wp-block-cover.protech-cta-card {
  aspect-ratio: 4 / 5 !important;
  min-height: 0 !important;
  height: auto !important;
  width: 100%;
  border-radius: 11% !important;
  overflow: hidden !important;
}

.protech-partner .wp-block-cover.protech-cta-card[style*='aspect-ratio'] {
  aspect-ratio: 4 / 5 !important;
}

.protech-partner .protech-grid.two-up {
  align-items: stretch;
}

.protech-partner .protech-grid.two-up > .wp-block-column {
  display: flex;
}

.protech-partner .protech-grid.two-up > .wp-block-column > .wp-block-cover.protech-cta-card {
  flex: 1 1 auto;
}

.protech-partner .protech-cta-card .wp-block-cover__inner-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  min-height: 100%;
  padding: 44px 28px 26px;
}

.protech-partner .protech-cta-card .protech-cta-card__content {
  width: 100%;
  text-align: center;
}

.protech-partner .protech-cta-card .protech-cta-card__content .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.protech-partner .protech-cta-card .protech-cta-card__content h4 {
  margin-bottom: 12px;
  max-width: 92%;
}

.protech-partner .protech-cta-card .protech-cta-card__content p {
  margin: 0 0 14px;
  max-width: 88%;
}

.protech-partner .protech-cta-card .protech-btn-primary {
  margin: 0 auto;
}

/* Roadside card from v2 source: right-aligned car, wide strip ratio */
.protech-roadside .protech-wide-card:not(.has-background) {
  background: linear-gradient(90deg, #062a48 0%, #0a3f63 62%, #0d5b7d 100%);
}

.protech-roadside .protech-wide-card .wp-block-cover__image-background {
  opacity: 1 !important;
}

.protech-roadside .protech-wide-card::after {
  content: none;
  display: none;
}

.protech-roadside .protech-wide-card .wp-block-cover__inner-container {
  max-width: min(560px, 45%);
}

/* Bottom talent section uses wave background; both columns stay in one wrap */
.protech-talent:not(.has-background) {
  position: relative;
  overflow: hidden;
  background-color: #eef2f6;
  background-image: none;
}

.protech-talent::before {
  content: '';
  position: absolute;
  inset: 0;
  background: none;
  opacity: 0.42;
  pointer-events: none;
}

.protech-talent .protech-section__inner {
  position: relative;
  z-index: 1;
}

.protech-talent .protech-talent-layout {
  flex-wrap: nowrap !important;
  align-items: flex-end;
}

.protech-talent .protech-talent-layout > .wp-block-column:last-child {
  display: flex;
  align-items: flex-end;
}

.protech-talent .protech-portrait .wp-block-cover__background {
  opacity: 0 !important;
}

@media (max-width: 900px) {
  .protech-roadside .protech-wide-card::after {
    width: 58%;
  }

  .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
    max-width: 66%;
  }

  .protech-talent::before {
    background-size: 120% auto;
    background-position: right top;
    opacity: 0.34;
  }

  .protech-talent .protech-talent-layout {
    flex-wrap: wrap !important;
  }
}

/* Final talent section alignment to v2 comp */
.protech-talent {
  padding-top: 56px !important;
  padding-bottom: 30px !important;
}

.protech-talent::before {
  background: none;
  opacity: 0.28;
}

.protech-talent .protech-talent-layout {
  display: flex;
  flex-wrap: nowrap !important;
  align-items: flex-end;
  gap: 24px;
}

.protech-talent .protech-talent-layout > .wp-block-column:first-child {
  flex: 0 0 43% !important;
}

.protech-talent .protech-talent-layout > .wp-block-column:last-child {
  flex: 1 1 57% !important;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

.protech-talent .protech-portrait {
  width: 100% !important;
  min-height: 410px !important;
  height: auto !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.protech-talent .protech-portrait .wp-block-cover__image-background {
  object-fit: contain !important;
  object-position: right bottom !important;
}

@media (max-width: 900px) {
  .protech-talent::before {
    background-size: 125% auto;
    background-position: right top;
    opacity: 0.25;
  }

  .protech-talent .protech-talent-layout {
    flex-wrap: wrap !important;
    gap: 18px;
  }

  .protech-talent .protech-talent-layout > .wp-block-column:first-child,
  .protech-talent .protech-talent-layout > .wp-block-column:last-child {
    flex: 1 1 100% !important;
  }

  .protech-talent .protech-portrait {
    min-height: 300px !important;
  }
}

/* Talent section match: Protech_Webpage Resdesign_Home_20260129_v2-01 */
.protech-talent:not(.has-background) {
  background: #032f4d;
  padding: 34px 24px 40px !important;
}

.protech-talent::before {
  content: none !important;
}

.protech-talent .protech-section__inner {
  max-width: 1840px !important;
  background: #e9edf1;
  border-radius: 56px;
  padding: 72px 78px 0 !important;
  overflow: hidden;
  position: relative;
}

.protech-talent .protech-section__inner::before {
  content: '';
  position: absolute;
  inset: 0;
  background: none;
  opacity: 0.36;
  pointer-events: none;
  z-index: 1;
}

.protech-talent .protech-talent-layout {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-end !important;
  gap: 10px;
  position: relative;
  z-index: 2;
}

.protech-talent .protech-talent-layout > .wp-block-column:first-child {
  flex: 0 0 46% !important;
}

.protech-talent .protech-talent-layout > .wp-block-column:last-child {
  flex: 1 1 54% !important;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

.protech-talent .protech-talent-card {
  max-width: 740px;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.protech-talent .protech-talent-card h3 {
  font-size: clamp(3rem, 5vw, 5.1rem);
  line-height: 0.98;
  letter-spacing: -0.02em;
  margin: 0 0 28px;
  color: #083b5a;
}

.protech-talent .protech-talent-card p {
  max-width: 700px;
  margin: 0 0 36px;
  font-size: clamp(1.2rem, 1.55vw, 2rem);
  line-height: 1.18;
  color: #121417;
}

.protech-talent .protech-btn-primary .wp-block-button__link {
  min-width: 390px;
  min-height: 82px;
  border-radius: 999px;
  font-size: 2.95rem;
  line-height: 1;
  letter-spacing: 0;
  color: #082842;
  box-shadow: none;
  text-transform: none;
  padding: 14px 26px;
}

.protech-talent .protech-portrait {
  width: 100% !important;
  min-height: 940px !important;
  height: auto !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.protech-talent .protech-portrait .wp-block-cover__background,
.protech-talent .protech-portrait .wp-block-cover__gradient-background {
  opacity: 0 !important;
  background: transparent !important;
}

.protech-talent .protech-portrait .wp-block-cover__image-background {
  object-fit: contain !important;
  object-position: right bottom !important;
}

@media (max-width: 1200px) {
  .protech-talent .protech-section__inner {
    border-radius: 34px;
    padding: 44px 30px 0 !important;
  }

  .protech-talent .protech-section__inner::before {
    background-size: 95% auto;
    opacity: 0.28;
  }

  .protech-talent .protech-talent-layout {
    flex-wrap: wrap !important;
    gap: 20px;
  }

  .protech-talent .protech-talent-layout > .wp-block-column:first-child,
  .protech-talent .protech-talent-layout > .wp-block-column:last-child {
    flex: 1 1 100% !important;
  }

  .protech-talent .protech-btn-primary .wp-block-button__link {
    min-width: 220px;
    min-height: 54px;
    font-size: 1.7rem;
  }

  .protech-talent .protech-portrait {
    min-height: 380px !important;
  }
}

/* Final home width + talent section correction */
.protech-home .protech-section__inner,
.protech-home .wp-block-group.alignwide.protech-wide-card,
.protech-home .wp-block-cover.alignwide {
  max-width: 1200px !important;
  width: min(1200px, calc(100vw - 40px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.protech-talent:not(.has-background) {
  background: #032f4d;
  padding: 24px 16px 34px !important;
}

.protech-talent .protech-section__inner {
  max-width: 1200px !important;
  width: min(1200px, calc(100vw - 40px)) !important;
  background: #e9edf1;
  border-radius: 44px;
  padding: 56px 52px 0 !important;
  overflow: visible !important;
}

.protech-talent .protech-section__inner::before {
  background: none;
  opacity: 0.28;
}

.protech-talent .protech-talent-card h3 {
  font-size: clamp(2.3rem, 4vw, 3.7rem);
  line-height: 1.02;
  margin-bottom: 18px;
}

.protech-talent .protech-talent-card p {
  font-size: clamp(1rem, 1.4vw, 1.8rem);
  line-height: 1.22;
  margin: 0 0 22px;
}

.protech-talent .protech-btn-primary .wp-block-button__link {
  min-width: 250px;
  min-height: 56px;
  font-size: clamp(1.05rem, 1.6vw, 1.45rem);
  padding: 10px 24px;
}

.protech-talent .protech-talent-layout > .wp-block-column:first-child {
  flex: 0 0 45% !important;
}

.protech-talent .protech-talent-layout > .wp-block-column:last-child {
  flex: 1 1 55% !important;
}

.protech-talent .protech-portrait {
  min-height: 760px !important;
  margin-top: -156px;
}

.protech-talent .protech-portrait .wp-block-cover__image-background {
  object-position: right bottom !important;
  transform: translateY(-72px);
  height: calc(100% + 72px);
}

@media (max-width: 1200px) {
  .protech-talent .protech-section__inner {
    border-radius: 28px;
    padding: 36px 24px 0 !important;
    width: min(1200px, calc(100vw - 24px)) !important;
  }

  .protech-talent .protech-portrait {
    min-height: 380px !important;
    margin-top: 0;
  }

  .protech-talent .protech-portrait .wp-block-cover__image-background {
    transform: none;
    height: 100%;
  }
}

/* Homepage cleanup pass (v2 comp): enforce shared wrap + talent section proportions */
.home .protech-home .protech-section__inner,
.home .protech-home .wp-block-cover.alignwide,
.home .protech-home .wp-block-group.alignwide.protech-wide-card {
  max-width: 1200px !important;
  width: min(1200px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.home .protech-talent:not(.has-background) {
  background: #032f4d;
  padding: 64px 0 40px !important;
  overflow: visible !important;
}

.home .protech-talent .protech-section__inner:not(.has-background) {
  position: relative;
  overflow: visible !important;
  background: #e9edf1;
  border-radius: 52px !important;
  box-shadow: 0 18px 34px rgba(8, 21, 37, 0.16) !important;
  padding: 54px 54px 0 !important;
  min-height: 520px;
}

.home .protech-talent .protech-section__inner::before {
  content: '';
  position: absolute;
  inset: 0;
  background: none;
  opacity: 0.3;
  pointer-events: none;
  z-index: 0;
}

.home .protech-talent .protech-talent-layout {
  position: relative;
  z-index: 2;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-end !important;
  gap: 22px !important;
  margin-bottom: 0 !important;
}

.home .protech-talent .protech-talent-layout > .wp-block-column:first-child {
  flex: 0 0 50% !important;
}

.home .protech-talent .protech-talent-layout > .wp-block-column:last-child {
  flex: 0 0 50% !important;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  align-self: flex-end !important;
  line-height: 0;
  padding-bottom: 0 !important;
}

.home .protech-talent .protech-talent-layout > .wp-block-column {
  margin-bottom: 0 !important;
}

.home .protech-talent .protech-talent-card {
  max-width: 560px !important;
  padding: 0 !important;
}

.home .protech-talent .protech-talent-card h3 {
  font-size: clamp(2rem, 3.35vw, 3.55rem);
  line-height: 1.04 !important;
  margin: 0 0 18px !important;
  letter-spacing: -0.015em;
}

.home .protech-talent .protech-talent-card p {
  max-width: 495px;
  font-size: clamp(0.95rem, 1.35vw, 1.48rem);
  line-height: 1.24 !important;
  margin: 0 0 24px !important;
}

.home .protech-talent .protech-btn-primary .wp-block-button__link {
  min-width: 228px !important;
  min-height: 52px !important;
  padding: 10px 28px !important;
  font-size: clamp(1rem, 1.1vw, 1.2rem);
  text-transform: none !important;
}

.home .protech-talent .protech-portrait {
  min-height: 560px !important;
  margin-top: -58px !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  box-shadow: none !important;
}

.home .protech-talent .protech-portrait .wp-block-cover__background,
.home .protech-talent .protech-portrait .wp-block-cover__gradient-background,
.home .protech-talent .protech-portrait .wp-block-cover__inner-container {
  display: none !important;
}

.home .protech-talent .protech-portrait .wp-block-cover__image-background {
  left: auto !important;
  right: 24px !important;
  top: auto !important;
  bottom: 0 !important;
  width: auto !important;
  height: calc(100% + 58px) !important;
  max-width: none !important;
  display: block !important;
  object-fit: contain !important;
  object-position: right bottom !important;
  transform: none !important;
}

@media (max-width: 1024px) {
  .home .protech-home .protech-section__inner,
  .home .protech-home .wp-block-cover.alignwide,
  .home .protech-home .wp-block-group.alignwide.protech-wide-card {
    width: min(1200px, calc(100vw - 28px)) !important;
  }

  .home .protech-talent .protech-section__inner {
    border-radius: 30px !important;
    padding: 40px 30px 0 !important;
    min-height: auto;
  }

  .home .protech-talent .protech-talent-layout {
    flex-wrap: wrap !important;
  }

  .home .protech-talent .protech-talent-layout > .wp-block-column:first-child,
  .home .protech-talent .protech-talent-layout > .wp-block-column:last-child {
    flex: 1 1 100% !important;
  }

  .home .protech-talent .protech-portrait {
    min-height: 380px !important;
    margin-top: 0 !important;
  }

  .home .protech-talent .protech-portrait .wp-block-cover__image-background {
    width: 100% !important;
    height: 100% !important;
    top: 0 !important;
  }
}

/* Coverage map correction to match v2 comp */
.home .protech-coverage {
  padding-top: 74px !important;
  padding-bottom: 80px !important;
}

.home .protech-coverage .protech-map {
  margin-top: 30px !important;
  max-width: 980px !important;
  width: min(980px, calc(100vw - 48px)) !important;
  min-height: 0 !important;
  aspect-ratio: 2.35 / 1 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

.home .protech-coverage .protech-map .wp-block-cover__background,
.home .protech-coverage .protech-map .wp-block-cover__gradient-background {
  opacity: 0 !important;
  background: transparent !important;
}

.home .protech-coverage .protech-map .wp-block-cover__image-background {
  left: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
}

@media (max-width: 900px) {
  .home .protech-coverage .protech-map {
    width: min(980px, calc(100vw - 28px)) !important;
    aspect-ratio: 1.82 / 1 !important;
  }
}

/* Coverage + talent background gradient from dark (top) to lighter blue (bottom) */
.home .protech-coverage:not(.has-background) {
  background: linear-gradient(180deg, #000 0%, #011f36 50%, #0b4f75 100%);
}

.home .protech-talent:not(.has-background) {
  background: linear-gradient(180deg, #0b4f75 0%, #093f62 36%, #032f4d 100%);
}

/* Remove seam between home talent section and footer */
.home .site-header {
  background: #032f4d;
}

.home .site-footer {
  background: #032f4d !important;
}

/* One shared texture behind the full white-content band */
.home .protech-home {
  position: relative;
  background-color: #f0f2f4 !important;
}

.home .protech-home > .wp-block-group__inner-container {
  background-color: #f0f2f4 !important;
}

.home .protech-home-bg-texture {
  position: absolute;
  top: 560px;
  left: 0;
  z-index: 0;
  width: 100%;
  margin: 0;
  pointer-events: none;
}

.home .protech-home-bg-texture img {
  display: block;
  width: 100%;
  height: auto;
}

.home .protech-home > :not(.protech-home-bg-texture),
.home .protech-home > .wp-block-group__inner-container > :not(.protech-home-bg-texture) {
  position: relative;
  z-index: 1;
}

.home .protech-why:not(.has-background),
.home .protech-partner:not(.has-background),
.home .protech-roadside:not(.has-background) {
  background: transparent;
}

.protech-redesign-page:is(.protech-redesign-adas, .protech-redesign-collision):not(.has-background) {
  background-color: #fff;
}

.protech-redesign-page:is(.protech-redesign-adas, .protech-redesign-collision) .protech-redesign-wave-run:not(.has-background) {
  background-color: #fff;
  background-image: url("assets/images/redesign/adas-light-wave-pattern.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.protech-redesign-page:is(.protech-redesign-adas, .protech-redesign-collision) .protech-redesign-wave-run {
  padding: 0 !important;
}

.protech-redesign-page:is(.protech-redesign-adas, .protech-redesign-collision) .protech-redesign-wave-run :is(.protech-redesign-light, .protech-why):not(.has-background) {
  background-color: transparent;
  background-image: none;
}

/* Home final polish pass (design parity + consistency) */
.home .site-header {
  position: fixed !important;
  top: 0 !important;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 12px 0 !important;
  background: transparent !important;
}

.home.admin-bar .site-header {
  top: 32px !important;
}

.home .header-main .container {
  max-width: 1280px !important;
}

.home .site-branding .protech-wordmark {
  height: 25px !important;
  max-width: 300px !important;
}

.home .primary-menu-container > ul,
.home .header-cta .btn {
  min-height: 56px;
}

.home .protech-btn-outline .wp-block-button__link:not(.has-text-color):not(.has-background) {
  color: #ffffff;
  border: 1px solid rgba(119, 222, 255, 0.82);
  background: rgba(4, 33, 56, 0.22);
}

.home .protech-btn-outline .wp-block-button__link:not(.has-text-color):not(.has-background):hover {
  color: #ffffff;
  border-color: rgba(165, 235, 255, 0.95);
  background: rgba(4, 33, 56, 0.34);
}

.home .protech-hero {
  padding: 186px 0 104px !important;
}

.home .protech-hero .protech-hero-buttons {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

.home .protech-hero .protech-hero-buttons .wp-block-button {
  margin: 0 !important;
}

.home .protech-hero .protech-eyebrow:not(.has-text-color) {
  margin: 0 0 22px;
  color: #ffffff;
  font-family: var(--font-primary);
  font-size: clamp(1.55rem, 2.15vw, 2.55rem);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.18;
}

.home .protech-hero__title:not(.has-text-color):not([style*="font-size"]) {
  max-width: min(100%, 1200px);
  margin: 0 auto;
  color: #00d9ff;
  font-family: var(--font-primary);
  font-size: clamp(3rem, 5.6vw, 6.7rem);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: 0;
  overflow-wrap: break-word;
  text-wrap: balance;
}

.home .protech-hero .protech-hero-buttons {
  gap: 28px !important;
  margin-top: 44px;
}

.home .protech-hero-buttons .wp-block-button .wp-block-button__link:not([style*="font-size"]) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 220px;
  min-height: 0;
  border-radius: 999px;
  padding: 14px 30px;
  font-family: var(--font-heading);
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.2;
  text-decoration: none;
}

.home .protech-hero-buttons .protech-btn-primary .wp-block-button__link:not(.has-text-color):not(.has-background) {
  color: #001a29;
  background: #00d9ff;
  border: 1px solid #00d9ff;
}

.home .protech-hero-buttons .protech-btn-outline .wp-block-button__link:not(.has-text-color):not(.has-background) {
  color: #ffffff;
  background: transparent;
  border: 1px solid #00d9ff;
}

.home .protech-home .protech-section__title {
  margin-top: 0 !important;
  margin-bottom: 12px !important;
}

.home .protech-home .protech-section__lede {
  margin-top: 0 !important;
  margin-bottom: 30px !important;
}

.home .protech-why {
  padding-top: 78px !important;
  padding-bottom: 58px !important;
}

.home .protech-partner {
  padding-top: 58px !important;
  padding-bottom: 56px !important;
}

.home .protech-roadside {
  padding-top: 18px !important;
  padding-bottom: 72px !important;
}

.home .protech-roadside .protech-wide-card {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
}

.home .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
  position: relative;
  z-index: 3;
  max-width: min(560px, 44%) !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
  padding: 30px 34px !important;
}

.home .protech-roadside .protech-wide-card::after {
  right: 0 !important;
  width: min(62%, 980px) !important;
  background-position: right center !important;
  background-size: contain !important;
}

.home .protech-coverage {
  padding-top: 76px !important;
  padding-bottom: 80px !important;
}

.home .protech-talent {
  padding-top: 58px !important;
}

.home .protech-why .protech-why-grid,
.home .protech-partner .protech-grid.two-up {
  margin-top: 22px !important;
}

.home .protech-roadside .protech-wide-card,
.home .protech-coverage .protech-map {
  margin-bottom: 0 !important;
}

/* Scroll reveal */
.home .reveal-on-scroll {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity 0.62s ease, transform 0.62s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: opacity, transform;
}

.home .reveal-on-scroll.is-revealed {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .home .reveal-on-scroll,
  .home .reveal-on-scroll.is-revealed {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

@media (max-width: 782px) {
  .home.admin-bar .site-header {
    top: 46px !important;
  }
}

/* About page: section-level match to the approved August artboard. */
.protech-about-hero {
  min-height: 620px;
  padding: 150px 24px 0 !important;
  align-items: stretch;
  background:
    linear-gradient(90deg, rgba(0, 19, 31, .72), rgba(0, 32, 49, .35)),
    url("assets/images/august/contact/contact-wave-background.svg") center 42% / cover no-repeat;
}

.protech-about-hero > .wp-block-group__inner-container {
  display: flex;
  min-height: 470px;
  flex-direction: column;
  justify-content: center;
}

.protech-about-jump {
  position: relative;
  left: 50%;
  width: 100vw;
  margin: auto 0 0 -50vw;
  gap: 10px;
  padding: 22px max(28px, calc((100vw - 1320px) / 2));
  background: rgba(0, 45, 66, .96);
}

.protech-about-jump .wp-block-button__link {
  border-color: #00d9f5;
}

.protech-about-history {
  padding-top: 82px;
  padding-bottom: 62px;
}

.protech-about-history .wp-block-columns {
  gap: 18px;
  margin-top: 34px;
}

.protech-about-history .wp-block-column {
  min-height: 165px;
  background:
    linear-gradient(145deg, rgba(0, 93, 124, .42), rgba(0, 31, 48, .12)),
    linear-gradient(180deg, #004a66 0%, #002f45 100%);
  box-shadow: inset 0 1px rgba(255,255,255,.12), 0 10px 24px rgba(0,38,56,.12);
}

.protech-about-who {
  min-height: 0;
  margin-top: 24px !important;
  margin-bottom: 54px !important;
  padding: 58px 68px !important;
}

.protech-about-who .wp-block-columns {
  align-items: center;
  gap: 65px;
}

.protech-about-who img {
  min-height: 0;
  height: 330px;
}

.protech-about-purpose {
  padding-top: 72px;
  padding-bottom: 78px;
}

.protech-about-purpose .wp-block-column {
  min-height: 350px;
  background:
    radial-gradient(circle at 50% 0%, rgba(0,132,160,.28), transparent 58%),
    linear-gradient(155deg, #00445e 0%, #002e44 100%);
  box-shadow: 0 15px 30px rgba(0, 38, 56, .16);
}

.protech-about-purpose .wp-block-column::before {
  top: 42px;
  width: 86px;
  height: 86px;
  filter: sepia(1) saturate(4) hue-rotate(350deg) brightness(.72);
}

.protech-about-impact {
  min-height: 0;
  margin-top: 26px !important;
  margin-bottom: 42px !important;
  padding: 68px !important;
  background:
    radial-gradient(circle at 50% -25%, rgba(0,124,157,.52), transparent 56%),
    linear-gradient(155deg, #00445e 0%, #00283d 72%);
  box-shadow: 0 22px 48px rgba(0, 36, 53, .18);
}

.protech-about-impact .wp-block-column {
  min-height: 170px;
  border: 1px solid rgba(255,255,255,.78);
  background: linear-gradient(145deg, #ffffff 0%, #edf0f1 100%);
  box-shadow: inset 0 1px #fff, 0 8px 18px rgba(0, 30, 45, .12);
}

.protech-about-story {
  padding-top: 78px;
  padding-bottom: 80px;
}

.protech-about-story .wp-block-column {
  flex: 0 0 min(520px, 68vw);
  min-height: 230px;
  padding: 28px 32px;
  background: linear-gradient(145deg, #00455f, #002e44);
}

.protech-about-story .wp-block-column p {
  font-size: .9rem;
  line-height: 1.42;
}

.protech-about-why {
  min-height: 0;
  margin-top: 30px !important;
  margin-bottom: 40px !important;
  padding: 62px 68px !important;
}

.protech-about-why img {
  min-height: 0;
  height: 360px;
  object-position: center;
}

.protech-about-why h3 {
  color: #fff;
}

.protech-about-leadership {
  padding-top: 80px;
  padding-bottom: 82px;
}

.protech-about-leadership .wp-block-column {
  position: relative;
  min-height: 430px;
  padding: 0;
  background: transparent;
  box-shadow: 0 16px 30px rgba(0,36,54,.18);
}

.protech-about-leadership figure {
  height: 100%;
  margin: 0;
}

.protech-about-leadership img {
  height: 430px;
  border: 0;
  border-radius: 20px;
}

.protech-about-leadership h3,
.protech-about-leadership .wp-block-column > p,
.protech-about-leadership .wp-block-column > a {
  position: absolute;
  z-index: 2;
  left: 0;
  width: 100%;
  margin: 0;
  color: #fff;
  text-align: center;
}

.protech-about-leadership h3 {
  bottom: 62px;
  padding-top: 70px;
  background: linear-gradient(transparent, rgba(0,27,43,.95));
}

.protech-about-leadership .wp-block-column > p { bottom: 36px; }
.protech-about-leadership .wp-block-column > a { bottom: 15px; color: #00d9f5; }

.protech-about-careers {
  position: relative;
  overflow: visible;
  min-height: 0;
  margin-top: 32px !important;
  margin-bottom: 80px !important;
  padding: 62px 72px !important;
  background:
    linear-gradient(100deg, rgba(238,240,241,.97) 0 58%, rgba(238,240,241,.74)),
    url("assets/images/resources/content-bg-desktop.webp") center / cover no-repeat;
}

.protech-about-careers .wp-block-columns {
  min-height: 430px;
  align-items: stretch;
}

.protech-about-careers .wp-block-column:first-child {
  align-self: center;
}

.protech-about-careers .wp-block-column:last-child,
.protech-about-careers figure {
  position: relative;
  min-height: 430px;
  margin: 0;
}

.protech-about-careers img {
  position: absolute;
  right: -30px;
  bottom: -62px;
  width: 115%;
  height: 520px;
  min-height: 0;
  object-fit: contain;
  object-position: center bottom;
  transform: none;
}

.protech-about-press .wp-block-column:first-child h3 {
  position: relative;
  padding-left: 66px;
}

.protech-about-press .wp-block-column:first-child h3::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 44px;
  height: 44px;
  background: center / contain no-repeat;
  filter: invert(52%) sepia(98%) saturate(2274%) hue-rotate(354deg) brightness(100%) contrast(103%);
  transform: translateY(-50%);
}

.protech-about-press .wp-block-column:first-child h3:nth-of-type(1)::before { background-image: url("assets/images/redesign/icons/icon-clipboard.svg"); }
.protech-about-press .wp-block-column:first-child h3:nth-of-type(2)::before { background-image: url("assets/images/redesign/icons/icon-identify.svg"); }
.protech-about-press .wp-block-column:first-child h3:nth-of-type(3)::before { background-image: url("assets/images/redesign/icons/icon-mobile.svg"); }

@media (max-width: 782px) {
  .protech-about-hero {
    min-height: 690px;
    padding: 112px 18px 0 !important;
  }

  .protech-about-hero > .wp-block-group__inner-container { min-height: 578px; }
  .protech-about-jump { padding: 18px; }
  .protech-about-who { margin-bottom: 28px !important; padding: 38px 24px !important; }
  .protech-about-who img { height: 260px; }
  .protech-about-purpose .wp-block-column::before { width: 58px; height: 58px; }
  .protech-about-story .wp-block-column { flex-basis: 86%; min-height: 210px; }
  .protech-about-why img { height: 260px; }
  .protech-about-leadership .wp-block-column,
  .protech-about-leadership img { min-height: 0; height: 330px; }
  .protech-about-careers { margin-bottom: 65px !important; padding-bottom: 0 !important; }
  .protech-about-careers .wp-block-columns { min-height: 0; }
  .protech-about-careers .wp-block-column:last-child,
  .protech-about-careers figure { min-height: 360px; }
  .protech-about-careers img { right: -20px; bottom: 0; height: 390px; }
}

/* ==========================================================================
   August 2026 Press, Contact, and dynamic content modules
   ========================================================================== */
.protech-press-page,
.protech-contact-redesign {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
}

.protech-press-page {
  overflow-x: clip;
}

.protech-press-page > .wp-block-group__inner-container,
.protech-contact-redesign > .wp-block-group__inner-container {
  width: 100%;
}

/* Press is linked from Newsroom rather than a top-level header item. */
body:has(.protech-press-page) .primary-menu-container .menu > .current_page_parent > a::after,
body:has(.protech-press-page) .primary-menu-container .menu > .current-menu-ancestor > a::after {
  transform: scaleX(0);
}

.protech-press-hub {
  color: #07384e;
  background: #fff url("assets/images/resources/content-bg-desktop.webp") center top / cover no-repeat;
}

.protech-press-featured {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: 650px;
  padding: 150px 24px 82px;
  overflow: hidden;
  color: #fff;
  background-color: #001a29;
  background-position: center;
  background-size: cover;
}

.protech-press-featured::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(rgba(0, 17, 29, .38), rgba(0, 23, 35, .7));
}

.protech-press-featured__inner {
  width: min(100%, 1320px);
  margin: 0 auto;
  text-align: center;
}

.protech-press-featured__inner > p {
  margin: 0 0 18px;
  color: #fff;
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: .04em;
}

.protech-press-featured h1 {
  max-width: 1200px;
  margin: 0 auto 54px;
  color: #00d9ff;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(3rem, 5vw, 5.7rem);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -.045em;
  text-wrap: balance;
}

.protech-press-featured__actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px;
}

.protech-press-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 240px;
  min-height: 54px;
  border: 2px solid #00d9ff;
  border-radius: 999px;
  padding: 12px 28px;
  color: #001a29;
  background: #00d9ff;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.protech-press-btn--outline {
  gap: 18px;
  color: #fff;
  background: rgba(0, 26, 41, .55);
}

.protech-press-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 46px 64px;
  width: min(100% - 48px, 1180px);
  margin: 0 auto;
  padding: 28px 0 92px;
}

.protech-press-filters {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  width: min(100% - 48px, 1180px);
  margin: 0 auto;
  padding-top: 34px;
}

.protech-press-filters__label {
  margin-right: 4px;
  color: #06415a;
  font-weight: 700;
}

.protech-press-filters button {
  min-height: 40px;
  border: 2px solid #00cfee;
  border-radius: 999px;
  padding: 8px 20px;
  color: #06415a !important;
  background: rgba(255, 255, 255, .88) !important;
  font: inherit;
  font-size: .82rem;
  font-weight: 700;
  cursor: pointer;
}

.protech-press-filters button:is(:hover, :focus-visible, .is-active) {
  color: #001a29 !important;
  background: #00d9ff !important;
}

.protech-press-results {
  margin-left: auto;
  color: #477080;
  font-size: .82rem;
  font-weight: 600;
}

.protech-press-card[hidden] {
  display: none;
}

.protech-press-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border-radius: 28px;
  background: #eef0f1;
  box-shadow: 0 15px 28px rgba(0, 36, 53, .2);
}

.protech-press-card__image {
  display: block;
  aspect-ratio: 1.45 / 1;
  overflow: hidden;
  background: #003448;
}

.protech-press-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.protech-press-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 22px 24px 28px;
}

.protech-press-card__term {
  align-self: flex-start;
  margin: 0 0 14px;
  border-radius: 999px;
  padding: 6px 18px;
  color: #002d43;
  background: #00d9ff;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1;
}

.protech-press-card h2 {
  margin: 0 0 28px;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(1.45rem, 2.1vw, 2rem);
  font-weight: 500;
  line-height: 1.05;
}

.protech-press-card h2 a {
  color: #06415a;
  text-decoration: none;
}

.protech-press-card time {
  margin-top: auto;
  color: #00aaca;
  font-size: .95rem;
  font-weight: 700;
}

.protech-press-media {
  position: relative;
  z-index: 2;
  isolation: isolate;
  width: min(100% - 48px, 1320px);
  margin: 0 auto -205px !important;
  border-radius: 58px;
  padding: 52px 56px 0 !important;
  overflow: visible;
  color: #182b35;
  background: transparent;
  box-shadow: 0 18px 45px rgba(0, 36, 53, .18);
}

.protech-press-media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(105deg, rgba(239, 239, 239, .95) 0%, rgba(226, 226, 226, .94) 56%, rgba(200, 201, 202, .94) 100%),
    url("assets/images/resources/content-bg-desktop.webp") center / cover;
}

.protech-press-media h2 {
  margin: 0 0 24px;
  color: #06415a;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(2.2rem, 3.4vw, 3.5rem);
  font-weight: 500;
  line-height: 1;
}

.protech-press-media p {
  margin: 0 0 14px;
  font-size: 1rem;
  line-height: 1.35;
}

.protech-press-media p a {
  color: #00aaca;
  font-weight: 700;
}

.protech-press-media__button .wp-block-button__link {
  margin-top: 16px;
  color: #001a29;
  background: #00d9ff;
}

.protech-press-media__person {
  position: relative;
  height: 520px;
  margin: 0;
}

.protech-press-media__person img {
  position: absolute;
  bottom: 0;
  left: 80%;
  width: 270%;
  max-width: none;
  height: 172%;
  margin: 0;
  object-fit: contain;
  object-position: center bottom;
  transform: translateX(-50%);
}

.protech-press-faq {
  margin: 0;
  padding: 300px 24px 130px !important;
  color: #fff;
  background: #003a54;
}

.protech-press-faq > .wp-block-group__inner-container {
  width: min(100%, 1200px);
  margin: 0 auto;
}

.protech-press-faq h2 {
  margin: 0 0 60px;
  color: #00d9ff;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(2.7rem, 4.4vw, 4.6rem);
  font-weight: 400;
}

.protech-press-faq details {
  margin: 0;
  border-bottom: 1px solid rgba(255,255,255,.55);
  padding: 28px 8px;
}

.protech-press-faq summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  list-style: none;
  color: #fff;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  font-weight: 600;
  cursor: pointer;
}

.protech-press-faq summary::-webkit-details-marker {
  display: none;
}

.protech-press-faq summary::after {
  content: "⌄";
  flex: 0 0 auto;
  color: #00d9ff;
  font-size: 1.25em;
  font-weight: 400;
  line-height: .7;
  transform: translateY(-2px);
}

.protech-press-faq details[open] summary::after {
  content: "⌃";
  transform: translateY(3px);
}

.protech-press-faq details > :not(summary) {
  max-width: 1040px;
  color: #fff;
  line-height: 1.5;
}

.protech-contact-page {
  min-height: 960px;
  padding: 176px 24px 120px;
  color: #fff;
  background: #001a29 url("assets/images/august/contact/contact-wave-background.svg") center top / cover no-repeat;
}

.protech-contact-page__inner {
  width: min(100%, 980px);
  margin: 0 auto;
}

.protech-contact-page__eyebrow {
  margin: 0 0 14px;
  color: #fff;
  font-size: 1.15rem;
  text-align: center;
  letter-spacing: .04em;
}

.protech-contact-page h1 {
  margin: 0 0 64px;
  color: #00d9ff;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(3.3rem, 6vw, 5.7rem);
  font-weight: 400;
  line-height: 1;
  text-align: center;
  letter-spacing: -.045em;
}

.protech-contact-form__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 34px 58px;
}

.protech-contact-form__column {
  display: grid;
  gap: 20px;
}

.protech-contact-form :is(input:not([type="checkbox"]), select, textarea) {
  box-sizing: border-box;
  width: 100%;
  min-height: 52px;
  margin: 0;
  border: 2px solid #00d9ff;
  border-radius: 999px;
  padding: 12px 24px;
  color: #fff;
  background: rgba(0, 26, 41, .62);
  font: inherit;
}

.protech-contact-form :is(input, textarea)::placeholder,
.protech-contact-form select {
  color: #00a8c8;
  opacity: 1;
}

.protech-contact-form select {
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, #00d9ff 50%), linear-gradient(135deg, #00d9ff 50%, transparent 50%);
  background-position: calc(100% - 22px) 22px, calc(100% - 16px) 22px;
  background-repeat: no-repeat;
  background-size: 6px 6px;
}

.protech-contact-form select option {
  color: #fff;
  background: #003a54;
}

.protech-contact-form textarea {
  min-height: 340px;
  border-radius: 24px;
  resize: vertical;
}

.protech-contact-form__honeypot {
  position: absolute !important;
  left: -9999px !important;
}

.protech-contact-consent {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 3px 14px;
  margin: 28px 0 26px;
  border: 2px solid #00d9ff;
  border-radius: 22px;
  padding: 20px 26px;
}

.protech-contact-consent input {
  width: 22px;
  height: 22px;
  margin: 0;
  accent-color: #00d9ff;
}

.protech-contact-consent label {
  color: #00a8c8;
  font-size: .9rem;
  line-height: 1.35;
}

.protech-contact-consent button {
  grid-column: 2;
  justify-self: start;
  min-height: 0;
  border: 0;
  border-radius: 0;
  padding: 0;
  color: #00d9ff;
  background: transparent;
  font: inherit;
  font-size: .86rem;
  text-decoration: underline;
  cursor: pointer;
}

.protech-contact-form__submit {
  min-width: 160px;
  color: #001a29;
  background: #00d9ff;
}

.protech-contact-page__notice {
  margin: -36px 0 30px;
  border-radius: 14px;
  padding: 14px 20px;
  text-align: center;
}

.protech-contact-page__notice--success { background: rgba(12, 211, 163, .2); }
.protech-contact-page__notice--error { background: rgba(255, 122, 48, .24); }

.protech-contact-dialog {
  width: min(calc(100% - 40px), 760px);
  max-height: 82vh;
  margin: auto;
  border: 0;
  border-radius: 28px;
  padding: 0;
  color: #07384e;
  background: #fff;
  box-shadow: 0 30px 90px rgba(0, 22, 34, .4);
}

.protech-contact-dialog::backdrop {
  background: rgba(0, 22, 34, .78);
  backdrop-filter: blur(3px);
}

.protech-contact-dialog__panel {
  position: relative;
  padding: 48px;
}

.protech-contact-dialog h2 {
  margin: 0 48px 20px 0;
  color: #003a54;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 400;
}

.protech-contact-dialog p {
  margin: 0;
  font-size: 1rem;
  line-height: 1.65;
}

.protech-contact-dialog__close {
  position: absolute;
  top: 18px;
  right: 18px;
  display: grid;
  place-items: center;
  width: 42px;
  min-height: 42px;
  border: 1px solid #8ca6b1;
  border-radius: 50%;
  padding: 0 0 3px;
  color: #003a54;
  background: #fff;
  font-size: 1.8rem;
  cursor: pointer;
}

.protech-resources-dynamic .protech-resources-featured-track > .protech-resources-card {
  flex: 0 0 calc((100% - 128px) / 3);
  min-width: 0;
}

.protech-resources-dynamic .protech-resources-carousel-prev,
.protech-resources-dynamic .protech-resources-carousel-next {
  display: grid;
  place-items: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  border: 0;
  border-radius: 50%;
  padding: 0;
  color: #0086ae;
  background: #c7f6ff;
}

.protech-resources-dynamic .protech-resources-filter-label {
  min-height: 44px;
  border: 0;
  font-size: .82rem;
  cursor: pointer;
}

.protech-resources-dynamic .protech-resources-filter-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.protech-resources-dynamic .protech-resources-filter-buttons button {
  min-width: 120px;
  min-height: 42px;
  border: 0;
  border-radius: 999px;
  padding: 9px 17px;
  color: #001a29;
  background: #00d9ff;
  font-size: .78rem;
  font-weight: 700;
  cursor: pointer;
}

.protech-resources-dynamic .protech-resources-filter-buttons button.is-active {
  background: #fff;
}

.protech-resources-card h3 a {
  color: inherit;
  text-decoration: none;
}

@media (max-width: 900px) {
  .protech-press-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 36px;
  }

  .protech-press-filters {
    gap: 8px;
    width: min(100% - 36px, 520px);
    padding-top: 22px;
  }

  .protech-press-filters__label {
    width: 100%;
  }

  .protech-press-filters button {
    flex: 1 1 calc(50% - 8px);
    padding-inline: 12px;
  }

  .protech-press-results {
    width: 100%;
    margin: 2px 0 0;
  }

  .protech-contact-form__grid {
    gap: 30px;
  }
}

@media (max-width: 782px) {
  .protech-press-featured {
    min-height: 420px;
    padding: 108px 18px 38px;
  }

  .protech-press-featured h1 {
    margin-bottom: 26px;
    font-size: clamp(2.15rem, 10vw, 3rem);
  }

  .protech-press-btn {
    width: auto;
    min-width: 0;
    flex: 1 1 0;
    padding-inline: 14px;
    font-size: .76rem;
  }

  .protech-press-featured__actions {
    flex-wrap: nowrap;
    gap: 10px;
    width: min(100%, 520px);
    margin: 0 auto;
  }

  .protech-press-grid {
    grid-template-columns: 1fr;
    gap: 10px;
    width: min(100% - 36px, 520px);
    padding: 22px 0 54px;
  }

  .protech-press-card {
    display: grid;
    grid-template-columns: 40% minmax(0, 60%);
    min-height: 154px;
    border-radius: 22px;
  }

  .protech-press-card__image {
    height: 100%;
    aspect-ratio: auto;
  }

  .protech-press-card__body {
    padding: 15px 16px;
  }

  .protech-press-card__term {
    margin-bottom: 9px;
    padding: 4px 12px;
    font-size: .64rem;
  }

  .protech-press-card h2 {
    margin-bottom: 12px;
    font-size: clamp(1.05rem, 5vw, 1.35rem);
  }

  .protech-press-card time {
    font-size: .73rem;
  }

  .protech-press-media {
    margin-bottom: -120px !important;
    padding: 34px 24px 0 !important;
    overflow: hidden;
  }

  .protech-press-media .wp-block-columns {
    gap: 0;
  }

  .protech-press-media .wp-block-column:first-child {
    text-align: center;
  }

  .protech-press-media h2 {
    margin-bottom: 16px;
    font-size: clamp(1.7rem, 8vw, 2.25rem);
  }

  .protech-press-media p {
    margin-bottom: 9px;
    font-size: .78rem;
    line-height: 1.35;
  }

  .protech-press-media .wp-block-buttons {
    justify-content: center;
  }

  .protech-press-media__button .wp-block-button__link {
    margin-top: 10px;
  }

  .protech-press-media__person img {
    left: 50%;
    width: 205%;
    height: 145%;
  }

  .protech-press-faq {
    padding-top: 190px !important;
  }

  .protech-press-faq h2 {
    margin-bottom: 36px;
    text-align: center;
  }

  .protech-press-faq details {
    padding: 22px 2px;
  }

  .protech-press-faq summary {
    font-size: 1.1rem;
  }

  .protech-press-btn {
    min-width: 0;
  }

  .protech-press-media {
    width: calc(100% - 40px);
    border-radius: 30px;
    padding: 36px 28px 0 !important;
  }

  .protech-press-media .wp-block-columns {
    gap: 20px;
  }

  .protech-press-media__person {
    height: 300px;
  }

  .protech-press-faq {
    padding-right: 20px !important;
    padding-bottom: 90px !important;
    padding-left: 20px !important;
  }

  .protech-contact-page {
    padding: 122px 20px 78px;
  }

  .protech-contact-page h1 {
    margin-bottom: 42px;
  }

  .protech-contact-form__grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .protech-contact-form textarea {
    min-height: 180px;
  }

  .protech-contact-consent {
    padding: 18px;
  }

  .protech-contact-form__submit {
    width: 100%;
  }

  .protech-contact-dialog__panel {
    padding: 40px 24px 30px;
  }

  .protech-resources-dynamic .protech-resources-featured-track > .protech-resources-card {
    flex-basis: 84%;
  }
}

.protech-cta-card,
.protech-roadside .protech-wide-card,
.protech-talent-wrap {
  box-shadow: var(--pt-shadow-6) !important;
}

/* Legacy layout compatibility: keep Gutenberg inner containers in flow */
.legacy-import-page .wp-block-group > .wp-block-group__inner-container {
  display: block !important;
}

.legacy-import-page > .wp-block-group > .wp-block-group__inner-container {
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
}

/* Legacy solutions tabs: Gutenberg wrappers must retain 4-up desktop layout */
.legacy-import-page .solutions-tabs {
  display: block !important;
}

.legacy-import-page .solutions-tabs > .wp-block-group__inner-container {
  display: flex !important;
  width: 100% !important;
  align-items: stretch !important;
}

.legacy-import-page .solutions-tabs > .wp-block-group__inner-container > .solutions-tab-wrap {
  flex: 1 1 25% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.legacy-import-page .solutions-tabs .solutions-tab-wrap > .wp-block-group__inner-container {
  height: 100% !important;
}

/* Legacy contact form: restore float clearing after block-wrapper conversion */
.legacy-import-page .contact-wrap,
.legacy-import-page .contact-section {
  height: auto !important;
}

.legacy-import-page .contact-form > .wp-block-group__inner-container {
  display: block !important;
}

.legacy-import-page .contact-form form::after {
  content: "";
  display: block;
  clear: both;
}

@media (max-width: 900px) {
  .home .site-branding .protech-wordmark {
    height: 21px !important;
    max-width: 240px !important;
  }

  .home .protech-home > .wp-block-group__inner-container {
    background-size: cover !important;
    background-position: center 430px !important;
  }

  .home .protech-hero {
    padding: 142px 0 86px !important;
  }

  .home .protech-why,
  .home .protech-partner,
  .home .protech-roadside,
  .home .protech-coverage,
  .home .protech-talent {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
}

/* Legacy source pages (about/solutions/careers/contact/intake/newsroom/blog) */
.legacy-import-page.alignfull {
  width: 100%;
  max-width: 100%;
  margin-left: 0;
}

.legacy-import-page .wp-block-group,
.legacy-import-page .wp-block-image,
.legacy-import-page .wp-block-heading,
.legacy-import-page .wp-block-columns,
.legacy-import-page .wp-block-column {
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
}

.legacy-import-page .wp-block-group.has-background {
  padding: 0;
}

.legacy-import-page .wp-block-group > .wp-block-group__inner-container {
  display: contents;
  margin: 0;
  padding: 0;
}

.legacy-import-page .wp-block-image img {
  max-width: 100%;
  height: auto;
}

/* ==========================================================================
   Final tweaks: home roadside + nav logo + legacy edge-to-edge
   ========================================================================== */
.site-branding .protech-wordmark {
  height: 28px !important;
  max-width: 340px !important;
}

.custom-logo-link img {
  max-height: 28px !important;
}

.home .site-branding .protech-wordmark {
  height: 32px !important;
  max-width: 390px !important;
}

.home .protech-roadside .protech-wide-card::after {
  width: min(72%, 1120px) !important;
  background-position: right center !important;
  background-size: auto 118% !important;
}

.home .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
  max-width: min(520px, 39%) !important;
  padding: 30px 36px !important;
  text-align: left !important;
}

.home .protech-roadside .protech-wide-card h3,
.home .protech-roadside .protech-wide-card p,
.home .protech-roadside .protech-wide-card .wp-block-button {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.page .entry-content > .legacy-import-page {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.page .legacy-import-page,
body.page .legacy-import-page > .wp-block-group,
body.page .legacy-import-page > .wp-block-cover {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.page .legacy-import-page .container,
body.page .legacy-import-page .container-fluid {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.page .legacy-import-page .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Keep home and inner-page nav identical */
.site-header,
.home .site-header {
  position: fixed !important;
  top: 0 !important;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 12px 0 !important;
  background: #033754 !important;
}

.admin-bar .site-header {
  top: 32px !important;
}

@media (max-width: 782px) {
  .admin-bar .site-header {
    top: 46px !important;
  }
}

.header-main .container {
  max-width: 1280px !important;
}

.site-branding .protech-wordmark {
  height: 34px !important;
  max-width: 410px !important;
}

.home .site-branding .protech-wordmark {
  height: 34px !important;
  max-width: 410px !important;
}

.custom-logo-link img {
  max-height: 34px !important;
  width: auto !important;
}

.primary-menu-container > ul,
.header-cta .btn {
  min-height: 56px !important;
}

/* Home roadside card: match comp proportions + right-flush larger car */
.home .protech-roadside .protech-wide-card {
  aspect-ratio: 1810 / 500 !important;
  min-height: 320px !important;
}

.home .protech-roadside .protech-wide-card::after {
  width: min(74%, 1160px) !important;
  background-size: auto 128% !important;
  background-position: right center !important;
}

.home .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
  max-width: min(520px, 40%) !important;
  padding: 34px 36px !important;
}

/* Remove side gutters on legacy pages */
body.page .legacy-import-page section.fold,
body.page .legacy-import-page .fold-wrap,
body.page .legacy-import-page .block-wrap,
body.page .legacy-import-page .content-wrap,
body.page .legacy-import-page .main-wrap {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* True full-bleed legacy pages inside default entry wrappers */
body.page .entry-content > .legacy-import-page {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/* Final roadside card parity pass */
.home .protech-roadside .protech-wide-card {
  aspect-ratio: 1810 / 410 !important;
  min-height: 280px !important;
}

.home .protech-roadside .protech-wide-card .wp-block-cover__image-background {
  opacity: 1 !important;
  object-fit: cover !important;
  object-position: right center !important;
}

.home .protech-roadside .protech-wide-card::after {
  width: min(68%, 1080px) !important;
  background-size: auto 120% !important;
  background-position: right center !important;
}

.home .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
  max-width: min(560px, 43%) !important;
  padding: 30px 36px 32px !important;
}

.home .protech-roadside .protech-wide-card p {
  margin: 0 0 14px !important;
}

/* ADAS strip final alignment (v2 source of truth) */
.home .protech-roadside .protech-wide-card:not(.has-background) {
  background: linear-gradient(90deg, #00182b 0%, #00314b 48%, #014764 100%);
  aspect-ratio: 1810 / 710 !important;
  min-height: 420px !important;
  border-radius: 46px !important;
  overflow: hidden !important;
}

.home .protech-roadside .protech-wide-card .wp-block-cover__image-background {
  opacity: 1 !important;
}

.home .protech-roadside .protech-wide-card::after {
  content: none !important;
  display: none !important;
  background-image: none !important;
}

.home .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
  max-width: min(560px, 44%) !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
  padding: 30px 36px 32px !important;
}

/* ADAS strip stabilization: right-flush car + taller card + vertically centered copy */
.home .protech-roadside .protech-wide-card {
  min-height: 420px !important;
}

.home .protech-roadside .protech-wide-card::after {
  display: none !important;
}

.home .protech-roadside .protech-wide-card .wp-block-cover__image-background {
  opacity: 1 !important;
  left: auto !important;
  right: 0 !important;
  top: 52% !important;
  bottom: auto !important;
  width: min(116%, 1580px) !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  transform: translateY(-50%) !important;
  object-fit: contain !important;
  object-position: right center !important;
}

.home .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
  max-width: min(760px, 54%) !important;
  min-height: 420px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  padding: 46px 64px 44px !important;
}

.home .protech-roadside .protech-wide-card h3 {
  margin: 0 0 22px !important;
  color: #10d5ff;
  font-size: clamp(1.9rem, 3.1vw, 3rem);
  line-height: 1.08 !important;
  letter-spacing: -0.01em !important;
  white-space: nowrap !important;
}

.home .protech-roadside .protech-wide-card p {
  margin: 0 0 26px !important;
  max-width: 100% !important;
  color: rgba(237, 247, 255, 0.96);
  font-size: clamp(0.98rem, 1.15vw, 1.35rem);
  line-height: 1.3 !important;
}

.home .protech-roadside .protech-wide-card .protech-btn-primary .wp-block-button__link {
  min-width: 260px !important;
  min-height: 58px !important;
  padding: 10px 30px !important;
  border-radius: 999px !important;
  font-size: clamp(1rem, 1.2vw, 1.28rem);
  line-height: 1 !important;
}

@media (max-width: 1100px) {
  .home .protech-roadside .protech-wide-card:not(.has-background) {
    aspect-ratio: 1810 / 620 !important;
    min-height: 360px !important;
    border-radius: 34px !important;
  }

  .home .protech-roadside .protech-wide-card .wp-block-cover__image-background {
    right: 0 !important;
    top: 52% !important;
    width: min(112%, 1160px) !important;
    height: auto !important;
  }

  .home .protech-roadside .protech-wide-card .wp-block-cover__inner-container {
    max-width: min(560px, 52%) !important;
    min-height: 360px !important;
    padding: 32px 36px !important;
  }

  .home .protech-roadside .protech-wide-card h3 {
    white-space: normal !important;
  }

  .home .protech-roadside .protech-wide-card .protech-btn-primary .wp-block-button__link {
    min-width: 220px !important;
    min-height: 52px !important;
    font-size: clamp(0.95rem, 1.35vw, 1.12rem);
  }
}

@media (max-width: 782px) {
  .home .protech-roadside .protech-wide-card .wp-block-cover__image-background {
    right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    top: 0 !important;
    transform: none !important;
    object-fit: cover !important;
  }
}

/* ==========================================================================
   Digital design standards baseline (Protech_Webpage Digital Design Document_20260204)
   ========================================================================== */
:root {
  --pt-d-navy: #001A29;
  --pt-navy: #003A54;
  --pt-cyan: #00D9FF;
  --pt-orange: #FF5E00;
  --pt-white: #FFFFFF;
  --pt-l-grey: #EFEFEF;
  --pt-grey: #C4C5C5;
  --pt-l-blue: #D7F4FF;
  --pt-blue: #005C8C;
  --pt-sky-blue: #8BCCFF;
  --pt-shadow-2: 0 2px 8px rgba(196, 197, 197, 0.75);
  --pt-shadow-4: 0 4px 12px rgba(196, 197, 197, 0.75);
  --pt-shadow-6: 0 6px 16px rgba(196, 197, 197, 0.75);
  --pt-shadow-8: 0 8px 24px rgba(196, 197, 197, 0.75);
  --pt-radius-pill: 999px;
}

body {
  font-family: "legacy-gotham", "Avenir Next", "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: var(--pt-d-navy);
}

h1,
h2,
h3,
h4 {
  font-family: "legacy-cera-bold", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  color: var(--pt-navy);
}

h1 {
  font-size: clamp(1.75rem, 5vw, 4rem);
  line-height: 1.1875;
}

h2 {
  font-size: clamp(1.25rem, 3vw, 2.25rem);
  line-height: 1.22;
}

h3 {
  font-size: clamp(1.125rem, 2.2vw, 1.75rem);
  line-height: 1.28;
}

h4 {
  font-size: clamp(1rem, 1.7vw, 1.25rem);
  line-height: 1.4;
}

p,
li,
label {
  font-size: 1rem;
  line-height: 1.5;
}

a {
  color: var(--pt-blue);
}

a:hover,
a:focus-visible {
  color: var(--pt-navy);
}

.wp-element-button,
.wp-block-button__link,
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.btn {
  border-radius: var(--pt-radius-pill);
  min-height: 44px;
  padding: 10px 28px;
  border: 1px solid transparent;
  font-family: "legacy-cera-bold", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

.wp-block-button__link,
.btn-primary,
button:not(.menu-toggle):not(.search-submit):not(.wp-block-navigation__responsive-container-open),
input[type="submit"] {
  background: var(--pt-cyan);
  color: var(--pt-d-navy);
  border-color: var(--pt-cyan);
}

.wp-block-button.is-style-outline .wp-block-button__link,
.btn-outline,
.protech-btn-outline .wp-block-button__link {
  background: transparent;
  color: var(--pt-white);
  border-color: var(--pt-sky-blue);
}

.wp-block-button__link:hover,
.wp-element-button:hover,
.btn:hover,
input[type="submit"]:hover {
  filter: brightness(0.96);
}

.wp-block-button__link:focus-visible,
.wp-element-button:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid var(--pt-cyan);
  outline-offset: 2px;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="number"],
input[type="search"],
input[type="password"],
select,
textarea {
  border: 1px solid var(--pt-grey);
  background: var(--pt-white);
  color: var(--pt-d-navy);
  border-radius: 10px;
  font-family: "legacy-gotham", "Avenir Next", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  padding: 10px 14px;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--pt-blue);
}

.protech-home .wp-block-group.alignwide,
.protech-home .wp-block-columns.alignwide,
.protech-home .wp-block-cover.alignwide {
  width: min(1200px, calc(100vw - 40px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 782px) {
  h1 {
    font-size: 1.75rem;
    line-height: 1.2857;
  }

  h2 {
    font-size: 1.25rem;
    line-height: 1.4;
  }

  h3 {
    font-size: 1.125rem;
    line-height: 1.3333;
  }

  h4 {
    font-size: 1rem;
    line-height: 1.25;
  }

  p,
  li,
  label {
    font-size: 0.875rem;
    line-height: 1.4286;
  }
}

/* ==========================================================================
   Legacy Pages Stability Pass
   ========================================================================== */
body.page .legacy-contact-us,
body.page .legacy-intake {
  font-size: 10px !important;
}

body.page .legacy-contact-us .fold-wrap,
body.page .legacy-intake .fold-wrap {
  height: auto !important;
}

body.page .legacy-intake .fold {
  background-image: url("assets/images/legacy/background_007.jpg");
}

body.page .legacy-intake .fold-wrap {
  background-image: url("assets/images/legacy/mobile_bg-1530022830.jpg");
}

body.page .legacy-contact-us .block-wrap,
body.page .legacy-intake .block-wrap {
  height: auto !important;
  justify-content: flex-start !important;
}

body.page .legacy-careers .career-block {
  z-index: 0 !important;
}

/* ==========================================================================
   Global Footer Redesign (v2 comp)
   ========================================================================== */
.site-footer {
  background: #033754;
  color: #dceaf4;
  margin-top: 0;
  border-top: 1px solid rgba(145, 193, 218, 0.16);
}

.site-footer .footer-main {
  padding: 46px 0 30px;
}

.site-footer .footer-layout {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 64px;
}

.site-footer .footer-brand-contact {
  display: flex;
  align-items: center;
  gap: 26px;
  min-width: 0;
  flex: 1 1 52%;
}

.site-footer .footer-mark-link {
  display: block;
  line-height: 0;
  flex: 0 0 auto;
}

.site-footer .footer-mark {
  display: block;
  width: clamp(132px, 10vw, 170px);
  height: auto;
}

.site-footer .footer-contact {
  border-left: 1px solid rgba(180, 216, 236, 0.54);
  padding-left: 24px;
}

.site-footer .footer-contact-title {
  margin: 0 0 8px;
  color: #d6e8f4;
  font-size: 1.04rem;
  font-weight: 500;
  line-height: 1.18;
}

.site-footer .footer-address,
.site-footer .footer-phone {
  margin: 0;
  color: #e5f1f8;
  font-size: 1.03rem;
  line-height: 1.4;
  letter-spacing: 0.01em;
}

.site-footer .footer-phone {
  margin-top: 2px;
}

.site-footer .footer-phone a {
  color: inherit;
  text-decoration: none;
}

.site-footer .footer-links-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(190px, 1fr));
  gap: 10px 56px;
  flex: 1 1 48%;
  max-width: 500px;
}

.site-footer .footer-links-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer .footer-links-list li + li {
  margin-top: 10px;
}

.site-footer .footer-links-list a {
  color: #e8f2f9;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.02rem;
  line-height: 1.12;
  letter-spacing: 0.01em;
  font-weight: 500;
}

.site-footer .footer-links-list a:hover {
  color: #4ad9ff;
}

.site-footer .footer-bottom-content {
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid rgba(145, 193, 218, 0.2);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}

.site-footer .footer-copyright {
  margin: 0;
  color: rgba(218, 234, 245, 0.92);
  font-size: 0.98rem;
  line-height: 1.35;
  letter-spacing: 0.01em;
}

.site-footer .footer-social {
  display: flex;
  gap: 14px;
  margin-top: 0;
}

.site-footer .footer-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 0.9;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.site-footer .footer-social a:hover {
  opacity: 1;
  transform: translateY(-1px);
}

.site-footer .footer-social .social-icon {
  width: 20px;
  height: 20px;
}

.site-footer .footer-social .social-icon img {
  filter: brightness(0) invert(1) opacity(0.92);
}

@media (max-width: 1100px) {
  .site-footer .footer-layout {
    gap: 28px;
    flex-direction: column;
  }

  .site-footer .footer-links-grid {
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(2, minmax(180px, 1fr));
    gap: 10px 34px;
  }
}

@media (max-width: 782px) {
  .site-footer .footer-main {
    padding: 34px 0 22px;
  }

  .site-footer .footer-brand-contact {
    align-items: flex-start;
    gap: 18px;
  }

  .site-footer .footer-mark {
    width: 120px;
  }

  .site-footer .footer-contact {
    padding-left: 16px;
  }

  .site-footer .footer-contact-title {
    font-size: 0.95rem;
  }

  .site-footer .footer-address,
  .site-footer .footer-phone {
    font-size: 0.95rem;
  }

  .site-footer .footer-links-grid {
    grid-template-columns: 1fr 1fr;
    gap: 8px 20px;
  }

  .site-footer .footer-links-list a {
    font-size: 0.86rem;
  }

  .site-footer .footer-bottom-content {
    margin-top: 20px;
    padding-top: 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .site-footer .footer-copyright {
    font-size: 0.84rem;
  }
}

/* Keep the new editable redesign pages insulated from legacy block defaults. */
.protech-redesign-page.wp-block-group {
  padding: 0;
}

.protech-redesign-page .wp-block-group:not([class*="protech-redesign-"]) {
  padding: 0;
}

.protech-redesign-page .protech-redesign-hero {
  padding: 118px 24px 90px;
}

.protech-redesign-page .protech-redesign-section {
  padding: clamp(36px, 3.8vw, 58px) 24px;
}

.protech-redesign-page .protech-redesign-split,
.protech-redesign-page .protech-redesign-two-up,
.protech-redesign-page .protech-redesign-card-grid,
.protech-redesign-page .protech-redesign-steps,
.protech-redesign-page .protech-redesign-risk-grid,
.protech-redesign-page .protech-redesign-risk-item,
.protech-redesign-page .protech-redesign-workflow-grid,
.protech-redesign-page .protech-redesign-workflow-item {
  padding: 0;
}

.protech-redesign-page .protech-redesign-feature-card,
.protech-redesign-page .protech-redesign-testimonial,
.protech-redesign-page .protech-redesign-assessment {
  padding: clamp(28px, 4vw, 56px);
}

.protech-redesign-page .protech-redesign-info-card {
  padding: 34px 26px 30px;
}

.protech-redesign-page .protech-redesign-workflow-callout {
  padding: 54px 56px;
}

.protech-redesign-page .protech-redesign-shop-assessment {
  padding: 48px 56px;
}

.protech-redesign-page .protech-redesign-workflow-section {
  padding-top: clamp(72px, 6.4vw, 116px);
  padding-bottom: clamp(64px, 5.2vw, 96px);
}


.protech-redesign-page .protech-redesign-step {
  padding: 28px 32px;
}

.protech-redesign-page .protech-redesign-scheduling-section .protech-redesign-step {
  padding: 42px 34px 26px;
}

.protech-redesign-page .protech-redesign-workflow-section .protech-redesign-workflow-item {
  padding: 0;
}

@media (max-width: 900px) {
  .protech-redesign-page .protech-redesign-hero {
    padding: 106px 22px 72px;
  }

  .protech-redesign-page .protech-redesign-section {
    padding: 42px 22px;
  }

  .protech-redesign-page .protech-redesign-workflow-callout,
  .protech-redesign-page .protech-redesign-shop-assessment {
    padding: 34px 26px;
  }

  .protech-redesign-page .protech-redesign-workflow-section {
    padding: 58px 22px 64px;
  }
}

/* Resources Blog redesign page and reusable partner CTA. */
.protech-blog-redesign {
  overflow: hidden;
  color: #fff;
  background: linear-gradient(180deg, #002638 0%, #003f52 100%);
}

.protech-blog-redesign.wp-block-group,
.protech-blog-redesign .wp-block-group:not([class*="protech-blog-"]) {
  padding: 0;
}

.protech-blog-hero {
  position: relative;
  overflow: hidden;
  padding: 108px 24px 56px;
  background:
    radial-gradient(ellipse at 82% 6%, rgba(0, 217, 255, 0.38), transparent 30%),
    linear-gradient(180deg, rgba(0, 20, 36, 0.58), rgba(0, 38, 56, 0.74));
}

.protech-blog-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  max-width: none !important;
  margin: 0 !important;
  pointer-events: none;
}

.protech-blog-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  opacity: 0.62;
}

.protech-blog-hero > .wp-block-group__inner-container,
.protech-blog-listing > .wp-block-group__inner-container,
.protech-blog-partner-cta > .wp-block-group__inner-container {
  max-width: 1200px;
  margin: 0 auto;
}

.protech-blog-hero__inner {
  position: relative;
  z-index: 1;
  align-items: center !important;
  gap: clamp(44px, 6vw, 82px);
  margin: 0;
}

.protech-blog-eyebrow {
  margin: 0 0 18px;
  color: #fff;
  font-family: var(--font-primary);
  font-size: clamp(1.35rem, 2vw, 2rem);
  font-weight: 500;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.protech-blog-hero h1 {
  margin: 0;
  color: #00d9ff;
  font-family: var(--font-primary);
  font-size: clamp(3rem, 4.25vw, 4.7rem);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.035em;
}

.protech-blog-card {
  position: relative;
  overflow: hidden;
  min-height: 340px;
  border-radius: 18px;
  padding: 0 !important;
  align-items: stretch;
  background: #003a54;
  box-shadow: none;
}

.protech-blog-card--featured {
  min-height: 420px;
  border-radius: 30px;
}

.protech-blog-card--dynamic {
  height: 340px;
  min-height: 0;
}

.protech-blog-card--featured.protech-blog-card--dynamic {
  height: 420px;
  min-height: 0;
}

.protech-blog-card .wp-block-cover__image-background {
  object-position: center top;
}

.protech-blog-card .wp-block-cover__background {
  background:
    linear-gradient(180deg, rgba(0, 26, 41, 0) 0%, rgba(0, 26, 41, 0.12) 58%, rgba(0, 56, 78, 0.42) 100%) !important;
  opacity: 1 !important;
}

.protech-blog-card::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  height: 62%;
  background:
    linear-gradient(202deg, rgba(0, 36, 54, 0) 0%, rgba(0, 36, 54, 0) 34%, rgba(0, 64, 84, 0.7) 56%, rgba(0, 48, 68, 0.98) 100%),
    linear-gradient(180deg, rgba(0, 36, 54, 0) 0%, rgba(0, 48, 68, 0.92) 100%);
  pointer-events: none;
}

.protech-blog-card--dynamic::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(0, 26, 41, 0) 0%, rgba(0, 26, 41, 0.1) 52%, rgba(0, 39, 56, 0.38) 100%);
  pointer-events: none;
}

.protech-blog-card .wp-block-cover__inner-container {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  min-height: inherit;
  padding: 18px;
  color: #fff;
}

.protech-blog-card--dynamic > .wp-block-group__inner-container {
  position: relative;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 18px;
  color: #fff;
}

.protech-blog-card--featured .wp-block-cover__inner-container {
  padding: 26px 30px 34px;
}

.protech-blog-card--featured.protech-blog-card--dynamic > .wp-block-group__inner-container {
  padding: 26px 30px 34px;
}

.protech-blog-card__image {
  position: absolute;
  inset: 0;
  z-index: 0;
  margin: 0;
}

.protech-blog-card__image a,
.protech-blog-card__image img {
  display: block;
  width: 100%;
  height: 100% !important;
}

.protech-blog-card__image img {
  object-fit: cover;
  object-position: center top;
}

.protech-blog-card__body,
.protech-blog-card__body > .wp-block-group__inner-container {
  position: relative;
  z-index: 2;
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  min-height: 0;
  margin: 0;
  padding: 0 !important;
}

.protech-blog-card__chips,
.protech-blog-card__chips > .wp-block-group__inner-container,
.protech-blog-card__terms {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}

.protech-blog-chip,
.protech-blog-card__terms a {
  margin: 0;
  border-radius: 999px;
  padding: 8px 16px;
  color: #001a29;
  background: #fff;
  font-family: var(--font-heading);
  font-size: 0.78rem;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
}

.protech-blog-chip.is-read::before,
.protech-blog-card__terms a[href*="/category/read/"]::before {
  content: "▭";
  margin-right: 7px;
  font-size: 0.8em;
}

.protech-blog-card__terms a[href*="/category/read/"] {
  order: -1;
}

.protech-blog-card__terms .wp-block-post-terms__separator {
  display: none;
}

.protech-blog-card__content,
.protech-blog-card__content > .wp-block-group__inner-container {
  margin: 0;
  padding: 0 !important;
}

.protech-blog-card h2 {
  max-width: 92%;
  margin: 0 0 10px;
  color: #fff;
  font-family: var(--font-primary);
  font-size: clamp(1.08rem, 1.35vw, 1.32rem);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.025em;
}

.protech-blog-card h2 a {
  color: inherit;
  text-decoration: none;
}

.protech-blog-card--featured h2 {
  max-width: 86%;
  font-size: clamp(1.65rem, 2.15vw, 2.25rem);
}

.protech-blog-date {
  margin: 0;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.86rem;
}

.protech-blog-listing {
  padding: 42px 24px 76px;
}

.protech-blog-tools > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
  gap: 20px;
  align-items: center;
  margin-bottom: 34px;
}

.protech-blog-tools,
.protech-blog-grid,
.protech-blog-grid-query {
  padding: 0 !important;
}

.protech-blog-filters {
  gap: 10px;
}

.protech-blog-filters .wp-block-button__link,
.protech-blog-search input[type="search"] {
  min-height: 34px;
  border: 0;
  border-radius: 999px;
  padding: 9px 22px;
  color: #001a29;
  background: #fff;
  font-family: var(--font-heading);
  font-size: 0.92rem;
  line-height: 1;
  text-transform: uppercase;
}

.protech-blog-filters .is-active .wp-block-button__link {
  background: #ff6500;
}

.protech-blog-search .wp-block-search__inside-wrapper {
  margin: 0;
}

.protech-blog-search input[type="search"] {
  width: 100%;
  padding-left: 42px;
  background: #fff;
}

.protech-blog-search .wp-block-search__inside-wrapper::before {
  content: "⌕";
  position: absolute;
  margin: 6px 0 0 16px;
  color: rgba(0, 26, 41, 0.45);
  font-size: 1.5rem;
  line-height: 1;
  pointer-events: none;
}

.protech-blog-grid > .wp-block-group__inner-container,
.protech-blog-grid-query .wp-block-post-template {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px 28px;
}

.protech-blog-featured-query,
.protech-blog-grid-query {
  margin: 0;
}

.protech-blog-featured-query .wp-block-post-template,
.protech-blog-grid-query .wp-block-post-template {
  list-style: none;
  padding: 0;
}

.protech-blog-featured-query .wp-block-post-template > li,
.protech-blog-grid-query .wp-block-post-template > li {
  margin: 0;
}

.protech-blog-partner-cta {
  padding: 72px 24px 86px;
  color: #001a29;
  background-color: #003a54;
}

.wp-block-group.alignfull.protech-blog-partner-cta,
.protech-home .wp-block-group.alignfull.protech-blog-partner-cta {
  width: auto;
  max-width: none;
  margin-block-start: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

.protech-blog-partner-cta__inner {
  position: relative;
  overflow: visible;
  width: min(calc(100% - 112px), 1740px);
  min-height: 600px;
  max-width: 1740px;
  margin: 0 auto;
  border-radius: 54px;
  padding: 78px 70px;
  background: #e7ebee;
}

.protech-blog-partner-cta__wave {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 0;
  width: 64%;
  margin: 0;
  opacity: 1;
  pointer-events: none;
  transform: none;
}

.protech-blog-partner-cta__wave img {
  display: block;
  width: 100%;
  height: auto;
}

.protech-blog-partner-cta__inner > .wp-block-column {
  position: relative;
  z-index: 1;
}

.protech-blog-partner-cta h2 {
  margin: 0 0 28px;
  color: #07344a;
  font-family: var(--font-primary);
  font-size: clamp(2rem, 3.2vw, 3.55rem);
  font-weight: 400;
  line-height: 1.05;
}

.protech-blog-partner-cta p {
  max-width: 390px;
  margin: 0 0 72px;
  color: #000;
  font-size: clamp(1rem, 1.25vw, 1.2rem);
  line-height: 1.25;
}

.protech-blog-btn .wp-block-button__link {
  min-width: 300px;
  border-radius: 22px;
  padding: 18px 42px;
  color: #001a29;
  background: #00d9ff;
  font-family: var(--font-primary);
  font-size: 1rem;
  font-weight: 400;
  text-align: center;
  text-transform: none;
}

.protech-blog-partner-cta__image-col {
  align-self: stretch !important;
  position: relative;
}

.protech-blog-partner-cta__image {
  height: 100%;
  margin: 0;
}

.protech-blog-partner-cta__image img {
  position: absolute;
  right: 70px;
  bottom: -78px;
  width: auto;
  max-width: min(54vw, 720px);
  height: calc(100% + 156px);
  max-height: calc(100% + 156px);
  object-fit: contain;
}

.home .protech-blog-partner-cta {
  margin-block-start: 0 !important;
}

@media (max-width: 900px) {
  .protech-blog-hero,
  .protech-blog-listing,
  .protech-blog-partner-cta {
    padding-left: 22px;
    padding-right: 22px;
  }

  .protech-blog-partner-cta,
  .home .protech-blog-partner-cta {
    width: min(calc(100% - 32px), 1840px);
    padding-top: 48px;
  }

  .protech-blog-hero__inner,
  .protech-blog-partner-cta__inner {
    display: block;
  }

  .protech-blog-card--featured {
    margin-top: 36px;
    min-height: 410px;
  }

  .protech-blog-tools > .wp-block-group__inner-container,
  .protech-blog-grid > .wp-block-group__inner-container,
  .protech-blog-grid-query .wp-block-post-template {
    grid-template-columns: 1fr;
  }

  .protech-blog-partner-cta__inner {
    min-height: 680px;
    overflow: hidden;
    padding: 38px 30px 0;
  }

  .protech-blog-partner-cta p {
    margin-bottom: 30px;
  }

  .protech-blog-partner-cta__image img {
    right: 50%;
    bottom: 0;
    width: min(86vw, 430px);
    height: auto;
    max-height: 420px;
    transform: translateX(50%);
  }
}

/* Single Blog article redesign. */
.single-post .site-content {
  background: #003848;
}

.protech-article-page {
  overflow: hidden;
  color: #001a29;
  background:
    linear-gradient(180deg, #002638 0, #003f52 620px, #f3f5f6 620px, #f3f5f6 100%);
}

.protech-article-hero {
  position: relative;
  overflow: hidden;
  padding: 118px 24px 84px;
  color: #fff;
  background:
    radial-gradient(ellipse at 82% 8%, rgba(0, 217, 255, 0.28), transparent 32%),
    linear-gradient(180deg, rgba(0, 20, 36, 0.46), rgba(0, 38, 56, 0.72));
}

.protech-article-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  opacity: 0.56;
  pointer-events: none;
}

.protech-article-hero__inner,
.protech-article-shell,
.protech-article-related__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.protech-article-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(360px, 0.82fr);
  gap: clamp(44px, 6vw, 86px);
  align-items: center;
}

.protech-article-back,
.protech-article-meta,
.protech-article-sidebar__label,
.protech-article-related__heading p,
.protech-article-related-card__date {
  font-family: var(--font-heading);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.protech-article-back {
  display: inline-flex;
  margin-bottom: 26px;
  color: #9feaff;
  text-decoration: none;
}

.protech-article-back::before {
  content: "←";
  margin-right: 10px;
}

.protech-article-terms {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-bottom: 24px;
}

.protech-article-chip {
  border-radius: 999px;
  padding: 9px 16px;
  color: #001a29;
  background: #fff;
  font-family: var(--font-heading);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
}

.protech-article-chip[href*="/category/read/"]::before {
  content: "▭";
  margin-right: 7px;
  font-size: 0.8em;
}

.protech-article-title {
  max-width: 760px;
  margin: 0;
  color: #00d9ff;
  font-family: var(--font-primary);
  font-size: clamp(3rem, 5vw, 5.4rem);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.protech-article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
  color: rgba(255, 255, 255, 0.84);
}

.protech-article-hero__image {
  position: relative;
  overflow: hidden;
  min-height: 500px;
  margin: 0;
  border-radius: 34px;
  background: #06475b;
  box-shadow: 0 28px 70px rgba(0, 14, 24, 0.34);
}

.protech-article-hero__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 26, 41, 0.02) 0%, rgba(0, 58, 84, 0.48) 100%);
  pointer-events: none;
}

.protech-article-hero__image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 500px;
  object-fit: cover;
  object-position: center top;
}

.protech-article-shell {
  display: grid;
  grid-template-columns: 190px minmax(0, 820px);
  gap: 64px;
  padding: 86px 24px 70px;
}

.protech-article-sidebar {
  position: sticky;
  top: 112px;
  align-self: start;
  display: grid;
  gap: 12px;
  padding-top: 8px;
}

.protech-article-sidebar__label {
  margin: 0 0 4px;
  color: #607887;
}

.protech-article-sidebar a,
.protech-article-return {
  color: #00384f;
  font-family: var(--font-heading);
  font-size: 0.96rem;
  font-weight: 700;
  text-decoration: none;
}

.protech-article-sidebar a:hover,
.protech-article-return:hover,
.protech-article-back:hover {
  color: #00aeda;
}

.protech-article-content-wrap {
  min-width: 0;
}

.protech-article-content {
  position: relative;
  border-radius: 38px;
  padding: clamp(34px, 5vw, 72px);
  background: #fff;
  box-shadow: 0 24px 80px rgba(0, 35, 50, 0.1);
}

.protech-article-content > *:first-child {
  margin-top: 0;
}

.protech-article-content > *:last-child {
  margin-bottom: 0;
}

.protech-article-content p,
.protech-article-content li {
  color: #243746;
  font-size: clamp(1.06rem, 1.18vw, 1.2rem);
  line-height: 1.72;
}

.protech-article-content p {
  margin: 0 0 1.35em;
}

.protech-article-content h2,
.protech-article-content h3,
.protech-article-content h4 {
  margin: 1.35em 0 0.45em;
  color: #00384f;
  font-family: var(--font-primary);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.025em;
}

.protech-article-content h2 {
  font-size: clamp(2rem, 3vw, 3rem);
}

.protech-article-content h3 {
  font-size: clamp(1.55rem, 2.1vw, 2.15rem);
}

.protech-article-content a {
  color: #006f8e;
  font-weight: 700;
}

.protech-article-content ul,
.protech-article-content ol {
  margin: 0 0 1.55em 1.2em;
  padding: 0;
}

.protech-article-content li::marker {
  color: #00c9ef;
}

.protech-article-content blockquote,
.protech-article-content .wp-block-quote {
  margin: 2.1em 0;
  border-left: 6px solid #00d9ff;
  border-radius: 0 24px 24px 0;
  padding: 24px 30px;
  color: #00384f;
  background: #edf9fc;
}

.protech-article-content blockquote p {
  color: #00384f;
  font-size: clamp(1.35rem, 2vw, 1.9rem);
  font-weight: 500;
  line-height: 1.28;
}

.protech-article-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 28px;
}

.protech-article-return {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 15px 24px;
  color: #001a29;
  background: #00d9ff;
}

.protech-article-related {
  padding: 0 24px 100px;
  background: #f3f5f6;
}

.protech-article-related__inner {
  border-radius: 42px;
  padding: 48px;
  color: #fff;
  background: #003848;
}

.protech-article-related__heading {
  margin-bottom: 30px;
}

.protech-article-related__heading p {
  margin: 0;
  color: #9feaff;
}

.protech-article-related__heading h2 {
  margin: 10px 0 0;
  color: #00d9ff;
  font-family: var(--font-primary);
  font-size: clamp(2rem, 3.2vw, 3.2rem);
  font-weight: 400;
  line-height: 1;
}

.protech-article-related__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.protech-article-related-card {
  overflow: hidden;
  border-radius: 24px;
  color: #fff;
  background: rgba(0, 20, 36, 0.42);
  text-decoration: none;
}

.protech-article-related-card__image {
  display: block;
  height: 190px;
  background: #06475b;
}

.protech-article-related-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.protech-article-related-card__body {
  display: grid;
  gap: 8px;
  padding: 20px;
}

.protech-article-related-card__date {
  color: rgba(255, 255, 255, 0.64);
}

.protech-article-related-card__title {
  font-family: var(--font-primary);
  font-size: 1.18rem;
  font-weight: 600;
  line-height: 1.16;
}

.protech-article-comments {
  max-width: 820px;
  margin: 0 auto;
  padding: 0 24px 80px;
  background: #f3f5f6;
}

@media (max-width: 900px) {
  .protech-article-hero {
    padding: 94px 22px 56px;
  }

  .protech-article-hero__inner,
  .protech-article-shell,
  .protech-article-related__grid {
    grid-template-columns: 1fr;
  }

  .protech-article-title {
    font-size: clamp(2.8rem, 13vw, 4.3rem);
  }

  .protech-article-hero__image,
  .protech-article-hero__image img {
    min-height: 360px;
  }

  .protech-article-shell {
    gap: 24px;
    padding: 46px 22px 54px;
  }

  .protech-article-sidebar {
    position: static;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
  }

  .protech-article-sidebar__label {
    flex-basis: 100%;
  }

  .protech-article-related {
    padding: 0 22px 72px;
  }

  .protech-article-related__inner {
    padding: 34px 24px;
  }

  .protech-article-related__heading {
    display: block;
  }
}

/* Gutenberg editor-selected colors and font sizes must win over theme section defaults. */
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-protech-navy-color:not(#protech-editor-choice) { color: #001a29 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-deep-teal-color:not(#protech-editor-choice) { color: #003a54 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-primary-blue-color:not(#protech-editor-choice) { color: #002d5b !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-protech-blue-color:not(#protech-editor-choice) { color: #005c8c !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-secondary-blue-color:not(#protech-editor-choice) { color: #00a8e1 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-cyan-color:not(#protech-editor-choice) { color: #00d9ff !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-sky-blue-color:not(#protech-editor-choice) { color: #8bccff !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-accent-yellow-color:not(#protech-editor-choice) { color: #ffb81c !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-white-color:not(#protech-editor-choice) { color: #fff !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-cloud-color:not(#protech-editor-choice) { color: #f0f2f4 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-light-gray-color:not(#protech-editor-choice) { color: #f8f9fa !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-silver-color:not(#protech-editor-choice) { color: #c4c5c5 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-dark-gray-color:not(#protech-editor-choice) { color: #333 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-protech-navy-background-color:not(#protech-editor-choice) { background-color: #001a29 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-deep-teal-background-color:not(#protech-editor-choice) { background-color: #003a54 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-primary-blue-background-color:not(#protech-editor-choice) { background-color: #002d5b !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-protech-blue-background-color:not(#protech-editor-choice) { background-color: #005c8c !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-secondary-blue-background-color:not(#protech-editor-choice) { background-color: #00a8e1 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-cyan-background-color:not(#protech-editor-choice) { background-color: #00d9ff !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-sky-blue-background-color:not(#protech-editor-choice) { background-color: #8bccff !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-accent-yellow-background-color:not(#protech-editor-choice) { background-color: #ffb81c !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-white-background-color:not(#protech-editor-choice) { background-color: #fff !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-cloud-background-color:not(#protech-editor-choice) { background-color: #f0f2f4 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-light-gray-background-color:not(#protech-editor-choice) { background-color: #f8f9fa !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-silver-background-color:not(#protech-editor-choice) { background-color: #c4c5c5 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-dark-gray-background-color:not(#protech-editor-choice) { background-color: #333 !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-protech-dark-blue-gradient-background:not(#protech-editor-choice) { background: linear-gradient(135deg, #001a29 0%, #003a54 100%) !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-protech-cyan-blue-gradient-background:not(#protech-editor-choice) { background: linear-gradient(135deg, #005c8c 0%, #00d9ff 100%) !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-protech-light-panel-gradient-background:not(#protech-editor-choice) { background: linear-gradient(135deg, #fff 0%, #f0f2f4 100%) !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-small-font-size:not(#protech-editor-choice) { font-size: 14px !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-normal-font-size:not(#protech-editor-choice) { font-size: 16px !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-medium-font-size:not(#protech-editor-choice) { font-size: 20px !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-large-font-size:not(#protech-editor-choice) { font-size: 28px !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-huge-font-size:not(#protech-editor-choice) { font-size: 42px !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-protech-body-font-family:not(#protech-editor-choice) { font-family: legacy-gotham, "Avenir Next", "Helvetica Neue", Arial, sans-serif !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-protech-heading-font-family:not(#protech-editor-choice) { font-family: legacy-cera-bold, "Helvetica Neue", Arial, sans-serif !important; }

/* Let group-level text choices cascade through designed section defaults. */
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) .has-text-color :where(h1, h2, h3, h4, h5, h6, p, li, summary, figcaption, span, a):not(.has-text-color):not(.wp-block-button__link):not(#protech-editor-choice) { color: inherit !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) :is(.has-small-font-size, .has-normal-font-size, .has-medium-font-size, .has-large-font-size, .has-huge-font-size, .has-custom-font-size) :where(h1, h2, h3, h4, h5, h6, p, li, summary, figcaption, span, a):not([class*="has-"][class*="-font-size"]):not(.wp-block-button__link):not(#protech-editor-choice) { font-size: inherit !important; }
body :is(.protech-home, .protech-redesign-page, .protech-blog-redesign, .protech-blog-partner-cta, .protech-article-page) :where(.protech-redesign-light, .protech-redesign-dark, .protech-redesign-hero, .protech-redesign-feature-card, .protech-redesign-info-card, .protech-redesign-step, .protech-redesign-assessment, .protech-redesign-testimonial, .protech-redesign-risk-item, .protech-redesign-workflow-item, .protech-blog-hero, .protech-blog-card, .protech-blog-partner-cta__inner, .protech-wide-card, .protech-cta-card).has-background:not([class*="-gradient-background"]):not([style*="--wp--preset--gradient--"]):not(#protech-editor-choice) { background-image: none !important; }

/* Batch 3 single blog article design. */
.single-post .site-content {
  background: #001f2d;
}

.protech-article-page {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 100vh;
  color: #fff;
  background: #001f2d;
}

.protech-article-page::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: url("assets/images/blog/article-bg-desktop.webp");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;
  pointer-events: none;
}

.protech-article {
  padding: 152px 24px 120px;
}

.protech-article-layout {
  display: grid;
  grid-template-columns: minmax(0, 3.05fr) minmax(260px, 1fr);
  gap: clamp(42px, 5vw, 76px);
  align-items: start;
  width: min(100%, 1320px);
  margin: 0 auto;
}

.protech-article-main {
  min-width: 0;
}

.protech-article-featured {
  overflow: hidden;
  aspect-ratio: 1.82 / 1;
  margin: 0 0 38px;
  border-radius: 34px;
  background: #06475b;
}

.protech-article-featured img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.protech-article-header {
  margin-bottom: 34px;
}

.protech-article-kicker {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 34px;
}

.protech-article-back,
.protech-article-more {
  color: #00d9ff;
  font-family: var(--font-primary);
  font-size: 1.02rem;
  font-weight: 400;
  letter-spacing: normal;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-transform: none;
}

.protech-article-back::before {
  content: "‹";
  margin-right: 3px;
  text-decoration: none;
}

.protech-article-back:hover,
.protech-article-more:hover {
  color: #fff;
}

.protech-article-chip,
.protech-article-related-card__chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 78px;
  border-radius: 999px;
  padding: 6px 16px;
  color: #001a29;
  background: #00d9ff;
  font-family: var(--font-heading);
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.protech-article-title {
  max-width: 900px;
  margin: 0;
  color: #00d9ff;
  font-family: var(--font-primary);
  font-size: clamp(3rem, 4.5vw, 5rem);
  font-weight: 400;
  line-height: 1.03;
  letter-spacing: -0.035em;
  text-wrap: balance;
}

.protech-article-content {
  color: #fff;
  border-radius: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.protech-article-content > *:first-child {
  margin-top: 0;
}

.protech-article-content > *:last-child {
  margin-bottom: 0;
}

.protech-article-content p,
.protech-article-content li {
  color: inherit;
  font-family: var(--font-primary);
  font-size: clamp(1rem, 1.15vw, 1.18rem);
  font-weight: 400;
  line-height: 1.34;
}

.protech-article-content p {
  margin: 0 0 1.85em;
}

.protech-article-content h2,
.protech-article-content h3,
.protech-article-content h4 {
  margin: 1.45em 0 0.55em;
  color: #00d9ff;
  font-family: var(--font-primary);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.025em;
}

.protech-article-content h2 {
  font-size: clamp(2rem, 3vw, 3.2rem);
}

.protech-article-content h3 {
  font-size: clamp(1.5rem, 2.2vw, 2.3rem);
}

.protech-article-content a {
  color: #00d9ff;
  font-weight: 700;
}

.protech-article-content ul,
.protech-article-content ol {
  margin: 0 0 1.85em 1.25em;
  padding: 0;
}

.protech-article-content li {
  margin-bottom: 0.5em;
}

.protech-article-content li::marker {
  color: #00d9ff;
}

.protech-article-content blockquote,
.protech-article-content .wp-block-quote {
  margin: 2.2em 0;
  border-left: 4px solid #00d9ff;
  border-radius: 0 22px 22px 0;
  padding: 24px 30px;
  background: rgba(0, 111, 155, 0.55);
}

.protech-article-content blockquote p {
  margin-bottom: 0;
  color: #fff;
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  line-height: 1.28;
}

.protech-article-content .wp-block-image,
.protech-article-content .wp-block-table,
.protech-article-content .wp-block-embed,
.protech-article-content .wp-block-video {
  margin-top: 3em;
  margin-bottom: 3em;
}

.protech-article-content .wp-block-image img,
.protech-article-content .wp-block-video video,
.protech-article-content .wp-block-embed__wrapper {
  overflow: hidden;
  border-radius: 28px;
}

.protech-article-content figcaption {
  margin-top: 13px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.85rem;
  font-style: italic;
  text-align: left;
}

.protech-article-content .wp-block-table {
  overflow: hidden;
  border-radius: 28px;
  background: #d9dcde;
}

.protech-article-content .wp-block-table table {
  margin: 0;
  border-collapse: collapse;
  color: #172e3b;
  background: #d9dcde;
}

.protech-article-content .wp-block-table th,
.protech-article-content .wp-block-table td {
  border: 1px solid #fff;
  padding: 18px 22px;
  color: #172e3b;
  font-size: 0.95rem;
  line-height: 1.25;
  text-align: left;
}

.protech-article-content .wp-block-table th {
  color: #fff;
  background: #006b9c;
  font-family: var(--font-primary);
  font-size: 1.12rem;
  font-weight: 500;
}

.protech-article-related {
  position: sticky;
  top: 112px;
  min-width: 0;
  padding: 0;
  background: transparent;
}

.protech-article-related h2 {
  margin: 0 0 38px;
  color: #fff;
  font-family: var(--font-primary);
  font-size: clamp(1.75rem, 2.5vw, 2.25rem);
  font-weight: 400;
  line-height: 1.1;
}

.protech-article-related__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.protech-article-related-card {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 1.08 / 1;
  border-radius: 25px;
  color: #fff;
  background: #06475b;
  text-decoration: none;
}

.protech-article-related-card__image,
.protech-article-related-card__image img,
.protech-article-related-card__overlay {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.protech-article-related-card__image img {
  object-fit: cover;
  object-position: center;
  transition: transform 0.35s ease;
}

.protech-article-related-card__overlay {
  background: linear-gradient(180deg, rgba(0, 28, 42, 0.04) 28%, rgba(0, 41, 59, 0.93) 100%);
}

.protech-article-related-card__body {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  height: 100%;
  padding: 18px 20px 22px;
}

.protech-article-related-card__chip {
  min-width: 72px;
  padding: 6px 14px;
}

.protech-article-related-card__title {
  display: block;
  color: #fff;
  font-family: var(--font-primary);
  font-size: clamp(1.25rem, 1.7vw, 1.7rem);
  font-weight: 500;
  line-height: 1.05;
  text-wrap: balance;
}

.protech-article-related-card:hover .protech-article-related-card__image img {
  transform: scale(1.035);
}

.protech-article-more {
  display: inline-flex;
  margin-top: 32px;
}

@media (max-width: 900px) {
  .protech-article-page::before {
    background-image: url("assets/images/blog/article-bg-mobile.webp");
  }

  .protech-article {
    padding: 104px 22px 84px;
  }

  .protech-article-layout {
    grid-template-columns: 1fr;
    gap: 62px;
    max-width: 680px;
  }

  .protech-article-featured {
    aspect-ratio: 1.5 / 1;
    margin-bottom: 46px;
    border-radius: 26px;
  }

  .protech-article-kicker {
    justify-content: flex-start;
    margin-bottom: 30px;
  }

  .protech-article-title {
    font-size: clamp(2.5rem, 10.5vw, 4.4rem);
    text-align: center;
  }

  .protech-article-content p,
  .protech-article-content h2,
  .protech-article-content h3,
  .protech-article-content h4,
  .protech-article-content ul,
  .protech-article-content ol,
  .protech-article-content blockquote {
    text-align: center;
  }

  .protech-article-content ul,
  .protech-article-content ol {
    list-style-position: inside;
    margin-left: 0;
  }

  .protech-article-related {
    position: static;
  }

  .protech-article-related h2 {
    margin-bottom: 34px;
    text-align: center;
  }

  .protech-article-related__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }

  .protech-article-related-card {
    aspect-ratio: 0.92 / 1;
  }

  .protech-article-related-card__body {
    padding: 14px 15px 18px;
  }

  .protech-article-related-card__title {
    font-size: clamp(1.05rem, 4.8vw, 1.45rem);
  }

  .protech-article-more {
    display: table;
    margin: 42px auto 0;
  }
}

@media (max-width: 520px) {
  .protech-article {
    padding-right: 20px;
    padding-left: 20px;
  }

  .protech-article-kicker {
    gap: 16px;
  }

  .protech-article-back {
    font-size: 0.9rem;
  }

  .protech-article-chip {
    min-width: 64px;
    padding-right: 11px;
    padding-left: 11px;
    font-size: 0.64rem;
  }

  .protech-article-content p,
  .protech-article-content li {
    font-size: 0.96rem;
  }

  .protech-article-content .wp-block-table th,
  .protech-article-content .wp-block-table td {
    padding: 12px 10px;
    font-size: 0.75rem;
  }

  .protech-article-related__grid {
    gap: 18px;
  }

  .protech-article-related-card__chip {
    min-width: 58px;
    padding: 5px 9px;
    font-size: 0.6rem;
  }
}

/* Batch 3 Connected Solution Resources hub. */
@font-face {
  font-family: "Protech Google Sans Flex";
  src: url("assets/fonts/google-sans-flex-variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: "Protech Outfit";
  src: url("assets/fonts/outfit-variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

.page-id-86 .site-main,
.page-id-86 article.page,
.page-id-86 .entry-content {
  margin: 0;
  padding: 0;
}

.protech-resources-hub {
  --pt-res-navy: #001f2d;
  --pt-res-blue: #006d9f;
  --pt-res-cyan: #00d9ff;
  --pt-res-card: #eef0f1;
  --font-primary: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  --font-heading: "Protech Outfit", "legacy-cera-bold", sans-serif;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  color: #07384e;
  background: #fff;
  font-family: var(--font-primary);
}

.protech-resources-hub .wp-block-group {
  padding: 0;
}

.protech-resources-hub > .wp-block-group__inner-container {
  width: 100%;
}

.protech-resources-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  align-items: center;
  min-height: 650px;
  padding: 136px 24px 80px !important;
  color: #fff;
  background: var(--pt-res-navy);
}

.protech-resources-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(0, 21, 35, 0.26), rgba(0, 31, 45, 0.55));
}

.protech-resources-hero > .wp-block-group__inner-container {
  display: flex;
  justify-content: center;
  width: 100%;
}

.protech-resources-hero__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  margin: 0;
}

.protech-resources-hero__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.protech-resources-hero__content {
  width: min(100%, 760px);
  margin: 0 auto !important;
  text-align: center;
}

.protech-resources-eyebrow {
  margin: 0 0 12px;
  color: #fff;
  font-family: var(--font-primary);
  font-size: clamp(1rem, 1.45vw, 1.4rem);
  font-weight: 500;
  line-height: 1.15;
  text-transform: uppercase;
}

.protech-resources-hero h1 {
  margin: 0 0 34px;
  color: var(--pt-res-cyan);
  font-family: var(--font-primary);
  font-size: clamp(3.3rem, 5vw, 5.5rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.04em;
}

.protech-resources-search {
  width: min(100%, 620px);
  margin: 0 auto 32px;
}

.protech-resources-search .wp-block-search__inside-wrapper {
  display: flex;
  align-items: center;
  overflow: hidden;
  height: 56px;
  border: 3px solid var(--pt-res-cyan);
  border-radius: 999px;
  padding: 0 8px 0 20px;
  background: rgba(0, 31, 45, 0.82);
}

.protech-resources-search input[type="search"] {
  border: 0;
  padding: 0 8px;
  color: var(--pt-res-cyan);
  background: transparent;
  font-family: var(--font-primary);
  font-size: 1rem;
  outline: 0;
}

.protech-resources-search input[type="search"]::placeholder {
  color: rgba(0, 217, 255, 0.86);
  opacity: 1;
}

.protech-resources-search .wp-block-search__button {
  order: -1;
  width: 34px !important;
  min-width: 34px !important;
  height: 42px;
  min-height: 42px;
  border: 0;
  padding: 6px !important;
  color: var(--pt-res-cyan) !important;
  background: transparent !important;
  box-shadow: none !important;
}

.protech-resources-search .wp-block-search__button svg {
  width: 21px;
  height: 21px;
  fill: currentColor;
}

.protech-resources-filter-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px 24px;
  margin: 0 auto;
}

.protech-resources-filter-buttons .wp-block-button {
  margin: 0;
}

.protech-resources-filter-buttons .wp-block-button__link {
  min-width: 178px;
  min-height: 42px;
  border: 2px solid var(--pt-res-cyan);
  border-radius: 999px;
  padding: 10px 24px;
  color: #fff;
  background: rgba(0, 31, 45, 0.74);
  font-family: var(--font-heading);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
}

.protech-resources-filter-buttons .is-active .wp-block-button__link,
.protech-resources-filter-buttons .wp-block-button__link:hover {
  color: #001a29;
  background: var(--pt-res-cyan);
}

.protech-resources-content {
  position: relative;
  overflow: hidden;
  margin-block: 0 !important;
  padding: 68px 24px 112px !important;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}

.protech-resources-hub > .wp-block-group__inner-container > :is(.protech-resources-hero, .protech-resources-content) {
  margin-block: 0 !important;
}

.protech-resources-content:not(.has-background) {
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.34)),
    url("assets/images/resources/content-bg-desktop.webp");
  background-repeat: no-repeat, no-repeat;
  background-position: center top, center top;
  background-size: cover, cover;
}

.protech-resources-content > .wp-block-group__inner-container {
  width: min(100%, 1320px);
  margin: 0 auto;
}

.protech-resources-intro {
  width: min(100%, 1320px);
  margin-right: auto !important;
  margin-left: auto !important;
}

.protech-resources-intro > .wp-block-group__inner-container > h2,
.protech-resources-intro > h2 {
  max-width: 1180px;
  margin: 0 auto 60px;
  color: #17384b;
  font-family: var(--font-primary);
  font-size: clamp(1.65rem, 2.4vw, 2.35rem);
  font-weight: 500;
  line-height: 1.12;
  text-align: center;
  text-wrap: balance;
}

.protech-resources-featured {
  position: relative;
  width: min(100%, 1160px);
  margin: 0 auto 92px;
}

.protech-resources-featured-track {
  display: flex;
  flex-wrap: nowrap;
  gap: 64px;
  overflow-x: auto;
  scrollbar-width: none;
  margin: 0;
}

.protech-resources-featured-track::-webkit-scrollbar {
  display: none;
}

.protech-resources-featured-track > .wp-block-column {
  flex: 0 0 calc((100% - 128px) / 3);
  min-width: 0;
}

.protech-resources-carousel-prev,
.protech-resources-carousel-next {
  position: absolute;
  top: 42%;
  z-index: 3;
  transform: translateY(-50%);
}

.protech-resources-carousel-prev[hidden],
.protech-resources-carousel-next[hidden] {
  display: none !important;
}

.protech-resources-carousel-prev {
  left: -54px;
}

.protech-resources-carousel-next {
  right: -54px;
}

.protech-resources-carousel-prev .wp-block-button__link,
.protech-resources-carousel-next .wp-block-button__link {
  display: grid;
  place-items: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  border: 0;
  border-radius: 50%;
  padding: 0;
  color: #0086ae;
  background: #c7f6ff;
  font-size: 1.4rem;
  text-decoration: none;
}

.protech-resources-card {
  overflow: hidden;
  border-radius: 28px;
  background: var(--pt-res-card);
  box-shadow: 0 15px 24px rgba(0, 36, 53, 0.18);
}

.protech-resources-card[hidden] {
  display: none !important;
}

.protech-resources-card > .wp-block-group__inner-container,
.protech-resources-card:not(:has(> .wp-block-group__inner-container)) {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.protech-resources-card__image {
  overflow: hidden;
  aspect-ratio: 1.55 / 1;
  margin: 0;
  background: #003448;
}

.protech-resources-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.protech-resources-card__body {
  flex: 1;
  padding: 20px 22px 18px !important;
}

.protech-resources-card__body > .wp-block-group__inner-container,
.protech-resources-card__body:not(:has(> .wp-block-group__inner-container)) {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.protech-resources-chip {
  align-self: flex-start;
  display: inline-flex;
  width: auto;
  margin: 0 0 14px !important;
  border-radius: 999px;
  padding: 6px 15px;
  color: #002d43;
  background: var(--pt-res-cyan);
  font-family: var(--font-heading);
  font-size: 0.7rem !important;
  font-weight: 700;
  line-height: 1 !important;
}

.protech-resources-card h3 {
  margin: 0 0 12px;
  color: #06415a;
  font-family: var(--font-primary);
  font-size: clamp(1.25rem, 1.65vw, 1.6rem);
  font-weight: 500;
  line-height: 1.05;
}

.protech-resources-card__body p:not(.protech-resources-chip):not(.protech-resources-learn) {
  margin: 0 0 20px;
  color: #273e4c;
  font-size: 0.92rem;
  line-height: 1.25;
}

.protech-resources-learn {
  margin: auto 0 0 !important;
}

.protech-resources-learn a,
.protech-resources-learn a:link,
.protech-resources-learn a:visited,
.protech-resources-learn a:hover,
.protech-resources-learn a:focus {
  color: #00aaca;
  font-family: var(--font-primary);
  font-size: 0.92rem;
  font-weight: 500;
  text-underline-offset: 3px;
}

.protech-resources-library {
  position: relative;
  overflow: hidden;
  width: min(100%, 1320px);
  margin-right: auto !important;
  margin-left: auto !important;
  border-radius: 58px;
  padding: 48px 74px 64px !important;
  background-color: #002c43;
}

.protech-resources-library::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 0 12%, rgba(0, 185, 204, 0.55), transparent 30%),
    radial-gradient(ellipse at 100% 88%, rgba(0, 185, 204, 0.55), transparent 34%),
    linear-gradient(180deg, rgba(0, 31, 52, 0.86), rgba(0, 40, 59, 0.92));
  pointer-events: none;
}

.protech-resources-library::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: radial-gradient(circle, rgba(0, 217, 255, 0.72) 0 2.3px, transparent 2.8px);
  background-size: 23px 23px;
  -webkit-mask-image:
    radial-gradient(ellipse 48% 34% at 0 11%, #000 0%, transparent 100%),
    radial-gradient(ellipse 52% 38% at 100% 90%, #000 0%, transparent 100%);
  mask-image:
    radial-gradient(ellipse 48% 34% at 0 11%, #000 0%, transparent 100%),
    radial-gradient(ellipse 52% 38% at 100% 90%, #000 0%, transparent 100%);
  opacity: 0.8;
  pointer-events: none;
}

.protech-resources-library > .wp-block-group__inner-container,
.protech-resources-library > .protech-resources-library__tools,
.protech-resources-library > .protech-resources-grid,
.protech-resources-library > .protech-resources-no-results {
  position: relative;
  z-index: 1;
}

.protech-resources-library__tools > .wp-block-group__inner-container,
.protech-resources-library__tools:not(:has(> .wp-block-group__inner-container)) {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr) 170px;
  gap: 24px;
  align-items: center;
  margin-bottom: 54px;
}

.protech-resources-filter-label {
  margin: 0;
  border-radius: 999px;
  padding: 12px 20px;
  color: #123c4d;
  background: #fff;
  font-family: var(--font-heading);
  font-size: 0;
  font-weight: 700;
  text-align: center;
}

.protech-resources-filter-label a::before {
  content: "☷  Filters";
  display: block;
  font-size: 0.82rem;
}

.protech-resources-filter-label a {
  color: inherit;
  text-decoration: none;
}

.protech-resources-filter-label:has(a[aria-pressed="true"]) {
  color: #001a29;
  background: var(--pt-res-cyan);
}

.protech-resources-library .protech-resources-filter-buttons {
  justify-content: flex-start;
  gap: 14px;
}

.protech-resources-library .protech-resources-filter-buttons .wp-block-button__link {
  min-width: 132px;
  border: 0;
  padding: 10px 18px;
  color: #001a29;
  background: var(--pt-res-cyan);
}

.protech-resources-library .protech-resources-filter-buttons .is-active .wp-block-button__link {
  background: #fff;
}

.protech-resources-results {
  margin: 0;
  color: #fff;
  font-size: 0.8rem;
  text-align: right;
}

.protech-resources-grid > .wp-block-group__inner-container,
.protech-resources-grid:not(:has(> .wp-block-group__inner-container)) {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px 72px;
}

.protech-resources-grid .protech-resources-card {
  min-height: 490px;
  margin-block-start: 0 !important;
  margin-top: 0 !important;
  box-shadow: none;
}

.protech-resources-no-results {
  display: none;
  margin: 40px 0 0;
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
}

.protech-resources-no-results.is-visible {
  display: block;
}

@media (max-width: 1100px) {
  .protech-resources-featured {
    width: calc(100% - 70px);
  }

  .protech-resources-library {
    padding-right: 44px !important;
    padding-left: 44px !important;
  }

  .protech-resources-library__tools > .wp-block-group__inner-container,
  .protech-resources-library__tools:not(:has(> .wp-block-group__inner-container)) {
    grid-template-columns: 140px 1fr;
  }

  .protech-resources-results {
    grid-column: 1 / -1;
    text-align: left;
  }

  .protech-resources-grid > .wp-block-group__inner-container,
  .protech-resources-grid:not(:has(> .wp-block-group__inner-container)) {
    gap: 30px;
  }
}

@media (max-width: 782px) {
  .protech-resources-hero {
    min-height: 620px;
    padding: 104px 22px 58px !important;
  }

  .protech-resources-eyebrow {
    max-width: 330px;
    margin-right: auto;
    margin-left: auto;
    font-size: 1rem;
  }

  .protech-resources-hero h1 {
    margin-bottom: 34px;
    font-size: clamp(3.2rem, 15vw, 4.3rem);
  }

  .protech-resources-search {
    width: min(100%, 420px);
    margin-bottom: 42px;
  }

  .protech-resources-search .wp-block-search__inside-wrapper {
    height: 50px;
    border-width: 2px;
  }

  .protech-resources-filter-buttons {
    gap: 12px;
  }

  .protech-resources-hero .protech-resources-filter-buttons .wp-block-button {
    flex: 0 1 calc(33.333% - 12px);
  }

  .protech-resources-filter-buttons .wp-block-button__link {
    width: 100%;
    min-width: 0;
    padding: 9px 12px;
    font-size: 0.66rem;
  }

  .protech-resources-content {
    padding: 64px 0 80px !important;
  }

  .protech-resources-content:not(.has-background) {
    background-image:
      linear-gradient(rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.34)),
      url("assets/images/resources/content-bg-mobile.webp");
  }

  .protech-resources-intro > .wp-block-group__inner-container > h2,
  .protech-resources-intro > h2 {
    width: calc(100% - 44px);
    margin-bottom: 54px;
    font-size: 1.55rem;
    line-height: 1.1;
  }

  .protech-resources-featured {
    width: 100%;
    margin-bottom: 58px;
  }

  .protech-resources-hub .protech-resources-featured-track {
    display: flex !important;
    overflow-x: auto;
    flex-wrap: nowrap !important;
    flex-direction: row !important;
    gap: 34px;
    padding: 0 max(68px, calc((100vw - 270px) / 2));
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .protech-resources-featured-track::-webkit-scrollbar {
    display: none;
  }

  .protech-resources-hub .protech-resources-featured-track > .wp-block-column {
    flex: 0 0 270px !important;
    width: 270px !important;
    min-width: 270px !important;
    max-width: 270px !important;
    scroll-snap-align: center;
  }

  .protech-resources-carousel-prev,
  .protech-resources-carousel-next {
    top: 40%;
  }

  .protech-resources-carousel-prev {
    left: 16px;
  }

  .protech-resources-carousel-next {
    right: 16px;
  }

  .protech-resources-library {
    width: calc(100% - 36px);
    margin: 0 auto;
    border-radius: 38px;
    padding: 28px 16px 48px !important;
  }

  .protech-resources-library__tools > .wp-block-group__inner-container,
  .protech-resources-library__tools:not(:has(> .wp-block-group__inner-container)) {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 34px;
  }

  .protech-resources-filter-label {
    width: 110px;
    padding: 10px 14px;
    font-size: 0;
  }

  .protech-resources-library .protech-resources-filter-buttons {
    order: 3;
    width: 100%;
  }

  .protech-resources-library .protech-resources-filter-buttons .wp-block-button {
    flex: 1 1 calc(25% - 12px);
  }

  .protech-resources-library .protech-resources-filter-buttons .wp-block-button__link {
    min-width: 0;
    padding: 9px 8px;
    font-size: 0.62rem;
  }

  .protech-resources-results {
    margin-left: auto;
    font-size: 0.66rem;
  }

  .protech-resources-grid > .wp-block-group__inner-container,
  .protech-resources-grid:not(:has(> .wp-block-group__inner-container)) {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .protech-resources-grid .protech-resources-card {
    min-height: 0;
  }

  .protech-resources-grid .protech-resources-card > .wp-block-group__inner-container,
  .protech-resources-grid .protech-resources-card:not(:has(> .wp-block-group__inner-container)) {
    display: grid;
    grid-template-columns: 42% minmax(0, 58%);
  }

  .protech-resources-grid .protech-resources-card__image {
    aspect-ratio: auto;
    height: 100%;
    min-height: 250px;
  }

  .protech-resources-grid .protech-resources-card__body {
    padding: 18px 16px 16px !important;
  }

  .protech-resources-grid .protech-resources-card h3 {
    font-size: 1.12rem;
  }

  .protech-resources-grid .protech-resources-card__body p:not(.protech-resources-chip):not(.protech-resources-learn) {
    font-size: 0.78rem;
  }
}

@media (max-width: 440px) {
  .protech-resources-hero .protech-resources-filter-buttons .wp-block-button {
    flex-basis: calc(50% - 12px);
  }

  .protech-resources-library .protech-resources-filter-buttons .wp-block-button {
    flex-basis: calc(50% - 12px);
  }

  .protech-resources-grid .protech-resources-card > .wp-block-group__inner-container,
  .protech-resources-grid .protech-resources-card:not(:has(> .wp-block-group__inner-container)) {
    grid-template-columns: 41% minmax(0, 59%);
  }

  .protech-resources-grid .protech-resources-card__image {
    min-height: 272px;
  }
}

/* New-site treatment for the imported Intake page. */
body.page .legacy-intake {
  color: #17384b;
  background: #f7fafb;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 16px !important;
}

body.page .legacy-intake .fold {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: 420px;
  padding: 112px 24px 72px !important;
  color: #fff;
  background-color: #002c43;
  background-image:
    linear-gradient(110deg, rgba(0, 20, 34, 0.82), rgba(0, 55, 82, 0.48)),
    url("assets/images/resources/portal-wave.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

body.page .legacy-intake .fold-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  margin: 0 auto;
  background: none !important;
}

body.page .legacy-intake .mobile-logo {
  display: none !important;
}

body.page .legacy-intake .block-wrap.claims {
  display: flex;
  align-items: center;
  justify-content: center !important;
  width: 100% !important;
  min-height: 0;
  margin: 0;
  padding: 0 !important;
  text-align: center;
}

body.page .legacy-intake .block-wrap.claims h1 {
  display: block;
  width: 100%;
  margin: 0;
  color: #00d9ff;
  font-family: "Protech Google Sans Flex", "legacy-gotham", "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(3.4rem, 6vw, 5.6rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.04em;
  text-align: center;
  text-transform: none;
  text-shadow: 0 4px 28px rgba(0, 20, 34, 0.28);
}

body.page .legacy-intake .privacy-section {
  position: relative;
  padding: 88px 24px 104px !important;
  color: #273e4c;
  background-color: #f8fbfc;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0.86)),
    url("assets/images/resources/content-bg-desktop.webp");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 100% auto;
  font-family: "Helvetica Neue", Arial, sans-serif;
}

body.page .legacy-intake .privacy-wrap {
  width: min(100%, 980px);
  max-width: none;
  margin: 0 auto;
  text-align: center;
}

body.page .legacy-intake .privacy-wrap > h2 {
  max-width: 820px;
  margin: 0 auto 24px;
  color: #07384e;
  font-family: legacy-cera-bold, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2.2rem, 4vw, 3.65rem);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -0.035em;
  text-wrap: balance;
}

body.page .legacy-intake .privacy-wrap > p {
  max-width: 800px;
  margin: 0 auto 18px;
  color: #334f5e;
  font-family: "Helvetica Neue", Arial, sans-serif !important;
  font-size: 1.08rem;
  line-height: 1.55;
  text-wrap: balance;
}

body.page .legacy-intake #stateSelect {
  -webkit-appearance: none;
  appearance: none;
  display: block;
  width: min(100%, 440px);
  height: 58px;
  margin: 34px auto 0;
  border: 2px solid #00cfee;
  border-radius: 999px;
  padding: 0 54px 0 24px;
  color: #07384e;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3E%3Cpath d='M2 2l6 6 6-6' fill='none' stroke='%2307384e' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: right 22px center;
  background-repeat: no-repeat;
  background-size: 16px 10px;
  box-shadow: 0 12px 30px rgba(0, 44, 67, 0.1);
  font-family: legacy-cera-bold, "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  outline: none;
}

body.page .legacy-intake #stateSelect:hover,
body.page .legacy-intake #stateSelect:focus-visible {
  border-color: #008eb3;
  box-shadow: 0 0 0 4px rgba(0, 207, 238, 0.18), 0 12px 30px rgba(0, 44, 67, 0.12);
}

body.page .legacy-intake .noservice {
  max-width: 760px;
  margin: 34px auto 0;
  border: 1px solid rgba(0, 207, 238, 0.45);
  border-radius: 24px;
  padding: 30px 34px !important;
  color: #273e4c;
  background: #fff;
  box-shadow: 0 16px 38px rgba(0, 44, 67, 0.1);
}

body.page .legacy-intake .noservice h4 {
  margin: 0 0 10px;
  color: #07384e;
  font-family: legacy-cera-bold, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.5rem;
}

body.page .legacy-intake .noservice p {
  margin: 0;
  font-size: 1rem;
  line-height: 1.5;
}

body.page .legacy-intake iframe.jotform {
  display: block;
  width: 100%;
  min-width: 0 !important;
  margin: 42px auto 0;
  border: 0 !important;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 20px 54px rgba(0, 44, 67, 0.14);
}

@media (max-width: 782px) {
  body.page .legacy-intake .fold {
    min-height: 300px;
    padding: 92px 20px 54px !important;
    background-position: center;
  }

  body.page .legacy-intake .block-wrap.claims h1 {
    display: block !important;
    font-size: clamp(3rem, 16vw, 4.4rem);
  }

  body.page .legacy-intake .privacy-section {
    padding: 58px 20px 72px !important;
    background-image:
      linear-gradient(rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.9)),
      url("assets/images/resources/content-bg-mobile.webp");
  }

  body.page .legacy-intake .privacy-wrap > h2 {
    margin-bottom: 20px;
    font-size: clamp(2rem, 10vw, 3rem);
  }

  body.page .legacy-intake .privacy-wrap > p {
    font-size: 1rem;
    line-height: 1.5;
  }

  body.page .legacy-intake #stateSelect {
    width: 100%;
    height: 54px;
    margin-top: 28px;
  }

  body.page .legacy-intake .noservice {
    margin-top: 28px;
    border-radius: 20px;
    padding: 24px 20px !important;
  }

  body.page .legacy-intake iframe.jotform {
    margin-top: 30px;
    border-radius: 20px;
  }
}

/* ==========================================================================
   Dotdigital email signup landing page
   ========================================================================== */
.protech-email-signup {
  --pt-email-navy: #001f2d;
  --pt-email-blue: #003a54;
  --pt-email-cyan: #00d9ff;
  --pt-email-ink: #07384e;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  color: var(--pt-email-ink);
  background: #fff;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
}

.protech-email-signup .wp-block-group {
  padding: 0;
}

.protech-email-signup > .wp-block-group__inner-container,
.protech-email-signup__hero > .wp-block-group__inner-container,
.protech-email-signup__main > .wp-block-group__inner-container,
.protech-email-signup__card > .wp-block-group__inner-container {
  width: 100%;
}

.protech-email-signup__hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: 560px;
  padding: 142px 24px 84px !important;
  overflow: hidden;
  color: #fff;
  background: var(--pt-email-navy);
}

.protech-email-signup__hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(0, 22, 34, 0.84) 0%, rgba(0, 31, 45, 0.6) 58%, rgba(0, 31, 45, 0.42) 100%);
}

.protech-email-signup__hero-bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  margin: 0;
}

.protech-email-signup__hero-bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.protech-email-signup__hero-content {
  width: min(100%, 1200px);
  margin: 0 auto !important;
}

.protech-email-signup__hero-content > .wp-block-group__inner-container {
  width: min(100%, 720px);
}

.protech-email-signup__eyebrow {
  margin: 0 0 14px;
  color: #fff;
  font-size: 0.96rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.16em;
}

.protech-email-signup__hero h1 {
  margin: 0 0 24px;
  color: var(--pt-email-cyan);
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(3.5rem, 6.3vw, 6.5rem);
  font-weight: 400;
  line-height: 0.94;
  letter-spacing: -0.055em;
}

.protech-email-signup__lede {
  max-width: 660px;
  margin: 0;
  color: #fff;
  font-size: clamp(1.1rem, 1.7vw, 1.35rem);
  line-height: 1.5;
}

.protech-email-signup__main {
  padding: clamp(68px, 8vw, 112px) 24px !important;
  background:
    linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.96)),
    url("assets/images/resources/content-bg-desktop.webp") center top / cover no-repeat;
}

.protech-email-signup__columns {
  width: min(100%, 1200px);
  margin: 0 auto;
  gap: clamp(42px, 7vw, 96px);
}

.protech-email-signup__eyebrow--dark {
  margin-bottom: 16px;
  color: #007ca8;
}

.protech-email-signup__copy h2,
.protech-email-signup__card h2 {
  color: var(--pt-email-blue);
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-weight: 400;
  letter-spacing: -0.035em;
}

.protech-email-signup__copy h2 {
  margin: 0 0 22px;
  font-size: clamp(2.65rem, 4.3vw, 4.6rem);
  line-height: 1;
}

.protech-email-signup__copy > p:not(.protech-email-signup__eyebrow) {
  margin: 0;
  font-size: 1.12rem;
  line-height: 1.65;
}

.protech-email-signup__benefits {
  display: grid;
  gap: 16px;
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
}

.protech-email-signup__benefits li {
  position: relative;
  margin: 0;
  padding-left: 38px;
  font-size: 1.04rem;
  font-weight: 600;
  line-height: 1.45;
}

.protech-email-signup__benefits li::before {
  content: "\2713";
  position: absolute;
  top: -1px;
  left: 0;
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  color: var(--pt-email-navy);
  background: var(--pt-email-cyan);
  font-size: 0.85rem;
  font-weight: 800;
}

.protech-email-signup__card {
  padding: clamp(30px, 4vw, 52px) !important;
  border: 1px solid rgba(0, 91, 132, 0.12);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(0, 44, 67, 0.15);
}

.protech-email-signup__stage {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 760px;
  padding: 150px 24px 96px !important;
  overflow: hidden;
  background: #001f2d url("assets/images/home/hero.png") center / cover no-repeat;
}

.protech-email-signup__stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(0, 31, 45, 0.58);
}

.protech-email-signup__stage > .wp-block-group__inner-container {
  width: min(100%, 680px);
}

.protech-email-signup--module-only .protech-email-signup__card {
  width: 100%;
  margin: 0 auto;
}

.protech-email-signup__card h2 {
  margin: 0 0 12px;
  font-size: clamp(2rem, 3vw, 2.8rem);
  line-height: 1.06;
}

.protech-email-signup__card h1 {
  margin: 0 0 14px;
  color: var(--pt-email-blue);
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(2.4rem, 5vw, 4rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.045em;
}

.protech-email-signup__card > .wp-block-group__inner-container > p:not(.protech-email-signup__privacy) {
  margin: 0 0 28px;
  font-size: 1rem;
  line-height: 1.55;
}

.protech-email-signup .dotdigital-signup-form {
  margin: 0;
  padding: 0;
  color: var(--pt-email-ink);
  background: transparent;
}

.protech-email-signup .dotdigital-signup-form .ddg-form-group,
.protech-email-signup .dotdigital-signup-form .dotdigital-form-submit {
  margin: 0 0 20px;
}

.protech-email-signup .dotdigital-signup-form label {
  display: block;
  margin: 0 0 8px;
  color: var(--pt-email-ink);
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.4;
}

.protech-email-signup .dotdigital-signup-form :is(input[type="text"], input[type="email"], input[type="tel"], select) {
  box-sizing: border-box;
  width: 100%;
  min-height: 56px;
  margin: 0;
  border: 1px solid #91aab4;
  border-radius: 12px;
  padding: 13px 16px;
  color: var(--pt-email-ink);
  background: #fff;
  font: inherit;
}

.protech-email-signup .dotdigital-signup-form :is(input, select):focus-visible {
  border-color: #007ca8;
  outline: 3px solid rgba(0, 217, 255, 0.28);
  outline-offset: 1px;
}

.protech-email-signup .dotdigital-signup-form input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 2px 9px 0 0;
  accent-color: #007ca8;
}

.protech-email-signup .protech-dotdigital-consent {
  margin: 25px 0 22px;
  border-top: 1px solid #dbe5e9;
  padding-top: 22px;
}

.protech-email-signup .protech-dotdigital-consent__control {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
}

.protech-email-signup .dotdigital-signup-form .protech-dotdigital-consent__checkbox {
  width: 20px;
  height: 20px;
  margin: 1px 0 0;
  cursor: pointer;
}

.protech-email-signup .dotdigital-signup-form .protech-dotdigital-consent__checkbox:disabled {
  cursor: not-allowed;
}

.protech-email-signup .dotdigital-signup-form .protech-dotdigital-consent__control label {
  margin: 0;
  font-size: 0.86rem;
  font-weight: 500;
  line-height: 1.5;
  cursor: pointer;
}

.protech-email-signup .protech-dotdigital-consent__optional {
  color: #607985;
  white-space: nowrap;
}

.protech-email-signup .dotdigital-signup-form .protech-dotdigital-consent button.protech-dotdigital-consent__more {
  min-height: 0;
  margin: 8px 0 0 32px;
  border: 0;
  border-radius: 0;
  padding: 0;
  color: #007ca8;
  background: transparent;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.protech-email-signup .dotdigital-signup-form .protech-dotdigital-consent button.protech-dotdigital-consent__more:hover,
.protech-email-signup .dotdigital-signup-form .protech-dotdigital-consent button.protech-dotdigital-consent__more:focus-visible {
  color: var(--pt-email-blue);
  background: transparent;
}

.protech-dotdigital-consent-dialog {
  box-sizing: border-box;
  width: min(calc(100% - 40px), 680px);
  max-height: min(82vh, 760px);
  margin: auto;
  border: 1px solid rgba(0, 91, 132, 0.2);
  border-radius: 26px;
  padding: 0;
  overflow: auto;
  color: #07384e;
  background: #fff;
  box-shadow: 0 28px 90px rgba(0, 22, 34, 0.36);
}

.protech-dotdigital-consent-dialog::backdrop {
  background: rgba(0, 22, 34, 0.74);
  backdrop-filter: blur(3px);
}

.protech-dotdigital-consent-dialog__panel {
  position: relative;
  padding: clamp(30px, 5vw, 52px);
}

.protech-email-signup .protech-dotdigital-consent-dialog h2 {
  max-width: calc(100% - 36px);
  margin: 0 0 20px;
  color: #003a54;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -0.035em;
}

.protech-dotdigital-consent-dialog p {
  margin: 0;
  color: #294f60;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: 0.98rem;
  line-height: 1.65;
}

.protech-email-signup .dotdigital-signup-form dialog.protech-dotdigital-consent-dialog button.protech-dotdigital-consent-dialog__close {
  position: absolute;
  top: 20px;
  right: 20px;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid #9eb3bc;
  border-radius: 50%;
  padding: 0 0 3px;
  color: #003a54;
  background: #fff;
  font-family: Arial, sans-serif;
  font-size: 1.8rem;
  line-height: 1;
  cursor: pointer;
}

.protech-email-signup .dotdigital-signup-form dialog.protech-dotdigital-consent-dialog button.protech-dotdigital-consent-dialog__close:hover,
.protech-email-signup .dotdigital-signup-form dialog.protech-dotdigital-consent-dialog button.protech-dotdigital-consent-dialog__close:focus-visible {
  border-color: var(--pt-email-cyan, #00d9ff);
  outline: 3px solid rgba(0, 217, 255, 0.25);
}

html.has-protech-consent-dialog {
  overflow: hidden;
}

.protech-email-signup .dotdigital-signup-form .dotdigital-form-submit {
  margin-top: 8px;
  margin-bottom: 0;
}

.protech-email-signup .dotdigital-signup-form .dotdigital-form-submit button {
  min-height: 54px;
  border: 2px solid var(--pt-email-cyan);
  border-radius: 999px;
  padding: 12px 34px;
  color: var(--pt-email-navy);
  background: var(--pt-email-cyan);
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.protech-email-signup .dotdigital-signup-form .dotdigital-form-submit button:not([disabled]):hover,
.protech-email-signup .dotdigital-signup-form .dotdigital-form-submit button:not([disabled]):focus-visible {
  color: #fff;
  background: var(--pt-email-blue);
  transform: translateY(-1px);
}

.protech-email-signup .protech-dotdigital-placeholder button[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

.protech-email-signup .protech-dotdigital-placeholder__message,
.protech-email-signup .protech-dotdigital-placeholder__admin {
  margin: 12px 0 0;
  color: #526d78;
  font-size: 0.82rem;
  line-height: 1.5;
}

.protech-email-signup .protech-dotdigital-placeholder__admin {
  border-top: 1px solid #dbe5e9;
  padding-top: 12px;
}

.protech-email-signup .protech-dotdigital-placeholder__admin a {
  color: #007ca8;
  font-weight: 700;
}

.protech-email-signup__privacy {
  margin: 22px 0 0;
  color: #526d78;
  font-size: 0.8rem;
  line-height: 1.55;
}

.protech-email-signup__privacy a {
  color: #007ca8;
  text-decoration: underline;
  text-underline-offset: 2px;
}

@media (max-width: 782px) {
  .protech-email-signup__hero {
    min-height: 480px;
    padding: 124px 20px 68px !important;
  }

  .protech-email-signup__hero::after {
    background: linear-gradient(rgba(0, 22, 34, 0.7), rgba(0, 31, 45, 0.82));
  }

  .protech-email-signup__hero-content {
    text-align: center;
  }

  .protech-email-signup__hero-content > .wp-block-group__inner-container {
    margin: 0 auto;
  }

  .protech-email-signup__hero h1 {
    font-size: clamp(3.3rem, 16vw, 5rem);
  }

  .protech-email-signup__main {
    padding: 60px 20px 72px !important;
    background:
      linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.96)),
      url("assets/images/resources/content-bg-mobile.webp") center top / cover no-repeat;
  }

  .protech-email-signup__columns {
    gap: 42px;
  }

  .protech-email-signup__card {
    padding: 30px 22px !important;
    border-radius: 22px;
  }

  .protech-email-signup__stage {
    min-height: 680px;
    padding: 112px 20px 64px !important;
  }

  .protech-email-signup .dotdigital-signup-form .dotdigital-form-submit button {
    width: 100%;
  }

  .protech-dotdigital-consent-dialog {
    width: min(calc(100% - 28px), 680px);
    border-radius: 20px;
  }

  .protech-dotdigital-consent-dialog__panel {
    padding: 34px 24px 30px;
  }

  .protech-email-signup .dotdigital-signup-form dialog.protech-dotdigital-consent-dialog button.protech-dotdigital-consent-dialog__close {
    top: 14px;
    right: 14px;
    width: 38px;
    height: 38px;
  }
}

/* Keep August form controls above the theme's global form/button defaults. */
.protech-contact-redesign .protech-contact-form textarea {
  min-height: 340px;
  border: 2px solid #00d9ff;
  border-radius: 24px;
  padding: 16px 24px;
  color: #fff;
  background: rgba(0, 26, 41, .62);
}

.protech-contact-redesign .protech-contact-form .protech-contact-consent button {
  min-height: 0;
  border: 0;
  border-radius: 0;
  padding: 0;
  color: #00d9ff;
  background: transparent;
}

.protech-contact-redesign .protech-contact-dialog button.protech-contact-dialog__close {
  color: #003a54;
  background: #fff;
}

@media (max-width: 782px) {
  .protech-contact-redesign .protech-contact-form textarea {
    min-height: 180px;
  }
}

/* August 2026 Careers and About pages. */
.protech-careers-page,
.protech-about-page {
  --aug-navy: #00374f;
  --aug-deep: #001f30;
  --aug-cyan: #00d9f5;
  --aug-orange: #f58220;
  color: var(--aug-navy);
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  overflow: hidden;
}

.protech-careers-page > .wp-block-group__inner-container,
.protech-about-page > .wp-block-group__inner-container {
  max-width: none !important;
}

.protech-careers-page h1,
.protech-careers-page h2,
.protech-careers-page h3,
.protech-careers-page h4,
.protech-about-page h1,
.protech-about-page h2,
.protech-about-page h3,
.protech-about-page h4 {
  font-family: inherit;
  font-weight: 500;
  letter-spacing: -.035em;
}

.protech-careers-page h2,
.protech-about-page h2 {
  margin: 0;
  color: var(--aug-navy);
  font-size: clamp(2.25rem, 4vw, 4rem);
  line-height: 1;
}

.protech-careers-page h3,
.protech-about-page h3 {
  margin: .35rem 0 1.5rem;
  color: var(--aug-cyan);
  font-size: clamp(1.35rem, 2.3vw, 2.25rem);
}

.protech-careers-page p,
.protech-careers-page li,
.protech-about-page p,
.protech-about-page li {
  font-size: 1rem;
  line-height: 1.55;
}

.protech-careers-hero {
  margin-top: 0 !important;
  background: var(--aug-deep);
}

.protech-careers-hero .wp-block-cover__image-background {
  object-position: center;
}

.protech-careers-hero__content {
  width: min(100% - 40px, 1320px);
  margin: 0 auto !important;
}

.protech-careers-hero__content > * {
  max-width: 710px;
}

.protech-careers-hero h1 {
  margin: 0 0 22px;
  color: #fff;
  font-size: clamp(3rem, 5vw, 4.7rem);
  line-height: .98;
}

.protech-careers-hero p {
  color: #fff;
  font-size: clamp(1.1rem, 1.7vw, 1.45rem);
}

.protech-careers-page .wp-block-button__link,
.protech-about-page .wp-block-button__link {
  border: 2px solid var(--aug-cyan);
  border-radius: 999px;
  padding: 13px 28px;
  color: var(--aug-deep);
  background: var(--aug-cyan);
  font-weight: 700;
}

.protech-careers-page .is-style-outline .wp-block-button__link {
  color: #fff;
  background: transparent;
}

.protech-careers-intro,
.protech-careers-benefits,
.protech-careers-paths,
.protech-careers-testimonial,
.protech-careers-process,
.protech-about-history,
.protech-about-who,
.protech-about-purpose,
.protech-about-impact,
.protech-about-story,
.protech-about-why,
.protech-about-leadership,
.protech-about-careers {
  width: min(100% - 40px, 1320px) !important;
  margin: 0 auto !important;
  padding: clamp(70px, 8vw, 125px) 0;
}

.protech-careers-intro .wp-block-columns,
.protech-careers-testimonial .wp-block-columns,
.protech-about-who .wp-block-columns,
.protech-about-why .wp-block-columns,
.protech-about-careers .wp-block-columns {
  gap: clamp(40px, 7vw, 100px);
}

.protech-careers-intro img,
.protech-careers-testimonial img,
.protech-about-who img,
.protech-about-why img {
  width: 100%;
  max-height: 480px;
  border-radius: 28px;
  object-fit: cover;
}

.protech-careers-benefits {
  border-radius: 44px;
  padding: clamp(55px, 7vw, 90px) !important;
  color: #fff;
  background: var(--aug-navy);
}

.protech-careers-benefits h2,
.protech-careers-benefits h4 {
  color: var(--aug-cyan);
}

.protech-careers-benefits .wp-block-columns {
  margin-top: 34px;
  gap: 34px;
}

.protech-careers-benefits .wp-block-column {
  border-top: 1px solid rgba(0,217,245,.45);
  padding-top: 24px;
}

.protech-careers-benefits h4 {
  margin: 0 0 8px;
  font-size: 1.25rem;
}

.protech-careers-paths > .wp-block-group__inner-container > .wp-block-columns,
.protech-careers-apprenticeships .alignwide > .wp-block-columns {
  gap: 28px;
}

.protech-career-card,
.protech-apprentice-card {
  overflow: hidden;
  border-radius: 28px;
  padding: 0 32px 30px;
  background: #f0f2f3;
  box-shadow: 0 15px 34px rgba(0,43,63,.12);
}

.protech-career-card figure {
  margin: 0 -32px 28px;
}

.protech-career-card img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}

.protech-career-card h4,
.protech-apprentice-card h4 {
  color: var(--aug-navy);
  font-size: 1.55rem;
  text-transform: uppercase;
}

.protech-career-card a,
.protech-apprentice-card a {
  color: #009fca;
  font-weight: 700;
}

.protech-careers-apprenticeships {
  padding: clamp(70px, 8vw, 120px) 20px !important;
  background: #e9f0f3;
}

.protech-careers-apprenticeships > .wp-block-group__inner-container,
.protech-careers-apprenticeships .alignwide {
  max-width: 1320px !important;
  margin: auto;
}

.protech-apprentice-card {
  border: 1px solid rgba(0,217,245,.5);
  padding: 36px;
  background: #fff;
}

.protech-careers-testimonial blockquote {
  border: 0;
  margin: 0;
  padding: 0;
}

.protech-careers-testimonial blockquote p {
  color: var(--aug-navy);
  font-size: clamp(1.8rem, 3vw, 3rem);
  line-height: 1.15;
}

.protech-careers-process {
  text-align: center;
}

.protech-careers-process .wp-block-columns {
  position: relative;
  margin-top: 50px;
  gap: 12px;
}

.protech-careers-process .wp-block-column strong {
  display: grid;
  width: 52px;
  height: 52px;
  margin: 0 auto 16px;
  place-items: center;
  border: 2px solid var(--aug-cyan);
  border-radius: 50%;
  color: var(--aug-navy);
  background: #fff;
}

.protech-careers-cta {
  padding: clamp(70px, 8vw, 110px) 20px !important;
  text-align: center;
  color: #fff;
  background: var(--aug-navy);
}

.protech-careers-cta > .wp-block-group__inner-container {
  max-width: 850px !important;
  margin: auto;
}

.protech-careers-cta h2 {
  color: var(--aug-cyan);
}

.protech-about-page {
  background: #fff url("assets/images/resources/content-bg-desktop.webp") center top / cover fixed;
}

.protech-about-hero {
  position: relative;
  min-height: 670px;
  display: grid;
  place-items: center;
  padding: 150px 24px 60px !important;
  text-align: center;
  color: #fff;
  background: var(--aug-deep) url("assets/images/resources/portal-wave.webp") center / cover no-repeat;
}

.protech-about-hero > .wp-block-group__inner-container {
  width: min(100%, 1000px);
}

.protech-about-eyebrow {
  margin-bottom: 12px;
  letter-spacing: .1em;
}

.protech-about-hero h1 {
  margin: 0 auto 24px;
  color: var(--aug-cyan);
  font-size: clamp(3.2rem, 6vw, 6rem);
  line-height: 1;
}

.protech-about-hero > .wp-block-group__inner-container > p:not(.protech-about-eyebrow) {
  max-width: 720px;
  margin-inline: auto;
  font-size: 1.2rem;
}

.protech-about-jump {
  display: flex;
  justify-content: center;
  margin-top: 65px;
  flex-wrap: wrap;
}

.protech-about-jump .wp-block-button__link {
  min-width: 130px;
  padding: 8px 20px;
  color: #fff;
  background: transparent;
}

.protech-about-history {
  text-align: center;
}

.protech-about-history .wp-block-columns {
  gap: 16px;
  margin-top: 40px;
}

.protech-about-history .wp-block-column {
  display: flex;
  min-height: 170px;
  flex-direction: column;
  justify-content: center;
  border-radius: 20px;
  padding: 24px 16px;
  color: #fff;
  background: var(--aug-navy);
}

.protech-about-history strong {
  color: var(--aug-cyan);
  font-size: 1.7rem;
}

.protech-about-history span {
  display: block;
  margin-top: 10px;
}

.protech-about-who,
.protech-about-why {
  border-radius: 38px;
  padding: clamp(45px, 6vw, 75px) !important;
  color: #fff;
  background: var(--aug-navy);
}

.protech-about-who h2,
.protech-about-why h2 {
  color: var(--aug-cyan);
}

.protech-about-purpose {
  text-align: center;
}

.protech-about-purpose > .wp-block-group__inner-container > p {
  max-width: 950px;
  margin-inline: auto;
}

.protech-about-purpose .wp-block-columns {
  gap: 24px;
  margin-top: 28px;
}

.protech-about-purpose .wp-block-column {
  border-radius: 22px;
  padding: 36px 24px;
  color: #fff;
  background: var(--aug-navy);
}

.protech-about-purpose h4 {
  color: var(--aug-cyan);
  font-size: 1.4rem;
}

.protech-about-impact {
  border-radius: 40px;
  padding: clamp(50px, 6vw, 80px) !important;
  text-align: center;
  color: #fff;
  background: var(--aug-navy);
}

.protech-about-impact h2 {
  color: var(--aug-cyan);
}

.protech-about-impact .wp-block-columns {
  gap: 22px;
  margin-top: 22px;
}

.protech-about-impact .wp-block-column {
  border-radius: 18px;
  padding: 28px;
  color: var(--aug-navy);
  background: #f0f2f3;
}

.protech-about-impact h3 {
  margin: 0 0 8px;
  color: var(--aug-navy);
  font-size: 1.35rem;
}

.protech-about-story {
  text-align: center;
}

.protech-about-story > .wp-block-group__inner-container > p {
  max-width: 850px;
  margin-inline: auto;
}

.protech-about-story .wp-block-columns {
  margin-top: 45px;
  gap: 20px;
  text-align: left;
}

.protech-about-story .wp-block-column {
  border-radius: 20px;
  padding: 30px;
  color: #fff;
  background: var(--aug-navy);
}

.protech-about-story-cue {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 34px;
  margin: 22px 0 0;
  color: #008db5;
  font-weight: 700;
}

.protech-about-story-cue span {
  color: #466776;
  font-weight: 500;
}

.protech-about-story span,
.protech-about-story h3 {
  color: var(--aug-cyan);
}

.protech-about-leadership {
  text-align: center;
}

.protech-about-leadership .wp-block-columns {
  max-width: 700px;
  margin: 40px auto 0;
}

.protech-about-leadership .wp-block-column {
  min-height: 260px;
  overflow: hidden;
  border-radius: 22px;
  padding: 30px;
  color: #fff;
  background: var(--aug-navy);
}

.protech-about-leadership img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  object-position: top;
}

.protech-about-leadership h3,
.protech-about-leadership a {
  color: var(--aug-cyan);
}

.protech-about-careers {
  border-radius: 38px;
  padding: clamp(45px, 6vw, 75px) !important;
  background: #eef0f1;
}

.protech-about-careers img {
  max-height: 520px;
  object-fit: contain;
}

.protech-about-press {
  padding: clamp(70px, 8vw, 110px) 20px !important;
  color: #fff;
  background: var(--aug-deep);
}

.protech-about-press > .wp-block-group__inner-container,
.protech-about-press .alignwide {
  max-width: 1320px !important;
  margin: auto;
}

.protech-about-press h2,
.protech-about-press h3,
.protech-about-press a {
  color: var(--aug-cyan);
}

.protech-about-press .wp-block-column {
  border: 1px solid rgba(0,217,245,.45);
  border-radius: 22px;
  padding: 30px;
}

@media (max-width: 782px) {
  .protech-careers-hero {
    min-height: 670px !important;
    height: 670px;
  }

  .protech-careers-hero h1 {
    font-size: clamp(3rem, 14vw, 4.5rem);
  }

  .protech-careers-benefits,
  .protech-about-who,
  .protech-about-impact,
  .protech-about-why,
  .protech-about-careers {
    width: calc(100% - 28px) !important;
    border-radius: 26px;
    padding: 42px 24px !important;
  }

  .protech-careers-benefits .wp-block-columns,
  .protech-careers-process .wp-block-columns,
  .protech-about-history .wp-block-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .protech-careers-process .wp-block-column:last-child,
  .protech-about-history .wp-block-column:last-child {
    grid-column: 1 / -1;
  }

  .protech-about-hero {
    min-height: 760px;
    padding-top: 130px !important;
  }

  .protech-about-jump {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }

  .protech-about-jump .wp-block-button,
  .protech-about-jump .wp-block-button__link {
    width: 100%;
  }

  .protech-about-page {
    background-image: url("assets/images/resources/content-bg-mobile.webp");
  }
}

/* August page QA refinements. */
.protech-resources-dynamic .protech-resources-filter-buttons[hidden] {
  display: none !important;
}

.protech-resources-dynamic .protech-resources-filter-label {
  color: #07384e;
  background: #fff;
  box-shadow: none;
}

.protech-resources-dynamic .protech-resources-filter-label::before {
  content: "☷";
  margin-right: 7px;
}

.protech-resource-single {
  color: #07384e;
  background: #fff url("assets/images/resources/content-bg-desktop.webp") center top / cover fixed;
}

.protech-resource-single__hero {
  min-height: 470px;
  display: grid;
  align-items: end;
  padding: 150px 28px 76px;
  color: #fff;
  background:
    linear-gradient(90deg, rgba(0, 22, 34, .96), rgba(0, 40, 60, .58)),
    url("assets/images/resources/portal-wave.webp") center / cover no-repeat;
}

.protech-resource-single__hero-inner,
.protech-resource-single__content-wrap {
  width: min(100%, 1120px);
  margin: 0 auto;
}

.protech-resource-single__back {
  color: #00d9ff;
  font-weight: 700;
  text-decoration: none;
}

.protech-resource-single__terms {
  margin: 34px 0 10px;
  color: #00d9ff;
  font-size: .85rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.protech-resource-single__hero h1 {
  max-width: 900px;
  margin: 0;
  color: #fff;
  font-family: "Protech Google Sans Flex", "legacy-gotham", sans-serif;
  font-size: clamp(3rem, 6vw, 5.8rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.045em;
}

.protech-resource-single__content-wrap {
  padding: clamp(55px, 7vw, 95px) 28px clamp(80px, 9vw, 130px);
}

.protech-resource-single__image {
  overflow: hidden;
  max-width: 900px;
  margin: 0 0 42px;
  border-radius: 30px;
  box-shadow: 0 18px 45px rgba(0, 37, 55, .18);
}

.protech-resource-single__image img {
  display: block;
  width: 100%;
  max-height: 560px;
  object-fit: cover;
}

.protech-resource-single__content {
  max-width: 820px;
  color: #294d5d;
  font-size: 1.15rem;
  line-height: 1.75;
}

.protech-careers-hero {
  position: relative;
  display: flex;
  overflow: hidden;
  min-height: 650px !important;
  height: 650px;
  align-items: center;
  justify-content: center;
  background: #002d43;
}

.protech-careers-hero > .wp-block-cover__image-background,
.protech-careers-hero > .wp-block-cover__background {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.protech-careers-hero > .wp-block-cover__image-background {
  object-fit: cover;
}

.protech-careers-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(0, 24, 38, .82), rgba(0, 40, 58, .3), rgba(0, 24, 38, .45)),
    url("assets/images/august/careers/careers-hero.jpg") left center / 58% 100% no-repeat;
  opacity: .84;
  pointer-events: none;
}

.protech-careers-hero .wp-block-cover__background {
  z-index: 1;
  opacity: .25 !important;
}

.protech-careers-hero > .wp-block-cover__inner-container {
  position: absolute !important;
  inset: 0;
  z-index: 5 !important;
  display: grid;
  width: 100%;
  place-items: center;
  color: #fff;
}

.protech-careers-hero .wp-block-cover__image-background {
  object-position: center 58%;
}

.protech-careers-hero__content {
  text-align: center;
}

.protech-careers-hero__content > * {
  max-width: 900px;
  margin-right: auto;
  margin-left: auto;
}

.protech-careers-hero__content .wp-block-buttons {
  justify-content: center;
}

.protech-careers-intro {
  background: transparent;
}

.protech-careers-intro img {
  min-height: 470px;
  object-position: center;
}

.protech-careers-benefits {
  text-align: center;
}

.protech-careers-benefits .wp-block-columns {
  text-align: left;
}

.protech-careers-benefits .wp-block-column {
  position: relative;
  min-height: 112px;
  padding: 22px 0 0 64px;
}

.protech-careers-benefits .wp-block-column::before,
.protech-about-purpose .wp-block-column::before {
  content: "";
  position: absolute;
  width: 46px;
  height: 46px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.protech-careers-benefits .wp-block-column::before {
  top: 22px;
  left: 0;
  filter: brightness(0) saturate(100%) invert(71%) sepia(96%) saturate(1861%) hue-rotate(142deg) brightness(101%) contrast(102%);
}

.protech-careers-benefits .wp-block-columns:first-of-type .wp-block-column:nth-child(1)::before { background-image: url("assets/images/redesign/icons/icon-time.svg"); }
.protech-careers-benefits .wp-block-columns:first-of-type .wp-block-column:nth-child(2)::before { background-image: url("assets/images/redesign/icons/icon-warning.svg"); }
.protech-careers-benefits .wp-block-columns:first-of-type .wp-block-column:nth-child(3)::before { background-image: url("assets/images/redesign/icons/icon-clipboard.svg"); }
.protech-careers-benefits .wp-block-columns:first-of-type .wp-block-column:nth-child(4)::before { background-image: url("assets/images/redesign/icons/icon-cycle.svg"); }
.protech-careers-benefits .wp-block-columns:nth-of-type(2) .wp-block-column:nth-child(1)::before { background-image: url("assets/images/redesign/icons/icon-identify.svg"); }
.protech-careers-benefits .wp-block-columns:nth-of-type(2) .wp-block-column:nth-child(2)::before { background-image: url("assets/images/redesign/icons/icon-gear.svg"); }
.protech-careers-benefits .wp-block-columns:nth-of-type(2) .wp-block-column:nth-child(3)::before { background-image: url("assets/images/redesign/icons/icon-mobile.svg"); }
.protech-careers-benefits .wp-block-columns:nth-of-type(2) .wp-block-column:nth-child(4)::before { background-image: url("assets/images/redesign/icons/icon-adas.svg"); }

.protech-careers-benefits h4 {
  margin-top: 0;
}

.protech-career-card {
  display: grid !important;
  grid-template-columns: minmax(190px, 38%) 1fr;
  grid-auto-rows: auto;
  align-content: start;
  column-gap: 28px;
  padding: 0 28px 26px 0;
}

.protech-career-card figure {
  grid-column: 1;
  grid-row: 1 / span 8;
  height: 100%;
  min-height: 430px;
  margin: 0;
}

.protech-career-card figure img {
  height: 100%;
  border-right: 5px solid #00d9ff;
}

.protech-career-card > :not(figure) {
  grid-column: 2;
}

.protech-career-card h4 {
  margin: 30px 0 8px;
}

.protech-career-card p,
.protech-career-card ul {
  margin-top: 5px;
  margin-bottom: 8px;
}

.protech-apprentice-card {
  position: relative;
  display: grid !important;
  grid-template-columns: minmax(190px, 38%) 1fr;
  column-gap: 28px;
  overflow: hidden;
  min-height: 390px;
  padding: 0 28px 24px 0;
}

.protech-apprentice-card::before {
  content: "";
  display: block;
  grid-column: 1;
  grid-row: 1 / span 5;
  min-height: 390px;
  border-right: 5px solid #f58220;
  background: center / cover no-repeat;
}

.protech-apprentice-card:first-child::before {
  background-image: url("assets/images/august/careers/adas-career.jpg");
}

.protech-apprentice-card:last-child::before {
  background-image: url("assets/images/august/careers/adas-apprentice.jpg");
}

.protech-apprentice-card > * {
  grid-column: 2;
}

.protech-apprentice-card h4 {
  margin: 32px 0 8px;
}

.protech-careers-testimonial {
  width: min(100% - 40px, 1320px) !important;
  border: 2px solid #00d9ff;
  border-radius: 42px;
  padding: clamp(40px, 6vw, 70px) !important;
  color: #fff;
  background: #002d43 url("assets/images/resources/portal-wave.webp") center / cover no-repeat;
}

.protech-careers-testimonial h2,
.protech-careers-testimonial blockquote p {
  color: #fff;
}

.protech-careers-testimonial figure {
  width: 260px;
  height: 260px;
  margin: auto;
  overflow: hidden;
  border: 8px solid rgba(255,255,255,.12);
  border-radius: 50%;
}

.protech-careers-testimonial img {
  width: 100%;
  height: 100%;
  max-height: none;
  border-radius: 0;
  object-position: 90% center;
  transform: scale(2.05);
  transform-origin: 84% 50%;
}

.protech-careers-testimonial cite {
  color: #00d9ff;
  font-style: normal;
  font-weight: 700;
  line-height: 1.6;
}

.protech-careers-process {
  width: min(100%, 1440px) !important;
  padding: 90px 60px !important;
  color: #fff;
  background: #002d43;
}

.protech-careers-process h2,
.protech-careers-process h3 {
  color: #00d9ff;
}

.protech-careers-process .wp-block-column strong {
  background: #00d9ff;
}

.protech-careers-process .wp-block-column p {
  color: #fff;
}

.protech-careers-cta > .wp-block-group__inner-container {
  position: relative;
  max-width: 1080px !important;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding-left: min(42%, 430px);
  text-align: left;
}

.protech-careers-cta > .wp-block-group__inner-container::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 36%;
  border-radius: 28px;
  background: url("assets/images/august/careers/protech-team.jpg") center / cover no-repeat;
}

.protech-careers-cta .wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.protech-about-leadership .wp-block-column:first-child::before {
  content: "JW";
  display: grid;
  width: 100%;
  height: 220px;
  margin-bottom: 24px;
  place-items: center;
  color: #00d9ff;
  background:
    radial-gradient(circle at 50% 38%, rgba(0,217,255,.2), transparent 35%),
    linear-gradient(145deg, #0b526c, #002d43);
  font-size: 4rem;
  font-weight: 500;
  letter-spacing: -.06em;
}

.protech-about-purpose .wp-block-column {
  position: relative;
  padding-top: 96px;
}

.protech-about-purpose .wp-block-column::before {
  top: 32px;
  left: 50%;
  transform: translateX(-50%);
  filter: brightness(0) saturate(100%) invert(48%) sepia(96%) saturate(2870%) hue-rotate(357deg) brightness(100%) contrast(104%);
}

.protech-about-purpose .wp-block-columns:first-of-type .wp-block-column:nth-child(1)::before { background-image: url("assets/images/redesign/icons/icon-warning.svg"); }
.protech-about-purpose .wp-block-columns:first-of-type .wp-block-column:nth-child(2)::before { background-image: url("assets/images/redesign/icons/icon-clipboard.svg"); }
.protech-about-purpose .wp-block-columns:first-of-type .wp-block-column:nth-child(3)::before { background-image: url("assets/images/redesign/icons/icon-gear.svg"); }
.protech-about-purpose .wp-block-columns:nth-of-type(2) .wp-block-column:nth-child(1)::before { background-image: url("assets/images/redesign/icons/icon-cycle.svg"); }
.protech-about-purpose .wp-block-columns:nth-of-type(2) .wp-block-column:nth-child(2)::before { background-image: url("assets/images/redesign/icons/icon-identify.svg"); }
.protech-about-purpose .wp-block-columns:nth-of-type(2) .wp-block-column:nth-child(3)::before { background-image: url("assets/images/redesign/icons/icon-mobile.svg"); }

@media (max-width: 900px) {
  .protech-career-card,
  .protech-apprentice-card {
    display: block !important;
    padding: 0 24px 28px;
  }

  .protech-career-card figure,
  .protech-apprentice-card::before {
    display: block;
    min-height: 250px;
    height: 250px;
    margin: 0 -24px 24px;
    border-right: 0;
    border-bottom: 5px solid #00d9ff;
  }

  .protech-apprentice-card::before {
    border-bottom-color: #f58220;
  }
}

@media (max-width: 782px) {
  .protech-resource-single {
    background-image: url("assets/images/resources/content-bg-mobile.webp");
  }

  .protech-resource-single__hero {
    min-height: 430px;
    padding: 130px 20px 55px;
  }

  .protech-careers-hero::after {
    background-size: cover;
  }

  .protech-careers-benefits .wp-block-column {
    padding-left: 52px;
  }

  .protech-careers-benefits .wp-block-column::before {
    width: 38px;
    height: 38px;
  }

  .protech-careers-process {
    padding: 65px 24px !important;
  }

  .protech-careers-cta > .wp-block-group__inner-container {
    padding: 300px 0 0;
    text-align: center;
    align-items: center;
  }

  .protech-careers-cta > .wp-block-group__inner-container::before {
    width: 100%;
    height: 260px;
    bottom: auto;
  }
}

/* Careers: final hierarchy and section-flow match to the August composition. */
.protech-careers-page {
  background: #fff url("assets/images/resources/content-bg-desktop.webp") center top / cover fixed;
}

.protech-careers-hero h1 {
  color: #00d9ff;
  font-size: clamp(3rem, 4.55vw, 4.25rem);
  font-weight: 400;
}

.protech-careers-hero p {
  max-width: 720px;
  font-size: clamp(1rem, 1.35vw, 1.25rem);
}

.protech-careers-hero__content .wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
}

.protech-careers-intro {
  padding-top: 88px;
  padding-bottom: 88px;
}

.protech-careers-intro h2,
.protech-careers-benefits h2,
.protech-careers-paths h2,
.protech-careers-apprenticeships h2 {
  margin: 0 0 6px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -.02em;
}

.protech-careers-intro h2,
.protech-careers-paths h2,
.protech-careers-apprenticeships h2 {
  color: #07384e;
}

.protech-careers-intro h3,
.protech-careers-benefits h3,
.protech-careers-paths h3,
.protech-careers-apprenticeships h3 {
  margin: 0 0 38px;
  font-size: clamp(2.35rem, 3.5vw, 3.35rem);
  font-weight: 400;
  line-height: 1;
}

.protech-careers-intro h3,
.protech-careers-paths h3,
.protech-careers-apprenticeships h3 {
  color: #07384e;
}

.protech-careers-intro img {
  min-height: 420px;
}

.protech-careers-benefits {
  padding: 55px 68px 64px !important;
}

.protech-careers-benefits h2 {
  color: #fff;
}

.protech-careers-benefits h3 {
  color: #00d9ff;
}

.protech-careers-benefits .wp-block-columns {
  margin-top: 18px;
}

.protech-careers-benefits .wp-block-column {
  min-height: 96px;
}

.protech-careers-paths {
  padding-top: 84px;
  padding-bottom: 92px;
}

.protech-careers-apprenticeships {
  padding-top: 82px !important;
  padding-bottom: 92px !important;
}

.protech-careers-testimonial {
  position: relative;
  left: 50%;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 0 0 -50vw !important;
  border: 0;
  border-radius: 0;
  padding: 90px 40px 42px !important;
  background: #002d43 url("assets/images/resources/portal-wave.webp") center / cover no-repeat;
}

.protech-careers-testimonial > .wp-block-group__inner-container {
  width: min(100%, 1160px);
  margin: 0 auto;
}

.protech-careers-testimonial > .wp-block-group__inner-container::before {
  content: "Hear From Our Team";
  display: block;
  margin: 0 0 30px;
  color: #00d9ff;
  font-size: clamp(2.4rem, 4vw, 3.6rem);
  font-weight: 400;
  line-height: 1;
  text-align: center;
  letter-spacing: -.04em;
}

.protech-careers-testimonial .wp-block-columns {
  gap: 54px;
  max-width: 1040px;
  margin: 0 auto;
  border: 2px solid #00d9ff;
  border-radius: 42px;
  padding: 42px 58px;
  background: rgba(0, 27, 42, .9);
}

.protech-careers-testimonial h2 {
  display: none;
}

.protech-careers-testimonial blockquote p {
  font-size: clamp(1.6rem, 2.6vw, 2.6rem);
  font-style: normal;
  line-height: 1.12;
}

.protech-careers-process {
  position: relative;
  left: 50%;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 0 0 -50vw !important;
  padding: 70px max(40px, calc((100% - 1320px) / 2)) 90px !important;
  text-align: left;
}

.protech-careers-process > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 0 42px;
  align-items: center;
}

.protech-careers-process h2 {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  font-size: 1.15rem;
  color: #fff;
}

.protech-careers-process h3 {
  grid-column: 1;
  grid-row: 2;
  margin: 4px 0 0;
  font-size: 2.4rem;
  line-height: 1;
}

.protech-careers-process .wp-block-columns {
  grid-column: 2;
  grid-row: 1 / span 2;
  width: 100%;
  margin: 0;
}

.protech-careers-process .wp-block-column {
  text-align: center;
}

.protech-careers-cta {
  margin-top: 0 !important;
  padding-top: 78px !important;
  padding-bottom: 88px !important;
}

.protech-careers-cta h2 {
  font-size: clamp(2.25rem, 3.8vw, 3.5rem);
}

@media (max-width: 900px) {
  .protech-careers-process > .wp-block-group__inner-container {
    display: block;
    text-align: center;
  }

  .protech-careers-process h3 {
    margin-bottom: 42px;
  }
}

@media (max-width: 782px) {
  .protech-careers-page {
    background-image: url("assets/images/resources/content-bg-mobile.webp");
  }

  .protech-careers-hero h1 {
    font-size: clamp(3rem, 13vw, 3.8rem);
  }

  .protech-careers-intro h3,
  .protech-careers-benefits h3,
  .protech-careers-paths h3,
  .protech-careers-apprenticeships h3 {
    font-size: 2.35rem;
  }

  .protech-careers-benefits {
    padding: 44px 24px !important;
  }

  .protech-careers-testimonial {
    padding: 70px 20px 34px !important;
  }

  .protech-careers-testimonial .wp-block-columns {
    padding: 34px 24px;
  }

  .protech-careers-testimonial > .wp-block-group__inner-container::before {
    text-align: left;
  }
}

@media (min-width: 783px) {
  .protech-careers-hero {
    min-height: 540px !important;
    height: 540px;
  }

  .protech-careers-intro {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  .protech-careers-intro .wp-block-columns {
    gap: 58px;
  }

  .protech-careers-intro p,
  .protech-careers-intro li {
    font-size: .82rem;
    line-height: 1.35;
  }

  .protech-careers-intro img {
    min-height: 340px;
    max-height: 340px;
  }

  .protech-careers-benefits {
    padding: 38px 52px 42px !important;
  }

  .protech-careers-benefits h3 {
    margin-bottom: 20px;
  }

  .protech-careers-benefits .wp-block-columns {
    gap: 18px;
    margin: 8px 0 0;
  }

  .protech-careers-benefits .wp-block-column {
    min-height: 76px;
    padding: 16px 0 0 48px;
  }

  .protech-careers-benefits .wp-block-column::before {
    top: 16px;
    width: 34px;
    height: 34px;
  }

  .protech-careers-benefits h4 {
    margin-bottom: 4px;
    font-size: .9rem;
    line-height: 1.05;
  }

  .protech-careers-benefits p {
    margin: 0;
    font-size: .7rem;
    line-height: 1.28;
  }

  .protech-careers-paths {
    padding-top: 58px;
    padding-bottom: 62px;
  }

  .protech-careers-paths h3,
  .protech-careers-apprenticeships h3 {
    margin-bottom: 25px;
  }

  .protech-career-card {
    grid-template-columns: minmax(150px, 40%) 1fr;
    column-gap: 18px;
    padding-right: 18px;
    padding-bottom: 16px;
  }

  .protech-career-card figure {
    min-height: 300px;
  }

  .protech-career-card h4,
  .protech-apprentice-card h4 {
    margin-top: 20px;
    margin-bottom: 5px;
    font-size: 1rem;
    line-height: 1.05;
  }

  .protech-career-card p,
  .protech-career-card li,
  .protech-apprentice-card p,
  .protech-apprentice-card li {
    font-size: .7rem;
    line-height: 1.3;
  }

  .protech-career-card ul,
  .protech-apprentice-card ul {
    margin: 3px 0 5px;
    padding-left: 17px;
  }

  .protech-careers-apprenticeships {
    padding-top: 56px !important;
    padding-bottom: 64px !important;
  }

  .protech-apprentice-card {
    grid-template-columns: minmax(150px, 40%) 1fr;
    min-height: 300px;
    column-gap: 18px;
    padding-right: 18px;
    padding-bottom: 16px;
  }

  .protech-apprentice-card::before {
    min-height: 300px;
  }

  .protech-careers-testimonial {
    padding-top: 58px !important;
    padding-bottom: 30px !important;
  }

  .protech-careers-testimonial > .wp-block-group__inner-container::before {
    margin-bottom: 20px;
    font-size: 2.8rem;
  }

  .protech-careers-testimonial .wp-block-columns {
    max-width: 920px;
    gap: 38px;
    border-radius: 34px;
    padding: 28px 46px;
  }

  .protech-careers-testimonial figure {
    width: 190px;
    height: 190px;
  }

  .protech-careers-testimonial blockquote p {
    font-size: 1.65rem;
  }

  .protech-careers-testimonial cite {
    font-size: .72rem;
  }

  .protech-careers-process {
    padding-top: 52px !important;
    padding-bottom: 62px !important;
  }

  .protech-careers-process h3 {
    font-size: 1.8rem;
  }

  .protech-careers-process .wp-block-column p {
    font-size: .66rem;
    line-height: 1.2;
  }

  .protech-careers-process .wp-block-column strong {
    width: 42px;
    height: 42px;
  }

  .protech-careers-cta {
    padding-top: 58px !important;
    padding-bottom: 64px !important;
  }

  .protech-careers-cta > .wp-block-group__inner-container {
    min-height: 250px;
  }

  .protech-careers-cta p {
    font-size: .8rem;
  }
}

/* August Careers/About: design-scale correction pass. */
@media (min-width: 783px) {
  .protech-careers-hero {
    height: 680px;
    min-height: 680px !important;
  }

  .protech-careers-intro,
  .protech-careers-paths {
    padding-top: 96px;
    padding-bottom: 96px;
  }

  .protech-careers-intro .wp-block-columns {
    gap: 72px;
  }

  .protech-careers-intro p,
  .protech-careers-intro li {
    font-size: 1rem;
    line-height: 1.48;
  }

  .protech-careers-intro img {
    min-height: 480px;
    max-height: 480px;
  }

  .protech-careers-benefits {
    padding: 60px 72px 72px !important;
  }

  .protech-careers-benefits .wp-block-columns {
    gap: 28px;
    margin-top: 24px;
  }

  .protech-careers-benefits .wp-block-column {
    min-height: 124px;
    padding: 24px 0 0 68px;
  }

  .protech-careers-benefits .wp-block-column::before {
    top: 24px;
    width: 48px;
    height: 48px;
  }

  .protech-careers-benefits h4 {
    font-size: 1.15rem;
  }

  .protech-careers-benefits p {
    font-size: .88rem;
    line-height: 1.4;
  }

  .protech-careers-paths h3,
  .protech-careers-apprenticeships h3 {
    margin-bottom: 38px;
  }

  .protech-career-card {
    grid-template-columns: minmax(220px, 40%) 1fr;
    column-gap: 28px;
    padding-right: 28px;
    padding-bottom: 26px;
  }

  .protech-career-card figure {
    min-height: 440px;
  }

  .protech-career-card h4,
  .protech-apprentice-card h4 {
    margin-top: 30px;
    font-size: 1.3rem;
  }

  .protech-career-card p,
  .protech-career-card li,
  .protech-apprentice-card p,
  .protech-apprentice-card li {
    font-size: .88rem;
    line-height: 1.42;
  }

  .protech-careers-apprenticeships {
    padding-top: 92px !important;
    padding-bottom: 105px !important;
  }

  .protech-apprentice-card {
    grid-template-columns: minmax(220px, 40%) 1fr;
    min-height: 410px;
    column-gap: 28px;
    padding-right: 28px;
    padding-bottom: 26px;
  }

  .protech-apprentice-card::before {
    min-height: 410px;
  }

  .protech-careers-testimonial {
    padding-top: 105px !important;
    padding-bottom: 52px !important;
  }

  .protech-careers-testimonial > .wp-block-group__inner-container::before {
    margin-bottom: 38px;
    font-size: 3.7rem;
  }

  .protech-careers-testimonial .wp-block-columns {
    max-width: 1080px;
    gap: 56px;
    padding: 54px 70px;
  }

  .protech-careers-testimonial figure {
    width: 260px;
    height: 260px;
  }

  .protech-careers-testimonial blockquote p {
    font-size: 2.2rem;
  }

  .protech-careers-testimonial cite {
    font-size: .9rem;
  }

  .protech-careers-process {
    padding-top: 82px !important;
    padding-bottom: 100px !important;
  }

  .protech-careers-process h3 {
    font-size: 2.4rem;
  }

  .protech-careers-process .wp-block-column strong {
    width: 58px;
    height: 58px;
  }

  .protech-careers-process .wp-block-column p {
    font-size: .82rem;
  }

  .protech-careers-cta {
    padding-top: 96px !important;
    padding-bottom: 110px !important;
  }

  .protech-careers-cta > .wp-block-group__inner-container {
    min-height: 330px;
  }

  .protech-careers-cta p {
    font-size: 1rem;
  }
}

.protech-careers-testimonial img {
  object-position: center;
  transform: none;
}

.protech-about-page h2 {
  font-size: clamp(2.5rem, 4vw, 4.25rem);
}

.protech-about-page h3 {
  font-size: clamp(1.55rem, 2.5vw, 2.5rem);
}

.protech-about-hero {
  min-height: 820px;
}

.protech-about-history,
.protech-about-who,
.protech-about-purpose,
.protech-about-impact,
.protech-about-story,
.protech-about-why,
.protech-about-leadership,
.protech-about-careers {
  padding-top: 110px;
  padding-bottom: 110px;
}

.protech-about-history .wp-block-column {
  min-height: 205px;
}

.protech-about-history strong {
  font-size: 2rem;
}

.protech-about-who,
.protech-about-why {
  padding: 72px !important;
}

.protech-about-who img,
.protech-about-why img {
  min-height: 420px;
}

.protech-about-purpose .wp-block-columns {
  gap: 30px;
  margin-top: 36px;
}

.protech-about-purpose .wp-block-column {
  min-height: 330px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 120px 34px 42px;
}

.protech-about-purpose .wp-block-column::before {
  top: 48px;
  width: 58px;
  height: 58px;
}

.protech-about-purpose h4 {
  font-size: 1.65rem;
}

.protech-about-impact {
  padding: 75px !important;
}

.protech-about-impact .wp-block-column {
  min-height: 190px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 35px;
}

.protech-about-story .wp-block-columns {
  display: flex !important;
  flex-direction: row !important;
  overflow-x: auto;
  flex-wrap: nowrap !important;
  scroll-snap-type: x proximity;
  padding: 0 0 20px;
	cursor: grab;
	touch-action: pan-y;
	user-select: none;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: #00d9f5 transparent;
}

.protech-about-story .wp-block-columns.is-dragging {
	cursor: grabbing;
	scroll-snap-type: none;
}

.protech-about-story .wp-block-columns:focus-visible {
	outline: 3px solid #00d9f5;
	outline-offset: 8px;
}

.protech-about-story .wp-block-column {
  flex: 0 0 min(420px, 74vw);
  min-height: 300px;
  scroll-snap-align: start;
}

.protech-about-why img {
  object-position: center;
}

.protech-about-leadership .wp-block-columns {
  max-width: 820px;
  gap: 38px;
}

.protech-about-leadership .wp-block-column {
  min-height: 470px;
  padding: 30px;
}

.protech-about-leadership img,
.protech-about-leadership .wp-block-column:first-child::before {
  height: 300px;
}

.protech-about-leadership .wp-block-column:first-child::before {
  display: none;
}

.protech-about-careers {
  padding: 72px !important;
}

.protech-about-careers img {
  width: 100%;
  min-height: 520px;
  object-fit: contain;
  object-position: center bottom;
  transform: scale(2.05) translate(19%, -2%);
  transform-origin: center bottom;
}

.protech-about-press {
  padding-top: 105px !important;
  padding-bottom: 115px !important;
}

.protech-about-press .wp-block-columns {
  gap: 28px;
}

.protech-about-press .wp-block-column {
  min-height: 390px;
}

.protech-about-recent-news {
  display: flex;
  flex-direction: column;
}

.protech-about-recent-news > a {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 12px;
  border-radius: 14px;
  padding: 16px 18px;
  color: #00374f;
  background: #08738c;
  text-decoration: none;
}

.protech-about-recent-news > a span,
.protech-about-recent-news > a time {
  color: #00d9f5;
  font-size: .72rem;
}

.protech-about-recent-news > a strong {
  color: #fff;
}

/* Final desktop proportions measured against the supplied August artboards. */
@media (min-width: 783px) {
  .protech-about-hero {
    min-height: 900px;
  }

  .protech-about-history,
  .protech-about-purpose,
  .protech-about-story,
  .protech-about-leadership {
    padding-top: 165px;
    padding-bottom: 165px;
  }

  .protech-about-who,
  .protech-about-impact,
  .protech-about-why,
  .protech-about-careers {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }

  .protech-about-who {
    min-height: 720px;
  }

  .protech-about-purpose .wp-block-column {
    min-height: 450px;
  }

  .protech-about-impact {
    min-height: 760px;
  }

  .protech-about-story .wp-block-column {
    min-height: 390px;
  }

  .protech-about-why {
    min-height: 640px;
  }

  .protech-about-leadership .wp-block-column {
    min-height: 620px;
  }

  .protech-about-leadership img {
    height: 350px;
  }

  .protech-about-careers {
    min-height: 760px;
  }

  .protech-about-press {
    min-height: 820px;
  }

  .protech-careers-intro {
    min-height: 760px;
  }

  .protech-careers-benefits {
    min-height: 500px;
  }

  .protech-careers-paths {
    min-height: 700px;
  }

  .protech-careers-apprenticeships {
    min-height: 720px;
  }

  .protech-careers-testimonial {
    min-height: 800px;
  }

  .protech-careers-process {
    min-height: 370px;
  }

  .protech-careers-cta {
    min-height: 600px;
  }
}

/* August artboard calibration at the supplied 1000px desktop review width. */
@media (min-width: 783px) and (max-width: 1100px) {
  .protech-careers-hero {
    height: 538px;
    min-height: 538px !important;
  }

  .protech-careers-intro {
    min-height: 480px;
    padding-top: 56px;
    padding-bottom: 56px;
  }

  .protech-careers-benefits {
    min-height: 438px;
    padding-top: 52px !important;
    padding-bottom: 58px !important;
  }

  .protech-careers-paths {
    min-height: 480px;
    padding-top: 52px;
    padding-bottom: 58px;
  }

  .protech-careers-apprenticeships {
    min-height: 510px;
    padding-top: 58px !important;
    padding-bottom: 68px !important;
  }

  .protech-careers-testimonial {
    min-height: 690px;
    padding-top: 72px !important;
    padding-bottom: 38px !important;
  }

  .protech-careers-process {
    min-height: 300px;
    padding-top: 56px !important;
    padding-bottom: 68px !important;
  }

  .protech-careers-cta {
    min-height: 520px;
    padding-top: 66px !important;
    padding-bottom: 76px !important;
  }

  .protech-about-hero {
    min-height: 620px;
  }

  .protech-about-history,
  .protech-about-purpose,
  .protech-about-story,
  .protech-about-leadership {
    padding-top: 92px;
    padding-bottom: 92px;
  }

  .protech-about-who {
    min-height: 520px;
  }

  .protech-about-purpose .wp-block-column {
    min-height: 360px;
  }

  .protech-about-impact {
    min-height: 590px;
  }

  .protech-about-story .wp-block-column {
    min-height: 300px;
  }

  .protech-about-why {
    min-height: 500px;
  }

  .protech-about-leadership .wp-block-column {
    min-height: 490px;
  }

  .protech-about-careers {
    min-height: 600px;
  }

  .protech-about-press {
    min-height: 700px;
  }
}

@media (max-width: 782px) {
  .protech-careers-hero {
    height: 560px;
    min-height: 560px !important;
  }

  .protech-careers-hero h1 {
    font-size: 2.55rem;
  }

  .protech-careers-intro,
  .protech-careers-paths,
  .protech-about-history,
  .protech-about-purpose,
  .protech-about-story,
  .protech-about-leadership {
    padding-top: 66px;
    padding-bottom: 66px;
  }

  .protech-about-hero {
    min-height: 690px;
  }

  .protech-about-purpose .wp-block-column {
    min-height: 185px;
    padding: 82px 22px 26px;
  }

  .protech-about-purpose .wp-block-column::before {
    top: 25px;
    width: 44px;
    height: 44px;
  }

  .protech-about-purpose .wp-block-column h4 {
    margin-bottom: 8px;
    font-size: 1.25rem;
  }

  .protech-about-purpose .wp-block-column p {
    margin: 0;
    font-size: .82rem;
    line-height: 1.35;
  }

  .protech-about-who .wp-block-columns,
  .protech-about-why .wp-block-columns,
  .protech-about-careers .wp-block-columns {
    gap: 24px;
  }

  .protech-about-who img,
  .protech-about-why img {
    min-height: 260px;
  }

  .protech-about-impact {
    padding: 42px 18px !important;
  }

  .protech-about-impact .wp-block-column {
    min-height: 130px;
    padding: 20px 16px;
  }

  .protech-about-impact h3 {
    font-size: 1rem;
  }

  .protech-about-impact p,
  .protech-about-impact strong {
    font-size: .75rem;
    line-height: 1.3;
  }

  .protech-about-story .wp-block-columns {
    display: flex !important;
    flex-direction: row !important;
  }

  .protech-about-story .wp-block-column {
    flex-basis: 92%;
    min-height: 185px;
    padding: 22px;
  }

  .protech-about-story .wp-block-column p {
    font-size: .8rem;
    line-height: 1.35;
  }

  .protech-about-leadership .wp-block-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .protech-about-leadership .wp-block-column {
    min-height: 330px;
    padding: 16px;
  }

  .protech-about-leadership img,
  .protech-about-leadership .wp-block-column:first-child::before {
    height: 210px;
  }

  .protech-about-careers img {
    min-height: 360px;
    transform: scale(1.8) translate(16%, -1%);
  }
}
