/*
  DaGuest Pro — Elementor Bridge
  Full corrected replacement file
  Purpose:
  - keep Elementor layouts stable
  - stop hero sections from breaking
  - preserve editable background images
  - keep hero text readable
  - maintain premium card and nav-page presentation
*/

/* ========================================================================
   GLOBAL ELEMENTOR FOUNDATION
   ======================================================================== */
body.elementor-default .site,
body.elementor-default .site-main,
body.elementor-page .site,
body.elementor-page .site-main{
  min-width:0;
}

.elementor-widget-container img{
  display:block;
  max-width:100%;
  height:auto;
}

.elementor-section.elementor-section-boxed > .elementor-container,
.elementor-container{
  max-width:1240px;
}

body.page-template-page-elementor .entry-header,
body.page-template-page-elementor .page-header,
body.page-template-page-elementor .wp-block-post-title{
  display:none;
}

body.page-template-page-elementor .entry-content,
body.page-template-page-elementor .post-content,
body.page-template-page-elementor .site-main{
  margin:0;
  padding:0;
}

body .elementor-location-header + .site,
body .elementor-location-header + #page{
  padding-top:0;
}

.dgp-elementor-canvas .dgp-header,
.dgp-elementor-canvas .dgp-footer{
  display:none;
}

.elementor-widget-shortcode .dgp-grid,
.elementor-widget-shortcode .dgp-scroll-row{
  width:100%;
}

/* ========================================================================
   DGP COMMERCIAL STARTER BLOCKS
   ======================================================================== */
.elementor-widget-text-editor .dgp-el-panel,
.elementor-widget-shortcode .dgp-business-cta-card{
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  box-shadow:0 20px 60px rgba(0,0,0,.32);
}

.elementor-widget-text-editor .dgp-el-panel-hero{
  padding:22px 24px;
  backdrop-filter:blur(8px);
}

.elementor-widget-text-editor .dgp-el-panel-search{
  padding:0;
  background:none;
  border:none;
  box-shadow:none;
}

.elementor-widget-text-editor .dgp-el-kicker{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(212,166,58,.12);
  border:1px solid rgba(212,166,58,.22);
  color:#F0C96A;
  font-weight:800;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.elementor-widget-text-editor .dgp-el-title,
.elementor-widget-text-editor .dgp-el-section-title{
  margin:14px 0 12px;
  color:#F5F7FA;
  font-weight:800;
  line-height:1.08;
}

.elementor-widget-text-editor .dgp-el-title{
  font-size:clamp(30px, 4.2vw, 50px);
}

.elementor-widget-text-editor .dgp-el-card-title{
  margin:14px 0 10px;
  font-size:24px;
  color:#F5F7FA;
}

.elementor-widget-text-editor .dgp-el-lede,
.elementor-widget-text-editor .dgp-el-panel-text,
.elementor-widget-text-editor .dgp-el-section-text{
  color:#D7DEE6;
  line-height:1.75;
  font-size:17px;
}

.elementor-widget-text-editor .dgp-el-buttonrow{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin:22px 0 24px;
}

.elementor-widget-text-editor .dgp-el-statrow{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}

.elementor-widget-text-editor .dgp-el-stat{
  padding:16px 18px;
  border-radius:18px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}

.elementor-widget-text-editor .dgp-el-stat strong{
  display:block;
  color:#F5F7FA;
  font-size:28px;
  line-height:1;
  margin-bottom:8px;
}

.elementor-widget-text-editor .dgp-el-stat span{
  color:#AAB4C0;
  font-size:14px;
}

.elementor-widget-text-editor .dgp-el-chiprow{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}

.elementor-widget-text-editor .dgp-el-chip{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(212,166,58,.08);
  border:1px solid rgba(212,166,58,.16);
  color:#F0C96A;
  font-weight:700;
  font-size:13px;
}

.elementor-widget-text-editor .dgp-el-section-intro{
  margin-bottom:18px;
}

.elementor-widget-text-editor .dgp-el-section-head{
  display:flex;
  gap:18px;
  align-items:flex-end;
  justify-content:space-between;
}

.elementor-widget-text-editor .dgp-el-section-title{
  font-size:clamp(24px, 2.6vw, 36px);
  margin-bottom:10px;
}

.elementor-widget-text-editor .dgp-el-callout-grid,
.elementor-widget-text-editor .dgp-el-contact-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
}

