.anti-section {
               padding: 110px 20px 120px;

               background:
                   radial-gradient(circle at 50% 0%,
                       rgba(195, 42, 57, .12),
                       transparent 35%),
                   linear-gradient(180deg,
                       #080808 0%,
                       #0d0d0d 50%,
                       #050505 100%);

               position: relative;

               overflow: hidden;
           }

.anti-section::before {
               content: "";

               position: absolute;

               inset: 0;

               opacity: .035;

               pointer-events: none;

               background-image:
                   repeating-linear-gradient(0deg,
                       #fff 0px,
                       #fff 1px,
                       transparent 1px,
                       transparent 4px);
           }

.anti-section::after {
               content: "";

               position: absolute;

               top: -100px;
               left: 8%;

               width: 5px;
               height: 360px;

               background: #c32a39;

               transform: rotate(18deg);

               box-shadow:
                   0 0 25px rgba(195, 42, 57, .45),
                   0 0 80px rgba(195, 42, 57, .15);
           }

.anti-title {
               position: relative;

               z-index: 2;

               text-align: center;

               margin-bottom: 80px;
           }

.anti-kicker {
               display: inline-block;

               color: #c32a39;

               font-size: 13px;

               font-weight: 900;

               letter-spacing: 5px;

               text-transform: uppercase;

               margin-bottom: 15px;
           }

.anti-title h2 {
               color: #fff;

               font-size: clamp(43px, 7vw, 80px);

               line-height: .9;

               margin: 0;

               font-weight: 1000;

               letter-spacing: -3px;

               text-transform: uppercase;

               font-style: italic;

               text-shadow:
                   5px 5px 0 rgba(195, 42, 57, .12);
           }

.anti-title h2 span {
               color: #c32a39;
           }

.anti-title p {
               color: #8d8d8d;

               max-width: 760px;

               margin: 30px auto 0;

               line-height: 1.8;

               font-size: 16px;
           }

.anti-intro {
               position: relative;

               z-index: 2;

               max-width: 100%;

               margin: 0 auto 65px;

               padding: 35px 40px;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border-left: 4px solid #c32a39;

               border-top: 1px solid rgba(255, 255, 255, .08);

               border-right: 1px solid rgba(255, 255, 255, .08);

               border-bottom: 1px solid rgba(255, 255, 255, .08);

               clip-path: polygon(0 0,
                       calc(100% - 18px) 0,
                       100% 18px,
                       100% 100%,
                       0 100%);
           }

.anti-intro .lead {
               color: #fff;

               font-size: 22px;

               line-height: 1.55;

               font-weight: 800;

               font-style: italic;

               margin-bottom: 25px;
           }

.anti-intro p {
               color: #aaa;

               line-height: 1.85;

               font-size: 16px;

               margin: 0 0 18px;
           }

.anti-intro p:last-child {
               margin-bottom: 0;
           }

.anti-grid {
               position: relative;

               z-index: 2;

               display: grid;

               grid-template-columns:
                   repeat(2, 1fr);

               gap: 18px;
           }

.anti-card {
               min-height: 340px;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border: 1px solid rgba(255, 255, 255, .09);

               padding: 38px 32px 40px;

               position: relative;

               overflow: hidden;

               transition:
                   transform .35s ease,
                   border-color .35s ease,
                   box-shadow .35s ease;

               clip-path: polygon(0 0,
                       calc(100% - 18px) 0,
                       100% 18px,
                       100% 100%,
                       0 100%);
           }

.anti-number {
               position: absolute;

               right: 20px;
               top: 10px;

               color: rgba(255, 255, 255, .035);

               font-size: 105px;

               line-height: 1;

               font-weight: 1000;

               font-style: italic;

               pointer-events: none;
           }

.anti-card::before {
               content: "";

               position: absolute;

               top: 0;
               left: 0;

               width: 55px;
               height: 4px;

               background: #c32a39;

               transition: width .4s ease;
           }

.anti-card::after {
               content: "";

               position: absolute;

               right: -35px;
               bottom: -45px;

               width: 120px;
               height: 120px;

               border: 1px solid rgba(195, 42, 57, .25);

               transform: rotate(45deg);

               transition: .4s;
           }

.anti-card:hover {
               transform:
                   translateY(-8px) skewX(-1deg);

               border-color:
                   rgba(195, 42, 57, .65);

               box-shadow:
                   0 20px 50px rgba(0, 0, 0, .65),
                   0 0 35px rgba(195, 42, 57, .12);
           }

.anti-card:hover::before {
               width: 100%;
           }

.anti-card:hover::after {
               border-color:
                   rgba(195, 42, 57, .7);
           }

.anti-icon {
               width: 64px;
               height: 64px;

               display: flex;

               align-items: center;
               justify-content: center;

               margin-bottom: 28px;

               background: #111;

               border: 1px solid rgba(195, 42, 57, .45);

               transform: skewX(-8deg);

               position: relative;

               z-index: 2;
           }

.anti-icon i {
               color: #c32a39;

               font-size: 26px;

               transform: skewX(8deg);
           }

.anti-card h3 {
               position: relative;

               z-index: 2;

               color: #fff;

               font-size: 26px;

               margin-bottom: 18px;

               font-weight: 1000;

               text-transform: uppercase;

               font-style: italic;

               letter-spacing: -.5px;
           }

.anti-card h3::after {
               content: "";

               display: block;

               width: 35px;

               height: 3px;

               margin-top: 13px;

               background: #c32a39;
           }

.anti-card p {
               position: relative;

               z-index: 2;

               color: #969696;

               line-height: 1.75;

               font-size: 14px;

               margin: 0 0 17px;
           }

.anti-list {
               position: relative;

               z-index: 2;

               list-style: none;

               padding: 0;

               margin: 20px 0 0;
           }

.anti-list li {
               position: relative;

               color: #aaa;

               font-size: 14px;

               line-height: 1.6;

               padding: 8px 0 8px 24px;

               border-bottom:
                   1px solid rgba(255, 255, 255, .045);
           }

.anti-list li:last-child {
               border-bottom: none;
           }

.anti-list li::before {
               content: "";

               position: absolute;

               left: 3px;
               top: 15px;

               width: 7px;
               height: 7px;

               background: #c32a39;

               transform: rotate(45deg);
           }

.anti-levels {
               display: grid;

               grid-template-columns:
                   repeat(3, 1fr);

               gap: 10px;

               position: relative;

               z-index: 2;

               margin-top: 25px;
           }

.anti-level {
               padding: 18px 15px;

               background: rgba(255, 255, 255, .025);

               border: 1px solid rgba(255, 255, 255, .06);

               text-align: center;
           }

.anti-level strong {
               display: block;

               color: #c32a39;

               font-size: 12px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               margin-bottom: 8px;
           }

.anti-level span {
               display: block;

               color: #999;

               font-size: 12px;

               line-height: 1.5;
           }

.anti-card.wide {
               grid-column: span 2;

               min-height: auto;
           }

.anti-message {
               text-align: center;

               padding: 15px 0 5px;

               position: relative;

               z-index: 2;
           }

.anti-message .anti-message-label {
               display: block;

               color: #c32a39;

               font-size: 11px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 18px;
           }

.anti-message strong {
               display: block;

               color: #fff;

               font-size: clamp(28px, 4vw, 48px);

               line-height: 1.1;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;
           }

.anti-message strong span {
               color: #c32a39;
           }

.anti-tag {
               position: absolute;

               bottom: 24px;
               right: 27px;

               color: #555;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;
           }

.anti-button-wrap {
               position: relative;

               z-index: 2;

               text-align: center;

               margin-top: 75px;
           }

.anti-btn {
               display: inline-flex;

               align-items: center;

               justify-content: center;

               gap: 14px;

               position: relative;

               background: #c32a39;

               color: #fff;

               padding: 19px 38px;

               font-size: 13px;

               font-weight: 1000;

               letter-spacing: 2px;

               text-decoration: none;

               text-transform: uppercase;

               clip-path: polygon(8px 0,
                       100% 0,
                       calc(100% - 8px) 100%,
                       0 100%);

               transition: .3s;

               box-shadow:
                   0 10px 30px rgba(195, 42, 57, .2);
           }

.anti-btn::before {
               content: "";

               position: absolute;

               inset: 0;

               background: #fff;

               transform: translateX(-100%);

               transition: .35s;

               z-index: -1;
           }

.anti-btn:hover {
               color: #111;

               transform: skewX(-4deg);

               box-shadow:
                   0 15px 40px rgba(195, 42, 57, .3);
           }

.anti-btn:hover::before {
               transform: translateX(0);
           }

#activateBtn span {
               position: relative;
               z-index: 3;
               animation: flicker 3s infinite;
           }

@keyframes gradientShift {
               0% {
                   background-position: 0% 50%;
               }

               50% {
                   background-position: 100% 50%;
               }

               100% {
                   background-position: 0% 50%;
               }
           }

@keyframes pulseRedMain {

               0%,
               100% {
                   box-shadow: 0 0 30px #ff0000, 0 0 60px rgba(255, 0, 0, 0.7), 0 0 100px rgba(255, 0, 0, 0.4);
               }

               50% {
                   box-shadow: 0 0 50px #ff0000, 0 0 90px #ff0000, 0 0 140px rgba(255, 0, 0, 0.9);
               }

           }

@keyframes heartbeat {
               0% {
                   transform: scale(1);
               }

               10% {
                   transform: scale(1.08);
               }

               20% {
                   transform: scale(1.02);
               }

               30% {
                   transform: scale(1.10);
               }

               90% {
                   transform: scale(1.06);
               }

               100% {
                   transform: scale(1);
               }
           }

@keyframes flicker {

               0%,
               100% {
                   opacity: 1;
               }

               50% {
                   opacity: 0.85;
               }
           }

#activateBtn:hover {
               transform: translateY(-8px) scale(1.05);
               box-shadow: 0 0 80px #ff0000, 0 0 120px #ff0000;
               border-color: #ff3333;
           }

#activateBtn:active {
               transform: translateY(4px);
           }

#activateBtn .flame {
               position: absolute;
               bottom: -10px;
               width: 20px;
               height: 40px;
               background: linear-gradient(to top, #ff4400, transparent);
               border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%;
               opacity: 0.9;
               pointer-events: none;
               animation: flameUp 1s ease-out forwards;
           }

#activateBtn .spark {
               position: absolute;
               width: 6px;
               height: 6px;
               background: #ffff00;
               border-radius: 50%;
               pointer-events: none;
               animation: sparkFly 0.8s ease-out forwards;
           }

@keyframes flameUp {
               to {
                   transform: translateY(var(--ty)) translateX(var(--tx)) rotate(var(--rot));
                   opacity: 0;
               }
           }

@keyframes sparkFly {
               to {
                   transform: translateY(var(--sy)) translateX(var(--sx));
                   opacity: 0;
               }
           }

:root {
               --fight-red: #c32a39;
               --fight-red-dark: #a92231;
               --fight-black: #080808;
               --fight-dark: #0d0d0d;
               --fight-card: #121212;
               --fight-border: rgba(255, 255, 255, .08);
               --fight-text: #ddd;
               --fight-muted: #777;
           }

#fh5co-header {
               position: relative;

               min-height: 760px;

               background: #050505;

               overflow: hidden;
           }

#fh5co-header .video-container {
               position: absolute;

               inset: 0;

               z-index: 0;

               overflow: hidden;
           }

#fh5co-header .back-video {
               position: absolute;

               top: 50%;
               left: 50%;

               width: 100%;
               height: 100%;

               object-fit: cover;

               transform: translate(-50%, -50%);

               filter:
                   grayscale(25%) contrast(1.15) brightness(.55);
           }

#fh5co-header::after {
               content: "";

               position: absolute;

               z-index: 2;

               right: -180px;
               bottom: -250px;

               width: 600px;
               height: 600px;

               border-radius: 50%;

               background: rgba(195, 42, 57, .15);

               filter: blur(100px);

               pointer-events: none;
           }

#fh5co-header .container {
               position: relative;

               z-index: 5;
           }

.hero-fight-content {
               max-width: 1000px;

               margin: 0 auto;

               text-align: center;
           }

.hero-kicker {
               display: inline-flex;

               align-items: center;

               gap: 12px;

               color: var(--fight-red);

               font-size: 11px;

               font-weight: 900;

               letter-spacing: 5px;

               text-transform: uppercase;

               margin-bottom: 20px;
           }

.hero-kicker::before,
           .hero-kicker::after {
               content: "";

               width: 35px;
               height: 2px;

               background: var(--fight-red);
           }

.hero-fight-content h1 {
               margin: 0;

               color: #fff;

               font-size: clamp(55px, 9vw, 115px);

               line-height: .82;

               font-weight: 1000;

               font-style: italic;

               letter-spacing: -5px;

               text-transform: uppercase;

               text-shadow:
                   0 10px 40px rgba(0, 0, 0, .65);
           }

.hero-fight-content h1 span {
               color: var(--fight-red);
           }

.hero-discipline {
               margin-top: 28px;

               color: #fff;

               font-size: clamp(15px, 2vw, 22px);

               font-weight: 900;

               letter-spacing: 5px;

               text-transform: uppercase;
           }

.hero-discipline span {
               color: var(--fight-red);
           }

.hero-fight-content h3 {
               max-width: 920px;
               margin: 30px auto 40px;
               color: rgba(255, 255, 255, .72);
               font-size: 16px;
               line-height: 1.8;
               font-weight: 400;
           }

.hero-fight-actions {
               display: flex;

               justify-content: center;

               align-items: center;

               gap: 15px;

               flex-wrap: wrap;
           }

.music-controls {
               position: absolute;

               z-index: 10;

               right: 35px;
               bottom: 35px;

               text-align: center;
           }

.music-btn {
               width: 48px;
               height: 48px;

               border: 1px solid rgba(255, 255, 255, .25);

               border-radius: 50%;

               background: rgba(0, 0, 0, .45);

               color: #fff;

               cursor: pointer;

               transition: .3s;
           }

.music-btn:hover {
               background: var(--fight-red);

               border-color: var(--fight-red);

               transform: scale(1.08);
           }

.music-controls p {
               margin: 8px 0 0;

               color: #777;

               font-size: 8px;

               font-weight: 900;

               letter-spacing: 3px;
           }

.fight-home-section {
               position: relative;

               padding: 100px 20px;

               background: var(--fight-black);

               overflow: hidden;
           }

.fight-home-section.dark {
               background: #0d0d0d;
           }

.fight-section-heading {
               position: relative;

               z-index: 2;

               max-width: 800px;

               margin: 0 auto 60px;

               text-align: center;
           }

.fight-section-kicker {
               display: block;

               color: var(--fight-red);

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 14px;
           }

.fight-section-heading h2 {
               margin: 0 0 20px;

               color: #fff;

               font-size: clamp(38px, 5vw, 60px);

               line-height: .9;

               font-weight: 1000;

               font-style: italic;

               letter-spacing: -2px;

               text-transform: uppercase;
           }

.fight-section-heading p {
               color: #777;

               font-size: 15px;

               line-height: 1.8;

               margin: 0 auto;

               max-width: 700px;
           }

.fight-philosophy {
               position: relative;

               max-width: 1100px;

               margin: 0 auto;

               display: grid;

               grid-template-columns: 1fr 1fr;

               gap: 70px;

               align-items: center;
           }

.fight-philosophy::before {
               content: "FIGHT";

               position: absolute;

               left: -70px;
               top: 20px;

               color: rgba(255, 255, 255, .018);

               font-size: 150px;

               font-weight: 1000;

               font-style: italic;

               pointer-events: none;
           }

.fight-philosophy-text {
               position: relative;

               z-index: 2;
           }

.fight-philosophy-text h3 {
               margin: 0 0 25px;

               color: #fff;

               font-size: 34px;

               font-weight: 900;

               font-style: italic;

               text-transform: uppercase;
           }

.fight-philosophy-text h3 span {
               color: var(--fight-red);
           }

.fight-philosophy-text p {
               color: #888;

               font-size: 15px;

               line-height: 1.9;

               margin: 0;
           }

.fight-logo-box {
               position: relative;

               min-height: 360px;

               display: flex;

               align-items: center;

               justify-content: center;

               background:
                   linear-gradient(145deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border: 1px solid var(--fight-border);

               clip-path: polygon(0 0,
                       calc(100% - 30px) 0,
                       100% 30px,
                       100% 100%,
                       30px 100%,
                       0 calc(100% - 30px));
           }

.fight-logo-box::before {
               content: "";

               position: absolute;

               top: 0;
               left: 0;

               width: 100px;
               height: 4px;

               background: var(--fight-red);
           }

.fight-logo-box::after {
               content: "MONZA • ITALIA";

               position: absolute;

               bottom: 20px;
               left: 0;
               right: 0;

               text-align: center;

               color: #444;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 4px;
           }

.fight-logo-box img {
               width: auto;

               max-width: 95%;

               max-height: 300px;

               object-fit: contain;

               opacity: .95;
           }

#fh5co-schedule {
               position: relative;

               padding: 100px 20px;

               background: url(../images/bg_dark12.jpg);

               background-size: cover;

               background-position: center;

               overflow: hidden;
           }

#fh5co-schedule::before {
               content: "";

               position: absolute;

               top: 0;
               left: 0;

               width: 100%;
               height: 3px;

               background: var(--fight-red);
           }

.fight-event-section {
               padding: 100px 20px;

               background: #080808;
           }

