/* Gæðamálverk — Custom Styles */

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
}

/* Better font rendering */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Selection color */
::selection {
  background: var(--wp--preset--color--accent);
  color: var(--wp--preset--color--primary);
}

/* Hero cover: ensure text is positioned at bottom */
.wp-block-cover {
  display: flex;
  align-items: flex-end;
}

/* Service rows: hover effect */
.wp-block-group:has(> .has-neutral-400-color) {
  transition: background-color 0.3s ease;
}
.wp-block-group:has(> .has-neutral-400-color):hover {
  background-color: var(--wp--preset--color--neutral-100);
}
.wp-block-group:has(> .has-neutral-400-color):hover h3 {
  color: var(--wp--preset--color--accent) !important;
}

/* Buttons: smooth hover transition */
.wp-element-button,
.wp-block-button__link {
  transition: all 0.3s ease;
}

/* Navigation: CTA outline style */
.is-style-outline > .wp-block-navigation-item__content {
  border: 1px solid var(--wp--preset--color--accent);
  color: var(--wp--preset--color--accent) !important;
  padding: 0.6rem 1.5rem;
  font-size: 0.7rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  transition: all 0.3s ease;
}
.is-style-outline > .wp-block-navigation-item__content:hover {
  background: var(--wp--preset--color--accent);
  color: var(--wp--preset--color--primary) !important;
}

/* Blockquote in dark sections */
.has-primary-background-color .wp-block-quote {
  border-left-color: var(--wp--preset--color--accent);
  padding-left: 2rem;
}

/* Separator default: thin line */
.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  max-width: 80px;
}

/* Footer links */
.has-primary-background-color a {
  color: var(--wp--preset--color--neutral-200);
  text-decoration: none;
  transition: color 0.3s ease;
}
.has-primary-background-color a:hover {
  color: var(--wp--preset--color--accent);
}

/* Sticky header shadow on scroll (added via tiny JS) */
.has-scrolled {
  box-shadow: 0 1px 20px rgba(0, 0, 0, 0.06);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    transition-duration: 0.01ms !important;
  }
}

/* Mobile adjustments */
@media (max-width: 781px) {
  .wp-block-cover {
    min-height: 80vh !important;
  }
}
