/*
Theme Name: Bootstrap-core-theme
Description: A core theme for developers to be used with child themes. This theme is based on Bootstrap 5.
Version: 2.2
Author: Ingvar Jensen
Author URI: https://www.unofix.no
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bootstrap-core-theme
*/

/* =============================================================================
 * Bootstrap Core Theme - Base Stylesheet
 *
 * NOTE:
 * - This is a "parent" theme stylesheet intended to be extended by child themes.
 * - Keep selectors stable and predictable to avoid breaking child theme overrides.
 * - This file is intentionally organized by categories (sections) for maintainability.
 * ========================================================================== */


/* =============================================================================
 * 1) DESIGN TOKENS (colors, typography)
 * ========================================================================== */

/*
Color palette (reference)
- Yellow: #ffe97d
- Cyan:   #c0ebf1
- Green:  #7bdcb5 (alt: #2D8E9F / #2D8E9FFF)
- Blue:   #077bc1
*/

/* External font import (used by .logotext).
 * Possible improvement:
 * - Consider enqueuing Google Fonts via functions.php for better performance control.
 */
@import url('https://fonts.googleapis.com/css2?family=Lilita+One&display=swap');

/* Root tokens (single source of truth for colors) */
:root {
    /* Brand palette */
    --bct-yellow: #ffe97d;
    --bct-cyan: #c0ebf1;
    --bct-green: #7bdcb5;
    --bct-blue: #077bc1;

    /* Base / text */
    --bct-text: #4B5563;
    --bct-text-muted: #656565;

    /* Links */
    --bct-link: #29808F;
    --bct-link-hover: rgb(232, 174, 99);

    /* Surfaces */
    --bct-surface: #ffffff;
    --bct-surface-alt: #f9f9f9;

    /* Borders / neutrals */
    --bct-border: #3d3d3d;
    --bct-border-light: lightgrey;
    --bct-border-grey: grey;

    /* Common colors */
    --bct-black: #000000;
    --bct-white: #ffffff;

    /* Header/menu */
    --bct-dropdown-hover-bg: #d2d1d1;
    --bct-menu-post-hover-bg: #316988;

    /* Buttons */
    --bct-btn-outline-border: rgb(200, 73, 87);
    --bct-btn-text: #fff;
    --bct-btn-hover-bg: lightblue;

    --bct-btn-bg: #29808F;
    --bct-btn-border: rgb(219, 210, 224);
    --bct-btn-bg-hover: #ede2d2;
    --bct-btn-text-hover: #7e7d7d;

    /* Background utilities */
    --bct-bg-light-blue: #d9e4ff;
    --bct-bg-light-cyan: #daf1ff;
    --bct-bg-gray: #f9f9f9;
    --bct-bg-green: #91c2cbe3;

    /* Icons */
    --bct-icon: #333;

    /* Shadows */
    --bct-shadow-strong: 0 0 7px 0 rgba(0, 0, 0, 0.64);
    --bct-shadow-card: rgb(61, 61, 61) 0 1px 3px 0;
    --bct-shadow-card-hover: rgb(62, 62, 62) 0 3px 6px 0;
    --bct-shadow-archive: rgb(222, 222, 222) 0 1px 6px 0;
    --bct-shadow-archive-hover: rgb(222, 222, 222) 3px 10px 9px 0;

    /* Footer */
    --bct-footer-bg: #000000d6;

    /* Coworkers */
    --bct-avatar-border: #C0ebf1;
    --bct-avatar-placeholder: #e9ecef;
    --bct-person-image-fallback: #f1f3f5;
    --bct-person-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);

    /* Mobile menu colors */
    --bct-mobile-dropdown-bg: #f8f9fa;
    --bct-mobile-dropdown-text: #343a40;
    --bct-mobile-dropdown-hover-bg: #e9ecef;
    --bct-mobile-dropdown-hover-text: #007bff;

    /* Accent text */
    --bct-blue-text: #3bb5ff;

}

