/* ANGIA visual refresh — white / ice blue / service blue.
   An additive presentation layer: forms, navigation and consent keep their
   existing markup contracts and behavior. Native product-image ratios remain. */

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/assets/fonts/plus-jakarta-sans-vietnamese-variable.woff2") format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/assets/fonts/plus-jakarta-sans-latin-variable.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

.az-refresh {
  --az-ink: #17324f;
  --az-muted: #536781;
  --az-service-blue: #1264f4;
  --az-service-blue-hover: #0d51ca;
  --az-ice: #f1f7ff;
  --az-hairline: rgba(18, 100, 244, .13);
  --az-ambient: 0 10px 38px -20px rgba(32, 81, 138, .2), 0 2px 8px rgba(32, 81, 138, .035);
  --az-motion: cubic-bezier(.32, .72, 0, 1);
  --az-focus-ring: #1264f4;
  --az-focus-edge: #fff;
  --az-text-muted-dark-bg: #536781;
  --az-text-muted-light-bg: #536781;
  --az-accent-light-bg: #0d59d9;
  --az-accent-light-bg-hover: #0842a8;
  margin: 0;
  background: #fff;
  color: var(--az-ink);
  font-family: "Plus Jakarta Sans", sans-serif;
  -webkit-font-smoothing: antialiased;
}

.az-refresh .az-home {
  --az-navy: #17324f;
  --az-blue: #17324f;
  --az-gold: #1264f4;
  --az-cream: #fff;
  --az-paper: #fff;
  --az-line: rgba(18, 100, 244, .13);
}

