.elementor-6775 .elementor-element.elementor-element-8dde51c .elementor-icon-wrapper{text-align:center;}.elementor-6775 .elementor-element.elementor-element-5fa917d .elementor-icon-wrapper{text-align:center;}.elementor-6775 .elementor-element.elementor-element-0949727 .elementor-icon-wrapper{text-align:center;}.elementor-6775 .elementor-element.elementor-element-fb40eb8 .elementor-icon-wrapper{text-align:center;}.elementor-6775 .elementor-element.elementor-element-eb17a49 .elementor-icon-wrapper{text-align:center;}.elementor-6775 .elementor-element.elementor-element-c12ddd8 .elementor-icon-wrapper{text-align:center;}.elementor-6775 .elementor-element.elementor-element-aa1d69f .elementor-icon-wrapper{text-align:center;}.elementor-6775 .elementor-element.elementor-element-e5f5e53 .elementor-icon-wrapper{text-align:center;}.elementor-6775 .elementor-element.elementor-element-b545ff2 .elementor-icon-wrapper{text-align:center;}.elementor-6775 .elementor-element.elementor-element-4eb4066 .elementor-icon-wrapper{text-align:center;}:root{--page-title-display:none;}/* Start custom CSS for icon, class: .elementor-element-8dde51c */.elementor-6775 .elementor-element.elementor-element-8dde51c .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-8dde51c .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 12px;
  color: #F47B20;
  background: rgba(244, 123, 32, 0.12);
  border: 1px solid rgba(244, 123, 32, 0.28);
  border-radius: 12px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-8dde51c .elementor-icon svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-8dde51c .elementor-icon i {
  color: currentColor;
  font-size: 24px;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-5fa917d */.elementor-6775 .elementor-element.elementor-element-5fa917d .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-5fa917d .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 12px;
  color: #F47B20;
  background: rgba(244, 123, 32, 0.12);
  border: 1px solid rgba(244, 123, 32, 0.28);
  border-radius: 12px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-5fa917d .elementor-icon svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-5fa917d .elementor-icon i {
  color: currentColor;
  font-size: 24px;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-0949727 */.elementor-6775 .elementor-element.elementor-element-0949727 .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-0949727 .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 12px;
  color: #F47B20;
  background: rgba(244, 123, 32, 0.12);
  border: 1px solid rgba(244, 123, 32, 0.28);
  border-radius: 12px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-0949727 .elementor-icon svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-0949727 .elementor-icon i {
  color: currentColor;
  font-size: 24px;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-fb40eb8 */.elementor-6775 .elementor-element.elementor-element-fb40eb8 .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-fb40eb8 .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 12px;
  color: #F47B20;
  background: rgba(244, 123, 32, 0.12);
  border: 1px solid rgba(244, 123, 32, 0.28);
  border-radius: 12px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-fb40eb8 .elementor-icon svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-fb40eb8 .elementor-icon i {
  color: currentColor;
  font-size: 24px;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-eb17a49 */.elementor-6775 .elementor-element.elementor-element-eb17a49 .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-eb17a49 .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 12px;
  color: #F47B20;
  background: rgba(244, 123, 32, 0.12);
  border: 1px solid rgba(244, 123, 32, 0.28);
  border-radius: 12px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-eb17a49 .elementor-icon svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-eb17a49 .elementor-icon i {
  color: currentColor;
  font-size: 24px;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-c12ddd8 */.elementor-6775 .elementor-element.elementor-element-c12ddd8 .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-c12ddd8 .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 12px;
  color: #F47B20;
  background: rgba(244, 123, 32, 0.12);
  border: 1px solid rgba(244, 123, 32, 0.28);
  border-radius: 12px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-c12ddd8 .elementor-icon svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-c12ddd8 .elementor-icon i {
  color: currentColor;
  font-size: 24px;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-aa1d69f */.elementor-6775 .elementor-element.elementor-element-aa1d69f .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-aa1d69f .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  color: #E85B12;
  background: rgba(232, 91, 18, 0.12);
  border: 1px solid rgba(232, 91, 18, 0.3);
  border-radius: 11px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-aa1d69f .elementor-icon svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-aa1d69f .elementor-icon i {
  color: currentColor;
  font-size: 20px;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-e5f5e53 */.elementor-6775 .elementor-element.elementor-element-e5f5e53 .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-e5f5e53 .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  color: #E85B12;
  background: rgba(232, 91, 18, 0.12);
  border: 1px solid rgba(232, 91, 18, 0.3);
  border-radius: 11px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-e5f5e53 .elementor-icon svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-e5f5e53 .elementor-icon i {
  color: currentColor;
  font-size: 20px;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-b545ff2 */.elementor-6775 .elementor-element.elementor-element-b545ff2 .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-b545ff2 .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  color: #E85B12;
  background: rgba(232, 91, 18, 0.12);
  border: 1px solid rgba(232, 91, 18, 0.3);
  border-radius: 11px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-b545ff2 .elementor-icon svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-b545ff2 .elementor-icon i {
  color: currentColor;
  font-size: 20px;
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-4eb4066 */.elementor-6775 .elementor-element.elementor-element-4eb4066 .elementor-icon-wrapper {
  line-height: 0;
}

.elementor-6775 .elementor-element.elementor-element-4eb4066 .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  color: #E85B12;
  background: rgba(232, 91, 18, 0.12);
  border: 1px solid rgba(232, 91, 18, 0.3);
  border-radius: 11px;
  box-sizing: border-box;
}

.elementor-6775 .elementor-element.elementor-element-4eb4066 .elementor-icon svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.elementor-6775 .elementor-element.elementor-element-4eb4066 .elementor-icon i {
  color: currentColor;
  font-size: 20px;
}/* End custom CSS */
/* Start custom CSS *//* =========================================================
   SMOKE, GRIDDLE & GRILL
   ULTIMATE SMOKER GUIDE — COMPLETE PAGE CSS
   FULL REPLACEMENT — DO NOT APPEND OLD CODE
   ========================================================= */


/* =========================================================
   1. PAGE FOUNDATION
   ========================================================= */

#sg-smoker-guide {
  --sg-orange: #e85b12;
  --sg-orange-hover: #ff741d;
  --sg-black: #0b0b0a;
  --sg-cream: #f5f2ed;
  --sg-muted: #d6d3ce;
  --sg-card-text: #bbb7b1;

  position: relative !important;

  width: 100vw !important;
  max-width: 100vw !important;

  margin-top: 0 !important;
  margin-right: calc(50% - 50vw) !important;
  margin-bottom: 0 !important;
  margin-left: calc(50% - 50vw) !important;

  padding: 0 !important;

  overflow-x: clip !important;

  background: var(--sg-black) !important;
}

#sg-smoker-guide,
#sg-smoker-guide *,
#sg-smoker-guide *::before,
#sg-smoker-guide *::after {
  box-sizing: border-box;
}


/* =========================================================
   2. HERO SECTION
   ========================================================= */

#sg-smoker-hero {
  position: relative !important;
  isolation: isolate !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: stretch !important;

  width: 100% !important;
  max-width: none !important;

  height: auto !important;
  min-height: 580px !important;
  max-height: none !important;

  margin: 0 !important;

  padding-top: 72px !important;
  padding-right: clamp(42px, 4.5vw, 82px) !important;
  padding-bottom: 72px !important;
  padding-left: clamp(260px, 17vw, 360px) !important;

  background-position: center right !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;

  overflow: hidden !important;
}

#sg-smoker-hero::before {
  content: "";

  position: absolute;
  inset: 0;
  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(4, 4, 4, 0.98) 0%,
      rgba(4, 4, 4, 0.94) 27%,
      rgba(4, 4, 4, 0.68) 47%,
      rgba(4, 4, 4, 0.24) 70%,
      rgba(4, 4, 4, 0.05) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.03) 0%,
      rgba(0, 0, 0, 0.24) 100%
    );
}


/* =========================================================
   3. HERO CONTENT
   ========================================================= */

#sg-smoker-hero-inner {
  position: relative !important;
  z-index: 1 !important;

  display: flex !important;
  flex-direction: row !important;
  justify-content: flex-start !important;
  align-items: center !important;

  width: 100% !important;
  max-width: none !important;

  height: auto !important;
  min-height: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
}

#sg-smoker-hero-copy {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;

  width: 100% !important;
  max-width: 660px !important;

  height: auto !important;
  min-height: 0 !important;

  gap: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* Hero eyebrow */

#sg-smoker-hero-eyebrow {
  width: auto !important;
  max-width: 100% !important;

  margin: 0 0 14px !important;
  padding: 0 !important;

  color: var(--sg-orange) !important;
  -webkit-text-fill-color: var(--sg-orange) !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: 1.25px !important;
  text-transform: uppercase !important;
}

