/* Sydhavs Puds – 1:1 efter Lovable-designet (Tailwind-værdier omregnet) */
:root{
  --sp-bg:#F9FCFE;--sp-fg:#06203B;--sp-card:#fff;--sp-primary:#05335F;--sp-pfg:#F9FCFE;--sp-muted:#EDF5F9;--sp-mfg:#4D6074;
  --sp-sea:#0090A9;--sp-seasoft:#D1F2F8;--sp-cta:#FFC921;--sp-ctafg:#021B35;--sp-ink:#021B35;--sp-inkfg:#EFF7FB;--sp-border:#D4E0E6;--sp-input:#CBDAE2;
  --sp-shadow-card:0 1px 2px rgba(6,32,59,.05),0 12px 32px -16px rgba(6,32,59,.18);
  --sp-shadow-cta:0 10px 24px -10px rgba(228,158,0,.7);
  --sp-head:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;--sp-body:"Figtree",ui-sans-serif,system-ui,sans-serif;
}
html{scroll-behavior:smooth}
body{background:var(--sp-bg);color:var(--sp-fg);font-family:var(--sp-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
body a{color:inherit;text-decoration:none}
body a:hover,body a:active,body a:focus{color:inherit}
#site-header.site-header,#site-footer.site-footer{display:none!important}
.elementor-widget-heading .elementor-heading-title{margin:0}
.elementor-widget-heading :is(h1,h2,h3).elementor-heading-title{text-wrap:balance}
.elementor-widget-text-editor p{margin:0}
.elementor-widget-text-editor p+p{margin-top:16px}
.sp-steps p+p{margin-top:16px}
.sp-strong-fg strong{color:var(--sp-fg);font-weight:700}
.sp-on-ink{color:var(--sp-inkfg)}
.sp-on-primary{color:var(--sp-pfg)}
.sp-a{font-weight:600;color:var(--sp-primary)!important;text-decoration:underline!important}
.sp-center,.sp-center .elementor-heading-title,.sp-center .elementor-widget-container{text-align:center}
.sp-mw-sm{max-width:24rem!important}.sp-mw-xl{max-width:36rem!important}.sp-mw-2xl{max-width:42rem!important}.sp-mw-3xl{max-width:48rem!important}.sp-mw-704{max-width:704px!important}
.e-con.sp-mx-auto,.elementor-widget.sp-mx-auto{margin-left:auto!important;margin-right:auto!important;width:100%}
.sp-mt-24{margin-top:24px!important}
.e-con.sp-w-full{flex-basis:100%;width:100%}

/* Grids (Tailwind md = 768px, lg = 1024px) */
.e-con.sp-grid{--display:grid;display:grid!important;grid-template-columns:minmax(0,1fr);align-items:stretch}
.e-con.sp-grid>.e-con,.e-con.sp-grid>.elementor-widget{width:auto!important;max-width:100%;margin-top:0}
.e-con.sp-gap-8{gap:8px!important}.e-con.sp-gap-16{gap:16px!important}.e-con.sp-gap-20{gap:20px!important}.e-con.sp-gap-32{gap:32px!important}
.e-con.sp-gap-40{gap:40px!important}.e-con.sp-gap-48{gap:48px!important}
.e-con.sp-g2-always{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:768px){
  .e-con.sp-g2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .e-con.sp-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .e-con.sp-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .e-con.sp-hero-grid{grid-template-columns:1.1fr 1fr}
  .e-con.sp-erhverv-grid{grid-template-columns:1fr 1.2fr}
  .e-con.sp-autopilot{grid-template-columns:auto 1fr auto}
  .e-con.sp-cta-grid{grid-template-columns:1fr auto}
  .e-con.sp-footgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .e-con.sp-items-center{align-items:center}
}
@media (min-width:1024px){
  .e-con.sp-footgrid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .e-con.sp-footgrid>.sp-foot-brand{grid-column:span 2}
}
.e-con.sp-row{align-items:center}

/* Kort */
.e-con.sp-card{box-shadow:var(--sp-shadow-card)}
.e-con.sp-card-hover{transition:border-color .15s}
.e-con.sp-card-hover:hover{border-color:var(--sp-sea)!important}
.e-con.sp-panel{border:1px solid var(--sp-border);background:#fff;border-radius:26px;padding:48px}
@media (max-width:767px){.e-con.sp-panel{padding:32px}}

/* Billeder */
.elementor-widget.sp-img img{display:block;width:100%;height:auto;max-width:100%;border-radius:26px;object-fit:cover}
.elementor-widget.sp-ar-43 img{aspect-ratio:4/3}
.elementor-widget.sp-ar-45 img{aspect-ratio:4/5}
.elementor-widget.sp-ar-auto img{border-radius:0;aspect-ratio:auto}

/* Hero */
.e-con.sp-hero-media{position:relative}
.e-con.sp-hero-card{position:absolute!important;bottom:-20px;left:20px;right:20px;width:auto!important;box-shadow:var(--sp-shadow-card);z-index:2}
@media (min-width:768px){.e-con.sp-hero-card{left:auto;width:288px!important}}
.sp-bc ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0;padding:0;list-style:none;font-size:14px;line-height:20px;opacity:.8}
.sp-bc li{display:flex;align-items:center;gap:4px}
.sp-bc svg{width:14px;height:14px}
.sp-bc a:hover{text-decoration:underline}

/* Knapper */
.elementor-widget.sp-btn .elementor-button{vertical-align:top;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:18px;font-family:var(--sp-body);line-height:1;white-space:nowrap;box-shadow:none;text-decoration:none;transition:all .15s cubic-bezier(.4,0,.2,1);fill:none}
.elementor-widget.sp-btn .elementor-button-content-wrapper{display:inline-flex;align-items:center;gap:8px;flex-direction:row}
.elementor-widget.sp-icon-after .elementor-button-content-wrapper{flex-direction:row-reverse!important}
.elementor-widget.sp-btn .elementor-button-icon{display:inline-flex;margin:0!important}
.elementor-widget.sp-btn .elementor-button-icon svg{width:16px;height:16px;fill:none}
.elementor-widget.sp-btn--cta .elementor-button{background:var(--sp-cta);color:var(--sp-ctafg);font-weight:700;box-shadow:var(--sp-shadow-cta);height:56px;padding:0 28px;font-size:16px}
.elementor-widget.sp-btn--cta .elementor-button:hover{filter:brightness(1.05);transform:translateY(-1px);color:var(--sp-ctafg)}
.elementor-widget.sp-btn--lg .elementor-button{height:64px;padding:0 36px;font-size:18px}
.elementor-widget.sp-btn--sm .elementor-button{height:48px;padding:0 32px;font-size:14px;letter-spacing:.025em}
.elementor-widget.sp-btn--primary .elementor-button{background:var(--sp-primary);color:var(--sp-pfg);font-weight:600;height:56px;padding:0 28px;font-size:16px}
.elementor-widget.sp-btn--primary .elementor-button:hover{background:rgba(5,51,95,.9);color:var(--sp-pfg)}
.elementor-widget.sp-btn--outline .elementor-button{background:transparent;border:1px solid rgba(239,247,251,.3);color:var(--sp-inkfg);font-weight:600;height:56px;padding:0 28px;font-size:16px}
.elementor-widget.sp-btn--outline .elementor-button:hover{background:rgba(239,247,251,.1);color:var(--sp-inkfg)}
.elementor-widget.sp-btn--textlink .elementor-button,.elementor-widget.sp-btn--phone .elementor-button{background:none;padding:0;height:auto;border-radius:0;font-weight:600;font-size:16px;line-height:1.5;color:var(--sp-primary)}
.elementor-widget.sp-btn--textlink .elementor-button:hover{text-decoration:underline;text-underline-offset:4px;color:var(--sp-primary)}
.sp-on-ink .elementor-widget.sp-btn--textlink .elementor-button,.sp-on-ink .elementor-widget.sp-btn--textlink .elementor-button:hover{color:var(--sp-inkfg)}
.elementor-widget.sp-btn--phone .elementor-button,.elementor-widget.sp-btn--phone .elementor-button:hover{color:inherit}
.elementor-widget.sp-btn--phone-lg .elementor-button,.elementor-widget.sp-btn--phone-lg .elementor-button:hover,.elementor-widget.sp-phone-primary .elementor-button,.elementor-widget.sp-phone-primary .elementor-button:hover{color:var(--sp-primary)}
.elementor-widget.sp-btn--phone-lg .elementor-button{font-size:18px;line-height:1.5556}
.elementor-widget.sp-btn--icon .elementor-button{width:44px;height:44px;padding:0;border:1px solid var(--sp-border);border-radius:18px;background:transparent;color:var(--sp-fg)}
.elementor-widget.sp-btn--icon .elementor-button-icon svg{width:20px;height:20px}
.elementor-widget.sp-btn--icon .elementor-button-text{display:none}

/* Eyebrow, badges, piller, ikoner */
.sp-eyebrow .elementor-heading-title{font-family:var(--sp-body)}
.sp-badge .elementor-heading-title{display:grid;place-items:center;width:48px;height:48px;border-radius:22px;background:var(--sp-cta);color:var(--sp-ctafg)}
.sp-pill .elementor-heading-title{display:block;border:1px solid var(--sp-border);background:#fff;border-radius:9999px;padding:8px 16px}
.elementor-widget.sp-ico .elementor-icon-wrapper{text-align:left!important;line-height:0}
.elementor-widget.sp-ico .elementor-icon{color:var(--sp-sea);font-size:28px;line-height:0}
.elementor-widget.sp-ico .elementor-icon svg{width:28px;height:28px;fill:none}
.elementor-widget.sp-ico--56 .elementor-icon svg{width:56px;height:56px}

/* Lister */
.sp-checklist .elementor-icon-list-items,.sp-features .elementor-icon-list-items,.sp-footlinks .elementor-icon-list-items{display:grid;gap:12px;margin:0;padding:0}
.sp-checklist .elementor-icon-list-item,.sp-features .elementor-icon-list-item,.sp-footlinks .elementor-icon-list-item,.sp-linklist .elementor-icon-list-item{padding:0!important;margin:0!important}
.sp-checklist .elementor-icon-list-item{display:flex;align-items:flex-start;gap:12px}
.sp-checklist .elementor-icon-list-text{padding:0!important;font-size:16px;line-height:1.5;color:var(--sp-fg)}
.sp-checklist--lg .elementor-icon-list-text{font-size:18px;line-height:1.5556}
.sp-checklist .elementor-icon-list-icon{flex-shrink:0;width:24px;margin-top:2px}
.sp-checklist .elementor-icon-list-icon svg{width:24px!important;height:24px!important}
.sp-checklist--lg .elementor-icon-list-icon{margin-top:2px}
.sp-features .elementor-icon-list-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sp-features .elementor-icon-list-item{display:flex;align-items:center;gap:10px}
.sp-features .elementor-icon-list-icon{color:var(--sp-cta);width:20px;flex-shrink:0}
.sp-features .elementor-icon-list-icon svg{width:20px!important;height:20px!important;fill:none!important}
.sp-features .elementor-icon-list-text{padding:0!important;color:var(--sp-inkfg);font-size:16px;line-height:1.5}
@media (max-width:767px){.sp-features .elementor-icon-list-text{font-size:14px;line-height:1.4286}}
.sp-linklist .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;padding:0}
.sp-linklist .elementor-icon-list-text{padding:0!important;font-size:14px;line-height:20px;color:var(--sp-mfg)}
.sp-linklist a:hover .elementor-icon-list-text{color:var(--sp-primary);text-decoration:underline}
.sp-footlinks .elementor-icon-list-items{gap:8px}
.sp-footlinks .elementor-icon-list-text{padding:0!important;color:rgba(239,247,251,.8);font-size:16px;line-height:1.5}
.sp-footlinks a:hover .elementor-icon-list-text{text-decoration:underline}
.sp-last-bold .elementor-icon-list-item:last-child .elementor-icon-list-text{font-weight:600}

/* FAQ (Elementor Toggle) */
.sp-faq .elementor-toggle .elementor-toggle-item{border:0;border-bottom:1px solid var(--sp-border);margin:0!important}
.sp-faq .elementor-toggle .elementor-tab-title{display:flex;align-items:center;justify-content:space-between;gap:0;padding:16px 0!important;border:0!important;background:none;cursor:pointer;font-family:var(--sp-head);font-weight:600;font-size:18px;line-height:1.5556;letter-spacing:-.02em;color:var(--sp-fg)}
@media (max-width:767px){.sp-faq .elementor-toggle .elementor-tab-title{font-size:16px;line-height:1.5}}
.sp-faq .elementor-toggle .elementor-toggle-title{color:var(--sp-fg)!important;text-align:left}
.sp-faq .elementor-toggle .elementor-tab-title:hover .elementor-toggle-title{text-decoration:underline}
.sp-faq .elementor-toggle .elementor-toggle-icon{order:2;float:none!important;width:16px!important;height:16px;display:inline-flex;flex-shrink:0;color:var(--sp-mfg);margin:0!important}
.sp-faq .elementor-toggle .elementor-toggle-icon svg{width:16px;height:16px;fill:none!important;transition:transform .2s}
.sp-faq .elementor-toggle .elementor-toggle-icon-opened svg{transform:rotate(180deg)}
.sp-faq .elementor-toggle .elementor-tab-content{padding:0 0 16px!important;border:0!important;font-size:16px;line-height:1.5;color:var(--sp-mfg)}

/* Områder: søgning og byfliser */
.sp-search{position:relative;display:block;max-width:36rem;margin:0 auto}
.sp-search svg{position:absolute;left:16px;top:50%;width:20px;height:20px;transform:translateY(-50%);color:var(--sp-mfg);pointer-events:none}
.sp-search input.sp-search-input{height:56px;width:100%;margin:0;border-radius:22px;border:1px solid var(--sp-border);background:#fff;padding:0 16px 0 48px;font-family:var(--sp-body);font-size:18px;color:var(--sp-fg);box-shadow:var(--sp-shadow-card);outline:none}
.sp-search input.sp-search-input:focus{box-shadow:var(--sp-shadow-card),0 0 0 2px var(--sp-sea)}
.sp-search-empty{margin:24px 0 0;text-align:center;color:var(--sp-mfg)}
.sp-citygrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
@media (min-width:640px){.sp-citygrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1024px){.sp-citygrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sp-citygrid li{margin:0}
.sp-citygrid a{display:flex;height:100%;flex-direction:column;border-radius:22px;border:1px solid var(--sp-border);background:#fff;padding:16px;transition:all .15s}
.sp-citygrid a:hover{border-color:var(--sp-sea);box-shadow:var(--sp-shadow-card)}
.sp-zip{font-size:14px;line-height:20px;color:var(--sp-mfg)}
.sp-cityname{font-weight:600;color:var(--sp-fg)}
.sp-pills{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.sp-pills a{display:inline-block;border-radius:9999px;border:1px solid var(--sp-border);background:#fff;padding:8px 16px;font-weight:500;color:var(--sp-fg);transition:border-color .15s}
.sp-pills a:hover{border-color:var(--sp-sea)}

/* CTA-boks */
.e-con.sp-ctaband{position:relative;overflow:hidden}
.e-con.sp-ctaband:before{content:"";position:absolute;inset:-96px -96px auto auto!important;width:288px;height:288px;border-radius:9999px;background:rgba(0,144,169,.4);filter:blur(64px);pointer-events:none}
.e-con.sp-ctaband>.e-con{position:relative;z-index:1}

/* Header */
.sp-header-wrap,.elementor-location-header{position:sticky;top:0;z-index:50}
body.admin-bar .sp-header-wrap,body.admin-bar .elementor-location-header{top:32px}
@media (max-width:782px){body.admin-bar .sp-header-wrap,body.admin-bar .elementor-location-header{top:46px}}
.e-con.sp-header{border-bottom:1px solid var(--sp-border);background:rgba(249,252,254,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.e-con.sp-header-row{min-height:80px}
.e-con.sp-header-actions{width:auto!important;--width:auto;flex:0 0 auto!important}
.sp-header-row .elementor-widget{flex:0 0 auto!important;width:auto!important}
@media (max-width:767px){.e-con.sp-header-row{min-height:64px}}
.elementor-widget.sp-logo img{height:56px;width:auto}
@media (max-width:767px){.elementor-widget.sp-logo img{height:44px}}
.sp-nav{display:none;align-items:center;gap:4px}
@media (min-width:1024px){.sp-nav{display:flex}}
.sp-nav a{border-radius:14px;padding:8px 12px;font-size:14px;line-height:20px;font-weight:500;color:rgba(6,32,59,.8)!important;transition:background-color .15s}
.sp-nav a:hover{background:var(--sp-muted);color:var(--sp-fg)!important}
.sp-nav a.is-active{background:var(--sp-muted);color:var(--sp-primary)!important}
.sp-header .sp-menu-toggle{display:grid;place-items:center;width:44px;height:44px;padding:0;margin:0;border:1px solid var(--sp-input);border-radius:18px;background:var(--sp-bg);color:var(--sp-fg);box-shadow:0 1px 2px rgba(0,0,0,.05);cursor:pointer}
.sp-header .sp-menu-toggle:hover,.sp-header .sp-menu-toggle:focus{background:#CAF0F7;color:#03294F;border-color:var(--sp-input)}
.sp-header .sp-menu-toggle svg{width:16px;height:16px}
.sp-header .sp-menu-toggle .sp-i-x,.sp-header .sp-menu-toggle[aria-expanded="true"] .sp-i-menu{display:none}
.sp-header .sp-menu-toggle[aria-expanded="true"] .sp-i-x{display:block}
.sp-mnav{display:none;border-top:1px solid var(--sp-border);background:var(--sp-bg)}
.sp-mnav.is-open{display:block}
.sp-mnav-inner{display:grid;gap:4px;max-width:1216px;margin:0 auto;padding:16px 32px}
@media (max-width:767px){.sp-mnav-inner{padding:16px 20px}}
.sp-mnav a{border-radius:14px;padding:12px;font-size:18px;line-height:28px;font-weight:600;color:var(--sp-fg)!important}
.sp-mnav a:hover{background:var(--sp-muted)}
@media (min-width:1024px){.sp-lg-hide,.sp-mnav{display:none!important}}
@media (max-width:639px){.sp-xs-hide{display:none!important}}

/* Footer */
.sp-addr p+p{margin-top:4px}
.sp-addr a:hover{text-decoration:underline}
.sp-foot-bottom{border-top:1px solid rgba(239,247,251,.15)}
.sp-legal{display:flex;flex-wrap:wrap;gap:8px 24px}
.sp-legal a:hover{text-decoration:underline}
.sp-mbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;gap:8px;border-top:1px solid var(--sp-border);background:rgba(249,252,254,.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:12px}
.sp-mbar svg{width:20px;height:20px}
.sp-mbar-phone{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;border-radius:18px;border:1px solid var(--sp-border);color:var(--sp-fg)!important}
.sp-mbar-cta{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:56px;border-radius:18px;background:var(--sp-cta);color:var(--sp-ctafg)!important;font-weight:700;box-shadow:var(--sp-shadow-cta)}
.sp-mbar-cta svg{width:16px;height:16px}
@media (min-width:640px){.sp-mbar{display:none}}
@media (max-width:639px){.e-con.sp-footer{padding-bottom:96px!important}}

/* Forretningsbetingelser */
.sp-legal-intro p{padding:20px 24px;border-radius:22px;background:var(--sp-seasoft)}
.sp-legaltext h2{margin:40px 0 0;font-family:var(--sp-head);font-size:24px;line-height:1.3333;font-weight:700;letter-spacing:-.02em;color:var(--sp-fg)}
.sp-legaltext h3{margin:24px 0 0;font-family:var(--sp-head);font-size:18px;line-height:1.5556;font-weight:600;letter-spacing:-.02em;color:var(--sp-fg)}
.sp-legaltext h2+p,.sp-legaltext h3+p,.sp-legaltext h2+ul,.sp-legaltext h3+ul{margin-top:8px}
.elementor-widget-text-editor.sp-legaltext p,.sp-legaltext ul{margin:12px 0 0}
.sp-legaltext ul{padding-left:1.25rem;list-style:disc}
.sp-legaltext li{margin:4px 0 0}
.sp-legaltext li::marker{color:var(--sp-sea)}
.sp-legaltext a{word-break:break-word}
