*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font-display:"Barlow Condensed","Cormorant Garamond",serif;--font-headline:"Barlow Condensed",sans-serif;--font-body:"Jost",sans-serif;--dark:#0a0a0a;--muted:#0006}.hero-root{color:#1a1a1a;width:100%;height:100vh;min-height:680px;font-family:var(--font-body);background-color:#fff;position:relative;overflow:hidden}.hero-bg-blob{background:radial-gradient(ellipse 55% 65% at 72% 50%,color-mix(in srgb,var(--accent,#c8a96e)8%,transparent),transparent 70%);pointer-events:none;z-index:0;transition:background .9s;position:absolute;inset:0}.hero-main{z-index:10;grid-template-columns:1fr 1fr;align-items:center;gap:2rem;width:100%;height:100%;padding:0 3.5rem;display:grid;position:relative}.hero-text{flex-direction:column;gap:1.4rem;animation:.85s cubic-bezier(.22,1,.36,1) .55s both slideFromLeft;display:flex}@keyframes slideFromLeft{0%{opacity:0;transform:translate(-80px)}to{opacity:1;transform:translate(0)}}.hero-tag{letter-spacing:.25em;text-transform:uppercase;color:var(--accent,#c8a96e);align-items:center;gap:.8rem;font-size:.7rem;font-weight:400;animation:.85s cubic-bezier(.22,1,.36,1) .6s both slideFromLeft;display:flex}.tag-line{background:var(--accent,#c8a96e);width:30px;height:1px;display:block}.hero-headline{font-family:var(--font-headline);letter-spacing:-.01em;color:#1a1a1a;text-transform:uppercase;flex-direction:column;font-size:clamp(2.8rem,5.8vw,6rem);font-weight:100;line-height:.95;display:flex}.headline-line{opacity:0;animation:.8s cubic-bezier(.22,1,.36,1) both headlineLineLeft;animation-delay:calc(.65s + var(--i,0)*.12s);display:block;transform:translate(-60px)}.headline-line:nth-child(odd){color:#747373;font-weight:200}.headline-line:nth-child(2n){color:#292929;font-weight:500}@keyframes headlineLineLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}.hero-sub{color:#666;opacity:0;max-width:380px;font-size:.88rem;font-weight:300;line-height:1.75;animation:.9s cubic-bezier(.22,1,.36,1) .9s both slideFromLeft}.hero-actions{opacity:0;align-items:center;gap:1.5rem;margin-top:.5rem;animation:.9s cubic-bezier(.22,1,.36,1) 1.05s both slideFromLeft;display:flex}.btn-primary{background:var(--accent,#c8a96e);color:#0a0a0a;font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;border:none;padding:.85rem 2.2rem;font-size:.72rem;font-weight:500;transition:background .3s,color .3s,transform .2s,box-shadow .3s}.btn-primary:hover{color:#fff;background:#1a1a1a;transform:translateY(-2px);box-shadow:0 12px 32px #00000026}.btn-ghost{color:#888;font-family:var(--font-body);letter-spacing:.12em;cursor:pointer;text-underline-offset:4px;background:0 0;border:none;font-size:.72rem;font-weight:300;text-decoration:underline;transition:color .3s}.btn-ghost:hover{color:#1a1a1a}.hero-visual{justify-content:center;align-items:center;height:75vh;animation:.9s cubic-bezier(.22,1,.36,1) 50ms both visualSlide;display:flex;position:relative}@keyframes visualSlide{0%{opacity:0;transform:translate(120px)}to{opacity:1;transform:translate(0)}}.circle-bg{aspect-ratio:1;background:color-mix(in srgb,var(--accent,#871515)100%,transparent);border-radius:50%;width:68%;transition:background .9s;animation:1.1s cubic-bezier(.22,1,.36,1) .1s both circleEnterRight,6s ease-in-out 1.5s infinite circlePulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes circleEnterRight{0%{opacity:0;transform:translate(60%,-50%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes circlePulse{0%,to{transform:translate(-50%,-50%)scale(1)}50%{transform:translate(-50%,-50%)scale(1.04)}}.circle-ring{aspect-ratio:1;border:1px solid color-mix(in srgb,var(--accent,#c8a96e)30%,transparent);border-radius:50%;width:78%;transition:border-color .9s;animation:1.3s cubic-bezier(.22,1,.36,1) .15s both circleEnterRight,20s linear 1.8s infinite ringRotate;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes ringRotate{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}.circle-ring:after{content:"";background:var(--accent,#c8a96e);border-radius:50%;width:6px;height:6px;position:absolute;top:-3px;left:50%;transform:translate(-50%)}.hero-img-wrap{z-index:2;width:100%;height:88%;position:relative;overflow:hidden}.hero-img{object-fit:contain;object-position:top center;filter:grayscale(8%);width:100%;height:100%;padding-top:100px;transition:filter .9s;display:block}.img-overlay{background:linear-gradient(#0000 60%,#ffffff40 100%);transition:background .9s;position:absolute;inset:0}.float-badge{z-index:5;font-family:var(--font-display);align-items:baseline;gap:3px;display:flex;position:absolute;bottom:8%;right:8%}.badge-num{color:#2a2a2a;opacity:.7;font-size:3.5rem;font-weight:300;line-height:1}.badge-slash,.badge-total{color:#aaa;font-size:1rem}.hero-footer{z-index:20;justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:2rem;left:3.5rem;right:3.5rem}.slide-dots{align-items:center;gap:.6rem;display:flex}.dot{cursor:pointer;background:#0000002e;border:none;width:24px;height:1px;padding:0;transition:all .4s}.dot.active{background:var(--accent,#c8a96e);width:44px}.progress-bar{background:#0000001a;flex:1;max-width:240px;height:1px;margin:0 2rem;position:relative;overflow:hidden}.progress-fill{background:var(--accent,#c8a96e);width:0%;height:100%;transition:background .9s;animation:5s linear both progressAnim}@keyframes progressAnim{0%{width:0%}to{width:100%}}.scroll-hint{color:#aaa;letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:.7rem;font-size:.65rem;display:flex}.scroll-line{background:#ccc;width:32px;height:1px;position:relative;overflow:hidden}.scroll-line:after{content:"";background:#1a1a1a;animation:2s ease-in-out infinite scrollLineAnim;position:absolute;inset:0;transform:translate(-100%)}@keyframes scrollLineAnim{0%{transform:translate(-100%)}50%{transform:translate(0%)}to{transform:translate(100%)}}@media (max-width:900px){.hero-main{grid-template-rows:auto 1fr;grid-template-columns:1fr;gap:0;padding:6rem 2rem 2rem}.hero-visual{order:-1;height:48vh}.hero-text{gap:1rem}.hero-headline{font-size:clamp(2rem,7vw,3.5rem)}.hero-header{padding:1.5rem 2rem}.hero-footer{left:2rem;right:2rem}.nav-overlay{padding:3rem 2.5rem}.nav-footer{left:2.5rem;right:2.5rem}.nav-item a{font-size:clamp(2rem,8vw,3.5rem)}.hero-sub{max-width:100%;font-size:.82rem}}@media (max-width:480px){.hero-actions{flex-direction:column;align-items:flex-start;gap:1rem}.progress-bar,.scroll-hint{display:none}}
:root{--blue-accent:#4a90c4;--red-accent:#c0392b;--dark-text:#3a3a3a;--mid-text:#555;--light-bg:#fff;--letter-color:#e8e8e8}.brand-section{z-index:2;background:var(--light-bg);background:var(--light-bg);opacity:0;border-radius:12vw 12vw 0 0;align-items:center;width:100%;min-height:100vh;font-family:Jost,sans-serif;transition:opacity 1.2s cubic-bezier(.22,1,.36,1),transform 1.4s cubic-bezier(.22,1,.36,1),border-radius 1.4s cubic-bezier(.22,1,.36,1);display:flex;position:relative;overflow:hidden;transform:translateY(120px)scale(.92);box-shadow:0 -30px 60px #00000080}.brand-section.in-view{opacity:1;border-radius:0;transform:translateY(0)scale(1)}.bg-letter{color:#ebebeb;-webkit-user-select:none;user-select:none;pointer-events:none;letter-spacing:-.04em;opacity:0;font-family:Cormorant Garamond,serif;font-size:clamp(600px,95vh,1100px);font-weight:300;line-height:.85;transition:opacity 1.2s cubic-bezier(.22,1,.36,1) .25s,transform 1.2s cubic-bezier(.22,1,.36,1) .25s;position:absolute;top:50%;right:-8vw;transform:translateY(-50%)translate(80px)}.brand-section.in-view .bg-letter{opacity:1;transform:translateY(-50%)translate(0)}.open-menu-pill{border:1.5px solid var(--red-accent);color:var(--red-accent);letter-spacing:.18em;cursor:pointer;z-index:10;padding:.55rem 1.2rem;font-family:Jost,sans-serif;font-size:.65rem;font-weight:400;transition:background .25s,color .25s;position:absolute;top:2.2rem;right:2.8rem}.open-menu-pill:hover{background:var(--red-accent);color:#fff}.brand-content{z-index:5;opacity:0;max-width:720px;padding:8rem 6vw 6rem;transition:opacity .9s cubic-bezier(.22,1,.36,1) .35s,transform .9s cubic-bezier(.22,1,.36,1) .35s;position:relative;transform:translate(-60px)}.brand-section.in-view .brand-content{opacity:1;transform:translate(0)}.brand-statement{color:var(--dark-text);margin-bottom:2.5rem;font-family:Cormorant Garamond,serif;font-size:clamp(2rem,3.8vw,3.6rem);font-weight:300;line-height:1.35}.line-plain{color:var(--dark-text)}.line-rotating{font-style:italic;transition:color .3s;animation-duration:.42s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;display:inline-block}.line-rotating.enter{animation-name:wordEnter}.line-rotating.exit{animation-name:wordExit}@keyframes wordEnter{0%{opacity:0;transform:translateY(18px)skewY(2deg)}to{opacity:1;transform:translateY(0)skewY(0)}}@keyframes wordExit{0%{opacity:1;transform:translateY(0)skewY(0)}to{opacity:0;transform:translateY(-14px)skewY(-2deg)}}.brand-name{color:var(--red-accent);font-style:italic}.circle-arrow{border:1.5px solid var(--dark-text);cursor:pointer;width:52px;height:52px;color:var(--dark-text);background:0 0;border-radius:50%;justify-content:center;align-items:center;margin-top:.5rem;transition:border-color .3s,color .3s,transform .3s;display:flex}.circle-arrow svg{width:22px;height:22px}.circle-arrow:hover{border-color:var(--red-accent);color:var(--red-accent);transform:scale(1.08)translate(3px)}.brand-scroll-hint{opacity:0;align-items:center;gap:.8rem;transition:opacity .8s 1s;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.brand-section.in-view .brand-scroll-hint{opacity:.4}.scroll-line-h{background:var(--mid-text);width:30px;height:1px;display:block}.scroll-label{letter-spacing:.2em;text-transform:uppercase;color:var(--mid-text);font-family:Jost,sans-serif;font-size:.62rem;font-weight:300}@media (max-width:768px){.brand-content{padding:6rem 2rem 5rem}.brand-statement{font-size:clamp(1.6rem,6vw,2.4rem)}.bg-letter{font-size:clamp(320px,80vh,600px);right:-12vw}.open-menu-pill{top:1.5rem;right:1.5rem}}
:root{--red-accent:#c0392b;--dark-text:#2a2a2a;--card-w:clamp(280px,44vw,580px);--card-h:clamp(400px,68vh,760px);--gap:1.4rem;--radius:18px}.spanning-section{background:#fff;width:100%;padding:5rem 0 4rem;font-family:Jost,sans-serif;position:relative;overflow:hidden}.spanning-header{margin-bottom:2.2rem;padding:0 clamp(1.5rem,6vw,5rem)}.spanning-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--dark-text);margin-bottom:.5rem;font-size:.95rem;font-weight:400}.spanning-title{color:var(--dark-text);font-family:Cormorant Garamond,serif;font-size:clamp(2.2rem,4.5vw,4rem);font-weight:600;line-height:1.1}.spanning-title em{color:var(--red-accent);font-style:italic}.cards-viewport{width:100%;padding-left:clamp(1.5rem,6vw,5rem);overflow:hidden}.cards-track{gap:var(--gap);will-change:transform;transition:transform .65s cubic-bezier(.77,0,.175,1);display:flex}.industry-card{flex:0 0 var(--card-w);height:var(--card-h);border-radius:var(--radius);cursor:pointer;transition:transform .4s,box-shadow .4s;position:relative;overflow:hidden}.industry-card:hover{transform:translateY(-6px);box-shadow:0 28px 60px #00000038}.card-img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .7s;position:absolute;inset:0}.industry-card:hover .card-img{transform:scale(1.04)}.card-overlay{z-index:1;background:linear-gradient(#00000014 0%,#00000026 40%,#000000b8 75%,#000000d9 100%);position:absolute;inset:0}.card-num{z-index:2;color:#0000;-webkit-text-stroke:1.5px #ffffffb3;letter-spacing:-.02em;-webkit-user-select:none;user-select:none;font-family:Cormorant Garamond,serif;font-size:clamp(4rem,8vw,7.5rem);font-weight:300;line-height:1;position:absolute;top:1.2rem;left:1.6rem}.card-body{z-index:3;flex-direction:column;gap:.7rem;padding:1.8rem 1.8rem 2rem;display:flex;position:absolute;bottom:0;left:0;right:0}.card-title{color:#fff;letter-spacing:.01em;font-family:Cormorant Garamond,serif;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:400;line-height:1.2}.card-desc{color:#ffffffd1;max-width:340px;font-size:.8rem;font-weight:300;line-height:1.75}.card-arrow{cursor:pointer;color:#fff;background:0 0;border:1.5px solid #fff9;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;margin-top:.3rem;transition:border-color .25s,background .25s,transform .25s;display:flex}.card-arrow svg{width:18px;height:18px}.card-arrow:hover{background:#ffffff26;border-color:#fff;transform:translate(3px)}.spanning-nav{justify-content:flex-end;align-items:center;gap:.7rem;padding:1.8rem clamp(1.5rem,6vw,5rem) 0;display:flex}.nav-arrow{cursor:pointer;width:46px;height:46px;color:var(--dark-text);background:0 0;border:1.5px solid #aaa;border-radius:50%;justify-content:center;align-items:center;transition:border-color .25s,color .25s,transform .25s;display:flex}.nav-arrow svg{width:20px;height:20px}.nav-arrow:hover:not(.disabled){border-color:var(--red-accent);color:var(--red-accent);transform:scale(1.05)}.nav-arrow.disabled{opacity:.3;cursor:default;pointer-events:none}@media (max-width:700px){:root{--card-w:80vw;--card-h:60vw}.cards-viewport{padding-left:1.2rem}.spanning-header{padding:0 1.2rem}.spanning-nav{padding:1.5rem 1.2rem 0}.card-desc{display:none}}
[data-reveal]{will-change:opacity,transform}[data-reveal=fade-up]{opacity:0;transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1);transform:translateY(60px)}[data-reveal=fade-down]{opacity:0;transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);transform:translateY(-45px)}[data-reveal=fade-left]{opacity:0;transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1);transform:translate(-70px)}[data-reveal=fade-right]{opacity:0;transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1);transform:translate(70px)}[data-reveal=scale-in]{opacity:0;transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);transform:scale(.9)}[data-reveal].revealed{opacity:1;transform:none;transition-delay:0s!important}.industry-card[data-reveal=fade-up]{transform:translateY(65px)scale(.97)}.news-card[data-reveal=fade-up]{transition-duration:.95s}.careers-card[data-reveal=scale-in]{transform:scale(.93)translateY(40px)}.csr-card-wrap[data-reveal=scale-in]{transform:scale(.94)translateY(50px)}@keyframes eyebrowWipe{0%{opacity:0;width:0}to{opacity:1;width:100%}}
