/* Final interaction layer: light surfaces, native disclosures, stable geometry. */
:root {
  --glass-control: rgba(205,232,247,.075);
  --glass-highlight: rgba(219,244,255,.13);
  --glass-line: rgba(211,238,250,.18);
  --glass-inset: inset 0 1px 0 rgba(255,255,255,.12), inset 0 -1px 0 rgba(0,0,0,.13);
}
body { animation: none !important; }
.glass-icon { display: inline-block; width: 20px; height: 20px; flex: 0 0 20px; vertical-align: middle; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; pointer-events: none; }
body :is(.btn,.read-btn,.service-btn,.shop-btn,.apply-btn,.submit-btn,.cta-button,.product-quote-btn,.catalogue-quote-link,.pev-page-button,.pev-motion-toggle,.button,.back-link,.fleet-control-buttons button,.glass-solution-trigger,.glass-dialog-close) {
  border-radius: 999px; border: 1px solid var(--glass-line);
  box-shadow: var(--glass-inset); backdrop-filter: blur(18px) saturate(130%); -webkit-backdrop-filter: blur(18px) saturate(130%);
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease !important;
}
/* Positional transforms on the mobile menu toggle remain owned by navigation. */
body :is(.btn,.read-btn,.service-btn,.shop-btn,.apply-btn,.submit-btn,.cta-button,.product-quote-btn,.catalogue-quote-link,.pev-page-button,.pev-motion-toggle,.button,.back-link,.fleet-control-buttons button,.glass-solution-trigger,.glass-dialog-close):is(:hover,:active),
body :is(.btn,.read-btn,.service-btn):hover > span,
body :is(.product-card,.job-card,.details-column,.logo):hover,
.original-home .home-service:hover .home-service-image,
.original-home .about-img:hover img,
body .solution-related-card:hover img,
body .product-card:hover .product-icon-tile,
body .category-banner:hover img,
body :is(.feature-card,.document-item):hover { transform: none !important; }
body :is(.product-card,.job-card,.details-column,.home-service-image,.solution-related-card img) { transition-property: border-color, background-color, box-shadow, opacity !important; }
body :is(.pev-service-panel,.is-enhanced .home-service:not([hidden])) { animation: none !important; transform: none !important; }
.pev-ripple { display: none !important; }
body :is(button,summary,a):focus-visible { outline: 2px solid var(--accent-2,#67e8a6); outline-offset: 4px; }
.glass-nav-trigger > .glass-icon { width: 15px; height: 15px; flex-basis: 15px; margin-left: 3px; }
.glass-nav-trigger::before, .glass-nav-trigger::after, .glass-nav-trigger > i { display: none !important; }
.glass-nav-trigger[aria-expanded='true'] > .glass-icon { rotate: 180deg; }
body .fleet-control-buttons button { display: inline-flex; align-items: center; justify-content: center; width: 44px; min-height: 44px; padding: 10px; border-color: transparent; background: transparent; }
body .fleet-panel { border-radius: 22px; border-color: var(--glass-line); background: rgba(18,29,39,.56); }
body .fleet-stage.is-enhanced > .fleet-panel { background: #111e28; }
body .fleet-content { background: linear-gradient(135deg,rgba(189,233,246,.025),transparent); }
/* Also compact without JavaScript: the complete source copy remains readable. */
body .solution-use-cases { display: block; border-top: 1px solid var(--glass-line); }
body .solution-use-card { display: block; padding: 22px 4px; border: 0; border-bottom: 1px solid var(--glass-line); border-radius: 0; background: transparent; box-shadow: none; }
body .solution-use-card > svg { width: 26px; height: 26px; float: left; margin: 0 18px 12px 0; }
body .solution-use-card h3 { margin: 0; font-size: 1rem; font-weight: 550; line-height: 1.5; }
body .solution-use-card > p { margin: 10px 0 0 44px; max-width: 82ch; }
body .solution-use-card:has(.glass-use-case) { padding: 0; }
.glass-use-case summary { list-style: none; display: flex; align-items: center; gap: 18px; min-height: 78px; padding: 18px 12px; border-radius: 12px; cursor: pointer; color: var(--text,#e9eef2); }
.glass-use-case summary::-webkit-details-marker { display: none; }
.glass-use-case summary > svg { width: 26px; height: 26px; flex: 0 0 26px; margin: 0; }
.glass-use-case summary .glass-chevron { width: 18px; height: 18px; flex-basis: 18px; margin-left: auto; color: var(--muted,#b8c3cc); }
.glass-use-case[open] summary .glass-chevron { rotate: 180deg; }
.glass-use-body { padding: 0 56px 24px; }
body .glass-use-body p { max-width: 85ch; font-size: .92rem; line-height: 1.7; }
.glass-use-case::details-content { interpolate-size: allow-keywords; transition: height .22s ease, content-visibility .22s allow-discrete; height: 0; overflow: clip; }
.glass-use-case[open]::details-content { height: auto; }
body .solution-related { padding-block: 26px 44px; }
.glass-solution-trigger { display: inline-flex; align-items: center; justify-content: center; gap: 14px; padding: 14px 22px; min-height: 50px; font-family: inherit; font-size: .88rem; font-weight: 550; color: var(--text,#e9eef2); background: var(--glass-control); cursor: pointer; }
.glass-solution-trigger > .glass-icon:last-child { margin-left: 14px; }
body .solution-related-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 18px; }
body .solution-related-card { min-height: 90px; display: flex; align-items: center; gap: 18px; padding: 12px 4px; border: 0; border-bottom: 1px solid var(--glass-line); border-radius: 0; background: transparent; overflow: visible; }
body .solution-related-card::after { display: none; }
body .solution-related-card img { position: static; width: 112px; height: 64px; flex: 0 0 112px; object-fit: cover; border-radius: 10px; opacity: 1; }
body .solution-related-card > span { flex: 1; padding: 0; font-size: .92rem; }
.glass-solution-dialog { box-sizing: border-box; position: fixed; inset: 0; margin: auto; padding: 24px; width: min(580px,calc(100% - 32px)); max-width: calc(100% - 32px); max-height: min(720px,calc(100dvh - 48px)); overflow: auto; overscroll-behavior: contain; border: 1px solid rgba(217,240,252,.25); border-radius: 28px; background: rgba(18,30,40,.91); color: var(--text,#e9eef2); box-shadow: var(--glass-inset),0 28px 95px rgba(0,0,0,.45); backdrop-filter: blur(28px) saturate(140%); -webkit-backdrop-filter: blur(28px) saturate(140%); }
.glass-solution-dialog:not([open]) { display: none; }
.glass-solution-dialog::backdrop { background: rgba(3,9,14,.48); backdrop-filter: blur(7px); -webkit-backdrop-filter: blur(7px); }
.glass-dialog-header { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 14px; }
.glass-dialog-header h2 { margin: 0; font-size: 1.25rem; font-weight: 600; letter-spacing: -.025em; }
.glass-dialog-close { flex: 0 0 44px; width: 44px; height: 44px; display: grid; place-items: center; background: var(--glass-control); color: inherit; cursor: pointer; }
body .glass-solution-dialog .solution-related-grid { grid-template-columns: minmax(0,1fr); gap: 0; }
body .glass-solution-dialog .solution-related-card { padding-inline: 8px; border-radius: 12px; }
@media (hover:hover) {
  body :is(.glass-solution-trigger,.glass-dialog-close,.fleet-control-buttons button,.pev-page-button,.pev-motion-toggle):hover { background: var(--glass-highlight); border-color: rgba(196,243,240,.4); box-shadow: inset 0 1px 0 rgba(255,255,255,.21),0 0 18px rgba(87,210,198,.05); }
  .glass-use-case summary:hover, body .solution-related-card:hover { background: rgba(208,236,249,.045); }
}
body :is(.glass-solution-trigger,.glass-dialog-close,.fleet-control-buttons button):active { background: rgba(183,233,244,.16); box-shadow: inset 0 1px 4px rgba(0,0,0,.2); }
@media (max-width:650px) {
  body .solution-related-grid { grid-template-columns: minmax(0,1fr); }
  .glass-solution-dialog { inset: auto 0 0; margin: 0 auto; width: 100%; max-width: 100%; max-height: calc(100dvh - 20px); border-radius: 26px 26px 0 0; padding: 20px max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)); }
  .glass-use-case summary { gap: 14px; padding-inline: 4px; }
  .glass-use-body { padding-inline: 44px 6px; }
  .glass-solution-trigger { width: 100%; gap: 10px; padding-inline: 16px; }
  .glass-solution-trigger > .glass-icon:last-child { margin-left: auto; }
}
@media (prefers-reduced-motion:reduce) { .glass-use-case::details-content { transition: none; } }
.pev-motion-paused .glass-use-case::details-content { transition: none; }
@media (prefers-reduced-transparency:reduce) {
  body :is(.btn,.read-btn,.service-btn,.shop-btn,.apply-btn,.submit-btn,.cta-button,.product-quote-btn,.catalogue-quote-link,.pev-page-button,.pev-motion-toggle,.button,.back-link) { backdrop-filter: none; -webkit-backdrop-filter: none; }
  body :is(.pev-page-button,.pev-motion-toggle,.back-link) { background-color: #14212c; color: #e9eef2; }
  body :is(.fleet-control-buttons,.fleet-panel,.glass-solution-dialog,.glass-solution-trigger,.glass-dialog-close,.fleet-control-buttons button) { background: #14212c; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .glass-solution-dialog::backdrop { backdrop-filter: none; -webkit-backdrop-filter: none; background: rgba(3,9,14,.85); }
}
@media (forced-colors:active) {
  body .fleet-stage.is-enhanced > .fleet-panel { background: Canvas; }
  body :is(.btn,.read-btn,.service-btn,.shop-btn,.apply-btn,.submit-btn,.cta-button,.product-quote-btn,.catalogue-quote-link,.pev-page-button,.pev-motion-toggle,.button,.back-link) { backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none; }
  body :is(.fleet-control-buttons,.fleet-panel,.glass-solution-dialog,.glass-solution-trigger,.glass-dialog-close,.fleet-control-buttons button,.glass-use-case,.solution-related-card) { background: Canvas; color: CanvasText; border-color: CanvasText; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .glass-solution-dialog::backdrop { backdrop-filter: none; -webkit-backdrop-filter: none; }
}

/* Pointer-local luminance sits over the original fill; it never changes geometry. */
@media (hover: hover) and (pointer: fine) {
  body [data-glass-pointer] {
    background-image: radial-gradient(140px circle at var(--glass-pointer-x,50%) var(--glass-pointer-y,50%), rgba(255,255,255,.23), rgba(225,246,255,.08) 42%, transparent 72%), var(--glass-pointer-base,none) !important;
    border-color: rgba(225,244,255,.34);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.24), inset 0 -1px 0 rgba(0,0,0,.12), 0 0 15px rgba(176,226,247,.045);
  }
}
@media (prefers-reduced-motion: reduce), (prefers-reduced-transparency: reduce) {
  body [data-glass-pointer] { background-image: var(--glass-pointer-base,none) !important; }
}
@media (forced-colors: active) {
  body [data-glass-pointer] { background-image: none !important; }
}
