.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-1296 .elementor-element.elementor-element-145400a{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--overlay-opacity:1;border-style:none;--border-style:none;--border-radius:0px 0px 0px 0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:120px;--padding-bottom:80px;--padding-left:56px;--padding-right:56px;}.elementor-1296 .elementor-element.elementor-element-145400a:not(.elementor-motion-effects-element-type-background), .elementor-1296 .elementor-element.elementor-element-145400a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-1296 .elementor-element.elementor-element-145400a::before, .elementor-1296 .elementor-element.elementor-element-145400a > .elementor-background-video-container::before, .elementor-1296 .elementor-element.elementor-element-145400a > .e-con-inner > .elementor-background-video-container::before, .elementor-1296 .elementor-element.elementor-element-145400a > .elementor-background-slideshow::before, .elementor-1296 .elementor-element.elementor-element-145400a > .e-con-inner > .elementor-background-slideshow::before, .elementor-1296 .elementor-element.elementor-element-145400a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1296 .elementor-element.elementor-element-1e47217c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1296 .elementor-element.elementor-element-3aa68ce1{--display:flex;}.elementor-widget-icon-list .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-icon-list .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-icon i{color:var( --e-global-color-9073d51 );transition:color 0.3s;}.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-icon svg{fill:var( --e-global-color-9073d51 );transition:fill 0.3s;}.elementor-1296 .elementor-element.elementor-element-52502842{--e-icon-list-icon-size:14px;--icon-vertical-align:center;--icon-vertical-offset:0px;}.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item > a{font-family:"Plus Jakarta Sans", Sans-serif;font-size:14px;font-weight:600;letter-spacing:0.15em;}.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-text{color:var( --e-global-color-9073d51 );transition:color 0.3s;}.elementor-widget-elementskit-heading .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-elementskit-heading .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-1296 .elementor-element.elementor-element-dea7cd6 .ekit-heading__description{max-width:80%;}.elementor-1296 .elementor-element.elementor-element-dea7cd6 .elementskit-section-title-wraper .elementskit-section-title{color:var( --e-global-color-text );margin:0px 0px 10px 0px;font-family:"Björn", Sans-serif;font-size:100px;font-weight:400;text-transform:uppercase;}.elementor-1296 .elementor-element.elementor-element-dea7cd6 .elementskit-section-title-wraper .elementskit-section-title > span{color:#000000;}.elementor-1296 .elementor-element.elementor-element-dea7cd6 .elementskit-section-title-wraper .elementskit-section-title:hover > span{color:#000000;}.elementor-1296 .elementor-element.elementor-element-dea7cd6 .elementskit-section-title-wraper p{color:var( --e-global-color-9073d51 );font-family:"Plus Jakarta Sans", Sans-serif;font-size:20px;font-weight:400;margin:0px 0px 0px 0px;}.elementor-1296 .elementor-element.elementor-element-b158959{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-selecto_media_carousel .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-selecto_media_carousel .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-1296 .elementor-element.elementor-element-558191d .selecto-carousel .sc-caption{max-width:540px !important;margin-top:30px !important;}.elementor-1296 .elementor-element.elementor-element-558191d .selecto-carousel{--arrow-size:46px;}.elementor-1296 .elementor-element.elementor-element-231de76{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-html .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-html .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-1296 .elementor-element.elementor-element-3aa68ce1{--width:90%;}}@media(max-width:1024px){.elementor-widget-container .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-container .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-icon-list .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-icon-list .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-elementskit-heading .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-elementskit-heading .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}.elementor-1296 .elementor-element.elementor-element-dea7cd6 .elementskit-section-title-wraper .elementskit-section-title{font-size:76px;}.elementor-1296 .elementor-element.elementor-element-dea7cd6 .elementskit-section-title-wraper p{font-size:20px;line-height:30px;}.elementor-widget-selecto_media_carousel .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-selecto_media_carousel .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-html .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-html .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}}@media(max-width:767px){.elementor-widget-container .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-container .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}.elementor-1296 .elementor-element.elementor-element-145400a{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1296 .elementor-element.elementor-element-1e47217c{--content-width:90%;--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-icon-list .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-icon-list .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}.elementor-1296 .elementor-element.elementor-element-52502842{--e-icon-list-icon-size:14px;}.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item > a{font-size:12px;line-height:1.2em;letter-spacing:0.18em;}.elementor-widget-elementskit-heading .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-elementskit-heading .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}.elementor-1296 .elementor-element.elementor-element-dea7cd6 .elementskit-section-title-wraper .elementskit-section-title{font-size:44px;}.elementor-1296 .elementor-element.elementor-element-dea7cd6 .elementskit-section-title-wraper p{font-size:16px;line-height:25px;}.elementor-widget-selecto_media_carousel .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-selecto_media_carousel .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}.elementor-1296 .elementor-element.elementor-element-558191d .selecto-carousel{--arrow-size:38px;}.elementor-widget-html .eael-protected-content-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-html .protected-content-error-msg{font-size:var( --e-global-typography-secondary-font-size );}}/* Start custom CSS for icon-list, class: .elementor-element-52502842 *//* Alkutila pysyy täysin Elementor-asetusten mukaisena */
/* Hoverissa: teksti vain valkoiseksi, nuoli liukuu vasemmalle */

.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-icon {
    transition: transform 0.3s ease, color 0.3s ease, fill 0.3s ease;
}

.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-text,
.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item a {
    transition: color 0.3s ease;
}

/* Nuoli liikkuu hoverissa vasemmalle */
.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item:hover .elementor-icon-list-icon {
    transform: translateX(-6px);
}

/* Teksti valkoiseksi hoverissa */
.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item:hover .elementor-icon-list-text,
.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item:hover a {
    color: #ffffff !important;
}

/* Nuoli valkoiseksi hoverissa */
.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item:hover .elementor-icon-list-icon i,
.elementor-1296 .elementor-element.elementor-element-52502842 .elementor-icon-list-item:hover .elementor-icon-list-icon svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-145400a *//* HERO — 1:1 tyylinen fade kuten HTML-versiossa */
/* Laita tämä suoraan HERO CONTAINERIN custom CSS:ään */

.elementor-1296 .elementor-element.elementor-element-145400a {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background-color: #0A1A25;
    min-height: 100svh;
}

/* Varmistaa, että sisältö jää overlayn päälle */
.elementor-1296 .elementor-element.elementor-element-145400a > .e-con-inner,
.elementor-1296 .elementor-element.elementor-element-145400a > .elementor-container,
.elementor-1296 .elementor-element.elementor-element-145400a > .elementor-widget-wrap,
.elementor-1296 .elementor-element.elementor-element-145400a .elementor-widget {
    position: relative;
    z-index: 4;
}

/* Jos Elementorissa on Background Overlay käytössä, tämä korvaa sen oikealla fadella */
.elementor-1296 .elementor-element.elementor-element-145400a > .elementor-background-overlay {
    opacity: 1 !important;
    z-index: 2;
    background:
        linear-gradient(
            180deg,
            rgba(10, 26, 37, 0.50) 0%,
            rgba(10, 26, 37, 0.35) 38%,
            rgba(10, 26, 37, 0.90) 88%,
            #0A1A25 100%
        ) !important;
}

/* Jos Elementor overlay ei ole käytössä, tämä tekee saman pseudo-elementillä */
.elementor-1296 .elementor-element.elementor-element-145400a::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background:
        linear-gradient(
            180deg,
            rgba(10, 26, 37, 0.50) 0%,
            rgba(10, 26, 37, 0.35) 38%,
            rgba(10, 26, 37, 0.90) 88%,
            #0A1A25 100%
        );
}

