/* Shared header/footer refinement; container width and horizontal gutters unchanged. */
html{scroll-padding-top:88px;scrollbar-gutter:stable}
header{position:sticky;top:0;z-index:100;height:72px;background:#fff;gap:24px}
header .brand,.site-footer .footer-brand{font-family:Arial,Helvetica,sans-serif;font-size:24px;font-weight:600;letter-spacing:-1.1px;line-height:1;white-space:nowrap}
header nav,header .nav-cta,html[lang] header .nav-cta,header .language-switcher,header .language-switcher a{font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.4}
header nav{gap:24px;white-space:nowrap}
header .header-actions{flex-direction:row;align-items:center;gap:20px;max-width:none}
header .nav-cta{padding:6px 0;white-space:nowrap}
header .language-switcher a{padding:10px 2px}
html:has(#contact-dialog[open]){overflow:hidden}
@media(max-width:1100px){header{gap:16px}header .brand,.site-footer .footer-brand{font-size:22px}header nav{gap:16px}header .header-actions{gap:12px}header nav,header .nav-cta,html[lang] header .nav-cta,header .language-switcher,header .language-switcher a{font-size:13px}}
@media(min-width:601px) and (max-width:900px){header{height:auto;min-height:88px;flex-wrap:wrap;padding:12px 0;gap:8px 16px}header .header-actions{margin-left:auto}header nav{order:3;width:100%;justify-content:center}html{scroll-padding-top:108px}}
@media(max-width:600px){header{height:auto;min-height:80px;flex-wrap:wrap;gap:8px;padding:12px 0}header .brand,.site-footer .footer-brand{font-size:21px}header .header-actions{width:100%;justify-content:space-between;gap:12px}header .nav-cta,html[lang] header .nav-cta,header .language-switcher,header .language-switcher a{font-size:12px}header .language-switcher a{padding:6px 3px}html{scroll-padding-top:108px}}
/* UI 03: full-bleed backdrop, unchanged inner header geometry. */
header{isolation:isolate}
header::before{content:"";position:absolute;inset:0;z-index:-1;background:#fff;box-shadow:0 0 0 100vmax #fff;clip-path:inset(0 -100vmax);pointer-events:none}
#process{border-top:0}
#services .service-details>.chapter-lead{margin:0 0 18px;font-size:23px;line-height:1.35;letter-spacing:-.025em;color:#171717}
.hero .button,.final-project .button{justify-content:center;min-width:280px}
.cookie-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px;line-height:1.5;margin:24px 0}
.cookie-table caption{text-align:left;font-weight:600;margin-bottom:12px}
.cookie-table th,.cookie-table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere}
.cookie-table th:first-child{width:18%}
@media(max-width:850px){#services .service-details>.chapter-lead{font-size:21px}}
@media(max-width:600px){#services .service-details>.chapter-lead{font-size:22px}.hero .button,.final-project .button{min-width:0;width:auto;max-width:100%}.cookie-table{font-size:13px}.cookie-table th,.cookie-table td{padding:10px 5px}}

/* Service-category strip: remove only its generated arrow separators. */
.ribbon span+span::before{content:none;margin:0}

/* Final footer: copyright and existing legal links share one row. */
.site-footer .footer-top{align-items:center;flex-wrap:wrap}
.site-footer .footer-copyright{margin:0}
@media(max-width:600px){.site-footer .footer-top{align-items:flex-start}.site-footer .footer-copyright{margin:0}}
