:root{--bg:#14201a;--ink:#eef0e4;--muted:#a9b79b;--accent:#b9cc7c;--pop:#e3a857;--line:rgba(238,240,228,.14);--grid:rgba(255,255,255,.045);--card:rgba(22,36,29,.8);--btn-ink:#14201a;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:env(safe-area-inset-top,0px);scroll-behavior:smooth}
*{box-sizing:border-box}
body{margin:0;overflow-x:hidden;color:var(--ink);font-family:"Roboto",Arial,sans-serif;line-height:1.65;font-size:18px;position:relative;background-color:var(--bg)}
#bg{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
a{color:var(--accent);text-underline-offset:4px}
a:focus-visible{outline:3px solid var(--pop);outline-offset:3px}
.wrap{max-width:900px;margin:0 auto;padding:0 24px}
nav{display:flex;justify-content:space-between;align-items:center;padding:24px 0}
nav b{font-weight:800;font-size:1.15rem}
nav a{margin-left:20px;color:var(--ink);text-decoration:none}
nav a:hover{color:var(--accent)}
.hero{padding:48px 0 72px}
.hero-top{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}
.photo{aspect-ratio:4/5;border-radius:14px;border:8px solid var(--ink);transform:rotate(2deg);box-shadow:0 12px 30px rgba(0,0,0,.4);background:var(--card);display:grid;place-items:center;color:var(--muted);text-align:center;overflow:hidden}
.photo{position:relative}
.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
h1{font-size:clamp(2.4rem,7vw,4.4rem);line-height:1.12;margin:0 0 16px;font-weight:800;letter-spacing:-.045em;max-width:15ch}
.hl{background:var(--ink);color:#14201a;padding:0 .12em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.sub{font-size:1.35rem;color:var(--muted);margin:0 0 36px;max-width:34ch}
.cta{display:inline-block;background:var(--accent);color:var(--btn-ink);font-weight:600;text-decoration:none;border-radius:8px;padding:12px 26px}
.facts{margin-top:56px;padding-top:56px;position:relative}
.facts>div{margin:0 0 40px}
.facts h3{margin:0 0 14px;font-size:1.3rem;font-weight:400;color:var(--ink)}
.facts p{display:flex;gap:.7em;margin:0 0 12px;font-size:1.2rem;line-height:1.45;color:var(--muted);max-width:46ch}
.facts span{flex:0 0 auto}
section{position:relative;padding:80px 0 0}
section::before,footer::before,.facts::before{content:"";position:absolute;top:0;left:50%;width:100vw;height:1px;background:var(--line);transform:translateX(-50%)}
h2{font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.25;margin:0 0 14px;font-weight:800;letter-spacing:-.04em;max-width:20ch}
.lead{color:var(--muted);max-width:58ch;margin:0 0 36px}
.proj{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;margin-bottom:52px}
.proj:nth-child(even) .thumb{order:2}
.thumb{aspect-ratio:4/3;border-radius:12px;display:grid;place-items:center;font-size:4rem;border:6px solid var(--ink);transform:rotate(-1.5deg)}
.proj:nth-child(even) .thumb{transform:rotate(1.5deg)}
.thumb{overflow:hidden}
.thumb img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated;display:block}
.t1{background:var(--accent);color:var(--btn-ink)}.t2{background:var(--card)}.t3{background:var(--pop);color:var(--btn-ink)}
.proj h3{font-size:1.55rem;margin:0 0 8px;line-height:1.15}
.proj p{margin:0 0 12px}
.tags{font-size:.9rem;color:var(--muted)}
.note{font-size:.82em;font-style:italic}
.dd{position:relative;display:inline-block;margin-left:20px}
.ddbtn{font:inherit;color:var(--ink);background:none;border:0;padding:0;cursor:pointer}
.ddbtn:hover,.dd:focus-within .ddbtn{color:var(--accent)}
.ddbtn:focus-visible{outline:3px solid var(--pop);outline-offset:3px}
.menu{position:absolute;right:0;top:100%;padding-top:12px;display:none;z-index:5}
.dd:hover .menu,.dd:focus-within .menu,.dd.open .menu{display:block}
.icons{display:flex;gap:12px}
.icons a{width:48px;height:48px;border:3px solid var(--ink);border-radius:8px;display:grid;place-items:center;color:var(--ink);background:var(--card)}
.icons a:hover,.icons a:focus-visible{background:var(--accent);color:var(--btn-ink)}
.scroller{display:flex;gap:36px;overflow-x:auto;width:100vw;margin-top:32px;margin-left:calc(50% - 50vw);padding:8px max(24px,calc(50vw - 426px)) 28px;scrollbar-color:var(--muted) transparent}
.card{flex:0 0 min(220px,68vw)}
.cthumb{aspect-ratio:4/3;border-radius:14px;border:8px solid var(--ink);display:grid;place-items:center;font-size:2.6rem}
.cthumb{overflow:hidden;position:relative}
.cthumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block}
.card h3{font-size:1.1rem;line-height:1.2;letter-spacing:-.03em;margin:12px 0 4px}
.card p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45}
.card p.date{color:var(--accent);font-weight:600;font-size:.95rem}
.ach{list-style:none;margin:0;padding:0;border-left:2px dashed var(--line)}
.ach li{padding:0 0 26px 26px;position:relative}
.ach li::before{content:"";position:absolute;left:-7px;top:10px;width:12px;height:12px;border-radius:50%;background:var(--accent)}
.ach b{display:block}
.ach small{color:var(--muted)}
footer{position:relative;margin-top:96px;padding:40px 0 56px;display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;color:var(--muted)}
.climate-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:48px;align-items:center}
.photo.left{transform:rotate(-2deg)}
#climate{padding-bottom:52px}
.climate-grid p{margin:0 0 16px;max-width:52ch}
.climate-grid p:last-child{margin-bottom:0}
.hint{color:var(--muted)}
.stat{border:6px solid var(--ink);border-radius:12px;background:var(--card);padding:28px;transform:rotate(1.5deg)}
.stat b{display:block;font-size:clamp(2.4rem,6vw,3.6rem);line-height:1.05;letter-spacing:-.045em;margin-bottom:6px}
.stat span{color:var(--muted)}
@media (max-width:720px){.climate-grid{grid-template-columns:1fr}.hero-top{grid-template-columns:1fr}.photo{max-width:320px}.proj{grid-template-columns:1fr}.proj:nth-child(even) .thumb{order:0}nav a{margin-left:12px}.dd{margin-left:12px}}
