/* Genie Delivery — shared styles (from Genie Website.dc.html design) */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:#0A1330;font-family:Manrope,system-ui,sans-serif;}
::selection{background:#F79129;color:#0A1330;}
.page{background:#F7F6F2;min-height:100vh;overflow-x:hidden;}

@keyframes gmarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes gfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes gdash{to{stroke-dashoffset:-40;}}

.g-navlink:hover{color:#FDB515 !important;}
.g-btn-primary:hover{filter:brightness(1.05);transform:translateY(-2px);}
.g-btn-ghost:hover{background:rgba(255,255,255,0.08) !important;}
.g-card:hover{transform:translateY(-6px);box-shadow:0 26px 50px rgba(10,19,48,0.16) !important;}
.g-card:hover .g-arrow{transform:translateX(4px);opacity:1;}
.g-svc:hover{border-color:#F79129 !important;}
.g-marquee-track:hover{animation-play-state:paused;}
.g-foot-link:hover{color:#FDB515 !important;}
.g-partner:hover{opacity:1 !important;color:#0A1330 !important;}

.g-nav{display:flex;align-items:center;gap:4px;}
.g-burger{display:none;background:none;border:none;cursor:pointer;color:#fff;padding:8px;align-items:center;justify-content:center;border-radius:9px;}
.g-burger:hover{background:rgba(255,255,255,0.08);}

.g-input{width:100%;border:1.5px solid #E2E0D8;border-radius:11px;padding:12px 14px;font-size:14px;font-family:Manrope,system-ui,sans-serif;color:#111B45;outline:none;}
.g-input:focus{border-color:#F79129;}
.g-track-input{flex:1;background:transparent;border:none;outline:none;font-family:'JetBrains Mono',monospace;font-size:14px;color:rgba(255,255,255,0.85);min-width:0;}
.g-track-input::placeholder{color:rgba(255,255,255,0.4);}

@media(max-width:880px){
  .g-burger{display:inline-flex;}
  .g-desktop-cta{display:none !important;}
  .g-nav{position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:rgba(10,19,48,0.98);backdrop-filter:blur(14px);padding:12px 18px 20px;border-bottom:1px solid rgba(255,255,255,0.1);display:none;box-shadow:0 22px 40px rgba(0,0,0,0.35);}
  .g-nav.open{display:flex;}
  .g-nav .g-navlink{color:#fff !important;padding:14px 8px;font-size:15.5px;border-bottom:1px solid rgba(255,255,255,0.07);}
  .g-nav .g-navlink:hover{color:#FDB515 !important;}
  .g-nav .g-btn-primary{margin:14px 0 0 0 !important;justify-content:center;padding:14px !important;font-size:15px !important;}
  [style*="grid-template-columns:repeat(4"]{grid-template-columns:repeat(2,1fr) !important;}
  [style*="grid-template-columns:repeat(5"]{grid-template-columns:repeat(2,1fr) !important;}
  [style*="grid-template-columns:repeat(3"]{grid-template-columns:1fr !important;}
  [style*="grid-template-columns:0.8fr 1.2fr"]{grid-template-columns:1fr !important;}
  [style*="grid-template-columns:1.1fr 1fr"]{grid-template-columns:1fr !important;}
  [style*="grid-template-columns:1fr 1.1fr"]{grid-template-columns:1fr !important;}
  [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr !important;}
  [style*="grid-template-columns:1.6fr"]{grid-template-columns:1fr 1fr !important;}
  h1[style]{font-size:38px !important;line-height:1.08 !important;}
  [style*="padding:110px 32px 120px"]{padding:66px 24px 74px !important;}
  [style*="order:2"]{order:0 !important;}
  [style*="order:1"]{order:0 !important;}
}
@media(max-width:560px){
  [style*="grid-template-columns:repeat(4"]{grid-template-columns:1fr 1fr !important;}
  [style*="grid-template-columns:1.6fr"]{grid-template-columns:1fr !important;}
  h1[style]{font-size:31px !important;}
  [style*="font-size:40px"],[style*="font-size:42px"]{font-size:27px !important;}
  [style*="font-size:38px"],[style*="font-size:36px"],[style*="font-size:34px"]{font-size:24px !important;}
  [style*="padding:0 32px"]{padding-left:20px !important;padding-right:20px !important;}
  [style*="padding:56px"]{padding:30px 24px !important;}
  [style*="padding:60px 56px"]{padding:34px 26px !important;}
  [style*="padding:48px 52px"]{padding:30px 24px !important;}
  [style*="padding:36px"]{padding:26px !important;}
}
