@charset "utf-8";
/*
Theme Name: Cornelias Theme 1.0
Template: prime-fse
*/


/**
 * Globala stilar
 */

:root { 
	--wp--preset--color--color-1: #236053;
}


/* ============================================
   CORNELIAS HEADER 
   ============================================ */

/* Logo Desktop */
.wp-block-site-logo img {
  max-width: 165px;
  height: auto;
}

/* Logo Mobil */
@media (max-width: 600px) {
  .wp-block-site-logo img {
    max-width: 120px;
  }
}


/* 1. Lyft headern till ett eget lager */
.wp-site-blocks > header {
    position: relative;
    z-index: 9999;
    box-shadow:
        0 1px 2px rgba(0,0,0,0.06),
        0 4px 12px rgba(0,0,0,0.10);
}

/* 2. Tvinga ner ALLA block under headern */
.wp-site-blocks > *:not(header) {
    position: relative !important;
    z-index: 1 !important;
}

/* 3. Extra säkerhet: Getwid-sektioner ska aldrig ligga över headern */
.wp-block-getwid-section {
    position: relative !important;
    z-index: 1 !important;
}

/* 4. Extra säkerhet: vanliga Group-block direkt under headern */
.wp-site-blocks > .wp-block-group:first-of-type {
    position: relative !important;
    z-index: 1 !important;
}

/* ============================================
   Rollover header menu och styling
   ============================================ */
   
.wp-block-navigation a:hover,
.wp-block-navigation a:focus,
.wp-block-navigation a:active,
.wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation-item__content:focus,
.wp-block-navigation .wp-block-navigation-item__content:active,
.wp-block-navigation .current-menu-item > a,
.wp-block-navigation .wp-block-navigation-item__content[aria-current="page"] {
    color: #f8eadc !important;
}

/* Cornelias – Smooth underline on hover */
.wp-block-navigation a,
.wp-block-navigation .wp-block-navigation-item__content {
    position: relative;
    text-decoration: none;
}

.wp-block-navigation a::after,
.wp-block-navigation .wp-block-navigation-item__content::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px; /* justerbar */
    width: 0%;
    height: 2px;
    background-color: #f8eadc; /* linjen */
    transition: width 0.25s ease;
}

.wp-block-navigation a:hover::after,
.wp-block-navigation .wp-block-navigation-item__content:hover::after {
    width: 100%;
}

}
header .wp-block-navigation a:hover {
    background-color: #0f3d2e;
    color: #fff;
}


/* Tvinga mörkgrön hover på WP-knappen i headern */
header .wp-block-button .wp-block-button__link:hover {
    background-color: #172c27 !important;
    color: #fff !important;
}


/* Global hover-färg för WordPress standardknapp */
.wp-block-button__link:hover {
    background-color: #0f3d2e; /* din mörkgröna hover */
    color: #fff; /* valfritt – vit text vid hover */
}

/* --- MOBIL DRAWER --- */
@media (max-width: 781px) {

    /* Drawer bakgrund */
    .wp-block-navigation__responsive-container {
        background-color: #236053 !important;
        color: #f8eadc !important;
    }

    /* Länkar i drawern */
    .wp-block-navigation__responsive-container a {
        color: #f8eadc !important;
    }

    /* Hamburger + stängknapp */
    .wp-block-navigation__responsive-container-open,
    .wp-block-navigation__responsive-container-close {
        color: #f8eadc !important;
    }

    /* --- SLÄCK ALLA STATES, ALLA HIGHLIGHTS, ALLA FALLBACKS --- */

    /* aria-current (WordPress) */
    .wp-block-navigation__responsive-container a[aria-current] {
        background: none !important;
        color: #f8eadc !important;
        font-weight: inherit !important;
        opacity: 1 !important;
    }

    /* current-menu-item + current_page_item (WordPress) */
    .wp-block-navigation__responsive-container .current-menu-item > a,
    .wp-block-navigation__responsive-container .current_page_item > a {
        background: none !important;
        color: #f8eadc !important;
        font-weight: inherit !important;
        opacity: 1 !important;
    }

    /* is-active (Prime FSE fallback) */
    .wp-block-navigation__responsive-container .wp-block-navigation-item.is-active > a {
        background: none !important;
        color: #f8eadc !important;
        font-weight: inherit !important;
        opacity: 1 !important;
    }

    /* Block Navigation internal aria-current */
    .wp-block-navigation__responsive-container .wp-block-navigation-item__content[aria-current],
    .wp-block-navigation__responsive-container .wp-block-navigation-item__label[aria-current] {
        background: none !important;
        color: #f8eadc !important;
        font-weight: inherit !important;
        opacity: 1 !important;
    }

    /* 🔥 Släck även fallback-highlight på FÖRSTA menyposten */
    .wp-block-navigation__responsive-container .wp-block-navigation-item:first-child a {
        background: none !important;
        color: #f8eadc !important;
        font-weight: inherit !important;
        opacity: 1 !important;
    }
}


  /* Slår av touchbekräftelse på mobiler */
  * {
  -webkit-tap-highlight-color: transparent;
}

