/* R2.3: shared approved S2-R2 controls and readable flare labels. Extracted from existing approved proof CSS; no new artwork. */
/* Jason's readability refinement: crisp outlined live type, no raster text. */
.button .button-label,#services .spectrum-button .button-label {
 font-size:15px;font-weight:800;line-height:1.35;letter-spacing:.005em;
 color:#fff;-webkit-text-stroke:1.4px #020e1b;paint-order:stroke fill;
 text-shadow:none;background:transparent;
}
.button>span[aria-hidden="true"],#services .spectrum-button>span[aria-hidden="true"] {
 font-size:21px;font-weight:800;line-height:1;color:#fff;
 -webkit-text-stroke:1.4px #020e1b;paint-order:stroke fill;
 text-shadow:none;background:transparent;
}
.nav-row>.button .button-label {font-size:14px;}
@media(forced-colors:active){.button .button-label,#services .spectrum-button .button-label,.button>span[aria-hidden="true"],#services .spectrum-button>span[aria-hidden="true"]{color:ButtonText;-webkit-text-stroke:0;}}

/* S2-R2 final artwork: one full-width reflective curve, single source image. */
.button::before,.button::after,#services .spectrum-button::before,#services .spectrum-button::after {display:none;}
.button,.button:hover,.button.secondary,.button.secondary:hover,.site-header .button:hover,
#services .spectrum-button,#services .spectrum-button:hover {
 background-color:#031827;
 background-image:url('/assets/metallic-button-full-spectrum-single-curve-s2-r2.png');
 background-size:103% 263.3%;background-position:50% 46.4%;background-repeat:no-repeat;
}
#services .card .spectrum-button,#services .card .spectrum-button:hover {min-height:72px;padding:12px 38px;}
@media(forced-colors:active){.button,.button:hover,.button.secondary,.button.secondary:hover,.site-header .button:hover,#services .spectrum-button,#services .spectrum-button:hover{background:ButtonFace;color:ButtonText;}}

/* Jason: improve readability of labels between the distinct decorative flares. */
.hero .eyebrow,.section-heading .eyebrow {
 font-size:14px;font-weight:750;line-height:1.45;letter-spacing:.12em;
}
.hero .eyebrow,.dark .section-heading .eyebrow,.closing .section-heading .eyebrow {color:#c1e9ec;}
@media(max-width:760px){.hero .eyebrow,.section-heading .eyebrow{font-size:12px;line-height:1.45;letter-spacing:.09em;gap:9px;}}
.nav-row>.button,.nav-row>.button:hover {min-width:240px;max-width:240px;}
#services .services-more .spectrum-button {width:225px;flex-basis:225px;}
@media(max-width:760px){#services .services-more .spectrum-button{flex-basis:auto;}}
@media(max-width:480px){#services .services-more .spectrum-button{width:100%;}}
#who-we-help .card .button,#who-we-help .card .button:hover {width:100%;margin-top:auto;min-height:62px;padding:12px 38px;}
#connected-delivery .section-action {display:flex;flex-wrap:wrap;align-items:center;gap:16px;}
.paper .button,#who-we-help .card .button {box-shadow:inset 0 1px 1px #ffffffb0,inset 0 -1px 2px #0006,0 3px 6px #08284526;}
.paper .button:hover,#who-we-help .card .button:hover {box-shadow:inset 0 0 0 1px #fff,0 0 0 2px #07517a66,0 3px 6px #08284526;}
.paper .button:focus-visible,#who-we-help .card .button:focus-visible {outline:3px solid #07517a;outline-offset:4px;}
.menu-toggle {
 background:#031827 url('/assets/metallic-button-full-spectrum-single-curve-s2-r2.png') 50% 46.4% / 103% 263.3% no-repeat;
 color:#fff!important;border:1px solid #b3ced5;border-radius:4px;
 min-width:78px;min-height:48px;padding:10px;font-size:14px;font-weight:800;
 -webkit-text-stroke:1px #020e1b;paint-order:stroke fill;text-shadow:none;
}
.menu-toggle:focus-visible {outline:3px solid #fff;outline-offset:3px;}
@media(max-width:760px){#connected-delivery .section-action .button{width:100%;}}
@media(forced-colors:active){.menu-toggle{background:ButtonFace;color:ButtonText!important;-webkit-text-stroke:0;}}

/* Maintain a centered live label and matching arrow without masks; protect small cards. */
.button .button-label {background:transparent;box-shadow:none;}
.nav-row>.button,.nav-row>.button:hover {min-width:225px;max-width:225px;padding:12px 20px;gap:8px;}
.nav-row>.button .button-label {font-size:13px;padding:0;flex:none;}
.nav-row>.button>span[aria-hidden="true"] {position:static;transform:none;padding:0;flex:none;}
.card>.button {align-self:stretch;max-width:100%;margin-top:auto;min-height:62px;padding:12px 38px;}
.hero-inner .eyebrow {white-space:normal;}
@media(max-width:480px){.hero-inner .eyebrow:before,.hero-inner .eyebrow:after{flex-basis:24px;width:24px}}

/* MENU-01 â€” Jason authorized 6 November 2026: readable navy-to-copper rows.
   Solid text shades on approved silver; dark header and button art unchanged. */
@media screen and (max-width:1300px) {
 .site-header #navigation.open {
  background:var(--surface-silver,#e3ebf1);border:1px solid #b5c6d1;
  border-radius:5px;padding:8px;margin:4px 0 18px;gap:0;
  box-shadow:0 8px 22px #0003;
 }
 .site-header #navigation>a {--menu-tone:#082845;}
 .site-header #navigation>a:nth-child(2) {--menu-tone:#07517a;}
 .site-header #navigation>a:nth-child(3) {--menu-tone:#12646a;}
 .site-header #navigation>a:nth-child(4) {--menu-tone:#526575;}
 .site-header #navigation>a:nth-child(5) {--menu-tone:#685c52;}
 .site-header #navigation>a:nth-child(6) {--menu-tone:#80512f;}
 .site-header #navigation>a:nth-child(7) {--menu-tone:#874628;}
 .site-header #navigation>a:nth-child(8) {--menu-tone:#793821;}
 .site-header #navigation>a,
 .site-header #navigation>a:hover,
 .site-header #navigation>a[aria-current] {
  color:var(--menu-tone);background:transparent;border:0;border-left:3px solid transparent;
  min-height:49px;padding:12px 16px;line-height:1.45;font-size:18px;font-weight:650;
  text-shadow:none;-webkit-text-stroke:0;text-decoration:none;
 }
 .site-header #navigation>a[aria-current="page"] {
  border-left-color:currentColor;background:#f7f9fb;
  text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px;
 }
 .site-header #navigation>a:hover {background:#f7f9fb;text-decoration:underline;text-underline-offset:5px;}
 .site-header #navigation>a:focus-visible {
  background:#fff;outline:3px solid #07517a;outline-offset:-3px;box-shadow:none;
  text-decoration:underline;text-underline-offset:5px;
 }
}
/* FOOTER-LOGO-01 â€” more usable approved artwork, native aspect ratio. */
footer .footer-grid {grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr) minmax(0,1fr);gap:48px;}
footer .footer-grid>div {min-width:0;}
footer .footer-logo {width:100%;max-width:520px;height:auto;}
@media(max-width:900px) {
 footer .footer-grid {grid-template-columns:1fr 1fr;gap:32px;}
 footer .footer-grid>div:first-child {grid-column:1/-1;}
 footer .footer-logo {max-width:460px;}
}
@media(max-width:480px) {
 footer .footer-grid {grid-template-columns:1fr;gap:28px;}
 footer .footer-logo {max-width:100%;}
}
@media(forced-colors:active) {
 .site-header #navigation.open {background:Canvas;border-color:CanvasText;}
 .site-header #navigation>a,.site-header #navigation>a:hover,
 .site-header #navigation>a[aria-current] {color:LinkText;background:Canvas;}
 .site-header #navigation>a:focus-visible {outline-color:Highlight;}
}

/* CONTACT-LAYOUT-01 — clear form and next-step sidebar; no internal review copy. */
#inquiry .contact-grid {grid-template-columns:minmax(0,2fr) minmax(270px,1fr);gap:36px;align-items:start;}
#inquiry-form {padding:30px;background:#fafbfc;border:1px solid #c8d2dc;border-radius:5px;min-width:0;}
#inquiry-form .form-required {font-size:14px;font-weight:700;margin-bottom:10px;color:#082845;}
#inquiry-form .contact-help {font-size:15px;line-height:1.65;color:#526575;margin-bottom:28px;}
#inquiry-form .form-pair {gap:22px;}
#inquiry-form input:not([type=checkbox]),#inquiry-form textarea {width:100%;min-height:48px;background:#fff;border-radius:3px;}
#inquiry-form fieldset {margin:12px 0 28px;min-width:0;}
#interest-help {margin:4px 0 18px;font-size:15px;color:#526575;}
#inquiry-form .interest-grid {gap:12px 20px;}
#inquiry-form .interest-grid label {display:flex;align-items:flex-start;gap:10px;min-height:44px;line-height:1.5;font-size:15px;}
#inquiry-form input[type=checkbox] {flex:0 0 24px;width:24px;height:24px;margin-top:3px;accent-color:#07517a;}
#inquiry-form button[type=submit] {min-width:245px;}
#inquiry-form #form-status:not(:empty) {margin:20px 0 0;padding:16px;background:#e3ebf1;border-left:3px solid #07517a;}
#inquiry .contact-grid>aside {padding:28px;background:#e3ebf1;border-top:3px solid #905022;border-radius:4px;}
#inquiry .contact-grid>aside h2 {font-size:27px;line-height:1.2;}
#inquiry .contact-grid>aside p {font-size:16px;}
#inquiry .contact-grid>aside a {overflow-wrap:anywhere;}
@media(max-width:900px){#inquiry .contact-grid{grid-template-columns:1fr;}#inquiry .contact-grid>aside{max-width:none;}}
@media(max-width:600px){#inquiry-form{padding:22px 18px;}#inquiry-form .form-pair,#inquiry-form .interest-grid{grid-template-columns:1fr;}#inquiry-form button[type=submit]{width:100%;min-width:0;}#inquiry .contact-grid>aside{padding:24px;}}

/* SERVICES-CONSOLIDATE-01: accepted S1–S3; latest interim incorporation instruction. */
/* SERVICES-S2-R1: isolated catalog proposal. Shared approved artwork stays unchanged. */
#service-catalog .cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
#service-catalog .card{padding:28px;min-width:0;}
#service-catalog .card h3{font-size:22px;line-height:1.28;letter-spacing:-.02em;}
#service-catalog .card p{font-size:16px;line-height:1.65;margin-bottom:26px;}
#service-catalog .catalog-intro{max-width:780px;font-size:18px;line-height:1.65;color:#526575;}
#service-catalog .card>.button{min-height:62px;padding:12px 34px;}
@media(max-width:1100px){#service-catalog .cards{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){#service-catalog .cards{grid-template-columns:1fr;}#service-catalog .card{padding:24px;}#service-catalog .card h3{font-size:21px;}}

/* SERVICES-S3-R1 isolated proposed section. Approved artwork unchanged. */
#our-approach .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
#our-approach .card{padding:28px;min-width:0;}
#our-approach .card h3{font-size:23px;line-height:1.25;}
#our-approach .card p{font-size:17px;line-height:1.65;margin-bottom:0;}
#our-approach .approach-intro{max-width:900px;font-size:18px;line-height:1.65;}
#our-approach .approach-note{max-width:1000px;margin-top:30px;font-size:17px;line-height:1.65;}
@media(max-width:700px){#our-approach .cards{grid-template-columns:1fr;}#our-approach .card{padding:24px;}#our-approach .card h3{font-size:21px;}}

#questions .faq summary{font-size:19px;line-height:1.45;}#questions .faq p{font-size:17px;line-height:1.7;}

/* Reserve equal side space for centered service labels and fixed arrows. */
#service-catalog .card>.button{padding-inline:48px;min-height:70px;}
#service-catalog .card>.button .button-label{min-width:0;max-width:100%;padding:0;flex:0 1 auto;white-space:normal;line-height:1.35;}


/* WEB-VIS-01 — Jason-directed consistency repair, 7 November 2026.
   Distinct approved flare artwork is unchanged; only placement scales.
   One material progression for every card/panel accent, not UI status colors. */
@media screen {
 :root { --card-accent:linear-gradient(90deg,#07517a 0%,#068eae 18%,#0a9ea8 34%,#d4dee5 52%,#e0a56b 72%,#9d5631 88%,#793821 100%); --card-accent-height:4px; }
 .hero .eyebrow,.section-heading .eyebrow {
  --flare-width:64px;
  display:grid;grid-template-columns:var(--flare-width) minmax(0,auto) var(--flare-width);
  align-items:center;justify-content:start;column-gap:12px;
  width:fit-content;max-width:100%;text-align:center;text-wrap:balance;
  white-space:normal;font-size:14px;font-weight:750;line-height:1.5;letter-spacing:.08em;
 }
 .hero-feature .eyebrow {--flare-width:64px;column-gap:10px;letter-spacing:.06em;}
 .hero .eyebrow::before,.hero .eyebrow::after,
 .section-heading .eyebrow::before,.section-heading .eyebrow::after {
  content:"";display:block;width:var(--flare-width);height:auto;aspect-ratio:26 / 3;
  min-width:0;align-self:center;background-color:transparent;
  background-size:contain;background-position:center;background-repeat:no-repeat;
  filter:none;transform:none;opacity:1;
 }
 .hero .eyebrow::before,.section-heading .eyebrow::before {background-image:url('/assets/flare-left-p23.svg');}
 .hero .eyebrow::after,.section-heading .eyebrow::after {background-image:url('/assets/flare-right-p23.svg');}
 .section-heading .eyebrow:empty {display:none;}
 .section .card,.assessment-card,.tech-panel,.takeaways,#education .learning-panel,
 .technology-stages article,.lifecycle>li,#inquiry .contact-grid>aside {
  position:relative;min-width:0;border-top-width:0;
 }
 .section .card::before,.service-band .card::before,.assessment-card::before,
 .tech-panel::before,.takeaways::before,#education .learning-panel::before,
 .technology-stages article::before,.lifecycle>li::before,#inquiry .contact-grid>aside::before {
  content:"";display:block;position:absolute;inset:0 0 auto;
  width:100%;height:var(--card-accent-height);background:var(--card-accent);
  border-radius:inherit;pointer-events:none;
 }
 #services.service-band .card {padding-top:24px;}
 .hero-copy,.section-heading,.split>*,.cards>* {min-width:0;}
 @media(max-width:760px) {
  .hero .eyebrow,.section-heading .eyebrow {--flare-width:36px;column-gap:9px;font-size:13px;letter-spacing:.06em;}
 }
 @media(max-width:480px) {
  .hero .eyebrow,.section-heading .eyebrow {--flare-width:22px;column-gap:7px;font-size:12px;letter-spacing:.045em;}
 }
 @media(forced-colors:active) {
  .hero .eyebrow::before,.hero .eyebrow::after,.section-heading .eyebrow::before,.section-heading .eyebrow::after {background:none;border-top:1px solid CanvasText;aspect-ratio:auto;height:0;}
  .section .card::before,.assessment-card::before,.tech-panel::before,.takeaways::before,#education .learning-panel::before,.technology-stages article::before,.lifecycle>li::before,#inquiry .contact-grid>aside::before {background:CanvasText;}
 }
}

/* R162-M02: preserve review status spacing under self-only CSP. */
.review-current-status{padding:32px 0;}

/* Preserve the private review index spacing under CSP. */
.review-index-spacing{padding:24px 0}
