/* Production refinements to the approved SWS layout system. */
.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-fallback{font-size:14px;line-height:1.5;margin-top:18px}.form-fallback a{text-decoration:underline}.form-success:focus{outline:3px solid var(--orange);outline-offset:6px}
.sector-index .index-entry{grid-template-columns:54px 1fr 1.15fr;gap:28px;min-height:0}.sector-index .index-thumbnail{width:48px;height:48px;object-fit:contain;margin-top:4px}.sector-index .index-title{align-self:start}
.about-landscape{margin:0;min-width:0}.about-landscape>img{display:block;width:100%;aspect-ratio:1;object-fit:cover;object-position:left center}.about-landscape figcaption{font-size:14px;line-height:1.5;margin-top:12px}.about-copy .based-location{font-size:20px;font-weight:600;margin:0 0 20px}.team-intro{font-size:20px;line-height:1.6;max-width:850px;margin-bottom:40px}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px 56px}.experience-grid article{border-top:1px solid var(--line);padding-top:26px;display:grid;grid-template-columns:48px 1fr;gap:18px 22px;align-items:start}.experience-grid img{width:48px;height:48px}.experience-grid h3{font-size:28px;line-height:1.15;align-self:center}.experience-grid p{grid-column:2;font-size:18px;line-height:1.55;max-width:44ch}.team-closing{font-size:19px;line-height:1.5;margin-top:38px;max-width:65ch}.contact-channel a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.footer-contact{display:flex;align-items:center;flex-wrap:wrap;gap:18px 32px;padding:26px 0;border-top:1px solid rgba(255,244,225,.25);font-size:16px}.footer-contact>a{text-decoration:underline;text-underline-offset:4px}.footer-contact .footer-legal{margin-left:auto;padding:0;border:0;display:flex;gap:24px}.company-details{font-size:14px!important;line-height:1.6!important;max-width:100ch;padding:0 0 12px;margin:0!important}.site-footer .company-details{opacity:1}
.legal-page .information-hero .hero-foot{display:block;max-width:830px}.legal-page .hero-lead{max-width:65ch}.legal-page .information-hero h1{max-width:18ch}.legal-simple .legal-content{max-width:900px}.legal-table-wrap{overflow-x:auto;margin:22px 0;border:1px solid var(--line)}.legal-table-wrap:focus-visible{outline:3px solid var(--atlantic);outline-offset:4px}.legal-table-wrap table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.5}.legal-table-wrap th,.legal-table-wrap td{text-align:left;vertical-align:top;padding:16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:150px}.legal-table-wrap th{background:var(--stone);font-weight:700}.legal-table-wrap tr:last-child td{border-bottom:0}.legal-table-wrap th:last-child,.legal-table-wrap td:last-child{border-right:0}.legal-content section:last-child{margin-bottom:0}.error-page .information-hero{min-height:620px}.error-page .hero-offer .text-link{display:table;margin-top:16px}
@media(max-width:1100px){.sector-index .index-entry{grid-template-columns:44px 1fr 1fr;gap:24px}.experience-grid{gap:32px}.experience-grid h3{font-size:25px}}
@media(max-width:800px){.sector-index .index-entry{grid-template-columns:44px 1fr;gap:16px 24px}.sector-index .index-detail{grid-column:2}.experience-grid{grid-template-columns:1fr}.team-intro{font-size:18px}.footer-contact .footer-legal{margin-left:0}.experience-grid p{max-width:60ch}.legal-table-wrap td,.legal-table-wrap th{font-size:16px}}
@media(max-width:540px){.sector-index .index-entry{grid-template-columns:32px 1fr;gap:12px 18px;padding:26px 0}.sector-index .index-thumbnail{width:32px;height:32px}.sector-index .index-detail{grid-column:1/-1}.about-landscape>img{aspect-ratio:1}.about-copy .based-location{font-size:18px}.team-intro{font-size:17px;line-height:1.6;margin-bottom:30px}.experience-grid article{grid-template-columns:36px 1fr;gap:16px}.experience-grid img{width:36px;height:36px}.experience-grid h3{font-size:24px}.experience-grid p{grid-column:1/-1;font-size:16px}.team-closing{font-size:17px;margin-top:28px}.footer-contact{display:block;padding:24px 0}.footer-contact>a{display:table;margin:0 0 16px}.footer-contact .footer-legal{gap:24px;margin-top:24px}.company-details{font-size:14px!important}.legal-page .information-hero h1{max-width:13ch}.legal-index{max-height:none}.legal-table-wrap{margin:20px -2px}.legal-table-wrap th,.legal-table-wrap td{padding:12px;min-width:145px}.error-page .information-hero{min-height:600px}}

/* Keep the legal table scroll region inside narrow grid tracks. */
.legal-layout>.legal-index,.legal-layout>.legal-content{min-width:0}
.legal-table-wrap{min-width:0;max-width:100%}
@media(max-width:800px){.legal-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:540px){.legal-table-wrap{margin:20px 0}}

/* Approved Gate 1 refinement: a desktop table, stacked cards below 600px.
   Explicit table semantics and its real headers remain for assistive technology. */
.legal-cell-label{display:none}
@media(max-width:599.98px){
 .legal-table-wrap{overflow:visible;border:0;margin:24px 0}
 .legal-table-wrap table{display:block;min-width:0;width:100%}
 .legal-table-wrap thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
 .legal-table-wrap tbody{display:grid;gap:16px;width:100%}
 .legal-table-wrap tbody tr{display:block;min-width:0;padding:18px;border:1px solid var(--line)}
 .legal-table-wrap tbody td{display:block;min-width:0;width:auto;margin:0 0 18px;padding:0;border:0;font-size:16px;line-height:1.5;overflow-wrap:anywhere}
 .legal-table-wrap tbody td:last-child{margin-bottom:0}
 .legal-cell-label{display:block;margin-bottom:5px;font-size:14px;line-height:1.4;font-weight:700;color:var(--atlantic)}
}