/* Kevyt valon/kuvan syvyys, sama idea kuin HTML:n radial overlay */
.elementor-1296 .elementor-element.elementor-element-145400a::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    background:
        radial-gradient(
            80% 60% at 70% 35%,
            rgba(255, 244, 222, 0.10),
            transparent 60%
        );
    mix-blend-mode: screen;
    opacity: 1;
}/* End custom CSS */
/* Start custom CSS *//* FRAYMFUL WORK — DESIGN TOKENS */
:root{
  --bg:#0A1A25; --bg-1:#141414; --bg-2:#1E342C;
  --ink:#FEFFFF; --ink-dim:#DAE3E6; --ink-mute:rgba(218,227,230,0.55);
  --line:rgba(218,227,230,0.10); --line-strong:rgba(218,227,230,0.22);
  --accent:#FFF4DE;
  --display:'Björn',system-ui,sans-serif;
  --body:'Plus Jakarta Sans',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
}
body{ background: var(--bg); color: var(--ink); }

/* HERO */
.fr-hero{ position:relative; min-height:560px; overflow:hidden; isolation:isolate; }
@media (max-width:880px){ .fr-hero{ height:auto; min-height:0; } }
.fr-hero::before{
  content:""; position:absolute; inset:0; z-index:2; pointer-events:none;
  background:linear-gradient(180deg, rgba(10,26,37,0.45) 0%, rgba(10,26,37,0.28) 38%, rgba(10,26,37,0.85) 88%, var(--bg) 100%);
}
.fr-hero::after{
  content:""; position:absolute; inset:0; z-index:3; pointer-events:none; opacity:.6;
  background:radial-gradient(120% 80% at 50% 110%, rgba(10,26,37,0.9), transparent 55%);
}
.fr-hero > .elementor-container{ position:relative; z-index:4; }