.elementor-widget-text-editor .dgp-el-callout-card,
.elementor-widget-text-editor .dgp-el-contact-card{
  padding:22px;
  border-radius:20px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 14px 40px rgba(0,0,0,.18);
}

.elementor-widget-text-editor .dgp-el-callout-card h3,
.elementor-widget-text-editor .dgp-el-contact-card h3{
  color:#F5F7FA;
  font-size:20px;
  margin:12px 0 10px;
}

.elementor-widget-text-editor .dgp-el-callout-card p,
.elementor-widget-text-editor .dgp-el-contact-card p{
  color:#D7DEE6;
  line-height:1.7;
}

.elementor-widget-shortcode .dgp-searchbar{
  margin-top:0;
}

.elementor-widget-shortcode .dgp-searchbar input{
  min-height:52px;
  border-radius:14px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:#F5F7FA;
  padding:0 16px;
}

.elementor-widget-shortcode .dgp-searchbar .dgp-btn{
  min-height:52px;
}

@media (max-width:1024px){
  .elementor-widget-text-editor .dgp-el-statrow,
  .elementor-widget-text-editor .dgp-el-callout-grid,
  .elementor-widget-text-editor .dgp-el-contact-grid{
    grid-template-columns:1fr;
  }

  .elementor-widget-text-editor .dgp-el-section-head{
    flex-direction:column;
    align-items:flex-start;
  }
}

/* ========================================================================
   FIRST-SECTION HERO TIGHTENING
   ======================================================================== */
body.elementor-page .elementor-section:first-of-type .dgp-el-title,
body.page-template-page-elementor .elementor-section:first-of-type .dgp-el-title{
  max-width:15ch;
}

body.elementor-page .elementor-section:first-of-type .elementor-column-gap-extended,
body.page-template-page-elementor .elementor-section:first-of-type .elementor-column-gap-extended{
  align-items:center;
}

/* ========================================================================
   REFINED NAVIGATION PAGE HEROES
   ======================================================================== */
body.elementor-page .dgp-page-hero,
body.page-template-page-elementor .dgp-page-hero{
  overflow:visible;
  background-color:transparent !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:cover !important;
  isolation:isolate;
}

body.elementor-page .dgp-page-hero > .elementor-container,
body.page-template-page-elementor .dgp-page-hero > .elementor-container{
  position:relative;
  overflow:hidden;
  align-items:center;
  gap:28px;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.08);
  background:transparent !important;
  box-shadow:0 28px 90px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04);
  isolation:isolate;
}

body.elementor-page .dgp-page-hero > .elementor-container::before,
body.page-template-page-elementor .dgp-page-hero > .elementor-container::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(112deg, rgba(8,12,18,.08) 0%, rgba(8,12,18,.02) 42%, rgba(8,12,18,0) 100%),
    radial-gradient(620px 320px at 12% 10%, rgba(245,200,75,.08), transparent 65%),
    radial-gradient(760px 380px at 88% 14%, rgba(126,92,255,.06), transparent 66%) !important;
  opacity:.72 !important;
  pointer-events:none;
  z-index:0;
}

body.elementor-page .dgp-page-hero > .elementor-container > .elementor-column,
body.page-template-page-elementor .dgp-page-hero > .elementor-container > .elementor-column,
body.elementor-page .dgp-page-hero > .elementor-container > .e-con,
body.page-template-page-elementor .dgp-page-hero > .elementor-container > .e-con,
body.elementor-page .dgp-page-hero > .elementor-container > .e-con-inner,
body.page-template-page-elementor .dgp-page-hero > .elementor-container > .e-con-inner{
  position:relative;
  z-index:1;
}

