/**
Theme Name: Norco Interior Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
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: norco-astra-child
Template: astra
*/

html {
  font-size: 100%; /* 16px (standard i de flesta browsers) */
}


.dropshadow
{
    text-shadow: 1px 1px 1px #000;
}

.hh-service-nav a.wp-element-button:hover {
    background: rgba(255,255,255,0.3) !important;
}

.site-footer * {
    color: #ffffff;

}

.site-footer h5,
.site-footer .widget-title {
    font-weight: normal;
    text-transform: uppercase;
    font-size:14px;
    margin-bottom:5px;
}

.site-footer p,
.site-footer .widget_nav_menu li
{
    font-size:14px;
    line-height: 20px;
    
}

.site-footer p
{
    margin-bottom: 10px; 
}

.site-footer a:hover
{
    color: antiquewhite;
}

.wp-block-cover.full-view-height:not(.three-cols) .wp-block-heading {
    font-size: 70px;
    color: #fff;
    line-height: 1.3;
    font-family: 'Playfair Display';
    font-weight: 900;
    text-transform: none;
    /* text-transform: uppercase; */
    /* : 1px 1px 1px #000; */
}
.full-view-height:not(.three-cols) .wp-block-cover:not(.has-text-color.has-link-color) p, 
.ast-article-single .full-view-height:not(.three-cols) p
{
  font-size: 30px;
  color: #000000;
  line-height: 1.5;
}

.excerpt-arrow {
  display: inline-block;
  width: 45px;
  height: 26px;
  /* margin-left: 8px; */
  vertical-align: middle;

  /* Svart färg – justera till din palett */
  background-color: var(--ast-global-color-2);

  /* SVG som mask */
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 817 451.5'%3E%3Cpath d='M817,225.8l-219.9,219.9c-7.8,7.8-20.5,7.8-28.3,0-7.8-7.8-7.8-20.5,0-28.3l171.6-171.6H20c-11,0-20-9-20-20s9-20,20-20h720.5L568.9,34.2c-7.8-7.8-7.8-20.5,0-28.3s20.5-7.8,28.3,0l219.9,219.9z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 817 451.5'%3E%3Cpath d='M817,225.8l-219.9,219.9c-7.8,7.8-20.5,7.8-28.3,0-7.8-7.8-7.8-20.5,0-28.3l171.6-171.6H20c-11,0-20-9-20-20s9-20,20-20h720.5L568.9,34.2c-7.8-7.8-7.8-20.5,0-28.3s20.5-7.8,28.3,0l219.9,219.9z'/%3E%3C/svg%3E");

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  align-self: self-end;
}

.excerpt-arrow.blue
{
  /* Blå färg */
  background-color: var(--ast-global-color-1);
}
.excerpt-arrow.white
{
  background-color: white;
}
.excerpt-arrow.down
{
  transform: rotate(90deg);
}

a:hover .excerpt-arrow {
  transform: translateX(3px);
  transition: transform 0.25s ease;
}

.home .ast-article-single .full-view-height p
{
  color: unset;
}

.ast-article-single .full-view-height .wp-block-buttons
{
  padding-top: 96px;
}
.full-view-height
{
    /* max-height: calc(100vh - 92px); */
    height: calc(100vh - 92px);
    
}

.single-post .full-view-height
{
  margin-bottom: 0;
}

.entry-content > .wp-block-cover.full-view-height
{
  padding: 0;
}

.ast-article-single .full-view-height .wp-block-columns,
.single-post .full-view-height .wp-block-columns
{
  max-width: 1960px;
  width: 1960px;
  /* padding-left: 20px;
  padding-right: 20px; */
  margin: auto;
}

.ast-article-single:not(.post) .full-view-height .wp-block-columns .wp-block-column:first-of-type,
.ast-article-single:not(.post) .wp-block-columns.full-view-height:not(.three-cols) .wp-block-cover
{
  padding-left:150px;
  padding-top: calc(50vh / 2 + 100px);
}

.single-post .full-view-height .wp-block-columns .wp-block-column:first-of-type
{
  padding-left:150px;
  padding-top: 0;
}




.ast-plain-container.blog .ast-grid-4 > .site-main > .ast-row
{
  margin-left: -20px;
}

.ast-article-inner {
    padding: 0;
}

.logged-in .full-view-height
{
    /* max-height: calc(100vh - 124px); */
    height: calc(100vh - 124px);
}

