:root{--color-violet: #7146F2;--color-blue: #0088CC;--color-teal: #00C4CE;--color-dark: #233748;--brand-gradient: linear-gradient(135deg, #7146F2 0%, #0088CC 50%, #00C4CE 100%);--color-primary: #006DA3;--color-primary-dark: var(--color-dark);--color-primary-light: #E8F4FC;--color-accent: var(--color-teal);--color-text: var(--color-dark);--color-text-muted: #5A6B7A;--color-surface: #ffffff;--color-bg: #F5F5F5;--color-border: #E7E7E7;--radius: 12px;--shadow-card: 0 4px 20px rgba(35, 55, 72, .08);--shadow-card-hover: 0 8px 32px rgba(113, 70, 242, .18)}.page{min-height:100vh;display:flex;flex-direction:column;background-color:var(--color-bg)}.site-header{position:sticky;top:0;z-index:50;background-color:#fff;height:64px;display:flex;align-items:center;box-shadow:0 2px 8px #2337480f}.site-header:after{content:"";position:absolute;inset:auto 0 0;height:3px;background:var(--brand-gradient)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:.875rem;max-width:1100px;width:100%;margin:0 auto;padding:0 7rem 0 2rem}.header-brand{display:flex;align-items:center;gap:.875rem;min-width:0;flex-shrink:0;text-decoration:none;border-radius:4px;transition:opacity .18s ease}.header-brand:hover{opacity:.85}.header-brand:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.header-meta{display:flex;align-items:center;gap:.875rem;min-width:0;flex-shrink:1}.brand-logo{width:auto;display:block;flex-shrink:0}.brand-logo--full{height:28px}.brand-logo--icon{height:28px;display:none}.brand-divider{color:var(--color-border);font-size:1.35rem;font-weight:300}.brand-subtitle{font-size:.8125rem;font-weight:600;color:var(--color-primary-dark);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.main-content{flex:1;max-width:1100px;width:100%;margin:0 auto;padding:3rem 2rem 4rem;display:flex;flex-direction:column;gap:3rem}.hero{text-align:center}.hero-title{font-size:2.4rem;font-weight:800;color:var(--color-primary-dark);background-image:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 1rem;line-height:1.15;display:flex;flex-direction:column;gap:.15rem}.hero-title-line{display:block}.hero-subtitle{font-size:1.1rem;font-weight:400;color:var(--color-text-muted);max-width:560px;margin:0 auto;line-height:1.7}.portals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:1.75rem}.portal-card{background-image:linear-gradient(#fff,#fff),var(--brand-gradient);background-origin:border-box;background-clip:padding-box,border-box;border:2px solid transparent;border-radius:var(--radius);padding:2.75rem 2.25rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:var(--shadow-card);transition:box-shadow .2s ease,transform .2s ease}.portal-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.portal-card-header{display:flex;align-items:center;gap:1rem}.portal-icon{width:2.75rem;height:2.75rem;color:var(--color-primary);flex-shrink:0}.portal-card-title{font-size:1.65rem;font-weight:700;color:var(--color-primary-dark);background-image:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0;display:flex;flex-direction:column;line-height:1.15;letter-spacing:-.01em}.portal-card-title-line{display:block}.portal-card-description{font-size:1.02rem;color:var(--color-text-muted);line-height:1.65;margin:0;flex:1}.portal-card-links{display:flex;flex-direction:column;gap:.65rem;margin-top:.5rem}.portal-link{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.65rem 1.25rem;border-radius:8px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .18s ease,color .18s ease,border-color .18s ease;cursor:pointer}.portal-link-primary{background-image:linear-gradient(#fff,#fff),var(--brand-gradient);background-origin:border-box;background-clip:padding-box,border-box;color:var(--color-primary);border:2px solid transparent}.portal-link-primary:hover{background-image:var(--brand-gradient);background-clip:border-box;color:#fff}.external-link-icon,.download-icon{width:.9rem;height:.9rem;flex-shrink:0}.compliance-banner{background:var(--brand-gradient);border-radius:var(--radius);padding:2.25rem 2.5rem;box-shadow:var(--shadow-card)}.compliance-banner-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:2rem}.compliance-text{min-width:0}.compliance-title{font-size:1.25rem;font-weight:700;color:#fff;margin:0 0 .5rem}.compliance-description{font-size:.95rem;color:#c8ddf0;line-height:1.65;margin:0}.compliance-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;background-color:#fff;color:var(--color-primary);border-radius:8px;font-size:.95rem;font-weight:700;text-decoration:none;white-space:nowrap;transition:background-color .18s ease,color .18s ease;justify-self:center}.compliance-cta:hover{background-color:var(--color-primary-light);color:var(--color-primary)}.accessibility-card{background-image:linear-gradient(#fff,#fff),var(--brand-gradient);background-origin:border-box;background-clip:padding-box,border-box;border:2px solid transparent;border-radius:var(--radius);padding:2.25rem 2.5rem;box-shadow:var(--shadow-card)}.accessibility-primary-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:2rem}.accessibility-text{min-width:0}.accessibility-title{font-size:1.2rem;font-weight:700;color:var(--color-primary-dark);background-image:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 .4rem}.accessibility-description{font-size:.95rem;color:var(--color-text-muted);line-height:1.65;margin:0}.accessibility-cta{justify-self:center;padding:.625rem 1.625rem;gap:.5rem;font-weight:700;white-space:nowrap}.accessibility-vpat-row{display:flex;flex-direction:column;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--color-border)}.accessibility-vpat-title{font-size:1.2rem;font-weight:700;color:var(--color-primary-dark);background-image:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 .4rem}.vpat-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;width:100%}.vpat-button{padding:.6rem 1rem;font-size:.9rem;gap:.7rem;font-weight:700;justify-content:flex-start;white-space:normal;min-width:0}.vpat-button-label{letter-spacing:.005em;display:flex;flex:1;flex-direction:column;align-items:center;line-height:1.15}.vpat-button-product,.vpat-button-suffix{display:block}.vpat-product-abbr{display:none}.vpat-button .download-icon{width:.95rem;height:.95rem;flex-shrink:0;transition:transform .25s cubic-bezier(.4,0,.2,1)}.vpat-button:hover .download-icon,.vpat-button:focus-visible .download-icon{transform:translateY(2px)}.vpat-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.accessibility-vpat-note{margin:0 0 1.25rem;font-size:.95rem;color:var(--color-text-muted);line-height:1.65;text-align:left}.site-footer{background:var(--brand-gradient);padding:1.25rem 2rem;text-align:center}.site-footer p{margin:0;font-size:.82rem;color:#fff;font-weight:500;letter-spacing:.02em}.site-footer-links{margin-top:.5rem;display:flex;justify-content:center;align-items:center;gap:.85rem}.site-footer-links a{color:#fff;text-decoration:none;transition:opacity .18s ease}.site-footer-links a:hover{opacity:.85}.site-footer-links a:focus-visible{outline:2px solid #ffffff;outline-offset:3px;border-radius:2px}.site-footer-links span{opacity:.7}.lang-switcher{position:absolute;top:16px;right:calc(1.75rem + 32px);z-index:5}.lang-toggle{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;background-color:#fff;border:2px solid var(--color-primary);border-radius:50%;cursor:pointer;overflow:hidden;font-family:inherit;transition:transform .18s ease,box-shadow .18s ease}.lang-toggle:hover{transform:scale(1.05);box-shadow:0 2px 10px #006da359}.lang-toggle:focus-visible{outline:3px solid #FFCC00;outline-offset:2px}.lang-flag{width:28px;height:28px;border-radius:50%;display:block}.lang-menu{position:absolute;top:calc(100% + 8px);right:0;margin:0;padding:.35rem;list-style:none;background:#fff;border:1px solid var(--color-border);border-radius:10px;box-shadow:0 6px 20px #2337481f;display:flex;flex-direction:column;gap:.15rem;min-width:92px}.lang-option{display:flex;align-items:center;gap:.55rem;width:100%;padding:.4rem .6rem;background:transparent;border:0;border-radius:6px;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:600;color:var(--color-primary-dark);text-align:left;transition:background-color .15s ease,color .15s ease}.lang-option:hover{background-color:var(--color-primary-light);color:var(--color-primary)}.lang-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.lang-option--active{background-color:var(--color-primary-light);color:var(--color-primary)}.lang-flag--menu{width:22px;height:22px}.lang-option-code{letter-spacing:.02em}.a11y-toggle{position:absolute;top:16px;right:1.25rem;z-index:5;width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;background-color:#fff;color:var(--color-primary);border:2px solid var(--color-primary);border-radius:50%;cursor:pointer;font-family:inherit;transition:background-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.a11y-toggle:hover{background-color:var(--color-primary);color:#fff;transform:scale(1.05);box-shadow:0 2px 10px #006da359}.a11y-toggle:focus-visible{outline:3px solid #FFCC00;outline-offset:2px}.a11y-toggle[aria-pressed=true]{background-color:var(--color-primary);color:#fff;box-shadow:0 2px 10px #006da366}.a11y-icon{width:18px;height:18px;display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root[data-a11y=on]{--brand-gradient: linear-gradient(135deg, #006DA3 0%, #006DA3 100%);--color-text-muted: #3a4a5c;--color-primary: #006DA3}:root[data-a11y=on] a:focus-visible,:root[data-a11y=on] button:focus-visible{outline:3px solid #FFCC00;outline-offset:3px;border-radius:4px}:root[data-a11y=on] a:not(.portal-link):not(.compliance-cta):not(.header-brand):not(.a11y-toggle){text-decoration:underline;text-underline-offset:2px}@supports (background-clip: text) or (-webkit-background-clip: text){.hero-title,.portal-card-title,.accessibility-title,.accessibility-vpat-title{color:transparent}}:root[data-a11y=on] .hero-title,:root[data-a11y=on] .portal-card-title,:root[data-a11y=on] .accessibility-title,:root[data-a11y=on] .accessibility-vpat-title{background-image:none;-webkit-text-fill-color:var(--color-primary);color:var(--color-primary)}:root[data-a11y=on] .compliance-description{color:#fff}:root[data-a11y=on] .site-footer p{color:#fff}@media(max-width:780px){.header-inner{padding:0 6.5rem 0 1.5rem;justify-content:flex-start}.brand-logo--full{display:none}.brand-logo--icon{display:block}.brand-subtitle{line-height:1.2}.brand-subtitle-line{display:block}}@media(max-width:600px){.header-inner{padding:0 6.25rem 0 1.25rem}.hero-title{font-size:1.75rem}.compliance-cta,.accessibility-cta{white-space:normal;text-align:center;line-height:1.25;padding:.625rem 1rem;font-size:.9rem}.vpat-button{font-size:.78rem;padding:.55rem .65rem;gap:.5rem}.vpat-button .download-icon{width:.85rem;height:.85rem}.main-content{padding:2rem 1.25rem 3rem;gap:2rem}.compliance-banner{padding:1.75rem 1.5rem}.accessibility-vpat-row{gap:.85rem}.accessibility-vpat-note{text-align:left}}@media(max-width:319.98px){.vpat-product-full{display:none}.vpat-product-abbr{display:block}.vpat-button{flex-direction:column-reverse;justify-content:center;align-items:center;gap:.3rem;padding:.5rem .4rem}.brand-subtitle-word{display:block}}@media(max-width:768px){.compliance-banner-inner,.accessibility-primary-row{grid-template-columns:1fr;gap:1.25rem}.compliance-cta,.accessibility-cta{width:100%;justify-content:center;justify-self:stretch}.vpat-buttons{grid-template-columns:repeat(2,1fr)}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;font-family:Montserrat,sans-serif;font-size:16px;color:#1a2b3c;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}