.fight-event-box {
               position: relative;

               max-width: 1050px;

               margin: 0 auto;

               display: grid;

               grid-template-columns: .75fr 1.25fr;

               min-height: 420px;

               background: #111;

               border: 1px solid rgba(255, 255, 255, .08);

               overflow: hidden;

               clip-path: polygon(0 0,
                       calc(100% - 35px) 0,
                       100% 35px,
                       100% 100%,
                       0 100%);
           }

.fight-event-info {
               display: flex;

               flex-direction: column;

               justify-content: center;

               padding: 50px;
           }

.fight-event-info .event-label {
               color: var(--fight-red);

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 15px;
           }

.fight-event-info h3 {
               color: #fff;

               font-size: 38px;

               line-height: .95;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;

               margin: 0 0 20px;
           }

.fight-event-info p {
               color: #777;

               line-height: 1.7;

               font-size: 14px;

               margin-bottom: 25px;
           }

.fight-event-btn {
               display: inline-flex;

               align-items: center;

               gap: 10px;

               width: fit-content;

               padding: 14px 22px;

               border: 1px solid rgba(195, 42, 57, .6);

               color: #fff !important;

               text-decoration: none !important;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               transition: .3s;
           }

.fight-event-btn:hover {
               background: var(--fight-red);

               border-color: var(--fight-red);

               transform: translateX(5px);
           }

.fight-event-image {
               position: relative;

               min-height: 420px;

               overflow: hidden;
           }

.fight-event-image::after {
               content: "";

               position: absolute;

               inset: 0;

               background:
                   linear-gradient(90deg,
                       #111 0%,
                       transparent 30%);
           }

.fight-event-image img {
               width: 100%;
               height: 100%;

               object-fit: cover;

               display: block;

               filter:
                   grayscale(25%) contrast(1.05);

               transition: .5s;
           }

.fight-event-box:hover .fight-event-image img {
               transform: scale(1.03);
           }

.fight-services {
               padding: 100px 20px;

               background:
                   radial-gradient(circle at 10% 20%,
                       rgba(195, 42, 57, .07),
                       transparent 30%),
                   #0d0d0d;
           }

.fight-services-grid {
               max-width: 1150px;

               margin: 0 auto;

               display: grid;

               grid-template-columns:
                   repeat(3, 1fr);

               gap: 18px;
           }

.fight-service-card {
               position: relative;

               min-height: 270px;

               padding: 30px;

               background: #111;

               border: 1px solid rgba(255, 255, 255, .07);

               overflow: hidden;

               transition: .35s;
           }

.fight-service-card::before {
               content: "";

               position: absolute;

               top: 0;
               left: -100%;

               width: 100%;
               height: 3px;

               background: var(--fight-red);

               transition: .4s;
           }

.fight-service-card:hover {
               transform: translateY(-7px);

               border-color: rgba(195, 42, 57, .4);

               box-shadow:
                   0 20px 45px rgba(0, 0, 0, .35);
           }

.fight-service-card:hover::before {
               left: 0;
           }

.fight-service-number {
               position: absolute;

               top: 18px;
               right: 20px;

               color: rgba(255, 255, 255, .04);

               font-size: 55px;

               font-weight: 1000;

               font-style: italic;
           }

.fight-service-icon {
               width: 55px;
               height: 55px;

               display: flex;

               align-items: center;
               justify-content: center;

               margin-bottom: 25px;

               background: rgba(195, 42, 57, .1);

               border: 1px solid rgba(195, 42, 57, .25);

               transform: skewX(-7deg);
           }

.fight-service-icon i {
               color: var(--fight-red);

               font-size: 22px;

               transform: skewX(7deg);
           }

.fight-service-card span {
               display: block;

               color: #555;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               margin-bottom: 8px;
           }

.fight-service-card h3 {
               margin: 0 0 12px;

               color: #fff;

               font-size: 22px;

               font-weight: 900;

               font-style: italic;

               text-transform: uppercase;
           }

.fight-service-card p {
               color: #777;

               font-size: 13px;

               line-height: 1.7;

               margin: 0;
           }

.fight-final-cta {
               position: relative;

               padding: 100px 20px;

               background: #070707;

               text-align: center;

               overflow: hidden;
           }

.fight-final-cta::before {
               content: "FIGHT";

               position: absolute;

               left: 50%;
               top: 50%;

               transform: translate(-50%, -50%);

               color: rgba(128, 100, 100, 0.28);

               font-size: clamp(100px, 20vw, 250px);

               font-weight: 1000;

               font-style: italic;

               pointer-events: none;
           }

.fight-final-cta-content {
               position: relative;

               z-index: 2;
           }

.fight-final-cta h2 {
               margin: 0 0 15px;

               color: #fff;

               font-size: clamp(40px, 6vw, 70px);

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;
           }

.fight-final-cta h2 span {
               color: var(--fight-red);
           }

.fight-final-cta p {
               color: #777;

               margin-bottom: 30px;
           }

.hero-main-btn {
               position: relative;

               display: inline-flex;
               align-items: center;
               justify-content: center;

               gap: 12px;

               padding: 18px 32px;

               min-width: 230px;

               background:
                   linear-gradient(135deg,
                       #8b0000,
                       #ff0000,
                       #8b0000);

               background-size: 200% 200%;

               border: 2px solid #ff0000;

               color: #fff !important;

               text-decoration: none !important;

               font-size: 12px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               overflow: hidden;

               cursor: pointer;

               /* animation:
                   gradientShift 4s ease infinite,
                   pulseRedMain 3s ease-in-out infinite,
                   heartbeat 4s ease-in-out infinite;

               transition:
                   transform .3s ease,
                   box-shadow .3s ease,
                   border-color .3s ease; */
           }

.hero-main-btn span {
               position: relative;

               z-index: 3;

               animation: flicker 3s infinite;
           }

.hero-main-btn i {
               position: relative;

               z-index: 3;

               transition: transform .3s ease;
           }

.hero-main-btn:hover {
               transform: translateY(-8px) scale(1.05);

               box-shadow:
                   0 0 80px #ff0000,
                   0 0 120px #ff0000;

               border-color: #ff3333;

               color: #fff !important;
           }

.hero-main-btn:hover i {
               transform: translateX(5px);
           }

.hero-main-btn:active {
               transform: translateY(4px);
           }

.fight-courses-section {
               padding: 110px 20px 120px;
               background:
                   radial-gradient(circle at 50% 0%, rgba(195, 42, 57, .12), transparent 35%),
                   linear-gradient(180deg, #080808 0%, #0d0d0d 50%, #050505 100%);
               position: relative;
               overflow: hidden;
           }

.fight-courses-section::before {
               content: "";
               position: absolute;
               inset: 0;
               opacity: .035;
               pointer-events: none;
               background-image:
                   repeating-linear-gradient(0deg,
                       #fff 0px,
                       #fff 1px,
                       transparent 1px,
                       transparent 4px);
           }

.fight-courses-section::after {
               content: "";
               position: absolute;
               top: -100px;
               left: 7%;
               width: 5px;
               height: 320px;
               background: #c32a39;
               transform: rotate(18deg);
               box-shadow:
                   0 0 25px rgba(195, 42, 57, .45),
                   0 0 80px rgba(195, 42, 57, .15);
           }

.fight-title {
               position: relative;
               z-index: 2;
               text-align: center;
               margin-bottom: 75px;
           }

.fight-kicker {
               display: inline-block;
               color: #c32a39;
               font-size: 13px;
               font-weight: 900;
               letter-spacing: 5px;
               text-transform: uppercase;
               margin-bottom: 15px;
           }

.fight-title h2 {
               color: #fff;
               font-size: clamp(45px, 7vw, 82px);
               line-height: .9;
               margin: 0;
               font-weight: 1000;
               letter-spacing: -3px;
               text-transform: uppercase;
               font-style: italic;
               text-shadow: 5px 5px 0 rgba(195, 42, 57, .12);
           }

.fight-title h2 span {
               color: #c32a39;
           }

.fight-title p {
               color: #8d8d8d;
               max-width: 720px;
               margin: 28px auto 0;
               line-height: 1.8;
               font-size: 16px;
           }

.fight-grid {
               position: relative;
               z-index: 2;

               display: grid;
               grid-template-columns: repeat(3, 1fr);
               gap: 18px;
           }

.fight-card {
               min-height: 330px;
               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border: 1px solid rgba(255, 255, 255, .09);

               padding: 38px 32px 35px;

               position: relative;
               overflow: hidden;

               transition:
                   transform .35s ease,
                   border-color .35s ease,
                   box-shadow .35s ease;

               clip-path: polygon(0 0,
                       calc(100% - 18px) 0,
                       100% 18px,
                       100% 100%,
                       0 100%);
           }

.fight-number {
               position: absolute;
               right: 20px;
               top: 12px;

               color: rgba(255, 255, 255, .035);

               font-size: 100px;
               line-height: 1;
               font-weight: 1000;

               font-style: italic;

               pointer-events: none;
           }

.fight-card::before {
               content: "";

               position: absolute;

               top: 0;
               left: 0;

               width: 55px;
               height: 4px;

               background: #c32a39;

               transition: width .4s ease;
           }

.fight-card::after {
               content: "";

               position: absolute;

               right: -35px;
               bottom: -45px;

               width: 120px;
               height: 120px;

               border: 1px solid rgba(195, 42, 57, .25);

               transform: rotate(45deg);

               transition: .4s;
           }

.fight-card:hover {
               transform: translateY(-8px) skewX(-1deg);

               border-color: rgba(195, 42, 57, .65);

               box-shadow:
                   0 20px 50px rgba(0, 0, 0, .65),
                   0 0 35px rgba(195, 42, 57, .12);
           }

.fight-card:hover::before {
               width: 100%;
           }

.fight-card:hover::after {
               border-color: rgba(195, 42, 57, .7);
           }

.fight-icon {
               width: 64px;
               height: 64px;

               display: flex;
               align-items: center;
               justify-content: center;

               margin-bottom: 30px;

               background: #111;

               border: 1px solid rgba(195, 42, 57, .45);

               transform: skewX(-8deg);

               position: relative;
               z-index: 2;
           }

.fight-icon i {
               color: #c32a39;
               font-size: 26px;
               transform: skewX(8deg);
           }

.fight-card h3 {
               position: relative;
               z-index: 2;

               color: #fff;

               font-size: 27px;

               margin-bottom: 17px;

               font-weight: 1000;

               text-transform: uppercase;

               font-style: italic;

               letter-spacing: -.5px;
           }

.fight-card h3::after {
               content: "";

               display: block;

               width: 35px;
               height: 3px;

               margin-top: 13px;

               background: #c32a39;
           }

.fight-card p {
               position: relative;
               z-index: 2;

               color: #969696;

               line-height: 1.75;

               font-size: 14px;

               margin: 0;

               max-width: 330px;
           }

.fight-tag {
               position: absolute;

               bottom: 25px;
               right: 28px;

               color: #555;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;
           }

.fight-button-wrap {
               position: relative;
               z-index: 2;

               text-align: center;

               margin-top: 75px;
           }

.fight-btn {
               display: inline-flex;

               align-items: center;
               justify-content: center;

               gap: 14px;

               position: relative;

               background: #c32a39;

               color: #fff;

               padding: 19px 38px;

               font-size: 13px;

               font-weight: 1000;

               letter-spacing: 2px;

               text-decoration: none;

               text-transform: uppercase;

               clip-path: polygon(8px 0,
                       100% 0,
                       calc(100% - 8px) 100%,
                       0 100%);

               transition: .3s;

               box-shadow:
                   0 10px 30px rgba(195, 42, 57, .2);
           }

.fight-btn::before {
               content: "";
               position: absolute;

               inset: 0;

               background: #fff;

               transform: translateX(-100%);

               transition: .35s;

               z-index: -1;
           }

.fight-btn:hover {
               color: #111;

               transform: skewX(-4deg);

               box-shadow:
                   0 15px 40px rgba(195, 42, 57, .3);
           }

.fight-btn:hover::before {
               transform: translateX(0);
           }

#fh5co-contact {
               padding: 100px 20px 90px !important;

               background:
                   radial-gradient(circle at 80% 0%,
                       rgba(195, 42, 57, .12),
                       transparent 35%),
                   linear-gradient(180deg,
                       #080808 0%,
                       #0d0d0d 100%);

               position: relative;
               overflow: hidden;
           }

#fh5co-contact::before {
               content: "";
               position: absolute;
               inset: 0;

               opacity: .025;
               pointer-events: none;

               background-image:
                   repeating-linear-gradient(0deg,
                       #fff 0px,
                       #fff 1px,
                       transparent 1px,
                       transparent 5px);
           }

#fh5co-contact::after {
               content: "";
               position: absolute;
               top: -100px;
               left: 7%;
               width: 5px;
               height: 320px;
               background: #c32a39;
               transform: rotate(18deg);
               box-shadow:
                   0 0 25px rgba(195, 42, 57, .45),
                   0 0 80px rgba(195, 42, 57, .15);
           }

.contact-fight-grid {
               position: relative;
               z-index: 2;

               display: grid;

               grid-template-columns: .85fr 1.15fr;

               gap: 60px;

               max-width: 1150px;

               margin: 0 auto;
           }

.contact-fight-info {
               padding: 20px 10px;
           }

.contact-fight-kicker {
               display: inline-block;

               color: #c32a39;

               font-size: 12px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 15px;
           }

.contact-fight-info h2 {
               color: #fff;

               font-size: clamp(40px, 5vw, 62px);

               line-height: .9;

               margin: 0 0 25px;

               font-weight: 1000;

               letter-spacing: -2px;

               text-transform: uppercase;

               font-style: italic;
           }

.contact-fight-info h2 span {
               color: #c32a39;
           }

.contact-fight-info>p {
               color: #888;

               line-height: 1.8;

               font-size: 15px;

               max-width: 430px;

               margin-bottom: 45px;
           }

.fight-contact-list {
               list-style: none;

               padding: 0;

               margin: 0;
           }

.fight-contact-item {
               display: flex;

               align-items: center;

               gap: 20px;

               padding: 20px 0;

               border-bottom: 1px solid rgba(255, 255, 255, .07);

               transition: .3s;
           }

.fight-contact-item:first-child {
               border-top: 1px solid rgba(255, 255, 255, .07);
           }

.fight-contact-item:hover {
               padding-left: 8px;

               border-color: rgba(195, 42, 57, .4);
           }

.fight-contact-icon {
               flex: 0 0 52px;

               width: 52px;
               height: 52px;

               display: flex;

               align-items: center;
               justify-content: center;

               background: #111;

               border: 1px solid rgba(195, 42, 57, .45);

               transform: skewX(-7deg);
           }

.fight-contact-icon i {
               color: #c32a39;

               font-size: 20px;

               transform: skewX(7deg);
           }

.fight-contact-text small {
               display: block;

               color: #555;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               margin-bottom: 5px;
           }

.fight-contact-text a,
           .fight-contact-text span {
               color: #ddd;

               font-size: 15px;

               text-decoration: none;

               line-height: 1.6;
           }

.fight-contact-text a:hover {
               color: #c32a39;
           }

