@font-face{font-family:Manrope;src:url(fonts/manrope.woff2) format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:Fraunces;src:url(fonts/fraunces.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:Nunito;src:url(fonts/nunito.woff2) format("woff2");font-weight:200 1000;font-display:swap}
:root{--g:#1f3d2b;--g2:#2b5239;--g3:#3f6f4f;--on-g:#fff;--on-g-mut:#cfe0ca;--p:#c98b4a;--p2:#8a5a2b;--on-p:#1d1206;--p-btn:#c98b4a;--p-hover:#dba061;--bg:#f7f3ea;--card:#fff;--ink:#1d261f;--mut:#5b6a5f;--line:#e4ddcd;--hover:#ece5d6;--tint:#eef3ea;--tint-line:#d3e1cf;--warm:#fff8ea;--warm-line:#e8c99f;--hero-a:#1f3d2b;--hero-b:#24462f;--hero-c:#2b5239;--hero-glow:#3f6f4f;--hero-fg:#fff;--hero-lead:#d4e2d2;--sun:#f2c26b;--deep:#13251a;--deep2:#1f3d2b;--deep-line:#2b3d30;--deep-fg:#c9d6c6;--deep-mut:#9fb39b;--deep-sun:#f2c26b;--shade:#112019;--shade-a:.71;--photo-sun:#fff;--photo-lead:#e9ece8;--font-head:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;--font-body:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;--r:18px;--sh:0 1px 2px rgba(20,30,25,.06),0 8px 24px -12px rgba(20,30,25,.2)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font:16.5px/1.6 var(--font-body);color:var(--ink);background:var(--bg)}
img{max-width:100%;height:auto}a{color:var(--g3)}a:hover{color:var(--p2)}
h1,h2,h3{font-family:var(--font-head);line-height:1.15;letter-spacing:-.02em;color:var(--g);margin:0 0 .5em}
h1{font-size:clamp(2rem,5vw,3.4rem);font-weight:800}h2{font-size:1.55rem;font-weight:800}h3{font-size:1.12rem;font-weight:750}
p{margin:0 0 1em}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}.narrow{max-width:820px}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 14px;border-radius:8px;z-index:99}.skip:focus{left:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
:focus-visible{outline:3px solid var(--p);outline-offset:2px;border-radius:6px}
svg{width:1.1em;height:1.1em;flex:none}
.muted{color:var(--mut)}.fine{font-size:.9rem;color:var(--mut);margin-top:1.5em}
.ph{background:#fff4cc;border:1px dashed #d9b24a;border-radius:6px;padding:0 6px}
.demo-ribbon{background:var(--deep);color:var(--deep-fg);font-size:.84rem}
.demo-ribbon .wrap{display:flex;gap:14px;justify-content:space-between;align-items:center;padding-top:7px;padding-bottom:7px;flex-wrap:wrap}
.demo-ribbon a{color:var(--deep-sun);font-weight:700;white-space:nowrap}
.alert{background:var(--tint);color:var(--g);font-size:.95rem;border-bottom:1px solid var(--tint-line)}
.alert .wrap{display:flex;gap:10px;align-items:center;padding-top:9px;padding-bottom:9px}.alert a{font-weight:700}
.alert-urgent{background:#fde8e4;color:#7a2416;border-color:#f3c6bd}
.hdr{position:sticky;top:0;z-index:20;background:var(--bg);background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--g)}.logo b{display:block;font-family:var(--font-head);font-size:1.12rem;letter-spacing:-.02em;line-height:1.1}.logo small{display:block;font-size:.72rem;color:var(--mut);letter-spacing:.04em;text-transform:uppercase;font-weight:700}
nav ul{display:flex;gap:4px;list-style:none;margin:0;padding:0}
nav a{display:block;padding:8px 12px;border-radius:999px;text-decoration:none;color:var(--ink);font-weight:650;font-size:.94rem}
nav a:hover{background:var(--hover);color:var(--g)}nav a[aria-current]{background:var(--g);color:var(--on-g)}
.menu-btn{display:none;font:inherit;font-weight:700;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 16px;color:var(--g)}
@media (max-width:980px){.menu-btn{display:block}nav{position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);display:none;padding:8px 16px 16px}nav.open{display:block}nav ul{flex-direction:column}nav a{padding:12px 14px;font-size:1.02rem}}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--g);color:var(--on-g);text-decoration:none;font-weight:750;border-radius:999px;padding:12px 22px;border:0;font:inherit;font-weight:750;cursor:pointer;transition:transform .15s,background .15s;min-height:46px}
.btn:hover{background:var(--g2);color:var(--on-g);transform:translateY(-1px)}.btn-soft{background:#fff;color:var(--g);box-shadow:inset 0 0 0 1.5px var(--line)}.btn-soft:hover{background:#fff;color:var(--p2)}
.btns{display:flex;gap:12px;flex-wrap:wrap}
.hero{position:relative;background:radial-gradient(1200px 400px at 85% -10%,var(--hero-glow) 0,transparent 60%),linear-gradient(160deg,var(--hero-a),var(--hero-b) 60%,var(--hero-c));color:var(--hero-fg);padding:64px 0 150px;overflow:hidden}
.hero h1{color:var(--hero-fg);max-width:13ch}.hero .btn:not(.btn-soft){background:var(--p-btn);color:var(--on-p)}.hero .btn:not(.btn-soft):hover{background:var(--p-hover);color:var(--on-p)}
.hero .lead{font-size:1.15rem;color:var(--hero-lead);max-width:46ch}
.kicker{display:inline-block;font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;color:var(--sun);margin-bottom:14px}
.hero-in{display:grid;grid-template-columns:1.25fr .9fr;gap:48px;align-items:center;position:relative;z-index:2}
.hero-art{position:absolute;left:0;bottom:0;width:100%;height:160px;object-fit:cover;object-position:bottom;z-index:1}
.next-card{display:block;background:rgba(255,255,255,.97);color:var(--ink);text-decoration:none;border-radius:24px;padding:26px;box-shadow:0 30px 60px -30px rgba(0,0,0,.5);transition:transform .2s}
.next-card:hover{transform:translateY(-3px);color:var(--ink)}
.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--p2);margin:0 0 10px}
.nc-date{display:flex;align-items:baseline;gap:12px;margin:0}.nc-date b{font-family:var(--font-head);font-size:2.6rem;color:var(--g);letter-spacing:-.03em}.nc-date span{color:var(--mut);font-weight:650}
.nc-title{font-weight:800;font-size:1.2rem;margin:4px 0 2px;color:var(--g)}.nc-loc{color:var(--mut);margin-bottom:14px}
.nc-proof{display:flex;gap:8px;align-items:center;background:var(--tint);color:var(--g);border-radius:12px;padding:9px 12px;font-weight:700;font-size:.9rem}
.nc-go{display:inline-flex;gap:6px;align-items:center;font-weight:800;color:var(--p2)}
.quick{margin-top:-46px;position:relative;z-index:3}
.quick ul{list-style:none;margin:0;padding:10px;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;background:#fff;border-radius:22px;box-shadow:var(--sh)}
.quick a{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:16px 8px;border-radius:14px;text-decoration:none;color:var(--g);font-weight:750;font-size:.92rem;transition:background .15s}
.quick a:hover{background:var(--hover)}.qi{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--tint);color:var(--g3)}.qi svg{width:24px;height:24px}
section.wrap{padding-top:56px}
.two{display:grid;grid-template-columns:1.2fr 1fr;gap:40px}
.sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px}.sec-head h2{margin:0}.sec-head a{display:inline-flex;gap:6px;align-items:center;font-weight:750;text-decoration:none;white-space:nowrap}
.news-list{display:grid;gap:14px}
.news{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;transition:box-shadow .2s,transform .2s}.news:hover{box-shadow:var(--sh);transform:translateY(-2px)}
.news.pinned{border-color:var(--warm-line);background:linear-gradient(180deg,var(--warm),#fff)}
.news h2,.news h3{margin:.2em 0 .35em}.news h2{font-size:1.3rem}.news a{text-decoration:none;color:var(--g)}.news a:hover{color:var(--p2)}.news p:last-child{margin:0;color:var(--mut)}
.news-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:.84rem;color:var(--mut);margin:0;font-weight:650}
.cat{background:var(--tint);color:var(--g3);border-radius:999px;padding:2px 10px;font-weight:750}
.pin{display:inline-flex;gap:4px;align-items:center;color:var(--p2);font-weight:800}.new{background:var(--p2);color:#fff;border-radius:999px;padding:1px 8px;font-weight:800;font-size:.75rem}
.meet{display:flex;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:12px}
.meet-date{flex:none;align-self:flex-start;width:66px;text-align:center;border-radius:14px;background:var(--hover);padding:8px 0;color:var(--g);line-height:1.1}
.meet.up .meet-date{background:var(--g);color:var(--on-g)}
.meet-date span{display:block;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.meet-date b{display:block;font-size:1.7rem}.meet-date small{font-size:.75rem;font-weight:700;opacity:.8}
.meet h3{margin:.15em 0 .3em}.meet h3 a{text-decoration:none;color:var(--g)}
.meta{display:flex;gap:8px;align-items:flex-start;margin:0 0 4px;color:var(--mut);font-size:.92rem}.meta svg{margin-top:4px}
.proof{display:inline-flex;gap:6px;align-items:center;margin:8px 8px 0 0;font-size:.86rem;font-weight:750;color:var(--g3);background:var(--tint);border-radius:999px;padding:4px 12px}
.proof.pending{background:var(--warm);color:var(--p2)}
.tag{display:inline-block;margin:0;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--p2)}
.doc-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.doc{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;text-decoration:none;color:var(--ink);height:100%;transition:border-color .15s,box-shadow .15s}
.doc:hover{border-color:var(--p);box-shadow:var(--sh);color:var(--ink)}
.ft{flex:none;display:grid;place-items:center;width:44px;height:52px;border-radius:8px 14px 8px 8px;background:var(--p2);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.06em}
.doc b{display:block;color:var(--g);line-height:1.3;margin-bottom:2px}.doc small{display:block;color:var(--mut);font-size:.84rem;line-height:1.4}
.info-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.info-grid a{position:relative;display:block;height:100%;padding:22px 22px 46px;border-radius:var(--r);background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);transition:transform .2s,box-shadow .2s}
.info-grid a:hover{transform:translateY(-3px);box-shadow:var(--sh);color:var(--ink)}.info-grid b{display:block;color:var(--g);font-size:1.08rem;margin-bottom:4px}.info-grid span{color:var(--mut);font-size:.93rem}.info-grid svg{position:absolute;left:22px;bottom:18px;color:var(--p2)}
.page-head{background:radial-gradient(900px 300px at 90% -20%,var(--hero-glow) 0,transparent 60%),linear-gradient(160deg,var(--hero-a),var(--hero-c));color:var(--hero-lead);padding:48px 0 40px}.page-head h1{color:var(--hero-fg);font-size:clamp(1.9rem,4vw,2.8rem)}.page-head .lead{font-size:1.1rem;margin:0;max-width:60ch}.page-head a{color:var(--sun)}
.page-head .tag{color:var(--sun)}.crumbs{margin:0 0 8px;font-weight:750;font-size:.9rem}.crumbs a{text-decoration:none}.crumbs a::before{content:"← "}
.page-head .news-meta{color:var(--hero-lead)}.page-head .cat{background:color-mix(in srgb,var(--hero-fg) 14%,transparent);color:var(--hero-fg)}
.prose{font-size:1.04rem}.prose h2{margin-top:1.4em;font-size:1.3rem}.prose li{margin-bottom:.4em}
article.prose{padding-top:36px}
.h-sub{font-size:1.15rem;text-transform:uppercase;letter-spacing:.08em;color:var(--p2);margin:28px 0 14px}
.meet-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:0 14px}
.notice{padding-top:32px}
.facts{display:grid;gap:10px;margin:0 0 24px}.facts div{display:grid;grid-template-columns:90px 1fr;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px}.facts dt{font-weight:800;color:var(--p2)}.facts dd{margin:0}
.proof-box{background:#fff;border:1.5px solid var(--tint-line);border-radius:var(--r);padding:22px;margin-bottom:28px}.proof-box h2{font-size:1.15rem}
.proof-box ol{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:10px}.proof-box li{display:flex;gap:10px}.proof-box li svg{color:#fff;background:var(--g3);border-radius:50%;padding:4px;width:24px;height:24px;margin-top:1px}
.proof-box li.pending svg{background:var(--p)}.proof-box small{display:block;color:var(--mut)}.proof-box .btn{margin:4px 8px 0 0}
.callout{background:var(--warm);border-left:4px solid var(--p);padding:12px 16px;border-radius:0 12px 12px 0}
.lib-tools{display:flex;flex-direction:column;gap:14px;margin-bottom:8px}
.search{display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:4px 18px;max-width:560px}.search:focus-within{border-color:var(--g3)}
.search input{flex:1;border:0;outline:0;font:inherit;padding:10px 0;background:transparent;min-width:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font:inherit;font-weight:750;font-size:.9rem;border:1.5px solid var(--line);background:#fff;color:var(--g);border-radius:999px;padding:7px 14px;cursor:pointer}
.chip span{color:var(--mut);font-weight:650;margin-left:2px}.chip[aria-pressed=true]{background:var(--g);border-color:var(--g);color:var(--on-g)}.chip[aria-pressed=true] span{color:var(--on-g-mut)}
.rr{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:start}
.steps{padding-left:1.2em}.steps li{margin-bottom:.9em}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;margin-bottom:14px}
.form h2{font-size:1.2rem}.form label{display:block;font-weight:700;font-size:.92rem;margin-bottom:14px;color:var(--g)}
.form input:not([type=radio]),.form textarea{display:block;width:100%;margin-top:6px;font:inherit;font-size:16px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fcfbf7}
.form textarea{min-height:100px}.form input:focus,.form textarea:focus{border-color:var(--g3);outline:0;box-shadow:0 0 0 3px var(--tint-line)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}fieldset{border:0;padding:0;margin:0 0 16px}legend{font-weight:700;font-size:.92rem;color:var(--g);margin-bottom:6px}
.radio{display:flex!important;gap:10px;align-items:center;font-weight:600!important;color:var(--ink)!important;margin-bottom:8px!important}.radio input{width:20px;height:20px;accent-color:var(--g)}
.opt{color:var(--mut);font-weight:500}
.rr-result{margin-top:16px;background:var(--tint);border-radius:14px;padding:16px}.rr-result.err{background:#fde8e4;color:#7a2416}.rr-result b{color:var(--g)}
.board{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.person{display:flex;gap:16px;margin:0}.avatar{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:linear-gradient(150deg,var(--g3),var(--g));color:var(--on-g);font-weight:800;font-size:1.3rem;font-family:var(--font-head)}
.person .role{margin:0;font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--p2)}.person h3{margin:.1em 0 .3em}.person p{margin:0 0 4px;font-size:.94rem}.person a{display:inline-flex;gap:6px;align-items:center;font-size:.9rem;font-weight:700;margin-top:6px;word-break:break-all}
.helper{background:var(--warm);border-color:var(--warm-line)}
.numbers{list-style:none;padding:6px 22px}.numbers li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.numbers li:last-child{border:0}.numbers b{white-space:nowrap;color:var(--g)}
.faq details{background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:10px;padding:0 20px}
.faq summary{cursor:pointer;font-weight:750;color:var(--g);padding:18px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}.faq summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--p2)}.faq details[open] summary::after{content:"–"}
.faq summary::-webkit-details-marker{display:none}
.ftr{margin-top:80px;background:var(--deep);color:var(--deep-fg);padding:48px 0 24px}.ftr a{color:#fff}.ftr h2{color:#fff;font-size:.85rem;text-transform:uppercase;letter-spacing:.12em}
.ftr-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:32px}.ftr ul{list-style:none;padding:0;margin:0}.ftr li{margin-bottom:8px}.logo-light{color:#fff}.logo-light small{color:var(--deep-mut)}
.ftr .muted{color:var(--deep-mut)}.ftr .ph{background:transparent;border-color:var(--deep-line);color:var(--deep-fg)}
.ftr-base{border-top:1px solid var(--deep-line);margin-top:28px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.88rem}.ftr-base p{margin:0}
.stamp{display:inline-flex;gap:8px;align-items:center;background:var(--deep2);border-radius:999px;padding:6px 14px;color:var(--deep-fg)}
@media (max-width:980px){.hero-in,.two,.rr{grid-template-columns:1fr}.quick ul{grid-template-columns:repeat(3,1fr)}.info-grid{grid-template-columns:1fr 1fr}.ftr-grid{grid-template-columns:1fr 1fr}.ftr-grid>div:first-child{grid-column:1/-1}}
@media (max-width:560px){body{font-size:16px}.wrap{padding:0 18px}.hero{padding:40px 0 120px}.hero-art{height:110px}.quick ul{grid-template-columns:repeat(2,1fr)}.quick a{flex-direction:row;text-align:left;padding:12px}.qi{width:38px;height:38px}.info-grid{grid-template-columns:1fr}.row{grid-template-columns:1fr}.meet-list{grid-template-columns:1fr}.next-card{padding:20px}.nc-date b{font-size:2.1rem}.demo-ribbon{font-size:.78rem}.facts div{grid-template-columns:1fr;gap:2px}section.wrap{padding-top:40px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.event-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.event{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:box-shadow .2s,transform .2s}.event:hover{box-shadow:var(--sh);transform:translateY(-2px)}
.event-img{position:relative;display:block;aspect-ratio:16/9;background:var(--tint)}.event-img img{display:block;width:100%;height:100%;object-fit:cover}
.event-body{padding:18px 20px 20px}.event h3{margin:.25em 0 .35em}.event h3 a{text-decoration:none;color:var(--g)}.event h3 a:hover{color:var(--p2)}
.event-when{display:flex;gap:8px;align-items:center;margin:0;font-weight:800;font-size:.88rem;color:var(--p2)}.event-when svg,.rsvp svg{width:18px;height:18px;flex:none}
.event-sum{margin:6px 0 0;color:var(--ink);font-size:.95rem}
.rsvp{display:flex;gap:8px;align-items:flex-start;margin:12px 0 0;background:var(--warm);border-radius:12px;padding:9px 12px;font-size:.88rem;font-weight:650;color:var(--p2)}.rsvp svg{margin-top:3px}
.event.past{opacity:.85}.event.past .event-when{color:var(--mut)}
.event-hero{display:block;width:100%;border-radius:var(--r);margin:0 0 22px;box-shadow:var(--sh)}
.lead-dark{font-size:1.1rem;font-weight:650;color:var(--g)}
@media (max-width:560px){.event-list{grid-template-columns:1fr}}
.logo .mark{width:40px;height:40px;flex:none}.mark .m-bg{fill:var(--g)}.mark .m-leaf{fill:var(--p)}.mark .m-vein{stroke:var(--g)}
.logo-light .mark .m-bg{fill:#fff}.logo-light .mark .m-vein{stroke:var(--deep)}
.hero-art{color:color-mix(in srgb,var(--hero-a) 84%,var(--hero-fg))}.hero-art .sky-tree{opacity:.55}.hero-art .sky-win{fill:var(--sun);opacity:.9}.hero-art .sky-ground{fill:var(--bg)}
.hero.has-photo{background:var(--shade);color:#fff;padding:88px 0 170px;isolation:isolate}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;max-width:none}
.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,color-mix(in srgb,var(--shade) calc(var(--shade-a) * 100%),transparent) 0,color-mix(in srgb,var(--shade) calc(var(--shade-a) * 100%),transparent) 38%,color-mix(in srgb,var(--shade) calc(var(--shade-a) * 55%),transparent) 72%,color-mix(in srgb,var(--shade) calc(var(--shade-a) * 35%),transparent) 100%),
  linear-gradient(0deg,color-mix(in srgb,var(--shade) 55%,transparent),transparent 40%)}
.hero.has-photo h1,.hero.has-photo .lead{color:#fff;text-shadow:0 1px 18px color-mix(in srgb,var(--shade) 60%,transparent)}
.hero.has-photo .lead{color:var(--photo-lead)}.hero.has-photo .kicker{color:var(--photo-sun)}
.hero.has-photo .hero-art .sky-house,.hero.has-photo .hero-art .sky-tree,.hero.has-photo .hero-art .sky-win{display:none}
.photo-credit{position:absolute;right:14px;bottom:52px;z-index:2;margin:0;font-size:.72rem;color:rgba(255,255,255,.78);text-shadow:0 1px 4px rgba(0,0,0,.6)}
@media (max-width:980px){.hero-shade{background:linear-gradient(180deg,color-mix(in srgb,var(--shade) calc(var(--shade-a) * 100%),transparent) 0,color-mix(in srgb,var(--shade) calc(var(--shade-a) * 100%),transparent) 46%,color-mix(in srgb,var(--shade) calc(var(--shade-a) * 45%),transparent) 70%,color-mix(in srgb,var(--shade) calc(var(--shade-a) * 70%),transparent) 100%)}}
@media (max-width:560px){.hero.has-photo{padding:56px 0 130px}.photo-credit{bottom:40px}}
.sec-kicker{display:block;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--p2);margin:0 0 4px}
.strip{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1.55fr 1fr 1fr 1fr;grid-template-rows:200px 200px;gap:10px}
.strip li{min-width:0}.strip li:first-child{grid-row:span 2}.strip li:nth-child(n+8){display:none}
.tile{position:relative;display:block;width:100%;height:100%;overflow:hidden;border-radius:16px;background:var(--tint);color:#fff;text-decoration:none}
.tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.tile:hover img,.tile:focus-visible img{transform:scale(1.04)}
.tile-cap{position:absolute;left:0;right:0;bottom:0;padding:28px 12px 10px;font-size:.8rem;font-weight:750;line-height:1.3;background:linear-gradient(0deg,rgba(10,14,12,.72),transparent);opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s}
.tile:hover .tile-cap,.tile:focus-visible .tile-cap,.strip li:first-child .tile-cap{opacity:1;transform:none}
.strip li:first-child .tile-cap{font-size:.95rem;padding:48px 16px 14px}
@media (hover:none){.tile-cap{opacity:1;transform:none}}
@media (max-width:760px){
  .strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin:0 -18px;padding:0 18px 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .strip::-webkit-scrollbar{display:none}
  .strip li,.strip li:nth-child(n+8){display:block;flex:0 0 58%;height:250px;scroll-snap-align:start;scroll-margin-left:18px}
  .strip li:first-child{flex-basis:78%}.strip li:nth-child(3n){flex-basis:44%}
}
.strip-hint{display:none;margin:10px 0 0;font-size:.85rem;color:var(--mut);font-weight:650}
@media (max-width:760px){.strip-hint{display:block}}
.pgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.pgrid li{grid-column:span 2;min-width:0}
.pgrid .tile{aspect-ratio:4/3;border-radius:14px}
.pgrid li.feat{grid-column:1/-1}.pgrid li.feat .tile{aspect-ratio:16/8}
.pgrid li.w3{grid-column:span 3}.pgrid li.w3 .tile{aspect-ratio:16/10}
.pgrid li.w6{grid-column:1/-1}.pgrid li.w6 .tile{aspect-ratio:21/9}
@media (max-width:760px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pgrid li,.pgrid li.w3,.pgrid li.w6{grid-column:span 1}.pgrid li .tile,.pgrid li.w3 .tile,.pgrid li.w6 .tile{aspect-ratio:1}
  .pgrid li.feat,.pgrid li.pl{grid-column:1/-1}.pgrid li.feat .tile,.pgrid li.pl .tile{aspect-ratio:4/3}}
.more.more-m{display:none}
@media (max-width:560px){.more.more-d{display:none}.more.more-m{display:grid}}
.count{display:inline-flex;align-items:center;gap:6px;font-size:.84rem;font-weight:750;color:var(--mut)}.count svg{width:16px;height:16px}
.albums{display:grid;gap:22px}
.album{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.6fr);gap:0;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden}
.album-text{padding:30px 30px 28px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.album-text h2{font-size:1.5rem;margin:.1em 0 .25em}.album-text h2 a{color:var(--g);text-decoration:none}.album-text h2 a:hover{color:var(--p2)}
.album-text p{color:var(--ink);margin:0 0 10px}.album-text .when{font-weight:800;font-size:.86rem;color:var(--p2);margin:0}
.album-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin:2px 0 16px}
.album-text .btn{margin-top:auto}
.mosaic{list-style:none;margin:0;padding:6px;display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:minmax(170px,1fr) minmax(170px,1fr);gap:6px}
.mosaic li{min-width:0}.mosaic li:first-child{grid-row:span 2}.mosaic li:nth-child(n+6){display:none}
.mosaic .tile{border-radius:14px}
.mosaic.m1{grid-template-columns:1fr;grid-template-rows:minmax(346px,1fr)}.mosaic.m2{grid-template-columns:1.4fr 1fr;grid-template-rows:minmax(346px,1fr)}.mosaic.m2 li:first-child{grid-row:auto}
.mosaic.m3{grid-template-columns:2fr 1fr}.mosaic.m4{grid-template-columns:2fr 1fr 1fr}.mosaic.m4 li:nth-child(4){grid-column:span 2}
.more{position:absolute;inset:0;display:grid;place-items:center;background:color-mix(in srgb,var(--shade) 62%,transparent);font-weight:800;font-size:1.05rem;color:#fff;letter-spacing:-.01em}
.mosaic-video{position:relative;display:grid;place-items:center;height:100%;border-radius:14px;background:radial-gradient(400px 200px at 80% 0,var(--hero-glow),transparent 60%),linear-gradient(160deg,var(--hero-a),var(--hero-c));color:var(--hero-fg);text-decoration:none;font-weight:800}
@media (max-width:860px){.album{grid-template-columns:1fr}.album-text{padding:20px 20px 22px;order:2}.mosaic{grid-template-rows:150px 110px;padding:6px 6px 0}.mosaic.m1,.mosaic.m2{grid-template-rows:230px}}
@media (max-width:560px){.mosaic{grid-template-columns:1.6fr 1fr;grid-template-rows:120px 120px}.mosaic li:nth-child(n+4){display:none}.mosaic.m4{grid-template-columns:1.6fr 1fr}}
.gallery-intro{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;justify-content:space-between;margin-bottom:20px}
.gallery-intro p{margin:0;color:var(--mut);max-width:62ch}
.album-page{padding-top:34px}.album-page .lead-dark{max-width:64ch}
.album-facts{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 22px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--tint);color:var(--g);font-weight:750;font-size:.9rem;border-radius:999px;padding:7px 14px;text-decoration:none}
a.pill:hover{background:var(--tint-line);color:var(--g)}.pill svg{width:16px;height:16px}
.media-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:38px 0 14px}.media-h h2{margin:0;font-size:1.35rem}
.fine-credit{font-size:.84rem;color:var(--mut);margin:14px 0 0}
.videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:16px}
.video{margin:0}
.video-frame{position:relative;display:block;aspect-ratio:16/9;width:100%;border-radius:18px;overflow:hidden;background:var(--shade);box-shadow:var(--sh);color:#fff;text-decoration:none;border:0;padding:0;font:inherit;cursor:pointer;text-align:left}
.video-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.video-frame:hover img{transform:scale(1.03)}
.video-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,12,10,.78),rgba(8,12,10,.08) 55%,rgba(8,12,10,.2))}
.video-frame.no-poster{background:radial-gradient(500px 260px at 85% -10%,var(--hero-glow),transparent 60%),linear-gradient(150deg,var(--hero-a),var(--hero-c))}
.video-frame.no-poster::after{background:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 14px,transparent 14px 28px)}
.play{position:absolute;left:50%;top:46%;z-index:2;display:grid;place-items:center;width:74px;height:74px;margin:-37px 0 0 -37px;border-radius:50%;background:rgba(255,255,255,.94);color:var(--g);box-shadow:0 12px 30px -8px rgba(0,0,0,.5);transition:transform .2s}
.play svg{width:30px;height:30px;margin-left:4px}
.video-frame:hover .play,.video-frame:focus-visible .play{transform:scale(1.07)}
.video-label{position:absolute;left:18px;right:18px;bottom:14px;z-index:2;display:flex;flex-direction:column;gap:2px}
.video-label b{font-size:1.05rem;line-height:1.25;color:#fff}.video-label small{font-size:.78rem;font-weight:700;color:rgba(255,255,255,.85)}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video figcaption{font-size:.84rem;color:var(--mut);margin-top:8px}
@media (max-width:560px){.play{width:62px;height:62px;margin:-31px 0 0 -31px}.video-frame{border-radius:14px}}
.badge{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;background:rgba(12,16,14,.72);color:#fff;font-size:.78rem;font-weight:800;border-radius:999px;padding:4px 10px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.badge svg{width:14px;height:14px}
.lb{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:rgba(9,11,10,.96);color:#fff;overflow:hidden;overscroll-behavior:contain}
.lb::backdrop{background:rgba(9,11,10,.96)}
.lb[open]{display:grid;grid-template-rows:auto 1fr auto}
.lb-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(12px,env(safe-area-inset-top)) 14px 8px;font-size:.9rem;font-weight:700;color:rgba(255,255,255,.8)}
.lb-btn{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;cursor:pointer;flex:none;transition:background .15s}
.lb-btn:hover{background:rgba(255,255,255,.2)}.lb-btn svg{width:22px;height:22px}
.lb-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;padding:0 72px;touch-action:pan-y}
.lb-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:6px;user-select:none;-webkit-user-drag:none;transition:opacity .2s,transform .2s}
.lb-stage img.loading{opacity:.25}
.lb-prev,.lb-next{position:absolute;top:50%;margin-top:-23px}.lb-prev{left:14px}.lb-next{right:14px}
.lb-cap{padding:12px 18px max(16px,env(safe-area-inset-bottom));text-align:center;min-height:64px}
.lb-cap b{display:block;font-size:1rem;line-height:1.35}.lb-cap a{color:var(--photo-sun);font-size:.86rem;font-weight:750}
.lb-cap small{display:block;color:rgba(255,255,255,.7);font-size:.86rem;margin-top:2px}
@media (max-width:640px){.lb-stage{padding:0}.lb-stage img{border-radius:0}.lb-prev,.lb-next{top:auto;bottom:-56px;margin:0}.lb-prev{left:12px}.lb-next{right:12px}.lb-cap{padding:12px 70px max(16px,env(safe-area-inset-bottom))}}
html.lb-open{overflow:hidden}
@media (prefers-reduced-motion:reduce){.tile img,.video-frame img{transition:none}}
[data-gallery] li{position:relative}.strip{position:relative}
