/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jul 12 2026 | 19:56:42 */
@import url("https://fonts.googleapis.com/css2?family=Teko:wght@400&display=swap");

/*
  Ace Web Studio universal article CSS.
  Use this single stylesheet for news posts, articles and website case studies.
  Paste this file into the AWS site CSS area when updating the live website.
*/

:is(.single-post, .single-portfolio) .aws-article {
  --aws-charcoal: #1f2026;
  --aws-charcoal-2: #292a31;
  --aws-text: #30323a;
  --aws-muted: #6f737d;
  --aws-paper: #ffffff;
  --aws-soft: #f5f6f8;
  --aws-soft-2: #eef0f4;
  --aws-line: #e1e3e8;
  --aws-coral: #e66f66;
  --aws-coral-dark: #ce5a52;
  --aws-coral-soft: #fff0ee;
  --aws-teal: #3f8f8a;
  --aws-teal-dark: #2f6f6a;
  --aws-teal-soft: #e9f5f3;
  --aws-amber: #d7a642;
  --aws-amber-soft: #fff5de;
  color: var(--aws-text);
  background: var(--aws-paper);
  font-family: "Barlow Condensed", "Arial Narrow", Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 1.05rem;
  line-height: 1.72;
  margin: 0 auto;
  max-width: 1120px;
}

:is(.single-post, .single-portfolio) .aws-article * {
  box-sizing: border-box;
}

:is(.single-post, .single-portfolio) .aws-article p,
:is(.single-post, .single-portfolio) .aws-article li,
:is(.single-post, .single-portfolio) .aws-article td,
:is(.single-post, .single-portfolio) .aws-article th,
:is(.single-post, .single-portfolio) .aws-article figcaption,
:is(.single-post, .single-portfolio) .aws-case-summary span,
:is(.single-post, .single-portfolio) .aws-case-summary strong {
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  line-height: 1.72 !important;
}

:is(.single-post, .single-portfolio) .aws-article h1,
:is(.single-post, .single-portfolio) .aws-article h2,
:is(.single-post, .single-portfolio) .aws-article h3 {
  color: var(--aws-charcoal);
  font-family: "Teko", Impact, "Arial Narrow", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.05 !important;
  text-transform: uppercase;
}

:is(.single-post, .single-portfolio) .aws-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.98fr) minmax(340px, 0.72fr);
  gap: clamp(2rem, 5vw, 4.5rem);
  align-items: center;
  margin: 0 0 3.2rem;
  padding: clamp(2rem, 5vw, 4rem);
  background:
    linear-gradient(135deg, rgba(31, 32, 38, 0.96), rgba(31, 32, 38, 0.88)),
    radial-gradient(circle at 95% 8%, rgba(230, 111, 102, 0.55) 0 13rem, transparent 13.2rem);
  color: #ffffff;
  overflow: hidden;
  position: relative;
}

:is(.single-post, .single-portfolio) .aws-hero::after {
  content: "";
  position: absolute;
  right: -5rem;
  top: -7rem;
  width: 16rem;
  height: 24rem;
  background: var(--aws-coral);
  opacity: 0.9;
  transform: rotate(28deg);
}

:is(.single-post, .single-portfolio) .aws-case-study.aws-case-corner-ribbon .aws-hero::after {
  right: -4rem;
  top: -5rem;
  width: 10.5rem;
  height: 28rem;
  background: #b94f48;
  opacity: 0.92;
  transform: rotate(42deg);
}

:is(.single-post, .single-portfolio) .aws-case-study.aws-case-corner-tab .aws-hero::after {
  right: -3rem;
  top: -3.5rem;
  width: 14rem;
  height: 14rem;
  background: #c86f5b;
  opacity: 0.95;
  transform: rotate(12deg);
}

:is(.single-post, .single-portfolio) .aws-case-study.aws-case-corner-frame .aws-hero::after {
  right: -2.5rem;
  top: -2.5rem;
  width: 14rem;
  height: 14rem;
  border: 1.35rem solid #e08a7a;
  background: transparent;
  opacity: 0.95;
  transform: rotate(18deg);
}

:is(.single-post, .single-portfolio) .aws-case-study.aws-case-corner-circle .aws-hero::after {
  right: -8rem;
  top: -9rem;
  width: 21rem;
  height: 21rem;
  border-radius: 50%;
  background: #c86f5b;
  opacity: 0.94;
  transform: none;
}

:is(.single-post, .single-portfolio) .aws-corner-triangle .aws-hero::after {
  right: 0;
  top: 0;
  width: 0;
  height: 0;
  border-top: clamp(7.5rem, 16vw, 13rem) solid var(--aws-coral);
  border-left: clamp(7.5rem, 16vw, 13rem) solid transparent;
  background: transparent;
  opacity: 0.94;
  transform: none;
}

:is(.single-post, .single-portfolio) .aws-holistic-web.aws-corner-triangle .aws-hero::after {
  right: 0;
  top: 0;
  width: clamp(5.5rem, 10vw, 8.5rem);
  height: clamp(5.5rem, 10vw, 8.5rem);
  border: 0;
  background: #CC665C;
  clip-path: polygon(100% 0, 0 0, 100% 100%);
  opacity: 0.96;
  transform: none;
}

:is(.single-post, .single-portfolio) .aws-hero-copy,
:is(.single-post, .single-portfolio) .aws-hero-image {
  position: relative;
  z-index: 1;
}

:is(.single-post, .single-portfolio) .aws-hero-copy {
  max-width: 660px;
}

:is(.single-post, .single-portfolio) .aws-kicker {
  color: #ffb6ae;
  font-family: "Teko", Impact, "Arial Narrow", sans-serif;
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: 0;
  margin: 0 0 0.7rem;
  text-transform: uppercase;
}

:is(.single-post, .single-portfolio) .aws-case-study .aws-kicker {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 32px;
  padding: 0.32rem 0.7rem;
  border-radius: 999px;
  background: #d7a642;
  color: #1f2026;
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1 !important;
}

:is(.single-post, .single-portfolio) .aws-article h1 {
  color: #ffffff;
  font-size: clamp(2.8rem, 5.6vw, 4rem) !important;
  margin: 0 0 1.2rem;
  max-width: 650px;
}

