/* Additional accents stay in the margins; headings use horizontal motifs,
   sides use the vertical source, with the same 12px squares throughout. */
@media (min-width: 1024px) {
 .site-footer { position: relative; isolation: isolate; overflow: clip; }
 .site-footer::before {
  content: "";
  position: absolute;
  z-index: -1;
  right: -140px;
  bottom: -72px;
  width: 440px;
  height: 240px;
  background: url(../img/decor/texture-gris.svg?v=horizontal-2) center / 660px auto no-repeat;
  filter: invert(1);
  opacity: .55;
  mask-image: linear-gradient(to left, #000, transparent);
  pointer-events: none;
 }
 /* Lower corner of the feed, including the space after the final cards. */
 .news-listing .news-grid { position: relative; isolation: isolate; overflow: clip; }
 .news-listing .news-grid::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: -180px;
  bottom: 32px;
  width: 440px;
  height: 240px;
  background: url(../img/decor/texture-gris.svg?v=horizontal-2) center / 660px auto no-repeat;
  opacity: .55;
  mask-image: linear-gradient(to left, #000, transparent);
  pointer-events: none;
 }
 /* A light horizontal accent closes the partnerships section. */
 .about-us-corporate #clients-section { position: relative; isolation: isolate; overflow: clip; }
 .about-us-corporate #clients-section::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: -180px;
  bottom: -100px;
  width: 660px;
  height: 341px;
  background: url(../img/decor/texture-gris.svg?v=horizontal-2) center / 660px auto no-repeat;
  opacity: .45;
  mask-image: linear-gradient(to top, #000, transparent);
  pointer-events: none;
 }
 /* Keep the existing Careers corner softer where it sits near the intro. */
 .careers-page .careers-stories::after { opacity: .5; }
}
@media (min-width: 1280px) {
 .decor-edge { position: relative; isolation: isolate; }
 .decor-edge::after,
 .news-article .article-header::after,
 .ateq-page-worldwide .ww-regions::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 340px;
  height: 660px;
  background: url(../img/decor/texture-gris-vertical.svg?v=2) center / auto 660px no-repeat;
  opacity: .5;
  mask-image: linear-gradient(to left, #000 15%, transparent 85%);
  pointer-events: none;
 }
 .decor-edge::after { right: -120px; bottom: -80px; }
 /* The article title and reading column retain clear central space. */
 .news-article .article-header { isolation: isolate; }
 .news-article .article-header::after { top: -140px; right: calc(50% - 50vw - 180px); }
 /* Leave the interactive map clean; decorate the end of the directory. */
 .ateq-page-worldwide .ww-regions { isolation: isolate; }
 .ateq-page-worldwide .ww-regions::after { right: calc(50% - 50vw - 180px); bottom: 48px; }
}

/* The homepage hero uses the supplied texture instead of the old drawn pattern. */
@media (min-width: 768px) {
 .home .hero-divisions__pattern { width: 660px; max-width: none; height: auto; opacity: .7; }
 .home .hero-divisions--dark .hero-divisions__pattern { filter: invert(1); }
}

/* Keep the News texture at the outer right edge, clear of its title. */
@media (min-width: 1024px) {
 .news-listing .page-title::before {
  left: auto;
  right: -80px;
  top: -40px;
  width: 660px;
  height: 345px;
  background-position: right top;
 }
}

/* Distinct color treatments extend the Careers mood to the other main heroes. */
.ateq-page-about-us .page-hero {
 background:
  radial-gradient(ellipse at 84% 42%, rgba(174, 8, 58, .48), transparent 48%),
  radial-gradient(ellipse at 105% 90%, rgba(226, 44, 81, .2), transparent 52%),
  radial-gradient(ellipse at 58% -35%, rgba(115, 84, 130, .18), transparent 60%),
  var(--bg-inverse);
}
.ateq-page-worldwide .ww-hero {
 position: relative;
 isolation: isolate;
 overflow: clip;
 background:
  radial-gradient(ellipse at 90% 72%, rgba(145, 8, 42, .3), transparent 52%),
  radial-gradient(ellipse at 64% -25%, rgba(100, 68, 122, .2), transparent 60%),
  var(--bg-inverse);
}
.ateq-page-worldwide .ww-hero::before,
.ateq-page-worldwide .ww-hero::after {
 content: "";
 position: absolute;
 z-index: -1;
 pointer-events: none;
 width: min(1000px, 85vw);
 height: 440px;
 right: -160px;
 top: -130px;
 border: 1px solid rgba(227, 28, 76, .2);
 border-radius: 50%;
 transform: rotate(-24deg);
 box-shadow: 0 0 36px rgba(200, 15, 58, .07), inset 0 0 36px rgba(200, 15, 58, .05);
}
.ateq-page-worldwide .ww-hero::after {
 top: -80px;
 right: -250px;
 border-color: rgba(164, 106, 142, .14);
 transform: rotate(-16deg);
}
@media (max-width: 767px) {
 .ateq-page-about-us .page-hero {
  background: radial-gradient(ellipse at 100% 20%, rgba(174, 8, 58, .38), transparent 65%), var(--bg-inverse);
 }
 .ateq-page-worldwide .ww-hero::before,
 .ateq-page-worldwide .ww-hero::after { width: 560px; right: -360px; opacity: .65; }
}

/* A diagonal light band gives the homepage its own color composition. */
.home .hero-divisions--dark {
 background:
  radial-gradient(ellipse at 108% 5%, rgba(212, 20, 70, .25), transparent 50%),
  linear-gradient(118deg, #0c0c0e 24%, #25202a 66%, #530d28 100%);
}

/* Use the hero portals' solid red backplane and identical angled silhouette. */
:is(.about-us-corporate .division-card, .careers-story--video) {
 --ateq-portal-cut: 28px;
 position: relative;
 isolation: isolate;
 background: transparent;
}
:is(.about-us-corporate .division-card, .careers-story--video)::before {
 content: "";
 position: absolute;
 z-index: -1;
 inset: 0;
 width: auto;
 height: auto;
 border: 0;
 background: #db1045;
 clip-path: polygon(0 var(--ateq-portal-cut), 72% 0, 100% 0, 100% 100%, 0 100%);
 transform: translate(9px, 12px);
 transition: transform .45s cubic-bezier(.2,.7,.3,1);
 pointer-events: none;
}
.ateq-portal-surface {
 display: flex;
 flex: 1;
 flex-direction: inherit;
 min-width: 0;
 background: var(--bg-elevated);
 clip-path: polygon(0 var(--ateq-portal-cut), 72% 0, 100% 0, 100% 100%, 0 100%);
}
.about-us-corporate .division-card .ateq-portal-surface { background: var(--bg-subtle); }
.careers-story--video .ateq-portal-surface { background: var(--bg-page); }

.about-us-corporate .division-card:is(:hover, :focus-within)::before {
 transform: translate(13px, 17px);
}
/* Smaller cuts suit compact division cards. */
@media (max-width: 767px) {
 :is(.about-us-corporate .division-card, .careers-story--video) { --ateq-portal-cut: 22px; }
}
@media (prefers-reduced-motion: reduce) {
 :is(.about-us-corporate .division-card, .careers-story--video)::before { transition: none; }
}
/* Directory accents sit beside region headings, clear of links and the map. */
.ateq-page-worldwide .ww-region__head::after {
 content: "";
 width: 56px;
 height: 28px;
 margin-top: 16px;
 background: linear-gradient(135deg, #d31245, #ea194a);
 clip-path: polygon(0 0, 72% 0, 100% 100%, 28% 100%);
 pointer-events: none;
}

/* Editorial cards use the original top rule and elevated hover treatment. */
.news-card { background: var(--bg-elevated); }
.news-card::before { display: block; }
.news-card:is(:hover, :focus-within) { box-shadow: var(--shadow-hover, 0 12px 32px rgb(12 12 14 / 12%)); }
.news-card .ateq-portal-surface { clip-path: none; }
.news-card__frame {
 position: relative;
 margin: 0;
}
.news-card__frame::before {
 display: none;
}
.news-card__frame .news-card__media { clip-path: none; }

/* Pointer clicks do not draw a border around News cards; keyboard focus stays visible. */
.news-listing .news-card:focus-within { outline: none; }
.news-listing .news-card:has(.news-card__link:focus-visible) { outline: 2px solid #0c0c0e; outline-offset: 3px; }

/* Compact location markers in the shared Worldwide CTA. */
.worldwide-teaser .world-map__dot { transform-box: fill-box; transform-origin: center; transform: scale(.55); }
.worldwide-teaser .world-map__halo { transform-box: fill-box; transform-origin: center; transform: scale(.7); }