.contact-fight-form {
               position: relative;

               background:
                   linear-gradient(145deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border: 1px solid rgba(255, 255, 255, .09);

               padding: 42px 40px;

               clip-path: polygon(0 0,
                       calc(100% - 25px) 0,
                       100% 25px,
                       100% 100%,
                       0 100%);

               box-shadow:
                   0 25px 60px rgba(0, 0, 0, .35);
           }

.contact-fight-form::before {
               content: "";

               position: absolute;

               top: 0;
               left: 0;

               width: 90px;
               height: 4px;

               background: #c32a39;
           }

.contact-fight-form h3 {
               color: #fff;

               font-size: 27px;

               font-weight: 900;

               font-style: italic;

               text-transform: uppercase;

               margin: 0 0 8px;
           }

.contact-fight-form .form-subtitle {
               color: #666;

               font-size: 12px;

               margin-bottom: 30px;
           }

.fight-form-group {
               margin-bottom: 18px;
           }

.fight-form-group label {
               display: block;

               color: #777;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               margin-bottom: 8px;
           }

.fight-form-control {
               width: 100%;

               height: 52px;

               padding: 0 16px;

               color: #eee !important;

               background: #090909 !important;

               border: 1px solid rgba(255, 255, 255, .10) !important;

               border-radius: 0 !important;

               box-shadow: none !important;

               outline: none;

               font-size: 14px;

               transition: .3s;
           }

textarea.fight-form-control {
               height: 150px;

               padding-top: 15px;

               resize: vertical;
           }

.fight-form-control::placeholder {
               color: #555;
           }

.fight-form-control:focus {
               border-color: #c32a39 !important;

               box-shadow:
                   0 0 0 1px rgba(195, 42, 57, .15),
                   0 0 20px rgba(195, 42, 57, .08) !important;
           }

.fight-submit {
               position: relative;

               width: 100%;
               height: 56px;

               margin-top: 10px;

               border: none;

               background: #c32a39;

               color: #fff;

               font-size: 12px;
               font-weight: 900;

               letter-spacing: 2.5px;

               text-transform: uppercase;

               cursor: pointer;

               overflow: hidden;

               clip-path: polygon(8px 0,
                       100% 0,
                       calc(100% - 8px) 100%,
                       0 100%);

               box-shadow:
                   0 10px 30px rgba(195, 42, 57, .15);

               transition:
                   transform .3s ease,
                   background .3s ease,
                   box-shadow .3s ease;
           }

.fight-submit::before {
               content: "";

               position: absolute;

               inset: 0;

               background: rgba(255, 255, 255, .14);

               transform:
                   translateX(-105%) skewX(-15deg);

               transition: transform .4s ease;
           }

.fight-submit {
               text-shadow:
                   0 1px 2px rgba(0, 0, 0, .25);
           }

.fight-submit i {
               position: relative;

               z-index: 2;

               margin-left: 10px;

               font-size: 13px;

               transition:
                   transform .3s ease;
           }

.fight-submit:hover {
               background: #a92231;

               color: #fff;

               transform:
                   translateY(-3px) skewX(-2deg);

               box-shadow:
                   0 15px 35px rgba(195, 42, 57, .30);
           }

.fight-submit:hover::before {
               transform:
                   translateX(0) skewX(-15deg);
           }

.fight-submit:hover i {
               transform:
                   translateX(5px);
           }

.fight-or {
               display: flex;

               align-items: center;

               gap: 18px;

               margin: 28px 0;
           }

.fight-or::before,
           .fight-or::after {
               content: "";

               flex: 1;

               height: 1px;

               background:
                   linear-gradient(90deg,
                       transparent,
                       rgba(255, 255, 255, .14));
           }

.fight-or::after {
               background:
                   linear-gradient(90deg,
                       rgba(255, 255, 255, .14),
                       transparent);
           }

.fight-or span {
               position: relative;

               color: #666;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 3px;

               text-transform: uppercase;

               white-space: nowrap;
           }

.fight-or span::before,
           .fight-or span::after {
               content: "";

               display: inline-block;

               width: 4px;
               height: 4px;

               margin: 0 8px;

               vertical-align: middle;

               background: #c32a39;

               transform: rotate(45deg);
           }

.fight-whatsapp {
               position: relative;
               width: 100%;
               height: 56px;
               border: none;
               background: #25D366;
               color: #fff;
               font-size: 2rem;
               font-weight: 900;
               letter-spacing: 2px;
               cursor: pointer;
               text-transform: uppercase;
               overflow: hidden;
               clip-path: polygon(8px 0,
                       100% 0,
                       calc(100% - 8px) 100%,
                       0 100%);

               box-shadow:
                   0 10px 30px rgba(37, 211, 102, .15);

               transition:
                   transform .3s ease,
                   background .3s ease,
                   box-shadow .3s ease;
           }

.fight-whatsapp::before {
               content: "";
               position: absolute;
               inset: 0;
               background: rgba(255, 255, 255, .16);
               transform: translateX(-105%) skewX(-15deg);
               transition: transform .4s ease;
           }

.fight-whatsapp i {
               position: relative;
               z-index: 2;
               color: #fff;
               font-size: 21px;
               margin-left: 10px;
               vertical-align: middle;

               transition: transform .3s ease;
           }

.fight-whatsapp:hover {
               background: #20bd5a;

               color: #fff;

               transform:
                   translateY(-3px) skewX(-2deg);

               box-shadow:
                   0 15px 35px rgba(37, 211, 102, .25);
           }

.fight-whatsapp:hover::before {
               transform:
                   translateX(0) skewX(-15deg);
           }

.fight-whatsapp:hover i {
               transform:
                   scale(1.12) rotate(-5deg);
           }

.fight-message {
               display: block;

               margin-top: 20px;

               text-align: center;

               font-size: 13px;

               line-height: 1.5;
           }

.fight-map-section {
               position: relative;

               padding: 0 20px 80px;

               background: #080808;
           }

.fight-map-title {
               max-width: 1150px;

               margin: 0 auto 25px;

               color: #fff;

               font-size: 26px;

               font-weight: 900;

               font-style: italic;

               text-transform: uppercase;
           }

.fight-map-title span {
               color: #c32a39;
           }

.fight-map-wrapper {
               position: relative;

               max-width: 1150px;

               margin: 0 auto;

               padding: 8px;

               background: #111;

               border: 1px solid rgba(255, 255, 255, .08);

               clip-path: polygon(0 0,
                       calc(100% - 20px) 0,
                       100% 20px,
                       100% 100%,
                       0 100%);
           }

.fight-map-wrapper iframe {
               display: block;

               width: 100%;

               height: 500px;

               border: 0;

               filter:
                   grayscale(100%) contrast(1.1) brightness(.65);
           }

.fighter-section {

               padding: 110px 20px 120px;

               background:
                   radial-gradient(circle at 50% 0%,
                       rgba(195, 42, 57, .12),
                       transparent 35%),
                   linear-gradient(180deg,
                       #080808 0%,
                       #0d0d0d 50%,
                       #050505 100%);

               position: relative;

               overflow: hidden;
           }

.fighter-section::before {

               content: "";

               position: absolute;

               inset: 0;

               opacity: .035;

               pointer-events: none;

               background-image:
                   repeating-linear-gradient(0deg,
                       #fff 0px,
                       #fff 1px,
                       transparent 1px,
                       transparent 4px);
           }

.fighter-section::after {

               content: "";

               position: absolute;

               top: -120px;
               right: 8%;

               width: 5px;
               height: 390px;

               background: #c32a39;

               transform: rotate(-18deg);

               box-shadow:
                   0 0 25px rgba(195, 42, 57, .45),
                   0 0 80px rgba(195, 42, 57, .15);
           }

.fighter-title {

               position: relative;

               z-index: 2;

               text-align: center;

               margin-bottom: 75px;
           }

.fighter-kicker {

               display: inline-block;

               color: #c32a39;

               font-size: 13px;

               font-weight: 900;

               letter-spacing: 5px;

               text-transform: uppercase;

               margin-bottom: 15px;
           }

.fighter-title h2 {

               color: #fff;

               font-size: clamp(43px, 7vw, 82px);

               line-height: .9;

               margin: 0;

               font-weight: 1000;

               letter-spacing: -3px;

               text-transform: uppercase;

               font-style: italic;

               text-shadow:
                   5px 5px 0 rgba(195, 42, 57, .12);
           }

.fighter-title h2 span {

               color: #c32a39;
           }

.fighter-title p {

               color: #8d8d8d;

               max-width: 800px;

               margin: 30px auto 0;

               line-height: 1.8;

               font-size: 16px;
           }

.fighter-intro {

               position: relative;

               z-index: 2;

               max-width: 100%;

               margin: 0 auto 70px;

               padding: 42px 45px;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border-left: 4px solid #c32a39;

               border-top: 1px solid rgba(255, 255, 255, .08);

               border-right: 1px solid rgba(255, 255, 255, .08);

               border-bottom: 1px solid rgba(255, 255, 255, .08);

               clip-path: polygon(0 0,
                       calc(100% - 20px) 0,
                       100% 20px,
                       100% 100%,
                       0 100%);
           }

.fighter-intro .lead {

               color: #fff;

               font-size: 22px;

               line-height: 1.55;

               font-weight: 800;

               font-style: italic;

               text-align: center;

               margin: 0 0 22px;
           }

.fighter-intro p {

               color: #aaa;

               font-size: 16px;

               line-height: 1.85;

               text-align: center;

               margin: 0;
           }

.fighter-grid {

               position: relative;

               z-index: 2;

               display: grid;

               grid-template-columns:
                   repeat(2, 1fr);

               gap: 18px;
           }

.fighter-card {

               min-height: 330px;

               position: relative;

               overflow: hidden;

               padding: 38px 32px 40px;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border: 1px solid rgba(255, 255, 255, .09);

               transition:
                   transform .35s ease,
                   border-color .35s ease,
                   box-shadow .35s ease;

               clip-path: polygon(0 0,
                       calc(100% - 18px) 0,
                       100% 18px,
                       100% 100%,
                       0 100%);
           }

.fighter-card::before {

               content: "";

               position: absolute;

               top: 0;
               left: 0;

               width: 55px;
               height: 4px;

               background: #c32a39;

               transition: width .4s ease;
           }

.fighter-card::after {

               content: "";

               position: absolute;

               right: -35px;
               bottom: -45px;

               width: 120px;
               height: 120px;

               border: 1px solid rgba(195, 42, 57, .25);

               transform: rotate(45deg);

               transition: .4s;
           }

.fighter-card:hover {

               transform:
                   translateY(-8px) skewX(-1deg);

               border-color:
                   rgba(195, 42, 57, .65);

               box-shadow:
                   0 20px 50px rgba(0, 0, 0, .65),
                   0 0 35px rgba(195, 42, 57, .12);
           }

.fighter-card:hover::before {

               width: 100%;
           }

.fighter-card:hover::after {

               border-color:
                   rgba(195, 42, 57, .7);
           }

.fighter-number {

               position: absolute;

               right: 20px;
               top: 10px;

               color: rgba(255, 255, 255, .035);

               font-size: 105px;

               line-height: 1;

               font-weight: 1000;

               font-style: italic;

               pointer-events: none;
           }

.fighter-icon {

               width: 64px;
               height: 64px;

               display: flex;

               align-items: center;
               justify-content: center;

               margin-bottom: 28px;

               background: #111;

               border: 1px solid rgba(195, 42, 57, .45);

               transform: skewX(-8deg);

               position: relative;

               z-index: 2;
           }

.fighter-icon i {

               color: #c32a39;

               font-size: 26px;

               transform: skewX(8deg);
           }

.fighter-card h3 {

               position: relative;

               z-index: 2;

               color: #fff;

               font-size: 27px;

               margin-bottom: 18px;

               font-weight: 1000;

               text-transform: uppercase;

               font-style: italic;

               letter-spacing: -.5px;
           }

.fighter-card h3::after {

               content: "";

               display: block;

               width: 35px;
               height: 3px;

               margin-top: 13px;

               background: #c32a39;
           }

.fighter-card p {

               position: relative;

               z-index: 2;

               color: #969696;

               line-height: 1.8;

               font-size: 14px;

               margin: 0 0 18px;
           }

.fighter-card.wide {

               grid-column: span 2;

               min-height: auto;
           }

.fighter-tag {

               position: absolute;

               bottom: 24px;
               right: 27px;

               color: #555;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;
           }

.fighter-achievements {

               position: relative;

               z-index: 2;

               display: grid;

               grid-template-columns:
                   repeat(3, 1fr);

               gap: 10px;

               margin-top: 28px;
           }

.fighter-achievement {

               padding: 18px 12px;

               text-align: center;

               background:
                   rgba(255, 255, 255, .025);

               border:
                   1px solid rgba(255, 255, 255, .06);
           }

.fighter-achievement strong {

               display: block;

               color: #c32a39;

               font-size: 11px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               margin-bottom: 8px;
           }

.fighter-achievement span {

               display: block;

               color: #999;

               font-size: 12px;

               line-height: 1.5;
           }

.fighter-method {

               position: relative;

               z-index: 2;

               display: grid;

               grid-template-columns:
                   repeat(3, 1fr);

               gap: 12px;

               margin-top: 25px;
           }

.fighter-method-item {

               padding: 22px 15px;

               text-align: center;

               border:
                   1px solid rgba(255, 255, 255, .06);

               background:
                   rgba(255, 255, 255, .025);
           }

.fighter-method-item i {

               display: block;

               color: #c32a39;

               font-size: 23px;

               margin-bottom: 12px;
           }

.fighter-method-item strong {

               display: block;

               color: #fff;

               font-size: 12px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               margin-bottom: 7px;
           }

.fighter-method-item span {

               display: block;

               color: #888;

               font-size: 12px;

               line-height: 1.5;
           }

.career-section {

               position: relative;

               z-index: 2;

               margin-top: 115px;
           }

.career-title {

               text-align: center;

               margin-bottom: 65px;
           }

.career-kicker {

               display: block;

               color: #c32a39;

               font-size: 12px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 12px;
           }

.career-title h2 {

               color: #fff;

               font-size: clamp(42px, 6vw, 70px);

               line-height: .95;

               margin: 0;

               font-weight: 1000;

               letter-spacing: -3px;

               font-style: italic;

               text-transform: uppercase;
           }

.career-title h2 span {

               color: #c32a39;
           }

.career-title p {

               color: #777;

               font-size: 14px;

               line-height: 1.7;

               margin: 20px auto 0;

               max-width: 600px;
           }

.fighter-timeline {

               position: relative;

               max-width: 1100px;

               margin: 0 auto;

               padding: 20px 0 50px;
           }

.fighter-timeline::before {

               content: "";

               position: absolute;

               top: 0;
               bottom: 0;

               left: 50%;

               width: 2px;

               background:
                   linear-gradient(180deg,
                       transparent,
                       rgba(195, 42, 57, .35) 5%,
                       #c32a39 50%,
                       rgba(195, 42, 57, .35) 95%,
                       transparent);

               transform: translateX(-50%);
           }

.timeline-progress {

               position: absolute;

               top: 0;

               left: 50%;

               width: 4px;

               height: 0;

               background: #c32a39;

               transform: translateX(-50%);

               box-shadow:
                   0 0 12px rgba(195, 42, 57, .7),
                   0 0 30px rgba(195, 42, 57, .25);

               z-index: 1;

               transition: height .15s linear;
           }

.timeline-item {

               position: relative;

               width: 50%;

               padding: 0 50px 70px;

               box-sizing: border-box;
           }

.timeline-item:nth-child(odd) {

               left: 0;

               text-align: right;
           }

.timeline-item:nth-child(even) {

               left: 50%;

               text-align: left;
           }

.timeline-point {

               position: absolute;

               top: 18px;

               width: 18px;
               height: 18px;

               border-radius: 50%;

               background: #090909;

               border: 3px solid #555;

               z-index: 3;

               transition:
                   .35s ease;
           }

.timeline-item:nth-child(odd) .timeline-point {

               right: -9px;
           }

.timeline-item:nth-child(even) .timeline-point {

               left: -9px;
           }

.timeline-item.active .timeline-point {

               border-color: #c32a39;

               background: #c32a39;

               box-shadow:
                   0 0 0 6px rgba(195, 42, 57, .10),
                   0 0 25px rgba(195, 42, 57, .65);
           }

.timeline-year {

               display: inline-block;

               color: #c32a39;

               font-size: 32px;

               line-height: 1;

               font-weight: 1000;

               font-style: italic;

               margin-bottom: 12px;

               text-shadow:
                   2px 2px 0 rgba(195, 42, 57, .08);
           }

.timeline-card {

               position: relative;

               overflow: hidden;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .05),
                       rgba(255, 255, 255, .008));

               border: 1px solid rgba(255, 255, 255, .09);

               padding: 0;

               text-align: left;

               transition:
                   transform .35s ease,
                   border-color .35s ease,
                   box-shadow .35s ease;

               clip-path: polygon(0 0,
                       calc(100% - 15px) 0,
                       100% 15px,
                       100% 100%,
                       0 100%);
           }

.timeline-item:nth-child(odd) .timeline-card {

               text-align: left;
           }

.timeline-card:hover {

               transform: translateY(-7px);

               border-color:
                   rgba(195, 42, 57, .6);

               box-shadow:
                   0 18px 45px rgba(0, 0, 0, .55),
                   0 0 30px rgba(195, 42, 57, .10);
           }

.timeline-card::before {

               content: "";

               display: block;

               width: 55px;

               height: 4px;

               background: #c32a39;

               transition: width .4s ease;
           }

.timeline-card:hover::before {

               width: 100%;
           }

.timeline-image-wrap {

               position: relative;

               width: 100%;

               height: 220px;

               overflow: hidden;

               background: #111;
           }

.timeline-image-wrap img {

               width: 100%;

               height: 100%;

               object-fit: cover;

               display: block;

               opacity: .82;

               filter:
                   grayscale(20%) contrast(1.08);

               transition:
                   transform .5s ease,
                   opacity .5s ease;
           }

.timeline-card:hover .timeline-image-wrap img {

               transform: scale(1.05);

               opacity: 1;
           }

.timeline-image-wrap::after {

               content: "";

               position: absolute;

               inset: 0;

               background:
                   linear-gradient(180deg,
                       transparent 50%,
                       rgba(0, 0, 0, .75));

               pointer-events: none;
           }

.timeline-content {

               padding: 25px 27px 28px;
           }

.timeline-content h3 {

               color: #fff;

               font-size: 20px;

               line-height: 1.25;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;

               margin: 0 0 15px;
           }

.timeline-content h3::after {

               content: "";

               display: block;

               width: 30px;

               height: 3px;

               background: #c32a39;

               margin-top: 12px;
           }

.timeline-location {

               color: #aaa;

               font-size: 12px;

               font-weight: 800;

               line-height: 1.6;

               text-transform: uppercase;

               letter-spacing: .5px;

               margin-bottom: 12px;
           }

.timeline-location img {

               width: 30px !important;

               height: auto !important;

               display: inline-block;

               vertical-align: middle;

               margin-right: 7px;

               opacity: .9;
           }

.timeline-description {

               color: #777;

               font-size: 13px;

               line-height: 1.7;

               margin: 0;
           }

.timeline-description strong {

               color: #aaa;
           }

.timeline-unknown {

               color: #555;

               font-size: 12px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;
           }

.fighter-statement {

               position: relative;

               z-index: 2;

               text-align: center;

               margin-top: 80px;

               padding: 35px 20px;
           }

.fighter-statement span {

               display: block;

               color: #c32a39;

               font-size: 11px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 18px;
           }

.fighter-statement strong {

               display: block;

               color: #fff;

               font-size: clamp(27px, 4vw, 46px);

               line-height: 1.1;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;
           }

.fighter-statement strong em {

               color: #c32a39;

               font-style: italic;
           }

.fighter-button-wrap {

               position: relative;

               z-index: 2;

               text-align: center;

               margin-top: 35px;
           }

