/* Homepage redesign. Shared service-page styling remains in styles.css.
   Hero height: .modern-hero min-height. Image crop: background-position. */
.modern-home{background:#020d1b;color:#f5f7fb;font-family:Arial,'Helvetica Neue',sans-serif;}
.modern-home .header{position:absolute;inset:0 0 auto;height:102px;padding:0 max(6.5%,calc((100vw - 1400px)/2));gap:40px;background:transparent;border:0;box-shadow:none;}
.modern-brand{display:block;flex:0 0 225px;line-height:0;}
.modern-brand img{display:block;width:225px;height:auto;mix-blend-mode:lighten;}
.modern-home .header nav{justify-content:flex-end;gap:clamp(25px,3.4vw,55px);font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;}
.modern-home .header nav>a:not(.button){position:relative;padding:12px 0;}
.modern-home nav>a[aria-current=page]::after{content:'';position:absolute;bottom:3px;left:0;width:40px;height:2px;background:#009dff;}
.modern-home .dropdown>button{letter-spacing:2.5px;text-transform:uppercase;font-size:11px;}
.modern-home .header .nav-cta{margin-left:12px;padding:13px 25px;gap:24px;background:transparent;border:1px solid #009dff;border-radius:0;font-size:11px;}
.modern-home #services-menu{font-size:13px;letter-spacing:.4px;text-transform:none;border-radius:0;}
.modern-home .header .nav-cta:hover{background:#009dff22;}
.modern-hero{position:relative;min-height:695px;padding:124px max(6.5%,calc((100vw - 1400px)/2)) 24px;background:linear-gradient(90deg,#020d1be8 0%,#020d1bad 34%,#020d1b55 70%),linear-gradient(0deg,#020d1b77,transparent 40%),var(--home-background, url('assets/modern-office-background.png')) center center/cover no-repeat;}
.modern-hero-content{max-width:740px;}
.modern-eyebrow{font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:3.5px;font-weight:500;margin:0 0 18px;color:#d1e3f5;}
.modern-eyebrow span{color:#00a5ff;margin:0 12px;}
.modern-hero h1{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(68px,7.2vw,110px);font-weight:400;line-height:.91;letter-spacing:-1.2px;text-transform:uppercase;margin:0 0 14px;}
.modern-hero h1 span{color:#009dff;}
.modern-intro{font-size:clamp(18px,1.55vw,24px);line-height:1.4;max-width:600px;margin:0 0 3px;color:#e4ebf4;}
.modern-supporting{font-size:18px;line-height:1.5;letter-spacing:.4px;margin:0 0 20px;color:#afc7de;}
.modern-connect{background:#008bfb;border-color:#008bfb;border-radius:0;padding:13px 27px;letter-spacing:2px;font-weight:500;gap:27px;}
.modern-values{list-style:none;display:flex;gap:0;padding:12px 0 0;margin:20px 0 0;border-top:1px solid #45637c88;max-width:730px;}
.modern-values li{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;padding:0 28px;border-right:1px solid #42617d;white-space:nowrap;}
.modern-values li:first-child{padding-left:0;}.modern-values li:last-child{border:0;padding-right:0;}
.modern-services{padding:30px max(6.5%,calc((100vw - 1400px)/2)) 0;background:#020d1b;}
.modern-section-label{display:flex;align-items:center;gap:20px;font-size:9px;margin:0 0 5px;}
.modern-section-label::after{content:'';height:1px;background:#25435b;flex:1;}
.modern-services h2{font-size:clamp(26px,2.8vw,42px);line-height:1.2;letter-spacing:-1px;margin:0 0 18px;}
.modern-service-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));}
.modern-service{display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 20px 8px;border-right:1px solid #25435b;transition:background .2s;}
.modern-service:last-child{border:0;}.modern-service:hover{background:#009dff0c;}
.modern-service img{width:56px;height:56px;object-fit:contain;margin-bottom:8px;}
.modern-service h3{font-size:18px;font-weight:500;line-height:1.3;margin:0 0 4px;}
.modern-service p{font-size:14px;line-height:1.4;color:#c0ccdc;max-width:190px;margin:0 auto 7px;}
.modern-service .service-arrow{font-size:29px;color:#00a5ff;line-height:1;margin-top:auto;}
.modern-contact-strip{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #25435b;padding:14px 0;margin-top:24px;color:#adc0d3;font-size:11px;letter-spacing:.4px;}
.modern-contact-strip a:hover{color:#009dff;}
@media(min-width:1700px){.modern-hero{min-height:72vh;padding-top:150px;}.modern-hero h1{font-size:120px;}}
@media(max-width:1100px) and (min-width:851px){.modern-home .header{gap:20px;padding-left:5%;padding-right:5%;}.modern-brand,.modern-brand img{width:190px;flex-basis:190px;}.modern-home .header nav{gap:22px;letter-spacing:1.5px;}.modern-home .header .nav-cta{padding:12px 15px;margin-left:0;}.modern-values li{padding:0 17px;font-size:8px;letter-spacing:2px;}.modern-service{padding-left:10px;padding-right:10px;}.modern-service h3{font-size:16px;}}
@media(max-width:850px){.modern-home .header{height:88px;padding:0 6%;justify-content:space-between;gap:15px;}.modern-brand{flex-basis:190px;}.modern-brand img{width:190px;}.modern-home .header .menu-toggle{order:2;display:block;border-radius:0;}.modern-home .header nav{top:88px;padding:20px 6%;background:#020d1b;max-height:calc(100dvh - 88px);gap:12px;}.modern-home .header nav.open{display:flex;}.modern-home .header .nav-cta{margin:0;align-self:flex-start;}.modern-home nav>a[aria-current=page]::after{bottom:5px;}.modern-hero{padding:125px 6% 30px;min-height:680px;background-position:center,center,60% center;}.modern-hero h1{font-size:86px;}.modern-hero-content{max-width:610px;}.modern-values li{font-size:8px;letter-spacing:1.7px;padding:0 18px;}.modern-services{padding:28px 6% 0;}.modern-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:26px;}.modern-service:nth-child(3){border:0;}.modern-service{padding:0 12px 8px;}.modern-contact-strip{flex-wrap:wrap;}}
@media(max-width:560px){.modern-hero{min-height:0;padding-top:120px;padding-bottom:30px;background-image:linear-gradient(90deg,#020d1be8,#020d1ba6),var(--home-background, url('assets/modern-office-background.png'));background-position:center,64% center;}.modern-hero h1{font-size:clamp(57px,13.5vw,76px);letter-spacing:-.6px;}.modern-eyebrow{font-size:8px;letter-spacing:2px;}.modern-intro{font-size:18px;}.modern-supporting{font-size:15px;margin-top:10px;}.modern-values{flex-wrap:wrap;gap:12px 18px;}.modern-values li{padding:0;border:0;font-size:8px;letter-spacing:1.4px;}.modern-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.modern-service:nth-child(3){border-right:1px solid #25435b;}.modern-service:nth-child(even),.modern-service:last-child{border:0;}.modern-service h3{font-size:16px;}.modern-service p{font-size:13px;}.modern-services h2{font-size:29px;}.modern-contact-strip{flex-direction:column;gap:7px;}}

/* Feather the logo's navy canvas into the page without changing the image file. */
.modern-brand img{mix-blend-mode:lighten;mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 20%,#000 80%,transparent);mask-composite:intersect;}
.modern-home .header{background:linear-gradient(to bottom,#020d1bba,transparent);}
/* Houston-only crop: move the skyline lower; other rotating photos keep their crop. */
html[data-home-scene="houston"] .modern-hero{background-position:center,center,center 50px;}
.modern-section-label{margin-bottom:24px;}
@media(max-width:560px){html[data-home-scene="houston"] .modern-hero{background-position:center,center 35px;}}
/* Solid blue Remote Help button. */
.modern-home .header .nav-cta{background:#0078be;color:#fff;}
.modern-home .header .nav-cta:hover{background:#0866a0;}
/* Matching baseline beneath the homepage services. */
.modern-service-grid{border-bottom:1px solid #25435b;padding-bottom:24px;}
/* Extend Houston behind the header without an empty band above the photo. */
html[data-home-scene="houston"] .modern-hero{background-position:center,center,center top;}
html[data-home-scene="houston"] .modern-home .header{background:transparent;}
@media(max-width:560px){html[data-home-scene="houston"] .modern-hero{background-position:center,center top;}}
/* Contact action aligned with the homepage navigation. */
.modern-home .header .header-connect{padding:13px 20px;border-radius:0;font-size:11px;letter-spacing:1.5px;white-space:nowrap;}
@media(min-width:851px){.modern-home .header nav{gap:clamp(16px,2vw,32px);}}
@media(max-width:850px){.modern-home .header .header-connect{align-self:flex-start;}}
/* Stacked messages reserve enough height to prevent layout jumps. */
.rotating-intro{display:grid;}
.hero-message{grid-area:1 / 1;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .5s ease,transform .5s ease,visibility .5s;}
.hero-message.is-active{opacity:1;visibility:visible;transform:translateY(0);}
@media(prefers-reduced-motion:reduce){.hero-message{transition:none;transform:none;}}
.home-contact-details{display:flex;justify-content:space-between;gap:20px;padding:18px 0;color:#bdcbdc;font-size:14px;}
.home-contact-details a:hover{color:#009dff;}
@media(max-width:560px){.home-contact-details{flex-direction:column;gap:8px;}}
/* Business positioning above the headline, contact details beneath the intro. */
.hero-positioning{display:flex;align-items:center;flex-wrap:wrap;gap:10px 0;}
.hero-positioning span{color:#d1e3f5;margin:0;padding:0 16px;border-right:1px solid #42617d;}
.hero-positioning span:first-child{padding-left:0;}.hero-positioning span:last-child{border:0;padding-right:0;}
.hero-contact-values{justify-content:space-between;}
.hero-contact-values li{font-size:11px;letter-spacing:1px;text-transform:none;border:0;padding:0;}
.hero-contact-values a:hover{color:#009dff;}
@media(max-width:560px){.hero-positioning{font-size:8px;letter-spacing:1.3px;}.hero-positioning span{padding:0 9px;}.hero-contact-values{gap:12px;}.hero-contact-values li{font-size:11px;letter-spacing:.5px;}}
/* Align email to the left edge of the hero text above. */
.hero-contact-values{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;}
.hero-contact-values li,.hero-contact-values li:last-child{padding:0;}
/* Match the contact row and divider to the introduction's 600px text width. */
.hero-contact-values{width:100%;max-width:600px;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;}
.hero-contact-values li,.hero-contact-values li:last-child{padding:0;}
@media(max-width:560px){.hero-contact-values{flex-wrap:wrap;gap:10px 16px;}}
/* Lift the complete What We Do section toward the hero content. */
.modern-home:not(.modern-inner) .modern-services{position:relative;margin-top:-60px;}
@media(max-width:850px){.modern-home:not(.modern-inner) .modern-services{margin-top:-30px;}}
@media(max-width:560px){.modern-home:not(.modern-inner) .modern-services{margin-top:0;}}
/* Reduce empty hero space without overlapping the phone/email row. */
.modern-home:not(.modern-inner) .modern-services{margin-top:0;}
.modern-home:not(.modern-inner) .modern-hero{min-height:635px;}
@media(min-width:1700px){.modern-home:not(.modern-inner) .modern-hero{min-height:calc(72vh - 60px);}}
@media(max-width:850px){.modern-home:not(.modern-inner) .modern-hero{min-height:650px;}}
@media(max-width:560px){.modern-home:not(.modern-inner) .modern-hero{min-height:0;}}

/* Remove the original logo navy in rendering; preserve its blue/white artwork. */
.modern-brand img,footer .footer-logo img{mix-blend-mode:normal;mask-image:none;filter:url("#lynknet-remove-navy");}
/* Render the small subtitle as sharp browser text rather than scaled bitmap text. */
.modern-brand{position:relative;}
.modern-brand img{clip-path:polygon(0 0,100% 0,100% 66%,28% 66%,28% 100%,0 100%);}
.logo-technologies{position:absolute;top:69%;left:30%;width:65%;color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:8px;font-weight:500;line-height:1;letter-spacing:2.8px;text-align:center;white-space:nowrap;}
@media(max-width:1100px){.logo-technologies{font-size:7px;letter-spacing:2.1px;}}
