:root{color-scheme:light;--paper:#fff;--ink:#171717;--muted:#60636d;--accent:#bd3b16;--rule:#666971;font-family:Arial,Helvetica,sans-serif;font-size:16px;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:hover,.text-button:hover{color:var(--accent)}[hidden]{display:none!important}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.skip{position:absolute;left:1rem;top:-6rem;padding:1rem;background:white;z-index:20}.skip:focus{top:1rem}
.page{max-width:1640px;min-height:100svh;margin:auto;padding:0 clamp(24px,4.2vw,70px);display:flex;flex-direction:column}.header{padding:23px 0 25px;min-height:132px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:clamp(22px,2.2vw,36px);min-width:0}.brand-link{display:block;flex:0 0 auto}.brand-logo{display:block;width:clamp(210px,22vw,340px);height:auto}.brand-signature{margin:0;line-height:1.5;font-size:1rem}.brand-signature span,.brand-signature em{display:block;white-space:nowrap}.brand-signature em{color:var(--muted);font-size:.875rem;font-weight:400}.header nav{display:flex;align-items:center;gap:42px;font-size:1.125rem;flex-shrink:0}.text-button{padding:12px 0;background:none;border:0}.contact{white-space:nowrap;padding:12px 0}.contact span{padding-left:4px}
.main{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.92fr);gap:clamp(30px,3.5vw,60px);align-items:center;padding:64px 0 72px;flex:1}.intro{padding-bottom:45px}.intro h1{font:400 clamp(46px,5.7vw,94px)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.055em;margin:0 0 32px}.intro-copy{font-size:clamp(20px,1.8vw,28px);line-height:1.45;margin:0}.about-link{display:inline-block;font-size:1.125rem;line-height:1.4;background:none;border:0;border-bottom:1px solid currentColor;padding:8px 0 5px;margin-top:60px}.about-link:hover{color:var(--accent)}.selection{min-width:0}.eyebrow{font-size:.9375rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin:0 0 16px;line-height:1.4}
.video-frame{position:relative;aspect-ratio:16/9;width:100%;background:#191919}.player-host,.player-host iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.poster-button{display:block;position:absolute;inset:0;width:100%;height:100%;overflow:hidden;color:white;background:#f05c2c}.poster-button:hover{color:white}.poster-button img{display:block;width:100%;height:100%;object-fit:contain;background:#171717}.play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:84px;height:84px;border:2px solid white;border-radius:50%;background:rgb(0 0 0 / 26%);transition:background .18s,transform .18s}.play-icon svg{width:25px;height:29px;margin-left:5px}.poster-button:hover .play-icon{background:rgb(0 0 0 / 44%);transform:translate(-50%,-50%) scale(1.04)}.video-title{font-size:clamp(18px,1.55vw,24px);font-weight:500;line-height:1.4;margin:17px 0 0;overflow-wrap:anywhere}.rotation-caption{font-size:1rem;line-height:1.5;color:var(--muted);margin:9px 0 0}.player-help{font-size:.875rem;line-height:1.55;color:var(--muted);margin:14px 0 0}.player-help a{text-decoration:underline;text-underline-offset:4px}
.footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--rule);padding:27px 0 32px;font-size:.875rem;line-height:1.6}.footer p{margin:0}.footer a{white-space:nowrap}dialog{width:calc(100% - 40px);max-width:650px;max-height:calc(100svh - 40px);padding:30px 42px 42px;border:1px solid #d6d6d6;background:var(--paper);color:var(--ink);overflow-y:auto}dialog::backdrop{background:rgb(0 0 0 / 45%)}body:has(dialog[open]){overflow:hidden}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.dialog-top img{display:block;width:200px;max-width:70%;height:auto}.dialog-close{flex-shrink:0;font-size:2rem;line-height:1;width:44px;height:44px;background:none;border:0}dialog h2{font:400 clamp(40px,4vw,58px)/1.12 Georgia,'Times New Roman',serif;letter-spacing:-.045em;margin:0 0 24px}dialog p{font-size:1.125rem;line-height:1.65;margin:0 0 18px}.dialog-contact{display:inline-block;font-size:1.125rem;margin-top:18px;padding-bottom:5px;border-bottom:1px solid currentColor}
@media(min-width:1550px){.main{padding-top:85px;padding-bottom:85px}}
@media(max-width:1100px){.header{gap:24px}.brand{gap:18px}.brand-logo{width:240px}.header nav{font-size:1rem;gap:25px}.main{gap:30px;padding:55px 0}.intro h1{font-size:clamp(42px,5.5vw,60px)}.intro-copy{font-size:1.25rem}.about-link{font-size:1rem;margin-top:42px}}
@media(max-width:850px){.header{align-items:flex-start}.brand{flex-direction:column;align-items:flex-start;gap:7px}.brand-signature{padding-left:10px}.header nav{padding-top:14px}.main{gap:25px}.intro h1{font-size:clamp(35px,5.4vw,46px)}}
@media(max-width:760px){.page{padding:0 24px}.header{padding:17px 0 23px;min-height:auto;gap:12px}.brand-logo{width:205px}.brand-signature{font-size:.875rem;padding-left:9px}.brand-signature em{font-size:.875rem}.header nav{gap:20px;font-size:.9375rem;padding-top:8px}.main{display:flex;flex-direction:column;align-items:stretch;gap:35px;padding:36px 0 42px}.intro{padding:0}.intro h1{font-size:clamp(48px,9vw,66px);line-height:1.05;margin-bottom:20px}.intro-copy{font-size:1.125rem;line-height:1.45}.about-link{margin-top:18px;font-size:1rem}.eyebrow{font-size:.875rem;margin-bottom:12px}.video-title{font-size:1.125rem;margin-top:13px}.rotation-caption{font-size:.875rem;margin-top:8px}.play-icon{width:62px;height:62px}.play-icon svg{width:20px;height:24px}.footer{flex-direction:column;gap:10px;padding:22px 0 26px;font-size:.875rem}.footer a{font-size:.9375rem}dialog{padding:24px}dialog p{font-size:1rem}}
@media(max-width:480px){.header{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;row-gap:7px;align-items:center}.brand{display:contents}.brand-link{grid-column:1;grid-row:1;min-width:0}.brand-logo{width:200px;max-width:100%}.brand-signature{grid-column:1/-1;grid-row:2;margin-top:0}.brand-signature span,.brand-signature em{white-space:normal}.header nav{grid-column:2;grid-row:1;gap:0;padding:0}.header nav .text-button{display:none}}
@media(max-width:350px){.page{padding:0 18px}.brand-logo{width:180px}.header nav{font-size:.875rem}.intro h1{font-size:44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
