/*
    Theme Name: Senioringenjörer 1.0
    Author: Webbyrån Konsulterna
    Author URI: https://webbyrankonsulterna.se
    Description: Custom theme for Senioringenjörer
    Version: 1.0
*/

/*
Colors
#e06c09
#e06c09;
    border-top: 1px solid #e57a11;
    border-left: 1px solid #e57a11;
    border-right: 1px solid #e57a11;
    border-bottom: 1px solid #d96507;
lila
#5710ab
*/

body {
    color: #111111;
    font-family: 'Inter';
    font-weight: 400;
    overflow-x:hidden;
}
label {
    width: 100%;
    font-size: 20px;
}
a:hover {
    color: #e06c09;
}
.social-icons img {
  max-height: 30px;
}

.navbar .social-icons {
    margin-left: 1.5rem;
}

textarea.form-control {
    height: 100px;
    min-height: auto;
}
.bg-purple {
    background: #E6E6FF !important;
}
.bg-light {
    background: #f7fbfc !important;
}
.bg-dark-2 {
    color: #fff;
    background: #111111 !important;
}
.bg-dark-2 .form-control {
    border-color:#fff;
    color:#fff;
}
.bg-dark-2 .btn {
    color:#fff;
}
.bg-dark-2 .btn:hover,
.bg-dark-2 .btn:focus {
    color:#000;
}
.text-purple, .text-purple i.bi {
    color: #5710ab !important;
}
a {
  color: inherit;
}
.container {
    max-width: 1500px;
    padding-left: 3.5rem;
    padding-right: 3.5rem;
}
#mainNav li {
    text-transform: uppercase;
}
.nav-container {
    max-width: 100vw;
    padding-right: 1rem;
    padding-left: 1rem;
}
.navbar-light .navbar-nav {
    margin-left: auto;
}
.navbar-light li a {
    color: #111111!important;
    font-size: 1.15rem!important;
    display: block;
    padding: 0 0.75rem;
}
@media (min-width: 1200px) and (max-width: 1400px) {
    .navbar-light li a {
        font-size: 1rem!important
    }
}

.navbar-light li a:hover,
.navbar-light li a:focus,
.navbar-light li.current_page_item a,
.nav-link[class*="active"] {
    text-decoration: underline;
    color: #111111!important;
    font-weight: 600;
}

.navbar-light .button-holder a {
    color:#fff!important;
    background: #111111;
    border-radius: 500px;
    padding: 0.65rem 2rem!important;
    margin-left: 1.5rem;
}

.navbar-light .button-holder a:hover,
.navbar-light .button-holder a:focus,
.navbar-light li.button-holder.current_page_item a {
    background: #075252;
    text-decoration: none;
}

.text-green {
  color: #8FEAAA !important;
}
.bg-primary {
    background: #E6E6FF !important;
}
.bg-secondary {
  background: #FEF2F7 !important;
}
.border-dark {
    border-color: #111111 !important;
}
.btn {
    padding:0.85rem 2.5rem 0.75rem 2.5rem;
    border-radius: 500px;
    font-size: 1.3rem;
    font-family: 'Poppins';
    font-weight: 700;
    margin-top: 2rem !important;
}
.btn-primary {
    background: #e06c09;
    border-color: #e06c09;
    color: #fff;
}
.btn-primary:hover,
.btn-primary:focus {
  background: #e57a11;
  border-color: #fff;
  color: #fff;
}
.btn-secondary {
    background: #5710ab;
    border-color: #5710ab;
    color: #fff;
}
.btn-secondary:hover,
.btn-secondary:focus {
  background: rgb(87, 16, 171, 0.9);
  border-color: #fff;
  color: #fff;
}

