/* Shared layout safeguards; approved glass and hover styles are preserved. */
img,video { max-width:100%; }
.wrap,.bar-in,.foot-in { min-width:0; }
.frs-home :is(.hero-grid,.company-points,.sol-grid,.ind-grid,.proc-grid,.contact-wrap,.field-row,.foot-grid)>* { min-width:0; }
.frs-home :is(.sol-list li,.ci-item p,.foot-col a,.stat .lbl),
.frs-document :is(p,li,.contact-card),.frs-careers :is(p,li) { overflow-wrap:break-word; }
.frs-home .ind-cta-action { display:block; }
.frs-home .ind h4 { margin:0;text-align:start; }
.frs-home .ind-cta { height:100%; }
.frs-home .btn,.frs-careers .btn { max-width:100%;white-space:normal;text-align:center;justify-content:center; }
.frs-home :is(.nav-phone,a[href^="tel:"],a[href^="mailto:"]) { unicode-bidi:isolate;direction:ltr; }
.frs-home .service-window__panels { overflow-y:auto;overscroll-behavior:contain; }
.frs-home .service-window__label { min-width:0;overflow-wrap:break-word; }
.frs-home .service-window__active { white-space:nowrap; }
.frs-home .sol-list li { padding-inline-start:26px;padding-inline-end:0; }
.frs-home .sol-list li::before { left:auto;right:auto;inset-inline-start:8px; }
.frs-home .btn svg { flex-shrink:0; }
.frs-document .bar-in,.frs-careers .bar-in { flex-wrap:wrap; }
.frs-document .bar-right,.frs-careers .bar-right { flex-wrap:wrap; }
@media(max-width:1100px) and (min-width:901px) {
 .frs-home .nav-links { display:none; }
 .frs-home .nav-inner { grid-template-columns:1fr auto;gap:12px; }
 .frs-home .hamb { display:flex;flex:none; }
 .frs-home .hero-grid { grid-template-columns:1fr;gap:32px; }
 .frs-home .hero-visual { width:100%;max-width:620px;justify-self:center;order:-1;height:auto; }
 .frs-home .hero-copy { width:100%;max-width:760px; }
}
@media(min-width:601px) and (max-width:1100px) {
 .frs-home :is(.hero-ctas,.foot-bottom) { flex-wrap:wrap; }
 .frs-home .foot-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:32px; }
 .frs-home .contact-wrap { grid-template-columns:minmax(0,1fr); }
 .frs-home .contact-info,.frs-home .contact-form { padding:32px; }
 .frs-home .frs-video-backdrop { aspect-ratio:16/9; }
}
@media(max-width:600px) {
 .frs-home .hero-ctas { display:flex;flex-wrap:wrap;gap:12px; }
 .frs-home :is(.sol-col,.proc,.why-metrics) { padding:24px 20px; }
 .frs-home .contact-info,.frs-home .contact-form { padding:28px 20px; }
 .frs-home .hero-stats { grid-template-columns:repeat(2,minmax(0,1fr));gap:20px; }
 .frs-home .service-window__bar { gap:7px;padding-inline:10px; }
 .frs-home .service-window__label { font-size:9px;letter-spacing:.06em; }
 .frs-home .service-window__active { font-size:9px;letter-spacing:.03em; }
 .frs-home .cert { padding:20px 10px; }
 .frs-home .cert-name { overflow-wrap:break-word; }
 .frs-home .foot-col a { overflow-wrap:anywhere; }
 .frs-careers .wrap,.frs-document .wrap,
 .frs-careers .bar-in,.frs-document .bar-in,
 .frs-careers .foot-in,.frs-document .foot-in { padding-inline:20px; }
 .frs-careers .bar-right,.frs-document .bar-right { gap:8px; }
 .frs-careers .back,.frs-document .back { padding:9px 12px; }
 .frs-careers .cta { padding:28px 20px; }
 input,textarea,select { font-size:16px;max-width:100%;min-width:0; }
}
@media(pointer:coarse) {
 .lang-btn,.lang-menu button,.back,.hamb { min-height:44px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

.error-languages { display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:28px; }
.error-languages button { font:inherit;font-size:13px;color:var(--text-2);background:transparent;border:1px solid var(--border);border-radius:100px;padding:8px 14px;min-height:44px;cursor:pointer; }
.error-languages button[aria-pressed="true"] { color:var(--text);border-color:var(--text-2); }
.error-languages button:focus-visible { outline:2px solid var(--text);outline-offset:3px; }
html[dir="rtl"] .frs-document .btn svg { transform:scaleX(-1); }