body.elementor-page .dgp-page-hero__main > .elementor-element-populated,
body.page-template-page-elementor .dgp-page-hero__main > .elementor-element-populated{
  display:flex;
  flex-direction:column;
  justify-content:center;
  height:100%;
  background:linear-gradient(180deg, rgba(9,14,20,.16), rgba(9,14,20,.06)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  backdrop-filter:blur(8px);
}

body.elementor-page .dgp-page-hero__aside > .elementor-element-populated,
body.page-template-page-elementor .dgp-page-hero__aside > .elementor-element-populated{
  display:flex;
  flex-direction:column;
  justify-content:center;
  height:100%;
  background:linear-gradient(180deg, rgba(9,14,20,.16), rgba(9,14,20,.06)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  backdrop-filter:blur(8px);
}

body.elementor-page .dgp-page-hero .dgp-el-panel-hero,
body.page-template-page-elementor .dgp-page-hero .dgp-el-panel-hero{
  padding:20px 22px 18px;
  border-radius:26px;
  max-width:640px;
  background:transparent !important;
  box-shadow:none !important;
}

body.elementor-page .dgp-page-hero .dgp-el-title,
body.page-template-page-elementor .dgp-page-hero .dgp-el-title{
  font-size:clamp(30px, 3.7vw, 46px);
  line-height:1.02;
  letter-spacing:-0.03em;
  margin:10px 0 10px;
  max-width:15.5ch;
  color:#fff !important;
  text-shadow:
    0 2px 6px rgba(0,0,0,.45),
    0 10px 28px rgba(0,0,0,.28);
}

body.elementor-page .dgp-page-hero .dgp-el-lede,
body.page-template-page-elementor .dgp-page-hero .dgp-el-lede{
  font-size:15.5px;
  line-height:1.65;
  max-width:60ch;
  text-shadow:0 2px 12px rgba(0,0,0,.28);
}

body.elementor-page .dgp-page-hero .dgp-el-buttonrow,
body.page-template-page-elementor .dgp-page-hero .dgp-el-buttonrow{
  margin:16px 0 18px;
  gap:12px;
}

body.elementor-page .dgp-page-hero .dgp-el-statrow,
body.page-template-page-elementor .dgp-page-hero .dgp-el-statrow{
  gap:10px;
  margin-top:14px;
}

body.elementor-page .dgp-page-hero .dgp-el-stat,
body.page-template-page-elementor .dgp-page-hero .dgp-el-stat{
  padding:14px 14px 13px;
  border-radius:16px;
}

body.elementor-page .dgp-page-hero .dgp-el-stat strong,
body.page-template-page-elementor .dgp-page-hero .dgp-el-stat strong{
  font-size:22px;
  margin-bottom:6px;
}

body.elementor-page .dgp-page-hero .dgp-el-stat span,
body.page-template-page-elementor .dgp-page-hero .dgp-el-stat span{
  font-size:13px;
  line-height:1.35;
}

body.elementor-page .dgp-page-hero__aside--media .elementor-widget-image,
body.page-template-page-elementor .dgp-page-hero__aside--media .elementor-widget-image{
  width:100%;
}

body.elementor-page .dgp-page-hero__aside--media .elementor-widget-image img,
body.page-template-page-elementor .dgp-page-hero__aside--media .elementor-widget-image img{
  width:100%;
  min-height:360px;
  max-height:430px;
  object-fit:cover;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 24px 70px rgba(0,0,0,.34);
}

body.elementor-page .dgp-page-hero__aside--search > .elementor-element-populated,
body.page-template-page-elementor .dgp-page-hero__aside--search > .elementor-element-populated{
  gap:12px;
}

body.elementor-page .dgp-page-hero__aside--search .dgp-el-panel-search,
body.page-template-page-elementor .dgp-page-hero__aside--search .dgp-el-panel-search{
  padding:0;
}

body.elementor-page .dgp-page-hero__aside--search .dgp-searchbar,
body.page-template-page-elementor .dgp-page-hero__aside--search .dgp-searchbar{
  margin-top:4px;
}

body.elementor-page .dgp-page-hero__aside--search .dgp-el-chiprow,
body.page-template-page-elementor .dgp-page-hero__aside--search .dgp-el-chiprow{
  margin-top:6px;
}

body.elementor-page .dgp-page-hero__aside--contact .dgp-el-chiprow,
body.page-template-page-elementor .dgp-page-hero__aside--contact .dgp-el-chiprow{
  margin-top:0;
  gap:12px;
}

body.elementor-page .dgp-page-hero .elementor-background-overlay,
body.page-template-page-elementor .dgp-page-hero .elementor-background-overlay{
  opacity:.14 !important;
}

@media (max-width:1024px){
  body.elementor-page .dgp-page-hero > .elementor-container,
  body.page-template-page-elementor .dgp-page-hero > .elementor-container{
    gap:20px;
  }

  body.elementor-page .dgp-page-hero .dgp-el-title,
  body.page-template-page-elementor .dgp-page-hero .dgp-el-title{
    max-width:16ch;
  }
}

@media (max-width:767px){
  body.elementor-page .dgp-page-hero,
  body.page-template-page-elementor .dgp-page-hero{
    padding-top:0;
  }

  body.elementor-page .dgp-page-hero > .elementor-container,
  body.page-template-page-elementor .dgp-page-hero > .elementor-container{
    gap:18px;
    border-radius:24px;
  }

  body.elementor-page .dgp-page-hero .dgp-el-panel-hero,
  body.page-template-page-elementor .dgp-page-hero .dgp-el-panel-hero{
    padding:18px 18px 16px;
  }

  body.elementor-page .dgp-page-hero .dgp-el-title,
  body.page-template-page-elementor .dgp-page-hero .dgp-el-title{
    font-size:clamp(26px, 8vw, 36px);
    max-width:none;
  }

  body.elementor-page .dgp-page-hero .dgp-el-buttonrow,
  body.page-template-page-elementor .dgp-page-hero .dgp-el-buttonrow{
    gap:10px;
  }

  body.elementor-page .dgp-page-hero .dgp-el-statrow,
  body.page-template-page-elementor .dgp-page-hero .dgp-el-statrow{
    grid-template-columns:1fr;
  }

  body.elementor-page .dgp-page-hero__aside--media .elementor-widget-image img,
  body.page-template-page-elementor .dgp-page-hero__aside--media .elementor-widget-image img{
    min-height:240px;
    max-height:300px;
  }
}

/* ========================================================================
   DGP CUSTOM NAV PAGE HERO BLOCKS PASTED INTO ELEMENTOR HTML WIDGETS
   ======================================================================== */
.dgp-image-marker,
.dgp-events-video-marker,
.dgp-talents-image-marker,
.dgp-venues-image-marker,
.dgp-directory-image-marker{
  display:none !important;
}

.dgp-hero-wrap,
.dgp-events-hero-wrap,
.dgp-talents-hero-wrap,
.dgp-venues-hero-wrap,
.dgp-directory-hero-wrap{
  --dgp-hero-accent: rgba(240,201,106,.20);
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:30px;
  background:
    linear-gradient(180deg, rgba(9,13,18,.84), rgba(11,17,24,.92)),
    var(--hero-image, var(--events-hero-bg, var(--talents-hero-bg, var(--venues-hero-bg, var(--directory-hero-bg)))));
  background-size:cover;
  background-position:center;
  box-shadow:0 28px 80px rgba(0,0,0,.34);
  margin:0 0 24px;
}

.dgp-events-hero-wrap{ --dgp-hero-accent: rgba(80,154,255,.18); }
.dgp-talents-hero-wrap{ --dgp-hero-accent: rgba(57,217,138,.16); }
.dgp-venues-hero-wrap{ --dgp-hero-accent: rgba(240,201,106,.16); }
.dgp-directory-hero-wrap{ --dgp-hero-accent: rgba(160,126,255,.16); }

.dgp-hero-wrap::before,
.dgp-events-hero-wrap::before,
.dgp-talents-hero-wrap::before,
.dgp-venues-hero-wrap::before,
.dgp-directory-hero-wrap::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(520px 240px at 12% 18%, var(--dgp-hero-accent), transparent 66%),
    linear-gradient(90deg, rgba(10,14,19,.90) 0%, rgba(10,14,19,.82) 48%, rgba(10,14,19,.68) 100%);
  pointer-events:none;
}

.dgp-hero-grid,
.dgp-events-hero-grid,
.dgp-talents-hero-grid,
.dgp-venues-hero-grid,
.dgp-directory-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:22px;
  align-items:center;
  min-height:420px;
  padding:34px;
}