#sg-smoker-hero-eyebrow * {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  background: transparent !important;

  font: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
}


/* Hero title */

#sg-smoker-hero-title {
  width: 100% !important;
  max-width: 650px !important;

  margin: 0 0 16px !important;
  padding: 0 !important;

  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;

  background: transparent !important;

  font-size: clamp(50px, 3.25vw, 64px) !important;
  font-weight: 800 !important;
  line-height: 1.01 !important;
  letter-spacing: -1.7px !important;

  text-wrap: balance;
  text-shadow: 0 3px 24px rgba(0, 0, 0, 0.4) !important;
}

#sg-smoker-hero-title * {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  font: inherit !important;
  letter-spacing: inherit !important;
}


/* Hero tagline */

#sg-smoker-hero-tagline {
  width: 100% !important;
  max-width: 650px !important;

  margin: 0 0 18px !important;
  padding: 0 !important;

  color: var(--sg-orange) !important;
  -webkit-text-fill-color: var(--sg-orange) !important;

  background: transparent !important;

  font-size: clamp(27px, 1.7vw, 33px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.4px !important;

  text-wrap: balance;
}

#sg-smoker-hero-tagline * {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  font: inherit !important;
  letter-spacing: inherit !important;
}


/* Hero introduction */

#sg-smoker-hero-intro {
  width: 100% !important;
  max-width: 590px !important;

  margin: 0 !important;
  padding: 0 !important;

  color: var(--sg-muted) !important;
  -webkit-text-fill-color: var(--sg-muted) !important;

  background: transparent !important;

  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.62 !important;
  letter-spacing: 0 !important;

  text-wrap: pretty;
}