/* SVG polygon fill colors (fallback) */
.st0 { fill: #EDE2D2; }
.st1 { fill: #2d8e9f; }


/* =============================================================================
 * 2) BASE / GLOBAL ELEMENTS
 * ========================================================================== */

body {
    padding-top: 100px;
    font-family: Tahoma, sans-serif;
    color: var(--bct-text);
}

#main-container {
    height: 100%;
}

h1,
h2,
h3 {
    font-weight: 400;
    white-space: normal;
}

a {
    border: 0;
    color: var(--bct-link);
    cursor: pointer;
    text-decoration: underline;
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto;
    text-underline-offset: 0.25em;
}

a:hover {
    color: var(--bct-link-hover);
}


/* =============================================================================
 * 3) HELPERS / UTILITIES
 * ========================================================================== */

.font-larger {
    font-size: 1.1rem;
}

.blue-text {
    color: var(--bct-blue-text);
    font-weight: 600;
}

.excerpt {
    font-size: 1.1rem;
    letter-spacing: 0.3px;
}

.add-shadow {
    box-shadow: var(--bct-shadow-strong);
}

.border-right {
    border-right: 1px solid var(--bct-border-grey);
}

.no-border {
    border: none !important;
}
body.admin-bar .navbar.fixed-top {
    top: 32px;
}

@media (max-width: 782px) {
    body.admin-bar .navbar.fixed-top {
        top: 46px;
    }
}



/* =============================================================================
 * 4) BRANDING / LOGO
 * ========================================================================== */

.logotext {
    font-size: 3.3em !important;
    font-family: "Lilita One", sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 2px;
}


/* =============================================================================
 * 5) LAYOUT: SECTIONS & CONTAINERS
 * ========================================================================== */

section {
    padding-top: 10px;
}

.section-1 {
    padding: 5px 0;
}

.section-2 {
    /* Intentionally minimal */
}

.section-2a {
    padding-top: 30px;
    padding-bottom: 20px;
    padding-left: 35px;
}

.section-2b {
    padding: 30px 0 35px;
}

.section-3b {
    padding: 20px 0 0;
}

.section-3b .card {
    margin: 5px 5px 0 0;
    padding: 0;
    min-height: 250px;
    text-align: center;
}

.section-3b .card-icon {
    text-align: center;
}

.section-3b .card-title {
    margin-top: 10px;
    margin-bottom: 20px;
}

.section-4 {
    padding-top: 35px;
}

.section-5 {
    padding-top: 35px;
    padding-bottom: 35px;
}

.section-5 .title {
    margin-bottom: 20px;
}

.section-contact {
    padding: 35px 0 30px;
}

.post-content {
    padding-bottom: 50px;
}


/* =============================================================================
 * 6) CARDS / POST LISTING STYLES
 * ========================================================================== */

.section-5 .card-img-top {
    height: 200px;
    background-repeat: no-repeat;
    background-size: cover;
    border-top-left-radius: 15px;
}

/* News cards (used in section-5 / blog listing) */
.section-5 .bct-news-card {
    width: 25rem;
}

.card-title{
    font-weight: 600;
}
.card-img-top a {
    padding: 0;
}

.section-5 .card {
    margin-right: 15px;
    margin-top: 15px;
    border-top-left-radius: 15px;
    border-bottom-right-radius: 15px;
    box-shadow: var(--bct-shadow-card);
    transition: all 0.5s ease 0s;
}

.section-5 .card:hover {
    box-shadow: var(--bct-shadow-card-hover);
    transform: translateY(-1.5px);
}

.section-5 h3 {
    font-size: 19px;
}

.section-5 h3 a {
    text-decoration: none;
}

.section-5 h3 a:hover {
    text-decoration: underline;
}

.post-archive .card {
    margin-right: 15px;
    margin-top: 15px;
    border-radius: 15px;
    box-shadow: var(--bct-shadow-archive);
    transition: all 0.5s ease 0s;
}

.post-archive .card:hover {
    box-shadow: var(--bct-shadow-archive-hover);
    transform: translateY(-1px);
}


/* =============================================================================
 * 7) CATEGORY BADGES / BOXES
 * ========================================================================== */

.card .category-box {
    padding: 3px 3px 5px;
    background-color: var(--bct-cyan);
    margin: 5px 5px 5px 0;
    border-radius: 3px;
}

.card .category-box a {
    text-decoration: none;
    color: var(--bct-black);
    font-family: 'museo-sans', sans-serif;
    font-size: 11px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

/* Category box for post-content */
.content-category-box {
    padding: 3px 3px 5px;
    background-color: var(--bct-cyan);
    margin-right: 8px;
    border-radius: 3px;
}

.content-category-box a {
    text-decoration: none;
    color: var(--bct-black);
    font-family: 'museo-sans', sans-serif;
    font-size: 11px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.content-category-box a:hover {
    text-decoration: underline;
}


/* =============================================================================
 * 8) SEARCH UI (header search toggle + overlay)
 * ========================================================================== */

.mobile-menu {
    display: none;
}

.header-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.search-wrapper {
    display: flex;
    align-items: center;
}

.search-toggle {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1.5em;
    margin-right: 10px;
}

.search-container {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    top: 91px;
    left: 50%;
    transform: translateX(-50%) translateY(-10px);
    width: 1000px;
    background: var(--bct-surface);
    transition: visibility 0s, opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.search-container.active {
    visibility: visible;
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.search-container input[type="search"],
.search-container input[type="text"] {
    width: 100%;
    padding-right: 40px;
    box-sizing: border-box;
    height: 40px;
    border-radius: 10px;
    border: 1px solid var(--bct-border);
    padding-left: 15px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.10);

}


.search-container .search-icon {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
}

.search-container .search-icon i {
    font-size: 1.2em;
    color: var(--bct-icon);
}

.menu-toggle {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1.5em;
}


/* =============================================================================
 * 9) SIDEBAR / WIDGETS
 * ========================================================================== */

.aside-content {
    padding-left: 25px;
    position: -webkit-sticky;
    position: sticky;
    top: 120px;
}

.wp-block-latest-posts > li {
    padding: 15px 0;
    border-bottom: 1px solid var(--bct-border-light);
}

.wp-block-latest-posts > li > a {
    text-decoration: none;
}

.wp-block-latest-posts > li > a:hover {
    text-decoration: underline;
}

.wp-block-categories-list,
.wp-block-categories > ul {
    list-style: none;
    padding-left: 0;
}

.wp-block-categories > li {
    padding: 15px 0;
    border-bottom: 1px solid var(--bct-border-light);
}

.wp-block-categories > li > a {
    text-decoration: none;
    text-transform: capitalize;
}

.wp-block-categories > li > a:hover {
    text-decoration: underline;
}

.sidebar-widget {
    padding: 10px;
    border: none;
}


/* =============================================================================
 * 10) HEADER / NAVBAR / DROPDOWNS
 * ========================================================================== */

.header-svg {
    content: "";
    width: 100%;
    height: 15px;
    line-height: 1px;
    display: block;
}

.navbar {
    height: 100px;
    background-color: var(--bct-surface);
}

.nav-item:hover {
    text-decoration: underline;
    display: block;
}

.dropdown-menu .nav-item:hover {
    text-decoration: none;
    background-color: var(--bct-dropdown-hover-bg);
}

.menu-item-object-post:hover {
    border-bottom: none;
    color: var(--bct-white);
    background-color: var(--bct-menu-post-hover-bg);
}

.navbar-light .navbar-nav .nav-link {
    color: var(--bct-black) !important;
    font-family: "Trebuchet MS", sans-serif;
}

.navbar a {
    font-size: 1.3rem;
}

.dropdown-menu {
    padding: 5px;
}

/* Dropdown on hover */
.dropdown:hover .dropdown-menu {
    display: block;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.navbar-brand.logotext {
    word-break: break-word;
    overflow-wrap: anywhere;
    line-height: 1.1;
}
.navbar-brand.logotext {
    font-size: clamp(14px, 2vw, 22px);
}
.navbar-brand {
    white-space: normal !important;
}


/* =============================================================================
 * 11) BUTTONS & BLOCK BUTTONS
 * ========================================================================== */

.btn {
    border-radius: 1.5rem;
    border: solid 2px var(--bct-btn-outline-border);
    color: var(--bct-btn-text);
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0.6875rem 1.5rem;
}

.btn:hover {
    background-color: var(--bct-btn-hover-bg);
}

/* Gutenberg buttons + Bootstrap buttons harmonization */
.wp-block-button__link,
.btn,
.btn-primary {
    background-color: var(--bct-btn-bg);
    border-radius: 1.5rem;
    border: solid 2px var(--bct-btn-border);
    color: var(--bct-btn-text);
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0.6875rem 1.5rem;
    transition: background-color 0.3s ease;
    margin-top: 15px;
}

.wp-block-button__link:hover {
    background-color: var(--bct-btn-bg-hover);
    color: var(--bct-btn-text-hover);
}


.btn-primary:hover {
    border: solid 2px var(--bct-btn-border);
    background-color: var(--bct-btn-bg-hover);
    color: var(--bct-btn-text-hover);
}


/* =============================================================================
 * 12) BACKGROUNDS & DECORATIVE SVG UTILITIES
 * ========================================================================== */

.bg-light {
    background-color: var(--bct-surface) !important;
}

.bg-light-blue {
    background-color: var(--bct-bg-light-blue);
}

.bg-light-cyan {
    background-color: var(--bct-bg-light-cyan);
}

.bg-gray {
    background-color: var(--bct-bg-gray);
}

.bg-green {
    background-color: var(--bct-bg-green);
}

/* Decorative SVG backgrounds (data URI + asset images) */
.svg-waves {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.com/svgjs' width='1440' height='560' preserveAspectRatio='none' viewBox='0 0 1440 560'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1017%26quot%3b)' fill='none'%3e%3cpath d='M1440 0L1052.51 0L1440 90.76z' fill='rgba(255%2c 255%2c 255%2c .1)'%3e%3c/path%3e%3cpath d='M1052.51 0L1440 90.76L1440 142.29000000000002L779.0999999999999 0z' fill='rgba(255%2c 255%2c 255%2c .075)'%3e%3c/path%3e%3cpath d='M779.0999999999999 0L1440 142.29000000000002L1440 233.01000000000002L321.1499999999999 0z' fill='rgba(255%2c 255%2c 255%2c .05)'%3e%3c/path%3e%3cpath d='M321.14999999999986 0L1440 233.01000000000002L1440 370.97L273.51999999999987 0z' fill='rgba(255%2c 255%2c 255%2c .025)'%3e%3c/path%3e%3cpath d='M0 560L233.02 560L0 487.25z' fill='rgba(0%2c 0%2c 0%2c .1)'%3e%3c/path%3e%3cpath d='M0 487.25L233.02 560L649.04 560L0 277.86z' fill='rgba(0%2c 0%2c 0%2c .075)'%3e%3c/path%3e%3cpath d='M0 277.86L649.04 560L905.8699999999999 560L0 275.78000000000003z' fill='rgba(0%2c 0%2c 0%2c .05)'%3e%3c/path%3e%3cpath d='M0 275.78000000000003L905.8699999999999 560L1261.03 560L0 84.21000000000004z' fill='rgba(0%2c 0%2c 0%2c .025)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1017'%3e%3crect width='1440' height='560' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
    background-attachment: fixed;
    background-size: cover;
    background-repeat: no-repeat;
}

.svg-background {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.com/svgjs' width='1440' height='560' preserveAspectRatio='none' viewBox='0 0 1440 560'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1017%26quot%3b)' fill='none'%3e%3cpath d='M1440 0L1052.51 0L1440 90.76z' fill='rgba(255%2c 255%2c 255%2c .1)'%3e%3c/path%3e%3cpath d='M1052.51 0L1440 90.76L1440 142.29000000000002L779.0999999999999 0z' fill='rgba(255%2c 255%2c 255%2c .075)'%3e%3c/path%3e%3cpath d='M779.0999999999999 0L1440 142.29000000000002L1440 233.01000000000002L321.1499999999999 0z' fill='rgba(255%2c 255%2c 255%2c .05)'%3e%3c/path%3e%3cpath d='M321.14999999999986 0L1440 233.01000000000002L1440 370.97L273.51999999999987 0z' fill='rgba(255%2c 255%2c 255%2c .025)'%3e%3c/path%3e%3cpath d='M0 560L233.02 560L0 487.25z' fill='rgba(0%2c 0%2c 0%2c .1)'%3e%3c/path%3e%3cpath d='M0 487.25L233.02 560L649.04 560L0 277.86z' fill='rgba(0%2c 0%2c 0%2c .075)'%3e%3c/path%3e%3cpath d='M0 277.86L649.04 560L905.8699999999999 560L0 275.78000000000003z' fill='rgba(0%2c 0%2c 0%2c .05)'%3e%3c/path%3e%3cpath d='M0 275.78000000000003L905.8699999999999 560L1261.03 560L0 84.21000000000004z' fill='rgba(0%2c 0%2c 0%2c .025)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1017'%3e%3crect width='1440' height='560' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
    background-size: cover;
    background-attachment: fixed;
}

.svg-background-w1 {
    background-image: url("assets/img/background.svg");
    background-size: cover;
    background-repeat: no-repeat;
}

/* Additional background utilities (kept as-is; long SVG data URIs preserved) */
.svg-bg-blue {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='250' preserveAspectRatio='none' viewBox='0 0 1440 250'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1017%26quot%3b)' fill='none'%3e%3cpath d='M43 250L293 0L486.5 0L236.5 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1018%26quot%3b)'%3e%3c/path%3e%3cpath d='M246.60000000000002 250L496.6 0L603.1 0L353.1 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1018%26quot%3b)'%3e%3c/path%3e%3cpath d='M516.2 250L766.2 0L985.2 0L735.2 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1018%26quot%3b)'%3e%3c/path%3e%3cpath d='M720.8000000000001 250L970.8000000000001 0L1219.8000000000002 0L969.8000000000001 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1018%26quot%3b)'%3e%3c/path%3e%3cpath d='M1421 250L1171 0L1027 0L1277 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1019%26quot%3b)'%3e%3c/path%3e%3cpath d='M1189.4 250L939.4000000000001 0L714.4000000000001 0L964.4000000000001 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1019%26quot%3b)'%3e%3c/path%3e%3cpath d='M931.8 250L681.8 0L395.29999999999995 0L645.3 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1019%26quot%3b)'%3e%3c/path%3e%3cpath d='M719.1999999999999 250L469.19999999999993 0L233.69999999999993 0L483.69999999999993 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1019%26quot%3b)'%3e%3c/path%3e%3cpath d='M1229.068563298932 250L1440 39.06856329893216L1440 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1018%26quot%3b)'%3e%3c/path%3e%3cpath d='M0 250L210.93143670106784 250L 0 39.06856329893216z' fill='url(%26quot%3b%23SvgjsLinearGradient1019%26quot%3b)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1017'%3e%3crect width='1440' height='250' fill='white'%3e%3c/rect%3e%3c/mask%3e%3clinearGradient x1='0%25' y1='100%25' x2='100%25' y2='0%25' id='SvgjsLinearGradient1018'%3e%3cstop stop-color='rgba(0%2c 176%2c 255%2c 0.8)' offset='0'%3e%3c/stop%3e%3cstop stop-opacity='0' stop-color='rgba(0%2c 176%2c 255%2c 0.8)' offset='0.66'%3e%3c/stop%3e%3c/linearGradient%3e%3clinearGradient x1='100%25' y1='100%25' x2='0%25' y2='0%25' id='SvgjsLinearGradient1019'%3e%3cstop stop-color='rgba(0%2c 176%2c 255%2c 0.8)' offset='0'%3e%3c/stop%3e%3cstop stop-opacity='0' stop-color='rgba(0%2c 176%2c 255%2c 0.8)' offset='0.66'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e");
    background-size: cover;
    background-attachment: fixed;
}