.fighter-btn {

               display: inline-flex;

               align-items: center;

               justify-content: center;

               gap: 14px;

               position: relative;

               background: #c32a39;

               color: #fff;

               padding: 19px 38px;

               font-size: 13px;

               font-weight: 1000;

               letter-spacing: 2px;

               text-decoration: none;

               text-transform: uppercase;

               clip-path: polygon(8px 0,
                       100% 0,
                       calc(100% - 8px) 100%,
                       0 100%);

               transition: .3s;

               box-shadow:
                   0 10px 30px rgba(195, 42, 57, .2);
           }

.fighter-btn::before {

               content: "";

               position: absolute;

               inset: 0;

               background: #fff;

               transform: translateX(-100%);

               transition: .35s;

               z-index: -1;
           }

.fighter-btn:hover {

               color: #111;

               transform: skewX(-4deg);

               box-shadow:
                   0 15px 40px rgba(195, 42, 57, .3);
           }

.fighter-btn:hover::before {

               transform: translateX(0);
           }

.rosa-section {
               padding: 110px 20px 120px;

               background:
                   radial-gradient(circle at 50% 0%,
                       rgba(195, 42, 57, .12),
                       transparent 35%),
                   linear-gradient(180deg,
                       #080808 0%,
                       #0d0d0d 50%,
                       #050505 100%);

               position: relative;

               overflow: hidden;
           }

.rosa-section::before {
               content: "";

               position: absolute;

               inset: 0;

               opacity: .035;

               pointer-events: none;

               background-image:
                   repeating-linear-gradient(0deg,
                       #fff 0px,
                       #fff 1px,
                       transparent 1px,
                       transparent 4px);
           }

.rosa-section::after {
               content: "";

               position: absolute;

               top: -100px;
               right: 8%;

               width: 5px;
               height: 360px;

               background: #c32a39;

               transform: rotate(-18deg);

               box-shadow:
                   0 0 25px rgba(195, 42, 57, .45),
                   0 0 80px rgba(195, 42, 57, .15);
           }

.rosa-title {
               position: relative;

               z-index: 2;

               text-align: center;

               margin-bottom: 80px;
           }

.rosa-kicker {
               display: inline-block;

               color: #c32a39;

               font-size: 13px;

               font-weight: 900;

               letter-spacing: 5px;

               text-transform: uppercase;

               margin-bottom: 15px;
           }

.rosa-title h2 {
               color: #fff;

               font-size: clamp(43px, 7vw, 80px);

               line-height: .9;

               margin: 0;

               font-weight: 1000;

               letter-spacing: -3px;

               text-transform: uppercase;

               font-style: italic;

               text-shadow:
                   5px 5px 0 rgba(195, 42, 57, .12);
           }

.rosa-title h2 span {
               color: #c32a39;
           }

.rosa-title p {
               color: #8d8d8d;

               max-width: 760px;

               margin: 30px auto 0;

               line-height: 1.8;

               font-size: 16px;
           }

.rosa-intro {
               position: relative;

               z-index: 2;

               max-width: 100%;

               margin: 0 auto 65px;

               padding: 35px 40px;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border-left: 4px solid #c32a39;

               border-top: 1px solid rgba(255, 255, 255, .08);

               border-right: 1px solid rgba(255, 255, 255, .08);

               border-bottom: 1px solid rgba(255, 255, 255, .08);

               clip-path: polygon(0 0,
                       calc(100% - 18px) 0,
                       100% 18px,
                       100% 100%,
                       0 100%);
           }

.rosa-intro p {
               color: #aaa;

               line-height: 1.85;

               font-size: 16px;

               margin: 0 0 18px;
           }

.rosa-intro p:last-child {
               margin-bottom: 0;
           }

.rosa-grid {
               position: relative;

               z-index: 2;

               display: grid;

               grid-template-columns:
                   repeat(2, 1fr);

               gap: 18px;
           }

.rosa-card {
               min-height: 340px;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border: 1px solid rgba(255, 255, 255, .09);

               padding: 38px 32px 40px;

               position: relative;

               overflow: hidden;

               transition:
                   transform .35s ease,
                   border-color .35s ease,
                   box-shadow .35s ease;

               clip-path: polygon(0 0,
                       calc(100% - 18px) 0,
                       100% 18px,
                       100% 100%,
                       0 100%);
           }

.rosa-number {
               position: absolute;

               right: 20px;
               top: 10px;

               color: rgba(255, 255, 255, .035);

               font-size: 105px;

               line-height: 1;

               font-weight: 1000;

               font-style: italic;

               pointer-events: none;
           }

.rosa-card::before {
               content: "";

               position: absolute;

               top: 0;
               left: 0;

               width: 55px;
               height: 4px;

               background: #c32a39;

               transition: width .4s ease;
           }

.rosa-card::after {
               content: "";

               position: absolute;

               right: -35px;
               bottom: -45px;

               width: 120px;
               height: 120px;

               border: 1px solid rgba(195, 42, 57, .25);

               transform: rotate(45deg);

               transition: .4s;
           }

.rosa-card:hover {
               transform:
                   translateY(-8px) skewX(-1deg);

               border-color:
                   rgba(195, 42, 57, .65);

               box-shadow:
                   0 20px 50px rgba(0, 0, 0, .65),
                   0 0 35px rgba(195, 42, 57, .12);
           }

.rosa-card:hover::before {
               width: 100%;
           }

.rosa-card:hover::after {
               border-color:
                   rgba(195, 42, 57, .7);
           }

.rosa-icon {
               width: 64px;
               height: 64px;

               display: flex;

               align-items: center;
               justify-content: center;

               margin-bottom: 28px;

               background: #111;

               border: 1px solid rgba(195, 42, 57, .45);

               transform: skewX(-8deg);

               position: relative;

               z-index: 2;
           }

.rosa-icon i {
               color: #c32a39;

               font-size: 26px;

               transform: skewX(8deg);
           }

.rosa-card h3 {
               position: relative;

               z-index: 2;

               color: #fff;

               font-size: 26px;

               margin-bottom: 18px;

               font-weight: 1000;

               text-transform: uppercase;

               font-style: italic;

               letter-spacing: -.5px;
           }

.rosa-card h3::after {
               content: "";

               display: block;

               width: 35px;

               height: 3px;

               margin-top: 13px;

               background: #c32a39;
           }

.rosa-card p {
               position: relative;

               z-index: 2;

               color: #969696;

               line-height: 1.75;

               font-size: 14px;

               margin: 0 0 17px;
           }

.rosa-list {
               position: relative;

               z-index: 2;

               list-style: none;

               padding: 0;

               margin: 20px 0 0;
           }

.rosa-list li {
               position: relative;

               color: #aaa;

               font-size: 14px;

               line-height: 1.6;

               padding: 8px 0 8px 24px;

               border-bottom:
                   1px solid rgba(255, 255, 255, .045);
           }

.rosa-list li:last-child {
               border-bottom: none;
           }

.rosa-list li::before {
               content: "";

               position: absolute;

               left: 3px;
               top: 15px;

               width: 7px;
               height: 7px;

               background: #c32a39;

               transform: rotate(45deg);
           }

.rosa-card.muay {
               background:
                   radial-gradient(circle at 90% 10%,
                       rgba(195, 42, 57, .10),
                       transparent 35%),
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));
           }

.rosa-card.wide {
               grid-column: span 2;

               min-height: auto;
           }

.rosa-tag {
               position: absolute;

               bottom: 24px;
               right: 27px;

               color: #555;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;
           }

.rosa-button-wrap {
               position: relative;

               z-index: 2;

               text-align: center;

               margin-top: 75px;
           }

.rosa-btn {
               display: inline-flex;

               align-items: center;

               justify-content: center;

               gap: 14px;

               position: relative;

               background: #c32a39;

               color: #fff;

               padding: 19px 38px;

               font-size: 13px;

               font-weight: 1000;

               letter-spacing: 2px;

               text-decoration: none;

               text-transform: uppercase;

               clip-path: polygon(8px 0,
                       100% 0,
                       calc(100% - 8px) 100%,
                       0 100%);

               transition: .3s;

               box-shadow:
                   0 10px 30px rgba(195, 42, 57, .2);
           }

.rosa-btn::before {
               content: "";

               position: absolute;

               inset: 0;

               background: #fff;

               transform: translateX(-100%);

               transition: .35s;

               z-index: -1;
           }

.rosa-btn:hover {
               color: #111;

               transform: skewX(-4deg);

               box-shadow:
                   0 15px 40px rgba(195, 42, 57, .3);
           }

.rosa-btn:hover::before {
               transform: translateX(0);
           }

.gallery-section {

               padding: 110px 20px 120px;

               background:
                   radial-gradient(circle at 50% 0%,
                       rgba(195, 42, 57, .12),
                       transparent 35%),
                   linear-gradient(180deg,
                       #080808 0%,
                       #0d0d0d 50%,
                       #050505 100%);

               position: relative;

               overflow: hidden;
           }

.gallery-section::before {

               content: "";

               position: absolute;

               inset: 0;

               opacity: .035;

               pointer-events: none;

               background-image:
                   repeating-linear-gradient(0deg,
                       #fff 0px,
                       #fff 1px,
                       transparent 1px,
                       transparent 4px);
           }

.gallery-section::after {

               content: "";

               position: absolute;

               top: -100px;
               right: 8%;

               width: 5px;
               height: 390px;

               background: #c32a39;

               transform: rotate(-18deg);

               box-shadow:
                   0 0 25px rgba(195, 42, 57, .45),
                   0 0 80px rgba(195, 42, 57, .15);
           }

.gallery-title {

               position: relative;

               z-index: 2;

               text-align: center;

               margin-bottom: 65px;
           }

.gallery-kicker {

               display: inline-block;

               color: #c32a39;

               font-size: 13px;

               font-weight: 900;

               letter-spacing: 5px;

               text-transform: uppercase;

               margin-bottom: 15px;
           }

.gallery-title h1 {

               color: #fff;

               font-size: clamp(43px, 7vw, 82px);

               line-height: .9;

               margin: 0;

               font-weight: 1000;

               letter-spacing: -3px;

               text-transform: uppercase;

               font-style: italic;

               text-shadow:
                   5px 5px 0 rgba(195, 42, 57, .12);
           }

.gallery-title h1 span {

               color: #c32a39;
           }

.gallery-title p {

               color: #8d8d8d;

               max-width: 700px;

               margin: 28px auto 0;

               line-height: 1.8;

               font-size: 16px;
           }

.gallery-intro {

               position: relative;

               z-index: 2;

               max-width: 100%;

               margin: 0 auto 70px;

               padding: 38px 45px;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border-left: 4px solid #c32a39;

               border-top: 1px solid rgba(255, 255, 255, .08);

               border-right: 1px solid rgba(255, 255, 255, .08);

               border-bottom: 1px solid rgba(255, 255, 255, .08);

               clip-path: polygon(0 0,
                       calc(100% - 20px) 0,
                       100% 20px,
                       100% 100%,
                       0 100%);
           }

.gallery-intro p {

               color: #aaa;

               font-size: 16px;

               line-height: 1.85;

               text-align: center;

               margin: 0;
           }

.gallery-intro strong {

               color: #fff;
           }

.gallery-filter {

               position: relative;

               z-index: 2;

               display: flex;

               justify-content: center;

               flex-wrap: wrap;

               gap: 8px;

               margin-bottom: 45px;
           }

.gallery-filter button {

               border: 1px solid rgba(255, 255, 255, .10);

               background: rgba(255, 255, 255, .025);

               color: #777;

               padding: 12px 20px;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               cursor: pointer;

               transition: .3s;

               clip-path: polygon(5px 0,
                       100% 0,
                       calc(100% - 5px) 100%,
                       0 100%);
           }

.gallery-filter button:hover,
           .gallery-filter button.active {

               color: #fff;

               background: #c32a39;

               border-color: #c32a39;

               transform: skewX(-3deg);
           }

.gallery-grid {

               position: relative;

               z-index: 2;

               display: grid;

               grid-template-columns:
                   repeat(4, 1fr);

               grid-auto-rows: 250px;

               gap: 14px;
           }

.gallery-item {

               position: relative;

               overflow: hidden;

               background: #111;

               border: 1px solid rgba(255, 255, 255, .08);

               cursor: pointer;

               clip-path: polygon(0 0,
                       calc(100% - 15px) 0,
                       100% 15px,
                       100% 100%,
                       0 100%);

               transition:
                   transform .35s ease,
                   border-color .35s ease,
                   box-shadow .35s ease,
                   opacity .35s ease;
           }

.gallery-item:hover {

               transform:
                   translateY(-6px) skewX(-1deg);

               border-color:
                   rgba(195, 42, 57, .65);

               box-shadow:
                   0 20px 45px rgba(0, 0, 0, .65),
                   0 0 30px rgba(195, 42, 57, .12);
           }

.gallery-item.wide {

               grid-column: span 2;
           }

.gallery-item.tall {

               grid-row: span 2;
           }

.gallery-item.big {

               grid-column: span 2;

               grid-row: span 2;
           }

.gallery-item img {

               width: 100%;

               height: 100%;

               object-fit: cover;

               display: block;

               opacity: .78;

               filter:
                   grayscale(20%) contrast(1.08);

               transition:
                   transform .6s ease,
                   opacity .5s ease,
                   filter .5s ease;
           }

.gallery-item:hover img {

               transform: scale(1.07);

               opacity: 1;

               filter:
                   grayscale(0%) contrast(1.08);
           }

.gallery-overlay {

               position: absolute;

               inset: 0;

               display: flex;

               flex-direction: column;

               justify-content: flex-end;

               padding: 24px;

               background:
                   linear-gradient(180deg,
                       transparent 35%,
                       rgba(0, 0, 0, .85) 100%);

               transition: .35s;
           }

.gallery-item:hover .gallery-overlay {

               background:
                   linear-gradient(180deg,
                       rgba(195, 42, 57, .05),
                       rgba(0, 0, 0, .90));
           }

.gallery-category {

               display: inline-block;

               align-self: flex-start;

               color: #c32a39;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               margin-bottom: 7px;
           }

.gallery-overlay h3 {

               color: #fff;

               font-size: 20px;

               line-height: 1.15;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;

               margin: 0;
           }

.gallery-overlay p {

               color: #aaa;

               font-size: 11px;

               line-height: 1.5;

               margin: 8px 0 0;

           }

.gallery-plus {

               position: absolute;

               top: 20px;
               right: 20px;

               width: 43px;
               height: 43px;

               display: flex;

               align-items: center;
               justify-content: center;

               background: rgba(0, 0, 0, .65);

               border: 1px solid rgba(255, 255, 255, .15);

               color: #fff;

               font-size: 15px;

               transform:
                   rotate(45deg) scale(.8);

               opacity: 0;

               transition: .35s;
           }

.gallery-plus i {

               transform: rotate(-45deg);
           }

.gallery-item:hover .gallery-plus {

               opacity: 1;

               transform:
                   rotate(45deg) scale(1);
           }

.gallery-item.hidden {

               display: none;
           }

.gallery-empty {

               display: none;

               position: relative;

               z-index: 2;

               text-align: center;

               padding: 70px 20px;

               color: #555;

               font-size: 12px;

               font-weight: 900;

               letter-spacing: 3px;

               text-transform: uppercase;
           }

.gallery-statement {

               position: relative;

               z-index: 2;

               text-align: center;

               margin-top: 90px;

               padding: 35px 20px;
           }

.gallery-statement span {

               display: block;

               color: #c32a39;

               font-size: 11px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 18px;
           }

.gallery-statement strong {

               display: block;

               color: #fff;

               font-size: clamp(27px, 4vw, 46px);

               line-height: 1.1;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;
           }

.gallery-statement strong em {

               color: #c32a39;

               font-style: italic;
           }

.gallery-lightbox {

               position: fixed;

               inset: 0;

               z-index: 9999;

               display: flex;

               align-items: center;

               justify-content: center;

               padding: 40px;

               background:
                   rgba(0, 0, 0, .94);

               opacity: 0;

               visibility: hidden;

               transition:
                   opacity .3s ease,
                   visibility .3s ease;
           }

.gallery-lightbox.open {

               opacity: 1;

               visibility: visible;
           }

.lightbox-content {

               position: relative;

               width: min(1100px, 100%);

               max-height: 90vh;

               display: flex;

               align-items: center;

               justify-content: center;
           }

.lightbox-image {

               max-width: 100%;

               max-height: 82vh;

               width: auto;

               height: auto;

               display: block;

               object-fit: contain;

               box-shadow:
                   0 30px 80px rgba(0, 0, 0, .8);

               border:
                   1px solid rgba(255, 255, 255, .10);
           }

.lightbox-close,
           .lightbox-prev,
           .lightbox-next {

               position: fixed;

               width: 48px;
               height: 48px;

               display: flex;

               align-items: center;
               justify-content: center;

               background: #111;

               border:
                   1px solid rgba(255, 255, 255, .15);

               color: #fff;

               cursor: pointer;

               transition: .3s;
           }

.lightbox-close:hover,
           .lightbox-prev:hover,
           .lightbox-next:hover {

               background: #c32a39;

               border-color: #c32a39;
           }

.lightbox-close {

               top: 25px;

               right: 30px;

               font-size: 18px;
           }

.lightbox-prev {

               left: 25px;

               top: 50%;

               transform: translateY(-50%);
           }

.lightbox-next {

               right: 25px;

               top: 50%;

               transform: translateY(-50%);
           }

.lightbox-info {

               position: absolute;

               left: 0;
               right: 0;

               bottom: -55px;

               text-align: center;
           }

.lightbox-info span {

               color: #c32a39;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 3px;

               text-transform: uppercase;
           }

.lightbox-info strong {

               display: block;

               color: #fff;

               margin-top: 5px;

               font-size: 13px;

               font-weight: 900;

               text-transform: uppercase;

               letter-spacing: 1px;
           }

.events-section {

               position: relative;

               padding: 110px 20px 120px;

               overflow: hidden;

               background:
                   radial-gradient(circle at 50% 0%,
                       rgba(195, 42, 57, .14),
                       transparent 35%),
                   linear-gradient(180deg,
                       #080808 0%,
                       #0d0d0d 50%,
                       #050505 100%);
           }

.events-section::before {

               content: "";

               position: absolute;

               inset: 0;

               opacity: .035;

               pointer-events: none;

               background-image:
                   repeating-linear-gradient(0deg,
                       #fff 0px,
                       #fff 1px,
                       transparent 1px,
                       transparent 4px);
           }

.events-section::after {

               content: "";

               position: absolute;

               top: -130px;
               right: 9%;

               width: 5px;
               height: 420px;

               background: #c32a39;

               transform: rotate(-18deg);

               box-shadow:
                   0 0 25px rgba(195, 42, 57, .45),
                   0 0 80px rgba(195, 42, 57, .15);
           }

.events-title {

               position: relative;

               z-index: 2;

               text-align: center;

               margin-bottom: 70px;
           }

.events-kicker {

               display: inline-block;

               color: #c32a39;

               font-size: 13px;

               font-weight: 900;

               letter-spacing: 5px;

               text-transform: uppercase;

               margin-bottom: 15px;
           }

.events-title h1 {

               color: #fff;

               font-size: clamp(48px, 7vw, 84px);

               line-height: .9;

               margin: 0;

               font-weight: 1000;

               letter-spacing: -3px;

               text-transform: uppercase;

               font-style: italic;

               text-shadow:
                   5px 5px 0 rgba(195, 42, 57, .12);
           }

.events-title h1 span {

               color: #c32a39;
           }

.events-title p {

               color: #8d8d8d;

               max-width: 750px;

               margin: 28px auto 0;

               line-height: 1.8;

               font-size: 16px;
           }

.events-intro {

               position: relative;

               z-index: 2;

               max-width: 100%;

               margin: 0 auto 90px;

               padding: 38px 45px;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border-left: 4px solid #c32a39;

               border-top: 1px solid rgba(255, 255, 255, .08);

               border-right: 1px solid rgba(255, 255, 255, .08);

               border-bottom: 1px solid rgba(255, 255, 255, .08);

               clip-path: polygon(0 0,
                       calc(100% - 20px) 0,
                       100% 20px,
                       100% 100%,
                       0 100%);
           }

.events-intro p {

               color: #aaa;

               font-size: 16px;

               line-height: 1.85;

               text-align: center;

               margin: 0;

           }

.events-intro strong {

               color: #fff;

           }

.events-block {

               position: relative;

               z-index: 2;

               margin-top: 105px;

           }

.events-block:first-of-type {

               margin-top: 0;

           }

.events-block-header {

               display: flex;

               align-items: flex-end;

               justify-content: space-between;

               gap: 30px;

               margin-bottom: 45px;

               padding-bottom: 20px;

               border-bottom: 1px solid rgba(255, 255, 255, .08);

           }

.events-block-heading {

               position: relative;

           }

.events-block-kicker {

               display: block;

               color: #c32a39;

               font-size: 11px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 10px;

           }

.events-block-heading h2 {

               color: #fff;

               font-size: clamp(36px, 5vw, 60px);

               line-height: .95;

               margin: 0;

               font-weight: 1000;

               letter-spacing: -2px;

               font-style: italic;

               text-transform: uppercase;

           }

.events-block-heading h2 span {

               color: #c32a39;

           }

.events-block-description {

               max-width: 430px;

               color: #777;

               font-size: 13px;

               line-height: 1.7;

               margin: 0;

           }

.events-grid {

               display: grid;

               grid-template-columns:
                   repeat(3, 1fr);

               gap: 20px;

           }

.event-card {

               position: relative;

               overflow: hidden;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .05),
                       rgba(255, 255, 255, .008));

               border: 1px solid rgba(255, 255, 255, .09);

               transition:
                   transform .35s ease,
                   border-color .35s ease,
                   box-shadow .35s ease;

               clip-path: polygon(0 0,
                       calc(100% - 18px) 0,
                       100% 18px,
                       100% 100%,
                       0 100%);
           }