#sg-smoker-hero-intro *,
#sg-smoker-hero-intro p {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  font: inherit !important;
}


/* =========================================================
   4. HERO BUTTON ROW
   ========================================================= */

#sg-smoker-hero-actions {
  display: flex !important;
  flex-direction: row !important;
  justify-content: flex-start !important;
  align-items: center !important;
  flex-wrap: wrap !important;

  width: 100% !important;

  gap: 14px !important;

  margin: 22px 0 0 !important;
  padding: 0 !important;
}


/* =========================================================
   5. HERO BUTTON WRAPPERS
   ========================================================= */

#sg-smoker-compare-btn,
#sg-smoker-match-btn {
  position: static !important;

  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;

  width: auto !important;
  max-width: max-content !important;
  min-width: 0 !important;
  min-height: 48px !important;

  margin: 0 !important;
  padding: 14px 23px !important;

  border-radius: 6px !important;

  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.55px !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;

  cursor: pointer !important;

  transition:
    transform 180ms ease,
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease !important;
}

#sg-smoker-compare-btn > *,
#sg-smoker-match-btn > *,
#sg-smoker-compare-btn a,
#sg-smoker-match-btn a,
#sg-smoker-compare-btn button,
#sg-smoker-match-btn button,
#sg-smoker-compare-btn span,
#sg-smoker-match-btn span {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;

  font: inherit !important;
  letter-spacing: inherit !important;
  text-decoration: none !important;
  text-transform: inherit !important;
}


/* Primary hero button */

#sg-smoker-compare-btn {
  color: var(--sg-black) !important;
  -webkit-text-fill-color: var(--sg-black) !important;

  background: var(--sg-orange) !important;

  border: 1px solid var(--sg-orange) !important;

  box-shadow: 0 10px 28px rgba(232, 91, 18, 0.25) !important;
}

#sg-smoker-compare-btn:hover {
  background: var(--sg-orange-hover) !important;
  border-color: var(--sg-orange-hover) !important;

  transform: translateY(-2px) !important;

  box-shadow: 0 14px 34px rgba(232, 91, 18, 0.34) !important;
}


/* Secondary hero button */

#sg-smoker-match-btn {
  color: var(--sg-orange) !important;
  -webkit-text-fill-color: var(--sg-orange) !important;

  background: rgba(11, 11, 10, 0.48) !important;

  border: 1px solid var(--sg-orange) !important;

  box-shadow: none !important;
}

#sg-smoker-match-btn:hover {
  color: var(--sg-black) !important;
  -webkit-text-fill-color: var(--sg-black) !important;

  background: var(--sg-orange) !important;

  transform: translateY(-2px) !important;

  box-shadow: 0 12px 30px rgba(232, 91, 18, 0.25) !important;
}


/* =========================================================
   6. SMOKER MATCH SECTION
   ========================================================= */

#sg-smoker-match-section {
  position: relative !important;

  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding-top: 96px !important;
  padding-right: clamp(24px, 4vw, 72px) !important;
  padding-bottom: 96px !important;
  padding-left: clamp(24px, 4vw, 72px) !important;

  background:
    radial-gradient(
      circle at 12% 10%,
      rgba(232, 91, 18, 0.075),
      transparent 29%
    ),
    var(--sg-cream) !important;
}

#sg-smoker-match-inner {
  width: 100% !important;
  max-width: 1280px !important;

  margin: 0 auto !important;
  padding: 0 !important;
}

#sg-smoker-match-card {
  position: relative !important;
  isolation: isolate !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;

  width: 100% !important;

  margin: 0 !important;
  padding: 46px !important;

  overflow: hidden !important;

  background:
    radial-gradient(
      circle at 90% 4%,
      rgba(232, 91, 18, 0.13),
      transparent 28%
    ),
    linear-gradient(
      145deg,
      #181816 0%,
      #10100f 58%,
      #151512 100%
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.09) !important;
  border-radius: 22px !important;

  box-shadow:
    0 24px 70px rgba(20, 17, 13, 0.22),
    0 4px 16px rgba(20, 17, 13, 0.12) !important;
}


/* =========================================================
   7. SMOKER MATCH HEADER — CLASS CONTROLLED
   ========================================================= */

#sg-smoker-match-header,
.sg-match-header-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: auto !important;
  align-items: end !important;

  width: 100% !important;

  gap: 32px !important;

  margin: 0 0 30px !important;
  padding: 0 0 32px !important;

  border-bottom: 1px solid rgba(255, 255, 255, 0.11) !important;
}

