
/* GoGiftings Events Marketplace v6 */
:root{--gg-pink:#f62780;--gg-dark:#17111b;--gg-rose:#fff0f6;--gg-soft:#fff7fb;--gg-border:#f6d8e5;--gg-text:#4a4250;--gg-muted:#837785;--gg-gold:#d79a2b;--gg-green:#0f9f6e}
.events-shell{background:linear-gradient(180deg,#fff8fb 0,#fff 34%,#fff 100%);color:var(--gg-text)}
.events-container{width:min(1180px,calc(100% - 32px));margin:auto}
.events-hero{position:relative;overflow:hidden;padding:70px 0 42px;background:
radial-gradient(circle at 15% 20%,rgba(246,39,128,.16),transparent 28%),
radial-gradient(circle at 90% 5%,rgba(215,154,43,.16),transparent 24%),
linear-gradient(135deg,#fff 0,#fff0f6 52%,#fff 100%);border-bottom:1px solid var(--gg-border)}
.events-hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:34px;align-items:center}
.events-kicker{display:inline-flex;gap:8px;align-items:center;padding:9px 14px;border:1px solid var(--gg-border);border-radius:999px;background:rgba(255,255,255,.76);box-shadow:0 8px 30px rgba(246,39,128,.08);font-weight:800;color:var(--gg-pink);font-size:13px}
.events-hero h1{font-size:clamp(34px,5vw,66px);line-height:1.02;margin:18px 0 16px;color:var(--gg-dark);letter-spacing:-.045em}
.events-hero p{font-size:18px;line-height:1.75;color:#655b68;max-width:690px}
.events-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.gg-btn{border:0;border-radius:14px;padding:13px 20px;font-weight:900;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;justify-content:center;transition:.25s}
.gg-btn-primary{background:linear-gradient(135deg,#f62780,#cd0454);color:white;box-shadow:0 14px 28px rgba(246,39,128,.28)}
.gg-btn-soft{background:white;color:var(--gg-pink);border:1px solid var(--gg-border)}
.gg-btn-dark{background:#17111b;color:white}
.gg-btn:hover{transform:translateY(-2px)}
.hero-media{position:relative;min-height:450px}
.hero-card{position:absolute;border-radius:28px;overflow:hidden;box-shadow:0 26px 65px rgba(48,18,38,.18);border:8px solid rgba(255,255,255,.8);background:#fff}
.hero-card img{width:100%;height:100%;object-fit:cover;display:block}
.hero-card.one{right:0;top:0;width:72%;height:310px}
.hero-card.two{left:0;bottom:12px;width:52%;height:245px}
.hero-card.three{right:48px;bottom:0;width:34%;height:165px}
.floating-quote{position:absolute;left:38px;top:44px;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.7);border-radius:22px;padding:16px 18px;box-shadow:0 18px 40px rgba(246,39,128,.14);font-weight:900;color:#241b27}
.event-search-panel{margin-top:-28px;position:relative;z-index:4}
.event-search-card{background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border:1px solid var(--gg-border);border-radius:26px;box-shadow:0 22px 60px rgba(54,19,43,.13);padding:18px;display:grid;grid-template-columns:1.2fr 1fr 1fr .8fr auto;gap:10px}
.event-field{background:#fff;border:1px solid #f0d7e2;border-radius:16px;padding:10px 12px}
.event-field label{font-size:12px;font-weight:900;color:#6b5d69;display:block;margin-bottom:5px}
.event-field input,.event-field select{border:0;outline:none;width:100%;font-weight:700;color:#251c28;background:transparent}
.event-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:40px 0 20px}
.event-tab{border:1px solid var(--gg-border);background:white;color:#5f5360;border-radius:999px;padding:10px 15px;font-weight:900;cursor:pointer}
.event-tab.active{background:var(--gg-pink);color:white;box-shadow:0 12px 24px rgba(246,39,128,.22)}
.events-layout{display:grid;grid-template-columns:285px 1fr;gap:28px;padding:24px 0 70px}
.filter-card,.summary-card,.booking-panel{border:1px solid var(--gg-border);background:rgba(255,255,255,.9);border-radius:24px;box-shadow:0 12px 36px rgba(50,18,38,.08)}
.filter-card{padding:18px;position:sticky;top:18px}
.filter-title{font-size:18px;font-weight:950;color:#201724;margin-bottom:15px}
.filter-block{border-top:1px solid #f4dce6;padding:16px 0}
.filter-block:first-of-type{border-top:0}
.filter-block h4{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#7d6d79;margin:0 0 10px}
.filter-option{display:flex;align-items:center;gap:9px;margin:9px 0;color:#584d59;font-weight:750}
.filter-card input[type=range]{width:100%;accent-color:var(--gg-pink)}
.range-row{display:flex;justify-content:space-between;font-weight:900;color:var(--gg-pink);font-size:13px}
.result-top{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:18px}
.result-top h2{margin:0;color:#18101b;font-size:30px;letter-spacing:-.03em}
.result-top p{margin:6px 0 0;color:#786b78}
.sort-box{border:1px solid var(--gg-border);background:white;border-radius:12px;padding:10px;font-weight:800;color:#4d4450}
.events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.event-card{background:white;border:1px solid #f0d7e2;border-radius:22px;overflow:hidden;box-shadow:0 12px 36px rgba(44,18,35,.08);transition:.25s;position:relative}
.event-card:hover{transform:translateY(-5px);box-shadow:0 22px 52px rgba(44,18,35,.14)}
.event-card-img{height:198px;position:relative;overflow:hidden}
.event-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:.35s}
.event-card:hover .event-card-img img{transform:scale(1.05)}
.badge-type{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-radius:999px;padding:7px 10px;color:var(--gg-pink);font-weight:950;font-size:12px}
.wish-btn{position:absolute;right:12px;top:12px;width:38px;height:38px;border-radius:50%;border:1px solid #ffd2e3;background:white;color:var(--gg-pink);font-weight:950;cursor:pointer}
.wish-btn.saved{background:var(--gg-pink);color:white}
.event-card-body{padding:16px}
.event-card h3{margin:0 0 8px;color:#211725;font-size:19px;line-height:1.22}
.meta-line{display:flex;gap:8px;align-items:center;color:#7c707d;font-size:13px;flex-wrap:wrap}
.rating-line{display:flex;justify-content:space-between;align-items:center;margin:12px 0;font-weight:850;color:#584e59}
.stars{color:#ffb400}
.price-line{display:flex;justify-content:space-between;align-items:end;gap:8px;border-top:1px solid #f4dce6;padding-top:13px}
.price-line strong{font-size:18px;color:var(--gg-pink)}
.event-chip-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.event-chip{background:#fff0f6;color:#79415a;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:850}
.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.card-actions .gg-btn{padding:10px 12px;border-radius:12px;font-size:13px}
.detail-hero{padding:32px 0;background:#fff8fb;border-bottom:1px solid var(--gg-border)}
.detail-wrap{display:grid;grid-template-columns:1fr 380px;gap:30px;padding:32px 0 70px}
.gallery-main{border-radius:26px;overflow:hidden;height:440px;box-shadow:0 18px 52px rgba(48,18,38,.14)}
.gallery-main img{width:100%;height:100%;object-fit:cover}
.thumb-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px}
.thumb-row img{height:88px;width:100%;object-fit:cover;border-radius:16px;border:3px solid transparent;cursor:pointer}
.thumb-row img.active{border-color:var(--gg-pink)}
.detail-title{font-size:38px;color:#17111b;letter-spacing:-.035em;margin:24px 0 10px}
.detail-tabs{display:flex;gap:26px;border-bottom:1px solid #eed7e0;margin:24px 0}
.detail-tabs button{border:0;background:transparent;padding:15px 0;font-weight:950;cursor:pointer;color:#312633}
.detail-tabs button.active{color:var(--gg-pink);border-bottom:3px solid var(--gg-pink)}
.tab-pane{display:none;line-height:1.85;color:#5e5360;font-size:16px}
.tab-pane.active{display:block}
.amenities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.amenity{background:#fff8fb;border:1px solid #f2dce5;border-radius:14px;padding:12px;font-weight:850}
.booking-panel{position:sticky;top:18px;overflow:hidden}
.booking-head{background:linear-gradient(135deg,#fff0f6,#ffe1ec);padding:18px 20px;border-bottom:1px solid var(--gg-border)}
.booking-head h3{margin:0;color:#1e1421}
.booking-body{padding:18px}
.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.booking-body label{font-size:12px;font-weight:950;color:#6e6270;display:block;margin-bottom:5px}
.booking-body input,.booking-body select,.booking-body textarea{width:100%;border:1px solid #edd3de;border-radius:12px;padding:10px;background:white;outline:none}
.service-group{border:1px solid #f0d7e2;border-radius:18px;overflow:hidden;margin:14px 0;background:#fff}
.service-group h4{margin:0;padding:13px 15px;background:#fff0f6;display:flex;justify-content:space-between;color:#514452}
.service-options{padding:13px;display:grid;gap:10px}
.service-tile{display:grid;grid-template-columns:74px 1fr auto;gap:10px;align-items:center;border:1px solid #f2dce5;border-radius:16px;padding:8px;cursor:pointer}
.service-tile img{width:74px;height:58px;object-fit:cover;border-radius:12px}
.service-tile strong{display:block;color:#2a202d}
.service-tile small{color:#7b707b}
.service-tile input{width:auto;accent-color:var(--gg-pink)}
.service-tile.selected{border-color:var(--gg-pink);background:#fff4f8}
.price-summary{background:#fff8fb;border:1px solid #f2dce5;border-radius:18px;padding:14px;margin-top:14px}
.price-row{display:flex;justify-content:space-between;margin:8px 0;color:#4b414c}
.price-row.total{border-top:1px solid #e8cfd9;padding-top:10px;font-size:18px;font-weight:950;color:#17111b}
.price-row.total span:last-child{color:var(--gg-pink)}
.vendor-layout{display:grid;grid-template-columns:1fr 360px;gap:28px;padding:35px 0 70px}
.vendor-hero-card{background:white;border:1px solid var(--gg-border);border-radius:28px;padding:24px;box-shadow:0 16px 46px rgba(44,18,35,.09);display:grid;grid-template-columns:190px 1fr;gap:22px}
.vendor-hero-card img{width:190px;height:190px;border-radius:24px;object-fit:cover}
.vendor-services{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:22px}
.checkout-wrap{display:grid;grid-template-columns:1fr 390px;gap:30px;padding:42px 0 80px}
.form-card{background:white;border:1px solid var(--gg-border);border-radius:26px;padding:24px;box-shadow:0 15px 45px rgba(44,18,35,.08)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.success-card{text-align:center;max-width:760px;margin:50px auto;background:white;border:1px solid var(--gg-border);border-radius:30px;padding:38px;box-shadow:0 18px 55px rgba(44,18,35,.09)}
.success-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#f62780,#cd0454);color:white;font-size:34px;margin:auto}
.ai-panel{background:linear-gradient(135deg,#211124,#5a1738);color:white;border-radius:32px;padding:32px;display:grid;grid-template-columns:1fr 360px;gap:24px;align-items:center;margin:34px 0}
.ai-panel h2{color:white;font-size:34px;margin:0 0 10px}
.ai-box{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:18px;backdrop-filter:blur(14px)}
.ai-box select,.ai-box input{width:100%;border:0;border-radius:14px;padding:12px;margin:6px 0 12px}
.empty-state{background:white;border:1px dashed #efb8ce;border-radius:22px;padding:28px;text-align:center;color:#746874}
@media(max-width:990px){.events-hero-grid,.events-layout,.detail-wrap,.vendor-layout,.checkout-wrap,.ai-panel{grid-template-columns:1fr}.event-search-card{grid-template-columns:1fr 1fr}.events-grid{grid-template-columns:repeat(2,1fr)}.booking-panel,.filter-card{position:static}.hero-media{min-height:360px}.detail-wrap{padding-top:18px}}
@media(max-width:640px){.events-container{width:min(100% - 22px,1180px)}.events-hero{padding-top:40px}.event-search-card,.events-grid,.booking-grid,.form-grid,.amenities-grid,.vendor-services,.vendor-hero-card{grid-template-columns:1fr}.hero-media{display:none}.detail-title{font-size:30px}.gallery-main{height:300px}.card-actions{grid-template-columns:1fr}.event-tabs{overflow:auto;flex-wrap:nowrap}.checkout-wrap{padding-top:20px}}



/* V7 balanced homepage feature + proper individual vendor booking */
.home-events-feature{
  padding:64px 0;
  background:
    radial-gradient(circle at 92% 86%,rgba(246,39,128,.10),transparent 28%),
    linear-gradient(180deg,#fff 0,#fff7fb 100%);
  border-top:1px solid var(--gg-border);
  border-bottom:1px solid var(--gg-border);
}
.home-events-card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:34px;
  align-items:center;
  min-height:430px;
  padding:42px;
  border-radius:34px;
  background:
    radial-gradient(circle at 18% 18%,rgba(246,39,128,.22),transparent 32%),
    linear-gradient(135deg,#34142e 0%,#66133a 58%,#9e0d50 100%);
  box-shadow:0 30px 80px rgba(83,17,54,.18);
}
.home-events-card:after{
  content:"";
  position:absolute;
  inset:auto -80px -110px auto;
  width:340px;
  height:340px;
  background:rgba(255,255,255,.08);
  border-radius:50%;
}
.home-events-copy{position:relative;z-index:2;max-width:650px}
.home-events-copy .events-kicker{background:rgba(255,255,255,.92)}
.home-events-copy h2{
  margin:18px 0 16px;
  color:#fff;
  font-size:clamp(32px,4vw,54px);
  line-height:1.04;
  letter-spacing:-.045em;
}
.home-events-copy p{
  color:rgba(255,255,255,.86);
  font-size:18px;
  line-height:1.72;
  max-width:780px;
}
.home-events-visual{
  position:relative;
  min-height:330px;
  z-index:2;
}
.home-visual-card{
  position:absolute;
  overflow:hidden;
  border-radius:26px;
  background:#fff;
  border:8px solid rgba(255,255,255,.38);
  box-shadow:0 22px 55px rgba(0,0,0,.22);
}
.home-visual-card img{width:100%;height:100%;object-fit:cover;display:block}
.home-visual-card.large{right:0;top:0;width:78%;height:250px}
.home-visual-card.small{width:42%;height:145px}
.home-visual-card.one{left:0;bottom:0}
.home-visual-card.two{right:8%;bottom:10px}
.detail-hero-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.vendor-detail-hero{
  background:
    radial-gradient(circle at 80% 10%,rgba(246,39,128,.12),transparent 28%),
    linear-gradient(135deg,#fff,#fff6fa);
}
.vendor-detail-wrap .booking-panel{
  border-color:#f3c5d8;
  box-shadow:0 24px 60px rgba(246,39,128,.12);
}
.vendor-booking-panel .booking-head{
  background:linear-gradient(135deg,#fff0f6,#fff);
  border-bottom:1px solid var(--gg-border);
}
.vendor-booking-panel .booking-head p{
  margin:8px 0 0;
  color:#7b6070;
  font-weight:800;
  line-height:1.45;
}
.vendor-package-select{display:grid;gap:10px;margin-top:8px}
.vendor-radio-card{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:10px;
  align-items:center;
  padding:13px;
  border:1px solid var(--gg-border);
  border-radius:16px;
  background:#fff;
  cursor:pointer;
  transition:.22s;
}
.vendor-radio-card input{accent-color:var(--gg-pink)}
.vendor-radio-card strong{display:block;color:#251727;font-size:14px}
.vendor-radio-card small{display:block;color:#7d707c;margin-top:3px;line-height:1.35}
.vendor-radio-card b{color:var(--gg-pink);font-size:13px;text-align:right;white-space:nowrap}
.vendor-radio-card.selected{
  border-color:var(--gg-pink);
  background:#fff6fa;
  box-shadow:0 12px 30px rgba(246,39,128,.12);
}
.vendor-package-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.vendor-package-card{
  border:1px solid var(--gg-border);
  border-radius:18px;
  background:#fff;
  padding:16px;
  box-shadow:0 14px 34px rgba(50,20,40,.06);
}
.vendor-package-card.selected{
  border-color:var(--gg-pink);
  background:#fff6fa;
}
.vendor-package-card strong{color:#251727}
.vendor-package-card p{color:#706574;line-height:1.55;margin:8px 0}
.vendor-package-card span{font-weight:900;color:var(--gg-pink)}
.venue-addons-title{
  margin:16px 0 8px;
  padding:12px 14px;
  border-radius:14px;
  background:#fde8f1;
  color:#251727;
  font-weight:900;
}
.vendor-booking-panel textarea,
.booking-panel textarea{
  width:100%;
  resize:vertical;
  border:1px solid #ead7e0;
  border-radius:12px;
  padding:11px 12px;
  font:inherit;
  outline:none;
}
.vendor-booking-panel textarea:focus,
.booking-panel textarea:focus{
  border-color:var(--gg-pink);
  box-shadow:0 0 0 4px rgba(246,39,128,.08);
}
@media(max-width:900px){
  .home-events-card{grid-template-columns:1fr;padding:28px;min-height:auto}
  .home-events-visual{min-height:280px}
  .vendor-package-grid{grid-template-columns:1fr}
  .detail-hero-inner{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
  .home-events-feature{padding:34px 0}
  .home-events-card{border-radius:24px;padding:22px}
  .home-visual-card.large{width:100%;height:190px}
  .home-visual-card.small{display:none}
  .home-events-visual{min-height:205px}
  .vendor-radio-card{grid-template-columns:auto 1fr}
  .vendor-radio-card b{grid-column:2;text-align:left}
}


/* V8 fixes: balanced category nav, compact events page, working add-on drawers */
.navbar .container{gap:28px;align-items:center;overflow-x:auto;padding:0 4px}
.navbar a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;white-space:nowrap;flex:0 0 auto}
.navbar .nav-pill{min-width:112px;padding:10px 18px;border-radius:999px;background:linear-gradient(135deg,#f62780,#8a1978)!important;color:#fff!important;box-shadow:0 8px 22px rgba(246,39,128,.22);overflow:visible}

.events-page-head{padding:42px 0 22px;background:linear-gradient(180deg,#fff7fb,#fff);border-bottom:1px solid var(--gg-border)}
.events-page-head h1{font-size:clamp(34px,5vw,56px);line-height:1;margin:14px 0 12px;color:#351027;letter-spacing:-.04em}
.events-page-head p{max-width:860px;color:#6f6370;font-size:18px;line-height:1.65}

.service-group{border:1px solid var(--gg-border);border-radius:18px;margin-top:14px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(246,39,128,.06)}
.service-group h4{margin:0;padding:15px 16px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#fff2f7,#fff);cursor:pointer;color:#513046;font-size:16px}
.service-group h4 span{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:#fff;border:1px solid var(--gg-border);transition:.25s ease}
.service-group.collapsed h4 span{transform:rotate(180deg)}
.service-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;background:#fff8fb}
.service-group.collapsed .service-options{display:none}
.service-tile{position:relative;display:flex;flex-direction:column;gap:8px;min-height:170px;padding:10px;border-radius:16px;border:1px solid #f2d5e1;background:#fff;cursor:pointer;transition:.22s ease}
.service-tile:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(75,15,50,.10)}
.service-tile img{width:100%;height:86px;object-fit:cover;border-radius:12px}
.service-tile span{display:flex;flex-direction:column;gap:4px}
.service-tile strong{font-size:14px;line-height:1.25;color:#2b1d28}
.service-tile small{font-weight:800;color:#7d6d78}
.service-tile input{position:absolute;top:14px;left:14px;width:18px;height:18px;accent-color:var(--gg-pink)}
.service-tile.selected{border-color:var(--gg-pink);box-shadow:0 14px 32px rgba(246,39,128,.16);background:#fff}
.service-tile.selected:after{content:'Selected';position:absolute;top:14px;right:14px;background:var(--gg-pink);color:#fff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}
.venue-addons-title{margin-top:18px;padding:12px 14px;border-radius:16px;background:#fee7f1;color:#4a1531;font-weight:900}
@media(max-width:760px){.service-options{grid-template-columns:1fr 1fr}.events-page-head{padding:28px 0 14px}.navbar .container{gap:18px}}
@media(max-width:480px){.service-options{grid-template-columns:1fr}.navbar .nav-pill{min-width:120px}}


/* === V9 Clean Final: category bar, events, drawers, AI assistant fixes === */
.navbar .container{
  display:flex !important;
  align-items:center !important;
  gap:24px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-padding-left:16px !important;
  padding:0 4px !important;
}
.navbar a{
  flex:0 0 auto !important;
  white-space:nowrap !important;
  min-width:max-content !important;
}
.navbar .nav-pill{
  min-width:max-content !important;
  max-width:none !important;
  overflow:visible !important;
  text-overflow:clip !important;
  padding-left:18px !important;
  padding-right:18px !important;
}
.events-shell .ai-panel{display:none !important;}
.events-page-head{
  padding:54px 0 32px !important;
  background:
    radial-gradient(circle at 8% 0,rgba(246,39,128,.14),transparent 28%),
    linear-gradient(135deg,#fff8fb,#fff) !important;
  border-bottom:1px solid var(--gg-border) !important;
}
.events-page-head h1{
  max-width:860px;
  margin:14px 0 10px;
  font-size:clamp(34px,4vw,58px);
  line-height:1.04;
  letter-spacing:-.045em;
  color:#231523;
}
.events-page-head p{
  max-width:840px;
  font-size:18px;
  line-height:1.7;
  color:#6e6170;
}
.event-search-panel{margin-top:24px !important;}
.events-layout{margin-top:26px !important;}
.service-group{
  border:1px solid #f1d4e0 !important;
  border-radius:20px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:0 12px 35px rgba(80,22,58,.06) !important;
}
.service-group h4{
  cursor:pointer !important;
  user-select:none !important;
  margin:0 !important;
  padding:16px 18px !important;
  background:linear-gradient(90deg,#fff1f7,#fff) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  font-size:16px !important;
  font-weight:900 !important;
  color:#4c2a40 !important;
}
.service-group h4 span{
  flex:0 0 30px !important;
  width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid #f1d4e0 !important;
  transition:transform .2s ease !important;
}
.service-group.collapsed h4 span{transform:rotate(180deg) !important;}
.service-options{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
  padding:16px !important;
  background:#fff9fc !important;
}
.service-group.collapsed .service-options{display:none !important;}
.service-tile{
  min-width:0 !important;
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  gap:9px !important;
  min-height:178px !important;
  padding:10px !important;
  border-radius:18px !important;
  border:1px solid #f2d5e1 !important;
  background:#fff !important;
}
.service-tile img{
  width:100% !important;
  height:92px !important;
  object-fit:cover !important;
  border-radius:14px !important;
}
.service-tile span{min-width:0 !important;}
.service-tile strong{
  display:block !important;
  font-size:14px !important;
  line-height:1.25 !important;
  color:#2a1725 !important;
}
.service-tile small{
  display:block !important;
  margin-top:3px !important;
  color:#7b6e78 !important;
  font-weight:800 !important;
}
.service-tile input{
  position:absolute !important;
  top:12px !important;
  right:12px !important;
  width:18px !important;
  height:18px !important;
  accent-color:#f62780 !important;
}
.service-tile.selected{
  border-color:#f62780 !important;
  box-shadow:0 12px 30px rgba(246,39,128,.14) !important;
  background:#fff4f9 !important;
}

/* AI assistant suggested-results overlap fix */
.page-two-col{
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr) !important;
  align-items:start !important;
}
.page-two-col > *{min-width:0 !important;}
.result-card{
  display:grid !important;
  grid-template-columns:84px minmax(0,1fr) max-content !important;
  align-items:center !important;
  gap:16px !important;
  padding:16px !important;
  overflow:hidden !important;
}
.result-card .thumb{
  width:84px !important;
  height:84px !important;
  min-width:84px !important;
  border-radius:16px !important;
  overflow:hidden !important;
}
.result-card strong{
  display:block !important;
  min-width:0 !important;
  overflow-wrap:anywhere !important;
  line-height:1.2 !important;
}
.result-card .dirham-price{
  white-space:nowrap !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:2px !important;
}
@media(max-width:900px){
  .page-two-col{grid-template-columns:1fr !important;}
}
@media(max-width:720px){
  .navbar .container{gap:18px !important;}
  .events-page-head{padding:38px 0 24px !important;}
  .service-options{grid-template-columns:1fr !important;}
  .result-card{
    grid-template-columns:72px minmax(0,1fr) !important;
    gap:12px !important;
  }
  .result-card .thumb{
    width:72px !important;
    height:72px !important;
    min-width:72px !important;
  }
  .result-card > div:last-child{
    grid-column:2 !important;
    justify-self:start !important;
    margin-top:4px !important;
  }
}


/* V10 polish: match GoGiftings event hero/search reference */
.gg-events-main-hero{padding:44px 0 60px;background:
  radial-gradient(circle at 78% 12%,rgba(246,39,128,.14),transparent 26%),
  linear-gradient(135deg,#fff7fb 0,#fff 42%,#fff1f8 100%);
}
.gg-events-main-hero .events-hero-grid{
  background:linear-gradient(135deg,#2b0d2b 0%,#5a123b 52%,#a30d50 100%);
  border-radius:34px;
  padding:44px 44px 54px;
  box-shadow:0 28px 70px rgba(246,39,128,.15);
  grid-template-columns:1.05fr .95fr;
  min-height:430px;
}
.gg-events-main-hero .events-kicker{background:rgba(255,255,255,.9);border-color:rgba(255,255,255,.78)}
.gg-events-main-hero h1{color:#fff;font-size:clamp(40px,5.5vw,62px);max-width:700px}
.gg-events-main-hero p{color:rgba(255,255,255,.83);max-width:650px}
.gg-events-main-hero .gg-btn-soft{background:#fff;color:var(--gg-pink)}
.gg-events-main-hero .hero-media{min-height:330px}
.gg-events-main-hero .floating-quote{left:4px;top:40px;font-size:13px;padding:14px 18px;z-index:5}
.gg-events-main-hero .hero-card{border:8px solid rgba(255,255,255,.92);box-shadow:0 24px 55px rgba(28,10,25,.28)}
.gg-events-main-hero .hero-card.one{right:0;top:0;width:68%;height:245px}
.gg-events-main-hero .hero-card.two{left:0;bottom:12px;width:49%;height:190px}
.gg-events-main-hero .hero-card.three{right:56px;bottom:2px;width:31%;height:150px}
.event-search-panel{margin-top:-42px}
.event-search-card{align-items:stretch;border-radius:22px;padding:14px;grid-template-columns:1.3fr .95fr .95fr .8fr auto}
.event-search-card .gg-btn{border-radius:14px;min-width:104px}
.event-field{border-radius:14px}
.event-field input::placeholder{color:#6b5d69;opacity:.9;font-weight:800}
@media(max-width:900px){
  .gg-events-main-hero{padding:24px 0 44px}
  .gg-events-main-hero .events-hero-grid{grid-template-columns:1fr;padding:28px 18px;border-radius:26px}
  .gg-events-main-hero .hero-media{min-height:320px}
  .event-search-panel{margin-top:-24px}
  .event-search-card{grid-template-columns:1fr}
}


/* ============================================================
   GoGiftings Events — V28 Elegant Upgrade
   Fixes: button centering, card gaps, mobile layout,
          hero polish, event card CTA alignment
   ============================================================ */

/* ── EVENT CARD: button always at bottom, fully centered ── */
.event-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.event-card-body {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  padding: 16px !important;
}
.card-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  margin-top: auto !important;
  padding-top: 14px !important;
}
.card-actions .gg-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 11px 10px !important;
  border-radius: 12px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

/* ── EVENTS GRID — equal height rows ── */
.events-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}
.events-grid .event-card {
  min-height: 0 !important;
}

/* ── ELEGANT HERO UPGRADE ── */
.gg-events-main-hero {
  padding: 50px 0 70px !important;
  background:
    radial-gradient(circle at 72% 10%, rgba(246,39,128,.13), transparent 28%),
    radial-gradient(circle at 12% 88%, rgba(90,26,147,.12), transparent 30%),
    linear-gradient(135deg, #fff7fb 0%, #fff 40%, #fff1f8 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
.gg-events-main-hero::before {
  content: '';
  position: absolute; inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Ccircle cx='1' cy='1' r='1' fill='%23f62780' fill-opacity='0.03'/%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none; z-index: 0;
}
.gg-events-main-hero .events-hero-grid {
  position: relative; z-index: 1;
  background: linear-gradient(135deg, #27082b 0%, #5c1040 52%, #a80f58 100%) !important;
  border-radius: 36px !important;
  padding: 52px 52px 58px !important;
  box-shadow:
    0 32px 80px rgba(180,20,90,.22),
    0 0 0 1px rgba(255,255,255,.06) inset !important;
  grid-template-columns: 1.08fr .92fr !important;
  min-height: 440px !important;
  overflow: hidden !important;
}
.gg-events-main-hero .events-hero-grid::before {
  content: '';
  position: absolute; inset: 0; border-radius: 36px;
  background:
    radial-gradient(ellipse 80% 60% at 0% 0%, rgba(246,39,128,.22) 0%, transparent 55%),
    radial-gradient(ellipse 60% 80% at 100% 100%, rgba(90,26,147,.25) 0%, transparent 55%);
  pointer-events: none; z-index: 0;
}
.gg-events-main-hero .events-hero-copy { position: relative; z-index: 2; }
.gg-events-main-hero h1 {
  color: #fff !important;
  font-size: clamp(38px, 5vw, 62px) !important;
  max-width: 680px !important;
  line-height: 1.02 !important;
  letter-spacing: -.045em !important;
  text-shadow: 0 2px 20px rgba(0,0,0,.2) !important;
}
.gg-events-main-hero p {
  color: rgba(255,255,255,.85) !important;
  font-size: 17px !important;
  line-height: 1.72 !important;
  max-width: 620px !important;
}
.gg-events-main-hero .events-kicker {
  background: rgba(255,255,255,.92) !important;
  border-color: rgba(255,255,255,.75) !important;
  box-shadow: 0 4px 18px rgba(0,0,0,.15) !important;
}
.gg-events-main-hero .gg-btn-primary {
  background: linear-gradient(135deg, #f62780, #cd0454) !important;
  box-shadow: 0 14px 36px rgba(246,39,128,.4) !important;
}
.gg-events-main-hero .gg-btn-soft {
  background: rgba(255,255,255,.15) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  backdrop-filter: blur(10px) !important;
}
.gg-events-main-hero .gg-btn-soft:hover {
  background: rgba(255,255,255,.28) !important;
}

/* ── FLOATING QUOTE pill enhancement ── */
.floating-quote {
  background: rgba(255,255,255,.94) !important;
  backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255,255,255,.8) !important;
  box-shadow: 0 12px 32px rgba(0,0,0,.18) !important;
  font-size: 13px !important;
  letter-spacing: .01em !important;
  color: #1f1422 !important;
}

/* ── HERO CARDS — polish ── */
.gg-events-main-hero .hero-card {
  border: 7px solid rgba(255,255,255,.95) !important;
  box-shadow: 0 22px 52px rgba(0,0,0,.28) !important;
}
.gg-events-main-hero .hero-card.one { right: 0; top: 0; width: 68%; height: 252px !important; }
.gg-events-main-hero .hero-card.two { left: 0; bottom: 10px; width: 48%; height: 192px !important; }
.gg-events-main-hero .hero-card.three { right: 54px; bottom: 0; width: 30%; height: 148px !important; }

/* ── SEARCH PANEL ── */
.event-search-panel { margin-top: -46px !important; position: relative; z-index: 10; }
.event-search-card {
  background: rgba(255,255,255,.96) !important;
  backdrop-filter: blur(24px) !important;
  border: 1px solid rgba(246,39,128,.12) !important;
  border-radius: 24px !important;
  box-shadow:
    0 24px 64px rgba(54,19,43,.14),
    0 0 0 1px rgba(255,255,255,.8) inset !important;
  padding: 16px !important;
  grid-template-columns: 1.3fr 1fr 1fr .85fr auto !important;
  gap: 10px !important;
  align-items: stretch !important;
}
.event-field {
  background: #fff !important;
  border: 1px solid #f0d7e2 !important;
  border-radius: 16px !important;
  padding: 12px 14px !important;
  transition: border-color .2s, box-shadow .2s !important;
}
.event-field:focus-within {
  border-color: rgba(246,39,128,.4) !important;
  box-shadow: 0 0 0 3px rgba(246,39,128,.08) !important;
}
.event-field label {
  font-size: 11px !important; font-weight: 900 !important;
  color: #7d5c6e !important; text-transform: uppercase !important;
  letter-spacing: .06em !important; display: block !important; margin-bottom: 5px !important;
}
.event-search-card .gg-btn-primary {
  align-self: stretch !important;
  border-radius: 16px !important;
  min-width: 100px !important;
  font-size: 14px !important;
}

/* ── EVENT TABS ── */
.event-tabs { display: flex; gap: 10px; flex-wrap: wrap; margin: 36px 0 22px; }
.event-tab {
  border: 1px solid var(--gg-border);
  background: white; color: #5f5360;
  border-radius: 999px; padding: 10px 20px;
  font-weight: 900; cursor: pointer;
  transition: all .2s !important;
}
.event-tab:hover:not(.active) {
  background: #fff0f6 !important; border-color: rgba(246,39,128,.3) !important;
}
.event-tab.active {
  background: var(--gg-pink) !important; color: white !important;
  box-shadow: 0 12px 28px rgba(246,39,128,.26) !important;
}

/* ── FILTER CARD ── */
.filter-card {
  border: 1px solid var(--gg-border) !important;
  background: rgba(255,255,255,.96) !important;
  border-radius: 24px !important;
  box-shadow: 0 12px 40px rgba(50,18,38,.07) !important;
  padding: 20px !important;
}

/* ── EVENT CARD BODY layout spacer ── */
.event-card h3 { margin: 0 0 6px !important; }
.meta-line { margin-bottom: 6px !important; }
.rating-line { margin: 10px 0 !important; }
.price-line { margin-bottom: 4px !important; }
.event-chip-row { margin-bottom: 12px !important; }

/* ── EVENT CARD: elegant hover shadow ── */
.event-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 26px 60px rgba(44,18,35,.16) !important;
}

/* ── RESULT TOP area ── */
.result-top h2 { font-size: 28px; letter-spacing: -.03em; }

/* ── LAYOUT GAPS ── */
.events-layout {
  display: grid !important;
  grid-template-columns: 270px 1fr !important;
  gap: 26px !important;
  padding: 22px 0 70px !important;
  align-items: start !important;
}

/* ── MOBILE FIXES ── */
@media (max-width: 1024px) {
  .events-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 900px) {
  .gg-events-main-hero .events-hero-grid {
    grid-template-columns: 1fr !important;
    padding: 32px 24px 38px !important;
    border-radius: 28px !important;
    min-height: auto !important;
  }
  .gg-events-main-hero .hero-media { min-height: 300px !important; }
  .events-layout { grid-template-columns: 1fr !important; }
  .filter-card { position: static !important; }
  .event-search-panel { margin-top: -28px !important; }
  .event-search-card { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 640px) {
  .gg-events-main-hero { padding: 28px 0 52px !important; }
  .gg-events-main-hero .events-hero-grid { padding: 24px 18px 28px !important; border-radius: 22px !important; }
  .gg-events-main-hero .hero-media { display: none !important; }
  .events-grid { grid-template-columns: 1fr !important; gap: 14px !important; }
  .event-search-card { grid-template-columns: 1fr !important; }
  .card-actions { grid-template-columns: 1fr 1fr !important; }
  .event-tabs { overflow-x: auto; flex-wrap: nowrap; }
}


/* ── V28 DEFINITIVE FIXES ─────────────────────────────────── */

/* FIX: Events hero media — matches home hero full-bleed style */
.events-hero-media-full {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 0 26px 26px 0 !important;
  min-height: 400px !important;
}
.events-hero-img-wrap {
  position: absolute !important;
  inset: 0 !important;
  display: grid !important;
  grid-template-columns: 1.3fr 0.7fr !important;
  gap: 0 !important;
}
.events-hero-main-img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center !important;
  display: block !important;
}
.events-hero-accent-img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center !important;
  display: block !important;
  border-left: 3px solid rgba(255,255,255,.25) !important;
}
.events-hero-floating-card {
  position: absolute !important;
  bottom: 22px !important; left: 22px !important;
  background: rgba(255,255,255,.95) !important;
  backdrop-filter: blur(16px) !important;
  border-radius: 16px !important;
  padding: 12px 16px !important;
  display: flex !important; align-items: center !important; gap: 10px !important;
  box-shadow: 0 12px 32px rgba(0,0,0,.18) !important;
  z-index: 5 !important;
}
.events-hero-floating-card span { font-size: 22px !important; }
.events-hero-floating-card strong {
  display: block !important; font-size: 13px !important;
  font-weight: 900 !important; color: #1f1020 !important; line-height: 1.2 !important;
}
.events-hero-floating-card small {
  display: block !important; font-size: 11px !important;
  color: #7a6b7e !important; font-weight: 700 !important;
}

/* Make events hero grid overflow:hidden so image fills the right panel */
.gg-events-main-hero .events-hero-grid {
  overflow: hidden !important;
  padding-right: 0 !important;
}
.gg-events-main-hero .events-hero-copy {
  padding: 44px 0 44px 52px !important;
}

/* FIX: event card buttons always at bottom, fully centered */
.event-card {
  display: flex !important; flex-direction: column !important; height: 100% !important;
}
.event-card .card-body,
.event-card > *:not(.event-img-wrap):not(.card-actions) {
  flex: 1 !important;
}
.event-card .card-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  padding: 0 16px 16px !important;
  margin-top: auto !important;
}
.event-card .card-actions .gg-btn {
  display: flex !important; align-items: center !important;
  justify-content: center !important; text-align: center !important;
  height: 40px !important; min-height: 40px !important;
  border-radius: 11px !important;
  font-size: 13px !important; font-weight: 900 !important;
}

/* FIX: events grid equal height */
.events-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}

@media (max-width: 900px) {
  .gg-events-main-hero .events-hero-copy { padding: 32px 24px !important; }
  .events-hero-media-full { border-radius: 0 0 22px 22px !important; min-height: 280px !important; }
  .events-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
@media (max-width: 600px) {
  .events-hero-media-full { display: none !important; }
  .gg-events-main-hero .events-hero-grid { overflow: visible !important; }
  .events-grid { grid-template-columns: 1fr !important; }
}

/* ============================================================
   V30.2 EVENTS MODERN REDESIGN
   Premium glass cards, stronger hero, cleaner event grid, and
   smoother responsive layout to match the modern GoGiftings UI.
   ============================================================ */
body.events-shell {
  background:
    radial-gradient(circle at 6% 2%, rgba(246,39,128,.16), transparent 28%),
    radial-gradient(circle at 92% 14%, rgba(90,26,147,.14), transparent 30%),
    linear-gradient(180deg, #fff8fc 0%, #ffffff 42%, #fff7fb 100%) !important;
}

.events-shell .events-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(54px, 7vw, 96px) 0 clamp(42px, 6vw, 76px) !important;
  background:
    radial-gradient(circle at 74% 18%, rgba(255,255,255,.30), transparent 24%),
    linear-gradient(135deg, #fff 0%, #fff2f8 46%, #f8edff 100%) !important;
  border-bottom: 1px solid rgba(236,191,212,.72) !important;
}

.events-shell .events-hero:before,
.events-shell .events-hero:after {
  content: "";
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
  filter: blur(.2px);
}
.events-shell .events-hero:before {
  width: 340px;
  height: 340px;
  right: -105px;
  top: -120px;
  background: rgba(246,39,128,.13);
}
.events-shell .events-hero:after {
  width: 230px;
  height: 230px;
  left: -90px;
  bottom: -80px;
  background: rgba(90,26,147,.12);
}

.events-shell .events-container {
  width: min(calc(100% - 32px), 1240px) !important;
}

.events-shell .events-hero-grid {
  position: relative;
  z-index: 2;
  display: grid !important;
  grid-template-columns: minmax(0, .98fr) minmax(420px, .82fr) !important;
  gap: clamp(26px, 5vw, 70px) !important;
  align-items: center !important;
}

.events-shell .events-kicker {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.84) !important;
  border: 1px solid rgba(246,39,128,.20) !important;
  box-shadow: 0 14px 34px rgba(90,26,147,.08) !important;
  color: #f62780 !important;
  font-weight: 950 !important;
  letter-spacing: .01em !important;
}

.events-shell .events-hero-copy h1 {
  margin: 18px 0 16px !important;
  max-width: 820px;
  color: #17111b !important;
  font-size: clamp(40px, 5vw, 74px) !important;
  line-height: .96 !important;
  letter-spacing: -.065em !important;
  font-weight: 1000 !important;
}

.events-shell .events-hero-copy p {
  max-width: 760px;
  color: #6f6370 !important;
  font-size: clamp(16px, 1.35vw, 20px) !important;
  line-height: 1.72 !important;
}

.events-shell .events-cta-row {
  display: flex !important;
  flex-wrap: wrap;
  gap: 14px !important;
  margin-top: 28px !important;
}

.events-shell .gg-btn,
.events-shell .event-search-card button,
.events-shell .card-actions .gg-btn {
  border-radius: 18px !important;
  font-weight: 950 !important;
  letter-spacing: -.01em !important;
  box-shadow: 0 14px 34px rgba(90,26,147,.12) !important;
}

.events-shell .gg-btn-primary {
  background: linear-gradient(135deg, #f62780 0%, #5a1a93 100%) !important;
  color: #fff !important;
  border: 0 !important;
}

.events-shell .gg-btn-soft {
  background: rgba(255,255,255,.82) !important;
  color: #5a1a93 !important;
  border: 1px solid rgba(236,191,212,.86) !important;
}

.events-shell .hero-media,
.events-shell .events-hero-img-wrap {
  min-height: clamp(360px, 41vw, 560px) !important;
}

.events-shell .events-hero-img-wrap {
  position: relative !important;
  border-radius: 38px !important;
  padding: 16px !important;
  background: rgba(255,255,255,.58) !important;
  border: 1px solid rgba(236,191,212,.78) !important;
  box-shadow: 0 34px 88px rgba(72,28,70,.17) !important;
  backdrop-filter: blur(18px) !important;
}

.events-shell .events-hero-main-img {
  width: 82% !important;
  height: 100% !important;
  min-height: 420px !important;
  object-fit: cover !important;
  border-radius: 30px !important;
  box-shadow: 0 26px 60px rgba(47,19,47,.18) !important;
}

.events-shell .events-hero-accent-img {
  position: absolute !important;
  right: 0 !important;
  bottom: 12px !important;
  width: 42% !important;
  height: 46% !important;
  object-fit: cover !important;
  border-radius: 26px !important;
  border: 8px solid rgba(255,255,255,.82) !important;
  box-shadow: 0 24px 56px rgba(47,19,47,.20) !important;
}

.events-shell .events-hero-floating-card {
  position: absolute !important;
  left: 18px !important;
  bottom: 24px !important;
  display: grid !important;
  gap: 2px !important;
  min-width: 190px;
  padding: 16px 18px !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(236,191,212,.72) !important;
  box-shadow: 0 22px 54px rgba(72,28,70,.14) !important;
  backdrop-filter: blur(16px) !important;
}

.events-shell .event-search-panel {
  position: relative !important;
  z-index: 5;
  margin-top: -32px !important;
  margin-bottom: 34px !important;
}

.events-shell .event-search-card {
  display: grid !important;
  grid-template-columns: 1.35fr .8fr .8fr 1fr auto !important;
  gap: 14px !important;
  align-items: end !important;
  padding: clamp(16px, 2.4vw, 24px) !important;
  border-radius: 30px !important;
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(236,191,212,.82) !important;
  box-shadow: 0 26px 70px rgba(76,25,72,.12) !important;
  backdrop-filter: blur(18px) !important;
}

.events-shell .event-field label,
.events-shell .filter-title,
.events-shell .filter-block h4 {
  color: #25182a !important;
  font-weight: 1000 !important;
}

.events-shell .event-field input,
.events-shell .event-field select,
.events-shell .sort-box {
  min-height: 48px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(236,191,212,.92) !important;
  background: #fff !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8) !important;
}

.events-shell .event-tabs {
  display: flex !important;
  gap: 12px !important;
  padding: 8px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.74) !important;
  border: 1px solid rgba(236,191,212,.74) !important;
  box-shadow: 0 16px 42px rgba(76,25,72,.08) !important;
  width: fit-content !important;
  max-width: 100% !important;
}

.events-shell .event-tab {
  border: 0 !important;
  border-radius: 999px !important;
  padding: 12px 18px !important;
  font-weight: 950 !important;
  background: transparent !important;
  color: #66566d !important;
}

.events-shell .event-tab.active {
  background: linear-gradient(135deg, #f62780, #5a1a93) !important;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(246,39,128,.22) !important;
}

.events-shell .events-layout {
  display: grid !important;
  grid-template-columns: 292px minmax(0,1fr) !important;
  gap: 24px !important;
  align-items: start !important;
}

.events-shell .filter-card,
.events-shell .event-card,
.events-shell .form-card,
.events-shell .booking-panel,
.events-shell .success-card {
  border-radius: 28px !important;
  border: 1px solid rgba(236,191,212,.78) !important;
  background: rgba(255,255,255,.88) !important;
  box-shadow: 0 22px 60px rgba(76,25,72,.10) !important;
  backdrop-filter: blur(14px) !important;
}

.events-shell .filter-card {
  position: sticky !important;
  top: 18px !important;
  padding: 20px !important;
}

.events-shell .result-top {
  display: flex !important;
  justify-content: space-between !important;
  gap: 18px !important;
  align-items: end !important;
  margin-bottom: 20px !important;
}

.events-shell .result-top h2 {
  margin: 0 0 6px !important;
  color: #17111b !important;
  font-size: clamp(24px, 2.6vw, 36px) !important;
  font-weight: 1000 !important;
  letter-spacing: -.04em !important;
}

.events-shell .result-top p {
  margin: 0 !important;
  color: #756a76 !important;
}

.events-shell .events-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 20px !important;
}

.events-shell .event-card {
  overflow: hidden !important;
  transform: translateZ(0);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

.events-shell .event-card:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(246,39,128,.34) !important;
  box-shadow: 0 30px 80px rgba(76,25,72,.16) !important;
}

.events-shell .event-card-img {
  height: 220px !important;
  border-radius: 0 0 26px 26px !important;
}

.events-shell .event-card-body {
  padding: 18px !important;
}

.events-shell .event-card h3 {
  color: #17111b !important;
  font-size: 20px !important;
  font-weight: 1000 !important;
  letter-spacing: -.025em !important;
}

.events-shell .badge-type,
.events-shell .event-chip {
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(236,191,212,.82) !important;
  color: #f62780 !important;
  box-shadow: 0 10px 24px rgba(76,25,72,.10) !important;
}

.events-shell .price-line {
  border-top: 1px solid rgba(236,191,212,.64) !important;
}

.events-shell .price-line strong {
  color: #f62780 !important;
  font-size: 21px !important;
  font-weight: 1000 !important;
}

.events-shell .detail-hero,
.events-shell .vendor-detail-hero {
  background:
    radial-gradient(circle at 80% 6%, rgba(246,39,128,.13), transparent 30%),
    linear-gradient(135deg, #fff, #fff3f9 52%, #f7edff) !important;
  border-bottom: 1px solid rgba(236,191,212,.78) !important;
}

.events-shell .detail-title {
  font-size: clamp(34px, 4.8vw, 62px) !important;
  line-height: 1 !important;
  font-weight: 1000 !important;
  letter-spacing: -.06em !important;
  color: #17111b !important;
}

.events-shell .gallery-main {
  border-radius: 34px !important;
  box-shadow: 0 34px 86px rgba(76,25,72,.15) !important;
}

@media (max-width: 1180px) {
  .events-shell .events-hero-grid,
  .events-shell .events-layout {
    grid-template-columns: 1fr !important;
  }
  .events-shell .filter-card {
    position: static !important;
  }
  .events-shell .event-search-card {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .events-shell .events-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  .events-shell .events-container {
    width: min(100% - 22px, 1240px) !important;
  }
  .events-shell .events-hero {
    padding-top: 42px !important;
  }
  .events-shell .events-hero-copy h1 {
    font-size: clamp(34px, 10vw, 48px) !important;
  }
  .events-shell .events-hero-img-wrap,
  .events-shell .hero-media {
    min-height: 310px !important;
  }
  .events-shell .events-hero-main-img {
    min-height: 280px !important;
    width: 100% !important;
  }
  .events-shell .events-hero-accent-img,
  .events-shell .events-hero-floating-card {
    display: none !important;
  }
  .events-shell .event-search-card,
  .events-shell .events-grid,
  .events-shell .card-actions,
  .events-shell .detail-wrap,
  .events-shell .vendor-layout,
  .events-shell .checkout-wrap,
  .events-shell .ai-panel {
    grid-template-columns: 1fr !important;
  }
  .events-shell .event-tabs {
    width: 100% !important;
    overflow-x: auto !important;
    border-radius: 24px !important;
  }
  .events-shell .event-tab {
    flex: 0 0 auto !important;
  }
  .events-shell .result-top {
    align-items: start !important;
    flex-direction: column !important;
  }
}


/* === V30.3 compact wide hero for event pages === */
.events-shell .gg-events-main-hero{
  padding:20px 0 34px !important;
}
.events-shell .gg-events-main-hero .events-hero-grid{
  grid-template-columns:minmax(330px,.82fr) minmax(520px,1.18fr) !important;
  min-height:340px !important;
  padding:26px 0 26px 34px !important;
  border-radius:30px !important;
  align-items:center !important;
}
.events-shell .gg-events-main-hero .events-hero-copy{
  padding:18px 10px 18px 18px !important;
}
.events-shell .gg-events-main-hero h1{
  font-size:clamp(32px,3.6vw,48px) !important;
  line-height:1.04 !important;
  margin:12px 0 10px !important;
  max-width:560px !important;
}
.events-shell .gg-events-main-hero p{
  font-size:15px !important;
  line-height:1.55 !important;
  max-width:560px !important;
  margin:0 !important;
}
.events-shell .events-cta-row{
  margin-top:16px !important;
}
.events-shell .gg-events-main-hero .hero-media,
.events-shell .events-hero-media-full,
.events-shell .events-hero-img-wrap{
  min-height:300px !important;
  height:300px !important;
}
.events-shell .events-hero-img-wrap{
  border-radius:28px 0 0 28px !important;
  padding:10px !important;
}
.events-shell .events-hero-main-img{
  width:88% !important;
  min-height:280px !important;
  height:280px !important;
  border-radius:24px !important;
}
.events-shell .events-hero-accent-img{
  width:34% !important;
  height:42% !important;
  right:8px !important;
  bottom:14px !important;
  border-radius:20px !important;
}
.events-shell .events-hero-floating-card{
  left:20px !important;
  bottom:16px !important;
  min-width:160px !important;
  padding:11px 13px !important;
  border-radius:16px !important;
}
.events-shell .event-search-panel{
  margin-top:-22px !important;
  margin-bottom:20px !important;
}
.events-shell .event-search-card{
  padding:14px !important;
  border-radius:22px !important;
  gap:10px !important;
}
.events-shell .event-tabs{
  margin:22px 0 14px !important;
}
@media(max-width:1100px){
  .events-shell .gg-events-main-hero .events-hero-grid{grid-template-columns:1fr !important;padding:24px !important;}
  .events-shell .events-hero-media-full{border-radius:24px !important;}
}
@media(max-width:720px){
  .events-shell .gg-events-main-hero{padding:16px 0 28px !important;}
  .events-shell .gg-events-main-hero .events-hero-grid{padding:20px !important;border-radius:22px !important;}
  .events-shell .gg-events-main-hero h1{font-size:clamp(30px,9vw,42px) !important;}
  .events-shell .events-hero-media-full{display:block !important;min-height:210px !important;height:210px !important;}
  .events-shell .events-hero-img-wrap{min-height:210px !important;height:210px !important;padding:8px !important;}
  .events-shell .events-hero-main-img{width:100% !important;height:194px !important;min-height:194px !important;}
  .events-shell .events-hero-accent-img,.events-shell .events-hero-floating-card{display:none !important;}
}

/* === V30.4 client polish: unified nav hover + compact events hero === */
.navbar a,
header .navbar a,
.navbar .container > a {
  min-height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  border: 1px solid transparent !important;
  background: transparent !important;
  color: #5b5162 !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transform: none !important;
  transition: background .22s ease, color .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}
.navbar a:hover,
.navbar a:focus-visible,
.navbar a.active,
header .navbar a:hover,
header .navbar a:focus-visible,
header .navbar a.active {
  background: linear-gradient(135deg, #f62780 0%, #74158f 100%) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 14px 28px rgba(116, 21, 143, .20), 0 8px 18px rgba(246, 39, 128, .18) !important;
  transform: none !important;
}
.navbar a:hover *,
.navbar a:focus-visible *,
.navbar a.active * {
  color: #fff !important;
}
body.gg-listing-page .navbar a.active,
body.gg-category-flowers .navbar a[href="listing.html"],
body.gg-category-cakes .navbar a[href="listing.html"],
body.gg-category-personalized .navbar a[href="listing.html"],
body.gg-category-personalised .navbar a[href="listing.html"] {
  background: transparent !important;
  color: #5b5162 !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
body.gg-category-flowers .navbar a[href*="category=flowers"],
body.gg-category-cakes .navbar a[href*="category=cakes"],
body.gg-category-personalized .navbar a[href*="category=personalized"],
body.gg-category-personalised .navbar a[href*="category=personalised"],
body.gg-category-personalized .navbar a[href*="category=personalised"],
body.gg-category-personalised .navbar a[href*="category=personalized"] {
  background: linear-gradient(135deg, #f62780 0%, #74158f 100%) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 14px 28px rgba(116, 21, 143, .20), 0 8px 18px rgba(246, 39, 128, .18) !important;
}
@media (max-width: 980px) {
  .navbar a,
  header .navbar a,
  .navbar .container > a {
    min-height: 40px !important;
    padding: 9px 15px !important;
    background: #fff !important;
    border-color: rgba(234, 216, 231, .85) !important;
    font-size: 13px !important;
  }
  .navbar a:hover,
  .navbar a:focus-visible,
  .navbar a.active,
  header .navbar a:hover,
  header .navbar a:focus-visible,
  header .navbar a.active {
    background: linear-gradient(135deg, #f62780 0%, #74158f 100%) !important;
    color: #fff !important;
    border-color: transparent !important;
  }
}

/* === V30.4 compact event hero: same visual width as home page === */
.events-shell .events-container {
  width: min(calc(100% - 48px), 1200px) !important;
  margin-inline: auto !important;
}
.events-shell .gg-events-main-hero {
  padding: 16px 0 24px !important;
}
.events-shell .gg-events-main-hero .events-hero-grid {
  width: 100% !important;
  max-width: 1200px !important;
  margin-inline: auto !important;
  grid-template-columns: minmax(340px, .94fr) minmax(440px, 1.06fr) !important;
  min-height: 300px !important;
  padding: 22px 22px 22px 30px !important;
  border-radius: 28px !important;
  overflow: hidden !important;
}
.events-shell .gg-events-main-hero .events-hero-copy {
  padding: 12px 8px 12px 12px !important;
}
.events-shell .gg-events-main-hero .events-hero-copy h1,
.events-shell .gg-events-main-hero h1 {
  font-size: clamp(30px, 3.15vw, 44px) !important;
  line-height: 1.02 !important;
  margin: 10px 0 8px !important;
  max-width: 520px !important;
}
.events-shell .gg-events-main-hero .events-hero-copy p,
.events-shell .gg-events-main-hero p {
  font-size: 14.5px !important;
  line-height: 1.5 !important;
  max-width: 520px !important;
}
.events-shell .events-cta-row {
  margin-top: 14px !important;
  gap: 10px !important;
}
.events-shell .events-cta-row .gg-btn-primary,
.events-shell .events-cta-row .gg-btn-soft {
  min-height: 42px !important;
  padding: 11px 17px !important;
  border-radius: 999px !important;
}
.events-shell .gg-events-main-hero .hero-media,
.events-shell .events-hero-media-full,
.events-shell .events-hero-img-wrap {
  min-height: 260px !important;
  height: 260px !important;
}
.events-shell .events-hero-img-wrap {
  padding: 8px !important;
  border-radius: 24px !important;
}
.events-shell .events-hero-main-img {
  width: 100% !important;
  height: 244px !important;
  min-height: 244px !important;
  border-radius: 20px !important;
  object-fit: cover !important;
}
.events-shell .events-hero-accent-img {
  width: 28% !important;
  height: 38% !important;
  right: 14px !important;
  bottom: 14px !important;
  border-radius: 16px !important;
}
.events-shell .events-hero-floating-card {
  left: 16px !important;
  bottom: 16px !important;
  min-width: 150px !important;
  padding: 10px 12px !important;
  border-radius: 16px !important;
}
.events-shell .event-search-panel {
  max-width: 1200px !important;
  margin: -14px auto 18px !important;
}
@media (max-width: 1100px) {
  .events-shell .gg-events-main-hero .events-hero-grid {
    grid-template-columns: 1fr !important;
    padding: 22px !important;
  }
  .events-shell .events-hero-media-full,
  .events-shell .events-hero-img-wrap {
    min-height: 240px !important;
    height: 240px !important;
  }
  .events-shell .events-hero-main-img {
    height: 224px !important;
    min-height: 224px !important;
  }
}
@media (max-width: 720px) {
  .events-shell .events-container {
    width: min(calc(100% - 24px), 1200px) !important;
  }
  .events-shell .gg-events-main-hero {
    padding: 12px 0 22px !important;
  }
  .events-shell .gg-events-main-hero .events-hero-grid {
    border-radius: 22px !important;
    padding: 18px !important;
  }
  .events-shell .events-hero-media-full,
  .events-shell .events-hero-img-wrap {
    min-height: 190px !important;
    height: 190px !important;
  }
  .events-shell .events-hero-main-img {
    height: 174px !important;
    min-height: 174px !important;
  }
}

/* === V30.7 NAV VISIBILITY + FIT HOTFIX (events layer override) === */
header .navbar > .container,
.navbar > .container,
.header-main .navbar .container {
  display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap!important;gap:clamp(6px,.8vw,14px)!important;width:min(100%,1580px)!important;max-width:1580px!important;margin-inline:auto!important;padding-inline:clamp(22px,3.2vw,68px)!important;overflow:visible!important;
}
header .navbar a,.navbar a,.navbar .container>a,.navbar a[href="influencer.html"],.navbar a[href="events.html"]{display:inline-flex!important;visibility:visible!important;opacity:1!important;flex:0 1 auto!important;min-width:0!important;white-space:nowrap!important;padding:10px clamp(8px,1vw,16px)!important;font-size:clamp(13px,.95vw,16px)!important;border-radius:999px!important;}
header .navbar a:hover,header .navbar a:focus-visible,header .navbar a.active,.navbar a:hover,.navbar a:focus-visible,.navbar a.active{background:linear-gradient(135deg,#f62780 0%,#74158f 100%)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 12px 26px rgba(116,21,143,.18),0 7px 16px rgba(246,39,128,.16)!important;}
@media(max-width:1180px){header .navbar>.container,.navbar>.container,.header-main .navbar .container{justify-content:flex-start!important;overflow-x:auto!important;scrollbar-width:thin!important;padding-inline:18px!important}header .navbar a,.navbar a,.navbar .container>a{flex:0 0 auto!important}}
