/*
Theme Name: LUDISC Astra Child v2.1 Fixed — ACTIVE
Theme URI: https://ludisc.com/
Description: Active production child theme for LUDISC.com
Author: LUDISC
Version: 2.1.6
Template: astra
Text Domain: ludisc
Requires at least: 6.2
Requires PHP: 7.4
*/

:root {
  --ludisc-primary: #4CAF50;
  --ludisc-secondary: #FF9800;
  --ludisc-accent: #2196F3;
  --ludisc-text: #263238;
  --ludisc-muted: #64748b;
  --ludisc-light: #f8fafc;
  --ludisc-white: #ffffff;
  --ludisc-radius: 20px;
  --ludisc-shadow: 0 14px 36px rgba(38,50,56,.10);
  --ludisc-font-body: Inter, Arial, sans-serif;
  --ludisc-font-heading: Poppins, Arial, sans-serif;
  --ludisc-font-size-base: 17px;
  --ludisc-line-height-base: 1.7;
  --ludisc-h1-size: clamp(2.25rem, 4vw, 3.25rem);
  --ludisc-h2-size: clamp(1.75rem, 3vw, 2.35rem);
  --ludisc-h3-size: clamp(1.35rem, 2vw, 1.65rem);
  --ludisc-h4-size: 1.25rem;
  --ludisc-h5-size: 1.1rem;
  --ludisc-h6-size: 1rem;
}

