/* NEXT BRIDGE — site styles. Most layout lives inline in index.html (ported from the design). */
html{scroll-behavior:smooth;background:#060A20}
html[data-nb-theme="Light"]{background:#F5F3EF}
body{margin:0;background:inherit;color:#F2F1EE;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
a{color:#FF7A3D;text-decoration:none}
a:hover{color:#FFA270}
::selection{background:#FF4F05;color:#fff}
[hidden]{display:none!important}
/* width/height attributes only reserve aspect ratio; inline styles set the real size */
img{max-width:none;width:auto;height:auto}

@keyframes nbMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes nbFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes nbPulse{0%{box-shadow:0 0 0 0 rgba(255,79,5,.7)}70%{box-shadow:0 0 0 10px rgba(255,79,5,0)}100%{box-shadow:0 0 0 0 rgba(255,79,5,0)}}
@keyframes nbBlink{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes nbSpin{to{transform:rotate(360deg)}}
@keyframes nbFlow{to{stroke-dashoffset:-1}}
@keyframes nbPan{0%{background-position:30% 15%}100%{background-position:70% 85%}}

/* Themes */
[data-nbt]{--bg:#060A20;--bg2:#0A1030;--fg:#F2F1EE;--fg2:#D9DBE6;--mut:#B4B8CC;--mut2:#8A90AA;--acc2:#FF7A3D;--ink:255,255,255;--bgr:6,10,32;--gl:10,16,48;--logoW:block;--logoD:none}
html[data-nb-theme="Light"] [data-nbt]{--bg:#F5F3EF;--bg2:#ECE8E1;--fg:#0B1238;--fg2:#262D5A;--mut:#474D72;--mut2:#666C8C;--acc2:#D4460C;--ink:11,18,56;--bgr:245,243,239;--gl:255,255,255;--logoW:none;--logoD:block}
[data-nbdark]{--bg:#060A20;--bg2:#0A1030;--fg:#F2F1EE;--fg2:#D9DBE6;--mut:#B4B8CC;--mut2:#8A90AA;--acc2:#FF7A3D;--ink:255,255,255;--bgr:6,10,32;--gl:10,16,48;--logoW:block;--logoD:none;color:var(--fg)}
input::placeholder,textarea::placeholder{color:var(--mut2)}

/* Responsive branches (the design switches nav layout at 1200px) */
@media (max-width:1199.98px){.nb-desk{display:none!important}}
@media (min-width:1200px){.nb-mob,.nb-menu{display:none!important}}

/* Accessibility helpers */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nb-skip{position:fixed;left:16px;top:-60px;z-index:300;padding:12px 18px;border-radius:999px;background:#FF4F05;color:#fff;font:500 14px/1 'Geist',system-ui,sans-serif;transition:top .2s}
.nb-skip:focus{top:16px;color:#fff}
:focus-visible{outline:2px solid #FF7A3D;outline-offset:3px}
.nb-form-error{margin:0;font-size:14px;line-height:1.5;color:#FF9A6B}

/* Loader is shown once per browser session */
html.nb-noloader [data-loader]{display:none!important}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important}
}

/* Hover / focus states from the design */
@media (hover:hover){.nb-hover-1:hover{background:rgba(var(--ink),.08)!important;color:#ffffff!important}}
@media (hover:hover){.nb-hover-2:hover{border-color:#FF4F05!important}}
@media (hover:hover){.nb-hover-3:hover{box-shadow:0 10px 50px rgba(255,79,5,.7)!important;color:#ffffff!important}}
@media (hover:hover){.nb-hover-4:hover{background:#ffffff!important;color:var(--bg)!important}}
@media (hover:hover){.nb-hover-5:hover{border-color:#FF4F05!important;background:rgba(255,79,5,.12)!important;color:#ffffff!important}}
@media (hover:hover){.nb-hover-6:hover{border-color:rgba(255,122,61,.45)!important}}
@media (hover:hover){.nb-hover-7:hover{background:linear-gradient(90deg,rgba(255,79,5,.1),rgba(255,79,5,0))!important;padding-left:24px!important}}
@media (hover:hover){.nb-hover-8:hover{border-color:#FF4F05!important;background:rgba(255,79,5,.18)!important}}
.nb-focus-9:focus{border-color:#FF4F05!important;background:rgba(255,79,5,.06)!important}
.nb-focus-10:focus{border-color:#FF4F05!important}
@media (hover:hover){.nb-hover-11:hover{box-shadow:0 12px 60px rgba(255,79,5,.75)!important}}
@media (hover:hover){.nb-hover-12:hover{color:var(--acc2)!important}}

/* Small phones: keep the header on one row, and the rotating badge clear of the hero copy */
@media (max-width:899.98px){.nb-scrollbadge{display:none!important}}
@media (max-width:479.98px){
  [data-nav]{gap:10px!important;padding-left:16px!important;padding-right:16px!important}
  .nb-nav-actions{gap:8px!important}
  .nb-nav-cta{padding:11px 14px!important;font-size:13px!important;gap:6px!important}
  [data-nav] a[aria-label] img{height:26px!important}
}