#sg-smoker-match-header-copy,
.sg-match-header-copy {
  grid-column: 1 !important;
  grid-row: 1 !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;

  width: 100% !important;
  max-width: 760px !important;
  min-width: 0 !important;

  gap: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   8. START HERE — CLASS CONTROLLED
   ========================================================= */

#sg-smoker-match-eyebrow,
.sg-match-start-label {
  display: block !important;

  width: fit-content !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;

  margin: 0 0 12px !important;
  padding: 0 !important;

  color: var(--sg-orange) !important;
  -webkit-text-fill-color: var(--sg-orange) !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;
  text-shadow: none !important;

  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  mix-blend-mode: normal !important;

  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase !important;
}

#sg-smoker-match-eyebrow *,
.sg-match-start-label * {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  background: transparent !important;

  font: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;

  opacity: 1 !important;
  visibility: visible !important;
}

#sg-smoker-match-eyebrow::before,
#sg-smoker-match-eyebrow::after,
.sg-match-start-label::before,
.sg-match-start-label::after,
.sg-match-start-label *::before,
.sg-match-start-label *::after {
  content: none !important;
  display: none !important;
}


/* Match title */

#sg-smoker-match-title {
  width: 100% !important;

  margin: 0 0 14px !important;
  padding: 0 !important;

  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;

  background: transparent !important;

  font-size: clamp(40px, 3vw, 54px) !important;
  font-weight: 800 !important;
  line-height: 1.03 !important;
  letter-spacing: -1.25px !important;

  text-wrap: balance;
}

#sg-smoker-match-title * {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  font: inherit !important;
  letter-spacing: inherit !important;
}


/* Match introduction */

#sg-smoker-match-intro {
  width: 100% !important;
  max-width: 720px !important;

  margin: 0 !important;
  padding: 0 !important;

  color: #c9c5bf !important;
  -webkit-text-fill-color: #c9c5bf !important;

  background: transparent !important;

  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.62 !important;

  text-wrap: pretty;
}

#sg-smoker-match-intro *,
#sg-smoker-match-intro p {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  font: inherit !important;
}


/* =========================================================
   9. QUIZ BUTTON — CLASS CONTROLLED
   ========================================================= */

/* Widget/grid item */

#sg-smoker-quiz-btn,
.sg-match-quiz-button {
  grid-column: 2 !important;
  grid-row: 1 !important;

  justify-self: end !important;
  align-self: end !important;

  position: static !important;

  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;

  width: auto !important;
  max-width: max-content !important;
  min-width: max-content !important;
  min-height: 52px !important;

  margin: 0 0 2px auto !important;
  padding: 16px 24px !important;

  color: var(--sg-black) !important;
  -webkit-text-fill-color: var(--sg-black) !important;

  background: var(--sg-orange) !important;
  background-color: var(--sg-orange) !important;
  background-image: none !important;

  border: 1px solid var(--sg-orange) !important;
  border-radius: 7px !important;

  box-shadow: 0 12px 30px rgba(232, 91, 18, 0.27) !important;

  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  mix-blend-mode: normal !important;

  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.6px !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;

  cursor: pointer !important;

  transition:
    transform 180ms ease,
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease !important;
}


/* Atomic inner controls */

#sg-smoker-quiz-btn > *,
.sg-match-quiz-button > *,
#sg-smoker-quiz-btn a,
.sg-match-quiz-button a,
#sg-smoker-quiz-btn button,
.sg-match-quiz-button button,
#sg-smoker-quiz-btn span,
.sg-match-quiz-button span,
#sg-smoker-quiz-btn .e-button-base,
.sg-match-quiz-button .e-button-base {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;

  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  color: var(--sg-black) !important;
  -webkit-text-fill-color: var(--sg-black) !important;

  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;
  text-shadow: none !important;

  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;

  font: inherit !important;
  letter-spacing: inherit !important;
  text-decoration: none !important;
  text-transform: inherit !important;
  white-space: inherit !important;
}

#sg-smoker-quiz-btn:hover,
.sg-match-quiz-button:hover {
  color: var(--sg-black) !important;
  -webkit-text-fill-color: var(--sg-black) !important;

  background: var(--sg-orange-hover) !important;
  background-color: var(--sg-orange-hover) !important;

  border-color: var(--sg-orange-hover) !important;

  transform: translateY(-2px) !important;

  box-shadow: 0 16px 38px rgba(232, 91, 18, 0.35) !important;
}


/* =========================================================
   10. QUESTION GRID
   ========================================================= */

#sg-smoker-match-questions {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;

  width: 100% !important;

  gap: 18px !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   11. QUESTION CARDS
   ========================================================= */

#sg-smoker-question-time,
#sg-smoker-question-priority,
#sg-smoker-question-budget,
#sg-smoker-question-frequency {
  position: relative !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;

  width: 100% !important;
  min-width: 0 !important;
  min-height: 245px !important;

  gap: 13px !important;

  margin: 0 !important;
  padding: 25px !important;

  overflow: hidden !important;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.055),
      rgba(255, 255, 255, 0.018)
    ) !important;

  border: 1px solid rgba(255, 255, 255, 0.11) !important;
  border-radius: 14px !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.035),
    0 12px 28px rgba(0, 0, 0, 0.13) !important;

  transition:
    transform 190ms ease,
    border-color 190ms ease,
    box-shadow 190ms ease !important;
}

