/* Shared eatirol header, navigation, buttons and footer.
   Every page uses <site-header> and <site-footer>; edit this file once. */
site-header,site-footer{display:block}

.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;font-weight:600;font-size:15px;letter-spacing:-.01em;transition:transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease;cursor:pointer;border:none;text-decoration:none}
.btn-primary{background:var(--navy);color:#fff}
.btn-primary:hover{background:#0a1129;transform:translateY(-2px);box-shadow:0 12px 30px -10px rgba(24,32,56,.5)}
.btn:disabled{opacity:.58;cursor:wait;transform:none!important}
.btn .arrow{width:14px;height:14px;display:inline-block;transition:transform .3s ease}
.btn:hover .arrow{transform:translateX(4px)}

nav.top{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:22px 36px;transition:background .4s ease,backdrop-filter .4s ease,padding .3s ease}
nav.top.scrolled{background:rgba(246,244,239,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:14px 36px;border-bottom:1px solid var(--line)}
nav.top .logo{height:26px;width:auto;display:block}
nav.top .links{display:flex;gap:32px;align-items:center;font-size:14px;color:var(--navy);font-weight:500}
nav.top a,.mobile-menu a{text-decoration:none}
nav.top .links>a:not(.btn):hover{color:var(--teal)}

.menu-toggle{display:none;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:rgba(246,244,239,.9);align-items:center;justify-content:center;cursor:pointer;color:var(--navy)}
.menu-toggle span,.menu-toggle::before,.menu-toggle::after{content:"";display:block;width:19px;height:2px;background:currentColor;position:absolute;transition:transform .25s ease,opacity .25s ease}
.menu-toggle::before{transform:translateY(-6px)}
.menu-toggle::after{transform:translateY(6px)}
.menu-toggle[aria-expanded="true"] span{opacity:0}
.menu-toggle[aria-expanded="true"]::before{transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"]::after{transform:rotate(-45deg)}
.mobile-menu{display:none}

site-footer footer{background:var(--navy-2);color:#fff;padding:48px 0 36px}
.footer-container{max-width:1440px;margin:0 auto;padding:0 36px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:26px 48px}
site-footer footer .left{display:flex;align-items:center;gap:24px}
.footer-brandmark{display:inline-flex;align-items:center;justify-content:center;width:154px;padding:14px 18px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.045);text-decoration:none}
.footer-brandmark img{width:100%;height:auto;display:block}
site-footer footer .meta{color:rgba(255,255,255,.5);font-size:14px}
site-footer footer a.link,site-footer footer button.link{display:inline-flex;align-items:center;gap:7px;background:none;color:rgba(255,255,255,.8);font:inherit;font-size:14px;border:0;border-bottom:1px solid rgba(255,255,255,.3);padding:0;cursor:pointer;text-decoration:none}
site-footer footer a.link:hover,site-footer footer button.link:hover,site-footer footer [aria-current="page"]{color:var(--teal);border-color:var(--teal)}
.social-link svg{width:17px;height:17px;flex:0 0 auto}
.footer-links{display:flex;gap:18px 26px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.footer-credit{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:rgba(255,255,255,.48)}
.footer-credit a{color:rgba(255,255,255,.8);text-decoration:none}
.footer-credit a:hover{color:var(--teal)}

@media(max-width:1100px){
  nav.top .links{display:none}
  .menu-toggle{display:flex;position:relative}
  .mobile-menu{display:flex;position:fixed;z-index:49;top:0;left:0;right:0;background:rgba(246,244,239,.98);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:100px 24px 30px;flex-direction:column;align-items:stretch;gap:4px;border-bottom:1px solid var(--line);transform:translateY(-110%);transition:transform .35s cubic-bezier(.2,.8,.2,1);box-shadow:0 24px 40px rgba(24,32,56,.1)}
  .mobile-menu.open{transform:none}
  .mobile-menu>a:not(.btn){padding:14px 4px;font-size:18px;color:var(--navy);border-bottom:1px solid var(--line)}
  .mobile-menu .btn{margin-top:14px;justify-content:center;color:#fff}
}

@media(max-width:780px){
  nav.top,nav.top.scrolled{padding:13px 18px}
  nav.top .logo{height:24px}
  site-footer footer{padding:40px 0 30px}
  .footer-container{padding:0 20px;grid-template-columns:1fr}
  site-footer footer .left{align-items:flex-start;flex-direction:column;gap:14px}
  .footer-links{justify-content:flex-start}
  .footer-credit{flex-direction:column;gap:10px}
}