.dgp-hero-copy,
.dgp-events-hero-copy,
.dgp-talents-hero-copy,
.dgp-venues-hero-copy,
.dgp-directory-hero-copy,
.dgp-hero-side,
.dgp-events-hero-side,
.dgp-talents-hero-side,
.dgp-venues-hero-side,
.dgp-directory-hero-side{
  min-width:0;
}

.dgp-eyebrow,
.dgp-events-eyebrow,
.dgp-talents-eyebrow,
.dgp-venues-eyebrow,
.dgp-directory-eyebrow,
.dgp-events-video-label,
.dgp-talents-feature-label,
.dgp-venues-reel-label,
.dgp-directory-feature-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(240,201,106,.22);
  background:rgba(240,201,106,.10);
  color:#F7D986;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.dgp-hero-copy h1,
.dgp-events-hero-copy h1,
.dgp-talents-hero-copy h1,
.dgp-venues-hero-copy h1,
.dgp-directory-hero-copy h1{
  margin:14px 0 12px;
  max-width:13ch;
  color:#F8FBFF;
  font-family:var(--dgp-font);
  font-size:clamp(30px, 3.2vw, 42px);
  line-height:1.02;
  letter-spacing:-.04em;
}

.dgp-hero-lead,
.dgp-events-hero-lead,
.dgp-talents-hero-lead,
.dgp-venues-hero-lead,
.dgp-directory-hero-lead,
.dgp-search-card p,
.dgp-events-video-note,
.dgp-talents-feature-copy p,
.dgp-venues-reel-copy p,
.dgp-directory-feature-copy p{
  margin:0;
  color:#D7E0E9;
  font-size:15.5px;
  line-height:1.68;
  max-width:60ch;
}

