/* Extracted from event-booking.php. Loaded at the original cascade position. */

:root{
  --fk-red:#ef233c;
  --fk-red-dark:#d90429;
  --fk-black:#111827;
  --fk-black-soft:#1f2937;
  --fk-white:#ffffff;
  --fk-muted:#64748b;
  --fk-border:#e5e7eb;
  --fk-soft:#fff1f2;
  --fk-shadow:0 22px 55px rgba(15,23,42,.12);
}

*{box-sizing:border-box}
body{margin:0;color:var(--fk-black);background:#fff;font-family:Inter,Arial,sans-serif}

.fk-event-hero{
  position:relative;
  min-height:610px;
  padding:72px max(5vw,26px);
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:center;
  gap:42px;
  overflow:hidden;
  color:#fff;
  background:
    linear-gradient(120deg,rgba(8,10,14,.97),rgba(17,24,39,.91) 55%,rgba(217,4,41,.72)),
    url(/assets/images/event-bg-optimized.webp) center/cover no-repeat;
}

.fk-event-hero::after{
  content:"";
  position:absolute;
  right:-150px;
  bottom:-180px;
  width:430px;
  height:430px;
  border:70px solid rgba(255,255,255,.045);
  border-radius:50%;
}

.fk-glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.28;pointer-events:none}
.glow-1{width:250px;height:250px;background:var(--fk-red);top:5%;left:3%}
.glow-2{width:300px;height:300px;background:#fff;right:5%;bottom:0;opacity:.08}

.fk-event-content,.fk-event-visual{position:relative;z-index:2}
.fk-event-content{max-width:720px}

.fk-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 13px;
  border:1px solid rgba(239,35,60,.34);
  border-radius:999px;
  color:#fff;
  background:rgba(239,35,60,.13);
  backdrop-filter:blur(10px);
  font-size:11px;
  font-weight:900;
  letter-spacing:.4px;
}

.fk-event-content h1{
  max-width:760px;
  margin:20px 0 14px;
  font-size:clamp(40px,5vw,66px);
  line-height:1;
  letter-spacing:-2.8px;
}