.svg-bg-cyan {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='250' preserveAspectRatio='none' viewBox='0 0 1440 250'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1046%26quot%3b)' fill='none'%3e%3cpath d='M18 250L268 0L361 0L111 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1047%26quot%3b)'%3e%3c/path%3e%3cpath d='M243.60000000000002 250L493.6 0L564.1 0L314.1 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1047%26quot%3b)'%3e%3c/path%3e%3cpath d='M478.20000000000005 250L728.2 0L939.7 0L689.7 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1047%26quot%3b)'%3e%3c/path%3e%3cpath d='M737.8000000000001 250L987.8000000000001 0L1080.8000000000002 0L830.8000000000001 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1047%26quot%3b)'%3e%3c/path%3e%3cpath d='M1393 250L1143 0L820.5 0L1070.5 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1048%26quot%3b)'%3e%3c/path%3e%3cpath d='M1182.4 250L932.4000000000001 0L716.4000000000001 0L966.4000000000001 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1048%26quot%3b)'%3e%3c/path%3e%3cpath d='M926.8 250L676.8 0L328.79999999999995 0L578.8 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1048%26quot%3b)'%3e%3c/path%3e%3cpath d='M713.1999999999999 250L463.19999999999993 0L211.19999999999993 0L461.19999999999993 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1048%26quot%3b)'%3e%3c/path%3e%3cpath d='M1213.7374428846208 250L1440 23.73744288462089L1440 250z' fill='url(%26quot%3b%23SvgjsLinearGradient1047%26quot%3b)'%3e%3c/path%3e%3cpath d='M0 250L226.2625571153791 250L 0 23.73744288462089z' fill='url(%26quot%3b%23SvgjsLinearGradient1048%26quot%3b)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1046'%3e%3crect width='1440' height='250' fill='white'%3e%3c/rect%3e%3c/mask%3e%3clinearGradient x1='0%25' y1='100%25' x2='100%25' y2='0%25' id='SvgjsLinearGradient1047'%3e%3cstop stop-color='rgba(42%2c 189%2c 177%2c 0.2)' offset='0'%3e%3c/stop%3e%3cstop stop-opacity='0' stop-color='rgba(42%2c 189%2c 177%2c 0.2)' offset='0.66'%3e%3c/stop%3e%3c/linearGradient%3e%3clinearGradient x1='100%25' y1='100%25' x2='0%25' y2='0%25' id='SvgjsLinearGradient1048'%3e%3cstop stop-color='rgba(42%2c 189%2c 177%2c 0.2)' offset='0'%3e%3c/stop%3e%3cstop stop-opacity='0' stop-color='rgba(42%2c 189%2c 177%2c 0.2)' offset='0.66'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e");
    background-size: cover;
    background-attachment: fixed;
}