:is(.single-post, .single-portfolio) .aws-hero p {
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.03rem;
  line-height: 1.72 !important;
  margin: 0 0 1rem !important;
  max-width: 620px;
}

:is(.single-post, .single-portfolio) .aws-hero-action {
  margin-top: 2.2rem;
}

:is(.single-post, .single-portfolio) .aws-hero .aws-hero-action a {
  display: flex;
  width: fit-content;
  margin-top: 1rem;
}

:is(.single-post, .single-portfolio) .aws-article a {
  color: var(--aws-coral-dark);
  font-weight: 600;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}

:is(.single-post, .single-portfolio) .aws-hero a,
:is(.single-post, .single-portfolio) .aws-primary-button,
:is(.single-post, .single-portfolio) .aws-cta-panel a[href*="website-maintenance"],
:is(.single-post, .single-portfolio) .aws-case-study .aws-cta-panel a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0.72rem 1rem;
  border-radius: 3px;
  background: var(--aws-coral);
  color: #ffffff;
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  text-transform: uppercase;
}

:is(.single-post, .single-portfolio) .aws-hero a:hover,
:is(.single-post, .single-portfolio) .aws-hero a:focus,
:is(.single-post, .single-portfolio) .aws-primary-button:hover,
:is(.single-post, .single-portfolio) .aws-primary-button:focus,
:is(.single-post, .single-portfolio) .aws-cta-panel a[href*="website-maintenance"]:hover,
:is(.single-post, .single-portfolio) .aws-cta-panel a[href*="website-maintenance"]:focus,
:is(.single-post, .single-portfolio) .aws-case-study .aws-cta-panel a:hover,
:is(.single-post, .single-portfolio) .aws-case-study .aws-cta-panel a:focus {
  background: var(--aws-coral-dark);
  color: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-article > h2,
:is(.single-post, .single-portfolio) .aws-article > h3,
:is(.single-post, .single-portfolio) .aws-article > p,
:is(.single-post, .single-portfolio) .aws-article > ul,
:is(.single-post, .single-portfolio) .aws-article > table,
:is(.single-post, .single-portfolio) .aws-article > .aws-image,
:is(.single-post, .single-portfolio) .aws-article > .aws-case-diagram,
:is(.single-post, .single-portfolio) .aws-article > .aws-chart-panel,
:is(.single-post, .single-portfolio) .aws-article > .aws-cta-panel {
  margin-left: 0;
  margin-right: 0;
}

:is(.single-post, .single-portfolio) .aws-article h2 {
  display: flex;
  align-items: center;
  gap: 0.72rem;
  margin-top: 3rem;
  margin-bottom: 1rem;
  font-size: clamp(1.85rem, 3vw, 2.85rem) !important;
  overflow: visible;
}

:is(.single-post, .single-portfolio) .aws-article h2 p {
  display: contents;
  margin: 0;
  padding: 0;
  color: inherit;
  font: inherit;
  line-height: inherit;
  text-transform: inherit;
}

:is(.single-post, .single-portfolio) .aws-article h2 br {
  display: none !important;
}

:is(.single-post, .single-portfolio) .aws-heading-icon {
  flex: 0 0 auto;
  align-self: center;
  display: inline-grid;
  place-items: center;
  width: 0.81em;
  min-width: 0.81em;
  height: 0.81em;
  min-height: 0.81em;
  border: 0;
  border-radius: 0;
  color: var(--aws-coral);
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 0.63em;
  font-weight: 600;
  line-height: 1;
  text-transform: none;
  transform: none;
}

:is(.single-post, .single-portfolio) .aws-heading-icon::before {
  display: block;
  transform: translateY(-0.24em);
}

:is(.single-post, .single-portfolio) .aws-icon-document::before {
  content: "\2630";
}

:is(.single-post, .single-portfolio) .aws-icon-pound::before {
  content: "\00A3";
}

:is(.single-post, .single-portfolio) .aws-icon-settings::before {
  content: "\271A";
}

:is(.single-post, .single-portfolio) .aws-icon-shield::before {
  content: "\2713";
}

:is(.single-post, .single-portfolio) .aws-icon-sliders::before {
  content: "\2261";
}

:is(.single-post, .single-portfolio) .aws-icon-warning::before {
  content: "!";
}

:is(.single-post, .single-portfolio) .aws-icon-lightbulb::before {
  content: "?";
}

:is(.single-post, .single-portfolio) .aws-icon-quote::before {
  content: "\2192";
}

:is(.single-post, .single-portfolio) .aws-icon-checklist::before,
:is(.single-post, .single-portfolio) .aws-icon-calendar::before,
:is(.single-post, .single-portfolio) .aws-icon-refresh::before,
:is(.single-post, .single-portfolio) .aws-icon-lock::before,
:is(.single-post, .single-portfolio) .aws-icon-cart::before,
:is(.single-post, .single-portfolio) .aws-icon-tools::before,
:is(.single-post, .single-portfolio) .aws-icon-download::before {
  content: "";
  width: 1em;
  height: 1em;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: translateY(-0.14em);
}

:is(.single-post, .single-portfolio) .aws-icon-checklist::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e66f66' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 6h10'/%3E%3Cpath d='M8 12h10'/%3E%3Cpath d='M8 18h10'/%3E%3Cpath d='m3 6 1 1 2-2'/%3E%3Cpath d='m3 12 1 1 2-2'/%3E%3Cpath d='m3 18 1 1 2-2'/%3E%3C/svg%3E");
}

:is(.single-post, .single-portfolio) .aws-icon-calendar::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e66f66' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3v4'/%3E%3Cpath d='M17 3v4'/%3E%3Cpath d='M4 9h16'/%3E%3Crect x='4' y='5' width='16' height='16' rx='2'/%3E%3Cpath d='M8 13h3'/%3E%3Cpath d='M8 17h8'/%3E%3C/svg%3E");
}

:is(.single-post, .single-portfolio) .aws-icon-refresh::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e66f66' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a8 8 0 0 1-13.7 5.6'/%3E%3Cpath d='M4 12A8 8 0 0 1 17.7 6.4'/%3E%3Cpath d='M18 3v4h-4'/%3E%3Cpath d='M6 21v-4h4'/%3E%3C/svg%3E");
}