#sg-smoker-question-time::before,
#sg-smoker-question-priority::before,
#sg-smoker-question-budget::before,
#sg-smoker-question-frequency::before {
  content: "";

  position: absolute;
  top: 0;
  right: 0;
  left: 0;

  height: 3px;

  background:
    linear-gradient(
      90deg,
      var(--sg-orange),
      rgba(232, 91, 18, 0.08)
    );
}

#sg-smoker-question-time:hover,
#sg-smoker-question-priority:hover,
#sg-smoker-question-budget:hover,
#sg-smoker-question-frequency:hover {
  transform: translateY(-5px) !important;

  border-color: rgba(232, 91, 18, 0.55) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 18px 36px rgba(0, 0, 0, 0.22) !important;
}


/* =========================================================
   12. QUESTION NUMBERS
   ========================================================= */

#sg-smoker-question-time-number,
#sg-smoker-question-priority-number,
#sg-smoker-question-budget-number,
#sg-smoker-question-frequency-number {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;

  width: 42px !important;
  height: 42px !important;
  flex: 0 0 42px !important;

  margin: 0 0 5px !important;
  padding: 0 !important;

  color: var(--sg-orange) !important;
  -webkit-text-fill-color: var(--sg-orange) !important;

  background: rgba(232, 91, 18, 0.1) !important;

  border: 1px solid rgba(232, 91, 18, 0.45) !important;
  border-radius: 50% !important;

  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0.6px !important;
}

#sg-smoker-question-time-number *,
#sg-smoker-question-priority-number *,
#sg-smoker-question-budget-number *,
#sg-smoker-question-frequency-number * {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  background: transparent !important;

  font: inherit !important;
}


/* =========================================================
   13. QUESTION TITLES
   ========================================================= */

#sg-smoker-question-time-title,
#sg-smoker-question-priority-title,
#sg-smoker-question-budget-title,
#sg-smoker-question-frequency-title {
  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;

  background: transparent !important;

  font-size: 23px !important;
  font-weight: 700 !important;
  line-height: 1.16 !important;
  letter-spacing: -0.35px !important;

  text-wrap: balance;
}

#sg-smoker-question-time-title *,
#sg-smoker-question-priority-title *,
#sg-smoker-question-budget-title *,
#sg-smoker-question-frequency-title * {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  font: inherit !important;
  letter-spacing: inherit !important;
}


/* =========================================================
   14. QUESTION DESCRIPTIONS
   ========================================================= */

#sg-smoker-question-time-answers,
#sg-smoker-question-priority-answers,
#sg-smoker-question-budget-answers,
#sg-smoker-question-frequency-answers {
  width: 100% !important;

  margin: auto 0 0 !important;
  padding: 0 !important;

  color: var(--sg-card-text) !important;
  -webkit-text-fill-color: var(--sg-card-text) !important;

  background: transparent !important;

  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
}

#sg-smoker-question-time-answers *,
#sg-smoker-question-priority-answers *,
#sg-smoker-question-budget-answers *,
#sg-smoker-question-frequency-answers * {
  margin: 0 !important;
  padding: 0 !important;

  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;

  font: inherit !important;
}


/* =========================================================
   15. ACCESSIBILITY
   ========================================================= */

#sg-smoker-compare-btn:focus-visible,
#sg-smoker-match-btn:focus-visible,
#sg-smoker-quiz-btn:focus-visible,
.sg-match-quiz-button:focus-visible {
  outline: 3px solid var(--sg-cream) !important;
  outline-offset: 4px !important;
}


/* =========================================================
   16. TABLET
   ========================================================= */

@media (max-width: 1024px) {
  #sg-smoker-hero {
    min-height: 560px !important;

    padding-top: 62px !important;
    padding-right: 42px !important;
    padding-bottom: 62px !important;
    padding-left: 52px !important;

    background-position: 65% center !important;
  }

  #sg-smoker-hero-title {
    font-size: 50px !important;
  }

  #sg-smoker-match-section {
    padding-top: 82px !important;
    padding-right: 38px !important;
    padding-bottom: 82px !important;
    padding-left: 38px !important;
  }

  #sg-smoker-match-card {
    padding: 38px !important;
  }

  #sg-smoker-match-questions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #sg-smoker-question-time,
  #sg-smoker-question-priority,
  #sg-smoker-question-budget,
  #sg-smoker-question-frequency {
    min-height: 220px !important;
  }
}


/* =========================================================
   17. MOBILE
   ========================================================= */

