/* Agrythm site-wide responsive system — loaded after the generated stylesheet. */
:root{
  --site-gutter:clamp(16px,4vw,72px);
  --site-section-y:clamp(56px,7vw,112px);
  --site-max:1600px;
  --header-logo-w:clamp(150px,11vw,190px);
  --header-logo-h:clamp(44px,4vw,58px);
  --footer-logo-w:clamp(170px,12vw,220px);
  --support-logo-w:clamp(150px,12vw,200px);
  --support-logo-h:clamp(72px,6.5vw,96px);
  --visual-radius:clamp(14px,1.4vw,22px);
}
html{overflow-x:hidden;text-size-adjust:100%;-webkit-text-size-adjust:100%;}
body{overflow-x:hidden;min-width:320px;min-height:100%;}
img,video,svg,canvas{max-width:100%;height:auto;}
main{overflow-x:hidden;overflow-x:clip;}
[id]{scroll-margin-top:96px;}
.section{padding-left:var(--site-gutter)!important;padding-right:var(--site-gutter)!important;padding-top:var(--site-section-y);padding-bottom:var(--site-section-y);}
.site-header{padding-left:var(--site-gutter);padding-right:var(--site-gutter);height:clamp(72px,6vw,92px);gap:clamp(14px,2vw,30px);}
.site-header .brand{display:flex;align-items:center;flex:0 0 auto;width:var(--header-logo-w);height:var(--header-logo-h);overflow:visible;}
.site-header .brand-lockup,.site-header .brand-logo-crop{display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%;overflow:visible;}
.site-header .brand-lockup img,.site-header .brand-logo-crop img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;object-position:left center;transform:scale(1.72);transform-origin:left center;}
.desktop-nav{gap:clamp(18px,2.2vw,34px);font-size:clamp(15px,1.05vw,18px);white-space:nowrap;}
.desktop-nav::after{content:'Login ▼';visibility:hidden;display:inline-flex;align-items:center;font:inherit;font-weight:560;white-space:nowrap;}
.desktop-nav.login-ready::after{display:none;}
.desktop-nav a{padding-top:clamp(18px,1.7vw,26px);padding-bottom:clamp(16px,1.5vw,23px);}
.button{min-height:44px;}
.hero{padding-left:var(--site-gutter);padding-right:var(--site-gutter);min-height:clamp(500px,65vh,760px);}
.hero-content{max-width:min(780px,65vw);}
.signal-card{max-width:min(420px,32vw);}
.page-hero,.contact-expect,footer,.platform-band{padding-left:var(--site-gutter);padding-right:var(--site-gutter);}
.footer-main,.supporters-heading{max-width:var(--site-max);margin-left:auto;margin-right:auto;}

/* Visual scale normalization: logos, imagery and reusable surfaces */
.footer-brand .brand{display:flex;align-items:center;width:var(--footer-logo-w);min-height:58px;overflow:visible;}
.footer-brand .brand-lockup{display:flex;align-items:center;width:100%;min-height:58px;overflow:visible;}
.footer-brand .brand-lockup img{display:block;width:100%;height:auto;max-width:none;object-fit:contain;object-position:left center;transform:scale(1.82);transform-origin:left center;}
.support-logo{width:var(--support-logo-w)!important;height:var(--support-logo-h)!important;display:grid;place-items:center;overflow:hidden;}
.support-logo img{display:block;width:auto!important;height:auto!important;max-width:78%!important;max-height:62%!important;object-fit:contain!important;object-position:center!important;transform:scale(1.18);transform-origin:center;}
.person-photo,.advisor-photo{overflow:hidden;border-radius:var(--visual-radius);}
.person-photo img,.advisor-photo img,.conviction-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;}
.conviction-visual img{height:auto;aspect-ratio:16/10;object-position:center center;}
.product-visual,.dashboard,.signal-card,.contact-form-wrap,.mission-grid article,.journey-grid article,.person-card,.advisor-card{border-radius:var(--visual-radius)!important;}
.dashboard,.product-visual,.signal-card{width:100%;}
.dashboard{max-width:720px;margin-left:auto;}
.product-visual{min-width:0;}
.capability-list p,.dash-table p,.signal-list p{min-width:0;}
.capability-list p,.dash-table p,.signal-list p,.footer-links a,.contact-methods b{overflow-wrap:anywhere;}