:is(.single-post, .single-portfolio) .aws-icon-lock::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e66f66' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='10' width='14' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3Cpath d='M12 14v2'/%3E%3C/svg%3E");
}

:is(.single-post, .single-portfolio) .aws-icon-cart::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e66f66' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='18' cy='20' r='1'/%3E%3Cpath d='M3 4h2l2.4 11.3a2 2 0 0 0 2 1.7h7.8a2 2 0 0 0 2-1.5L21 8H6'/%3E%3C/svg%3E");
}

:is(.single-post, .single-portfolio) .aws-icon-tools::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e66f66' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5 5L4 17l3 3 5.7-5.7a4 4 0 0 0 5-5L15 12l-3-3 2.7-2.7Z'/%3E%3C/svg%3E");
}

:is(.single-post, .single-portfolio) .aws-icon-download::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e66f66' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12'/%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3Cpath d='M5 21h14'/%3E%3C/svg%3E");
}

:is(.single-post, .single-portfolio) .aws-article h3 {
  margin-top: 1.8rem;
  margin-bottom: 0.55rem;
  font-size: clamp(1.25rem, 2vw, 1.65rem) !important;
}

:is(.single-post, .single-portfolio) .aws-article p {
  margin-top: 0 !important;
  margin-bottom: 1rem !important;
  line-height: 1.72 !important;
}

:is(.single-post, .single-portfolio) .aws-article p + p {
  margin-top: 0 !important;
}

:is(.single-post, .single-portfolio) .aws-article ul {
  display: grid;
  gap: 0.42rem;
  list-style: none;
  margin-top: 0.7rem;
  margin-bottom: 1.2rem;
  padding: 0;
}

:is(.single-post, .single-portfolio) .aws-article li {
  padding: 0.57rem 0 0.57rem 2.55rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  position: relative;
}

:is(.single-post, .single-portfolio) .aws-article li::before {
  content: "";
  position: absolute;
  left: 0.95rem;
  top: 50%;
  width: 0.58rem;
  height: 0.58rem;
  border-radius: 50%;
  background: var(--aws-coral);
  box-shadow: 0 0 0 0.32rem var(--aws-coral-soft);
  transform: translateY(-50%);
}

:is(.single-post, .single-portfolio) .aws-case-summary {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  margin: -1.4rem 0 2.5rem;
  overflow: hidden;
  border-radius: 4px;
  background: var(--aws-line);
  box-shadow: 0 14px 36px rgba(31, 32, 38, 0.08);
  position: relative;
  z-index: 2;
}

:is(.single-post, .single-portfolio) .aws-case-summary div {
  padding: 1rem;
  background: var(--aws-paper);
}

:is(.single-post, .single-portfolio) .aws-case-summary strong,
:is(.single-post, .single-portfolio) .aws-case-summary span {
  display: block;
}

:is(.single-post, .single-portfolio) .aws-case-summary strong {
  color: var(--aws-coral-dark);
  font-family: "Teko", Impact, "Arial Narrow", sans-serif;
  font-size: 1.15rem;
  font-weight: 400;
  line-height: 1.1 !important;
  text-transform: uppercase;
}

:is(.single-post, .single-portfolio) .aws-case-summary span {
  margin-top: 0.35rem;
  color: var(--aws-text);
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 0.92rem;
  line-height: 1.45 !important;
}

:is(.single-post, .single-portfolio) .aws-holistic-web .aws-case-summary {
  background: var(--aws-teal-dark);
  box-shadow: 0 16px 38px rgba(47, 111, 106, 0.16);
}

:is(.single-post, .single-portfolio) .aws-holistic-web .aws-case-summary div {
  background: var(--aws-teal-soft);
}

:is(.single-post, .single-portfolio) .aws-holistic-web .aws-case-summary strong {
  color: var(--aws-teal-dark);
}

:is(.single-post, .single-portfolio) .aws-image {
  margin-top: 2rem;
  margin-bottom: 2.5rem;
}

:is(.single-post, .single-portfolio) .aws-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 3px;
  box-shadow: 0 18px 44px rgba(31, 32, 38, 0.16);
}

:is(.single-post, .single-portfolio) .aws-hero-image {
  margin: 0;
  justify-self: center;
  align-self: end;
  width: min(100%, 430px);
  transform: translateY(1.6rem);
}

:is(.single-post, .single-portfolio) .aws-hero-media {
  position: relative;
}

:is(.single-post, .single-portfolio) .aws-hero-media img {
  aspect-ratio: 3 / 4;
  border: 8px solid rgba(255, 255, 255, 0.08);
  object-position: center center;
  min-height: 520px;
}

:is(.single-post, .single-portfolio) .aws-image-badge {
  position: absolute;
  left: 1.1rem;
  bottom: 1.1rem;
  display: inline-flex;
  align-items: center;
  max-width: calc(100% - 2.2rem);
  padding: 0.62rem 0.78rem;
  border-radius: 3px;
  background: var(--aws-coral);
  color: #ffffff;
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  box-shadow: 0 12px 26px rgba(31, 32, 38, 0.22);
}

