
    /* Typography */
    body { font-family: 'Inter', sans-serif; }
    h1, h2, h3, h4, h5, h6, .font-heading { font-family: 'Montserrat', sans-serif; }

    /* Geometric Clip Paths */
    .blog-hero-orange-clip { clip-path: polygon(100% 0, 100% 100%, 0 100%, 30% 0); }
    
    /* Animations */
    .animate-fade-up { opacity: 0; transform: translateY(30px); transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
    .animate-fade-up.visible { opacity: 1; transform: translateY(0); }
    .animate-fade-in { opacity: 0; transition: all 1s ease; }
    .animate-fade-in.visible { opacity: 1; }
    
    /* Strict Static Image Enforcement - Prevents unwanted shifting/floating per design requirements */
    .static-image { transform: none !important; transition: none !important; filter: none !important; }

    /* Hide scrollbar for filter tabs */
    .hide-scroll::-webkit-scrollbar { display: none; }
    .hide-scroll { -ms-overflow-style: none; scrollbar-width: none; }
    
    /* Premium Hover Border Draw Animation for Cards */
    .draw-border-svg {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        z-index: 50;
    }
    .draw-border-rect {
        fill: none;
        stroke: #E44B2F; /* Premium Roster Orange */
        stroke-width: 2px;
        stroke-dasharray: 2000; /* Approximate perimeter of the card */
        stroke-dashoffset: 2000;
        transition: stroke-dashoffset 0.8s cubic-bezier(0.25, 1, 0.5, 1);
    }

    /* Trigger the animation when the card (group) is hovered */
    .group:hover .draw-border-rect {
        stroke-dashoffset: 0;
    }