.event-card::before {

               content: "";

               position: absolute;

               top: 0;
               left: 0;

               width: 55px;
               height: 4px;

               background: #c32a39;

               z-index: 5;

               transition: width .4s ease;

           }

.event-card:hover {

               transform: translateY(-8px);

               border-color:
                   rgba(195, 42, 57, .65);

               box-shadow:
                   0 20px 50px rgba(0, 0, 0, .65),
                   0 0 35px rgba(195, 42, 57, .12);
           }

.event-card:hover::before {

               width: 100%;

           }

.event-image {

               position: relative;

               width: 100%;

               height: 390px;

               overflow: hidden;

               background: #111;
           }

.event-image img {

               width: 100%;

               height: 100%;

               display: block;

               object-fit: cover;

               opacity: .88;

               filter:
                   grayscale(12%) contrast(1.08);

               transition:
                   transform .6s ease,
                   opacity .5s ease,
                   filter .5s ease;
           }

.event-card:hover .event-image img {

               transform: scale(1.045);

               opacity: 1;

               filter:
                   grayscale(0%) contrast(1.08);
           }

.event-image::after {

               content: "";

               position: absolute;

               inset: 0;

               background:
                   linear-gradient(180deg,
                       transparent 55%,
                       rgba(0, 0, 0, .78) 100%);

               pointer-events: none;
           }

.event-date {

               position: absolute;

               left: 18px;
               bottom: 18px;

               z-index: 3;

               display: flex;

               align-items: center;

               gap: 10px;

               padding: 9px 13px;

               background: rgba(0, 0, 0, .82);

               border-left: 3px solid #c32a39;

               color: #fff;

               font-size: 11px;

               font-weight: 900;

               letter-spacing: 1px;

               text-transform: uppercase;

               backdrop-filter: blur(5px);
           }

.event-date i {

               color: #c32a39;

               font-size: 14px;

           }

.event-type {

               position: absolute;

               top: 20px;
               right: 20px;

               z-index: 4;

               padding: 7px 11px;

               color: #fff;

               background: #c32a39;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               clip-path: polygon(5px 0,
                       100% 0,
                       calc(100% - 5px) 100%,
                       0 100%);
           }

.event-content {

               padding: 27px 27px 30px;

           }

.event-content h3 {

               color: #fff;

               font-size: 22px;

               line-height: 1.2;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;

               margin: 0 0 14px;

           }

.event-content h3::after {

               content: "";

               display: block;

               width: 30px;

               height: 3px;

               margin-top: 12px;

               background: #c32a39;

           }

.event-location {

               display: flex;

               align-items: center;

               gap: 9px;

               color: #aaa;

               font-size: 11px;

               line-height: 1.5;

               font-weight: 800;

               letter-spacing: .7px;

               text-transform: uppercase;

               margin-bottom: 17px;

           }

.event-location i {

               color: #c32a39;

               font-size: 14px;

           }

.event-description {

               color: #777;

               font-size: 13px;

               line-height: 1.75;

               margin: 0 0 25px;

           }

.event-actions {

               display: flex;

               align-items: center;

               gap: 10px;

           }

.event-btn {

               display: inline-flex;

               align-items: center;

               justify-content: center;

               gap: 9px;

               min-height: 43px;

               padding: 11px 17px;

               background: #c32a39;

               color: #fff;

               text-decoration: none;

               font-size: 10px;

               font-weight: 1000;

               letter-spacing: 1.5px;

               text-transform: uppercase;

               clip-path: polygon(6px 0,
                       100% 0,
                       calc(100% - 6px) 100%,
                       0 100%);

               transition: .3s;

           }

.event-btn:hover {

               background: #fff;

               color: #111;

               transform: skewX(-4deg);

           }

.event-btn.secondary {

               background: transparent;

               border: 1px solid rgba(255, 255, 255, .15);

               color: #aaa;

               clip-path: none;

           }

.event-btn.secondary:hover {

               color: #fff;

               background: rgba(255, 255, 255, .06);

               border-color: #c32a39;

               transform: none;

           }

.events-past .event-card {

               opacity: .78;

           }

.events-past .event-card:hover {

               opacity: 1;

           }

.events-past .event-image img {

               filter:
                   grayscale(55%) contrast(1.05);

           }

.events-past .event-card:hover .event-image img {

               filter:
                   grayscale(15%) contrast(1.08);

           }

.event-past-label {

               display: inline-flex;

               align-items: center;

               gap: 7px;

               color: #666;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               margin-bottom: 15px;

           }

.event-past-label i {

               color: #555;

           }

.events-note {

               padding: 30px;

               border: 1px solid rgba(255, 255, 255, .07);

               background: rgba(255, 255, 255, .02);

               text-align: center;

               color: #666;

               font-size: 13px;

               line-height: 1.7;

           }

.events-statement {

               position: relative;

               z-index: 2;

               text-align: center;

               margin-top: 105px;

               padding: 40px 20px;

           }

.events-statement span {

               display: block;

               color: #c32a39;

               font-size: 11px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 18px;

           }

.events-statement strong {

               display: block;

               color: #fff;

               font-size: clamp(28px, 4vw, 48px);

               line-height: 1.1;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;

           }

.events-statement strong em {

               color: #c32a39;

               font-style: italic;

           }

.events-button-wrap {

               position: relative;

               z-index: 2;

               text-align: center;

               margin-top: 20px;

           }

.events-main-btn {

               display: inline-flex;

               align-items: center;

               justify-content: center;

               gap: 14px;

               position: relative;

               background: #c32a39;

               color: #fff;

               padding: 19px 38px;

               font-size: 13px;

               font-weight: 1000;

               letter-spacing: 2px;

               text-decoration: none;

               text-transform: uppercase;

               clip-path: polygon(8px 0,
                       100% 0,
                       calc(100% - 8px) 100%,
                       0 100%);

               transition: .3s;

               box-shadow:
                   0 10px 30px rgba(195, 42, 57, .2);

           }

.events-main-btn:hover {

               color: #111;

               background: #fff;

               transform: skewX(-4deg);

               box-shadow:
                   0 15px 40px rgba(195, 42, 57, .3);

           }

.event-detail-section {

               position: relative;

               padding: 100px 20px 120px;

               overflow: hidden;

               background:
                   radial-gradient(circle at 70% 0%,
                       rgba(195, 42, 57, .15),
                       transparent 35%),
                   linear-gradient(180deg,
                       #080808 0%,
                       #0d0d0d 50%,
                       #050505 100%);
           }

.event-detail-section::before {

               content: "";

               position: absolute;

               inset: 0;

               opacity: .035;

               pointer-events: none;

               background-image:
                   repeating-linear-gradient(0deg,
                       #fff 0px,
                       #fff 1px,
                       transparent 1px,
                       transparent 4px);
           }

.event-detail-section::after {

               content: "";

               position: absolute;

               top: -150px;
               right: 8%;

               width: 5px;
               height: 450px;

               background: #c32a39;

               transform: rotate(-18deg);

               box-shadow:
                   0 0 25px rgba(195, 42, 57, .45),
                   0 0 80px rgba(195, 42, 57, .15);
           }

.event-breadcrumb {

               position: relative;

               z-index: 3;

               margin-bottom: 45px;

           }

.event-breadcrumb a {

               color: #666;

               text-decoration: none;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               transition: .3s;

           }

.event-breadcrumb a:hover {

               color: #c32a39;

           }

.event-breadcrumb span {

               color: #333;

               margin: 0 10px;

           }

.event-breadcrumb strong {

               color: #999;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

           }

.event-detail-hero {

               position: relative;

               z-index: 2;

               display: grid;

               grid-template-columns:
                   minmax(320px, .9fr) minmax(0, 1.1fr);

               gap: 60px;

               align-items: center;

           }

.event-poster {

               position: relative;

               overflow: hidden;

               background: #111;

               border: 1px solid rgba(255, 255, 255, .10);

               clip-path: polygon(0 0,
                       calc(100% - 22px) 0,
                       100% 22px,
                       100% 100%,
                       0 100%);

               box-shadow:
                   0 25px 70px rgba(0, 0, 0, .65);
           }

.event-poster::before {

               content: "";

               position: absolute;

               top: 0;
               left: 0;

               width: 75px;
               height: 5px;

               background: #c32a39;

               z-index: 3;

               transition: width .4s ease;

           }

.event-poster:hover::before {

               width: 100%;

           }

.event-poster img {

               width: 100%;

               display: block;

               aspect-ratio: 3 / 4;

               object-fit: cover;

               opacity: .92;

               filter:
                   contrast(1.06) saturate(.9);

               transition:
                   transform .6s ease,
                   opacity .4s ease;

           }

.event-poster:hover img {

               transform: scale(1.025);

               opacity: 1;

           }

.event-poster-overlay {

               position: absolute;

               inset: 0;

               display: flex;

               align-items: flex-end;

               padding: 25px;

               background:
                   linear-gradient(180deg,
                       transparent 60%,
                       rgba(0, 0, 0, .85));

               pointer-events: none;

           }

.event-poster-label {

               color: #fff;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 3px;

               text-transform: uppercase;

           }

.event-poster-label i {

               color: #c32a39;

               margin-right: 7px;

           }

.event-hero-content {

               position: relative;

           }

.event-type {

               display: inline-block;

               padding: 8px 13px;

               background: #c32a39;

               color: #fff;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               clip-path: polygon(5px 0,
                       100% 0,
                       calc(100% - 5px) 100%,
                       0 100%);

               margin-bottom: 20px;

           }

.event-hero-content h1 {

               color: #fff;

               font-size: clamp(45px, 6vw, 78px);

               line-height: .9;

               margin: 0;

               font-weight: 1000;

               letter-spacing: -3px;

               text-transform: uppercase;

               font-style: italic;

               text-shadow:
                   5px 5px 0 rgba(195, 42, 57, .10);

           }

.event-hero-content h1 span {

               color: #c32a39;

           }

.event-short-description {

               color: #999;

               font-size: 16px;

               line-height: 1.8;

               margin: 28px 0 35px;

               max-width: 650px;

           }

.event-meta {

               display: grid;

               grid-template-columns:
                   repeat(2, 1fr);

               gap: 10px;

               margin-bottom: 35px;

           }

.event-meta-item {

               padding: 18px;

               background:
                   rgba(255, 255, 255, .025);

               border: 1px solid rgba(255, 255, 255, .07);

           }

.event-meta-item i {

               display: block;

               color: #c32a39;

               font-size: 18px;

               margin-bottom: 10px;

           }

.event-meta-item strong {

               display: block;

               color: #777;

               font-size: 9px;

               font-weight: 900;

               letter-spacing: 2px;

               text-transform: uppercase;

               margin-bottom: 6px;

           }

.event-meta-item span {
               display: block;
               color: #fff;
               font-size: 13px;
               line-height: 1.5;
               font-weight: 800;
               letter-spacing: 1px;

           }

.event-hero-actions {

               display: flex;

               align-items: center;

               gap: 12px;

               flex-wrap: wrap;

           }

.event-main-btn {

               display: inline-flex;

               align-items: center;

               justify-content: center;

               gap: 12px;

               padding: 17px 28px;

               background: #c32a39;

               color: #fff;

               text-decoration: none;

               font-size: 11px;

               font-weight: 1000;

               letter-spacing: 2px;

               text-transform: uppercase;

               clip-path: polygon(7px 0,
                       100% 0,
                       calc(100% - 7px) 100%,
                       0 100%);

               transition: .3s;

               box-shadow:
                   0 10px 30px rgba(195, 42, 57, .18);

           }

.event-main-btn:hover {

               background: #fff;

               color: #111;

               transform: skewX(-4deg);

           }

.event-back-btn {

               display: inline-flex;

               align-items: center;

               gap: 10px;

               padding: 16px 20px;

               color: #777;

               text-decoration: none;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 1.5px;

               text-transform: uppercase;

               border: 1px solid rgba(255, 255, 255, .10);

               transition: .3s;

           }

.event-back-btn:hover {

               color: #fff;

               border-color: #c32a39;

           }

.event-detail-content {

               position: relative;

               z-index: 2;

               display: grid;

               grid-template-columns:
                   minmax(0, 1fr) 360px;

               gap: 35px;

               margin-top: 100px;

           }

.event-main-content {

               padding: 45px;

               background:
                   linear-gradient(135deg,
                       rgba(255, 255, 255, .045),
                       rgba(255, 255, 255, .008));

               border: 1px solid rgba(255, 255, 255, .08);

               border-left: 4px solid #c32a39;

               clip-path: polygon(0 0,
                       calc(100% - 20px) 0,
                       100% 20px,
                       100% 100%,
                       0 100%);

           }

.content-kicker {

               display: block;

               color: #c32a39;

               font-size: 11px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 12px;

           }

.event-main-content h2 {

               color: #fff;

               font-size: clamp(32px, 4vw, 50px);

               line-height: .95;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;

               letter-spacing: -2px;

               margin: 0 0 25px;

           }

.event-main-content h2 span {

               color: #c32a39;

           }

.event-main-content p {

               color: #888;

               font-size: 14px;

               line-height: 1.85;

               margin: 0 0 20px;

           }