:is(.single-post, .single-portfolio) .aws-image figcaption {
  margin-top: 0.7rem;
  color: var(--aws-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

:is(.single-post, .single-portfolio) .aws-hero-image figcaption {
  color: rgba(255, 255, 255, 0.72);
  max-width: 390px;
}

:is(.single-post, .single-portfolio) .aws-wide-image {
  padding: 1rem;
  background: var(--aws-soft);
}

:is(.single-post, .single-portfolio) .aws-side-image {
  display: grid;
  grid-template-columns: minmax(260px, 0.82fr) minmax(220px, 0.38fr);
  gap: 1.2rem;
  align-items: end;
  padding: 1rem;
  background: var(--aws-soft);
}

:is(.single-post, .single-portfolio) .aws-side-image figcaption {
  margin: 0;
  padding: 1rem;
  background: var(--aws-coral);
  color: #ffffff;
  font-weight: 700;
}

:is(.single-post, .single-portfolio) .aws-side-image img {
  aspect-ratio: 16 / 10;
}

:is(.single-post, .single-portfolio) .aws-article table {
  width: 100%;
  margin-top: 1.35rem;
  margin-bottom: 2rem;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid var(--aws-line);
  border-radius: 4px;
  background: var(--aws-paper);
  box-shadow: 0 14px 36px rgba(31, 32, 38, 0.08);
}

:is(.single-post, .single-portfolio) .aws-article th,
:is(.single-post, .single-portfolio) .aws-article td {
  padding: 0.95rem 1rem;
  border-right: 1px solid var(--aws-line);
  border-bottom: 1px solid var(--aws-line);
  text-align: left;
  vertical-align: top;
}

:is(.single-post, .single-portfolio) .aws-article th:last-child,
:is(.single-post, .single-portfolio) .aws-article td:last-child {
  border-right: 0;
}

:is(.single-post, .single-portfolio) .aws-article tbody tr:last-child td {
  border-bottom: 0;
}

:is(.single-post, .single-portfolio) .aws-article th {
  background: var(--aws-charcoal);
  color: #ffffff;
  font-family: "Teko", Impact, "Arial Narrow", sans-serif;
  font-size: 1.06rem !important;
  font-weight: 400;
  line-height: 1.2 !important;
  text-transform: uppercase;
}

:is(.single-post, .single-portfolio) .aws-article td {
  color: var(--aws-text);
  font-size: 0.96rem;
  line-height: 1.5 !important;
}

:is(.single-post, .single-portfolio) .aws-article tbody tr:nth-child(even) td {
  background: #fafafa;
}

:is(.single-post, .single-portfolio) .aws-article tbody tr td:nth-child(2) {
  color: var(--aws-coral-dark);
  font-weight: 600;
}

:is(.single-post, .single-portfolio) .aws-case-diagram,
:is(.single-post, .single-portfolio) .aws-chart-panel {
  margin-top: 2rem;
  margin-bottom: 2.5rem;
  padding: 1.25rem;
  border: 1px solid var(--aws-line);
  border-radius: 6px;
  background: var(--aws-soft);
}

:is(.single-post, .single-portfolio) .aws-case-diagram h3,
:is(.single-post, .single-portfolio) .aws-chart-panel h3 {
  margin-top: 0;
  margin-bottom: 1rem;
  color: var(--aws-charcoal);
  font-family: "Teko", Impact, "Arial Narrow", sans-serif;
  font-size: clamp(1.35rem, 2.3vw, 1.9rem) !important;
  font-weight: 400;
  line-height: 1.05 !important;
  text-transform: uppercase;
}

:is(.single-post, .single-portfolio) .aws-journey-flow {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.85rem;
}

:is(.single-post, .single-portfolio) .aws-journey-flow div {
  min-height: 150px;
  padding: 1rem;
  border: 1px solid var(--aws-line);
  border-radius: 6px;
  background: #ffffff;
  position: relative;
}

:is(.single-post, .single-portfolio) .aws-journey-flow span,
:is(.single-post, .single-portfolio) .aws-chart-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.2rem;
  min-height: 2.2rem;
  margin-bottom: 0.7rem;
  border-radius: 50%;
  background: var(--aws-coral);
  color: #ffffff;
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 0.85rem;
  font-weight: 700;
}

:is(.single-post, .single-portfolio) .aws-journey-flow strong,
:is(.single-post, .single-portfolio) .aws-chart-stat strong,
:is(.single-post, .single-portfolio) .aws-chart-legend strong {
  display: block;
  color: var(--aws-charcoal);
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-weight: 700;
  line-height: 1.35 !important;
}

:is(.single-post, .single-portfolio) .aws-journey-flow p,
:is(.single-post, .single-portfolio) .aws-chart-stat p,
:is(.single-post, .single-portfolio) .aws-chart-legend p,
:is(.single-post, .single-portfolio) .aws-chart-note {
  color: var(--aws-muted);
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 0.94rem;
  line-height: 1.55 !important;
  margin-bottom: 0 !important;
}

:is(.single-post, .single-portfolio) .aws-chart-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
}

:is(.single-post, .single-portfolio) .aws-chart-stat {
  padding: 1rem;
  border: 1px solid var(--aws-line);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(31, 32, 38, 0.07);
}

:is(.single-post, .single-portfolio) .aws-chart-number {
  min-width: 3.3rem;
  padding: 0 0.55rem;
  border-radius: 999px;
}

:is(.single-post, .single-portfolio) .aws-pie-layout {
  display: grid;
  grid-template-columns: minmax(190px, 0.45fr) minmax(0, 1fr);
  gap: 1.2rem;
  align-items: center;
}

