/*
Theme Name: SpinWizard Offers
Theme URI: https://spinwizard.co.uk
Description: SpinWizard-style casino offer cards & grid, safe to use inside other themes/Thrive.
Author: Better Media
Version: 1.0
*/

/* ======================================================
   0) VARIABLES (safe globally)
   ====================================================== */
:root{
  --sw-bg:#f4f6f8;
  --sw-card-bg:#fff;
  --sw-card-border:#e1e4ea;
  --sw-card-shadow:0 16px 40px rgba(15,23,42,.10);

  --sw-text-main:#222b3a;
  --sw-text-muted:#7b8091;
  --sw-heading:#1a8acc;

  --sw-green:#27c263;
  --sw-green-dark:#20ac55;

  --sw-radius-card:18px;
  --sw-font-sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
}

/* ======================================================
   1) SPINWIZARD OFFERS (SCOPED)
   Everything in here only applies inside .spinwizard-offers
   ====================================================== */

/* Wrapper (this is the class your shortcode outputs) */
.spinwizard-offers{
  position:relative;
  padding:1rem 1rem 3rem;   /* top spacing reduced, bottom keeps breathing room */
  background:transparent;   /* don’t fight the page background */
  box-sizing:border-box;
}

/* Soft vignette overlay */
.spinwizard-offers::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at center, rgba(15,23,42,.05), transparent 55%);
  opacity:.7;
  mix-blend-mode:soft-light;
}

/* GRID */
.spinwizard-offers .free-spins-list{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  gap:1.5rem !important;
  align-items:stretch !important;

  max-width:1200px;
  margin:0 auto;
  padding:0;
  box-sizing:border-box;
}