.btn-outline-primary {
    color: #111111;
    border-color: #111111;
}
.btn-outline-primary:hover,
.btn-outline-primary:focus {
 background: #111111;
 border-color: #111111;
 color: #fff;
}
h1,h2,h3,h4,h5,h6,
.navbar-light .navbar-nav .nav-link,
.btn, #offcanvasNav {
  font-family: 'Poppins';
  font-weight: 700;
}
.navbar {
    padding: 0;
}
.nav-icon {
    font-size: 3rem;
}
.btn-outline-light {
    color: #fff;
}
.btn-outline-light:hover,
.btn-outline-light:focus {
    color: #000;
    background-color: #c6d5ff;
}
/*
.btn-outline-light:hover, .btn-outline-light:hover a,
.btn-outline-light:focus, .btn-outline-light:focus a {
    color: #000!important;
}
*/
.display-2 {
    font-size: 90px;
    font-family: 'Poppins';
    font-weight: 700;
}
h1,.h1 {
  font-family: 'Poppins';
  font-weight: 700;
}
h2,.h2 {
    font-size: 48px;
    font-family: 'Poppins';
    font-weight: 700;
}
h3,.h3 {
    font-size: 30px;
    font-family: 'Poppins';
    font-weight: 700;
}
h4,.h4 {
    font-size: 22px;
    font-family: 'Poppins';
    font-weight: 700;
}
h2 {
    margin-top: 1em;
}
.eyebrow {
    font-size: 30px;
    font-weight: normal;
    text-transform: uppercase;
    font-family: 'Inter';
}
.font-weight-bold {
    font-weight: 600;
}
.lead {
    font-size: 21px;
}
.equal-md-3-4::before {
    padding-top: 100%;
}
.equal-md-1-1::before {
    padding-top: 70%;
}
/*
.logos img {
    width: auto !important;
    height: 4rem !important;
}
*/
.logos img {
    display: inline-block !important;
    width: auto;
    height: auto;
    width:auto;
    max-width: 100%;
    max-height: 98px;
}
.image-height {
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.image-height img {
    object-fit: cover;
    height: 500px;
    width: 100%;
}
.section-repeat .container .row .col-md-7 {
    order:1;
}
.section-repeat .container .row .col-md-5 {
    order:2;
}
.section-repeat:nth-child(odd) .container .row .col-md-7 {
  order:2;
}
.section-repeat:nth-child(odd) .container .row .col-md-5 {
  order:1;
}
.accordion-button {
    font-size: 40px;
    font-weight: 300;
    font-family: 'Inter';
}
.accordion .accordion-button::after {
    font-size: 60px;
    line-height: 60px;
}
.accordion-minimal .accordion-button {
    padding: 2rem 0 2rem 6rem;
    border-bottom: 1px solid #000;
}
.accordion-minimal .accordion-body {
  padding: 2rem 2rem 2rem 6rem;
  font-size: 19px;
}
.accordion-button {
    background-color: transparent !important
}
.accordion-button:not(.collapsed)::after {
    background-image: unset; 
}
.form-control {
    border:0;
    border-bottom:1px solid #000;
    padding: 0;
    height: auto;
    background: none;
}
.wpcf7-spinner {
    display: block !important;
    width: 100%;
}
.equal-md-1-1::before,
.equal-md-3-4::before {
    display: block !important;
}
.sbi_load_btn {
    border-radius: 500px !important;
    padding:0.85rem 2.5rem 0.75rem 2.5rem !important;
    border-radius: 500px !important;
    font-size: 1.3rem !important;
    color: #111111 !important;
    border:1px solid #111111 !important;
    background: none  !important;
}
.offcanvas-end {
  width: 90% !important;
  background: #e06c09;
  padding: 1rem;
}
.offcanvas.show:not(.hiding), .offcanvas.showing {
    z-index: 9999;
}
/*
.nav-minimal .nav-link[aria-expanded]::before {
    right: -9%;
}
*/
.navbar-collapse.collapse.show .nav-minimal .nav-link[aria-expanded]::before {
    right: -9%;
}
ul.dropdown-menu {
    background: #fff;
    padding: 1.5rem 1rem;
    border: none;
}
ul.dropdown-menu li {
    margin-bottom: 1rem;
}
ul.dropdown-menu li:last-child {
    margin-bottom: unset;
}
ul.navbar-nav.nav-minimal li a, .nav-minimal li a {
    font-size: 1.55rem;
    display: block;
    padding: 0.5rem 0;
    color: #fff;
    text-align: center;
}
.nav-minimal .nav-link[class*="active"], ul.navbar-nav.nav-minimal li.current-menu-item a, .nav-minimal li.current-menu-item a, .nav-minimal .nav-link:hover, .nav-minimal .nav-link:hover {
    text-decoration:underline;
    color: #111111!important;
    font-weight: 700;
}
.nav-minimal ul.dropdown-menu li a, .nav-minimal ul.dropdown-menu li.current-menu-item a {
    color: #111111!important;
}
li.menu-item {
    margin-right: 0.5rem!important
}
.nav-minimal ul.dropdown-menu li a,
.nav-minimal ul.dropdown-menu li.current-menu-item a, 
.nav-minimal ul.dropdown-menu li a, 
.nav-minimal ul.dropdown-menu li.current-menu-item a,
.dropdown-menu .dropdown-item.active {
    color: #111111!important;
}
.nav-minimal .nav-link[aria-expanded]::before {
    right: -0.6rem;
}
.navbar-collapse.collapse.show .nav-minimal .nav-link[aria-expanded]::before {
    right: -1.4rem;
}
.offcanvas.show .dropdown-toggle::after {
    display: none;
}
.offcanvas.show .dropdown-toggle::before {
    color: #fff !important;
    right: -1.6rem;
}
.offcanvas.offcanvas-end.show .offcanvas-body ul.dropdown-menu {
    background: #e06c09;
    /*    box-shadow: none !important;
    border: 0 !important;*/
}
.offcanvas.offcanvas-end.show .offcanvas-body ul.dropdown-menu a.nav-link.dropdown-item {
    color: #fff !important;
    padding: 8px 0 !important;
}
.offcanvas.offcanvas-end.show .offcanvas-body ul.dropdown-menu a.nav-link.dropdown-item:hover {
    color: #111111 !important;
    
}
/* Prevent label "jump" when dropdown opens (mobile) */
@media (max-width: 991.98px) { 
    /* Let the link take the remaining space */
    #offcanvasNav .nav-item.dropdown > .d-flex > a.nav-link,
    #mainNav .nav-item.dropdown > .d-flex > a.nav-link {
        flex: 1 1 auto;
        min-width: 0;
    }
}
/* Keeping dropdown-menu centered  */
@media (max-width: 1199.98px) {
    .dropdown .dropdown-menu {
        transform: translate( 0);
    }
}

