@font-face{font-family:Barlow;src:url('/assets/barlow-regular.ttf') format('truetype');font-style:normal;font-weight:400 500;font-display:swap}
@font-face{font-family:Barlow;src:url('/assets/barlow-bold.ttf') format('truetype');font-style:normal;font-weight:600 900;font-display:swap}
@font-face{font-family:Barlow;src:url('/assets/barlow-black-italic.ttf') format('truetype');font-style:italic;font-weight:800 900;font-display:swap}
:root{--red:#ed0025;--red-dark:#ac001b;--ink:#f2f2f1;--muted:#b9b9bc;--line:#353537;--black:#08090a;--font:Barlow,'Arial Narrow',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--black);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.35;letter-spacing:0}body:has(dialog[open]){overflow:hidden}button,a,input,select{font:inherit}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}h1,h2,h3,p{margin:0}h2,h3{font-weight:700;text-transform:uppercase}h2{font-size:26px;line-height:1.05}button:focus-visible,a:focus-visible{outline:2px solid #fff;outline-offset:5px}button{letter-spacing:0}svg{width:20px;height:20px;flex-shrink:0;stroke-width:2}a,button{-webkit-tap-highlight-color:transparent}.skip-link{position:fixed;top:-80px;left:20px;background:var(--red);padding:10px 20px;z-index:100}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:20;background:rgba(5,6,7,.97);border-bottom:1px solid var(--line)}.header-main{display:flex;align-items:center;gap:24px;padding:9px 28px;min-height:86px}.brand-pair{display:flex;align-items:center;gap:16px;flex-shrink:0}.rich-logo{width:132px;height:64px;object-fit:contain;filter:hue-rotate(275deg) saturate(1.3)}.tm-logo{width:145px;height:64px;object-fit:contain}.brand-divider{height:48px;width:1px;background:#494949}.main-nav{display:flex;align-self:stretch;align-items:center;gap:24px;margin-left:8px;white-space:nowrap}.main-nav a{position:relative;text-transform:uppercase;font-size:13px;font-weight:700;height:100%;display:flex;align-items:center;transition:color .2s}.main-nav a:hover,.main-nav a.active{color:var(--red)}.main-nav a.active::after{content:'';height:2px;position:absolute;bottom:4px;left:0;right:0;background:var(--red)}.header-details{display:flex;align-items:center;margin-left:auto}.header-details>a{display:flex;align-items:center;gap:8px;border-left:1px solid var(--line);padding:0 12px}.header-details svg{color:var(--red);width:22px;height:22px}.header-phone small{display:block;font-size:10px;text-transform:uppercase;line-height:1.3}.header-phone strong{display:block;font-size:16px;white-space:nowrap}.header-address{font-size:12px;line-height:1.4}.header-social{border-left:1px solid var(--line);padding-left:12px;display:grid;gap:4px}.header-social a{display:flex;align-items:center;gap:7px;font-size:11px}.header-social svg{width:17px;height:17px}.header-actions{display:flex;align-items:center;gap:12px}.language{display:flex;gap:6px;align-items:center;font-size:14px}.language button{background:none;border:0;padding:5px 0;font-weight:700}.language span{color:#717175}.language button[aria-pressed=true]{color:var(--red)}.icon-button{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:#121316;border:1px solid #46464a;border-radius:4px}.menu-toggle,.mobile-phones{display:none}.hero{position:relative;min-height:390px;display:flex;align-items:center;isolation:isolate;overflow:hidden;border-bottom:1px solid #444}.hero-background,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover;object-position:65% 52%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.78) 26%,rgba(0,0,0,.1) 62%,rgba(0,0,0,.05)),linear-gradient(0deg,rgba(0,0,0,.4),transparent 35%)}.hero-content{padding:38px 42px 42px;position:relative;width:750px;max-width:68%}.eyebrow{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:3px}.eyebrow span{color:#8e8e8e;padding:0 6px}.hero h1{font-size:66px;font-weight:900;font-style:italic;text-transform:uppercase;line-height:.93;margin:9px 0 8px;text-shadow:0 2px 4px #0007}.hero h1>span{display:block;color:#f3f3f3}.hero h1 em{display:block;color:var(--red);font-style:inherit}.hero h2{font-size:27px;line-height:1.15;font-weight:700}.hero-disciplines{display:flex;align-items:center;gap:18px;text-transform:uppercase;font-size:13px;letter-spacing:2px;margin-top:17px}.hero-disciplines b{font-weight:400;color:#b4b4b4}.cta-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:11px 18px;border:1px solid #8b8b8b;border-radius:5px;font-size:15px;line-height:1.15;font-weight:700;text-transform:uppercase;background:transparent;color:#fff;transition:background .2s,border-color .2s}.button svg{width:20px;height:20px}.button svg:last-child{margin-left:2px;width:17px}.button.primary{background:linear-gradient(#f90024,#b9001a);border-color:var(--red);box-shadow:inset 0 1px 0 #ff626955}.button.primary:hover{background:#ef1233}.button.outline:hover{background:#fff1;border-color:var(--red)}.hero .button.outline{border-color:#ad2034;background:#05050577;min-width:155px}.button.small{min-height:33px;padding:8px 13px;font-size:11px;gap:8px}.button.small svg{width:14px;height:14px}.hero-location{position:absolute;bottom:13px;right:28px;display:flex;align-items:center;gap:6px;font-size:12px;text-transform:uppercase;color:#dadada}.hero-location svg{width:14px;height:14px;color:var(--red)}.section-band{display:grid;grid-template-columns:190px minmax(0,1fr);gap:26px;padding:18px 40px;border-bottom:1px solid #474749;background:linear-gradient(135deg,#13141688,transparent 30%),#08090a}.section-intro{padding:10px 0;display:flex;flex-direction:column;align-items:flex-start}.red-rule{display:block;width:36px;height:3px;background:var(--red);margin:11px 0 12px;flex-shrink:0}.section-intro p{font-size:13px;text-transform:uppercase;max-width:170px;color:#c4c4c6;line-height:1.35;margin-bottom:20px}.section-intro .button{margin-top:auto}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.service-card{text-align:left;position:relative;padding:0 0 16px;background:linear-gradient(145deg,#151517,#070708);border:1px solid #515153;border-radius:5px;overflow:hidden;transition:border-color .2s,background .2s;min-width:0}.service-card:hover{border-color:var(--red);background:#171719}.service-card>img{display:block;width:100%;height:110px;object-fit:cover;object-position:center 45%;mask-image:linear-gradient(#000 75%,transparent)}.service-card:nth-child(2)>img{object-position:center 62%}.service-icon{position:absolute;left:12px;top:87px;display:flex;align-items:center;justify-content:center;width:31px;height:31px;border:1px solid var(--red);border-radius:3px;color:var(--red);background:#07090be6}.service-icon svg{width:23px;height:23px;stroke-width:1.7}.service-copy{padding:12px 32px 0 12px}.service-copy h3{font-size:18px;line-height:1.03;margin:0 0 6px}.service-copy p{font-size:14px;line-height:1.2;color:#d0d0d1;max-width:260px}.service-arrow{position:absolute;bottom:16px;right:10px;color:var(--red);height:24px;width:24px}.work{grid-template-columns:120px minmax(0,1fr);gap:22px;padding-top:14px;padding-bottom:14px}.work .section-intro{padding-top:0;padding-bottom:0}.work .section-intro p{margin-bottom:12px}.work-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;align-items:stretch}.work-photo{padding:0;position:relative;border:1px solid #67676a;border-radius:4px;overflow:hidden;background:#111;min-width:0;height:145px}.work-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 50%;display:block;transition:transform .3s}.work-photo:hover>img{transform:scale(1.05)}.work-photo>span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000c);padding:28px 9px 8px;display:flex;justify-content:space-between;align-items:center;font-size:12px;text-align:left}.work-photo>span svg{width:14px;height:14px;opacity:.75}.work-photo:hover{border-color:var(--red)}.bottom-band{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(400px,1fr);border-bottom:1px solid #353537}.about{position:relative;padding:26px 40px;overflow:hidden;isolation:isolate;min-height:260px}.about-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:80% 43%;z-index:-2}.about::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#050607 0%,#050607f2 24%,#050607b3 50%,#05060711 100%);z-index:-1}.about-content{max-width:400px}.about-content p{font-size:16px;line-height:1.25;color:#d6d6d8;margin-bottom:12px}.about .button{margin-top:4px}.contact{padding:25px 28px;border-left:1px solid #555;min-width:0;background:linear-gradient(140deg,#121315,#08090b 65%)}.contact-subtitle{display:flex;align-items:center;gap:7px;margin:7px 0 18px}.contact-subtitle .red-rule{margin:0;width:30px;height:2px}.contact-subtitle p{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#bfc0c4}.contact-businesses{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.contact-businesses>div+div{border-left:1px solid #737378;padding-left:22px}.contact-businesses h3{font-size:17px;font-weight:400;margin-bottom:3px;letter-spacing:1.5px}.contact-businesses a{display:flex;gap:8px;align-items:center;font-size:15px;min-width:0;margin-top:7px}.contact-businesses a>span{overflow-wrap:anywhere}.contact-businesses svg,.contact-location>svg:first-child{color:var(--red);width:22px;height:22px}.contact-businesses .contact-phone{font-size:22px;font-weight:700;white-space:nowrap;margin-top:0}.contact-businesses .contact-email{font-size:13px}.contact-email svg{width:18px;height:18px}.contact-location{display:flex;gap:12px;align-items:center;padding:12px 0 0;margin-top:15px;border-top:1px solid #6a6a70;font-size:16px;line-height:1.25}.contact-location>svg:last-child{margin-left:auto;width:18px;height:18px}footer{padding:13px 40px;display:flex;justify-content:space-between;gap:16px;color:#818185;font-size:12px}.mobile-contact-bar{display:none}dialog{background:#101113;color:var(--ink);border:1px solid #55585b;border-radius:6px;padding:30px;max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 24px 100px #000a}dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}.contact-dialog{width:min(650px,calc(100% - 28px))}.dialog-close{position:absolute;right:14px;top:14px}.contact-dialog .eyebrow{font-size:11px;color:#aaa;margin:4px 35px 10px 0;letter-spacing:1px}.contact-dialog h2{font-size:32px;margin-right:35px;text-transform:none}.dialog-context{color:#ccc;font-size:16px;margin-top:10px}.dialog-context:empty{display:none}.dialog-businesses{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.dialog-businesses>div{padding:17px 0;border-top:2px solid #505057}.dialog-businesses>div.recommended{border-top-color:var(--red)}.dialog-businesses h3{font-size:22px}.dialog-businesses p{font-size:14px;color:#aaa;min-height:19px}.dialog-businesses a{display:flex;align-items:center;gap:8px;width:fit-content;margin-top:10px;font-size:16px;overflow-wrap:anywhere}.dialog-businesses a.dialog-phone{font-size:28px;font-weight:700;color:#fff}.dialog-phone svg{color:var(--red)}.dialog-businesses a svg{width:17px;height:17px}.dialog-address{display:flex;align-items:center;gap:12px;padding-top:18px;margin-top:12px;border-top:1px solid #48484f;font-size:17px}.dialog-address>svg:first-child{color:var(--red)}.dialog-address>svg:last-child{margin-left:auto}.gallery-dialog{width:min(920px,calc(100% - 28px));padding:14px 18px}.gallery-top{display:flex;justify-content:space-between;align-items:center;color:#aaa;font-size:14px}.gallery-stage{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.gallery-stage>img{display:block;max-width:calc(100% - 100px);width:auto;max-height:65dvh;object-fit:contain;margin:auto}.gallery-stage .icon-button{flex-shrink:0}.gallery-bottom{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:16px 6px 8px}.gallery-bottom h2{font-size:23px;text-transform:none}.gallery-bottom>div>span{font-size:14px;color:#bbb}.gallery-bottom>a{display:flex;align-items:center;gap:5px;font-size:15px;color:#fff}.gallery-bottom>a svg{color:var(--red)}
@media(min-width:1401px){.hero h1{font-size:80px}}
@media(min-width:1700px){.header-main{gap:30px;padding:10px 42px}.brand-pair{gap:22px}.rich-logo{width:168px}.tm-logo{width:164px}.main-nav{gap:28px}.header-details>a{padding:0 17px}.header-social{padding-left:17px}.hero{min-height:440px}.hero-content{padding-left:48px}.hero h1{font-size:84px}.hero h2{font-size:31px}.service-card>img{height:140px}.service-icon{top:116px}.service-copy h3{font-size:21px}.service-copy p{font-size:16px}.work-photo{height:165px}.about{min-height:290px}}
@media(max-width:1400px){.header-main{gap:17px;padding:9px 23px}.brand-pair{gap:10px}.rich-logo{width:112px}.tm-logo{width:120px}.main-nav{gap:16px;margin-left:0}.header-address{display:none!important}.header-details>a{padding:0 10px}.header-social{padding-left:10px}.hero h1{font-size:62px}.hero-content{max-width:65%}.section-band{padding-left:28px;padding-right:28px;grid-template-columns:155px minmax(0,1fr);gap:20px}.work{grid-template-columns:115px minmax(0,1fr)}.service-grid{gap:10px}.service-copy{padding-right:23px}.service-copy h3{font-size:17px}.service-copy p{font-size:13px}.bottom-band{grid-template-columns:1.35fr 1fr}.about{padding-left:28px}.contact{padding:25px 22px}.contact-businesses{gap:12px}.contact-businesses>div+div{padding-left:12px}.contact-businesses .contact-phone{font-size:20px}}
@media(max-width:1120px){.header-social{display:none}.header-details{margin-left:auto}.header-main{gap:16px}.brand-pair{gap:8px}.rich-logo{width:100px}.tm-logo{width:108px}.main-nav{gap:15px}.header-phone strong{font-size:14px}.header-phone small{font-size:9px}.header-details svg{width:18px}.hero-content{max-width:68%}.hero h1{font-size:58px}.hero h2{font-size:24px}.section-band{grid-template-columns:130px minmax(0,1fr);gap:16px;padding-left:22px;padding-right:22px}.service-card>img{height:98px}.service-icon{top:75px}.service-copy h3{font-size:16px}.service-copy p{font-size:13px}.work{grid-template-columns:110px minmax(0,1fr)}.work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.work-photo{height:130px}.bottom-band{grid-template-columns:1.1fr 1fr}.contact-businesses{grid-template-columns:1fr;gap:14px}.contact-businesses>div+div{padding:0;border:0}.contact-businesses .contact-phone{font-size:23px}.about-content{max-width:310px}.about{padding:28px 22px}}
@media(max-width:900px){html{scroll-padding-top:120px}.header-main{min-height:72px;padding:5px 20px;flex-wrap:wrap;gap:0}.brand-pair{gap:14px}.rich-logo{width:111px;height:58px}.tm-logo{width:122px;height:58px}.brand-divider{height:38px}.header-details{display:none}.header-actions{margin-left:auto;gap:18px}.menu-toggle{display:inline-flex}.language{gap:8px}.main-nav{display:none;order:4;width:100%;padding:12px 0;gap:0;justify-content:space-between;border-top:1px solid #333;margin-top:5px}.main-nav.open{display:flex}.main-nav a{font-size:15px;padding:5px 0}.main-nav a.active::after{bottom:0}.mobile-phones{display:flex;justify-content:center;gap:38px;border-top:1px solid #27272b;background:#101113;padding:7px 18px}.mobile-phones>a{display:flex;align-items:center;gap:8px;font-size:12px;color:#a9a9ad}.mobile-phones svg{width:15px;height:15px;color:var(--red)}.mobile-phones strong{display:inline-block;margin-left:5px;color:#eee;font-size:14px}.hero{min-height:420px}.hero-content{padding:42px 25px;max-width:75%;width:620px}.hero h1{font-size:56px}.hero h2{font-size:22px}.hero-background{object-position:67% center}.hero-shade{background:linear-gradient(90deg,#000e 0%,#000b 40%,#0002 90%)}.hero-disciplines{gap:12px;font-size:12px;letter-spacing:1px}.hero-location{right:22px}.services{grid-template-columns:1fr;gap:15px;padding-top:24px;padding-bottom:24px}.services .section-intro{display:grid;grid-template-columns:1fr auto;align-items:center;padding:0}.services .section-intro h2{grid-column:1}.services .section-intro .red-rule{grid-column:1;grid-row:2;margin:8px 0}.services .section-intro p{max-width:400px;grid-column:1;grid-row:3;margin:0}.services .section-intro .button{grid-column:2;grid-row:1/4}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-card>img{height:140px}.service-icon{top:116px}.service-copy h3{font-size:21px}.service-copy p{font-size:16px}.work{grid-template-columns:130px minmax(0,1fr);padding-top:23px;padding-bottom:23px}.work-grid{gap:9px}.work-photo{height:125px}.bottom-band{grid-template-columns:1fr}.about{min-height:270px;padding:28px}.about-content{max-width:430px}.contact{border-left:0;border-top:1px solid #444;padding:25px 28px}.contact-businesses{grid-template-columns:1fr 1fr;gap:25px}.contact-businesses>div+div{border-left:1px solid #555;padding-left:25px}.contact-location{max-width:600px}.contact-businesses .contact-phone{font-size:24px}footer{padding:16px 25px}}
@media(max-width:600px){html{scroll-padding-top:110px}.header-main{min-height:64px;padding:4px 15px}.brand-pair{gap:8px}.rich-logo{width:88px;height:48px}.tm-logo{width:97px;height:48px}.brand-divider{height:31px}.header-actions{gap:10px}.language{font-size:13px;gap:5px}.icon-button{width:35px;height:35px}.mobile-phones{justify-content:space-between;gap:8px;padding:7px 15px}.mobile-phones>a{font-size:10px;gap:5px}.mobile-phones strong{font-size:13px;margin-left:3px}.mobile-phones svg{width:13px;height:13px}.main-nav a{font-size:14px}.hero{min-height:530px;align-items:flex-start}.hero-content{padding:39px 20px 190px;max-width:100%;width:100%}.hero h1{font-size:46px;line-height:.98;margin-top:10px}.hero .eyebrow{font-size:11px;letter-spacing:2px}.hero h2{font-size:21px;max-width:330px;margin-top:8px}.hero-disciplines{gap:10px;font-size:11px;letter-spacing:1px;flex-wrap:wrap;margin-top:15px}.hero-background{object-position:64% bottom;object-fit:cover}.hero-shade{background:linear-gradient(180deg,#000f 0%,#000d 34%,#0003 66%,#0005),linear-gradient(90deg,#0007,transparent)}.hero .cta-row{gap:8px;margin-top:22px}.hero .button{font-size:13px;padding:11px 13px;min-height:44px;gap:7px}.hero .button.outline{min-width:120px}.hero .button svg{width:17px}.hero-location{font-size:10px;bottom:11px;right:18px}.section-band{padding-left:18px;padding-right:18px}.services .section-intro{grid-template-columns:1fr}.services .section-intro .button{grid-column:1;grid-row:4;margin-top:15px;justify-self:start}.section-intro h2{font-size:26px}.services .section-intro p{font-size:13px}.service-grid{gap:10px}.service-card>img{height:112px}.service-icon{top:91px;left:10px;width:29px;height:29px}.service-copy{padding:15px 20px 0 10px}.service-copy h3{font-size:18px;line-height:1.05}.service-copy p{font-size:14px;line-height:1.2}.service-arrow{width:17px;right:4px;bottom:12px}.work{display:block}.work .section-intro{display:grid;grid-template-columns:1fr auto;align-items:start;margin-bottom:16px}.work .section-intro .red-rule{grid-column:1;margin:8px 0}.work .section-intro p{grid-column:1;grid-row:3;max-width:none;margin:0}.work .section-intro .button{grid-column:2;grid-row:1/4;align-self:center}.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.work-photo{height:130px}.work-photo>span{font-size:10px;padding:18px 5px 5px}.work-photo>span svg{width:11px;height:11px}.about{padding:28px 20px;min-height:300px}.about-content{max-width:310px}.about::after{background:linear-gradient(90deg,#050607f5,#050607c4 55%,#05060755)}.about-content p{font-size:16px}.contact{padding:25px 20px}.contact-businesses{gap:13px;grid-template-columns:1fr 1fr}.contact-businesses>div+div{padding-left:13px}.contact-businesses h3{font-size:17px;letter-spacing:1px}.contact-businesses a{font-size:13px;gap:5px}.contact-businesses svg{width:17px;height:17px}.contact-businesses .contact-phone{font-size:21px;gap:4px}.contact-businesses .contact-email{font-size:12px}.contact-email svg{width:13px;height:13px}.contact-subtitle{margin-bottom:19px}.contact-location{font-size:16px}.contact-location>svg{width:20px}footer{padding:16px 20px 85px;font-size:12px;flex-direction:column;gap:5px}.mobile-contact-bar{position:fixed;bottom:0;left:0;right:0;z-index:18;display:grid;grid-template-columns:1fr 1.35fr;background:#08090af5;border-top:1px solid #555;padding:9px 12px calc(9px + env(safe-area-inset-bottom));gap:8px}.mobile-contact-bar button{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #555;border-radius:4px;background:transparent;font-size:14px;font-weight:700;text-transform:uppercase;min-height:42px}.mobile-contact-bar button:last-child{background:var(--red);border-color:var(--red)}.mobile-contact-bar svg{width:17px;height:17px}.contact-dialog{padding:24px 20px}.contact-dialog h2{font-size:28px}.dialog-businesses{grid-template-columns:1fr;gap:4px;margin-top:15px}.dialog-businesses>div{padding:12px 0}.dialog-businesses p{min-height:0}.dialog-businesses h3{font-size:22px}.dialog-businesses a.dialog-phone{font-size:26px}.dialog-businesses a{margin-top:6px}.dialog-address{font-size:16px}.gallery-dialog{padding:9px;width:calc(100% - 16px)}.gallery-stage{gap:5px}.gallery-stage>.icon-button{width:30px;height:36px}.gallery-stage>img{max-width:calc(100% - 70px);max-height:63dvh}.gallery-bottom{align-items:flex-start;gap:12px;padding:13px 3px}.gallery-bottom h2{font-size:20px}.gallery-bottom>a{font-size:12px;max-width:100px}.gallery-bottom>a svg{width:15px}.gallery-bottom>div>span{font-size:12px}}
@media(max-width:359px){.hero h1{font-size:39px}.rich-logo{width:75px}.tm-logo{width:81px}.header-actions{gap:7px}.hero .button{padding:10px;font-size:12px}.service-grid{grid-template-columns:1fr}.service-card>img{height:155px}.service-icon{top:132px}.contact-businesses{grid-template-columns:1fr;gap:18px}.contact-businesses>div+div{padding:0;border:0}.work-photo{height:110px}}
[hidden]{display:none!important}
.portfolio{padding:42px 40px 36px;border-bottom:1px solid #474749;background:#0c0d0f}
.portfolio-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.portfolio-heading .eyebrow{color:#aaa;font-size:11px;letter-spacing:2px;margin-bottom:8px}
.portfolio-heading h2{font-size:36px}.portfolio-heading .red-rule{margin-bottom:0}
#portfolio-count{font-size:15px;color:var(--muted);white-space:nowrap}
.portfolio-filters{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.portfolio-filters button{border:1px solid #48484d;border-radius:4px;background:#111215;padding:9px 16px;min-height:40px;font-size:15px}
.portfolio-filters button:hover{border-color:var(--red)}
.portfolio-filters button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}
.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.portfolio-photo{display:block;text-align:left;padding:0;min-width:0;border:1px solid #393a3d;border-radius:5px;overflow:hidden;background:#111215;transition:border-color .2s}
.portfolio-photo:hover{border-color:var(--red)}
.portfolio-image{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:3/4;background:#060708;overflow:hidden}
.portfolio-image img{display:block;width:100%;height:100%;object-fit:contain}
.portfolio-image>svg{position:absolute;right:10px;top:10px;padding:7px;width:30px;height:30px;border-radius:3px;background:#000a;color:#fff;opacity:.8}
.portfolio-caption{display:grid;gap:5px;padding:13px 15px;border-top:1px solid #303135;min-height:75px}
.portfolio-caption strong{font-weight:700;font-size:18px;line-height:1.2;overflow-wrap:anywhere}
.portfolio-caption small{font-size:13px;color:#aaa}
.portfolio-more{display:flex;justify-content:center;margin-top:24px}
.portfolio-more:has(button[hidden]){display:none}
@media(max-width:1200px){.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portfolio{padding-left:28px;padding-right:28px}}
@media(max-width:760px){.portfolio{padding:30px 20px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.portfolio-filters{gap:7px;margin:18px 0}.portfolio-filters button{padding:8px 12px;font-size:14px}.portfolio-heading h2{font-size:30px}.portfolio-caption{padding:12px;min-height:80px}.portfolio-caption strong{font-size:17px}}
@media(max-width:480px){.portfolio-grid{grid-template-columns:1fr;gap:18px}.portfolio-heading{align-items:flex-start}.portfolio-heading .eyebrow{font-size:10px;letter-spacing:1px}.portfolio-heading h2{font-size:28px}#portfolio-count{font-size:13px;padding-top:3px}.portfolio-caption{min-height:0}.portfolio-filters button{font-size:14px}.portfolio-image{aspect-ratio:4/5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