.event-main-content p strong {

               color: #bbb;

           }

.event-highlight {

               margin: 35px 0;

               padding: 25px 28px;

               background:
                   rgba(195, 42, 57, .055);

               border: 1px solid rgba(195, 42, 57, .18);

               border-left: 3px solid #c32a39;

           }

.event-highlight strong {

               display: block;

               color: #fff;

               font-size: 16px;

               line-height: 1.5;

               font-style: italic;

               margin-bottom: 7px;

           }

.event-highlight span {

               color: #777;

               font-size: 12px;

               line-height: 1.6;

           }

.event-program {

               margin-top: 45px;

           }

.event-program-title {

               display: flex;

               align-items: center;

               gap: 14px;

               margin-bottom: 25px;

           }

.event-program-title i {

               color: #c32a39;

               font-size: 22px;

           }

.event-program-title h3 {

               color: #fff;

               font-size: 23px;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;

               margin: 0;

           }

.event-program-list {

               list-style: none;

               padding: 0;

               margin: 0;

           }

.event-program-list li {

               display: grid;

               grid-template-columns: 90px 1fr;

               gap: 20px;

               padding: 17px 0;

               border-bottom: 1px solid rgba(255, 255, 255, .06);

           }

.event-program-list li:first-child {

               border-top: 1px solid rgba(255, 255, 255, .06);

           }

.event-program-time {
               color: #c32a39;
               font-size: 11px;
               font-weight: 900;
               letter-spacing: 1px;

           }

.event-program-info strong {

               display: block;
               color: #fff;
               letter-spacing: 1px;
               font-size: 13px;
               margin-bottom: 4px;

           }

.event-program-info span {

               color: #666;

               font-size: 12px;

               line-height: 1.5;

           }

.event-sidebar {

               position: relative;

           }