@media (max-width: 767px) {
  #sg-smoker-hero {
    height: auto !important;
    min-height: 0 !important;

    justify-content: flex-start !important;

    padding-top: 54px !important;
    padding-right: 22px !important;
    padding-bottom: 58px !important;
    padding-left: 22px !important;

    background-position: 66% center !important;
  }

  #sg-smoker-hero::before {
    background:
      linear-gradient(
        90deg,
        rgba(4, 4, 4, 0.98) 0%,
        rgba(4, 4, 4, 0.93) 62%,
        rgba(4, 4, 4, 0.76) 100%
      ),
      linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.12) 0%,
        rgba(0, 0, 0, 0.4) 100%
      ) !important;
  }

  #sg-smoker-hero-copy {
    max-width: 100% !important;
  }

  #sg-smoker-hero-eyebrow {
    font-size: 11.5px !important;
    letter-spacing: 1px !important;
  }

  #sg-smoker-hero-title {
    max-width: 100% !important;

    font-size: clamp(38px, 10.5vw, 47px) !important;
    line-height: 1.02 !important;
    letter-spacing: -1px !important;
  }

  #sg-smoker-hero-tagline {
    max-width: 100% !important;

    font-size: 25px !important;
    line-height: 1.1 !important;
  }

  #sg-smoker-hero-intro {
    max-width: 100% !important;

    font-size: 16px !important;
    line-height: 1.58 !important;
  }

  #sg-smoker-hero-actions {
    flex-direction: column !important;
    align-items: stretch !important;

    gap: 11px !important;
  }

  #sg-smoker-compare-btn,
  #sg-smoker-match-btn {
    width: 100% !important;
    max-width: none !important;
  }

  #sg-smoker-match-section {
    padding-top: 68px !important;
    padding-right: 18px !important;
    padding-bottom: 68px !important;
    padding-left: 18px !important;
  }

  #sg-smoker-match-card {
    padding: 28px 22px !important;

    border-radius: 17px !important;
  }

  #sg-smoker-match-header,
  .sg-match-header-layout {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;

    align-items: stretch !important;

    gap: 22px !important;

    margin-bottom: 24px !important;
    padding-bottom: 28px !important;
  }

  #sg-smoker-match-header-copy,
  .sg-match-header-copy {
    grid-column: 1 !important;
    grid-row: 1 !important;

    max-width: 100% !important;
  }

  #sg-smoker-match-title {
    font-size: 38px !important;
  }

  #sg-smoker-match-intro {
    font-size: 16px !important;
  }

  #sg-smoker-quiz-btn,
  .sg-match-quiz-button {
    grid-column: 1 !important;
    grid-row: 2 !important;

    justify-self: stretch !important;
    align-self: stretch !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    margin: 0 !important;
  }

  #sg-smoker-match-questions {
    grid-template-columns: 1fr !important;

    gap: 14px !important;
  }

  #sg-smoker-question-time,
  #sg-smoker-question-priority,
  #sg-smoker-question-budget,
  #sg-smoker-question-frequency {
    min-height: 0 !important;

    padding: 23px !important;
  }

  #sg-smoker-question-time-title,
  #sg-smoker-question-priority-title,
  #sg-smoker-question-budget-title,
  #sg-smoker-question-frequency-title {
    font-size: 22px !important;
  }
}


/* =========================================================
   18. SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {
  #sg-smoker-hero {
    padding-top: 46px !important;
    padding-right: 18px !important;
    padding-bottom: 50px !important;
    padding-left: 18px !important;

    background-position: 65% center !important;
  }

  #sg-smoker-hero-title {
    font-size: 36px !important;
  }

  #sg-smoker-hero-tagline {
    font-size: 22px !important;
  }

  #sg-smoker-match-section {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  #sg-smoker-match-card {
    padding: 24px 18px !important;
  }

  #sg-smoker-match-title {
    font-size: 34px !important;
  }
}



/* =========================================================
   19. RESPONSIVE FRAMEWORK FOR ALL GUIDE SECTIONS
   Keeps desktop intact while repairing tablet and mobile
   ========================================================= */

/* Global containment for every section built after the quiz */
#sg-smoker-guide .sg-smoker-breakdown-section,
#sg-smoker-guide .sg-smoker-breakdown-inner,
#sg-smoker-guide .sg-smoker-breakdown-header,
#sg-smoker-guide .sg-smoker-breakdown-copy,
#sg-smoker-guide .sg-smoker-breakdown-visual,
#sg-smoker-guide .sg-smoker-breakdown-facts,
#sg-smoker-guide .sg-smoker-fact,
#sg-smoker-guide .sg-smoker-how-it-works,
#sg-smoker-guide .sg-smoker-process-grid,
#sg-smoker-guide .sg-smoker-process-step,
#sg-smoker-guide .sg-smoker-pros-cons,
#sg-smoker-guide .sg-smoker-pros-cons-grid,
#sg-smoker-guide .sg-smoker-pros-card,
#sg-smoker-guide .sg-smoker-cons-card,
#sg-smoker-guide .sg-smoker-buying-guide,
#sg-smoker-guide .sg-smoker-buying-factors,
#sg-smoker-guide .sg-smoker-buying-factor,
#sg-smoker-guide .sg-smoker-verdict-panel,
#sg-smoker-guide .sg-master-basics-inner,
#sg-smoker-guide .sg-master-basics-header,
#sg-smoker-guide .sg-master-basics-grid,
#sg-smoker-guide .sg-master-basics-card,
#sg-smoker-guide .sg-master-basics-cta,
#sg-smoker-guide .sg-essential-gear-inner,
#sg-smoker-guide .sg-essential-gear-grid,
#sg-smoker-guide .sg-essential-gear-card {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

