:root{--navy:#071c3b;--blue:#123864;--mid:#55718e;--pale:#e9f0f7;--white:#fff;--line:rgba(7,28,59,.18);--sans:"DM Sans",sans-serif;--display:"Syne",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--navy);font-family:var(--sans)}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{cursor:pointer}.site-header{position:sticky;top:0;z-index:50;height:82px;padding:0 clamp(22px,4vw,68px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);backdrop-filter:blur(18px)}.wordmark{font:800 25px/1 var(--display);letter-spacing:-.06em;width:max-content}.wordmark span{font:600 8px/1 var(--sans);vertical-align:top;margin-left:3px}.main-nav{display:flex;height:100%;align-items:center;gap:32px;font-size:13px;font-weight:600}.main-nav a{height:100%;display:flex;align-items:center;gap:8px;position:relative}.main-nav a:after{content:"";height:2px;position:absolute;left:0;right:100%;bottom:0;background:var(--navy);transition:.25s}.main-nav a:hover:after,.main-nav a.active:after{right:0}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px var(--pale)}.header-actions{justify-self:end;display:flex;align-items:center;gap:18px}.link-button{border:0;background:none;font-size:13px;font-weight:600}.pill-button,.white-button,.outline-button{border:1px solid var(--navy);background:var(--navy);color:var(--white);border-radius:999px;padding:13px 21px;font-size:13px;font-weight:700;transition:transform .2s,background .2s,color .2s}.pill-button:hover,.white-button:hover{transform:translateY(-2px)}.menu-toggle{display:none;border:0;background:none;font-weight:700}.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:1fr 1fr;position:relative}.hero-image{position:relative;overflow:hidden;min-height:660px;background:var(--pale)}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:56% center;display:block}.image-note{position:absolute;left:30px;bottom:28px;background:var(--white);padding:10px 14px;border-radius:99px;font-size:11px;font-weight:700}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(32px,6vw,105px)}.kicker{font-size:10px;line-height:1.2;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin:0 0 25px}.hero h1,.gallery-hero h1{font:700 clamp(60px,7.2vw,118px)/.82 var(--display);letter-spacing:-.085em;margin:0}.hero h1 span,.gallery-hero h1 span{color:var(--mid);font-style:italic}.hero-intro{font-size:17px;line-height:1.65;max-width:545px;margin:38px 0;color:var(--blue)}.hero-search{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:12px;border-bottom:2px solid var(--navy);padding:10px 0}.hero-search svg{width:21px;fill:none;stroke:currentColor;stroke-width:1.8}.hero-search input,.gallery-search input{border:0;outline:0;background:none;min-width:0}.hero-search button,.gallery-search button{border:0;background:none;font-weight:700}.hero-meta{margin-top:21px;display:flex;gap:22px;flex-wrap:wrap;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--mid)}.marquee{overflow:hidden;border-block:1px solid var(--line);padding:18px 0;white-space:nowrap}.marquee div{font:700 13px/1 var(--display);letter-spacing:.13em;word-spacing:20px}.marquee i{font-style:normal;color:var(--mid)}.section{padding:clamp(80px,10vw,150px) clamp(22px,5vw,76px)}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;max-width:1420px;margin:auto}.section h2,.final-cta h2,.gallery-submit h2{font:700 clamp(48px,5.8vw,88px)/.92 var(--display);letter-spacing:-.07em;margin:0}.section-aside{max-width:410px}.section-aside p,.salary-copy>p,.career-intro>p{line-height:1.7;color:var(--mid)}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid;padding-bottom:3px}.filter-bar{max-width:1420px;margin:65px auto 18px;display:flex;gap:9px;overflow:auto}.filter{border:1px solid var(--line);background:var(--white);border-radius:999px;padding:9px 17px;white-space:nowrap;font-size:12px;font-weight:600}.filter:hover,.filter.active{background:var(--navy);color:var(--white)}.job-list{border-top:1px solid var(--navy);max-width:1420px;margin:auto}.job-row{display:grid;grid-template-columns:60px 1.4fr 1fr .75fr 80px;align-items:center;gap:25px;padding:26px 0;border-bottom:1px solid var(--line);transition:padding .2s,background .2s}.job-row:hover{padding-inline:15px;background:var(--pale)}.job-row[hidden]{display:none}.job-index{font-size:10px;color:var(--mid)}.job-title p{font-size:11px;margin:0 0 8px;color:var(--mid)}.job-title h3{font:600 clamp(21px,2.3vw,34px)/1 var(--display);letter-spacing:-.04em;margin:0}.job-tags{display:flex;gap:7px;flex-wrap:wrap}.job-tags span{border:1px solid var(--line);padding:5px 9px;border-radius:99px;font-size:10px}.job-pay{font-weight:700}.job-pay small{display:block;color:var(--mid);font-weight:400;margin-top:4px}.save-button{background:none;border:0;font-size:11px;font-weight:700}.save-button.saved{color:var(--mid)}.empty-message{text-align:center;padding:50px;color:var(--mid)}.career-section{background:var(--navy);color:var(--white);display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw}.light-kicker{color:#a9bdd1}.career-intro h2 em{font-weight:500;color:#a9bdd1}.career-intro>p{max-width:460px;color:#a9bdd1}.career-grid{border-top:1px solid rgba(255,255,255,.25)}.career-card{position:relative;display:block;padding:27px 55px 27px 0;border-bottom:1px solid rgba(255,255,255,.25);transition:padding .2s,background .2s}.career-card:hover{padding-left:18px;background:rgba(255,255,255,.05)}.career-card span{font-size:9px;letter-spacing:.14em;color:#a9bdd1}.career-card h3{font:600 clamp(28px,3vw,45px)/1 var(--display);margin:10px 0}.career-card p{margin:0;color:#a9bdd1;font-size:12px}.career-card strong{position:absolute;right:4px;top:50%;font-size:20px}.salary-section{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:8vw}.salary-copy>p{max-width:480px;margin:28px 0}.outline-button{background:transparent;color:var(--navy)}.outline-button:hover{background:var(--navy);color:var(--white)}.salary-visual{border:1px solid var(--navy);padding:30px}.salary-top{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;font-size:9px;letter-spacing:.15em}.salary-line{display:grid;grid-template-columns:145px 1fr 55px;gap:14px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);font-size:12px}.salary-line b{height:8px;background:linear-gradient(to right,var(--navy) var(--w),var(--pale) var(--w));border-radius:9px}.salary-visual>small{display:block;margin-top:18px;color:var(--mid)}.membership{background:var(--blue);color:var(--white);display:grid;grid-template-columns:1fr 1fr;gap:7vw}.membership-card{border-top:1px solid rgba(255,255,255,.35);padding-top:30px}.membership-card>div>span{font-size:9px;letter-spacing:.15em}.price{color:#b8c9d9}.price strong{font:700 80px/1 var(--display);color:var(--white)}.membership-card ul{list-style:none;padding:22px 0;margin:28px 0;border-block:1px solid rgba(255,255,255,.25)}.membership-card li{padding:8px 0}.membership-card li:before{content:"↗";margin-right:12px}.white-button{background:var(--white);color:var(--navy);border-color:var(--white)}.final-cta{padding:130px 25px;text-align:center;background:var(--pale)}.final-cta h2{font-size:clamp(64px,9vw,135px);margin-bottom:42px}.inverse{background:var(--white);color:var(--navy)}footer{padding:35px clamp(22px,5vw,76px);border-top:1px solid var(--line);display:grid;grid-template-columns:auto 1fr auto auto;gap:40px;align-items:center;font-size:11px}footer p{color:var(--mid)}footer div{display:flex;gap:22px}.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;transition:.25s}.modal.open{opacity:1;visibility:visible}.modal-backdrop{position:absolute;inset:0;border:0;background:rgba(7,28,59,.72);backdrop-filter:blur(6px)}.modal-panel{position:relative;background:var(--white);width:min(100%,520px);padding:48px}.modal-panel h2{font:700 52px/.95 var(--display);letter-spacing:-.06em;margin:0 0 18px}.modal-panel>p:not(.kicker){color:var(--mid)}.modal-close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:30px}.modal-panel form{display:grid;gap:14px;margin:28px 0}.modal-panel label{font-size:11px;font-weight:700}.modal-panel input{width:100%;border:0;border-bottom:1px solid var(--navy);padding:13px 0;outline:0}.modal-panel small{color:var(--mid)}.toast{position:fixed;z-index:200;left:50%;bottom:25px;transform:translate(-50%,100px);padding:13px 20px;background:var(--navy);color:white;border-radius:99px;font-size:12px;transition:.3s}.toast.show{transform:translate(-50%,0)}
/* Gallery */.gallery-hero{padding:110px clamp(22px,5vw,76px) 85px;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}.gallery-hero>div{max-width:500px}.gallery-hero>div>p{line-height:1.7;color:var(--mid)}.gallery-search{margin-top:32px;display:grid;grid-template-columns:1fr auto;border-bottom:2px solid var(--navy);padding:10px 0}.gallery-controls{padding:22px clamp(22px,5vw,76px);border-block:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.gallery-controls>div{display:flex;gap:8px;overflow:auto}.gallery-controls>span{font-size:10px;letter-spacing:.1em;white-space:nowrap}.portfolio-grid{padding:42px clamp(22px,5vw,76px) 120px;display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.portfolio-card{grid-column:span 4;position:relative}.portfolio-card:nth-child(5n+1),.portfolio-card:nth-child(5n+4){grid-column:span 5}.portfolio-card:nth-child(5n+2),.portfolio-card:nth-child(5n+5){grid-column:span 3}.portfolio-card:nth-child(5n+3){grid-column:span 4}.portfolio-image{height:clamp(300px,37vw,580px);overflow:hidden;background:var(--pale);position:relative}.portfolio-card:nth-child(even) .portfolio-image{height:clamp(260px,30vw,470px)}.portfolio-image img{width:100%;height:100%;display:block;object-fit:cover;filter:grayscale(1) sepia(.15) hue-rotate(165deg) saturate(.85);transition:transform .5s,filter .5s}.portfolio-card:hover img{transform:scale(1.025);filter:grayscale(.35) sepia(.12) hue-rotate(165deg) saturate(.8)}.portfolio-initial{height:100%;display:grid;place-items:center;font:700 clamp(70px,9vw,150px)/1 var(--display);color:var(--blue)}.portfolio-info{padding:14px 0 28px;display:grid;grid-template-columns:1fr auto;gap:10px}.portfolio-info h2{font:600 clamp(20px,2vw,30px)/1 var(--display);letter-spacing:-.04em;margin:0}.portfolio-info p{grid-column:1;margin:5px 0 0;font-size:11px;color:var(--mid)}.portfolio-info span{grid-column:2;grid-row:1/3;font-size:16px}.portfolio-card[hidden]{display:none}.gallery-loading{grid-column:1/-1;text-align:center;padding:120px 0;color:var(--mid)}.gallery-loading span{display:inline-block;width:6px;height:6px;margin-left:8px;border-radius:50%;background:var(--navy);animation:pulse 1s infinite}.gallery-submit{background:var(--navy);color:var(--white);padding:110px clamp(22px,5vw,76px);display:flex;align-items:end;justify-content:space-between;gap:40px}.gallery-submit h2{margin:0}.gallery-empty{grid-column:1/-1;text-align:center;padding:100px 0}.gallery-empty h2{font:600 40px/1 var(--display)}@keyframes pulse{50%{opacity:.2}}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto;height:auto;min-height:72px}.menu-toggle{display:block}.main-nav,.header-actions{display:none}.site-header.open{padding-block:20px;align-items:start}.site-header.open .main-nav{display:flex;grid-column:1/-1;order:3;flex-direction:column;align-items:flex-start;gap:0;margin-top:18px}.site-header.open .main-nav a{padding:12px 0}.site-header.open .header-actions{display:flex;grid-column:1/-1;order:4;margin-top:15px;justify-self:start}.hero{grid-template-columns:1fr}.hero-image{min-height:52vh;order:2}.hero-copy{padding:70px 24px}.section-head,.gallery-submit{display:block}.section-aside{margin-top:35px}.career-section,.salary-section,.membership,.gallery-hero{grid-template-columns:1fr}.job-row{grid-template-columns:35px 1fr auto}.job-tags{display:none}.job-pay{font-size:12px}.save-button{grid-column:3}.career-grid{margin-top:20px}.gallery-hero{padding-top:70px}.gallery-hero>div{margin-top:35px}.portfolio-card,.portfolio-card:nth-child(n){grid-column:span 6}.gallery-submit .white-button{margin-top:35px}footer{grid-template-columns:1fr auto}footer p{display:none}footer div{grid-row:2;grid-column:1/-1}footer small{grid-column:2;grid-row:1}}
@media(max-width:560px){.hero h1,.gallery-hero h1{font-size:58px}.hero-search{grid-template-columns:20px 1fr}.hero-search button{grid-column:2;justify-self:start;padding:10px 0}.hero-meta{gap:10px}.section{padding-inline:20px}.section h2{font-size:45px}.job-row{grid-template-columns:25px 1fr}.job-pay,.save-button{grid-column:2}.job-pay{margin-top:-12px}.save-button{justify-self:start;padding:0}.salary-line{grid-template-columns:95px 1fr 42px}.gallery-controls{align-items:flex-start;flex-direction:column}.portfolio-grid{padding-inline:14px;gap:12px}.portfolio-card,.portfolio-card:nth-child(n){grid-column:span 12}.portfolio-image,.portfolio-card:nth-child(even) .portfolio-image{height:110vw}.gallery-submit h2{font-size:48px}.modal-panel{padding:38px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.wordmark{display:inline-flex;align-items:center;gap:10px}.wordmark img{width:38px;height:38px;display:block;border-radius:9px;object-fit:cover}.wordmark span{align-self:flex-start;margin-left:-7px;margin-top:1px}
@media(max-width:560px){.wordmark{font-size:21px;gap:8px}.wordmark img{width:34px;height:34px;border-radius:8px}}
