:root{--red:#e3000f;--black:#000;--white:#fff;--gray:#ededed;--page:min(1180px,calc(100vw - 48px))}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;color:#000;background:#fff;font:17px/1.65 "Open Sans",Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.reading-progress{position:fixed;z-index:40;top:0;right:0;left:0;height:5px;background:#000;transform:scaleX(0);transform-origin:left center;will-change:transform}
.site-header{position:sticky;z-index:20;top:0;display:grid;min-height:76px;grid-template-columns:1fr auto 1fr;align-items:center;padding:8px max(24px,calc((100vw - 1180px)/2));border-bottom:1px solid #c5000d;background:rgba(227,0,15,.98);box-shadow:0 4px 18px #00000020}.brand,.footer-name{font-weight:900;letter-spacing:.02em}.site-header .brand{color:#fff}.site-header .brand span{color:#fff}.header-logo{justify-self:center}.header-logo img{width:clamp(150px,18vw,240px);height:auto}.burger-menu{position:relative;justify-self:end}.burger-menu summary{display:grid;width:58px;height:52px;cursor:pointer;list-style:none;place-content:center;gap:5px;color:#fff}.burger-menu summary::-webkit-details-marker{display:none}.burger-menu summary>span:not(.menu-label){display:block;width:29px;height:3px;background:#fff;transition:transform .2s,opacity .2s}.burger-menu .menu-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.burger-menu[open] summary>span:nth-child(1){transform:translateY(8px) rotate(45deg)}.burger-menu[open] summary>span:nth-child(2){opacity:0}.burger-menu[open] summary>span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.burger-menu nav{position:absolute;top:calc(100% + 10px);right:0;display:flex;width:min(330px,calc(100vw - 28px));align-items:stretch;flex-direction:column;gap:0;padding:10px 0;border:2px solid #000;background:#fff;color:#000;box-shadow:8px 8px 0 #000;font-size:.95rem;font-weight:900}.burger-menu nav a{padding:12px 22px;border-bottom:1px solid #ddd}.burger-menu nav a:last-child{border-bottom:0}.burger-menu nav a:hover,.burger-menu nav a:focus-visible{color:#fff;background:var(--red)}
.hero{display:grid;min-height:calc(100svh - 76px);grid-template-columns:1.02fr .98fr;background:var(--red);color:#fff}.hero-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:72px clamp(32px,4.5vw,90px) 86px}.eyebrow,.section-kicker{margin:0 0 20px;font-size:.79rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.hero h1,.section h2,.engagement h2,.quote-band blockquote,.contact h2{margin:0;font-weight:900;letter-spacing:-.055em;line-height:.94}.hero h1{font-size:clamp(4rem,8.6vw,8rem);text-transform:uppercase}.hero h1 span{color:#000}.hero-lead{max-width:38rem;margin:34px 0 0;font-size:clamp(1.05rem,1.45vw,1.28rem);font-weight:600}.hero-visual{display:flex;min-height:650px;align-items:center;justify-content:center;background:#fff}.hero-visual img{width:95%;height:auto;max-height:95%;object-fit:contain}
.section{width:var(--page);margin:auto;padding:88px 0}.intro{display:grid;grid-template-columns:1fr 4fr;gap:42px}.section h2,.engagement h2,.contact h2{font-size:clamp(2.8rem,5.7vw,5.7rem)}.intro h2,.experience h2,.gallery h2,.team h2,.contact h2{color:var(--red)}.two-column{columns:2;column-gap:48px;margin-top:42px}.prose p{margin:0 0 1.35em}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding-top:0}.facts article{min-height:200px;padding:26px 24px;border-top:5px solid var(--red);border-right:1px solid #bbb}.facts h3{margin:0 0 28px;font-size:1rem}.facts p{font-size:.95rem}
.quote-band{padding:82px max(24px,calc((100vw - 1180px)/2));color:#fff;background:var(--red)}.quote-band blockquote{max-width:1180px;font-size:clamp(2.5rem,5vw,5rem)}.experience{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw}.lead{margin-top:32px;font-size:1.25rem;font-weight:800}
.engagement{display:grid;grid-template-columns:1fr 1fr;background:#000;color:#fff}.engagement-card{padding:78px max(48px,calc((100vw - 1180px)/2));padding-right:7vw}.engagement h2{color:var(--red)}.engagement-list{margin-top:42px}.engagement-list p{padding:17px 0;border-top:1px solid #555}.engagement-list strong{display:block;color:var(--red)}.engagement>img{width:95%;height:auto;align-self:center;justify-self:center;object-fit:contain}
.gallery .section-kicker{color:#000}.swipe-hint{display:flex;align-items:center;justify-content:center;gap:12px;margin:32px 0 18px;color:var(--red);font-size:.82rem;font-weight:900;letter-spacing:.06em;text-align:center;text-transform:uppercase}.swipe-hint span{font-size:1.3rem}.gallery-track{display:grid;grid-template-columns:repeat(4,minmax(260px,1fr));gap:16px;overflow-x:auto;padding-bottom:14px;scroll-snap-type:x mandatory}.gallery-track img{width:100%;height:auto;align-self:start;object-fit:contain;scroll-snap-align:start}.contact{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;border-top:12px solid var(--red)}.contact .eyebrow{color:#000}.contact-link{display:inline-block;border-bottom:3px solid var(--red);font-weight:800}
.team{border-top:1px solid #ccc}.team-heading{max-width:900px}.team-heading .section-kicker{color:#000}.team-heading>p:last-child{max-width:800px;margin:32px 0 0;font-size:1.08rem}.team-heading a{font-weight:900;text-decoration:underline;text-decoration-color:var(--red);text-decoration-thickness:3px;text-underline-offset:3px}.team-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(28px,5vw,70px);align-items:center;margin-top:48px}.team-photo{margin:0;overflow:hidden;background:#fff}.team-photo img{width:100%;height:auto}.team-members h3{margin:0 0 8px;font-size:1.5rem}.team-members ul{display:grid;gap:8px;margin:26px 0 0;padding:0;list-style:none}.team-members li{padding:9px 14px;border-left:5px solid var(--red);background:var(--gray);font-weight:800}.candidate-link{display:block;text-align:left;text-decoration:underline;text-decoration-color:var(--red);text-decoration-thickness:3px;text-underline-offset:3px}.candidate-link:hover,.candidate-link:focus-visible{color:var(--red)}
footer{padding:70px max(24px,calc((100vw - 1180px)/2)) 28px;color:#fff;background:var(--red)}.footer-main{display:flex;align-items:end;justify-content:space-between;gap:48px;padding-bottom:60px}.footer-main img{width:min(460px,50vw)}.legal-links{display:flex;gap:28px;padding:18px 0;border-top:1px solid #ffffffaa;border-bottom:1px solid #ffffffaa;font-weight:900}.legal-links a:hover,.legal-links a:focus-visible{text-decoration:underline}.copyright{font-size:.75rem}
.legal-page{min-height:100svh;background:#fff}.back-link{display:inline-block;margin:28px max(20px,calc((100vw - 900px)/2));padding-bottom:2px;border-bottom:3px solid var(--red);font-weight:900}.legal-content{width:min(900px,calc(100vw - 40px));margin:40px auto 100px}.legal-content h1{margin:0 0 50px;color:var(--red);font-size:clamp(3rem,8vw,6rem);font-weight:900;letter-spacing:-.055em;line-height:.95}.legal-content h2{margin:42px 0 8px;font-size:1.45rem}.legal-content h3{margin:30px 0 6px;font-size:1.1rem}.legal-content a{font-weight:800;text-decoration:underline;text-decoration-color:var(--red);text-decoration-thickness:2px}.legal-content .legal-note{margin-top:50px;padding:20px;border-left:6px solid var(--red);background:var(--gray)}
:focus-visible{outline:3px solid #000;outline-offset:4px}
.back-to-top{position:fixed;z-index:18;right:22px;bottom:22px;display:flex;width:50px;height:50px;align-items:center;justify-content:center;border:2px solid #fff;border-radius:50%;background:#000;color:#fff;box-shadow:0 5px 18px #0004;font-size:1.65rem;font-weight:900;line-height:1}.back-to-top span{display:block;transition:transform .22s ease}.back-to-top.is-scrolling-down span{transform:translateY(2px)}.back-to-top:hover,.back-to-top:focus-visible{background:var(--red)}
.reveal-ready .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal-ready .reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){.hero,.intro,.experience,.engagement,.contact{grid-template-columns:1fr}.hero-copy{min-height:68svh;padding:64px 24px}.hero-visual{height:72svh}.facts{grid-template-columns:1fr 1fr}.engagement>img{margin:24px 0}.gallery-track{grid-template-columns:repeat(4,75vw)}.team-grid{grid-template-columns:1fr}.team-members{text-align:center}}
@media(max-width:620px){:root{--page:calc(100vw - 36px)}body{font-size:16px}.site-header{min-height:66px;grid-template-columns:1fr auto 1fr;padding:6px 10px}.brand{font-size:.78rem;line-height:1.15}.header-logo img{width:clamp(92px,30vw,125px)}.burger-menu summary{width:44px;height:44px}.burger-menu summary>span:not(.menu-label){width:25px}.hero-copy{min-height:610px}.hero h1{font-size:clamp(3.5rem,18vw,5.2rem)}.hero-visual{height:610px}.section{padding:62px 0}.section h2,.engagement h2,.contact h2{font-size:clamp(2.6rem,13vw,4.2rem)}.two-column{columns:1;margin-top:30px}.facts{grid-template-columns:1fr}.facts article{min-height:0;border-right:0}.quote-band{padding:62px 18px}.engagement-card{padding:62px 24px}.engagement>img{width:95%}.team-grid{margin-top:34px}.team-members ul{gap:6px}.back-to-top{right:14px;bottom:14px;width:46px;height:46px}.footer-main{align-items:start;flex-direction:column}.footer-main img{width:100%}.legal-links{align-items:flex-start;flex-direction:column;gap:8px}.legal-content{margin-top:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-ready .reveal{opacity:1;transform:none;transition:none}.back-to-top span{transition:none}}
