@font-face{font-family:"Barlow Web";src:url("assets/barlow-regular.otf") format("opentype");font-style:normal;font-weight:400;font-display:swap}
:root{--yellow:#FCC320;--black:#000;--white:#fff;--head:"Barlow Web",Arial,sans-serif;--body:"Barlow Web",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--black);font-family:var(--body);font-size:18px;font-weight:400;line-height:1.55;font-synthesis:none}img{display:block;width:100%}a{color:inherit}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;background:var(--yellow);padding:.7rem;z-index:99}
.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,72px);position:absolute;inset:0 0 auto;z-index:10;color:var(--white);border-bottom:1px solid #ffffff55}.brand{background:var(--white);padding:8px 12px}.brand img{width:150px;height:58px;object-fit:contain}.site-header nav{display:flex;gap:20px}.site-header nav a{text-decoration:none;font-size:14px;text-transform:uppercase;letter-spacing:.06em}.menu-toggle{display:none;background:var(--yellow);border:0;padding:10px 16px;font:inherit}
h1,h2,h3{max-width:100%;font-family:var(--head);font-weight:400;text-transform:uppercase;line-height:1.08;letter-spacing:-.02em;margin:0;overflow-wrap:normal;word-break:normal;hyphens:none;text-wrap:balance}h1{font-size:clamp(3.5rem,8vw,7.6rem);max-width:1000px}h2{font-size:clamp(2.8rem,5.3vw,5.5rem)}h3{font-size:clamp(1.65rem,2.4vw,2rem)}.eyebrow{font-weight:400;text-transform:uppercase;letter-spacing:.16em;font-size:14px;margin:0 0 18px}.yellow{color:var(--yellow)}
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;color:var(--white);overflow:hidden}.hero>img,.hero-shade{position:absolute;inset:0;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,#000c 0%,#0005 56%,#0002),linear-gradient(0deg,#0009 0%,transparent 55%)}.hero-copy{position:relative;padding:160px clamp(20px,6vw,100px) 90px}.hero-copy p:not(.eyebrow){max-width:620px;font-size:clamp(1.1rem,2vw,1.55rem)}.teaser-tag{position:absolute;right:4vw;bottom:24px;border-top:3px solid var(--yellow);padding-top:8px;text-transform:uppercase;letter-spacing:.1em}.button{display:inline-block;background:var(--yellow);color:var(--black);padding:15px 23px;text-decoration:none;text-transform:uppercase;font-weight:700;letter-spacing:.06em;border:2px solid var(--yellow);font-family:var(--body);font-size:15px}.button:hover{background:var(--white);border-color:var(--white)}.button-dark{background:var(--black);color:var(--white);border-color:var(--black)}
.intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;padding:clamp(80px,11vw,160px) clamp(22px,7vw,120px)}.intro h2{max-width:600px}.intro-copy{max-width:700px}.lead{font-size:1.45rem}.note{border-left:6px solid var(--yellow);padding:14px 0 14px 20px;margin-top:38px}.manifesto{background:var(--black);color:var(--white);padding:80px 6vw}.manifesto p{font:400 clamp(3rem,7vw,7.2rem)/1.06 var(--head);letter-spacing:-.025em;text-transform:uppercase;margin:0}
.partnership{display:grid;grid-template-columns:1fr 1fr}.image-panel img{height:100%;min-height:720px;object-fit:cover}.content-panel{background:var(--yellow);padding:clamp(60px,8vw,120px)}.content-panel h2{margin-bottom:42px}.text-link{display:inline-block;margin-top:24px;font-weight:700;text-transform:uppercase;text-underline-offset:7px}.story{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;padding:clamp(80px,11vw,150px) clamp(22px,7vw,120px);background:var(--white)}.story-copy{max-width:760px}.story-copy h2{margin-bottom:40px}.photo-note{align-self:center;background:var(--black);color:var(--white);padding:40px}.photo-note>span{font-family:var(--head);font-size:2rem}.photo-note i{display:inline-block;width:35px;height:3px;background:var(--yellow);margin:0 9px 8px}.photo-note p{border-top:1px solid #ffffff55;padding-top:25px;margin-top:25px;font-size:15px}.story-photo{align-self:center;margin:0;background:var(--black);color:var(--white)}.story-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.story-photo figcaption{padding:18px 22px;font-size:14px;line-height:1.5}
.impact{padding:clamp(80px,10vw,150px) clamp(22px,7vw,120px);background:var(--yellow)}.impact>h2{max-width:950px}.impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--black);margin-top:70px}.impact article{background:var(--yellow);padding:35px}.impact article span{font-weight:700}.impact article h3{margin:30px 0 20px}.tour{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding:clamp(80px,10vw,150px) clamp(22px,7vw,120px);background:var(--black);color:var(--white)}.tour-copy h2{margin-bottom:35px}.route-card{background:var(--white);color:var(--black);align-self:center}.route-card img{aspect-ratio:16/10;object-fit:cover}.route-card div{padding:28px}.route-card strong{font:500 2rem var(--head);text-transform:uppercase}.status{display:inline-block;background:var(--yellow);padding:6px 10px;text-transform:uppercase;font-size:13px;font-weight:700}.komoot-embed{display:block;border:0;margin-top:24px;background:var(--white)}
.donate{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;padding:clamp(80px,10vw,140px) clamp(22px,7vw,120px)}.donate button:disabled{cursor:not-allowed;opacity:1}.donate small{display:block;margin-top:10px}.paypal-campaign{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.paypal-campaign iframe{display:block;width:min(100%,382px);height:550px;border:0;background:var(--white)}.paypal-campaign small{max-width:430px;margin-top:0}.external-embed{width:100%;padding:24px;border:2px solid currentColor;background:var(--white);color:var(--black)}.external-embed p{margin-top:0}.external-embed a{display:block;margin-top:14px;font-size:14px;text-underline-offset:4px}.external-embed iframe{display:block;width:100%;border:0;background:var(--white)}.contact{text-align:center;background:var(--yellow);padding:100px 20px}.contact h2{font-size:clamp(4rem,10vw,10rem)}.contact p:not(.eyebrow){max-width:650px;margin:20px auto 35px}footer{display:flex;align-items:center;gap:25px;padding:30px 6vw;background:var(--black);color:var(--white);font-size:14px}footer img{width:120px;background:white}footer div{margin-left:auto;display:flex;gap:20px}
@media(max-width:900px){.site-header{height:72px}.brand img{width:112px;height:42px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--black);padding:25px;flex-direction:column}.site-header nav.open{display:flex}.intro,.partnership,.story,.tour,.donate{grid-template-columns:1fr}.image-panel img{min-height:500px}.impact-grid{grid-template-columns:1fr 1fr}.hero-copy{padding-bottom:120px}.teaser-tag{left:6vw;right:auto}}
@media(max-width:560px){body{font-size:17px}h1{font-size:3.7rem}.impact-grid{grid-template-columns:1fr}.manifesto p{font-size:2.8rem}.photo-note i{width:14px}.content-panel{padding:60px 22px}footer{flex-wrap:wrap}footer div{margin-left:0;width:100%;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Complete site */
.site-header nav a[aria-current="page"]{border-bottom:3px solid var(--yellow)}.button-row{display:flex;gap:12px;flex-wrap:wrap}.button-outline{background:transparent;color:var(--white);border-color:var(--white)}
.feature-split{display:grid;grid-template-columns:1.1fr .9fr;background:var(--yellow)}.feature-split>img{height:100%;min-height:650px;object-fit:cover}.feature-split>div{padding:clamp(60px,8vw,120px)}.feature-split h2{margin-bottom:35px}.projects-preview{padding:clamp(80px,10vw,150px) clamp(22px,7vw,120px)}.section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:6vw;align-items:end}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:60px 0 35px}.project-grid article{background:var(--black);color:var(--white)}.project-grid img{aspect-ratio:4/3;object-fit:cover}.project-grid article div{padding:25px}.project-grid span{color:var(--yellow);font-size:13px;text-transform:uppercase;letter-spacing:.1em}.project-grid h3{margin:12px 0}.numbers{display:grid;grid-template-columns:repeat(4,1fr);background:var(--yellow);border-top:1px solid var(--black)}.numbers article{padding:50px 30px;border-right:1px solid var(--black)}.numbers strong{display:block;font:500 clamp(3rem,6vw,6rem)/1 var(--head)}.numbers span{display:block;margin-top:10px}.about-teaser{display:grid;grid-template-columns:1fr 1fr;background:var(--black);color:var(--white)}.about-teaser>div{padding:clamp(60px,8vw,120px)}.about-teaser h2{margin-bottom:35px}.about-teaser img{height:100%;min-height:650px;object-fit:cover;background:var(--yellow)}
.inner-page .site-header{position:relative;background:var(--black)}.page-hero{padding:clamp(110px,14vw,200px) clamp(22px,7vw,120px)}.page-hero h1{max-width:1100px;font-size:clamp(4rem,8vw,8rem)}.page-hero>p:last-child{max-width:730px;font-size:1.25rem;margin-top:35px}.yellow-bg{background:var(--yellow)}.black-bg{background:var(--black)!important;color:var(--white)}.project-detail{display:grid;grid-template-columns:1fr 1fr;min-height:620px}.project-detail+.project-detail{margin-top:42px}.project-detail>div{padding:clamp(60px,8vw,120px);align-self:center}.project-detail h2{margin-bottom:35px}.project-detail>img{height:100%;object-fit:cover}.project-detail.reverse>div{order:2}.project-detail.reverse>img{order:1}
.campaign-hero{min-height:78svh;position:relative;display:flex;align-items:flex-end;color:var(--white)}.campaign-hero>img,.campaign-hero>.hero-shade{position:absolute;inset:0;height:100%;object-fit:cover}.campaign-hero>div:last-child{position:relative;padding:100px clamp(22px,7vw,120px)}.campaign-hero h1{font-size:clamp(4.5rem,10vw,10rem)}.campaign-hero div>p:last-child{font-size:1.5rem}.quote{padding:clamp(80px,10vw,150px) 7vw;background:var(--yellow)}.quote p{font:400 clamp(3.2rem,7vw,7rem)/1.06 var(--head);letter-spacing:-.025em;text-transform:uppercase;margin:0;max-width:1200px}.quote span{display:block;font-size:1.35rem;margin-top:30px}.route-card{padding:32px}.route-card div{padding:0}.about-page{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;padding:clamp(80px,10vw,150px) clamp(22px,7vw,120px)}.about-page img{background:var(--yellow);height:100%;object-fit:cover}.about-page h2{margin-bottom:35px}.values{display:grid;grid-template-columns:repeat(3,1fr);background:var(--yellow)}.values article{padding:60px;border-right:1px solid var(--black)}.values h3{font-size:3rem}
@media(max-width:900px){.feature-split,.section-heading,.about-teaser,.project-detail,.about-page{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.numbers{grid-template-columns:1fr 1fr}.project-detail.reverse>div,.project-detail.reverse>img{order:initial}.feature-split>img,.about-teaser img{min-height:420px}.values{grid-template-columns:1fr}.values article{border-right:0;border-bottom:1px solid var(--black)}}
@media(max-width:560px){.numbers{grid-template-columns:1fr}.numbers article{border-right:0;border-bottom:1px solid var(--black)}.campaign-hero h1{font-size:4rem}.project-detail{min-height:0}.project-detail>img{max-height:440px}.route-card{padding:20px}}

/* Donations, galleries and organization */
.donation-options{padding:clamp(80px,10vw,150px) clamp(22px,7vw,120px)}.donation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px}.donation-card{border:2px solid var(--black);padding:35px;display:flex;flex-direction:column;align-items:flex-start}.donation-card.featured{background:var(--yellow)}.donation-card>span{font-size:13px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.donation-card h3{font-size:2.6rem;margin:22px 0}.donation-card .button{margin-top:auto}.iban{font-size:1.1rem;word-break:break-word}.receipt,.sponsoring,.company-facts{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:clamp(80px,10vw,150px) clamp(22px,7vw,120px)}.receipt{background:var(--yellow)}.receipt h2,.sponsoring h2,.company-facts h2{margin-bottom:30px}.legal-note{font-size:14px;border-top:1px solid var(--black);padding-top:18px;margin-top:28px}.charity-purpose{padding:clamp(80px,10vw,150px) clamp(22px,7vw,120px)}.charity-purpose>h2{max-width:850px}.purpose-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--white);margin-top:60px}.purpose-grid article{background:var(--black);padding:28px}.purpose-grid h3{color:var(--yellow)}.social-connect{text-align:center;padding:90px 22px;background:var(--yellow)}.social-connect h2{margin-bottom:35px}.social-connect .button-row{justify-content:center}.company-facts{background:var(--yellow)}.photo-strip{display:grid;grid-template-columns:repeat(2,1fr);background:var(--black);gap:4px}.photo-strip.three{grid-template-columns:repeat(3,1fr)}.photo-strip img{height:420px;object-fit:cover}.oslo-detail{background:var(--white)}.oslo-detail>img{min-height:620px;background:var(--yellow)}.oslo-gallery{background:var(--yellow);padding:4px}.oslo-gallery img{background:var(--white)}.project-detail .status{margin-top:20px}
@media(max-width:1050px){.site-header nav{gap:12px}.site-header nav a{font-size:12px}}
@media(max-width:900px){.donation-grid,.receipt,.sponsoring,.company-facts{grid-template-columns:1fr}.purpose-grid{grid-template-columns:1fr 1fr}.photo-strip img{height:300px}}
@media(max-width:560px){.donation-grid,.purpose-grid,.photo-strip,.photo-strip.three{grid-template-columns:1fr}.photo-strip img{height:360px}.donation-card{padding:25px}}

