/* GM refinements. Original artwork is preserved. */
:focus-visible{outline:3px solid #926000;outline-offset:4px}
.hero-grid{grid-template-columns:1.05fr 1fr;gap:36px;padding:38px 0 58px;min-height:620px}
.hero h1{font-size:clamp(64px,7.8vw,110px);letter-spacing:-.085em;line-height:.94}
.hero-art{height:auto;align-self:center;isolation:isolate;margin:12px 8px 0}
.hero-art img{position:relative;inset:auto;width:100%;display:block;border-radius:48% 48% 20px 20px;border:1px solid rgba(28,25,22,.5);filter:none;box-shadow:10px 12px 0 rgba(123,72,13,.14)}
.s1{top:0;right:-8px}.s2{bottom:22px;left:-12px}
.ticker{position:relative;padding:15px 0;font-size:13px;direction:ltr}
.ticker-track{display:flex;width:max-content;animation:morning-scroll 65s linear infinite}
.ticker-track span{flex:none;padding-right:24px}
@keyframes morning-scroll{from{transform:translateX(-25%)}to{transform:translateX(0)}}
.ticker.paused .ticker-track{animation-play-state:paused}
.ticker-toggle{position:absolute;right:0;top:0;bottom:0;width:44px;border:0;border-left:1px solid var(--ink);background:var(--yellow);font-size:18px}
.mission-grid{grid-template-columns:1fr 1fr;align-items:stretch}
.story{display:flex;flex-direction:column;padding:30px;min-height:0}
.story h3{font-size:34px}.story p{max-width:none;font-size:16px;margin:0 0 24px}
.story img{position:static;display:block;width:100%;max-width:280px;aspect-ratio:1;object-fit:cover;align-self:center;border-radius:50%;margin-top:auto;filter:none}
.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{display:flex;flex-direction:column;justify-content:center}.stat small{font-size:14px}
.eyebrow,.card-label,.stat span,.tag,.sticker,.pill{font-size:12px}
.section-head p,.tip p,.impact p{font-size:16px}.btn,.navlinks{font-size:14px}
.visit{background:var(--paper)}.visit-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:28px}
.visit-gallery figure{margin:0;background:#fff;border:1px solid var(--line)}
.visit-gallery a{display:block}.visit-gallery img{display:block;width:100%;height:auto;object-fit:contain}
.visit-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-gallery figure:first-child{grid-column:1/-1}
.visit-gallery figcaption{font-size:14px;line-height:1.5;padding:18px}
.footer-grid>div{min-width:0}.footer{padding-bottom:110px}
.contract{display:flex;align-items:center;gap:18px;text-align:left;border:1px solid #69604f;color:var(--cream);font-size:13px;max-width:100%;line-height:1.65;padding:14px}
.contract:hover{border-color:var(--yellow)}.contract>span:first-child{overflow-wrap:anywhere;min-width:0}.copy-label{color:var(--yellow);white-space:nowrap;font-size:12px}
#copyStatus{min-height:20px;color:var(--yellow);margin:6px 0;font-size:13px}
.agent{right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));max-width:calc(100vw - 36px)}
.agent-window{width:390px;max-width:100%;border-radius:12px;overflow:hidden;box-shadow:5px 6px 0 var(--ink)}
.agent-window[hidden]{display:none}.agent-window.open{display:flex;flex-direction:column;max-height:calc(100dvh - 100px)}
.agent-top{display:flex;align-items:center;gap:8px;padding:12px}.agent-top small{margin-left:auto;font-size:10px;float:none}.agent-top button{border:0;background:transparent;font-size:24px;width:32px;height:32px}
.messages{min-height:150px;max-height:320px;overflow-y:auto;overscroll-behavior:contain;font-size:14px;flex:1}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;max-width:94%}.bubble.user{margin-left:auto;background:var(--yellow);border-radius:8px 8px 0 8px}
.quick{padding:0 12px 10px}.quick button{font-size:12px;min-height:36px}.chat-form{display:flex;gap:8px;padding:0 12px 8px}.chat-form input{font:16px Manrope,Arial,sans-serif;width:100%;min-width:0;padding:11px;border:1px solid var(--line);border-radius:6px;background:#fff}.chat-form button{flex-shrink:0;width:44px;border:1px solid var(--ink);border-radius:6px;background:var(--yellow);font-size:24px}.chat-form button:disabled{opacity:.5;cursor:wait}.chat-note{font-size:11px;margin:0;padding:0 12px 12px;color:#686050;line-height:1.4}.agent-launch{font-size:14px;border-radius:6px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.hero-grid{gap:24px}.hero h1{font-size:70px}.sticker{font-size:10px;padding:9px}.navlinks{gap:12px}.mission-grid{grid-template-columns:1fr 1fr}.story{padding:24px}.stat{padding:18px}.stat b{font-size:36px}}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr;padding:36px 0 46px;gap:35px}.hero h1{font-size:clamp(58px,12vw,90px);max-width:640px}.hero p{max-width:600px}.hero-art{width:min(450px,92%);height:auto;margin:0 auto}.mission-grid{grid-template-columns:1fr}.story{display:grid;grid-template-columns:1fr 180px;column-gap:24px;align-items:center}.story .eyebrow,.story h3,.story p{grid-column:1}.story img{grid-column:2;grid-row:1/4;width:180px;margin:0}.story p{margin-bottom:0}.section{padding:65px 0}.visit-gallery{grid-template-columns:1fr 1fr}.visit-gallery figure:first-child{grid-column:1/-1}.impact-image{margin-right:12px}.impact-image:after{right:-8px}.footer-grid{flex-direction:column}.navlinks{display:none}}
@media(max-width:480px){.nav{height:auto;min-height:76px;gap:14px;flex-wrap:wrap;padding:18px 0}.brand{font-size:14px;gap:9px}.brand-sun{width:22px;height:22px}.pill{padding:8px 10px;font-size:10px}.hero h1{font-size:clamp(52px,14vw,68px)}.hero-grid{padding-top:26px}.hero-art{height:auto}.s1{right:-6px}.s2{left:-6px}.story{display:flex;padding:25px;align-items:stretch}.story h3{font-size:32px}.story img{width:210px;align-self:center;margin:24px 0 0}.stat b{font-size:34px}.stat{padding:18px 14px}.stat span{font-size:11px}.stat small{font-size:13px}.visit-gallery{grid-template-columns:1fr}.visit-gallery figure:first-child{grid-column:auto}.impact h2{font-size:44px}.contract{gap:10px;font-size:12px}.agent{right:12px;bottom:max(12px,env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}.agent-window{width:calc(100vw - 24px)}.messages{max-height:240px}.agent-window.open{max-height:calc(100dvh - 95px)}.section-head h2{font-size:42px}.big-number{font-size:42px}.chart-card,.pulse-side{padding:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track{animation:none;transform:none}.btn,.tip{transition:none}}