/* Fluid grids before tablet collapse */
.impact-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.platform-links{grid-template-columns:repeat(3,minmax(0,1fr));}
.team-grid,.advisor-grid,.journey-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));}
.cha5-flow{grid-template-columns:repeat(5,minmax(0,1fr));}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));}

/* Large desktop / TV: increase readable measure instead of stretching endlessly */
@media (min-width:1800px){
  :root{--site-gutter:clamp(72px,7vw,140px);--site-section-y:clamp(96px,6vw,150px);--header-logo-w:190px;--header-logo-h:58px;--footer-logo-w:220px;--support-logo-w:210px;--support-logo-h:98px;}
  .hero-content{max-width:900px;}
  .section,.page-hero,.platform-band,.contact-expect,footer{padding-left:max(var(--site-gutter),calc((100vw - 1800px)/2 + 72px));padding-right:max(var(--site-gutter),calc((100vw - 1800px)/2 + 72px));}
  .desktop-nav{font-size:18px;}
  .support-logo{width:210px!important;height:98px!important;}
}

/* Laptop / smaller desktop */
@media (max-width:1180px){
  :root{--header-logo-w:160px;--header-logo-h:50px;--footer-logo-w:190px;}
  .site-header{grid-template-columns:auto 1fr auto;}
  .desktop-nav{gap:18px;font-size:15px;justify-self:center;}
  .header-cta{padding-left:14px;padding-right:14px;gap:10px;}
  .hero-content{max-width:68vw;}
  .signal-card{max-width:30vw;}
  .intelligence-section,.contact-section,.product-detail,.page-hero,.cta-panel{gap:clamp(28px,5vw,64px);}
  .cha5-flow{grid-template-columns:repeat(3,minmax(0,1fr));}
  .cha5-flow article{border-bottom:1px solid var(--line);}
}

/* Tablet */
@media (max-width:960px){
  :root{--header-logo-w:152px;--header-logo-h:46px;--footer-logo-w:174px;--support-logo-w:168px;--support-logo-h:84px;}
  [id]{scroll-margin-top:80px;}
  .desktop-nav,.header-cta{display:none!important;}
  .desktop-nav::after{display:none!important;}
  .mobile-menu{display:block!important;justify-self:end;position:relative;}
  .site-header{grid-template-columns:1fr auto;height:72px;}
  .site-header .brand-lockup img{transform:scale(1.62);}
  .mobile-menu>summary{min-width:44px;min-height:44px;display:grid!important;place-content:center;gap:5px;cursor:pointer;list-style:none;}
  .mobile-menu>summary::-webkit-details-marker{display:none;}
  .mobile-menu>summary span{display:block;width:24px;height:2px;background:var(--ink);border-radius:99px;}
  .mobile-menu>div{position:absolute;top:calc(100% + 10px);right:0;width:min(86vw,340px);max-height:calc(100vh - 96px);max-height:calc(100svh - 96px);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:14px 18px max(14px,env(safe-area-inset-bottom));background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px rgba(16,37,28,.14);}
  .mobile-menu>div>a{display:block;padding:13px 2px;border-bottom:1px solid var(--line);font-size:16px;font-weight:700;}
  .hero{min-height:auto;padding-top:64px;padding-bottom:64px;align-items:flex-start;}
  .hero-content{max-width:100%;}
  .signal-card{position:relative!important;inset:auto!important;max-width:520px;width:100%;margin-top:34px;}
  .intelligence-section,.contact-section,.product-detail,.page-hero,.cta-panel,.supporters-heading,.footer-main{grid-template-columns:1fr!important;}
  .product-detail.reverse .product-story{order:initial;}
  .impact-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .platform-band{grid-template-columns:1fr;padding-top:26px;padding-bottom:26px;}
  .platform-band-title{border-right:0;border-bottom:1px solid #10251c2e;padding:0 0 18px;}
  .platform-links{grid-template-columns:1fr;}
  .platform-links a{border-right:0;border-bottom:1px solid #10251c29;}
  .platform-links a:last-child{border-bottom:0;}
  .cha5-flow{grid-template-columns:repeat(2,minmax(0,1fr));}
  .contact-expect>div{grid-template-columns:1fr!important;}
  .contact-expect article,.contact-expect article:not(:first-child){border-left:0;border-bottom:1px solid var(--line);padding:24px 0;}
  .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));}
  .dashboard{max-width:100%;margin:0;}
}

