@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-Thin0.otf) format("opentype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-ThinOblique0.otf) format("opentype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-Light0.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-LightOblique0.otf) format("opentype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-Regular0.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-RegularOblique0.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-Medium0.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-MediumOblique0.otf) format("opentype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-DemiBold0.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-DemiBoldOblique0.otf) format("opentype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-Bold0.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-BoldOblique0.otf) format("opentype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-ExtraBold0.otf) format("opentype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-ExtraBoldOblique0.otf) format("opentype");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-Heavy0.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Visby CF;src:url(/fonts/VisbyCF-HeavyOblique0.otf) format("opentype");font-weight:900;font-style:italic;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}[data-theme=dark]{--color-back: #0e283d;--color-front: #ffffff;--color-heading: #ffffff;--color-copy: #e5e7eb;--color-accent: #4a90e2;--color-header-bg: #0e283d;--color-header-text: #ffffff;--color-card-bg: #0e283d;--color-card-hover: #1a3a52;--color-input-bg: #1a3a52;--color-input-text: #ffffff;--color-input-border: #2d4a5f;--color-alpha-50: #ffffff0d;--color-alpha-100: #ffffff1a;--color-alpha-200: #ffffff33;--color-alpha-700: #ffffffb3;--color-sidebar-bg: #0e283d;--color-divider: #ffffff1a;--color-profile-header-bg: #0e283d;--color-profile-header-text: #ffffff;--color-profile-body-bg: #ffffff;--color-profile-body-text: #1e3a5f;--color-form-card-bg: #ffffff;--color-form-card-text: #1e3a5f;--color-form-card-heading: #0e283d;--color-form-icon-bg: #0e283d;--color-form-icon-text: #ffffff}[data-theme=light]{--color-back: #f6f8fa;--color-front: #1e3a5f;--color-heading: #0e283d;--color-copy: #4b5563;--color-accent: #4a90e2;--color-header-bg: #0e283d;--color-header-text: #ffffff;--color-card-bg: #ffffff;--color-card-hover: #f9fafb;--color-input-bg: #ffffff;--color-input-text: #1e3a5f;--color-input-border: #d1d5db;--color-alpha-50: #0e283d0a;--color-alpha-100: #e5e7eb;--color-alpha-200: #0e283d33;--color-alpha-700: #6b7280;--color-sidebar-bg: #0e283d;--color-divider: #e5e7eb;--color-profile-header-bg: #0e283d;--color-profile-header-text: #ffffff;--color-profile-body-bg: #ffffff;--color-profile-body-text: #1e3a5f;--color-form-card-bg: #ffffff;--color-form-card-text: #1e3a5f;--color-form-card-heading: #0e283d;--color-form-icon-bg: #0e283d;--color-form-icon-text: #ffffff}:root{font-family:Visby CF,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh;background-color:var(--color-back);color:var(--color-front);font-family:Visby CF,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;transition:background-color .3s ease,color .3s ease}#root{min-height:100vh;text-align:left;width:100%;max-width:none;margin:0;padding:0}button{font-family:inherit;cursor:pointer}*{transition-property:background-color,border-color,color;transition-duration:.3s;transition-timing-function:ease}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#e8f4f8,#f0f4f8,#e8f0f8);position:relative;overflow:hidden;font-family:Visby CF,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.login-background{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:0}.login-bg-shape{position:absolute;border-radius:50%;background:#0e283d08;animation:float 20s infinite ease-in-out}.shape-1{width:500px;height:500px;top:-10%;left:-5%;animation-delay:0s}.shape-2{width:400px;height:400px;bottom:-15%;right:-10%;animation-delay:-7s}.shape-3{width:300px;height:300px;top:50%;right:-5%;animation-delay:-14s}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}.login-content{position:relative;z-index:1;width:100%;max-width:480px;padding:1.5rem}.login-card{background:#fff;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;box-shadow:0 20px 60px #0e283d1f,0 8px 24px #0e283d14,0 0 0 1px #0e283d0f inset;overflow:hidden;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{background:#0e283d;padding:3rem 2rem 2.5rem;text-align:center;position:relative}.login-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:30px;background:#fff;border-radius:24px 24px 0 0}.logo-wrapper{margin-bottom:1.5rem;position:relative;z-index:1;display:flex;justify-content:center;align-items:center}.vfl-logo{height:90px;width:auto;max-width:200px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2));animation:logoFloat 3s ease-in-out infinite}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.login-title{color:#fff;font-size:2rem;font-weight:700;margin:0 0 .5rem;letter-spacing:-.5px;position:relative;z-index:1}.login-subtitle{color:#ffffffe6;font-size:1rem;margin:0;font-weight:500;position:relative;z-index:1}.login-body{padding:2.5rem 2rem}.login-description{color:#4b5563;font-size:.95rem;line-height:1.6;margin:0 0 2rem;text-align:center}.login-button{width:100%;background:#0e283d;border:none;border-radius:12px;padding:0;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #0e283d40,0 2px 6px #0e283d26;position:relative;overflow:hidden}.login-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transition:left .5s}.login-button:hover:before{left:100%}.login-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0e283d59,0 4px 12px #0e283d33,0 0 0 4px #0e283d14}.login-button:active{transform:translateY(0)}.button-content{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1.1rem 2rem;color:#fff;font-size:1rem;font-weight:600}.button-icon{width:22px;height:22px;transition:transform .3s ease}.login-button:hover .button-icon{transform:translate(4px)}.guest-button{width:100%;background:transparent;border:2px solid #d1d5db;border-radius:12px;padding:0;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.guest-button:hover{border-color:#0e283d;background:#0e283d05;transform:translateY(-2px);box-shadow:0 4px 12px #0e283d1a}.guest-button:active{transform:translateY(0)}.guest-button .button-content{color:#4b5563;padding:1rem 2rem}.guest-button:hover .button-content{color:#0e283d}.guest-button:hover .button-icon{transform:translate(4px)}.login-divider{margin:2rem 0;text-align:center;position:relative}.login-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,#e5e7eb,transparent)}.divider-text{position:relative;display:inline-block;padding:0 1rem;background:#fff;color:#6b7280;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px}.login-legal-links{display:flex;justify-content:center;align-items:center;gap:.75rem;padding-top:2rem;margin-top:2rem;border-top:1px solid #e5e7eb}.login-legal-links a{color:#6b7280;text-decoration:none;font-size:.8125rem;transition:color .2s ease}.login-legal-links a:hover{color:#4a90e2;text-decoration:underline}.legal-separator{color:#6b7280;font-size:.75rem}@media(max-width:640px){.login-content{padding:1rem}.login-header{padding:2.5rem 1.5rem 2rem}.login-body{padding:2rem 1.5rem}.vfl-logo{height:70px}.login-title{font-size:1.75rem}.login-subtitle{font-size:.9rem}.shape-1,.shape-2,.shape-3{width:300px;height:300px}}.search-container{position:relative;width:100%;max-width:500px}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:1rem;width:20px;height:20px;color:var(--color-copy);pointer-events:none;z-index:1}.search-input{width:100%;padding:.75rem 2.75rem .75rem 3rem;background:var(--color-input-bg);border:2px solid var(--color-alpha-100);border-radius:12px;color:var(--color-input-text);font-size:.95rem;font-family:inherit;transition:all .2s ease}.search-input::placeholder{color:var(--color-copy);opacity:.7}.search-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #4a90e21a}.search-clear{position:absolute;right:.75rem;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:50%;color:var(--color-copy);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.search-clear:hover{background:var(--color-alpha-100);color:var(--color-heading)}.search-clear svg{width:16px;height:16px}.search-results{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:var(--color-form-card-bg);border:2px solid var(--color-alpha-100);border-radius:12px;box-shadow:0 8px 24px #00000026;max-height:500px;overflow-y:auto;z-index:1000;animation:searchFadeIn .2s ease}@keyframes searchFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.search-result-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;width:100%;background:transparent;border:none;border-bottom:1px solid var(--color-alpha-100);text-align:left;cursor:pointer;transition:background-color .2s ease}.search-result-item:last-child{border-bottom:none}.search-result-item:hover,.search-result-item.selected{background:var(--color-alpha-50)}.search-result-item.selected{border-left:3px solid var(--color-accent)}.search-result-content{flex:1;min-width:0}.search-result-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.375rem;flex-wrap:wrap}.search-result-title{color:var(--color-form-card-heading);font-size:.95rem;font-weight:600;line-height:1.3}.search-result-type{display:inline-block;padding:.125rem .5rem;border-radius:6px;color:#fff;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.search-result-description{color:var(--color-form-card-text);font-size:.85rem;line-height:1.4;margin:0;opacity:.8}.search-result-category{display:inline-block;margin-top:.375rem;color:var(--color-accent);font-size:.75rem;font-weight:500}.search-result-arrow{width:20px;height:20px;color:var(--color-copy);flex-shrink:0;opacity:.5;transition:all .2s ease}.search-result-item:hover .search-result-arrow,.search-result-item.selected .search-result-arrow{opacity:1;transform:translate(3px)}.search-no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1.5rem;text-align:center}.search-no-results svg{width:48px;height:48px;color:var(--color-copy);opacity:.5;margin-bottom:1rem}.search-no-results p{color:var(--color-form-card-heading);font-size:1rem;font-weight:600;margin:0 0 .5rem}.search-no-results span{color:var(--color-form-card-text);font-size:.875rem;opacity:.7}.search-results::-webkit-scrollbar{width:8px}.search-results::-webkit-scrollbar-track{background:var(--color-alpha-50);border-radius:0 12px 12px 0}.search-results::-webkit-scrollbar-thumb{background:var(--color-alpha-200);border-radius:4px}.search-results::-webkit-scrollbar-thumb:hover{background:var(--color-copy)}@media(max-width:768px){.search-container{max-width:100%}.search-input{font-size:.9rem;padding:.625rem 2.5rem .625rem 2.75rem}.search-results{max-height:400px}.search-result-item{padding:.875rem 1rem}.search-result-title{font-size:.9rem}.search-result-description{font-size:.8rem}}@media(max-width:480px){.search-input{font-size:.875rem;padding:.5rem 2.25rem .5rem 2.5rem}.search-icon{left:.75rem;width:18px;height:18px}.search-clear{right:.5rem;width:20px;height:20px}.search-result-item{padding:.75rem}}.search-suggestions{margin-top:1.25rem;display:flex;flex-direction:column;align-items:center;gap:.75rem}.search-suggestions-label{color:var(--color-form-card-text);font-size:.875rem;font-weight:500}.search-suggestions-list{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.search-suggestion-button{padding:.5rem 1rem;background:var(--color-accent);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.search-suggestion-button:hover{background:#3a7bc8;transform:translateY(-1px);box-shadow:0 4px 12px #4a90e24d}.vfl-header{background:var(--color-header-bg);color:var(--color-header-text);padding:.75rem 0;box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:100}.skip-to-main{position:absolute;left:-9999px;top:50%;transform:translateY(-50%);padding:.5rem 1rem;background:var(--color-accent);color:#fff;text-decoration:none;font-weight:600;font-size:.875rem;border-radius:6px;transition:all .3s ease;white-space:nowrap;border:2px solid transparent;z-index:101}.skip-to-main:focus-visible{left:1rem;outline:none;border-color:#fff;box-shadow:0 2px 8px #0003}.skip-to-main:hover:focus-visible{background:#0d3d52;box-shadow:0 4px 12px #0000004d}.header-container{max-width:1400px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem}.header-left{display:flex;align-items:center;justify-self:start}.header-logo{display:flex;align-items:center;flex-shrink:0}.logo-image{height:45px;width:auto;object-fit:contain}.header-search{justify-self:center;width:600px;max-width:600px;margin-left:110px}.header-nav{display:flex;align-items:center;justify-self:end}.header-icons{display:flex;gap:.5rem}.header-icon-btn{width:40px;height:40px;background:transparent;border:none;color:var(--color-header-text);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:background .2s}.header-icon-btn:hover{background:#ffffff1a}.header-icon-btn svg{width:22px;height:22px}.theme-toggle-btn{position:relative;overflow:hidden}.theme-icon-wrapper{position:relative;width:22px;height:22px;display:flex;align-items:center;justify-content:center}.sun-icon,.moon-icon{position:absolute;width:22px;height:22px;transition:all .5s cubic-bezier(.4,0,.2,1)}.theme-icon-wrapper.dark .moon-icon{opacity:1;transform:rotate(0) scale(1)}.theme-icon-wrapper.dark .sun-icon{opacity:0;transform:rotate(180deg) scale(0)}.theme-icon-wrapper.light .sun-icon{opacity:1;transform:rotate(0) scale(1)}.theme-icon-wrapper.light .moon-icon{opacity:0;transform:rotate(-180deg) scale(0)}.theme-toggle-btn:hover .theme-icon-wrapper{transform:scale(1.1)}.theme-toggle-btn:active .theme-icon-wrapper{transform:scale(.95)}@media(max-width:1024px){.header-container{gap:1.5rem}.header-search{width:450px;max-width:450px}}@media(max-width:768px){.header-container{padding:0 1rem;gap:.75rem;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto}.header-left{grid-column:1;grid-row:1}.skip-to-main{font-size:.75rem;padding:.4rem .75rem}.skip-to-main:focus-visible{left:.75rem}.header-search{grid-column:1 / -1;grid-row:2;width:100%;max-width:none;justify-self:stretch;margin-left:0}.header-nav{grid-column:3;grid-row:1}.logo-image{height:40px}.header-icon-btn{width:36px;height:36px}.header-icon-btn svg{width:20px;height:20px}.theme-icon-wrapper,.sun-icon,.moon-icon{width:20px;height:20px}}@media(max-width:480px){.vfl-header{padding:.5rem 0}.header-container{padding:0 .75rem;gap:.5rem}.skip-to-main{font-size:.7rem;padding:.35rem .6rem}.skip-to-main:focus-visible{left:.5rem}.logo-image{height:35px}.header-icons{gap:.25rem}.header-icon-btn{width:32px;height:32px}.header-icon-btn svg{width:18px;height:18px}}.vfl-footer{background:var(--color-header-bg);color:var(--color-header-text);margin-top:auto}.footer-container{max-width:1400px;margin:0 auto;padding:3rem 2rem 2rem}.footer-service-section{background:linear-gradient(135deg,var(--color-alpha-200) 0%,var(--color-alpha-100) 100%);border-radius:16px;padding:2.5rem;margin-bottom:2rem;position:relative;overflow:hidden}.footer-service-section:before{content:"KONTAKT";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:clamp(120px,30vw,280px);font-weight:900;background:linear-gradient(135deg,#ffffff14,#ffffff04);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.1em;white-space:nowrap;pointer-events:none;z-index:0;text-transform:uppercase;line-height:1}.service-content{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem;position:relative;z-index:1}.service-icon{width:60px;height:60px;background:#ffffff1a;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.service-icon svg{width:32px;height:32px;color:var(--color-header-text)}.service-text h3{font-size:1.5rem;font-weight:700;margin:0 0 .5rem;color:var(--color-header-text)}.service-text p{font-size:1rem;margin:0;opacity:.9;color:var(--color-header-text)}.service-contact{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;position:relative;z-index:1}.contact-item{display:flex;gap:1rem;align-items:center;flex:1;min-width:280px}.contact-item svg{width:24px;height:24px;color:var(--color-header-text);flex-shrink:0}.contact-details{display:flex;flex-direction:column;gap:.25rem}.contact-details strong{font-size:1rem;color:var(--color-header-text);font-weight:600}.contact-details a{color:var(--color-header-text);text-decoration:none;font-size:1.25rem;font-weight:700;transition:opacity .2s}.contact-details a:hover{opacity:.8}.service-hours{font-size:.875rem;opacity:.85;color:var(--color-header-text)}.contact-button{display:inline-flex;align-items:center;gap:.75rem;background:var(--color-header-text);color:var(--color-header-bg);padding:1rem 1.75rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:1rem;transition:all .3s ease;white-space:nowrap}.contact-button:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.contact-button svg{width:20px;height:20px}.footer-divider{height:1px;background:#ffffff1a;margin:2.5rem 0}.footer-links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2.5rem;margin-bottom:1rem}.footer-column h4{font-size:1.1rem;font-weight:700;margin:0 0 1.25rem;color:var(--color-header-text);letter-spacing:.5px}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column li{margin-bottom:.75rem}.footer-column a{color:#ffffffd9;text-decoration:none;font-size:.95rem;transition:all .2s ease;display:inline-block}.footer-column a:hover{color:var(--color-header-text);transform:translate(3px)}.footer-social-section{text-align:center}.footer-social-section h4{font-size:1rem;font-weight:600;margin:0 0 1.25rem;color:var(--color-header-text);text-transform:uppercase;letter-spacing:1px;opacity:.9}.footer-social{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.social-icon{width:45px;height:45px;background:#ffffff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-header-text);transition:all .3s ease;text-decoration:none;border:1px solid rgba(255,255,255,.1)}.social-icon:hover{background:#fff3;transform:translateY(-3px);border-color:#ffffff4d}.social-icon svg{width:22px;height:22px}.footer-bottom{text-align:center;padding-top:1rem}.footer-bottom p{margin:0;font-size:.875rem;opacity:.75;color:var(--color-header-text)}@media(max-width:768px){.footer-container{padding:2rem 1.5rem 1.5rem}.footer-service-section{padding:1.5rem}.service-content{flex-direction:column;text-align:center;margin-bottom:1.5rem}.service-text h3{font-size:1.25rem}.service-text p{font-size:.95rem}.service-contact{flex-direction:column;gap:1.25rem}.contact-item{flex-direction:column;text-align:center;min-width:auto}.contact-button{width:100%;justify-content:center}.footer-links-grid{grid-template-columns:1fr;gap:2rem}.footer-column{text-align:center}.footer-column a:hover{transform:none}.footer-social{gap:.75rem}.social-icon{width:42px;height:42px}.social-icon svg{width:20px;height:20px}}@media(max-width:480px){.footer-container{padding:1.5rem 1rem 1rem}.footer-service-section{padding:1.25rem}.service-icon{width:50px;height:50px}.service-icon svg{width:28px;height:28px}.service-text h3{font-size:1.125rem}.contact-details a{font-size:1.1rem}.contact-button{padding:.875rem 1.5rem;font-size:.95rem}.footer-divider{margin:1.5rem 0}}.session-indicator{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff1a;border-radius:8px;font-size:.875rem;color:#ffffffe6;transition:all .3s ease}.session-indicator.warning{background:#ff9f4033;color:#ffb84d;animation:pulse 2s ease-in-out infinite}.session-icon{width:16px;height:16px;flex-shrink:0}.session-time{font-weight:600;font-variant-numeric:tabular-nums;min-width:50px}.session-warning-text{font-size:.75rem;opacity:.9}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@media(max-width:768px){.session-warning-text{display:none}}.login-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.login-modal-content{background:var(--color-card-bg);border-radius:16px;padding:2rem;max-width:440px;width:100%;box-shadow:0 20px 60px #0000004d;position:relative;animation:slideUp .3s ease-out;border:1px solid var(--color-alpha-200)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-modal-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s;color:var(--color-copy)}.login-modal-close:hover{background:var(--color-alpha-100);color:var(--color-heading)}.login-modal-close svg{width:20px;height:20px}.login-modal-icon{width:64px;height:64px;background:linear-gradient(135deg,#0e283d,#1a3a52);border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;box-shadow:0 8px 24px #0e283d33}.login-modal-icon svg{width:32px;height:32px;color:#fff}.login-modal-title{font-size:1.5rem;font-weight:700;margin:0 0 .75rem;text-align:center;color:var(--color-heading)}.login-modal-description{font-size:.95rem;line-height:1.6;color:var(--color-copy);text-align:center;margin:0 0 2rem}.login-modal-actions{display:flex;flex-direction:column;gap:.75rem}.login-modal-primary-btn{width:100%;background:#0e283d;border:none;border-radius:10px;padding:.875rem 1.5rem;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 12px #0e283d33}.login-modal-primary-btn:hover{background:#1a3a52;transform:translateY(-2px);box-shadow:0 6px 16px #0e283d4d}.login-modal-primary-btn:active{transform:translateY(0)}.btn-icon{width:20px;height:20px}.login-modal-secondary-btn{width:100%;background:transparent;border:2px solid var(--color-alpha-200);border-radius:10px;padding:.875rem 1.5rem;color:var(--color-copy);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.login-modal-secondary-btn:hover{background:var(--color-alpha-100);border-color:var(--color-alpha-300);color:var(--color-heading)}@media(max-width:480px){.login-modal-content{padding:1.5rem}.login-modal-title{font-size:1.25rem}.login-modal-description{font-size:.875rem}}.scroll-to-top{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;background:var(--color-accent);color:#fff;border:none;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0d3d524d;transition:all .3s ease;z-index:999;opacity:1;transform:translateY(0)}.scroll-to-top:hover{background:#0d3d52;transform:translateY(-4px);box-shadow:0 8px 24px #0d3d5266}.scroll-to-top:active{transform:translateY(-2px)}.scroll-to-top svg{width:24px;height:24px}@media(max-width:768px){.scroll-to-top{bottom:1.5rem;right:1.5rem;width:48px;height:48px}.scroll-to-top svg{width:20px;height:20px}}@media(max-width:480px){.scroll-to-top{bottom:1rem;right:1rem;width:44px;height:44px}.scroll-to-top svg{width:18px;height:18px}}.dashboard{display:flex;min-height:100vh;background:var(--color-back);font-family:Visby CF,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.dashboard-sidebar{position:fixed;right:-280px;top:0;width:280px;height:100vh;background:var(--color-sidebar-bg);color:var(--color-header-text);display:flex;flex-direction:column;box-shadow:-4px 0 20px #00000026;transition:right .3s ease;z-index:1000;overflow-x:hidden;overflow-y:auto}.dashboard-sidebar::-webkit-scrollbar{width:0;display:none}.dashboard-sidebar{-ms-overflow-style:none;scrollbar-width:none}.dashboard-sidebar.open{right:0}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:999;animation:fadeIn .3s}.sidebar-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;background:#ffffff1a;border:none;border-radius:8px;color:var(--color-header-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:100}.sidebar-close:hover{background:#fff3}.sidebar-close svg{width:24px;height:24px}.sidebar-header{padding:3.5rem 1.5rem 2rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.1);background:#00000026;position:relative}.vfl-logo{margin-bottom:1.25rem;display:block;text-align:center;margin-left:20px}.sidebar-logo-image{height:90px;width:auto;max-width:150px;object-fit:contain;display:inline-block}.sidebar-header h2{margin:0;font-size:1.25rem;font-weight:700}.sidebar-header p{margin:.25rem 0 0;font-size:.875rem;opacity:.9}.sidebar-nav{flex:1;padding:1.5rem 0}.nav-item{width:100%;display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;margin:.25rem .5rem;background:transparent;border:none;border-radius:8px;color:#ffffffd9;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .25s ease;position:relative;text-align:left}.nav-item:hover:not(:disabled){background:#ffffff1a;color:var(--color-header-text);transform:translate(4px)}.nav-item.active{background:#ffffff26;color:var(--color-header-text);font-weight:600;box-shadow:0 2px 8px #00000026}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);height:24px;width:4px;background:var(--color-accent);border-radius:0 4px 4px 0}.nav-item:disabled{opacity:.5;cursor:not-allowed}.nav-icon{width:20px;height:20px;flex-shrink:0}.badge{margin-left:auto;padding:.25rem .5rem;background:#4a90e233;color:#4a90e2;border-radius:12px;font-size:.7rem;font-weight:600}.sidebar-footer{padding:1.5rem;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:1rem}.user-info{display:flex;align-items:center;gap:.75rem}.user-avatar{width:40px;height:40px;border-radius:50%;background:#fff3;color:var(--color-header-text);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;flex-shrink:0}.user-details{flex:1;min-width:0}.user-name{margin:0;font-size:.875rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{margin:.125rem 0 0;font-size:.75rem;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:.5rem;color:var(--color-header-text);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.logout-btn:hover{background:#ffffff26;border-color:#ffffff4d}.logout-icon{width:18px;height:18px}.guest-info{opacity:.9}.guest-avatar{background:#ffffff26!important}.guest-notice{padding:.75rem;background:#ffc1071a;border-left:3px solid #ffc107;border-radius:4px;margin-top:-.5rem}.guest-notice p{margin:0;font-size:.75rem;color:#ffffffe6;line-height:1.4}.login-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:#4a90e233;border:1px solid rgba(74,144,226,.4);border-radius:.5rem;color:var(--color-header-text);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.login-btn:hover{background:#4a90e24d;border-color:#4a90e299;transform:translateY(-1px)}.login-icon{width:18px;height:18px}.dashboard-content{flex:1;padding:0;overflow-y:auto;background:var(--color-back);display:flex;flex-direction:column}.dashboard-main{flex:1;padding:3rem}@media(max-width:768px){.dashboard-sidebar{width:85vw;right:-85vw}.dashboard-main{padding:2rem 1rem}.sidebar-header{padding:2rem 1.5rem}.logo-circle{width:70px;height:70px;font-size:1.4rem}}.home-container{max-width:1200px;margin:0 auto}.welcome-section{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:2.5rem;padding:2.5rem;background:linear-gradient(135deg,#0e283d,#1a3a52);border-radius:16px;box-shadow:0 8px 24px #0e283d33;color:#fff}.welcome-content{flex:1;min-width:0}.welcome-title{font-size:2.25rem;font-weight:700;margin:0 0 .75rem;letter-spacing:-.5px;color:#fff}.welcome-subtitle{font-size:1.05rem;margin:0;opacity:.9;color:#ffffffe6}.welcome-avatar{flex-shrink:0}.avatar-circle{width:80px;height:80px;border-radius:50%;background:#ffffff26;border:3px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff;box-shadow:0 4px 12px #0003}.stats-bar{display:flex;gap:1.5rem;margin-bottom:2.5rem;flex-wrap:wrap}.stat-item{flex:1;min-width:200px;display:flex;align-items:center;gap:1.25rem;padding:1.5rem;background:var(--color-card-bg);border-radius:12px;border:1px solid var(--color-alpha-100);box-shadow:0 2px 8px #00000014;transition:all .3s ease}.stat-item:hover{border-color:var(--color-alpha-200);box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.stat-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon svg{width:28px;height:28px;color:#fff}.stat-icon.tickets{background:linear-gradient(135deg,#0e283d,#1a3a52);box-shadow:0 4px 12px #0e283d40}.stat-icon.subscriptions{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b98140}.stat-info{display:flex;flex-direction:column;gap:.25rem}.stat-value{font-size:1.75rem;font-weight:700;color:var(--color-heading);line-height:1}.stat-label{font-size:.875rem;color:var(--color-copy);font-weight:500}.home-section{margin-bottom:3rem}.section-title{color:var(--color-heading)!important;font-size:1.5rem;font-weight:700;margin:0 0 1.5rem;letter-spacing:-.3px}.quick-links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;grid-auto-rows:1fr}.quick-link-card{display:flex;align-items:center;gap:1.25rem;padding:1.5rem;background:var(--color-card-bg);border-radius:12px;border:2px solid var(--color-alpha-100);text-decoration:none;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 2px 8px #00000014;text-align:left;min-height:100px;height:100%}.quick-link-card:hover{border-color:var(--color-accent);box-shadow:0 8px 24px #0d3d5226;transform:translateY(-4px)}.quick-link-card:hover .quick-link-icon{transform:scale(1.05)}.quick-link-card:hover .quick-link-arrow{transform:translate(4px)}.quick-link-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease;box-shadow:0 4px 12px #00000026}.quick-link-icon svg{width:28px;height:28px;color:#fff}.quick-link-content{flex:1;min-width:0}.quick-link-content h3{color:var(--color-heading);font-size:1.05rem;font-weight:600;margin:0 0 .375rem}.quick-link-content p{color:var(--color-copy);font-size:.875rem;margin:0;line-height:1.5}.quick-link-badge{position:absolute;top:1rem;right:1rem;padding:.25rem .625rem;background:#10b981;color:#fff;border-radius:12px;font-size:.75rem;font-weight:700;box-shadow:0 2px 6px #10b9814d}.quick-link-arrow{width:24px;height:24px;color:var(--color-copy);flex-shrink:0;transition:all .3s ease}.quick-link-arrow svg{width:100%;height:100%}.info-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}.info-card{display:flex;align-items:flex-start;gap:1.25rem;padding:1.75rem;background:var(--color-card-bg);border-radius:12px;border:1px solid var(--color-alpha-100);box-shadow:0 2px 8px #00000014;transition:all .3s ease;text-decoration:none;color:inherit}.info-card:hover{border-color:var(--color-alpha-200);box-shadow:0 4px 12px #0000001f;transform:translateY(-2px);cursor:pointer}.info-card-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-alpha-100);color:var(--color-heading)}.info-card-icon svg{width:24px;height:24px}.info-card.stadium .info-card-icon{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef444440}.info-card.website .info-card-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f640}.info-card.fanshop .info-card-icon{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b98140}.info-card.ticketshop .info-card-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 4px 12px #8b5cf640}.info-card-content{flex:1;min-width:0}.info-card-content h3{color:var(--color-heading);font-size:1rem;font-weight:600;margin:0 0 .5rem}.info-card-content p{color:var(--color-copy);font-size:.875rem;margin:0;line-height:1.6}.info-card.stadium .info-card-content p,.info-card.website .info-card-content p,.info-card.fanshop .info-card-content p,.info-card.ticketshop .info-card-content p{color:#4a90e2;font-weight:500}.info-card.stadium:hover .info-card-content p,.info-card.website:hover .info-card-content p,.info-card.fanshop:hover .info-card-content p,.info-card.ticketshop:hover .info-card-content p{color:var(--color-heading);text-decoration:underline}.home-info-box{padding:1.75rem;background:var(--color-alpha-100);border:1px solid var(--color-alpha-200);border-radius:12px;display:flex;gap:1.25rem;box-shadow:0 2px 8px #0d3d5214}.info-icon{width:24px;height:24px;color:var(--color-accent);flex-shrink:0;margin-top:.125rem}.home-info-box h4{color:var(--color-heading);font-size:1.05rem;font-weight:600;margin:0 0 .625rem;letter-spacing:-.2px}.home-info-box p{color:var(--color-copy);font-size:.9rem;margin:0;line-height:1.65}@media(max-width:768px){.welcome-section{flex-direction:column;text-align:center;padding:2rem 1.5rem}.welcome-title{font-size:1.75rem}.welcome-subtitle{font-size:.95rem}.avatar-circle{width:70px;height:70px;font-size:1.75rem}.stats-bar{flex-direction:column}.stat-item{min-width:100%}.quick-links-grid,.info-cards-grid{grid-template-columns:1fr}.quick-link-badge{top:.75rem;right:.75rem}}.forms-overview-container{max-width:1200px;margin:0 auto;padding:2rem}.forms-overview-header{text-align:center;margin-bottom:3rem}.forms-overview-header h1{color:var(--color-heading);font-size:2.5rem;font-weight:700;margin:0 0 1rem;letter-spacing:-.5px}.forms-overview-header p{color:var(--color-copy);font-size:1.15rem;margin:0}.service-categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.service-category-card{display:flex;align-items:center;gap:1.5rem;padding:2rem;background:var(--color-card-bg);border-radius:16px;border:2px solid var(--color-alpha-100);text-decoration:none;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 2px 8px #00000014;text-align:left}.service-category-card:hover{border-color:var(--color-accent);box-shadow:0 8px 24px #0d3d5226;transform:translateY(-4px)}.service-category-card:hover .service-category-icon{transform:scale(1.05)}.service-category-card:hover .service-category-arrow{transform:translate(4px)}.service-category-icon{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease;box-shadow:0 4px 12px #00000026}.service-category-icon svg{width:32px;height:32px;color:#fff}.service-category-content{flex:1;min-width:0}.service-category-content h3{color:var(--color-heading);font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.service-category-content p{color:var(--color-copy);font-size:.95rem;margin:0 0 .75rem;line-height:1.5}.service-category-count{display:inline-block;color:var(--color-accent);font-size:.875rem;font-weight:600;padding:.25rem .75rem;background:#4a90e21a;border-radius:6px}.service-category-arrow{width:24px;height:24px;color:var(--color-copy);flex-shrink:0;transition:all .3s ease}.service-category-arrow svg{width:100%;height:100%}.forms-overview-info{display:flex;align-items:flex-start;gap:1.5rem;padding:2rem;background:var(--color-card-bg);border:2px solid var(--color-accent);border-radius:16px;box-shadow:0 2px 8px #00000014}.forms-overview-info-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-accent);color:#fff}.forms-overview-info-icon svg{width:24px;height:24px}.forms-overview-info h3{color:var(--color-heading);font-size:1.25rem;font-weight:700;margin:0 0 .75rem}.forms-overview-info p{color:var(--color-copy);font-size:1rem;line-height:1.6;margin:0}@media(max-width:768px){.forms-overview-container{padding:1.5rem 1rem}.forms-overview-header h1{font-size:2rem}.forms-overview-header p{font-size:1rem}.service-categories-grid{grid-template-columns:1fr;gap:1.5rem}.service-category-card{padding:1.5rem}.service-category-icon{width:56px;height:56px}.service-category-icon svg{width:28px;height:28px}.service-category-content h3{font-size:1.1rem}.service-category-content p{font-size:.9rem}.forms-overview-info{flex-direction:column;padding:1.5rem;text-align:center}.forms-overview-info-icon{margin:0 auto}}@media(max-width:480px){.forms-overview-container{padding:1rem}.forms-overview-header{margin-bottom:2rem}.forms-overview-header h1{font-size:1.75rem}.service-category-card{flex-direction:column;text-align:center;padding:1.25rem}.service-category-arrow{display:none}}.forms-detail-container{max-width:1000px;margin:0 auto;padding:2rem}.forms-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:2px solid var(--color-alpha-100);border-radius:8px;color:var(--color-heading);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:2rem}.forms-back-button:hover{background:var(--color-alpha-50);border-color:var(--color-accent);transform:translate(-2px)}.forms-back-button svg{width:20px;height:20px}.forms-detail-header{text-align:center;margin-bottom:3rem;padding:2rem;background:var(--color-card-bg);border-radius:16px;border:2px solid var(--color-alpha-100);box-shadow:0 2px 8px #00000014}.forms-detail-icon{width:80px;height:80px;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;box-shadow:0 8px 24px #00000026}.forms-detail-icon svg{width:40px;height:40px;color:#fff}.forms-detail-header h1{color:var(--color-heading);font-size:2rem;font-weight:700;margin:0 0 .75rem;letter-spacing:-.5px}.forms-detail-header p{color:var(--color-copy);font-size:1.05rem;margin:0;line-height:1.6}.forms-downloads-section{margin-bottom:3rem}.forms-downloads-title{color:var(--color-heading);font-size:1.5rem;font-weight:700;margin:0 0 1.5rem;letter-spacing:-.3px}.forms-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.forms-detail-card{display:flex;align-items:center;gap:1.25rem;padding:1.75rem;background:var(--color-card-bg);border-radius:12px;border:2px solid var(--color-alpha-100);text-decoration:none;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 2px 8px #00000014}.forms-detail-card.highlight-form{animation:highlightPulse 2s ease-in-out}@keyframes highlightPulse{0%,to{border-color:var(--color-alpha-100);box-shadow:0 2px 8px #00000014;transform:scale(1)}25%{border-color:var(--color-accent);box-shadow:0 0 0 4px #0d3d521a,0 8px 24px #0d3d5233;transform:scale(1.02)}50%{border-color:var(--color-accent);box-shadow:0 0 0 8px #0d3d520d,0 8px 24px #0d3d5226;transform:scale(1)}75%{border-color:var(--color-accent);box-shadow:0 0 0 4px #0d3d521a,0 8px 24px #0d3d5233;transform:scale(1.02)}}.forms-detail-card:hover{border-color:var(--color-accent);box-shadow:0 8px 24px #0d3d5226;transform:translateY(-4px)}.forms-detail-card:hover .forms-detail-card-icon{transform:scale(1.05)}.forms-detail-card:hover .forms-detail-card-arrow{transform:translate(4px)}.forms-detail-card-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease;box-shadow:0 4px 12px #00000026}.forms-detail-card-icon svg{width:28px;height:28px;color:#fff}.forms-detail-card-content{flex:1;min-width:0}.forms-detail-card-content h3{color:var(--color-heading);font-size:1.05rem;font-weight:600;margin:0 0 .375rem}.forms-detail-card-content p{color:var(--color-copy);font-size:.875rem;margin:0;line-height:1.5}.forms-detail-card-arrow{width:24px;height:24px;color:var(--color-copy);flex-shrink:0;transition:all .3s ease}.forms-detail-card-arrow svg{width:100%;height:100%}.forms-detail-info{padding:1.75rem;background:var(--color-alpha-100);border:1px solid var(--color-alpha-200);border-radius:12px;display:flex;gap:1.25rem;box-shadow:0 2px 8px #0d3d5214}.forms-detail-info.guest-mode{background:#ffc10714;border-color:#ffc1074d}.forms-detail-info .info-icon{width:24px;height:24px;color:var(--color-accent);flex-shrink:0;margin-top:.125rem}.forms-detail-info.guest-mode .info-icon{color:#f59e0b}.forms-detail-info h4{color:var(--color-heading);font-size:1.05rem;font-weight:600;margin:0 0 .625rem;letter-spacing:-.2px}.forms-detail-info p{color:var(--color-copy);font-size:.9rem;margin:0;line-height:1.65}@media(max-width:768px){.forms-detail-container{padding:1.5rem 1rem}.forms-detail-header{padding:1.5rem}.forms-detail-icon{width:64px;height:64px}.forms-detail-icon svg{width:32px;height:32px}.forms-detail-header h1{font-size:1.75rem}.forms-detail-header p{font-size:.95rem}.forms-detail-grid{grid-template-columns:1fr;gap:1.25rem}.forms-detail-card{padding:1.5rem}.forms-detail-card-icon{width:48px;height:48px}.forms-detail-card-icon svg{width:24px;height:24px}.forms-detail-info{flex-direction:column;padding:1.5rem}}@media(max-width:480px){.forms-detail-container{padding:1rem}.forms-detail-header h1{font-size:1.5rem}.forms-back-button{padding:.625rem 1rem;font-size:.875rem}.forms-detail-card{flex-direction:column;text-align:center;padding:1.25rem}.forms-detail-card-arrow{display:none}}.faq-overview-container{max-width:1200px;margin:0 auto;padding:2rem}.faq-overview-header{text-align:center;margin-bottom:3rem}.faq-overview-header h1{color:var(--color-heading);font-size:2.5rem;font-weight:700;margin:0 0 1rem;letter-spacing:-.5px}.faq-overview-header p{color:var(--color-copy);font-size:1.15rem;margin:0}.faq-categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.faq-category-card{display:flex;align-items:center;gap:1.5rem;padding:2rem;background:var(--color-card-bg);border-radius:16px;border:2px solid var(--color-alpha-100);text-decoration:none;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 2px 8px #00000014;text-align:left}.faq-category-card:hover{border-color:var(--color-accent);box-shadow:0 8px 24px #0d3d5226;transform:translateY(-4px)}.faq-category-card:hover .faq-category-icon{transform:scale(1.05)}.faq-category-card:hover .faq-category-arrow{transform:translate(4px)}.faq-category-icon{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease;box-shadow:0 4px 12px #00000026}.faq-category-icon svg{width:32px;height:32px;color:#fff}.faq-category-content{flex:1;min-width:0}.faq-category-content h3{color:var(--color-heading);font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.faq-category-content p{color:var(--color-copy);font-size:.95rem;margin:0 0 .75rem;line-height:1.5}.faq-category-count{display:inline-block;color:var(--color-accent);font-size:.875rem;font-weight:600;padding:.25rem .75rem;background:#4a90e21a;border-radius:6px}.faq-category-arrow{width:24px;height:24px;color:var(--color-copy);flex-shrink:0;transition:all .3s ease}.faq-category-arrow svg{width:100%;height:100%}.faq-overview-contact{display:flex;align-items:flex-start;gap:1.5rem;padding:2rem;background:var(--color-card-bg);border:2px solid var(--color-accent);border-radius:16px;box-shadow:0 2px 8px #00000014}.faq-overview-contact-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-accent);color:#fff}.faq-overview-contact-icon svg{width:24px;height:24px}.faq-overview-contact h3{color:var(--color-heading);font-size:1.25rem;font-weight:700;margin:0 0 .75rem}.faq-overview-contact p{color:var(--color-copy);font-size:1rem;line-height:1.6;margin:0}@media(max-width:768px){.faq-overview-container{padding:1.5rem 1rem}.faq-overview-header h1{font-size:2rem}.faq-overview-header p{font-size:1rem}.faq-categories-grid{grid-template-columns:1fr;gap:1.5rem}.faq-category-card{padding:1.5rem}.faq-category-icon{width:56px;height:56px}.faq-category-icon svg{width:28px;height:28px}.faq-category-content h3{font-size:1.1rem}.faq-category-content p{font-size:.9rem}.faq-overview-contact{flex-direction:column;padding:1.5rem;text-align:center}.faq-overview-contact-icon{margin:0 auto}}@media(max-width:480px){.faq-overview-container{padding:1rem}.faq-overview-header{margin-bottom:2rem}.faq-overview-header h1{font-size:1.75rem}.faq-category-card{flex-direction:column;text-align:center;padding:1.25rem}.faq-category-arrow{display:none}}.faq-detail-container{max-width:900px;margin:0 auto;padding:2rem}.faq-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:2px solid var(--color-alpha-100);border-radius:8px;color:var(--color-heading);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:2rem}.faq-back-button:hover{background:var(--color-alpha-50);border-color:var(--color-accent);transform:translate(-2px)}.faq-back-button svg{width:20px;height:20px}.faq-detail-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:3rem;padding:2rem;background:var(--color-card-bg);border:2px solid var(--color-alpha-100);border-radius:16px;box-shadow:0 2px 8px #00000014}.faq-detail-icon{width:72px;height:72px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #00000026}.faq-detail-icon svg{width:36px;height:36px;color:#fff}.faq-detail-header h1{color:var(--color-heading);font-size:2rem;font-weight:700;margin:0 0 .5rem;letter-spacing:-.5px}.faq-detail-header p{color:var(--color-copy);font-size:1rem;margin:0;line-height:1.5}.faq-detail-content{display:flex;flex-direction:column;gap:1rem;margin-bottom:3rem}.faq-detail-item{background:var(--color-card-bg);border:2px solid var(--color-alpha-100);border-radius:12px;overflow:hidden;transition:all .3s ease}.faq-detail-item.open{border-color:var(--color-accent);box-shadow:0 4px 12px #4a90e226}.faq-detail-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem;background:transparent;border:none;cursor:pointer;text-align:left;transition:background-color .2s ease}.faq-detail-question:hover{background:var(--color-alpha-50)}.faq-detail-question-text{color:var(--color-heading);font-size:1.1rem;font-weight:600;line-height:1.5}.faq-detail-icon-chevron{width:24px;height:24px;color:var(--color-accent);flex-shrink:0;transition:transform .3s ease}.faq-detail-icon-chevron.rotate{transform:rotate(180deg)}.faq-detail-answer{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;background:var(--color-alpha-50)}.faq-detail-answer.show{max-height:1000px;padding:1.5rem;border-top:1px solid var(--color-alpha-100)}.faq-detail-answer p{color:var(--color-copy);font-size:1rem;line-height:1.7;margin:0}.faq-detail-contact{display:flex;align-items:flex-start;gap:1.5rem;padding:2rem;background:var(--color-card-bg);border:2px solid var(--color-accent);border-radius:16px;box-shadow:0 2px 8px #00000014}.faq-detail-contact-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-accent);color:#fff}.faq-detail-contact-icon svg{width:24px;height:24px}.faq-detail-contact h3{color:var(--color-heading);font-size:1.25rem;font-weight:700;margin:0 0 .75rem}.faq-detail-contact p{color:var(--color-copy);font-size:1rem;line-height:1.6;margin:0}@media(max-width:768px){.faq-detail-container{padding:1.5rem 1rem}.faq-back-button{padding:.625rem 1rem;font-size:.875rem}.faq-detail-header{flex-direction:column;text-align:center;padding:1.5rem}.faq-detail-icon{width:64px;height:64px}.faq-detail-icon svg{width:32px;height:32px}.faq-detail-header h1{font-size:1.75rem}.faq-detail-header p{font-size:.95rem}.faq-detail-question{padding:1.25rem}.faq-detail-question-text{font-size:1rem}.faq-detail-answer.show{padding:1.25rem}.faq-detail-answer p{font-size:.95rem}.faq-detail-contact{flex-direction:column;text-align:center;padding:1.5rem}.faq-detail-contact-icon{margin:0 auto}}@media(max-width:480px){.faq-detail-container{padding:1rem}.faq-back-button{width:100%;justify-content:center}.faq-detail-header{padding:1.25rem}.faq-detail-header h1{font-size:1.5rem}.faq-detail-question{padding:1rem}.faq-detail-question-text{font-size:.95rem}.faq-detail-answer.show{padding:1rem}}.cookie-banner-overlay{position:fixed;inset:0;background:#00000080;z-index:9998;animation:fadeIn .3s ease}.cookie-banner{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);max-width:600px;width:calc(100% - 2rem);background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;z-index:9999;animation:slideUp .4s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(30px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.cookie-banner-content{padding:2rem}.cookie-banner-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.cookie-icon{width:32px;height:32px;color:#1a5a7a;flex-shrink:0}.cookie-banner-header h2{margin:0;font-size:1.5rem;color:#0d3d52}.cookie-banner-text{color:#4b5563;line-height:1.6;margin:0 0 1.5rem;font-size:.95rem}.cookie-banner-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.cookie-btn{padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;flex:1;min-width:140px}.cookie-btn-primary{background:linear-gradient(135deg,#0d3d52,#1a5a7a);color:#fff}.cookie-btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0d3d524d}.cookie-btn-secondary{background:#f3f4f6;color:#374151}.cookie-btn-secondary:hover{background:#e5e7eb}.cookie-btn-text{background:transparent;color:#1a5a7a;text-decoration:underline;min-width:auto;flex:none}.cookie-btn-text:hover{color:#0d3d52}.cookie-details{margin:1.5rem 0;border-top:1px solid #e5e7eb;padding-top:1.5rem}.cookie-category{margin-bottom:1.5rem}.cookie-category:last-child{margin-bottom:0}.cookie-category-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.cookie-category-header input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#1a5a7a}.cookie-category-header input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.cookie-category-header label{display:flex;align-items:center;gap:.5rem;cursor:pointer;flex:1;color:#1f2937}.cookie-category-header input[type=checkbox]:disabled+label{cursor:default}.cookie-badge{background:#d1fae5;color:#065f46;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.cookie-category-desc{color:#6b7280;font-size:.875rem;line-height:1.5;margin:0;padding-left:2.25rem}.cookie-banner-footer{color:#6b7280;font-size:.875rem;margin:0;padding-top:1rem;border-top:1px solid #f3f4f6}.cookie-banner-footer a{color:#1a5a7a;text-decoration:underline;font-weight:500}.cookie-banner-footer a:hover{color:#0d3d52}@media(max-width:640px){.cookie-banner{bottom:0;left:0;right:0;transform:none;width:100%;max-width:none;border-radius:16px 16px 0 0}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.cookie-banner-content{padding:1.5rem;max-height:90vh;overflow-y:auto}.cookie-banner-actions{flex-direction:column}.cookie-btn{width:100%;min-width:0}.cookie-category-desc{padding-left:2rem}}#root{width:100%;min-height:100vh}.loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;font-size:1.2rem;color:var(--color-text);background:var(--color-heading);gap:1.5rem;font-family:Visby CF,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.loading:before{content:"";width:60px;height:60px;border:4px solid var(--color-alpha-100);border-top-color:var(--color-text);border-right-color:var(--color-alpha-200);border-radius:50%;animation:spin 1s cubic-bezier(.5,0,.5,1) infinite;box-shadow:0 0 20px var(--color-alpha-200)}@keyframes spin{to{transform:rotate(360deg)}}
