@import url('/fonts.css');
:root{--font-display:'Outfit',Arial,sans-serif;--font-body:'Manrope',Arial,sans-serif}
body{font-family:var(--font-body);font-size:16px;line-height:1.7;font-weight:400;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.hero h1,.statement h2,.split h2,.dark h2,.matrix h2,.alacarte h2,.standards h2,.process h2,.contact h2,.platforms h3,.grid h3,.checks h3{font-family:var(--font-display);font-weight:600;font-style:normal;letter-spacing:-.035em;line-height:1.1;text-wrap:balance}
.page-hero h1,.hero h1,.hero-copy h1{font-family:var(--font-display);font-weight:600;letter-spacing:-.045em;line-height:1.03}
.showcase-heading h1{font-family:var(--font-display);font-weight:600;letter-spacing:-.04em}
.hero h1 em{font-style:normal;font-weight:600}
h3,.world h3,.project-detail h2{letter-spacing:-.025em}
p,li{ text-wrap:pretty }
.page-hero .lede,.hero>p{font-size:clamp(18px,1.5vw,21px);line-height:1.65}
.eyebrow,.kicker,.division-detail .status,.world .world-meta,.tiers b{font-family:var(--font-display);font-weight:600;letter-spacing:.14em;line-height:1.5}
.site-nav a,header nav a,.footer-links a,button,.btn,.text-link,.actions a,.inquiry-form label{font-family:var(--font-display);font-weight:500;letter-spacing:.01em}
.site-nav a,header nav a{white-space:nowrap;font-size:15px}
button,input,select,textarea{font-family:var(--font-body)}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea{font-family:var(--font-body)!important}
.tiers strong,.platforms span,.process li b,.process li strong,.growth-roadmap li>span,.footer-statement{font-family:var(--font-display);font-style:normal;font-weight:500;letter-spacing:-.025em}
.tiers strong{font-size:clamp(25px,2.4vw,36px);line-height:1.2;font-variant-numeric:tabular-nums}
small,.fine,.section-note,figcaption,.copyright-row,.rights-footer{line-height:1.65}
/* The same image frame and column proportions for every featured original. */
.project-detail-character,#mission-deep-space.project-detail-character{grid-template-columns:minmax(0,1.15fr) minmax(280px,.82fr) minmax(210px,.5fr);gap:24px}
.project-detail>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#08080b}
.project-detail-character .character-loop,#mission-deep-space .character-loop{align-self:center;max-width:100%;margin:0;width:100%}
/* The underline remains visible even when animation or text clipping is unavailable. */
header nav a[aria-current],.footer-links a[aria-current],.rights-footer a[aria-current]{color:#d3b8ff;border-bottom:2px solid #b98bf3;text-underline-offset:6px}
header nav a[aria-current] .nav-label,.footer-links a[aria-current] .nav-label,.rights-footer a[aria-current] .nav-label{color:#d3b8ff;font-weight:600}
@supports(background-clip:text){
 header nav a[aria-current] .nav-label,.footer-links a[aria-current] .nav-label,.rights-footer a[aria-current] .nav-label{background-image:linear-gradient(110deg,#cba7ff 0%,#cba7ff 38%,#fff 48%,#eadfff 52%,#cba7ff 62%,#cba7ff 100%);background-size:250% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:harrico-nav-gleam 4.8s linear infinite}
}
@keyframes harrico-nav-gleam{from{background-position:160% 50%}to{background-position:-90% 50%}}
@media(max-width:1120px){.project-detail-character,#mission-deep-space.project-detail-character{grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr)}.project-detail-character .character-loop,#mission-deep-space .character-loop{grid-column:2;max-width:300px;justify-self:end}}
@media(max-width:760px){.project-detail-character,#mission-deep-space.project-detail-character{grid-template-columns:minmax(0,1fr)}.project-detail-character .character-loop,#mission-deep-space .character-loop{grid-column:1;max-width:320px;width:75%;justify-self:center}.page-hero h1{font-size:clamp(42px,10vw,66px)}.site-nav a{font-size:17px;white-space:normal}.project-detail h2{font-size:clamp(28px,7vw,36px)}}
@media(prefers-reduced-motion:reduce){header nav a[aria-current] .nav-label,.footer-links a[aria-current] .nav-label,.rights-footer a[aria-current] .nav-label{animation:none!important;background:none;color:#d3b8ff;-webkit-text-fill-color:#d3b8ff}}
@media(forced-colors:active){header nav a[aria-current] .nav-label,.footer-links a[aria-current] .nav-label,.rights-footer a[aria-current] .nav-label{animation:none;background:none;color:LinkText;-webkit-text-fill-color:LinkText}}
footer .brand-tagline{font-family:var(--font-display);font-style:normal;font-weight:500;letter-spacing:-.02em}
/* Give the official header lockup more presence without changing its proportions. */
.site-header{height:auto;min-height:146px;gap:30px}
.site-logo,header .official-brand{position:relative;isolation:isolate}
.site-logo img{display:block;width:116px;height:auto}
header:not(.site-header){height:156px}
header .official-brand img{height:132px;width:auto}
.site-logo::after,header .official-brand::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 40%,#bba1e6 47%,#fff 50%,#bba1e6 53%,transparent 60%);background-size:250% 100%;background-position:160% 50%;mask-image:url('/assets/harrico-official-logo.jpeg?v=20261019-wide-h');mask-mode:luminance;mask-size:contain;mask-position:center;mask-repeat:no-repeat;animation:harrico-nav-gleam 4.8s linear infinite;opacity:.8}
/* The legacy Partnerships footer needs its own explicit rows. */
.partnerships-footer{display:grid;grid-template-columns:170px minmax(0,1fr);gap:24px 42px;align-items:center;text-align:left}
.partnerships-footer .official-brand{grid-column:1;grid-row:1 / 3;justify-self:start}
.partnerships-footer .official-brand img{width:150px;height:auto}
.partnerships-footer nav{grid-column:2;display:flex;flex-wrap:wrap;gap:12px 24px;min-width:0;line-height:1.65;font-size:15px}
.partnerships-footer nav a{display:inline-block;padding:4px 0}
.partnerships-footer .brand-tagline{grid-column:2;margin:0;line-height:1.3}
.partnerships-footer .copyright{grid-column:1 / -1;margin:0;padding-top:24px;border-top:1px solid #3b3543;text-align:left;line-height:1.7}
.partnerships-footer .rights-footer{grid-column:1 / -1;max-width:none;min-width:0;margin:0;padding:0;border:0;text-align:left;overflow-wrap:break-word}
.partnerships-footer .rights-footer p{max-width:1100px;margin:0 0 12px;line-height:1.7}
.company-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center}
.company-hero-copy{min-width:0}
.company-hero h1{font-size:clamp(48px,5.5vw,82px)}
.company-hero-character{margin:0;min-width:0;align-self:center;background:#000;overflow:hidden}
.company-hero-character video{display:block;width:100%;height:auto;aspect-ratio:666 / 510;object-fit:contain;object-position:center;background:#000}
@media(min-width:761px) and (max-width:1400px){.site-nav{flex-wrap:wrap;justify-content:flex-end;gap:6px 18px!important}}
@media(max-width:900px){header:not(.site-header) nav{top:156px}.company-hero-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.company-hero h1{font-size:clamp(42px,6vw,56px)}}
@media(max-width:760px){.site-header{min-height:126px;height:126px}.site-logo img{width:96px;height:auto}.site-nav{top:126px}.company-hero-layout{grid-template-columns:1fr;gap:8px}.company-hero h1{font-size:clamp(42px,10vw,66px)}.company-hero-character{width:min(100%,560px);justify-self:center}.company-hero-character video{height:auto}}
@media(max-width:580px){header:not(.site-header){height:136px}header .official-brand img{height:112px}header:not(.site-header) nav{top:136px}.partnerships-footer{grid-template-columns:minmax(0,1fr);gap:22px}.partnerships-footer .official-brand,.partnerships-footer nav,.partnerships-footer .brand-tagline,.partnerships-footer .copyright,.partnerships-footer .rights-footer{grid-column:1;grid-row:auto}.partnerships-footer nav{gap:10px 22px}.partnerships-footer .official-brand img{width:130px;height:auto}}
@media(prefers-reduced-motion:reduce){.site-logo::after,header .official-brand::after{animation:none;display:none}}
#partner-nav{gap:18px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){#partner-nav{align-items:stretch;flex-wrap:nowrap;justify-content:flex-start}#partner-nav a{white-space:normal;min-height:40px;display:flex;align-items:center}}