#sg-smoker-guide img,
#sg-smoker-guide svg,
#sg-smoker-guide video,
#sg-smoker-guide iframe {
  max-width: 100% !important;
}

#sg-smoker-guide .sg-smoker-breakdown-title,
#sg-smoker-guide .sg-smoker-content-title,
#sg-smoker-guide .sg-master-basics-heading,
#sg-smoker-guide .sg-essential-gear-title,
#sg-smoker-guide .sg-master-basics-title,
#sg-smoker-guide .sg-essential-gear-title,
#sg-smoker-guide .sg-smoker-card-title,
#sg-smoker-guide .sg-smoker-process-title,
#sg-smoker-guide .sg-smoker-pros-cons-card-title {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

/* Shared centered content width */
#sg-smoker-guide .sg-smoker-breakdown-inner,
#sg-smoker-guide .sg-master-basics-inner,
#sg-smoker-guide .sg-essential-gear-inner {
  width: min(100%, 1200px) !important;
  max-width: 1200px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

/* Desktop structural safeguards */
#sg-smoker-guide .sg-smoker-breakdown-header {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(300px, 0.92fr) !important;
  align-items: center !important;
  gap: clamp(32px, 5vw, 64px) !important;
  width: 100% !important;
}

#sg-smoker-guide .sg-smoker-breakdown-copy,
#sg-smoker-guide .sg-smoker-breakdown-visual {
  width: 100% !important;
}

#sg-smoker-guide .sg-smoker-breakdown-image,
#sg-smoker-guide .sg-smoker-breakdown-visual img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
}

#sg-smoker-guide .sg-smoker-breakdown-facts {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
}

#sg-smoker-guide .sg-smoker-process-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: 1fr !important;
  align-items: stretch !important;
  gap: 16px !important;
  width: 100% !important;
}

#sg-smoker-guide .sg-smoker-process-step {
  width: 100% !important;
  height: 100% !important;
}

#sg-smoker-guide .sg-smoker-pros-cons-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: 1fr !important;
  align-items: stretch !important;
  gap: 20px !important;
  width: 100% !important;
}

#sg-smoker-guide .sg-smoker-pros-card,
#sg-smoker-guide .sg-smoker-cons-card {
  width: 100% !important;
  height: 100% !important;
}

#sg-smoker-guide .sg-smoker-buying-factors {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: 1fr !important;
  align-items: stretch !important;
  gap: 16px !important;
  width: 100% !important;
}

#sg-smoker-guide .sg-smoker-buying-factor {
  width: 100% !important;
  height: 100% !important;
}

#sg-smoker-guide .sg-master-basics-inner,
#sg-smoker-guide .sg-essential-gear-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 32px !important;
}

#sg-smoker-guide .sg-master-basics-header {
  width: 100% !important;
  text-align: center !important;
}

#sg-smoker-guide .sg-master-basics-grid,
#sg-smoker-guide .sg-essential-gear-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-rows: 1fr !important;
  align-items: stretch !important;
  gap: 20px !important;
  width: 100% !important;
}

#sg-smoker-guide .sg-master-basics-card,
#sg-smoker-guide .sg-essential-gear-card {
  width: 100% !important;
  height: 100% !important;
}

#sg-smoker-guide .sg-master-basics-cta {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin-top: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

#sg-smoker-guide .sg-essential-gear-card .elementor-widget-image,
#sg-smoker-guide .sg-essential-gear-card .elementor-widget-image .elementor-widget-container {
  width: 100% !important;
}

#sg-smoker-guide .sg-essential-gear-card .elementor-widget-image img {
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 12px !important;
}

/* Prevent button and text overflow */
#sg-smoker-guide .sg-smoker-card-button,
#sg-smoker-guide .sg-smoker-verdict-panel a,
#sg-smoker-guide .sg-smoker-verdict-panel button,
#sg-smoker-guide .sg-master-basics-cta a,
#sg-smoker-guide .sg-master-basics-cta button {
  max-width: 100% !important;
  white-space: normal !important;
  text-align: center !important;
}


/* =========================================================
   20. TABLET + MOBILE REPAIR FOR ALL GUIDE SECTIONS
   ========================================================= */

@media (max-width: 1024px) {
  #sg-smoker-guide .sg-smoker-breakdown-inner,
  #sg-smoker-guide .sg-master-basics-inner,
  #sg-smoker-guide .sg-essential-gear-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 24px !important;
    padding-left: 24px !important;
  }

  #sg-smoker-guide .sg-smoker-breakdown-header {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.82fr) !important;
    gap: 32px !important;
  }

  #sg-smoker-guide .sg-smoker-process-grid,
  #sg-smoker-guide .sg-smoker-buying-factors,
  #sg-smoker-guide .sg-master-basics-grid,
  #sg-smoker-guide .sg-essential-gear-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: 1fr !important;
  }
}

