/* ==========================================================================
 * PetroSpect public homepage stylesheet
 * Hand-authored static Tailwind-compatible utilities used by
 * src/pages/PublicHome.tsx. Every rule here exists to resolve a class that
 * appears literally in that source file. No rule is decorative. Generated
 * from the class list extracted from the component source.
 *
 * Scoping: these utilities are written as plain class selectors. They do NOT
 * collide with the ERP's pre-compiled CSS because:
 *   - brand-* colour tokens, arbitrary [..] values, and custom utilities
 *     (bg-grid, glass, text-shadow-premium, shadow-3xl, animate-heartbeat,
 *     animate-pulse-slow) are exclusive to the homepage.
 *   - where a token also exists in the ERP's compiled CSS (e.g. .h-screen),
 *     the cascade resolves by load order; the ERP page does not mount
 *     PublicHome, so no visual conflict occurs on /portal.
 * ==========================================================================
 */

/* Keyframes */
@keyframes ph_heartbeat {
  0%,100% { opacity:0.3; filter:blur(0px); }
  15%     { opacity:1;   filter:blur(2px); }
  30%     { opacity:0.3; filter:blur(0px); }
  45%     { opacity:1;   filter:blur(2px); }
  60%     { opacity:0.3; filter:blur(0px); }
}
@keyframes ph_pulse_slow {
  0%,100% { opacity:0.4; transform:scale(1.1); }
  50%     { opacity:0.7; transform:scale(1); }
}
@keyframes tw_ping {
  75%,100% { transform:scale(2); opacity:0; }
}

/* Homepage baseline — scoped to .homepage-root wrapper on PublicHome.tsx so
   these never affect /portal (which has its own body font via shadcn). */
html { scroll-behavior:smooth; }.homepage-root { font-family:"Inter",ui-sans-serif,system-ui,sans-serif;
                 background:#fff; color:#0f172a;
                 -webkit-font-smoothing:antialiased;
                 -moz-osx-font-smoothing:grayscale; }

