:root{--lum-bg:#AFBFE2;--lum-blue:#193EDA;--lum-pale:#C9D5F0;--lum-white:#F5F7FF}
html{scroll-behavior:smooth}
body.lum-onepager-page #header-outer,body.lum-onepager-page #header-space,body.lum-onepager-page #footer-outer,body.lum-onepager-page #to-top{display:none!important}
body.lum-onepager-page .lum-site,body.lum-onepager-page .lum-site *{box-sizing:border-box;font-family:"Roboto",Arial,Helvetica,sans-serif!important}
body.lum-onepager-page .lum-site{position:relative;width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;color:var(--lum-blue);overflow:hidden}
.lum-shell{width:min(calc(100% - 10vw),1480px)!important;max-width:1480px!important;margin:0 auto!important;position:relative!important}
.lum-hero{height:100svh!important;min-height:760px!important;background:var(--lum-bg)!important;overflow:hidden!important}
.lum-hero-shell{height:100%!important;min-height:760px!important}
.lum-logo{position:absolute!important;top:5.2vh!important;left:0!important;display:inline-flex!important;align-items:center!important;gap:5px!important;color:var(--lum-blue)!important;text-decoration:none!important;line-height:.82!important}
.lum-logo-looking{font-size:clamp(25px,2.2vw,36px)!important;font-weight:700!important;letter-spacing:-.055em!important}.lum-logo-stack{display:flex!important;flex-direction:column!important}.lum-logo-up{font-size:clamp(25px,2.2vw,36px)!important;font-weight:500!important;letter-spacing:-.06em!important}.lum-logo-media{font-size:7px!important;font-weight:700!important;letter-spacing:.48em!important;padding-left:3px!important;margin-top:5px!important}
.lum-top-contact{position:absolute!important;right:0!important;top:6vh!important;color:var(--lum-blue)!important;font-size:13px!important;font-weight:500!important;text-decoration:none!important}
.lum-kicker{position:absolute!important;top:16vh!important;left:0!important;font-size:clamp(12px,.9vw,15px)!important;line-height:1.25!important;letter-spacing:.08em!important;font-weight:500!important}
.lum-hero-copy{position:absolute!important;left:0!important;top:24vh!important;width:min(82vw,1240px)!important}
.lum-hero-copy h1{margin:0!important;padding:0!important;color:var(--lum-blue)!important;font-size:clamp(76px,8.9vw,150px)!important;line-height:.90!important;letter-spacing:-.067em!important;font-weight:700!important}.lum-hero-copy h1 span{display:block!important}
.lum-rotator{display:block!important;position:relative!important;height:1.08em!important;overflow:hidden!important;margin-top:.055em!important;color:rgba(25,62,218,.42)!important;font-size:clamp(70px,8.25vw,138px)!important;line-height:.98!important;letter-spacing:-.06em!important;font-weight:700!important;white-space:nowrap!important}
.lum-word-current{display:block!important;will-change:transform,opacity}.lum-word-current.lum-out{animation:lumWordOut .46s cubic-bezier(.4,0,.6,1) forwards!important}.lum-word-current.lum-in{animation:lumWordIn .62s cubic-bezier(.2,.75,.22,1) forwards!important}
@keyframes lumWordOut{from{transform:translateY(0);opacity:1}to{transform:translateY(-110%);opacity:0}}@keyframes lumWordIn{from{transform:translateY(110%);opacity:0}to{transform:translateY(0);opacity:1}}
.lum-scroll{position:absolute!important;left:0!important;bottom:6.5vh!important;display:inline-flex!important;align-items:center!important;gap:16px!important;color:var(--lum-blue)!important;text-decoration:none!important;font-size:12px!important;font-weight:500!important}.lum-scroll-arrow{font-size:34px!important}
.lum-progress{position:absolute!important;right:1.5%!important;top:26vh!important;display:flex!important;flex-direction:column!important;gap:17px!important;font-size:11px!important;opacity:.48!important}.lum-progress .is-active{font-weight:700!important}.lum-progress .is-active:after{content:""!important;display:block!important;width:1px!important;height:50px!important;background:var(--lum-blue)!important;margin:10px 0 0 8px!important}

/* White services section */
.lum-services{background:#fff!important;color:var(--lum-blue)!important}
.lum-services-shell{padding:78px 0 84px!important}
.lum-services-label{font-size:12px!important;font-weight:500!important;letter-spacing:.08em!important;margin-bottom:42px!important}
.lum-services-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:64px 7vw!important}
.lum-service-card{margin:0!important;padding:0!important;background:transparent!important}
.lum-service-number{font-size:13px!important;font-weight:700!important;letter-spacing:.08em!important;margin-bottom:20px!important;opacity:.5!important}
body.lum-onepager-page .lum-service-card h3{margin:0 0 12px!important;padding:0!important;color:var(--lum-blue)!important;font-size:clamp(22px,1.8vw,30px)!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:700!important}
body.lum-onepager-page .lum-service-card p{margin:0!important;max-width:360px!important;color:var(--lum-blue)!important;font-size:15px!important;line-height:1.55!important;opacity:.78!important}

/* Contact */
.lum-contact{background:var(--lum-blue)!important;color:var(--lum-pale)!important}
.lum-contact-shell{min-height:88svh!important;padding:9vh 0 32px!important;display:grid!important;grid-template-columns:1fr 1fr!important;column-gap:9vw!important;align-content:start!important}
.lum-section-label{font-size:12px!important;letter-spacing:.07em!important;margin-bottom:38px!important}
body.lum-onepager-page .lum-contact h2{margin:0!important;padding:0!important;color:var(--lum-pale)!important;font-size:clamp(58px,5.5vw,92px)!important;line-height:.96!important;letter-spacing:-.057em!important;font-weight:700!important}
.lum-form{padding-top:44px!important}.lum-field{display:flex!important;flex-direction:column!important;border-bottom:1px solid rgba(201,213,240,.8)!important;padding:0 0 9px!important;margin:0 0 27px!important}.lum-field label{color:var(--lum-pale)!important;font-size:14px!important;margin-bottom:8px!important}
body.lum-onepager-page .lum-field input,body.lum-onepager-page .lum-field textarea{width:100%!important;margin:0!important;padding:5px 0!important;border:0!important;border-radius:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:var(--lum-white)!important;font-size:16px!important}.lum-field-message textarea{min-height:80px!important;resize:vertical!important}
body.lum-onepager-page button.lum-submit{display:block!important;width:100%!important;height:62px!important;border:0!important;border-radius:999px!important;background:var(--lum-pale)!important;color:var(--lum-blue)!important;font-size:13px!important;font-weight:700!important;cursor:pointer!important}.lum-form-status{min-height:22px!important;margin-top:12px!important;font-size:13px!important}
.lum-footer{grid-column:1/-1!important;margin-top:11vh!important;padding-top:25px!important;border-top:1px solid rgba(201,213,240,.7)!important;display:grid!important;grid-template-columns:1fr 1.4fr 1fr!important;gap:24px!important;align-items:end!important;font-size:10px!important}.lum-footer-logo{font-size:20px!important;font-weight:700!important}.lum-footer a{color:var(--lum-pale)!important;text-decoration:none!important;text-align:right!important}
@media(max-width:1000px){.lum-shell{width:calc(100% - 48px)!important}.lum-progress{display:none!important}.lum-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.lum-contact-shell{grid-template-columns:1fr!important;gap:54px!important;min-height:auto!important}.lum-form{padding-top:0!important}}
@media(max-width:700px){.lum-shell{width:calc(100% - 32px)!important}.lum-hero{min-height:700px!important}.lum-hero-copy{top:29vh!important}.lum-hero-copy h1{font-size:clamp(50px,15vw,72px)!important;line-height:.94!important}.lum-rotator{font-size:clamp(43px,13vw,64px)!important;height:2.05em!important;white-space:normal!important}.lum-services-shell{padding:56px 0 62px!important}.lum-services-grid{grid-template-columns:1fr!important;gap:40px!important}.lum-contact-shell{padding-top:60px!important}.lum-contact h2{font-size:clamp(49px,14vw,68px)!important}.lum-footer{grid-template-columns:1fr!important;gap:13px!important}.lum-footer a{text-align:left!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lum-word-current{animation:none!important}}


/* v1.7: hide legacy Salient/Nectar hero/slider content on the onepager page.
   Scoped strictly to pages containing the Looking Up shortcode. */
body.lum-onepager-page #featured,
body.lum-onepager-page #page-header-bg,
body.lum-onepager-page .page-header-bg-image,
body.lum-onepager-page .nectar-slider-wrap,
body.lum-onepager-page .nectar-slider-wrap.loaded,
body.lum-onepager-page .nectar-slider-loading,
body.lum-onepager-page .swiper-container[data-overall_style],
body.lum-onepager-page .home-slider-wrap,
body.lum-onepager-page #home-slider,
body.lum-onepager-page .nectar_fullscreen_zoom_recent_projects,
body.lum-onepager-page .parallax_slider_outer,
body.lum-onepager-page .project-title {
    display:none!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
}

/* Remove any space Salient may reserve for the legacy page header. */
body.lum-onepager-page .container-wrap,
body.lum-onepager-page .main-content {
    margin-top:0!important;
}


/* v1.7.1: remove the remaining Salient page-header wrapper that reserves the dark block */
body.lum-onepager-page #page-header-wrap,
body.lum-onepager-page .page-header-no-bg,
body.lum-onepager-page .page-header-overlay-color,
body.lum-onepager-page .page-header-bg-image-wrap,
body.lum-onepager-page .page-header-bg-image {
    display:none!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
}

/* Prevent any top offset left behind by Salient page-header logic */
body.lum-onepager-page #ajax-content-wrap,
body.lum-onepager-page .container-wrap,
body.lum-onepager-page .main-content {
    padding-top:0!important;
    margin-top:0!important;
}

/* Keep the rotating line contained cleanly during transitions */
.lum-rotator{
    isolation:isolate!important;
}
.lum-word-current{
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:100%!important;
}


/* v1.8 sticky header inspired by the minimal Omelet-style structure */
.lum-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:9999!important;
    pointer-events:none!important;
}
body.admin-bar .lum-header{top:32px!important}
.lum-header-inner{
    width:min(calc(100% - 10vw),1480px)!important;
    margin:0 auto!important;
    height:92px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    pointer-events:auto!important;
}
.lum-header-brand{
    display:inline-flex!important;
    align-items:center!important;
    gap:4px!important;
    color:var(--lum-blue)!important;
    text-decoration:none!important;
    line-height:.8!important;
}
.lum-header-looking{
    font-size:20px!important;
    font-weight:700!important;
    letter-spacing:-.055em!important;
}
.lum-header-upwrap{display:flex!important;flex-direction:column!important}
.lum-header-up{
    font-size:20px!important;
    font-weight:500!important;
    letter-spacing:-.06em!important;
}
.lum-header-media{
    font-size:5px!important;
    font-weight:700!important;
    letter-spacing:.42em!important;
    margin-top:4px!important;
    padding-left:2px!important;
}
.lum-header-actions{
    display:flex!important;
    align-items:center!important;
    gap:22px!important;
    color:var(--lum-blue)!important;
}
.lum-language{
    font-size:12px!important;
    font-weight:500!important;
    letter-spacing:.03em!important;
}
body.lum-onepager-page .lum-menu-toggle{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    border:0!important;
    padding:0!important;
    margin:0!important;
    min-width:0!important;
    height:auto!important;
    background:transparent!important;
    color:var(--lum-blue)!important;
    box-shadow:none!important;
    border-radius:0!important;
    line-height:1!important;
    cursor:pointer!important;
}
.lum-menu-label{font-size:12px!important;font-weight:500!important}
.lum-menu-lines{
    width:22px!important;
    display:flex!important;
    flex-direction:column!important;
    gap:5px!important;
}
.lum-menu-lines span{
    display:block!important;
    width:100%!important;
    height:1px!important;
    background:currentColor!important;
    transition:transform .25s ease!important;
}
.lum-menu-overlay{
    position:fixed!important;
    inset:0!important;
    background:rgba(25,62,218,.98)!important;
    pointer-events:auto!important;
    z-index:10000!important;
}
.lum-menu-overlay[hidden]{display:none!important}
.lum-menu-panel{
    width:min(calc(100% - 10vw),1480px)!important;
    margin:0 auto!important;
    min-height:100svh!important;
    position:relative!important;
    display:flex!important;
    align-items:center!important;
}
body.admin-bar .lum-menu-panel{min-height:calc(100svh - 32px)!important}
body.lum-onepager-page .lum-menu-close{
    position:absolute!important;
    top:28px!important;
    right:0!important;
    border:0!important;
    background:transparent!important;
    color:var(--lum-pale)!important;
    font-size:42px!important;
    line-height:1!important;
    font-weight:300!important;
    padding:0!important;
    cursor:pointer!important;
    box-shadow:none!important;
}
.lum-menu-nav{
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
}
.lum-menu-nav a{
    color:var(--lum-pale)!important;
    text-decoration:none!important;
    font-size:clamp(54px,8vw,122px)!important;
    line-height:.95!important;
    letter-spacing:-.055em!important;
    font-weight:700!important;
    transition:opacity .2s ease!important;
}
.lum-menu-nav a:hover{opacity:.55!important}

/* Avoid duplicate little logo/top CTA inside hero now that header exists */
.lum-hero .lum-logo,
.lum-hero .lum-top-contact{
    display:none!important;
}

@media(max-width:700px){
    body.admin-bar .lum-header{top:46px!important}
    .lum-header-inner{
        width:calc(100% - 32px)!important;
        height:72px!important;
    }
    .lum-language{display:none!important}
    .lum-menu-panel{width:calc(100% - 32px)!important}
    body.admin-bar .lum-menu-panel{min-height:calc(100svh - 46px)!important}
    body.lum-onepager-page .lum-menu-close{top:20px!important}
}


/* v1.8.2: keep the fixed header clearly visible while scrolling */
.lum-header-brand,
.lum-header-actions,
body.lum-onepager-page .lum-menu-toggle{
    color:#fff!important;
}
.lum-menu-lines span{
    background:#fff!important;
}


/* v1.8.3: white fixed navigation bar, original blue branding */
.lum-header{
    background:#fff!important;
    box-shadow:none!important;
}
.lum-header-brand,
.lum-header-actions,
body.lum-onepager-page .lum-menu-toggle{
    color:var(--lum-blue)!important;
}
.lum-menu-lines span{
    background:var(--lum-blue)!important;
}


/* v2.0 modular section foundation */
.lum-projects{
    background:#fff!important;
    color:var(--lum-blue)!important;
    padding:120px 0!important;
}
.lum-projects-title{
    margin:32px 0 12px!important;
    font-size:clamp(52px,8vw,120px)!important;
    line-height:.9!important;
    letter-spacing:-.055em!important;
    color:var(--lum-blue)!important;
}
.lum-projects-placeholder{
    margin:0!important;
    max-width:560px!important;
    opacity:.65!important;
}


/* v2.0.1 final spacing + footer cleanup */

/* Prevent Salient/body from showing a white strip below the onepager */
html,
body.lum-onepager-page,
body.lum-onepager-page #ajax-content-wrap,
body.lum-onepager-page .container-wrap{
    background:var(--lum-blue)!important;
}
body.lum-onepager-page .lum-site{
    margin-bottom:0!important;
    padding-bottom:0!important;
}
body.lum-onepager-page .lum-contact{
    margin-bottom:0!important;
}

/* Give content more breathing room inside the main sections */
.lum-services{
    padding-top:110px!important;
    padding-bottom:120px!important;
}
.lum-contact{
    padding-top:105px!important;
    padding-bottom:70px!important;
}
.lum-contact-inner{
    row-gap:60px!important;
}
.lum-footer{
    margin-top:110px!important;
    padding-top:28px!important;
    padding-bottom:24px!important;
}

@media(max-width:700px){
    .lum-services{
        padding-top:76px!important;
        padding-bottom:84px!important;
    }
    .lum-contact{
        padding-top:76px!important;
        padding-bottom:34px!important;
    }
    .lum-contact-inner{
        row-gap:42px!important;
    }
    .lum-footer{
        margin-top:76px!important;
        padding-bottom:26px!important;
    }
}