/**
 * Social media buttons 
 */

.wp-block-getwid-social-links__wrapper {
	background:#f0f0f0;
	transition: background 1.5s;
}

.wp-block-getwid-social-links__wrapper:hover {
	background:#ccc;
}

/**
 * GSAP
 */

.gsap-parallax {
	overflow: hidden;
}

.gsap-parallax .wp-block-cover__image-background {
	will-change: transform;
}


/**
 * Minified by jsDelivr using clean-css v5.3.3.
 * Original file: /npm/lenis@1.3.23/dist/lenis.css
 */
html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent-horizontal],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}


/* ************************************************************ */
/* Ultilities */
/* ************************************************************ */

.asbolute-top-left { position:absolute; top:0; left:0; }
.asbolute-top-right { position:absolute; top:0; right:0; }
.cursour-pointer { cursor:pointer; }

/* Shadows */
.shadow { box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); }
.shadow-sm { box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075); }
.shadow-lg { box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175); }
.shadow-inset {  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075); }
.shadow-dark-inset { box-shadow: inset 2px 3px 5px #000000, 0px 1px 1px #333; }
.shadow-dark { box-shadow: 0 20px 25px -5px #000, 0 8px 10px -6px #000; }

/* Hover effects */
.hover-dark { filter: brightness(100%); transition: filter 0.2s; }
.hover-dark:hover { filter: brightness(50%); }
.hover-light { opacity: 1; transition: opacity 0.2s; }
.hover-light:hover { opacity: .7; }
.hover-shine  { position: relative; overflow: hidden; }
.hover-shine::before {
	content: '';
	position: absolute;
	top: 0;
	left: -500px;
	width: 100%;
	height: 100%;
	background: linear-gradient(to right,fade_out(#fff, 1) 0%,fade_out(#fff, 0.7) 100%);
	transform: skewX(-30deg);
	cursor:pointer;	
}

.hover-shine:hover::before,
.hover-shine:focus::before {
	animation: shine 0.5s;
}
  
@keyframes shine {
	100% {
		background: rgba(255, 255, 255, 0.2);
		left: 500px;
	}
}

.rotate-up a { transition: transform 0.5s; }
.rotate-up a:hover { transform: rotate(-45deg); }

.highlight a { 
	background-color:#24C0D4; 
	color:#fff !important;
	border-radius:20px;
	padding:15px 20px !important;
}

.highlight a:hover { 
	background-color:#000; 
	color:#fff;
}


footer a {
    text-decoration: none;
    position: relative;
}

footer a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px; /* avstånd från text */
    width: 100%;
    height: 1px;
    background-color: currentColor;
    opacity: 0.4; /* baslinje */
}

footer a::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0%;
    height: 1px;
    background-color: currentColor;
    transition: width 0.35s ease; /* mjukare, längre animation */
}

footer a:hover::before {
    width: 100%;
}


/* ****************************************************************** */
/* Reveal elements on sroll into view */
/* ****************************************************************** */

@keyframes fadeIn {
 
	from {
		opacity: 0;
		transform: translateY(80px);
	}

	to {

		opacity: 1;
		transform: translateY(0);
	}
}

.reveal-fade-in {
	animation-name: fadeIn;
	animation-duration: 3s;	
	animation-timeline: view();
 	/*animation-range: entry 0% cover 40%; */
 	animation-range: entry 25% cover 40%;
	animation-fill-mode: both;
}


/* ****************************************************************** */
/* Contact form 7 styling */
/* ****************************************************************** */

.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"],
.wpcf7 form textarea,
.wpcf7 form select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

.wpcf7 form input[type="submit"] {
    background: #000;
    color: #fff;
    padding: 20px 24px;
    border: none;
    border-radius: 12px;
    width: 100%;
    font-weight: 600;
	font-size:16px;
    cursor: pointer;
    transition: 0.15s ease;
}

.wpcf7 form input[type="submit"]:hover {
    background: #111;
}

.wpcf7-not-valid-tip {
	color:#ccc;
	font-size:0.8rem;
	margin-top:5px;
}

.wpcf7 form.submitting .wpcf7-spinner {
	margin-top:30px;
}

.wpcf7 p label {
	color:#F8EADC;
	font-size:0.8rem;
}

.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #ccc;
	border-radius:5px;
	color:#ccc;
	font-size:0.8rem;
	padding-top:5px;
	padding-bottom:5px;
	margin-bottom:30px;
	text-align:center;
}

/* Formuläret skickat – samma stil som felmeddelanden */
.wpcf7 form.sent .wpcf7-response-output {
    border-color: #ccc;
    border-radius: 5px;
    color: #ccc;
    font-size: 0.8rem;
    padding-top: 5px;
    padding-bottom: 5px;
    margin-bottom: 30px;
    text-align: center;
}


.contact-h3-link a {
  position: relative;
  display: inline-block; /* Viktigt! */
  color: var(--wp--preset--color--primary);
  text-decoration: none;
  transition: color 0.25s ease;
}

.contact-h3-link a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 0%;
  height: 1px;
  background-color: currentColor; /* följer textfärgen */
  transition: width 0.25s ease;
}