.fk-event-content p{max-width:640px;margin:0;color:#d1d5db;font-size:16px;line-height:1.75}

.fk-hero-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.fk-hero-buttons button,.fk-event-form button{
  min-height:48px;
  padding:0 22px;
  border:0;
  border-radius:14px;
  color:#fff;
  background:linear-gradient(135deg,var(--fk-red),var(--fk-red-dark));
  box-shadow:0 14px 30px rgba(239,35,60,.25);
  font-size:13px;
  font-weight:900;
  cursor:pointer;
  transition:.22s ease;
}
.fk-hero-buttons button:hover,.fk-event-form button:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(239,35,60,.32)}
.fk-hero-buttons .outline{border:1px solid rgba(255,255,255,.26);color:#fff;background:rgba(255,255,255,.08);box-shadow:none}

.fk-mini-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.fk-mini-stats div{min-width:105px;padding:12px 15px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:rgba(255,255,255,.07);backdrop-filter:blur(10px)}
.fk-mini-stats b{display:block;color:#fff;font-size:20px}.fk-mini-stats span{color:#cbd5e1;font-size:11px;font-weight:700}

.fk-event-visual{min-height:410px}
.fk-main-card{
  position:absolute;
  top:75px;
  right:5%;
  width:min(350px,90%);
  padding:27px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:26px;
  background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.055));
  box-shadow:0 26px 70px rgba(0,0,0,.4);
  backdrop-filter:blur(18px);
}
.fk-card-top{display:flex;justify-content:space-between;color:#fff;font-size:12px;font-weight:900}
.fk-card-top i{color:var(--fk-red)}
.fk-main-card h3{margin:20px 0 8px;font-size:30px}.fk-main-card p{margin:0;color:#d1d5db;line-height:1.6}
.fk-price{margin-top:20px;padding:13px;border-radius:13px;color:var(--fk-black);background:#fff;text-align:center;font-weight:900}

.fk-float-card{position:absolute;padding:12px 16px;border-radius:14px;color:var(--fk-black);background:#fff;box-shadow:0 16px 40px rgba(0,0,0,.28);font-size:12px;font-weight:900}
.fk-float-card i{margin-right:7px;color:var(--fk-red)}
.c1{top:24px;left:8%}.c2{top:245px;left:0}.c3{right:9%;bottom:20px}

.fk-event-types,.fk-booking-section{padding:68px max(5vw,22px);background:#fff}
.fk-booking-section{background:#f8fafc}
.fk-section-title{text-align:center;margin-bottom:32px}
.fk-section-title span{color:var(--fk-red);font-size:12px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.fk-section-title h2{margin:8px 0 0;font-size:clamp(30px,4vw,44px);letter-spacing:-1.2px}

.fk-venue-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:1240px;margin:auto}
.fk-venue-card{position:relative;overflow:hidden;padding:25px 22px;border:1px solid var(--fk-border);border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.06);transition:.25s ease}
.fk-venue-card:hover{transform:translateY(-6px);border-color:rgba(239,35,60,.22);box-shadow:0 22px 45px rgba(239,35,60,.11)}
.fk-venue-card i{font-size:28px;color:var(--fk-red)}
.fk-venue-card h3{margin:16px 0 8px;font-size:18px}.fk-venue-card p{margin:0;color:var(--fk-muted);font-size:13px;line-height:1.65}
.fk-venue-card.featured{border-color:#111827;color:#fff;background:linear-gradient(145deg,#111827,#090b10)}
.fk-venue-card.featured p{color:#cbd5e1}.fk-venue-card.featured i{color:#fff}

.fk-booking-box{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;max-width:1120px;margin:auto;padding:24px;border:1px solid var(--fk-border);border-radius:26px;background:#fff;box-shadow:var(--fk-shadow)}
.fk-booking-left{padding:30px;border-radius:20px;color:#fff;background:linear-gradient(145deg,#111827,#0b0d12 68%,#2a0710)}
.fk-booking-left .fk-badge{background:rgba(239,35,60,.16)}
.fk-booking-left h2{margin:18px 0 10px;font-size:34px;line-height:1.1;letter-spacing:-1px}.fk-booking-left>p{margin:0;color:#cbd5e1;font-size:13px;line-height:1.7}
.fk-check{margin-top:22px}.fk-check p{display:flex;align-items:center;gap:9px;margin:11px 0;color:#e5e7eb;font-size:12px}.fk-check i{color:var(--fk-red)}

.fk-event-form{display:flex;flex-direction:column;gap:11px;padding:4px}
.two-col,.three-col{display:grid;gap:11px}.two-col{grid-template-columns:1fr 1fr}.three-col{grid-template-columns:repeat(3,1fr)}
.fk-event-form input,.fk-event-form select,.fk-event-form textarea{width:100%;padding:0 14px;border:1px solid var(--fk-border);border-radius:12px;outline:none;color:var(--fk-black);background:#fff;font:600 13px Inter,Arial,sans-serif;transition:.2s ease}
.fk-event-form input,.fk-event-form select{height:44px}.fk-event-form textarea{min-height:95px;padding-top:13px;resize:vertical}
.fk-event-form input:focus,.fk-event-form select:focus,.fk-event-form textarea:focus{border-color:var(--fk-red);box-shadow:0 0 0 4px rgba(239,35,60,.08)}
.fk-event-form button{width:100%;margin-top:2px}

@media(max-width:950px){
  .fk-event-hero,.fk-booking-box{grid-template-columns:1fr}
  .fk-event-hero{padding-top:60px;padding-bottom:60px}
  .fk-event-visual{min-height:360px}
  .fk-venue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:600px){
  .fk-event-hero{min-height:auto;padding:48px 16px}
  .fk-event-content h1{font-size:38px;letter-spacing:-1.7px}
  .fk-event-content p{font-size:14px}
  .fk-hero-buttons button{width:100%}
  .fk-mini-stats{display:grid;grid-template-columns:repeat(3,1fr)}
  .fk-mini-stats div{min-width:0;padding:10px;text-align:center}
  .fk-event-visual{min-height:315px}
  .fk-main-card{top:58px;right:2.5%;width:95%;padding:22px}
  .fk-main-card h3{font-size:25px}
  .fk-float-card{font-size:10px;padding:9px 11px}
  .c1{left:0}.c2{top:222px}.c3{right:0;bottom:4px}
  .fk-event-types,.fk-booking-section{padding:48px 14px}
  .fk-venue-grid,.two-col,.three-col{grid-template-columns:1fr}
  .fk-booking-box{padding:14px;gap:14px;border-radius:20px}
  .fk-booking-left{padding:23px 19px;border-radius:16px}
  .fk-booking-left h2{font-size:28px}
}

