/*
Theme Name: Twenty Twenty-Four Child
Description: Child theme of Twenty Twenty-Four
Author: CJ Montage
Author URI: https://cj-montage.dk
Template: twentytwentyfour
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twenty-twenty-four-child
*/

.product-specifications a {
  text-decoration: none;
}
.product-specifications a:hover {
  text-decoration: underline;
}

/* Product Image Position Adjustments for Trimmed Images */
.np40-position-trim {
  position: relative;
  left: 2px;
}

.np4w-position-trim {
  position: relative;
  left: 12px;
}

.np10-position-trim {
  position: relative;
  left: 24px;
}

.social-icons {
  display: flex;
  gap: 12px;
  justify-content: center;
  align-items: center;    
}

.social-icons .icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer; /* shows pointer on hover */
  transition: transform 0.2s ease;
}

.social-icons .icon svg {
  width: 18px;
  height: 18px;
}

.social-icons .icon.facebook {
  background-color: #1877F2;
}

.social-icons .icon.linkedin {
  background-color: #0866FF;
}

/* Hover: scale by 5% */
.social-icons .icon:hover {
  transform: scale(1.05);
  cursor: pointer; /* ensures mouse icon is shown */
}

.social-inline {
  display: flex;
  flex-direction: column; /* stack children vertically */
  gap: 1em;
  align-items: flex-start; /* aligns items to the left */
}

.social-inline .social-link {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  font-weight: 500;
  font-size: 14px;
}

.social-inline .social-link svg {
  width: 18px;
  height: 18px;
}

.social-inline .social-link:hover {
  text-decoration: underline;
  cursor: pointer;
}

.social-inline .social-link.facebook span {
  color: #1877F2;
}

.social-inline .social-link.linkedin span {
  color: #0866FF;
}

/* Additional CSS moved from WordPress Customizer */

:where(.wp-site-blocks *:focus) {
  outline-width: 2px;
  outline-style: solid;
}

/*.page-template-page-with-sidebar {
  background-image: url('https://dev.cj-montage.dk/wp-content/uploads/2024/10/background.jpg');
  background-position: 50% 0;
}*/

/* Header Solid Bar */
header .solid-bar {
  height: 2.5rem;
  background-color: var(--wp--preset--color--custom-company-blue);
  display: block;
}

/* Responsive breakpoints for solid-bar */
@media (max-width: 1280px) {
  header .solid-bar {
    height: 2rem;
  }
}

@media (max-width: 1024px) {
  header .solid-bar {
    height: 1.5rem;
  }
}

@media (max-width: 768px) {
  header .solid-bar {
    height: 1.25rem;
  }
}

@media (max-width: 480px) {
  header .solid-bar {
    height: 1rem;
  }
}

/* Header Parent Row Responsive Alignment */
@media (max-width: 1024px) {
  header .parent-row {
    justify-content: center !important;
  }
}

/* Header Logo Responsive Sizing */
@media (max-width: 1024px) {
  header .header-logo {
    width: 280px;
  }
}

@media (max-width: 768px) {
  header .header-logo {
    width: 270px;
  }
}

@media (max-width: 480px) {
  header .header-logo {
    width: 260px;
  }
}

header .header-logo img {
  width: 100%;
  height: auto;
}

header .contact { line-height: 1; }
header .contact a { text-decoration: none; }
header .contact a:hover { text-decoration: underline; }

.footer-navigation-seperator {
  width: 3px;
  height: 3px;
  background-color: black;
  border-radius: 50%;
  vertical-align: center;
}

.opacity-01 { opacity: 0.1; }
.opacity-02 { opacity: 0.2; }
.opacity-03 { opacity: 0.3; }
.opacity-04 { opacity: 0.4; }
.opacity-05 { opacity: 0.5; }
.opacity-06 { opacity: 0.6; }
.opacity-07 { opacity: 0.7; }
.opacity-08 { opacity: 0.8; }
.opacity-09 { opacity: 0.9; }

.opacity-hovered:hover { opacity: 1.0; cursor: pointer; }

.transition-03 { transition: all 0.3s ease; }

.img-hover-scale {
  transform: scale(0.95);
  transition: transform 0.3s ease;
  display: inline-block;
}

.img-hover-scale:hover {
  transform: scale(1);
}

.cursor-pointer-hover:hover {
  cursor: pointer;
}

.fa--file-pdf-o {
  display: inline-block;
  width: 1.16em;
  height: 1.35em;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1536 1792'%3E%3Cpath fill='%23b50300' d='M1468 380q28 28 48 76t20 88v1152q0 40-28 68t-68 28H96q-40 0-68-28t-28-68V96q0-40 28-68T96 0h896q40 0 88 20t76 48zm-444-244v376h376q-10-29-22-41l-313-313q-12-12-41-22m384 1528V640H992q-40 0-68-28t-28-68V128H128v1536zm-514-593q33 26 84 56q59-7 117-7q147 0 177 49q16 22 2 52q0 1-1 2l-2 2v1q-6 38-71 38q-48 0-115-20t-130-53q-221 24-392 83q-153 262-242 262q-15 0-28-7l-24-12q-1-1-6-5q-10-10-6-36q9-40 56-91.5t132-96.5q14-9 23 6q2 2 2 4q52-85 107-197q68-136 104-262q-24-82-30.5-159.5T657 552q11-40 42-40h22q23 0 35 15q18 21 9 68q-2 6-4 8q1 3 1 8v30q-2 123-14 192q55 164 146 238m-576 411q52-24 137-158q-51 40-87.5 84t-49.5 74m398-920q-15 42-2 132q1-7 7-44q0-3 7-43q1-4 4-8q-1-1-1-2q-1-2-1-3q-1-22-13-36q0 1-1 2zm-124 661q135-54 284-81q-2-1-13-9.5t-16-13.5q-76-67-127-176q-27 86-83 197q-30 56-45 83m646-16q-24-24-140-24q76 28 124 28q14 0 18-1q0-1-2-3'/%3E%3C/svg%3E");
}

.pdf-link {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
}

.pdf-link:hover {
  text-decoration: underline;
}

/* Fancybox Carousel Styles */
img {
  max-width: 100%;
  height: auto;
}

#myCarousel {
  max-width: 640px;
  margin: 0 auto;
}

#myCarousel .f-carousel__slide {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Prevent any image from being taller than 400px */
#myCarousel img {
  max-height: 400px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* Fixed Contact Button */
.fixed-contact-button {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 9999;
  width: 60px;
  height: 60px;
  background-color: white;
  border: 2px solid #d1d1d1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  text-decoration: none;
  cursor: pointer;
}

/* Hide contact button on the contact page */
body.page-id-17 .fixed-contact-button,
body.postid-17 .fixed-contact-button,
body[class*="kontakt"] .fixed-contact-button {
  display: none !important;
}

.fixed-contact-button:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25);
}

.fixed-contact-button svg {
  width: 28px;
  height: 28px;
  fill: #333;
}

/* Hide button on mobile */
@media (max-width: 768px) {
  .fixed-contact-button {
    display: none !important;
  }
}