.fr-hero-eyebrow .elementor-widget-container{
  font-family:var(--mono) !important; font-size:12px !important;
  letter-spacing:0.26em !important; text-transform:uppercase !important;
  color:var(--ink) !important; display:flex; align-items:center; gap:12px;
}
.fr-hero-eyebrow .elementor-widget-container::before{
  content:""; width:6px; height:6px; border-radius:50%;
  background:var(--accent); box-shadow:0 0 0 3px rgba(255,244,222,0.18);
  flex-shrink:0;
}
.fr-hero-title .elementor-heading-title{
  font-family:var(--display) !important; font-weight:400 !important;
  font-size:clamp(40px,6vw,100px) !important; line-height:0.96 !important;
  text-transform:uppercase !important; letter-spacing:-0.01em !important;
  margin:0 !important; max-width:16ch; color:var(--ink) !important;
}
.fr-hero-title .elementor-heading-title .light{ font-weight:100; color:var(--ink-dim); }
.fr-hero-oneliner .elementor-widget-container{
  font-family:var(--body) !important; font-size:clamp(15px,1.2vw,19px) !important;
  line-height:1.55 !important; font-weight:300 !important;
  color:var(--ink-dim) !important; font-style:italic; max-width:60ch;
}
.fr-hero-meta .elementor-widget-container{
  border-top:1px solid rgba(254,255,255,0.12); padding-top:24px; margin-top:24px;
  font-family:var(--mono) !important; font-size:11px !important;
  letter-spacing:0.22em !important; text-transform:uppercase !important;
  color:var(--ink-mute) !important;
}
.fr-hero-meta strong{ color:var(--ink); font-weight:400; }