/* Legal pages */
.legal-hero{background:var(--yellow);padding:clamp(90px,12vw,170px) clamp(22px,7vw,120px)}.legal-hero h1{font-size:clamp(4.5rem,10vw,9rem)}.legal-content{max-width:1100px;margin:0 auto;padding:clamp(70px,9vw,130px) clamp(22px,5vw,70px)}.legal-content article{display:grid;grid-template-columns:minmax(220px,.65fr) 1.35fr;gap:50px;padding:38px 0;border-top:2px solid var(--black)}.legal-content article:last-of-type{border-bottom:2px solid var(--black)}.legal-content h2{font-size:clamp(2rem,4vw,3.5rem)}.legal-content p,.legal-content ul{margin-top:0}.legal-content a{text-underline-offset:4px}.privacy>.lead{max-width:800px;margin:0 0 60px;font-size:1.4rem}.legal-review{margin-top:55px;background:var(--yellow);padding:30px}.legal-review strong{font-family:var(--head);font-size:2rem;text-transform:uppercase}.legal-review p{margin:10px 0 0}
@media(max-width:700px){.legal-content article{grid-template-columns:1fr;gap:14px}.legal-content h2{margin-bottom:0}}

/* Responsive and accessibility refinements */
.photo-strip+.project-detail{margin-top:clamp(28px,4vw,56px)}
.values h3{font-size:clamp(2rem,4vw,3rem);overflow-wrap:normal;word-break:normal;hyphens:none}
a:focus-visible,button:focus-visible{outline:4px solid var(--yellow);outline-offset:4px}
.yellow-bg a:focus-visible,.values a:focus-visible,.contact a:focus-visible{outline-color:var(--black)}