body { color: var(--ludisc-text); font-family: var(--ludisc-font-body); font-size:var(--ludisc-font-size-base); line-height:var(--ludisc-line-height-base); }
body button, body input, body select, body textarea { font-family:var(--ludisc-font-body); }
h1,h2,h3,h4,h5,h6 { font-family:var(--ludisc-font-heading); font-weight:700; line-height:1.2; }
.entry-content, .woocommerce, .elementor-widget-text-editor, .wp-block-post-content { font-family:var(--ludisc-font-body); }
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6,
.woocommerce h1, .woocommerce h2, .woocommerce h3, .woocommerce h4, .woocommerce h5, .woocommerce h6,
.elementor-widget-heading .elementor-heading-title { font-family:var(--ludisc-font-heading); }
a { text-decoration: none; }
.ludisc-container { width: min(1200px, calc(100% - 40px)); margin-inline: auto; }
.ludisc-section { padding: 80px 0; }
.ludisc-section--soft { background: var(--ludisc-light); }
.ludisc-section-heading { max-width: 760px; margin: 0 auto 42px; text-align: center; }
.ludisc-eyebrow { display:inline-block; color:var(--ludisc-primary); font-weight:700; letter-spacing:.08em; text-transform:uppercase; font-size:.82rem; margin-bottom:10px; }
.ludisc-title { font-size: clamp(2rem, 4vw, 3.25rem); line-height:1.1; margin:0 0 16px; }
.ludisc-copy { color:var(--ludisc-muted); font-size:1.08rem; line-height:1.75; }
.ludisc-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:12px 22px; border-radius:999px; font-weight:700; transition:.2s ease; }
.ludisc-btn--primary { background:var(--ludisc-primary); color:#fff; }
.ludisc-btn--primary:hover { color:#fff; transform:translateY(-2px); }
.ludisc-btn--outline { border:2px solid var(--ludisc-primary); color:var(--ludisc-primary); }
.ludisc-btn--outline:hover { background:var(--ludisc-primary); color:#fff; }

.ludisc-announcement { background:linear-gradient(90deg,var(--ludisc-primary),#79c342); color:#fff; text-align:center; padding:9px 15px; font-weight:600; font-size:.92rem; }
.ludisc-header { background:#fff; position:sticky; top:0; z-index:999; box-shadow:0 4px 20px rgba(0,0,0,.06); overflow:visible; }
.ludisc-header__inner { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:24px; position:relative; }
.ludisc-logo { flex:0 0 auto; line-height:0; }
.ludisc-logo .custom-logo-link { display:block; }
.ludisc-logo img { display:block; max-height:58px; width:auto; }
.ludisc-logo__text { font-family:Poppins,sans-serif; font-size:2rem; font-weight:800; color:var(--ludisc-primary); }
.ludisc-nav { overflow:visible; }
.ludisc-nav > ul,
.ludisc-nav > div > ul { display:flex; list-style:none; gap:clamp(12px,1.35vw,24px); margin:0; padding:0; align-items:center; }
.ludisc-nav li { list-style:none; margin:0; }
.ludisc-nav > ul > li,
.ludisc-nav > div > ul > li { position:relative; }
.ludisc-nav a { color:var(--ludisc-text); font-weight:600; }
.ludisc-nav > ul > li > a,
.ludisc-nav > div > ul > li > a { display:flex; align-items:center; min-height:44px; white-space:nowrap; }
.ludisc-nav a:hover,
.ludisc-nav .current-menu-item > a,
.ludisc-nav .current-menu-ancestor > a { color:var(--ludisc-primary); }
.ludisc-nav .menu-item-has-children > a::after { content:"\25BE"; margin-left:6px; font-size:.72em; line-height:1; color:var(--ludisc-muted); }
.ludisc-nav .sub-menu {
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  z-index:1000;
  display:block;
  min-width:250px;
  margin:0;
  padding:10px;
  list-style:none;
  background:#fff;
  border:1px solid #e5edf1;
  border-radius:14px;
  box-shadow:0 18px 40px rgba(38,50,56,.14);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(8px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.ludisc-nav .sub-menu::before { content:""; position:absolute; left:0; right:0; top:-10px; height:10px; }
.ludisc-nav .sub-menu li { position:relative; width:100%; }
.ludisc-nav .sub-menu a { display:block; padding:10px 12px; border-radius:9px; line-height:1.4; white-space:normal; }
.ludisc-nav .sub-menu a:hover,
.ludisc-nav .sub-menu a:focus { background:#f1fbf2; color:var(--ludisc-primary); outline:none; }
.ludisc-nav li:hover > .sub-menu,
.ludisc-nav li:focus-within > .sub-menu { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
.ludisc-nav .sub-menu .sub-menu { top:0; left:calc(100% + 8px); }
.ludisc-header-actions { display:flex; gap:14px; align-items:center; }
.ludisc-header-actions a { color:var(--ludisc-text); font-weight:700; }
.ludisc-search-toggle { appearance:none; border:0; background:transparent; color:var(--ludisc-text); font-weight:700; padding:8px 0; cursor:pointer; }
.ludisc-search-toggle:hover, .ludisc-search-toggle:focus { color:var(--ludisc-primary); }
.ludisc-header-search { position:absolute; top:calc(100% + 10px); right:0; z-index:1002; width:min(520px,calc(100vw - 40px)); padding:16px; background:#fff; border:1px solid #e5edf1; border-radius:16px; box-shadow:0 18px 40px rgba(38,50,56,.16); }
.ludisc-header-search[hidden] { display:none; }
.ludisc-product-search { display:flex; align-items:stretch; gap:10px; width:100%; }
.ludisc-product-search input[type="search"] { flex:1; min-width:0; min-height:48px; padding:10px 16px; border:1px solid #cbd5e1; border-radius:999px; background:#fff; color:var(--ludisc-text); font-size:1rem; }
.ludisc-product-search input[type="search"]:focus { border-color:var(--ludisc-primary); outline:3px solid rgba(76,175,80,.16); outline-offset:1px; }
.ludisc-product-search button { min-height:48px; padding:10px 20px; border:0; border-radius:999px; background:var(--ludisc-primary); color:#fff; font-weight:700; cursor:pointer; }
.ludisc-shop-search { width:min(720px,100%); margin:0 auto 32px; }
.ludisc-mobile-toggle { display:none; border:0; background:transparent; font-size:1.5rem; }

.ludisc-hero { padding:70px 0; background:linear-gradient(135deg,#fff 0%,#f1fbf2 55%,#fff8ec 100%); overflow:hidden; }
.ludisc-hero__grid { display:grid; grid-template-columns: .95fr 1.05fr; gap:52px; align-items:center; }
.ludisc-hero h1 { font-size:var(--ludisc-h1-size); line-height:1.15; margin:12px 0 20px; }
.ludisc-hero__buttons { display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
.ludisc-hero__trust { display:flex; flex-wrap:wrap; gap:16px; margin-top:28px; color:var(--ludisc-muted); font-weight:600; }
.ludisc-hero__image img { width:100%; border-radius:32px; box-shadow:var(--ludisc-shadow); }

.ludisc-grid { display:grid; gap:24px; }
.ludisc-grid--5 { grid-template-columns:repeat(5,1fr); }
.ludisc-grid--4 { grid-template-columns:repeat(4,1fr); }
.ludisc-grid--3 { grid-template-columns:repeat(3,1fr); }
.ludisc-card { background:#fff; border-radius:var(--ludisc-radius); box-shadow:var(--ludisc-shadow); overflow:hidden; height:100%; transition:.22s ease; }
.ludisc-card:hover { transform:translateY(-6px); }
.ludisc-card img { width:100%; aspect-ratio:1/1; object-fit:cover; }
.ludisc-card__body { padding:22px; }
.ludisc-card h3 { font-size:1.18rem; margin:0 0 9px; }
.ludisc-card p { color:var(--ludisc-muted); margin:0; line-height:1.6; }
.ludisc-card__link { display:inline-block; margin-top:14px; color:var(--ludisc-primary); font-weight:700; }

.ludisc-split { display:grid; grid-template-columns:1fr 1fr; gap:54px; align-items:center; }
.ludisc-split img { width:100%; border-radius:28px; box-shadow:var(--ludisc-shadow); }
.ludisc-feature-list { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:26px; }
.ludisc-feature { padding:18px; background:#fff; border-radius:16px; box-shadow:0 8px 24px rgba(38,50,56,.08); font-weight:700; }

.ludisc-products .products { display:grid!important; grid-template-columns:repeat(4,1fr)!important; gap:24px!important; }
.ludisc-products .product { width:auto!important; margin:0!important; background:#fff; border-radius:18px; padding:14px!important; box-shadow:var(--ludisc-shadow); }

.ludisc-newsletter { background:linear-gradient(135deg,#eaf8ec,#eef7ff); border-radius:30px; padding:52px; text-align:center; }
.ludisc-newsletter form { display:flex; max-width:650px; margin:24px auto 0; gap:10px; }
.ludisc-newsletter input { flex:1; min-height:50px; border:1px solid #d7e1e8; border-radius:999px; padding:0 20px; }

.ludisc-inner-hero { padding:72px 0; background:linear-gradient(135deg,#f1fbf2,#fff8ec); text-align:center; }
.ludisc-content { max-width:920px; margin:0 auto; font-size:1.05rem; line-height:1.8; }
.ludisc-content h2 { margin-top:38px; }

.ludisc-product-faq { clear:both; width:min(900px,calc(100% - 40px)); margin:48px auto; }
.ludisc-product-faq > h2 { margin:0 0 20px; text-align:center; }
.ludisc-product-faq__list { display:grid; gap:12px; }
.ludisc-product-faq__item { margin:0; border:1px solid #dfe8e3; border-radius:14px; background:#fff; box-shadow:0 6px 18px rgba(38,50,56,.06); overflow:hidden; }
.ludisc-product-faq__item summary { position:relative; padding:17px 48px 17px 20px; color:var(--ludisc-text); font-family:var(--ludisc-font-heading); font-weight:600; line-height:1.4; cursor:pointer; list-style:none; }
.ludisc-product-faq__item summary::-webkit-details-marker { display:none; }
.ludisc-product-faq__item summary::after { content:'+'; position:absolute; right:20px; top:50%; transform:translateY(-50%); color:var(--ludisc-primary); font-size:1.35rem; font-weight:700; }
.ludisc-product-faq__item[open] summary::after { content:'−'; }
.ludisc-product-faq__answer { padding:0 20px 18px; color:var(--ludisc-muted); }
.ludisc-product-faq__answer p { margin:0; line-height:var(--ludisc-line-height-base); }

.ludisc-footer { background:#173326; color:#eaf6ee; padding:64px 0 22px; }
.ludisc-footer__grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:34px; }
.ludisc-footer h3 { color:#fff; font-size:1.08rem; }
.ludisc-footer ul { list-style:none; margin:0; padding:0; }
.ludisc-footer li { margin:9px 0; }
.ludisc-footer a { color:#d5eadc; }
.ludisc-footer__bottom { margin-top:40px; padding-top:20px; border-top:1px solid rgba(255,255,255,.15); display:flex; justify-content:space-between; gap:20px; }

@media (max-width: 1024px) {
  .ludisc-grid--5 { grid-template-columns:repeat(3,1fr); }
  .ludisc-grid--4, .ludisc-products .products { grid-template-columns:repeat(2,1fr)!important; }
  .ludisc-footer__grid { grid-template-columns:2fr 1fr 1fr; }
}
@media (max-width: 1100px) {
  .ludisc-header__inner { min-height:82px; }
  .ludisc-mobile-toggle { display:block; }
  .ludisc-nav { display:none; position:absolute; left:0; right:0; top:100%; max-height:calc(100vh - 120px); overflow-y:auto; background:#fff; padding:16px 20px 22px; box-shadow:0 16px 30px rgba(0,0,0,.1); }
  .ludisc-nav.is-open { display:block; }
  .ludisc-nav > ul,
  .ludisc-nav > div > ul { flex-direction:column; align-items:stretch; gap:2px; }
  .ludisc-nav > ul > li,
  .ludisc-nav > div > ul > li { width:100%; }
  .ludisc-nav > ul > li > a,
  .ludisc-nav > div > ul > li > a { justify-content:space-between; width:100%; min-height:46px; padding:8px 10px; white-space:normal; }
  .ludisc-nav .sub-menu {
    position:static;
    display:block;
    min-width:0;
    margin:0 0 6px;
    padding:0 0 0 18px;
    background:transparent;
    border:0;
    border-left:2px solid #d9efdc;
    border-radius:0;
    box-shadow:none;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
    transition:none;
  }
  .ludisc-nav .sub-menu::before { display:none; }
  .ludisc-nav .sub-menu a { padding:9px 12px; }
  .ludisc-header-actions { display:flex; margin-left:auto; }
  .ludisc-header-actions > a { display:none; }
  .ludisc-header-search { right:0; }
}
@media (max-width: 800px) {
  .ludisc-hero__grid, .ludisc-split { grid-template-columns:1fr; }
  .ludisc-hero__image { order:-1; }
  .ludisc-grid--5, .ludisc-grid--4, .ludisc-grid--3 { grid-template-columns:repeat(2,1fr); }
  .ludisc-footer__grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 560px) {
  .ludisc-container { width:min(100% - 24px,1200px); }
  .ludisc-section { padding:58px 0; }
  .ludisc-grid--5, .ludisc-grid--4, .ludisc-grid--3, .ludisc-products .products { grid-template-columns:1fr!important; }
  .ludisc-feature-list { grid-template-columns:1fr; }
  .ludisc-newsletter { padding:34px 20px; }
  .ludisc-newsletter form { flex-direction:column; }
  .ludisc-product-search { flex-direction:column; }
  .ludisc-product-faq { width:min(100% - 24px,900px); margin:36px auto; }
  .ludisc-footer__grid { grid-template-columns:1fr; }
  .ludisc-footer__bottom { flex-direction:column; }
}


/* ==========================================================
   15. ASTRA + GUTENBERG LAYOUT RESET
   Prevent unwanted blank space above page content.
========================================================== */

/* The custom LUDISC templates output <main> directly after the header. */
body.home #primary.site-main,
body.page #primary.site-main,
body.home main.site-main,
body.page main.site-main {
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}

/* Remove Astra content-area spacing when its wrappers are present. */
body.home #content,
body.home .site-content,
body.home .content-area,
body.home .ast-container,
body.page #content,
body.page .site-content,
body.page .content-area {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Remove Gutenberg's first-block margin without changing later sections. */
body.home #primary > :first-child,
body.home #primary > .entry-content:first-child,
body.home #primary > .wp-block-group:first-child,
body.home #primary > .wp-block-cover:first-child,
body.home #primary > .wp-block-columns:first-child {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
}

/* The first block must begin immediately beneath the custom header. */
body.home .site-main > .wp-block-group:first-child {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
}

/* Keep block content from inheriting Astra page padding. */
body.home .entry-content,
body.page .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Do not apply generic spacing to every HTML section. */
.ludisc-section {
  padding: 80px 0;
}

/* Optional class for the Gutenberg homepage hero. */
.ludisc-home-hero {
  margin-top: 0 !important;
  padding-top: 45px;
  padding-bottom: 70px;
}

/* WordPress admin bar correction for the sticky custom header. */
.admin-bar .ludisc-header {
  top: 32px;
}

@media (max-width: 782px) {
  .admin-bar .ludisc-header {
    top: 46px;
  }
}

@media (max-width: 560px) {
  .ludisc-home-hero {
    padding-top: 30px;
    padding-bottom: 50px;
  }
}

/* ==========================================================
   16. FINAL FOOTER CONTRAST FIX
   Overrides Astra global heading colors in the custom footer.
========================================================== */
body footer.ludisc-footer h2,
body footer.ludisc-footer h3,
body footer.ludisc-footer .ludisc-footer__grid h2,
body footer.ludisc-footer .ludisc-footer__grid h3 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
}

/* ==========================================================
   NEWSLETTER TEXT VISIBILITY — FINAL FIX
========================================================== */

body.home .ludisc-newsletter,
body.home .wp-block-group.ludisc-newsletter {
    color: #263238 !important;
}

body.home .ludisc-newsletter h1,
body.home .ludisc-newsletter h2,
body.home .ludisc-newsletter h3,
body.home .wp-block-group.ludisc-newsletter h1,
body.home .wp-block-group.ludisc-newsletter h2,
body.home .wp-block-group.ludisc-newsletter h3 {
    color: #1F2937 !important;
    -webkit-text-fill-color: #1F2937 !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

body.home .ludisc-newsletter p,
body.home .wp-block-group.ludisc-newsletter p {
    color: #4B5563 !important;
    -webkit-text-fill-color: #4B5563 !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

body.home .ludisc-newsletter .wp-block-button__link,
body.home .wp-block-group.ludisc-newsletter .wp-block-button__link {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* LUDISC HTML PAGE SUPPORT */

.container {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
}

.hero {
    padding: 80px 0;
}

.hero-grid,
.two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
}

.section {
    padding: 70px 0;
}

.alt {
    background: #f7f7f7;
}

.center {
    text-align: center;
}

.cards {
    display: grid;
    gap: 20px;
}

.cards-3 {
    grid-template-columns: repeat(3, 1fr);
}

.cards-5 {
    grid-template-columns: repeat(5, 1fr);
}

.card {
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,0,0,.08);
}

.placeholder-img {
    width: 100%;
    height: auto;
    border-radius: 12px;
    background: #f0f0f0;
}

.btn {
    display: inline-block;
    padding: 12px 24px;
    border-radius: 8px;
    text-decoration: none;
    margin-right: 10px;
}

.btn-primary {
    background: #4caf50;
    color: #fff;
}

.btn-outline {
    border: 2px solid #4caf50;
    color: #4caf50;
}

.button-row {
    margin-top: 20px;
}

@media (max-width: 768px) {
    .hero-grid,
    .two-col,
    .cards-3,
    .cards-5 {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================
   17. SITE-WIDE HEADING SYSTEM — v2.1.5
   One typography scale for Astra, WooCommerce, Gutenberg,
   Elementor and custom LUDISC templates. Margins are left to
   each layout so this update does not restructure page spacing.
========================================================== */
body h1,
body .entry-title,
body .page-title,
body .woocommerce-products-header__title,
body.woocommerce div.product .product_title,
body .elementor-widget-heading h1.elementor-heading-title {
  font-family: var(--ludisc-font-heading) !important;
  font-size: var(--ludisc-h1-size) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -.02em;
}

body h2,
body .elementor-widget-heading h2.elementor-heading-title {
  font-family: var(--ludisc-font-heading) !important;
  font-size: var(--ludisc-h2-size) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -.015em;
}

body h3,
body .elementor-widget-heading h3.elementor-heading-title {
  font-family: var(--ludisc-font-heading) !important;
  font-size: var(--ludisc-h3-size) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: -.01em;
}

body h4,
body .elementor-widget-heading h4.elementor-heading-title {
  font-family: var(--ludisc-font-heading) !important;
  font-size: var(--ludisc-h4-size) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

body h5,
body .elementor-widget-heading h5.elementor-heading-title {
  font-family: var(--ludisc-font-heading) !important;
  font-size: var(--ludisc-h5-size) !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

body h6,
body .elementor-widget-heading h6.elementor-heading-title {
  font-family: var(--ludisc-font-heading) !important;
  font-size: var(--ludisc-h6-size) !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: .02em;
}

/* Product-loop headings are cards, not page section headings. */
body.woocommerce ul.products li.product .woocommerce-loop-product__title,
body .woocommerce ul.products li.product .woocommerce-loop-product__title,
body .ludisc-card h3,
body footer.ludisc-footer h3 {
  font-family: var(--ludisc-font-heading) !important;
  font-size: 1.08rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  letter-spacing: 0;
}

/* ==========================================================
   18. COMPACT PRODUCT-PAGE HEADINGS + GALLERY FAQ — v2.1.6
   Keep the product name as the page's semantic H1 while using
   a compact visual scale suited to the two-column product view.
========================================================== */
body.single-product.woocommerce div.product .product_title {
  font-size: clamp(1.7rem, 2.5vw, 2.2rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em;
}

body.single-product.woocommerce div.product h2,
body.single-product.woocommerce div.product .ludisc-product-faq > h2 {
  font-size: clamp(1.35rem, 1.8vw, 1.6rem) !important;
  line-height: 1.22 !important;
  letter-spacing: -.01em;
}

body.single-product.woocommerce div.product h3 {
  font-size: 1.12rem !important;
  line-height: 1.3 !important;
  letter-spacing: 0;
}

body.single-product.woocommerce div.product .woocommerce-product-gallery .ludisc-product-faq {
  clear: both;
  width: 100%;
  margin: 28px 0 0;
}

body.single-product.woocommerce div.product .woocommerce-product-gallery .ludisc-product-faq > h2 {
  margin: 0 0 14px;
  text-align: left;
}

body.single-product.woocommerce div.product .woocommerce-product-gallery .ludisc-product-faq__item summary {
  padding: 14px 42px 14px 16px;
  font-size: .95rem;
}

body.single-product.woocommerce div.product .woocommerce-product-gallery .ludisc-product-faq__answer {
  padding: 0 16px 15px;
  font-size: .94rem;
}

@media (max-width: 768px) {
  body.single-product.woocommerce div.product .woocommerce-product-gallery .ludisc-product-faq {
    margin-top: 24px;
  }
}