.svg-bg-blue-waves {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='350' preserveAspectRatio='none' viewBox='0 0 1440 350'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1048%26quot%3b)' fill='none'%3e%3cpath d='M24 350L374 0L468.5 0L118.5 350z' fill='url(%26quot%3b%23SvgjsLinearGradient1049%26quot%3b)'%3e%3c/path%3e%3cpath d='M270.6 350L620.6 0L850.1 0L500.1 350z' fill='url(%26quot%3b%23SvgjsLinearGradient1049%26quot%3b)'%3e%3c/path%3e%3cpath d='M477.20000000000005 350L827.2 0L956.2 0L606.2 350z' fill='url(%26quot%3b%23SvgjsLinearGradient1049%26quot%3b)'%3e%3c/path%3e%3cpath d='M717.8000000000001 350L1067.8000000000002 0L1246.3000000000002 0L896.3000000000001 350z' fill='url(%26quot%3b%23SvgjsLinearGradient1049%26quot%3b)'%3e%3c/path%3e%3cpath d='M1423 350L1073 0L851 0L1201 350z' fill='url(%26quot%3b%23SvgjsLinearGradient1050%26quot%3b)'%3e%3c/path%3e%3cpath d='M1173.4 350L823.4000000000001 0L614.9000000000001 0L964.9000000000001 350z' fill='url(%26quot%3b%23SvgjsLinearGradient1050%26quot%3b)'%3e%3c/path%3e%3cpath d='M952.8 350L602.8 0L467.79999999999995 0L817.8 350z' fill='url(%26quot%3b%23SvgjsLinearGradient1050%26quot%3b)'%3e%3c/path%3e%3cpath d='M722.1999999999999 350L372.19999999999993 0L28.699999999999932 0L378.69999999999993 350z' fill='url(%26quot%3b%23SvgjsLinearGradient1050%26quot%3b)'%3e%3c/path%3e%3cpath d='M1152.8908063470826 350L1440 62.89080634708256L1440 350z' fill='url(%26quot%3b%23SvgjsLinearGradient1049%26quot%3b)'%3e%3c/path%3e%3cpath d='M0 350L287.10919365291744 350L 0 62.89080634708256z' fill='url(%26quot%3b%23SvgjsLinearGradient1050%26quot%3b)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1048'%3e%3crect width='1440' height='350' fill='white'%3e%3c/rect%3e%3c/mask%3e%3clinearGradient x1='0%25' y1='100%25' x2='100%25' y2='0%25' id='SvgjsLinearGradient1049'%3e%3cstop stop-color='rgba(0%2c 176%2c 255%2c 0.2)' offset='0'%3e%3c/stop%3e%3cstop stop-opacity='0' stop-color='rgba(0%2c 176%2c 255%2c 0.2)' offset='0.66'%3e%3c/stop%3e%3c/linearGradient%3e%3clinearGradient x1='100%25' y1='100%25' x2='0%25' y2='0%25' id='SvgjsLinearGradient1050'%3e%3cstop stop-color='rgba(0%2c 176%2c 255%2c 0.2)' offset='0'%3e%3c/stop%3e%3cstop stop-opacity='0' stop-color='rgba(0%2c 176%2c 255%2c 0.2)' offset='0.66'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e");
    background-size: cover;
    background-attachment: fixed;
}