@media(max-width:900px){
 h1,.page-hero h1,.campaign-hero h1,.legal-hero h1{font-size:clamp(3rem,9vw,5rem)}
 h2{font-size:clamp(2.45rem,7.5vw,4.25rem)}
 .manifesto p,.quote p{font-size:clamp(2.35rem,7vw,4.1rem);line-height:1.12}
 .hero-copy,.campaign-hero>div:last-child{max-width:100%;padding-left:clamp(22px,6vw,56px);padding-right:clamp(22px,6vw,56px)}
 .project-detail>div{padding:clamp(48px,8vw,76px) clamp(22px,6vw,56px)}
 .project-detail+.project-detail,.photo-strip+.project-detail{margin-top:32px}
 .values article{padding:44px clamp(22px,6vw,48px)}
}

@media(max-width:560px){
 body{font-size:16px;line-height:1.6}
 h1,.page-hero h1,.campaign-hero h1,.legal-hero h1{font-size:clamp(2.4rem,11vw,3.35rem);line-height:1.1;letter-spacing:-.015em}
 h2{font-size:clamp(2.05rem,9vw,2.9rem);line-height:1.12;letter-spacing:-.012em}
 h3{font-size:1.55rem;line-height:1.18;letter-spacing:0}
 .manifesto,.quote{padding-left:22px;padding-right:22px}
 .manifesto p,.quote p{font-size:clamp(2rem,9vw,2.65rem);line-height:1.16;letter-spacing:-.01em}
 .page-hero{padding:84px 22px}
 .page-hero>p:last-child{font-size:1.08rem;margin-top:24px}
 .hero-copy{padding-top:120px;padding-bottom:72px}
 .campaign-hero>div:last-child{padding-top:72px;padding-bottom:72px}
 .intro,.story,.tour,.donate,.about-page,.receipt,.sponsoring,.company-facts{padding-left:22px;padding-right:22px}
 .values h3{font-size:clamp(1.9rem,9vw,2.45rem)}
 .values article{padding:34px 22px}
 .project-detail>div{padding:44px 22px}
 .project-detail+.project-detail,.photo-strip+.project-detail{margin-top:24px}
 .photo-strip img{height:clamp(240px,82vw,360px)}
 .button{max-width:100%;white-space:normal;text-align:center;line-height:1.35}
 footer{padding:30px 22px}
}

/* Prevent horizontal overflow on narrow screens */
html,body{max-width:100%;overflow-x:clip}
main,section,article,div,figure,header,footer,nav{min-width:0}
.donation-grid>*,.donate>*,.receipt>*,.sponsoring>*,.company-facts>*,.purpose-grid>*,.project-grid>*,.impact-grid>*,.values>*{min-width:0}
.donation-card,.paypal-campaign,.route-card,.external-embed{width:100%;max-width:100%;min-width:0}
.paypal-campaign iframe,.komoot-embed{width:100%;max-width:100%}
.iban,.donation-card a,.legal-content a,.text-link{overflow-wrap:anywhere;word-break:normal}

@media(max-width:560px){
 .donation-options,.charity-purpose,.social-connect{padding-left:18px;padding-right:18px}
 .donation-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
 .donation-card{padding:24px 20px}
 .donation-card h3{font-size:2rem}
 .donation-card .button,.paypal-campaign .button{width:100%;max-width:100%}
 .paypal-campaign{align-items:stretch}
 .paypal-campaign iframe{display:block;width:100%;max-width:100%;height:550px}
 .purpose-grid,.impact-grid,.values,.project-grid{grid-template-columns:minmax(0,1fr)}
}
