:root {
  --penta-blue: #0088bf;
  --penta-blue-dark: #0077a6;
  --penta-pink: #f1008d;
}

body { font-family: Arial, sans-serif; }
h1, h2, h3, h4, h5, h6 { font-weight: 700; }
a { color: var(--penta-blue); }
a:hover, a:focus { color: var(--penta-blue-dark); }
.btn-primary, .btn-primary:active, .btn-primary:focus {
  background-color: var(--penta-blue);
  border-color: var(--penta-blue);
}
.btn-primary:hover { background-color: var(--penta-blue-dark); border-color: var(--penta-blue-dark); }
.product-flags .product-flag { background: var(--penta-pink); }
.blockcart, .cart-preview { border-color: var(--penta-blue); }
.featured-products .all-product-link,
.product-miniature .product-title a { color: var(--penta-blue); }
.tabs .nav-tabs .nav-link.active { color: var(--penta-blue); border-color: var(--penta-blue); }
.penta-hero { margin: 1.5rem 0 2rem; background: linear-gradient(135deg, #0077a6, #0088bf 58%, #f1008d); color: #fff; border-radius: .35rem; }
.penta-hero-inner { max-width: 760px; padding: 3.5rem 3rem; }
.penta-hero h1 { color: #fff; font-size: clamp(2rem, 4vw, 3.25rem); margin: .35rem 0 1rem; }
.penta-hero p { font-size: 1.1rem; line-height: 1.6; }
.penta-eyebrow { text-transform: uppercase; letter-spacing: .12em; font-weight: 700; }
.penta-categories { display: flex; flex-wrap: wrap; gap: .65rem; margin: 0 0 2rem; }
.penta-categories span { border: 1px solid var(--penta-blue); border-radius: 999px; padding: .65rem 1rem; font-weight: 600; }
.penta-footer-links { padding: 1rem 0; border-top: 1px solid #e5e5e5; }
.penta-footer-links a { display: inline-block; margin: .25rem .65rem; }

/* CMS pages imported from Shoptet: normalize typography and legal-text lists. */
.page-cms .page-content {
  max-width: 980px;
  margin: 0 auto 3rem;
  line-height: 1.7;
}
.page-cms .page-content > h2:first-child {
  margin-bottom: 2rem;
  color: #0077a6;
  font-size: 2rem;
}
.page-cms .page-content .cms-section-title {
  margin: 2rem 0 .75rem;
  padding-bottom: .35rem;
  border-bottom: 2px solid #e8f4f8;
  color: #0077a6;
  font-size: 1.35rem;
}
.page-cms .page-content p { margin: 0 0 .85rem; }
.page-cms .page-content ul {
  margin: 0 0 1rem;
  padding-left: 1.5rem;
}
.page-cms .page-content li { margin: 0 0 .45rem; padding-left: .2rem; }
.page-cms .page-content a { overflow-wrap: anywhere; }
@media (max-width: 767px) {
  .header-top { padding-bottom: .5rem; }
  .product-miniature .thumbnail-container { min-height: 280px; }
  .page-cms .page-content { padding: 0 1rem; font-size: .98rem; }
  .page-cms .page-content > h2:first-child { font-size: 1.65rem; }
  .page-cms .page-content .cms-section-title { font-size: 1.2rem; }
}