.svg-bg-blue-wave {
    background-image: url("assets/img/blue_wave.svg");
    background-size: cover;
    background-repeat: no-repeat;
}

.svg-hero {
    background-image: url("assets/img/bg_blue.svg");
    background-size: cover;
    background-attachment: fixed;
}

.svg-surf {
    background-image: url("assets/img/svgsurf.svg");
    background-size: cover;
    background-attachment: fixed;
    background-position: bottom;
}

.bg-clouds {
    padding-top: 40px;
    background: var(--bct-bg-light-cyan) url("assets/img/clouds-white.webp") repeat-x bottom;
    min-height: 250px;
    max-width: 100%;
}

.svg-blue-waves {
    background-image: url("assets/img/blue_waves.svg");
    background-size: cover;
    background-repeat: no-repeat;
}

.svg-green-waves {
    background-image: url("assets/img/green_waves.svg");
    background-size: cover;
    background-repeat: no-repeat;
}

.bg-cyan-triangle {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1200' height='500' preserveAspectRatio='none' viewBox='0 0 1200 500'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1093%26quot%3b)' fill='none'%3e%3cpath d='M30 500L530 0L653 0L153 500z' fill='url(%26quot%3b%23SvgjsLinearGradient1094%26quot%3b)'%3e%3c/path%3e%3cpath d='M417 500L917 0L1155.5 0L655.5 500z' fill='url(%26quot%3b%23SvgjsLinearGradient1094%26quot%3b)'%3e%3c/path%3e%3cpath d='M1194 500L694 0L250 0L750 500z' fill='url(%26quot%3b%23SvgjsLinearGradient1095%26quot%3b)'%3e%3c/path%3e%3cpath d='M785 500L285 0L18 0L518 500z' fill='url(%26quot%3b%23SvgjsLinearGradient1095%26quot%3b)'%3e%3c/path%3e%3cpath d='M774.1121791347416 500L1200 74.11217913474161L1200 500z' fill='url(%26quot%3b%23SvgjsLinearGradient1094%26quot%3b)'%3e%3c/path%3e%3cpath d='M0 500L425.8878208652584 500L 0 74.11217913474161z' fill='url(%26quot%3b%23SvgjsLinearGradient1095%26quot%3b)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1093'%3e%3crect width='1200' height='500' fill='white'%3e%3c/rect%3e%3c/mask%3e%3clinearGradient x1='0%25' y1='100%25' x2='100%25' y2='0%25' id='SvgjsLinearGradient1094'%3e%3cstop stop-color='rgba(0%2c 176%2c 255%2c 0.2)' offset='0'%3e%3c/stop%3e%3cstop stop-opacity='0' stop-color='rgba(0%2c 176%2c 255%2c 0.2)' offset='0.66'%3e%3c/stop%3e%3c/linearGradient%3e%3clinearGradient x1='100%25' y1='100%25' x2='0%25' y2='0%25' id='SvgjsLinearGradient1095'%3e%3cstop stop-color='rgba(0%2c 176%2c 255%2c 0.2)' offset='0'%3e%3c/stop%3e%3cstop stop-opacity='0' stop-color='rgba(0%2c 176%2c 255%2c 0.2)' offset='0.66'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e");
}


