@import url("https://fonts.googleapis.com/css2?family=Arvo:wght@700&family=Poppins:ital,wght@0,400;0,700;1,400;1,700&display=swap");

:root { --red:#ff0909; --ink:#171717; --paper:#f1f1f1; --green:#174d31; --wide:1360px; --narrow:960px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; overflow-x:hidden; background:#fff; color:var(--ink); font-family:"Poppins",Arial,sans-serif; }
button,a { color:inherit; font:inherit; } button { cursor:pointer; } a { text-decoration:none; }
.narrow { width:min(var(--narrow),calc(100% - 48px)); margin-inline:auto; }

.site-header { position:fixed; top:44px; left:50%; z-index:40; width:min(var(--wide),calc(100% - 96px)); transform:translateX(-50%); display:flex; justify-content:space-between; align-items:center; pointer-events:none; transition:top .25s ease; }
.site-header.scrolled { top:14px; }
.site-header>* { pointer-events:auto; }
.logo { width:254px; height:60px; display:block; }
.logo img { display:block; width:100%; height:100%; }
.site-tools { display:flex; border-radius:11px; overflow:hidden; background:rgba(55,73,87,.2); backdrop-filter:blur(8px); }
.site-tools button { width:42px; height:42px; border:0; border-right:1px solid rgba(255,255,255,.08); color:#fff; background:transparent; font-size:16px; }
.site-tools .active-language { text-decoration:underline; text-underline-offset:5px; }
.theme-toggle { display:grid; place-items:center; }
.theme-toggle span { display:block; font-family:"Segoe UI Symbol","Arial Unicode MS",sans-serif; font-size:25px; font-weight:400; line-height:1; transform:translateY(-1px); }
.site-header.scrolled .site-tools { background:rgba(224,224,224,.9); box-shadow:0 6px 18px rgba(0,0,0,.06); }
.site-header.scrolled .site-tools button { color:#777; }

.hero { position:relative; height:884px; overflow:hidden; color:#fff; }
.hero-slide { position:absolute; inset:0; background-size:cover; opacity:0; transition:opacity .9s ease; will-change:opacity; }
.hero-slide.active { opacity:1; }
.hero-wash { position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg,rgba(7,20,25,.22) 0%,rgba(7,20,25,.30) 25%,rgba(7,20,25,.58) 46%,rgba(7,20,25,.62) 76%,rgba(7,20,25,.38) 100%); }
.hero-title { position:relative; z-index:2; width:min(var(--narrow),calc(100% - 48px)); margin:auto; padding-top:388px; }
.hero h1 { margin:0; color:#fff; font-size:72px; line-height:1.22; letter-spacing:-.045em; font-weight:700; text-shadow:0 2px 16px rgba(0,0,0,.14); }
@media (min-width:1024px) { .hero h1 { font-size:90px; } }
.hero h1 em { font-weight:400; }
@media (min-width:761px) { .hero h1 span { white-space:nowrap; } }
.slider-dots { position:absolute; z-index:3; left:50%; bottom:0; height:63px; display:flex; flex-direction:column; justify-content:flex-end; transform:translateX(-50%); }
.slider-dots::before { content:""; position:absolute; bottom:12px; left:3px; width:1px; height:44px; border-left:1px dashed #e40000; }
.slider-dots button { position:relative; z-index:1; width:7px; height:7px; margin:2px 0; padding:0; border:0; border-radius:50%; background:transparent; }
.slider-dots button[aria-current="true"] { background:#d00; }
.buy-main,.buy-inline { z-index:45; min-width:222px; height:60px; border:0; padding:0 26px; color:#fff; background:var(--red); font-weight:700; font-size:20px; transition:background-color .24s ease,transform .24s cubic-bezier(.2,.7,.2,1); }
.buy-main:hover,.buy-main:focus-visible,.buy-inline:hover,.buy-inline:focus-visible { background:#e60000; transform:translate(-8px,-2px); }
.buy-main:active,.buy-inline:active { transform:translate(-4px,-1px); }
.buy-main { position:absolute; top:684px; right:max(12%,calc((100vw - 960px)/2 - 20px)); }
.buy-main.sticky { position:fixed; top:14px; }

.metrics { height:316px; display:grid; align-items:center; background:#fff; }
.metric-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.metric-grid div { height:152px; display:flex; flex-direction:column; justify-content:center; align-items:center; border-left:1px solid #e9e9e9; text-align:center; }
.metric-grid div:last-child { border-right:1px solid #e9e9e9; }
.metric-grid strong { font-size:30px; font-weight:400; line-height:1.25; } .metric-grid span { margin-top:12px; font-size:12px; }

.fund-intro { padding:155px 0 170px; background:var(--paper); }
.fund-intro h2 { width:960px; max-width:100%; margin:0 auto; font-size:38px; font-style:italic; font-weight:400; line-height:1.42; letter-spacing:-.02em; }
.fund-intro h2 b { color:var(--red); font-style:normal; }
.fund-intro p { width:960px; max-width:100%; margin:55px auto 0; font-size:16px; line-height:1.85; }

.partners-section { padding:70px 0 130px; background:var(--paper); }
.partner-list { width:min(960px,calc(100% - 48px)); }
.fund-partner { border-bottom:1px solid #dedede; }
.fund-partner.open { padding-inline:24px; background:#e9e9e9; }
.fund-partner>button { width:100%; min-height:120px; display:grid; grid-template-columns:125px minmax(0,1fr) 25px; column-gap:30px; align-items:center; padding:0 12px 0 0; border:0; background:transparent; text-align:left; }
.fund-partner small { font-size:11px; font-weight:700; }
.fund-partner strong { font-size:34px; font-weight:400; line-height:1.25; letter-spacing:-.03em; }
.fund-partner i { position:relative; width:22px; height:22px; display:block; border-radius:50%; color:#fff; background:#202020; font-style:normal; transition:background-color .22s ease; }
.fund-partner>button:hover i,.fund-partner>button:focus-visible i { background:var(--red); }
.fund-partner i::before { content:""; position:absolute; left:50%; top:50%; width:9px; height:9px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translate(-50%,-65%) rotate(45deg); }
.fund-partner i.arrow-up::before { transform:translate(-50%,-35%) rotate(225deg); }
.partner-copy { padding:0 0 55px; }
.partner-copy p { margin:0 0 24px; font-size:12px; line-height:1.9; }
.partner-copy p:last-child { margin-bottom:0; }

.fund-data { position:relative; z-index:1; padding:100px 0 300px; background:var(--paper); }
.data-layout { display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:52px; }
.data-tabs { display:grid; grid-template-columns:1fr 1.55fr 1fr; margin-bottom:40px; border:0; border-bottom:1px solid #dedede; }
.data-tabs button { min-height:60px; border:0; background:transparent; font-size:12px; font-weight:700; transition:color .2s ease; }
.data-tabs button.active,.data-tabs button:hover,.data-tabs button:focus-visible { color:var(--red); background:transparent; }
.facts div { min-height:55px; display:grid; grid-template-columns:200px 1fr; align-items:center; border-bottom:1px solid #ddd; font-size:12px; }
.facts b { padding-left:20px; font-size:11px; } .facts span { align-self:stretch; display:flex; align-items:center; padding:13px 10px; border-left:1px solid #e3e3e3; background:#e9e9e9; line-height:1.55; }
.downloads { padding-top:88px; } .downloads a { display:flex; align-items:center; gap:9px; margin:0 0 18px; font-size:13px; }
.downloads i { width:22px; height:22px; display:grid; place-items:center; flex:0 0 22px; border-radius:50%; color:#fff; background:#222; font-style:normal; line-height:0; transition:background-color .2s ease; }
.downloads i::before { content:""; width:9px; height:9px; box-sizing:border-box; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(-45deg); }
.downloads span { padding-bottom:3px; border-bottom:1px solid #777; transition:color .2s ease,border-color .2s ease; }
.downloads a:hover i,.downloads a:focus-visible i { background:var(--red); }
.downloads a:hover span,.downloads a:focus-visible span { color:var(--red); border-bottom-color:transparent; }
.empty-panel { min-height:400px; padding:54px 30px; border-top:1px solid #ddd; } .empty-panel strong { font-size:20px; } .empty-panel p { font-size:13px; }

.journey-route { position:relative; z-index:4; height:0; pointer-events:none; }
.journey-route::before { content:""; position:absolute; left:50%; top:-335px; width:min(55vw,1060px); aspect-ratio:1060/519; transform:translateX(-50%); background:url("./bogen.svg") center/contain no-repeat; }
.investment { position:relative; min-height:730px; padding:150px 0 140px; overflow:hidden; color:#fff; background:#171717; }
.invest-wrap h2 { margin:0 0 55px 75px; font-size:38px; line-height:1.4; } .invest-wrap h2 strong { font-weight:700; } .invest-wrap h2 em { font-weight:400; }
.invest-wrap ol { width:610px; max-width:100%; margin:0 0 0 18px; padding:0; list-style:none; }
.invest-wrap li { display:grid; grid-template-columns:28px 1fr; gap:22px; margin:0 0 31px; } .invest-wrap li i { width:22px; height:22px; display:grid; place-items:center; border-radius:50%; color:#111; background:#fff; font-size:10px; font-style:normal; }
.invest-wrap li b { font-size:11px; } .invest-wrap li p { margin:11px 0 0; color:#d8d8d8; font-size:12px; } .invest-wrap li button { padding:0; border:0; border-bottom:1px solid #fff; background:none; }
.buy-inline { float:right; margin-top:-8px; min-width:145px; height:47px; font-size:12px; }

.sustainability { position:relative; min-height:910px; color:#fff; background:linear-gradient(rgba(20,76,47,.88),rgba(20,76,47,.88)),url('./swiss-valley.jpg') center/cover fixed; }
.sustainability-inner { padding-top:65px; } .sustainability h2 { margin:0 0 43px; font-size:38px; line-height:1.38; }
.sustainability h2 strong { font-weight:700; } .sustainability h2 em { font-weight:400; }
.eco-tabs { position:relative; z-index:1; margin:0; display:flex; gap:42px; height:74px; align-items:center; }
.eco-tabs::before { content:""; position:absolute; z-index:-1; top:0; bottom:0; left:50%; width:100vw; transform:translateX(-50%); background:rgba(11,67,40,.48); }
.eco-tabs button { border:0; background:transparent; color:#fff; font-size:12px; font-weight:700; } .eco-tabs button.active { color:red; }
.values-grid { display:grid; grid-template-columns:360px 350px; justify-content:start; gap:60px; padding-top:50px; }
.values-grid p { margin:0; font-size:12px; line-height:1.9; } .values-grid span { min-height:45px; display:flex; justify-content:space-between; align-items:center; font-size:12px; } .values-grid span i { color:red; font-size:30px; font-style:normal; }
.portfolio-list { padding:28px 0 72px; }
.portfolio-card { width:100%; margin:0; border-bottom:1px solid rgba(255,255,255,.16); }
.portfolio-card:first-child { border-top:1px solid rgba(255,255,255,.16); }
.portfolio-toggle { width:100%; min-height:105px; display:grid; grid-template-columns:120px 1fr 23px; gap:24px; align-items:center; padding:0; border:0; color:#fff; background:transparent; text-align:left; }
.portfolio-toggle strong { font-size:32px; font-weight:400; }
.portfolio-logo { width:120px; height:54px; display:grid; place-items:center; padding:8px 10px; border-radius:4px; background:rgba(255,255,255,.94); }
.portfolio-logo img { display:block; width:auto; height:auto; max-width:100px; max-height:38px; object-fit:contain; }
.portfolio-arrow { position:relative; width:23px; height:23px; border-radius:50%; color:#174d31; background:#fff; }
.portfolio-arrow::before { content:""; position:absolute; left:50%; top:50%; width:6px; height:6px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translate(-50%,-65%) rotate(45deg); }
.portfolio-card.open .portfolio-arrow::before { transform:translate(-50%,-35%) rotate(225deg); }
.portfolio-body { padding:12px 0 38px 144px; animation:portfolio-reveal .28s ease both; }
.portfolio-card p { max-width:900px; margin:0; font-size:12px; line-height:1.9; }
.portfolio-section + .portfolio-section { margin-top:20px; }
.portfolio-section b { display:block; margin-bottom:5px; font-size:16px; }
.portfolio-score { max-width:max-content!important; padding:8px 14px; border:1px solid rgba(255,255,255,.35); border-radius:4px; }
.portfolio-facts { max-width:900px; margin-top:28px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 50px; }
.portfolio-detail { display:block; margin:0; font-size:16px; line-height:1.55; }
.portfolio-detail b { margin-right:.3em; font-size:16px; }
.portfolio-detail small { color:rgba(255,255,255,.86); font-size:16px; line-height:inherit; }
@keyframes portfolio-reveal { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:none; } }
.portfolio-detail { display:block; margin-top:18px; }

.founder { position:relative; min-height:830px; overflow:hidden; color:#fff; background-color:var(--red); background-image:url("./berg.svg"); background-repeat:no-repeat; background-position:center bottom; background-size:100% 182px; }
.founder-grid { padding-top:142px; display:grid; grid-template-columns:minmax(0,1fr) 420px; gap:60px; align-items:start; }
.founder-grid>div>span { font-size:11px; font-weight:700; }
.founder-heading { width:100%; margin:7px 0 45px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.founder h2 { margin:0; font-size:28px; font-weight:400; }
.founder-toggle { position:relative; width:23px; height:23px; flex:0 0 23px; padding:0; border:0; border-radius:50%; color:var(--red); background:#fff; }
.founder-toggle::before { content:""; position:absolute; left:50%; top:50%; width:6px; height:6px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translate(-50%,-65%) rotate(45deg); }
.founder-copy-open .founder-toggle::before { transform:translate(-50%,-35%) rotate(225deg); }
.founder img { width:420px; height:430px; object-fit:cover; border-radius:12px; }
.founder-content { position:relative; width:420px; max-width:100%; height:300px; }
.founder-kpis { position:absolute; inset:0; display:grid; grid-template-columns:1fr; opacity:1; visibility:visible; transition:opacity .28s ease,visibility 0s linear; } .founder-kpis div { height:240px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.founder-kpis strong { font-size:64px; font-weight:400; line-height:1; } .founder-kpis small { margin-top:18px; font-size:18px; }
.founder-bio { position:absolute; inset:0; margin:0; padding:35px 0 45px; border-bottom:1px solid rgba(255,255,255,.26); font-size:16px; line-height:1.9; opacity:0; visibility:hidden; transition:opacity .28s ease,visibility 0s linear .28s; }
.founder-copy-open .founder-kpis { opacity:0; visibility:hidden; transition:opacity .28s ease,visibility 0s linear .28s; }
.founder-copy-open .founder-bio { opacity:1; visibility:visible; transition:opacity .28s ease,visibility 0s linear; }
footer { min-height:185px; color:#fff; background:#171717; } .footer-inner { width:min(var(--wide),calc(100% - 96px)); min-height:185px; margin:auto; display:flex; align-items:center; justify-content:space-between; font-size:11px; }
.footer-inner nav { display:flex; align-items:center; gap:26px; } .footer-inner nav a:not(.email),.footer-inner nav button { border:0; border-bottom:1px solid #ddd; padding:0 0 4px; background:none; transition:color .22s ease,border-color .22s ease; } .footer-inner .email { padding:14px 22px; background:var(--red); font-weight:700; transition:background-color .24s ease,transform .24s cubic-bezier(.2,.7,.2,1); }
.footer-inner .email:hover,.footer-inner .email:focus-visible { background:#e60000; transform:translate(-8px,-2px); }
.footer-inner nav>a:not(.email):hover,.footer-inner nav>a:not(.email):focus-visible,.footer-inner nav>button:not(.theme-toggle):hover,.footer-inner nav>button:not(.theme-toggle):focus-visible { color:var(--red); border-bottom-color:transparent; text-decoration:none; }
.footer-languages { display:flex; gap:12px; }
.footer-languages button { border-bottom:0!important; }
.footer-languages .active-language { border-bottom:1px solid #fff!important; }
.footer-languages button:hover,.footer-languages button:focus-visible { color:var(--red); border-bottom-color:transparent!important; text-decoration:none; }

.consent-backdrop,.buy-backdrop { position:fixed; z-index:100; inset:0; display:grid; place-items:center; padding:20px; background:rgba(33,50,65,.63); backdrop-filter:brightness(.75); }
.cookie-modal { width:min(560px,100%); padding:43px 37px 16px; color:#fff; background:linear-gradient(120deg,#566678,#1c2229); box-shadow:0 20px 55px rgba(0,0,0,.25); }
.cookie-modal h2 { margin:0; font-size:31px; font-weight:400; } .cookie-modal p { margin:30px 0 25px; font-size:11px; line-height:1.9; }
.cookie-modal>button,.legal-modal>button { display:block; margin-left:auto; min-width:132px; height:48px; border:0; color:#fff; background:var(--red); font-size:12px; font-weight:700; }
.legal-modal { width:min(760px,100%); height:min(840px,calc(100vh - 50px)); padding:48px 16px 16px 36px; color:#fff; background:linear-gradient(120deg,#536375,#212730); border-radius:10px; }
.legal-scroll { height:calc(100% - 55px); overflow:auto; padding-right:22px; scrollbar-color:#fff transparent; scrollbar-width:thin; } .legal-modal h2 { margin:0 0 28px; font-size:31px; font-weight:400; }
.legal-modal h3 { margin:18px 0 9px; font-size:10px; } .legal-modal p { margin:0 0 10px; font-size:9.5px; line-height:1.65; }
.imprint-modal { height:auto; min-height:300px; }
.imprint-modal .legal-scroll { height:auto; min-height:170px; }
.buy-backdrop { background:rgba(0,0,0,.62); } .buy-modal { position:relative; width:min(620px,100%); min-height:595px; padding:92px 28px 34px; color:#fff; background:var(--red); border-radius:11px; }
.buy-modal h2 { margin:0 24px 46px; font-size:36px; font-weight:400; line-height:1.28; } .buy-close { position:absolute; top:20px; right:20px; border:0; color:#fff; background:transparent; font-size:26px; }
.isin-box { width:100%; height:82px; padding:0 24px; display:flex; align-items:center; justify-content:space-between; border:0; color:#222; background:#fff; font-size:22px; } .isin-box em { font-style:normal; font-weight:700; }
.isin-box span { position:relative; width:23px; height:23px; flex:0 0 23px; color:#222; font-size:22px; font-weight:700; line-height:23px; text-align:center; }
.isin-box span:not(.copied)::before,.isin-box span:not(.copied)::after { content:""; position:absolute; width:10px; height:10px; border:3px solid currentColor; border-radius:2px; background:#fff; }
.isin-box span:not(.copied)::before { left:2px; top:8px; } .isin-box span:not(.copied)::after { left:8px; top:2px; }
.buy-modal p { margin:42px 24px 0; font-size:18px; line-height:1.6; } .buy-dismiss { position:absolute; right:28px; bottom:30px; border:0; color:#fff; background:transparent; font-size:16px; font-weight:700; }
.theme-dark .metrics { background:#202020; color:#fff; } .theme-dark .fund-intro,.theme-dark .partners-section,.theme-dark .fund-data { background:#292929; color:#fff; }
.theme-dark .facts span { color:#171717; background-color:#9e9e9e; }

@media (max-width:760px) {
  .narrow { width:calc(100% - 30px); } .site-header { top:20px; width:calc(100% - 30px); } .site-header.scrolled { top:12px; } .logo { width:169px; height:40px; } .site-tools button { width:38px; height:40px; }
  .hero { height:720px; } .hero-title { width:calc(100% - 30px); padding-top:290px; } .hero h1 { font-size:46px; } .buy-main { top:575px; right:15px; min-width:155px; height:48px; font-size:16px; } .buy-main.sticky { top:12px; right:15px; }
  .metrics { height:420px; } .metric-grid { width:100%; grid-template-columns:1fr 1fr; } .metric-grid div { height:150px; } .metric-grid div:nth-child(odd) { border-left:0; }
  .fund-intro { padding:90px 0 80px; } .fund-intro h2 { font-size:23px; line-height:1.55; } .fund-intro h2 br { display:none; } .fund-intro p { margin-top:35px; font-size:12px; }
  .partners-section { padding:20px 0 80px; } .partner-list { width:calc(100% - 30px); } .fund-partner>button { min-height:92px; grid-template-columns:1fr 24px; gap:6px 16px; padding:12px 0; } .fund-partner small { grid-column:1; font-size:9px; } .fund-partner strong { grid-column:1; font-size:24px; } .fund-partner i { grid-column:2; grid-row:1 / 3; } .partner-copy { padding:0 28px 35px 0; } .partner-copy p { font-size:11px; line-height:1.75; }
  .fund-data { padding:60px 0 190px; } .data-layout { grid-template-columns:1fr; gap:20px; } .data-tabs button { min-height:54px; padding:8px 5px; font-size:9px; } .facts div { grid-template-columns:37% 63%; font-size:10px; } .facts b { padding-left:8px; } .downloads { padding-top:10px; display:grid; grid-template-columns:1fr 1fr; }
  .journey-route::before { top:-110px; left:50%; width:300px; transform:translateX(-50%); }
  .investment { min-height:650px; padding:100px 0 80px; } .invest-wrap h2 { font-size:28px; } .invest-wrap ol { margin-left:0; } .buy-inline { float:none; margin:25px 0 0 48px; }
  .sustainability { min-height:1050px; background-attachment:scroll; } .sustainability h2 { font-size:28px; } .eco-tabs { margin:0; } .values-grid { grid-template-columns:1fr; gap:35px; } .portfolio-list { padding-top:20px; } .portfolio-toggle { grid-template-columns:1fr 23px; gap:8px 16px; padding:20px 0; } .portfolio-toggle .portfolio-logo { grid-column:1; width:105px; height:48px; padding:7px 9px; } .portfolio-logo img { max-width:87px; max-height:34px; } .portfolio-toggle strong { grid-column:1; font-size:24px; } .portfolio-arrow { grid-column:2; grid-row:1 / 3; } .portfolio-body { padding:4px 0 32px; } .portfolio-facts { grid-template-columns:1fr; gap:17px; }
  .founder { min-height:920px; background-size:auto 120px; } .founder-grid { padding-top:100px; grid-template-columns:1fr; } .founder-grid>div { order:2; } .founder img { width:100%; height:360px; order:1; } .founder-kpis { width:100%; } .founder-kpis div { align-items:center; }
  .footer-inner { width:calc(100% - 30px); padding:45px 0; flex-direction:column; align-items:flex-start; gap:35px; } .footer-inner nav { flex-wrap:wrap; gap:17px; }
  .cookie-modal { padding:34px 24px 16px; } .cookie-modal h2,.legal-modal h2 { font-size:25px; } .legal-modal { padding-left:24px; } .buy-modal { min-height:520px; padding:65px 20px 28px; } .buy-modal h2 { margin:0 10px 34px; font-size:28px; } .isin-box { height:74px; padding:0 18px; font-size:20px; } .buy-modal p { margin:32px 10px 0; font-size:16px; } .buy-dismiss { right:20px; bottom:24px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .hero-slide,.buy-main,.buy-inline,.footer-inner .email { transition:none; } .buy-main:hover,.buy-main:focus-visible,.buy-inline:hover,.buy-inline:focus-visible,.footer-inner .email:hover,.footer-inner .email:focus-visible { transform:none; } .portfolio-body { animation:none; } }

/* Site-wide minimum text size; decorative icon glyphs keep their original scale. */
.metric-grid span,
.fund-intro p,
.fund-partner small,
.partner-copy p,
.data-tabs button,
.facts div,
.facts b,
.downloads a,
.empty-panel p,
.invest-wrap li b,
.invest-wrap li p,
.invest-wrap li button,
.buy-inline,
.eco-tabs button,
.values-grid p,
.values-grid span,
.portfolio-card p,
.founder-grid>div>span,
.founder-kpis small,
.footer-inner,
.footer-inner button,
.cookie-modal p,
.cookie-modal>button,
.legal-modal>button,
.legal-modal h3,
.legal-modal p,
.buy-modal p,
.buy-dismiss { font-size:16px; }

@media (min-width:1024px) {
  .fund-intro h2 { font-size:43px; }
  .invest-wrap h2, .sustainability h2 { font-size:46px; }
  .founder h2 { font-size:36px; white-space:nowrap; }
  .metric-grid strong { font-size:35px; }
  .metric-grid span { font-size:16px; }
}

[hidden] { display:none!important; }
.site-tools .theme-toggle { font-size:16px; }
footer .theme-toggle { border-bottom:0!important; padding:0; }
.static-export-note { display:none; }

/* Corrections dated 25 August 2026 */
.buy-main.sticky { right:calc(max(48px,(100vw - var(--wide))/2) + 150px); }

.current-news { padding:0 0 110px; background:var(--paper); }
.current-news h2 { margin:0; font-size:43px; font-style:italic; font-weight:400; line-height:1.42; letter-spacing:-.02em; }
.current-news h3 { max-width:960px; margin:34px 0 0; font-size:28px; font-weight:600; line-height:1.35; }
.current-news p { max-width:960px; margin:36px 0 0; font-size:16px; line-height:1.85; }
.current-news h3 + .current-news-copy p { margin-top:18px; }
.current-news-copy a { color:var(--red); text-decoration:underline; text-underline-offset:3px; }
.current-news-copy a:hover,.current-news-copy a:focus-visible { text-decoration:none; }
.current-news p strong { color:var(--red); }

.data-audience { margin:0 0 34px; padding:24px 20px; background:#e5e5e5; font-size:16px; line-height:1.7; }
.data-audience a { color:var(--red); text-decoration:underline; text-underline-offset:3px; }

.media-links { padding:45px 0 90px; }
.media-links a { min-height:92px; display:flex; flex-direction:column; justify-content:center; gap:6px; padding:18px 4px; border-bottom:1px solid rgba(255,255,255,.2); transition:color .2s ease; }
.media-links a:first-child { border-top:1px solid rgba(255,255,255,.2); }
.media-links a:hover,.media-links a:focus-visible { color:var(--red); }
.media-links strong { font-size:22px; font-weight:400; }
.media-links span { font-size:16px; }
.media-placeholder { display:flex; align-items:center; min-height:180px; }
.media-placeholder p { max-width:720px; margin:0; font-size:18px; line-height:1.7; }
.disabled-language { cursor:not-allowed; opacity:.42; }

.portfolio-logo.logo-geoterra { overflow:hidden; }
.portfolio-logo.logo-geoterra img {
  width:190px;
  max-width:none;
  max-height:none;
  transform:none;
}

.suitability { padding:120px 0 135px; background:var(--paper); }
.suitability h2 { max-width:850px; margin:0 0 42px; font-size:43px; font-weight:400; line-height:1.35; letter-spacing:-.025em; }
.suitability p { margin:0 0 18px; font-size:16px; line-height:1.8; }
.suitability ul { max-width:900px; margin:0; padding:0; list-style:none; }
.suitability li { position:relative; margin:0; padding:11px 0 11px 30px; border-bottom:1px solid #ddd; font-size:16px; line-height:1.7; }
.suitability li::before { content:""; position:absolute; top:22px; left:3px; width:8px; height:8px; border-radius:50%; background:var(--red); }

.founder { min-height:590px; }
.founder-grid { display:block; padding-top:125px; }
.founder-grid>span { display:block; font-size:16px; font-weight:700; }
.founder h2 { margin:8px 0 42px; font-size:46px; font-weight:400; white-space:normal; }
.founder-copy { width:100%; max-width:960px; margin:0; padding:0 0 55px; border-bottom:1px solid rgba(255,255,255,.28); font-size:16px; line-height:1.9; }

.legal-audience { margin:0 0 28px; display:grid; grid-template-columns:1fr 1fr; grid-template-areas:"segment-label country-label" "segment-select country-select"; gap:8px 18px; padding:20px; border:1px solid rgba(255,255,255,.28); background:rgba(255,255,255,.08); }
.legal-audience label { font-size:16px; font-weight:700; }
.legal-audience label:nth-of-type(1) { grid-area:segment-label; }
.legal-audience label:nth-of-type(2) { grid-area:country-label; }
.legal-audience select:nth-of-type(1) { grid-area:segment-select; }
.legal-audience select:nth-of-type(2) { grid-area:country-select; }
.legal-audience select { width:100%; min-height:48px; padding:8px 38px 8px 12px; border:1px solid rgba(255,255,255,.38); border-radius:3px; color:#171717; background:#fff; font:inherit; font-size:16px; }
.legal-modal>button:disabled { cursor:not-allowed; opacity:.4; }

.buy-modal { min-height:700px; }
.buy-copy { margin:34px 24px 80px; }
.buy-modal .buy-copy p { margin:0; font-size:17px; line-height:1.58; }
.buy-modal .buy-copy p+p { margin-top:28px; }
.buy-copy strong { font-weight:700; }
.buy-copy a { text-decoration:underline; text-underline-offset:3px; }

.theme-dark .current-news,.theme-dark .suitability { color:#fff; background:#292929; }
.theme-dark .data-audience { color:#fff; background:#3b3b3b; }
.theme-dark .suitability li { border-bottom-color:#444; }

@media (max-width:760px) {
  .buy-main.sticky { top:64px; right:15px; }
  .current-news { padding:0 0 75px; }
  .current-news h2 { font-size:28px; }
  .current-news h3 { margin-top:26px; font-size:22px; }
  .current-news p { margin-top:26px; }
  .data-audience { margin-bottom:24px; padding:18px 15px; }
  .eco-tabs { gap:22px; }
  .media-links { padding-top:28px; }
  .media-links strong { font-size:20px; }
  .suitability { padding:80px 0 95px; }
  .suitability h2 { margin-bottom:30px; font-size:30px; }
  .suitability li { padding-left:25px; }
  .founder { min-height:660px; }
  .founder-grid { padding-top:95px; }
  .founder h2 { margin-bottom:30px; font-size:34px; }
  .founder-copy { padding-bottom:45px; }
  .legal-audience { grid-template-columns:1fr; grid-template-areas:"segment-label" "segment-select" "country-label" "country-select"; }
  .legal-audience label:nth-of-type(2) { margin-top:8px; }
  .buy-modal { min-height:700px; max-height:calc(100vh - 30px); overflow:auto; }
  .buy-copy { margin:28px 10px 72px; }
  .buy-modal .buy-copy p { font-size:16px; }
}

/* Corrections dated 31 August 2026 */
.data-tabs { grid-template-columns:1fr 1fr; }
.facts .facts-head,
.facts .facts-row { min-height:58px; display:grid; grid-template-columns:32% 34% 34%; align-items:stretch; border-bottom:1px solid #d8d8d8; font-size:16px; }
.facts .facts-head { min-height:72px; border-top:1px solid #d8d8d8; }
.facts .facts-head b,
.facts .facts-head strong,
.facts .facts-row b,
.facts .facts-row span { display:flex; align-items:center; padding:13px 16px; line-height:1.45; }
.facts .facts-head b,
.facts .facts-row b { padding-left:20px; background:transparent; font-size:16px; font-weight:700; }
.facts .facts-head strong { border-left:1px solid #dedede; background:#dfdfdf; font-size:16px; font-weight:700; }
.facts .facts-row span { border-left:1px solid #dedede; background:#e9e9e9; }
.keyfigures-panel { display:flex; flex-direction:column; align-items:flex-start; gap:18px; }
.keyfigures-panel p { margin:0 0 8px; }
.keyfigures-panel a { display:inline-flex; align-items:center; min-height:42px; padding-bottom:3px; border-bottom:1px solid currentColor; color:inherit; font-size:16px; }
.keyfigures-panel a:hover,.keyfigures-panel a:focus-visible { color:var(--red); border-bottom-color:transparent; }
.theme-dark .facts .facts-head strong { color:#171717; background:#8f8f8f; }
.theme-dark .facts .facts-row span { color:#171717; background:#9e9e9e; }

.buy-modal { width:min(660px,100%); min-height:0; max-height:calc(100vh - 40px); overflow:auto; padding:58px 28px 36px; }
.buy-class + .buy-class { margin-top:42px; padding-top:36px; border-top:1px solid rgba(255,255,255,.38); }
.buy-modal .buy-class h2 { margin:0 24px 20px; font-size:32px; font-weight:500; line-height:1.25; }
.buy-class .buy-copy { margin:20px 24px 0; }
.buy-modal .buy-class .buy-copy p { margin:0; font-size:17px; line-height:1.62; }
.buy-dismiss { position:static; display:block; margin:38px 0 0 auto; }

.image-lightbox { position:fixed; inset:0; z-index:1200; display:grid; place-items:center; padding:24px; background:rgba(0,0,0,.82); }
.image-lightbox section { position:relative; width:min(1800px,98vw); max-height:98vh; overflow:auto; display:flex; flex-direction:column; align-items:center; gap:10px; padding:42px 12px 12px; border-radius:8px; background:#fff; box-shadow:0 20px 70px rgba(0,0,0,.35); }
.image-lightbox img { display:block; width:auto; height:auto; max-width:100%; max-height:calc(98vh - 95px); object-fit:contain; }
.image-lightbox p { margin:0; color:#222; font-size:16px; font-weight:600; }
.image-lightbox button { position:absolute; top:12px; right:16px; width:32px; height:32px; border:0; color:#222; background:transparent; font-size:30px; line-height:1; }
.portfolio-logo img[src*="laax-logo"] { max-width:96px; max-height:44px; }

@media (max-width:760px) {
  .facts .facts-head,
  .facts .facts-row { grid-template-columns:38% 31% 31%; font-size:16px; }
  .facts .facts-head b,
  .facts .facts-head strong,
  .facts .facts-row b,
  .facts .facts-row span { padding:12px 7px; overflow-wrap:anywhere; }
  .facts .facts-head b,
  .facts .facts-row b { padding-left:8px; font-size:16px; }
  .facts .facts-head strong { font-size:16px; }
  .buy-modal { max-height:calc(100vh - 30px); padding:54px 20px 28px; }
  .buy-modal .buy-class h2 { margin:0 10px 18px; font-size:27px; }
  .buy-class .buy-copy { margin:18px 10px 0; }
  .buy-class + .buy-class { margin-top:34px; padding-top:30px; }
  .image-lightbox { padding:10px; }
  .image-lightbox section { width:100%; padding:46px 10px 14px; }
}