/* 2 columns on medium */
@media (max-width:1024px){
  .spinwizard-offers .free-spins-list{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

/* 1 column on mobile */
@media (max-width:640px){
  .spinwizard-offers .free-spins-list{
    grid-template-columns:1fr !important;
  }
}

/* CARD */
.spinwizard-offers article.free-spin-offer{
  position:relative;
  overflow:hidden;

  background:var(--sw-card-bg) !important;
  border:1px solid rgba(148,163,184,.35) !important;
  border-top:4px solid rgba(148,163,184,.60) !important;
  border-radius:var(--sw-radius-card) !important;
  box-shadow:var(--sw-card-shadow) !important;

  padding:2rem 1.8rem 1.8rem !important;
  margin:0 !important;

  display:flex !important;
  flex-direction:column;
  align-items:center;
  text-align:center;
  height:100%;

  font-family:var(--sw-font-sans) !important;
  color:var(--sw-text-main);
  box-sizing:border-box;

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

/* Glow layer */
.spinwizard-offers article.free-spin-offer::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at top, rgba(56,189,248,.16), transparent 55%);
  opacity:0;
  transition:opacity .18s ease;
}

.spinwizard-offers article.free-spin-offer:hover{
  transform:translateY(-6px) scale(1.01);
  box-shadow:0 22px 50px rgba(15,23,42,.18) !important;
  border-color:rgba(129,140,248,.60) !important;
}
.spinwizard-offers article.free-spin-offer:hover::before{ opacity:1; }

/* Subtle coloured top bar per type */
.spinwizard-offers article.free-spin-offer.offer--nodeposit{ border-top-color:#8b5cf6 !important; }
.spinwizard-offers article.free-spin-offer.offer--cash{     border-top-color:#facc15 !important; }
.spinwizard-offers article.free-spin-offer.offer--freebet{  border-top-color:#38bdf8 !important; }
.spinwizard-offers article.free-spin-offer.offer--popular{  border-top-color:#f97316 !important; }
.spinwizard-offers article.free-spin-offer.offer--new{      border-top-color:#22c55e !important; }

/* Header layout */
.spinwizard-offers .offer-header{
  width:100%;
  display:flex !important;
  flex-direction:column;
  align-items:center;
  row-gap:.75rem;
}

/* Logo */
.spinwizard-offers .offer-logo{ margin-bottom:.7rem; }
.spinwizard-offers .offer-logo img{
  max-height:58px !important;
  width:auto !important;
  margin:0 auto !important;
  border-radius:5px !important;
  display:block;
}

/* Text */
.spinwizard-offers .offer-main{ margin-bottom:0.2rem !important; }

.spinwizard-offers .offer-headline{
  margin:0 0 .25rem !important;
  font-size:1.4rem !important;
  font-weight:800 !important;
  color:var(--sw-heading) !important;
  text-transform:uppercase !important;
  letter-spacing:.03em !important;
  text-align:center !important;
}

.spinwizard-offers .offer-subheadline{
  margin:0 0 .2rem !important;
  font-size:.96rem !important;
  font-weight:700 !important;
  color:#4b5563 !important;
}

.spinwizard-offers .offer-tagline{
  margin:0 !important;
  font-size:.82rem !important;
  font-weight:600 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
  color:#9ca3af !important;
}

/* CTA */
.spinwizard-offers .offer-cta{ margin-top:auto !important; }

.spinwizard-offers .offer-button{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:.45rem;

  padding:.8rem 1.9rem !important;
  border-radius:999px !important;
  border:0 !important;

  background:linear-gradient(135deg, #22c55e, #16a34a) !important;
  color:#fff !important;
  font-weight:700 !important;
  font-size:.9rem !important;
  letter-spacing:.04em;
  text-transform:uppercase !important;

  box-shadow:0 12px 30px rgba(22,163,74,.45) !important;
  text-decoration:none !important;

  transition:transform .12s ease, filter .12s ease;
}
.spinwizard-offers .offer-button:hover{
  background:linear-gradient(135deg, #16a34a, #15803d) !important;
  transform:translateY(-1px);
}
.spinwizard-offers .offer-button:focus{ text-decoration:none !important; }

/* Smallprint */
.spinwizard-offers .offer-smallprint,
.spinwizard-offers .offer-smallprint p{
  margin-top:1.2rem !important;
  font-size:.7rem !important;
  font-weight:400 !important;
  color:var(--sw-text-muted) !important;
  text-align:center !important;

  max-height:2.0em !important;
  overflow-y:auto !important;

  -ms-overflow-style:none;
  scrollbar-width:none;
}
.spinwizard-offers .offer-smallprint::-webkit-scrollbar{ display:none !important; }

/* Badge */
.spinwizard-offers .offer-badge{
  position:absolute;
  top:14px;
  left:14px;

  padding:4px 11px;
  border-radius:999px;

  font-size:.68rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#fff;

  z-index:10;

  max-width:98px;
  white-space:normal;
  line-height:1.2;
  text-align:center;
  word-break:break-word;

  box-shadow:0 8px 20px rgba(15,23,42,.25);
}
/* Badge colour variants (match your PHP classes: offer-badge--{type}) */
.spinwizard-offers .offer-badge--nodeposit{ background:linear-gradient(135deg, #7c3aed, #a855f7); }
.spinwizard-offers .offer-badge--cash{     background:linear-gradient(135deg, #f59e0b, #facc15); color:#111827; }
.spinwizard-offers .offer-badge--freebet{  background:linear-gradient(135deg, #0ea5e9, #38bdf8); }
.spinwizard-offers .offer-badge--popular{  background:linear-gradient(135deg, #f97316, #fb923c); }
.spinwizard-offers .offer-badge--new{      background:linear-gradient(135deg, #22c55e, #4ade80); }

/* FILTER BAR (width matches grid) */
.spinwizard-offers .spinwizard-filter{
  display:flex;
  flex-wrap:wrap;                 /* keep one line */
  justify-content:center;
  gap:.15rem;

  max-width:1200px;
  width:100%;
  margin:.5rem auto 2rem;           /* spacing under filter */
  padding:.35rem;

  border-radius:5px;
  background:rgba(255,255,255,.90);
  box-shadow:0 10px 30px rgba(15,23,42,.12);

  overflow-x:auto;                  /* scroll instead of wrapping */
  -webkit-overflow-scrolling:touch;
  box-sizing:border-box;
}
.spinwizard-offers .spinwizard-filter .sw-filter-btn{ flex:0 0 auto; white-space:nowrap; }

/* Filter buttons */
.spinwizard-offers .sw-filter-btn{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.4rem;

  border-radius:999px;
  border:0;
  padding:.55rem 1.45rem;

  font-size:.85rem;
  font-weight:600;
  font-family:var(--sw-font-sans);
  background:transparent;
  color:#475569;
  cursor:pointer;

  transition:background .16s ease, color .16s ease, box-shadow .16s ease, transform .12s ease;
}
.spinwizard-offers .sw-filter-btn .sw-filter-icon{ font-size:1rem; line-height:1; }
.spinwizard-offers .sw-filter-btn:hover{
  background:rgba(148,163,184,.12);
  transform:translateY(-1px);
}
.spinwizard-offers .sw-filter-btn.is-active{
  background:linear-gradient(135deg, #2563eb, #7c3aed);
  color:#fff;
  box-shadow:0 10px 26px rgba(37,99,235,.55);
}
.spinwizard-offers .sw-filter-btn.is-active .sw-filter-icon{
  filter:drop-shadow(0 0 4px rgba(15,23,42,.5));
}

/* Reorder animation */
.spinwizard-offers .free-spins-list{
  transition:opacity .15s ease, transform .15s ease;
}
.spinwizard-offers.sw-animating .free-spins-list{
  opacity:0;
  transform:translateY(4px);
}
.spinwizard-offers.sw-animating .free-spin-offer{
  transition:transform .18s ease, opacity .18s ease;
  transform:scale(.99);
  opacity:.9;
}

/* ======================================================
   2) OTHER SITE / THEME CSS (kept, but de-duplicated + fixed braces)
   ====================================================== */

/* Custom Header Styling */
.custom-site-header{
  background-color:#9d2d81;
  padding:15px 0;
  text-align:center;
}
.custom-site-header .header-inner{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  justify-content:center;
  align-items:center;
}
.custom-site-header .header-logo img{
  height:50px;
  width:auto;
}
.custom-site-header::after{
  content:"";
  display:block;
  width:100%;
  height:2px;
  background-color:#fff;
  margin-top:10px;
}

.site-header--simple{
  background:linear-gradient(90deg, #8a1c73, #b03392);
  padding:4px 0;
  text-align:center;
}
.site-header-inner{
  max-width:1200px;
  margin:0 auto;
}
.site-logo{ display:inline-block; }
.site-logo img,
.custom-logo{
  max-height:80px;
  width:auto;
}

/* Footer */
.site-footer--reg{
  background:#fff;
  border-top:1px solid #eee;
  padding:28px 0 36px;
}
.site-footer-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}
.footer-legal{
  text-align:center;
  font-size:12px;
  line-height:1.6;
  color:#666;
  margin-bottom:22px;
}
.footer-legal-links a{
  color:inherit;
  text-decoration:underline;
}
.footer-legal-links .sep{
  margin:0 8px;
  opacity:.6;
}
.footer-badges{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:16px;
}
.footer-badge--left{ justify-self:start; }
.footer-badge--center{ justify-self:center; }
.footer-badge--right{ justify-self:end; }
.footer-badge img{
  display:block;
  height:46px;
  width:auto;
}
@media (max-width:640px){
  .footer-badges{
    grid-template-columns:1fr;
    justify-items:center;
    gap:14px;
  }
  .footer-badge--left,
  .footer-badge--right{
    justify-self:center;
  }
}

/* Slots typography + layout */
body.single-slotsl h1{ text-align:center; }

body.single-slotsl .slots-single,
body.post-type-archive-slotsl{
  font-family:"Poppins", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

body.single-slotsl .slots-single h1{
  font-family:"Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight:700;
  letter-spacing:-.02em;
}
body.single-slotsl .slots-single h1,
body.single-slotsl .slots-single h2,
body.single-slotsl .slots-single h3{
  font-weight:600;
}

/* Center content on Slots archive + singles */
body.single-slotsl .slots-single,
body.post-type-archive-slotsl .site-main{
  max-width:1100px;
  margin:0 auto;
  padding:24px 16px;
}
body.single-slotsl .slots-single p{ max-width:100%; }

/* Match /slots/ (page ID 11769) to Slots single pages */
body.page-id-11769 .site-main,
body.page-id-53095 .site-main,
body.single-slotsl .slots-single{
  max-width:1100px;
  margin:0 auto;
  padding:24px 16px;
  line-height:1.6;
}
body.page-id-11769 h1,
body.page-id-53095 h1,
body.single-slotsl h1{
  text-align:center;
  font-weight:600;
  font-family:"Poppins", system-ui, sans-serif;
}
body.page-id-11769 p,
body.page-id-53095 p,
body.single-slotsl .slots-single p{
  margin-bottom:1em;
}
/* Match default WP pages to Slots styling (covers themes that don't use .site-main) */
body.page-id-11769 .site-main,
body.page-id-11769 #primary,
body.page-id-11769 .content-area,
body.page-id-11769 .site-content,

body.page-id-53095 .site-main,
body.page-id-53095 #primary,
body.page-id-53095 .content-area,
body.page-id-53095 .site-content,

/* Optional: apply same layout to ALL default pages */
body.page-template-default .site-main,
body.page-template-default #primary,
body.page-template-default .content-area,
body.page-template-default .site-content{
  max-width:1100px;
  margin:0 auto;
  padding:24px 16px;
  line-height:1.6;
}

/* Headings like Slots */
body.page-id-11769 h1,
body.page-id-53095 h1,
body.page-template-default h1{
  text-align:center;
  font-weight:600;
  font-family:"Poppins", system-ui, sans-serif;
}

/* Paragraph spacing like Slots */
body.page-id-11769 p,
body.page-id-53095 p,
body.page-template-default p{
  margin-bottom:1em;
}


/* Thrive resets (keep as-is but make selector safe) */
.thrv_text_element p{ margin:0; }
.thrv_heading h1,
.thrv_heading h2,
.thrv_heading h3,
.thrv_heading h4,
.thrv_heading h5{ margin:0; }

/* Ontraport / Moonray forms */
.moonray-form,
.moonray-form-p2c265659f7,
.moonray-form-p2c265659f8{
  width:100% !important;
  max-width:100% !important;
}
.moonray-form-element-wrapper{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
}
.moonray-form input[type="email"],
.moonray-form input[type="tel"],
.moonray-form input[type="text"],
.moonray-form input[type="password"],
.moonray-form input[type="submit"],
.moonray-form textarea{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box;
  display:block !important;
}
.moonray-form-element-wrapper.moonray-form-input-type-submit{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
  text-align:center;
}
.moonray-form input[type="submit"]{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
  text-align:center;
  min-width:100% !important;
}

/* Misc */
.scroll-box{
  max-height:25px;
  overflow-y:auto;
}
iframe[src*="ontraport"]{
  height:48px !important;
  overflow:hidden;
  display:block;
  width:100% !important;
}
@media (max-width:768px){
  iframe[src*="ontraport"]{
    height:100px !important;
    min-height:78px;
  }
}
.vertical{ transform:rotate(270deg); }

.spinwizard-offers {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
/* Thrive: allow shortcode area to go full width (this is the limiter) */
.tve_shortcode_rendered{
  max-width: none !important;
  width: 100% !important;
}

/* Now make filter + grid take the full available width */
.spinwizard-offers .spinwizard-filter,
.spinwizard-offers .free-spins-list{
  max-width: none !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
/* Whatever plugin is wrapping the shortcode is limiting width */
.tve_shortcode_rendered{
  max-width: none !important;
  width: 100% !important;
}

/* Now ensure both filter and grid stretch equally */
.tve_shortcode_rendered .spinwizard-offers,
.tve_shortcode_rendered .spinwizard-offers .spinwizard-filter,
.tve_shortcode_rendered .spinwizard-offers .free-spins-list{
  width: 100% !important;
  max-width: 1200px !important; /* change to 1400px if your offers are wider */
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
/* Force casino link styling (wins against theme defaults) */
.spinwizard-offers p.offer-tagline a,
.spinwizard-offers .offer-tagline a:link,
.spinwizard-offers .offer-tagline a:visited{
  color: #9ca3af !important;
  text-decoration: none !important;
}

.spinwizard-offers .offer-tagline a:hover,
.spinwizard-offers .offer-tagline a:focus{
  color: #1a8acc !important;
  text-decoration: none !important;
}

/* Casino name link inside offer cards */
.spinwizard-offers .offer-tagline a{
  color: #9ca3af;          /* same muted grey you already use */
  text-decoration: none;  /* remove underline */
  font-weight: 600;
  transition: color .15s ease;
}

/* Optional hover effect */
.spinwizard-offers .offer-tagline a:hover{
  color: #1a8acc;          /* SpinWizard blue on hover */
  text-decoration: none;  /* keep underline off */
}
/* Override browser/theme link styles for casino name */
.spinwizard-offers .offer-tagline a,
.spinwizard-offers .offer-tagline a:link,
.spinwizard-offers .offer-tagline a:visited {
  color: #9ca3af !important;
  text-decoration: none !important;
  text-decoration-style: none !important;
}

/* Hover / focus */
.spinwizard-offers .offer-tagline a:hover,
.spinwizard-offers .offer-tagline a:focus {
  color: #1a8acc !important;
  text-decoration: none !important;
}
/* Kill underline + purple at the SOURCE (the parent), then restyle the link */
.spinwizard-offers .offer-tagline{
  color: #9ca3af !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  text-decoration-style: solid !important;
}

/* Also force ALL descendants to not be underlined */
.spinwizard-offers .offer-tagline,
.spinwizard-offers .offer-tagline *{
  text-decoration: none !important;
  text-decoration-line: none !important;
}

/* Now explicitly set link colours for all states */
.spinwizard-offers .offer-tagline a:link,
.spinwizard-offers .offer-tagline a:visited{
  color: #9ca3af !important;
}

.spinwizard-offers .offer-tagline a:hover,
.spinwizard-offers .offer-tagline a:focus{
  color: #1a8acc !important;
}
/* Reduce vertical spacing around the CTA button */
.spinwizard-offers .offer-cta {
  margin-top: 12px !important;   /* space above button */
}

.spinwizard-offers .offer-button {
  margin: 0 !important;          /* remove extra margins */
  padding: 10px 26px !important; /* slightly tighter button */
}
/* Slots single template font */
.slots-single,
.slots-single p{
  font-weight: 100;
}

.slots-single *{
  font-family: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
}
/* Site Main template font */
.site-main,
.site-main *{
  font-family: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
}
.ontraport-form-wrapper {
  display: flex;
  justify-content: center;
  margin: 2rem auto;
  padding: 0 1rem;
}

.ontraport-form-box {
  max-width: 1050px;
  width: 100%;
  background: #ffffff;
  padding: 1.75rem 2rem;
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

/* Optional polish */
.ontraport-form-box input[type="email"] {
  border-radius: 8px;
  padding: 12px;
}

.ontraport-form-box input[type="submit"] {
  border-radius: 999px;
  padding: 12px 28px;
  font-weight: 600;
  cursor: pointer;
}

.ontraport-form-box label {
  font-size: 0.55rem;
  line-height: 1.4;
}
.ontraport-form-box.is-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 160px;
}

.form-loading-text {
  opacity: 0.6;
  font-size: 0.95rem;
}
/* Reduce space below the Ontraport form */
.ontraport-form-wrapper {
  margin-bottom: 0rem; /* was likely 2–3rem */
}

/* Remove top margin from main content */
.slots-single {
  margin-top: 0;
  padding-top: 0;
}

/* Prevent margin collapse from the article */
.slots-single article {
  margin-top: 0;
}

/* Optional: reduce h1 push-down */
.slots-single h1 {
  margin-top: 0.00rem;
}
.form-headline {
  font-size: 1.15rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 1.25rem;
  color: #222;
}

.form-headline .highlight {
  color: #ff8a00;
  font-weight: 700;
}
.ontraport-form-box {
  max-width: 1050px;
  width: 100%;
  background: #ffffff;
  padding: 2rem;
  border-radius: 18px;

  /* Stronger visual separation */
  box-shadow:
    0 12px 28px rgba(0, 0, 0, 0.12),
    0 2px 6px rgba(0, 0, 0, 0.08);

  /* Subtle highlight border */
  border: 1px solid rgba(0, 0, 0, 0.05);

  position: relative;
}

/* Optional soft glow effect */
.ontraport-form-box::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  background: linear-gradient(
    135deg,
    rgba(255, 190, 0, 0.35),
    rgba(255, 120, 0, 0.15)
  );
  z-index: -1;
}
.form-headline {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: 1.4rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 1.5rem;
  color: #222;
}

.form-headline .highlight {
  font-weight: 700;
  color: #3bbf46;
}


/* Ensure form doesn’t jump the layout */
#ontraport-form-container {
  min-height: 120px;
}
/* Mobile: allow filter buttons to wrap onto two rows */
@media (max-width: 640px){
  .spinwizard-offers .spinwizard-filter{
    flex-wrap: wrap !important;
    justify-content: center;
    overflow-x: visible; /* stop horizontal scrolling on mobile */
  }

  .spinwizard-offers .spinwizard-filter .sw-filter-btn{
    flex: 0 1 auto;      /* allow wrapping */
  }
}
/* Make form headline smaller on mobile */
@media (max-width: 600px) {
  .form-headline {
    font-size: 1.1rem;
    line-height: 1.35;
  }
}
.site-main p{
  font-weight: 300; /* or 350 / 400 */
}
.site-main h2{ margin-top: 4.4rem; }
.slots-single h3{ margin-top: 2.4rem; }
.slots-single h2{ margin-top: 2.4rem; }
.slots-single h3{ margin-top: 2.4rem; }
/* Re-enable scrollbar arrows for offer T&Cs */
.spinwizard-offers .offer-smallprint {
    overflow-y: auto !important;
    scrollbar-width: thin;              /* Firefox */
    -ms-overflow-style: auto;            /* Edge / IE */
}

/* Chrome / Safari */
.spinwizard-offers .offer-smallprint::-webkit-scrollbar {
    width: 8px;
}

.spinwizard-offers .offer-smallprint::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 4px;
}

.spinwizard-offers .offer-smallprint::-webkit-scrollbar-thumb {
    background: #fff;
    border-radius: 4px;
}

.spinwizard-offers .offer-smallprint::-webkit-scrollbar-thumb:hover {
    background: #fff;
}
/* Blank template: allow full Ontraport form height on all devices */
body.blank-template iframe[src*="ontraport"]{
  height: 474px !important;
  overflow: visible !important;
  width: 100% !important;
  max-width: 480px !important;
  display: block !important;
}

/* Ensure the mobile media query doesn't shrink it */
@media (max-width: 480px){
  body.blank-template iframe[src*="ontraport"]{ height: 600px !important; }
}
/* Default WP pages (page-template-default) — match the Slots layout */
body.page-template-default main.site-main,
body.page-template-default #primary.site-main {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 24px 16px !important;
  line-height: 1.6 !important;
}

/* Headings */
body.page-template-default main.site-main h1,
body.page-template-default #primary.site-main h1 {
  text-align: center !important;
  font-weight: 600 !important;
  font-family: "Poppins", system-ui, sans-serif !important;
}

/* Paragraph spacing */
body.page-template-default main.site-main p,
body.page-template-default #primary.site-main p {
  margin-bottom: 1em !important;
}

