/* critical.css — minimal replacement for Funnelish core.min.css
 * Extracted rules needed by deploy/index.html only.
 * Inline <style> blocks in the HTML handle per-element sizing/colors.
 */

/* ---------- Reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;line-height:1.5}
body{margin:0;font-family:'Roboto','Open Sans',system-ui,-apple-system,sans-serif;color:#303030;background:#fff;-webkit-font-smoothing:antialiased}
img,picture,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,h5,h6,p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}

/* ---------- Main wrapper ---------- */
.main-wrapper{width:100%;display:flex;flex-direction:column;align-items:center;min-height:100vh;text-decoration:inherit;overflow:unset}

/* ---------- Section / row ---------- */
.section{background-position:center;background-size:cover;background-repeat:no-repeat;justify-items:center;display:flex;align-items:center;flex-direction:column;position:relative}
.section.full{width:100%}
.section.full .section_row{max-width:1170px}
.section.wide{width:75%}
.section.wide .section_row{max-width:850px}
.section.half{width:50%}
.section.half .section_row{max-width:600px}
.section .section_row{width:100%;display:flex;flex-direction:row;background-position:center;background-size:cover;background-repeat:no-repeat;position:relative}

/* ---------- Column (inside a row) ---------- */
.row-column{padding:0;display:inline-block;vertical-align:top;text-decoration:inherit}

/* ---------- Container / container-wrapper / container-box ---------- */
.container-wrapper{width:100%;height:100%;display:flex;flex-direction:column}
label.container-wrapper{cursor:pointer}
.container{border:none;outline:none;display:flex;flex-direction:row;flex-wrap:wrap;min-height:0}
.container.row{flex-direction:row}
.container.column{flex-direction:column}
.container .container-box{width:100%;overflow:visible;display:flex;flex:1;flex-direction:column}
.container .container-inner{width:100%;display:flex;align-items:start;flex-direction:row}

/* ---------- Element wrapper ---------- */
.element-wrapper{display:flex;align-items:center;justify-content:center;text-decoration:inherit;min-height:0;width:100%}

/* ---------- Headline / paragraph ---------- */
.headline{width:100%;font-size:25px;word-break:break-word;white-space:break-spaces}
.headline .headline-inner{width:100%}
.headline p:empty::before{content:"";display:inline-block;min-height:1em}
.paragraph{width:100%;font-size:18px;word-break:break-word;white-space:break-spaces}
.paragraph .paragraph-inner{width:100%}
.paragraph p:empty::before{content:"";display:inline-block;min-height:1em}
.paragraph a{font-weight:inherit;font-size:inherit;font-style:inherit}
.headline *,.paragraph *{line-height:inherit;letter-spacing:inherit;font-size:inherit;font-family:inherit;font-weight:inherit}
.headline ul>li::before,.paragraph ul>li::before{content:"•";margin-right:5px;display:inline-block}
.headline ol>li,.headline ul>li,.paragraph ol>li,.paragraph ul>li{list-style-type:none;padding-left:0}
.headline ol li,.paragraph ol li{counter-increment:list-0}
.headline ol li:before,.paragraph ol li:before{content:counter(list-0, decimal) ". "}

/* ---------- Button ---------- */
.btn-container{width:100%;display:flex;align-items:center;flex-direction:column}
.btn{cursor:pointer;border:none;outline:none;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:500;font-size:14px;line-height:1.2;letter-spacing:.02em;color:#f6f9fe;background:#4368e0;border-radius:4px;padding:10px 30px;transition:all .2s ease-in-out;text-decoration:none}
.btn:hover{opacity:.92}
.btn.block{width:100%}
.btn .btn-headline{pointer-events:none;word-break:break-word}
.btn .btn-sub-headline{display:block;font-size:12px;pointer-events:none;margin-top:10px}
.btn.m_size{font-size:18px;line-height:145%;padding:15px 30px}
.btn-headline{pointer-events:none;word-break:break-word}

/* ---------- Utilities ---------- */
.hidden-anchor{position:absolute;width:0;height:0;overflow:hidden}
.pointer{cursor:pointer}
.flex-center{align-items:center}
.layout-row{display:flex;flex-direction:row}
.block{display:block}

/* ---------- Picture / lazy-load ---------- */
picture{display:inline-block;max-width:100%}
picture source,picture img{max-width:100%;height:auto}
img.lazy{opacity:0;transition:opacity .3s ease}
img.lazy.loaded,img.lazy[src]{opacity:1}
[data-src]:not([src]){min-height:1px}
