:root{
      --teal:#46C6C3;--teal-strong:#0EA8A5;--teal-text:#087F7D;
      --navy:#1F2935;--deep:#073845;--deeper:#042630;--green:#8AC646;
      --mint:#ECF9F9;--white:#FFFFFF;--ink:#1F2935;--muted:#5D6874;
      --soft:#F6FBFB;--line:rgba(31,41,53,.12);--line-teal:rgba(70,198,195,.30);
      --shadow-sm:0 10px 28px rgba(5,47,59,.08);--shadow-md:0 22px 60px rgba(5,47,59,.12);--shadow-lg:0 34px 90px rgba(4,38,48,.18);
      --container:1180px;--r-sm:12px;--r-md:18px;--r-lg:26px;--r-xl:34px;
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:#fff;color:var(--ink);font-family:"ID Grotesk","Manrope",Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
    body.nav-open{overflow:hidden}
    img,svg{display:block;max-width:100%}
    a{color:inherit;text-decoration:none}
    button,input,textarea,select{font:inherit}
    button{cursor:pointer}
    :focus-visible{outline:3px solid var(--teal);outline-offset:3px}
    .skip-link{position:fixed;z-index:999;top:-80px;left:16px;padding:10px 16px;border-radius:10px;background:#fff;color:var(--navy);box-shadow:var(--shadow-sm)}
    .skip-link:focus{top:16px}
    .page{width:100%;overflow:hidden}
    .container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}
    .section{padding:94px 0}
    .section-sm{padding:68px 0}
    .soft{background:radial-gradient(circle at 10% 0%,rgba(70,198,195,.12),transparent 24%),linear-gradient(180deg,#fff,#f5fbfb)}
    .mint{background:var(--mint)}
    .dark{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 90% 10%,rgba(70,198,195,.20),transparent 28%),radial-gradient(circle at 10% 80%,rgba(138,198,70,.08),transparent 25%),linear-gradient(135deg,var(--deeper),var(--deep))}
    .dark::before{position:absolute;inset:0;content:"";pointer-events:none;opacity:.25;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
    .eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 15px;color:var(--teal-text);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
    .eyebrow::before{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--teal);content:"";box-shadow:0 0 0 5px rgba(70,198,195,.14)}
    .eyebrow.light{color:#8BE5E1}
    h1,h2,h3,p{margin-top:0}
    .heading{margin:0;color:var(--navy);font-size:clamp(32px,4.5vw,54px);font-weight:800;letter-spacing:-.045em;line-height:1.06}
    .heading.light{color:#fff}
    .lead{max-width:780px;margin:19px 0 0;color:var(--muted);font-size:18px;line-height:1.76}
    .lead.light{color:rgba(255,255,255,.74)}
    .centre{text-align:center}.centre .heading,.centre .lead{margin-inline:auto}
    .buttons{display:flex;flex-wrap:nowrap;gap:14px;margin-top:28px}.buttons .button{white-space:nowrap}
    .button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:9px;padding:0 23px;border:1px solid transparent;border-radius:var(--r-sm);font-size:14px;font-weight:800;line-height:1;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}
    .button:hover{transform:translateY(-2px)}
    .button.primary{color:#06323B;background:linear-gradient(135deg,var(--teal),#71DAD6);box-shadow:0 16px 34px rgba(70,198,195,.27)}
    .button.dark-btn{color:#fff;background:var(--deep)}
    .button.outline{border-color:rgba(31,41,53,.20);color:var(--navy);background:#fff}
    .button.light-outline{border-color:rgba(255,255,255,.42);color:#fff;background:rgba(255,255,255,.04)}

    .topbar{color:rgba(255,255,255,.78);border-bottom:1px solid rgba(255,255,255,.08);background:var(--navy);font-size:12px}
    .topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}
    .topbar-note{display:inline-flex;align-items:center;gap:8px}.topbar-note::before{width:7px;height:7px;border-radius:50%;background:var(--green);content:"";box-shadow:0 0 0 4px rgba(138,198,70,.10)}
    .topbar a{color:#fff;font-weight:800}
    .site-header{position:sticky;z-index:90;top:0;border-bottom:1px solid rgba(255,255,255,.10);background:var(--navy);box-shadow:0 12px 30px rgba(0,0,0,.14)}
    .nav{min-height:78px;display:flex;align-items:center;gap:26px}
    .brand{display:inline-flex;align-items:center;flex:0 0 auto}.brand-logo{width:205px;height:auto}
    .nav-menu{display:flex;align-items:center;gap:25px;margin-left:auto}
    .nav-menu a{color:rgba(255,255,255,.84);font-size:14px;font-weight:700}.nav-menu a:hover,.nav-menu a[aria-current="page"]{color:var(--teal)}
    .nav-actions{display:flex;align-items:center;gap:12px}
    .nav-toggle{display:none;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:11px;color:#fff;background:rgba(255,255,255,.06)}
    .nav-toggle svg{width:22px;height:22px;stroke:currentColor}

    .hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 18%,rgba(70,198,195,.28),transparent 22%),radial-gradient(circle at 10% 5%,rgba(138,198,70,.10),transparent 24%),linear-gradient(135deg,#EFFCFC 0%,#FFF 50%,#EDF9F9 100%)}
    .hero::after{position:absolute;right:-290px;bottom:-410px;width:800px;height:800px;border:1px solid rgba(70,198,195,.14);border-radius:50%;content:"";box-shadow:0 0 0 80px rgba(70,198,195,.022),0 0 0 160px rgba(70,198,195,.015),0 0 0 240px rgba(70,198,195,.010)}
    .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:58px;padding:86px 0 78px}
    .hero-copy{max-width:650px}
    .hero h1{margin:0;color:var(--navy);font-size:clamp(47px,6vw,76px);font-weight:800;letter-spacing:-.055em;line-height:.99}
    .hero-text{max-width:650px;margin:24px 0 0;color:var(--muted);font-size:18px;line-height:1.74}
    .hero-points{display:flex;flex-wrap:wrap;gap:12px 20px;margin:23px 0 0;padding:0;list-style:none}
    .hero-points li{display:inline-flex;align-items:center;gap:8px;color:#42515D;font-size:13px;font-weight:750}
    .hero-points li::before{display:grid;width:18px;height:18px;place-items:center;border-radius:50%;color:#fff;background:var(--teal-strong);content:"✓";font-size:10px;font-weight:900}
    .hero-contact{display:flex;flex-wrap:wrap;gap:16px;margin-top:22px;color:#485762;font-size:13px;font-weight:700}.hero-contact a{color:var(--navy);font-weight:800}
    .hero-visual{position:relative;min-height:520px;display:grid;place-items:center}
    .housing-console{position:relative;width:min(100%,520px);padding:27px;border:1px solid rgba(255,255,255,.78);border-radius:28px;background:rgba(255,255,255,.90);box-shadow:var(--shadow-lg);backdrop-filter:blur(12px)}
    .housing-console::before{position:absolute;right:-55px;bottom:-55px;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,rgba(70,198,195,.35),transparent 68%);content:"";pointer-events:none}
    .housing-console .console-top{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:18px}
    .housing-console .console-title{color:#6d7781;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
    .housing-console .console-status{display:inline-flex;align-items:center;gap:7px;color:#42515d;font-size:11px;font-weight:800}
    .housing-console .console-status::before{width:8px;height:8px;border-radius:50%;background:var(--green);content:"";box-shadow:0 0 0 4px rgba(138,198,70,.12)}
    .housing-console .housing-strip{position:relative;z-index:1;display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:14px;align-items:center;margin-top:22px;padding:17px;border-radius:17px;background:linear-gradient(135deg,var(--deeper),var(--deep));color:#fff}
    .housing-console .housing-strip-icon{display:grid;width:54px;height:54px;place-items:center;align-self:center;margin:0;border-radius:16px;color:var(--teal);background:rgba(70,198,195,.12);line-height:0}
    .housing-console .housing-strip-icon svg{display:block;width:30px;height:30px;margin:0;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
    .housing-console .housing-strip strong{display:block;font-size:14px;line-height:1.35}
    .housing-console .housing-strip>div>span{display:block;margin-top:4px;color:rgba(255,255,255,.62);font-size:10px;line-height:1.45}
    .housing-console .housing-strip>.status-pill{display:inline-flex;align-items:center;justify-content:center;align-self:center;margin:0;padding:6px 9px;border-radius:999px;color:#dff6c9;background:rgba(138,198,70,.13);font-size:9px;font-weight:850;letter-spacing:.06em;line-height:1.2;text-transform:uppercase;white-space:nowrap}
    .housing-console .control-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px}
    .housing-console .control-card{min-height:116px;padding:16px;border-radius:16px;background:#f5fafa}
    .housing-console .control-card svg{width:26px;height:26px;color:var(--teal-strong);fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
    .housing-console .control-card strong{display:block;margin-top:15px;color:var(--navy);font-size:12px}
    .housing-console .control-card span{display:block;margin-top:4px;color:var(--muted);font-size:9.5px;line-height:1.4}
    .housing-console .console-strip{position:relative;z-index:1;display:flex;align-items:center;gap:12px;margin-top:14px;padding:14px 15px;border:1px solid rgba(31,41,53,.08);border-radius:15px;background:#fff;box-shadow:var(--shadow-md)}
    .housing-console .console-strip svg{width:26px;height:26px;flex:0 0 26px;color:var(--teal-strong);fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
    .housing-console .console-strip strong{display:block;color:var(--navy);font-size:11px}
    .housing-console .console-strip span{display:block;margin-top:3px;color:var(--muted);font-size:9.5px;line-height:1.4}

    .tech-strip{border-top:1px solid rgba(31,41,53,.07);border-bottom:1px solid rgba(31,41,53,.07);background:#fff}
    .tech-inner{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;padding:18px 0}
    .tech-chip{padding:9px 13px;border:1px solid rgba(31,41,53,.09);border-radius:999px;background:#fff;color:#53606B;font-size:12px;font-weight:800}

    .answer-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:64px;align-items:start}
    .answer-box{padding:28px;border:1px solid rgba(70,198,195,.38);border-left:5px solid var(--teal-strong);border-radius:18px;background:var(--mint);box-shadow:0 14px 36px rgba(5,47,59,.06)}
    .answer-label{display:block;margin-bottom:9px;color:var(--teal-strong);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
    .answer-box p{margin:0;color:#34434E;font-size:17px;line-height:1.7}
    .challenge-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}
    .challenge{padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-sm)}
    .challenge svg{width:27px;height:27px;margin-bottom:15px;stroke:var(--teal-strong);fill:none;stroke-width:1.8}
    .challenge h3{margin:0;color:var(--navy);font-size:16px}.challenge p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.58}

    .service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-top:42px}
    .service-card{display:flex;min-height:285px;flex-direction:column;padding:26px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
    .service-card:hover{transform:translateY(-4px);border-color:var(--line-teal);box-shadow:var(--shadow-md)}
    .icon{display:grid;width:49px;height:49px;place-items:center;margin-bottom:22px;border-radius:15px;background:var(--mint)}.icon svg{width:25px;height:25px;stroke:var(--teal-strong);fill:none;stroke-width:1.8}
    .service-card h3{margin:0;color:var(--navy);font-size:18px}.service-card p{margin:10px 0 22px;color:var(--muted);font-size:13.5px;line-height:1.63}
    .text-link{display:inline-flex;align-items:center;gap:8px;margin-top:auto;color:var(--teal-text);font-size:12.5px;font-weight:800}.text-link span{transition:transform .18s ease}.text-link:hover span{transform:translateX(3px)}

    .split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
    .copy p{margin:18px 0 0;color:var(--muted);font-size:16px;line-height:1.78}
    .checks{display:grid;gap:12px;margin:24px 0 0;padding:0;list-style:none}.checks li{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;color:#42515D;font-size:14px;line-height:1.55}.checks li::before{display:grid;width:20px;height:20px;place-items:center;border-radius:50%;content:"✓";color:#073845;background:var(--teal);font-size:11px;font-weight:900}
    .feature-stack{display:grid;gap:14px}.feature-card{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start;padding:23px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:var(--shadow-sm)}
    .feature-card h3{margin:0;color:var(--navy);font-size:17px}.feature-card p{margin:7px 0 0;color:var(--muted);font-size:13.5px;line-height:1.6}
    .feature-card .icon{margin:0;width:52px;height:52px}

    .security-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
    .security-panel{padding:30px;border:1px solid rgba(255,255,255,.13);border-radius:24px;background:rgba(255,255,255,.06);box-shadow:0 26px 70px rgba(0,0,0,.15);backdrop-filter:blur(8px)}
    .security-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none}.security-list li{padding:15px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.045);color:rgba(255,255,255,.84);font-size:12.5px;font-weight:700;line-height:1.45}

    .continuity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:40px}.continuity-card{padding:27px;border:1px solid var(--line);border-radius:21px;background:#fff;box-shadow:var(--shadow-sm)}.continuity-card h3{margin:0;color:var(--navy);font-size:18px}.continuity-card p{margin:10px 0 0;color:var(--muted);font-size:13.5px;line-height:1.65}

    .model-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:40px}.model{position:relative;padding:30px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm)}.model.featured{border-color:rgba(70,198,195,.42);background:linear-gradient(180deg,#fff,var(--mint))}.model-badge{display:inline-flex;margin-bottom:17px;padding:7px 10px;border-radius:999px;color:#28605F;background:rgba(70,198,195,.18);font-size:10px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.model h3{margin:0;font-size:24px;color:var(--navy)}.model p{margin:12px 0 0;color:var(--muted);font-size:14px;line-height:1.68}.model > .text-link{margin-top:24px}

    .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}.why{padding:25px;border:1px solid rgba(255,255,255,.12);border-radius:19px;background:rgba(255,255,255,.055)}.why strong{display:block;color:#fff;font-size:16px}.why p{margin:8px 0 0;color:rgba(255,255,255,.66);font-size:13px;line-height:1.55}

    .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:42px}.step{position:relative;padding:25px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow-sm)}.step-num{display:grid;width:36px;height:36px;place-items:center;margin-bottom:18px;border-radius:50%;color:#06323B;background:var(--teal);font-size:12px;font-weight:900}.step h3{margin:0;color:var(--navy);font-size:17px}.step p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.58}

    .resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:40px}.resource{display:flex;min-height:250px;flex-direction:column;padding:27px;border:1px solid var(--line);border-radius:21px;background:#fff;box-shadow:var(--shadow-sm)}.resource-tag{display:inline-flex;align-self:flex-start;margin-bottom:17px;padding:7px 10px;border-radius:999px;background:var(--mint);color:var(--teal-text);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.resource h3{margin:0;color:var(--navy);font-size:20px;line-height:1.25}.resource p{margin:10px 0 20px;color:var(--muted);font-size:13.5px;line-height:1.6}

    .faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px;align-items:start}.faq-help{position:sticky;top:112px;padding:26px;border:1px solid rgba(70,198,195,.30);border-radius:20px;background:var(--mint)}.faq-help h3{margin:0;color:var(--navy);font-size:19px}.faq-help p{margin:9px 0 18px;color:var(--muted);font-size:13.5px;line-height:1.6}
    .faq{display:grid;gap:11px}.faq details{border:1px solid var(--line);border-radius:17px;background:#fff;overflow:hidden}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;color:var(--navy);font-size:15px;font-weight:800;list-style:none;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";flex:0 0 auto;color:var(--teal-text);font-size:23px;font-weight:500;line-height:1}.faq details[open] summary::after{content:"−"}.faq details p{margin:0;padding:0 22px 21px;color:var(--muted);font-size:13.8px;line-height:1.7}.faq details p a{color:var(--teal-text);font-weight:750;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

    .cta-grid{position:relative;z-index:2;display:grid;grid-template-columns:.88fr 1.12fr;gap:56px;align-items:start}.cta-copy .direct{display:grid;gap:10px;margin-top:26px}.cta-copy .direct a{display:flex;align-items:center;gap:11px;color:#fff;font-size:14px;font-weight:800}.cta-copy .direct small{display:block;color:rgba(255,255,255,.55);font-size:11px;font-weight:500}
    .form-panel{padding:29px;border:1px solid rgba(255,255,255,.17);border-radius:25px;background:rgba(255,255,255,.075);box-shadow:0 28px 70px rgba(0,0,0,.16);backdrop-filter:blur(10px)}.form-panel h3{margin:0;color:#fff;font-size:24px}.form-panel>p{margin:8px 0 0;color:rgba(255,255,255,.66);font-size:13px;line-height:1.55}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:22px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{color:rgba(255,255,255,.86);font-size:11px;font-weight:800}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(255,255,255,.20);border-radius:11px;color:#fff;background:rgba(3,31,41,.62);outline:0}.field input,.field select{height:48px;padding:0 13px}.field textarea{min-height:115px;padding:13px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:rgba(255,255,255,.68);opacity:1}.field select option{color:#111;background:#fff}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(70,198,195,.12)}.field-hint{color:rgba(255,255,255,.70);font-size:10.5px;line-height:1.4}.form-panel .button{width:100%;margin-top:16px}.privacy{margin:12px 0 0!important;color:rgba(255,255,255,.72)!important;font-size:10.8px!important;line-height:1.55!important}.privacy a,.form-fallback a{color:#fff;text-decoration:underline;text-underline-offset:2px}.form-fallback{margin:8px 0 0!important;color:rgba(255,255,255,.72)!important;font-size:10.8px!important;line-height:1.55!important}.form-status{min-height:18px;margin:9px 0 0!important;color:#BDEAE8!important;font-size:11px!important}

    .site-footer{padding:58px 0 28px;color:rgba(255,255,255,.69);background:#1F2935}.footer-grid{display:grid;grid-template-columns:1.45fr .75fr .75fr 1fr;gap:38px}.footer-about p{max-width:360px;margin:18px 0 0;font-size:13px;line-height:1.65}.footer-title{margin:0 0 14px;color:#fff;font-size:13px;font-weight:800}.footer-links{display:grid;gap:10px}.footer-links a{font-size:12.5px}.footer-links a:hover{color:var(--teal)}.footer-contact{display:grid;gap:9px;font-size:12.5px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:38px;padding-top:22px;border-top:1px solid rgba(255,255,255,.11);font-size:11px}.footer-bottom a{color:#fff}

    @media (max-width:1050px){
      .service-grid{grid-template-columns:repeat(2,1fr)}.why-grid{grid-template-columns:repeat(2,1fr)}
      .nav-menu{gap:16px}.nav-actions .button{display:none}
    }
    @media (max-width:900px){
      .section{padding:76px 0}.hero-grid,.answer-grid,.split,.security-grid,.faq-layout,.cta-grid{grid-template-columns:1fr;gap:42px}.hero-grid{padding:68px 0 70px}.hero-copy{max-width:760px}.hero-visual{min-height:auto}.housing-console{max-width:620px}.faq-help{position:static}.continuity-grid{grid-template-columns:1fr}.model-grid{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}.resource-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}
      .nav-toggle{display:grid;margin-left:auto}.nav-menu{position:fixed;z-index:100;top:116px;right:18px;left:18px;display:none;flex-direction:column;align-items:stretch;gap:0;padding:15px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:#1F2935;box-shadow:0 30px 70px rgba(0,0,0,.28)}.nav-menu.open{display:flex}.nav-menu a{padding:13px 10px;border-bottom:1px solid rgba(255,255,255,.08)}.nav-menu a:last-child{border-bottom:0}.nav-actions{display:none}
    }
    @media (max-width:640px){
      .container{width:min(calc(100% - 28px),var(--container))}.section{padding:64px 0}.section-sm{padding:54px 0}.topbar-inner{min-height:42px}.topbar-note{font-size:10.5px}.topbar-inner>span:last-child{display:none}.nav{min-height:72px}.brand-logo{width:175px}.nav-menu{top:114px;right:14px;left:14px}
      .hero-grid{padding:54px 0 58px}.hero h1{font-size:clamp(41px,13vw,58px)}.hero-text,.lead{font-size:16px}.hero-points{display:grid;gap:10px}.hero-contact{display:grid;gap:8px}.hero-visual{min-height:auto}.housing-console{padding:20px;border-radius:22px}.housing-console .housing-strip{grid-template-columns:48px minmax(0,1fr)}.housing-console .housing-strip .status-pill{grid-column:2;justify-self:start}.housing-console .control-grid{grid-template-columns:1fr}.tech-inner{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:15px 0;scrollbar-width:none}.tech-inner::-webkit-scrollbar{display:none}.tech-chip{flex:0 0 auto}
      .challenge-grid,.service-grid,.why-grid,.industries,.steps,.security-list,.form-grid{grid-template-columns:1fr}.service-card,.industry,.resource{min-height:0}.split,.security-grid{gap:36px}.feature-card{grid-template-columns:46px 1fr;padding:19px}.feature-card .icon{width:46px;height:46px}.faq summary{padding:18px;font-size:14px}.faq details p{padding:0 18px 18px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.buttons{display:grid}.button{width:100%}.form-panel{padding:22px}.field.full{grid-column:auto}.industry .text-link{margin-top:0}.current-label{margin-top:0}
    }
    @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* --- */

.eyebrow-light{color:#8BE5E1}

/* === Competitor-research enhancement pass: Housing Associations === */
.housing-hero-zone{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 20%,rgba(70,198,195,.30),transparent 22%),radial-gradient(circle at 10% 4%,rgba(138,198,70,.12),transparent 24%),linear-gradient(135deg,#effcfc 0%,#fff 50%,#edfafa 100%)}
.housing-hero-zone .hero{background:transparent}
.housingx-tech-strip{position:relative;z-index:3;padding:20px 0 38px;overflow:hidden;background:transparent;border:0}
.housingx-tech-window{width:min(calc(100% - 40px),var(--container));margin:auto;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.housingx-tech-track{display:flex;width:max-content;animation:housingTechLoop 42s linear infinite}
.housingx-tech-group{display:flex;gap:14px;padding-right:14px}
.housingx-tech-window:hover .housingx-tech-track,.housingx-tech-window:focus-within .housingx-tech-track{animation-play-state:paused}
.housingx-tech-strip .tech-chip{display:flex;align-items:center;gap:12px;min-height:52px;padding:15px 22px;border:1px solid #eee;border-radius:14px;background:#fbfbfb;box-shadow:0 10px 28px rgba(31,41,53,.055);color:#171624;font-size:14.5px;font-weight:600;white-space:nowrap;flex:none}
.housingx-tech-strip .tech-chip svg{width:21px;height:21px;flex:0 0 21px;fill:none;stroke:var(--teal-strong);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.housingx-tech-strip .tech-chip>span{display:block}
@keyframes housingTechLoop{to{transform:translateX(-50%)}}
.housingx-answer{background:#fff}
.housingx-answer-grid{display:grid;grid-template-columns:.94fr 1.06fr;gap:34px;align-items:stretch}
.housingx-answer-panel{position:relative;overflow:hidden;padding:39px;border-radius:28px;color:#fff;background:radial-gradient(circle at 88% 10%,rgba(70,198,195,.22),transparent 28%),linear-gradient(145deg,var(--deeper),var(--deep));box-shadow:var(--shadow-md)}
.housingx-answer-panel h2{margin:0;color:#fff;font-size:clamp(32px,4vw,48px);letter-spacing:-.045em;line-height:1.07}
.housingx-answer-panel p{margin:18px 0 0;color:rgba(255,255,255,.72);font-size:15px;line-height:1.75}
.housingx-answer-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.housingx-answer-fact{position:relative;min-height:205px;padding:27px;border:1px solid var(--line);border-radius:21px;background:#fff;box-shadow:var(--shadow-sm)}
.housingx-mini-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;color:#075c5a;background:var(--mint);font-size:11px;font-weight:900;letter-spacing:.08em}
.housingx-answer-fact h3{margin:22px 0 0;color:var(--navy);font-size:18px}.housingx-answer-fact p{margin:9px 0 0;color:var(--muted);font-size:13px;line-height:1.62}
.housingx-network{background:radial-gradient(circle at 90% 0%,rgba(70,198,195,.12),transparent 25%),linear-gradient(180deg,#fff,#f6fbfb)}
.housingx-network-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-top:44px}
.housingx-network-card{min-height:250px;padding:27px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow-sm);transition:.18s ease}.housingx-network-card:hover{transform:translateY(-4px);border-color:var(--line-teal);box-shadow:var(--shadow-md)}
.housingx-line-icon{display:grid;width:56px;height:56px;place-items:center;border-radius:17px;color:var(--teal-text);background:var(--mint);font-size:25px;font-weight:800}.housingx-network-card h3{margin:21px 0 0;font-size:18px}.housingx-network-card p{margin:10px 0 0;color:var(--muted);font-size:13px;line-height:1.63}
.housingx-lifecycle-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:44px;align-items:center}.housingx-lifecycle-steps{display:grid;gap:12px}.housingx-lifecycle-steps article{display:grid;grid-template-columns:48px 1fr;gap:15px;padding:19px;border:1px solid rgba(31,41,53,.10);border-radius:17px;background:#fff;box-shadow:0 10px 26px rgba(5,47,59,.05)}.housingx-lifecycle-steps b{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;color:#fff;background:var(--deep);font-size:12px}.housingx-lifecycle-steps h3{margin:1px 0 0;font-size:16px}.housingx-lifecycle-steps p{margin:6px 0 0;color:var(--muted);font-size:12.5px;line-height:1.55}
.housingx-supporting-copy{max-width:850px;margin:18px 0 0;color:var(--muted);font-size:14px;line-height:1.72}
.dark .housingx-supporting-copy{color:rgba(255,255,255,.70)}
.housingx-priority-head{display:grid;grid-template-columns:.88fr 1.12fr;gap:50px;align-items:end;position:relative;z-index:1}.housingx-priority-table{position:relative;z-index:1;margin-top:40px;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(255,255,255,.045)}.housingx-priority-row{display:grid;grid-template-columns:.45fr 1.15fr 1.2fr .6fr;border-bottom:1px solid rgba(255,255,255,.09)}.housingx-priority-row:last-child{border-bottom:0}.housingx-priority-row>span,.housingx-priority-row>strong{padding:18px 19px;color:rgba(255,255,255,.74);font-size:12.5px;line-height:1.55;border-right:1px solid rgba(255,255,255,.07)}.housingx-priority-row>*:last-child{border-right:0}.housingx-priority-row strong{color:#fff}.housingx-priority-row.heading-row{background:rgba(70,198,195,.11)}.housingx-priority-row.heading-row span{color:#9ce8e4;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.housingx-roadmap-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:46px;align-items:center}.housingx-roadmap-note{display:grid;gap:5px;margin-top:25px;padding:17px 19px;border-left:4px solid var(--teal-strong);border-radius:0 14px 14px 0;background:var(--mint)}.housingx-roadmap-note strong{font-size:13px}.housingx-roadmap-note span{color:var(--muted);font-size:12px;line-height:1.55}.housingx-roadmap-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.housingx-roadmap-cards article{min-height:205px;padding:24px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:var(--shadow-sm)}.housingx-roadmap-cards span{color:var(--teal-text);font-size:11px;font-weight:900;letter-spacing:.09em}.housingx-roadmap-cards h3{margin:17px 0 0;font-size:17px}.housingx-roadmap-cards p{margin:9px 0 0;color:var(--muted);font-size:12.5px;line-height:1.6}
.housingx-pricing-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:stretch}.housingx-pricing-card{padding:34px;border:1px solid var(--line-teal);border-radius:25px;background:#fff;box-shadow:var(--shadow-md)}.housingx-factor-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.housingx-factor{padding:20px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 10px 25px rgba(5,47,59,.045)}.housingx-factor b,.housingx-factor span{display:block}.housingx-factor b{font-size:14px}.housingx-factor span{margin-top:7px;color:var(--muted);font-size:12px;line-height:1.56}
.housingx-clients{background:#fff}.clients-shell{display:grid;grid-template-columns:.72fr 1.28fr;overflow:hidden;border-radius:30px;background:linear-gradient(145deg,var(--deeper),var(--deep));box-shadow:var(--shadow-lg)}.clients-intro{display:flex;min-height:330px;flex-direction:column;justify-content:center;padding:44px;color:#fff;background:radial-gradient(circle at 90% 15%,rgba(70,198,195,.20),transparent 28%)}.clients-intro h2{margin:0;color:#fff;font-size:clamp(31px,4vw,47px);line-height:1.06;letter-spacing:-.045em}.clients-intro p{margin:18px 0 26px;color:rgba(255,255,255,.69);font-size:15px;line-height:1.7}.clients-intro .button{align-self:flex-start}.clients-carousel{min-width:0;display:flex;align-items:center;padding:36px 0;background:rgba(255,255,255,.025)}.clients-window{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.clients-track{display:flex;width:max-content;gap:18px;animation:housingClientLoop 34s linear infinite}.clients-window:hover .clients-track,.clients-window:focus-within .clients-track{animation-play-state:paused}.client-slide{width:270px;min-width:270px;height:175px;display:grid;place-items:center;padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:21px;background:transparent;transition:.22s ease}.client-slide:hover,.client-slide:focus-within{background:#fff;transform:translateY(-2px);box-shadow:0 12px 34px rgba(0,25,35,.16)}.client-slide img{display:block;width:auto;height:auto;max-width:215px;max-height:98px;object-fit:contain;filter:grayscale(1) brightness(1.7) contrast(.75);opacity:.70;transition:.22s ease}.client-slide:hover img,.client-slide:focus-within img{filter:none;opacity:1;transform:scale(1.04)}.client-slide.logo-toughcad img{max-width:225px;max-height:86px}.client-slide.logo-eurotronic img{max-width:225px;max-height:80px}.client-slide.logo-flextro img{max-width:215px;max-height:78px}.client-slide.logo-caribou img{max-width:225px;max-height:76px}.client-slide.logo-at img{max-width:165px;max-height:105px}.client-slide.logo-foserve img{max-width:150px;max-height:108px}.client-slide.logo-360 img{max-width:205px;max-height:72px}@keyframes housingClientLoop{to{transform:translateX(calc(-50% - 9px))}}
.housingx-reviews-grid{display:grid;grid-template-columns:.72fr repeat(3,1fr);gap:18px;margin-top:48px}.housingx-review-summary,.housingx-review{min-height:315px;padding:30px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow-sm)}.housingx-review-summary{display:flex;flex-direction:column;justify-content:space-between;color:#fff;border-color:transparent;background:linear-gradient(145deg,var(--deeper),var(--deep))}.housingx-review-summary h3{margin:0;font-size:25px}.housingx-review-summary p{margin:15px 0 0;color:rgba(255,255,255,.68);font-size:12.5px;line-height:1.65}.housingx-review-summary a{color:var(--teal);font-size:12px;font-weight:800}.housingx-stars{margin-top:17px;color:#f5ae2b;letter-spacing:.07em;font-size:20px}.housingx-review-head{display:flex;align-items:center;gap:12px}.housingx-review-head>span{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;color:#fff;background:var(--teal-strong);font-size:13px;font-weight:900}.housingx-review-head strong,.housingx-review-head small{display:block}.housingx-review-head strong{font-size:14px}.housingx-review-head small{margin-top:3px;color:var(--muted);font-size:10px}.housingx-review blockquote{margin:23px 0 0;color:#4f5d68;font-size:13px;line-height:1.7}
.sticky-mobile{display:none}
@media(max-width:1040px){.housingx-answer-grid,.housingx-lifecycle-grid,.housingx-priority-head,.housingx-roadmap-grid,.housingx-pricing-grid{grid-template-columns:1fr}.housingx-network-grid{grid-template-columns:repeat(2,1fr)}.housingx-priority-row{grid-template-columns:.45fr 1fr 1fr .6fr}.clients-shell{grid-template-columns:1fr}.clients-intro{min-height:auto}.housingx-reviews-grid{grid-template-columns:repeat(2,1fr)}.housingx-review-summary{grid-column:1/-1;min-height:auto}}
@media(max-width:720px){.housingx-tech-window{width:calc(100% - 28px)}.housingx-tech-track{animation-duration:29s}.housingx-tech-group{gap:10px;padding-right:10px}.housingx-tech-strip{padding:16px 0 30px}.housingx-tech-strip .tech-chip{min-height:46px;padding:12px 16px;gap:9px;font-size:13px}.housingx-tech-strip .tech-chip svg{width:18px;height:18px;flex-basis:18px}.housingx-answer-facts,.housingx-network-grid,.housingx-roadmap-cards,.housingx-factor-grid,.housingx-reviews-grid{grid-template-columns:1fr}.housingx-answer-panel{padding:30px 24px}.housingx-priority-table{overflow-x:auto}.housingx-priority-row{min-width:850px}.clients-intro{padding:32px 25px}.client-slide{width:calc(100vw - 65px);min-width:270px;height:150px}.housingx-review-summary,.housingx-review{min-height:auto}.sticky-mobile{position:fixed;z-index:100;right:0;bottom:0;left:0;display:none;gap:9px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(31,41,53,.1);background:rgba(255,255,255,.96);box-shadow:0 -12px 30px rgba(5,47,59,.10);backdrop-filter:blur(12px)}.sticky-mobile.is-visible{display:flex}.sticky-mobile .button{min-height:50px;flex:1;padding:0 10px;font-size:11.5px}body{padding-bottom:72px}}
@media(prefers-reduced-motion:reduce){.housingx-tech-track,.clients-track{animation:none!important;transform:none!important}.housingx-tech-window,.clients-window{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.client-slide,.housingx-network-card{transition:none}}

/* --- */

.resource-grid,.resources-grid,.guidance-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}@media(max-width:1100px){.resource-grid,.resources-grid,.guidance-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:620px){.resource-grid,.resources-grid,.guidance-grid{grid-template-columns:1fr!important}}

/* --- */

/* === Housing top-10 competitor gap upgrade === */
.housingx-workflows{background:radial-gradient(circle at 92% 8%,rgba(70,198,195,.11),transparent 24%),linear-gradient(180deg,#fff 0%,#f7fbfb 100%)}
.housingx-workflow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:46px}
.housingx-workflow-card{display:flex;min-height:255px;flex-direction:column;padding:27px;border:1px solid var(--line);border-radius:21px;background:#fff;box-shadow:var(--shadow-sm);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.housingx-workflow-card:hover{transform:translateY(-4px);border-color:var(--line-teal);box-shadow:var(--shadow-md)}
.housingx-workflow-icon{display:grid;width:56px;height:56px;place-items:center;border-radius:17px;color:var(--teal-text);background:var(--mint)}
.housingx-workflow-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.housingx-workflow-card h3{margin:21px 0 0;color:var(--navy);font-size:18px;line-height:1.28}
.housingx-workflow-card p{margin:10px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
.housingx-workflow-note{max-width:930px;margin:28px auto 0;padding:18px 20px;border:1px solid rgba(70,198,195,.34);border-radius:16px;background:var(--mint);color:#40515b;font-size:12.5px;line-height:1.62}
.housingx-workflow-note strong{color:var(--navy)}

.housingx-improvement{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 88% 8%,rgba(70,198,195,.20),transparent 27%),radial-gradient(circle at 4% 92%,rgba(138,198,70,.08),transparent 24%),linear-gradient(135deg,var(--deeper),var(--deep))}
.housingx-improvement::before{position:absolute;inset:0;pointer-events:none;content:"";opacity:.24;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 88%)}
.housingx-improvement>.container{position:relative;z-index:1}
.housingx-improvement-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:48px;align-items:center}
.housingx-improvement-copy p:not(.eyebrow){margin:18px 0 0;color:rgba(255,255,255,.72);font-size:16px;line-height:1.75}
.housingx-improvement-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.housingx-improvement-card{min-height:215px;padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:19px;background:rgba(255,255,255,.05)}
.housingx-improvement-card span{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;color:var(--teal);background:rgba(70,198,195,.11);font-size:18px;font-weight:900}
.housingx-improvement-card h3{margin:19px 0 0;color:#fff;font-size:17px;line-height:1.3}
.housingx-improvement-card p{margin:9px 0 0;color:rgba(255,255,255,.65);font-size:12.5px;line-height:1.62}
.housingx-improvement-note{margin-top:24px;padding:15px 17px;border:1px solid rgba(70,198,195,.28);border-radius:14px;background:rgba(70,198,195,.07);color:rgba(255,255,255,.69);font-size:11.8px;line-height:1.62}

.housingx-tiers{background:var(--mint)}
.housingx-tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:44px}
.housingx-tier-card{position:relative;min-height:285px;padding:28px;border:1px solid rgba(31,41,53,.11);border-radius:21px;background:#fff;box-shadow:var(--shadow-sm)}
.housingx-tier-card.featured{color:#fff;border-color:var(--deep);background:linear-gradient(145deg,var(--deeper),var(--deep));box-shadow:var(--shadow-md)}
.housingx-tier-label{display:inline-flex;padding:7px 11px;border-radius:999px;color:var(--teal-text);background:var(--mint);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.housingx-tier-card.featured .housingx-tier-label{color:var(--teal);background:rgba(70,198,195,.13)}
.housingx-tier-card h3{margin:23px 0 0;color:var(--navy);font-size:22px}
.housingx-tier-card.featured h3{color:#fff}
.housingx-tier-card p{margin:11px 0 0;color:var(--muted);font-size:13.5px;line-height:1.65}
.housingx-tier-card.featured p{color:rgba(255,255,255,.70)}
.housingx-tier-card ul{display:grid;gap:9px;margin:19px 0 0;padding:0;list-style:none}
.housingx-tier-card li{display:flex;gap:8px;color:#46545f;font-size:12.5px;line-height:1.5}
.housingx-tier-card li::before{content:"✓";color:var(--teal-text);font-weight:900}
.housingx-tier-card.featured li{color:rgba(255,255,255,.82)}
.housingx-tier-card.featured li::before{color:var(--teal)}
.housingx-adoption{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:16px;align-items:center;margin-top:28px;padding:22px 24px;border:1px solid rgba(70,198,195,.40);border-radius:19px;background:#fff;box-shadow:0 13px 32px rgba(5,47,59,.065)}
.housingx-adoption-icon{display:grid;width:56px;height:56px;place-items:center;border-radius:16px;color:var(--teal-text);background:var(--mint)}
.housingx-adoption-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.housingx-adoption strong{display:block;color:var(--navy);font-size:16px}
.housingx-adoption p{margin:5px 0 0;color:var(--muted);font-size:12.5px;line-height:1.6}

.housingx-buyer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:38px}
.housingx-buyer-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;padding:19px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 10px 25px rgba(5,47,59,.045)}
.housingx-buyer-number{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;color:#fff;background:var(--deep);font-size:12px;font-weight:900}
.housingx-buyer-card h3{margin:1px 0 0;color:var(--navy);font-size:15px}
.housingx-buyer-card p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.57}

@media(max-width:1040px){
  .housingx-workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .housingx-improvement-grid{grid-template-columns:1fr}
  .housingx-tier-grid{grid-template-columns:1fr}
  .housingx-adoption{grid-template-columns:56px minmax(0,1fr)}
  .housingx-adoption .button{grid-column:2;width:max-content}
}
@media(max-width:720px){
  .housingx-workflow-grid,.housingx-improvement-cards,.housingx-buyer-grid{grid-template-columns:1fr}
  .housingx-workflow-card,.housingx-improvement-card,.housingx-tier-card{min-height:auto}
  .housingx-adoption{grid-template-columns:1fr;padding:21px}
  .housingx-adoption .button{grid-column:auto;width:100%}
}

/* --- */

/* Competitor-research enhancements: resident communications, digital inclusion and service-desk experience */
.housingx-resident-comms{background:radial-gradient(circle at 8% 4%,rgba(70,198,195,.12),transparent 24%),linear-gradient(180deg,#eefafa 0%,#f8fdfd 100%)}
.housingx-resident-comms-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-top:44px}
.housingx-resident-comms-card{min-height:275px;padding:26px;border:1px solid rgba(31,41,53,.11);border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(5,47,59,.07)}
.housingx-resident-comms-icon{display:grid;width:54px;height:54px;place-items:center;border-radius:16px;color:var(--teal-strong);background:var(--mint)}
.housingx-resident-comms-icon svg{width:28px;height:28px;fill:none;stroke:var(--teal-strong);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.housingx-resident-comms-card h3{margin:21px 0 0;color:var(--navy);font-size:18px;line-height:1.28}
.housingx-resident-comms-card p{margin:10px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
.housingx-resident-comms-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;align-items:start;margin-top:22px;padding:18px 20px;border:1px solid rgba(70,198,195,.34);border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(5,47,59,.045)}
.housingx-resident-comms-note strong{color:var(--navy);font-size:13px;white-space:nowrap}
.housingx-resident-comms-note span{color:var(--muted);font-size:12px;line-height:1.6}
.housingx-service-desk-head{display:grid;grid-template-columns:1fr .92fr;gap:42px;align-items:end}
.housingx-service-desk-head .lead{margin:0}
.housingx-service-desk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-top:42px}
.housingx-service-desk-card{position:relative;min-height:255px;padding:27px;border:1px solid rgba(70,198,195,.28);border-radius:20px;background:#fff;box-shadow:0 11px 30px rgba(5,47,59,.065)}
.housingx-service-desk-num{display:inline-grid;width:42px;height:42px;place-items:center;border-radius:13px;color:#06323b;background:linear-gradient(135deg,var(--teal),#9ce7e4);font-size:12px;font-weight:900}
.housingx-service-desk-card h3{margin:20px 0 0;color:var(--navy);font-size:18px;line-height:1.28}
.housingx-service-desk-card p{margin:10px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
@media(max-width:1040px){.housingx-resident-comms-grid,.housingx-service-desk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.housingx-service-desk-head{grid-template-columns:1fr;gap:16px}.housingx-service-desk-head .lead{margin-top:0}}
@media(max-width:620px){.housingx-resident-comms-grid,.housingx-service-desk-grid{grid-template-columns:1fr;gap:14px}.housingx-resident-comms-card,.housingx-service-desk-card{min-height:0;padding:22px}.housingx-resident-comms-note{grid-template-columns:1fr}.housingx-resident-comms-note strong{white-space:normal}}

/* --- */

body.nav-open { overflow: hidden; }


    /* Announcement bar */
    .topbar { color: rgba(255, 255, 255, 0.78); border-bottom: 1px solid rgba(255, 255, 255, 0.08); background: #051b24; font-size: 12px; }

    .topbar-inner { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }

    .topbar-promise { display: inline-flex; align-items: center; gap: 8px; }

    .topbar-promise::before { width: 7px; height: 7px; border-radius: 50%; background: var(--brand-green); content: ""; box-shadow: 0 0 0 4px rgba(138, 198, 70, 0.10); }

    .topbar a { color: var(--brand-white); font-weight: 800; }


    /* Header */
    .site-header {
      position: sticky;
      z-index: 90;
      top: 0;
      border-bottom: 1px solid rgba(255, 255, 255, 0.10);
      background: #07222d;
      box-shadow: 0 12px 30px rgba(0, 0, 0, 0.14);
    }

    .nav { min-height: 78px; display: flex; align-items: center; gap: 26px; }

    .brand {
      display: inline-flex;
      flex: 0 0 auto;
      align-items: center;
      line-height: 1;
    }

    .brand-logo {
      display: block;
      width: 205px;
      max-width: 100%;
      height: auto;
      object-fit: contain;
    }

    .site-footer .brand-logo {
      width: 195px;
    }

    .nav-menu { display: flex; align-items: center; gap: 25px; margin-left: auto; }

    .nav-menu a { color: rgba(255, 255, 255, 0.84); font-size: 14px; font-weight: 700; transition: color 160ms ease; }

    .nav-menu a:hover { color: var(--brand-teal); }

    .nav-actions { display: flex; align-items: center; gap: 12px; }

    .nav-item { position: relative; }

    .nav-item > a { display: inline-flex; align-items: center; gap: 6px; }

    .nav-item .caret { width: 10px; height: 10px; stroke: currentColor; stroke-width: 2.2; fill: none; stroke-linecap: round; stroke-linejoin: round; transition: transform 160ms ease; }

    .nav-item:hover .caret { transform: rotate(180deg); }

    .nav-dropdown { position: absolute; top: calc(100% + 16px); left: -16px; min-width: 246px; display: grid; gap: 2px; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.10); border-radius: 14px; background: #0a2934; box-shadow: 0 24px 55px rgba(0, 0, 0, 0.35); opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity 160ms ease, transform 160ms ease, visibility 160ms; }

    .nav-dropdown::before { position: absolute; top: -16px; left: 0; right: 0; height: 16px; content: ""; }

    .nav-item:hover .nav-dropdown, .nav-item:focus-within .nav-dropdown { opacity: 1; visibility: visible; transform: translateY(0); }

    .nav-dropdown a { padding: 10px 13px; border-radius: 9px; font-size: 13px; }

    .nav-dropdown a:hover { background: rgba(70, 198, 195, 0.10); }

    .nav-toggle { display: none; width: 44px; height: 44px; place-items: center; border: 1px solid rgba(255, 255, 255, 0.24); border-radius: 11px; color: var(--brand-white); background: rgba(255, 255, 255, 0.06); }


    /* Footer */
    .site-footer {
      position: relative;
      overflow: hidden;
      padding: 76px 0 26px;
      color: var(--brand-white);
      background:
        radial-gradient(circle at 88% 0%, rgba(70, 198, 195, 0.14), transparent 30%),
        radial-gradient(circle at 4% 100%, rgba(138, 198, 70, 0.07), transparent 26%),
        linear-gradient(160deg, #07222d, #051b24);
    }

    .site-footer::before { position: absolute; inset: 0; pointer-events: none; content: ""; opacity: 0.25; background-image: linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px); background-size: 52px 52px; mask-image: linear-gradient(to bottom, black, transparent 78%); }

    .site-footer .container { position: relative; z-index: 1; }

    .footer-grid { display: grid; grid-template-columns: 1.35fr repeat(4, 1fr); gap: 42px; }

    .footer-about { max-width: 300px; }

    .footer-about p { margin: 20px 0 0; color: rgba(255, 255, 255, 0.60); font-size: 13px; line-height: 1.7; }

    .footer-contact-strip { display: grid; grid-template-columns: 1.05fr 1.05fr 1.35fr; gap: 14px; margin-bottom: 58px; padding: 22px; border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 22px; background: rgba(255, 255, 255, 0.03); }

    .footer-contact-item { display: flex; align-items: center; gap: 15px; padding: 6px 10px; }

    .footer-contact-item + .footer-contact-item { border-left: 1px solid rgba(255, 255, 255, 0.08); padding-left: 26px; }

    .fci-icon { display: grid; flex: none; width: 48px; height: 48px; place-items: center; border: 1px solid rgba(70, 198, 195, 0.35); border-radius: 15px; background: rgba(70, 198, 195, 0.10); }

    .fci-icon svg { width: 22px; height: 22px; stroke: var(--brand-teal); fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

    .footer-contact-item small { display: block; color: rgba(255, 255, 255, 0.45); font-size: 10px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }

    .footer-contact-item strong { display: block; margin-top: 4px; color: var(--brand-white); font-size: 15px; line-height: 1.4; }

    a.footer-contact-item:hover strong { color: var(--brand-teal); }

    .footer-social { margin-top: 28px; }

    .footer-social h3 { margin: 0 0 14px; }

    .footer-social-links { display: flex; gap: 10px; }

    .footer-social-links a { display: grid; width: 42px; height: 42px; place-items: center; border: 1.5px solid var(--brand-teal); border-radius: 50%; color: var(--brand-teal); transition: background 160ms ease, color 160ms ease; }

    .footer-social-links a:hover { background: var(--brand-teal); }

    .footer-social-links a:hover svg { fill: #07222d; }

    .footer-social-links svg { width: 18px; height: 18px; fill: currentColor; }

    .site-footer h3 { margin: 0 0 18px; color: var(--brand-teal); font-size: 12px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }

    .site-footer li a { transition: color 160ms ease; }

    .site-footer ul { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; }

    .site-footer li, .site-footer li a { color: rgba(255, 255, 255, 0.60); font-size: 13px; line-height: 1.45; }

    .site-footer a:hover { color: var(--brand-teal); }

    .footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 52px; padding-top: 22px; border-top: 1px solid rgba(255, 255, 255, 0.09); color: rgba(255, 255, 255, 0.44); font-size: 11px; }
@media (max-width: 900px){

      .nav-toggle { display: grid; margin-left: auto; }

      .nav-menu {
        position: fixed;
        z-index: 110;
        top: 116px;
        right: 18px;
        left: 18px;
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        margin: 0;
        padding: 16px;
        border: 1px solid rgba(255, 255, 255, 0.10);
        border-radius: 18px;
        background: #07222d;
        box-shadow: 0 24px 55px rgba(0, 0, 0, 0.28);
      }

      .nav-menu.open { display: flex; }

      .nav-menu a { padding: 13px 11px; color: rgba(255, 255, 255, 0.86); }

      .nav-menu a:hover { color: var(--brand-teal); }

      .nav-item { display: flex; flex-direction: column; }

      .nav-dropdown { position: static; min-width: 0; padding: 0 0 8px 16px; border: 0; background: transparent; box-shadow: none; opacity: 1; visibility: visible; transform: none; transition: none; }

      .nav-dropdown a { padding: 9px 11px; }

      .nav-actions .button { display: none; }

      .footer-grid { grid-template-columns: repeat(2, 1fr); }

      .footer-contact-strip { grid-template-columns: 1fr; }

      .footer-contact-item + .footer-contact-item { border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.08); padding-left: 10px; padding-top: 20px; }
}
@media (max-width: 640px){

      .topbar-inner { min-height: 42px; justify-content: center; text-align: center; }

      .topbar-inner > :last-child { display: none; }

      .nav { min-height: 70px; }

      .brand-logo { width: 168px; }

      .site-footer .brand-logo { width: 178px; }

      .nav-menu { top: 105px; }

      .footer-grid { grid-template-columns: 1fr; }

      .footer-bottom { align-items: flex-start; flex-direction: column; }
}

    
    /* chrome tokens: keep header/footer on brand regardless of page vars */
    .topbar, .site-header, .site-footer {
      --brand-teal: #46c6c3;
      --brand-teal-strong: #0ea8a5;
      --brand-green: #8ac646;
      --brand-white: #ffffff;
      --brand-mint: #ecf9f9;
      --brand-deep: #073845;
      --brand-navy: #1f2935;
    }


    .site-header .nav-actions .button, .site-footer .button {
      display: inline-flex !important;
      min-height: 44px !important;
      align-items: center !important;
      justify-content: center !important;
      gap: 10px !important;
      padding: 0 19px !important;
      border: 1px solid transparent !important;
      border-radius: 12px !important;
      color: #06323b !important;
      background: linear-gradient(135deg, var(--brand-teal), #71dad6) !important;
      box-shadow: 0 16px 34px rgba(70, 198, 195, 0.27) !important;
      font-size: 14px !important;
      font-weight: 800 !important;
      line-height: 1 !important;
      text-transform: none !important;
      letter-spacing: 0 !important;
    }


    @media (max-width: 1240px) {
      .site-header .nav-menu { gap: 15px !important; }
      .site-header .nav-menu a { font-size: 13px !important; }
    }

    /* chrome hardening: override page-local nav styles */
    @media (min-width: 1081px) {
      .site-header .nav-menu { position: static !important; inset: auto !important; display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center !important; gap: 20px !important; margin: 0 0 0 auto !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; transform: none !important; opacity: 1 !important; visibility: visible !important; }
      .site-header .nav-menu > a, .site-header .nav-item > a { white-space: nowrap !important; }
      .site-header .nav-toggle { display: none !important; }
      .site-header .nav-actions .button { display: inline-flex !important; white-space: nowrap !important; }
      .site-header .nav-dropdown { position: absolute !important; }
    }
    @media (max-width: 1080px) {
      .site-header .nav-toggle { display: grid !important; margin-left: auto !important; }
      .site-header .nav-menu { position: fixed !important; z-index: 110 !important; top: 116px !important; right: 18px !important; left: 18px !important; flex-direction: column !important; align-items: stretch !important; gap: 0 !important; margin: 0 !important; padding: 16px !important; border: 1px solid rgba(255,255,255,0.10) !important; border-radius: 18px !important; background: #07222d !important; box-shadow: 0 24px 55px rgba(0,0,0,0.28) !important; max-height: calc(100vh - 150px) !important; overflow-y: auto !important; }
      .site-header .nav-menu:not(.open) { display: none !important; }
      .site-header .nav-menu.open { display: flex !important; }
      .site-header .nav-menu a { padding: 12px 11px !important; white-space: normal !important; }
      .site-header .nav-item { display: flex !important; flex-direction: column !important; }
      .site-header .nav-dropdown { position: static !important; min-width: 0 !important; padding: 0 0 8px 16px !important; border: 0 !important; background: transparent !important; box-shadow: none !important; opacity: 1 !important; visibility: visible !important; transform: none !important; }
      .site-header .nav-actions .button { display: none !important; }
      .site-header .nav-actions { margin-left: 0 !important; flex: none !important; }
    }

/* --- */

/* ---- one-website type + colour layer ---- */
  :root {
    --brand-teal: #46c6c3;
    --brand-teal-strong: #0ea8a5;
    --brand-navy: #1f2935;
    --brand-deep: #073845;
    --brand-deeper: #042630;
    --brand-green: #8ac646;
    --brand-mint: #ecf9f9;
    --brand-white: #ffffff;
    --ink: #1f2935;
    --muted: #5d6874;
    --soft: #f6fbfb;
  }
  *, *::before, *::after { font-family: "TikTok Sans", "Manrope", Arial, sans-serif !important; }

  /* Hero H1 — homepage scale */
  h1 {
    font-size: clamp(48px, 6.2vw, 78px) !important;
    font-weight: 800 !important;
    letter-spacing: -0.056em !important;
    line-height: 0.98 !important;
  }
  h1 .accent, h1 .hero-accent { color: var(--brand-teal-strong) !important; }

  /* Section headings */
  h2:not(:is([class*="card"],[class*="panel"],[class*="tile"],[class*="item"],[class*="box"],[class*="faq"],[class*="accordion"],[class*="pricing-"],footer,aside) *) {
    font-size: clamp(32px, 3.7vw, 46px) !important;
    font-weight: 800 !important;
    letter-spacing: -0.04em !important;
    line-height: 1.06 !important;
  }
  h3:not(:is([class*="card"],[class*="panel"],[class*="tile"],[class*="item"],[class*="box"],[class*="faq"],[class*="accordion"],[class*="pricing-"],footer,aside) *) {
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.3 !important;
  }

  /* Hero supporting elements */
  .eyebrow { font-size: 12px !important; font-weight: 800 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; }
  .hero-text, .hero p.lead, .hero .lead { font-size: 18px !important; line-height: 1.74 !important; }
  .hero-points { display: flex !important; flex-wrap: wrap !important; gap: 12px 22px !important; margin: 24px 0 0 !important; padding: 0 !important; list-style: none !important; }
  .hero-points li { display: inline-flex !important; align-items: center !important; gap: 8px !important; color: #42515d !important; font-size: 13px !important; font-weight: 750 !important; }
  .hero-points li::before { display: grid !important; width: 17px !important; height: 17px !important; place-items: center !important; border-radius: 50% !important; color: #fff !important; background: var(--brand-teal-strong) !important; content: "✓" !important; font-size: 10px !important; font-weight: 900 !important; }

  @media (max-width: 640px) {
    h1 { font-size: clamp(43px, 14vw, 60px) !important; }
  }

/* --- */

.ukit-coverage { display: grid; grid-template-columns: 1fr .95fr; gap: 50px; align-items: center; }
  .ukit-cov-copy > .eyebrow { margin: 0 0 16px; color: #0ea8a5; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; display: inline-flex; align-items: center; gap: 10px; }
  .ukit-cov-copy > h2 { max-width: 940px; margin: 0; color: #1f2935; font-weight: 800; letter-spacing: -.045em; line-height: 1.06; }
  .ukit-cov-copy > p { max-width: 820px; margin: 19px 0 0; color: #5d6874; font-size: 18px; line-height: 1.76; }
  .ukit-cov-points { display: grid; gap: 13px; margin-top: 28px; }
  .ukit-cov-point { display: grid; grid-template-columns: 42px 1fr; gap: 13px; padding: 15px; border: 1px solid #d5e9e9; border-radius: 15px; background: #fff; box-shadow: 0 8px 22px rgba(5,47,59,.04); }
  .ukit-cov-point svg { width: 24px; height: 24px; color: #0ea8a5; stroke: currentColor; fill: none; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
  .ukit-cov-point strong { display: block; color: #1f2935; font-size: 13px; }
  .ukit-cov-point span { display: block; margin-top: 3px; color: #5d6874; font-size: 11px; line-height: 1.5; }
  .ukit-cov-card { position: relative; min-height: 430px; overflow: hidden; padding: 32px; border-radius: 28px; background: radial-gradient(circle at 61% 45%, rgba(70,198,195,.34), transparent 17%), linear-gradient(135deg, #ddf5f4, #f9fdfd); box-shadow: 0 22px 60px rgba(5,47,59,.12); }
  .ukit-cov-card::before, .ukit-cov-card::after { position: absolute; border: 1px solid rgba(70,198,195,.28); border-radius: 50%; content: ""; }
  .ukit-cov-card::before { width: 240px; height: 240px; right: 45px; top: 80px; box-shadow: 0 0 0 42px rgba(70,198,195,.055), 0 0 0 84px rgba(70,198,195,.035); }
  .ukit-cov-card::after { width: 86px; height: 86px; right: 122px; top: 157px; background: rgba(70,198,195,.12); }
  .ukit-cov-pin { position: absolute; z-index: 2; right: 151px; top: 187px; width: 28px; height: 28px; border: 7px solid #fff; border-radius: 50%; background: #0ea8a5; box-shadow: 0 8px 22px rgba(5,47,59,.2); }
  .ukit-cov-label { position: absolute; z-index: 3; left: 30px; right: 30px; bottom: 29px; padding: 22px; border: 1px solid rgba(31,41,53,.08); border-radius: 18px; background: rgba(255,255,255,.9); backdrop-filter: blur(10px); }
  .ukit-cov-label strong { display: block; color: #1f2935; font-size: 17px; }
  .ukit-cov-label span { display: block; margin-top: 6px; color: #5d6874; font-size: 12px; line-height: 1.5; }
  .ukit-city { position: absolute; z-index: 4; padding: 8px 11px; border: 1px solid rgba(31,41,53,.09); border-radius: 999px; background: #fff; box-shadow: 0 8px 20px rgba(5,47,59,.09); color: #36535a; font-size: 10px; font-weight: 800; }
  .ukit-city.c1 { top: 34px; left: 35px; }
  .ukit-city.c2 { top: 108px; left: 52px; }
  .ukit-city.c3 { top: 64px; right: 30px; }
  .ukit-city.c4 { top: 226px; left: 37px; }
  .ukit-city.c5 { top: 268px; right: 39px; }
  @media (max-width: 1080px) { .ukit-coverage { grid-template-columns: 1fr; } }
  @media (max-width: 720px) {
    .ukit-cov-card { min-height: 390px; }
    .ukit-cov-card::before { right: -5px; }
    .ukit-cov-card::after { right: 72px; }
    .ukit-cov-pin { right: 101px; }
  }

/* --- */

.ukit-rev-head { text-align: center; }
  .ukit-rev-head .eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 16px; color: #0ea8a5; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
  .ukit-rev-head h2 { max-width: 940px; margin: 0 auto; color: #1f2935; font-weight: 800; letter-spacing: -.045em; line-height: 1.06; }
  .ukit-rev-head p { max-width: 720px; margin: 19px auto 0; color: #5d6874; font-size: 18px; line-height: 1.76; }
  .ukit-rev-grid { display: grid; grid-template-columns: 0.72fr repeat(3, 1fr); gap: 16px; margin-top: 42px; }
  .ukit-rev-summary, .ukit-rev-card { min-height: 260px; border-radius: 20px; box-shadow: 0 10px 28px rgba(5,47,59,.08); }
  .ukit-rev-summary { display: flex; flex-direction: column; justify-content: space-between; padding: 28px; color: #fff; background: linear-gradient(145deg, #042630, #073845); }
  .ukit-rev-summary h3 { margin: 0; color: #fff; font-size: 22px; }
  .ukit-rev-summary p { margin: 12px 0 0; color: rgba(255,255,255,.66); font-size: 13px; line-height: 1.6; }
  .ukit-rev-stars { margin-top: 15px; color: #f4b740; font-size: 20px; letter-spacing: 2px; }
  .ukit-rev-link { display: inline-flex; align-items: center; gap: 9px; margin-top: auto; color: #46c6c3; font-size: 14px; font-weight: 800; }
  .ukit-rev-card { padding: 25px; border: 1px solid rgba(31,41,53,.12); background: #fff; }
  .ukit-rev-headline { display: flex; align-items: center; gap: 12px; }
  .ukit-rev-avatar { display: grid; width: 42px; height: 42px; flex: 0 0 42px; place-items: center; border-radius: 50%; color: #fff; background: #0ea8a5; font-weight: 900; }
  .ukit-rev-headline strong, .ukit-rev-headline span { display: block; color: #1f2935; }
  .ukit-rev-headline span { margin-top: 3px; color: #5d6874; font-size: 11px; }
  .ukit-rev-card blockquote { margin: 18px 0 0; color: #404a55; font-size: 14px; line-height: 1.7; }
  @media (max-width: 1080px) { .ukit-rev-grid { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 640px) { .ukit-rev-grid { grid-template-columns: 1fr; } }

/* --- */

.ukit-cl-shell { display: grid; grid-template-columns: .72fr 1.28fr; overflow: hidden; border-radius: 30px; background: linear-gradient(145deg, #042630, #073845); box-shadow: 0 34px 90px rgba(4,38,48,.18); }
  .ukit-cl-intro { display: flex; min-height: 330px; flex-direction: column; justify-content: center; padding: 44px; color: #fff; background: radial-gradient(circle at 90% 15%, rgba(70,198,195,.20), transparent 28%); }
  .ukit-cl-intro .eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 14px; color: #8be5e1; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
  .ukit-cl-intro h2 { margin: 0; color: #fff; font-size: clamp(31px, 4vw, 47px); line-height: 1.06; letter-spacing: -.045em; }
  .ukit-cl-intro p { margin: 18px 0 26px; color: rgba(255,255,255,.69); font-size: 15px; line-height: 1.7; }
  .ukit-cl-intro a.ukit-cl-cta { align-self: flex-start; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 19px; border: 1px solid rgba(255,255,255,.42); border-radius: 12px; color: #fff; background: rgba(255,255,255,.04); font-size: 13px; font-weight: 800; }
  .ukit-cl-carousel { min-width: 0; display: flex; align-items: center; padding: 36px 0; background: rgba(255,255,255,.025); }
  .ukit-cl-window { width: 100%; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
  .ukit-cl-track { display: flex; width: max-content; gap: 18px; animation: ukitClientLoop 34s linear infinite; }
  .ukit-cl-window:hover .ukit-cl-track { animation-play-state: paused; }
  .ukit-cl-slide { width: 270px; min-width: 270px; height: 175px; display: grid; place-items: center; overflow: hidden; padding: 24px 26px; border: 1px solid rgba(255,255,255,.16); border-radius: 21px; background: #fff; box-shadow: 0 12px 34px rgba(0,25,35,.16); }
  .ukit-cl-slide img { display: block; width: auto; height: auto; max-width: 215px; max-height: 98px; margin: auto; object-fit: contain; filter: grayscale(1); opacity: .72; transition: filter 220ms ease, opacity 220ms ease, transform 220ms ease; }
  .ukit-cl-slide:hover img { filter: grayscale(0); opacity: 1; transform: scale(1.045); }
  .ukit-cl-toughcad img { max-width: 225px; max-height: 86px; }
  .ukit-cl-eurotronic img { max-width: 225px; max-height: 80px; }
  .ukit-cl-flextro img { max-width: 215px; max-height: 78px; }
  .ukit-cl-caribou img { max-width: 225px; max-height: 76px; }
  .ukit-cl-at img { max-width: 165px; max-height: 105px; }
  .ukit-cl-foserve img { max-width: 150px; max-height: 108px; }
  .ukit-cl-360 img { max-width: 205px; max-height: 72px; }
  @keyframes ukitClientLoop { to { transform: translateX(calc(-50% - 9px)); } }
  @media (max-width: 1080px) { .ukit-cl-shell { grid-template-columns: 1fr; } .ukit-cl-intro { min-height: 0; padding: 34px; } }

/* --- */

.ukit-in-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; margin-top: 42px; }
  .ukit-in-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid rgba(31,41,53,.12); border-radius: 26px; background: #fff; box-shadow: 0 14px 35px rgba(15,40,50,.055); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
  .ukit-in-card:hover { transform: translateY(-5px); box-shadow: 0 22px 44px rgba(15,40,50,.10); border-color: #cbdcdf; }
  .ukit-in-media { display: grid; aspect-ratio: 16/10; place-items: center; background: #ecf9f9; }
  .ukit-in-media svg { width: 64px; height: 64px; color: #0ea8a5; stroke: currentColor; fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
  .ukit-in-media img { width: 100%; height: 100%; object-fit: cover; }
  .ukit-in-body { display: flex; flex: 1; flex-direction: column; padding: 23px 23px 22px; }
  .ukit-in-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: #5d6874; font-size: 13px; font-weight: 700; }
  .ukit-in-meta .ukit-in-tag { padding: 6px 9px; border: 1px solid #d7eeee; border-radius: 999px; background: #ecf9f9; color: #073845; font-size: 11px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
  .ukit-in-card h3 { margin: 14px 0 12px; color: #1f2935; font-size: 20px; font-weight: 800; letter-spacing: -.025em; line-height: 1.2; }
  .ukit-in-read { display: inline-flex; align-items: center; gap: 10px; margin-top: auto; padding-top: 9px; color: #073845; font-size: 14px; font-weight: 850; width: max-content; }
  .ukit-in-read svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 2; transition: transform .2s ease; }
  .ukit-in-read:hover svg { transform: translateX(4px); }
  @media (max-width: 1180px) { .ukit-in-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
  @media (max-width: 680px) { .ukit-in-grid { grid-template-columns: 1fr; } }

/* --- */

.ukit-faq-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 28px; margin-top: 46px; align-items: start; }
  .ukit-faq-aside { position: sticky; top: 135px; padding: 31px; border-radius: 22px; color: #fff; background: linear-gradient(145deg, #042630, #073845); box-shadow: 0 22px 60px rgba(5,47,59,.12); }
  .ukit-faq-aside h3 { margin: 0; color: #fff; font-size: 25px; font-weight: 800; letter-spacing: -.02em; line-height: 1.25; }
  .ukit-faq-aside p { margin: 15px 0 0; color: rgba(255,255,255,.7); font-size: 13px; line-height: 1.65; }
  .ukit-faq-aside .ukit-faq-cta { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; margin-top: 22px; padding: 0 19px; border: 1px solid rgba(255,255,255,.42); border-radius: 12px; color: #fff; background: rgba(255,255,255,.05); font-size: 13px; font-weight: 800; }
  .ukit-faq-list { display: grid; gap: 12px; }
  .ukit-faq-list details { border: 1px solid rgba(31,41,53,.12); border-radius: 16px; background: #fff; box-shadow: 0 7px 18px rgba(5,47,59,.035); }
  .ukit-faq-list summary { position: relative; padding: 20px 54px 20px 22px; color: #1f2935; cursor: pointer; list-style: none; font-size: 14px; font-weight: 800; line-height: 1.4; }
  .ukit-faq-list summary::-webkit-details-marker { display: none; }
  .ukit-faq-list summary::after { position: absolute; right: 21px; top: 50%; content: "+"; transform: translateY(-50%); color: #0ea8a5; font-size: 23px; font-weight: 500; }
  .ukit-faq-list details[open] summary::after { content: "−"; }
  .ukit-faq-answer { padding: 0 22px 21px; }
  .ukit-faq-answer p, .ukit-faq-answer li { margin: 0 0 10px; color: #5d6874; font-size: 13px; line-height: 1.7; }
  .ukit-faq-answer p:last-child, .ukit-faq-answer li:last-child { margin-bottom: 0; }


  .ukit-faq-section .ukit-rev-head h2 { font-size: clamp(32px, 3.7vw, 46px) !important; font-weight: 800 !important; letter-spacing: -.04em !important; line-height: 1.06 !important; }
  .ukit-faq-section .ukit-rev-head .eyebrow { font-size: 12px !important; }
  /* sticky FAQ aside: page wrappers must not clip */
  html { overflow-x: hidden; }
  .ukit-page, .page, .site, .site-wrapper, .wrapper, .shell { overflow: visible !important; }
  .ukit-faq-grid { align-items: start; }
  @media (max-width: 1080px) { .ukit-faq-grid { grid-template-columns: 1fr; } .ukit-faq-aside { position: static; } }

/* --- */

/* inserted industry sections: base card look (pages without their own) */
  .ukit-industry-section .industry-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; margin-top: 40px; }
  .ukit-industry-section .industry-card { border: 1px solid rgba(31,41,53,.12); background: #fff; color: inherit; text-decoration: none; }
  .ukit-industry-section .industry-card:hover { border-color: rgba(67,199,196,.62); }
  .ukit-industry-section .industry-icon { background: #0b3a45; color: #55d2ce; }
  .ukit-industry-section .industry-card h3 { color: #1f2935; }
  .ukit-industry-section .industry-card p { color: #5d6874; }
  .ukit-industry-section .industry-link { color: #087572; }
  @media (max-width: 1080px) { .ukit-industry-section .industry-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
  @media (max-width: 680px) { .ukit-industry-section .industry-grid { grid-template-columns: 1fr; } }
  /* shared industry card shape + typography (background & icon colours left per page) */
  .industry-card, .industry-card-final, .industries24-card, .emergency-industry-card, .helpdesk-industry-card, .industry-showcase-card, .type-card, .industry-tile { display: flex; min-height: 245px; flex-direction: column; align-items: flex-start; text-align: left; padding: 25px; border-radius: 20px; box-shadow: 0 12px 30px rgba(11,58,69,.055); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
  .industry-card:hover, .industry-card-final:hover, .industries24-card:hover, .emergency-industry-card:hover, .helpdesk-industry-card:hover, .industry-showcase-card:hover, .type-card:hover, .industry-tile:hover { transform: translateY(-4px); box-shadow: 0 20px 42px rgba(11,58,69,.09); }
  .industry-card h3, .industry-card-final h3, .industries24-card h3, .emergency-industry-card h3, .helpdesk-industry-card h3, .industry-showcase-card h3, .type-card h3, .industry-tile h3 { margin: 20px 0 0; font-size: 18px; font-weight: 800; letter-spacing: -.025em; line-height: 1.28; }
  .industry-card p, .industry-card-final p, .industries24-card p, .emergency-industry-card p, .helpdesk-industry-card p, .industry-showcase-card p, .type-card p, .industry-tile p { margin: 10px 0 19px; font-size: 12.5px; line-height: 1.62; }
  .industry-card [class*="link"], .industry-card [class*="action"], .industry-card-final [class*="link"], .industry-card-final [class*="action"], .industries24-card [class*="link"], .industries24-card [class*="action"], .emergency-industry-card [class*="link"], .emergency-industry-card [class*="action"], .helpdesk-industry-card [class*="link"], .helpdesk-industry-card [class*="action"], .industry-showcase-card [class*="link"], .industry-showcase-card [class*="action"], .type-card [class*="link"], .type-card [class*="action"], .industry-tile [class*="link"], .industry-tile [class*="action"] { margin-top: auto; font-size: 11.5px; font-weight: 800; }
  .industry-card [class*="icon"], .industry-card-final [class*="icon"], .industries24-card [class*="icon"], .emergency-industry-card [class*="icon"], .helpdesk-industry-card [class*="icon"], .industry-showcase-card [class*="icon"], .type-card [class*="icon"], .industry-tile [class*="icon"] { display: grid; width: 50px; height: 50px; flex: none; place-items: center; border-radius: 15px; }
  .industry-card [class*="icon"] svg, .industry-card-final [class*="icon"] svg, .industries24-card [class*="icon"] svg, .emergency-industry-card [class*="icon"] svg, .helpdesk-industry-card [class*="icon"] svg, .industry-showcase-card [class*="icon"] svg, .type-card [class*="icon"] svg, .industry-tile [class*="icon"] svg { width: 27px; height: 27px; }