.btn-close {
    padding: 0.5rem;
    opacity: 1;
    color: #fff !important;
}
.offcanvas button.btn-close {
    --bs-btn-close-bg: unset;
    --bs-btn-close-color: #fff; 
}
.nav-minimal .nav-item:not(:first-child) {
    margin-top: unset;
}
a.nav-link.dropdown-toggle {
    padding: 0.5rem 0.8rem !important;
}
/*
.dropdown-toggle::after { 
    display: none;
}
/* Hide caret ONLY on the main link if you ever add dropdown-toggle to <a> (we don't) */
a.dropdown-toggle::after { display: none; }

/* Show caret on the BUTTON toggle */
button.dropdown-toggle::after { display: inline-block; }


*/
@media (max-width: 1199px) {
    /*
    .dropdown-toggle::after {
        display: none;
    }
    */
    .navbar .dropdown-menu { 
        position: static;
        float: none;
        width: 100%;
        margin-top: .5rem;
    }
    #section-hero-banner .display-2 {
        font-size: 70px;
    }
    .nav-minimal .nav-item:not(:first-child) {
        margin-top: 1rem;
    }
}

footer .form-control {
    border:1px solid #fff !important;
}
.inverted [class*="border"], .inverted[class*="border"] {
    border-color: #fff !important;
}

.navbar-brand img {
    max-height: 5.5rem;
}
@media (max-width: 1600px) {
    .navbar-brand img {
        max-height: 4.5rem;
    }
}
@media (max-width: 1400px) {
    .navbar-brand img { 
        max-height: 3rem;
    }
    a.navbar-brand {
        margin-right: unset!important
    }
}
@media (min-width: 992px) {
    .navbar-nav .nav-link {
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }
}

/*
@media (max-width: 769px) {
    .navbar-brand img { 
        max-height: 5.5rem;
    }
}
*/
@media (max-width: 768px) {
    .navbar-brand img { 
        max-height: 3.4rem; /* var 4.5 */
    }
    .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .min-vh-100 {
        min-height: 500px !important;
    }
    .min-md-600px {
        min-height: 600px !important;
    }
    #section-hero-banner .display-2, .display-2 {
        font-size: 50px;
    }
    h2, .h2 {
        font-size: 30px;
    }
    h3, .h3, .eyebrow {
        font-size: 22px;
    }
    .btn {
        padding: 0.85rem 1.5rem 0.75rem 1.5rem;
        font-size: 1.1rem;
    }
    .card .background {
        min-height: 300px;
        margin-top: 1.5rem;
        position: relative;
    }
    .section-repeat:nth-child(odd) .container .row .col-md-7 {
        order:1;
    }
    .accordion-button { 
        font-size: 25px;
    }
    .accordion .accordion-button::after {
        font-size: 32px;
        line-height: 32px;
    }
    .accordion-minimal .accordion-button {
        padding: 1rem 0 1rem 3rem !important;
        font-size: 1rem;
    }

    .lead, label{
        font-size:100%;
    }
    .image-height img {
        height:300px;
    }
    .logos img {
        height: auto;
        max-width: 100px;
    }
}
/* Scalable font */
.hero-title { 
    white-space: nowrap;
    font-size: clamp(1.6rem, 6vw, 6rem); /* scales with screen width */
}
.hero-description {
    font-size: clamp(1.2rem, 6vw, 2rem);
}
@media (min-width: 1140px) and (max-width: 1450px) {
    .hero-description {
        font-size: 1.4rem;
    }
}
/* Show dropdowns on hover (for desktop only) */
@media (min-width: 1200px) { 
    /*
    .navbar .dropdown:hover > .dropdown-menu {
        display: block;
        top: 100%;
        width: max-content;
    }
    */
    /* Optional: keep dropdown visible when hovering inside it */
    /*
    .navbar .dropdown-menu:hover {
        display: block;
        top: 100%;
    }
    */
}
.navbar-toggler { 
    border: none;
}