:is(.single-post, .single-portfolio) .aws-pie-chart {
  display: grid;
  place-items: center;
  width: min(100%, 260px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: conic-gradient(
    #e66f66 0 30%,
    #d7a642 30% 55%,
    #5f8f83 55% 75%,
    #65728a 75% 90%,
    #292a31 90% 100%
  );
  box-shadow: 0 18px 44px rgba(31, 32, 38, 0.16);
}

:is(.single-post, .single-portfolio) .aws-pie-chart::after {
  content: "Journey mix";
  display: grid;
  place-items: center;
  width: 48%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #ffffff;
  color: var(--aws-charcoal);
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.15;
  text-align: center;
}

:is(.single-post, .single-portfolio) .aws-care-pie::after {
  content: "Care focus";
}

:is(.single-post, .single-portfolio) .aws-complexity-pie::after {
  content: "Site risk";
}

:is(.single-post, .single-portfolio) .aws-plan-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

:is(.single-post, .single-portfolio) .aws-plan-card {
  padding: 1.1rem;
  border: 1px solid var(--aws-line);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(31, 32, 38, 0.07);
}

:is(.single-post, .single-portfolio) .aws-plan-card strong {
  display: block;
  color: var(--aws-charcoal);
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.35 !important;
}

:is(.single-post, .single-portfolio) .aws-plan-card p {
  color: var(--aws-muted);
  font-size: 0.94rem;
  margin-bottom: 0 !important;
}

:is(.single-post, .single-portfolio) .aws-chart-legend {
  display: grid;
  gap: 0.65rem;
}

:is(.single-post, .single-portfolio) .aws-chart-legend div {
  display: grid;
  grid-template-columns: 1rem minmax(0, 1fr);
  gap: 0.65rem;
  align-items: start;
}

:is(.single-post, .single-portfolio) .aws-chart-key {
  width: 0.78rem;
  height: 0.78rem;
  margin-top: 0.28rem;
  border-radius: 50%;
  background: var(--aws-coral);
}

:is(.single-post, .single-portfolio) .aws-chart-key.is-events {
  background: #d7a642;
}

:is(.single-post, .single-portfolio) .aws-chart-key.is-support {
  background: #5f8f83;
}

:is(.single-post, .single-portfolio) .aws-chart-key.is-influence {
  background: #65728a;
}

:is(.single-post, .single-portfolio) .aws-chart-key.is-news {
  background: #292a31;
}

:is(.single-post, .single-portfolio) .aws-chart-note {
  margin-top: 1rem !important;
}

/* WordPress care plan article diagrams and comparison table */
:is(.single-post, .single-portfolio) .aws-care-plan .aws-case-diagram,
:is(.single-post, .single-portfolio) .aws-care-plan .aws-chart-panel {
  overflow: hidden;
}

:is(.single-post, .single-portfolio) .aws-care-plan .aws-journey-flow {
  grid-template-columns: repeat(auto-fit, minmax(165px, 1fr));
}

:is(.single-post, .single-portfolio) .aws-care-plan .aws-journey-flow div {
  min-height: 0;
}

:is(.single-post, .single-portfolio) .aws-care-plan .aws-pie-layout {
  grid-template-columns: minmax(210px, 280px) minmax(0, 1fr);
  align-items: start;
}

:is(.single-post, .single-portfolio) .aws-care-plan .aws-pie-chart {
  justify-self: center;
}

:is(.single-post, .single-portfolio) .aws-care-plan .aws-chart-legend div {
  display: grid;
  grid-template-columns: 0.78rem minmax(0, 1fr);
  gap: 0.7rem;
  align-items: flex-start;
  padding: 0.72rem 0.8rem;
  border: 1px solid var(--aws-line);
  border-radius: 6px;
  background: #ffffff;
  text-align: left;
}

:is(.single-post, .single-portfolio) .aws-care-plan .aws-chart-legend p {
  grid-column: 2;
  min-width: 0;
  text-align: left;
}

:is(.single-post, .single-portfolio) .aws-care-plan .aws-chart-key {
  grid-column: 1;
}

:is(.single-post, .single-portfolio) .aws-care-plan .aws-plan-split {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

:is(.single-post, .single-portfolio) .aws-care-plan table {
  table-layout: fixed;
}

:is(.single-post, .single-portfolio) .aws-care-plan th,
:is(.single-post, .single-portfolio) .aws-care-plan td {
  width: 33.333%;
}

:is(.single-post, .single-portfolio) .aws-article > p:nth-of-type(1),
:is(.single-post, .single-portfolio) .aws-article > p:nth-of-type(6),
:is(.single-post, .single-portfolio) .aws-article > p:nth-of-type(21) {
  padding: 1.1rem 1.2rem;
  border-left: 5px solid var(--aws-coral);
  background: var(--aws-coral-soft);
}

:is(.single-post, .single-portfolio) .aws-article > h2:nth-of-type(3),
:is(.single-post, .single-portfolio) .aws-article > h2:nth-of-type(6),
:is(.single-post, .single-portfolio) .aws-article > h2:nth-of-type(8) {
  margin-left: 0;
  margin-right: 0;
  padding: 1.35rem 1.25rem;
  border-left: 5px solid var(--aws-coral);
  border-radius: 4px;
  background: var(--aws-soft);
}

:is(.single-post, .single-portfolio) .aws-cta-panel {
  margin-top: 3.4rem;
  margin-bottom: 0;
  padding: clamp(2rem, 4vw, 3rem);
  background: linear-gradient(135deg, var(--aws-charcoal), var(--aws-charcoal-2));
  color: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-cta-panel h2,
:is(.single-post, .single-portfolio) .aws-cta-panel p {
  color: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-cta-panel h2 {
  margin-top: 0;
}

:is(.single-post, .single-portfolio) .aws-cta-panel p {
  line-height: 1.72 !important;
  margin-bottom: 1rem !important;
  max-width: 720px;
}

:is(.single-post, .single-portfolio) .aws-cta-panel p .aws-primary-button,
:is(.single-post, .single-portfolio) .aws-cta-panel p a[href*="website-maintenance"],
:is(.single-post, .single-portfolio) .aws-case-study .aws-cta-panel p a {
  display: flex;
  width: fit-content;
  margin-top: 1rem;
}

:is(.single-post, .single-portfolio) .aws-cta-panel p:last-child {
  color: rgba(255, 255, 255, 0.78);
  margin-bottom: 0 !important;
}

@media (max-width: 980px) {
  :is(.single-post, .single-portfolio) .aws-care-plan .aws-pie-layout {
    grid-template-columns: 1fr;
  }

  :is(.single-post, .single-portfolio) .aws-care-plan .aws-pie-chart {
    width: min(100%, 240px);
  }
}

@media (max-width: 820px) {
  :is(.single-post, .single-portfolio) .aws-hero,
  :is(.single-post, .single-portfolio) .aws-side-image {
    grid-template-columns: 1fr;
  }

  :is(.single-post, .single-portfolio) .aws-hero {
    padding: 2rem 1.1rem;
  }

  :is(.single-post, .single-portfolio) .aws-hero-copy,
  :is(.single-post, .single-portfolio) .aws-hero p,
  :is(.single-post, .single-portfolio) .aws-article h1 {
    max-width: none;
  }

  :is(.single-post, .single-portfolio) .aws-hero-image {
    width: min(100%, 420px);
    align-self: center;
    transform: none;
  }

  :is(.single-post, .single-portfolio) .aws-hero-media img {
    min-height: 0;
  }

  :is(.single-post, .single-portfolio) .aws-article > h2,
  :is(.single-post, .single-portfolio) .aws-article > h3,
  :is(.single-post, .single-portfolio) .aws-article > p,
  :is(.single-post, .single-portfolio) .aws-article > ul,
  :is(.single-post, .single-portfolio) .aws-article > table,
  :is(.single-post, .single-portfolio) .aws-article > .aws-image,
  :is(.single-post, .single-portfolio) .aws-article > .aws-case-diagram,
  :is(.single-post, .single-portfolio) .aws-article > .aws-chart-panel,
  :is(.single-post, .single-portfolio) .aws-article > .aws-cta-panel,
  :is(.single-post, .single-portfolio) .aws-case-summary {
    margin-left: 0;
    margin-right: 0;
  }

  :is(.single-post, .single-portfolio) .aws-journey-flow,
  :is(.single-post, .single-portfolio) .aws-chart-grid,
  :is(.single-post, .single-portfolio) .aws-pie-layout,
  :is(.single-post, .single-portfolio) .aws-plan-split {
    grid-template-columns: 1fr;
  }

  :is(.single-post, .single-portfolio) .aws-journey-flow div {
    min-height: 0;
  }

  :is(.single-post, .single-portfolio) .aws-care-plan .aws-pie-layout {
    grid-template-columns: 1fr;
  }

  :is(.single-post, .single-portfolio) .aws-care-plan .aws-pie-chart {
    width: min(100%, 220px);
  }

  :is(.single-post, .single-portfolio) .aws-case-summary {
    grid-template-columns: 1fr 1fr;
  }

  :is(.single-post, .single-portfolio) .aws-article table {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  :is(.single-post, .single-portfolio) .aws-article th,
  :is(.single-post, .single-portfolio) .aws-article td {
    min-width: 160px;
  }
}

@media (max-width: 520px) {
  :is(.single-post, .single-portfolio) .aws-article {
    font-size: 1rem;
  }

  :is(.single-post, .single-portfolio) .aws-article h1 {
    font-size: 2.45rem !important;
  }

  :is(.single-post, .single-portfolio) .aws-image img {
    aspect-ratio: 4 / 3;
  }

  :is(.single-post, .single-portfolio) .aws-case-summary {
    grid-template-columns: 1fr;
  }
}

/* Legacy plugin update article components */
:is(.single-post, .single-portfolio) .aws-plugin-updates {
  --aws-charcoal: #1f2026;
  --aws-charcoal-2: #292a31;
  --aws-text: #30323a;
  --aws-muted: #6f737d;
  --aws-paper: #ffffff;
  --aws-soft: #f5f6f8;
  --aws-soft-2: #eef0f4;
  --aws-line: #e1e3e8;
  --aws-coral: #e66f66;
  --aws-coral-dark: #ce5a52;
  --aws-coral-soft: #fff0ee;
  --aws-teal: #3f8f8a;
  --aws-teal-dark: #2f6f6a;
  --aws-teal-soft: #e9f5f3;
  --aws-amber: #d7a642;
  --aws-amber-soft: #fff5de;
  --aws-green: #4d9b78;
  --aws-amber: #c98a2e;
  color: var(--aws-text);
  background: var(--aws-paper);
  font-family: "Barlow Condensed", "Arial Narrow", Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 1.05rem;
  line-height: 1.72;
  margin: 0 auto;
  max-width: 1120px;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates * {
  box-sizing: border-box;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates p,
:is(.single-post, .single-portfolio) .aws-plugin-updates li,
:is(.single-post, .single-portfolio) .aws-plugin-updates figcaption,
:is(.single-post, .single-portfolio) .aws-plugin-updates small,
:is(.single-post, .single-portfolio) .aws-plugin-updates strong {
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates h1,
:is(.single-post, .single-portfolio) .aws-plugin-updates h2,
:is(.single-post, .single-portfolio) .aws-plugin-updates h3 {
  color: var(--aws-charcoal);
  font-family: "Teko", Impact, "Arial Narrow", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.05 !important;
  text-transform: uppercase;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.98fr) minmax(320px, 0.7fr);
  gap: clamp(2rem, 5vw, 4.5rem);
  align-items: center;
  margin: 0 0 3rem;
  padding: clamp(2rem, 5vw, 4rem);
  background:
    linear-gradient(135deg, rgba(31, 32, 38, 0.97), rgba(31, 32, 38, 0.9)),
    radial-gradient(circle at 94% 8%, rgba(230, 111, 102, 0.52) 0 12rem, transparent 12.2rem);
  color: #ffffff;
  overflow: hidden;
  position: relative;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero::after {
  content: "";
  position: absolute;
  right: -5rem;
  top: -7rem;
  width: 16rem;
  height: 24rem;
  background: var(--aws-coral);
  opacity: 0.88;
  transform: rotate(28deg);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero-copy,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero-image {
  position: relative;
  z-index: 1;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero-copy {
  max-width: 680px;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-kicker {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 0.34rem 0.72rem 0.28rem;
  border-radius: 999px;
  background: #d7a642;
  color: #ffffff;
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 1.05rem;
  font-weight: 400;
  margin: 0 0 0.7rem;
  text-transform: uppercase;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates h1 {
  color: #ffffff;
  font-size: clamp(2.8rem, 5.6vw, 4.25rem) !important;
  margin: 0 0 1.2rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero p {
  color: rgba(255, 255, 255, 0.84);
  font-size: 1.03rem;
  line-height: 1.72 !important;
  margin: 0 0 1rem !important;
  max-width: 640px;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero .aws-kicker {
  color: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero-action {
  margin-top: 2.2rem !important;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero-action a {
  display: flex;
  width: fit-content;
  margin-top: 1rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates a {
  color: var(--aws-coral-dark);
  font-weight: 600;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero a,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-cta-panel a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0.72rem 1rem;
  border-radius: 3px;
  background: var(--aws-coral);
  color: #ffffff;
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-size: 0.9rem;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero a:hover,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero a:focus,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-cta-panel a:hover,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-cta-panel a:focus {
  background: var(--aws-coral-dark);
  color: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates > h2,
:is(.single-post, .single-portfolio) .aws-plugin-updates > h3,
:is(.single-post, .single-portfolio) .aws-plugin-updates > p,
:is(.single-post, .single-portfolio) .aws-plugin-updates > ul,
:is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-overview,
:is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-diagram,
:is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-risk-map,
:is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-journey-diagram,
:is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-check-panel,
:is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-roadmap,
:is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-cta-panel {
  margin-left: 0;
  margin-right: 0;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates h2 {
  display: flex;
  align-items: center;
  gap: 0.72rem;
  margin-top: 3rem;
  margin-bottom: 1rem;
  font-size: clamp(1.85rem, 3vw, 2.85rem) !important;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates h3 {
  margin-top: 1.8rem;
  margin-bottom: 0.7rem;
  font-size: clamp(1.25rem, 2vw, 1.65rem) !important;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates p {
  margin-top: 0 !important;
  margin-bottom: 1rem !important;
  line-height: 1.72 !important;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates ul,
:is(.single-post, .single-portfolio) .aws-plugin-updates ol {
  display: grid;
  gap: 0.42rem;
  margin-top: 0.7rem;
  margin-bottom: 1.2rem;
  padding: 0;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates ul {
  list-style: none;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates li {
  padding: 0.57rem 0 0.57rem 2.55rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1.58 !important;
  position: relative;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates ul li::before {
  content: "";
  position: absolute;
  left: 0.95rem;
  top: 50%;
  width: 0.58rem;
  height: 0.58rem;
  border-radius: 50%;
  background: var(--aws-coral);
  box-shadow: 0 0 0 0.32rem var(--aws-coral-soft);
  transform: translateY(-50%);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-heading-icon,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-mini-icon,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow-icon,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-icon,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-plugin-icon {
  display: inline-grid;
  place-items: center;
  color: var(--aws-coral);
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  line-height: 1;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-heading-icon {
  flex: 0 0 auto;
  width: 0.85em;
  min-width: 0.85em;
  height: 0.85em;
  font-size: 0.62em;
  transform: translateY(-0.12em);
}

:is(.single-post, .single-portfolio) .aws-icon-refresh::before { content: "\21bb"; }
:is(.single-post, .single-portfolio) .aws-icon-shield::before { content: "\2713"; }
:is(.single-post, .single-portfolio) .aws-icon-link::before { content: "\29c9"; }
:is(.single-post, .single-portfolio) .aws-icon-form::before { content: "\270e"; }
:is(.single-post, .single-portfolio) .aws-icon-test::before { content: "\25ce"; }
:is(.single-post, .single-portfolio) .aws-icon-calendar::before { content: "\25a3"; }
:is(.single-post, .single-portfolio) .aws-icon-quote::before { content: "\2192"; }
:is(.single-post, .single-portfolio) .aws-icon-user::before { content: "\25cf"; }
:is(.single-post, .single-portfolio) .aws-icon-search::before { content: "?"; }
:is(.single-post, .single-portfolio) .aws-icon-route::before { content: "\2192"; }
:is(.single-post, .single-portfolio) .aws-icon-backup::before { content: "\21e9"; }
:is(.single-post, .single-portfolio) .aws-icon-update::before { content: "\21bb"; }
:is(.single-post, .single-portfolio) .aws-icon-watch::before { content: "\25cc"; }
:is(.single-post, .single-portfolio) .aws-icon-page::before { content: "\25a4"; }
:is(.single-post, .single-portfolio) .aws-icon-action::before { content: "\271a"; }
:is(.single-post, .single-portfolio) .aws-icon-break::before { content: "!"; }
:is(.single-post, .single-portfolio) .aws-icon-report::before { content: "\2713"; }
:is(.single-post, .single-portfolio) .aws-icon-check::before { content: "\2713"; }
:is(.single-post, .single-portfolio) .aws-icon-alert::before { content: "!"; }
:is(.single-post, .single-portfolio) .aws-icon-lock::before { content: "\25a0"; }

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero-image {
  margin: 0;
  justify-self: center;
  width: min(100%, 430px);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero-image figcaption {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.9rem;
  line-height: 1.45;
  margin-top: 0.85rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero-card {
  padding: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.28);
  backdrop-filter: blur(10px);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-browser-bar {
  display: flex;
  gap: 0.35rem;
  margin-bottom: 1rem;
  padding-bottom: 0.85rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-browser-bar span {
  width: 0.68rem;
  height: 0.68rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.45);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-browser-bar span:nth-child(1) {
  background: #e66f66;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-browser-bar span:nth-child(2) {
  background: #d7a642;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-browser-bar span:nth-child(3) {
  background: #4d9b78;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-plugin-stack {
  display: grid;
  gap: 0.8rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-plugin-row {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 0.8rem;
  align-items: center;
  padding: 0.95rem;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 6px;
  background: rgba(31, 32, 38, 0.72);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-plugin-row strong,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-plugin-row small {
  display: block;
  grid-column: 2;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-plugin-row small {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.86rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-plugin-row strong {
  color: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-plugin-icon {
  grid-row: 1 / 3;
  width: 2.45rem;
  height: 2.45rem;
  border: 2px solid rgba(255, 255, 255, 0.18);
  border-radius: 50%;
  background: #ffffff;
  font-size: 1.32rem;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.18);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .is-ok .aws-plugin-icon {
  color: #ffffff;
  background: var(--aws-green);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .is-warning .aws-plugin-icon {
  color: #ffffff;
  background: var(--aws-amber);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .is-risk .aws-plugin-icon {
  color: #ffffff;
  background: var(--aws-coral-dark);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-mini-icon::before,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow-icon::before,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-icon::before,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-plugin-icon::before {
  color: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-card-note {
  margin: 1rem 0 0 !important;
  padding: 0.8rem;
  border-left: 4px solid #d7a642;
  border-radius: 4px;
  background: rgba(215, 166, 66, 0.16);
  color: #ffffff !important;
  font-weight: 700;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-overview {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-bottom: 2.7rem;
  border: 1px solid var(--aws-line);
  background: var(--aws-line);
  box-shadow: 0 14px 36px rgba(31, 32, 38, 0.08);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-overview div {
  padding: 1.1rem;
  background: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-overview strong {
  display: block;
  color: var(--aws-charcoal);
  margin: 0.45rem 0 0.25rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-overview p {
  color: var(--aws-muted);
  font-size: 0.95rem;
  margin-bottom: 0 !important;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-mini-icon {
  width: 2rem;
  height: 2rem;
  border: 2px solid var(--aws-coral-dark);
  border-radius: 50%;
  background: var(--aws-coral);
  color: #000000;
  font-size: 1.18rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-diagram,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-map,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-check-panel,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-roadmap {
  margin-top: 2rem;
  margin-bottom: 2.5rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-diagram h3,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-map h3,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-check-panel h3 {
  margin-top: 0;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.9rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow div {
  padding: 1rem;
  border: 1px solid var(--aws-line);
  border-radius: 6px;
  background: var(--aws-soft);
  position: relative;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow div:not(:last-child)::after {
  content: "";
  position: absolute;
  right: -0.78rem;
  top: 50%;
  width: 0.72rem;
  height: 0.72rem;
  border-top: 2px solid var(--aws-coral);
  border-right: 2px solid var(--aws-coral);
  transform: translateY(-50%) rotate(45deg);
  z-index: 2;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow-icon,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-icon {
  width: 2.2rem;
  height: 2.2rem;
  margin-bottom: 0.7rem;
  border: 2px solid var(--aws-coral-dark);
  border-radius: 50%;
  background: var(--aws-coral);
  color: #000000;
  font-size: 1.36rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow strong,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-step strong,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-item strong,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-roadmap strong {
  display: block;
  color: var(--aws-charcoal);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow p,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-step p,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-item p,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-roadmap p {
  color: var(--aws-muted);
  font-size: 0.94rem;
  margin-bottom: 0 !important;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.9rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-item {
  padding: 1rem;
  border: 1px solid var(--aws-line);
  border-top: 5px solid var(--aws-green);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(31, 32, 38, 0.07);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-item.is-medium {
  border-top-color: var(--aws-amber);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-item.is-high {
  border-top-color: var(--aws-coral);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-dot {
  display: block;
  width: 2.6rem;
  height: 0.45rem;
  margin-bottom: 0.85rem;
  border-radius: 999px;
  background: currentColor;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .is-low .aws-risk-dot {
  color: var(--aws-green);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .is-medium .aws-risk-dot {
  color: var(--aws-amber);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .is-high .aws-risk-dot {
  color: var(--aws-coral);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-diagram {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1.8rem minmax(0, 1fr) 1.8rem minmax(0, 1fr) 1.8rem minmax(0, 1fr);
  align-items: stretch;
  gap: 0.35rem;
  margin-top: 1.5rem;
  margin-bottom: 1.8rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-step {
  padding: 1rem;
  border: 1px solid var(--aws-line);
  border-radius: 6px;
  background: var(--aws-soft);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-step.is-risk {
  border-color: #f0c8c3;
  background: var(--aws-coral-soft);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-arrow {
  align-self: center;
  height: 2px;
  background: var(--aws-coral);
  position: relative;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-arrow::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 0.55rem;
  height: 0.55rem;
  border-top: 2px solid var(--aws-coral);
  border-right: 2px solid var(--aws-coral);
  transform: translateY(-50%) rotate(45deg);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-check-panel {
  padding: clamp(1.25rem, 3vw, 2rem);
  border-left: 5px solid var(--aws-coral);
  border-radius: 4px;
  background: var(--aws-soft);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-check-panel ol {
  counter-reset: safe-update;
  list-style: none;
  margin-bottom: 0;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-check-panel li {
  counter-increment: safe-update;
  background: transparent;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-check-panel li::before {
  content: counter(safe-update);
  position: absolute;
  left: 0.85rem;
  top: 50%;
  display: grid;
  place-items: center;
  width: 1.1rem;
  height: 1.1rem;
  border-radius: 50%;
  background: var(--aws-coral);
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 800;
  transform: translateY(-50%);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-roadmap {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-roadmap div {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 0.85rem;
  padding: 1rem;
  border: 1px solid var(--aws-line);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(31, 32, 38, 0.06);
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-roadmap span {
  grid-row: 1 / 3;
  display: grid;
  place-items: center;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 50%;
  background: var(--aws-coral);
  color: #ffffff;
  font-family: Aptos, "Segoe UI", Arial, sans-serif;
  font-weight: 800;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-cta-panel {
  margin-top: 3.4rem;
  margin-bottom: 0;
  padding: clamp(2rem, 4vw, 3rem);
  background: linear-gradient(135deg, var(--aws-charcoal), var(--aws-charcoal-2));
  color: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-cta-panel h2,
:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-cta-panel p {
  color: #ffffff;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-cta-panel h2 {
  margin-top: 0;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-cta-panel p {
  max-width: 740px;
}

:is(.single-post, .single-portfolio) .aws-plugin-updates .aws-cta-panel p:last-child {
  color: rgba(255, 255, 255, 0.78);
  margin-bottom: 0 !important;
}

@media (max-width: 900px) {
  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero,
  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-overview,
  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow,
  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-risk-grid {
    grid-template-columns: 1fr;
  }

  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-flow div:not(:last-child)::after {
    right: auto;
    left: 1.8rem;
    top: auto;
    bottom: -0.74rem;
    transform: rotate(135deg);
  }

  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-diagram {
    grid-template-columns: 1fr;
    gap: 0.7rem;
  }

  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-arrow {
    width: 2px;
    height: 1.4rem;
    justify-self: center;
  }

  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-journey-arrow::after {
    right: 50%;
    top: auto;
    bottom: 0;
    transform: translateX(50%) rotate(135deg);
  }
}

@media (max-width: 820px) {
  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero {
    padding: 2rem 1.1rem;
  }

  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero-copy,
  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-hero p,
  :is(.single-post, .single-portfolio) .aws-plugin-updates h1 {
    max-width: none;
  }

  :is(.single-post, .single-portfolio) .aws-plugin-updates > h2,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > h3,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > p,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > ul,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-overview,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-diagram,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-risk-map,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-journey-diagram,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-check-panel,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-roadmap,
  :is(.single-post, .single-portfolio) .aws-plugin-updates > .aws-cta-panel {
    margin-left: 0;
    margin-right: 0;
  }

  :is(.single-post, .single-portfolio) .aws-plugin-updates .aws-roadmap {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  :is(.single-post, .single-portfolio) .aws-plugin-updates {
    font-size: 1rem;
  }

  :is(.single-post, .single-portfolio) .aws-plugin-updates h1 {
    font-size: 2.45rem !important;
  }
}
