.eco-home{font-size:18px;line-height:1.7}.eco-home h1,.eco-home h2,.eco-home h3{overflow-wrap:normal}.eco-home .eco-kicker{font-size:14px;line-height:1.6;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--berry)}.eco-hero{padding-block:clamp(3rem,6vw,5rem);background:#f2ede8;border-bottom:1px solid var(--line)}.eco-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr);gap:clamp(2rem,6vw,6rem);align-items:center}.eco-hero h1{font-size:clamp(2.9rem,5.3vw,4.65rem);line-height:1.06;letter-spacing:-.04em;max-width:15ch;margin-top:1.05rem;color:var(--petrol)}.eco-lead{font-size:clamp(1.125rem,1.8vw,1.35rem);line-height:1.7;max-width:42rem;margin-top:1.5rem}.eco-actions{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-top:1.8rem}.eco-button,.eco-link,.eco-card-link{display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;font-size:17px;font-weight:600;line-height:1.5;text-decoration:none;min-height:48px}.eco-button{padding:.9rem 1.25rem;background:var(--petrol);color:var(--paper);border:1px solid var(--petrol);border-radius:2px}.eco-button:hover{background:#1b5361}.eco-link{padding-block:.45rem;border-bottom:1px solid currentColor;color:var(--berry)}.eco-link:hover,.eco-card-link:hover{text-decoration:underline}.eco-portrait{background:#e8d5d7;border-radius:10rem 10rem .2rem .2rem;padding:2rem 1.75rem;display:flex;align-items:center;flex-direction:column;gap:1.4rem;min-width:0}.eco-portrait-window{width:min(100%,255px);overflow:hidden;border:8px solid var(--paper);border-radius:8rem 8rem .15rem .15rem;transform:rotate(-3deg)}.eco-portrait img{width:100%;aspect-ratio:1;object-fit:cover}.eco-portrait figcaption{text-align:center;font:500 clamp(1.6rem,2.4vw,2rem)/1.2 var(--serif);max-width:15ch;color:var(--petrol)}.eco-routes,.eco-connections{padding-block:clamp(3rem,6vw,5rem)}.eco-section-heading{max-width:58rem;margin-bottom:2.25rem}.eco-section-heading h2{font-size:clamp(2.3rem,4.1vw,3.3rem);line-height:1.12;margin-top:.75rem}.eco-section-heading>p:last-child:not(.eco-kicker){color:var(--muted);margin-top:1rem;max-width:43rem}.eco-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.eco-card{display:flex;flex-direction:column;padding:1.65rem 1.5rem;border:1px solid #c8cfca;border-radius:3px;min-width:0;background:var(--surface)}.eco-card-1{background:#f3edef}.eco-card-2{background:#0d303b;color:var(--paper);border-color:#0d303b}.eco-card-top{display:flex;gap:.8rem;align-items:center;min-height:3rem;margin-bottom:1.3rem}.eco-card-top .eco-kicker{letter-spacing:.055em;font-size:14px}.eco-index{flex-shrink:0;width:2.1rem;height:2.1rem;border-radius:50%;border:1px solid #a5b7b8;display:grid;place-items:center;font-family:var(--serif);font-size:19px;line-height:1}.eco-card-name{font:500 clamp(1.55rem,2.4vw,2rem)/1.15 var(--serif);min-height:4.5rem;color:var(--petrol)}.eco-card-1 .eco-card-name{color:var(--berry)}.eco-card-2 .eco-card-name{color:var(--paper)}.eco-card h3{font-size:clamp(1.7rem,2.6vw,2rem);line-height:1.15;margin-bottom:1.15rem}.eco-card-text{color:var(--muted);font-size:18px}.eco-card ul{padding-left:1.15rem;margin:1.5rem 0 1.8rem;font-size:17px;line-height:1.7}.eco-card li+li{margin-top:.4rem}.eco-card li::marker{color:var(--berry)}.eco-card-link{display:flex;margin-top:auto;padding-top:1.2rem;border-top:1px solid #c3cdca;gap:.65rem}.eco-card-link>span[aria-hidden]{flex-shrink:0}.eco-card-domain{font-size:14px;line-height:1.6;margin-top:.65rem;color:var(--muted);overflow-wrap:anywhere}.eco-card-2 .eco-kicker,.eco-card-2 li::marker{color:#dceaab}.eco-card-2 .eco-card-text,.eco-card-2 .eco-card-domain{color:#d5e0de}.eco-card-2 .eco-card-link{border-color:#638086}.eco-destination-note{font-size:15px;line-height:1.7;color:var(--muted);margin-top:1.3rem;max-width:60rem}.eco-guide{background:var(--petrol);color:var(--paper);padding-block:clamp(3rem,6vw,5rem)}.eco-guide-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr);gap:clamp(2rem,6vw,6rem);align-items:start}.eco-guide-intro .eco-kicker{color:var(--rose)}.eco-guide-intro h2{font-size:clamp(2.5rem,4.4vw,3.5rem);line-height:1.08;margin-top:.8rem;max-width:12ch}.eco-guide-intro>p:not(.eco-kicker){color:#d5e0de;margin-top:1.5rem;max-width:33rem;font-size:18px}.eco-guide-intro>p.eco-guide-note{font-size:16px;line-height:1.7;border-top:1px solid #62808a;padding-top:1.2rem}.eco-finder{background:var(--paper);color:var(--ink);padding:2rem;border-radius:3px;min-width:0;scroll-margin-top:2rem}.eco-finder h3{font-size:clamp(1.9rem,3vw,2.35rem);line-height:1.15;margin:.8rem 0 1rem}.eco-finder h3:focus{outline:none}.eco-finder h3:focus-visible{outline:3px solid var(--berry);outline-offset:5px}.eco-step,.eco-result-type{font-size:14px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;line-height:1.6;color:var(--berry)}.eco-result-type{display:inline-block;background:#f0e2e8;padding:.35rem .6rem;margin-top:1rem;letter-spacing:.03em}.eco-hint,.eco-result-description{font-size:18px;color:var(--muted);line-height:1.7}.eco-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.5rem}.eco-options-detail{grid-template-columns:1fr}.eco-option{display:flex;align-items:flex-start;gap:.65rem;padding:1rem .9rem;background:#fffdf8;border:1px solid #b6c3bf;border-radius:2px;cursor:pointer;min-width:0;font-size:17px;line-height:1.5}.eco-option:hover{background:#f1e7e9;border-color:#ae6888}.eco-option:has(input:checked){background:#f3e3eb;border-color:var(--berry);box-shadow:inset 0 0 0 1px var(--berry)}.eco-option:has(input:focus-visible){outline:3px solid var(--berry);outline-offset:3px}.eco-option input{margin:4px 0 0;width:18px;height:18px;flex-shrink:0;accent-color:var(--berry)}.eco-option strong{display:block;font-weight:600}.eco-option small{display:block;margin-top:.4rem;font-size:14px;line-height:1.65;color:var(--muted)}.eco-finder fieldset{border:0;padding:0;margin:0;min-width:0}.eco-finder-actions,.eco-result-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.eco-finder-actions>.eco-button{margin-left:auto}.eco-button:disabled{background:#d6dedc;border-color:#d6dedc;color:#4d626a;cursor:not-allowed}.eco-back,.eco-reset{border:0;background:none;font-size:16px;line-height:1.5;padding:.6rem 0;color:var(--muted);text-decoration:underline;text-underline-offset:.25em;min-height:44px;text-align:left}.eco-back:hover,.eco-reset:hover{color:var(--berry)}.eco-selected{font-size:16px;line-height:1.7;padding-bottom:1rem;margin-top:.5rem;border-bottom:1px solid var(--line);color:var(--muted)}.eco-result-content{padding:1.1rem;margin-block:1.4rem;background:#edf1ed;border-left:3px solid #17707f}.eco-result-content strong{font-size:14px;letter-spacing:.065em;text-transform:uppercase;line-height:1.5;display:block;margin-bottom:.5rem}.eco-result-content p{font-size:18px;line-height:1.7}.eco-result-link{width:100%}.eco-result-note{font-size:14px;line-height:1.7;margin-top:.6rem;color:var(--muted)}.eco-complement{border-top:1px solid #c3cdca;padding-top:1.2rem;margin-top:1.5rem;font-size:17px;line-height:1.75;color:var(--muted)}.eco-complement .eco-link{font-size:16px;margin-top:.5rem}.eco-connection-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.eco-connection-grid article{border-top:1px solid #aebfb9;padding-top:1.5rem}.eco-connection-grid h3{font-size:30px;line-height:1.2;margin-bottom:1rem}.eco-connection-grid p{font-size:18px;color:var(--muted)}.eco-partner-link{margin-top:2rem}.eco-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1050px){.eco-hero-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);gap:2rem}.eco-card-grid{grid-template-columns:1fr}.eco-card{padding:2rem}.eco-card-name{min-height:0;margin-bottom:1rem}.eco-card-top{margin-bottom:1rem}.eco-card ul{margin-block:1.2rem}.eco-guide-grid{grid-template-columns:1fr;gap:2rem}.eco-guide-intro h2{max-width:none}.eco-guide-intro>p:not(.eco-kicker){max-width:47rem}.eco-finder{max-width:100%}}
@media(max-width:700px){.eco-hero-grid{grid-template-columns:1fr;gap:2rem}.eco-hero h1{font-size:clamp(2.75rem,9.5vw,3.8rem);max-width:15ch}.eco-lead{font-size:20px}.eco-portrait{max-width:380px;width:100%;margin-inline:auto;padding:1.6rem}.eco-portrait-window{width:min(100%,225px)}.eco-actions{gap:1rem}.eco-section-heading h2{font-size:clamp(2.2rem,8vw,3rem)}.eco-card{padding:1.65rem 1.35rem}.eco-card-name{font-size:30px}.eco-card h3{font-size:31px}.eco-options{grid-template-columns:1fr}.eco-finder{padding:1.6rem 1.25rem}.eco-finder h3{font-size:31px}.eco-guide-intro h2{font-size:42px}.eco-connection-grid{grid-template-columns:1fr;gap:2rem}.eco-card-top{align-items:flex-start}.eco-card-top .eco-kicker{padding-top:.25rem}.eco-connection-grid h3{font-size:29px}.eco-finder-actions>.eco-button{font-size:16px}.eco-button{gap:.75rem}.eco-result-controls{gap:.5rem 1rem}}
@media(max-width:380px){.eco-hero h1{font-size:43px}.eco-actions{align-items:stretch}.eco-actions>.eco-button{width:100%}.eco-card{padding:1.5rem 1.15rem}.eco-card h3{font-size:29px}.eco-finder{padding:1.4rem 1.05rem}.eco-finder h3{font-size:29px}.eco-guide-intro h2{font-size:40px}.eco-result-link{font-size:16px;gap:.6rem}}
@media(prefers-reduced-motion:reduce){.eco-home *{scroll-behavior:auto;transition:none}}
/* Keep the shared navigation and contact area readable on the new entry page. */
body.ecosystem-entry{font-size:18px}.ecosystem-entry .wordmark{font-size:26px}.ecosystem-entry .wordmark-name small{font-size:14px;line-height:1.4}.ecosystem-entry .monogram{font-size:16px;width:38px;height:38px}.ecosystem-entry [data-menu] a{font-size:16px}.ecosystem-entry .language-switch a{font-size:14px}.ecosystem-entry .site-footer .eyebrow{font-size:14px}.ecosystem-entry .site-footer .section-lead,.ecosystem-entry .site-footer .lead,.ecosystem-entry .contact-panel>p{font-size:18px}.ecosystem-entry .contact label{font-size:16px}.ecosystem-entry .contact input,.ecosystem-entry .contact select,.ecosystem-entry .contact textarea{font-size:18px}.ecosystem-entry .contact-panel .button{font-size:17px}.ecosystem-entry .contact-site-description,.ecosystem-entry .footer-line,.ecosystem-entry .form-note,.ecosystem-entry .contact .form-status{font-size:16px}.ecosystem-entry .contact-links h3{font-size:26px}.ecosystem-entry .contact-panel h3{font-size:30px}.ecosystem-entry .footer-line a:first-child{font-size:24px}.ecosystem-entry .contact small{font-size:14px}
@media(min-width:901px) and (max-width:1170px){.ecosystem-entry .header-row{flex-wrap:wrap;padding-block:1rem;gap:.75rem 1.25rem}.ecosystem-entry [data-menu]{order:3;width:100%;justify-content:space-between}.ecosystem-entry .wordmark{margin-inline-end:auto}}
@media(max-width:900px){.ecosystem-entry .wordmark{font-size:24px}.ecosystem-entry .header-row{padding-block:.75rem;gap:.6rem 1rem}.ecosystem-entry .language-switch{font-size:14px}.ecosystem-entry [data-menu-toggle]{font-size:16px}.ecosystem-entry .wordmark-name small{white-space:normal;max-width:16rem}.ecosystem-entry .wordmark{white-space:normal}}
@media(max-width:380px){.ecosystem-entry .wordmark{font-size:22px}.ecosystem-entry .wordmark-name small{font-size:14px}.ecosystem-entry .wordmark-name{max-width:190px}.ecosystem-entry .contact-panel{padding:1rem}.ecosystem-entry .contact-panel h3{font-size:27px}}
.ecosystem-entry .site-footer .hint,.ecosystem-entry .site-footer .status,.ecosystem-entry .site-footer .brief-panel summary{font-size:16px}