@media (max-width: 767px) {
  #sg-smoker-guide .sg-smoker-breakdown-section,
  #sg-smoker-master-basics,
  #sg-smoker-essential-gear {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  #sg-smoker-guide .sg-smoker-breakdown-inner,
  #sg-smoker-guide .sg-master-basics-inner,
  #sg-smoker-guide .sg-essential-gear-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  #sg-smoker-guide .sg-smoker-breakdown-header {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 26px !important;
  }

  #sg-smoker-guide .sg-smoker-breakdown-copy,
  #sg-smoker-guide .sg-smoker-breakdown-visual {
    width: 100% !important;
    max-width: 100% !important;
  }

  #sg-smoker-guide .sg-smoker-breakdown-title,
  #sg-smoker-guide .sg-master-basics-heading,
  #sg-smoker-guide .sg-essential-gear-title {
    max-width: 100% !important;
    font-size: clamp(2rem, 10vw, 2.75rem) !important;
    line-height: 1.06 !important;
    letter-spacing: -0.035em !important;
    overflow-wrap: anywhere !important;
  }

  #sg-smoker-guide .sg-smoker-breakdown-intro,
  #sg-smoker-guide .sg-smoker-content-intro,
  #sg-smoker-guide .sg-smoker-process-copy,
  #sg-smoker-guide .sg-master-basics-description,
  #sg-smoker-guide .sg-essential-gear-description {
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
  }

  #sg-smoker-guide .sg-smoker-breakdown-facts,
  #sg-smoker-guide .sg-smoker-process-grid,
  #sg-smoker-guide .sg-smoker-pros-cons-grid,
  #sg-smoker-guide .sg-smoker-buying-factors,
  #sg-smoker-guide .sg-master-basics-grid,
  #sg-smoker-guide .sg-essential-gear-grid {
    grid-template-columns: 1fr !important;
    grid-auto-rows: auto !important;
    gap: 16px !important;
  }

  #sg-smoker-guide .sg-smoker-fact,
  #sg-smoker-guide .sg-smoker-process-step,
  #sg-smoker-guide .sg-smoker-pros-card,
  #sg-smoker-guide .sg-smoker-cons-card,
  #sg-smoker-guide .sg-smoker-buying-factor,
  #sg-smoker-guide .sg-master-basics-card,
  #sg-smoker-guide .sg-essential-gear-card {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }

  #sg-smoker-guide .sg-smoker-breakdown-image,
  #sg-smoker-guide .sg-smoker-breakdown-visual img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 4 / 5 !important;
    object-fit: cover !important;
  }

  #sg-smoker-guide .sg-master-basics-card,
  #sg-smoker-guide .sg-essential-gear-card {
    padding: 20px !important;
  }

  #sg-smoker-guide .sg-essential-gear-card .elementor-widget-image img {
    width: 100% !important;
    height: 210px !important;
  }

  #sg-smoker-guide .sg-master-basics-cta {
    width: 100% !important;
    margin-top: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  #sg-smoker-guide .sg-master-basics-cta > *,
  #sg-smoker-guide .sg-master-basics-cta .elementor-widget-button,
  #sg-smoker-guide .sg-master-basics-cta .elementor-button-wrapper {
    width: 100% !important;
    max-width: 100% !important;
  }

  #sg-smoker-guide .sg-master-basics-cta a,
  #sg-smoker-guide .sg-master-basics-cta button,
  #sg-smoker-guide .sg-master-basics-cta .elementor-button {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 480px) {
  #sg-smoker-guide .sg-smoker-breakdown-inner,
  #sg-smoker-guide .sg-master-basics-inner,
  #sg-smoker-guide .sg-essential-gear-inner {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  #sg-smoker-guide .sg-smoker-breakdown-title,
  #sg-smoker-guide .sg-master-basics-heading,
  #sg-smoker-guide .sg-essential-gear-title {
    font-size: clamp(1.9rem, 10.5vw, 2.45rem) !important;
  }

  #sg-smoker-guide .sg-master-basics-card,
  #sg-smoker-guide .sg-essential-gear-card {
    padding: 18px !important;
  }
}

/* =========================================================
   21. PRO / CON ICON RESTORATION
   ========================================================= */

#sg-smoker-guide .sg-smoker-pro-item,
#sg-smoker-guide .sg-smoker-con-item {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding-left: 30px !important;
  box-sizing: border-box !important;
}

#sg-smoker-guide .sg-smoker-pro-item::before,
#sg-smoker-guide .sg-smoker-con-item::before {
  position: absolute !important;
  top: 0.12em !important;
  left: 0 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 19px !important;
  height: 19px !important;

  border-radius: 50% !important;

  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  pointer-events: none !important;
}

#sg-smoker-guide .sg-smoker-pro-item::before {
  content: "✓" !important;
  color: #69d28b !important;
  background: rgba(72, 187, 120, 0.12) !important;
  border: 1px solid rgba(72, 187, 120, 0.38) !important;
}

#sg-smoker-guide .sg-smoker-con-item::before {
  content: "×" !important;
  color: #ff7474 !important;
  background: rgba(239, 68, 68, 0.12) !important;
  border: 1px solid rgba(239, 68, 68, 0.38) !important;
}


/* =========================================================
   22. REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
  #sg-smoker-guide *,
  #sg-smoker-guide *::before,
  #sg-smoker-guide *::after {
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */