/*
Theme Name: FTS Svendborg
Template: hello-elementor
Author: JITS ApS
Version: 1.0.0
Text Domain: fts
*/
:root{--fts-dark:#0D3142;--fts-teal:#0F6B69;--fts-mint:#DDEFE8;--fts-sage:#9BB489;--fts-coral:#F06C6C;--fts-yellow:#F2A84A;--fts-text:#2B3A42;--fts-muted:#5B6B73;--fts-radius:22px;
--fts-serif:Georgia,"Times New Roman",serif;--fts-sans:Aptos,"Segoe UI",system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif}
body{font-family:var(--fts-sans);color:var(--fts-text);background:#fff;font-size:17px;line-height:1.65}
h1,h2,h3,h4,.elementor-heading-title{font-family:var(--fts-serif)!important;color:var(--fts-dark);font-weight:700}
a{color:var(--fts-teal)}a:hover{color:var(--fts-dark)}
.fts-wrap{max-width:1200px;margin:0 auto;padding:0 20px}
/* Header */
.fts-header{position:sticky;top:0;z-index:99;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);box-shadow:0 1px 0 rgba(13,49,66,.06)}
.fts-header .fts-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:88px}
.fts-logo img{height:68px;width:auto;display:block}
.fts-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px;align-items:center}
.fts-nav li{position:relative}
.fts-nav a{display:block;padding:10px 14px;color:var(--fts-dark);text-decoration:none;font-weight:500;font-size:16px;border-bottom:2px solid transparent}
.fts-nav .current-menu-item>a,.fts-nav .current-menu-ancestor>a,.fts-nav a:hover{color:var(--fts-teal);border-bottom-color:var(--fts-teal)}
.fts-nav .menu-item-has-children>a:after{content:"";display:inline-block;margin-left:7px;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px)}
.fts-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:240px;background:#fff;border-radius:14px;box-shadow:0 12px 30px rgba(13,49,66,.14);padding:8px;flex-direction:column;align-items:stretch}
.fts-nav li:hover>.sub-menu,.fts-nav li:focus-within>.sub-menu{display:flex}
.fts-nav .sub-menu a{border:0;border-radius:8px;padding:9px 12px}
.fts-nav .sub-menu a:hover{background:var(--fts-mint)}
.fts-btn,.elementor-button{display:inline-flex;align-items:center;gap:8px;background:var(--fts-teal)!important;color:#fff!important;border-radius:999px!important;padding:12px 24px!important;font-weight:600;text-decoration:none;border:2px solid var(--fts-teal)!important;font-family:var(--fts-sans)}
.fts-btn:hover,.elementor-button:hover{background:var(--fts-dark)!important;border-color:var(--fts-dark)!important}
.fts-btn-outline .elementor-button,.fts-btn.outline{background:transparent!important;color:var(--fts-teal)!important}
.fts-btn-outline .elementor-button:hover{background:var(--fts-teal)!important;color:#fff!important}
.fts-toggle{display:none;background:none;border:0;padding:8px;cursor:pointer}
.fts-toggle span{display:block;width:26px;height:3px;background:var(--fts-dark);margin:5px 0;border-radius:2px}
@media(max-width:1024px){.fts-toggle{display:block}.fts-header .fts-cta{display:none}
.fts-nav{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;box-shadow:0 12px 20px rgba(13,49,66,.1);padding:10px 20px 20px}
.fts-nav.open{display:block}.fts-nav ul{flex-direction:column;align-items:stretch}
.fts-nav .sub-menu{display:flex;position:static;box-shadow:none;padding:0 0 0 14px}.fts-logo img{height:56px}}
/* Hero */
.fts-hero{position:relative;background:linear-gradient(90deg,#fff 0%,#fff 38%,rgba(255,255,255,0) 62%),url(assets/img/hero.webp) right center/62% auto no-repeat;overflow:hidden}
.fts-hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:90px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath d='M0 40 C360 100 720 0 1080 40 S1440 60 1440 30 V90 H0Z' fill='%23DDEFE8' opacity='.7'/%3E%3Cpath d='M0 60 C400 110 800 20 1440 70 V90 H0Z' fill='%23fff'/%3E%3C/svg%3E") bottom/100% 100% no-repeat;pointer-events:none}
.fts-hero h1 .elementor-heading-title{font-size:clamp(38px,5vw,62px)!important;line-height:1.08!important;color:var(--fts-dark)}
.fts-rainbow:after,.fts-underline .elementor-heading-title:after{content:"";display:block;width:110px;height:4px;border-radius:4px;margin-top:18px;background:linear-gradient(90deg,var(--fts-teal),var(--fts-sage),var(--fts-yellow),var(--fts-coral),#8b5fbf)}
.fts-center .elementor-heading-title:after{margin-left:auto;margin-right:auto}
@media(max-width:900px){.fts-hero{background:linear-gradient(180deg,rgba(255,255,255,.2),#fff 55%),url(assets/img/hero.webp) top center/cover no-repeat}.fts-hero>.e-con-inner{padding-top:200px!important}}
/* Values */
.fts-values .elementor-icon{background:var(--fts-mint);color:var(--fts-teal)!important;fill:var(--fts-teal)!important;border-radius:50%;padding:20px;font-size:30px}
.fts-values .elementor-icon svg{fill:var(--fts-teal)}
.fts-values .elementor-icon-box-title{font-family:var(--fts-serif);color:var(--fts-dark);font-size:21px}
.fts-values .elementor-icon-box-description{color:var(--fts-muted);font-size:15px}
.fts-value+.fts-value{border-left:1px solid rgba(19,124,122,.25)}
@media(max-width:767px){.fts-value+.fts-value{border-left:0}}
/* Media & cards */
.fts-photo img{border-radius:var(--fts-radius);box-shadow:0 18px 40px rgba(13,49,66,.12)}
.fts-blob{position:relative}
.fts-blob:before{content:"";position:absolute;left:-40px;top:-30px;width:200px;height:200px;border-radius:50%;background:#F9D9D9;z-index:0;opacity:.7}
.fts-blob:after{content:"";position:absolute;left:-30px;bottom:-30px;width:180px;height:180px;border-radius:50%;background:var(--fts-mint);z-index:0}
.fts-blob>*{position:relative;z-index:1}
.fts-card{background:#fff;border-radius:var(--fts-radius);box-shadow:0 10px 30px rgba(13,49,66,.08);overflow:hidden;transition:transform .25s,box-shadow .25s}
.fts-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(13,49,66,.13)}
.fts-soft{background:var(--fts-mint)}
.fts-dark{background:var(--fts-dark);color:#fff}
.fts-cta-band{background:var(--fts-mint);border-radius:28px}
.fts-page-hero{background:linear-gradient(135deg,var(--fts-mint),#fff);position:relative}
.fts-page-hero .elementor-heading-title{font-size:clamp(34px,4vw,50px)!important}
.fts-info{background:var(--fts-mint);border-radius:18px;padding:22px 26px}
.fts-info p{margin:0 0 6px}
.fts-en{border-left:4px solid var(--fts-sage);padding-left:18px;color:var(--fts-muted);font-style:italic}
/* News shortcode */
.fts-news{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:900px){.fts-news{grid-template-columns:1fr}}
.fts-news .fts-card a{text-decoration:none;color:inherit;display:block;height:100%}
.fts-news .thumb{position:relative;aspect-ratio:16/10;background:var(--fts-mint)}
.fts-news .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.fts-news .date{position:absolute;left:16px;bottom:-22px;background:#fff;border-radius:14px;padding:6px 12px;text-align:center;box-shadow:0 6px 16px rgba(13,49,66,.12);font-weight:700;color:var(--fts-dark);line-height:1.1}
.fts-news .date small{display:block;font-size:12px;font-weight:600;color:var(--fts-teal);text-transform:uppercase}
.fts-news .body{padding:34px 22px 24px}
.fts-news h3{font-size:21px;margin:0 0 8px}
.fts-news p{color:var(--fts-muted);font-size:15px;margin:0 0 12px}
.fts-news .more{color:var(--fts-teal);font-weight:600}
/* Footer */
.fts-footer{background:var(--fts-dark);color:#cfe3e2;margin-top:0;position:relative}
.fts-footer:before{content:"";display:block;height:60px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 0 H1440 V20 C1080 70 360 -10 0 40Z' fill='%23fff'/%3E%3C/svg%3E") top/100% 100% no-repeat;background-color:var(--fts-dark)}
.fts-footer .grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:36px;padding:30px 20px 40px}
.fts-footer h4{color:#fff;font-family:var(--fts-sans)!important;font-size:16px;margin:0 0 12px}
.fts-footer ul{list-style:none;margin:0;padding:0}.fts-footer li{margin:4px 0}
.fts-footer a{color:#cfe3e2;text-decoration:none}.fts-footer a:hover{color:#fff}
.fts-footer .brand{display:flex;gap:14px;align-items:center}
.fts-footer .brand img{height:90px;background:#fff;border-radius:16px;padding:6px}
.fts-footer .bottom{border-top:1px solid rgba(255,255,255,.12);padding:16px 20px;font-size:14px;text-align:center}
@media(max-width:900px){.fts-footer .grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.fts-footer .grid{grid-template-columns:1fr}}
/* Blog */
.fts-archive{padding:60px 20px}
.site-main.post .page-content,.single .page-content{max-width:800px;margin:0 auto}
/* v1.1 justeringer */
.fts-hero .elementor-heading-title{font-size:clamp(40px,5vw,64px)!important;line-height:1.08!important}
.fts-photo img,.fts-photo .elementor-widget-container img{width:100%;height:auto;object-fit:cover}
.fts-logo img{height:80px}
.fts-values .elementor-icon{font-size:34px}
@media(max-width:900px){.fts-hero{background:linear-gradient(180deg,rgba(255,255,255,0) 0,rgba(255,255,255,0) 190px,#fff 300px),url(assets/img/hero.webp) top center/auto 300px no-repeat}.fts-hero>.e-con-inner{padding-top:230px!important}}
/* v1.2 tilgængelighed (WCAG 2.1 AA / EN 301 549) */
.elementor-widget-text-editor a,.fts-info a,.fts-footer a{text-decoration:underline;text-underline-offset:2px}
.fts-footer .grid a,.fts-footer .bottom a{text-decoration:underline}
.fts-skip{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--fts-dark);color:#fff;padding:10px 16px;border-radius:0 0 8px 0}
.fts-skip:focus{left:0;color:#fff}
a:focus-visible,button:focus-visible,.elementor-button:focus-visible{outline:3px solid var(--fts-yellow);outline-offset:3px}

/* v1.3 kundens billeder + logo */
.fts-logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.fts-logo img{height:64px!important;width:auto}
.fts-logo-text{font-family:var(--fts-sans);font-weight:600;font-size:15px;line-height:1.15;color:var(--fts-teal)}
.fts-footer .brand img{height:96px;width:auto;padding:10px 12px}
.fts-photo img{max-height:560px;object-fit:cover}
.fts-portrait img{width:150px!important;height:150px!important;border-radius:50%;object-fit:cover;object-position:center top;box-shadow:0 8px 20px rgba(13,49,66,.15)}
.fts-portrait{margin-bottom:10px}
.fts-hero{background-position:right center!important;background-size:auto 100%!important}
@media(max-width:900px){.fts-hero{background:linear-gradient(180deg,rgba(255,255,255,0) 0,rgba(255,255,255,0) 200px,#fff 300px),url(assets/img/hero.webp) top center/cover no-repeat!important;background-size:auto 300px!important}.fts-logo img{height:52px!important}.fts-logo-text{font-size:13px}}
/* v1.4 hero: billede som lag der altid fylder hele højden (zoom-sikker bølge) */
.fts-hero{background:#fff!important;position:relative;overflow:hidden}
.fts-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;width:60%;background:url(assets/img/hero.webp) center 70%/cover no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%);mask-image:linear-gradient(90deg,transparent 0,#000 30%);z-index:0;pointer-events:none}
.fts-hero>.e-con-inner{position:relative;z-index:1}
.fts-hero:after{z-index:2;bottom:-2px;height:100px}
@media(max-width:900px){.fts-hero{background:#fff!important}.fts-hero:before{width:100%;height:300px;bottom:auto;background-position:center 60%;-webkit-mask-image:linear-gradient(180deg,#000 60%,transparent 100%);mask-image:linear-gradient(180deg,#000 60%,transparent 100%)}.fts-hero>.e-con-inner{padding-top:250px!important}}
.elementor .e-con.fts-hero::before{content:""!important;display:block!important;inset:0 0 0 auto!important;left:auto!important;right:0!important;top:0!important;bottom:0!important;width:60%!important;height:auto!important;opacity:1!important;background:url(assets/img/hero.webp) center 70%/cover no-repeat!important;border-radius:0!important;mix-blend-mode:normal!important}
@media(max-width:900px){.elementor .e-con.fts-hero::before{inset:0 0 auto 0!important;left:0!important;width:100%!important;height:300px!important;bottom:auto!important;background-position:center 60%!important}}
.elementor .e-con.fts-hero::before{background-position:center 88%!important}
@media(max-width:900px){.elementor .e-con.fts-hero::before{background-position:center 75%!important}}
/* v1.5 genvejsknapper – mobiludgave */
@media(max-width:520px){
.fts-genveje a{display:grid!important;grid-template-columns:64px 1fr;align-items:center;column-gap:16px;row-gap:2px;text-align:left;padding:14px 12px}
.fts-genveje .maerke{grid-row:1/3;grid-column:1}
.fts-genveje .titel{grid-column:2;align-self:end}
.fts-genveje .tekst{grid-column:2;align-self:start;max-width:none}
}
/* v1.6 kundens rettelser */
.fts-kicker p{display:inline-block;margin:0 0 6px;padding:6px 14px;border-radius:999px;background:var(--fts-mint);color:var(--fts-teal);font-weight:700;font-size:15px}
.fts-advarsel{background:#FFF4E5;border-left:4px solid var(--fts-yellow);padding:10px 14px;border-radius:8px}
.fts-portrait-logo img{object-fit:contain!important;background:#fff;padding:18px}
.fts-cta-band .e-con-inner>.e-con:last-child,.fts-cta-band>.e-con:last-child{flex-wrap:wrap}
/* v1.7 nyt hero-billede (fællessang) – nyt filnavn så browser-cachen ikke viser det gamle */
.elementor .e-con.fts-hero::before{background-image:url(assets/img/hero-sang.webp)!important;background-position:62% 55%!important}
@media(max-width:900px){.elementor .e-con.fts-hero::before{background-image:url(assets/img/hero-sang-mobil.webp)!important;background-position:70% 50%!important}}
/* v1.8 mobilmenu: undermenuer lukkede som standard, åbnes med pil-knap */
.fts-sub-toggle{display:none}
@media(max-width:1024px){
.fts-nav .menu-item-has-children{display:flex;flex-wrap:wrap;align-items:center}
.fts-nav .menu-item-has-children>a{flex:1}
.fts-nav .menu-item-has-children>a:after{display:none}
.fts-nav .sub-menu{display:none!important;flex-basis:100%}
.fts-nav .sub-open>.sub-menu{display:flex!important}
.fts-sub-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:10px;background:var(--fts-mint);cursor:pointer;margin-left:8px}
.fts-sub-toggle span{display:block;width:9px;height:9px;border-right:2px solid var(--fts-dark);border-bottom:2px solid var(--fts-dark);transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s}
.fts-nav .sub-open>.fts-sub-toggle span{transform:rotate(-135deg) translate(-2px,-2px)}
.fts-sub-toggle:hover{background:#cfe7de}
}
.fts-toggle,.fts-toggle:hover,.fts-toggle:focus,.fts-toggle:active{background:transparent!important;border:0!important;color:var(--fts-dark)!important}
.fts-toggle:focus-visible{outline:3px solid var(--fts-yellow);outline-offset:2px}
.fts-sub-toggle:focus,.fts-sub-toggle:active{background:var(--fts-mint)!important;color:var(--fts-dark)!important}
.fts-sub-toggle:focus-visible{outline:3px solid var(--fts-yellow);outline-offset:2px}
/* v1.9 Folkekirkens logo, styregruppe/ansatte, lige store CTA-knapper */
.fts-fk-logo img{max-width:300px;width:100%;height:auto}
.fts-fk-logo a:focus-visible{outline:3px solid var(--fts-yellow);outline-offset:6px}
.fts-person{background:#fff;border-radius:var(--fts-radius);box-shadow:0 10px 26px rgba(13,49,66,.08)}
.fts-person h3{font-size:20px;margin:0 0 4px}
.fts-person .rolle{color:var(--fts-teal);font-weight:600;margin:0 0 10px}
.fts-person p{margin:0 0 6px}
.fts-mt{margin-top:34px}
.fts-cta-band .elementor-widget-button{width:250px!important;max-width:100%}
.fts-cta-band .elementor-button{width:100%!important;justify-content:center;text-align:center}
.fts-cta-band .elementor-button .elementor-button-content-wrapper{justify-content:center;width:100%}
@media(max-width:767px){.fts-cta-band .elementor-widget-button{width:100%!important}}
/* v2.0 sprogknap (dansk/engelsk) */
.fts-lang{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:2px solid var(--fts-teal);border-radius:999px;color:var(--fts-dark);font-weight:600;font-size:15px;text-decoration:none;white-space:nowrap;margin-left:auto}
.fts-lang:hover{background:var(--fts-mint);color:var(--fts-dark)}
.fts-lang:focus-visible{outline:3px solid var(--fts-yellow);outline-offset:2px}
.fts-lang-ikon{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:22px;border-radius:6px;background:var(--fts-teal);color:#fff;font-size:12px;font-weight:700;letter-spacing:.5px}
.fts-header .fts-wrap{gap:18px}
.fts-header .fts-nav{margin-left:auto}
.fts-header .fts-lang+.fts-toggle+.fts-nav{margin-left:0}
@media(min-width:1025px){.fts-header .fts-wrap{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center}.fts-header .fts-nav{order:2;justify-self:center}.fts-lang{order:3;margin-left:0}.fts-cta{order:4}.fts-logo{order:1}}
@media(max-width:1024px){.fts-lang{padding:6px 10px;font-size:14px}.fts-lang-ikon{display:none}}
@media(max-width:380px){.fts-logo-text{display:none}}
.fts-cta-band .elementor-widget-button{width:290px!important}

/* v2.1 – links i ikonbokse understreges (WCAG 1.4.1) */
.elementor-icon-box-description a{text-decoration:underline;text-underline-offset:2px}

/* v2.2 – kirkebillede ved gudstjenester */
.fts-kirke img{max-width:430px!important}
.fts-kirke,.fts-kirke .elementor-widget-container{text-align:left!important}

/* v2.3 – Kontakt: kort og indgangsfoto lige høje */
.fts-findvej .fts-photo img{height:340px!important;width:100%!important;object-fit:cover;object-position:center}
.fts-findvej .elementor-widget-google_maps iframe{height:340px!important}
.fts-findvej .elementor-widget-google_maps iframe{border-radius:var(--fts-radius);display:block}
