:root{--red:#009ca7;--navy:#252525;--muted:#606875;--line:#dfe3e8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--navy);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--red);outline-offset:5px}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:5}.skip:focus{top:0}header{height:98px;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:white}.brand{display:flex;align-items:center;gap:22px}.brand img{width:130px;height:auto;max-height:60px;object-fit:contain}.brand span{font-size:12px;letter-spacing:2.2px;border-left:1px solid #bfc5cd;padding-left:22px}nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:600}.nav-contact{border:1px solid var(--line);padding:12px 19px}.nav-contact span{margin-left:20px}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:630px}.hero-copy{padding:73px 8% 45px 10.5%}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.65px;line-height:1.6;margin:0 0 27px}.hero .eyebrow{display:flex;align-items:center;gap:11px}.eyebrow>span{width:22px;height:3px;background:var(--red)}h1{font-size:clamp(42px,4.55vw,72px);line-height:1.06;letter-spacing:-2.9px;margin:0 0 26px;font-weight:700}h1 em{font-style:normal;color:var(--red)}.intro{font-size:17px;max-width:470px;color:var(--muted);line-height:1.8}.actions{display:flex;align-items:center;gap:26px;margin-top:32px;flex-wrap:wrap}.button{padding:16px 23px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:14px;font-weight:700;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.red{background:var(--red);color:white}.red:hover{background:#007680}.text-link{font-size:14px;font-weight:600}.text-link span{margin-left:13px}.hero-note{border-top:1px solid var(--line);margin-top:45px;padding-top:23px;max-width:460px}.hero-note span{font-size:10px;letter-spacing:1.7px;color:var(--muted)}.hero-note p{font-size:13px;margin:5px 0}.hero-visual{position:relative;background:#edf0f3;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-height:550px}.visual-label{position:absolute;left:35px;top:33px;font-size:10px;letter-spacing:1.9px;z-index:1}.hero-image{width:100%;height:420px;object-fit:contain;mix-blend-mode:multiply;padding:25px}.visual-bottom{display:flex;justify-content:space-between;align-items:center;margin:0 35px;position:absolute;bottom:27px;left:0;right:0;border-top:1px solid #cbd1d9;padding-top:17px}.visual-bottom b{font-size:31px;letter-spacing:-2px}.visual-bottom span{font-size:12px;line-height:1.5;color:var(--muted)}.capabilities{background:var(--navy);color:white;display:flex;justify-content:space-between;align-items:center;padding:28px 5.5%;gap:20px}.capabilities>span{font-size:13px;color:#a9b2c1;line-height:1.7;border-right:1px solid #425063;padding-right:45px}.capabilities b{color:white;font-weight:500}.capabilities p{font-size:17px}.capabilities i{color:#8996a8;font-style:normal;font-size:21px}.section{padding:85px 5.5%}.section-heading{display:flex;justify-content:space-between;gap:45px;align-items:end;margin-bottom:44px}h2{font-size:clamp(30px,3vw,44px);letter-spacing:-1.6px;line-height:1.15;margin:0}.section .eyebrow{color:var(--red);margin-bottom:21px}.section-heading>p{max-width:350px;color:var(--muted);margin:0}.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.solution-grid article{padding:31px 33px 0 0}.solution-grid article+article{border-left:1px solid var(--line);padding-left:33px}.number{font-size:13px;color:var(--red)}h3{font-size:21px;letter-spacing:-.4px;margin:28px 0 12px}.solution-grid p{color:var(--muted);font-size:15px;max-width:330px}.solution-grid a{display:flex;justify-content:space-between;font-size:14px;font-weight:600;border-bottom:1px solid var(--line);padding:22px 0 14px;margin-top:26px}.solution-grid a:hover{color:var(--red)}.approach{background:#f4f6f8;display:grid;grid-template-columns:1fr 1fr;gap:10%}.approach-intro{max-width:450px;color:var(--muted);margin:27px 0}.benefits article{display:flex;gap:26px;border-bottom:1px solid #d9dfe6;padding:24px 0}.benefits article:first-child{padding-top:0}.benefits article>span{font-size:13px;color:var(--red);padding-top:5px}.benefits h3{margin:0 0 8px}.benefits p{font-size:15px;color:var(--muted);margin:0;max-width:390px}.sector-list{display:flex;gap:20px;margin-top:34px;flex-wrap:wrap}.sector-list span{border:1px solid var(--line);padding:15px 24px;font-size:15px}.contact{background:var(--navy);color:white;display:flex;justify-content:space-between;align-items:center;gap:50px}.contact .eyebrow{color:#35c6cf}.contact h2{font-size:49px}.contact p{max-width:480px;color:#b5c0d0;margin-bottom:0}.white{background:white;color:var(--navy);min-width:250px}.contact-action p{font-size:12px;line-height:1.9}footer{display:flex;align-items:center;gap:30px;padding:35px 5.5%;flex-wrap:wrap}footer p{font-size:12px;color:var(--muted);flex:1}footer>a:not(.brand){font-size:13px}footer small{width:100%;border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:var(--muted)}@media(min-width:1600px){body{max-width:1700px;margin:auto}}@media(max-width:1000px){.hero-copy{padding:50px 7%}.hero{grid-template-columns:1.1fr 1fr}h1{font-size:48px}.hero-image{padding:10px}.capabilities{gap:15px}.capabilities>span{padding-right:20px}.capabilities p{font-size:14px}.section{padding:65px 5.5%}.contact h2{font-size:42px}}@media(max-width:720px){header{height:80px}.brand{gap:12px}.brand img{width:100px}.brand span{padding-left:12px;font-size:10px}nav{gap:0}nav>a:not(.nav-contact){display:none}.nav-contact{font-size:12px;padding:9px 12px}.nav-contact span{margin-left:8px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 33px}h1{font-size:clamp(42px,9vw,62px);letter-spacing:-2px}.intro{font-size:16px}.hero-note{margin-top:30px}.hero-visual{min-height:350px}.hero-image{height:280px;padding:30px 15px}.visual-label{top:20px;left:22px;font-size:9px}.visual-bottom{bottom:17px;margin:0 22px;padding-top:10px}.visual-bottom b{font-size:24px}.visual-bottom span{font-size:10px}.capabilities{flex-wrap:wrap;padding:23px 6%;gap:8px 18px}.capabilities>span{width:100%;border:0;padding:0 0 10px}.capabilities>span br{display:none}.capabilities>span b{margin-left:5px}.capabilities p{font-size:12px;margin:0}.capabilities i{font-size:13px}.section{padding:52px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:23px}.solution-grid{grid-template-columns:1fr}.solution-grid article,.solution-grid article+article{padding:25px 0;border-left:0;border-bottom:1px solid var(--line)}.solution-grid h3{margin-top:14px}.solution-grid p{max-width:none}.solution-grid a{margin-top:8px}.approach{grid-template-columns:1fr;gap:35px}.sector-list{gap:10px}.sector-list span{padding:12px 15px;font-size:14px}.contact{display:block}.contact h2{font-size:38px}.contact-action{margin-top:30px}footer{gap:20px}footer p{min-width:130px}.eyebrow{font-size:10px}.actions{gap:20px}.button{font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Accessible text accent; brand artwork and buttons retain original IDIS turquoise. */
.section .eyebrow,.number,.benefits article>span{color:#007a83}.contact .eyebrow{color:#35c6cf}.red{background:#009ca7;color:#101010}.red:hover{background:#007680;color:white}h1 em{color:#007a83}
/* Environmental photography and restrained motion, within IDIS brand colours. */
.hero-visual{background:#152b2e;isolation:isolate;min-height:630px}.hero-image{position:absolute;inset:0;width:100%;height:100%;padding:0;object-fit:cover;mix-blend-mode:normal}.hero-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,20,24,.3),transparent 35%,rgba(0,17,21,.83));z-index:0;pointer-events:none}.visual-label{color:white;font-size:11px;letter-spacing:2px;border-left:3px solid #009ca7;padding-left:14px}.visual-bottom{z-index:1;color:white;border-top:1px solid #ffffff55;padding-top:22px;align-items:end;bottom:35px}.visual-bottom .scene-category{font-size:11px;letter-spacing:1.5px;color:#8ce0e4}.visual-bottom strong{display:block;font-size:clamp(25px,2.5vw,40px);line-height:1.18;letter-spacing:-1px;margin-top:15px}.visual-bottom .image-credit{font-size:10px;color:#d8e6e7;text-align:right}.environment-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:25px;margin-top:37px}.environment-card{position:relative;min-height:430px;overflow:hidden;background:#153034;isolation:isolate;color:white}.environment-card>img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;transition:transform .8s ease}.environment-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(0,18,21,.9));pointer-events:none}.environment-card>div{position:absolute;z-index:1;bottom:0;left:0;padding:32px;max-width:500px}.environment-card span{font-size:11px;letter-spacing:1.5px;color:#9fe3e6}.environment-card h3{font-size:29px;line-height:1.2;margin:15px 0}.environment-card p{font-size:14px;line-height:1.6;margin:0;color:#e3eeee}.environment-card:hover>img{transform:scale(1.035)}.illustration-note{font-size:12px;color:#6c7274;margin-top:18px}.sector-list>span:first-child{border:0;padding-left:0;color:#606875}.solution-grid article{transition:background .25s,transform .25s}.solution-grid article:hover{background:#f1f9f9;transform:translateY(-4px)}.solution-grid a span,.nav-contact span{display:inline-block;transition:transform .2s}.solution-grid a:hover span,.nav-contact:hover span{transform:translate(3px,-3px)}.section-heading,.benefits article,.environment-card,.solution-grid article{scroll-margin-top:30px}.reveal-ready{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:1000px){.hero-visual{min-height:600px}.environment-card{min-height:410px}.environment-card>div{padding:25px}}
@media(max-width:720px){.hero-visual{min-height:430px}.hero-image{height:100%;padding:0}.visual-bottom{bottom:26px}.visual-bottom strong{font-size:32px}.environment-grid{grid-template-columns:1fr;gap:20px}.environment-card{min-height:370px}.environment-card h3{font-size:27px}.visual-label{font-size:10px}.environment-card p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none;transition:none}.environment-card>img,.solution-grid article,.solution-grid a span,.nav-contact span{transition:none}.environment-card:hover>img,.solution-grid article:hover{transform:none}}
