/* STKS 2.0 – only pages built with this plugin. Elementor widgets remain editable. */
body.stks-built{--stks-ink:#143646;--stks-blue:#143646;--stks-gold:#d9b27b;--stks-cream:#f7f4ed;--stks-text:#344b54;color:var(--stks-text)}
body.stks-built .stks-hero{background-color:#173a4a;background-image:linear-gradient(110deg,#0d2a3fe8,#24485a80),linear-gradient(145deg,#254b5b,#658c84);background-size:cover;background-position:center;position:relative;isolation:isolate}
body.stks-built .stks-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,29,40,.82) 0%,rgba(12,34,44,.5) 57%,rgba(20,43,52,.24) 100%);z-index:0;pointer-events:none}
body.stks-built .stks-hero>.e-con-inner,body.stks-built .stks-hero>.elementor-element,body.stks-built .stks-hero .stks-hero-inner{position:relative;z-index:1}
body.stks-built .stks-hero-inner{width:min(100%,1140px);margin-inline:auto;align-items:flex-start}
body.stks-built .stks-overline,body.stks-built .stks-overline p,body.stks-built .stks-card-label{font-size:12px;letter-spacing:.19em;font-weight:750;line-height:1.7;color:var(--stks-gold);text-transform:uppercase}
body.stks-built .stks-overline.stks-on-light{color:#977443}
body.stks-built .stks-hero h1,body.stks-built .stks-hero .elementor-heading-title{font-size:clamp(2.7rem,5.8vw,5.9rem);line-height:1.08;max-width:980px;letter-spacing:-.035em;color:#fff;font-weight:650;text-wrap:balance}
body.stks-built .stks-page-hero h1,body.stks-built .stks-page-hero .elementor-heading-title{font-size:clamp(2.6rem,5vw,4.8rem)}
body.stks-built .stks-hero-lede,body.stks-built .stks-hero-lede p{font-size:clamp(1.1rem,1.75vw,1.35rem);line-height:1.7;max-width:680px;color:#f6f6f3}
body.stks-built .stks-hero .elementor-widget-text-editor{color:#fff}
body.stks-built .stks-hero-actions{max-width:650px}
body.stks-built .stks-button .elementor-button{background:var(--stks-gold);color:#183444;border:1px solid var(--stks-gold);border-radius:6px;padding:17px 25px;font-weight:700;transition:transform .2s,background .2s}
body.stks-built .stks-button .elementor-button:hover{background:#edd4ad;transform:translateY(-2px)}
body.stks-built .stks-button-ghost .elementor-button{background:transparent;border-color:rgba(255,255,255,.75);color:#fff}
body.stks-built .stks-button-ghost .elementor-button:hover{background:#fff;color:#153745}
body.stks-built .stks-button-text .elementor-button{padding:12px 0;background:transparent;border:0;color:#0e516a}
body.stks-built .stks-section{padding:95px max(26px,calc((100% - 1140px)/2));box-sizing:border-box}
body.stks-built .stks-intro{text-align:center;align-items:center;background:#fff}
body.stks-built .stks-intro>.elementor-element{max-width:820px}
body.stks-built .stks-intro h2,body.stks-built .stks-section h2{font-size:clamp(2rem,3vw,3rem);line-height:1.2;color:var(--stks-ink);letter-spacing:-.03em}
body.stks-built .stks-section .elementor-widget-text-editor{font-size:1.09rem;line-height:1.8}
body.stks-built .stks-cards-row{background:var(--stks-cream);align-items:stretch}
body.stks-built .stks-feature-card{padding:38px 32px;background:#fff;border-radius:14px;box-shadow:0 14px 45px rgba(20,54,70,.07);gap:13px;transition:transform .25s,box-shadow .25s;min-width:235px}
body.stks-built .stks-feature-card:hover{transform:translateY(-5px);box-shadow:0 19px 48px rgba(20,54,70,.13)}
body.stks-built .stks-feature-card h3{font-size:1.55rem;line-height:1.22;color:var(--stks-ink)}
body.stks-built .stks-story-band{background:linear-gradient(120deg,#102f40,#22495a);color:#edf4f5;align-items:flex-start}
body.stks-built .stks-story-band h2,body.stks-built .stks-bottom-cta h2{color:#fff}
body.stks-built .stks-story-band>.elementor-element{max-width:700px}
body.stks-built .stks-events{text-align:center;align-items:center;background:#fff}
body.stks-built .stks-events>.elementor-element{max-width:760px}
body.stks-built .stks-bottom-cta{text-align:center;align-items:center;background:#153646;color:#fff}
body.stks-built .stks-single-content{background:#fff;padding-top:65px;padding-bottom:95px}
body.stks-built .stks-page-prose{width:min(100%,960px);margin-inline:auto;gap:20px}
body.stks-built .stks-page-prose .elementor-widget-text-editor{line-height:1.85;font-size:1.08rem}
body.stks-built .stks-page-prose h2,body.stks-built .stks-page-prose h3{color:#173746;line-height:1.3}
body.stks-built .stks-content-photo img{border-radius:12px;max-width:100%;height:auto;box-shadow:0 15px 45px rgba(15,41,53,.11)}
/* Header overlay fallback. Native Blocksy transparency via Blocksy Companion is preferred. */
body.stks-built.stks-transparent-header #header,body.stks-built.stks-transparent-header header#header{position:absolute;z-index:100;left:0;right:0;top:0;width:100%;background:transparent;box-shadow:none}
body.stks-built.stks-transparent-header #header [data-row="middle"],body.stks-built.stks-transparent-header #header [data-row="top"],body.stks-built.stks-transparent-header #header .ct-header,body.stks-built.stks-transparent-header #header .ct-header-row{background-color:transparent;background-image:none;box-shadow:none}
body.stks-built.stks-transparent-header #header .ct-menu-link,body.stks-built.stks-transparent-header #header .site-title,body.stks-built.stks-transparent-header #header [class*="header-text"]{color:#fff}
body.stks-built.stks-transparent-header.admin-bar #header{top:32px}
@media(max-width:767px){body.stks-built .stks-hero{min-height:490px!important}body.stks-built .stks-hero h1,body.stks-built .stks-hero .elementor-heading-title{font-size:clamp(2.35rem,8vw,3.45rem)}body.stks-built .stks-section{padding:68px 22px}body.stks-built .stks-feature-card{width:100%!important;max-width:none;min-width:0}body.stks-built .stks-page-hero{min-height:290px!important}body.stks-built .stks-story-band,body.stks-built .stks-bottom-cta{text-align:left}body.stks-built.stks-transparent-header.admin-bar #header{top:46px}}
@media(prefers-reduced-motion:reduce){body.stks-built .stks-feature-card,body.stks-built .stks-button .elementor-button{transition:none}}
body.stks-built .stks-photo-credit{font-size:12px;text-align:center;background:#102f40;color:#d0dadd;padding:8px 16px}
body.stks-built .stks-photo-credit a{color:#f0d7b3;text-decoration:underline}

/* STKS 2.1 global Elementor Pro footer. Every piece of content remains a native widget. */
.stks-site-footer{--stks-footer-bg:#143646;--stks-footer-gold:#d9b27b;--stks-footer-light:#e1ebed;--stks-footer-muted:#b7cbd0;position:relative;isolation:isolate;background:var(--stks-footer-bg);color:var(--stks-footer-light);overflow:hidden}
.stks-site-footer::before{content:"";position:absolute;inset:0 0 auto auto;width:42%;height:490px;background:radial-gradient(ellipse at top right,rgba(108,154,156,.13),transparent 70%);pointer-events:none;z-index:-1}
.stks-site-footer .stks-footer-inner{width:min(100%,1200px);max-width:1200px;margin:0 auto;padding:0 30px;box-sizing:border-box}
.stks-site-footer .stks-footer-cta{padding:76px 0 56px;gap:28px;border-bottom:1px solid rgba(214,232,232,.18)}
.stks-site-footer .stks-footer-cta-copy{gap:10px}
.stks-site-footer .stks-footer-cta .elementor-heading-title{color:#fff;font-size:clamp(2rem,3.5vw,3rem);font-weight:650;line-height:1.16;letter-spacing:-.03em}
.stks-site-footer .stks-footer-cta p{margin:0;font-size:1.04rem;line-height:1.8;color:var(--stks-footer-light)}
.stks-site-footer .stks-footer-cta .stks-footer-kicker,.stks-site-footer .stks-footer-kicker{color:var(--stks-footer-gold);font-size:.75rem;letter-spacing:.15em;font-weight:750;line-height:1.5}
.stks-site-footer .stks-footer-cta-action{align-items:flex-end}
.stks-site-footer .stks-footer-cta-button .elementor-button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 25px;background:var(--stks-footer-gold);color:#153343;border:1px solid var(--stks-footer-gold);border-radius:7px;font-weight:750;box-shadow:0 12px 28px rgba(0,0,0,.11);transition:background .2s,transform .2s}
.stks-site-footer .stks-footer-cta-button .elementor-button:hover,.stks-site-footer .stks-footer-cta-button .elementor-button:focus-visible{background:#f0cfa0;transform:translateY(-2px)}
.stks-site-footer .stks-footer-columns{padding:67px 0 64px;gap:28px}
.stks-site-footer .stks-footer-col{gap:11px;align-items:flex-start}
.stks-site-footer .stks-footer-col .elementor-heading-title{color:#fff;font-weight:650;font-size:1.22rem;line-height:1.35;margin:0}
.stks-site-footer .stks-footer-brand .stks-footer-brand-name .elementor-heading-title{font-size:2.05rem;letter-spacing:-.025em;line-height:1.1}
.stks-site-footer .stks-footer-col p{color:var(--stks-footer-muted);font-size:.98rem;line-height:1.8;margin:0}
.stks-site-footer .stks-footer-col .stks-footer-kicker{color:var(--stks-footer-gold);font-size:.71rem;letter-spacing:.14em}
.stks-site-footer .stks-footer-brand>.elementor-widget{max-width:340px}
.stks-site-footer .stks-footer-site-logo img{width:auto;max-width:165px;max-height:88px;object-fit:contain;object-position:left center}
.stks-site-footer .stks-footer-site-logo{max-width:180px}
.stks-site-footer .stks-footer-nav .elementor-widget-button{margin:0;width:100%;text-align:left}
.stks-site-footer .stks-footer-nav .elementor-button-wrapper{text-align:left}
.stks-site-footer .stks-footer-nav-link .elementor-button{display:inline-block;background:transparent;color:var(--stks-footer-muted);box-shadow:none;border:0;border-radius:0;padding:2px 0;font-size:.98rem;font-weight:450;line-height:1.65;text-align:left;letter-spacing:0;text-transform:none;transition:color .18s,transform .18s}
.stks-site-footer .stks-footer-nav-link .elementor-button:hover,.stks-site-footer .stks-footer-nav-link .elementor-button:focus-visible{background:transparent;color:var(--stks-footer-gold);transform:translateX(4px)}
.stks-site-footer .stks-footer-contact{gap:14px}
.stks-site-footer .stks-footer-contact-label{display:block;color:var(--stks-footer-gold);font-size:.69rem;font-weight:700;letter-spacing:.11em;line-height:1.7;margin:0 0 3px}
.stks-site-footer .stks-footer-contact a,.stks-site-footer .stks-footer-legal a{color:#e7f0f1;text-decoration:none;text-underline-offset:4px;transition:color .18s}
.stks-site-footer .stks-footer-contact a:hover,.stks-site-footer .stks-footer-legal a:hover,.stks-site-footer .stks-footer-contact a:focus-visible,.stks-site-footer .stks-footer-legal a:focus-visible{color:var(--stks-footer-gold);text-decoration:underline}
.stks-site-footer .stks-footer-org{margin-top:7px;font-size:.88rem}
.stks-site-footer .stks-footer-legal{border-top:1px solid rgba(214,232,232,.18);padding:27px 0 31px;align-items:center;gap:15px}
.stks-site-footer .stks-footer-legal p{margin:0;color:var(--stks-footer-muted);font-size:.82rem;line-height:1.8}
.stks-site-footer .stks-footer-legal-right{text-align:right}
.stks-site-footer .stks-footer-separator{color:var(--stks-footer-gold);padding:0 12px}
.stks-site-footer a:focus-visible{outline:2px solid var(--stks-footer-gold);outline-offset:4px;border-radius:2px}
@media(max-width:991px){.stks-site-footer .stks-footer-cta{padding:62px 0 48px}.stks-site-footer .stks-footer-columns{padding:55px 0}.stks-site-footer .stks-footer-brand{width:100%}.stks-site-footer .stks-footer-nav,.stks-site-footer .stks-footer-contact{width:45%}}
@media(max-width:700px){.stks-site-footer .stks-footer-inner{padding:0 23px}.stks-site-footer .stks-footer-cta{padding:57px 0 40px;gap:20px}.stks-site-footer .stks-footer-cta-copy,.stks-site-footer .stks-footer-cta-action,.stks-site-footer .stks-footer-brand,.stks-site-footer .stks-footer-nav,.stks-site-footer .stks-footer-contact,.stks-site-footer .stks-footer-legal-left,.stks-site-footer .stks-footer-legal-right{width:100%;max-width:100%}.stks-site-footer .stks-footer-cta-action{align-items:flex-start}.stks-site-footer .stks-footer-columns{padding:46px 0 41px;gap:42px}.stks-site-footer .stks-footer-col{gap:10px}.stks-site-footer .stks-footer-legal{padding:24px 0 29px;gap:8px}.stks-site-footer .stks-footer-legal-right{text-align:left}.stks-site-footer .stks-footer-separator{padding:0 7px}}
@media(prefers-reduced-motion:reduce){.stks-site-footer .stks-footer-cta-button .elementor-button,.stks-site-footer .stks-footer-nav-link .elementor-button{transition:none}}

/* 2.1.8 – Kursdetaljer: header / Elementor hero / native course layout.
   The hero is rendered via blocksy:header:after OUTSIDE the article grid.
   No positioning hacks or content rewrites; sidebar/contact form remains intact. */
body.stks-course-hero-active .stks-course-fullwidth-hero {width:100%;max-width:100%;position:relative;z-index:1;margin:0;overflow:hidden}
body.stks-course-hero-active .stks-course-fullwidth-hero .stks-page-hero {margin:0!important;width:100%;max-width:100%;}
body.stks-course-hero-active .site-main .entry-header,
body.stks-course-hero-active .site-main .entry-title,
body.stks-course-hero-active .site-main .entry-meta {display:none!important}
body.stks-course-hero-active #header {z-index:1000!important}
body.stks-course-hero-active .stks-course-fullwidth-hero + #main {margin-top:0}
/* Course archive has no top image; use a readable solid header there. */
body.post-type-archive-fw_course #header {background:#143646!important}
body.post-type-archive-fw_course #header [data-row="middle"] {background:#143646!important}
body.post-type-archive-fw_course #header .ct-menu-link{color:#fff!important}

/* 2.1.9 – navigasjon på kursdetaljer; styles scoped to prevent collisions. */
.stks-course-top-nav{margin:0 0 26px;padding:0 0 17px;border-bottom:1px solid #e0e9eb}
.stks-course-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:.88rem;color:#59717b;margin:0 0 14px}
.stks-course-breadcrumbs a{color:#286b80;text-decoration:none}
.stks-course-breadcrumbs a:hover{text-decoration:underline}
.stks-course-back-link{display:inline-flex;align-items:center;gap:7px;color:#15526a;font-size:.96rem;font-weight:650;text-decoration:none;text-underline-offset:4px}
.stks-course-back-link:hover{text-decoration:underline}
.stks-course-bottom-nav{margin:34px 0 0;padding:23px 0 0;border-top:1px solid #dce7eb}
@media(max-width:600px){.stks-course-top-nav{margin-bottom:20px}.stks-course-breadcrumbs{font-size:.81rem;gap:6px}}