/* --- Utilities ------------------------------------------------------------ */
.-bottom-1 {bottom:-0.25rem;}.homepage-root .-left-32 {left:-8.0rem;}.homepage-root .-right-32 {right:-8.0rem;}.homepage-root .-rotate-90 {transform:rotate(90deg);}.homepage-root .-skew-x-12 {transform:skewX(12deg);}.homepage-root .-translate-y-1\/2 {transform:translateY(50%);}.homepage-root .absolute {position:absolute;}.homepage-root .active\:translate-y-0:active {transform:translateY(0);}.homepage-root .animate-heartbeat {animation:ph_heartbeat 2.5s ease-in-out infinite;}.homepage-root .animate-ping {animation:tw_ping 1s cubic-bezier(0,0,0.2,1) infinite;}.homepage-root .animate-pulse-slow {animation:ph_pulse_slow 12s cubic-bezier(0.4,0,0.6,1) infinite;}.homepage-root .aspect-\[4\/3\] {aspect-ratio:4/3;}.homepage-root .aspect-\[4\/5\] {aspect-ratio:4/5;}.homepage-root .aspect-video {aspect-ratio:16/9;}.homepage-root .backdrop-blur-sm {backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);}.homepage-root .backdrop-blur-xl {backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);}.homepage-root .bg-brand-navy {background-color:#0B0E2A;}.homepage-root .bg-brand-navy\/30 {background-color:rgba(11,14,42,0.3);}.homepage-root .bg-brand-navy\/40 {background-color:rgba(11,14,42,0.4);}.homepage-root .bg-brand-navy\/60 {background-color:rgba(11,14,42,0.6);}.homepage-root .bg-brand-navy\/95 {background-color:rgba(11,14,42,0.95);}.homepage-root .bg-brand-orange {background-color:#6B74B5;}.homepage-root .bg-brand-orange\/10 {background-color:rgba(107,116,181,0.1);}.homepage-root .bg-brand-yellow {background-color:#FEF200;}.homepage-root .bg-center {background-position:center;}.homepage-root .bg-cover {background-size:cover;}.homepage-root .bg-gradient-to-b {background-image:linear-gradient(to bottom,var(--tw-gradient-stops));}.homepage-root .bg-gradient-to-r {background-image:linear-gradient(to right,var(--tw-gradient-stops));}.homepage-root .bg-gradient-to-t {background-image:linear-gradient(to top,var(--tw-gradient-stops));}.homepage-root .bg-grid {background-image:linear-gradient(rgba(255,255,255,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.05) 1px,transparent 1px);background-size:50px 50px;}.homepage-root .bg-slate-100 {background-color:#f1f5f9;}.homepage-root .bg-slate-200 {background-color:#e2e8f0;}.homepage-root .bg-surface-gray {background-color:#F8FAFC;}.homepage-root .bg-surface-gray\/50 {background-color:rgba(248,250,252,0.5);}.homepage-root .bg-transparent {background-color:transparent;}.homepage-root .bg-white {background-color:#ffffff;}.homepage-root .bg-white\/10 {background-color:rgba(255,255,255,0.1);}.homepage-root .bg-white\/20 {background-color:rgba(255,255,255,0.2);}.homepage-root .bg-white\/5 {background-color:rgba(255,255,255,0.05);}.homepage-root .bg-white\/\[0\.02\] {background-color:rgba(255,255,255,0.02);}.homepage-root .block {display:block;}.homepage-root .blur-md {filter:blur(12px);}.homepage-root .blur-sm {filter:blur(4px);}.homepage-root .border-b {border-bottom-width:1px;}.homepage-root .border-brand-orange {border-color:#6B74B5;}.homepage-root .border-brand-orange\/20 {border-color:rgba(107,116,181,0.2);}.homepage-root .border-l-4 {border-left-width:4px;}.homepage-root .border-none {border-style:none;}.homepage-root .border-slate-100 {border-color:#f1f5f9;}.homepage-root .border-t {border-top-width:1px;}.homepage-root .border-white\/10 {border-color:rgba(255,255,255,0.1);}.homepage-root .border-white\/5 {border-color:rgba(255,255,255,0.05);}.homepage-root .border-y {border-top-width:1px;border-bottom-width:1px;}.homepage-root .bottom-0 {bottom:0.0rem;}.homepage-root .bottom-12 {bottom:3.0rem;}.homepage-root .contrast-125 {filter:contrast(1.25);}.homepage-root .cursor-pointer {cursor:pointer;}.homepage-root .drop-shadow-\[0_0_15px_rgba\(254\,242\,0\,0\.8\)\] {filter:drop-shadow(0 0 15px rgba(254,242,0,0.8));}.homepage-root .fixed {position:fixed;}.homepage-root .flex {display:flex;}.homepage-root .flex-1 {flex:1 1 0%;}.homepage-root .flex-col {flex-direction:column;}.homepage-root .flex-row-reverse {flex-direction:row-reverse;}.homepage-root .flex-wrap {flex-wrap:wrap;}.homepage-root .focus\:ring-4:focus {box-shadow:0 0 0 4px var(--tw-ring-color,rgba(0,0,0,0.5));}.homepage-root .focus\:ring-brand-yellow\/30:focus {--tw-ring-color:rgba(254,242,0,0.3);}.homepage-root .font-black {font-weight:900;}.homepage-root .font-bold {font-weight:700;}.homepage-root .font-medium {font-weight:500;}.homepage-root .from-brand-navy {--tw-gradient-from:#0B0E2A;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,rgba(0,0,0,0));}.homepage-root .from-brand-navy\/40 {--tw-gradient-from:rgba(11,14,42,0.4);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,rgba(0,0,0,0));}.homepage-root .gap-12 {gap:3.0rem;}.homepage-root .gap-16 {gap:4.0rem;}.homepage-root .gap-20 {gap:5.0rem;}.homepage-root .gap-4 {gap:1.0rem;}.homepage-root .gap-6 {gap:1.5rem;}.homepage-root .gap-8 {gap:2.0rem;}.homepage-root .glass {background:rgba(255,255,255,0.05);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,0.1);}.homepage-root .grid {display:grid;}.homepage-root .grid-cols-2 {grid-template-columns:repeat(2,minmax(0,1fr));}.homepage-root .grid-cols-3 {grid-template-columns:repeat(3,minmax(0,1fr));}.homepage-root .group {}.homepage-root .group:hover .group-hover\:-translate-x-1 {transform:translateX(0.25rem);}.homepage-root .group:hover .group-hover\:-translate-x-2 {transform:translateX(0.5rem);}.homepage-root .group:hover .group-hover\:bg-brand-orange {background-color:#6B74B5;}.homepage-root .group:hover .group-hover\:bg-brand-yellow {background-color:#FEF200;}.homepage-root .group:hover .group-hover\:opacity-100 {opacity:1.0;}.homepage-root .group:hover .group-hover\:rotate-0 {transform:rotate(0);}.homepage-root .group:hover .group-hover\:scale-110 {transform:scale(1.1);}.homepage-root .group:hover .group-hover\:text-brand-navy {color:#0B0E2A;}.homepage-root .group:hover .group-hover\:text-brand-orange {color:#6B74B5;}.homepage-root .group:hover .group-hover\:text-brand-yellow {color:#FEF200;}.homepage-root .group:hover .group-hover\:translate-x-1 {transform:translateX(0.25rem);}.homepage-root .group:hover .group-hover\:translate-x-2 {transform:translateX(0.5rem);}.homepage-root .group:hover .group-hover\:translate-y-0 {transform:translateY(0);}.homepage-root .group:hover .group-hover\:w-full {width:100%;}.homepage-root .h-0\.5 {height:0.125rem;}.homepage-root .h-1\.5 {height:0.375rem;}.homepage-root .h-12 {height:3.0rem;}.homepage-root .h-14 {height:3.5rem;}.homepage-root .h-16 {height:4.0rem;}.homepage-root .h-2 {height:0.5rem;}.homepage-root .h-3 {height:0.75rem;}.homepage-root .h-3\.5 {height:0.875rem;}.homepage-root .h-4 {height:1.0rem;}.homepage-root .h-5 {height:1.25rem;}.homepage-root .h-6 {height:1.5rem;}.homepage-root .h-64 {height:16.0rem;}.homepage-root .h-8 {height:2.0rem;}.homepage-root .h-\[1px\] {height:1px;}.homepage-root .h-full {height:100%;}.homepage-root .h-px {height:1px;}.homepage-root .h-screen {height:100vh;}.homepage-root .hidden {display:none;}.homepage-root .hover\:bg-brand-orange:hover {background-color:#6B74B5;}.homepage-root .hover\:bg-brand-yellow:hover {background-color:#FEF200;}.homepage-root .hover\:bg-white:hover {background-color:#ffffff;}.homepage-root .hover\:bg-white\/20:hover {background-color:rgba(255,255,255,0.2);}.homepage-root .hover\:bg-white\/\[0\.07\]:hover {background-color:rgba(255,255,255,0.07);}.homepage-root .hover\:border-brand-yellow:hover {border-color:#FEF200;}.homepage-root .hover\:border-brand-yellow\/50:hover {border-color:rgba(254,242,0,0.5);}.homepage-root .hover\:grayscale-0:hover {filter:grayscale(0);}.homepage-root .hover\:text-brand-navy:hover {color:#0B0E2A;}.homepage-root .hover\:text-brand-yellow:hover {color:#FEF200;}.homepage-root .hover\:text-white:hover {color:#ffffff;}.homepage-root .hover\:translate-y-\[-2px\]:hover {transform:translateY(-2px);}.homepage-root .inline-block {display:inline-block;}.homepage-root .inline-flex {display:inline-flex;}.homepage-root .inset-0 {inset:0;}.homepage-root .inset-x-0 {left:0;right:0;}.homepage-root .italic {font-style:italic;}.homepage-root .items-center {align-items:center;}.homepage-root .items-start {align-items:flex-start;}.homepage-root .items-stretch {align-items:stretch;}.homepage-root .justify-between {justify-content:space-between;}.homepage-root .justify-center {justify-content:center;}.homepage-root .leading-\[0\.8\] {line-height:0.8;}.homepage-root .leading-relaxed {line-height:1.625;}.homepage-root .leading-tight {line-height:1.25;}.homepage-root .left-0 {left:0.0rem;}.homepage-root .left-12 {left:3.0rem;}
@media (min-width:1024px) {.homepage-root .lg\:block {display:block;}}
@media (min-width:1024px) {.homepage-root .lg\:col-span-5 {grid-column:span 5 / span 5;}}
@media (min-width:1024px) {.homepage-root .lg\:col-span-7 {grid-column:span 7 / span 7;}}
@media (min-width:1024px) {.homepage-root .lg\:flex {display:flex;}}
@media (min-width:1024px) {.homepage-root .lg\:flex-row {flex-direction:row;}}
@media (min-width:1024px) {.homepage-root .lg\:flex-row-reverse {flex-direction:row-reverse;}}
@media (min-width:1024px) {.homepage-root .lg\:gap-8 {gap:2.0rem;}}
@media (min-width:1024px) {.homepage-root .lg\:grid-cols-12 {grid-template-columns:repeat(12,minmax(0,1fr));}}
@media (min-width:1024px) {.homepage-root .lg\:grid-cols-3 {grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (min-width:1024px) {.homepage-root .lg\:grid-cols-4 {grid-template-columns:repeat(4,minmax(0,1fr));}}
@media (min-width:1024px) {.homepage-root .lg\:grid-cols-5 {grid-template-columns:repeat(5,minmax(0,1fr));}}
@media (min-width:1024px) {.homepage-root .lg\:hidden {display:none;}}
@media (min-width:1024px) {.homepage-root .lg\:items-end {align-items:flex-end;}}
@media (min-width:1024px) {.homepage-root .lg\:justify-between {justify-content:space-between;}}
@media (min-width:1024px) {.homepage-root .lg\:p-14 {padding:3.5rem;}}
@media (min-width:1024px) {.homepage-root .lg\:p-16 {padding:4.0rem;}}
@media (min-width:1024px) {.homepage-root .lg\:px-8 {padding-left:2.0rem;padding-right:2.0rem;}}
@media (min-width:1024px) {.homepage-root .lg\:text-3xl {font-size:1.875rem;line-height:2.25rem;}}
@media (min-width:1024px) {.homepage-root .lg\:text-4xl {font-size:2.25rem;line-height:2.5rem;}}
@media (min-width:1024px) {.homepage-root .lg\:text-5xl {font-size:3rem;line-height:1;}}
@media (min-width:1024px) {.homepage-root .lg\:text-9xl {font-size:8rem;line-height:1;}}
@media (min-width:1024px) {.homepage-root .lg\:text-\[10rem\] {font-size:10rem;}}
@media (min-width:1024px) {.homepage-root .lg\:text-xl {font-size:1.25rem;line-height:1.75rem;}}.homepage-root .max-w-2xl {max-width:42rem;}.homepage-root .max-w-4xl {max-width:56rem;}.homepage-root .max-w-7xl {max-width:80rem;}.homepage-root .max-w-md {max-width:28rem;}.homepage-root .max-w-sm {max-width:24rem;}.homepage-root .mb-10 {margin-bottom:2.5rem;}.homepage-root .mb-12 {margin-bottom:3.0rem;}.homepage-root .mb-16 {margin-bottom:4.0rem;}.homepage-root .mb-2 {margin-bottom:0.5rem;}.homepage-root .mb-24 {margin-bottom:6.0rem;}.homepage-root .mb-4 {margin-bottom:1.0rem;}.homepage-root .mb-6 {margin-bottom:1.5rem;}.homepage-root .mb-8 {margin-bottom:2.0rem;}
@media (min-width:768px) {.homepage-root .md\:flex-row {flex-direction:row;}}
@media (min-width:768px) {.homepage-root .md\:grid-cols-2 {grid-template-columns:repeat(2,minmax(0,1fr));}}.homepage-root .min-h-screen {min-height:100vh;}.homepage-root .ml-3 {margin-left:0.75rem;}.homepage-root .mr-3 {margin-right:0.75rem;}.homepage-root .mt-10 {margin-top:2.5rem;}.homepage-root .mt-12 {margin-top:3.0rem;}.homepage-root .mt-16 {margin-top:4.0rem;}.homepage-root .mt-20 {margin-top:5.0rem;}.homepage-root .mt-6 {margin-top:1.5rem;}.homepage-root .mt-auto {margin-top:auto;}.homepage-root .mx-auto {margin-left:auto;margin-right:auto;}.homepage-root .not-italic {font-style:normal;}.homepage-root .object-cover {object-fit:cover;}.homepage-root .opacity-0 {opacity:0.0;}.homepage-root .opacity-10 {opacity:0.1;}.homepage-root .opacity-20 {opacity:0.2;}.homepage-root .opacity-50 {opacity:0.5;}.homepage-root .origin-center {transform-origin:center;}.homepage-root .outline-none {outline:2px solid transparent;outline-offset:2px;}.homepage-root .overflow-hidden {overflow:hidden;}.homepage-root .overflow-visible {overflow:visible;}.homepage-root .p-1 {padding:0.25rem;}.homepage-root .p-10 {padding:2.5rem;}.homepage-root .p-2 {padding:0.5rem;}.homepage-root .p-3 {padding:0.75rem;}.homepage-root .p-4 {padding:1.0rem;}.homepage-root .p-5 {padding:1.25rem;}.homepage-root .p-6 {padding:1.5rem;}.homepage-root .p-8 {padding:2.0rem;}.homepage-root .pb-12 {padding-bottom:3.0rem;}.homepage-root .pb-16 {padding-bottom:4.0rem;}.homepage-root .pl-8 {padding-left:2.0rem;}.homepage-root .pointer-events-none {pointer-events:none;}.homepage-root .pt-10 {padding-top:2.5rem;}.homepage-root .pt-12 {padding-top:3.0rem;}.homepage-root .pt-20 {padding-top:5.0rem;}.homepage-root .pt-32 {padding-top:8.0rem;}.homepage-root .pt-4 {padding-top:1.0rem;}.homepage-root .px-1 {padding-left:0.25rem;padding-right:0.25rem;}.homepage-root .px-12 {padding-left:3.0rem;padding-right:3.0rem;}.homepage-root .px-3 {padding-left:0.75rem;padding-right:0.75rem;}.homepage-root .px-4 {padding-left:1.0rem;padding-right:1.0rem;}.homepage-root .px-6 {padding-left:1.5rem;padding-right:1.5rem;}.homepage-root .px-8 {padding-left:2.0rem;padding-right:2.0rem;}.homepage-root .py-1\.5 {padding-top:0.375rem;padding-bottom:0.375rem;}.homepage-root .py-12 {padding-top:3.0rem;padding-bottom:3.0rem;}.homepage-root .py-2 {padding-top:0.5rem;padding-bottom:0.5rem;}.homepage-root .py-2\.5 {padding-top:0.625rem;padding-bottom:0.625rem;}.homepage-root .py-24 {padding-top:6.0rem;padding-bottom:6.0rem;}.homepage-root .py-3 {padding-top:0.75rem;padding-bottom:0.75rem;}.homepage-root .py-32 {padding-top:8.0rem;padding-bottom:8.0rem;}.homepage-root .py-4 {padding-top:1.0rem;padding-bottom:1.0rem;}.homepage-root .py-5 {padding-top:1.25rem;padding-bottom:1.25rem;}.homepage-root .py-6 {padding-top:1.5rem;padding-bottom:1.5rem;}.homepage-root .relative {position:relative;}.homepage-root .right-0 {right:0.0rem;}.homepage-root .right-12 {right:3.0rem;}.homepage-root .right-auto {right:auto;}.homepage-root .rotate-180 {transform:rotate(180deg);}.homepage-root .rotate-90 {transform:rotate(90deg);}.homepage-root .rotate-\[-90deg\] {transform:rotate(-90deg);}.homepage-root .rotate-\[90deg\] {transform:rotate(90deg);}.homepage-root .rounded-2xl {border-radius:1rem;}.homepage-root .rounded-3xl {border-radius:1.5rem;}.homepage-root .rounded-\[3rem\] {border-radius:3rem;}.homepage-root .rounded-\[4rem\] {border-radius:4rem;}.homepage-root .rounded-full {border-radius:9999px;}.homepage-root .rounded-lg {border-radius:0.5rem;}.homepage-root .rounded-xl {border-radius:0.75rem;}.homepage-root [dir=rtl] .rtl\:bg-gradient-to-l {background-image:linear-gradient(to left,var(--tw-gradient-stops));}.homepage-root [dir=rtl] .rtl\:border-l-0 {border-left-width:0;}.homepage-root [dir=rtl] .rtl\:border-r-4 {border-right-width:4px;}.homepage-root [dir=rtl] .rtl\:pl-0 {padding-left:0.0rem;}.homepage-root [dir=rtl] .rtl\:pr-8 {padding-right:2.0rem;}.homepage-root .rtl\:space-x-reverse > :not([hidden]) ~ :not([hidden]) {--tw-space-x-reverse:1;}.homepage-root .select-none {user-select:none;}.homepage-root .shadow-2xl {box-shadow:0 25px 50px -12px rgba(0,0,0,0.25);}.homepage-root .shadow-3xl {box-shadow:0 50px 100px -20px rgba(15,23,42,0.25),0 30px 60px -30px rgba(0,0,0,0.3);}.homepage-root .shadow-brand-navy\/20 {box-shadow:0 10px 15px -3px rgba(11,14,42,0.2),0 4px 6px -4px rgba(11,14,42,0.2);}.homepage-root .shadow-lg {box-shadow:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -4px rgba(0,0,0,0.1);}.homepage-root .shadow-xl {box-shadow:0 20px 25px -5px rgba(0,0,0,0.1),0 8px 10px -6px rgba(0,0,0,0.1);}
@media (min-width:640px) {.homepage-root .sm\:flex-row {flex-direction:row;}}
@media (min-width:640px) {.homepage-root .sm\:grid-cols-2 {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (min-width:640px) {.homepage-root .sm\:grid-cols-4 {grid-template-columns:repeat(4,minmax(0,1fr));}}
@media (min-width:640px) {.homepage-root .sm\:px-6 {padding-left:1.5rem;padding-right:1.5rem;}}
@media (min-width:640px) {.homepage-root .sm\:w-auto {width:auto;}}.homepage-root .space-x-10 > :not([hidden]) ~ :not([hidden]) {margin-left:2.5rem;}.homepage-root .space-x-12 > :not([hidden]) ~ :not([hidden]) {margin-left:3.0rem;}.homepage-root .space-x-2 > :not([hidden]) ~ :not([hidden]) {margin-left:0.5rem;}.homepage-root .space-x-3 > :not([hidden]) ~ :not([hidden]) {margin-left:0.75rem;}.homepage-root .space-x-4 > :not([hidden]) ~ :not([hidden]) {margin-left:1.0rem;}.homepage-root .space-x-6 > :not([hidden]) ~ :not([hidden]) {margin-left:1.5rem;}.homepage-root .space-x-8 > :not([hidden]) ~ :not([hidden]) {margin-left:2.0rem;}.homepage-root .space-x-reverse > :not([hidden]) ~ :not([hidden]) {--tw-space-x-reverse:1;}.homepage-root .space-y-10 > :not([hidden]) ~ :not([hidden]) {margin-top:2.5rem;}.homepage-root .space-y-32 > :not([hidden]) ~ :not([hidden]) {margin-top:8.0rem;}.homepage-root .space-y-6 > :not([hidden]) ~ :not([hidden]) {margin-top:1.5rem;}.homepage-root .space-y-8 > :not([hidden]) ~ :not([hidden]) {margin-top:2.0rem;}.homepage-root .sticky {position:sticky;}.homepage-root .text-2xl {font-size:1.5rem;line-height:2rem;}.homepage-root .text-3xl {font-size:1.875rem;line-height:2.25rem;}.homepage-root .text-4xl {font-size:2.25rem;line-height:2.5rem;}.homepage-root .text-6xl {font-size:3.75rem;line-height:1;}.homepage-root .text-\[10px\] {font-size:10px;}.homepage-root .text-\[11px\] {font-size:11px;}.homepage-root .text-\[15rem\] {font-size:15rem;}.homepage-root .text-brand-navy {color:#0B0E2A;}.homepage-root .text-brand-orange {color:#6B74B5;}.homepage-root .text-brand-yellow {color:#FEF200;}.homepage-root .text-center {text-align:center;}.homepage-root .text-lg {font-size:1.125rem;line-height:1.75rem;}.homepage-root .text-right {text-align:right;}.homepage-root .text-shadow-premium {text-shadow:0 20px 40px rgba(0,0,0,1);}.homepage-root .text-slate-300 {color:#cbd5e1;}.homepage-root .text-slate-400 {color:#94a3b8;}.homepage-root .text-slate-500 {color:#64748b;}.homepage-root .text-sm {font-size:0.875rem;line-height:1.25rem;}.homepage-root .text-white {color:#ffffff;}.homepage-root .text-white\/20 {color:rgba(255,255,255,0.2);}.homepage-root .text-white\/40 {color:rgba(255,255,255,0.4);}.homepage-root .text-white\/5 {color:rgba(255,255,255,0.05);}.homepage-root .text-white\/60 {color:rgba(255,255,255,0.6);}.homepage-root .text-white\/70 {color:rgba(255,255,255,0.7);}.homepage-root .text-xl {font-size:1.25rem;line-height:1.75rem;}.homepage-root .text-xs {font-size:0.75rem;line-height:1rem;}.homepage-root .to-brand-navy {--tw-gradient-to:#0B0E2A;}.homepage-root .to-transparent {--tw-gradient-to:transparent;}.homepage-root .top-0 {top:0.0rem;}.homepage-root .top-1\/2 {top:50%;}.homepage-root .top-32 {top:8.0rem;}.homepage-root .tracking-\[0\.2em\] {letter-spacing:0.2em;}.homepage-root .tracking-\[0\.3em\] {letter-spacing:0.3em;}.homepage-root .tracking-\[0\.4em\] {letter-spacing:0.4em;}.homepage-root .tracking-tight {letter-spacing:-0.025em;}.homepage-root .tracking-tighter {letter-spacing:-0.05em;}.homepage-root .tracking-widest {letter-spacing:0.1em;}.homepage-root .transition-all {transition-property:all;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms;}.homepage-root .transition-colors {transition-property:color,background-color,border-color,fill,stroke;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms;}.homepage-root .transition-opacity {transition-property:opacity;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms;}.homepage-root .transition-transform {transition-property:transform;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms;}.homepage-root .translate-x-1\/2 {transform:translateX(50%);}.homepage-root .translate-y-2 {transform:translateY(0.5rem);}.homepage-root .uppercase {text-transform:uppercase;}.homepage-root .via-brand-navy\/40 {--tw-gradient-stops:var(--tw-gradient-from),rgba(11,14,42,0.4),var(--tw-gradient-to,rgba(0,0,0,0));}.homepage-root .via-brand-navy\/60 {--tw-gradient-stops:var(--tw-gradient-from),rgba(11,14,42,0.6),var(--tw-gradient-to,rgba(0,0,0,0));}.homepage-root .via-transparent {--tw-gradient-stops:var(--tw-gradient-from),transparent,var(--tw-gradient-to,rgba(0,0,0,0));}.homepage-root .w-0 {width:0.0rem;}.homepage-root .w-1\/2 {width:50.0%;}.homepage-root .w-1\/3 {width:33.33333333333333%;}.homepage-root .w-12 {width:3.0rem;}.homepage-root .w-14 {width:3.5rem;}.homepage-root .w-16 {width:4.0rem;}.homepage-root .w-2 {width:0.5rem;}.homepage-root .w-3 {width:0.75rem;}.homepage-root .w-3\.5 {width:0.875rem;}.homepage-root .w-4 {width:1.0rem;}.homepage-root .w-5 {width:1.25rem;}.homepage-root .w-6 {width:1.5rem;}.homepage-root .w-8 {width:2.0rem;}.homepage-root .w-full {width:100%;}.homepage-root .w-px {width:1px;}
@media (min-width:1280px) {.homepage-root .xl\:block {display:block;}}.homepage-root .z-0 {z-index:0;}.homepage-root .z-10 {z-index:10;}.homepage-root .z-20 {z-index:20;}.homepage-root .z-50 {z-index:50;}.homepage-root .focus\:ring-brand-yellow\/30:focus {box-shadow:0 0 0 4px rgba(254,242,0,0.3);}.homepage-root .duration-1000 {transition-duration:1000ms;}.homepage-root .duration-300 {transition-duration:300ms;}.homepage-root .duration-500 {transition-duration:500ms;}.homepage-root .duration-700 {transition-duration:700ms;}

/* Added for the public-nav overflow fix: the desktop nav breakpoint moved
   from lg (1024px) to xl (1280px) so the nav + STAFF PORTAL button never
   overflow on 1024-1279px viewports. Placed after every rule above (incl.
   .hidden, .px-4, .items-center, .gap-4/6, .space-x-4) so these variants win
   the cascade at their breakpoint, matching how the existing lg\: rules do. */
@media (min-width:1280px) {.homepage-root .xl\:flex {display:flex;}}
@media (min-width:1280px) {.homepage-root .xl\:hidden {display:none;}}
.homepage-root .px-2\.5 {padding-left:0.625rem;padding-right:0.625rem;}
.homepage-root .shrink-0 {flex-shrink:0;}
.homepage-root .text-\[5rem\] {font-size:5rem;}
@media (min-width:1024px) {.homepage-root .lg\:text-\[9rem\] {font-size:9rem;}}
@media (min-width:1024px) {.homepage-root .lg\:items-start {align-items:flex-start;}}
@media (min-width:1024px) {.homepage-root .lg\:gap-6 {gap:1.5rem;}}
