:root{--ink:#13213a;--muted:#566173;--blue:#345cf0;--line:#dce1e9;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:#fdfdfc;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #6d78ff;outline-offset:6px}img{display:block;max-width:100%;height:auto}.wrap{width:min(1320px,88%);margin:auto}header{height:100px;display:flex;align-items:center;justify-content:space-between;width:88%;max-width:1320px;margin:auto;border-bottom:1px solid var(--line);gap:24px}.company{font-size:25px;font-weight:600;letter-spacing:-1px;display:flex;align-items:center;gap:12px}.company small{display:block;font-size:9px;letter-spacing:3px;font-weight:500;margin-top:5px}.brand-mark{position:relative;font-size:40px;color:var(--blue);font-weight:700;line-height:1}.brand-mark span{position:absolute;font-size:28px;top:-5px;left:10px;color:#8d67ed}nav{display:flex;gap:32px;font-size:13px}nav a:hover,.text-link:hover{color:var(--blue)}.nav-contact{font-size:13px;border-bottom:1px solid var(--ink);padding:10px 0;display:flex;gap:35px}.hero{display:grid;grid-template-columns:1.04fr 1fr;gap:3%;padding:76px 0 65px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;line-height:1.6}.dot{display:inline-block;width:6px;height:6px;background:#4765ef;border-radius:50%;margin-right:8px}h1{font-size:clamp(48px,5.1vw,76px);font-weight:500;letter-spacing:-3.5px;line-height:1.07;margin:29px 0}em{font-family:var(--serif);font-weight:400;color:#4561be}h1 em{letter-spacing:-3px}.intro{font-size:16px;line-height:1.8;max-width:450px;color:var(--muted)}.actions{display:flex;gap:27px;align-items:center;margin-top:31px}.button{display:inline-flex;align-items:center;gap:28px;padding:18px 22px;background:var(--ink);color:#fff;font-size:12px;border-radius:3px;transition:background .2s}.button:hover{background:var(--blue)}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:12px;font-weight:600;line-height:1.8}.powered{display:flex;align-items:center;gap:15px;margin-top:43px}.powered>span,.footer-powered>span{font-size:8px;letter-spacing:1.8px;color:var(--muted)}.powered img{width:164px;border-radius:3px}.hero-art{position:relative;overflow:hidden;min-height:570px;border-radius:180px 180px 12px 12px;background:radial-gradient(ellipse at 50% 44%,#fff 5%,#e6edfc 50%,#d7e0f5 95%);display:flex;align-items:center;justify-content:center}.art-label{position:absolute;top:55px;font-size:8px;letter-spacing:2px}.orbit{position:absolute;width:660px;height:360px;border:1px solid #aabbe255;border-radius:50%;transform:rotate(-30deg)}.orbit-two{width:460px;height:690px;transform:rotate(35deg)}.spatial-scene{position:relative;width:400px;height:400px;transform:rotateX(45deg) rotateZ(-35deg);filter:drop-shadow(-25px 40px 18px #637db04d);background:#d8e2f8;border:7px solid #f8faff;border-radius:8px;box-shadow:0 12px 0 #a8b9e1,0 14px 0 #829bcf}.room{position:absolute;background:linear-gradient(130deg,#f9fbff,#d4e0f4);border:7px solid #fff;border-top:18px solid #fff;border-left:12px solid #fff;box-shadow:-4px 6px 0 #aebfe1}.room-one{left:15px;top:15px;width:170px;height:140px}.room-two{right:15px;top:15px;width:170px;height:195px}.room-three{left:15px;bottom:15px;width:170px;height:190px}.room-four{right:15px;bottom:15px;width:170px;height:140px}.route{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.route path{fill:none;stroke:#4e76fb;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:5 12}.route circle{fill:#4e76fb;stroke:#fff;stroke-width:4}.pin{position:absolute;top:65px;right:69px;font-size:50px;color:#6b5bdd;text-shadow:0 0 25px #fff;transform:rotateZ(35deg)}.scene-note{position:absolute;bottom:105px;right:25px;background:#ffffffed;box-shadow:0 15px 40px #28385c14;padding:19px 24px;border-radius:6px;display:flex;gap:15px;align-items:center;font-size:12px;line-height:1.8;color:var(--muted)}.scene-note strong{color:var(--ink);font-weight:500}.note-icon{font-size:24px;color:var(--blue)}.art-caption{position:absolute;bottom:28px;left:30px;right:30px;display:flex;justify-content:space-between;font-size:9px}.art-caption span:last-child{font-size:7px;letter-spacing:1px}.statement{border-top:1px solid var(--line);padding:42px 0 70px;display:flex;justify-content:space-between;gap:30px}.statement>p{font-size:26px;line-height:1.4;margin:0;letter-spacing:-.6px}.statement>div{font-size:13px;line-height:1.9;color:var(--muted)}.approach{background:#eef2f7;padding:85px 0}.section-top{display:grid;grid-template-columns:1fr 2fr;gap:15px 60px}.section-top .eyebrow{grid-column:1}.section-top h2{grid-column:2;margin:0}.section-top>p:last-child{grid-column:2;max-width:550px;font-size:15px;line-height:1.8;color:var(--muted)}h2{font-size:clamp(34px,3.3vw,50px);font-weight:400;letter-spacing:-1.8px;line-height:1.15;margin:22px 0}.principles{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:50px}.principles article{border-top:1px solid #c5cfdf;padding-top:20px}.number{font-family:var(--serif);font-size:23px;color:#637cb9}h3{font-size:16px;font-weight:500;letter-spacing:-.3px}.principles p{font-size:13px;line-height:1.9;color:var(--muted)}.product{padding-top:85px;padding-bottom:85px}.product-heading{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:45px}.status{font-size:8px;letter-spacing:1.5px;color:#657086;align-self:center}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.product-logo{width:340px;margin:0 0 30px}.product-copy>p{color:var(--muted);font-size:14px;line-height:1.9}.product-copy .lead{font-size:18px;color:var(--ink);line-height:1.6}.feature-line{display:flex;gap:20px;margin-top:18px}.feature-line>span{color:#4561be;font-size:25px;width:23px;flex-shrink:0}.feature-line h3{margin:4px 0 6px}.feature-line p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}.product-copy>.text-link{margin-top:28px;border-bottom:1px solid #c0c9dd;padding-bottom:6px}.product-visual{margin:0;overflow:hidden;border-radius:5px;background:#e8eef7}.product-visual>img{width:100%;height:390px;object-fit:cover}.product-visual figcaption{padding:29px 34px 26px}.tiny-label{font-size:8px;letter-spacing:1.8px;color:#63708c}blockquote{font-family:var(--serif);font-size:32px;letter-spacing:-1px;margin:17px 0 10px}.product-visual figcaption p{font-size:13px;color:var(--muted)}.product-visual small{display:block;font-size:9px;color:#5b6680;margin-top:25px}.update-strip{margin-top:60px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1.4fr 210px;gap:40px;align-items:center;padding:24px 0}.update-strip h3{font-size:25px;line-height:1.2;margin:10px 0}.update-strip>p{font-size:14px;line-height:1.9;color:var(--muted);max-width:390px}.update-strip img{width:210px;height:140px;object-fit:cover;border-radius:4px}.home-section{background:#f2f0ed}.home .product-visual{background:#e4e1db}.home-grid .product-visual>img{height:370px;object-position:23% center}.home-grid{gap:8%}.home-grid .product-logo{mix-blend-mode:multiply}.contact{background:#101d32;color:#f7f8fb;padding:85px 0 70px;position:relative;overflow:hidden}.contact:after{content:'';width:580px;height:580px;position:absolute;border:1px solid #ffffff12;border-radius:50%;right:-80px;top:-170px;pointer-events:none}.contact h2{font-size:clamp(43px,5vw,72px);letter-spacing:-2px;margin:30px 0 50px}.contact em{color:#a9baff}.contact .eyebrow{color:#a4b4d1}.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px}.contact-bottom p{font-size:13px;color:#b8c3d6;line-height:1.9;margin:0}.email{font-size:clamp(16px,1.8vw,25px);letter-spacing:-.5px;padding:13px 0;border-bottom:1px solid #66728a;display:flex;gap:30px;overflow-wrap:anywhere}.email:hover{color:#a9baff}footer{padding:40px 0 30px}.footer-top{display:flex;align-items:center;justify-content:space-between}.footer-top .company{display:block}.footer-powered{display:flex;align-items:center;gap:15px}.footer-powered img{width:180px;border-radius:3px}.footer-bottom{display:flex;justify-content:space-between;align-items:start;gap:25px;border-top:1px solid var(--line);margin-top:35px;padding-top:22px;font-size:10px;color:var(--muted);line-height:1.8}.footer-bottom p{margin:0}.skip{position:fixed;left:20px;top:-60px;background:white;padding:12px;z-index:9}.skip:focus{top:12px}@media(min-width:1600px){.hero-art{min-height:610px}}@media(max-width:1000px){nav{gap:18px}.hero{padding-top:50px;gap:25px}h1{letter-spacing:-2px}.hero-art{min-height:530px}.spatial-scene{width:320px;height:320px}.room-one{width:130px;height:105px}.room-two{width:130px;height:150px}.room-three{width:130px;height:150px}.room-four{width:130px;height:105px}.actions{gap:17px;flex-wrap:wrap}.art-caption span:last-child{display:none}.principles{grid-template-columns:1fr 1fr}.section-top{grid-template-columns:1fr 2.4fr;gap:15px}.product-grid{gap:5%}.product-visual>img{height:330px}.product-visual figcaption{padding:25px}blockquote{font-size:27px}.update-strip{grid-template-columns:1fr 1.5fr 150px;gap:25px}.update-strip img{width:150px}.contact-bottom{align-items:start;flex-direction:column}.footer-bottom{flex-wrap:wrap}}
@media(max-width:700px){html{scroll-padding-top:20px}.wrap,header{width:88%}header{height:85px}.company{font-size:22px}.company small{font-size:8px}nav{display:none}.nav-contact{font-size:12px;gap:12px}.hero{grid-template-columns:1fr;padding:42px 0}.eyebrow{font-size:8px;letter-spacing:1.6px}h1{font-size:54px;line-height:1.05;letter-spacing:-2px}h1 em{letter-spacing:-2px}.intro{font-size:15px}.actions{margin-top:25px}.powered{margin-top:30px}.hero-art{min-height:455px;margin-top:20px;border-radius:130px 130px 6px 6px}.art-label{top:38px}.scene-note{bottom:65px;right:15px;padding:13px 18px;font-size:11px}.art-caption{bottom:22px}.statement{flex-direction:column;padding:30px 0 45px;gap:20px}.statement>p{font-size:24px}.statement>div{font-size:12px}.approach{padding:48px 0}.section-top{display:block}.section-top h2{margin-top:20px}h2{font-size:37px}.section-top>p:last-child{font-size:14px}.principles{gap:23px;margin-top:32px}.principles h3{font-size:15px;line-height:1.4;min-height:42px}.principles p{font-size:12px}.number{font-size:20px}.product{padding-top:48px;padding-bottom:48px}.product-heading{margin-bottom:30px}.status{font-size:7px;letter-spacing:1px}.product-grid{grid-template-columns:1fr;gap:35px}.product-logo{width:310px;margin-bottom:25px}.product-copy .lead{font-size:17px}.product-visual>img{height:330px}.product-visual figcaption{padding:25px}.update-strip{margin-top:35px;grid-template-columns:1fr 110px;gap:15px}.update-title{grid-column:1}.update-strip>p{grid-column:1;font-size:12px;margin:0}.update-strip img{grid-column:2;grid-row:1/3;height:160px;width:110px}.update-strip h3{font-size:23px}.home-grid .product-visual{order:2}.home-grid .product-visual>img{height:280px}.contact{padding:50px 0}.contact h2{font-size:44px;margin:25px 0 30px}.contact-bottom{gap:22px}.contact-bottom p{font-size:12px}.email{font-size:16px;gap:12px}footer{padding-top:30px}.footer-top{align-items:start;gap:20px}.footer-powered{flex-direction:column;align-items:start;gap:8px}.footer-powered img{width:135px}.footer-bottom{font-size:9px;flex-direction:column;gap:14px}.footer-bottom br{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Refined typography: larger reading sizes and balanced editorial headings. */
:root{--serif:'Iowan Old Style','Palatino Linotype','Book Antiqua',Palatino,Georgia,serif}
body{font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;line-height:1.6}
.company{font-size:29px;font-weight:600;letter-spacing:-1.1px;line-height:1.1}
.company small{font-size:10px;letter-spacing:3.2px;line-height:1.4}
nav{font-size:16px;gap:30px}
.nav-contact{font-size:16px}
.eyebrow{font-size:12px;letter-spacing:1.9px}
h1{font-size:clamp(54px,5.4vw,81px);font-weight:500;letter-spacing:-3px;line-height:1.08}
h1 em{letter-spacing:-2.6px}
h2{font-size:clamp(40px,3.6vw,56px);font-weight:500;line-height:1.18;letter-spacing:-1.8px}
h3{font-size:20px;font-weight:600;line-height:1.4;letter-spacing:-.35px}
em{font-weight:400}
.intro{font-size:19px;line-height:1.8;max-width:500px}
.button,.text-link{font-size:15px}
.button{padding:18px 23px;gap:22px}
.actions{gap:23px}
.powered>span,.footer-powered>span{font-size:10px;letter-spacing:1.5px}
.statement>p{font-size:31px;line-height:1.4}
.statement>div{font-size:17px;line-height:1.85}
.section-top>p:last-child{font-size:18px;line-height:1.8;max-width:610px}
.principles{gap:28px}
.principles p{font-size:17px;line-height:1.8}
.number{font-size:27px}
.product-copy>p{font-size:18px;line-height:1.8}
.product-copy .lead{font-size:23px;line-height:1.55}
.feature-line p{font-size:17px;line-height:1.8}
.feature-line h3{font-size:20px}
.status{font-size:10px;letter-spacing:1.4px}
.tiny-label{font-size:11px;letter-spacing:1.6px}
blockquote{font-size:37px;line-height:1.25;letter-spacing:-1px}
.product-visual figcaption p{font-size:17px;line-height:1.6}
.product-visual small{font-size:12px;line-height:1.6}
.update-strip h3{font-size:30px;font-weight:500;line-height:1.25}
.update-strip>p{font-size:18px;line-height:1.8}
.contact h2{font-size:clamp(49px,5.4vw,80px);line-height:1.12}
.contact-bottom p{font-size:17px;line-height:1.85}
.email{font-size:clamp(19px,2vw,28px);line-height:1.5}
.footer-bottom{font-size:13px;line-height:1.8}
.scene-note{font-size:15px}
.art-label{font-size:10px}
.art-caption{font-size:11px}
.art-caption span:last-child{font-size:9px}
@media(min-width:701px) and (max-width:1100px){
 header{gap:18px}nav{gap:18px;font-size:14px}.nav-contact{font-size:14px;gap:15px}
 .company{font-size:25px}.intro{font-size:18px}.actions{gap:18px}
 .button,.text-link{font-size:14px}.statement>p{font-size:28px}.statement>div{font-size:16px}
 .product-grid{gap:6%}.product-copy>p{font-size:17px}.product-copy .lead{font-size:21px}
 .feature-line p{font-size:16px}.update-strip{grid-template-columns:1fr 1.4fr 150px}
 .update-strip>p{font-size:16px}.footer-bottom{font-size:12px}
}
@media(max-width:700px){
 .company{font-size:25px}.company small{font-size:9px}.nav-contact{font-size:14px}
 .eyebrow{font-size:10px;letter-spacing:1.5px}
 h1{font-size:clamp(48px,11vw,68px);letter-spacing:-2px;line-height:1.1}
 h1 em{letter-spacing:-1.8px}h2{font-size:clamp(38px,9vw,48px);line-height:1.18}
 .intro{font-size:18px;line-height:1.8}.button,.text-link{font-size:15px}
 .actions{gap:21px}.button{padding:17px 20px}.powered>span,.footer-powered>span{font-size:9px}
 .statement>p{font-size:28px}.statement>div{font-size:16px}
 .section-top>p:last-child{font-size:17px}.principles{grid-template-columns:1fr;gap:22px}
 .principles h3{font-size:21px;min-height:0;margin:12px 0 8px}
 .principles p{font-size:17px;margin:8px 0 0}.number{font-size:25px}
 .product-copy>p{font-size:17px}.product-copy .lead{font-size:22px}
 .feature-line h3{font-size:20px}.feature-line p{font-size:17px}
 .status{font-size:9px;letter-spacing:.8px}.tiny-label{font-size:10px}
 blockquote{font-size:32px}.product-visual figcaption p{font-size:17px}
 .product-visual small{font-size:11px}.update-strip{grid-template-columns:1fr;gap:18px}
 .update-title,.update-strip>p,.update-strip img{grid-column:auto;grid-row:auto}
 .update-strip h3{font-size:29px}.update-strip>p{font-size:17px;max-width:none}
 .update-strip img{width:100%;height:210px;object-position:center}
 .contact h2{font-size:clamp(42px,10vw,58px);letter-spacing:-1.6px}
 .contact-bottom p{font-size:16px}.contact-bottom p br{display:none}
 .email{font-size:clamp(15px,4.2vw,20px);gap:10px}
 .footer-bottom{font-size:12px}.scene-note{font-size:13px}.art-label{font-size:9px}
 .art-caption{font-size:10px}
}

/* Original LightNowPress leads the brand hierarchy. */
header{height:125px}
.primary-brand{display:flex;flex-direction:column;align-items:flex-start;gap:7px;flex-shrink:0}
.primary-brand img{width:270px;border-radius:3px}
.primary-brand>span{font-size:11px;line-height:1.5;letter-spacing:.25px;color:var(--muted)}
.footer-brand img{width:235px}
@media(min-width:701px) and (max-width:1000px){.primary-brand img{width:225px}nav{gap:16px}.nav-contact{gap:12px}}
@media(max-width:700px){header{height:120px;gap:12px}.primary-brand img{width:210px}.primary-brand>span{font-size:9px;letter-spacing:0}.nav-contact{font-size:13px;gap:8px;white-space:nowrap}.footer-brand img{width:225px}}
@media(max-width:370px){.primary-brand img{width:185px}.primary-brand>span{font-size:8px}.nav-contact{font-size:12px;gap:6px}}

/* A spacious, logo-led opening with the positioning directly beneath. */
header.masthead{height:76px;border-bottom:0}
.masthead-name{font-size:11px;letter-spacing:2.5px;font-weight:600}
.brand-opening{text-align:center;padding:35px 0 62px;border-bottom:1px solid var(--line)}
.opening-logo{width:min(950px,100%);margin:0 auto;border-radius:8px;box-shadow:0 22px 65px #14213a18}
.brand-opening h1{font-size:clamp(48px,5.5vw,80px);line-height:1.1;letter-spacing:-2.8px;margin:35px auto 19px;font-weight:500}
.brand-opening h1 em{letter-spacing:-2.4px}
.opening-powered{font-size:14px;letter-spacing:.6px;color:var(--muted);margin:0}
.opening-explore{display:inline-flex;align-items:center;gap:18px;margin-top:32px;font-size:13px;color:var(--muted)}
.opening-explore:hover{color:var(--blue)}
.everyday-title{font-size:clamp(48px,4.8vw,70px);font-weight:500;letter-spacing:-2.6px;line-height:1.1;margin:29px 0}
@media(max-width:1000px){header.masthead{height:76px}.brand-opening{padding-top:30px}.everyday-title{font-size:clamp(43px,5vw,60px)}}
@media(max-width:700px){header.masthead{height:65px}.masthead-name{font-size:9px;letter-spacing:1.8px}.brand-opening{padding:24px 0 40px}.opening-logo{width:100%;border-radius:5px;box-shadow:0 16px 40px #14213a18}.brand-opening h1{font-size:clamp(35px,8.3vw,58px);letter-spacing:-1.5px;line-height:1.14;margin:26px auto 17px}.brand-opening h1 em{letter-spacing:-1.4px}.opening-powered{font-size:12px;letter-spacing:.2px}.opening-explore{font-size:12px;margin-top:26px}.everyday-title{font-size:clamp(45px,10.7vw,64px);letter-spacing:-2px}}

/* Full-width original brand artwork sets the opening theme. */
.brand-opening{width:100%;padding:0 0 70px;background:#080f23;color:#f8faff;border-bottom:0;overflow:hidden}
.opening-logo{width:100%;max-width:none;margin:0;border-radius:0;box-shadow:none}
.brand-opening h1{font-size:clamp(52px,6vw,94px);max-width:1200px;padding:0 5%;margin:42px auto 24px;line-height:1.08}
.brand-opening h1 em{color:#b1c0ff}
.opening-powered{color:#bec9e0;font-size:16px}
.opening-explore{color:#bec9e0;font-size:14px;margin-top:30px}
.opening-explore:hover{color:#fff}
@media(max-width:1000px){.brand-opening{padding-top:0}.brand-opening h1{font-size:clamp(48px,6.8vw,76px)}}
@media(max-width:700px){.brand-opening{padding:0 0 43px}.opening-logo{width:100%;max-width:none;border-radius:0;box-shadow:none}.brand-opening h1{font-size:clamp(35px,8.5vw,58px);margin:30px auto 21px;padding:0 5%;letter-spacing:-1.5px}.opening-powered{font-size:12px}.opening-explore{font-size:12px;margin-top:25px}}

/* Editorial serif treatment for the opening positioning. */
.brand-opening h1{font-family:'Baskerville','Baskerville Old Face','Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;font-size:clamp(54px,6.2vw,96px);font-weight:400;letter-spacing:-1.8px;line-height:1.13;margin:40px auto 0;text-wrap:balance}
.brand-opening h1 em{font-family:inherit;font-weight:400;letter-spacing:-1.6px;color:#c1ccf5}
.brand-opening .opening-explore{margin-top:34px}
@media(max-width:700px){.brand-opening h1{font-size:clamp(36px,8.8vw,61px);letter-spacing:-.7px;line-height:1.17;margin:28px auto 0}.brand-opening h1 em{letter-spacing:-.6px}.brand-opening .opening-explore{margin-top:26px}}

/* Tighter transition after the opening discovery link. */
.brand-opening{padding-bottom:28px}
#everyday.hero{padding-top:40px}
@media(max-width:700px){.brand-opening{padding-bottom:20px}#everyday.hero{padding-top:28px}}

/* Original solution logos lead their sections at a generous scale. */
.product-brand-stage{width:100%;margin:0 0 55px;padding:24px 0 34px;text-align:center}
.product-brand-stage .product-logo-featured{width:min(1100px,100%);max-width:100%;height:auto;margin:0 auto}
.home-section .product-brand-stage{background:#fff;border-radius:6px;padding:28px 20px}
.product-copy h2{margin-top:0}
@media(max-width:700px){.product-brand-stage{margin-bottom:32px;padding:6px 0 20px}.product-brand-stage .product-logo-featured{width:100%;max-width:none}.home-section .product-brand-stage{padding:12px 0}.product-heading{margin-bottom:20px}}

/* Digital Indoor Infrastructure is the central company message. */
.building-intro{display:block;font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-size:clamp(18px,1.8vw,27px);font-weight:400;letter-spacing:.7px;line-height:1.5;margin-bottom:17px;color:#d7dff1}
.infrastructure-subtitle{font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-size:clamp(17px,1.7vw,24px);font-weight:400;line-height:1.6;letter-spacing:.2px;color:#c1cce3;margin:25px 6% 0}
@media(max-width:700px){.building-intro{font-size:18px;letter-spacing:.4px;margin-bottom:14px}.infrastructure-subtitle{font-size:17px;margin-top:22px}.brand-opening h1.infrastructure-headline{font-size:clamp(38px,9.5vw,66px)}}

.infrastructure-title .building-intro{color:var(--muted);font-size:clamp(18px,1.8vw,25px);margin-bottom:16px;letter-spacing:.3px}
.infrastructure-title{font-size:clamp(43px,4.6vw,67px)}
@media(max-width:700px){.infrastructure-title{font-size:clamp(40px,10.1vw,60px)}.infrastructure-title .building-intro{font-size:19px}}

/* Refined editorial typography for the DII company statement. */
.everyday-title.infrastructure-title{font-family:Baskerville,'Baskerville Old Face','Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;font-size:clamp(43px,4.4vw,65px);font-weight:400;line-height:1.14;letter-spacing:-1.6px}
.infrastructure-title .building-intro{font-family:inherit;font-size:clamp(23px,2.3vw,33px);font-weight:400;letter-spacing:-.3px;color:#52617a;line-height:1.35;margin-bottom:17px}
.infrastructure-title em{font-family:inherit;letter-spacing:-1.5px;color:#4561be}
.dii-abbreviation{white-space:nowrap;font-size:.58em;letter-spacing:-.4px}
@media(max-width:700px){.everyday-title.infrastructure-title{font-size:clamp(39px,9.6vw,58px);letter-spacing:-1.1px}.infrastructure-title .building-intro{font-size:25px;margin-bottom:14px}.infrastructure-title em{letter-spacing:-1px}}

/* Full-size brand artwork closes the page. */
.closing-brand{width:100%;background:#080f23;overflow:hidden}
.closing-logo{display:block;width:100%;max-width:none;height:auto;margin:0;border-radius:0}
.brand-opening{padding-top:34px}
footer .footer-bottom{margin-top:0}
@media(max-width:1000px){.brand-opening{padding-top:30px}}
@media(max-width:700px){.brand-opening{padding-top:20px}}

.company-positioning{font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-size:clamp(16px,1.6vw,23px);font-weight:400;line-height:1.65;letter-spacing:.2px;color:#c5cfe5;margin:25px auto 0;padding:0 7%;max-width:1050px;text-wrap:balance}
@media(max-width:700px){.company-positioning{font-size:16px;margin-top:20px;line-height:1.7}}

.infrastructure-title .foundation-detail{display:block;font-family:inherit;font-size:clamp(24px,2.4vw,34px);font-weight:400;line-height:1.4;letter-spacing:-.35px;color:var(--muted);margin-top:23px}
@media(max-width:700px){.infrastructure-title .foundation-detail{font-size:25px;line-height:1.4;margin-top:19px}.foundation-detail br{display:none}}

.infrastructure-title .dii-name{font-family:inherit;font-size:inherit;font-weight:400;font-style:normal;letter-spacing:inherit;line-height:inherit;color:var(--ink)}

/* Establish the retail solution before its customer benefit headline. */
.product-copy>p.solution-introduction{font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-size:clamp(25px,2.5vw,36px);font-weight:600;line-height:1.25;letter-spacing:-.8px;color:var(--ink);margin:0 0 26px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.solution-introduction span{display:block;font-weight:400;color:#4561be;margin-top:4px}
@media(max-width:700px){.product-copy>p.solution-introduction{font-size:29px;letter-spacing:-.5px;margin-bottom:25px;padding-bottom:18px}}

.product-copy>p.solution-introduction{font-size:clamp(20px,2.05vw,29px);font-weight:400;letter-spacing:-.6px;white-space:nowrap}
.solution-introduction strong{font-family:inherit;font-size:inherit;font-weight:700;color:var(--ink)}
@media(max-width:700px){.product-copy>p.solution-introduction{font-size:clamp(18px,5.1vw,29px);letter-spacing:-.5px}}

/* One cohesive retail heading, with a single rule beneath the full group. */
.solution-heading{border-bottom:1px solid var(--line);padding-bottom:26px;margin-bottom:25px}
.solution-heading .solution-introduction{font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-size:clamp(20px,2.05vw,29px);font-weight:400;line-height:1.3;letter-spacing:-.6px;white-space:nowrap;color:var(--ink);margin:0 0 15px;padding:0;border:0}
.solution-heading h2{margin:0;line-height:1.15}
@media(max-width:700px){.solution-heading{padding-bottom:23px;margin-bottom:23px}.solution-heading .solution-introduction{font-size:clamp(18px,5.1vw,29px);letter-spacing:-.5px;margin-bottom:14px}}

.solution-heading h2{font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-weight:500;font-style:normal;color:var(--ink);letter-spacing:-1.6px;line-height:1.2}

.store-label{display:inline-flex;align-items:center;gap:.22em;vertical-align:baseline;white-space:nowrap}
.store-icon{display:inline-block;width:.85em;height:.85em;flex-shrink:0;align-self:center;overflow:visible}

.store-label{gap:.3em}.store-icon{width:1.7em;height:1.7em}

.product-copy .retail-question{font-weight:600;line-height:1.5;margin-bottom:15px}

/* Two substantial retail scenes: personal assistance, then smartphone guidance. */
#navicue .product-grid{align-items:start;gap:6%;grid-template-columns:1fr 1.12fr}
.retail-visuals{display:flex;flex-direction:column;gap:28px}
.retail-scene{margin:0;background:#eef2f7;overflow:hidden;border-radius:6px}
.retail-scene img{display:block;width:100%;height:auto;object-fit:contain}
.retail-scene figcaption{padding:19px 23px 21px}
.retail-scene figcaption strong{display:block;font-size:17px;font-weight:500;line-height:1.5;color:var(--ink)}
.retail-scene figcaption span{display:block;font-size:11px;line-height:1.6;color:var(--muted);margin-top:8px}
@media(max-width:1000px) and (min-width:701px){#navicue .product-grid{grid-template-columns:1fr}.retail-visuals{margin-top:5px;max-width:850px;width:100%;margin-left:auto;margin-right:auto}}
@media(max-width:700px){#navicue .product-grid{grid-template-columns:1fr;gap:30px}.retail-visuals{gap:24px}.retail-scene figcaption{padding:17px 19px}.retail-scene figcaption strong{font-size:16px}}

/* Architectural concept artwork replaces the decorative CSS map. */
.dii-visual{margin:0;align-self:center;background:#edf0f5;border-radius:8px;overflow:hidden}
.dii-visual img{width:100%;height:auto;display:block}
.dii-visual figcaption{font-size:11px;line-height:1.6;letter-spacing:.5px;color:var(--muted);padding:12px 20px;text-align:center;background:#f1f3f6}
@media(max-width:700px){.dii-visual{margin-top:12px}}

.map-journey{position:relative}.room-journey{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.journey-halo,.journey-line{fill:none;stroke:#416cff;stroke-linecap:round;stroke-linejoin:round}.journey-halo{stroke-width:14;opacity:.23;filter:url(#route-glow)}.journey-line{stroke-width:5;stroke-dasharray:9 10;animation:route-flow 2s linear infinite}.journey-endpoint{fill:#416cff;stroke:white;stroke-width:4}.journey-traveler{fill:white;stroke:#345cf0;stroke-width:5;filter:drop-shadow(0 0 5px #fff)}.journey-label rect{fill:#fff;fill-opacity:.94;stroke:#d4ddee}.journey-label text{font-family:'Avenir Next',Arial,sans-serif;font-size:23px;fill:#243855;font-weight:500}@keyframes route-flow{to{stroke-dashoffset:-38}}
@media(prefers-reduced-motion:reduce){.journey-line{animation:none}.journey-traveler{display:none}}

/* Reduce the lead-in spacing above NaviCue's original logo. */
#navicue.product{padding-top:30px}
#navicue .product-heading{margin-bottom:10px;padding-bottom:12px}
#navicue .product-brand-stage{padding-top:0;padding-bottom:14px;margin-bottom:28px}
.statement{padding-bottom:30px}
@media(max-width:700px){#navicue.product{padding-top:20px}#navicue .product-heading{margin-bottom:6px}#navicue .product-brand-stage{padding-top:0;padding-bottom:10px;margin-bottom:23px}.statement{padding-bottom:22px}}

/* Slightly tighter spacing around HomeCue branding. */
#homecue .product{padding-top:60px}
#homecue .product-heading{margin-bottom:26px}
#homecue .product-brand-stage{padding:16px 20px;margin-bottom:35px}
@media(max-width:700px){#homecue .product{padding-top:36px}#homecue .product-heading{margin-bottom:14px}#homecue .product-brand-stage{padding:8px 0;margin-bottom:24px}}

/* Keep the complete HomeCue artwork legible, without cropping any labels. */
.home-grid{grid-template-columns:1fr;gap:36px}
.home-grid .product-copy{max-width:800px}
.home-grid .product-visual{order:2;width:100%;margin:0}
.home-grid .product-visual>img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center}
@media(max-width:700px){.home-grid .product-visual>img{height:auto;object-fit:contain}.home-grid{gap:28px}}

/* HomeCue pairs room-to-room map guidance with the person using assistance. */
.home-visual-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;order:2;align-items:start;width:100%}
.home-visual-pair .dii-visual{align-self:start;margin:0}
.home-visual-pair .home-person-visual{order:initial;margin:0}
.home-grid .home-person-visual>img{height:auto;width:100%;object-fit:contain}
@media(max-width:700px){.home-visual-pair{grid-template-columns:1fr;gap:24px}}

/* A cool wash marks the retail section, contrasting with HomeCue's warm tone. */
.navicue-section{background:#edf3fa;border-top:1px solid #dfe8f3;border-bottom:1px solid #dfe8f3}
.navicue-section #navicue.product{padding-top:45px;padding-bottom:60px}
.navicue-section .product-heading,.navicue-section .solution-heading,.navicue-section .update-strip{border-color:#d1ddeb}
@media(max-width:700px){.navicue-section #navicue.product{padding-top:28px;padding-bottom:40px}}

/* HomeCue mirrors NaviCue: copy beside a vertical pair of illustrations. */
.home-grid{grid-template-columns:1fr 1.12fr;gap:6%;align-items:start}
.home-grid .product-copy{grid-column:1;grid-row:1;max-width:none}
.home-visual-pair{grid-column:2;grid-row:1;grid-template-columns:1fr;gap:28px;order:initial}
@media(max-width:1000px){.home-grid{grid-template-columns:1fr;gap:35px}.home-grid .product-copy{grid-column:1;grid-row:1}.home-visual-pair{grid-column:1;grid-row:2;max-width:850px;margin:0 auto}}
@media(max-width:700px){.home-grid{gap:28px}.home-visual-pair{gap:24px}}

.product-copy>p.home-services-intro{font-size:19px;font-weight:600;line-height:1.6;color:var(--ink);margin:27px 0 19px}

/* HomeCue journey: bedroom to kitchen in a warm red palette. */
.home-map-visual .journey-halo,.home-map-visual .journey-line{stroke:#d84c57}
.home-map-visual .journey-endpoint{fill:#d84c57}
.home-map-visual .journey-traveler{stroke:#be3546}
.home-map-visual .journey-label text{fill:#8e2938}

/* Additional pink journey from the living-room sofa to the kitchen. */
.home-map-visual .sofa-route-line{fill:none;stroke:#ee70b3;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:9 10;animation:route-flow 2s linear infinite}
.home-map-visual .sofa-route-end{fill:#ee70b3;stroke:#fff;stroke-width:3}
.home-map-visual .sofa-route-traveler{fill:#fff;stroke:#df4a9b;stroke-width:5}
.sofa-route-label rect{fill:#fff;fill-opacity:.95;stroke:#efd1e2}.sofa-route-label text{font-family:'Avenir Next',Arial,sans-serif;font-size:20px;font-weight:500;fill:#ad3478}
@media(prefers-reduced-motion:reduce){.home-map-visual .sofa-route-line{animation:none}.sofa-route-traveler{display:none}}

/* The introductory entrance-to-kitchen journey also appears in HomeCue. */
.home-blue-line{fill:none;stroke:#416cff;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:9 10;animation:route-flow 2s linear infinite}
.home-blue-end{fill:#416cff;stroke:#fff;stroke-width:3}.home-blue-traveler{fill:#fff;stroke:#345cf0;stroke-width:5}
@media(prefers-reduced-motion:reduce){.home-blue-line{animation:none}.home-blue-traveler{display:none}}

/* Orange entrance-to-kitchen overlay in HomeCue. */
.home-blue-line{stroke:#ee9138}.home-blue-end{fill:#ee9138}.home-blue-traveler{stroke:#dc7920}

.approach h2.easy-update-heading{font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-weight:500;font-style:normal;color:var(--ink);letter-spacing:-1.5px;line-height:1.2;text-wrap:balance}

/* Clean, unified closing invitation. */
.contact h2.contact-headline{font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-size:clamp(40px,4.5vw,66px);font-weight:400;font-style:normal;letter-spacing:-1.7px;line-height:1.22;color:#f7f8fb;max-width:1150px;margin:30px 0 45px;text-wrap:balance}
@media(max-width:700px){.contact h2.contact-headline{font-size:clamp(33px,8vw,45px);letter-spacing:-1px;line-height:1.25;margin:25px 0 30px}.contact-headline br{display:none}}

/* Refined bold typography for the top navigation. */
header.masthead nav,header.masthead .nav-contact,header.masthead .masthead-name{font-family:'Avenir Next',Avenir,'Segoe UI',Arial,sans-serif;font-weight:700}
header.masthead nav{font-size:16px;letter-spacing:.25px}
header.masthead nav a{line-height:1.4;padding:8px 0}
header.masthead .nav-contact{font-size:16px;letter-spacing:.2px}
header.masthead .masthead-name{font-size:12px;letter-spacing:2.2px}
@media(min-width:701px) and (max-width:1000px){header.masthead nav,header.masthead .nav-contact{font-size:14px}}
@media(max-width:700px){header.masthead .nav-contact{font-size:14px}header.masthead .masthead-name{font-size:10px;letter-spacing:1.6px}}

/* Anchor sections align with the top of the viewport. */
html{scroll-padding-top:0}
#navicue,#homecue,#approach,#contact{scroll-margin-top:0}
@media(max-width:700px){html{scroll-padding-top:0}}

.supermarket-map{margin:42px 0 0;background:#fff;border-radius:6px;overflow:hidden}.supermarket-map img{display:block;width:100%;height:auto;object-fit:contain}.supermarket-map figcaption{padding:16px 22px;font-size:13px;line-height:1.6;color:var(--muted)}
@media(max-width:700px){.supermarket-map{margin-top:28px}.supermarket-map figcaption{font-size:12px;padding:14px 17px}}

.supermarket-map{margin-top:48px;border:1px solid #dce5f0;border-radius:12px;background:#f8faff;box-shadow:0 15px 45px #263e6310}
.supermarket-map-heading{padding:36px 40px 10px}.supermarket-map-heading .eyebrow{color:#596f96;margin:0 0 15px}.supermarket-map-heading h3{font-size:clamp(28px,3vw,43px);font-weight:500;line-height:1.2;letter-spacing:-1px;margin:0 0 16px}.supermarket-map-heading>p:last-child{font-size:17px;line-height:1.7;color:var(--muted);margin:0 0 15px}.supermarket-map img{mix-blend-mode:multiply}.supermarket-map figcaption{border-top:1px solid #e1e7f0;color:#68758a}
@media(max-width:700px){.supermarket-map-heading{padding:25px 23px 8px}.supermarket-map-heading>p:last-child{font-size:16px}}

.supermarket-map-heading h3{font-family:Baskerville,'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;font-size:clamp(34px,3.5vw,51px);font-weight:400;letter-spacing:-.9px;line-height:1.16}

.kitchen-scale-map{margin:48px 0 0;border:1px solid #e1ddd6;border-radius:12px;background:#faf8f4;overflow:hidden}.kitchen-scale-heading{padding:36px 40px 10px}.kitchen-scale-heading .eyebrow{color:#6b716f;margin:0 0 15px}.kitchen-scale-heading h3{font-family:Baskerville,'Iowan Old Style',Palatino,Georgia,serif;font-size:clamp(34px,3.5vw,51px);font-weight:400;letter-spacing:-.9px;line-height:1.16;margin:0 0 16px}.kitchen-scale-heading>p:last-child{font-size:17px;color:var(--muted);line-height:1.7;margin:0 0 15px}.kitchen-scale-map img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.kitchen-scale-map figcaption{padding:16px 22px;border-top:1px solid #e5e0d8;font-size:13px;line-height:1.6;color:var(--muted)}
@media(max-width:700px){.kitchen-scale-heading{padding:25px 23px 8px}.kitchen-scale-map{margin-top:30px}}

#homecue .kitchen-scale-map{width:100%;max-width:none}#homecue .kitchen-scale-map img{width:100%;height:auto;max-height:none;object-fit:contain}

/* Lead each solution with its full-scale map directly after the original logo. */
#navicue .supermarket-map,#homecue .kitchen-scale-map{margin:0 0 48px}
#navicue .product-brand-stage,#homecue .product-brand-stage{margin-bottom:25px}
@media(max-width:700px){#navicue .supermarket-map,#homecue .kitchen-scale-map{margin-bottom:32px}#navicue .product-brand-stage,#homecue .product-brand-stage{margin-bottom:18px}}

/* Store-scale and kitchen-scale mapping examples follow the approach introduction. */
.approach-map-gallery{display:flex;flex-direction:column;gap:36px;margin-top:38px}
.approach-map-gallery .supermarket-map,.approach-map-gallery .kitchen-scale-map{width:100%;margin:0}
@media(max-width:700px){.approach-map-gallery{gap:26px;margin-top:28px}}

/* Match NaviCue's visual prominence to the HomeCue branding. */
#navicue .product-brand-stage{background:#fff;border-radius:6px;padding:16px 0}
#navicue .product-brand-stage .product-logo-featured{width:100%;max-width:none}
@media(max-width:700px){#navicue .product-brand-stage{padding:8px 0}}
