/* Main single product container */
body.single-product.woocommerce div.product,
body.single-product .site-main div.product,
body.single-product .ast-woocommerce-container div.product {
  max-width: 1220px !important;
  margin: 0 auto !important;
  padding: 70px 20px 100px !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr) !important;
  gap: 46px !important;
  align-items: start !important;
}


/* Right summary card */
body.single-product div.product div.summary,
body.single-product div.product .summary,
body.single-product div.product .entry-summary {
  grid-column: 2 !important;
  width: 100% !important;
  float: none !important;
  clear: none !important;

  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 34px !important;
  padding: 38px !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.08) !important;
}


/* Product title */
body.single-product .product_title,
body.single-product .entry-title {
  font-size: clamp(38px, 4vw, 58px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.04em !important;
  color: #151515 !important;
  margin: 0 0 18px !important;
}

/* Breadcrumb */
body.single-product .woocommerce-breadcrumb {
  font-size: 13px !important;
  color: #74716b !important;
  margin-bottom: 18px !important;
}

/* Tabs + related products full width */
body.single-product .woocommerce-tabs,
body.single-product section.related.products {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin-top: 60px !important;
}

/* Mobile */
@media (max-width: 920px) {
  body.single-product.woocommerce div.product,
  body.single-product .site-main div.product,
  body.single-product .ast-woocommerce-container div.product {
    display: block !important;
  }

  body.single-product div.product div.summary,
  body.single-product div.product .summary,
  body.single-product div.product .entry-summary {
    margin-top: 28px !important;
  }
}
.riikas-key-specs {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 28px;
}

.riikas-spec-card {
  background: #faf8f4;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 18px;
  padding: 16px;
}

.riikas-spec-card span {
  display: block;
  color: #74716b;
  font-size: 13px;
  font-weight: 800;
}

.riikas-spec-card strong {
  color: #151515;
  font-size: 18px;
  font-weight: 900;
}
.riikas-product-actions {
  margin-top: 30px;
  display: grid;
  gap: 14px;
}

.riikas-request-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-height: 56px;
  padding: 15px 24px;

  border-radius: 999px;
  background: #c79a3b;
  color: #151515 !important;

  font-size: 16px;
  font-weight: 900;
  text-decoration: none !important;

  box-shadow: 0 12px 26px rgba(199,154,59,.26);
  transition: transform .2s ease, box-shadow .2s ease;
}

.riikas-request-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 16px 32px rgba(199,154,59,.34);
}

.riikas-installation-link {
  display: inline-flex;
  justify-content: center;
  width: fit-content;
  margin: 0 auto;

  color: #151515 !important;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(21,21,21,.25);
  padding-bottom: 3px;
}

.riikas-installation-link:hover {
  color: #c79a3b !important;
  border-color: #c79a3b;
}

body.single-product .site-content {
  background: #faf8f4;
}

/* Main product layout */
body.single-product div.product {
  max-width: 1220px !important;
  margin: 0 auto !important;
  padding: 70px 20px 100px !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr) !important;
  gap: 46px !important;
  align-items: start !important;
}

/* Summary card */
body.single-product div.product .summary,
body.single-product div.product .entry-summary {
  grid-column: 2 !important;
  width: 100% !important;
  float: none !important;
  clear: none !important;

  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 34px !important;
  padding: 38px !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.08) !important;
}

/* Breadcrumb */
body.single-product .woocommerce-breadcrumb {
  font-size: 13px !important;
  color: #74716b !important;
  margin-bottom: 18px !important;
}

/* Category label */
body.single-product .posted_in,
body.single-product .product_meta {
  display: none !important;
}

/* Title */
body.single-product .product_title,
body.single-product .entry-title {
  font-size: clamp(38px, 4vw, 58px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.04em !important;
  color: #151515 !important;
  margin: 0 0 18px !important;
}

/* Product intro */
.riikas-product-intro {
  color: #74716b;
  font-size: 16px;
  line-height: 1.65;
  margin: 18px 0 24px;
}

/* Key specs */
.riikas-key-specs {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: 24px 0 0;
}

.riikas-spec-card {
  background: #faf8f4;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 18px;
  padding: 16px;
}

.riikas-spec-card span {
  display: block;
  color: #74716b;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 4px;
}

.riikas-spec-card strong {
  display: block;
  color: #151515;
  font-size: 18px;
  font-weight: 900;
}

/* CTA */
.riikas-product-actions {
  margin-top: 30px;
  display: grid;
  gap: 14px;
}

.riikas-request-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-height: 56px;
  padding: 15px 24px;

  border-radius: 999px;
  background: #c79a3b;
  color: #151515 !important;

  font-size: 16px;
  font-weight: 900;
  text-decoration: none !important;

  box-shadow: 0 12px 26px rgba(199,154,59,.26);
  transition: transform .2s ease, box-shadow .2s ease;
}