.event-booking {

               position: sticky;

               top: 30px;

               padding: 32px;

               background:
                   linear-gradient(145deg,
                       #151515,
                       #0b0b0b);

               border: 1px solid rgba(195, 42, 57, .35);

               clip-path: polygon(0 0,
                       calc(100% - 18px) 0,
                       100% 18px,
                       100% 100%,
                       0 100%);

               box-shadow:
                   0 20px 50px rgba(0, 0, 0, .45);

           }

.booking-kicker {

               color: #c32a39;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 3px;

               text-transform: uppercase;

               margin-bottom: 10px;

           }

.event-booking h3 {

               color: #fff;

               font-size: 28px;

               line-height: 1;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;

               margin: 0 0 25px;

           }

.booking-price {

               padding: 18px 0;

               border-top: 1px solid rgba(255, 255, 255, .08);

               border-bottom: 1px solid rgba(255, 255, 255, .08);

               margin-bottom: 22px;

           }

.booking-price strong {

               display: block;

               color: #c32a39;

               font-size: 32px;

               font-weight: 1000;

               font-style: italic;

           }

.booking-price span {

               color: #666;

               font-size: 10px;

               font-weight: 800;

               text-transform: uppercase;

               letter-spacing: 1px;

           }

.booking-info {

               list-style: none;

               padding: 0;

               margin: 0 0 25px;

           }

.booking-info li {

               display: flex;

               align-items: flex-start;

               gap: 12px;

               color: #888;

               font-size: 12px;

               line-height: 1.6;

               padding: 9px 0;

           }

.booking-info i {

               color: #c32a39;

               width: 16px;

               margin-top: 2px;

           }

.booking-btn {

               display: flex;

               align-items: center;

               justify-content: center;

               gap: 10px;

               width: 100%;

               box-sizing: border-box;

               padding: 17px 15px;

               background: #c32a39;

               color: #fff;

               text-decoration: none;

               font-size: 11px;

               font-weight: 1000;

               letter-spacing: 2px;

               text-transform: uppercase;

               clip-path: polygon(7px 0,
                       100% 0,
                       calc(100% - 7px) 100%,
                       0 100%);

               transition: .3s;

           }

.booking-btn:hover {

               background: #fff;

               color: #111;

           }

.booking-note {

               color: #555;

               font-size: 10px;

               line-height: 1.6;

               text-align: center;

               margin: 15px 0 0;

           }

.event-info-grid {

               display: grid;

               grid-template-columns:
                   repeat(3, 1fr);

               gap: 12px;

               margin-top: 35px;

           }

.event-info-box {

               padding: 22px 18px;

               text-align: center;

               background:
                   rgba(255, 255, 255, .025);

               border: 1px solid rgba(255, 255, 255, .06);

           }

.event-info-box i {

               display: block;

               color: #c32a39;

               font-size: 22px;

               margin-bottom: 12px;

           }

.event-info-box strong {

               display: block;

               color: #fff;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 1.5px;

               text-transform: uppercase;

               margin-bottom: 6px;

           }

.event-info-box span {

               display: block;

               color: #777;

               font-size: 11px;

               line-height: 1.5;

           }

.event-final-cta {

               position: relative;

               z-index: 2;

               margin-top: 100px;

               padding: 55px 30px;

               text-align: center;

               background:
                   linear-gradient(135deg,
                       rgba(195, 42, 57, .12),
                       rgba(255, 255, 255, .02));

               border: 1px solid rgba(195, 42, 57, .20);

           }

.event-final-cta span {

               display: block;

               color: #c32a39;

               font-size: 10px;

               font-weight: 900;

               letter-spacing: 4px;

               text-transform: uppercase;

               margin-bottom: 15px;

           }

.event-final-cta h2 {

               color: #fff;

               font-size: clamp(30px, 5vw, 52px);

               line-height: 1;

               font-weight: 1000;

               font-style: italic;

               text-transform: uppercase;

               margin: 0 0 25px;

           }

.event-final-cta h2 em {

               color: #c32a39;

               font-style: italic;

           }

.event-final-cta p {

               max-width: 600px;

               margin: 0 auto 30px;

               color: #777;

               font-size: 13px;

               line-height: 1.7;

           }



          /* =========================================================
       BLOG DETAIL
       ========================================================= */

    .blog-detail-section {

        padding: 110px 20px 120px;

        background:
            radial-gradient(
                circle at 50% 0%,
                rgba(195,42,57,.12),
                transparent 35%
            ),
            linear-gradient(
                180deg,
                #080808 0%,
                #0d0d0d 50%,
                #050505 100%
            );

        position: relative;

        overflow: hidden;
    }


    /* =========================================================
       TEXTURE
       ========================================================= */

    .blog-detail-section::before {

        content: "";

        position: absolute;

        inset: 0;

        opacity: .035;

        pointer-events: none;

        background-image:
            repeating-linear-gradient(
                0deg,
                #fff 0px,
                #fff 1px,
                transparent 1px,
                transparent 4px
            );
    }


    /* =========================================================
       DIAGONAL LINE
       ========================================================= */

    .blog-detail-section::after {

        content: "";

        position: absolute;

        top: -100px;
        right: 8%;

        width: 5px;
        height: 390px;

        background: #c32a39;

        transform: rotate(-18deg);

        box-shadow:
            0 0 25px rgba(195,42,57,.45),
            0 0 80px rgba(195,42,57,.15);
    }


    /* =========================================================
       HEADER
       ========================================================= */

    .blog-detail-header {

        position: relative;

        z-index: 2;

        max-width: 1050px;

        margin: 0 auto 55px;

        text-align: center;
    }


    .blog-detail-kicker {

        display: inline-block;

        color: #c32a39;

        font-size: 12px;

        font-weight: 900;

        letter-spacing: 4px;

        text-transform: uppercase;

        margin-bottom: 17px;
    }


    .blog-detail-header h1 {

        color: #fff;

        font-size: clamp(42px, 7vw, 82px);

        line-height: .95;

        margin: 0;

        font-weight: 1000;

        letter-spacing: -3px;

        font-style: italic;

        text-transform: uppercase;

        text-shadow:
            5px 5px 0 rgba(195,42,57,.10);
    }


    .blog-detail-header h1 span {

        color: #c32a39;
    }


    .blog-detail-meta {

        display: flex;

        align-items: center;

        justify-content: center;

        flex-wrap: wrap;

        gap: 18px;

        margin-top: 25px;

        color: #777;

        font-size: 11px;

        font-weight: 900;

        letter-spacing: 1.5px;

        text-transform: uppercase;
    }


    .blog-detail-meta span {

        display: inline-flex;

        align-items: center;

        gap: 7px;
    }


    .blog-detail-meta i {

        color: #c32a39;
    }


    /* =========================================================
       HERO IMAGE
       ========================================================= */

    .blog-detail-hero {

        position: relative;

        z-index: 2;

        max-width: 1150px;

        margin: 0 auto 65px;

        overflow: hidden;

        background: #111;

        border: 1px solid rgba(255,255,255,.09);

        clip-path: polygon(
            0 0,
            calc(100% - 25px) 0,
            100% 25px,
            100% 100%,
            0 100%
        );
    }


    .blog-detail-hero::before {

        content: "";

        position: absolute;

        top: 0;
        left: 0;

        width: 90px;
        height: 5px;

        background: #c32a39;

        z-index: 3;
    }


    .blog-detail-hero img {

        display: block;

        width: 100%;

        height: 560px;

        object-fit: cover;

        opacity: .88;

        filter:
            grayscale(12%)
            contrast(1.08);

        transition:
            transform .6s ease,
            opacity .6s ease;
    }


    .blog-detail-hero:hover img {

        transform: scale(1.025);

        opacity: 1;
    }


    .blog-detail-hero::after {

        content: "";

        position: absolute;

        inset: 0;

        background:
            linear-gradient(
                180deg,
                transparent 50%,
                rgba(0,0,0,.35)
            );

        pointer-events: none;
    }


    /* =========================================================
       MAIN LAYOUT
       ========================================================= */

    .blog-detail-layout {

        position: relative;

        z-index: 2;

        max-width: 1100px;

        margin: 0 auto;

        display: grid;

        grid-template-columns:
            minmax(0, 1fr)
            280px;

        gap: 55px;

        align-items: start;
    }


    /* =========================================================
       ARTICLE
       ========================================================= */

    .blog-article {

        min-width: 0;
    }


    .blog-article-intro {

        color: #fff;

        font-size: 21px;

        line-height: 1.65;

        font-weight: 800;

        font-style: italic;

        margin: 0 0 38px;

        padding-left: 25px;

        border-left: 4px solid #c32a39;
    }


    .blog-article p {

        color: #999;

        font-size: 15px;

        line-height: 1.95;

        margin: 0 0 25px;
    }


    .blog-article p strong {

        color: #ddd;
    }


    .blog-article h2 {

        position: relative;

        color: #fff;

        font-size: 31px;

        line-height: 1.15;

        font-weight: 1000;

        font-style: italic;

        text-transform: uppercase;

        margin: 55px 0 22px;

        letter-spacing: -.5px;
    }


    .blog-article h2::after {

        content: "";

        display: block;

        width: 40px;

        height: 3px;

        background: #c32a39;

        margin-top: 13px;
    }


    .blog-article h3 {

        color: #fff;

        font-size: 20px;

        font-weight: 900;

        text-transform: uppercase;

        margin: 35px 0 15px;
    }


    /* =========================================================
       BLOCKQUOTE
       ========================================================= */

    .blog-quote {

        position: relative;

        margin: 45px 0;

        padding: 35px 35px 35px 45px;

        background:
            linear-gradient(
                135deg,
                rgba(195,42,57,.12),
                rgba(255,255,255,.025)
            );

        border-top: 1px solid rgba(255,255,255,.08);

        border-right: 1px solid rgba(255,255,255,.08);

        border-bottom: 1px solid rgba(255,255,255,.08);

        border-left: 4px solid #c32a39;

        clip-path: polygon(
            0 0,
            calc(100% - 18px) 0,
            100% 18px,
            100% 100%,
            0 100%
        );
    }


    .blog-quote i {

        position: absolute;

        top: 25px;
        left: 20px;

        color: rgba(195,42,57,.3);

        font-size: 25px;
    }


    .blog-quote p {

        color: #fff;

        font-size: 19px;

        line-height: 1.65;

        font-weight: 800;

        font-style: italic;

        margin: 0;
    }


    /* =========================================================
       ARTICLE IMAGE
       ========================================================= */

    .blog-article-image {

        margin: 45px 0;

        background: #111;

        border: 1px solid rgba(255,255,255,.08);

        overflow: hidden;

        clip-path: polygon(
            0 0,
            calc(100% - 15px) 0,
            100% 15px,
            100% 100%,
            0 100%
        );
    }


    .blog-article-image img {

        width: 100%;

        height: auto;

        display: block;

        opacity: .88;

        filter:
            grayscale(10%)
            contrast(1.06);

        transition:
            transform .5s ease,
            opacity .5s ease;
    }


    .blog-article-image:hover img {

        transform: scale(1.025);

        opacity: 1;
    }


    .blog-article-image figcaption {

        padding: 12px 17px;

        color: #666;

        font-size: 10px;

        line-height: 1.5;

        text-transform: uppercase;

        letter-spacing: 1px;

        background: #0c0c0c;
    }


    /* =========================================================
       LIST
       ========================================================= */

    .blog-article ul {

        list-style: none;

        padding: 0;

        margin: 25px 0 35px;
    }


    .blog-article li {

        position: relative;

        color: #999;

        font-size: 14px;

        line-height: 1.8;

        padding:
            8px 0
            8px 25px;
    }


    .blog-article li::before {

        content: "";

        position: absolute;

        left: 0;
        top: 17px;

        width: 8px;
        height: 3px;

        background: #c32a39;
    }


    /* =========================================================
       TAGS
       ========================================================= */

    .blog-tags {

        display: flex;

        flex-wrap: wrap;

        gap: 8px;

        margin-top: 50px;

        padding-top: 30px;

        border-top:
            1px solid rgba(255,255,255,.07);
    }


    .blog-tag {

        display: inline-block;

        color: #888;

        padding: 8px 12px;

        font-size: 9px;

        font-weight: 900;

        letter-spacing: 1.5px;

        text-transform: uppercase;

        background: rgba(255,255,255,.035);

        border:
            1px solid rgba(255,255,255,.07);

        transition: .3s;
    }


    .blog-tag:hover {

        color: #fff;

        border-color:
            rgba(195,42,57,.6);
    }


    /* =========================================================
       SIDEBAR
       ========================================================= */

    .blog-sidebar {

        position: sticky;

        top: 35px;
    }


    .blog-sidebar-box {

        position: relative;

        padding: 28px 25px;

        margin-bottom: 18px;

        background:
            linear-gradient(
                135deg,
                rgba(255,255,255,.045),
                rgba(255,255,255,.008)
            );

        border:
            1px solid rgba(255,255,255,.08);

        clip-path: polygon(
            0 0,
            calc(100% - 15px) 0,
            100% 15px,
            100% 100%,
            0 100%
        );
    }


    .blog-sidebar-box::before {

        content: "";

        position: absolute;

        top: 0;
        left: 0;

        width: 45px;
        height: 4px;

        background: #c32a39;
    }


    .blog-sidebar-title {

        color: #fff;

        font-size: 13px;

        font-weight: 1000;

        font-style: italic;

        letter-spacing: 1px;

        text-transform: uppercase;

        margin-bottom: 20px;
    }


    .blog-sidebar-title::after {

        content: "";

        display: block;

        width: 25px;

        height: 3px;

        background: #c32a39;

        margin-top: 10px;
    }


    .blog-sidebar-info {

        display: flex;

        align-items: flex-start;

        gap: 12px;

        margin-bottom: 15px;

        color: #888;

        font-size: 11px;

        line-height: 1.6;

        text-transform: uppercase;

        letter-spacing: .5px;
    }


    .blog-sidebar-info:last-child {

        margin-bottom: 0;
    }


    .blog-sidebar-info i {

        color: #c32a39;

        width: 16px;

        text-align: center;

        margin-top: 2px;
    }


    /* =========================================================
       AUTHOR
       ========================================================= */

    .blog-author {

        display: flex;

        align-items: center;

        gap: 14px;
    }


    .blog-author-image {

        width: 55px;
        height: 55px;

        flex-shrink: 0;

        overflow: hidden;

        background: #111;

        border:
            1px solid rgba(195,42,57,.45);

        transform: skewX(-7deg);
    }


    .blog-author-image img {

        width: 100%;
        height: 100%;

        object-fit: cover;

        transform: skewX(7deg) scale(1.08);
    }


    .blog-author strong {

        display: block;

        color: #fff;

        font-size: 12px;

        font-weight: 900;

        text-transform: uppercase;

        margin-bottom: 4px;
    }


    .blog-author span {

        color: #666;

        font-size: 10px;

        text-transform: uppercase;

        letter-spacing: 1px;
    }


    /* =========================================================
       BACK BUTTON
       ========================================================= */

    .blog-back-wrap {

        margin-top: 40px;
    }


    .blog-back {

        display: inline-flex;

        align-items: center;

        gap: 10px;

        color: #aaa;

        font-size: 10px;

        font-weight: 900;

        letter-spacing: 1.5px;

        text-transform: uppercase;

        text-decoration: none;

        transition: .3s;
    }


    .blog-back i {

        color: #c32a39;

        transition: .3s;
    }


    .blog-back:hover {

        color: #fff;
    }


    .blog-back:hover i {

        transform: translateX(-5px);
    }


    /* =========================================================
       RELATED ARTICLES
       ========================================================= */

    .blog-related-section {

        position: relative;

        z-index: 2;

        max-width: 1100px;

        margin: 110px auto 0;

        padding-top: 65px;

        border-top:
            1px solid rgba(255,255,255,.07);
    }


    .blog-related-title {

        text-align: center;

        margin-bottom: 45px;
    }


    .blog-related-kicker {

        display: block;

        color: #c32a39;

        font-size: 11px;

        font-weight: 900;

        letter-spacing: 4px;

        text-transform: uppercase;

        margin-bottom: 12px;
    }


    .blog-related-title h2 {

        color: #fff;

        font-size: clamp(35px, 5vw, 55px);

        line-height: .95;

        margin: 0;

        font-weight: 1000;

        font-style: italic;

        text-transform: uppercase;

        letter-spacing: -2px;
    }


    .blog-related-title h2 span {

        color: #c32a39;
    }


    .blog-related-grid {

        display: grid;

        grid-template-columns:
            repeat(3, 1fr);

        gap: 18px;
    }


    /* =========================================================
       RELATED CARD
       ========================================================= */

    .blog-related-card {

        position: relative;

        overflow: hidden;

        background:
            linear-gradient(
                135deg,
                rgba(255,255,255,.045),
                rgba(255,255,255,.008)
            );

        border:
            1px solid rgba(255,255,255,.08);

        clip-path: polygon(
            0 0,
            calc(100% - 15px) 0,
            100% 15px,
            100% 100%,
            0 100%
        );

        transition:
            transform .35s ease,
            border-color .35s ease,
            box-shadow .35s ease;
    }


    .blog-related-card:hover {

        transform: translateY(-7px);

        border-color:
            rgba(195,42,57,.6);

        box-shadow:
            0 18px 45px rgba(0,0,0,.55),
            0 0 30px rgba(195,42,57,.10);
    }


    .blog-related-image {

        height: 190px;

        overflow: hidden;

        background: #111;
    }


    .blog-related-image img {

        width: 100%;
        height: 100%;

        display: block;

        object-fit: cover;

        opacity: .78;

        filter:
            grayscale(15%)
            contrast(1.08);

        transition:
            transform .5s ease,
            opacity .5s ease;
    }


    .blog-related-card:hover
    .blog-related-image img {

        transform: scale(1.06);

        opacity: 1;
    }


    .blog-related-content {

        padding: 23px 22px 25px;
    }


    .blog-related-content small {

        color: #c32a39;

        font-size: 9px;

        font-weight: 900;

        letter-spacing: 2px;

        text-transform: uppercase;
    }


    .blog-related-content h3 {

        color: #fff;

        font-size: 18px;

        line-height: 1.25;

        font-weight: 1000;

        font-style: italic;

        text-transform: uppercase;

        margin: 10px 0 0;
    }


    .blog-related-link {

        display: inline-flex;

        align-items: center;

        gap: 8px;

        margin-top: 18px;

        color: #777;

        font-size: 9px;

        font-weight: 900;

        letter-spacing: 1.5px;

        text-transform: uppercase;

        text-decoration: none;

        transition: .3s;
    }


    .blog-related-link i {

        color: #c32a39;
    }


    .blog-related-card:hover
    .blog-related-link {

        color: #fff;
    }


    /* =========================================================
       FINAL CTA
       ========================================================= */

    .blog-detail-cta {

        position: relative;

        z-index: 2;

        text-align: center;

        margin-top: 100px;

        padding: 55px 25px;

        background:
            linear-gradient(
                135deg,
                rgba(195,42,57,.10),
                rgba(255,255,255,.02)
            );

        border:
            1px solid rgba(255,255,255,.07);

        clip-path: polygon(
            0 0,
            calc(100% - 25px) 0,
            100% 25px,
            100% 100%,
            0 100%
        );
    }


    .blog-detail-cta span {

        display: block;

        color: #c32a39;

        font-size: 10px;

        font-weight: 900;

        letter-spacing: 4px;

        text-transform: uppercase;

        margin-bottom: 15px;
    }


    .blog-detail-cta strong {

        display: block;

        color: #fff;

        font-size: clamp(27px, 4vw, 43px);

        line-height: 1.1;

        font-weight: 1000;

        font-style: italic;

        text-transform: uppercase;
    }


    .blog-detail-cta strong em {

        color: #c32a39;

        font-style: italic;
    }


    .blog-detail-button-wrap {

        margin-top: 30px;
    }


    .blog-detail-btn {

        display: inline-flex;

        align-items: center;

        justify-content: center;

        gap: 13px;

        background: #c32a39;

        color: #fff;

        padding: 18px 34px;

        font-size: 11px;

        font-weight: 1000;

        letter-spacing: 2px;

        text-decoration: none;

        text-transform: uppercase;

        clip-path: polygon(
            8px 0,
            100% 0,
            calc(100% - 8px) 100%,
            0 100%
        );

        transition: .3s;
    }


    .blog-detail-btn:hover {

        color: #111;

        background: #fff;

        transform: skewX(-4deg);
    }

      /* =========================================================
       BLOG / FIGHT JOURNAL
       ========================================================= */

    .blog-section {

        padding: 110px 20px 120px;

        background:
            radial-gradient(
                circle at 50% 0%,
                rgba(195,42,57,.12),
                transparent 35%
            ),
            linear-gradient(
                180deg,
                #080808 0%,
                #0d0d0d 50%,
                #050505 100%
            );

        position: relative;

        overflow: hidden;
    }


    /* =========================================================
       TEXTURE
       ========================================================= */

    .blog-section::before {

        content: "";

        position: absolute;

        inset: 0;

        opacity: .035;

        pointer-events: none;

        background-image:
            repeating-linear-gradient(
                0deg,
                #fff 0px,
                #fff 1px,
                transparent 1px,
                transparent 4px
            );
    }


    /* =========================================================
       DIAGONAL RED LINE
       ========================================================= */

    .blog-section::after {

        content: "";

        position: absolute;

        top: -100px;
        right: 8%;

        width: 5px;
        height: 390px;

        background: #c32a39;

        transform: rotate(-18deg);

        box-shadow:
            0 0 25px rgba(195,42,57,.45),
            0 0 80px rgba(195,42,57,.15);
    }


    /* =========================================================
       HERO TITLE
       ========================================================= */

    .blog-title {

        position: relative;

        z-index: 2;

        text-align: center;

        margin-bottom: 65px;
    }


    .blog-kicker {

        display: inline-block;

        color: #c32a39;

        font-size: 13px;

        font-weight: 900;

        letter-spacing: 5px;

        text-transform: uppercase;

        margin-bottom: 15px;
    }


    .blog-title h1 {

        color: #fff;

        font-size: clamp(43px, 7vw, 82px);

        line-height: .9;

        margin: 0;

        font-weight: 1000;

        letter-spacing: -3px;

        text-transform: uppercase;

        font-style: italic;

        text-shadow:
            5px 5px 0 rgba(195,42,57,.12);
    }


    .blog-title h1 span {

        color: #c32a39;
    }


    .blog-title p {

        color: #8d8d8d;

        max-width: 700px;

        margin: 28px auto 0;

        line-height: 1.8;

        font-size: 16px;
    }


    /* =========================================================
       FEATURED ARTICLE
       ========================================================= */

    .blog-featured {

        position: relative;

        z-index: 2;

        display: grid;

        grid-template-columns:
            1.35fr 1fr;

        min-height: 480px;

        margin-bottom: 70px;

        overflow: hidden;

        background:
            linear-gradient(
                135deg,
                rgba(255,255,255,.05),
                rgba(255,255,255,.008)
            );

        border:
            1px solid rgba(255,255,255,.09);

        clip-path: polygon(
            0 0,
            calc(100% - 25px) 0,
            100% 25px,
            100% 100%,
            0 100%
        );

        transition:
            border-color .35s ease,
            box-shadow .35s ease;
    }


    .blog-featured:hover {

        border-color:
            rgba(195,42,57,.55);

        box-shadow:
            0 25px 60px rgba(0,0,0,.55),
            0 0 35px rgba(195,42,57,.10);
    }


    /* =========================================================
       FEATURED IMAGE
       ========================================================= */

    .featured-image {

        position: relative;

        min-height: 480px;

        overflow: hidden;

        background: #111;
    }


    .featured-image img {

        width: 100%;

        height: 100%;

        object-fit: cover;

        display: block;

        opacity: .80;

        filter:
            grayscale(15%)
            contrast(1.08);

        transition:
            transform .6s ease,
            opacity .5s ease,
            filter .5s ease;
    }


    .blog-featured:hover
    .featured-image img {

        transform: scale(1.05);

        opacity: 1;

        filter:
            grayscale(0%)
            contrast(1.08);
    }


    .featured-image::after {

        content: "";

        position: absolute;

        inset: 0;

        background:
            linear-gradient(
                90deg,
                transparent 45%,
                rgba(0,0,0,.65)
            );

        pointer-events: none;
    }


    /* =========================================================
       FEATURED LABEL
       ========================================================= */

    .featured-label {

        position: absolute;

        top: 25px;
        left: 25px;

        z-index: 2;

        padding: 9px 14px;

        background: #c32a39;

        color: #fff;

        font-size: 9px;

        font-weight: 900;

        letter-spacing: 2px;

        text-transform: uppercase;

        clip-path: polygon(
            5px 0,
            100% 0,
            calc(100% - 5px) 100%,
            0 100%
        );
    }


    /* =========================================================
       FEATURED CONTENT
       ========================================================= */

    .featured-content {

        position: relative;

        display: flex;

        flex-direction: column;

        justify-content: center;

        padding: 55px 50px;
    }


    .featured-content::before {

        content: "";

        position: absolute;

        top: 0;
        left: 0;

        width: 70px;
        height: 4px;

        background: #c32a39;
    }


    .article-meta {

        display: flex;

        align-items: center;

        flex-wrap: wrap;

        gap: 10px;

        margin-bottom: 20px;
    }


    .article-category {

        color: #c32a39;

        font-size: 9px;

        font-weight: 900;

        letter-spacing: 2px;

        text-transform: uppercase;
    }


    .article-date {

        color: #555;

        font-size: 10px;

        font-weight: 700;

        letter-spacing: 1px;

        text-transform: uppercase;
    }


    .article-meta-separator {

        color: #444;

        font-size: 10px;
    }


    .featured-content h2 {

        color: #fff;

        font-size: clamp(30px, 4vw, 48px);

        line-height: 1.02;

        font-weight: 1000;

        font-style: italic;

        text-transform: uppercase;

        letter-spacing: -1px;

        margin: 0 0 22px;
    }


    .featured-content h2::after {

        content: "";

        display: block;

        width: 45px;
        height: 3px;

        margin-top: 18px;

        background: #c32a39;
    }


    .featured-content p {

        color: #888;

        font-size: 14px;

        line-height: 1.8;

        margin: 0 0 28px;

        max-width: 560px;
    }


    /* =========================================================
       READ BUTTON
       ========================================================= */

    .blog-btn {

        display: inline-flex;

        align-items: center;

        justify-content: center;

        align-self: flex-start;

        gap: 13px;

        position: relative;

        overflow: hidden;

        background: #c32a39;

        color: #fff;

        padding: 16px 25px;

        font-size: 10px;

        font-weight: 1000;

        letter-spacing: 2px;

        text-decoration: none;

        text-transform: uppercase;

        clip-path: polygon(
            7px 0,
            100% 0,
            calc(100% - 7px) 100%,
            0 100%
        );

        transition: .3s;
    }


    .blog-btn::before {

        content: "";

        position: absolute;

        inset: 0;

        background: #fff;

        transform: translateX(-100%);

        transition: .35s;

        z-index: 0;
    }


    .blog-btn span,
    .blog-btn i {

        position: relative;

        z-index: 1;
    }


    .blog-btn:hover {

        color: #111;

        transform: skewX(-4deg);
    }


    .blog-btn:hover::before {

        transform: translateX(0);
    }


    /* =========================================================
       SECTION HEADER
       ========================================================= */

    .blog-section-header {

        position: relative;

        z-index: 2;

        display: flex;

        align-items: flex-end;

        justify-content: space-between;

        gap: 30px;

        margin-bottom: 35px;
    }


    .blog-section-header-left span {

        display: block;

        color: #c32a39;

        font-size: 11px;

        font-weight: 900;

        letter-spacing: 4px;

        text-transform: uppercase;

        margin-bottom: 10px;
    }


    .blog-section-header-left h2 {

        color: #fff;

        font-size: clamp(35px, 5vw, 55px);

        line-height: .95;

        margin: 0;

        font-weight: 1000;

        font-style: italic;

        text-transform: uppercase;

        letter-spacing: -2px;
    }


    .blog-section-header-left h2 em {

        color: #c32a39;

        font-style: italic;
    }


    /* =========================================================
       FILTER
       ========================================================= */

    .blog-filter {

        display: flex;

        justify-content: flex-end;

        flex-wrap: wrap;

        gap: 7px;
    }


    .blog-filter button {

        border:
            1px solid rgba(255,255,255,.10);

        background:
            rgba(255,255,255,.025);

        color: #777;

        padding: 10px 15px;

        font-size: 9px;

        font-weight: 900;

        letter-spacing: 1.5px;

        text-transform: uppercase;

        cursor: pointer;

        transition: .3s;

        clip-path: polygon(
            5px 0,
            100% 0,
            calc(100% - 5px) 100%,
            0 100%
        );
    }


    .blog-filter button:hover,
    .blog-filter button.active {

        color: #fff;

        background: #c32a39;

        border-color: #c32a39;

        transform: skewX(-3deg);
    }


    /* =========================================================
       ARTICLES GRID
       ========================================================= */

    .blog-grid {

        position: relative;

        z-index: 2;

        display: grid;

        grid-template-columns:
            repeat(3, 1fr);

        gap: 18px;
    }


    /* =========================================================
       ARTICLE CARD
       ========================================================= */

    .blog-card {

        position: relative;

        overflow: hidden;

        background:
            linear-gradient(
                135deg,
                rgba(255,255,255,.045),
                rgba(255,255,255,.008)
            );

        border:
            1px solid rgba(255,255,255,.09);

        clip-path: polygon(
            0 0,
            calc(100% - 17px) 0,
            100% 17px,
            100% 100%,
            0 100%
        );

        transition:
            transform .35s ease,
            border-color .35s ease,
            box-shadow .35s ease;
    }


    .blog-card::before {

        content: "";

        position: absolute;

        top: 0;
        left: 0;

        width: 55px;
        height: 4px;

        background: #c32a39;

        z-index: 3;

        transition: width .4s ease;
    }


    .blog-card:hover {

        transform:
            translateY(-8px)
            skewX(-1deg);

        border-color:
            rgba(195,42,57,.65);

        box-shadow:
            0 20px 50px rgba(0,0,0,.60),
            0 0 30px rgba(195,42,57,.10);
    }


    .blog-card:hover::before {

        width: 100%;
    }


    /* =========================================================
       CARD IMAGE
       ========================================================= */

    .blog-card-image {

        position: relative;

        width: 100%;

        height: 235px;

        overflow: hidden;

        background: #111;
    }


    .blog-card-image img {

        width: 100%;

        height: 100%;

        object-fit: cover;

        display: block;

        opacity: .78;

        filter:
            grayscale(20%)
            contrast(1.08);

        transition:
            transform .5s ease,
            opacity .5s ease,
            filter .5s ease;
    }


    .blog-card:hover
    .blog-card-image img {

        transform: scale(1.06);

        opacity: 1;

        filter:
            grayscale(0%)
            contrast(1.08);
    }


    .blog-card-image::after {

        content: "";

        position: absolute;

        inset: 0;

        background:
            linear-gradient(
                180deg,
                transparent 45%,
                rgba(0,0,0,.65)
            );

        pointer-events: none;
    }


    /* =========================================================
       CARD CATEGORY
       ========================================================= */

    .blog-card-category {

        position: absolute;

        left: 18px;
        bottom: 17px;

        z-index: 2;

        color: #c32a39;

        font-size: 9px;

        font-weight: 900;

        letter-spacing: 2px;

        text-transform: uppercase;
    }


    /* =========================================================
       CARD CONTENT
       ========================================================= */

    .blog-card-content {

        padding: 25px 25px 28px;
    }


    .blog-card-meta {

        display: flex;

        align-items: center;

        gap: 9px;

        margin-bottom: 13px;
    }


    .blog-card-date {

        color: #555;

        font-size: 9px;

        font-weight: 800;

        letter-spacing: 1px;

        text-transform: uppercase;
    }


    .blog-card-content h3 {

        color: #fff;

        font-size: 22px;

        line-height: 1.15;

        font-weight: 1000;

        font-style: italic;

        text-transform: uppercase;

        margin: 0 0 14px;
    }


    .blog-card-content h3::after {

        content: "";

        display: block;

        width: 30px;
        height: 3px;

        margin-top: 12px;

        background: #c32a39;
    }


    .blog-card-content p {

        color: #777;

        font-size: 13px;

        line-height: 1.75;

        margin: 0 0 22px;
    }


    /* =========================================================
       CARD FOOTER
       ========================================================= */

    .blog-card-footer {

        display: flex;

        align-items: center;

        justify-content: space-between;

        gap: 15px;

        padding-top: 18px;

        border-top:
            1px solid rgba(255,255,255,.06);
    }


    .blog-read {

        display: inline-flex;

        align-items: center;

        gap: 8px;

        color: #fff;

        font-size: 9px;

        font-weight: 900;

        letter-spacing: 1.5px;

        text-transform: uppercase;

        text-decoration: none;

        transition: .3s;
    }


    .blog-read i {

        color: #c32a39;

        transition: .3s;
    }


    .blog-read:hover {

        color: #c32a39;
    }


    .blog-read:hover i {

        transform:
            translateX(5px);
    }


    .blog-number {

        color: #333;

        font-size: 10px;

        font-weight: 900;

        font-style: italic;
    }


    /* =========================================================
       HIDDEN FILTER
       ========================================================= */

    .blog-card.hidden {

        display: none;
    }


    /* =========================================================
       EMPTY
       ========================================================= */

    .blog-empty {

        display: none;

        position: relative;

        z-index: 2;

        text-align: center;

        padding: 70px 20px;

        color: #555;

        font-size: 11px;

        font-weight: 900;

        letter-spacing: 3px;

        text-transform: uppercase;
    }


    /* =========================================================
       BOTTOM STATEMENT
       ========================================================= */

    .blog-statement {

        position: relative;

        z-index: 2;

        text-align: center;

        margin-top: 90px;

        padding: 35px 20px;
    }


    .blog-statement span {

        display: block;

        color: #c32a39;

        font-size: 11px;

        font-weight: 900;

        letter-spacing: 4px;

        text-transform: uppercase;

        margin-bottom: 18px;
    }


    .blog-statement strong {

        display: block;

        color: #fff;

        font-size: clamp(27px, 4vw, 46px);

        line-height: 1.1;

        font-weight: 1000;

        font-style: italic;

        text-transform: uppercase;
    }


    .blog-statement strong em {

        color: #c32a39;

        font-style: italic;
    }



/* =========================================================
   RESPONSIVE — sezioni raggruppate per breakpoint
   ========================================================= */

/* ---- @media (max-width: 1100px) ---- */
@media (max-width: 1100px) {

               .events-grid {

                   grid-template-columns:
                       repeat(2, 1fr);

               }

           

}

/* ---- @media (max-width: 991px) ---- */
@media (max-width: 991px) {

               .anti-grid {
                   grid-template-columns: 1fr;
               }

               .anti-card.wide {
                   grid-column: span 1;
               }

               .anti-levels {
                   grid-template-columns: 1fr;
               }

           

               #fh5co-header {
                   min-height: 680px;
               }


               .fight-philosophy {
                   grid-template-columns: 1fr;

                   gap: 40px;

                   max-width: 700px;
               }


               .fight-logo-box {
                   min-height: 300px;
               }


               .fight-event-box {
                   grid-template-columns: 1fr;
               }


               .fight-event-image {
                   min-height: 400px;

                   order: -1;
               }


               .fight-event-image::after {
                   background:
                       linear-gradient(180deg,
                           transparent 60%,
                           #111 100%);
               }


               .fight-services-grid {
                   grid-template-columns:
                       repeat(2, 1fr);

                   max-width: 800px;
               }

           

               .fight-grid {
                   grid-template-columns: repeat(2, 1fr);
               }

           

               .contact-fight-grid {
                   grid-template-columns: 1fr;

                   gap: 45px;

                   max-width: 700px;
               }

           

               .fighter-grid {

                   grid-template-columns: 1fr;
               }


               .fighter-card.wide {

                   grid-column: span 1;
               }


               .fighter-achievements,
               .fighter-method {

                   grid-template-columns: 1fr;
               }


               /* timeline */

               .fighter-timeline::before {

                   left: 22px;

                   transform: none;
               }


               .timeline-progress {

                   left: 22px;

                   transform: translateX(-50%);
               }


               .timeline-item,
               .timeline-item:nth-child(odd),
               .timeline-item:nth-child(even) {

                   width: 100%;

                   left: 0;

                   padding:
                       0 0 55px 65px;

                   text-align: left;
               }


               .timeline-item:nth-child(odd) .timeline-point,
               .timeline-item:nth-child(even) .timeline-point {

                   left: 13px;

                   right: auto;
               }


               .timeline-item:nth-child(odd) .timeline-card {

                   text-align: left;
               }

           

               .rosa-grid {
                   grid-template-columns: 1fr;
               }

               .rosa-card.wide {
                   grid-column: span 1;
               }

           

               .gallery-grid {

                   grid-template-columns:
                       repeat(2, 1fr);

                   grid-auto-rows: 240px;
               }


               .gallery-item.big {

                   grid-column: span 2;

                   grid-row: span 2;
               }

           

               .events-block-header {

                   align-items: flex-start;

                   flex-direction: column;

               }


               .events-block-description {

                   max-width: 650px;

               }

           

               .event-detail-hero {

                   grid-template-columns: 1fr;

                   gap: 45px;

               }


               .event-poster {

                   max-width: 650px;

                   margin: 0 auto;

               }


               .event-detail-content {

                   grid-template-columns: 1fr;

               }


               .event-booking {

                   position: relative;

                   top: auto;

               }

             .fight-philosophy-text{text-align: center;}
                         
             .fight-event-info{
                  display: flex;
                  justify-content: center;
                  align-items: center; 
                  text-align: center;
               }

                .blog-detail-layout {

            grid-template-columns: 1fr;

            gap: 45px;
        }


        .blog-sidebar {

            position: relative;

            top: auto;

            display: grid;

            grid-template-columns:
                repeat(2, 1fr);

            gap: 15px;
        }


        .blog-sidebar-box {

            margin-bottom: 0;
        }


        .blog-related-grid {

            grid-template-columns: 1fr;
        }


        .blog-related-card {

            display: grid;

            grid-template-columns: 220px 1fr;
        }


        .blog-related-image {

            height: 100%;
        }

          .blog-featured {

            grid-template-columns: 1fr;
        }


        .featured-image {

            min-height: 350px;
        }


        .blog-grid {

            grid-template-columns:
                repeat(2, 1fr);
        }


}

/* ---- @media (max-width: 767px) ---- */
@media (max-width: 767px) {

               #fh5co-header {
                   min-height: 650px;
               }


               .hero-fight-content h1 {
                   letter-spacing: -3px;
               }


               .hero-discipline {
                   letter-spacing: 2px;

                   line-height: 1.7;
               }


               .hero-fight-content h3 {
                   font-size: 14px;

                   padding: 0 15px;
               }


               .music-controls {
                   right: 18px;

                   bottom: 18px;
               }


               .fight-home-section,
               .fight-event-section,
               .fight-services {
                   padding: 75px 15px;
               }


               #fh5co-schedule {
                   padding: 75px 15px;
               }


               #fh5co-schedule .fh5co-tab-nav {
                   grid-template-columns:
                       repeat(7, 1fr);

                   gap: 2px;
               }


               #fh5co-schedule .fh5co-tab-nav li a {
                   height: 48px;
                   letter-spacing: 0;
               }


               .fh5co-tab-content-wrap {
                   padding: 15px;
               }


               #fh5co-schedule .class-schedule {
                   grid-template-columns: 1fr;
               }


               .fight-event-info {
                   padding: 35px 25px;
               }


               .fight-event-info h3 {
                   font-size: 32px;
               }


               .fight-event-image {
                   min-height: 330px;
               }


               .fight-services-grid {
                   grid-template-columns: 1fr;
               }


               .fight-service-card {
                   min-height: auto;
               }

                       .blog-section {

            padding:
                80px 15px 90px;
        }


        .blog-title {

            margin-bottom: 45px;
        }


        .blog-title h1 {

            font-size: 48px;

            letter-spacing: -2px;
        }


        .blog-title p {

            font-size: 14px;
        }


        .blog-featured {

            margin-bottom: 60px;
        }


        .featured-image {

            min-height: 260px;
        }


        .featured-content {

            padding: 35px 27px 40px;
        }


        .featured-content h2 {

            font-size: 30px;
        }


        .blog-section-header {

            display: block;

            margin-bottom: 30px;
        }


        .blog-section-header-left {

            margin-bottom: 25px;
        }


        .blog-filter {

            justify-content: flex-start;
        }


        .blog-grid {

            grid-template-columns: 1fr;

            gap: 12px;
        }


        .blog-card-image {

            height: 220px;
        }


        .blog-card-content {

            padding:
                22px 22px 25px;
        }


        .blog-card-content h3 {

            font-size: 21px;
        }


        .blog-btn {

            width: 100%;
        }

           

}



