.elementor-kit-4{--e-global-color-primary:#7CF7C6;--e-global-color-secondary:#0A0B0D;--e-global-color-text:#0A0B0D;--e-global-color-accent:#7CF7C6;--e-global-color-qwink:#0A0B0D;--e-global-color-qwink2:#131518;--e-global-color-qwink3:#1D2024;--e-global-color-qwpaper:#EDEAE4;--e-global-color-qwpaper2:#E2DED6;--e-global-color-qwgrey:#8B8D91;--e-global-color-qwgreyd:#5A5D62;--e-global-color-qwsignal:#7CF7C6;--e-global-color-qwsigink:#06281C;--e-global-color-qwhaird:#EDEAE41F;--e-global-color-qwhairl:#0A0B0D24;--e-global-typography-primary-font-family:"Inter Tight";--e-global-typography-primary-font-weight:700;--e-global-typography-primary-letter-spacing:-0.04em;--e-global-typography-secondary-font-family:"Inter Tight";--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-letter-spacing:-0.03em;--e-global-typography-text-font-family:"Geist";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"JetBrains Mono";--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:0.06em;--e-global-typography-qwdisp-font-family:"Inter Tight";--e-global-typography-qwdisp-font-weight:700;--e-global-typography-qwdisp-letter-spacing:-0.04em;--e-global-typography-qwbody-font-family:"Geist";--e-global-typography-qwbody-font-weight:400;--e-global-typography-qwmono-font-family:"JetBrains Mono";--e-global-typography-qwmono-font-weight:400;--e-global-typography-qwmono-text-transform:uppercase;--e-global-typography-qwmono-letter-spacing:0.06em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================================
   QUELLOWIFI · SITE CSS (Elementor > Site Settings > Custom CSS)
   Tokens read Elementor Global Colours / Fonts, so editing a Global
   in Elementor updates the coded widgets too. Everything else is qw- scoped.
   ========================================================= */
:root{
  --qw-ink:var(--e-global-color-qwink,#0A0B0D);
  --qw-ink-2:var(--e-global-color-qwink2,#131518);
  --qw-ink-3:var(--e-global-color-qwink3,#1D2024);
  --qw-paper:var(--e-global-color-qwpaper,#EDEAE4);
  --qw-paper-2:var(--e-global-color-qwpaper2,#E2DED6);
  --qw-grey:var(--e-global-color-qwgrey,#8B8D91);
  --qw-grey-d:var(--e-global-color-qwgreyd,#5A5D62);
  --qw-signal:var(--e-global-color-qwsignal,#7CF7C6);
  --qw-signal-ink:var(--e-global-color-qwsigink,#06281C);
  --qw-hair-d:var(--e-global-color-qwhaird,rgba(237,234,228,.12));
  --qw-hair-l:var(--e-global-color-qwhairl,rgba(10,11,13,.14));
  --qw-f-display:var(--e-global-typography-qwdisp-font-family,'Inter Tight'),'Helvetica Neue',Arial,sans-serif;
  --qw-f-body:var(--e-global-typography-qwbody-font-family,'Geist'),'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --qw-f-mono:var(--e-global-typography-qwmono-font-family,'JetBrains Mono'),ui-monospace,'SFMono-Regular',Menlo,monospace;
  --qw-ease:cubic-bezier(.22,1,.36,1);
  --qw-pad:clamp(20px,4vw,64px);
  --qw-maxw:1440px;
}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
[class*="qw-"]:focus-visible,[class*="qw-"] :focus-visible{outline:2px solid var(--qw-signal);outline-offset:3px;border-radius:4px}
.qw-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.qw-ph{font-family:var(--qw-f-mono);font-size:.82em;letter-spacing:-.01em;background:rgba(124,247,198,.12);color:inherit;padding:.05em .35em;border-radius:3px;border:1px dashed rgba(124,247,198,.45);-webkit-box-decoration-break:clone;box-decoration-break:clone}
.qw-light .qw-ph{background:rgba(10,11,13,.06);border-color:rgba(10,11,13,.35)}

/* ---------- Section system (works on plain elements and Elementor containers) ---------- */
.qw-section{position:relative;padding:clamp(96px,12vw,176px) var(--qw-pad);overflow:clip}
/* Studio light: soft signal-mint top light (10% max keeps grey text >= 4.5:1), slightly deeper bottom corners. Fixed px sizes so tall/pinned sections stay subtle */
.qw-dark{background-color:var(--qw-ink);color:var(--qw-paper);
  background-image:radial-gradient(1400px 720px at 50% 0,color-mix(in srgb,var(--qw-signal) 10%,transparent),transparent 70%),
    radial-gradient(900px 520px at 0 100%,rgba(0,0,0,.38),transparent 70%),
    radial-gradient(900px 520px at 100% 100%,rgba(0,0,0,.38),transparent 70%)}
.qw-light{background:var(--qw-paper);color:var(--qw-ink)}
/* same-colour neighbours: the index hairline is the divider, so skip the doubled padding */
.qw-light + .qw-light,.qw-dark + .qw-dark{padding-top:0}
.qw-dark::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.08;mix-blend-mode:overlay;z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.qw-inner{max-width:var(--qw-maxw);margin:0 auto;position:relative;z-index:1}
.qw-index{display:flex;justify-content:space-between;gap:16px;font-family:var(--qw-f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding-bottom:18px;border-bottom:1px solid var(--qw-hair-d);margin-bottom:clamp(40px,6vw,88px);color:var(--qw-grey)}
.qw-light .qw-index{border-color:var(--qw-hair-l);color:var(--qw-grey-d)}
.qw-index b{font-weight:500;color:var(--qw-paper)}
.qw-light .qw-index b{color:var(--qw-ink)}
.qw-h2{font-family:var(--qw-f-display);font-weight:700;font-size:clamp(2.6rem,6.2vw,6.6rem);line-height:.95;letter-spacing:-.04em;margin:0}
.qw-h3{font-family:var(--qw-f-display);font-weight:700;font-size:clamp(1.5rem,2.2vw,2.1rem);line-height:1.05;letter-spacing:-.03em;margin:0}
.qw-lede{font-size:clamp(1.05rem,1.35vw,1.25rem);line-height:1.5;max-width:46ch;color:inherit;opacity:.78;margin:0}
.qw-mono{font-family:var(--qw-f-mono);font-size:12.5px;letter-spacing:.02em}
.qw-line-mask{overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.e-con.qw-section{padding-top:clamp(96px,12vw,176px);padding-bottom:clamp(96px,12vw,176px);padding-left:var(--qw-pad);padding-right:var(--qw-pad)}
.e-con.qw-light + .e-con.qw-light,.e-con.qw-dark + .e-con.qw-dark{padding-top:0}
.qw-dark .elementor-heading-title,.qw-dark .elementor-widget-text-editor{color:inherit}
.qw-light .elementor-heading-title,.qw-light .elementor-widget-text-editor{color:inherit}

/* ---------- Buttons, chips, dots ---------- */
.qw-btn{display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 26px;border-radius:999px;font-weight:500;font-size:16px;text-decoration:none;position:relative;overflow:hidden;isolation:isolate;transition:transform .5s var(--qw-ease),color .4s var(--qw-ease),border-color .4s}
.qw-btn span{position:relative;z-index:1}
.qw-btn--primary{background:var(--qw-signal);color:var(--qw-signal-ink)}
.qw-btn--primary::after{content:"";position:absolute;inset:0;background:var(--qw-paper);transform:translateY(101%);transition:transform .5s var(--qw-ease);z-index:0;border-radius:inherit}
.qw-btn--primary:hover::after{transform:none}
.qw-btn--ghost{border:1px solid var(--qw-hair-d);color:var(--qw-paper)}
.qw-btn--ghost:hover{border-color:var(--qw-paper)}
.qw-light .qw-btn--ghost{border-color:var(--qw-hair-l);color:var(--qw-ink)}
.qw-light .qw-btn--ghost:hover{border-color:var(--qw-ink)}
.qw-btn--ink{background:var(--qw-ink);color:var(--qw-paper)}
.qw-btn--ink:hover{transform:translateY(-2px)}
.qw-btns{display:flex;flex-wrap:wrap;gap:12px}
.qw-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--qw-signal);box-shadow:0 0 0 0 rgba(124,247,198,.6);animation:qw-ping 2.4s infinite}
@keyframes qw-ping{0%{box-shadow:0 0 0 0 rgba(124,247,198,.55)}70%{box-shadow:0 0 0 9px rgba(124,247,198,0)}100%{box-shadow:0 0 0 0 rgba(124,247,198,0)}}
.qw-chip{display:inline-flex;align-items:center;gap:9px;font-family:var(--qw-f-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;padding:8px 13px;border-radius:999px;background:rgba(19,21,24,.78);border:1px solid var(--qw-hair-d);color:var(--qw-paper);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);white-space:nowrap}

/* ---------- Cursor (desktop fine pointer) ---------- */
.qw-cursor{position:fixed;left:0;top:0;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--qw-paper);mix-blend-mode:difference;pointer-events:none;z-index:200;opacity:0;transition:width .35s var(--qw-ease),height .35s var(--qw-ease),margin .35s var(--qw-ease),opacity .3s}
.qw-cursor.is-on{opacity:1}
.qw-cursor.is-hover{width:46px;height:46px;margin:-23px 0 0 -23px}
@media (hover:hover) and (pointer:fine) and (min-width:768px){.qw-has-cursor,.qw-has-cursor a,.qw-has-cursor button{cursor:none}}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .qw-marquee__track{animation:none}
}

/* =========================================================
   ELEMENTOR BRIDGE: qw styles applied to Elementor widget markup
   (Elementor "default colours/fonts" are disabled, so widgets inherit these)
   ========================================================= */
.qw-section,.qw-header,.qw-footer,.qw-menu{font-family:var(--qw-f-body);-webkit-font-smoothing:antialiased}
.qw-section .elementor-widget-text-editor p:last-child,.qw-footer .elementor-widget-text-editor p:last-child{margin-bottom:0}

/* Buttons: add classes to the Button widget, e.g. "qw-ebtn qw-ebtn--primary" */
.qw-ebtn .elementor-button{display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 26px;border-radius:999px;font-family:var(--qw-f-body);font-weight:500;font-size:16px;line-height:1;text-decoration:none;position:relative;overflow:hidden;isolation:isolate;background:transparent;color:inherit;transition:transform .5s var(--qw-ease),color .4s var(--qw-ease),border-color .4s}
.qw-ebtn .elementor-button-content-wrapper{position:relative;z-index:1}
.qw-ebtn--primary .elementor-button{background:var(--qw-signal);color:var(--qw-signal-ink)}
.qw-ebtn--primary .elementor-button:hover,.qw-ebtn--primary .elementor-button:focus{color:var(--qw-signal-ink)}
.qw-ebtn--primary .elementor-button::after{content:"";position:absolute;inset:0;background:var(--qw-paper);transform:translateY(101%);transition:transform .5s var(--qw-ease);z-index:0;border-radius:inherit}
.qw-ebtn--primary .elementor-button:hover::after{transform:none}
.qw-ebtn--ghost .elementor-button{border:1px solid var(--qw-hair-d);color:var(--qw-paper)}
.qw-ebtn--ghost .elementor-button:hover{border-color:var(--qw-paper);color:var(--qw-paper)}
.qw-light .qw-ebtn--ghost .elementor-button{border-color:var(--qw-hair-l);color:var(--qw-ink)}
.qw-light .qw-ebtn--ghost .elementor-button:hover{border-color:var(--qw-ink)}
.qw-ebtn--ink .elementor-button{background:var(--qw-ink);color:var(--qw-paper)}
.qw-ebtn--ink .elementor-button:hover{transform:translateY(-2px);color:var(--qw-paper)}
.qw-ebtn--sm .elementor-button{height:42px;padding:0 20px;font-size:14.5px}

/* ---------- Header (Theme Builder) ---------- */
.e-con.qw-header{position:fixed;top:0;left:0;right:0;z-index:50;padding-top:env(safe-area-inset-top,0px);padding-bottom:0;padding-left:0;padding-right:0;min-height:0;background:transparent;color:var(--qw-paper);border-bottom:1px solid transparent;transition:background .5s var(--qw-ease),backdrop-filter .5s,border-color .5s}
body.admin-bar .e-con.qw-header{top:32px}
@media (max-width:782px){body.admin-bar .e-con.qw-header{top:46px}}
.e-con.qw-header.is-solid{background:rgba(10,11,13,.74);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border-color:var(--qw-hair-d)}
.e-con.qw-header__bar{max-width:calc(var(--qw-maxw) + 2*var(--qw-pad));width:100%;margin:0 auto;height:76px;padding-top:0;padding-bottom:0;padding-left:var(--qw-pad);padding-right:var(--qw-pad);flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:32px;row-gap:32px;column-gap:32px}
.qw-logo-w .elementor-heading-title,.qw-logo-w .elementor-heading-title a{display:flex;align-items:center;gap:10px;font-family:var(--qw-f-display);font-weight:700;font-size:21px;line-height:1;letter-spacing:-.04em;text-decoration:none;color:var(--qw-paper)}
.qw-logo-w i{width:22px;height:22px;border-radius:7px;border:1.5px solid currentColor;position:relative;display:block;flex:none}
.qw-logo-w i::after{content:"";position:absolute;left:5px;right:5px;bottom:4px;height:2px;border-radius:2px;background:var(--qw-signal)}
.qw-nav.elementor-widget{margin-left:auto}
.qw-nav .elementor-nav-menu--main .elementor-nav-menu{gap:26px}
.qw-nav .elementor-nav-menu--main .elementor-nav-menu::after{display:none}   /* Elementor clearfix would add a phantom flex gap */
.qw-header__menu.elementor-widget{display:none}   /* burger only at <=900px; its script still runs */
.qw-nav .elementor-nav-menu--main .elementor-item{padding:0;font-family:var(--qw-f-body);font-size:14.5px;font-weight:400;line-height:1.55;color:rgba(237,234,228,.72);transition:color .3s}
.qw-nav .elementor-nav-menu--main .elementor-item:hover,.qw-nav .elementor-nav-menu--main .elementor-item:focus,.qw-nav .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--qw-paper)}
.qw-burger{display:none;width:44px;height:44px;position:relative;background:none;border:0;padding:0;cursor:pointer}
.qw-burger span{position:absolute;left:11px;right:11px;height:1.5px;background:var(--qw-paper);transition:transform .45s var(--qw-ease)}
.qw-burger span:nth-child(1){top:18px}.qw-burger span:nth-child(2){top:25px}
.qw-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(3.5px) rotate(45deg)}
.qw-burger[aria-expanded="true"] span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}
.qw-menu{position:fixed;inset:0;z-index:49;background:var(--qw-ink);color:var(--qw-paper);padding:calc(env(safe-area-inset-top,0px) + 110px) var(--qw-pad) calc(env(safe-area-inset-bottom,0px) + 32px);display:flex;flex-direction:column;justify-content:space-between;visibility:hidden;opacity:0;transition:opacity .4s var(--qw-ease),visibility 0s .4s}
.qw-menu.is-open{visibility:visible;opacity:1;transition:opacity .4s var(--qw-ease)}
.qw-menu ul{list-style:none;margin:0;padding:0}
.qw-menu li{overflow:hidden;border-bottom:1px solid var(--qw-hair-d)}
.qw-menu li a{display:flex;justify-content:space-between;align-items:baseline;padding:14px 0;font-family:var(--qw-f-display);font-size:clamp(2rem,9vw,3rem);font-weight:600;letter-spacing:-.04em;text-decoration:none;color:var(--qw-paper);transform:translateY(105%);transition:transform .6s var(--qw-ease)}
.qw-menu li a small{font-family:var(--qw-f-mono);font-size:11px;color:var(--qw-grey);letter-spacing:.06em}
.qw-menu.is-open li a{transform:none}
.qw-menu.is-open li:nth-child(2) a{transition-delay:.05s}.qw-menu.is-open li:nth-child(3) a{transition-delay:.1s}.qw-menu.is-open li:nth-child(4) a{transition-delay:.15s}.qw-menu.is-open li:nth-child(5) a{transition-delay:.2s}.qw-menu.is-open li:nth-child(6) a{transition-delay:.25s}
.qw-menu .qw-btns{flex-direction:column}
.qw-menu .qw-btn{justify-content:center}
@media (max-width:1280px){.qw-nav .elementor-nav-menu--main .elementor-nav-menu{gap:18px}}
@media (max-width:1100px){.e-con.qw-header__bar > .qw-nav.elementor-widget-nav-menu{display:none}.qw-header__cta.elementor-widget{margin-left:auto}}
@media (max-width:900px){.qw-burger{display:block}.qw-header__menu.elementor-widget{display:block}}
@media (max-width:767px){.qw-header__cta.elementor-widget{display:none}.qw-header__menu.elementor-widget{margin-left:auto}}

/* ---------- Footer (Theme Builder) ---------- */
.e-con.qw-footer{padding-top:clamp(64px,7vw,104px);padding-bottom:calc(32px + env(safe-area-inset-bottom,0px));padding-left:var(--qw-pad);padding-right:var(--qw-pad);gap:0;row-gap:0}
.e-con.qw-footer > .e-con,.e-con.qw-footer .e-con{padding-top:0;padding-bottom:0;padding-left:0;padding-right:0}
.e-con.qw-footer__inner{max-width:var(--qw-maxw);width:100%;margin:0 auto;gap:0;row-gap:0;position:relative;z-index:1}
.e-con.qw-footer .e-con.qw-footer__grid{display:grid;grid-template-columns:1.3fr repeat(3,minmax(0,.6fr));gap:40px;padding-bottom:56px;border-bottom:1px solid var(--qw-hair-d)}
.e-con.qw-footer__col{gap:0;row-gap:0;justify-content:flex-start}
.qw-footer__h .elementor-heading-title{font-family:var(--qw-f-mono);font-weight:400;font-size:11.5px;line-height:1.55;letter-spacing:.07em;text-transform:uppercase;color:var(--qw-grey);margin:0 0 18px}
.qw-footer__links .elementor-icon-list-items{display:flex;flex-direction:column;gap:10px}
.qw-footer__links .elementor-icon-list-item{margin:0!important;padding:0!important;display:block;font-size:17px;line-height:1.55}   /* row height from the 17px body text, as in the prototype */
.qw-footer__links .elementor-icon-list-item a{display:inline;text-decoration:none;padding:0}
.qw-footer__links .elementor-icon-list-text{color:rgba(237,234,228,.8);font-size:15px;line-height:1.55;padding:0}
.qw-footer__links .elementor-icon-list-item a:hover .elementor-icon-list-text{color:var(--qw-paper)}
.qw-footer__desc{color:var(--qw-grey)}
.qw-footer .qw-footer__desc p,.qw-footer .qw-footer__desc p:last-child{margin:18px 0 22px;max-width:32ch;font-size:17px;line-height:1.55}
.qw-footer__addr{color:var(--qw-grey)}
.qw-footer .qw-footer__addr p,.qw-footer .qw-footer__addr p:last-child{margin:0 0 26px;font-size:14px;line-height:1.6}
.qw-footer .qw-footer__social.elementor-widget{text-align:left}
.qw-footer .qw-footer__social .elementor-social-icons-wrapper{display:flex;justify-content:flex-start;gap:8px}
.qw-footer__social .elementor-grid-item{margin:0}
.qw-footer__social .elementor-social-icon{--icon-size:14px;--icon-padding:0;width:40px;height:40px;display:inline-grid;place-items:center;background:transparent;border:1px solid var(--qw-hair-d);border-radius:50%;color:rgba(237,234,228,.8);transition:border-color .3s,color .3s}
.qw-footer__social .elementor-social-icon i,.qw-footer__social .elementor-social-icon svg{color:inherit;fill:currentColor;font-size:14px;width:14px;height:14px}
.qw-footer__social .elementor-social-icon:hover{border-color:var(--qw-paper);color:var(--qw-paper)}
.e-con.qw-footer .e-con.qw-footer__bottom{flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding-top:28px;font-family:var(--qw-f-mono);font-size:12px;color:var(--qw-grey)}
.qw-footer__legal p{margin:0;font-family:var(--qw-f-mono);font-size:12px;color:var(--qw-grey)}
.e-con.qw-pays{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;width:auto}
.qw-pay.elementor-widget{width:44px}
.qw-pay img{display:block;width:44px;height:44px;margin:-7px 0;max-width:none}
.qw-wordmark{font-family:var(--qw-f-display);font-weight:700;font-size:clamp(4rem,17vw,17rem);letter-spacing:-.07em;line-height:.8;margin:56px 0 0;color:var(--qw-ink-3);user-select:none;white-space:nowrap}
@media (max-width:1024px){.e-con.qw-footer .e-con.qw-footer__grid{grid-template-columns:1fr 1fr}.e-con.qw-footer__brand{grid-column:1/-1}}
@media (max-width:767px){.e-con.qw-footer .e-con.qw-footer__grid{grid-template-columns:1fr}}/* End custom CSS */