.dgp-hero-actions,
.dgp-events-hero-actions,
.dgp-talents-hero-actions,
.dgp-venues-hero-actions,
.dgp-directory-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:18px 0 18px;
}

.dgp-btn,
.dgp-events-btn,
.dgp-talents-btn,
.dgp-venues-btn,
.dgp-directory-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 16px;
  border-radius:14px;
  font-family:var(--dgp-font);
  font-size:14px;
  font-weight:800;
  text-decoration:none;
  transition:all .18s ease;
}

.dgp-btn-primary,
.dgp-events-btn-primary,
.dgp-talents-btn-primary,
.dgp-venues-btn-primary,
.dgp-directory-btn-primary{
  background:linear-gradient(135deg, #F0C96A, #D4A63A);
  color:#0A0E14 !important;
  border:1px solid rgba(240,201,106,.35);
}

.dgp-btn-secondary,
.dgp-events-btn-secondary,
.dgp-talents-btn-secondary,
.dgp-venues-btn-secondary,
.dgp-directory-btn-secondary{
  background:rgba(255,255,255,.08);
  color:#F6F8FB !important;
  border:1px solid rgba(255,255,255,.15);
}

.dgp-btn-ghost{
  background:transparent;
  color:#E8EDF2 !important;
  border:1px solid rgba(255,255,255,.14);
}

.dgp-hero-stats,
.dgp-hero-meta,
.dgp-events-hero-meta,
.dgp-talents-hero-meta,
.dgp-venues-hero-meta,
.dgp-directory-hero-meta,
.dgp-talents-feature-tags,
.dgp-venues-reel-tags,
.dgp-directory-feature-tags,
.dgp-hero-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.dgp-stat-card,
.dgp-hero-meta span,
.dgp-events-hero-meta span,
.dgp-talents-hero-meta span,
.dgp-venues-hero-meta span,
.dgp-directory-hero-meta span,
.dgp-talents-feature-tags span,
.dgp-venues-reel-tags span,
.dgp-directory-feature-tags span,
.dgp-hero-tags span{
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.06);
  color:#EAF0F6;
  font-size:13px;
  line-height:1.35;
}

