.header{position:fixed;top:0;transform:translateY(var(--banner-height, 0px));left:0;right:0;z-index:1000;background-color:#242323;-webkit-backdrop-filter:blur(.625rem);backdrop-filter:blur(.625rem);transition:transform .25s ease,background-color .2s ease}.header.banner-hidden{transform:translateY(0)}.header-container{width:100%;max-width:120rem;margin:0 auto;padding:1rem;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:1rem}.header-brand{flex-shrink:0}.logo-button{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;transition:transform .2s ease}.logo-button:hover{transform:scale(1.05)}.logo-image{height:4rem;width:auto}.logo-text{font-size:1.75rem;font-weight:700;color:#fff;text-decoration:none}.header-nav{position:fixed;top:100%;left:0;right:0;background-color:#242323;border-top:.0625rem solid rgba(255,255,255,.1);transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease;padding:2rem 1rem;box-shadow:0 .5rem 1rem #0000004d}.nav-open{transform:translateY(0);opacity:1;visibility:visible}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.5rem}.nav-item{margin:0}.nav-link{background:none;border:none;cursor:pointer;font-size:1.125rem;font-weight:500;color:#fffc;text-decoration:none;padding:.75rem 0;width:100%;text-align:left;transition:color .2s ease;display:block}.nav-link:hover{color:#ffec00}.nav-link-active{color:#ffec00;font-weight:700}.header-auth{display:none}.auth-btn{padding:.625rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center}.auth-btn-secondary{background-color:transparent;color:#fff;border:.0625rem solid rgba(255,255,255,.3)}.auth-btn-secondary:hover{background-color:#ffffff1a;border-color:#ffffff80}.auth-btn-primary{background-color:#ffec00;color:#242323}.auth-btn-primary:hover{background-color:#e6d300}.mobile-menu-toggle{display:flex;flex-direction:column;justify-content:space-between;width:2rem;height:1.5rem;background:none;border:none;cursor:pointer;padding:0;z-index:1001}.toggle-line{width:100%;height:.125rem;background-color:#fff;border-radius:.0625rem;transition:all .3s ease;transform-origin:center}.toggle-open .toggle-line:nth-child(1){transform:translateY(.4375rem) rotate(45deg)}.toggle-open .toggle-line:nth-child(2){opacity:0}.toggle-open .toggle-line:nth-child(3){transform:translateY(-.4375rem) rotate(-45deg)}@media (min-width: 641px){.header{top:0;transform:translateY(var(--banner-height, 0px))}.header.banner-hidden{top:0}.header-container{padding:1rem 2rem;box-sizing:border-box}.logo-text{font-size:2rem}.logo-image{height:4.5rem}.header-nav{position:static;transform:none;opacity:1;visibility:visible;background:none;border:none;padding:0;box-shadow:none;flex:1;display:flex;justify-content:center}.nav-list{flex-direction:row;gap:2rem}.nav-link{font-size:1rem;padding:.5rem 0;text-align:center}.header-auth{display:flex;gap:1rem;flex-shrink:0}.mobile-menu-toggle{display:none}}@media (min-width: 1025px){.header{top:0;transform:translateY(var(--banner-height, 0px))}.header.banner-hidden{top:0}.header-container{padding:1.25rem 3rem;box-sizing:border-box}.logo-text{font-size:2.25rem}.logo-image{height:5rem}.nav-list{gap:3rem}.nav-link{font-size:1.125rem;padding:.75rem 0;position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:.125rem;background-color:#ffec00;transition:width .3s ease}.nav-link:hover:after,.nav-link-active:after{width:100%}.header-auth{gap:1.5rem}.auth-btn{padding:.75rem 2rem;font-size:1rem}.auth-btn:hover{transform:translateY(-.0625rem)}}html{scroll-behavior:smooth}.header-banner{position:fixed;top:0;left:0;right:0;z-index:1001;background-color:#ffec00;color:#242323;padding:.5rem 0;font-size:.875rem;text-align:center;max-height:4rem;transition:max-height .25s ease,padding .25s ease,opacity .2s ease}.header-banner.collapsed{padding-top:0;padding-bottom:0;max-height:0;overflow:hidden}.header-banner-container{width:100%;max-width:120rem;margin:0 auto;padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:1rem}.banner-content{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}.banner-message{font-weight:500;line-height:1.4;margin:0}.banner-link{background:none;border:none;cursor:pointer;font-size:.875rem;font-weight:600;color:inherit;text-decoration:underline;padding:0;transition:opacity .2s ease}.banner-link:hover{opacity:.8}.banner-dismiss{background:none;border:none;cursor:pointer;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease;flex-shrink:0}.banner-dismiss:hover{background-color:#0000001a}.dismiss-icon{font-size:1.25rem;font-weight:700;line-height:1}@media (min-width: 641px){.header-banner{padding:.625rem 0;font-size:1rem;max-height:4.5rem}.header-banner-container{padding:0 2rem;box-sizing:border-box}.banner-content{flex-direction:row;gap:1rem}.banner-link{font-size:1rem}.banner-dismiss{width:1.75rem;height:1.75rem}.dismiss-icon{font-size:1.375rem}}@media (min-width: 1025px){.header-banner{padding:.75rem 0;font-size:1rem;max-height:5rem}.header-banner-container{padding:0 3rem;box-sizing:border-box}.banner-content{gap:1.5rem}.banner-link{font-size:1rem}.banner-dismiss{width:2rem;height:2rem}.dismiss-icon{font-size:1.5rem}.banner-dismiss:hover{background-color:#00000026}}.header-banner.dismissing{transform:translateY(-100%);opacity:0}.header-banner.dark-theme{background-color:#242323;color:#fff;border-bottom-color:#ffffff1a}.header-banner.light-theme{background-color:#f7fafc;color:#2d3748;border-bottom-color:#0000001a}.header-banner.primary-theme{background-color:#3182ce;color:#fff;border-bottom-color:#fff3}.header-banner.success-theme{background-color:#38a169;color:#fff;border-bottom-color:#fff3}.header-banner.warning-theme{background-color:#d69e2e;color:#fff;border-bottom-color:#fff3}.header-banner.error-theme{background-color:#e53e3e;color:#fff;border-bottom-color:#fff3}.footer{background-color:#121212;color:#fff;padding:3rem 1rem}.footer-container{max-width:120rem;margin:0 auto}.footer-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;text-align:center}.footer-col{padding:0}.footer-title{font-size:1.5rem;font-weight:700;margin:0;color:#fff}.footer-subtitle{font-size:1rem;margin:0;color:#ddd}.footer-logo-button{background:none;border:none;padding:0;margin:0;cursor:pointer;text-align:left;color:inherit}.footer-brand-address{margin-top:.375rem;font-style:normal;line-height:1.4;color:#bbb;font-size:.9rem}.footer-section-heading{margin:0 0 .5rem;font-size:1rem;font-weight:700}.footer-address{font-style:normal;line-height:1.6;color:#bbb}.footer-cta{margin-top:.5rem}.cta-line{margin:.25rem 0}.cta-phone{color:#ffec00;text-decoration:none;font-weight:700}.cta-actions{margin-top:.5rem}.cta-phone-button{display:inline-block;background:#ffec00;color:#121212;font-weight:800;padding:.75rem 1rem;border-radius:.375rem;text-decoration:none}.footer-email a{color:#fff;text-decoration:underline}.footer-social-simple{margin-top:.5rem}.social-icon-label{margin:0;color:#bbb}.social-follow{margin:.25rem 0 0;font-weight:600}.footer-copy{margin-top:1rem;color:#999;font-size:.875rem}.footer-bottom{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #2b2b2b;text-align:center;display:flex;flex-direction:column;gap:.5rem;align-items:center}.footer-bottom-left,.footer-bottom-right{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.footer-bottom-phone,.footer-bottom-email{color:#ddd;text-decoration:none;font-size:.925rem}.footer-bottom-phone:hover,.footer-bottom-email:hover{color:#fff}.footer-bottom-sep{color:#555}@media (min-width: 641px){.footer{padding:4rem 2rem}.footer-grid{grid-template-columns:1.2fr 1fr;align-items:start;text-align:left;gap:2rem}.footer-newsletter{align-items:flex-end;justify-content:flex-end;justify-self:end;padding-right:0}.footer-title{font-size:1.75rem}.footer-subtitle{font-size:1.125rem}.footer-bottom{flex-direction:row;justify-content:space-between;text-align:left}}@media (min-width: 1025px){.footer{padding:5rem 3rem}.footer-grid{gap:2.5rem}.footer-title{font-size:2rem}.footer-subtitle{font-size:1.25rem}}.footer-newsletter{display:flex;flex-direction:column;align-items:center;justify-content:center}.newsletter-title{margin:0 0 .5rem;font-size:.95rem;font-weight:800;color:#ffec00;letter-spacing:.03em}.newsletter-title{width:100%;max-width:36rem;text-align:left}.newsletter-form{width:100%;max-width:36rem}.newsletter-input-row{display:grid;grid-template-columns:1fr;gap:.5rem}.newsletter-input-wrap{background:#ffffff1f;border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:.375rem .5rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);min-width:0}.newsletter-input{background:transparent;border:none;outline:none;color:#fff;padding:.75rem 1rem;font-size:.95rem;width:100%;display:block}.newsletter-input:focus{outline:2px solid rgba(255,255,255,.35);outline-offset:2px;border-radius:12px}.newsletter-input::placeholder{color:#fff9}.newsletter-button{background:#ffec00;color:#121212;border:none;border-radius:10px;padding:.75rem 1.1rem;font-weight:700;cursor:pointer}.newsletter-button:hover{filter:brightness(.95)}.newsletter-button:disabled{opacity:1;cursor:not-allowed}.newsletter-button:disabled:hover{filter:none}.newsletter-consent{margin-top:.5rem;display:flex;align-items:center;gap:.5rem;color:#ffffffd9;font-size:.8rem}.newsletter-checkbox{width:1rem;height:1rem;border-radius:.25rem;background:transparent;border:1px solid rgba(255,255,255,.3);-webkit-appearance:none;-moz-appearance:none;appearance:none}.newsletter-checkbox:checked{background:#fff}.newsletter-status{margin-top:.5rem;font-size:.85rem}.newsletter-status[data-state=error]{color:#ffb3b3}.newsletter-status[data-state=success]{color:#b8f7c3}@media (min-width: 1025px){.newsletter-title,.newsletter-form{max-width:56rem}}@media (min-width: 641px){.newsletter-input-row{grid-template-columns:1fr 1fr 1fr auto;gap:.5rem;align-items:center}}@media (min-width: 1025px){.newsletter-input-row{gap:.75rem}}@media (min-width: 641px){.footer{padding:4rem 2rem}.footer-title{font-size:1.75rem}.footer-subtitle{font-size:1.125rem}}@media (min-width: 1025px){.footer{padding:5rem 3rem}.footer-title{font-size:2rem}.footer-subtitle{font-size:1.25rem}}