.riikas-request-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 16px 32px rgba(199,154,59,.34);
}

.riikas-installation-link {
  display: inline-flex;
  justify-content: center;
  width: fit-content;
  margin: 0 auto;

  color: #151515 !important;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(21,21,21,.25);
  padding-bottom: 3px;
}

.riikas-installation-link:hover {
  color: #c79a3b !important;
  border-color: #c79a3b;
}

/* Summary trust row */
.riikas-summary-trust {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 30px;
  padding-top: 26px;
  border-top: 1px solid rgba(0,0,0,.08);
}

.riikas-summary-trust div {
  display: grid;
  gap: 5px;
}

.riikas-trust-icon {
  width: 30px;
  height: 30px;
  color: #151515;
  display: inline-flex;
  margin-bottom: 4px;
}

.riikas-trust-icon svg {
  width: 100%;
  height: 100%;
}

.riikas-summary-trust strong {
  color: #151515;
  font-size: 14px;
  font-weight: 900;
}

.riikas-summary-trust small {
  color: #74716b;
  font-size: 12px;
  line-height: 1.35;
}

/* Hide WooCommerce tabs wrapper if empty */
body.single-product .woocommerce-tabs {
  display: none !important;
}

/* Details section */
.riikas-details-section {
  grid-column: 1 / -1;
  margin-top: 64px;
}

.riikas-details-card {
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 34px;
  padding: 42px;
  box-shadow: 0 18px 42px rgba(0,0,0,.06);

  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 42px;
  align-items: center;
}

.riikas-truct-icon svg,
.riikas-detail-icon svg,
.riikas-why-card > span {
  overflow: visible !important;
}

.riikas-section-kicker {
  display: inline-flex;
  color: #c79a3b;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.riikas-details-card h2,
.riikas-why-section h2 {
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.05;
  letter-spacing: -.035em;
  color: #151515;
  margin-bottom: 28px;
}

.riikas-details-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.riikas-detail-item {
  background: #faf8f4;
  border-radius: 18px;
  padding: 20px 16px;
  text-align: center;
}

.riikas-detail-icon {
  width: 32px;
  height: 32px;
  color: #74716b;
  display: inline-flex;
  margin-bottom: 14px;
}

.riikas-detail-icon svg {
  width: 100%;
  height: 100%;
}

.riikas-detail-item small {
  display: block;
  color: #74716b;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 6px;
}

.riikas-detail-item strong {
  display: block;
  color: #151515;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 900;
}

.riikas-details-right p {
  color: #4d4d4d;
  font-size: 16px;
  line-height: 1.75;
  margin-bottom: 26px;
}

.riikas-pdf-button {
  display: inline-flex;
  align-items: center;
  gap: 10px;

  border: 1px solid #c79a3b;
  color: #151515 !important;
  border-radius: 10px;
  padding: 14px 20px;
  text-decoration: none !important;
  font-weight: 850;
}

.riikas-pdf-button svg {
  width: 20px;
  height: 20px;
}

/* Why choose */
.riikas-why-section {
  grid-column: 1 / -1;
  margin-top: 54px;
}

.riikas-why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.riikas-why-card {
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 22px;
  padding: 28px;
  box-shadow: 0 14px 34px rgba(0,0,0,.05);

  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 22px;
  align-items: start;
}

.riikas-why-card > span {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: #f1eadf;
  color: #74716b;
  display: grid;
  place-items: center;
}

.riikas-why-card svg {
  width: 28px;
  height: 28px;
}

.riikas-why-card h3 {
  color: #151515;
  font-size: 20px;
  margin: 0 0 8px;
}

.riikas-why-card p {
  color: #74716b;
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
}

/* Related products */
body.single-product section.related.products {
  grid-column: 1 / -1 !important;
  margin-top: 62px !important;
}

body.single-product section.related.products h2 {
  font-size: clamp(30px, 4vw, 42px);
  letter-spacing: -.03em;
  color: #151515;
  margin-bottom: 24px;
}

body.single-product section.related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 22px !important;
}