/* SUB-HERO */
.fr-subhero{ border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.fr-subhero-title .elementor-heading-title{
  font-family:var(--display) !important; font-weight:400 !important;
  font-size:clamp(28px,3.2vw,40px) !important; line-height:1.05 !important;
  text-transform:uppercase !important; letter-spacing:-0.005em !important;
  margin:0 !important; max-width:14ch; color:var(--ink) !important;
}
.fr-subhero-text .elementor-widget-container{
  font-family:var(--body) !important; font-size:17px !important;
  line-height:1.7 !important; color:var(--ink-dim) !important;
  font-weight:300 !important; max-width:60ch;
}

/* ARCHIVE POSTS — CASES GRID */
.fr-cases .elementor-posts-container{
  display:grid !important; grid-template-columns:repeat(2,1fr) !important;
  gap:32px !important;
}
@media (max-width:880px){
  .fr-cases .elementor-posts-container{ grid-template-columns:1fr !important; gap:24px !important; }
}
.fr-cases article.elementor-post{
  border:1px solid var(--line); border-radius:2px; overflow:hidden;
  background:var(--bg); transition:border-color .55s; margin:0 !important;
}
.fr-cases article.elementor-post:hover{ border-color:var(--line-strong); }
.fr-cases article.elementor-post:first-child{ grid-column:1 / -1; }
.fr-cases .elementor-post__thumbnail__link{ display:block; overflow:hidden; border-bottom:1px solid var(--line); }
.fr-cases .elementor-post__thumbnail{ aspect-ratio:16/10; position:relative; overflow:hidden; }
.fr-cases .elementor-post__thumbnail img{
  width:100% !important; height:100% !important; object-fit:cover !important;
  transition:transform 1.4s cubic-bezier(.2,.7,.15,1); filter:saturate(.92);
}
.fr-cases article.elementor-post:hover .elementor-post__thumbnail img{
  transform:scale(1.04); filter:saturate(1.02);
}
.fr-cases .elementor-post__thumbnail::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(10,26,37,0.05) 0%, rgba(10,26,37,0.40) 100%);
}
.fr-cases .elementor-post__text{ padding:32px 28px !important; }
.fr-cases article.elementor-post:first-child .elementor-post__text{ padding:48px !important; }
.fr-cases .elementor-post__meta-data{
  font-family:var(--mono) !important; font-size:10.5px !important;
  letter-spacing:0.22em !important; color:var(--ink-mute) !important;
  text-transform:uppercase !important; margin-bottom:14px !important;
}
.fr-cases .elementor-post__title a{
  font-family:var(--display) !important; font-weight:400 !important;
  font-size:clamp(24px,2.4vw,32px) !important; line-height:1.02 !important;
  text-transform:uppercase !important; letter-spacing:-0.005em !important;
  color:var(--ink) !important;
}
.fr-cases article.elementor-post:first-child .elementor-post__title a{
  font-size:clamp(34px,4vw,54px) !important;
}
.fr-cases .elementor-post__excerpt p{
  font-family:var(--body) !important; font-size:15px !important;
  line-height:1.55 !important; color:var(--ink-dim) !important;
  max-width:48ch;
}
.fr-cases .elementor-post__read-more{
  font-family:var(--mono) !important; font-size:10.5px !important;
  letter-spacing:0.22em !important; text-transform:uppercase !important;
  color:var(--accent) !important; padding-top:18px !important;
  border-top:1px solid var(--line); display:inline-block; margin-top:8px;
}
.fr-cases .elementor-post__read-more::after{ content:" →"; }

/* INDUSTRIES */
.fr-industries{
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,var(--bg) 0%, rgba(30,52,44,0.12) 50%, var(--bg) 100%);
}
.fr-industries-title .elementor-heading-title{
  font-family:var(--display) !important; font-weight:400 !important;
  font-size:clamp(34px,4vw,52px) !important; line-height:0.98 !important;
  text-transform:uppercase !important; letter-spacing:-0.005em !important;
  margin:0 !important; color:var(--ink) !important;
}
.fr-industries-eyebrow .elementor-widget-container{
  font-family:var(--mono) !important; font-size:11px !important;
  letter-spacing:0.28em !important; text-transform:uppercase !important;
  color:var(--ink-mute) !important; display:flex; align-items:center; gap:12px;
}
.fr-industries-eyebrow .elementor-widget-container::before{
  content:""; width:6px; height:6px; border-radius:50%;
  background:var(--accent); box-shadow:0 0 0 3px rgba(255,244,222,0.18);
  flex-shrink:0;
}
.fr-industries-intro .elementor-widget-container{
  font-family:var(--body) !important; font-size:15.5px !important;
  line-height:1.7 !important; color:var(--ink-dim) !important;
  max-width:42ch; font-weight:300 !important;
}
.fr-industries-grid > .elementor-container{
  background:var(--line); border:1px solid var(--line); gap:1px;
}
.fr-ind-cell{ background:var(--bg); min-height:130px; padding:24px 22px; }
.fr-ind-cell .fr-ind-role .elementor-heading-title{
  font-family:var(--display) !important; font-weight:100 !important;
  font-size:18px !important; text-transform:uppercase !important;
  letter-spacing:0.02em !important; color:var(--ink) !important;
  line-height:1.1 !important; margin:0 0 8px !important;
}
.fr-ind-cell .fr-ind-tag .elementor-widget-container{
  font-family:var(--mono) !important; font-size:11px !important;
  letter-spacing:0.22em !important; color:var(--accent) !important;
  text-transform:uppercase !important;
}