:root :where(.is-layout-flow) > * {
    margin-block-start: 10px;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { text-decoration: none !important;}
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6
{
    margin-bottom: 0;
}

h1.has-ast-global-color-4-color a::after, 
h2.has-ast-global-color-4-color a::after, 
h3.has-ast-global-color-4-color a::after, 
h4.has-ast-global-color-4-color a::after, 
h5.has-ast-global-color-4-color a::after, 
h6.has-ast-global-color-4-color a::after,
h1.has-ast-global-color-4-color a::before, 
h2.has-ast-global-color-4-color a::before, 
h3.has-ast-global-color-4-color a::before, 
h4.has-ast-global-color-4-color a::before, 
h5.has-ast-global-color-4-color a::before, 
h6.has-ast-global-color-4-color a::before,
.hh-service-nav .right a:after,
.hh-service-nav .left a:before
{
  content: "";
  display: inline-block;
  background-color: #ffffff;

  /* SVG som mask */
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 817 451.5'%3E%3Cpath d='M817,225.8l-219.9,219.9c-7.8,7.8-20.5,7.8-28.3,0-7.8-7.8-7.8-20.5,0-28.3l171.6-171.6H20c-11,0-20-9-20-20s9-20,20-20h720.5L568.9,34.2c-7.8-7.8-7.8-20.5,0-28.3s20.5-7.8,28.3,0l219.9,219.9z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 817 451.5'%3E%3Cpath d='M817,225.8l-219.9,219.9c-7.8,7.8-20.5,7.8-28.3,0-7.8-7.8-7.8-20.5,0-28.3l171.6-171.6H20c-11,0-20-9-20-20s9-20,20-20h720.5L568.9,34.2c-7.8-7.8-7.8-20.5,0-28.3s20.5-7.8,28.3,0l219.9,219.9z'/%3E%3C/svg%3E");

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;

  -webkit-mask-size: contain;
  mask-size: contain;

  -webkit-mask-position: center;
  mask-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  transition: all 0.6s ease;
}

h1.has-ast-global-color-4-color a:hover::after, 
h2.has-ast-global-color-4-color a:hover::after, 
h3.has-ast-global-color-4-color a:hover::after, 
h4.has-ast-global-color-4-color a:hover::after, 
h5.has-ast-global-color-4-color a:hover::after, 
h6.has-ast-global-color-4-color a:hover::after,
h1.has-ast-global-color-4-color a:hover::before, 
h2.has-ast-global-color-4-color a:hover::before, 
h3.has-ast-global-color-4-color a:hover::before, 
h4.has-ast-global-color-4-color a:hover::before, 
h5.has-ast-global-color-4-color a:hover::before, 
h6.has-ast-global-color-4-color a:hover::before
{
  transform: translateX(3px);
  transition: transform 0.25s ease;
}

h2.has-ast-global-color-4-color a::after {
  width: 45px;
  height: 26px;
  margin-left: 10px;
  margin-top: -8px;
}
h2.has-ast-global-color-4-color a::before {
  width: 45px;
  height: 26px;
  margin-right: 10px;
  margin-top: -8px;
  rotate: 180deg;
  display: none;
}
h2.has-ast-global-color-4-color.back a::before
{
  display: inline-block;
}
h2.has-ast-global-color-4-color.back a::after{
  display: none;
}

h4.has-ast-global-color-4-color a::after {
  width: 36px;
  height: 18px;
  margin-left: 10px;
  margin-top: 10px;
}
.hh-service-nav .right a:after {
  width: 36px;
  height: 18px;
  margin-left: 10px;
  position: absolute;
  top: calc(50% - 18px / 2 );
  background-color: #000000;
}

.hh-service-nav .left a:before {
  rotate: 180deg;
  width: 36px;
  height: 18px;
  margin-right: 10px;
  margin-left:0;
  left: 2px;
  position: absolute;
  top: calc(50% - 18px / 2 );
  background-color: #000000;
}

.norco-blockquote {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.norco-blockquote .wp-block-quote:not(.has-text-align-right):not(.has-text-align-center)
{
    border-left: none;  
}
.norco-blockquote .wp-block-quote
{
    position: relative;
}

.norco-blockquote .wp-block-quote p:first-of-type
{
    position: relative;
}

:root {
  --content-width: 1920px; /* Ändra om ditt tema är smalare/bredare */
}

/* Hela sektionen fyller hela fönstrets bredd */
.split-hero {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

/* Två kolumner: bild vänster, text höger */
.split-hero__inner {
  display: grid;
  grid-template-columns: 60% 40%; /* 👈 Bild 60%, text 40% */
  height: 100%;
}

/* Bildkolumnen */
.split-hero__image {
  position: relative;
  overflow: hidden;
}

.split-hero__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* TEXTEN PÅ BILDEN — VERTIKALT CENTRERAD + RÄTT MARGINAL */
.split-hero__image-content {
  position: absolute;
  /* top: 50%; */
  /* transform: translateY(-50%); */

  /* Starta texten i samma marginal som sidans innehåll */
  /* left: calc((100vw - var(--content-width)) / 2); */
  z-index: 5;
  max-width: 80%;
  /* color: #fff; */
  /* text-shadow: 0 2px 8px rgba(0,0,0,0.35); */
  padding-left: 150px;
  top: calc(50vh / 2 + 100px);
}

/* Höger kolumn med vanlig content-bredd */
.split-hero__content {
  padding: 0 5rem;
  display: flex;
  /* padding-right: 5rem; */
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.split-hero__content p
{
  font-size: 24px !important;
  word-break: break-word;
  hyphens: auto;
}

.entry-content p.hyphenate, .wp-block-heading  {
    word-break: break-word;
    hyphens: auto;
}

.alt-font {
    font-family: 'Playfair Display';
    font-weight: 900;
    text-transform: none;
}

.ast-builder-footer-grid-columns {
    grid-column-gap: 12px !important;
}

/* Mobil */
@media (max-width: 768px) {

.split-hero
{
  min-height: 100vh;
}

  .split-hero__inner {
    flex-direction: column;
  }

  .split-hero__image-content {
    /* position: absolute; */
    left: 20px;
    top: auto;
    bottom: 20px;
    transform: none;
    max-width: 85%;
  }

  .split-hero__content {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

    .split-hero__content-inner {
    max-width: 100%;
  }
}

.category-kunskapsbank.hentry {
    margin-bottom: 2.5rem;
}

.category-kunskapsbank .post-content {
    height: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.twocolumns p,
.twocolumns ul{
  break-inside: avoid; /* Förhindrar att stycken bryts mitt i */
}

#tooltip {
  position: fixed;
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid #ccc;
  padding: 8px 12px;
  border-radius: 6px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  font-size: 14px;
  max-width: 250px;
  pointer-events: none;
  display: none;
  z-index: 10000;
  color: #333;
}

path {
  cursor: pointer;
}

.ast-desktop .ast-menu-hover-style-underline > .menu-item-has-children:hover > .menu-link:before
{
    background-color: unset;
}

      /* Fyll ytan och zooma: hög specifikhet + !important */
      .wp-block-cover.kb-zoom > img.wp-block-cover__image-background {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        max-width: none !important;
        max-height: none !important;
        width: auto !important;
        height: auto !important;
        min-width: 100% !important;
        min-height: 100% !important;
        transform-origin: center center !important;
        will-change: transform;
        animation: kbZoomFix 20s ease-in-out infinite alternate !important;
      }

      /* Behåll centrerings-translate och lägg bara till scale */
      @keyframes kbZoomFix {
        0%   { transform: translate(-50%, -50%) scale(1.02); }
        100% { transform: translate(calc(-50% + 56px), calc(-50% - 56px)) scale(1.58); }
      }

      /* Pausa vid hover (valfritt) */
      /* .wp-block-cover.kb-zoom:hover > img.wp-block-cover__image-background {
        animation-play-state: paused;
      } */

      /* Mindre rörelse på mobil */
      @media (max-width: 782px) {
        .wp-block-cover.kb-zoom > img.wp-block-cover__image-background {
          animation-duration: 26s !important;
        }
      }

      /* Respekt för reducerad rörelse */
      @media (prefers-reduced-motion: reduce) {
        .wp-block-cover.kb-zoom > img.wp-block-cover__image-background {
          animation: none !important;
          transform: translate(-50%, -50%) scale(1) !important;
        }
      }


      .three-cols h2 a
      {
        font-size: 3rem;
      }
      .ast-single-post .entry-content .three-cols a
      {
        text-decoration: none;
      }
      .three-cols .wp-block-column .wp-block-cover {
          padding: 5rem;
      }

      .three-cols .wp-block-column .wp-block-cover p {
          font-size: 20px;
          line-height: 1.4;
      }




@media (min-width: 768px) {
  .twocolumns {
    columns: 2;
    column-gap: 96px;
    max-width: 1920px;
    width: 100%;
  }
}

@media (max-width: 767px) {
  .twocolumns {
    columns: 1;
  }
}

@media (min-width: 1960px) {
  .split-hero__content
  {
    padding-right: calc((100vw - min(var(--content-width), 100vw)) / 2);
  }
  .split-hero__image-content
  {
    left: calc((100vw - var(--content-width)) / 2);
  }
  .three-cols h2 a
  {
    
    font-size: 4rem;
  }

}




/* Mellanstora skärmar */
@media (max-width: 1200px) {
  html {
    font-size: 93.75%; /* 15px */
  }

  .three-cols a
  {
    font-size: 40px;
    font-size: 3.5rem;
  }


}

/* Mindre surfplattor */
@media (max-width: 900px) {
  html {
    font-size: 87.5%; /* 14px */
  }
      .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 100% !important;
    }
}

/* Mobil */
@media (max-width: 600px) {
  html {
    font-size: 81.25%; /* 13px */
  }
}

/* ============================
   GRUND: BLOCK & KONTEXT
   ============================ */

.story-media-animate {
  position: relative;
  overflow: hidden;
  background: var(--ast-global-color-6);
  color: var(--ast-global-color-0);
}

/* Media wrapper */
.story-media-animate .wp-block-media-text__media {
  position: relative;
  overflow: hidden;
}

/* Text wrapper */
.story-media-animate .wp-block-media-text__content {
  position: relative;
}


/* ============================
   BILD: STATISK FILMLOOK
   ============================ */

.story-media-animate .wp-block-media-text__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;

  /* Ton-i-ton, lugn färgskala */
  filter:
    brightness(0.9)
    saturate(0.8)
    contrast(0.92);

  position: relative;
  z-index: 1;
}


/* ============================
   VARM OVERLAY (TONING)
   ============================ */

.story-media-animate .wp-block-media-text__media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 2;

  background: var(--ast-global-color-1);
  mix-blend-mode: multiply;

  opacity: 0.35; /* justera 0.25–0.5 */
}


/* ============================
   SUBTIL VIGNETTE
   ============================ */

.story-media-animate .wp-block-media-text__media::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 3;

  background: radial-gradient(
    circle at center,
    rgba(0,0,0,0) 45%,
    rgba(0,0,0,0.22) 100%
  );

  opacity: 0.22;
}


/* ============================
   TEXT: REN & STABIL
   ============================ */

.story-media-animate .wp-block-media-text__content > * {
  opacity: 1;
  transform: none;
  filter: none;
}
.wp-block-quote:not(.has-text-align-right):not(.has-text-align-center)
{
  border-left: none;
}

/* =================================
   MOBIL FIXAR – GLOBAL LAYOUT
   ================================= */

@media (max-width: 768px) {

  .wp-block-cover.full-view-height:not(.three-cols) .wp-block-heading
  {
    font-size: 48px !important;
  }


  .full-view-height:not(.three-cols) .wp-block-cover:not(.has-text-color.has-link-color) p, 
  .ast-article-single .full-view-height:not(.three-cols) p
  {
    font-size: 22px;
  }

  /* --- HERO FULL HEIGHT FIX --- */
  .full-view-height {
    height: auto !important;
    min-height: 100vh;
  }

  .logged-in .full-view-height {
    height: auto !important;
  }

  /* --- COVER TEXT FIX --- */
  .wp-block-cover.full-view-height:not(.three-cols) .wp-block-heading {
    font-size: 38px;
    line-height: 1.2;
  }

  .full-view-height:not(.three-cols) p {
    font-size: 18px;
  }

  /* --- KOLUMNER PÅ HERO --- */
  .ast-article-single .full-view-height .wp-block-columns,
  .single-post .full-view-height .wp-block-columns {
    width: 100%;
    max-width: 100%;
    padding: 0 20px;
  }

  .ast-article-single:not(.post) 
  .full-view-height .wp-block-columns 
  .wp-block-column:first-of-type {
    padding-left: 0;
    padding-top: 40px;
  }

  /* --- SPLIT HERO FIX --- */
  .split-hero__inner {
    display: block; /* istället för grid */
    
  }

  .split-hero__image {
    height: 65vh;       /* justera 60–75vh efter smak */
    min-height: 400px;  /* säkerhetsgolv */
  }

  .split-hero__image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }

  .split-hero__image-content {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 20px;
    top: auto;
    padding-left: 0;
  }

  .split-hero__content {
    padding: 2rem 1.5rem;
  }

  .split-hero__content p {
    font-size: 18px !important;
  }

  /* --- THREE COLS FIX --- */
  .three-cols .wp-block-column .wp-block-cover {
    padding: 2rem;
  }

  .three-cols h2 a {
    font-size: 2rem;
  }

  :root :where(.is-layout-flex) {
    gap: 0;
  }
  .wp-block-columns .wp-block-column:not(:last-child) {
      margin-bottom: 0 !important;
  }

  .three-cols
  {
    min-height: 1500px;
  }
  .three-cols a
    {
      font-size: 20px;
    }

/* Begränsa full width-blocket */
  .alignfull.norco-blockquote {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding: 0 20px;
  }

  /* Ta bort tvingade radbrytningar i mobil */
  .norco-blockquote br {
    display: none;
  }

  /* Anpassa typografin */
  .norco-blockquote .alt-font {
    font-size: 24px !important;
    line-height: 1.4;
  }

  .norco-blockquote em {
    font-size: 18px !important;
  }

  .wp-block-columns-is-layout-flex
  {
    gap:0 !important;
  }

}