/* HALF-HALF */
.half-half { 
    color: #fff;
}
.half-half:nth-child(odd) {
    background: #e06c09;
}
.half-half:nth-child(even) {
    background: #111111;
}
.half-half:nth-child(odd) .row {
    flex-flow: row-reverse wrap;
}
.half-half .col-12 { 
    display: flex;
    align-items: center;
}
.half-half .inner { 
    padding: 0 3rem;
    max-width: 700px;
    margin: 0 auto;
}
@media (max-width: 991px) {
    .half-half .inner {
        padding: 2rem;
    }
}
@media (max-width: 767px) {
  .half-half .inner {
    padding: 1.25rem;
}
}
/* Image wrapper & image */
.half-half figure {
    width: 100%;
    height: auto;
    margin: 0;
    /* Consistent proportional height instead of fixed px values */
    aspect-ratio: 4 / 3; /* change to 16 / 9 if necessary  */
}

.half-half figure img {
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: cover;
    object-position: top center; /* Change based on the imges or add extra based on page-id */ 
}

/* Puffs */
.puff-description {
  display: -webkit-box;
  -webkit-line-clamp: 4;   /* number of lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
}


/* HERO BANNER overlay */
.home.page #section-hero-banner .background[class*="-overlay"]::after {
    opacity: 0.74;
}

/* SVART & VIT BILDER */
/*
.half-half img,
.puffs img,
.job-list-section img {
  filter: grayscale(100%);
  transition: filter 0.3s ease;
}
*/

/* Section #contact-form */
#contact-form {
    color: #fff;
    background-color: #e06c09;
}
#contact-form .form-control {
    border-bottom: 1px solid #fff;
}

/* Nyheter arkiv inlägg */
/* Blog cards – equal image height */
#news-posts .card-img-top { 
    height: 220px; 
    object-fit: cover;
}
@media (min-width: 768px) {
    #news-posts .card-img-top {
        height: 260px;
    }
}

@media (min-width: 1200px) {
    #news-posts .card-img-top {
        height: 300px;
    }
}
/* Related posts - Sidebar */
/* Same-height card thumbnails */
#related-posts .card-img-top.post-card-thumb { 
    width: 100%;
    height: 220px;     /* base */
    object-fit: cover;
    display: block;
    object-position: top center;

}

@media (min-width: 768px) {
    #related-posts .card-img-top.post-card-thumb { height: 200px; }
}

@media (min-width: 992px) {
    #related-posts .card-img-top.post-card-thumb { height: 220px; }
}

/* Uppdrag CPT */
/* Equal height thumbs for Uppdrag cards */
.uppdrag-thumb{
  height: 220px; 
  overflow: hidden;
}

.object-fit-cover{
  object-fit: cover;
}

/**
 * Paggination 
*/
/* Pagination wrapper */
.page-numbers {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 0.5rem;
    justify-content: center;
    align-items: center;
}
/* Remove list styling completely */
.page-numbers li {
    margin: 0;
    padding: 0;
}
/* Links & spans */
.page-numbers a,
.page-numbers span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border-radius: 0.375rem;
    border: 1px solid #dee2e6;
    background-color: #fff;
    color: #5710ab;
    text-decoration: none;
    font-size: 0.875rem;
    line-height: 1;
}
/* Hover */
.page-numbers a:hover {
    background-color: #f8f9fa;
    border-color: #5710ab;
}
/* Current page */
.page-numbers .current {
    background-color: #5710ab;
    border-color: #5710ab;
    color: #fff;
    cursor: default;
}
/* Prev / Next buttons */
.page-numbers .prev,
.page-numbers .next {
    font-weight: 500;
}
/* Disabled prev/next */
.page-numbers .dots {
    border: none;
    background: transparent;
    color: #6c757d;
    cursor: default;
}