.contact-h3-link a:hover {
  color: #236053;
}

.contact-h3-link a:hover::after {
  width: 100%;
}

/* --- Modal container (dold från start) --- */
.callback-modal {
  display: none;
}

/* När JS öppnar modalen */
.callback-modal.open {
  display: flex;
}

/* --- Modal layout --- */
.callback-modal-inner {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* --- Overlay --- */
.callback-modal-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.55);
  backdrop-filter: blur(2px);
}

/* --- Modal box --- */
.callback-modal-box {
  position: relative;
  background: #fff;
  padding: 32px;
  border-radius: 12px;
  max-width: 420px;
  width: 90%;
  z-index: 2;
  box-shadow: 0 20px 40px rgba(0,0,0,0.15);

  /* Animation startläge */
  transform: translateY(10px);
  opacity: 0;
  transition: all .25s ease;
}

/* När modal är öppen */
.callback-modal.open .callback-modal-box {
  transform: translateY(0);
  opacity: 1;
}

/* --- Close button --- */
.callback-modal-close {
  position: absolute;
  top: 12px;
  right: 12px;
  background: none;
  border: none;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.2s ease;
}

.callback-modal-close:hover {
  opacity: 1;
}

/* --- Inputs --- */
.callback-input {
  width: 100%;
  padding: 12px 14px;
  margin-bottom: 12px;
  border: 1px solid #ddd;
  border-radius: 6px;
  font-size: 14px;
}

/* --- Submit button --- */
.callback-submit {
  width: 100%;
  padding: 14px;
  background: #111;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight:600;
  cursor: pointer;
  transition: background 0.2s ease;
}

.callback-submit:hover {
  background: #333;
}

/* Tack-meddelandet är dolt när hidden-attributet finns */
.callback-thanks[hidden] {
  display: none;
}

/* När JS tar bort hidden → visa block */
.callback-thanks {
  display: block;
  text-align: center;
}

/* --- Animation --- */
@keyframes modalFadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity
  
.callback-field {
  margin-bottom: 18px;
}

.callback-field .error-message {
  display: none;
  color: #e74c3c;
  font-size: 0.8rem;
  margin-bottom: 6px;
  padding: 4px 6px;
  background: #fff4f4;
  border-left: 3px solid #e74c3c;
  border-radius: 3px;
}

.callback-field.has-error .error-message {
  display: block;
}

.callback-field.has-error .callback-input {
  border-color: #e74c3c;
  background: #fff4f4;
}

.modal-trigger,
.modal-trigger a,
.modal-trigger i,
.modal-trigger svg {
  cursor: pointer;
}