.az-refresh :is(h1, h2, h3, h4, input, select, textarea, button),
.az-refresh [style*="font-family:Lora"],
.az-refresh [style*="font-family: Lora"] { font-family: "Plus Jakarta Sans", sans-serif !important; }
.az-refresh :is(h1, h2, h3) { color: var(--az-ink); font-weight: 700; }
.az-refresh :is(a, button, input, select, textarea) { -webkit-tap-highlight-color: rgba(18, 100, 244, .12); }
.az-refresh :is(a, button) { touch-action: manipulation; }
.az-refresh :is(a, p, strong) { overflow-wrap: break-word; }
.az-refresh .az-page { background: #fff; }
.az-refresh .az-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* The floating island remains detached from the viewport edges. */
.az-refresh :is(.az-header, .trust-header, body > header),
.az-refresh.az-secondary-page > header {
  position: sticky !important;
  top: 16px !important;
  z-index: 50 !important;
  width: min(calc(100% - 48px), 1280px);
  margin: 20px auto 0;
  border: 1px solid var(--az-hairline) !important;
  border-radius: 28px;
  background: rgba(255, 255, 255, .97) !important;
  color: var(--az-ink);
  box-shadow: var(--az-ambient);
  backdrop-filter: blur(12px);
}
.az-refresh :is(.az-header-inner, .trust-header-inner),
.az-refresh.az-secondary-page > header > div {
  width: 100%;
  max-width: none !important;
  min-height: 84px;
  padding: 12px 24px !important;
  gap: 20px !important;
}
.az-refresh :is(header, footer) img[alt="ANGIA Residence"] {
  width: auto;
  height: 58px !important;
  filter: none !important;
  object-fit: contain;
}
.az-refresh :is(.az-brand, .trust-brand) { flex-shrink: 0; color: var(--az-ink) !important; }
.az-refresh :is(.az-brand, .trust-brand) > span,
.az-refresh.az-secondary-page > header > div > a > span { display: none; }
.az-refresh .az-nav { gap: clamp(12px, 1.8vw, 24px) !important; }
.az-refresh .az-nav a { color: var(--az-ink) !important; font-size: 13px; font-weight: 600; }
.az-refresh .az-nav a:hover,
.az-refresh .az-nav a[aria-current="page"] { color: var(--az-service-blue) !important; }
.az-refresh nav a::after { background: var(--az-service-blue); }
.az-refresh .az-header-cta { flex-shrink: 0; white-space: nowrap; }
.az-refresh .az-menu-toggle {
  border: 1px solid var(--az-hairline);
  border-radius: 50%;
  background: var(--az-ice);
  color: var(--az-service-blue);
}
.az-refresh .az-menu-toggle svg { stroke-width: 1.5; }
.az-refresh .trust-header-link { color: var(--az-service-blue); }

/* Pill CTAs; arrow icons have their own small circular enclosure. */
.az-refresh :is(.az-button, .az-home-primary, .az-home-secondary, .trust-button, .h1, .h2, .h2b) {
  min-height: 50px;
  border-radius: 999px !important;
  transition: transform .45s var(--az-motion), background-color .45s var(--az-motion), color .45s var(--az-motion), border-color .45s var(--az-motion) !important;
}
.az-refresh :is(.az-button, .trust-button) { gap: 12px; padding: 12px 20px; }
.az-refresh :is(.az-button-gold, .az-home-primary, .trust-button:not(.trust-button-secondary), .h1) {
  border-color: var(--az-service-blue) !important;
  background: var(--az-service-blue) !important;
  color: #fff !important;
  box-shadow: none;
}
.az-refresh :is(.az-button-gold, .az-home-primary, .trust-button:not(.trust-button-secondary), .h1):hover {
  border-color: var(--az-service-blue-hover) !important;
  background: var(--az-service-blue-hover) !important;
  color: #fff !important;
  box-shadow: none;
}
.az-refresh :is(.az-button-outline, .az-home-secondary, .trust-button-secondary, .h2, .h2b) {
  border-color: rgba(18, 100, 244, .5) !important;
  background: transparent !important;
  color: var(--az-service-blue) !important;
}
.az-refresh :is(.az-button-outline, .az-home-secondary, .trust-button-secondary, .h2, .h2b):hover {
  border-color: var(--az-service-blue) !important;
  background: var(--az-ice) !important;
  color: var(--az-service-blue-hover) !important;
}
.az-refresh :is(.az-button, .trust-button, .h1, .h2, .h2b):active { transform: scale(.98); }
.az-refresh .az-button-icon {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: var(--az-service-blue);
  transition: transform .45s var(--az-motion);
}
.az-refresh .az-button-icon svg { width: 17px; height: 17px; }
.az-refresh .az-button-outline .az-button-icon { background: var(--az-ice); }
.az-refresh .az-button:hover .az-button-icon { transform: translateX(2px); }
.az-refresh .az-text-link { align-items: center; color: var(--az-service-blue); }
.az-refresh .az-text-link:hover { color: var(--az-service-blue-hover); }

/* Shared whitespace and typographic rhythm. */
.az-refresh .az-home-shell { width: min(100%, 1280px); padding-inline: 24px; }
.az-refresh .az-home-section { padding-block: clamp(80px, 7vw, 96px); }
.az-refresh :is(.az-kicker, .az-home-kicker, .trust-kicker) {
  width: fit-content;
  display: inline-block;
  padding: 6px 11px;
  border-radius: 999px;
  background: #eaf3ff;
  color: var(--az-service-blue) !important;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .13em;
}
.az-refresh :is(.az-section-heading h2, .az-home-heading, .az-pricing-row h2, .az-conversion-copy h2) {
  max-width: 23ch;
  color: var(--az-ink);
  font-size: clamp(34px, 3.8vw, 52px);
  font-weight: 700;
  line-height: 1.16;
  letter-spacing: -.035em;
}
.az-refresh :is(.az-section-heading > p:last-child, .az-home-lead, .az-conversion-copy > p) {
  color: var(--az-muted);
  line-height: 1.75;
}

/* The image is the hero. It is never cropped or stretched. */
.az-refresh .az-banner-hero { min-height: 0; display: block; padding-top: 24px; background: #fff; color: var(--az-ink); }
.az-refresh .az-banner-hero .az-home-shell { display: block; padding-block: 0; }
.az-refresh .az-banner-title {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.az-refresh .az-hero-visual.az-home-banner {
  position: relative;
  display: block;
  width: 100%;
  min-height: 0;
  margin: 0;
  padding: 7px;
  overflow: hidden;
  border: 1px solid var(--az-hairline);
  border-radius: 32px;
  background: #fff;
  box-shadow: inset 0 0 0 4px #f8fbff;
}
.az-refresh .az-home-banner picture { display: block; overflow: hidden; border-radius: 25px; background: var(--az-ice); }
.az-refresh .az-home-banner img { display: block; width: 100%; height: auto; aspect-ratio: 1672 / 941; object-fit: contain; }
.az-refresh .az-banner-support {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin-top: 18px;
  padding: 22px 26px;
  border: 1px solid var(--az-hairline);
  border-radius: 24px;
  background: #fff;
  box-shadow: var(--az-ambient);
}
.az-refresh .az-banner-summary { min-width: 0; }
.az-refresh .az-banner-summary > strong { display: block; color: var(--az-ink); font-size: 16px; line-height: 1.55; }
.az-refresh .az-banner-price { display: flex; gap: 5px; flex-wrap: wrap; margin: 8px 0 0; color: var(--az-muted); font-size: 13px; line-height: 1.6; }
.az-refresh .az-banner-price strong { color: var(--az-service-blue); font-weight: 700; }
.az-refresh .az-banner-support .az-actions { flex: 0 0 auto; gap: 10px; margin: 0; }
.az-refresh .az-banner-support .az-button { padding-inline: 16px; font-size: 13px; }
.az-refresh .az-banner-channels { display: none; }
.az-refresh .az-banner-note { max-width: 102ch; margin: 12px 0 0; color: var(--az-muted); font-size: 11px; line-height: 1.7; }
.az-refresh .az-identity-band { width: min(calc(100% - 48px), 1232px); margin: 22px auto 0; border: 1px solid var(--az-hairline); border-radius: 18px; background: var(--az-ice); }
.az-refresh .az-identity-band-inner { width: 100%; padding: 20px 24px; gap: 18px; grid-template-columns: minmax(180px, 1.2fr) minmax(90px, .55fr) minmax(185px, 1.15fr) auto; }
.az-refresh .az-identity-band-inner span { color: var(--az-muted); }
.az-refresh .az-identity-band-inner strong,
.az-refresh .az-identity-band-inner > div > a { color: var(--az-ink); font-size: 11px; }
.az-refresh .az-identity-more { color: var(--az-service-blue); }

/* Services: real full-width PMS data beside compact numbered responsibilities. */
.az-refresh .az-problem-section { background: #fff; }
.az-refresh .az-problem-layout { grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 48px; align-items: center; margin-top: 48px; }
.az-refresh :is(.az-product-frame, .az-roles-product) {
  padding: 7px;
  border: 1px solid var(--az-hairline);
  border-radius: 24px;
  background: #f5f9ff;
  box-shadow: var(--az-ambient);
}
.az-refresh :is(.az-product-frame, .az-roles-product) picture { display: block; overflow: hidden; border-radius: 17px; background: #fff; }
.az-refresh :is(.az-product-frame, .az-roles-product) img { display: block; width: 100%; height: auto; object-fit: contain; }
.az-refresh .az-product-frame figcaption { margin: 0; padding: 14px 12px 8px; color: var(--az-muted); }
.az-refresh .az-problem-grid { gap: 28px 24px; margin: 0; border: 0; background: transparent; }
.az-refresh .az-problem-grid article { min-height: 0; gap: 9px; padding: 0; border: 0; background: transparent; }
.az-refresh .az-problem-grid article > span { width: 38px; height: 38px; display: inline-grid; place-items: center; margin-bottom: 3px; border-radius: 12px; background: var(--az-ice); color: var(--az-service-blue); font-family: inherit; font-size: 14px; font-weight: 700; }
.az-refresh .az-problem-grid article h3 { color: var(--az-ink); font-size: 16px; }
.az-refresh .az-problem-grid article p { color: var(--az-muted); font-size: 13px; line-height: 1.7; }
.az-refresh .az-problem-cta { padding: 26px 30px; border: 1px solid var(--az-hairline); border-radius: 24px; background: var(--az-ice); color: var(--az-ink); }
.az-refresh .az-problem-cta p { color: var(--az-muted); }

/* Evidence uses light enclosures without inventing a new data visualization. */
.az-refresh .az-proof-section { background: #f8fbff; color: var(--az-ink); }
.az-refresh .az-proof-card { padding: 7px; overflow: hidden; border: 1px solid var(--az-hairline); border-radius: 24px; background: #fff; box-shadow: var(--az-ambient); }
.az-refresh .az-proof-card picture { display: block; overflow: hidden; border-radius: 17px; }
.az-refresh .az-proof-card img { background: #fff; }
.az-refresh .az-proof-card figcaption { padding: 18px 14px; color: var(--az-muted); }
.az-refresh .az-proof-card figcaption strong { color: var(--az-ink); }
.az-refresh :is(.az-proof-note, .az-proof-disclaimer) { color: var(--az-muted); }
.az-refresh .az-evidence-meta { gap: 16px; padding: 20px 24px; border: 1px solid var(--az-hairline); border-radius: 18px; background: #fff; }
.az-refresh .az-evidence-meta > div { padding: 0; background: transparent; }
.az-refresh .az-evidence-meta span { color: var(--az-muted); }
.az-refresh .az-evidence-meta strong { color: var(--az-ink); }
.az-refresh .az-proof-section .az-text-link { color: var(--az-service-blue); }
.az-refresh .az-proof-section .az-text-link:hover { color: var(--az-service-blue-hover); }
.az-refresh .az-quick-audit { padding: 32px; border: 1px solid var(--az-hairline); border-radius: 28px; background: #fff; box-shadow: var(--az-ambient); }
.az-refresh .az-quick-audit :is(h2, h3) { color: var(--az-ink); font-size: clamp(25px, 3vw, 34px); line-height: 1.25; }
.az-refresh .az-quick-audit > div > p:last-child { color: var(--az-muted); }

/* Responsibility split: complete source image and a quiet numbered ledger. */
.az-refresh .az-roles-section { background: var(--az-ice); }
.az-refresh .az-roles-section > .az-home-shell > .az-section-heading { max-width: 960px; margin-inline: auto; text-align: center; }
.az-refresh .az-roles-section .az-section-heading h2 { max-width: 26ch; margin-inline: auto; }
.az-refresh .az-roles-section .az-section-heading > p { margin-inline: auto; }
.az-refresh .az-roles-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 54px; }
.az-refresh .az-role-list { margin-top: 0; border-top: 0; counter-reset: az-role; }
.az-refresh .az-role-list article { position: relative; grid-template-columns: minmax(0, 1fr); gap: 9px; padding: 27px 0 27px 72px; border: 0; border-bottom: 1px solid rgba(18, 100, 244, .18); counter-increment: az-role; }
.az-refresh .az-role-list article:first-child { border-top: 0; }
.az-refresh .az-role-list article::before { content: "0" counter(az-role); position: absolute; top: 22px; left: 0; color: var(--az-service-blue); font-size: 40px; font-weight: 400; letter-spacing: -.06em; line-height: 1.25; }
.az-refresh .az-role-list article:has(.az-role-number)::before { content: none; }
.az-refresh .az-role-number { position: absolute; top: 22px; left: 0; color: var(--az-service-blue); font-size: 40px; font-weight: 400; letter-spacing: -.06em; line-height: 1.25; }
.az-refresh .az-role-list article h3 { color: var(--az-ink); font-size: 21px; line-height: 1.4; }
.az-refresh .az-role-list article p { color: var(--az-muted); line-height: 1.7; }
.az-refresh .az-role-list article > div > p { margin-top: 8px; }
.az-refresh .az-scope-rail span { border-color: var(--az-hairline); border-radius: 999px; background: #fff; color: var(--az-muted); }
.az-refresh .az-scope-note { color: var(--az-muted); }
.az-refresh .az-trust-principles { gap: 24px 32px; padding: 30px; border: 1px solid var(--az-hairline); border-radius: 24px; background: #fff; }
.az-refresh .az-trust-principles-heading h3 { max-width: 19ch; font-size: 28px; line-height: 1.25; }
.az-refresh .az-trust-principles-grid { gap: 20px; border: 0; background: transparent; }
.az-refresh .az-trust-principles-grid article { padding: 0; background: transparent; }
.az-refresh .az-trust-principles-grid span { color: var(--az-service-blue); font-family: inherit; font-weight: 700; }
.az-refresh .az-trust-principles-grid strong { color: var(--az-ink); }
.az-refresh .az-trust-principles-grid p { color: var(--az-muted); }

/* Team: existing portraits alongside clearly scoped responsibilities. */
.az-refresh .az-team-section { background: #fff; }
.az-refresh .az-team-layout { display: grid; grid-template-columns: minmax(0, .74fr) minmax(0, 1.26fr); gap: 0 52px; align-items: center; margin-top: 0; }
.az-refresh .az-team-intro h2 { margin: 0; font-size: clamp(32px, 3.2vw, 44px); line-height: 1.2; letter-spacing: -.035em; }
.az-refresh .az-team-intro > p { margin-top: 24px; color: var(--az-muted); font-size: 15px; line-height: 1.8; }
.az-refresh .az-team-intro a { color: var(--az-service-blue); }
.az-refresh .az-team-lead-profile { display: grid; grid-template-columns: 96px minmax(0, 1fr); align-items: center; gap: 18px; margin-top: 28px; }
.az-refresh .az-team-lead-avatar { display: block; width: 96px; height: 112px; padding: 4px; overflow: hidden; border: 1px solid var(--az-hairline); border-radius: 20px; background: var(--az-ice); box-shadow: inset 0 1px 1px rgba(255, 255, 255, .9); }
.az-refresh .az-team-lead-avatar img { display: block; width: 100%; height: 100%; border-radius: 15px; object-fit: cover; object-position: center 30%; }
.az-refresh .az-team-lead { min-width: 0; margin: 0; color: var(--az-muted); font-size: 14px; line-height: 1.6; }
.az-refresh .az-team-lead strong { color: var(--az-service-blue); font-weight: 600; }
.az-refresh .az-team-lead span { display: block; margin-top: 3px; font-size: 12px; line-height: 1.6; }
.az-refresh .az-team-section .az-team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0; padding: 0; background: var(--az-hairline); }
.az-refresh .az-team-role-card { min-height: 160px; grid-template-columns: 88px minmax(0, 1fr); align-items: center; align-content: center; gap: 18px; padding: 24px 20px; border: 0; background: #fff; }
.az-refresh .az-team-avatar { display: block; width: 88px; height: 88px; padding: 4px; overflow: hidden; border: 1px solid var(--az-hairline); border-radius: 20px; background: var(--az-ice); box-shadow: inset 0 1px 1px rgba(255, 255, 255, .9); }
.az-refresh .az-team-avatar img { display: block; width: 100%; height: 100%; aspect-ratio: 1; border-radius: 15px; object-fit: cover; object-position: center 30%; }
.az-refresh .az-team-role-copy { min-width: 0; }
.az-refresh .az-team-role-number { display: block; margin-bottom: 7px; color: var(--az-service-blue); font-size: 11px; font-weight: 700; letter-spacing: .08em; line-height: 1.4; }
.az-refresh .az-team-role-card h3 { color: var(--az-ink); font-size: 17px; line-height: 1.45; }
.az-refresh .az-team-role-card p { color: var(--az-muted); font-size: 13px; line-height: 1.7; }
.az-refresh .az-team-disclosure { grid-column: 1 / -1; max-width: none; margin-top: 24px; color: var(--az-muted); }
.az-refresh .az-pricing-teaser { padding: 0 0 80px; background: #fff; }
.az-refresh .az-pricing-row { position: relative; width: min(calc(100% - 48px), 1232px); overflow: hidden; padding: 40px; border: 1px solid rgba(18, 100, 244, .2); border-radius: 28px; background: linear-gradient(112deg, #1264f4, #087aff); color: #fff; }
.az-refresh .az-pricing-row h2 { max-width: 21ch; color: #fff; font-size: clamp(32px, 4.2vw, 54px); }
.az-refresh .az-pricing-row .az-kicker { padding: 0; border-radius: 0; background: transparent; color: #fff !important; letter-spacing: .02em; font-size: 13px; }
.az-refresh .az-pricing-row > div > p:last-child { color: #fff; font-size: 13px; }
.az-refresh .az-pricing-row .az-actions { flex-basis: 320px; }
.az-refresh .az-pricing-row .az-button-gold { background: #fff !important; border-color: #fff !important; color: var(--az-service-blue) !important; }
.az-refresh .az-pricing-row .az-button-gold .az-button-icon { background: var(--az-service-blue); color: #fff; }
.az-refresh .az-pricing-row .az-button-outline { border-color: rgba(255, 255, 255, .7) !important; color: #fff !important; }
.az-refresh .az-pricing-row .az-button-outline:hover { background: rgba(255, 255, 255, .12) !important; }
.az-refresh .az-pricing-standard-note { margin-top: 18px; color: var(--az-muted); text-align: center; font-size: 12px; line-height: 1.7; }

/* Conversion area: local, readable inputs; same field and submission contracts. */
.az-refresh .az-conversion-section { border-radius: 40px 40px 0 0; background: var(--az-ice); color: var(--az-ink); }
.az-refresh .az-conversion-copy { position: static; }
.az-refresh .az-conversion-section .az-conversion-copy h2 { color: var(--az-ink); }
.az-refresh .az-check-list { gap: 17px; color: var(--az-ink); font-size: 14px; line-height: 1.7; }
.az-refresh .az-check-list li { position: relative; padding-left: 34px; }
.az-refresh .az-check-list li::before { content: ""; position: absolute; left: 0; top: 0; width: 23px; height: 23px; border-radius: 50%; background: var(--az-service-blue); }
.az-refresh .az-check-list li::after { content: ""; position: absolute; left: 8px; top: 5px; width: 6px; height: 10px; border: solid #fff; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg); }
.az-refresh .az-direct-contact { display: grid; gap: 13px; margin-top: 32px; }
.az-refresh .az-direct-contact a { color: var(--az-ink); font-size: 16px; }
.az-refresh .az-direct-contact a:hover { color: var(--az-service-blue); }
.az-refresh .az-conversion-form { gap: 20px; padding: 32px; border: 1px solid var(--az-hairline); border-radius: 28px; background: #fff; box-shadow: inset 0 0 0 5px #f8fbff, var(--az-ambient); }
.az-refresh :is(.az-conversion-form, .az-quick-audit-form) label > span { color: var(--az-ink); font-size: 12px; font-weight: 600; letter-spacing: 0; line-height: 1.6; text-transform: none; }
.az-refresh :is(.az-conversion-form, .az-quick-audit-form) :is(input, select) { min-height: 50px; border: 1px solid rgba(64, 116, 188, .25); border-radius: 12px; background: #fff; color: var(--az-ink); font-size: 16px; box-shadow: inset 0 1px 3px rgba(32, 81, 138, .025); transition: border-color .35s var(--az-motion); }
.az-refresh :is(.az-conversion-form, .az-quick-audit-form) input::placeholder,
.az-refresh #kiem-tra :is(input, textarea)::placeholder { color: #657a94; opacity: 1; }
.az-refresh :is(.az-form-privacy, .az-form-next-step, .az-quick-audit-form > p:last-child, .az-form-intro, .az-conversion-trust span) { color: var(--az-muted); }
.az-refresh :is(.az-form-privacy, .az-quick-audit-form > p:last-child) a { color: var(--az-service-blue); }
.az-refresh :is(.az-form-title, .az-conversion-trust strong) { color: var(--az-ink); }
.az-refresh #kiem-tra .form-help,
.az-refresh #kiem-tra .form-status { color: var(--az-muted); }
.az-refresh #kiem-tra .form-status.is-error,
.az-refresh #kiem-tra .form-error { color: #aa263d; }
.az-refresh #kiem-tra .form-status.is-success { color: #176343; }
.az-refresh #kiem-tra [aria-invalid="true"] { border-color: #b72d47 !important; }

.az-refresh :is(.az-footer, .trust-footer) { border-top: 1px solid var(--az-hairline); background: #fff; color: var(--az-muted); }
.az-refresh .az-footer-inner { width: min(100%, 1280px); padding: 38px 24px; }
.az-refresh .az-footer-brand { gap: 22px; color: var(--az-ink); }
.az-refresh .az-footer-identity p { color: var(--az-muted); }
.az-refresh .az-footer-links { font-size: 12px; line-height: 1.6; }
.az-refresh .az-footer a:hover { color: var(--az-service-blue); }

/* Legacy secondary-page inline presentation is mapped, never business data. */
.az-refresh.az-secondary-page :where([style*="background:#0B1622"], [style*="background:#12263A"], [style*="background:#F1EDE4"]) { background: var(--az-ice) !important; }
.az-refresh.az-secondary-page :where([style*="background:#FBFAF7"], [style*="background:#F6F3EC"], [style*="background:rgba(246,243,236"]) { background: #fff !important; }
.az-refresh.az-secondary-page :where([style*="background:rgba(201,164,100"]) { background: #eaf3ff !important; }
.az-refresh.az-secondary-page :where([style*="background:#C9A464"]) { background: var(--az-service-blue) !important; }
.az-refresh.az-secondary-page :where([style*="color:#F6F3EC"], [style*="color:#12263A"], [style*="color:#0B1622"]) { color: var(--az-ink) !important; }
.az-refresh.az-secondary-page :where([style*="color:rgba(246,243,236"], [style*="color:rgba(18,38,58"]) { color: var(--az-muted) !important; }
.az-refresh.az-secondary-page :where([style*="color:#C9A464"], [style*="color:#9A7529"]) { color: var(--az-service-blue) !important; }
.az-refresh.az-secondary-page :where([style*="border:"][style*="rgba(246,243,236"], [style*="border:"][style*="rgba(201,164,100"], [style*="border:"][style*="rgba(18,38,58"], [style*="border-bottom:"], [style*="border-top:"], [style*="border-right:"]) { border-color: var(--az-hairline) !important; }
.az-refresh.az-secondary-page :where(h1, h2) { line-height: 1.18 !important; }
.az-refresh.az-secondary-page main > section:first-child { margin-top: 24px; }
.az-refresh.az-secondary-page main > section:first-child > div { padding-top: 80px !important; padding-bottom: 80px !important; }
.az-refresh.az-secondary-page main > section > div[style*="max-width:1200px"] { max-width: 1280px !important; padding-inline: 24px !important; }
.az-refresh.az-secondary-page main > section:not(:first-child) > div[style*="max-width:1200px"] { padding-block: 88px !important; }
.az-refresh.az-secondary-page .az-home-hero { min-height: 0; background: var(--az-ice); color: var(--az-ink); }
.az-refresh.az-secondary-page .az-home-hero h1 { color: var(--az-ink); font-size: clamp(36px, 4vw, 56px); line-height: 1.16; }
.az-refresh.az-secondary-page :is(.az-hero-lead, .az-microcopy) { color: var(--az-muted); }
.az-refresh.az-secondary-page .az-hero-founder { padding: 6px; border-color: var(--az-hairline); border-radius: 24px; background: #fff; }
.az-refresh.az-secondary-page .az-hero-founder picture { display: block; overflow: hidden; border-radius: 18px; }
.az-refresh.az-secondary-page .az-hero-product { overflow: hidden; border-color: #fff; border-radius: 20px; box-shadow: var(--az-ambient); }
.az-refresh.az-secondary-page .az-home-hero :is(.az-hero-founder, .az-hero-product) figcaption { border-color: var(--az-hairline); border-radius: 999px; background: #fff; color: var(--az-ink); }
.az-refresh.az-secondary-page .az-service-hero-product { width: 100%; min-height: 0; }
.az-refresh.az-secondary-page .az-service-hero-product figcaption { margin: 0; padding: 16px 12px 10px; color: var(--az-muted); font-size: 12px; line-height: 1.6; }
.az-refresh.az-secondary-page :is(.az-out, .az-pricing-form) { overflow: hidden; border-color: var(--az-hairline) !important; border-radius: 24px; background: #fff !important; box-shadow: inset 0 0 0 5px #f8fbff, var(--az-ambient); }
.az-refresh.az-secondary-page .az-pricing-form :is(input:not([type="hidden"]), select) { border-color: rgba(64, 116, 188, .25) !important; border-radius: 12px !important; background: #fff !important; color: var(--az-ink) !important; }
.az-refresh.az-secondary-page .az-pricing-form label > span { color: var(--az-ink) !important; letter-spacing: 0 !important; text-transform: none !important; }
.az-refresh.az-secondary-page .az-num { border-color: rgba(64, 116, 188, .25); border-radius: 12px; background: #fff; color: var(--az-ink); }
.az-refresh.az-secondary-page .az-term label { height: 100%; border-color: var(--az-hairline); border-radius: 14px; background: #fff; color: var(--az-ink); transition: border-color .4s var(--az-motion), background-color .4s var(--az-motion); }
.az-refresh.az-secondary-page .az-term input:checked + label { border-color: var(--az-service-blue); background: #e4efff; color: var(--az-ink); box-shadow: inset 0 0 0 1px var(--az-service-blue); }
.az-refresh.az-secondary-page .az-term .az-term-off { color: var(--az-muted); }
.az-refresh.az-secondary-page .az-term input:checked + label .az-term-off { color: var(--az-service-blue); }
.az-refresh.az-secondary-page .az-range { background: rgba(18, 100, 244, .22); background-clip: content-box; }
.az-refresh.az-secondary-page .az-range::-webkit-slider-thumb { border-color: #fff; background: var(--az-service-blue); box-shadow: 0 0 0 1px var(--az-service-blue); }
.az-refresh.az-secondary-page .az-range::-moz-range-thumb { border-color: #fff; background: var(--az-service-blue); box-shadow: 0 0 0 1px var(--az-service-blue); }
.az-refresh.az-secondary-page .az-range::-moz-range-track { background: rgba(18, 100, 244, .22); }
.az-refresh.az-secondary-page summary { transition: background-color .4s var(--az-motion); }
.az-refresh.az-secondary-page summary:hover { padding-left: 0; background: var(--az-ice); }
.az-refresh.az-secondary-page .om-plus { color: var(--az-service-blue) !important; transition: transform .4s var(--az-motion); }
.az-refresh.az-secondary-page :is(th, td) { border-color: var(--az-hairline) !important; }
.az-refresh.az-secondary-page th { background: var(--az-ice) !important; color: var(--az-ink) !important; }
.az-refresh.az-secondary-page footer { border-color: var(--az-hairline) !important; background: #fff !important; color: var(--az-muted) !important; }
.az-refresh.az-secondary-page footer > div { max-width: 1280px !important; padding-inline: 24px !important; }
.az-refresh.az-secondary-page footer a { color: var(--az-ink) !important; }
.az-refresh.az-secondary-page main > div[style*="max-width:820px"] { max-width: 980px !important; }
.az-refresh.az-secondary-page main > div[style*="max-width:760px"] { max-width: 900px !important; }
.az-refresh.az-secondary-page main > div > div[style*="border:1px"] { overflow: hidden; border-radius: 24px; }
.az-refresh.az-secondary-page :is(a.h1, button.h1) { color: #fff !important; background: var(--az-service-blue) !important; }
.az-refresh.az-secondary-page :is(a.h1, button.h1):hover { background: var(--az-service-blue-hover) !important; }
.az-refresh.az-secondary-page :is(a.h2, a.h2b) { color: var(--az-service-blue) !important; background: transparent !important; border-color: rgba(18, 100, 244, .5) !important; }

/* Transparency hub uses its existing semantic tables and factual content. */
.az-refresh .trust-hero { margin-top: 24px; background: var(--az-ice); color: var(--az-ink); }
.az-refresh :is(.trust-hero-lead, .trust-updated, .trust-lead, .trust-card p, .trust-card li) { color: var(--az-muted); }
.az-refresh .trust-shell { width: min(100%, 1120px); padding-inline: 24px; }
.az-refresh .trust-section { padding-block: 88px; border-bottom-color: var(--az-hairline); }
.az-refresh .trust-section:nth-child(even) { background: #f8fbff; }
.az-refresh .trust-grid { gap: 20px; border: 0; background: transparent; }
.az-refresh .trust-card { border: 1px solid var(--az-hairline); border-radius: 24px; background: #fff; box-shadow: inset 0 0 0 5px #f8fbff; }
.az-refresh .trust-card span { color: var(--az-service-blue); }
.az-refresh .trust-callout { border: 1px solid var(--az-hairline); border-radius: 20px; background: #eaf3ff; color: var(--az-ink); }
.az-refresh .trust-callout p { color: var(--az-muted); }
.az-refresh .trust-footer a { color: var(--az-service-blue); }

/* Consent remains a fixed, keyboard-accessible component with original states. */
.az-refresh .az-consent { border-color: var(--az-hairline); background: rgba(255, 255, 255, .98); color: var(--az-ink); box-shadow: 0 -8px 40px rgba(32, 81, 138, .07); transition: transform .45s var(--az-motion), opacity .35s var(--az-motion), visibility 0s .45s; }
.az-refresh .az-consent.az-in { transition: transform .45s var(--az-motion), opacity .35s var(--az-motion), visibility 0s; }
.az-refresh .az-consent p { color: var(--az-ink); }
.az-refresh .az-consent a { color: var(--az-service-blue); }
.az-refresh .az-btn { border-radius: 999px; transition: transform .4s var(--az-motion), background-color .4s var(--az-motion), border-color .4s var(--az-motion); }
.az-refresh .az-btn-primary { border-color: var(--az-service-blue); background: var(--az-service-blue); color: #fff; }
.az-refresh .az-btn-primary:hover { border-color: var(--az-service-blue-hover); background: var(--az-service-blue-hover); }
.az-refresh .az-btn-ghost { border-color: rgba(18, 100, 244, .32); background: #fff; color: var(--az-service-blue); }
.az-refresh .az-btn-ghost:hover { border-color: var(--az-service-blue); background: var(--az-ice); color: var(--az-service-blue-hover); }
.az-refresh .az-zalo { box-shadow: 0 10px 28px -12px rgba(0, 104, 255, .4); transition: transform .4s var(--az-motion), opacity .4s var(--az-motion); }
.az-refresh .az-zalo:hover { box-shadow: 0 14px 30px -12px rgba(0, 104, 255, .45); }

@media (min-width: 701px) and (max-width: 1120px) {
  .az-refresh .az-header-inner { flex-wrap: wrap !important; gap: 10px 24px !important; }
  .az-refresh .az-header-cta { margin-left: auto; }
  .az-refresh .az-header .az-nav { order: 4; width: 100%; justify-content: space-between; margin-left: 0 !important; }
  .az-refresh .az-banner-support { align-items: flex-start; flex-direction: column; }
  .az-refresh .az-identity-band-inner { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .az-refresh .az-identity-more { justify-self: start; }
}

@media (max-width: 980px) {
  .az-refresh :is(.az-problem-layout, .az-roles-layout, .az-conversion-grid, .az-team-layout) { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .az-refresh .az-team-intro { max-width: 600px; }
  .az-refresh .az-team-section .az-team-grid { margin-top: 0; }
  .az-refresh .az-pricing-row { display: grid; gap: 24px; }
  .az-refresh .az-pricing-row .az-actions { justify-content: flex-start; }
  .az-refresh .az-quick-audit { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 700px) {
  .az-refresh :is(.az-header, .trust-header),
  .az-refresh.az-secondary-page > header { top: 8px !important; width: calc(100% - 24px); margin-top: 10px; border-radius: 20px; }
  .az-refresh .az-header > .az-header-inner { gap: 8px !important; min-height: 64px; padding: 9px 12px !important; }
  .az-refresh :is(.trust-header-inner),
  .az-refresh.az-secondary-page > header > div { min-height: 64px; padding: 9px 14px !important; }
  .az-refresh header img[alt="ANGIA Residence"] { height: 37px !important; }
  .az-refresh .az-header-cta { min-width: 0; max-width: 170px; padding: 8px 12px !important; font-size: 12px !important; line-height: 1.45; white-space: normal; }
  .az-refresh .az-header-cta .az-button-icon { display: none; }
  .az-refresh .az-header .az-nav { margin-top: 6px !important; padding-top: 12px; border-color: var(--az-hairline); }
  .az-refresh .az-header.az-menu-open .az-nav { grid-template-columns: minmax(0, 1fr); gap: 2px !important; }
  .az-refresh .az-header .az-nav a { min-height: 44px; padding-inline: 12px; font-size: 14px; }
  .az-refresh .az-home-shell { padding-inline: 16px; }
  .az-refresh .az-home-section { padding-block: 56px; }
  .az-refresh :is(.az-section-heading h2, .az-home-heading, .az-conversion-copy h2, .az-team-intro h2) { max-width: 20ch; font-size: clamp(29px, 8.5vw, 37px); line-height: 1.23; }
  .az-refresh .az-banner-hero { padding-top: 20px; }
  .az-refresh .az-banner-title { position: static; width: auto; height: auto; max-width: 22ch; margin: 0 0 18px; overflow: visible; clip: auto; white-space: normal; color: var(--az-ink); font-size: clamp(26px, 7.4vw, 32px); line-height: 1.2; letter-spacing: -.035em; }
  .az-refresh .az-hero-visual.az-home-banner { padding: 4px; border-radius: 20px; }
  .az-refresh .az-home-banner picture { border-radius: 15px; }
  .az-refresh .az-banner-support { flex-direction: column; gap: 18px; padding: 20px; border-radius: 20px; }
  .az-refresh .az-banner-summary > strong { font-size: 15px; }
  .az-refresh .az-banner-price { display: block; font-size: 13px; }
  .az-refresh .az-banner-price > span { display: block; }
  .az-refresh .az-banner-price > span:first-child { display: inline; }
  .az-refresh .az-banner-price strong { font-size: 22px; }
  .az-refresh .az-banner-support .az-actions { width: 100%; margin: 0; gap: 10px; }
  .az-refresh .az-banner-support .az-actions .az-button { display: flex; width: 100%; min-height: 48px; padding: 11px 16px; justify-content: center; border: 1px solid transparent; text-decoration: none; }
  .az-refresh .az-banner-support .az-actions .az-button-outline { display: flex; border-color: rgba(18, 100, 244, .5); }
  .az-refresh .az-banner-channels { display: flex; align-items: center; gap: 6px 12px; flex-wrap: wrap; margin: 16px 0 0; padding: 0; color: var(--az-service-blue); list-style: none; font-size: 11px; font-weight: 600; line-height: 1.6; }
  .az-refresh .az-banner-channels li { margin: 0; color: inherit; font-size: inherit; line-height: inherit; }
  .az-refresh .az-banner-note { margin-top: 12px; font-size: 11px; }
  .az-refresh .az-identity-band { width: calc(100% - 32px); margin-top: 20px; }
  .az-refresh .az-identity-band-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 18px; }
  .az-refresh .az-identity-band-inner > div { padding-bottom: 0; border-bottom: 0; }
  .az-refresh .az-identity-band-inner > div:first-child { grid-column: 1 / -1; }
  .az-refresh .az-identity-band-inner > div:nth-child(3) { grid-column: 1 / -1; }
  .az-refresh .az-identity-band-inner > div:nth-child(3) > a { font-size: 13px; }
  .az-refresh .az-identity-band-inner > div > a { overflow-wrap: anywhere; }
  .az-refresh .az-identity-more { grid-column: 1 / -1; justify-self: start; }
  .az-refresh .az-problem-layout { gap: 28px; margin-top: 28px; }
  .az-refresh .az-problem-grid { gap: 24px 18px; }
  .az-refresh .az-problem-grid article { min-height: 0; padding: 0; }
  .az-refresh .az-problem-grid article h3 { font-size: 15px; }
  .az-refresh .az-problem-grid article p { font-size: 12px; }
  .az-refresh :is(.az-product-frame, .az-roles-product, .az-proof-card) { border-radius: 20px; padding: 5px; }
  .az-refresh :is(.az-product-frame, .az-roles-product, .az-proof-card) picture { border-radius: 15px; }
  .az-refresh .az-problem-cta { padding: 22px; }
  .az-refresh .az-evidence-meta { grid-template-columns: minmax(0, 1fr); padding: 20px; }
  .az-refresh .az-quick-audit { padding: 22px; border-radius: 22px; }
  .az-refresh .az-roles-section > .az-home-shell > .az-section-heading { text-align: left; }
  .az-refresh .az-role-list article { padding: 24px 0 24px 58px; }
  .az-refresh .az-role-list article::before { top: 22px; font-size: 32px; }
  .az-refresh .az-role-number { font-size: 32px; }
  .az-refresh .az-role-list article h3 { font-size: 19px; }
  .az-refresh .az-trust-principles { padding: 24px; border-radius: 22px; }
  .az-refresh .az-trust-principles-grid { grid-template-columns: minmax(0, 1fr); }
  .az-refresh .az-team-section .az-team-grid { grid-template-columns: minmax(0, 1fr) !important; gap: 1px !important; }
  .az-refresh .az-team-role-card { min-height: 0; grid-template-columns: 72px minmax(0, 1fr); gap: 16px; padding: 22px 0; }
  .az-refresh .az-team-avatar { width: 72px; height: 72px; border-radius: 18px; }
  .az-refresh .az-team-avatar img { border-radius: 13px; }
  .az-refresh .az-team-role-card h3 { font-size: 17px; }
  .az-refresh .az-team-intro > p { margin-top: 18px; }
  .az-refresh .az-team-lead-profile { grid-template-columns: 80px minmax(0, 1fr); gap: 16px; margin-top: 24px; }
  .az-refresh .az-team-lead-avatar { width: 80px; height: 96px; border-radius: 18px; }
  .az-refresh .az-team-lead-avatar img { border-radius: 13px; }
  .az-refresh .az-pricing-teaser { padding-bottom: 56px; }
  .az-refresh .az-pricing-row { width: calc(100% - 32px); padding: 28px 22px; border-radius: 24px; }
  .az-refresh .az-pricing-row h2 { font-size: 32px; line-height: 1.2; }
  .az-refresh .az-pricing-row .az-actions { gap: 12px; }
  .az-refresh .az-conversion-section { border-radius: 28px 28px 0 0; }
  .az-refresh .az-conversion-form { padding: 24px 20px; border-radius: 24px; }
  .az-refresh .az-direct-contact a { font-size: 15px; }
  .az-refresh .az-footer-inner { padding: 32px 20px; }
  .az-refresh .az-footer-brand { flex-wrap: wrap; gap: 18px; }
  .az-refresh .az-footer-links { display: flex; gap: 10px 18px; font-size: 12px; }
  .az-refresh.az-secondary-page main > section:first-child > div { padding-block: 48px !important; }
  .az-refresh.az-secondary-page main > section > div[style*="max-width:1200px"] { padding-inline: 18px !important; }
  .az-refresh.az-secondary-page main > section:not(:first-child) > div[style*="max-width:1200px"] { padding-block: 56px !important; }
  .az-refresh.az-secondary-page h1 { font-size: clamp(30px, 8.6vw, 38px) !important; }
  .az-refresh.az-secondary-page .az-home-hero .az-home-shell { gap: 28px; }
  .az-refresh.az-secondary-page main > div[style*="max-width:820px"] table { display: block; max-width: 100%; overflow-x: auto; }
  .az-refresh.az-secondary-page main > div[style*="max-width:820px"] th,
  .az-refresh.az-secondary-page main > div[style*="max-width:820px"] td { min-width: 150px; }
  .az-refresh .trust-shell { padding-inline: 18px; }
  .az-refresh .trust-section { padding-block: 56px; }
  .az-refresh .trust-grid { gap: 16px; }
  .az-refresh .trust-contact .trust-button { width: 100%; }
}

/* Progressive scroll choreography: keep content visible in older browsers,
   avoid moving form controls, and leave the LCP banner entirely static. */
@keyframes az-section-enter {
  from { opacity: .35; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .az-refresh :is(.az-section-heading, .az-team-intro, .az-conversion-copy) {
      animation: az-section-enter .8s var(--az-motion) both;
      animation-timeline: view();
      animation-range: entry 0% entry 80%;
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  .az-refresh :is(.az-button, .az-home-primary, .az-home-secondary, .az-button-icon, .trust-button, .h1, .h2, .h2b, .az-btn, .az-zalo, .az-consent, .az-term label, .om-plus) { transition: none !important; animation: none !important; }
  .az-refresh :is(.az-button, .az-home-primary, .az-home-secondary, .trust-button, .h1, .h2, .h2b, .az-btn, .az-zalo):hover,
  .az-refresh .az-button:hover .az-button-icon { transform: none; }
}
