/* Portfolio V39: denser brand system, coherent experience visuals and responsive polish. */
:root{--portfolio-ease:cubic-bezier(.16,1,.3,1)}
.logo-section{position:relative;overflow:hidden}
.logo-section::before{content:"";position:absolute;left:50%;top:52%;width:min(82vw,1040px);height:220px;border:1px solid rgba(255,255,255,.06);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.logo-card{position:relative;height:154px;padding:42px 24px 22px;border-radius:22px;background:linear-gradient(145deg,#f8f7f2,#eceee8)!important;isolation:isolate;overflow:hidden}
.logo-card::after{content:"";position:absolute;inset:auto -20% -70% 45%;height:150%;background:radial-gradient(circle,rgba(123,214,174,.13),transparent 64%);pointer-events:none;transition:transform .6s var(--portfolio-ease)}
.logo-card:hover::after{transform:translate(-20%,-12%)}
.logo-card-label{position:absolute;left:18px;top:15px;color:#83837e;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.logo-card.sendx .brand-image{width:min(82%,230px)!important;max-height:66px!important}
.logo-card.astra img{width:54px!important;height:54px!important;border-radius:13px!important}
.logo-card .astra-wordmark{display:flex;align-items:center;gap:12px;color:#111}.logo-card .astra-wordmark strong{font-size:18px;letter-spacing:-.025em;white-space:nowrap}
.logo-card.appknox-brand img{max-width:150px;max-height:54px}
.logo-card.sprinto-current .sprinto-official-logo{max-width:155px!important}
.logo-card:hover img{filter:none!important}
.career-list{--career-progress:0;position:relative}
.career-list::before{background:linear-gradient(to bottom,#111 calc(var(--career-progress) * 100%),#d2d2cc 0)}
.career-card{background:linear-gradient(145deg,rgba(255,255,255,.66),rgba(255,255,255,.3));box-shadow:0 1px 0 rgba(255,255,255,.7) inset;transition:border-color .3s ease,box-shadow .3s ease,transform .45s var(--portfolio-ease)}
.career-card:hover{box-shadow:0 22px 55px rgba(44,44,39,.11),0 1px 0 rgba(255,255,255,.8) inset}
.career-card::after{background:radial-gradient(circle 220px at var(--spot-x,20%) var(--spot-y,20%),rgba(255,255,255,.7),transparent 72%);opacity:0;transform:none;transition:opacity .25s ease}
.career-card:hover::after{opacity:.55;transform:none}
.sendworks-career-visual{display:grid;gap:12px;align-content:start;min-width:0}
.career-brand-lockup{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr);align-items:stretch;gap:8px;padding:10px;border:1px solid var(--paper-line);border-radius:18px;background:rgba(255,255,255,.7)}
.career-brand{display:grid;grid-template-rows:auto 1fr;gap:7px;min-width:0}.career-brand>span{color:#797972;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.career-brand .career-logo{width:100%;height:72px;padding:12px;border:0;background:#fff}
.career-brand.sendx .career-logo img{width:min(100%,126px)!important}
.career-brand.astra .career-logo{display:flex;align-items:center;justify-content:flex-start;gap:8px}.career-brand.astra .career-logo img{width:40px;height:40px;border-radius:10px}.career-brand.astra .career-logo strong{font-size:12px;line-height:1.05;letter-spacing:-.02em}
.brand-bridge{display:grid;place-items:center;align-self:center;width:30px;height:30px;border-radius:50%;background:#111;color:#fff;font-size:16px;font-weight:900}
.sendworks-signal{height:112px!important;padding:24px 18px 30px!important;border-radius:18px!important;background:radial-gradient(circle at 50% 50%,#17222a,#080b0d 70%)!important}
.sendworks-signal::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.6%,rgba(255,255,255,.035) 50%,transparent 50.4%),linear-gradient(0deg,transparent 49.6%,rgba(255,255,255,.035) 50%,transparent 50.4%);background-size:26px 26px;opacity:.45}
.sendworks-signal .signal-node{position:relative;z-index:2}
.signal-legend{position:absolute;z-index:3;left:12px;right:12px;bottom:9px;display:flex;justify-content:space-between;gap:8px;color:#89949b;font-size:7px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.signal-legend span:nth-child(2){color:#a7dfc2;text-align:center}
.career-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}
.career-top time{padding-top:6px}
.career-metrics span{background:rgba(255,255,255,.72)}
.credentials-inline .section-head{grid-template-columns:minmax(130px,.25fr) minmax(0,.75fr);gap:clamp(28px,5vw,72px)}
.credentials-inline .section-title h2{font-size:clamp(38px,4.7vw,68px);max-width:980px}
.contact-section{padding-block:clamp(64px,7vw,92px)}
.contact-grid{gap:clamp(24px,3.5vw,48px)}
.contact-context-art{max-height:330px}
.inquiry-form{box-shadow:0 24px 70px rgba(31,31,27,.08)}
@media(max-width:1120px){.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.logo-card{height:140px}.career-brand-lockup{grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr)}}
@media(max-width:1040px){.career-card{grid-template-columns:minmax(220px,260px) minmax(0,1fr)}.career-top{grid-template-columns:1fr}.career-top time{padding-top:0}.credentials-inline .section-head{grid-template-columns:1fr;gap:12px}}
@media(max-width:760px){.logo-grid{gap:8px}.logo-card{height:118px;padding:36px 14px 14px;border-radius:18px}.logo-card-label{left:13px;top:12px;font-size:8px}.logo-card.astra img{width:42px!important;height:42px!important}.logo-card .astra-wordmark{gap:7px}.logo-card .astra-wordmark strong{font-size:13px}.logo-card.sendx .brand-image{width:min(92%,155px)!important}.logo-card.appknox-brand img{max-width:115px}.logo-card.sprinto-current .sprinto-official-logo{max-width:120px!important}.career-card{grid-template-columns:1fr}.career-brand-lockup{grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr)}.career-brand .career-logo{height:66px}.career-brand.astra .career-logo strong{font-size:11px}.sendworks-signal{height:104px!important}.contact-context-art{max-height:none}}
@media(max-width:430px){.logo-section::before{display:none}.logo-card{height:108px}.logo-card .astra-wordmark strong{max-width:52px;white-space:normal}.career-brand-lockup{grid-template-columns:1fr}.brand-bridge{position:absolute;left:50%;margin-top:69px;transform:translateX(-50%);box-shadow:0 0 0 6px rgba(255,255,255,.9)}.career-brand .career-logo{height:64px}.career-brand.astra{margin-top:4px}.signal-legend{font-size:6px}.career-top h3{font-size:clamp(25px,8.2vw,34px)}}
@media(prefers-reduced-motion:reduce){.logo-card::after,.career-card{transition:none}}
