@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Oswald:wght@400;500;600;700&display=swap');
:root{--fp-black:#050507;--fp-black2:#0b0a0f;--fp-panel:#111016;--fp-purple:#7c3aed;--fp-purple2:#a855f7;--fp-white:#f8f7fb;--fp-muted:#aaa5b3;--fp-line:rgba(255,255,255,.12)}
html{scroll-behavior:smooth}body{font-family:Inter,Arial,sans-serif!important;background:var(--fp-black)!important;color:var(--fp-white)!important}.ftco-section,.ftco-no-pb,.ftco-no-pt{background:var(--fp-black)!important;color:var(--fp-white)!important}.text-dark,.text-body{color:var(--fp-white)!important}
/* Shared header inspired by modern media/publishing sites */
#ftco-navbar,.navbar{background:rgba(5,5,7,.96)!important;border-bottom:1px solid var(--fp-line)!important;box-shadow:none!important;backdrop-filter:blur(18px);padding:13px 0!important}.modern-topbar{display:none!important}.navbar .navbar-brand,.ftco-navbar .navbar-brand{color:#fff!important;font-family:Oswald,sans-serif!important;font-size:20px!important;font-weight:500!important;letter-spacing:.02em;text-transform:uppercase}.navbar .navbar-brand img,.modern-brand img{width:52px!important;height:52px!important;object-fit:contain}.navbar .nav-link,.ftco-navbar .nav-link{font-family:Oswald,sans-serif!important;color:#f5f3f7!important;font-size:15px!important;font-weight:500!important;letter-spacing:.07em!important;text-transform:uppercase!important;padding:15px 14px!important}.navbar .nav-link:hover,.navbar .nav-item.active .nav-link,.ftco-navbar .nav-item.active .nav-link{color:var(--fp-purple2)!important}.navbar .cta .nav-link{background:var(--fp-purple)!important;border-radius:0!important;padding:12px 20px!important}.navbar .cta .nav-link:hover{background:var(--fp-purple2)!important;color:#fff!important}.navbar-toggler{color:#fff!important;border:0!important}.navbar-toggler span{color:#fff!important}
/* Legacy internal page hero */
.hero-wrap.hero-wrap-2{min-height:430px!important;height:55vh!important;background-position:center!important;background-size:cover!important;position:relative!important}.hero-wrap.hero-wrap-2:before{background:linear-gradient(90deg,rgba(5,5,7,.88),rgba(35,12,55,.58),rgba(5,5,7,.22))!important}.hero-wrap.hero-wrap-2 .bread{font-family:Oswald,sans-serif!important;text-transform:uppercase!important;font-size:clamp(52px,8vw,100px)!important;letter-spacing:-.02em!important;font-weight:600!important;color:#fff!important}.hero-wrap.hero-wrap-2 .container{position:relative;z-index:2}
/* General legacy content */
.ftco-section .heading-section h2,.ftco-section h2,.ftco-section h3,.ftco-section h4{font-family:Oswald,sans-serif!important;color:#fff!important;text-transform:uppercase;letter-spacing:.01em}.ftco-section p,.ftco-section li{color:var(--fp-muted)}.bg-light{background:var(--fp-panel)!important}.bg-primary{background:linear-gradient(135deg,#32105b,#7c3aed)!important}.card,.services,.project-wrap,.blog-entry,.staff,.event-wrap{background:var(--fp-panel)!important;border:1px solid var(--fp-line)!important}.btn-primary,.btn.btn-primary{background:var(--fp-purple)!important;border-color:var(--fp-purple)!important;border-radius:0!important}.btn-primary:hover,.btn.btn-primary:hover{background:var(--fp-purple2)!important;border-color:var(--fp-purple2)!important}.form-control{background:#0e0d12!important;border:1px solid var(--fp-line)!important;color:#fff!important}.form-control::placeholder{color:#7e7986!important}
.footer{background:#020203!important;color:var(--fp-muted)!important;border-top:1px solid var(--fp-line)!important}.footer .footer-heading{font-family:Oswald,sans-serif!important;color:#fff!important;text-transform:uppercase}.footer a{color:var(--fp-muted)!important}.footer a:hover{color:var(--fp-purple2)!important}.modal-content{background:#111016!important;color:#fff!important;border:1px solid var(--fp-line)!important}.modal-title{font-family:Oswald,sans-serif!important;color:#fff!important}
/* Homepage facelift */
.fp-home{background:var(--fp-black)}.fp-hero{min-height:74vh;position:relative;display:flex;align-items:flex-end;margin:0 22px;background:linear-gradient(90deg,rgba(3,3,4,.96) 0%,rgba(5,4,8,.62) 42%,rgba(5,4,8,.16) 100%),url('../images/cover_church_first.jpg') center/cover no-repeat;padding:90px 0 70px;border:1px solid var(--fp-line);box-sizing:border-box}.fp-hero:after{content:"";position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(transparent,var(--fp-black));pointer-events:none}.fp-hero .container{position:relative;z-index:2}.fp-kicker{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.18em;color:var(--fp-purple2);font-size:14px;margin-bottom:14px}.fp-hero h1{font-family:Oswald,sans-serif;font-weight:600;font-size:clamp(60px,9vw,132px);line-height:.88;letter-spacing:-.025em;text-transform:uppercase;margin:0;max-width:980px}.fp-hero p{font-size:19px;color:#e4e0e8;max-width:650px;line-height:1.6;margin:24px 0}.fp-btn{display:inline-flex;align-items:center;gap:12px;padding:15px 24px;background:var(--fp-purple);color:#fff;text-decoration:none;font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:15px;transition:.2s}.fp-btn:hover{background:var(--fp-purple2);color:#fff;transform:translateY(-2px)}.fp-btn.alt{background:#fff;color:#0a090c}.fp-btn.alt:hover{background:#e9ddff;color:#0a090c}.fp-scroll{position:absolute;right:28px;bottom:28px;z-index:3;font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:11px;writing-mode:vertical-rl;color:#fff}
.fp-strip{background:#09090b;border-top:1px solid var(--fp-line);border-bottom:1px solid var(--fp-line)}.fp-strip .fp-strip-item{padding:26px 20px;text-align:center;border-right:1px solid var(--fp-line)}.fp-strip .fp-strip-item:last-child{border-right:0}.fp-strip i{font-size:22px;color:var(--fp-purple2);margin-bottom:10px}.fp-strip strong{display:block;font-family:Oswald,sans-serif;text-transform:uppercase;font-size:19px;letter-spacing:.04em}.fp-strip span{display:block;color:#89838f;font-size:12px;margin-top:4px}
.fp-section{padding:78px 0;background:var(--fp-black)}.fp-section.alt{background:#09090c}.fp-heading{font-family:Oswald,sans-serif;font-size:clamp(42px,6vw,76px);line-height:.95;text-transform:uppercase;font-weight:600;letter-spacing:-.015em;margin:0}.fp-eyebrow{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.16em;color:var(--fp-purple2);font-size:13px;margin-bottom:10px}.fp-copy{color:var(--fp-muted);font-size:16px;line-height:1.8}.fp-media{position:relative;background:#000;border:1px solid var(--fp-line);overflow:hidden}.fp-media img{width:100%;height:520px;object-fit:cover;display:block}.fp-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:82px;height:82px;border-radius:50%;background:var(--fp-purple);display:grid;place-items:center;color:#fff;font-size:27px;box-shadow:0 12px 40px rgba(0,0,0,.55)}.fp-play:hover{background:var(--fp-purple2)}.fp-panel{height:100%;background:#0c0b10;border:1px solid var(--fp-line);border-left:0;padding:42px}.fp-panel h3{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:42px;line-height:1.02;margin:8px 0 18px}.fp-panel .fp-line{width:48px;height:3px;background:var(--fp-purple);margin:22px 0}.fp-panel p{color:var(--fp-muted);line-height:1.75}.fp-card{height:100%;background:#0e0d12;border:1px solid var(--fp-line);position:relative;overflow:hidden}.fp-card img{width:100%;height:230px;object-fit:cover;display:block;filter:saturate(.9)}.fp-card-body{padding:25px}.fp-card h3{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:29px;margin:0 0 10px}.fp-card p{color:var(--fp-muted);line-height:1.65;font-size:14px}.fp-card a{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#fff;text-decoration:none}.fp-card a:hover{color:var(--fp-purple2)}.fp-date{position:absolute;left:15px;top:15px;background:var(--fp-purple);color:#fff;padding:9px 12px;text-align:center;font-family:Oswald,sans-serif;text-transform:uppercase;line-height:1}.fp-date strong{display:block;font-size:28px}.fp-date span{font-size:11px}.fp-cta{background:linear-gradient(90deg,#4c1d95,#7c3aed 55%,#581c87);padding:28px 0;border-top:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}.fp-cta h2{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:32px;margin:0}.fp-cta p{margin:0;color:#ddd4e9;font-size:14px}.fp-footer{background:#020203;padding:48px 0 18px;border-top:1px solid var(--fp-line)}.fp-footer h4{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:22px}.fp-footer p,.fp-footer a{color:#8f8997;font-size:14px;text-decoration:none}.fp-footer a:hover{color:#fff}.fp-footer .logo{width:65px;height:65px;object-fit:contain}.fp-footer-bottom{border-top:1px solid var(--fp-line);padding-top:18px;margin-top:35px;color:#68636d;font-size:12px}
@media(max-width:991px){.navbar .nav-link,.ftco-navbar .nav-link{padding:13px 0!important}.fp-hero{min-height:72vh;padding:80px 0 55px}.fp-hero h1{font-size:clamp(55px,13vw,90px)}.fp-panel{border-left:1px solid var(--fp-line);border-top:0}.fp-strip .fp-strip-item{border-right:0;border-bottom:1px solid var(--fp-line)}}
@media(max-width:575px){.fp-hero{margin:0;min-height:78vh;background-position:60% center}.fp-hero p{font-size:16px}.fp-heading{font-size:48px}.fp-media img{height:330px}.fp-panel{padding:28px}.fp-panel h3{font-size:34px}.fp-btn{padding:13px 18px;font-size:13px}.fp-scroll{display:none}}

/* CTKDP social media icons */
.fp-hero-socials{display:flex;align-items:center;gap:14px;font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:#b7afc1}.fp-hero-socials a,.fp-social{width:42px;height:42px;border:1px solid rgba(255,255,255,.22);display:inline-grid;place-items:center;border-radius:50%;color:#fff;text-decoration:none;transition:.2s;background:rgba(0,0,0,.28)}.fp-hero-socials a:hover,.fp-social:hover{background:var(--fp-purple);border-color:var(--fp-purple);color:#fff;transform:translateY(-2px)}.fp-socials{padding-top:4px}.fp-footer .fp-social{font-size:18px}
@media(max-width:575px){.fp-hero-socials span{width:100%;margin-bottom:2px}.fp-hero-socials{flex-wrap:wrap;gap:10px}}

/* Header social icons beside GET CONNECTED */
.navbar .nav-socials{display:flex;align-items:center;gap:7px;margin-left:8px;margin-right:10px}
.navbar .nav-social{width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:50%;color:#fff!important;text-decoration:none!important;font-size:14px;transition:all .2s ease}
.navbar .nav-social:hover{background:var(--fp-purple)!important;border-color:var(--fp-purple)!important;color:#fff!important;transform:translateY(-2px)}
@media(max-width:991px){.navbar .nav-socials{margin:8px 0 5px;gap:9px}.navbar .nav-social{width:38px;height:38px}.navbar .nav-socials + .cta{margin-top:4px}}

/* FINAL SHARED NAVIGATION POSITION — matches the homepage */
header{position:relative!important;z-index:1100!important;margin:0!important;padding:0!important;display:block!important;}
#ftco-navbar{position:relative!important;top:0!important;left:0!important;right:0!important;width:100%!important;margin:0!important;transform:none!important;}
#ftco-navbar .container{min-height:78px!important;}
#ftco-navbar .navbar-brand{margin-top:0!important;margin-bottom:0!important;}
#ftco-navbar .navbar-collapse{align-items:center!important;}
#ftco-navbar .navbar-nav{margin-top:0!important;margin-bottom:0!important;}
#ftco-navbar + *{margin-top:0!important;}
@media (min-width:992px){
  #ftco-navbar{height:78px!important;display:flex!important;align-items:center!important;}
  #ftco-navbar .container{height:78px!important;display:flex!important;align-items:center!important;}
  #ftco-navbar .navbar-brand img{width:52px!important;height:52px!important;}
}

/* Keep the navigation menu centred consistently across every page. */
@media (min-width: 992px){
  #ftco-navbar .container{position:relative!important;}
  #ftco-navbar .navbar-collapse{display:flex!important;justify-content:center!important;}
  #ftco-navbar .navbar-nav{margin-left:auto!important;margin-right:auto!important;justify-content:center!important;}
}

/* EXACT HOMEPAGE NAVIGATION GEOMETRY — shared across every page */
#ftco-navbar .container{display:flex!important;align-items:center!important;}
#ftco-navbar .navbar-brand{display:flex!important;align-items:center!important;gap:8px!important;margin-right:24px!important;padding-top:0!important;padding-bottom:0!important;}
#ftco-navbar .navbar-brand img{width:52px!important;height:52px!important;flex:0 0 52px!important;}
#ftco-navbar .navbar-brand span{display:block!important;white-space:nowrap!important;line-height:1!important;}
#ftco-navbar .navbar-collapse{flex:1 1 auto!important;}
#ftco-navbar .navbar-nav{margin-left:auto!important;align-items:center!important;}
@media(min-width:992px){#ftco-navbar{min-height:78px!important;}#ftco-navbar .container{min-height:78px!important;}#ftco-navbar .navbar-brand{height:52px!important;} }

/* Keep the header logo and CTKDP UK aligned exactly like the homepage.
   The original inner-page stylesheet expands .container to 1300px; the homepage uses
   Bootstrap's 1140px container. Limit the NAV container only so every page matches Home. */
@media (min-width:1200px){
  #ftco-navbar > .container,
  #ftco-navbar .container{
    max-width:1140px!important;
  }
}

/* Events page — featured Community BBQ flyer */
.ctkdp-events-section{padding:70px 0 85px!important;background:var(--fp-black)!important}
.ctkdp-events-heading{text-align:center;margin-bottom:28px}
.ctkdp-events-heading h2{font-family:Oswald,sans-serif!important;font-size:34px!important;line-height:1.1;text-transform:uppercase;color:#fff!important;margin:0 0 10px!important;letter-spacing:.02em}
.ctkdp-events-heading h2:after{content:"";display:block;width:48px;height:3px;background:var(--fp-purple2);margin:10px auto 0}
.ctkdp-events-heading p{margin:0;color:#eee!important;font-size:15px;line-height:1.6}
.ctkdp-event-flyer-wrap{display:flex;justify-content:center;margin:0 auto 18px}
.ctkdp-event-flyer{display:block;width:100%;max-width:640px;height:auto;border:2px solid #fff;box-shadow:0 18px 55px rgba(0,0,0,.45);background:#000}
.ctkdp-event-details{max-width:920px;margin:0 auto;background:#08080c;border:1px solid var(--fp-line);padding:22px 28px;border-radius:12px;color:#fff}
.ctkdp-event-detail{display:flex;align-items:flex-start;gap:14px;padding:4px 14px;border-right:1px solid var(--fp-line)}
.ctkdp-event-detail:last-child{border-right:0}
.ctkdp-event-detail i{font-size:21px;color:var(--fp-purple2);margin-top:3px;min-width:22px}
.ctkdp-event-detail strong{display:block;font-size:13px;color:#fff;font-weight:600;line-height:1.45}
.ctkdp-event-detail span{display:block;font-size:12px;color:#aaa3b0;margin-top:3px;line-height:1.45}
.ctkdp-event-description{border-top:1px solid var(--fp-line);margin-top:18px;padding-top:17px;color:#bcb6c2;font-size:13px;line-height:1.7}
.ctkdp-event-description p{margin:0 0 7px!important;color:#bcb6c2!important}
.ctkdp-event-description strong{color:#fff}
.ctkdp-event-action{text-align:right;margin-top:12px}
.ctkdp-event-action .btn{padding:10px 20px;font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:767.98px){
  .ctkdp-events-section{padding:50px 0 60px!important}
  .ctkdp-events-heading h2{font-size:30px!important}
  .ctkdp-events-heading p{font-size:14px;padding:0 12px}
  .ctkdp-event-flyer{max-width:100%;border-width:1px}
  .ctkdp-event-details{padding:18px 16px}
  .ctkdp-event-detail{border-right:0;border-bottom:1px solid var(--fp-line);padding:13px 2px}
  .ctkdp-event-detail:last-child{border-bottom:0}
  .ctkdp-event-action{text-align:center}
}


/* Contact form text visibility fix */
.contactForm input.form-control,
.contactForm textarea.form-control,
.contactForm select.form-control {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  caret-color: #ffffff !important;
  background-color: #0e0d12 !important;
  opacity: 1 !important;
}

.contactForm input.form-control:focus,
.contactForm textarea.form-control:focus,
.contactForm select.form-control:focus {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  caret-color: #ffffff !important;
}

.contactForm input.form-control::placeholder,
.contactForm textarea.form-control::placeholder {
  color: #7e7986 !important;
  -webkit-text-fill-color: #7e7986 !important;
  opacity: 1 !important;
}


/* Browser autofill / saved-email dropdown visibility fix */
.contactForm input.form-control:-webkit-autofill,
.contactForm input.form-control:-webkit-autofill:hover,
.contactForm input.form-control:-webkit-autofill:focus,
.contactForm input.form-control:-webkit-autofill:active,
.contactForm textarea.form-control:-webkit-autofill,
.contactForm textarea.form-control:-webkit-autofill:hover,
.contactForm textarea.form-control:-webkit-autofill:focus,
.contactForm textarea.form-control:-webkit-autofill:active {
  -webkit-text-fill-color: #ffffff !important;
  caret-color: #ffffff !important;
  -webkit-box-shadow: 0 0 0 1000px #0e0d12 inset !important;
  box-shadow: 0 0 0 1000px #0e0d12 inset !important;
  transition: background-color 9999s ease-in-out 0s !important;
}

.contactForm input.form-control:-moz-autofill,
.contactForm textarea.form-control:-moz-autofill {
  color: #ffffff !important;
  background-color: #0e0d12 !important;
}

/* About Us: force A PLACE TO BELONG heading to white */
#place-to-belong,.fp-section.alt #place-to-belong{color:#fff !important;-webkit-text-fill-color:#fff !important;}




/* CTKDP Shop reference-format styling */
html, body { background:#050505 !important; color:#fff !important; }
.shop-page, .shop-content, main { background:#050505 !important; }
.shop-hero, .page-hero, .shop-banner, .hero-shop {
  background-image: linear-gradient(90deg, rgba(0,0,0,.86), rgba(0,0,0,.28)),
    url('assets/shop-banner.jpg') !important;
  background-position:center center !important;
  background-size:cover !important;
  min-height:310px !important;
}
.shop-product-card, .product-card {
  background:#0a0a0a !important;
  border:1px solid #292929 !important;
  border-radius:16px !important;
  overflow:hidden !important;
}
.shop-product-card img, .product-card img, .product-image, .shop-product-image {
  border-radius:18px !important;
  object-fit:contain !important;
  background:#080808 !important;
}
.category-card {
  background:#080808 !important;
  border:1px solid #292929 !important;
  border-radius:12px !important;
}
.add-to-cart, .btn-primary {
  background:#6d20e8 !important;
  border-color:#6d20e8 !important;
  color:#fff !important;
  border-radius:8px !important;
}
.search-box, select, input {
  background:#090909 !important;
  color:#fff !important;
  border-color:#303030 !important;
}
.cart-drawer {
  background:#080808 !important;
  border-left:1px solid #292929 !important;
}


/* Final Drop the Charges full-width image fix */
.product-card .product-image-wrap {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: hidden !important;
  background: #08080b !important;
}
.product-card .product-image-wrap img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: initial !important;
  border-radius: 16px 16px 0 0 !important;
}


/* CTKDP SHOP - REFERENCE FORMAT */
html, body { background:#050505 !important; color:#fff !important; }
body { overflow-x:hidden; }

.shop-hero, .page-hero, .shop-banner, .hero-shop {
  position:relative !important;
  background-image:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.20)),url('assets/shop-banner.jpg') !important;
  background-size:cover !important;
  background-position:center !important;
  min-height:330px !important;
  display:flex !important;
  align-items:flex-end !important;
}
.shop-hero p, .page-hero p, .shop-banner p, .hero-shop p {
  white-space:nowrap !important;
  display:block !important;
}
.shop-store-intro, .store-intro { display:none !important; }

.category-card {
  background:#080808 !important;
  border:1px solid #292929 !important;
  border-radius:12px !important;
}
.category-card:hover { border-color:#7b2cff !important; }

.shop-product-card, .product-card {
  background:#090909 !important;
  border:1px solid #292929 !important;
  border-radius:16px !important;
  overflow:hidden !important;
}

/* Drop the Charges image: no side gap, no inner padding, no crop */
.shop-product-card .product-image-wrap,
.product-card .product-image-wrap,
.shop-product-card .product-image,
.product-card .product-image {
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  overflow:hidden !important;
  background:#090909 !important;
}
.shop-product-card .product-image img,
.product-card .product-image img,
.shop-product-card .product-image-wrap img,
.product-card .product-image-wrap img {
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:initial !important;
  border-radius:16px 16px 0 0 !important;
}

/* Keep the supplied promotional image flush if it is a direct image element */
img[src*="drop"], img[alt*="Drop"] {
  display:block !important;
  width:100% !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:initial !important;
  border-radius:16px 16px 0 0 !important;
}

.add-to-cart, .btn-primary {
  background:#6d20e8 !important;
  color:#fff !important;
  border-color:#6d20e8 !important;
  border-radius:8px !important;
}
.search-box, select, input {
  background:#090909 !important;
  color:#fff !important;
  border-color:#303030 !important;
}
.cart-drawer {
  background:#080808 !important;
  border-left:1px solid #292929 !important;
}

/* =========================================================
   CTKDP EVENTS — MODERN GALLERY FORMAT
   ========================================================= */
.ctkdp-events-hero{position:relative;min-height:300px;padding:54px 0 46px;overflow:hidden;background:#050507;border-bottom:1px solid rgba(255,255,255,.08)}
.ctkdp-events-hero-bg{position:absolute;top:0;bottom:0;left:0;width:100%;background:linear-gradient(180deg,rgba(7,3,14,.28),rgba(5,5,7,.55)),linear-gradient(90deg,rgba(54,12,92,.42),rgba(93,28,145,.08)),url('../images/event-3.jpg') left center/150% auto no-repeat;filter:saturate(.9)}
.ctkdp-events-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(transparent,var(--fp-black));pointer-events:none}
.ctkdp-events-hero .container{z-index:2}.ctkdp-events-hero-content{text-align:center;position:relative;z-index:2}.ctkdp-events-kicker{display:flex;justify-content:center;align-items:center;gap:14px;color:#b56aff;font-size:11px;font-weight:800;letter-spacing:.22em;margin-bottom:9px}.ctkdp-events-kicker span{width:58px;height:1px;background:rgba(181,106,255,.65)}
.ctkdp-events-hero h1{margin:0;color:#fff;font-family:Oswald,sans-serif;font-size:clamp(54px,7vw,82px);font-weight:700;letter-spacing:.02em;line-height:.95;text-transform:uppercase}.ctkdp-crown{width:100%;margin:9px 0 9px;color:#9b43ff;font-size:18px}.ctkdp-events-hero p{margin:0;color:#eee9f4;font-size:15px;line-height:1.7}
.ctkdp-events-gallery{padding:22px 0 58px;background:var(--fp-black)}.ctkdp-event-filters{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:18px}.ctkdp-event-filters a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 17px;border-radius:999px;color:#ddd8e3;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.06em;transition:.2s}.ctkdp-event-filters a:hover{color:#fff;background:#17131d}.ctkdp-event-filters a.active{color:#fff;background:linear-gradient(135deg,#6d20e8,#8f38ff);box-shadow:0 7px 20px rgba(124,58,237,.22)}.ctkdp-view-toggle{margin-left:12px;border:1px solid #4b3b5c;border-radius:999px;height:36px;padding:3px;display:flex;align-items:center;color:#b26aff}.ctkdp-view-toggle i{width:36px;height:28px;display:grid;place-items:center;font-size:13px}.ctkdp-view-toggle i:first-child{background:#28103f;border-radius:999px}
.ctkdp-event-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-auto-rows:1fr;gap:12px}.ctkdp-event-card{min-width:0;background:#0b0a0e;border:1px solid rgba(255,255,255,.18);border-radius:9px;overflow:hidden;box-shadow:0 14px 30px rgba(0,0,0,.2);transition:transform .2s,border-color .2s,box-shadow .2s}.ctkdp-event-card:hover{transform:translateY(-3px);border-color:rgba(170,92,255,.65);box-shadow:0 18px 40px rgba(0,0,0,.32)}.ctkdp-event-featured{grid-row:span 2}.ctkdp-event-image{position:relative;height:210px;overflow:hidden;background:#111}.ctkdp-event-featured .ctkdp-event-image{height:100%;min-height:380px}.ctkdp-event-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.ctkdp-event-card:hover .ctkdp-event-image img{transform:scale(1.035)}.ctkdp-event-featured .ctkdp-event-image img{object-position:center 35%}.ctkdp-image-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 30%,rgba(0,0,0,.92) 100%)}.ctkdp-featured-badge{position:absolute;left:13px;top:13px;background:#6d20e8;color:#fff;border-radius:6px;padding:7px 11px;font-size:10px;font-weight:800;letter-spacing:.06em}.ctkdp-featured-copy{position:absolute;left:18px;right:18px;bottom:17px;color:#fff}.ctkdp-event-date-line{font-size:12px;font-weight:600;margin-bottom:6px}.ctkdp-event-date-line i{color:#b45cff;margin-right:6px}.ctkdp-featured-copy h2{font-family:Oswald,sans-serif;font-size:39px;line-height:.92;letter-spacing:.01em;margin:0 0 10px;text-transform:uppercase}.ctkdp-featured-copy h2 em{font-style:italic;color:#a94cff;text-shadow:2px 2px 0 #160c22;font-size:1.18em}.ctkdp-event-meta-row{display:flex;gap:17px;flex-wrap:wrap;font-size:11px}.ctkdp-event-meta-row span{display:inline-flex;align-items:center;gap:6px}.ctkdp-event-meta-row i{color:#a54cff}
.ctkdp-date-badge{position:absolute;left:13px;top:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:64px;min-height:57px;padding:6px 8px;background:linear-gradient(180deg,#572092,#35105d);border-radius:6px;color:#fff;text-align:center;box-shadow:0 8px 18px rgba(0,0,0,.25)}.ctkdp-date-badge small{font-size:9px;font-weight:800;letter-spacing:.08em;line-height:1.1}.ctkdp-date-badge strong{font-size:11px;line-height:1.1;margin-top:3px}.ctkdp-event-body{padding:13px 15px 15px}.ctkdp-event-body h3{font-family:Oswald,sans-serif;text-transform:none;font-size:20px;line-height:1.05;margin:0 0 10px;color:#fff}.ctkdp-event-body p{margin:5px 0;color:#d2cdd7;font-size:11px;line-height:1.35}.ctkdp-event-body p i{color:#b56aff;width:15px;text-align:center;margin-right:5px}
.ctkdp-event-spotlight{margin-top:14px;min-height:125px;padding:22px 25px;display:grid;grid-template-columns:1.4fr .72fr .55fr 1fr auto;gap:18px;align-items:center;border-radius:10px;border:1px solid rgba(183,99,255,.18);background:radial-gradient(circle at 75% 50%,rgba(125,35,215,.28),transparent 34%),linear-gradient(90deg,#17052b,#24043d 60%,#17052c);overflow:hidden;position:relative}.ctkdp-event-spotlight:before{content:"";position:absolute;right:-90px;top:-90px;width:280px;height:280px;background:linear-gradient(135deg,transparent 35%,rgba(136,48,224,.25) 36%,rgba(136,48,224,.04) 72%,transparent 73%);transform:rotate(12deg)}.ctkdp-spotlight-copy,.ctkdp-spotlight-detail,.ctkdp-spotlight-badge{position:relative;z-index:2}.ctkdp-small-label{display:block;color:#a955ff;font-size:10px;font-weight:800;letter-spacing:.12em;margin-bottom:4px}.ctkdp-spotlight-copy h2{font-family:Oswald,sans-serif;color:#fff;text-transform:none;font-size:28px;margin:0 0 4px}.ctkdp-spotlight-copy p{color:#d8d0e1;font-size:11px;line-height:1.5;margin:0;max-width:430px}.ctkdp-event-button{display:inline-flex;align-items:center;gap:10px;margin-top:12px;padding:9px 15px;border-radius:6px;background:#7021df;color:#fff;text-decoration:none;font-size:10px;font-weight:800;letter-spacing:.06em}.ctkdp-event-button:hover{background:#9142ff;color:#fff}.ctkdp-spotlight-detail{display:flex;gap:10px;align-items:flex-start;border-left:1px solid rgba(255,255,255,.12);padding-left:17px}.ctkdp-spotlight-detail>i{color:#a64cff;font-size:18px;margin-top:2px}.ctkdp-spotlight-detail strong,.ctkdp-spotlight-detail span{display:block}.ctkdp-spotlight-detail strong{font-size:11px;color:#fff}.ctkdp-spotlight-detail span{font-size:10px;color:#bfb5c9;margin-top:3px;line-height:1.35}.ctkdp-spotlight-badge{width:92px;height:92px;border:2px solid #8c3ce9;border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle,#32104d,#120615 70%);box-shadow:0 0 0 4px rgba(107,32,232,.13),0 15px 30px rgba(0,0,0,.35);transform:rotate(-8deg)}.ctkdp-spotlight-badge span{font-family:Oswald,sans-serif;color:#ffbe0b;font-size:12px;font-weight:700;line-height:1.05}.ctkdp-spotlight-badge i{position:absolute;bottom:10px;color:#ffbe0b;font-size:8px}.ctkdp-events-footer-note{text-align:center;margin-top:17px;color:#b8b0c0;font-size:11px}.ctkdp-events-footer-note i{color:#a64cff;margin-right:8px}.ctkdp-events-footer-note a{color:#c16bff;text-decoration:underline}
@media(max-width:991.98px){.ctkdp-event-grid{grid-template-columns:1fr 1fr}.ctkdp-event-featured{grid-column:1/-1;grid-row:auto}.ctkdp-event-featured .ctkdp-event-image{min-height:390px}.ctkdp-event-spotlight{grid-template-columns:1fr 1fr}.ctkdp-spotlight-copy{grid-column:1/-1}.ctkdp-spotlight-badge{display:none}}
@media(max-width:767.98px){.ctkdp-events-hero{min-height:255px;padding:45px 0 40px}.ctkdp-events-gallery{padding-top:16px}.ctkdp-event-filters{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:none}.ctkdp-event-filters::-webkit-scrollbar{display:none}.ctkdp-event-filters a{white-space:nowrap;padding:0 13px}.ctkdp-view-toggle{display:none}.ctkdp-event-grid{grid-template-columns:1fr}.ctkdp-event-featured{grid-column:auto}.ctkdp-event-featured .ctkdp-event-image{min-height:440px}.ctkdp-event-image{height:230px}.ctkdp-featured-copy h2{font-size:34px}.ctkdp-event-spotlight{grid-template-columns:1fr;gap:14px;padding:20px}.ctkdp-spotlight-copy{grid-column:auto}.ctkdp-spotlight-detail{border-left:0;border-top:1px solid rgba(255,255,255,.1);padding:12px 0 0}.ctkdp-event-button{margin-top:10px}.ctkdp-events-footer-note{padding:0 10px;line-height:1.6}}
@media(max-width:420px){.ctkdp-events-hero h1{font-size:52px}.ctkdp-events-hero p{font-size:13px}.ctkdp-event-featured .ctkdp-event-image{min-height:410px}.ctkdp-event-meta-row{gap:8px;flex-direction:column}.ctkdp-featured-copy{left:15px;right:15px}.ctkdp-featured-copy h2{font-size:31px}}

/* Events hero — align banner content with the site-wide left-aligned page hero style */
.ctkdp-events-hero-content{
  text-align:left;
  max-width:760px;
  margin-left:0;
  margin-right:auto;
}
.ctkdp-events-kicker{
  justify-content:flex-start;
}
.ctkdp-events-hero p{
  max-width:650px;
}

@media(max-width:767.98px){
  .ctkdp-events-hero-content{max-width:100%;}
}

/* PRODUCT DETAILS — final spacing/layout refinement to match the supplied reference */
@media (min-width: 992px){
  .product-detail-hero > .container,
  .product-detail-section > .container{
    max-width:1360px!important;
    width:calc(100% - 80px)!important;
  }
  .product-detail-grid{
    display:grid!important;
    grid-template-columns:minmax(430px,520px) minmax(0,1fr)!important;
    column-gap:56px!important;
    align-items:center!important;
    margin:0!important;
  }
  .product-detail-grid > [class*="col-lg-6"]{
    width:auto!important;
    max-width:none!important;
    flex:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .detail-image{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    justify-content:flex-start!important;
  }
  .detail-image img{
    width:100%!important;
    max-width:520px!important;
    height:auto!important;
    max-height:none!important;
  }
  .product-detail-grid > [class*="col-lg-6"]:last-child{
    padding-left:0!important;
    padding-right:20px!important;
  }
  .detail-title{font-size:36px!important;}
  .detail-copy{max-width:620px!important;}
  .detail-note{max-width:620px!important;}
}
@media (min-width:1200px){
  .product-detail-hero > .container,
  .product-detail-section > .container{max-width:1360px!important;}
}
@media (max-width:991px){
  .product-detail-grid{row-gap:28px!important;}
}
