/* Elementor Pro migration: design bridge. All text, images, menus and links are native Elementor widgets. */
:where(body .elementor .ft-el-root, body .elementor .ft-el-root .e-con, body .elementor .ft-el-header .e-con, body .elementor .ft-el-footer .e-con) {--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;}
/* Full-bleed outer containers: Elementor default 10px padding must not inset section backgrounds. Per-element editor padding stays higher priority. */
.elementor .ft-el-root,
.elementor .ft-el-hero,
.elementor .ft-el-hero-media,
.elementor .ft-el-page-hero,
.elementor .ft-el-page-hero-image {
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
}

.elementor .ft-el-root .elementor-widget, .elementor .ft-el-header .elementor-widget, .elementor .ft-el-footer .elementor-widget {margin:0;min-width:0;}
.elementor .ft-el-root .elementor-widget-container{margin:0}
.elementor .ft-el-root .elementor-heading-title, .elementor .ft-el-footer .elementor-heading-title {font-family:"DM Serif Display",Georgia,serif;font-weight:400;letter-spacing:-.025em;line-height:1.16}
.elementor .ft-el-root .elementor-widget-text-editor, .elementor .ft-el-footer .elementor-widget-text-editor {font-family:"DM Sans",sans-serif;line-height:1.65}
.elementor .ft-el-root .elementor-widget-text-editor p, .elementor .ft-el-footer .elementor-widget-text-editor p {margin:0 0 1em}
.elementor .ft-el-root .elementor-widget-text-editor p:last-child, .elementor .ft-el-footer .elementor-widget-text-editor p:last-child {margin-bottom:0}
.elementor .ft-el-root .elementor-widget-text-editor a{color:#286f80;text-decoration:underline;text-underline-offset:3px}
.elementor .ft-el-root .elementor-button, .elementor .ft-el-header .elementor-button, .elementor .ft-el-footer .elementor-button{font-family:"DM Sans",sans-serif;font-weight:700;font-size:14px;line-height:1.25;padding:15px 23px;border-radius:5px;transition:background .2s,transform .2s}
.elementor .ft-el-root .elementor-button:hover, .elementor .ft-el-header .elementor-button:hover{transform:translateY(-2px)}
.elementor .ft-el-outline .elementor-button{border:1px solid #286f80}
.elementor .ft-el-kicker .elementor-heading-title{font-family:"DM Sans",sans-serif!important;font-size:12px!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.17em!important;line-height:1.4}
:where(.elementor .ft-el-kicker .elementor-heading-title){color:#287888}
.elementor .ft-el-section-title .elementor-heading-title{font-size:clamp(2.3rem,4vw,3.5rem)}
.elementor .ft-el-body-title .elementor-heading-title{font-size:2.1rem}
.elementor .ft-el-body-subtitle .elementor-heading-title{font-size:1.58rem}
.elementor .ft-el-muted .elementor-widget-container{font-size:15px;color:#63766e}
.elementor .ft-el-header{background:rgba(255,254,250,.97);border-bottom:1px solid #e5ece7;backdrop-filter:blur(15px);position:sticky;top:0;z-index:110;min-height:91px}
.elementor .ft-el-header-inner{width:min(1160px,calc(100% - 40px));margin-inline:auto;min-height:91px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.elementor .ft-el-logo{flex:0 0 auto;width:170px}
.elementor .ft-el-logo img{width:170px;height:74px;object-fit:contain}
.elementor .ft-el-menu{flex:1 1 auto;min-width:0}
.elementor .ft-el-menu .elementor-nav-menu--main .elementor-item{font-family:"DM Sans",sans-serif;font-weight:700;font-size:14px;color:#233632;padding:12px 12px}
.elementor .ft-el-menu .elementor-nav-menu--main .elementor-item:hover{color:#328a9b}
.elementor .ft-el-menu .elementor-nav-menu--dropdown{background:#fffefa;box-shadow:0 20px 25px #163c451f}
.elementor .ft-el-header-phone{flex:0 0 auto}
.elementor .ft-el-header-phone .elementor-button{white-space:nowrap}
.elementor .ft-el-hero{display:flex;flex-direction:row;min-height:630px}
.elementor .ft-el-hero-copy{flex:0 0 53%;width:53%;min-width:0;padding:88px 45px 82px max(20px,calc((100vw - 1160px)/2));display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:23px}
.elementor .ft-el-hero-title .elementor-heading-title{font-size:clamp(2.8rem,6.6vw,5.8rem);max-width:690px;line-height:1.07}
.elementor .ft-el-hero-title em, .elementor .ft-el-section-title em{color:#9ad5cb;font-style:italic}
.elementor .ft-el-hero-text .elementor-widget-container{font-family:"DM Sans",sans-serif;font-size:clamp(17px,2vw,20px);max-width:530px;line-height:1.65}
.elementor .ft-el-hero-buttons{display:flex;flex-flow:row wrap;gap:12px;align-items:center}
.elementor .ft-el-hero-media{flex:1 1 47%;width:47%;min-height:630px;position:relative;overflow:hidden}
.elementor .ft-el-hero-photo{position:absolute!important;inset:0;height:100%;width:100%;margin:0}
.elementor .ft-el-hero-photo .elementor-widget-container{height:100%}
.elementor .ft-el-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center center}
.elementor .ft-el-trust{max-width:1160px;width:calc(100% - 40px);margin:auto;display:flex;flex-direction:row;gap:22px;padding:28px 0!important;border-bottom:1px solid #e3ece7}
.elementor .ft-el-trust-item{flex:1;flex-direction:row!important;gap:12px;align-items:center}
.elementor .ft-el-trust-num .elementor-heading-title{font-family:Georgia,serif;font-size:22px;font-weight:400;color:#327c86}
.elementor .ft-el-trust-label .elementor-widget-container{font-size:14px;font-weight:600;color:#4b6660}
.elementor .ft-el-section{padding:97px 0!important}
.elementor .ft-el-section-inner{width:min(1160px,calc(100% - 40px));margin:auto;display:flex;flex-direction:column;gap:27px}
.elementor .ft-el-section-head{display:flex;flex-direction:row;gap:30px;align-items:flex-end;justify-content:space-between}
.elementor .ft-el-section-head-left{display:flex;flex-direction:column;gap:19px;flex:1}
.elementor .ft-el-section-head-right{flex:0 1 400px;color:#627570}
.elementor .ft-el-section-head-right .elementor-widget-container{font-size:16px;color:#627570}
.elementor .ft-el-home .ft-el-section-title em{color:#338a92}
.elementor .ft-el-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.elementor .ft-el-card{display:flex;flex-direction:column;align-items:stretch;gap:14px;background:#fff;border:1px solid #e6ebe5;padding:32px 28px!important;min-height:270px;transition:transform .2s,box-shadow .2s}
.elementor .ft-el-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #20473b12}
.elementor .ft-el-card-num .elementor-heading-title{font-family:Georgia,serif;font-size:16px;color:#83aaa8}
.elementor .ft-el-card-title .elementor-heading-title{font-size:1.68rem}
.elementor .ft-el-card-desc{flex:1}
.elementor .ft-el-card-desc .elementor-widget-container{font-size:14px;color:#63766e}
.elementor .ft-el-card-link .elementor-button{padding:6px 0!important;text-align:left}
.elementor .ft-el-card-link .elementor-button:hover{transform:none}
.elementor .ft-el-split{display:flex;flex-direction:row;align-items:center;gap:80px}
.elementor .ft-el-split-column{flex:1 1 50%;width:50%;display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.elementor .ft-el-split-photo img{width:100%;height:480px;object-fit:cover}
.elementor .ft-el-split-column .ft-el-section-title .elementor-heading-title{font-size:clamp(2.3rem,4vw,3.5rem)}
.elementor .ft-el-split-column .ft-el-section-title em{color:#338a92}
.elementor .ft-el-split-column .elementor-widget-text-editor{color:#51645f}
.elementor .ft-el-klarna-note{display:flex;flex-direction:row;gap:18px;align-items:center;padding:18px 19px!important;background:#fff;border:1px solid #dbe6df;border-radius:6px;width:100%}
.elementor .ft-el-klarna-label .elementor-heading-title{background:#ffb3c7;border-radius:6px;color:#181818;padding:7px 13px;font-family:"DM Sans",sans-serif;font-weight:800;font-size:21px;letter-spacing:-.07em}
.elementor .ft-el-klarna-text .elementor-widget-container{font-size:13px;color:#556c66}
.elementor .ft-el-klarna-text strong{font-size:14px;color:#233632}
.elementor .ft-el-callout-inner{width:min(1160px,calc(100% - 40px));margin:auto}
.elementor .ft-el-page-hero{background:#eff5f0;padding:75px 0 67px!important}
.elementor .ft-el-page-hero-inner{width:min(1160px,calc(100% - 40px));margin:auto;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:62px}
.elementor .ft-el-page-hero-copy{flex:1 1 60%;min-width:0;display:flex;flex-direction:column;gap:20px}
.elementor .ft-el-page-title .elementor-heading-title{font-size:clamp(2.8rem,6vw,4.7rem);line-height:1.08}
.elementor .ft-el-page-excerpt .elementor-widget-container{font-size:18px;color:#627570}
.elementor .ft-el-page-hero-image{flex:0 1 41%;width:41%}
.elementor .ft-el-page-hero-image img{width:100%;height:315px;object-fit:cover}
.elementor .ft-el-page-body{padding:70px 0 100px!important}
.elementor .ft-el-page-body-inner{width:min(1160px,calc(100% - 40px));margin:auto;display:flex;flex-direction:column;gap:37px}
.elementor .ft-el-prose{width:100%;max-width:735px;display:flex;flex-direction:column;gap:15px;align-items:stretch}
.elementor .ft-el-prose .ft-el-body-title .elementor-heading-title{font-size:2.2rem;margin-top:27px}
.elementor .ft-el-prose .ft-el-body-subtitle .elementor-heading-title{font-size:1.6rem;margin-top:9px}
.elementor .ft-el-prose .elementor-widget-text-editor{font-size:16px;line-height:1.75}
.elementor .ft-el-prose .elementor-widget-text-editor table{border-collapse:collapse;width:100%;font-size:15px}
.elementor .ft-el-prose .elementor-widget-text-editor table td{border-bottom:1px solid #e4e9e6;padding:14px 8px}
.elementor .ft-el-prose .elementor-widget-text-editor table td:last-child{text-align:right;font-weight:700}
.elementor .ft-el-prose .elementor-widget-text-editor table tr:nth-child(odd){background:#f6f9f5}
.elementor .ft-el-prose .elementor-widget-text-editor .ft-note{border-left:4px solid #358597;background:#f1f7f4;padding:18px 21px}
.elementor .ft-el-prose .elementor-widget-text-editor .ft-hours{display:flex;justify-content:space-between;border-bottom:1px solid #dce6df;padding:10px 0;gap:20px}
.elementor .ft-el-prose .elementor-widget-text-editor ul{padding-left:22px}
.elementor .ft-el-prose .elementor-widget-text-editor li{margin-bottom:6px}
.elementor .ft-el-staff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.elementor .ft-el-staff-person{background:#fff;display:flex;flex-direction:column;gap:12px}
.elementor .ft-el-staff-person .elementor-widget-image img{width:100%;aspect-ratio:1.15;object-fit:cover}
.elementor .ft-el-staff-person .elementor-heading-title{font-size:1.5rem}
.elementor .ft-el-staff-person .elementor-widget-text-editor{font-size:14px}
.elementor .ft-el-service-links{display:flex;flex-flow:row wrap;gap:10px;margin-top:10px}
.elementor .ft-el-service-links .elementor-button{background:transparent;color:#286f80;border:1px solid #cadbd5;padding:9px 13px;font-size:13px}
.elementor .ft-el-service-links .elementor-button:hover{background:#e5f4ed;color:#286f80}
.elementor .ft-el-map-section{width:100%;max-width:870px;display:flex;flex-direction:column;gap:15px;margin-top:24px}
.elementor .ft-el-map-section .elementor-heading-title{font-size:2rem}
.elementor .ft-el-map-section iframe{width:100%;max-width:100%;min-height:350px}
.elementor .ft-el-footer{background:#173e47;color:#d5e4e2;padding:65px 0 23px!important}
.elementor .ft-el-footer-inner{width:min(1160px,calc(100% - 40px));margin:auto;display:flex;flex-direction:row;align-items:flex-start;gap:55px}
.elementor .ft-el-footer-col{display:flex;flex-direction:column;gap:15px;flex:1}
.elementor .ft-el-footer-about{flex:1.3}
.elementor .ft-el-footer .elementor-heading-title{font-size:1.35rem;color:#fff}
.elementor .ft-el-footer .elementor-widget-text-editor{font-size:14px;color:#d2e2df}
.elementor .ft-el-footer .elementor-widget-text-editor a{color:#e6f2ed}
.elementor .ft-el-footer-phone .elementor-button{}
.elementor .ft-el-footer-phone .elementor-button:hover{}
.elementor .ft-el-footer-link .elementor-button{padding:0;font-size:14px;color:#d5e4e2}
.elementor .ft-el-footer-link .elementor-button:hover{transform:none}
.elementor .ft-el-footer .ft-el-socials .elementor-icon-list-items{display:flex;flex-flow:row wrap;gap:17px}
.elementor .ft-el-footer .ft-el-socials .elementor-icon-list-text{font-family:"DM Sans",sans-serif;font-size:13px;color:#e6f2ed}
.elementor .ft-el-footer .ft-el-socials .elementor-icon-list-icon i{font-size:17px;color:#e6f2ed}
.elementor .ft-el-footer-bottom{width:min(1160px,calc(100% - 40px));margin:52px auto 0;border-top:1px solid #52727a;padding-top:22px!important;display:flex;flex-direction:row;justify-content:space-between;gap:18px}
.elementor .ft-el-footer-bottom .elementor-widget-text-editor{font-size:12px;color:#d2e2df}
@media(max-width:850px){
.elementor .ft-el-header,.elementor .ft-el-header-inner{min-height:74px}
.elementor .ft-el-logo{width:125px}
.elementor .ft-el-logo img{width:125px;height:auto;max-height:59px}
.elementor .ft-el-header-inner{gap:12px}
.elementor .ft-el-menu{flex:0 1 auto}
.elementor .ft-el-menu .elementor-menu-toggle{margin-left:auto}
.elementor .ft-el-menu .elementor-nav-menu--dropdown{position:absolute;left:0;right:0;top:100%}
.elementor .ft-el-header-phone .elementor-button{padding:12px 15px;font-size:12px}
.elementor .ft-el-hero{flex-direction:column}
.elementor .ft-el-hero-copy{width:100%;flex:initial;padding:55px 20px!important}
.elementor .ft-el-hero-media{width:100%;flex:initial;min-height:320px}
.elementor .ft-el-hero-photo{position:relative!important;min-height:320px}
.elementor .ft-el-hero-photo img{height:320px}
.elementor .ft-el-section{padding:65px 0!important}
.elementor .ft-el-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.elementor .ft-el-section-head{flex-direction:column;align-items:stretch}
.elementor .ft-el-section-head-right{flex-basis:auto}
.elementor .ft-el-split{flex-direction:column;gap:38px;align-items:stretch}
.elementor .ft-el-split-column{width:100%;flex:1}
.elementor .ft-el-split-photo img{height:375px}
.elementor .ft-el-page-hero{padding:55px 0!important}
.elementor .ft-el-page-hero-inner{flex-direction:column;align-items:stretch;gap:30px}
.elementor .ft-el-page-hero-image{width:100%}
.elementor .ft-el-page-hero-image img{height:300px}
.elementor .ft-el-footer-inner{gap:30px;flex-wrap:wrap}
.elementor .ft-el-footer-col{flex:1 1 43%}
}
@media(max-width:590px){
.elementor .ft-el-header-inner{width:calc(100% - 36px)}
.elementor .ft-el-header-phone{display:none}
.elementor .ft-el-hero-copy{padding:50px 18px!important;gap:18px}
.elementor .ft-el-hero-title .elementor-heading-title{font-size:clamp(2.6rem,10vw,4rem)}
.elementor .ft-el-hero-media,.elementor .ft-el-hero-photo{min-height:295px}
.elementor .ft-el-hero-photo img{height:295px}
.elementor .ft-el-trust{flex-direction:column;gap:14px;width:calc(100% - 36px)}
.elementor .ft-el-section{padding:60px 0!important}
.elementor .ft-el-cards{grid-template-columns:1fr}
.elementor .ft-el-card{min-height:230px;padding:27px!important}
.elementor .ft-el-section-inner,.elementor .ft-el-callout-inner,.elementor .ft-el-page-hero-inner,.elementor .ft-el-page-body-inner{width:calc(100% - 36px)}
.elementor .ft-el-split-photo img{height:290px}
.elementor .ft-el-klarna-note{gap:12px}
.elementor .ft-el-page-hero-image img{height:245px}
.elementor .ft-el-page-body{padding:50px 0 75px!important}
.elementor .ft-el-prose .ft-el-body-title .elementor-heading-title{font-size:1.87rem}
.elementor .ft-el-staff-grid{grid-template-columns:1fr}
.elementor .ft-el-footer{padding:50px 0 23px!important}
.elementor .ft-el-footer-inner,.elementor .ft-el-footer-bottom{width:calc(100% - 36px);flex-direction:column;gap:28px}
}