/* =============================================================================
 * 13) IMAGES / MEDIA
 * ========================================================================== */

.featured-image {
    display: block;
    height: auto;
    max-width: 100%;
}

.featured-image svg {
    display: block;
    height: auto;
    max-width: 100%;
}

.featured-image-full {
    display: block;
    height: auto;
    width: 100%;
}

.featured-image-caption {
    font-size: smaller;
}

.fp-block-image img {
    display: block;
    height: auto;
    width: 100%;
}

.avatar {
    margin-right: 10px;
    padding: 5px;
    border-radius: 50%;
    border: 5px solid var(--bct-avatar-border);
}

.post-content-meta {
    margin: 10px 0;
    font-size: 0.9em;
    color: var(--bct-text-muted);
}


/* =============================================================================
 * 14) FOOTER
 * ========================================================================== */

footer {
    background-color: var(--bct-footer-bg);
    color: var(--bct-white);
}



/* =============================================================================
 * 15) COWORKERS
 * ========================================================================== */

/* Ensure equal-height cards in grid */
.bct-person-card {
    height: 100%;
}

/* Avatar area */
.bct-person-avatar-wrap {
    width: 140px;
    height: 140px;
    margin: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bct-person-avatar {
    width: 96px;
    height: 96px;
    border-radius: 50%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.bct-person-avatar--placeholder {
    width: 96px;
    height: 96px;
    border-radius: 50%;
    background: var(--bct-avatar-placeholder);
}

/* Clamp + fade */
.bct-person-info.bct-clamp {
    position: relative;
    max-height: 7.5em; /* tweak: approx 4-5 lines depending on font-size */
    overflow: hidden;
}

/* Vertical coworker cards */
.bct-person-vertical {
    /*border-radius: .5rem;*/
    overflow: hidden;
    box-shadow: var(--bct-person-shadow);
    border-top-left-radius: 15px;
    border-bottom-right-radius: 15px;

}

/* Fixed image box ensures same size for all cards */
.bct-person-image-box {
    width: 100%;
    height: 390px;          /* juster etter ønsket look */
    background: var(--bct-person-image-fallback);    /* fallback */
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Image always fills the box without stretching */
.bct-person-img {
    width: 100%;
    height: 100%;
    object-fit: cover;      /* crops */
    object-position: center 3%; /* Sentrert horisontalt, x% fra toppen */
    display: block;
}

/* Fade-in remainder block */
.bct-person-more {
    margin-top: 0;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: opacity .25s ease, max-height .35s ease;
}

.bct-person-more.is-visible {
    opacity: 1;
    max-height: 1200px;
}

/* wpautop creates <p> with margin-top */
.bct-person-more > p:first-child {
    margin-top: 0;
}




/* =============================================================================
 * 16) RESPONSIVE / BREAKPOINTS
 * ========================================================================== */

@media screen and (max-width: 1557px) {
    /* Reserved for future adjustments */
}

@media screen and (max-width: 992px) {
    /* Search */
    .search-toggle {
        display: none;
    }

    .mobile-menu {
        display: block;
    }

    .navbar-brand img {
        width: 200px !important;
        height: auto;
    }

    .mobile-none {
        display: none;
    }

    section {
        padding: 10px;
    }

    .wp-block-button__link,
    .btn,
    .btn-primary {
        width: 95%;
    }

    .navbar-collapse {
        background-color: var(--bct-surface);
        box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.15);
    }

    /* Dropdown menu (mobile) */
    .navbar-nav .dropdown-menu {
        left: 0;
        background-color: var(--bct-mobile-dropdown-bg);
        border: none;
    }

    .navbar-nav .dropdown-menu .nav-link {
        color: var(--bct-mobile-dropdown-text);
    }

    .navbar-nav .nav-link {
        padding: 10px 20px;
    }

    .navbar-nav .dropdown-menu .nav-link:hover {
        background-color: var(--bct-mobile-dropdown-hover-bg);
        color: var(--bct-mobile-dropdown-hover-text);
    }

    /* Submenu dropdown */
    .navbar-nav .dropdown-menu .dropdown-menu .nav-link {
        color: var(--bct-mobile-dropdown-text);
        padding: 10px 20px;
    }

    .navbar-nav .dropdown-menu .dropdown-menu .nav-link:hover {
        background-color: var(--bct-mobile-dropdown-hover-bg);
        color: var(--bct-mobile-dropdown-hover-text);
    }
}

@media screen and (max-width: 480px) {
    body {
        padding-top: 80px;
    }

    .section-1 {
        padding-top: 20px;
    }

    .section-2b {
        padding: 10px;
    }

    .section-2a {
        padding-bottom: 35px;
        padding-left: 0;
    }

    .featured-image {
        display: none;
    }

    .logotext {
        font-size: 1.5em !important;
    }

    .row {
        padding-bottom: 35px;
    }

    .border-right {
        border-right: none;
    }

    .navbar-brand img {
        width: 250px;
        height: auto;
    }

    .card {
        width: 100% !important;
    }

    .aside-content {
        position: inherit;
        padding-left: 0;
    }

    .mobile-none {
        display: none;
    }

    .wp-block-button {
        width: 100%;
    }

    #menu-main-menu > .menu-item {
        padding: 5px;
    }

    .navbar-brand {
        max-width: 200px;
    }
}