/* ---- @media (max-width: 650px) ---- */
@media (max-width: 650px) {

               .events-section {

                   padding:
                       80px 15px 90px;

               }


               .events-title {

                   margin-bottom: 50px;

               }


               .events-title h1 {

                   font-size: 50px;

                   letter-spacing: -2px;

               }


               .events-title p {

                   font-size: 14px;

               }


               .events-intro {

                   padding: 28px 24px;

                   margin-bottom: 65px;

               }


               .events-intro p {

                   font-size: 14px;

               }


               .events-block {

                   margin-top: 80px;

               }


               .events-block-heading h2 {

                   font-size: 45px;

               }


               .events-grid {

                   grid-template-columns: 1fr;

                   gap: 18px;

               }


               .event-image {

                   height: 430px;

               }


               .event-content {

                   padding:
                       24px 23px 27px;

               }


               .event-content h3 {

                   font-size: 20px;

               }


               .event-actions {

                   flex-direction: column;

                   align-items: stretch;

               }


               .event-btn {

                   width: 100%;

               }


               .events-main-btn {

                   width: 100%;

                   padding:
                       18px 15px;

                   font-size: 11px;

               }

           

               .event-detail-section {

                   padding:
                       70px 15px 90px;

               }


               .event-breadcrumb {

                   margin-bottom: 30px;

               }


               .event-hero-content h1 {

                   font-size: 48px;

                   letter-spacing: -2px;

               }


               .event-short-description {

                   font-size: 14px;

               }


               .event-meta {

                   grid-template-columns: 1fr;

               }


               .event-hero-actions {

                   flex-direction: column;

                   align-items: stretch;

               }


               .event-main-btn,
               .event-back-btn {

                   width: 100%;

                   box-sizing: border-box;

                   justify-content: center;

               }


               .event-detail-content {

                   margin-top: 70px;

               }


               .event-main-content {

                   padding: 28px 23px;

               }


               .event-main-content h2 {

                   font-size: 36px;

               }


               .event-program-list li {

                   grid-template-columns: 70px 1fr;

                   gap: 12px;

               }


               .event-info-grid {

                   grid-template-columns: 1fr;

               }


               .event-booking {

                   padding: 27px 23px;

               }


               .event-final-cta {

                   margin-top: 70px;

                   padding:
                       40px 20px;

               }

           

}

/* ---- @media (max-width: 600px) ---- */
@media (max-width: 600px) {

               .anti-section {
                   padding: 80px 15px 90px;
               }


               .anti-title {
                   margin-bottom: 50px;
               }


               .anti-title h2 {
                   font-size: 48px;

                   letter-spacing: -2px;
               }


               .anti-title p {
                   font-size: 14px;
               }


               .anti-intro {
                   padding: 28px 24px;

                   margin-bottom: 45px;
               }


               .anti-intro .lead {
                   font-size: 19px;
               }


               .anti-intro p {
                   font-size: 14px;
               }


               .anti-card {
                   min-height: 320px;

                   padding: 32px 27px;
               }


               .anti-card h3 {
                   font-size: 23px;
               }


               .anti-btn {
                   width: 100%;

                   padding: 18px 15px;

                   font-size: 11px;
               }

           

               .fight-courses-section {
                   padding: 80px 15px 90px;
               }

               .fight-title {
                   margin-bottom: 50px;
               }

               .fight-title h2 {
                   font-size: 48px;
                   letter-spacing: -2px;
               }

               .fight-title p {
                   font-size: 14px;
               }

               .fight-grid {
                   grid-template-columns: 1fr;
               }

               .fight-card {
                   min-height: 300px;
                   padding: 32px 27px;
               }

               .fight-btn {
                   width: 100%;
                   padding: 18px 15px;
                   font-size: 11px;
               }

           

               #fh5co-contact {
                   padding: 75px 15px 70px !important;
               }

               .contact-fight-info h2 {
                   font-size: 45px;
               }

               .contact-fight-form {
                   padding: 32px 22px;
               }

               .fight-map-section {
                   padding: 0 15px 60px;
               }

               .fight-map-wrapper iframe {
                   height: 400px;
               }

           

               .fighter-section {

                   padding:
                       80px 15px 90px;
               }


               .fighter-title {

                   margin-bottom: 50px;
               }


               .fighter-title h2 {

                   font-size: 48px;

                   letter-spacing: -2px;
               }


               .fighter-title p {

                   font-size: 14px;
               }


               .fighter-intro {

                   padding: 28px 24px;

                   margin-bottom: 45px;
               }


               .fighter-intro .lead {

                   font-size: 19px;
               }


               .fighter-intro p {

                   font-size: 14px;
               }


               .fighter-card {

                   min-height: 320px;

                   padding:
                       32px 27px;
               }


               .fighter-card h3 {

                   font-size: 23px;
               }


               .career-section {

                   margin-top: 80px;
               }


               .career-title h2 {

                   font-size: 48px;
               }


               .timeline-image-wrap {

                   height: 180px;
               }


               .timeline-content {

                   padding:
                       22px 22px 25px;
               }


               .timeline-content h3 {

                   font-size: 18px;
               }


               .fighter-btn {

                   width: 100%;

                   padding:
                       18px 15px;

                   font-size: 11px;
               }

           

               .rosa-section {
                   padding: 80px 15px 90px;
               }


               .rosa-title {
                   margin-bottom: 50px;
               }


               .rosa-title h2 {
                   font-size: 48px;

                   letter-spacing: -2px;
               }


               .rosa-title p {
                   font-size: 14px;
               }


               .rosa-intro {
                   padding: 28px 24px;

                   margin-bottom: 45px;
               }


               .rosa-intro p {
                   font-size: 14px;
               }


               .rosa-card {
                   min-height: 320px;

                   padding: 32px 27px;
               }


               .rosa-card h3 {
                   font-size: 23px;
               }


               .rosa-btn {
                   width: 100%;

                   padding: 18px 15px;

                   font-size: 11px;
               }

           

               .gallery-section {

                   padding:
                       80px 15px 90px;
               }


               .gallery-title {

                   margin-bottom: 45px;
               }


               .gallery-title h1 {

                   font-size: 48px;

                   letter-spacing: -2px;
               }


               .gallery-title p {

                   font-size: 14px;
               }


               .gallery-intro {

                   padding: 28px 24px;

                   margin-bottom: 45px;
               }


               .gallery-intro p {

                   font-size: 14px;
               }


               .gallery-filter {

                   margin-bottom: 30px;
               }


               .gallery-filter button {

                   padding: 10px 13px;

                   font-size: 9px;
               }


               .gallery-grid {

                   grid-template-columns: 1fr;

                   grid-auto-rows: 260px;

                   gap: 10px;
               }


               .gallery-item,
               .gallery-item.wide,
               .gallery-item.tall,
               .gallery-item.big {

                   grid-column: span 1;

                   grid-row: span 1;
               }


               .gallery-item.big {

                   grid-row: span 2;

                   height: 530px;
               }


               .gallery-overlay {

                   padding: 20px;
               }


               .gallery-overlay h3 {

                   font-size: 18px;
               }


               .gallery-plus {

                   opacity: 1;

                   transform:
                       rotate(45deg) scale(.9);
               }


               .gallery-lightbox {

                   padding: 20px;
               }


               .lightbox-close {

                   top: 15px;

                   right: 15px;
               }


               .lightbox-prev {

                   left: 10px;
               }


               .lightbox-next {

                   right: 10px;
               }


               .lightbox-info {

                   bottom: -45px;
               }

                .blog-detail-section {

            padding:
                80px 15px 90px;
        }


        .blog-detail-header {

            margin-bottom: 40px;
        }


        .blog-detail-header h1 {

            font-size: 46px;

            letter-spacing: -2px;
        }


        .blog-detail-meta {

            gap: 10px 15px;

            font-size: 9px;
        }


        .blog-detail-hero {

            margin-bottom: 45px;
        }


        .blog-detail-hero img {

            height: 300px;
        }


        .blog-article-intro {

            font-size: 18px;

            padding-left: 18px;
        }


        .blog-article p {

            font-size: 14px;

            line-height: 1.85;
        }


        .blog-article h2 {

            font-size: 26px;

            margin-top: 45px;
        }


        .blog-quote {

            padding:
                30px 22px 30px 35px;
        }


        .blog-quote p {

            font-size: 17px;
        }


        .blog-sidebar {

            grid-template-columns: 1fr;
        }


        .blog-related-card {

            display: block;
        }


        .blog-related-image {

            height: 190px;
        }


        .blog-detail-cta {

            margin-top: 70px;

            padding:
                40px 20px;
        }


        .blog-detail-btn {

            width: 100%;

            padding: 18px 15px;

            font-size: 10px;
        }

           

}

/* ---- @media (max-width: 480px) ---- */
@media (max-width: 480px) {

                .hero-kicker{display: none;}

    



               .hero-main-btn {
                   width: 100%;

                   max-width: 300px;
               }


               .hero-discipline {
                   font-size: 13px;
               }


               .fight-section-heading h2 {
                   font-size: 38px;
               }


               .fight-logo-box {
                   min-height: 250px;
                   text-align: center;
               }


               .fight-logo-box img {
                   max-width: 85%;
               }

               .fight-event-info{
                  display: flex;
                  justify-content: center;
                  align-items: center; 
                  text-align: center;
               }

               .event-type{
                top:-30px;
                right: -20px;
               }         

}

@media (max-width: 360px) {
#fh5co-contact{
    padding: 75px 0px !important;

    .contact-fight-form{max-width: 330px;}
}

}
