/* FungiFoam: editorial material system. No hidden first-paint content or motion dependency. */
:root{--fn-ink:#25342d;--fn-muted:#526057;--fn-paper:#f7f6f0;--fn-line:#c7cdc3;--fn-sand:#eae7dc;--fn-accent:#bdd0ab}
body.ff-body{background:var(--fn-paper);color:var(--fn-ink)}
.ff-wrap{max-width:1480px;padding-inline:clamp(24px,4.5vw,72px)}
.ff-header{background:#f7f6f0;border-color:var(--fn-line);backdrop-filter:none}
.ff-nav-row{height:94px}.ff-desktop-nav{gap:25px;font-size:13px}.ff-nav-cta{background:var(--fn-ink);font-size:12px;gap:18px}.ff-language{font-size:13px;min-width:32px;min-height:44px;display:grid;place-items:center}
.ff-mobile-nav{background:var(--fn-paper)}.ff-menu-toggle{min-width:46px;min-height:46px}.ff-mobile-nav a{min-height:52px}
h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:500;letter-spacing:-.045em}
h1 em,h2 em{font-family:inherit;font-style:normal}
.ff-kicker{font-size:11px;letter-spacing:.11em;line-height:1.6;color:inherit}
.ff-button{background:var(--fn-ink);color:#fff;min-height:50px;padding:15px 22px;font-size:13px;font-weight:500;gap:24px}
.ff-button:hover{background:#405543;color:#fff;transform:none}.ff-link{font-size:13px;min-height:44px;line-height:1.5;padding-block:10px;gap:20px;border-color:#8a958b}.ff-link:hover{gap:24px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9b4b32;outline-offset:4px}
.fn-section{padding-block:100px}.fn-heading{max-width:830px;margin-bottom:52px}.fn-heading h2{margin-top:20px}
.fn-section h2{font-size:clamp(34px,3.6vw,54px);line-height:1.13}.fn-section h3{font-size:24px;line-height:1.3;letter-spacing:-.025em}
.fn-section p,.fn-guide p{font-size:16px;line-height:1.8;color:var(--fn-muted)}.fn-section p.ff-kicker{font-size:11px;color:inherit}
.fn-section h2+p,.fn-section h3+p,.fn-section p+p{margin-top:22px}.fn-section .ff-link{margin-top:22px}
.fn-lead{font-size:18px;line-height:1.75;color:var(--fn-muted);max-width:660px}
.fn-intro{padding-block:74px 65px;border-bottom:1px solid var(--fn-line)}.fn-intro h1{font-size:clamp(44px,6vw,86px);line-height:1.06;max-width:1120px;margin:28px 0}.fn-intro .fn-lead{max-width:780px}
.fn-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:stretch;padding-block:48px 58px}
.fn-hero-copy{padding-block:24px}.fn-hero h1{font-size:clamp(58px,6.25vw,92px);line-height:1.02;letter-spacing:-.06em;margin:28px 0;max-width:750px}
.fn-hero h1 span{color:#50674f}.fn-hero .fn-lead{max-width:490px;font-size:17px}.fn-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 26px;margin-top:28px}
.fn-hero-note{font-size:12px;margin-top:30px;color:var(--fn-muted)}
.fn-hero-figure{background:#e4e4d7;position:relative;display:flex;flex-direction:column;justify-content:space-between;min-width:0;overflow:hidden}
.fn-specimen-index{font-family:monospace;font-size:11px;letter-spacing:.07em;margin:24px 28px;z-index:1}
.fn-panel-image{object-fit:contain;width:100%;height:330px;mix-blend-mode:multiply;padding:0 22px}
.fn-hero-figure figcaption{margin:24px 28px;padding-top:20px;border-top:1px solid #9aab9380;display:grid;gap:7px}
.fn-hero-figure figcaption>span{font-size:10px;letter-spacing:.06em}.fn-hero-figure strong{font-size:clamp(27px,2.8vw,43px);font-weight:500;line-height:1.25;letter-spacing:-.035em}.fn-hero-figure small{font-size:14px;letter-spacing:0}
.fn-metrics{display:grid;grid-template-columns:repeat(4,1fr);background:var(--fn-ink);color:#f5f5ed;padding-block:38px;gap:0}
.fn-metrics>div{padding:0 26px;border-left:1px solid #718173}.fn-metrics>div:first-child{padding-left:0;border:0}
.fn-metrics strong{font-size:clamp(36px,4.2vw,62px);font-weight:400;letter-spacing:-.06em;line-height:1.2;display:block}.fn-metrics small{display:block;font-size:13px;letter-spacing:0;margin-top:4px}.fn-metrics p{font-size:13px;margin-top:16px;line-height:1.6}.fn-metrics span{font-size:11px;color:#c2cdbf}
.fn-split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.fn-split>*{min-width:0}.fn-split .ff-kicker{margin-bottom:22px}.fn-split p.fn-large-copy,.fn-large-copy{font-size:clamp(23px,2.4vw,34px);line-height:1.5;letter-spacing:-.025em;color:var(--fn-ink)}
.fn-split .ff-link+.ff-link{margin-left:18px}.fn-tag{display:block;font-size:11px;letter-spacing:.07em;text-transform:uppercase;margin-top:25px;color:#53624e}
.fn-sand{background:var(--fn-sand)}.fn-ink{background:var(--fn-ink);color:var(--fn-paper)}.fn-ink p,.fn-ink .fn-heading p{color:#d2dbcd}.fn-ink a{color:#fff}.fn-ink .ff-link{border-color:#96a58c}
.fn-europe{background:#eceee6;border-block:1px solid var(--fn-line)}
.fn-eu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.fn-eu-grid>div{border-top:1px solid #9ca995;padding-top:25px}.fn-eu-grid strong{font-size:clamp(65px,7vw,106px);font-weight:400;letter-spacing:-.065em;line-height:1.1}.fn-eu-grid p{max-width:250px;margin-top:15px}
.fn-section p.fn-source,.fn-source{font-size:12px;line-height:1.7;color:var(--fn-muted);margin-top:22px}.fn-source a{text-decoration:underline;text-underline-offset:3px}
.fn-regulation{display:grid;grid-template-columns:1.25fr .7fr .7fr;gap:45px;margin-top:65px;border-top:1px solid #aeb7a5;padding-top:40px}.fn-regulation h3{font-size:29px;margin:14px 0}.fn-regulation p{font-size:14px}.fn-deadline strong{font-size:60px;letter-spacing:-.06em;font-weight:400}
.fn-cutaway{background:#ebece4;padding:24px;min-width:0}.fn-cutaway svg{width:100%;height:auto;display:block}.fn-cutaway figcaption{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;font-size:12px;border-top:1px solid #abb4a4;padding-top:20px}.fn-cutaway .fn-source{font-size:11px;margin-top:14px}
.fn-roadmap{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:40px 0 0;padding:0;border-top:1px solid #8a9686}.fn-roadmap li{position:relative;padding:26px 25px 32px 0;border-bottom:1px solid #8a9686;min-width:0}.fn-roadmap li:before{content:"";position:absolute;width:9px;height:9px;border:1px solid currentColor;border-radius:50%;top:-5px;left:0;background:var(--fn-ink)}
.fn-roadmap .done:before{background:#c7d7b6}.fn-roadmap .current{background:#c7d7b6;color:var(--fn-ink);padding-left:20px}.fn-roadmap .current:before{background:#c7d7b6;left:20px}
.fn-step{font:14px monospace}.fn-roadmap h3{font-size:19px;margin-top:24px;max-width:210px}.fn-roadmap p{font-size:11px;margin-top:16px;text-transform:uppercase;letter-spacing:.06em}.fn-ink .fn-roadmap .current p{color:var(--fn-ink)}
.fn-recognition{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:42px}.fn-recognition>div{border-top:1px solid var(--fn-line);padding-top:25px}.fn-recognition span{font-size:12px}.fn-recognition h3{margin-top:30px}.fn-recognition p{font-size:14px}.fn-recognition .ff-link{margin-top:12px}
.fn-photo{margin:0;min-width:0}.fn-photo img{width:100%;height:auto;object-fit:cover;aspect-ratio:4/3}.fn-photo figcaption{font-size:11px;color:var(--fn-muted);padding-top:13px;line-height:1.7}
.fn-partners{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.fn-partners a{border-top:1px solid var(--fn-line);padding:27px 0 10px;position:relative}.fn-partners h3{font-size:22px}.fn-partners p{font-size:14px;margin:18px 0 28px}.fn-partners .ff-arrow{transition:transform .2s}.fn-partners a:hover .ff-arrow{transform:translate(3px,-3px)}
.fn-cta{background:#c8d6b9;padding-block:75px}.fn-cta .ff-wrap>div{display:flex;justify-content:space-between;gap:50px;align-items:center;margin-top:26px}.fn-cta h2{font-size:clamp(38px,4.5vw,65px);max-width:850px;line-height:1.1}.fn-cta .ff-button{flex:none}
.fn-process{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.fn-process article{border-top:1px solid var(--fn-line);padding-top:22px}.fn-process p{font-size:14px}
.fn-process-symbol{height:130px;border:1px solid #87987b;margin-bottom:28px;display:grid;place-items:center;background:repeating-linear-gradient(45deg,transparent,transparent 13px,#a3b09c44 14px,transparent 15px)}.fn-process-symbol span{border:1px solid #71826a;background:var(--fn-paper);padding:16px;font:24px monospace;transition:transform .25s}.fn-process article:hover .fn-process-symbol span{transform:translateY(-5px)}
.fn-three{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.fn-three article{border-top:1px solid var(--fn-line);padding-top:28px}
.fn-material-overview{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-top:65px}.fn-material-photo{background:#e7e8dd;padding:24px;align-self:stretch}.fn-material-photo img{object-fit:contain;min-height:330px;mix-blend-mode:multiply}
.fn-performance{padding-block:20px}.fn-performance>strong{display:block;font-size:clamp(70px,8vw,118px);font-weight:400;letter-spacing:-.065em;line-height:1.1;margin-top:30px}.fn-unit{font-size:23px}.fn-performance h2{font-size:24px;margin-top:30px}.fn-performance>p:not(.ff-kicker){font-size:12px;margin-top:15px}
.fn-performance dl{margin:35px 0 0}.fn-performance dl>div{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--fn-line);padding:14px 0;font-size:13px}.fn-performance dd{margin:0;font-weight:600;text-align:right}
.fn-data-list>div{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:24px;align-items:center;padding:22px 0;border-top:1px solid var(--fn-line)}.fn-data-list h3{font-size:16px}.fn-data-list p{margin:0;font-size:16px}.fn-data-list span,.fn-data-list a{font-size:12px;color:var(--fn-muted)}.fn-data-list a{text-decoration:underline}
.fn-formula{font:28px monospace;margin-top:35px;border-top:1px solid var(--fn-line);padding-top:22px}.fn-formula small{display:block;font-size:13px;margin-top:10px}
.fn-r-table{width:100%;border-collapse:collapse;font-size:15px}.fn-r-table caption{text-align:left;font-size:13px;margin-bottom:24px}.fn-r-table th,.fn-r-table td{padding:16px 0;text-align:left;border-bottom:1px solid var(--fn-line);font-weight:400}.fn-r-table thead th{font-size:11px;text-transform:uppercase}.fn-r-table td{width:65%;padding-left:20px}
.fn-r-bar{display:block;width:var(--r);min-width:62px;background:#c9d6bd;padding:8px 12px;font-size:19px}
.fn-applications{display:grid;grid-template-columns:repeat(3,1fr);gap:46px 50px}.fn-applications article{padding-top:20px;border-top:1px solid var(--fn-line)}.fn-applications span{font:12px monospace}.fn-applications h3{margin-top:30px}.fn-applications p{font-size:14px}
.fn-measurements{display:grid;grid-template-columns:1fr 1fr;gap:0 65px}.fn-measurements article{display:grid;grid-template-columns:38px 1fr;gap:12px 18px;border-top:1px solid var(--fn-line);padding:25px 0}.fn-measurements span{font:12px monospace;padding-top:6px;grid-row:span 2}.fn-measurements h3{font-size:21px}.fn-measurements p{margin:0;font-size:14px}
.fn-huge{display:block;font-size:100px;font-weight:400;line-height:1.2;letter-spacing:-.06em;margin-block:20px}
.ff-team-grid h3{font-size:22px}.ff-team-grid p{font-size:14px}.ff-team-grid .ff-role{font-size:12px;color:#4f6348}.ff-team-portrait{height:310px;background-size:cover;background-position:center}
.fn-media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:45px}.fn-media-grid img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#e5e7dc}.fn-media-grid figcaption{font-size:11px;color:var(--fn-muted);margin-top:8px}.fn-email{font-size:clamp(20px,2.2vw,31px);text-decoration:underline;overflow-wrap:anywhere}
.fn-editorial-feature{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.fn-editorial-feature h2{margin-top:25px}.fn-editorial-list{margin-top:70px}.fn-editorial-list article{display:grid;grid-template-columns:150px 1fr 150px;gap:30px;border-top:1px solid var(--fn-line);padding:32px 0;align-items:start}.fn-editorial-list h2{font-size:27px}.fn-editorial-list p{font-size:14px;margin-top:14px}.fn-editorial-list .ff-link{margin-top:0}
.fn-guide{display:grid;grid-template-columns:260px 1fr;gap:85px;padding-block:65px 100px}.fn-guide nav{position:sticky;top:120px;max-height:calc(100vh - 145px);overflow:auto;padding-right:12px}.fn-guide nav a{display:block;font-size:12px;padding:12px 0;border-bottom:1px solid var(--fn-line);line-height:1.7}.fn-guide nav span{font:11px monospace;padding-right:7px}.fn-guide section{padding-bottom:45px;margin-bottom:35px;border-bottom:1px solid var(--fn-line);scroll-margin-top:120px}.fn-guide section:last-child{border-bottom:0}.fn-guide h2{font-size:clamp(28px,3vw,40px);line-height:1.25;margin:16px 0 24px}.fn-guide p+p{margin-top:24px}.fn-guide article a{text-decoration:underline;text-underline-offset:4px}.fn-guide .ff-faq summary{font-size:16px}.fn-guide .ff-kicker{font-size:11px}
.ff-page-intro h1{max-width:1100px}.ff-article{max-width:950px}.ff-article h2{font-size:32px}.ff-article p{color:var(--fn-muted);font-size:16px}.ff-lead{color:var(--fn-muted)}
.ff-form{background:#e9ece2}.ff-field label{font-size:13px}.ff-field input,.ff-field textarea,.ff-field select{font-size:16px;min-height:48px;background:var(--fn-paper)}.ff-fineprint{font-size:12px}.ff-contact-aside p{font-size:15px}.ff-contact-topics p{font-size:13px}.ff-form .ff-button{font-size:14px}
.ff-footer{background:var(--fn-ink);color:#f7f6f0;padding-top:70px}.ff-footer-top{display:grid;grid-template-columns:.8fr 1.7fr;gap:70px}.ff-footer-groups{gap:35px}.ff-footer-top p,.ff-location,.ff-footer-bottom{color:#c8d3c1;font-size:12px}.ff-footer-top nav a{font-size:12px;line-height:1.5;padding-block:5px}.ff-footer-top nav h2{color:#fff}.ff-footer-brand{font-size:clamp(40px,4vw,58px)}.ff-legal-nav{background:var(--fn-ink);color:#d9e1d1;font-size:12px}
.ff-cookie-dialog{background:var(--fn-paper)}
@media(min-width:1600px){.fn-hero{padding-block:65px}.fn-panel-image{height:390px}}
@media(max-width:1100px){.ff-desktop-nav{gap:16px;font-size:12px}.fn-hero{gap:28px}.fn-hero h1{font-size:65px}.fn-split{gap:40px}.fn-hero-figure strong{font-size:30px}.fn-panel-image{height:320px}.fn-process{gap:22px}.fn-partners{grid-template-columns:1fr 1fr;gap:32px}.fn-guide{grid-template-columns:210px 1fr;gap:45px}.ff-footer-top{grid-template-columns:1fr;gap:50px}.fn-material-overview{gap:35px}.fn-regulation{gap:28px}}
@media(max-width:760px){.ff-nav-row{height:76px}.fn-hero{grid-template-columns:1fr;padding-block:25px 32px;gap:30px}.fn-hero-copy{padding-top:15px;padding-bottom:0}.fn-hero h1{font-size:clamp(48px,12vw,73px);margin:22px 0;max-width:650px}.fn-hero .fn-lead{font-size:16px}.fn-hero-note{margin-top:20px}.fn-hero-figure{min-height:0}.fn-specimen-index{margin:18px 20px}.fn-panel-image{height:250px;padding:0 18px}.fn-hero-figure figcaption{margin:15px 20px}.fn-hero-figure strong{font-size:33px}
.fn-metrics{grid-template-columns:1fr 1fr;padding-block:27px;gap:26px 0}.fn-metrics>div{padding:0 16px}.fn-metrics>div:nth-child(odd){padding-left:0;border:0}.fn-metrics strong{font-size:42px}.fn-metrics p{font-size:12px;margin-top:12px}.fn-metrics span{font-size:10px}
.fn-section{padding-block:62px}.fn-heading{margin-bottom:32px}.fn-section h2{font-size:36px}.fn-section h3{font-size:23px}.fn-section p{font-size:15px}.fn-heading h2{margin-top:17px}.fn-split,.fn-material-overview,.fn-editorial-feature{grid-template-columns:1fr;gap:32px}.fn-split .ff-link+.ff-link{margin-left:0;display:flex;width:fit-content}
.fn-intro{padding-block:45px}.fn-intro h1{font-size:clamp(40px,10vw,60px)}.fn-lead{font-size:16px}
.fn-eu-grid{gap:18px}.fn-eu-grid strong{font-size:45px}.fn-eu-grid p{font-size:12px;line-height:1.7;margin-top:10px}
.fn-regulation{grid-template-columns:1fr 1fr;gap:25px;margin-top:40px}.fn-regulation>div:first-child{grid-column:1/-1}.fn-deadline strong{font-size:50px}.fn-regulation h3{font-size:28px}
.fn-cutaway{padding:12px}.fn-cutaway figcaption{font-size:11px}.fn-cutaway .fn-source{padding-inline:4px}
.fn-roadmap{grid-template-columns:1fr 1fr;margin-top:30px}.fn-roadmap li{padding:23px 20px 25px 0}.fn-roadmap h3{font-size:18px}.fn-roadmap p{font-size:10px}
.fn-recognition{grid-template-columns:1fr;gap:30px}.fn-recognition h3{margin-top:15px}.fn-recognition .ff-link{margin-top:8px}
.fn-partners{gap:25px}.fn-partners h3{font-size:20px}.fn-partners p{font-size:13px}.fn-cta{padding-block:55px}.fn-cta .ff-wrap>div{display:block;margin-top:20px}.fn-cta h2{font-size:40px}.fn-cta .ff-button{margin-top:30px}
.fn-process{grid-template-columns:1fr 1fr;gap:32px 20px}.fn-process h3{font-size:21px}.fn-process p{font-size:13px}.fn-process-symbol{height:100px}.fn-process-symbol span{font-size:21px}
.fn-three{grid-template-columns:1fr;gap:30px}.fn-material-overview{padding-top:35px}.fn-material-photo img{min-height:0}.fn-performance>strong{font-size:86px}.fn-performance{padding-block:0}.fn-performance h2{font-size:24px}
.fn-data-list>div{grid-template-columns:1fr 1fr;gap:10px 18px;padding:20px 0}.fn-data-list h3{font-size:16px;grid-column:1/-1}.fn-data-list p{font-size:15px}.fn-data-list span,.fn-data-list a{font-size:11px}.fn-data-list span{text-align:right}
.fn-applications{grid-template-columns:1fr 1fr;gap:35px 24px}.fn-applications h3{font-size:23px;margin-top:20px}.fn-applications p{font-size:14px}
.fn-measurements{grid-template-columns:1fr;gap:0}.fn-measurements h3{font-size:22px}.fn-measurements p{font-size:14px}
.fn-media-grid{gap:30px 20px}.fn-media-grid .ff-link{font-size:12px}
.fn-editorial-list article{grid-template-columns:1fr;gap:15px}.fn-editorial-list h2{font-size:26px}.fn-editorial-list .ff-link{width:fit-content}
.fn-guide{display:block;padding-top:35px;padding-bottom:45px}.fn-guide aside{margin-bottom:45px}.fn-guide nav{position:static;max-height:none;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.fn-guide nav .ff-kicker{grid-column:1/-1;margin-bottom:12px}.fn-guide nav a{font-size:11px}.fn-guide h2{font-size:30px}.fn-guide p{font-size:15px}
.ff-team-portrait{height:230px}.ff-team-grid h3{font-size:21px}.ff-team-grid p{font-size:13px}.ff-team-grid .ff-role{font-size:11px}
.ff-footer-top{display:block}.ff-footer-groups{margin-top:45px}.ff-footer-brand{font-size:48px}.ff-footer-bottom{font-size:11px}.ff-form{padding:24px}.ff-field input,.ff-field textarea,.ff-field select{font-size:16px}
}
@media(max-width:380px){.fn-eu-grid{grid-template-columns:1fr}.fn-eu-grid>div{display:grid;grid-template-columns:110px 1fr;gap:20px}.fn-eu-grid strong{font-size:48px}.fn-partners,.fn-applications,.fn-process,.fn-media-grid{grid-template-columns:1fr}.fn-hero h1{font-size:46px}.ff-team-portrait{height:190px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