body.single-product section.related.products ul.products li.product {
  width: 100% !important;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 22px;
  padding: 18px;
  box-shadow: 0 14px 34px rgba(0,0,0,.05);
}

body.single-product section.related.products ul.products li.product img {
  border-radius: 16px;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

/* Mobile */
@media (max-width: 980px) {
  body.single-product div.product {
    display: block !important;
    padding: 40px 18px 70px !important;
  }

  body.single-product div.product .summary,
  body.single-product div.product .entry-summary {
    margin-top: 30px !important;
  }

  .riikas-key-specs,
  .riikas-summary-trust,
  .riikas-details-grid,
  .riikas-why-grid,
  body.single-product section.related.products ul.products {
    grid-template-columns: 1fr !important;
  }

  .riikas-details-card {
    grid-template-columns: 1fr;
    padding: 28px;
  }

}


/* new style*/
body.single-product {
  font-family: Inter, Arial, Helvetica, sans-serif;
}

body.single-product h1,
body.single-product h2,
body.single-product h3,
body.single-product .product_title {
  font-family: Georgia, 'Times New Roman', serif;
}

body.single-product .product_title {
  text-transform: none !important;
  font-size: clamp(40px, 4vw, 56px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.04em !important;
  font-weight: 700 !important;
}

.riikas-details-card h2,
.riikas-why-section h2,
body.single-product section.related.products h2 {
  font-family: Georgia, 'Times New Roman', serif;
  text-transform: none !important;
  font-weight: 500 !important;
  letter-spacing: -.03em !important;
}

.riikas-spec-card span,
.riikas-detail-item small,
.riikas-section-kicker {
  font-family: Inter, Arial, Helvetica, sans-serif;
}

.riikas-document-links {
  display: grid;
  gap: 10px;
  margin-top: 24px;
}

.riikas-pdf-button {
  display: inline-flex;
  align-items: center;
  gap: 12px;

  width: 100%;
  max-width: 430px;

  border: 1px solid #c79a3b;
  background: #151515;
  color: #fff !important;

  border-radius: 999px;
  padding: 14px 22px;

  text-decoration: none !important;
  font-weight: 850;
  line-height: 1.2;

  transition: transform .2s ease, background .2s ease;
}

.riikas-pdf-button:hover {
  transform: translateY(-1px);
  background: #242424;
}

.riikas-pdf-button svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}

/* Gallery root */
body.single-product div.product .woocommerce-product-gallery {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

/* Important: Flex viewport must clip slides, not be visible */
body.single-product .woocommerce-product-gallery .flex-viewport {
  width: 100% !important;
  border-radius: 34px !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: 0 20px 48px rgba(0,0,0,.10);
}

/* Important: do not force wrapper width/position too aggressively */
body.single-product .woocommerce-product-gallery__wrapper {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Let Flexslider manage slide widths */
body.single-product .woocommerce-product-gallery__image {
  background: transparent !important;
}

/* Only style the actual image */
body.single-product .woocommerce-product-gallery__image a {
  display: block !important;
}

body.single-product .woocommerce-product-gallery__image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 0 !important;
}

/* Zoom icon */
body.single-product .woocommerce-product-gallery__trigger {
  top: 18px !important;
  right: 18px !important;
  z-index: 10 !important;
}

/* Thumbnails */
body.single-product .flex-control-thumbs {
  margin-top: 18px !important;
  display: flex !important;
  gap: 14px !important;
  background: transparent !important;
  overflow: visible !important;
}

body.single-product .flex-control-thumbs li {
  width: 118px !important;
  margin: 0 !important;
  background: transparent !important;
}

body.single-product .flex-control-thumbs img {
  width: 118px !important;
  height: 92px !important;
  object-fit: cover !important;
  border-radius: 16px !important;
  border: 2px solid transparent !important;
  background: #fff !important;
  opacity: .55;
}

body.single-product .flex-control-thumbs img.flex-active {
  border-color: #c79a3b !important;
  opacity: 1;
}