:root{--navy:#193440;--navy-2:#213e49;--teal:#66aa98;--mint:#d9ebe2;--mint-soft:#f0f7f3;--ink:#233b44;--muted:#5f767b;--line:#d8e3df;--white:#fff;--head:'Sora',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:#fff;color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}button{cursor:pointer}.skip-link{position:absolute;left:-9999px;top:8px;z-index:100;background:#fff;color:#111;padding:10px}.skip-link:focus{left:8px}.concept-strip{position:relative;z-index:60;min-height:28px;padding:7px 12px;background:#dcefe6;color:#35625a;text-align:center;font:700 9px/1.5 var(--body);letter-spacing:.16em;text-transform:uppercase}
.site-header{z-index:50;height:112px}.header-over-hero{position:absolute;top:0;left:0;right:0;color:#fff}.header-solid{position:relative;background:#fff;color:var(--navy);border-bottom:1px solid #edf2ef}.nav-shell{height:100%;width:min(1500px,100%);padding:0 4.5%;margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px}.nav-side{display:flex;align-items:center;gap:clamp(19px,2.6vw,42px)}.nav-right{justify-content:flex-end}.nav-side a{white-space:nowrap;font:700 10px/1.2 var(--body);letter-spacing:.15em;text-transform:uppercase;transition:opacity .2s}.nav-side a:hover,.nav-side a[aria-current=page]{opacity:.58}.portal-shortcut{font-size:19px!important;letter-spacing:0!important;width:29px;height:29px;border:1px solid currentColor;border-radius:50%;display:flex;align-items:center;justify-content:center}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:41px;height:41px;color:#a5d5c3}.header-solid .brand-mark{color:#75b7a1}.brand-text strong{display:block;font:600 28px/.9 var(--head);letter-spacing:.18em}.brand-text small{display:block;margin-top:7px;font:600 9px/1 var(--body);letter-spacing:.48em}.menu-button{display:none;width:44px;height:44px;background:transparent;color:inherit;border:1px solid currentColor;border-radius:50%;padding:10px}.menu-button span{display:block;height:1px;background:currentColor;margin:5px 0}.mobile-nav[hidden]{display:none}.mobile-nav{display:none}
.hero-home{height:min(850px,100svh);min-height:670px;position:relative;overflow:hidden;color:#fff;background:#5d797c}.hero-poster,.hero-video,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(180deg,rgba(11,35,42,.28) 0%,rgba(11,35,42,.06) 32%,rgba(11,35,42,.3) 58%,rgba(11,35,42,.84) 100%),linear-gradient(90deg,rgba(12,38,46,.36),transparent 75%)}.hero-content{position:absolute;bottom:80px;left:max(5%,calc((100vw - 1370px)/2));width:min(820px,89%)}.eyebrow{display:inline-flex;align-items:center;gap:12px;color:#4e9487;font:700 11px/1.3 var(--body);text-transform:uppercase;letter-spacing:.19em}.eyebrow::before{content:'';width:28px;height:2px;background:#71b49e;flex:none}.eyebrow.light{color:#d9eee4}.eyebrow.light::before{background:#d9eee4}.hero-content h1{margin:27px 0 19px;font:400 clamp(52px,5.3vw,82px)/1.11 var(--head);letter-spacing:-.055em}.hero-content h1 span{font-weight:300}.hero-content>p{margin:0;max-width:700px;color:#e6f1ed;font:400 16px/1.75 var(--body)}.hero-claims{display:flex;flex-wrap:wrap;gap:8px 20px;margin:22px 0 0}.hero-claims span{border-left:2px solid #b4dfcd;padding-left:10px;font:700 10px/1.5 var(--body);letter-spacing:.09em;text-transform:uppercase}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:50px;padding:0 24px;border:1px solid transparent;font:700 11px/1.2 var(--body);letter-spacing:.13em;text-transform:uppercase;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:19px;font-weight:400}.button-light{background:#e4f2ea;color:var(--navy)}.button-light:hover{background:#fff}.button-outline{border-color:#e0efea;color:#fff}.button-outline:hover{background:#fff;color:var(--navy)}.button-dark{background:var(--navy);color:#fff}.button-dark:hover{background:#2a5960}.media-note{position:absolute;right:26px;bottom:20px;color:#d3e9e2;font:600 9px var(--body);letter-spacing:.1em;text-transform:uppercase}
.proof-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#e8f3ec}.proof-strip>div{padding:30px max(25px,11%);border-right:1px solid #ceded5}.proof-strip>div:last-child{border-right:0}.proof-strip b{display:block;font:500 clamp(29px,3vw,44px)/1.1 var(--head);letter-spacing:-.055em}.proof-strip span{display:block;margin-top:8px;color:#637d78;font:600 10px var(--body);letter-spacing:.13em;text-transform:uppercase}.intro-section{text-align:center;max-width:950px;margin:auto;padding:120px 5%}.intro-section h2,.section h2,.home-allocation h2,.spec-band h2,.bottom-cta h2{font:400 clamp(39px,4vw,64px)/1.16 var(--head);letter-spacing:-.055em}.intro-section h2{margin:23px 0 24px}.short-rule{display:block;width:60px;height:3px;background:#8ccab5}.intro-section .short-rule{margin:auto}.intro-section p{max-width:780px;margin:33px auto;color:var(--muted);font:400 17px/1.85 var(--body)}.text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:8px;font:700 11px var(--body);letter-spacing:.13em;text-transform:uppercase}.text-link span{font-size:19px;font-weight:400}.text-link:hover{color:#478e7f}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.path-grid>a{position:relative;display:block;min-height:490px;overflow:hidden;color:#fff}.path-grid img{position:absolute;width:100%;height:100%;object-fit:cover;filter:brightness(.61);transition:transform .4s}.path-grid>a:hover img{transform:scale(1.04)}.path-grid>a>div{position:absolute;bottom:0;padding:35px 8%;width:100%;background:linear-gradient(transparent,rgba(13,36,44,.75))}.path-grid span{font:700 10px var(--body);letter-spacing:.16em}.path-grid h3{font:500 clamp(26px,2.6vw,39px)/1.2 var(--head);letter-spacing:-.05em;margin:18px 0}.path-grid p{font-size:13px;color:#e7f0ed}.path-grid b{display:block;margin-top:25px;font:700 11px var(--body);text-transform:uppercase;letter-spacing:.13em}.home-allocation{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;padding:100px max(5%,calc((100vw - 1370px)/2));background:#f0f7f3}.home-allocation h2{margin:25px 0}.home-allocation p{max-width:570px;color:var(--muted);font:400 16px/1.85 var(--body);margin-bottom:28px}.number-display{background:#d4eadf;min-height:290px;padding:55px 8%;position:relative;overflow:hidden}.number-display strong{display:block;white-space:nowrap;font:400 clamp(75px,8vw,130px)/1.1 var(--head);letter-spacing:-.09em}.number-display small{font-size:28px;letter-spacing:-.02em}.number-display span{display:block;margin-top:15px;color:#4c756d;font:700 11px var(--body);letter-spacing:.12em;text-transform:uppercase}.claim-note{margin:0;padding:15px 5%;background:#eaf3ef;color:#608078;font:500 11px/1.5 var(--body)}
.page-intro{background:#fff;padding:85px 5% 90px;text-align:center}.page-intro-inner{max-width:1010px;margin:auto}.page-intro h1{font:500 clamp(45px,5vw,71px)/1.16 var(--head);letter-spacing:-.055em;margin:23px 0 26px}.page-intro .short-rule{margin:auto}.page-intro p{max-width:750px;margin:28px auto 0;color:var(--muted);font:400 16px/1.85 var(--body)}.section{padding:105px max(5%,calc((100vw - 1370px)/2))}.split-text{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#f3f8f5}.split-text h2{margin:23px 0}.rich-copy{color:var(--muted);font:400 17px/1.9 var(--body)}.rich-copy p:first-child{margin-top:0}.company-stats{display:grid;grid-template-columns:repeat(3,1fr);max-width:1370px;margin:75px auto}.company-stats>div{padding:23px 7%;border-right:1px solid var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.company-stats>div:last-child{border-right:0}.company-stats span{display:block;font:700 10px var(--body);color:#67a995}.company-stats b{display:block;margin:20px 0 8px;font:500 40px var(--head);letter-spacing:-.06em}.company-stats small{font:500 12px/1.5 var(--body);color:var(--muted)}.wide-photo{height:520px;position:relative;overflow:hidden}.wide-photo img{width:100%;height:100%;object-fit:cover}.wide-photo span,.photo-frame span,.product-main-photo span{position:absolute;right:20px;bottom:20px;padding:8px 10px;background:#193440bd;color:#fff;font:600 9px var(--body);text-transform:uppercase;letter-spacing:.1em}.section-title h2{margin:22px 0}.three-values{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:55px}.three-values article{border-top:2px solid #83c7b0;padding:27px 0}.three-values span{font:700 11px var(--body);color:#559783}.three-values h3{font:500 26px var(--head);letter-spacing:-.04em}.three-values p{color:var(--muted);line-height:1.8}
.technical-band{display:grid;grid-template-columns:repeat(3,1fr);background:var(--navy);color:#fff;padding:70px max(5%,calc((100vw - 1370px)/2));gap:40px}.technical-band>div{padding:10px 0;border-right:1px solid #42616a}.technical-band>div:last-child{border-right:0}.technical-band span{font:700 10px var(--body);color:#9bd0bb;letter-spacing:.18em}.technical-band h3{font:500 clamp(23px,2.4vw,34px)/1.25 var(--head);letter-spacing:-.04em;max-width:300px;margin:21px 0}.technical-band p{max-width:330px;color:#c2d6d2;font:400 14px/1.8 var(--body)}.photo-text{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%}.photo-text.reverse{background:#eef6f1}.photo-text.reverse .photo-frame{order:2}.photo-frame{position:relative;height:550px;overflow:hidden}.photo-frame img{height:100%;width:100%;object-fit:cover}.copy-frame h2{margin:23px 0}.copy-frame p{color:var(--muted);font:400 16px/1.85 var(--body)}.copy-frame .text-link{margin-top:18px}
.portfolio-heading{display:flex;justify-content:space-between;align-items:end;gap:10%;margin-bottom:48px}.portfolio-heading h2{margin:22px 0 0}.portfolio-heading p{max-width:450px;color:var(--muted);font:400 15px/1.85 var(--body)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}.product-card{display:block;background:#edf5ef;transition:transform .25s,box-shadow .25s}.product-card:hover{transform:translateY(-4px);box-shadow:0 17px 38px #14383e1d}.product-card-media{aspect-ratio:1/.9;overflow:hidden}.product-card-media img{width:100%;height:100%;object-fit:cover}.product-card-text{padding:27px 27px 31px}.small-label{font:700 10px var(--body);color:#5e9d8b;letter-spacing:.13em;text-transform:uppercase}.product-card h3{display:flex;justify-content:space-between;align-items:center;gap:15px;font:500 clamp(25px,2.4vw,34px)/1.1 var(--head);letter-spacing:-.05em;margin:13px 0 10px}.product-card h3 span{font:400 22px var(--body)}.product-card p{margin:0;color:#66817b;font-size:12px}.small-note{color:#7f938f;font-size:11px;margin-top:20px}.spec-band{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:85px max(5%,calc((100vw - 1370px)/2));background:var(--navy);color:#fff}.spec-band h2{margin:24px 0}.spec-band p{color:#c6dad5;line-height:1.85;margin:0 0 25px}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.product-main-photo{position:relative;background:#f2f1e9;min-height:600px}.product-main-photo img{width:100%;height:100%;min-height:600px;object-fit:cover}.product-spec h2{font:500 clamp(50px,5vw,76px)/1.1 var(--head);letter-spacing:-.06em;margin:23px 0}.product-spec>p{color:var(--muted);font:400 16px/1.85 var(--body);margin-bottom:32px}.spec-row{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-top:1px solid var(--line);font-size:13px}.spec-row span{color:#79908a}.spec-row b{text-align:right;font-weight:600}.product-spec .button{margin-top:25px}.batch-explainer{text-align:center;padding:95px 5%;background:#eef6f1}.batch-explainer h2{font:500 clamp(35px,4vw,60px)/1.1 var(--head);letter-spacing:-.05em;margin:25px 0}.batch-explainer p{max-width:720px;margin:0 auto 30px;color:var(--muted);font:400 16px/1.8 var(--body)}.related{padding:90px max(5%,calc((100vw - 1370px)/2))}.related>h2{font:500 35px var(--head);letter-spacing:-.04em;margin:0 0 32px}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.related .product-card-media{aspect-ratio:1/.6}
.quality-band{background:#1e3b47}.evidence-flow{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:85px max(5%,calc((100vw - 1370px)/2));background:#eff7f2}.evidence-flow>div{max-width:270px}.evidence-flow>div span{font:700 11px var(--body);color:#6aaf9a}.evidence-flow b{display:block;font:500 27px var(--head);margin:13px 0}.evidence-flow p{color:var(--muted);line-height:1.6;margin:0}.evidence-flow i{height:1px;background:#86b6a9;flex:1}
.allocation-intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;background:#edf6f0}.allocation-intro>div:first-child{padding:40px;background:#d4e9de}.allocation-intro strong{display:block;font:400 clamp(85px,10vw,145px)/1.05 var(--head);letter-spacing:-.1em;margin:25px 0 10px;white-space:nowrap}.allocation-intro strong small{font-size:30px}.allocation-intro p{color:var(--muted);font:400 15px/1.8 var(--body)}.allocation-intro h2{margin:0 0 27px}.buyer-types{padding:95px max(5%,calc((100vw - 1370px)/2))}.buyer-types>div{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px}.buyer-types article{padding:25px 0;border-top:2px solid #84bea9}.buyer-types article span{font:700 10px var(--body);color:#67aa97}.buyer-types h3{font:500 25px var(--head);margin:15px 0}.buyer-types p{color:var(--muted);line-height:1.8}.process-section{background:#f1f7f3}.steps-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:55px}.steps-list div{border-top:1px solid #80b7a4;padding-top:20px}.steps-list b{font:700 11px var(--body);color:#65a68f}.steps-list h3{font:500 29px var(--head);margin:15px 0}.steps-list p{color:var(--muted);line-height:1.7}
.portal-page{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;background:#edf6f0}.portal-page h2{margin:20px 0}.portal-page>div:first-child>p{color:var(--muted);font:400 16px/1.85 var(--body);margin-bottom:25px}.portal-preview{background:#fff;padding:32px;box-shadow:0 20px 50px #163f3e18}.portal-preview-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:23px;font:700 11px var(--body);letter-spacing:.13em}.portal-preview-head span{color:#64b498}.portal-preview>div:not(:first-child){display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:22px 0}.portal-preview>div:not(:first-child) span{font:700 11px var(--body);color:#6fb29b}.portal-preview strong{font:500 15px var(--body)}.portal-preview small{color:#7c918d}.portal-preview>p{color:#90a19c;font-size:11px;line-height:1.6;margin-bottom:0}.portal-security{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:85px max(5%,calc((100vw - 1370px)/2))}.portal-security>div{border-top:2px solid #76b99f;padding-top:20px}.portal-security span{color:#67a791;font:700 11px var(--body)}.portal-security h3{font:500 25px var(--head);margin:15px 0}.portal-security p{color:var(--muted);line-height:1.75}
.contact-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%;background:#f5f9f6}.contact-layout aside h2{margin:22px 0}.contact-layout aside p{color:var(--muted);font-size:16px;line-height:1.85}.contact-note{margin-top:48px;border-top:1px solid var(--line);padding-top:20px;color:#7d938d;font:500 12px/1.7 var(--body);max-width:300px}.enquiry-form{padding:42px;background:#fff}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.enquiry-form label{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;font:700 10px var(--body);letter-spacing:.13em;text-transform:uppercase;color:#436a65}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;min-height:48px;padding:12px 13px;border:1px solid #bfd5cd;background:#fff;color:var(--ink);font:500 14px var(--body);letter-spacing:normal;text-transform:none;outline:0}.enquiry-form textarea{resize:vertical}.enquiry-form input:focus,.enquiry-form textarea:focus,.enquiry-form select:focus{border-color:#65aa93;box-shadow:0 0 0 2px #c7eadb}.enquiry-form .consent{flex-direction:row;align-items:center;gap:9px;color:#6e8780;font:500 11px/1.5 var(--body);letter-spacing:0;text-transform:none}.consent input{width:16px;height:16px;min-height:0}.form-status{min-height:18px;color:#397e67;font:600 12px var(--body)}
.bottom-cta{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:80px max(5%,calc((100vw - 1370px)/2));background:var(--navy);color:#fff}.bottom-cta h2{margin:19px 0}.bottom-cta p{color:#c7dad5;line-height:1.8;margin:0}.bottom-cta .button{flex:none}.site-footer{background:#112d37;color:#fff;padding:65px max(5%,calc((100vw - 1370px)/2)) 22px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:35px;padding-bottom:60px}.footer-wordmark{font:600 32px var(--head);letter-spacing:.17em}.footer-wordmark span{display:block;font:600 10px var(--body);letter-spacing:.5em}.footer-main p{color:#abc7c0;font:400 13px/1.8 var(--body)}.footer-main h4{margin:3px 0 20px;font:700 10px var(--body);letter-spacing:.15em;text-transform:uppercase;color:#92c5b2}.footer-main>div:not(:first-child) a{display:block;margin-top:10px;font-size:13px}.footer-main a:hover{color:#a8d4c2}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #3c5960;padding-top:22px;color:#81a9a0;font:600 10px var(--body);letter-spacing:.08em;text-transform:uppercase}
@media(max-width:1150px){.nav-side{gap:15px}.nav-side a{font-size:9px}.brand-text strong{font-size:24px}.brand-mark{width:35px;height:35px}.path-grid>a{min-height:410px}.number-display strong{font-size:84px}.allocation-intro strong{font-size:90px}}
@media(max-width:850px){.site-header{height:78px}.nav-shell{display:flex;justify-content:space-between}.nav-side{display:none}.menu-button{display:block;margin-left:auto}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:var(--navy);color:#fff;padding:12px 6% 25px;box-shadow:0 20px 35px #1230393d}.mobile-nav:not([hidden]){display:block}.mobile-nav a{display:block;padding:13px 0;border-bottom:1px solid #47606a;font:700 12px var(--body);letter-spacing:.12em;text-transform:uppercase}.hero-home{min-height:670px}.hero-content{left:6%;width:88%}.path-grid{grid-template-columns:1fr}.path-grid>a{min-height:340px}.path-grid>a>div{padding:28px 6%}.home-allocation,.split-text,.photo-text,.spec-band,.product-detail,.allocation-intro,.portal-page,.contact-layout{grid-template-columns:1fr}.home-allocation{gap:35px}.photo-text.reverse .photo-frame{order:0}.photo-frame{height:430px}.product-main-photo,.product-main-photo img{min-height:450px}.technical-band,.buyer-types>div,.portal-security{gap:20px}.technical-band h3{font-size:23px}.related .product-card-media{aspect-ratio:1/.7}.allocation-intro{gap:35px}.footer-main{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.concept-strip{font-size:8px;letter-spacing:.08em}.site-header{height:70px}.header-over-hero{top:0}.brand-mark{width:31px;height:31px}.brand-text strong{font-size:22px}.brand-text small{font-size:7px}.hero-home{height:800px;min-height:0}.hero-poster,.hero-video{object-position:center}.hero-shade{background:linear-gradient(180deg,rgba(10,33,42,.51) 0%,rgba(10,33,42,.26) 25%,rgba(10,33,42,.65) 52%,rgba(10,33,42,.92) 100%)}.hero-content{bottom:37px}.hero-content h1{font-size:clamp(39px,10.1vw,59px);margin:18px 0}.hero-content>p{font-size:14px;line-height:1.65}.hero-claims{display:grid;gap:6px;margin-top:17px}.hero-claims span{font-size:9px}.hero-buttons{margin-top:23px}.hero-buttons .button{width:100%;min-height:45px}.media-note{display:none}.proof-strip{grid-template-columns:1fr}.proof-strip>div{padding:15px 6%;border-right:0;border-bottom:1px solid #cbded5}.proof-strip b{font-size:27px}.proof-strip span{margin-top:3px}.intro-section{padding:75px 6%}.intro-section h2,.section h2,.home-allocation h2,.spec-band h2,.bottom-cta h2{font-size:clamp(33px,9vw,49px)}.intro-section p{font-size:14px}.path-grid>a{min-height:360px}.path-grid h3{font-size:29px}.home-allocation{padding:70px 6%}.number-display{min-height:240px;padding:40px 6%}.number-display strong{font-size:clamp(66px,17vw,86px)}.number-display small{font-size:22px}.page-intro{padding:67px 6% 70px}.page-intro h1{font-size:clamp(38px,9.5vw,52px)}.page-intro p{font-size:14px}.section{padding:70px 6%}.split-text{gap:20px}.rich-copy{font-size:15px}.company-stats{grid-template-columns:1fr;margin:0 6% 65px}.company-stats>div{padding:20px 0;border-right:0;border-bottom:0}.company-stats>div:last-child{border-bottom:1px solid var(--line)}.company-stats b{font-size:31px;margin:10px 0 4px}.wide-photo{height:300px}.three-values,.technical-band,.product-grid,.buyer-types>div,.steps-list,.portal-security{grid-template-columns:1fr}.three-values{gap:10px;margin-top:35px}.technical-band{padding:45px 6%;gap:0}.technical-band>div{border-right:0;border-bottom:1px solid #42616a;padding:20px 0}.technical-band>div:last-child{border-bottom:0}.technical-band h3{margin:13px 0}.technical-band p{margin:0}.photo-frame{height:300px}.copy-frame h2{font-size:35px}.portfolio-heading{display:block}.portfolio-heading p{font-size:14px}.product-grid{gap:19px}.product-card-media{aspect-ratio:1/.72}.product-card h3{font-size:30px}.spec-band{gap:20px;padding:65px 6%}.product-main-photo,.product-main-photo img{min-height:0}.product-main-photo img{aspect-ratio:1}.product-spec h2{font-size:47px}.product-spec>p{font-size:14px}.batch-explainer{padding:70px 6%}.batch-explainer h2{font-size:36px}.batch-explainer p{font-size:14px}.related{padding:70px 6%}.related-grid{grid-template-columns:1fr}.evidence-flow{display:block;padding:60px 6%}.evidence-flow>div{max-width:none;padding:15px 0}.evidence-flow i{display:block;width:1px;height:25px;margin-left:12px}.allocation-intro strong{font-size:clamp(68px,18vw,90px)}.allocation-intro strong small{font-size:22px}.buyer-types{padding:70px 6%}.buyer-types>div{margin-top:30px}.buyer-types article{padding:18px 0}.steps-list{gap:7px;margin-top:30px}.portal-preview{padding:22px}.portal-preview>div:not(:first-child){grid-template-columns:1fr;gap:7px}.portal-security{padding:65px 6%;gap:10px}.contact-layout{gap:35px}.contact-note{margin-top:25px}.enquiry-form{padding:25px}.field-row{grid-template-columns:1fr;gap:0}.bottom-cta{display:block;padding:70px 6%}.bottom-cta .button{margin-top:25px}.footer-main{grid-template-columns:1fr 1fr;gap:35px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{display:block;line-height:2}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media(max-width:620px){.page-intro{padding-bottom:55px}.products-page{padding-top:38px}}
/* Blog, article, 404 and partner login */
.cta-pair{display:flex;align-items:center;flex-wrap:wrap;gap:22px 32px}
.breadcrumb-bar{background:#f0f7f3;border-bottom:1px solid #e1ece7;padding:15px max(5%,calc((100vw - 1370px)/2))}.breadcrumb-bar ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 11px;font:700 10px/1.4 var(--body);letter-spacing:.15em;text-transform:uppercase;color:#6c8682}.breadcrumb-bar li{display:flex;align-items:center;gap:11px;min-width:0}.breadcrumb-bar li+li:before{content:'/';color:#9fc2b6}.breadcrumb-bar a{transition:color .2s}.breadcrumb-bar a:hover{color:var(--navy)}.breadcrumb-bar [aria-current=page]{color:var(--navy);max-width:520px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.blog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;flex-wrap:wrap;margin-bottom:42px;padding-bottom:22px;border-bottom:1px solid var(--line)}.blog-toolbar p{margin:0;color:var(--muted);font:500 13px var(--body)}.blog-categories{display:flex;flex-wrap:wrap;gap:8px}.blog-categories span{padding:9px 14px;border:1px solid #cfe0d9;font:700 10px var(--body);letter-spacing:.13em;text-transform:uppercase;color:#4f7f75}.blog-categories span:first-child{background:var(--navy);border-color:var(--navy);color:#fff}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 21px}.blog-card{display:flex;flex-direction:column;background:#edf5ef;transition:transform .25s,box-shadow .25s}.blog-card:hover{transform:translateY(-4px);box-shadow:0 17px 38px #14383e1d}.blog-card[hidden]{display:none}.blog-card-media{aspect-ratio:1/.66;overflow:hidden}.blog-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.blog-card:hover .blog-card-media img{transform:scale(1.04)}.blog-card-text{display:flex;flex-direction:column;flex:1;padding:26px 27px 30px}.blog-meta{display:flex;flex-wrap:wrap;gap:6px 16px;font:700 10px var(--body);letter-spacing:.13em;text-transform:uppercase;color:#5e9d8b}.blog-meta time{color:#7f938f}.blog-card h3{margin:15px 0 12px;font:500 clamp(21px,1.9vw,26px)/1.22 var(--head);letter-spacing:-.045em}.blog-card p{margin:0 0 24px;color:#66817b;font:400 13px/1.7 var(--body)}.blog-card b{margin-top:auto;font:700 11px var(--body);letter-spacing:.13em;text-transform:uppercase}
.pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin-top:62px}.pagination a{min-width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:0 17px;border:1px solid #cfe0d9;background:#fff;font:700 11px var(--body);letter-spacing:.13em;text-transform:uppercase;color:var(--navy);transition:background .2s,color .2s,border-color .2s}.pagination a:hover{border-color:var(--navy)}.pagination a[aria-current=page]{background:var(--navy);border-color:var(--navy);color:#fff}.pagination a.is-disabled{opacity:.38;pointer-events:none}.pagination .page-arrow{font-size:17px;font-weight:400;letter-spacing:0}
.article-intro{padding-bottom:70px}.article-intro h1{max-width:960px;margin-left:auto;margin-right:auto}.article-byline{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 30px;margin-top:30px;font:700 10px var(--body);letter-spacing:.14em;text-transform:uppercase;color:#6c8682}.article-byline b{color:var(--navy)}
.article-cover{position:relative;height:600px;overflow:hidden}.article-cover img{width:100%;height:100%;object-fit:cover}.article-cover span{position:absolute;right:20px;bottom:20px;padding:8px 10px;background:#193440bd;color:#fff;font:600 9px var(--body);text-transform:uppercase;letter-spacing:.1em}
.article-layout{display:grid;grid-template-columns:210px minmax(0,720px) 210px;justify-content:center;gap:65px;padding:100px max(5%,calc((100vw - 1370px)/2))}.article-aside{position:sticky;top:30px;align-self:start}.aside-label{display:block;margin-bottom:16px;font:700 10px var(--body);letter-spacing:.15em;text-transform:uppercase;color:#5e9d8b}.share-list{display:flex;flex-direction:column;gap:9px}.share-btn{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:46px;padding:0 16px;border:1px solid #cfe0d9;background:#fff;color:var(--navy);font:700 10px var(--body);letter-spacing:.13em;text-transform:uppercase;text-align:left;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.share-btn svg{width:15px;height:15px;flex:none;fill:currentColor}.share-btn:hover{background:var(--navy);border-color:var(--navy);color:#fff}.share-status{min-height:18px;margin:12px 0 0;color:#397e67;font:600 11px var(--body)}
.article-body{color:var(--muted);font:400 17px/1.9 var(--body)}.article-body>p:first-child{margin-top:0;color:var(--ink);font-size:20px;line-height:1.75}.article-body h2{margin:58px 0 18px;color:var(--navy);font:500 clamp(28px,2.6vw,36px)/1.2 var(--head);letter-spacing:-.045em}.article-body blockquote{margin:48px 0;padding:6px 0 6px 30px;border-left:3px solid #8ccab5;color:var(--navy);font:400 clamp(22px,2.1vw,28px)/1.45 var(--head);letter-spacing:-.035em}.article-body ul{margin:24px 0;padding:0;list-style:none;border-top:1px solid var(--line)}.article-body li{display:grid;grid-template-columns:44px 1fr;padding:15px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.7}.article-body li span{font:700 11px/2.4 var(--body);color:#5e9d8b}.article-body li strong{color:var(--ink);font-weight:600}.article-note{margin-top:55px;padding:22px 25px;background:#eaf3ef;color:#608078;font:500 12px/1.65 var(--body)}
.article-share-end{display:none}
.article-facts{border-top:2px solid #83c7b0}.article-facts div{display:flex;flex-direction:column;gap:6px;padding:16px 0;border-bottom:1px solid var(--line)}.article-facts dt{font:700 10px var(--body);letter-spacing:.14em;text-transform:uppercase;color:#7f938f}.article-facts dd{margin:0;color:var(--navy);font:500 14px var(--body)}
.related-posts{padding:95px max(5%,calc((100vw - 1370px)/2));background:#f0f7f3}.related-posts .portfolio-heading{margin-bottom:42px}
.error-page{position:relative;overflow:hidden;display:grid;place-items:center;min-height:720px;padding:110px 5%;background:#f0f7f3;text-align:center}.error-page .eyebrow{justify-content:center}.error-mark{position:absolute;right:-110px;bottom:-140px;width:560px;height:560px;color:#d4eadf}.error-inner{position:relative;max-width:760px}.error-code{display:block;margin:22px 0 4px;color:var(--navy);font:300 clamp(130px,19vw,270px)/.92 var(--head);letter-spacing:-.085em}.error-page h1{margin:20px 0 22px;font:400 clamp(36px,4vw,58px)/1.15 var(--head);letter-spacing:-.055em}.error-page p{max-width:560px;margin:0 auto;color:var(--muted);font:400 16px/1.85 var(--body)}.error-page .short-rule{margin:28px auto 0}.error-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:36px}.button-outline-dark{border-color:#b9cfc8;color:var(--navy)}.button-outline-dark:hover{background:#fff}.error-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 28px;margin-top:46px;padding-top:26px;border-top:1px solid #cfe0d9;font:700 10px var(--body);letter-spacing:.14em;text-transform:uppercase;color:#4f7f75}.error-links a:hover{color:var(--navy)}
.login-page{display:grid;grid-template-columns:1fr 1fr;min-height:780px}.login-visual{position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:70px max(9%,calc((50vw - 685px)));color:#fff;background:var(--navy)}.login-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.5)}.login-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,35,42,.1),rgba(11,35,42,.82))}.login-visual>div{position:relative;z-index:1;max-width:520px}.login-visual h2{margin:24px 0 20px;font:400 clamp(36px,3.6vw,54px)/1.15 var(--head);letter-spacing:-.055em}.login-visual p{margin:0;color:#d6e8e2;font:400 15px/1.8 var(--body)}.login-benefits{margin:34px 0 0;padding:0;list-style:none;border-top:1px solid #ffffff38}.login-benefits li{display:flex;gap:18px;padding:15px 0;border-bottom:1px solid #ffffff38;font:500 14px var(--body)}.login-benefits span{min-width:20px;color:#9bd0bb;font:700 11px/1.6 var(--body)}
.login-panel{display:flex;align-items:center;justify-content:center;padding:80px 7%;background:#f5f9f6}.login-form{width:min(470px,100%);margin:0}.login-form h1{margin:20px 0 10px;color:var(--navy);font:500 38px/1.15 var(--head);letter-spacing:-.05em;text-transform:none}.login-lede{margin:0 0 32px;color:var(--muted);font:400 14px/1.7 var(--body);letter-spacing:0;text-transform:none}.password-field{position:relative}.password-field input{padding-right:78px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);padding:8px 10px;border:0;background:transparent;color:#4f7f75;font:700 10px var(--body);letter-spacing:.13em;text-transform:uppercase}.login-row{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin:-4px 0 26px}.login-row .consent{margin:0}.login-row a{border-bottom:1px solid currentColor;padding-bottom:3px;color:#436a65;font:700 10px var(--body);letter-spacing:.13em;text-transform:uppercase}.login-form .button{width:100%}.login-alt{margin:30px 0 0;padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font:500 13px/1.6 var(--body);letter-spacing:0;text-transform:none}.login-alt a{color:var(--navy);font-weight:700;border-bottom:1px solid currentColor}.login-form .form-status{margin:16px 0 0}
@media(max-width:1150px){.article-layout{grid-template-columns:190px minmax(0,1fr);gap:50px}.article-facts-wrap{display:none}}
@media(max-width:850px){.blog-grid{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:1fr;gap:0}.article-aside{display:none}.article-share-end{display:block;margin-top:50px;padding-top:28px;border-top:1px solid var(--line)}.article-share-end .share-list{flex-direction:row;flex-wrap:wrap}.article-cover{height:440px}.login-page{grid-template-columns:1fr}.login-visual{min-height:440px;padding:60px 6%}.login-panel{padding:65px 6%}.error-mark{width:380px;height:380px}}
@media(max-width:620px){.breadcrumb-bar{padding:13px 6%}.breadcrumb-bar [aria-current=page]{max-width:210px}.blog-toolbar{display:block}.blog-categories{margin-top:16px}.blog-grid{grid-template-columns:1fr;gap:19px}.pagination{gap:6px;margin-top:45px}.pagination a{min-width:42px;height:42px;padding:0 12px}.pagination .page-label{display:inline}.article-cover{height:300px}.article-layout{padding:60px 6%}.article-body{font-size:15px}.article-body>p:first-child{font-size:17px}.article-body blockquote{padding-left:20px}.error-page{min-height:600px;padding:80px 6%}.error-actions .button{width:100%}.login-visual{min-height:400px}.login-panel{padding:50px 6%}.login-form.enquiry-form{padding:28px 22px}.login-form h1{font-size:31px}}

/* Home — one-page sections (from the Option 1 design), scoped to the home page */
.is-home{--home-head:'Sora',Arial,sans-serif;--home-body:'DM Sans',Arial,sans-serif;--home-ink:#193440;--home-ink-2:#263c45;--home-muted:#647b80;--home-mint:#b9d6ca;--home-mint-light:#e8f1ed;--home-teal:#69aa9b;--home-line:#d6e1de;--home-paper:#fff;--home-off:#f6f9f7}
.is-home .hero{height:min(900px,100svh);min-height:680px;position:relative;overflow:hidden;background:#557179;color:#fff}
.is-home .hero-poster,.is-home .hero-video,.is-home .hero-wash{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.is-home .hero-video{opacity:1}
.is-home .hero-wash{background:linear-gradient(180deg,rgba(13,36,45,.27) 0%,rgba(13,36,45,.02) 38%,rgba(13,36,45,.17) 58%,rgba(11,35,42,.83) 100%),linear-gradient(90deg,rgba(15,37,42,.26),transparent 72%)}
.is-home .hero-inner{position:relative;width:min(1440px,100%);height:100%;margin:auto;padding:0 5%;display:flex;align-items:flex-end}
.is-home .hero-copy{position:relative;width:min(850px,90%);padding-bottom:100px}
.is-home .overline{display:inline-flex;align-items:center;gap:13px;color:#548d86;font:700 11px/1.2 var(--home-body);text-transform:uppercase;letter-spacing:.2em}
.is-home .overline:before{content:'';width:24px;height:2px;background:var(--home-teal)}
.is-home .overline.light{color:#d8ece4}
.is-home .overline.light:before{background:#d8ece4}
.is-home .hero h1{margin:24px 0 20px;font:400 clamp(48px,5vw,78px)/1.12 var(--home-head);letter-spacing:-.055em}
.is-home .hero h1 em{font-style:normal;font-weight:300}
.is-home .hero-copy p{max-width:650px;margin:0;font:400 17px/1.75 var(--home-body);color:#e9f3ef}
.is-home .hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
.is-home .image-caption{position:absolute;right:30px;bottom:24px;font:600 9px/1.3 var(--home-body);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.84);text-shadow:0 2px 8px #092a33}
.is-home .scroll-cue{position:absolute;left:5%;bottom:26px;color:#d8eae5;text-transform:uppercase;font:700 10px var(--home-body);letter-spacing:.18em;display:flex;gap:18px;align-items:center}
.is-home .scroll-cue span{font-size:20px}
.is-home .hero-assurance{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:22px;color:#e6f6ed}
.is-home .hero-assurance span{font:700 10px/1.5 var(--home-body);text-transform:uppercase;letter-spacing:.1em;padding-left:10px;border-left:2px solid #a8dac4}
.is-home .proof-bar{display:grid;grid-template-columns:repeat(3,1fr);min-height:142px;background:#eff6f2;border-bottom:1px solid var(--home-line)}
.is-home .proof-bar>div{display:grid;grid-template-columns:48px auto;grid-template-rows:auto auto;column-gap:14px;align-content:center;max-width:520px;padding:28px clamp(24px,4vw,90px);border-right:1px solid #cbded6}
.is-home .proof-bar>div:last-child{border-right:0}
.is-home .proof-icon{grid-row:1/3;color:var(--home-teal);font-size:32px;align-self:center}
.is-home .proof-bar strong{font:600 clamp(21px,2.2vw,31px)/1.1 var(--home-head);letter-spacing:-.04em}
.is-home .proof-bar small{font:500 11px/1.5 var(--home-body);text-transform:uppercase;letter-spacing:.1em;color:#617b78;margin-top:5px}
.is-home .proof-note{grid-column:1/-1;margin:0;padding:9px 5%;background:#e6f1eb;color:#5e7b75;font:500 10px/1.5 var(--home-body);letter-spacing:.02em}
.is-home .section-pad{padding:110px max(5%,calc((100vw - 1380px)/2))}
.is-home .section-head h2,.is-home .feature-copy h2,.is-home .craft-content h2,.is-home .quality-copy h2,.is-home .partners h2,.is-home .portal h2,.is-home .contact h2{font:400 clamp(39px,4.3vw,66px)/1.15 var(--home-head);letter-spacing:-.055em}
.is-home .section-head.centered{text-align:center}
.is-home .section-head.centered .overline{justify-content:center}
.is-home .section-head h2{margin:22px 0 26px}
.is-home .head-rule{display:block;width:62px;height:3px;background:var(--home-teal)}
.is-home .centered .head-rule{margin:0 auto}
.is-home .section-head p{max-width:690px;margin:25px auto 0;color:var(--home-muted);line-height:1.8;font-size:16px}
.is-home .intro-lede{max-width:800px;margin:38px auto 72px;text-align:center;color:#506c70;font:400 18px/1.9 var(--home-body)}
.is-home .intro-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--home-line);border-bottom:1px solid var(--home-line)}
.is-home .intro-stats>div{padding:26px 35px;border-right:1px solid var(--home-line)}
.is-home .intro-stats>div:last-child{border-right:0}
.is-home .intro-stats span{display:block;color:var(--home-teal);font:700 10px var(--home-body);letter-spacing:.2em}
.is-home .intro-stats strong{display:block;margin:16px 0 8px;font:500 34px var(--home-head);letter-spacing:-.04em}
.is-home .intro-stats p{margin:0;color:var(--home-muted);font-size:13px;line-height:1.5}
.is-home .feature-split{display:grid;grid-template-columns:1fr 1fr;min-height:640px;background:var(--home-off)}
.is-home .feature-image,.is-home .craft-visual,.is-home .quality-image{position:relative;min-height:560px;overflow:hidden}
.is-home .feature-image img,.is-home .craft-visual img,.is-home .quality-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.is-home .feature-image img{object-position:center}
.is-home .dark-caption{background:rgba(20,52,58,.75);padding:8px 10px}
.is-home .feature-copy{padding:clamp(60px,8vw,125px) min(10%,120px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.is-home .feature-copy h2{margin:22px 0 20px}
.is-home .feature-copy>p{margin:28px 0;color:#5b7277;font-size:16px;line-height:1.85;max-width:570px}
.is-home .line-facts{width:100%;border-top:1px solid var(--home-line);margin:8px 0 32px}
.is-home .line-facts>div{display:flex;align-items:center;gap:30px;padding:17px 0;border-bottom:1px solid var(--home-line)}
.is-home .line-facts span{font:600 11px var(--home-body);color:var(--home-teal)}
.is-home .line-facts strong{font:500 15px var(--home-body)}
.is-home .craft-band{display:grid;grid-template-columns:1fr 1fr;background:var(--home-ink);color:#fff}
.is-home .craft-visual{min-height:600px}
.is-home .craft-content{display:flex;flex-direction:column;justify-content:center;padding:70px min(10%,120px)}
.is-home .craft-content h2{margin:24px 0}
.is-home .craft-content>p{font:400 16px/1.85 var(--home-body);color:#d4e6e3;max-width:560px}
.is-home .craft-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px;padding-top:30px;border-top:1px solid #527077}
.is-home .craft-points strong{display:block;font:600 14px/1.3 var(--home-head)}
.is-home .craft-points span{display:block;margin-top:9px;font:400 11px/1.5 var(--home-body);color:#aecdc5}
.is-home .products{background:#fff}
.is-home .hp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:58px}
.is-home .hp-card{display:block;padding:0;background:#eef4ef;border:0;color:var(--home-ink);text-align:left;overflow:hidden;transition:transform .3s,box-shadow .3s}
.is-home .hp-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(21,58,62,.13)}
.is-home .hp-card>img{width:100%;aspect-ratio:1/.91;object-fit:cover}
.is-home .hp-info{position:relative;display:block;padding:25px 27px 31px}
.is-home .hp-label{display:block;color:#609687;font:700 10px var(--home-body);letter-spacing:.15em;text-transform:uppercase;margin-bottom:12px}
.is-home .hp-info strong{display:block;font:500 clamp(24px,2.4vw,33px) var(--home-head);letter-spacing:-.05em}
.is-home .hp-arrow{position:absolute;right:28px;bottom:28px;font-size:23px}
.is-home .content-note{font:500 12px/1.5 var(--home-body);color:#82918c;margin:22px 0 0}
.is-home .quality{background:#203c47;color:#fff}
.is-home .quality-wrap{display:grid;grid-template-columns:1fr 1fr;max-width:1600px;margin:auto}
.is-home .quality-copy{padding:clamp(65px,8vw,120px) clamp(35px,7vw,110px)}
.is-home .quality-copy h2{margin:25px 0}
.is-home .quality-copy>p{font:400 16px/1.9 var(--home-body);color:#d5e4e4;margin:28px 0}
.is-home .quality-list{border-top:1px solid #55727b;margin:20px 0 35px}
.is-home .quality-list div{display:flex;gap:20px;border-bottom:1px solid #55727b;padding:18px 0}
.is-home .quality-list span{color:#91d4c0;font:700 11px var(--home-body)}
.is-home .quality-list strong{font:500 14px var(--home-body)}
.is-home .quality-image{min-height:650px}
.is-home .quality-image img{object-position:center}
.is-home .partners{background:#eef6f1}
.is-home .partners-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9%}
.is-home .partners h2{margin:25px 0}
.is-home .partners-grid>div:first-child>p{max-width:560px;font:400 16px/1.85 var(--home-body);color:#5b7477;margin:28px 0}
.is-home .volume-panel{position:relative;overflow:hidden;background:#d6e9e0;padding:55px 8%;min-height:340px}
.is-home .volume-top{display:block;color:#3d726d;text-transform:uppercase;letter-spacing:.18em;font:700 11px var(--home-body)}
.is-home .volume-number{font:400 clamp(80px,9vw,145px)/1.25 var(--home-head);letter-spacing:-.095em;margin:18px 0 0;white-space:nowrap}
.is-home .volume-number span{font-size:34px;letter-spacing:-.04em}
.is-home .volume-panel p{position:relative;z-index:2;max-width:440px;color:#4e6e70;font:500 12px/1.6 var(--home-body)}
.is-home .volume-watermark{position:absolute;bottom:-80px;right:-45px;color:rgba(94,154,139,.12);font:700 220px var(--home-head)}
.is-home .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:85px}
.is-home .steps>div{border-top:2px solid #83b9a8;padding:22px 0}
.is-home .steps span{font:700 11px var(--home-body);text-transform:uppercase;letter-spacing:.15em;color:#3c8076}
.is-home .steps p{font:400 15px/1.6 var(--home-body);max-width:280px}
.is-home .portal{background:#17323e;color:#fff;padding:105px max(5%,calc((100vw - 1380px)/2))}
.is-home .portal-inner{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}
.is-home .portal h2{margin:24px 0}
.is-home .portal-inner>div:first-child>p{color:#cfe1de;font:400 16px/1.85 var(--home-body);max-width:550px;margin-bottom:30px}
.is-home .light-link{color:#e6f6ec}
.is-home .portal-card{background:#f6faf8;color:var(--home-ink);padding:32px 34px;box-shadow:0 30px 55px rgba(5,22,27,.14)}
.is-home .portal-card-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:21px;border-bottom:1px solid var(--home-line);text-transform:uppercase;letter-spacing:.12em;font:700 11px var(--home-body)}
.is-home .portal-dot{height:9px;width:9px;border-radius:50%;background:#85c2ae}
.is-home .portal-row{display:flex;justify-content:space-between;gap:12px;padding:20px 0;border-bottom:1px solid var(--home-line);font-size:13px}
.is-home .portal-row b{color:#74b5a2;margin-right:14px}
.is-home .portal-row em{font-style:normal;color:#69807e;text-align:right}
.is-home .portal-card>p{color:#84958f;font:500 10px/1.5 var(--home-body);margin:20px 0 0}
.is-home .contact{background:#fff}
.is-home .contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:9%;max-width:1280px;margin:70px auto 0}
.is-home .contact-details{border-top:1px solid var(--home-line);padding-top:28px}
.is-home .contact-details h3{font:500 27px var(--home-head);margin:20px 0}
.is-home .contact-details p{color:#687f7e;line-height:1.8}
.is-home .contact-details>a{display:inline-block;margin-top:10px;border-bottom:1px solid var(--home-ink);padding-bottom:6px;font:700 13px var(--home-body)}
.is-home .contact-details>a span{padding-left:20px}
.is-home .contact-aside{max-width:250px;border-top:1px solid var(--home-line);margin-top:45px;padding-top:20px;color:#80958f;font:500 12px/1.6 var(--home-body)}
.is-home .contact-form{background:#f2f7f4;padding:36px 40px}
.is-home .contact-form label{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;color:#42635f;font:700 10px var(--home-body);letter-spacing:.12em;text-transform:uppercase}
.is-home .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.is-home .contact-form input,.is-home .contact-form select,.is-home .contact-form textarea{width:100%;border:1px solid #bed2ca;background:#fff;color:var(--home-ink);min-height:48px;padding:11px 14px;outline:none;text-transform:none;letter-spacing:normal;font:500 14px var(--home-body)}
.is-home .contact-form input:focus,.is-home .contact-form textarea:focus,.is-home .contact-form select:focus{border-color:var(--home-teal);box-shadow:0 0 0 2px #b8dfd1}
.is-home .contact-form textarea{resize:vertical}
.is-home .contact-form .check{flex-direction:row;align-items:center;gap:10px;color:#708782;font:500 11px/1.5 var(--home-body);letter-spacing:0;text-transform:none}
.is-home .contact-form .check input{width:16px;height:16px;min-height:0}
.is-home .form-status{font:600 12px var(--home-body);color:#387f68;min-height:14px}
@media(max-width:1100px){.is-home .craft-points{grid-template-columns:1fr}.is-home .quality-copy{padding:70px 6%}.is-home .volume-number{font-size:90px}}
@media(max-width:800px){.is-home .feature-split,.is-home .craft-band,.is-home .quality-wrap,.is-home .partners-grid,.is-home .portal-inner{grid-template-columns:1fr}.is-home .feature-image,.is-home .quality-image{min-height:450px}.is-home .feature-copy{padding:65px 6%}.is-home .craft-visual{min-height:430px}.is-home .craft-content{padding:70px 6%}.is-home .craft-points{grid-template-columns:repeat(3,1fr)}.is-home .quality-image{order:-1}.is-home .quality-copy{padding:75px 6%}.is-home .partners-grid{gap:35px}.is-home .portal-inner{gap:50px}.is-home .proof-bar>div{padding:20px}.is-home .proof-bar strong{font-size:20px}.is-home .proof-icon{font-size:24px;grid-column:1/3;grid-row:auto}.is-home .proof-bar>div{display:block}.is-home .hp-grid{gap:10px}.is-home .hp-info{padding:17px}.is-home .hp-arrow{right:16px;bottom:20px}.is-home .contact-grid{gap:4%;grid-template-columns:.8fr 1.2fr}.is-home .contact-form{padding:25px}}
@media(max-width:620px){.is-home .hero{height:780px;min-height:0}.is-home .hero-poster,.is-home .hero-video{object-position:49% center}.is-home .hero-wash{background:linear-gradient(180deg,rgba(13,36,45,.48) 0%,transparent 30%,rgba(11,35,42,.12) 47%,rgba(11,35,42,.88) 100%)}.is-home .hero-inner{padding:0 6%}.is-home .hero-copy{width:100%;padding-bottom:100px}.is-home .hero h1{font-size:clamp(38px,10vw,58px);line-height:1.18;margin:17px 0}.is-home .hero-copy p{font-size:14px;line-height:1.65}.is-home .hero-actions{gap:9px;margin-top:24px}.is-home .hero-actions .button{min-height:45px;width:100%;font-size:10px}.is-home .hero-inner .image-caption{display:none}.is-home .scroll-cue{left:6%;bottom:18px}.is-home .proof-bar{grid-template-columns:1fr}.is-home .proof-bar>div{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;padding:15px 6%;border-right:0;border-bottom:1px solid var(--home-line)}.is-home .proof-icon{grid-column:1;grid-row:1/3}.is-home .proof-bar strong{font-size:22px}.is-home .proof-bar small{font-size:10px;margin-top:2px}.is-home .section-pad{padding:75px 6%}.is-home .section-head h2,.is-home .feature-copy h2,.is-home .craft-content h2,.is-home .quality-copy h2,.is-home .partners h2,.is-home .portal h2,.is-home .contact h2{font-size:clamp(34px,9.5vw,49px)}.is-home .section-head p,.is-home .intro-lede{font-size:14px}.is-home .intro-lede{margin:28px auto 42px}.is-home .intro-stats{grid-template-columns:1fr}.is-home .intro-stats>div{padding:20px 0;border-right:0;border-bottom:1px solid var(--home-line)}.is-home .intro-stats>div:last-child{border-bottom:0}.is-home .intro-stats strong{font-size:27px;margin:8px 0 4px}.is-home .feature-image{min-height:310px}.is-home .feature-copy{padding:65px 6%}.is-home .craft-visual{min-height:310px}.is-home .craft-content{padding:65px 6%}.is-home .craft-points{grid-template-columns:1fr;gap:12px}.is-home .craft-points div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #4c6a71;padding-bottom:12px}.is-home .hp-grid{grid-template-columns:1fr;gap:18px;margin-top:40px}.is-home .hp-card>img{aspect-ratio:1/.77}.is-home .hp-info{padding:23px}.is-home .hp-info strong{font-size:29px}.is-home .quality-image{min-height:310px}.is-home .quality-copy{padding:70px 6%}.is-home .partners-grid{gap:35px}.is-home .volume-panel{min-height:270px;padding:35px 7%}.is-home .volume-number{font-size:clamp(66px,17vw,90px)}.is-home .volume-number span{font-size:23px}.is-home .steps{grid-template-columns:1fr;gap:0;margin-top:50px}.is-home .steps>div{padding:17px 0}.is-home .steps p{margin:8px 0}.is-home .portal{padding:70px 6%}.is-home .portal-card{padding:22px}.is-home .portal-row{font-size:11px}.is-home .portal-row em{font-size:10px}.is-home .contact-grid{grid-template-columns:1fr;gap:40px;margin-top:50px}.is-home .contact-aside{margin-top:25px}.is-home .contact-form{padding:25px}.is-home .form-row{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){.is-home }
@media(max-width:620px){.is-home .hero{height:880px}.is-home .hero-copy{padding-bottom:95px}.is-home .hero-assurance{display:grid;gap:5px;margin-top:15px}.is-home .hero-assurance span{font-size:10px;letter-spacing:.06em}}
@media(max-width:620px){.is-home .hero-wash{background:linear-gradient(180deg,rgba(9,32,40,.56) 0%,rgba(9,32,40,.38) 30%,rgba(9,32,40,.58) 57%,rgba(9,32,40,.9) 100%)}}
.is-home .proof-bar>div:nth-child(3){border-right:0}

/* Home — values taken from the final Figma file */
.is-home .volume-top{font-size:16px}
.is-home .volume-number{font-size:clamp(70px,6.7vw,96px);font-weight:600;line-height:1.25;letter-spacing:-.06em;margin-top:22px}
.is-home .volume-panel p{font-size:16px;line-height:1.25}
.is-home .volume-watermark{left:5px;right:auto;bottom:-14px;font-size:80px;line-height:1;white-space:nowrap}
.is-home .steps span{font-size:16px}
.is-home .hp-card{display:block;color:var(--home-ink)}
/* Inner pages — values taken from the final Figma file */
.technical-band span{font-size:16px}
.evidence-flow>div span,.steps-list b,.portal-security span{font-size:20px}
.allocation-intro strong{font:600 clamp(80px,8vw,115px)/1.05 var(--head)}
.quality-message{margin:26px 0 0;padding:24px 26px 24px 27px;background:#e8f3ec;border-left:3px solid #8ccab5}
.quality-message span{display:block;color:#4e9487;font:700 11px/1.3 var(--body);letter-spacing:.19em;text-transform:uppercase}
.copy-frame .quality-message p{margin:12px 0 0;color:var(--ink);font:400 20px/1.45 var(--head);letter-spacing:-.03em}
.related-title{font:400 clamp(35px,3.6vw,52px)/1.15 var(--head);letter-spacing:-.055em}
.article-byline .byline-team{font-weight:400}
@media(max-width:620px){.is-home .volume-number{font-size:clamp(60px,16vw,84px)}.is-home .volume-watermark{font-size:56px}.copy-frame .quality-message p{font-size:18px}.allocation-intro strong{font-size:clamp(54px,15vw,80px)}}

/* ===== IDUN FINAL — motion, micro-interactions, smooth scroll ===== */
:root{--ease-out:cubic-bezier(.16,.84,.24,1);--ease-soft:cubic-bezier(.4,0,.2,1)}
::selection{background:#cfe8dc;color:#193440}
:focus-visible{outline:2px solid #66aa98;outline-offset:3px}

/* scroll progress + page transition */
.scroll-progress{position:fixed;top:0;left:0;z-index:200;height:2px;width:100%;background:#66aa98;transform:scaleX(0);transform-origin:0 50%;pointer-events:none}
.motion-ok body{animation:page-in .6s var(--ease-out) both}
.motion-ok body.is-leaving{opacity:0;transform:translateY(-6px);transition:opacity .28s var(--ease-soft),transform .28s var(--ease-soft)}
@keyframes page-in{from{opacity:0}to{opacity:1}}

/* header: solid + elevated once the page scrolls */
.site-header{transition:background .35s var(--ease-soft),color .35s var(--ease-soft),box-shadow .35s var(--ease-soft),height .35s var(--ease-soft)}
.header-solid{position:sticky;top:0}
.header-solid.is-scrolled{box-shadow:0 10px 30px rgba(13,40,48,.08);background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}
.header-over-hero.is-scrolled{position:fixed;top:0;height:84px;background:rgba(255,255,255,.95);color:var(--navy);box-shadow:0 10px 30px rgba(13,40,48,.1);backdrop-filter:blur(14px);animation:header-drop .45s var(--ease-out)}
.header-over-hero.is-scrolled .brand-mark{color:#75b7a1}
@keyframes header-drop{from{transform:translateY(-100%)}to{transform:none}}
@media(max-width:850px){.header-over-hero.is-scrolled{height:70px}}

/* nav links: animated underline */
.nav-side a:not(.portal-shortcut){position:relative;padding:6px 0}
.nav-side a:not(.portal-shortcut):after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease-out)}
.nav-side a:not(.portal-shortcut):hover:after,.nav-side a[aria-current=page]:after{transform:scaleX(1);transform-origin:left}
.nav-side a:hover{opacity:1}
.portal-shortcut{transition:transform .35s var(--ease-out),background .25s,color .25s}
.portal-shortcut:hover{transform:rotate(45deg)}
.brand-mark{transition:transform .8s var(--ease-out)}
.brand:hover .brand-mark{transform:rotate(90deg)}

/* menu button morphs into a close icon */
.menu-button span{transition:transform .35s var(--ease-out),opacity .2s}
.menu-button[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobile-nav:not([hidden]){animation:menu-in .4s var(--ease-out)}
.mobile-nav:not([hidden]) a{animation:rise .5s var(--ease-out) both}
.mobile-nav a:nth-child(2){animation-delay:.03s}.mobile-nav a:nth-child(3){animation-delay:.06s}.mobile-nav a:nth-child(4){animation-delay:.09s}.mobile-nav a:nth-child(5){animation-delay:.12s}.mobile-nav a:nth-child(6){animation-delay:.15s}.mobile-nav a:nth-child(7){animation-delay:.18s}.mobile-nav a:nth-child(8){animation-delay:.21s}.mobile-nav a:nth-child(9){animation-delay:.24s}
@keyframes menu-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}

/* buttons, links and cards */
.button{position:relative;overflow:hidden;isolation:isolate;transition:background .3s var(--ease-soft),color .3s var(--ease-soft),border-color .3s,transform .35s var(--ease-out),box-shadow .35s var(--ease-out)}
.button:before{content:'';position:absolute;inset:0;z-index:-1;background:rgba(255,255,255,.16);transform:translateX(-101%);transition:transform .5s var(--ease-out)}
.button:hover:before{transform:none}
.button:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(13,40,48,.16)}
.button:active{transform:translateY(0) scale(.98);box-shadow:none}
.button span,.text-link span,.share-btn svg{display:inline-block;transition:transform .35s var(--ease-out)}
.button:hover span,.text-link:hover span{transform:translate(3px,-3px)}
.text-link{position:relative;border-bottom-color:transparent!important}
.text-link:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:currentColor;transform-origin:left;transition:transform .45s var(--ease-out)}
.text-link:hover:after{transform:scaleX(.35)}
.footer-main a,.footer-wordmark{transition:color .25s,transform .3s var(--ease-out)}
.footer-main>div:not(:first-child) a:hover{transform:translateX(4px)}
.hp-card,.product-card,.blog-card{transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out)}
.hp-card:hover,.product-card:hover,.blog-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(21,58,62,.14)}
.hp-card{overflow:hidden}
.hp-card>img,.product-card-media img,.blog-card-media img{transition:transform .9s var(--ease-out)}
.hp-card:hover>img,.product-card:hover .product-card-media img,.blog-card:hover .blog-card-media img{transform:scale(1.05)}
.hp-arrow,.product-card h3 span{transition:transform .35s var(--ease-out)}
.hp-card:hover .hp-arrow,.product-card:hover h3 span{transform:translate(3px,-3px)}
.share-btn:hover svg{transform:scale(1.15)}
.pagination a{transition:background .25s,color .25s,border-color .25s,transform .3s var(--ease-out)}
.pagination a:hover{transform:translateY(-2px)}
.line-facts>div,.quality-list div,.spec-row,.portal-row,.portal-preview>div{transition:padding .35s var(--ease-out),background .3s}
.line-facts>div:hover,.spec-row:hover{padding-left:10px}
.contact-form input,.contact-form select,.contact-form textarea,.enquiry-form input,.enquiry-form select,.enquiry-form textarea{transition:border-color .25s,box-shadow .25s,background .25s}
.form-status:not(:empty){animation:rise .5s var(--ease-out)}
.scroll-cue span{display:inline-block}
.motion-ok .scroll-cue span{animation:cue 1.8s var(--ease-soft) infinite}
@keyframes cue{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

/* hero video + controls */
.is-home .hero-video,.is-home .hero-poster{transform:translate3d(0,var(--parallax,0px),0) scale(1.06);will-change:transform}
.is-home .hero-wash{background:linear-gradient(180deg,rgba(13,36,45,.42) 0%,rgba(13,36,45,.16) 34%,rgba(13,36,45,.34) 58%,rgba(11,35,42,.88) 100%),linear-gradient(90deg,rgba(15,37,42,.42),transparent 72%)}
.video-toggle{position:absolute;right:30px;bottom:24px;z-index:3;display:inline-flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid rgba(255,255,255,.55);border-radius:40px;background:rgba(11,35,42,.25);color:#fff;font:700 10px var(--body);letter-spacing:.14em;text-transform:uppercase;backdrop-filter:blur(8px);transition:background .25s,border-color .25s}
.video-toggle:hover{background:rgba(255,255,255,.18);border-color:#fff}
.video-toggle i{display:inline-block;width:8px;height:10px;border-left:2px solid currentColor;border-right:2px solid currentColor}
.video-toggle[aria-pressed=true] i{width:0;height:0;border-style:solid;border-width:5px 0 5px 8px;border-color:transparent transparent transparent currentColor}
@media(max-width:620px){.video-toggle{right:6%;bottom:18px}}

/* entrance animation for hero and page intros */
.motion-ok .hero-copy>*,.motion-ok .page-intro-inner>*,.motion-ok .article-byline{animation:rise 1s var(--ease-out) both}
.motion-ok .hero-copy>*:nth-child(2),.motion-ok .page-intro-inner>*:nth-child(2){animation-delay:.12s}
.motion-ok .hero-copy>*:nth-child(3),.motion-ok .page-intro-inner>*:nth-child(3){animation-delay:.24s}
.motion-ok .hero-copy>*:nth-child(4),.motion-ok .page-intro-inner>*:nth-child(4){animation-delay:.36s}
.motion-ok .hero-copy>*:nth-child(5),.motion-ok .page-intro-inner>*:nth-child(5){animation-delay:.48s}
.motion-ok .hero-copy>*:nth-child(6){animation-delay:.6s}
.motion-ok .short-rule{animation:rule-in 1.1s var(--ease-out) .3s both}
@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes rule-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* scroll reveal (classes are added by script.js, so content stays visible without JavaScript) */
.motion-ok .reveal{opacity:0;transform:translateY(34px);transition:opacity .95s var(--ease-out),transform .95s var(--ease-out)}
.motion-ok .reveal.is-visible{opacity:1;transform:none}
.motion-ok .reveal-d1{transition-delay:.1s}.motion-ok .reveal-d2{transition-delay:.2s}.motion-ok .reveal-d3{transition-delay:.3s}.motion-ok .reveal-d4{transition-delay:.4s}.motion-ok .reveal-d5{transition-delay:.5s}
.motion-ok .reveal-media{overflow:hidden}
.motion-ok .reveal-media img{transform:scale(1.12);transition:transform 1.6s var(--ease-out)}
.motion-ok .reveal-media.is-visible img{transform:scale(1)}
.motion-ok .reveal-rule{transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease-out) .2s}
.motion-ok .centered .reveal-rule,.motion-ok .reveal-rule.is-centered{transform-origin:center}
.motion-ok .reveal-rule.is-visible{transform:scaleX(1)}
/* Allocation figure: lighter tracking so the semibold digits and the "kg" unit no longer overlap */
.allocation-intro strong{font-size:clamp(50px,6.9vw,100px);letter-spacing:-.06em}
@media(max-width:850px){.allocation-intro strong{font-size:clamp(46px,12.5vw,96px)}}
.allocation-intro strong small{display:inline-block;margin-left:.18em;letter-spacing:0;font-weight:400}

/* ===== REV01 — image cross-fade, sliders, portal image ===== */
/* Home craft section: two images cross-fade every 3 s */
.is-home .fade-stack img{opacity:0;transition:opacity 1.4s var(--ease-soft),transform 1.6s var(--ease-out)}
.is-home .fade-stack img.is-active{opacity:1}

/* Facility + Quality sliders */
.slider-wrap{position:relative;min-width:0}
.photo-text.reverse .slider-wrap{order:2}
.photo-frame.slider{position:relative;overflow:hidden;touch-action:pan-y}
.slider-track{display:flex;height:100%;transition:transform .9s var(--ease-out);will-change:transform}
.photo-frame .slider-track .slide{position:static;flex:0 0 100%;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}
.slider-dots{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:20px}
.slider-dot{width:10px;height:10px;padding:0;border:1px solid #66aa98;border-radius:10px;background:transparent;cursor:pointer;transition:width .45s var(--ease-out),background .3s,transform .2s}
.slider-dot:hover{background:#b9dccd}
.slider-dot:active{transform:scale(.9)}
.slider-dot.is-active{width:30px;background:#66aa98}
@media(max-width:850px){.photo-text.reverse .slider-wrap{order:0}}

/* Home portal section: photo on the right half, the resources card sits on top of it */
.is-home .portal{position:relative;overflow:hidden}
.is-home .portal-visual{position:absolute;top:0;bottom:0;right:0;left:46.74%}
.is-home .portal-visual img{width:100%;height:100%;object-fit:cover}
.is-home .portal-inner{position:relative;z-index:1}
@media(max-width:800px){.is-home .portal-visual{position:relative;left:auto;height:300px;margin:-105px -5vw 56px}}
@media(max-width:620px){.is-home .portal-visual{height:240px;margin:-70px -6vw 44px}}

/* REV01b — dots on top of the Home cross-fade image; images are clickable */
.is-home .fade-stack,.photo-frame.slider{cursor:pointer;-webkit-tap-highlight-color:transparent}
.is-home .fade-dots{position:absolute;left:0;right:0;bottom:26px;z-index:2;margin:0}
.is-home .fade-dots .slider-dot{border-color:rgba(255,255,255,.9);background:rgba(13,36,45,.18);box-shadow:0 1px 6px rgba(0,0,0,.25)}
.is-home .fade-dots .slider-dot:hover{background:rgba(255,255,255,.55)}
.is-home .fade-dots .slider-dot.is-active{background:#fff}
@media(max-width:620px){.is-home .fade-dots{bottom:18px}}

/* New logo (Idun Medica wordmark): white on the Home hero, navy on light headers */
.brand{gap:0;transition:opacity .25s}
.brand:hover{opacity:.82}
.brand-logo{display:block;width:228px;height:auto}
.brand-logo-dark{display:none}
.header-solid .brand-logo-light,.header-over-hero.is-scrolled .brand-logo-light{display:none}
.header-solid .brand-logo-dark,.header-over-hero.is-scrolled .brand-logo-dark{display:block}
.footer-wordmark{display:inline-block;letter-spacing:0}
.footer-wordmark img{display:block;width:220px;height:auto}
@media(max-width:1150px){.brand-logo{width:196px}}
@media(max-width:850px){.brand-logo{width:172px}}
@media(max-width:620px){.brand-logo{width:150px}.footer-wordmark img{width:180px}}

/* ===== REV02 — DK Ultra + client photography ===== */
/* shared figure grids */
.photo-strip,.team-strip,.facility-gallery{display:grid;gap:18px;margin:0;padding:0}
.photo-strip{grid-template-columns:repeat(3,1fr)}
.team-strip{grid-template-columns:repeat(4,1fr);margin-top:52px}
.facility-gallery{grid-template-columns:repeat(3,1fr);margin-top:52px}
.photo-strip figure,.team-strip figure,.facility-gallery figure,.process-steps figure,.contact-photo{margin:0;overflow:hidden}
.photo-strip img,.team-strip img,.facility-gallery img,.process-steps img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .9s var(--ease-out)}
.team-strip img{aspect-ratio:3/4}
.photo-strip figure:hover img,.team-strip figure:hover img,.facility-gallery figure:hover img,.process-steps article:hover img{transform:scale(1.05)}
.photo-strip figcaption,.team-strip figcaption,.facility-gallery figcaption{padding-top:12px;color:#4e9487;font:700 10px/1.4 var(--body);letter-spacing:.15em;text-transform:uppercase}
.section-title>p{max-width:640px;color:var(--muted);font:400 16px/1.85 var(--body)}
.is-home .intro .photo-strip{margin-top:64px}
.lab-section .photo-strip{margin-top:52px}

/* Home: single product feature */
.dk-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:6%;align-items:center;margin-top:58px;text-align:left}
.dk-feature-media{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:1fr 1fr;gap:16px;height:540px}
.dk-feature-media img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease-out)}
.dk-feature-media .dk-main{grid-row:1/3}
.dk-feature-media:hover img{transform:scale(1.03)}
.dk-feature-copy .hp-label{display:block;margin-bottom:14px;color:#609687;font:700 10px var(--home-body,var(--body));letter-spacing:.15em;text-transform:uppercase}
.dk-feature-copy h3{margin:0 0 18px;color:#193440;font:500 clamp(40px,4vw,58px)/1.05 var(--head);letter-spacing:-.05em}
.dk-feature-copy p{margin:0 0 22px;color:#647b80;font:400 16px/1.8 var(--body)}
.dk-checks{margin:0 0 30px;padding:0;list-style:none;border-top:1px solid #d6e1de}
.dk-checks li{position:relative;padding:14px 0 14px 26px;border-bottom:1px solid #d6e1de;color:#193440;font:500 14px/1.5 var(--body)}
.dk-checks li:before{content:'';position:absolute;left:0;top:21px;width:12px;height:2px;background:#69aa9b}

/* DK Ultra detail */
.dk-detail{align-items:start}
.dk-media{min-width:0}
.dk-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:12px 0 0;padding:0;list-style:none}
.dk-thumbs img{display:block;width:100%;aspect-ratio:1;object-fit:cover;transition:transform .5s var(--ease-out),opacity .3s}
.dk-thumbs li{overflow:hidden}
.dk-thumbs li:hover img{transform:scale(1.08)}
.dk-note{margin:12px 0 0;color:#7f938f;font:500 11px/1.5 var(--body)}
.dk-detail .product-spec .cta-pair{margin-top:28px}
.dk-detail .product-spec .button{margin-top:0}
.process-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:52px}
.process-steps article{border-top:2px solid #83c7b0;padding-top:18px}
.process-steps figure{margin-bottom:18px}
.process-steps img{aspect-ratio:3/4}
.process-steps span{color:#559783;font:700 16px var(--body)}
.process-steps h3{margin:10px 0;color:var(--ink);font:500 22px/1.25 var(--head);letter-spacing:-.03em}
.process-steps p{margin:0;color:var(--muted);font:400 14px/1.7 var(--body)}
.dk-quality .dk-checks{margin:8px 0 28px}
.dk-supply{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:#fff}
.dk-supply-photo{position:relative;min-height:560px;overflow:hidden}
.dk-supply-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dk-supply-copy{display:flex;flex-direction:column;justify-content:center;padding:80px max(8%,calc((100vw - 1370px)/2))}
.dk-supply-copy h2{margin:22px 0;font:400 clamp(36px,3.8vw,56px)/1.15 var(--head);letter-spacing:-.055em}
.dk-supply-copy>p{margin:0 0 30px;color:#c6dad5;font:400 16px/1.85 var(--body)}
.dk-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:34px;padding-top:24px;border-top:1px solid #42616a}
.dk-facts b{display:block;font:500 26px/1.15 var(--head);letter-spacing:-.04em}
.dk-facts span{display:block;margin-top:8px;color:#9bd0bb;font:700 10px/1.5 var(--body);letter-spacing:.12em;text-transform:uppercase}
.dk-supply .button{align-self:flex-start}

/* Company / contact / portal additions */
.team-section{background:#f3f8f5}
.contact-photo{margin-top:36px}
.contact-photo img{display:block;width:100%;aspect-ratio:940/330;object-fit:cover}
.portal-wide{height:420px}

@media(max-width:1150px){.process-steps{grid-template-columns:repeat(3,1fr)}.dk-thumbs{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.dk-feature{grid-template-columns:1fr;gap:34px}.dk-feature-media{height:420px}.team-strip{grid-template-columns:repeat(2,1fr)}.facility-gallery{grid-template-columns:repeat(2,1fr)}.dk-supply{grid-template-columns:1fr}.dk-supply-photo{min-height:380px}.dk-supply-copy{padding:65px 6%}}
@media(max-width:620px){.photo-strip{grid-template-columns:1fr}.facility-gallery,.team-strip{grid-template-columns:1fr 1fr;gap:12px}.process-steps{grid-template-columns:1fr;gap:28px}.process-steps img{aspect-ratio:4/3}.dk-feature-media{height:340px;gap:10px}.dk-facts{grid-template-columns:1fr;gap:14px}.portal-wide{height:260px}.dk-thumbs{grid-template-columns:repeat(3,1fr);gap:8px}}
/* REV02 design update: Randers building panorama replaces the wide greenhouse photo */
.wide-photo.building-photo{height:auto;aspect-ratio:2241/848}
/* FAQ page */
.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%;background:#f5f9f6;align-items:start}
.faq-layout aside h2{margin:22px 0}
.faq-layout aside p{max-width:300px;color:var(--muted);font-size:16px;line-height:1.85}
.faq-list{border-bottom:1px solid #d8e3df}
.faq-item{border-top:1px solid #d8e3df}
.faq-item summary{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;padding:30px 0;cursor:pointer;list-style:none;font:600 21px/1.38 var(--head);letter-spacing:-.03em;color:var(--navy);transition:color .2s}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{color:#4e9487}
.faq-item summary:focus-visible{outline:2px solid #83c7b0;outline-offset:4px}
.faq-item summary i{position:relative;flex:0 0 16px;height:16px;margin-top:7px}
.faq-item summary i:before,.faq-item summary i:after{content:'';position:absolute;left:0;top:7px;width:16px;height:2px;background:#4e9487;transition:transform .3s ease}
.faq-item summary i:after{transform:rotate(90deg)}
.faq-item[open] summary i:after{transform:rotate(0)}
.faq-answer{padding:0 46px 30px 0}
.faq-answer p{margin:0;color:var(--muted);font:400 16px/1.8 var(--body)}
.faq-item[open] .faq-answer{animation:faq-reveal .35s ease both}
@keyframes faq-reveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.faq-item[open] .faq-answer{animation:none}}
@media(max-width:900px){.faq-layout{grid-template-columns:1fr;gap:35px}}
@media(max-width:620px){.faq-item summary{font-size:18px;padding:24px 0;gap:18px}.faq-answer{padding:0 0 24px}.faq-answer p{font-size:15px}}
