@font-face{font-family:Instrument;src:url('../fonts/InstrumentSans-Regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Instrument;src:url('../fonts/InstrumentSans-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--navy:#0f2737;--ink:#142f3e;--blue:#03699a;--muted:#526773;--line:#d7e1e5;--surface:#f1f5f6;--white:#fff;--gutter:clamp(22px,5vw,78px);--content:1360px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:22px}body{margin:0;background:var(--white);color:var(--ink);font:16px/1.55 Instrument,"Helvetica Neue",Arial,sans-serif}a{color:inherit;text-decoration:none}button,textarea{font:inherit}button{cursor:pointer}::selection{background:#b8ddec;color:var(--navy)}a:focus-visible,button:focus-visible,textarea:focus-visible{outline:3px solid #1689b9;outline-offset:4px}.skip{position:absolute;top:-100px;left:15px;z-index:30;background:white;padding:12px}.skip:focus{top:10px}.preview-notice{min-height:38px;background:#102d3b;color:#dfebee;text-align:center;display:flex;align-items:center;justify-content:center;gap:20px;padding:4px 16px;font-size:11px;letter-spacing:.02em}.preview-notice a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:3px;font-weight:700;color:white}.header{background:white;border-bottom:1px solid #e2e9eb;position:relative;z-index:10}.header-inner{max-width:1516px;min-height:88px;margin:auto;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:12px;min-height:48px;line-height:1;font-size:17px;font-weight:700;letter-spacing:.01em}.mark{color:var(--blue);display:grid;place-items:center;width:38px;height:38px;border:1px solid #bad0d8}.mark svg{width:27px}.brand small{display:block;font-size:8px;letter-spacing:.13em;color:#60747c;margin-top:6px}.header nav{display:flex;align-items:center;gap:clamp(24px,3vw,48px);font-size:15px;font-weight:700}.header nav a:not(.nav-cta){display:inline-flex;align-items:center;min-height:48px}.header nav a:not(.nav-cta):hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{display:inline-flex;align-items:center;gap:25px;min-height:50px;padding:12px 18px;background:var(--navy);color:white}.nav-cta:hover{background:#2a4b5c}.menu-toggle{display:none}.hero{background:#f4f7f8;overflow:hidden}.hero-inner{position:relative;max-width:1516px;min-height:585px;margin:auto;padding:0 var(--gutter);display:flex;align-items:center}.hero-content{position:relative;z-index:2;width:43%;max-width:510px;padding:55px 0 65px}.overline,.eyebrow{font-size:11px;font-weight:700;letter-spacing:.13em;color:#24718f;margin:0 0 20px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(43px,4.2vw,60px);line-height:1.08;letter-spacing:-.035em;font-weight:700;margin:0 0 24px;max-width:490px;text-wrap:balance}.hero-content>p{font-size:18px;line-height:1.65;color:var(--muted);max-width:430px;margin-bottom:29px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:54px;padding:14px 20px;border:0;font-size:14px;font-weight:700}.primary{background:var(--blue);color:#fff}.primary:hover{background:#045578}.text-link{display:inline-flex;align-items:center;gap:25px;min-height:48px;font-size:14px;font-weight:700;color:var(--ink)}.hero-art{position:absolute;right:0;top:0;bottom:0;width:64%;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 58% 52%,#e2ebed 0%,#f4f7f8 67%)}.hero-art img{width:min(100%,850px);height:100%;object-fit:contain;position:relative}.hero-art>span{position:absolute;bottom:20px;right:var(--gutter);font-size:9px;letter-spacing:.11em;color:#627983;font-weight:700}.hero-base{border-top:1px solid #d8e3e6;max-width:1516px;margin:auto;padding:22px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:20px}.hero-base div{display:flex;align-items:center;gap:24px}.hero-base span,.type{font-size:10px;font-weight:700;letter-spacing:.1em;color:#42788e}.hero-base strong{font-size:16px}.hero-base>a{min-height:44px;display:inline-flex;align-items:center;gap:28px;font-size:14px;font-weight:700}.section{padding:clamp(76px,7.5vw,116px) var(--gutter)}.section-head{max-width:var(--content);margin:0 auto 40px;display:flex;justify-content:space-between;align-items:end;gap:32px}.eyebrow{margin-bottom:14px}h2{font-size:clamp(36px,3.5vw,52px);line-height:1.12;letter-spacing:-.03em;margin:0;font-weight:700;text-wrap:balance}.section-head>p{max-width:330px;color:var(--muted);margin:0}.catalog-grid{max-width:var(--content);margin:auto;display:grid;grid-template-columns:1.15fr 1fr;gap:28px}.featured{border:1px solid var(--line);min-width:0}.feature-visual{height:320px;background:#edf3f4;position:relative;display:grid;place-items:center}.feature-visual img{width:85%;height:100%;object-fit:contain}.feature-visual>span{position:absolute;left:22px;bottom:16px;font-size:9px;letter-spacing:.1em;color:#617982;font-weight:700}.feature-copy{padding:24px;display:flex;justify-content:space-between;align-items:end;gap:18px}.feature-copy h3,.list-copy h3{font-size:23px;line-height:1.2;margin:7px 0 8px;letter-spacing:-.02em}.feature-copy p,.list-copy p{font-size:15px;color:var(--muted);margin:0;line-height:1.5}.arrow-link{width:48px;height:48px;flex:none;border:1px solid #aabdc5;display:grid;place-items:center;font-size:20px}.arrow-link:hover{background:var(--navy);color:white}.catalog-list{display:grid;grid-template-rows:1fr 1fr;gap:20px}.catalog-list article{display:grid;grid-template-columns:43% 1fr;min-width:0;border:1px solid var(--line)}.thumb{background:#edf3f4;display:grid;place-items:center;min-width:0}.thumb svg{width:94%;height:180px}.list-copy{padding:22px 22px 18px;align-self:center}.list-copy a{font-size:14px;font-weight:700;min-height:44px;display:inline-flex;align-items:center;gap:20px;color:var(--blue)}.list-copy a:hover{text-decoration:underline;text-underline-offset:4px}.project{background:#eff4f5;display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,10vw,145px)}.project-title h2{max-width:540px}.project-title>p:not(.eyebrow),.contact>div>p:not(.eyebrow){margin:23px 0;color:var(--muted);font-size:17px;line-height:1.7;max-width:510px}.project-list{border-top:1px solid #bdcfd4}.project-list>div{display:flex;gap:24px;padding:22px 0;border-bottom:1px solid #bdcfd4}.project-list>div>span{font-size:12px;font-weight:700;color:var(--blue);padding-top:4px}.project-list h3{font-size:20px;margin:0 0 3px}.project-list p{color:var(--muted);margin:0}.contact{display:grid;grid-template-columns:1fr .8fr;gap:12%;align-items:start}.contact form{padding-top:22px}.contact label{display:block;font-weight:700;margin-bottom:12px}.contact textarea{display:block;width:100%;min-height:120px;padding:15px;border:1px solid #9eafb6;color:var(--ink);resize:vertical;background:white}.contact textarea::placeholder{color:#687d85}.contact button{margin-top:15px;min-width:210px}.form-note{font-size:13px;color:var(--muted);margin:12px 0 0}.form-note.success{font-weight:700;color:#08643e}footer{background:var(--navy);color:white;padding:48px var(--gutter);display:flex;justify-content:space-between;gap:25px}footer strong{font-size:20px}footer p{font-size:14px;color:#c5d5db;margin:12px 0 0}footer a{display:inline-flex;align-items:center;min-height:48px;align-self:start;font-size:14px;font-weight:700}
@media(max-width:850px){.header-inner{min-height:72px}.menu-toggle{display:inline-flex;align-items:center;gap:10px;border:0;background:white;color:var(--navy);min-height:48px;font-weight:700}.hamburger,.hamburger:before,.hamburger:after{display:block;position:relative;width:22px;height:2px;background:currentColor}.hamburger:before,.hamburger:after{content:"";position:absolute;left:0}.hamburger:before{top:-7px}.hamburger:after{top:7px}.header nav{display:none;position:absolute;top:72px;left:0;right:0;padding:10px var(--gutter) 22px;background:white;box-shadow:0 14px 25px #183a4520;flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a:not(.nav-cta){padding:12px 0;border-bottom:1px solid var(--line);min-height:52px}.nav-cta{margin-top:14px;justify-content:space-between}.hero-inner{min-height:510px}.hero-content{width:48%;padding:48px 0}.hero-art{width:58%}.hero h1{font-size:clamp(40px,5vw,48px)}.hero-actions{gap:10px}.hero-base div{display:block}.hero-base span{display:block}.catalog-grid{grid-template-columns:1fr;gap:18px}.catalog-list{grid-template-columns:1fr 1fr;grid-template-rows:auto}.catalog-list article{grid-template-columns:1fr}.thumb svg{height:190px}.project,.contact{grid-template-columns:1fr;gap:38px}.contact form{padding-top:0}}
@media(max-width:600px){:root{--gutter:22px}.preview-notice{font-size:9px;justify-content:space-between;gap:8px;text-align:left}.preview-notice a{font-size:9px;min-width:94px}.brand{font-size:15px}.hero-inner{display:flex;flex-direction:column;align-items:stretch;padding:0;min-height:0}.hero-content{width:auto;max-width:none;padding:46px var(--gutter) 14px}.hero h1{font-size:clamp(39px,10.5vw,46px);max-width:360px}.hero-content>p{font-size:16px;margin-bottom:20px}.hero-actions{gap:8px 20px}.hero-art{position:relative;width:100%;height:300px;right:auto;top:auto;bottom:auto}.hero-art img{width:100%;height:300px}.hero-art>span{bottom:10px}.hero-base{padding:18px var(--gutter);align-items:start}.hero-base strong{font-size:14px}.hero-base>a{font-size:13px;gap:8px;min-width:120px}.section{padding-top:72px;padding-bottom:72px}.section-head{align-items:start;flex-direction:column;gap:15px;margin-bottom:28px}.catalog-grid{gap:16px}.feature-visual{height:250px}.feature-copy{padding:20px}.catalog-list{grid-template-columns:1fr;gap:16px}.catalog-list article{grid-template-columns:38% 1fr}.thumb svg{height:150px}.list-copy{padding:18px 15px}.list-copy h3{font-size:20px}.list-copy p{font-size:14px}h2{font-size:37px}footer{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.feature-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
@media(min-width:851px){.hero-art{width:55%}}
/* LINYOPACK palette: Logo source #32c882; dark and pale tones are UI derivatives. */
:root{--brand:#32c882;--brand-hover:#27b875;--brand-dark:#086141;--brand-deep:#075537;--navy:#0b2c20;--ink:#15352a;--muted:#50665c;--line:#d9e6de;--surface:#f1f7f3}
.brand{display:inline-flex;align-items:center;min-height:48px;flex:none}.brand-logo{display:block;width:220px;height:auto;max-width:100%}.footer-logo{display:block;width:220px;height:auto;max-width:100%}
::selection{background:#b7ead1;color:var(--navy)}a:focus-visible,button:focus-visible,textarea:focus-visible{outline-color:var(--brand-deep)}
.preview-notice{background:#10372a;color:#e0f0e7}.preview-notice a{color:#fff}.header{border-color:#e2ece5}.header nav a:not(.nav-cta):hover{color:var(--brand-dark)}
.nav-cta,.primary{background:var(--brand);color:var(--navy)}.nav-cta:hover,.primary:hover{background:var(--brand-hover);color:var(--navy)}.nav-cta:active,.primary:active{background:#1ba564;color:var(--navy)}
.hero{background:#f4f8f5}.hero-art{background:radial-gradient(ellipse at 58% 52%,#e5f1e9 0%,#f4f8f5 67%)}.overline,.eyebrow,.hero-base span,.type{color:var(--brand-dark)}.hero-base{border-color:#d8e7dc}.hero-base>a,.text-link,.list-copy a{color:var(--brand-dark)}.hero-base>a:hover,.text-link:hover,.list-copy a:hover{color:var(--brand-deep)}
.feature-visual,.thumb{background:#edf5f0}.arrow-link{border-color:#a8c8b5;color:var(--brand-dark)}.arrow-link:hover{background:var(--brand-dark);color:white}.project{background:#f0f7f2}.project-list,.project-list>div{border-color:#c8dccf}.project-list>div>span{color:var(--brand-dark)}.contact textarea{border-color:#a0bbab}.form-note.success{color:var(--brand-dark)}footer{background:var(--navy)}footer p{color:#d2e6d9}
@media(max-width:600px){.brand-logo{width:180px}.footer-logo{width:200px}}
/* Typography and control readability pass: retain brand colors and layout. */
.header nav,.button,.text-link,.hero-base>a,.list-copy a{font-size:16px;line-height:1.4}
.feature-copy p,.list-copy p,footer p{font-size:16px;line-height:1.55}
.overline,.eyebrow,.hero-base span,.type,.hero-art>span,.feature-visual>span{font-size:12px;line-height:1.4}
.hero-art>span,.feature-visual>span{color:var(--muted)}
.preview-notice,.preview-notice a{font-size:12px;line-height:1.4}
.form-note{font-size:14px;line-height:1.5}
.preview-notice a:focus-visible,footer a:focus-visible{outline-color:#b7ead1}
@media(max-width:600px){.preview-notice{gap:12px;padding-top:8px;padding-bottom:8px}.preview-notice a{min-width:105px}.hero-base strong{font-size:16px}}