/* CTA */
.fr-cta{ position:relative; overflow:hidden; text-align:center; }
.fr-cta::before{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:radial-gradient(80% 80% at 50% 100%, rgba(30,52,44,0.30), transparent 60%);
}
.fr-cta > .elementor-container{ position:relative; z-index:1; }
.fr-cta-eyebrow .elementor-widget-container{
  font-family:var(--mono) !important; font-size:11px !important;
  letter-spacing:0.28em !important; color:var(--accent) !important;
  text-transform:uppercase !important; text-align:center;
}
.fr-cta-title .elementor-heading-title{
  font-family:var(--display) !important; font-weight:400 !important;
  font-size:clamp(40px,6vw,88px) !important; line-height:0.96 !important;
  text-transform:uppercase !important; letter-spacing:-0.01em !important;
  margin:0 auto !important; max-width:18ch; color:var(--ink) !important;
  text-align:center;
}
.fr-cta-sub .elementor-widget-container{
  font-family:var(--body) !important; font-size:17px !important;
  line-height:1.6 !important; color:var(--ink-dim) !important;
  font-weight:300 !important; max-width:50ch; margin:0 auto; text-align:center;
}
.fr-cta-primary .elementor-button,
.fr-cta-ghost .elementor-button{
  font-family:var(--body) !important; font-weight:600 !important;
  font-size:12px !important; letter-spacing:0.22em !important;
  text-transform:uppercase !important; padding:18px 34px !important;
  border-radius:999px !important; color:#fff !important;
  transition:all .55s cubic-bezier(.2,.7,.15,1) !important;
}
.fr-cta-primary .elementor-button{
  background:rgba(10,26,37,0.55) !important;
  border:1px solid rgba(255,255,255,0.9) !important;
}
.fr-cta-primary .elementor-button:hover{
  background:var(--accent) !important; border-color:var(--accent) !important;
  color:var(--bg-1) !important; transform:translateY(-1px);
  box-shadow:0 14px 36px -12px rgba(255,244,222,0.55) !important;
}
.fr-cta-ghost .elementor-button{
  background:rgba(10,26,37,0.35) !important;
  border:1px solid rgba(255,255,255,0.42) !important;
}
.fr-cta-ghost .elementor-button:hover{
  border-color:rgba(255,255,255,0.95) !important;
  background:rgba(255,255,255,0.06) !important;
}

/* FONT LOADING */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap');
@font-face{ font-family:'Björn'; font-weight:400; font-display:swap;
  src:url('https://fraymful.com/wp-content/uploads/2026/03/bjorn_regular-webfont.woff2') format('woff2'); }
@font-face{ font-family:'Björn'; font-weight:100; font-display:swap;
  src:url('https://fraymful.com/wp-content/uploads/2026/03/bjorn_light-webfont.woff2') format('woff2'); }
@font-face{ font-family:'Björn'; font-weight:300; font-display:swap;
  src:url('https://fraymful.com/wp-content/uploads/2026/03/bjorn_halftone-webfont.woff2') format('woff2'); }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Björn';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://fraymful.com/wp-content/uploads/2026/03/bjorn_regular-webfont.woff2') format('woff2'),
		url('https://fraymful.com/wp-content/uploads/2026/03/bjorn_regular-webfont.woff') format('woff');
}
@font-face {
	font-family: 'Björn';
	font-style: normal;
	font-weight: 100;
	font-display: auto;
	src: url('https://fraymful.com/wp-content/uploads/2026/03/bjorn_light-webfont.woff2') format('woff2'),
		url('https://fraymful.com/wp-content/uploads/2026/03/bjorn_light-webfont.woff') format('woff');
}
@font-face {
	font-family: 'Björn';
	font-style: normal;
	font-weight: 300;
	font-display: auto;
	src: url('https://fraymful.com/wp-content/uploads/2026/03/bjorn_halftone-webfont.woff2') format('woff2'),
		url('https://fraymful.com/wp-content/uploads/2026/03/bjorn_halftone-webfont.woff') format('woff');
}
/* End Custom Fonts CSS */