.dgp-stat-card strong{
  display:block;
  margin-bottom:4px;
  color:#FFF8DD;
  font-size:20px;
  line-height:1;
}

.dgp-stat-card span{
  display:block;
  color:#D0D9E2;
  font-size:12px;
}

.dgp-search-card,
.dgp-events-video-card,
.dgp-talents-feature-card,
.dgp-venues-reel-card,
.dgp-directory-feature-card{
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border-radius:24px;
  backdrop-filter:blur(10px);
  box-shadow:0 20px 60px rgba(0,0,0,.26);
  padding:18px;
}

.dgp-search-card h3,
.dgp-talents-feature-copy h3,
.dgp-venues-reel-copy h3,
.dgp-directory-feature-copy h3{
  margin:12px 0 10px;
  color:#F8FBFF;
  font-size:22px;
  line-height:1.15;
  letter-spacing:-.03em;
}

.dgp-events-video-head,
.dgp-talents-feature-top,
.dgp-venues-reel-top,
.dgp-directory-feature-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px;
}

.dgp-events-video-dot,
.dgp-talents-feature-badge,
.dgp-venues-reel-badge,
.dgp-directory-feature-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:70px;
  min-height:32px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#F6F8FB;
  font-size:12px;
  font-weight:800;
}

.dgp-events-video-dot{
  min-width:12px;
  min-height:12px;
  padding:0;
  border-radius:50%;
  background:#39D98A;
  box-shadow:0 0 0 6px rgba(57,217,138,.16);
  border:none;
}

.dgp-hero-search{
  display:grid;
  grid-template-columns:minmax(0,1fr) 120px;
  gap:10px;
  margin:14px 0 14px;
}

.dgp-hero-search input{
  min-height:50px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(9,13,18,.72);
  color:#F6F8FB;
  padding:0 14px;
  font-family:var(--dgp-font);
}

