*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--z-ink);
  background: var(--z-canvas);
  font: 400 1rem/1.85 var(--z-font-fa);
  direction: rtl;
  text-rendering: optimizeLegibility;
}
img { max-width: 100%; height: auto; }
a { color: inherit; }
button, input, textarea, select { font: inherit; }
.z-skip-link { position: fixed; inset: 0 auto auto 0; transform: translateY(-120%); z-index: 1000; background: #fff; padding: 0.75rem 1rem; }
.z-skip-link:focus { transform: translateY(0); }
.z-site-header { position: relative; z-index: 50; border-bottom: 1px solid rgb(228 232 240 / 85%); background: var(--z-surface); }
.z-appearance--sticky-header .z-site-header { position: sticky; top: 0; }
.z-appearance--header-blur .z-site-header { background: rgb(255 255 255 / 92%); backdrop-filter: blur(14px); }
.z-header-inner { min-height: 78px; display: flex; align-items: center; gap: 2rem; }
.z-brand { display: inline-flex; width: 220px; }
.z-brand picture { display: block; width: 100%; }
.z-brand img { width: 100%; max-height: 48px; object-fit: contain; }
.z-primary-nav { margin-inline-start: auto; }
.z-nav-list { display: flex; align-items: center; gap: 1.5rem; list-style: none; margin: 0; padding: 0; }
.z-nav-list a { text-decoration: none; color: var(--z-ink); font-weight: 500; }
.z-main { min-height: 55vh; }
.z-hero { overflow: hidden; background: radial-gradient(circle at 25% 35%, rgb(240 164 0 / 10%), transparent 28%), linear-gradient(180deg, #fff 0%, #f9fbff 100%); border-bottom: 1px solid var(--z-border); }
.z-hero-grid { display: grid; grid-template-columns: 1fr 0.9fr; min-height: 620px; align-items: center; gap: 3rem; }
.z-hero-copy h1 { margin: 0.75rem 0 1rem; color: var(--z-navy-950); font-size: clamp(2.5rem, 5vw, 4.8rem); line-height: 1.25; letter-spacing: -0.025em; }
.z-hero-copy h1 span { color: var(--z-gold-600); }
.z-hero-copy p { max-width: 680px; margin: 0 0 1.75rem; color: var(--z-muted); font-size: 1.15rem; }
.z-hero-visual { display: grid; place-items: center; min-height: 420px; }
.z-logo-stage { position: relative; display: grid; place-items: center; width: min(70vw, 430px); aspect-ratio: 1; border-radius: 42%; background: radial-gradient(circle, #fff 0 35%, #f1f5ff 36% 58%, transparent 59%); }
.z-logo-stage img { position: relative; z-index: 2; width: 42%; filter: drop-shadow(0 26px 32px rgb(6 11 87 / 18%)); }
.z-orbit { position: absolute; border: 1px solid rgb(49 91 213 / 25%); border-radius: 50%; }
.z-orbit--one { inset: 10%; transform: rotate(18deg); }
.z-orbit--two { inset: 21% 5%; transform: rotate(-25deg); border-color: rgb(224 148 0 / 30%); }
.z-section { padding-block: var(--z-section-space, var(--z-space-8)); }
.z-section--surface { background: #fff; border-block: 1px solid var(--z-border); }
.z-section-heading { max-width: 720px; margin: 0 auto 2.5rem; text-align: center; }
.z-section-heading h2 { margin: 0.5rem 0; color: var(--z-navy-950); font-size: clamp(2rem, 3vw, 3rem); line-height: 1.35; }
.z-section-heading p { margin: 0; color: var(--z-muted); }
.z-phase-card { position: relative; overflow: hidden; padding: var(--z-card-padding, 1.5rem); }
.z-phase-number { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; color: #fff; background: var(--z-navy-950); font-size: 1.2rem; font-weight: 800; }
.z-phase-card h3 { color: var(--z-navy-950); margin-bottom: 0.35rem; }
.z-phase-card p { color: var(--z-muted); min-height: 4.6rem; }
.z-system-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--z-layout-gap, 1.5rem); }
.z-system-layout h3 { margin-top: 0; color: var(--z-navy-950); }
.z-swatches { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.z-swatch { display: grid; grid-template-columns: 48px 1fr; align-items: center; column-gap: 0.75rem; }
.z-swatch span { grid-row: 1 / span 2; width: 48px; height: 48px; border: 1px solid var(--z-border); border-radius: 14px; }
.z-swatch code { direction: ltr; color: var(--z-muted); font-family: monospace; }
.z-type-hero { margin: 0; color: var(--z-navy-950); font-size: clamp(2rem, 4vw, 3.25rem); font-weight: 800; line-height: 1.3; }
.z-type-heading { color: var(--z-gold-700); font-size: 1.5rem; font-weight: 700; }
.z-technical { font-family: var(--z-font-technical); direction: ltr; text-align: left; }
.z-brand-showcase { display: grid; place-items: center; gap: 1.5rem; min-height: 280px; }
.z-brand-showcase img:first-child { width: min(100%, 520px); }
.z-brand-symbol { width: 90px; }
.z-content-stack { padding-block: 4rem; }
.z-prose { max-width: 850px; margin-inline: auto; }
.z-site-footer { color: #fff; background: var(--z-navy-950); padding-block: 3rem; }
.z-footer-grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: 3rem; align-items: center; }
.z-footer-logo { width: 180px; max-height: 150px; object-fit: contain; filter: brightness(0) invert(1); opacity: 0.95; }
.z-site-footer h2 { color: #fff; }
@media (max-width: 900px) {
  .z-primary-nav, .z-header-cta { display: none; }
  .z-header-inner { justify-content: space-between; }
  .z-brand { width: 190px; }
  .z-hero-grid { grid-template-columns: 1fr; padding-block: 4rem; text-align: center; }
  .z-hero-copy { order: 1; }
  .z-hero-copy p { margin-inline: auto; }
  .z-hero-copy .z-actions { justify-content: center; }
  .z-hero-visual { order: 0; min-height: 280px; }
  .z-logo-stage { width: min(75vw, 330px); }
  .z-system-layout, .z-footer-grid { grid-template-columns: 1fr; }
}
@media (max-width: 639px) {
  .z-header-inner { min-height: 68px; }
  .z-brand { width: 170px; }
  .z-hero-grid { min-height: auto; gap: 1.5rem; }
  .z-hero-copy h1 { font-size: 2.45rem; }
  .z-hero-copy p { font-size: 1rem; }
  .z-section { padding-block: var(--z-section-space-mobile, 3.25rem); }
  .z-swatches { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* Phase 8: managed header, Mega Menu, mobile navigation and footer. */
.z-visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.z-header-marker { position: absolute; inset: 0 0 auto; height: 1px; pointer-events: none; }
.z-site-header { transition: box-shadow .22s ease, background-color .22s ease; }
.z-site-header.is-scrolled { box-shadow: 0 12px 35px rgb(12 22 88 / 8%); }
.z-header-inner { position: relative; }
.z-primary-nav { position: static; }
.z-nav-item { display: flex; align-items: center; min-height: 78px; }
.z-nav-list > li > a, .z-nav-product-entry > a { position: relative; padding-block: .45rem; }
.z-nav-list > li > a::after, .z-nav-product-entry > a::after { content: ""; position: absolute; inset: auto 0 -.18rem; height: 2px; border-radius: 2px; background: var(--z-gold-600); transform: scaleX(0); transform-origin: right; transition: transform .2s ease; }
.z-nav-list > li > a:hover::after, .z-nav-list > li > a:focus-visible::after, .z-nav-product-entry > a:hover::after, .z-nav-product-entry > a:focus-visible::after { transform: scaleX(1); }
.z-nav-product-entry { display: flex; align-items: center; gap: .2rem; }
.z-mega-trigger { display: grid; place-items: center; width: 28px; height: 28px; padding: 0; border: 0; border-radius: 8px; color: var(--z-navy-950); background: transparent; cursor: pointer; }
.z-mega-trigger:hover, .z-mega-trigger:focus-visible, .z-mega-trigger[aria-expanded="true"] { background: var(--z-surface-soft); outline: none; }
.z-mega-trigger > span:last-child { transition: transform .2s ease; }.z-mega-trigger[aria-expanded="true"] > span:last-child { transform: rotate(180deg); }
.z-mega-menu { position: absolute; z-index: 60; inset: calc(100% - 8px) 0 auto; width: 100%; padding: 1.25rem; border: 1px solid var(--z-border); border-radius: var(--z-radius-lg); background: var(--z-surface); box-shadow: var(--z-shadow-md); }
.z-mega-menu__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.z-mega-family { --z-family-color: #2f6fd8; position: relative; padding: 1rem; border: 1px solid var(--z-border); border-radius: var(--z-radius-md); background: var(--z-surface-soft); }
.z-mega-family--green { --z-family-color: #22956b; }.z-mega-family--purple { --z-family-color: #7754c9; }.z-mega-family--gold { --z-family-color: var(--z-gold-600); }
.z-mega-family__mark { display: block; width: 34px; height: 5px; margin-bottom: .8rem; border-radius: 5px; background: var(--z-family-color); }
.z-mega-family h2 { margin: 0 0 .3rem; color: var(--z-navy-950); font-size: 1rem; }
.z-mega-family p { min-height: 2.8rem; margin: 0 0 .75rem; color: var(--z-muted); font-size: .78rem; line-height: 1.7; }
.z-mega-family ul { display: grid; gap: .35rem; margin: 0; padding: 0; list-style: none; }
.z-mega-family a { display: block; padding: .32rem .45rem; border-radius: 8px; color: var(--z-ink); font-size: .83rem; text-decoration: none; }
.z-mega-family a:hover, .z-mega-family a:focus-visible { color: var(--z-navy-950); background: #fff; outline: none; }
.z-mega-menu__all { display: inline-flex; align-items: center; gap: .4rem; margin-top: 1rem; color: var(--z-gold-700); font-weight: 700; text-decoration: none; }
.z-mobile-menu-trigger, .z-mobile-menu { display: none; }
body.z-mega-open::after { content: ""; position: fixed; z-index: 45; inset: 0; background: rgb(6 11 87 / 12%); backdrop-filter: blur(1px); }

.z-site-footer { padding: 0; background: var(--z-navy-950); }
.z-footer-main { display: grid; grid-template-columns: minmax(240px, .85fr) minmax(0, 2fr); gap: 4rem; padding-block: 4.25rem 3rem; }
.z-footer-brand { align-self: start; }.z-footer-logo { width: min(100%, 230px); max-height: 90px; object-fit: contain; object-position: right center; }
.z-footer-brand p { max-width: 430px; margin: 1.25rem 0; color: #cbd1e7; }
.z-footer-socials { display: flex; flex-wrap: wrap; gap: .55rem; }
.z-footer-socials a { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid rgb(255 255 255 / 18%); border-radius: 11px; color: #fff; text-decoration: none; }
.z-footer-socials a:hover, .z-footer-socials a:focus-visible { border-color: var(--z-gold-500); color: var(--z-navy-950); background: var(--z-gold-500); outline: none; }
.z-footer-columns { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
.z-footer-column h2 { margin: 0 0 1rem; font-size: 1rem; }.z-footer-column h2 button { width: 100%; padding: 0; border: 0; color: #fff; background: transparent; font: inherit; text-align: right; pointer-events: none; }
.z-footer-column h2 i { display: none; }.z-footer-column ul { display: grid; gap: .6rem; margin: 0; padding: 0; list-style: none; }
.z-footer-column a { color: #cbd1e7; font-size: .9rem; text-decoration: none; }.z-footer-column a:hover, .z-footer-column a:focus-visible { color: var(--z-gold-500); outline: none; }
.z-footer-licenses { display: flex; align-items: center; gap: 1rem; padding-block: 1.25rem; border-top: 1px solid rgb(255 255 255 / 12%); }
.z-footer-licenses img { width: 72px; height: 72px; padding: .45rem; border-radius: 12px; background: #fff; object-fit: contain; }
.z-footer-bottom { color: #b8bfd8; background: rgb(0 0 30 / 22%); }
.z-footer-bottom > .z-container { display: flex; align-items: center; gap: 1.5rem; min-height: 68px; font-size: .82rem; }
.z-footer-bottom nav { display: flex; gap: 1rem; margin-inline-start: auto; }.z-footer-bottom a { color: inherit; text-decoration: none; }.z-footer-bottom a:hover, .z-footer-bottom a:focus-visible { color: #fff; }
.z-back-to-top { display: grid; place-items: center; width: 36px; height: 36px; margin-inline-start: .5rem; border: 1px solid rgb(255 255 255 / 18%); border-radius: 10px; color: #fff !important; }

@media (max-width: 1100px) {
  .z-nav-list { gap: .9rem; }.z-nav-list a { font-size: .9rem; }.z-brand { width: 190px; }.z-header-inner { gap: 1.1rem; }.z-mega-menu__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .z-footer-main { grid-template-columns: 1fr; gap: 2.5rem; }.z-footer-columns { gap: 1rem; }
}
@media (max-width: 900px) {
  .z-primary-nav, .z-header-cta { display: none; }.z-mobile-menu-trigger { display: grid; place-items: center; width: 44px; height: 44px; margin-inline-start: auto; padding: 0; border: 1px solid var(--z-border); border-radius: 12px; background: var(--z-surface); }
  .z-mobile-menu-trigger__icon { display: grid; gap: 4px; }.z-mobile-menu-trigger__icon i { display: block; width: 20px; height: 2px; border-radius: 2px; background: var(--z-navy-950); }
  .z-mobile-menu { display: block; position: fixed; z-index: 100; inset: 0; }.z-mobile-menu[hidden] { display: none; }.z-mobile-menu__backdrop { position: absolute; inset: 0; background: rgb(6 11 87 / 38%); backdrop-filter: blur(3px); }
  .z-mobile-menu__panel { position: absolute; inset: 0 0 0 auto; display: flex; flex-direction: column; width: min(88vw, 410px); overflow-y: auto; padding: 1rem; background: var(--z-surface); box-shadow: -18px 0 60px rgb(6 11 87 / 22%); }
  .z-mobile-menu__panel > header { display: flex; align-items: center; gap: 1rem; padding-bottom: 1rem; border-bottom: 1px solid var(--z-border); }.z-mobile-menu__panel > header img { width: 48px; max-height: 48px; object-fit: contain; }.z-mobile-menu__panel > header button { margin-inline-start: auto; width: 40px; height: 40px; border: 0; border-radius: 10px; color: var(--z-navy-950); background: var(--z-surface-soft); font-size: 1.7rem; }
  .z-mobile-nav-list { margin: 1rem 0; padding: 0; list-style: none; }.z-mobile-nav-list > li { border-bottom: 1px solid var(--z-border); }.z-mobile-nav-list > li > a, .z-mobile-products > div:first-child > a { display: block; padding: .85rem .35rem; color: var(--z-navy-950); font-weight: 600; text-decoration: none; }
  .z-mobile-products > div:first-child { display: flex; align-items: center; }.z-mobile-products > div:first-child > a { flex: 1; }.z-mobile-products > div:first-child > button { border: 0; background: transparent; color: var(--z-muted); }
  .z-mobile-families { padding: .25rem 0 .8rem; }.z-mobile-family { --z-family-color: #2f6fd8; margin-bottom: .5rem; border-inline-start: 4px solid var(--z-family-color); border-radius: 8px; background: var(--z-surface-soft); }.z-mobile-family--green { --z-family-color: #22956b; }.z-mobile-family--purple { --z-family-color: #7754c9; }.z-mobile-family--gold { --z-family-color: var(--z-gold-600); }
  .z-mobile-family h2 { margin: 0; font-size: .92rem; }.z-mobile-family h2 button { display: flex; justify-content: space-between; width: 100%; padding: .75rem; border: 0; color: var(--z-navy-950); background: transparent; text-align: right; }.z-mobile-family h2 button i { transition: transform .2s; }.z-mobile-family h2 button[aria-expanded="true"] i { transform: rotate(180deg); }
  .z-mobile-family ul { display: grid; gap: .15rem; margin: 0; padding: 0 .8rem .7rem; list-style: none; }.z-mobile-family ul[hidden] { display: none; }.z-mobile-family a { display: block; padding: .45rem; border-radius: 7px; color: var(--z-muted); text-decoration: none; }.z-mobile-family a:hover, .z-mobile-family a:focus-visible { color: var(--z-navy-950); background: #fff; }
  .z-mobile-menu__cta { margin-top: auto; text-align: center; }.z-mobile-menu-open { overflow: hidden; }
  .z-footer-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }.z-footer-main { padding-block: 3.25rem 2rem; }
}
@media (max-width: 639px) {
  .z-header-inner { min-height: 68px; }.z-brand { width: 178px; }.z-footer-main { gap: 1.75rem; }.z-footer-logo { width: 190px; }
  .z-footer-columns { grid-template-columns: 1fr; gap: 0; }.z-footer-column { border-bottom: 1px solid rgb(255 255 255 / 12%); }.z-footer-column h2 { margin: 0; }.z-chrome--footer-accordion .z-footer-column h2 button { display: flex; align-items: center; justify-content: space-between; min-height: 54px; pointer-events: auto; cursor: pointer; }.z-chrome--footer-accordion .z-footer-column h2 i { display: block; transition: transform .2s; }.z-chrome--footer-accordion .z-footer-column h2 button[aria-expanded="true"] i { transform: rotate(180deg); }
  .z-js .z-chrome--footer-accordion .z-footer-column ul[hidden] { display: none; }.z-footer-column ul { padding-bottom: 1rem; }.z-footer-bottom > .z-container { flex-wrap: wrap; padding-block: .85rem; }.z-footer-bottom nav { order: 2; width: 100%; margin-inline-start: 0; }.z-back-to-top { margin-inline-start: auto; }
}

/* Phase 9 centralized company contact details. */
.z-footer-contact{display:flex;flex-direction:column;gap:.45rem;margin-top:1rem;font-style:normal}.z-footer-contact a,.z-footer-contact span{color:inherit;text-decoration:none;opacity:.86}.z-footer-contact a:hover{opacity:1;text-decoration:underline}

/* Phase 10 structured content */
.z-content-archive__hero{padding:clamp(3.5rem,7vw,7rem) 0 3rem;background:linear-gradient(180deg,#fff,#f7f9fc);border-bottom:1px solid var(--z-border)}.z-content-archive__hero h1{margin:.5rem 0;color:var(--z-navy-950);font-size:clamp(2.2rem,5vw,4rem)}.z-content-archive__hero p{max-width:680px;color:var(--z-muted)}.z-content-archive__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;padding-block:3rem}.z-content-card{overflow:hidden;border:1px solid var(--z-border);border-radius:var(--z-radius-md);background:var(--z-surface);box-shadow:var(--z-shadow-sm)}.z-content-card__image{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--z-surface-soft)}.z-content-card__image img{width:100%;height:100%;object-fit:cover;transition:transform var(--z-transition)}.z-content-card:hover .z-content-card__image img{transform:scale(1.025)}.z-content-card__body{padding:1.35rem}.z-content-card__badge{display:inline-flex;margin-bottom:.75rem;padding:.25rem .65rem;border-radius:999px;background:#fff5dc;color:#9a6200;font-size:.8rem;font-weight:700}.z-content-card h2{margin:0 0 .65rem;color:var(--z-navy-950);font-size:1.25rem}.z-content-card h2 a,.z-content-card__link{text-decoration:none}.z-content-card p{margin:0 0 1rem;color:var(--z-muted)}.z-content-card__link{color:var(--z-navy-900);font-weight:700}.z-content-pagination{padding-bottom:3rem}.z-content-single__header{padding:clamp(3rem,7vw,6rem) 0;background:linear-gradient(180deg,#fff,#f7f9fc);border-bottom:1px solid var(--z-border)}.z-content-single__header-grid{display:grid;grid-template-columns:1fr .8fr;gap:3rem;align-items:center}.z-content-single__header h1{margin:.5rem 0;color:var(--z-navy-950);font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.25}.z-content-single__header p{max-width:720px;color:var(--z-muted);font-size:1.15rem}.z-content-single__header figure{margin:0;overflow:hidden;border-radius:var(--z-radius-lg);box-shadow:var(--z-shadow-md)}.z-content-single__header img{display:block;width:100%;height:auto}.z-content-single__body{max-width:900px;padding-block:3.5rem 5rem}.z-prose{line-height:2}.z-prose h2,.z-prose h3{color:var(--z-navy-950)}@media(max-width:1024px){.z-content-archive__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.z-content-archive__grid,.z-content-single__header-grid{grid-template-columns:1fr}.z-content-archive__grid{padding-block:1.5rem}.z-content-single__header figure{order:-1}.z-content-single__body{padding-block:2rem 3rem}}

/* Phase 11 taxonomies and related content. */
.z-term-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin:.85rem 0}.z-term-chip{display:inline-flex;align-items:center;min-height:30px;padding:.28rem .65rem;border:1px solid color-mix(in srgb,var(--z-chip-color,#0c1658) 18%,#fff);border-radius:999px;color:var(--z-chip-color,#0c1658);background:color-mix(in srgb,var(--z-chip-color,#0c1658) 8%,#fff);font-size:.78rem;font-weight:700;text-decoration:none}.z-term-chip:hover,.z-term-chip:focus-visible{border-color:var(--z-chip-color,#0c1658);outline:none}.z-term-chip--gold{--z-chip-color:#b67600}.z-term-chip--blue{--z-chip-color:#2f6fd8}.z-term-chip--green{--z-chip-color:#18845e}.z-term-chip--violet{--z-chip-color:#6d49bd}.z-term-chip--gray{--z-chip-color:#596273}.z-content-card .z-term-chips{margin:.1rem 0 .7rem}.z-content-card .z-term-chip{min-height:26px;padding:.2rem .5rem;font-size:.72rem}.z-related-content{padding-block:clamp(3rem,6vw,5rem);border-top:1px solid var(--z-border);background:var(--z-surface-soft)}.z-related-content__header{margin-bottom:1.5rem}.z-related-content__header h2{margin:.35rem 0 0;color:var(--z-navy-950);font-size:clamp(1.8rem,3vw,2.6rem)}.z-related-content__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.z-related-card{display:grid;grid-template-columns:92px 1fr;gap:1rem;align-items:center;min-height:120px;padding:1rem;border:1px solid var(--z-border);border-radius:var(--z-radius-md);background:#fff;box-shadow:var(--z-shadow-sm)}.z-related-card__image{display:block;aspect-ratio:1;overflow:hidden;border-radius:12px;background:var(--z-surface-soft)}.z-related-card__image img{width:100%;height:100%;object-fit:cover}.z-related-card span{color:var(--z-gold-700);font-size:.75rem;font-weight:700}.z-related-card h3{margin:.25rem 0 0;font-size:1rem;line-height:1.7}.z-related-card h3 a{color:var(--z-navy-950);text-decoration:none}.z-related-card h3 a:hover,.z-related-card h3 a:focus-visible{color:var(--z-gold-700);outline:none}@media(max-width:1024px){.z-related-content__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.z-related-content__grid{grid-template-columns:1fr}.z-related-card{grid-template-columns:76px 1fr}}

/* Phase 15: final responsive header and data-driven Mega Menu. */
.z-site-header{isolation:isolate}.z-site-header .z-header-inner{min-height:82px;transition:min-height .22s ease}.z-site-header.is-compact .z-header-inner{min-height:66px}.z-site-header .z-brand{flex:0 0 auto;transition:width .22s ease}.z-site-header.is-compact .z-brand{width:190px}.z-site-header.is-scrolled{border-bottom-color:rgb(218 224 237 / 92%);box-shadow:0 14px 38px rgb(12 22 88 / 9%)}body.admin-bar.z-appearance--sticky-header .z-site-header{top:32px}.z-nav-list{gap:clamp(.78rem,1.25vw,1.35rem)}.z-nav-list>li>a,.z-nav-product-entry>a{display:inline-flex;align-items:center;min-height:44px;color:var(--z-ink);font-size:.92rem;white-space:nowrap}.z-nav-item.is-active>a,.z-nav-item.is-active .z-nav-product-entry>a,.z-nav-list a[aria-current=page]{color:var(--z-navy-950);font-weight:700}.z-nav-item.is-active>a::after,.z-nav-item.is-active .z-nav-product-entry>a::after,.z-nav-list a[aria-current=page]::after{transform:scaleX(1)}.z-nav-list a:focus-visible,.z-mega-trigger:focus-visible,.z-mega-menu a:focus-visible,.z-mobile-menu a:focus-visible,.z-mobile-menu button:focus-visible{outline:3px solid rgb(31 98 220 / 26%);outline-offset:3px}.z-mega-menu{left:50%;right:auto;inset-block-start:calc(100% - 4px);width:min(1180px,calc(100vw - 32px));max-height:calc(100vh - 112px);overflow:auto;padding:0;border-radius:18px;transform:translateX(-50%);box-shadow:0 28px 80px rgb(6 11 87 / 18%)}.z-mega-menu__topline{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.1rem 1.35rem;border-bottom:1px solid var(--z-border);background:linear-gradient(90deg,#fff,#f8faff)}.z-mega-menu__topline p{max-width:680px;margin:.15rem 0 0;color:var(--z-muted);font-size:.82rem}.z-mega-menu__topline .z-eyebrow{color:var(--z-gold-700);font-size:.76rem;font-weight:800}.z-mega-menu__all{flex:0 0 auto;margin:0;padding:.55rem .8rem;border-radius:10px}.z-mega-menu__all:hover,.z-mega-menu__all:focus-visible{background:#fff5dc}.z-mega-menu__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:1.1rem 1.15rem 1.25rem}.z-mega-family{min-width:0;padding:.5rem 1.05rem 1rem;border:0;border-inline-start:1px solid var(--z-border);border-radius:0;background:transparent}.z-mega-family:last-child{border-inline-start:0}.z-mega-family.is-active{background:linear-gradient(180deg,color-mix(in srgb,var(--z-family-color) 7%,#fff),transparent)}.z-mega-family__heading{display:grid;grid-template-columns:6px minmax(0,1fr);gap:.65rem;align-items:center}.z-mega-family__mark{width:6px;height:34px;margin:0;border-radius:8px}.z-mega-family h2{margin:0;font-size:1rem}.z-mega-family h2 a{padding:.25rem 0;color:var(--z-navy-950);font-weight:800}.z-mega-family p{min-height:0;margin:.45rem 0 .65rem;padding-inline-start:.7rem;font-size:.76rem}.z-mega-family ul{gap:.15rem;padding-inline-start:.35rem}.z-mega-family li a{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:38px;padding:.35rem .5rem}.z-mega-family li a::after{content:"←";color:var(--z-family-color);opacity:0;transform:translateX(5px);transition:.18s}.z-mega-family li a:hover::after,.z-mega-family li a:focus-visible::after,.z-mega-family li a[aria-current=page]::after{opacity:1;transform:none}.z-mega-family li a[aria-current=page]{color:var(--z-navy-950);background:#fff;font-weight:700}.z-mega-family li small{max-width:74px;overflow:hidden;padding:.1rem .38rem;border-radius:99px;color:var(--z-family-color);background:color-mix(in srgb,var(--z-family-color) 9%,#fff);font-size:.64rem;text-overflow:ellipsis;white-space:nowrap}.z-mega-open{overflow-x:hidden}.z-mega-open::after{z-index:44;background:rgb(6 11 87 / 18%)}.z-mobile-menu__panel>header strong{color:var(--z-navy-950);font-size:.95rem}.z-mobile-nav-list>li.is-active>a,.z-mobile-products.is-active>div:first-child>a{color:var(--z-gold-700)}.z-mobile-nav-list>li.is-active>a::before,.z-mobile-products.is-active>div:first-child>a::before{content:"";display:inline-block;width:5px;height:5px;margin-inline-end:.55rem;border-radius:50%;background:var(--z-gold-600)}.z-mobile-products>div:first-child>button,[data-z-accordion-trigger]{min-width:44px;min-height:44px;cursor:pointer}.z-mobile-products>div:first-child>button svg,.z-mobile-family h2 button svg{transition:transform .2s ease}.z-mobile-products>div:first-child>button[aria-expanded=true] svg,.z-mobile-family h2 button[aria-expanded=true] svg{transform:rotate(180deg)}.z-mobile-family p{margin:-.25rem .75rem .55rem;color:var(--z-muted);font-size:.76rem;line-height:1.7}.z-mobile-family__all a{color:var(--z-family-color)!important;font-weight:800}.z-mobile-menu__cta{position:sticky;bottom:0;z-index:2;box-shadow:0 -12px 22px rgb(255 255 255 / 92%)}.z-mobile-menu__panel{overscroll-behavior:contain}.z-mobile-menu-open{touch-action:none}.z-site-header.is-navigation-overflow .z-primary-nav,.z-site-header.is-navigation-overflow .z-header-cta{display:none}.z-site-header.is-navigation-overflow .z-mobile-menu-trigger{display:grid;place-items:center;margin-inline-start:auto}.z-site-header.is-navigation-overflow .z-header-inner{justify-content:space-between}.z-site-header.is-navigation-overflow .z-brand{width:190px}
@media(max-width:1180px){.z-primary-nav,.z-header-cta{display:none}.z-mobile-menu-trigger{display:grid;place-items:center;width:46px;height:46px;margin-inline-start:auto;padding:0;border:1px solid var(--z-border);border-radius:12px;background:var(--z-surface)}.z-header-inner{justify-content:space-between}.z-brand{width:196px}.z-site-header.is-compact .z-brand{width:178px}}
@media(max-width:782px){body.admin-bar.z-appearance--sticky-header .z-site-header{top:46px}}
@media(max-width:639px){.z-site-header .z-header-inner{min-height:70px}.z-site-header.is-compact .z-header-inner{min-height:62px}.z-brand{width:174px}.z-site-header.is-compact .z-brand{width:158px}.z-mobile-menu__panel{width:min(92vw,390px);padding:.85rem}.z-mobile-menu__panel>header{position:sticky;top:0;z-index:3;margin:-.85rem -.85rem .25rem;padding:.85rem;border-bottom:1px solid var(--z-border);background:rgb(255 255 255 / 96%);backdrop-filter:blur(12px)}.z-mobile-nav-list>li>a,.z-mobile-products>div:first-child>a{min-height:50px;padding:.75rem .3rem}.z-mobile-menu__cta{margin:1rem -.1rem 0}}
@media(prefers-reduced-motion:reduce){.z-mega-family li a::after,.z-site-header .z-brand,.z-site-header .z-header-inner{transition:none}}

/* Phase 15 drawer rules are viewport-independent so measured overflow can switch navigation above the CSS breakpoint. */
.z-mobile-menu{display:block;position:fixed;z-index:100;inset:0}.z-mobile-menu[hidden]{display:none}.z-mobile-menu__backdrop{position:absolute;inset:0;background:rgb(6 11 87 / 42%);backdrop-filter:blur(4px)}.z-mobile-menu__panel{position:absolute;inset:0 0 0 auto;display:flex;flex-direction:column;width:min(88vw,410px);overflow-y:auto;padding:1rem;background:var(--z-surface);box-shadow:-18px 0 60px rgb(6 11 87 / 22%)}.z-mobile-menu__panel>header{display:flex;align-items:center;gap:.75rem;padding-bottom:1rem;border-bottom:1px solid var(--z-border)}.z-mobile-menu__panel>header img{width:48px;max-height:48px;object-fit:contain}.z-mobile-menu__panel>header>a{display:inline-flex}.z-mobile-menu__panel>header button{display:grid;place-items:center;width:44px;height:44px;margin-inline-start:auto;border:0;border-radius:10px;color:var(--z-navy-950);background:var(--z-surface-soft);font-size:1.7rem;cursor:pointer}.z-mobile-nav-list{margin:1rem 0;padding:0;list-style:none}.z-mobile-nav-list>li{border-bottom:1px solid var(--z-border)}.z-mobile-nav-list>li>a,.z-mobile-products>div:first-child>a{display:flex;align-items:center;min-height:52px;padding:.75rem .35rem;color:var(--z-navy-950);font-weight:600;text-decoration:none}.z-mobile-products>div:first-child{display:flex;align-items:center}.z-mobile-products>div:first-child>a{flex:1}.z-mobile-products>div:first-child>button{display:grid;place-items:center;border:0;color:var(--z-muted);background:transparent}.z-mobile-families{padding:.25rem 0 .8rem}.z-mobile-families[hidden]{display:none}.z-mobile-family{--z-family-color:#2f6fd8;margin-bottom:.5rem;border-inline-start:4px solid var(--z-family-color);border-radius:8px;background:var(--z-surface-soft)}.z-mobile-family--green{--z-family-color:#22956b}.z-mobile-family--purple{--z-family-color:#7754c9}.z-mobile-family--gold{--z-family-color:var(--z-gold-600)}.z-mobile-family h2{margin:0;font-size:.92rem}.z-mobile-family h2 button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem;border:0;color:var(--z-navy-950);background:transparent;text-align:right}.z-mobile-family ul{display:grid;gap:.15rem;margin:0;padding:0 .8rem .7rem;list-style:none}.z-mobile-family ul[hidden]{display:none}.z-mobile-family a{display:block;padding:.45rem;border-radius:7px;color:var(--z-muted);text-decoration:none}.z-mobile-family a:hover,.z-mobile-family a:focus-visible{color:var(--z-navy-950);background:#fff}.z-mobile-menu__cta{margin-top:auto;text-align:center}.z-mobile-menu-open{overflow:hidden}

/* Phase 16: production footer and shared CTA. */
.z-prefooter-cta{position:relative;overflow:hidden;padding-block:clamp(2.25rem,5vw,4rem);border-top:1px solid var(--z-border,#e4e8f0);background:#f8f9fd}.z-prefooter-cta::before{content:"";position:absolute;inset:auto -8% -90% auto;width:360px;aspect-ratio:1;border:70px solid rgb(6 11 87 / 5%);transform:rotate(18deg)}.z-prefooter-cta__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.45fr) auto;align-items:center;gap:clamp(1.5rem,4vw,4rem)}.z-prefooter-cta__copy{max-width:780px}.z-prefooter-cta__eyebrow{display:inline-flex;margin-bottom:.75rem;color:#a36600;font-size:.82rem;font-weight:800;letter-spacing:.02em}.z-prefooter-cta h2{max-width:760px;margin:0;color:var(--z-navy-950);font-size:clamp(1.65rem,3.2vw,2.75rem);line-height:1.45}.z-prefooter-cta p{max-width:700px;margin:1rem 0 0;color:#5f6880;font-size:1rem;line-height:2}.z-prefooter-cta__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.z-prefooter-cta .z-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.25rem;border:1px solid transparent;border-radius:var(--z-radius-md,12px);font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s,background-color .2s,color .2s}.z-prefooter-cta .z-button:hover{transform:translateY(-2px)}.z-prefooter-cta .z-button--primary{color:#fff;background:var(--z-navy-950);box-shadow:0 12px 28px rgb(6 11 87 / 18%)}.z-prefooter-cta .z-button--secondary{color:var(--z-navy-950);border-color:#c7cede;background:#fff}.z-prefooter-cta.is-gold{background:#e9a52a}.z-prefooter-cta.is-gold::before{border-color:rgb(6 11 87 / 9%)}.z-prefooter-cta.is-gold .z-prefooter-cta__eyebrow,.z-prefooter-cta.is-gold h2,.z-prefooter-cta.is-gold p{color:#07104c}.z-prefooter-cta.is-navy{border-color:rgb(255 255 255 / 10%);background:var(--z-navy-950)}.z-prefooter-cta.is-navy::before{border-color:rgb(255 255 255 / 5%)}.z-prefooter-cta.is-navy .z-prefooter-cta__eyebrow{color:#f0b544}.z-prefooter-cta.is-navy h2{color:#fff}.z-prefooter-cta.is-navy p{color:#cbd1e7}.z-prefooter-cta.is-navy .z-button--primary{color:#07104c;background:#e9a52a}.z-prefooter-cta.is-navy .z-button--secondary{color:#fff;border-color:rgb(255 255 255 / 24%);background:transparent}
.z-site-footer{position:relative}.z-footer-main{grid-template-columns:minmax(250px,.9fr) minmax(0,2fr);grid-template-areas:"brand columns" "newsletter newsletter"}.z-footer-brand{grid-area:brand}.z-footer-columns{grid-area:columns}.z-footer-newsletter{grid-area:newsletter;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);align-items:center;gap:2rem;margin-top:.5rem;padding:1.35rem 1.5rem;border:1px solid rgb(255 255 255 / 13%);border-radius:16px;background:rgb(255 255 255 / 5%)}.z-footer-newsletter h2{margin:0 0 .35rem;font-size:1rem}.z-footer-newsletter p{margin:0;color:#cbd1e7;font-size:.87rem;line-height:1.8}.z-footer-newsletter form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem}.z-footer-newsletter input[type=email]{width:100%;min-height:46px;padding:.65rem .9rem;border:1px solid rgb(255 255 255 / 18%);border-radius:11px;color:#111936;background:#fff;font:inherit}.z-footer-newsletter button{min-height:46px;padding:.65rem 1.1rem;border:0;border-radius:11px;color:#07104c;background:#e9a52a;font:inherit;font-weight:800;cursor:pointer}.z-footer-newsletter__consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:.5rem;color:#bfc6de;font-size:.78rem}.z-footer-newsletter__consent input{margin-top:.25rem}.z-footer-newsletter__status{grid-column:1/-1;min-height:1.35em;margin:0;color:#f0b544;font-size:.78rem}.z-footer-contact__item{display:flex;align-items:flex-start;gap:.55rem;line-height:1.8}.z-footer-contact__item>span:first-child{flex:0 0 1.1rem;color:#e9a52a;text-align:center}.z-footer-socials a{width:40px;height:40px}.z-footer-socials svg{width:18px;height:18px;fill:currentColor}.z-footer-column[data-source=content] h2::after{content:"";display:inline-block;width:5px;height:5px;margin-inline-start:.45rem;border-radius:50%;background:#4fbe8c;vertical-align:middle}.z-footer-licenses{display:grid;grid-template-columns:auto 1fr;gap:1.5rem}.z-footer-licenses h2{align-self:center;margin:0;color:#fff;font-size:.92rem}.z-footer-licenses>div{display:flex;align-items:center;gap:1rem}.z-footer-bottom button.z-back-to-top{border:1px solid rgb(255 255 255 / 18%);background:transparent;font:inherit;cursor:pointer}.z-footer-bottom button.z-back-to-top:hover,.z-footer-bottom button.z-back-to-top:focus-visible{border-color:#e9a52a;color:#07104c!important;background:#e9a52a;outline:none}.z-prefooter-cta a:focus-visible,.z-footer-newsletter input:focus-visible,.z-footer-newsletter button:focus-visible,.z-footer-socials a:focus-visible,.z-footer-column a:focus-visible{outline:3px solid rgb(233 165 42 / 38%);outline-offset:3px}
@media(max-width:980px){.z-prefooter-cta__inner{grid-template-columns:1fr}.z-prefooter-cta__actions{justify-content:flex-start}.z-footer-main{grid-template-columns:1fr;grid-template-areas:"brand" "columns" "newsletter"}.z-footer-newsletter{grid-template-columns:1fr}.z-footer-licenses{grid-template-columns:1fr}}
@media(max-width:639px){.z-prefooter-cta{padding-block:2.25rem}.z-prefooter-cta__actions{display:grid;grid-template-columns:1fr}.z-prefooter-cta .z-button{width:100%}.z-footer-brand p{line-height:1.9}.z-footer-newsletter{padding:1rem}.z-footer-newsletter form{grid-template-columns:1fr}.z-footer-newsletter__consent,.z-footer-newsletter__status{grid-column:1}.z-footer-licenses>div{flex-wrap:wrap}.z-footer-licenses img{width:62px;height:62px}}
@media(prefers-reduced-motion:reduce){.z-prefooter-cta .z-button{transition:none}.z-prefooter-cta .z-button:hover{transform:none}}
