/*
Theme Name: Pageking Flex (child)
Template: pk-theme
Author: Pageking
Author URI: https://www.pageking.nl/
Description: Pageking is een thema voor WordPress dat is ontworpen voor Pageking websites.
Requires at least: 5.9
Tested up to: 6.7.2
Requires PHP: 8.3
Version: 1.2.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--pk-header-height) + 1.5rem);
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

/* LAYOUTS */

.pk-page {
  overflow: clip !important;
}

.pk-page .pk-page-content {
  margin-top: max(2.5rem, calc(2.75 * var(--su)));
  margin-inline: max(0.5rem, calc(1.25 * var(--su)));
}

/* Werken-bij (site 2) */
.site-2 .pk-page .pk-page-content {
  margin-top: max(.75rem, calc(.75 * var(--su)));
}

/* SPEED OPTIMIZATIONS */
/* Layout Shift Prevention - CLS Optimization */
img {
  max-width: 100%;
  height: auto;
  /* Preserve aspect ratio to prevent layout shifts */
  aspect-ratio: attr(width) / attr(height);
}

img[width][height] {
  /* Browser calculates aspect-ratio from width/height attributes */
  aspect-ratio: auto;
}

/* Ensure hero images maintain aspect ratio */

.hero-bg {
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* DEFAULTS PAGE-CONTENT */

.pk-page-content h1,
.pk-page-content h2,
.pk-page-content h3,
.pk-page-content h4,
.pk-page-content h5,
.pk-page-content h6 {
  margin-top: 0;
  margin-bottom: max(1rem, calc(1.5 * var(--su)));
}

.pk-page-content p {
  margin-top: 0;
  margin-bottom: max(1.25rem, calc(1.25 * var(--su)));
}

.pk-page-content p:last-child {
  margin-bottom: 0;
}

.pk-page-content ul,
.pk-page-content ol {
  margin-top: 0;
  margin-bottom: max(1.5rem, calc(1.5 * var(--su)));
  padding-left: max(1.1rem, calc(1.1 * var(--su)));
}

.pk-page-content li {
  margin-bottom: max(0.5rem, calc(0.5 * var(--su)));
}

.pk-page-content img {
  max-width: 100%;
  height: auto;
  display: block;
}

.pk-page-content table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: max(2rem, calc(2 * var(--su)));
}

.pk-page-content th,
.pk-page-content td {
  padding: max(0.75rem, calc(0.75 * var(--su))) max(1rem, calc(1 * var(--su)));
  border: 1px solid #e0e0e0;
  text-align: left;
}

.pk-page-content blockquote {
  margin: max(1.5rem, calc(1.5 * var(--su))) 0;
  padding: max(1rem, calc(1 * var(--su))) max(1.5rem, calc(1.5 * var(--su)));
}

.pk-page-content hr {
  border: none;
  border-top: 1px solid #e0e0e0;
  margin: max(2rem, calc(2 * var(--su))) 0;
}

/* OPTIONAL, NO MARGIN TOP EXEPT FIRST ROW */
/* .flex-content > .flex-layout:not(:first-child) > .pk-row {
	padding-top: 0;
} */

/* SOCIALS shortcode */
.pk-socials {
  display: grid;
  grid-template-columns: repeat(3, auto);
  justify-content: start;
  gap: max(0.375rem, calc(0.375 * var(--su)));
}

.pk-socials-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max(2.375rem, calc(2.375 * var(--su)));
  height: max(2.375rem, calc(2.375 * var(--su)));
  align-self: 1;

  border-radius: var(--border-radius-sm);
  background: rgba(255, 255, 255, 0.10);
  color: var(--avoord-white);
  transition: background var(--duration) var(--style-snappy);
}

.pk-socials-item:hover {
  background: var(--avoord-dark-blue);
}

.pk-socials-item svg {
  width: max(1.1rem, calc(1.25 * var(--su)));
  height: max(1.1rem, calc(1.25 * var(--su)));
  fill: var(--avoord-white);
}

@media screen and (max-width: 1024px) {}

@media screen and (min-width: 993px) {}

@media screen and (max-width: 992px) {
  .pk-page .pk-page-content {
    margin-top: calc(var(--pk-header-height));
  }
}

@media screen and (min-width: 767px) {}

@media screen and (max-width: 767px) {}