:root {
  --wg-radius: 14px;
  --wg-shadow: 0 18px 55px rgba(16, 24, 32, .08);
  --wg-header-height: 82px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
img { max-width: 100%; height: auto; }

.wp-site-blocks { padding: 0; }
.wp-block-template-part { margin-block-start: 0; }

.wp-block-site-title { margin: 0; }
.wp-block-site-title a {
  display: block;
  width: 122px;
  height: 64px;
  overflow: hidden;
  text-indent: -9999px;
  background: url('../images/logo.png') center / contain no-repeat;
}

.wg-skip-link {
  position: fixed;
  left: 1rem;
  top: 1rem;
  z-index: 9999;
  transform: translateY(-200%);
  background: #fff;
  color: #101820;
  padding: .75rem 1rem;
  border-radius: 6px;
}
.wg-skip-link:focus { transform: none; }

.wg-header {
  position: relative;
  z-index: 20;
  min-height: var(--wg-header-height);
}
.wg-header .wp-block-navigation a { text-decoration: none; }
.wg-header .wp-block-navigation a:hover { text-decoration: underline; text-underline-offset: .25em; }

.wg-hero {
  min-height: clamp(540px, 72vh, 760px);
  overflow: hidden;
}
.wg-hero .wp-block-cover__background { background: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.18) 66%, rgba(0,0,0,.05)); opacity: 1 !important; }
.wg-hero .wp-block-cover__image-background { object-position: center 44%; }
.wg-hero-copy { max-width: 790px; }
.wg-kicker { font-size: .8rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.wg-display { text-wrap: balance; }
.wg-highlight-blue { color: #20A1F2; }
.wg-highlight-green { color: var(--wp--preset--color--green); }

.wg-section { padding-top: var(--wp--preset--spacing--60); padding-bottom: var(--wp--preset--spacing--60); }
.wg-section-tight { padding-top: var(--wp--preset--spacing--50); padding-bottom: var(--wp--preset--spacing--50); }
.wg-section-title { max-width: 980px; text-wrap: balance; }
.wg-lead { max-width: 780px; }

.wg-services-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1rem;
}
.wg-service-card {
  height: 100%;
  min-height: 230px;
  padding: 1.35rem;
  border: 1px solid rgba(16,24,32,.08);
  border-radius: var(--wg-radius);
  background: linear-gradient(180deg, #fff, #f7f9fa);
  box-shadow: 0 8px 22px rgba(16,24,32,.04);
}
.wg-service-number { color: var(--wp--preset--color--blue); font-size: .8rem; font-weight: 900; letter-spacing: .08em; }
.wg-service-icon { font-size: 2rem; line-height: 1; }
.wg-service-card h3 { font-family: var(--wp--preset--font-family--system); font-size: 1.05rem; line-height: 1.05; letter-spacing: -.02em; text-transform: uppercase; }
.wg-service-card p { font-size: .9rem; }

.wg-split {
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(2rem, 5vw, 6rem);
  align-items: center;
}
.wg-media-card img { border-radius: var(--wg-radius); }

.wg-marketing {
  border-radius: 24px;
  background: linear-gradient(135deg, #eff8fe, #fff);
  overflow: hidden;
}
.wg-channel-stack { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }
.wg-channel-pill {
  display: inline-flex;
  align-items: center;
  min-height: 54px;
  padding: .75rem 1rem;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(16,24,32,.1);
  box-shadow: 0 8px 24px rgba(16,24,32,.06);
  font-weight: 800;
}

.wg-quote-grid { display: grid !important; grid-template-columns: 1fr 1fr; gap: 1rem; }
.wg-quote {
  padding: clamp(1.5rem, 3vw, 2.25rem);
  background: var(--wp--preset--color--red);
  color: #fff;
  border-radius: var(--wg-radius);
}
.wg-quote blockquote { margin: 0; }
.wg-quote p:first-child { font-size: clamp(1.3rem, 1rem + 1vw, 2rem); font-weight: 900; line-height: 1.1; }

.wg-logo-cloud { display: flex !important; flex-wrap: wrap; justify-content: space-between; gap: 1rem 2rem; align-items: center; }
.wg-logo-cloud > * { opacity: .72; font-weight: 900; font-size: clamp(1rem, 1rem + .4vw, 1.35rem); }

.wg-campaign { position: relative; overflow: hidden; }
.wg-campaign::before {
  content: "WOO GUYS WOO GUYS WOO GUYS";
  position: absolute;
  left: -1rem;
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
  transform-origin: left top;
  opacity: .12;
  font: 900 2.2rem/1 var(--wp--preset--font-family--display);
  white-space: nowrap;
}

.wg-footer a { color: #fff; }
.wg-footer .wp-block-navigation { color: #fff; }

.wg-prose :where(h2,h3,h4) { scroll-margin-top: 2rem; }
.wg-prose :where(p,li) { max-width: 72ch; }
.wg-prose :where(img) { border-radius: var(--wg-radius); }

:where(a, button, .wp-element-button):focus-visible {
  outline: 3px solid var(--wp--preset--color--green);
  outline-offset: 3px;
}

@media (max-width: 980px) {
  .wg-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wg-split { grid-template-columns: 1fr; gap: 2.25rem; }
  .wg-quote-grid { grid-template-columns: 1fr; }
  .wg-header .wp-block-buttons { display: none; }
}

@media (max-width: 640px) {
  :root { --wg-header-height: 70px; }
  .wp-block-site-title a { width: 96px; height: 52px; }
  .wg-header { min-height: var(--wg-header-height); }
  .wg-header > .wp-block-group { padding-left: 1rem !important; padding-right: 1rem !important; }
  .wg-hero { min-height: 620px; }
  .wg-hero .wp-block-cover__image-background { object-position: 62% center; }
  .wg-hero .wp-block-cover__background { background: linear-gradient(90deg, rgba(0,0,0,.8), rgba(0,0,0,.35)); }
  .wg-services-grid { grid-template-columns: 1fr; }
  .wg-service-card { min-height: auto; }
  .wg-section { padding-top: 3.5rem; padding-bottom: 3.5rem; }
  .wg-logo-cloud { justify-content: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