.dgp-hero-search button{
  min-height:50px;
  border:none;
  border-radius:14px;
  background:linear-gradient(135deg, #F0C96A, #D4A63A);
  color:#0A0E14;
  font-weight:800;
  font-family:var(--dgp-font);
}

.dgp-events-video-frame,
.dgp-talents-feature-media,
.dgp-venues-reel-media,
.dgp-directory-feature-media{
  overflow:hidden;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:#0D1219;
}

.dgp-events-video,
.dgp-talents-feature-media img,
.dgp-venues-reel-media img,
.dgp-directory-feature-media img{
  display:block;
  width:100%;
  height:260px;
  object-fit:cover;
}

@media (max-width:1024px){
  .dgp-hero-grid,
  .dgp-events-hero-grid,
  .dgp-talents-hero-grid,
  .dgp-venues-hero-grid,
  .dgp-directory-hero-grid{
    grid-template-columns:1fr;
    min-height:auto;
    padding:26px;
  }

  .dgp-hero-copy h1,
  .dgp-events-hero-copy h1,
  .dgp-talents-hero-copy h1,
  .dgp-venues-hero-copy h1,
  .dgp-directory-hero-copy h1{
    max-width:15ch;
  }
}

@media (max-width:767px){
  .dgp-hero-wrap,
  .dgp-events-hero-wrap,
  .dgp-talents-hero-wrap,
  .dgp-venues-hero-wrap,
  .dgp-directory-hero-wrap{
    border-radius:22px;
  }

  .dgp-hero-grid,
  .dgp-events-hero-grid,
  .dgp-talents-hero-grid,
  .dgp-venues-hero-grid,
  .dgp-directory-hero-grid{
    padding:20px;
    gap:16px;
  }

  .dgp-hero-copy h1,
  .dgp-events-hero-copy h1,
  .dgp-talents-hero-copy h1,
  .dgp-venues-hero-copy h1,
  .dgp-directory-hero-copy h1{
    max-width:none;
    font-size:clamp(24px, 8vw, 32px);
  }

  .dgp-search-card,
  .dgp-events-video-card,
  .dgp-talents-feature-card,
  .dgp-venues-reel-card,
  .dgp-directory-feature-card{
    padding:16px;
    border-radius:20px;
  }

  .dgp-hero-search{
    grid-template-columns:1fr;
  }

  .dgp-events-video,
  .dgp-talents-feature-media img,
  .dgp-venues-reel-media img,
  .dgp-directory-feature-media img{
    height:220px;
  }
}

/* ========================================================================
   HUB PAGE ELEMENTOR HERO TREATMENT
   ======================================================================== */
body.dgp-elementor-hub-page .elementor-top-section:first-of-type,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type{
  position:relative;
  overflow:hidden;
  min-height:clamp(420px, 72vh, 760px);
  background-color:transparent !important;
}

body.dgp-elementor-hub-page .elementor-top-section:first-of-type > .elementor-background-overlay,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type > .elementor-background-overlay{
  opacity:1 !important;
  background:
    linear-gradient(110deg, rgba(8,12,18,.78) 0%, rgba(8,12,18,.58) 38%, rgba(8,12,18,.42) 100%),
    radial-gradient(700px 320px at 16% 22%, rgba(205,164,52,.20), transparent 62%),
    radial-gradient(760px 360px at 82% 18%, rgba(122,86,255,.14), transparent 66%) !important;
}

body.dgp-elementor-hub-page .elementor-top-section:first-of-type > .elementor-container,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type > .elementor-container{
  position:relative;
  z-index:2;
  align-items:center;
  min-height:inherit;
}

body.dgp-elementor-hub-page .elementor-top-section:first-of-type .elementor-widget-heading h1,
body.dgp-elementor-hub-page .elementor-top-section:first-of-type .elementor-heading-title,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type .elementor-widget-heading h1,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type .elementor-heading-title{
  color:#F8FBFF;
  text-shadow:0 10px 28px rgba(0,0,0,.34);
}

body.dgp-elementor-hub-page .elementor-top-section:first-of-type .elementor-widget-text-editor,
body.dgp-elementor-hub-page .elementor-top-section:first-of-type .elementor-widget-text-editor p,
body.dgp-elementor-hub-page .elementor-top-section:first-of-type .elementor-widget-icon-list,
body.dgp-elementor-hub-page .elementor-top-section:first-of-type .elementor-icon-list-text,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type .elementor-widget-text-editor,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type .elementor-widget-text-editor p,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type .elementor-widget-icon-list,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type .elementor-icon-list-text{
  color:rgba(244,247,251,.92);
}

body.dgp-elementor-hub-page .elementor-top-section:first-of-type .elementor-column > .elementor-element-populated,
body.dgp-elementor-hub-page .elementor-top-section:first-of-type .elementor-widget-wrap,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type .elementor-column > .elementor-element-populated,
body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type .elementor-widget-wrap{
  position:relative;
  z-index:2;
}

/* Optional manual hero utility classes */
.dgp-hero-transparent,
.elementor-section.dgp-hero-transparent{
  position:relative;
  overflow:hidden;
  background-color:transparent !important;
}

.dgp-hero-transparent > .elementor-background-overlay{
  opacity:1 !important;
  background:
    linear-gradient(110deg, rgba(8,12,18,.78) 0%, rgba(8,12,18,.58) 38%, rgba(8,12,18,.42) 100%),
    radial-gradient(700px 320px at 16% 22%, rgba(205,164,52,.20), transparent 62%) !important;
}

.dgp-hero-transparent > .elementor-container{
  position:relative;
  z-index:2;
}

.dgp-hero-copy-panel > .elementor-element-populated,
.dgp-hero-copy-panel.elementor-widget-wrap,
.dgp-hero-copy-panel{
  background:linear-gradient(180deg, rgba(10,14,20,.34), rgba(10,14,20,.18));
  backdrop-filter:blur(6px);
  border-radius:28px;
}

@media (max-width:767px){
  body.dgp-elementor-hub-page .elementor-top-section:first-of-type,
  body.dgp-elementor-hub-page .elementor-location-single .elementor-top-section:first-of-type{
    min-height:clamp(360px, 62vh, 560px);
  }
}

/* ========================================================================
   HERO VISIBILITY SAFETY PATCHES
   ======================================================================== */
body.elementor-page .dgp-home-hero,
body.page-template-page-elementor .dgp-home-hero{
  background-color:transparent !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:center center !important;
}

body.elementor-page .dgp-page-hero,
body.page-template-page-elementor .dgp-page-hero{
  background-color:transparent !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:center center !important;
}

.dgp-home-hero,
body.elementor-page .dgp-home-hero,
body.page-template-page-elementor .dgp-home-hero,
.dgp-page-hero,
body.elementor-page .dgp-page-hero,
body.page-template-page-elementor .dgp-page-hero{
  background-color:transparent !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:cover !important;
  isolation:isolate;
}

.dgp-home-hero::before,
.dgp-home-hero::after{
  opacity:.45 !important;
}

.dgp-page-hero > .elementor-container::before,
body.elementor-page .dgp-page-hero > .elementor-container::before,
body.page-template-page-elementor .dgp-page-hero > .elementor-container::before{
  background:
    linear-gradient(112deg, rgba(8,12,18,.08) 0%, rgba(8,12,18,.02) 42%, rgba(8,12,18,0) 100%),
    radial-gradient(620px 320px at 12% 10%, rgba(245,200,75,.08), transparent 65%),
    radial-gradient(760px 380px at 88% 14%, rgba(126,92,255,.06), transparent 66%) !important;
  opacity:.72 !important;
}

.dgp-page-hero .elementor-background-overlay,
.dgp-home-hero .elementor-background-overlay,
body.elementor-page .dgp-page-hero .elementor-background-overlay,
body.page-template-page-elementor .dgp-page-hero .elementor-background-overlay,
body.elementor-page .dgp-home-hero .elementor-background-overlay,
body.page-template-page-elementor .dgp-home-hero .elementor-background-overlay{
  opacity:.14 !important;
}

.dgp-page-hero__main > .elementor-element-populated,
.dgp-page-hero__aside > .elementor-element-populated,
body.elementor-page .dgp-page-hero__main > .elementor-element-populated,
body.page-template-page-elementor .dgp-page-hero__main > .elementor-element-populated,
body.elementor-page .dgp-page-hero__aside > .elementor-element-populated,
body.page-template-page-elementor .dgp-page-hero__aside > .elementor-element-populated,
.dgp-home-hero__copy,
.dgp-home-panel{
  background:linear-gradient(180deg, rgba(9,14,20,.16), rgba(9,14,20,.06)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  backdrop-filter:blur(8px);
}


/* ========================================================================
   CULTURE PAGE EDITOR HELPERS
   ======================================================================== */
.elementor-widget-text-editor .dgp-culture-state-grid,
.elementor-widget-text-editor .dgp-culture-path-grid-fixed{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.elementor-widget-text-editor .dgp-culture-state-card,
.elementor-widget-text-editor .dgp-culture-path-card{
  padding:22px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
}
@media (max-width: 1024px){
  .elementor-widget-text-editor .dgp-culture-state-grid,
  .elementor-widget-text-editor .dgp-culture-path-grid-fixed{grid-template-columns:1fr 1fr;}
}
@media (max-width: 767px){
  .elementor-widget-text-editor .dgp-culture-state-grid,
  .elementor-widget-text-editor .dgp-culture-path-grid-fixed{grid-template-columns:1fr;}
}
