@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');
:root{--navy:#002d45;--blue:#007ba7;--aqua:#00a8c6;--gray:#f3f6f7;--muted:#5c707d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--navy);font-family:Montserrat,Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--aqua);outline-offset:5px}.skip{position:fixed;left:10px;top:-100px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}header{height:97px;padding:0 5.4%;display:flex;align-items:center;justify-content:space-between;gap:25px;background:white}.brand-image{display:block;width:151px;height:61px;background:url('assets/brand-reference.jpg') -25px -304px/1280px 853.333px no-repeat}nav{display:flex;gap:32px;margin-left:auto;margin-right:50px}nav a{font-size:14px;font-weight:500}nav a:hover{color:var(--blue)}.languages{display:flex;gap:3px}.languages button{border:0;background:transparent;padding:10px 8px;min-height:42px;font-size:12px;font-weight:600;color:#62717a}.languages button.active{color:var(--blue);background:#eef7fa;border-radius:3px}.hero{min-height:650px;position:relative;color:white;background:var(--navy);overflow:hidden}.hero-photo{position:absolute;inset:0;background:url('assets/lake-geneva.jpg') center 58%/cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,24,40,.93),rgba(0,29,48,.7) 35%,rgba(0,29,48,.07) 77%),linear-gradient(0deg,rgba(0,24,40,.45),transparent 30%)}.hero-content{position:relative;padding:85px 6% 112px 7.4%;max-width:865px}.eyebrow{font-size:12px;letter-spacing:2.4px;line-height:1.7;text-transform:uppercase;font-weight:600;display:flex;gap:15px;align-items:center}.short-line{width:35px;flex-shrink:0;height:1px;background:var(--aqua)}h1{font-size:60px;letter-spacing:-2px;line-height:1.12;font-weight:500;margin:25px 0 24px;max-width:670px}h1 em{font-style:normal;color:#71d0e8}.hero-content p{font-size:16px;line-height:1.85;max-width:460px;color:#e0edf3;margin:0 0 29px}.hero-actions{display:flex;align-items:center;gap:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:16px 25px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.white{background:white;color:var(--navy)}.white:hover{background:#e5f4f8}.text-link{font-size:14px;border-bottom:1px solid #74b1c6;padding-bottom:5px}.hero-audience{font-size:12px;color:#bdd0db;line-height:1.7;margin-top:24px}.hero-bottom{position:absolute;bottom:29px;left:7.4%;right:5.4%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:3px;gap:18px}.hero-bottom span:last-child{letter-spacing:2px}.hero-bottom i{display:inline-block;width:24px;height:1px;background:#6ccbdf;margin:0 14px;vertical-align:middle}.intro-bar{min-height:80px;background:var(--navy);color:#deedf3;display:flex;align-items:center;justify-content:space-between;padding:22px 7.4%;gap:28px;font-size:14px;line-height:1.7}.intro-location{color:#90bfd0;font-size:12px}.section{padding:86px 7.4%}.section-heading{display:flex;justify-content:space-between;gap:55px;align-items:end;margin-bottom:39px}.blue{color:var(--blue)}h2{font-size:38px;font-weight:500;line-height:1.25;letter-spacing:-1px;margin:16px 0 0}.section-heading>p{max-width:385px;color:var(--muted);font-size:15px;line-height:1.85;margin:0}.product-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid #dce6eb;border-left:1px solid #dce6eb}.product-item{padding:29px 19px;min-height:157px;border-right:1px solid #dce6eb;border-bottom:1px solid #dce6eb;display:flex;flex-direction:column;gap:22px;transition:background .2s}.product-item:hover{background:#f1f8fa}.product-item svg{width:38px;height:38px;fill:none;stroke:var(--blue);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.product-item h3{font-size:14px;line-height:1.6;font-weight:600;margin:0;overflow-wrap:anywhere}.category-note{display:flex;align-items:center;gap:20px;margin-top:30px}.note-line{width:36px;height:1px;background:var(--aqua);flex-shrink:0}.category-note p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.offer{background:var(--gray)}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}.step{border-top:1px solid #d3e0e6;padding-top:25px}.step>span{font-size:12px;letter-spacing:2px;color:var(--blue)}.step h3{font-size:20px;font-weight:600;line-height:1.5;margin:21px 0 13px}.step p{font-size:15px;line-height:1.9;color:var(--muted);margin:0}.contact{background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-top:75px;padding-bottom:72px}.contact .eyebrow{color:#7dccdf}.contact h2{font-size:43px;max-width:430px}.contact-intro>p{font-size:16px;line-height:1.9;color:#c4d9e3;max-width:380px;margin:24px 0 0}.contact-signature{display:inline-block;font-size:70px;line-height:1;font-weight:800;letter-spacing:-5px;color:#326078;margin-top:37px}.contact-signature>span{color:#2c819b}.contact-signature small{display:block;font-size:10px;font-weight:500;letter-spacing:3px;color:#8ab5c8;margin-top:15px}.contact-details{padding-top:5px;min-width:0}.contact-channel{display:flex;gap:21px;align-items:center}.contact-channel>div{min-width:0}.contact-channel svg{width:29px;height:29px;fill:none;stroke:#75cce3;stroke-width:1.2;flex-shrink:0}.channel-label{display:block;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#87b6ca;margin-bottom:12px;line-height:1.5}.channel-value{font-size:25px;font-weight:500;line-height:1.5;letter-spacing:-.6px;overflow-wrap:anywhere}.channel-value[href]:hover{color:#79d1e7}.email-instruction{color:#c4d9e3;font-size:14px;line-height:1.9;margin:23px 0 35px 50px}.phone-channel{border-top:1px solid #326078;padding-top:28px}.contact-language-note{margin:30px 0 0 50px;color:#90b3c5;font-size:12px;line-height:1.9}footer{padding:34px 7.4%;display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-wordmark{font-size:35px;font-weight:800;letter-spacing:-2.5px;line-height:1}.footer-wordmark>span{color:var(--blue)}.footer-wordmark small{display:block;font-size:10px;font-weight:500;letter-spacing:6px;margin-top:7px}footer>span{color:var(--muted);font-size:12px}.footer-top-link{font-size:12px;color:var(--muted)}
@media(min-width:1600px){.hero-content{padding-top:110px;padding-bottom:120px}.hero{min-height:720px}h1{font-size:68px}}@media(max-width:1100px){nav{gap:20px;margin-right:16px}.hero-content{padding-left:6%;max-width:780px}h1{font-size:55px}.section{padding:70px 6%}.product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.product-item{padding:25px 14px}.contact{gap:45px}.channel-value{font-size:22px}.intro-bar{padding-inline:6%}}@media(max-width:820px){header{height:83px;padding:0 5%;gap:16px}nav{display:none}.brand-image{transform:scale(.85);transform-origin:left center;width:135px}.languages{gap:0}.languages button{padding-inline:7px}.hero-content{padding:65px 6% 110px;max-width:680px}h1{font-size:49px;letter-spacing:-1.8px}.hero-photo{background-position:68% center}.hero-shade{background:linear-gradient(90deg,rgba(0,24,40,.9),rgba(0,29,48,.42)),linear-gradient(0deg,rgba(0,24,40,.5),transparent 50%)}.hero-content p{max-width:400px}.hero-bottom{left:6%;right:6%;font-size:9px;letter-spacing:1.6px}.hero-bottom span:last-child{font-size:9px;letter-spacing:.8px}.hero-bottom i{display:none}.intro-bar{flex-direction:column;align-items:start;gap:8px;font-size:13px}.section-heading{display:block}.section-heading>p{margin-top:21px;max-width:100%}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-item{flex-direction:row;align-items:center;gap:15px;min-height:112px;padding:23px 17px}.product-item svg{width:32px;height:32px}.product-item h3{font-size:14px}.steps{gap:28px}.step h3{font-size:18px}.contact{grid-template-columns:1fr;gap:36px}.contact h2{max-width:100%;font-size:36px}.contact-intro>p{max-width:100%}.contact-signature{display:none}.contact-details{max-width:620px}.channel-value{font-size:26px}.contact-language-note{margin-top:25px}.contact-intro>p{margin-top:20px}}@media(max-width:520px){.eyebrow{font-size:10px;letter-spacing:1.7px}.short-line{width:25px}h1{font-size:43px;line-height:1.17;margin-top:24px}.hero-content{padding-top:57px}.hero-content p{font-size:15px;line-height:1.85;margin-bottom:27px}.hero-actions{align-items:start;flex-direction:column;gap:20px}.hero-audience{font-size:11px;margin-top:22px}.section{padding:56px 6%}h2{font-size:31px;letter-spacing:-.7px}.section-heading{margin-bottom:28px}.section-heading>p{font-size:14px}.product-item{gap:12px;padding:20px 12px;min-height:105px}.product-item svg{width:28px;height:28px}.product-item h3{font-size:14px}.category-note{align-items:start}.note-line{margin-top:11px}.steps{grid-template-columns:1fr;gap:28px}.step h3{font-size:19px;margin:16px 0 10px}.step p{font-size:14px}.contact h2{font-size:32px}.contact-intro>p{font-size:15px}.channel-value{font-size:21px}.contact-channel{gap:16px}.contact-channel svg{width:25px;height:25px}.email-instruction,.contact-language-note{margin-left:41px}.email-instruction{font-size:13px}.channel-label{font-size:11px}footer{padding:29px 6%;gap:24px;flex-wrap:wrap}footer>span{font-size:11px;max-width:190px;line-height:1.8}.footer-top-link{margin-left:auto;font-size:11px}.hero-bottom{font-size:8px}.hero-bottom span:last-child{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Lake Geneva identity and transparent project status */
.site-status{padding:12px 5.4%;background:#eef6f8;color:#426374;display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.5px;line-height:1.6}.site-status a{text-decoration:underline;text-underline-offset:3px}.status-dot{height:6px;width:6px;background:var(--blue);border-radius:50%;flex-shrink:0}.brand-story{display:grid;grid-template-columns:230px 1fr;gap:70px;align-items:center;padding-top:64px;padding-bottom:64px;border-bottom:1px solid #dce6eb}.story-mark{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;border-right:1px solid #dce6eb;padding-right:35px}.story-mark .brand-image{transform:none;width:151px}.latitude{font-size:66px;font-weight:500;letter-spacing:-4px;line-height:1}.latitude span{font-size:32px;color:var(--blue);letter-spacing:0;margin-left:8px}.lake-name{font-size:10px;letter-spacing:3px}.story-waves{width:130px;height:25px;fill:none;stroke:var(--aqua);stroke-width:1.5}.story-copy{max-width:750px}.story-copy h2{font-size:31px}.story-copy p{color:var(--muted);line-height:1.9;font-size:15px;margin:20px 0}.story-coordinate{font-size:12px;color:var(--blue);line-height:1.8}.product-item{min-height:204px;gap:21px;padding:27px 19px}.product-icon{display:flex;align-items:center;justify-content:center;width:84px;height:84px;border-radius:20px;background:linear-gradient(145deg,#eaf5f8,#f8fbfc);flex-shrink:0}.product-item svg{width:62px;height:62px;stroke-width:1.55}.product-item .icon-wash{fill:#cbe8ef;stroke:none}.product-item:hover .product-icon{background:#dceff4}.project-note{background:#f3f6f7;padding-top:40px;padding-bottom:40px;border-bottom:1px solid #dce6eb}.project-note h2{font-size:23px;margin-top:12px}.project-note p{max-width:1000px;color:#526a77;font-size:13px;line-height:1.9;margin:16px 0 0}.footer-copy{display:flex;flex-direction:column;gap:9px;color:var(--muted);font-size:12px;line-height:1.6}.footer-copy small{font-size:10px}.hero-content{max-width:1010px}h1{max-width:840px;font-size:clamp(43px,4.2vw,60px)}
@media(max-width:1100px){.brand-story{gap:40px;grid-template-columns:200px 1fr}.product-icon{width:76px;height:76px}.product-item svg{width:56px;height:56px}}
@media(max-width:820px){.brand-story{grid-template-columns:160px 1fr;gap:30px}.story-mark{padding-right:20px}.story-mark .brand-image{transform:scale(.85);transform-origin:center}.latitude{font-size:58px}.story-copy h2{font-size:27px}.product-item{min-height:135px;gap:16px;padding:23px 17px}.product-icon{width:68px;height:68px;border-radius:16px}.product-item svg{width:52px;height:52px}h1{font-size:49px}.footer-copy{max-width:270px}}
@media(max-width:520px){.site-status{padding-inline:6%;font-size:10px}.brand-story{grid-template-columns:1fr;gap:27px}.story-mark{border-right:0;border-bottom:1px solid #dce6eb;padding:0 0 24px;flex-direction:row;justify-content:space-between;flex-wrap:wrap;gap:12px}.story-mark .brand-image{transform:none}.latitude{font-size:49px}.latitude span{font-size:26px}.lake-name{flex-basis:100%;text-align:right}.story-waves{display:none}.story-copy h2{font-size:27px}.story-copy p{font-size:14px}.product-item{flex-direction:column;align-items:flex-start;min-height:175px;padding:20px 14px;gap:15px}.product-icon{width:72px;height:72px}.product-item svg{width:56px;height:56px}.product-item h3{font-size:13px}h1{font-size:40px;letter-spacing:-1.5px}.project-note{padding-block:32px}.footer-copy{max-width:190px;font-size:11px}}

/* Original logo beside a typographic explanation of its name. */
.brand-story{grid-template-columns:230px minmax(0,1fr);gap:65px;align-items:start;padding-block:70px}.story-mark{padding:16px 35px 16px 0;min-height:145px;justify-content:center;gap:0}.story-mark .brand-image{width:151px;transform:none}.story-copy{max-width:760px}.north-identity{display:flex;align-items:center;gap:24px;line-height:1}.north-identity .latitude{font-size:64px;letter-spacing:-3px;font-weight:500}.north-outline{font-size:43px;letter-spacing:.19em;font-weight:600;color:transparent;-webkit-text-stroke:1px var(--navy)}.lake-caption{display:flex;align-items:center;gap:22px;margin-top:16px;font-size:10px;letter-spacing:3px;color:var(--blue)}.lake-caption .story-waves{display:block;width:85px;height:16px;stroke:#75b8c8;stroke-width:1.1}.story-copy .story-origin{font-size:12px;margin:10px 0 29px;color:var(--muted)}.story-copy h2{font-size:33px;line-height:1.3;margin:0 0 22px;letter-spacing:-.8px}.story-copy .story-lead{font-weight:600;font-size:16px;color:var(--navy);margin:0 0 10px}.story-copy .story-text{margin:0;max-width:680px}.hero-bottom .hero-slogan{letter-spacing:1.1px;line-height:1.6;max-width:48%}.contact-brand{display:inline-flex;background:white;padding:12px 17px;margin-top:32px}.contact-brand .brand-image{transform:none;width:151px}.footer-brand{flex-shrink:0}.footer-brand .brand-image{transform:none;width:151px}
@media(max-width:1100px){.brand-story{grid-template-columns:190px minmax(0,1fr);gap:38px}.north-identity{gap:18px}.north-identity .latitude{font-size:58px}.north-outline{font-size:36px}}
@media(max-width:820px){.brand-story{grid-template-columns:150px minmax(0,1fr);gap:28px}.story-mark{padding-right:15px}.story-mark .brand-image{transform:scale(.85);transform-origin:center}.north-identity .latitude{font-size:48px}.north-outline{font-size:28px}.north-identity{gap:15px}.story-copy h2{font-size:28px}.contact-brand{display:none}}
@media(max-width:520px){.brand-story{grid-template-columns:1fr;gap:28px;padding-block:48px}.story-mark{justify-content:flex-start;min-height:0;border:0;padding:0}.story-mark .brand-image{transform:none}.north-identity{gap:20px}.north-identity .latitude{font-size:58px}.north-outline{font-size:33px}.story-copy h2{font-size:29px}.story-copy .story-origin{margin-bottom:27px;line-height:1.8}.story-copy .story-lead{font-size:15px}.hero-bottom{align-items:end}.hero-bottom .hero-slogan{font-size:9px;letter-spacing:.6px}.hero-bottom span:last-child{max-width:48%;text-align:right;line-height:1.7}.footer-brand .brand-image{transform:scale(.85);transform-origin:left center;width:135px}}

/* Center each category and align the double wave beneath NORTH. */
.product-item{flex-direction:column;align-items:center;justify-content:center;text-align:center}.product-item h3{width:100%;min-height:3.2em;display:flex;align-items:center;justify-content:center;text-align:center}.north-identity{display:grid;grid-template-columns:max-content max-content;column-gap:24px;row-gap:14px;width:max-content;max-width:100%;align-items:center}.north-identity .lake-caption{display:block;grid-column:1;grid-row:2;text-align:center;white-space:nowrap;margin:0;font-size:10px;letter-spacing:2px}.north-identity .story-waves{display:block;grid-column:2;grid-row:2;justify-self:center;width:110px;height:28px;fill:none;stroke:#75b8c8;stroke-width:1.1}.north-identity .north-outline{padding-left:.19em}.north-identity .latitude{text-align:center}
@media(max-width:1100px){.north-identity{column-gap:18px}}
@media(max-width:820px){.north-identity{column-gap:15px}.product-item{flex-direction:column;align-items:center;justify-content:center;min-height:190px}.north-identity .story-waves{width:95px;height:25px}}
@media(max-width:520px){.north-identity{column-gap:20px}.product-item{align-items:center;justify-content:center;min-height:190px}.north-identity .lake-caption{font-size:9px;letter-spacing:1.6px}.north-identity .story-waves{width:105px;height:27px}}

/* Technical marine silhouettes, without decorative tile backgrounds. */
.product-icon{width:108px;height:92px;border-radius:0;background:none}.product-item:hover .product-icon{background:none}.product-item svg{width:96px;height:96px;stroke:var(--navy);stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.product-item .technical-fill{fill:#edf2f4;stroke:none}.product-item .technical-detail{stroke:var(--blue);stroke-width:1.25}.product-item{min-height:218px;gap:12px}.product-item h3{min-height:4.8em}
@media(max-width:1100px){.product-icon{width:98px;height:88px}.product-item svg{width:88px;height:88px}}
@media(max-width:820px){.product-icon{width:108px;height:92px}.product-item svg{width:96px;height:96px}.product-item{min-height:215px}}
@media(max-width:520px){.product-icon{width:102px;height:88px}.product-item svg{width:92px;height:92px}.product-item{min-height:210px}}

/* Realistic 3D category renders use the existing icon area. */
.product-icon img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}

/* Compact Lake Geneva name explanation beside the original header logo. */
header{height:auto;min-height:115px;padding-block:17px;gap:24px}.header-branding{display:flex;align-items:center;gap:23px;flex-shrink:0}.header-branding>.brand{flex-shrink:0}.header-name-story{border-left:1px solid #dce6eb;padding-left:22px;width:250px}.header-name-story .north-identity{column-gap:14px;row-gap:7px}.header-name-story .latitude{font-size:36px;letter-spacing:-1.7px}.header-name-story .north-outline{font-size:24px;letter-spacing:.2em;-webkit-text-stroke:.65px var(--navy)}.header-name-story .lake-caption{font-size:6px;letter-spacing:1.1px}.header-name-story .story-waves{width:76px;height:17px;stroke-width:1.2}.header-name-story p{font-size:8px;color:var(--muted);line-height:1.55;margin:8px 0 0;max-width:225px}header nav{gap:22px;margin-right:14px}header nav a{font-size:12px;white-space:nowrap}header .languages{flex-shrink:0}
@media(max-width:1200px){header nav{display:none}}
@media(max-width:820px){header{min-height:108px;gap:15px}.header-branding{gap:12px}.header-branding .brand-image{transform:scale(.85);transform-origin:left center;width:130px}.header-name-story{padding-left:14px;width:223px}.header-name-story .latitude{font-size:32px}.header-name-story .north-outline{font-size:22px}.header-name-story p{font-size:8px}}
@media(max-width:600px){header{flex-wrap:wrap;justify-content:space-between;padding-top:15px;padding-bottom:10px;gap:8px}.header-branding{width:100%;justify-content:space-between}.header-branding .brand-image{transform:scale(.76);width:115px}.header-name-story{width:calc(100% - 130px);padding-left:14px}.header-name-story .north-identity{column-gap:10px;row-gap:5px}.header-name-story .latitude{font-size:30px}.header-name-story .north-outline{font-size:19px}.header-name-story .story-waves{width:64px;height:16px}.header-name-story .lake-caption{font-size:5.5px;letter-spacing:1px}.header-name-story p{font-size:7px;max-width:200px;margin-top:6px}header .languages{margin-left:auto}header .languages button{min-height:34px;padding-block:7px}}
