.elementor-14 .elementor-element.elementor-element-d687fcc{--display:flex;}.elementor-14 .elementor-element.elementor-element-d687fcc:not(.elementor-motion-effects-element-type-background), .elementor-14 .elementor-element.elementor-element-d687fcc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://divineicecream.co.uk/wp-content/uploads/2025/12/gallery_6.jpg");background-position:center center;background-size:cover;}.elementor-14 .elementor-element.elementor-element-a7a8e0e{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-14 .elementor-element.elementor-element-acbf5dd{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}:root{--page-title-display:none;}/* Start custom CSS *//* =========================================================
   Divine Ice Cream – Our Story (Premium Design)
   Requires Elementor classes:
   - di-story-hero
   - di-story-card
   - di-story-section
   - di-story-photo
   - di-story-copy
   ========================================================= */

/* --------- Kill common “black line” sources (header + dividers) --------- */
.di-story-hero,
.di-story-section{
  position: relative;
}

/* Remove divider widgets / hr lines if any */
.di-story-hero hr,
.di-story-section hr,
.di-story-hero .elementor-divider,
.di-story-section .elementor-divider,
.di-story-hero .elementor-divider-separator,
.di-story-section .elementor-divider-separator{
  display:none !important;
  border:0 !important;
  height:0 !important;
}

/* Remove underline pseudo-elements some themes add to headings */
.di-story-hero h1::before,
.di-story-hero h1::after,
.di-story-hero h2::before,
.di-story-hero h2::after,
.di-story-section h1::before,
.di-story-section h1::after,
.di-story-section h2::before,
.di-story-section h2::after,
.di-story-hero .elementor-heading-title::before,
.di-story-hero .elementor-heading-title::after,
.di-story-section .elementor-heading-title::before,
.di-story-section .elementor-heading-title::after{
  content:none !important;
  display:none !important;
}

/* Remove header bottom border/shadow that often looks like a “black line” */
header, .site-header, .elementor-location-header{
  border-bottom: none !important;
  box-shadow: none !important;
}

/* --------- Page background (soft, eye-catchy) --------- */
body{
  background:
    radial-gradient(1000px 520px at 18% 12%, rgba(255, 214, 230, .35), transparent 60%),
    radial-gradient(1000px 520px at 82% 18%, rgba(210, 245, 255, .45), transparent 60%),
    #fff !important;
}

/* --------- HERO (big, premium) --------- */
.di-story-hero{
  min-height: clamp(520px, 72vh, 820px);
  display:flex;
  align-items:center;
  padding: clamp(48px, 6vw, 90px) 18px;
  overflow:hidden;
}

/* Dark overlay so text pops on any photo */
.di-story-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(900px 520px at 20% 20%, rgba(255,255,255,.16), transparent 55%),
    radial-gradient(900px 520px at 85% 20%, rgba(255,255,255,.10), transparent 55%),
    linear-gradient(180deg, rgba(10,10,12,.55), rgba(10,10,12,.55));
  pointer-events:none;
}

/* Subtle grain for “luxury” look */
.di-story-hero::after{
  content:"";
  position:absolute;
  inset:-40px;
  background-image: radial-gradient(rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 14px 14px;
  opacity:.18;
  pointer-events:none;
}

/* Keep hero content nicely centered */
.di-story-hero .e-con-inner,
.di-story-hero .elementor-container{
  position:relative;
  max-width: 1140px;
  margin: 0 auto;
  width:100%;
}

/* Glass card */
.di-story-card{
  max-width: 680px;
  background: rgba(255,255,255,.84);
  border: 1px solid rgba(255,255,255,.45);
  border-radius: 28px;
  padding: clamp(22px, 3.2vw, 44px);
  box-shadow: 0 24px 70px rgba(0,0,0,.22);
  backdrop-filter: blur(10px);
}

/* Typography */
.di-story-card h1{
  margin: 0 0 12px 0;
  font-size: clamp(38px, 4.8vw, 62px);
  line-height: 1.04;
  letter-spacing: -0.03em;
}

.di-story-card h2,
.di-story-card h3{
  margin: 0 0 18px 0;
  font-size: 12px;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: rgba(20,20,22,.70);
}

.di-story-card p{
  margin: 0 0 14px 0;
  font-size: 16px;
  line-height: 1.85;
  color: rgba(20,20,22,.78);
}

/* Button polish */
.di-story-card .elementor-button{
  border-radius: 999px !important;
  padding: 14px 20px !important;
  box-shadow: 0 14px 30px rgba(20,20,22,.12);
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.di-story-card .elementor-button:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 44px rgba(20,20,22,.18);
  filter: brightness(1.02);
}

/* --------- SECTION (photo + text) --------- */
.di-story-section{
  padding: clamp(44px, 5vw, 86px) 18px;
}

.di-story-section .e-con-inner,
.di-story-section .elementor-container{
  max-width: 1140px;
  margin: 0 auto;
  width:100%;
}

/* White card feel for the section */
.di-story-section{
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(20,20,22,.08);
  border-radius: 28px;
  box-shadow: 0 18px 55px rgba(20,20,22,.10);
}

/* Image styling */
.di-story-photo img{
  width:100%;
  border-radius: 22px !important;
  box-shadow: 0 18px 50px rgba(20,20,22,.12) !important;
}

/* Copy styling */
.di-story-copy h2{
  font-size: clamp(22px, 2.3vw, 30px);
  letter-spacing: -0.02em;
  margin: 0 0 14px 0;
}
.di-story-copy p{
  font-size: 16px;
  line-height: 1.85;
  color: rgba(20,20,22,.78);
}

/* Mobile: stack nicely */
@media (max-width: 767px){
  .di-story-card{ max-width: 100%; }
  .di-story-section{ border-radius: 22px; }
}/* End custom CSS */