/* Phones */
@media (max-width:640px){
  :root{--site-gutter:18px;--site-section-y:56px;--header-logo-w:136px;--header-logo-h:42px;--footer-logo-w:158px;--support-logo-w:146px;--support-logo-h:74px;}
  [id]{scroll-margin-top:72px;}
  .site-header{height:66px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));}
  .site-header .brand-lockup img{transform:scale(1.55);}
  .footer-brand .brand-lockup img{transform:scale(1.68);}
  .hero{padding:48px max(18px,env(safe-area-inset-left)) 52px max(18px,env(safe-area-inset-right));}
  .hero h1,.page-hero h1,.cta-panel h2{font-size:clamp(38px,12vw,62px)!important;line-height:.98!important;}
  .hero-copy,.intelligence-copy>p:not(.kicker),.product-story>p:not(.kicker),.contact-info>p:not(.kicker){font-size:14px;line-height:1.65;}
  .hero-actions{align-items:stretch!important;flex-direction:column!important;gap:12px!important;}
  .hero-actions .button,.cta-panel .button,.contact-form-wrap .button{width:100%;}
  .signal-card{margin-top:28px;}
  .impact-grid,.cha5-flow,.journey-grid,.mission-grid,.team-grid,.advisor-grid,.footer-links,.form-grid{grid-template-columns:1fr!important;}
  .impact-grid article,.impact-grid article:not(:first-child){border-right:0;border-bottom:1px solid var(--line);padding:22px 0;}
  .cha5-flow article,.cha5-flow article:not(:first-child){border-right:0;padding:22px 0;min-height:0;}
  .cha5-flow h3{margin-top:28px;}
  .product-detail{padding:56px 0;}
  .product-visual{min-height:300px;padding:18px;}
  .contact-form-wrap{padding:22px 18px;border-radius:14px;}
  .contact-form-wrap input,.contact-form-wrap select,.contact-form-wrap textarea{font-size:16px;}
  .cta-panel{margin:16px 12px 0;padding:34px 20px 38px;border-radius:16px;}
  .supporters-heading{margin-bottom:30px;}
  .support-logo{width:146px!important;height:74px!important;padding:6px 10px!important;}
  .support-logo img{max-width:80%!important;max-height:64%!important;transform:scale(1.14);}
  .ownership-strip{flex-wrap:wrap;gap:12px 22px;text-align:center;padding:24px 18px;}
  footer{padding-top:52px;padding-left:max(var(--site-gutter),env(safe-area-inset-left));padding-right:max(var(--site-gutter),env(safe-area-inset-right));padding-bottom:max(0px,env(safe-area-inset-bottom));}
  .footer-bottom{flex-direction:column;align-items:flex-start!important;gap:8px;}
  .mobile-login-menu summary{min-height:44px;}
  .mobile-login-links a{min-height:44px;display:flex!important;align-items:center;}
  .conviction-visual img{aspect-ratio:4/3;}
}

/* Very small phones */
@media (max-width:390px){
  :root{--site-gutter:14px;--header-logo-w:124px;--header-logo-h:40px;--footer-logo-w:146px;}
  .hero{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));}
  .pill{font-size:9px;padding:8px 10px;}
  .button{padding-left:14px;padding-right:14px;}
  .contact-methods>a,.contact-methods>div{grid-template-columns:1fr auto!important;gap:8px;}
  .contact-methods span{grid-column:1/-1;}
}

/* Landscape phones and short screens */
@media (max-height:540px) and (orientation:landscape){
  .site-header{position:relative;}
  .hero{min-height:auto;padding-top:36px;padding-bottom:36px;}
  .mobile-menu>div{max-height:72vh;max-height:72svh;overflow:auto;}
}

/* Touch behavior */
@media (hover:none){
  .button:hover,.support-logo:hover,.journey-grid article:hover,.platform-links a:hover{transform:none!important;}
  a,button,summary,input,select,textarea{touch-action:manipulation;}
}

/* Accessibility */
:focus-visible{outline:3px solid color-mix(in srgb,var(--green) 70%,white);outline-offset:3px;}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}
  .logo-track{animation:none!important;}
}
