/* Client audit: warm editorial layout, evidence and restrained technical geometry. */
.project-art.forma { background:radial-gradient(ellipse at 60% 35%,#af8050,#553722 60%,#281b12); isolation:isolate; overflow:hidden; }
.project-art.forma::before,.project-art.forma::after { display:none; }
.aplisens-cover-image { position:absolute; width:100%; height:116%; object-fit:contain; left:23%; top:3%; filter:drop-shadow(-14px 18px 18px #1a0d0666); }
.aplisens-cover-word { position:absolute; left:7%; top:34%; font-size:clamp(20px,2.2vw,32px); letter-spacing:0; color:#ffdfac; }
.audit-hero { position:relative; min-height:440px; height:54vw; max-height:570px; border-radius:28px; overflow:hidden; isolation:isolate; }
.audit-hero .detail-art { position:absolute; inset:0; width:100%; height:100%; margin:0; border-radius:0; }
.audit-hero .project-art { position:absolute; inset:0; width:100%; height:100%; transform:none; border-radius:0; }
.audit-hero .aplisens-cover-image { width:75%; height:110%; left:41%; top:0; }
.audit-hero .aplisens-cover-word { display:none; }
.audit-hero-copy { position:absolute; top:32%; left:6%; width:58%; pointer-events:none; }
.audit-hero-copy h1 { font-size:clamp(36px,5vw,68px); font-weight:400; line-height:1.1; margin:16px 0 24px; }
.audit-hero-copy > p:last-child { max-width:340px; font-size:24px; line-height:1.4; color:#ffe6c4; }
.audit-intro { display:grid; grid-template-columns:1fr 1fr; gap:40px; padding:8px 0 24px; }
.aplisens-case h2 { font-size:25px; font-weight:400; }
.audit-intro p,.audit-status p { font-size:16px; line-height:1.8; color:#ebd2b8; margin:0; }
.audit-diagram { max-width:850px; margin:24px auto 64px; padding:24px; background:#ffebd208; border-radius:20px; }
.audit-diagram img { max-height:none; }
.audit-method { margin:24px 0; display:grid; gap:16px; }
.audit-method > div { display:grid; grid-template-columns:130px 1fr; gap:24px; background:#ffebd209; padding:24px; border-radius:16px; }
.audit-method dt { font-size:16px; color:#ffd9a3; font-weight:600; }
.audit-method dd { margin:0; font-size:16px; line-height:1.7; color:#ebd2b8; }
.audit-categories { display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:0; margin:24px 0; }
.audit-categories li { background:#ffebd210; color:#ffe4bf; padding:8px 16px; border-radius:30px; font-size:14px; line-height:1.5; }
.audit-evidence > h3 { margin-top:40px; }
.audit-evidence > p { font-size:16px; line-height:1.8; max-width:790px; color:#ebd2b8; }
.aplisens-case .audit-node { background:#553c25!important; border-radius:14px; color:#ffdfb3; outline:1px solid #b88b5c; outline-offset:-1px; }
.aplisens-case .is-current-step .audit-node { outline-width:3px; }
.aplisens-case .case-stage:nth-of-type(2) .audit-node { background:#813c20!important; }
.aplisens-case .case-stage:nth-of-type(3) .audit-node { background:#60504b!important; }
.audit-mockups { display:grid; grid-template-columns:1.6fr 1fr; gap:24px; align-items:center; }
.audit-mockups img { max-height:400px; }
.audit-status { padding:32px; border-radius:20px; background:#ffebd20c; margin-top:32px; }
.aplisens-case .case-summary dl { grid-template-columns:.6fr 1.2fr 1fr 1fr; }
.about-copy .cv-reference { margin-top:24px; }
.about-copy > p:first-child { font-size:20px; line-height:1.7; color:#ffe4c2; }
.about-copy > p { max-width:650px; }
.about-content > .background-notes { gap:24px; margin-top:48px; }
.background-notes > div { padding:24px; background:#ffebd209; }
.tool-item img { object-fit:contain; }
@media(max-width:700px){
 .audit-hero { height:480px; min-height:0; border-radius:22px; }
 .audit-hero-copy { top:8%; left:7%; width:86%; }
 .audit-hero-copy h1 { font-size:36px; }
 .audit-hero-copy > p:last-child { font-size:20px; max-width:220px; }
 .audit-hero .aplisens-cover-image { height:67%; width:95%; left:29%; top:37%; }
 .audit-intro { grid-template-columns:1fr; gap:24px; }
 .aplisens-case h2 { font-size:22px; }
 .aplisens-case .case-summary dl { grid-template-columns:1fr; }
 .audit-method > div { grid-template-columns:1fr; gap:8px; padding:16px; }
 .audit-diagram { padding:8px; margin-bottom:40px; }
 .audit-mockups { grid-template-columns:1fr; }
 .audit-status { padding:24px; }
 .about-copy > p:first-child { font-size:18px; }
 .background-notes > div { padding:24px; }
}

.aplisens-cover-image[role="button"] { cursor:zoom-in; }
/* Compact process navigation and severity summary share the portfolio's soft surfaces. */
.aplisens-logo-frame { position:absolute; left:7%; top:33%; width:132px; height:48px; overflow:hidden; border-radius:10px; background:#ffe4bd; }
.aplisens-logo-frame img { position:absolute; left:0; top:50%; width:100%; height:auto; transform:translateY(-50%); mix-blend-mode:multiply; }
.audit-hero .aplisens-logo-frame { left:6%; top:9%; width:176px; height:64px; }
.audit-process { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:24px 0 48px; }
.audit-process button { display:flex; align-items:center; text-align:left; gap:16px; padding:16px 16px; min-height:76px; background:#ffebd20b; color:#ffe4bf; border:0; border-radius:18px; font:inherit; font-size:16px; line-height:1.4; cursor:pointer; transition:background .25s,transform .25s; }
.audit-process button:hover { background:#ffebd21c; transform:translateY(-2px); box-shadow:none; }
.audit-process button:focus-visible { outline:2px solid #ffd9a3; outline-offset:4px; }
.audit-process-number { position:relative; flex:0 0 40px; height:40px; display:grid; place-items:center; color:#ffd49c; font-size:18px; }
.audit-process-number svg { position:absolute; inset:0; width:100%; height:100%; fill:#94532344; }
.audit-process-number > span { position:relative; }
.aplisens-case .case-step { scroll-margin-top:calc(var(--case-nav-offset,108px) + 76px); }
.audit-counts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:24px 0 40px; }
.audit-counts > div { display:flex; align-items:center; gap:16px; padding:16px; border-radius:18px; background:#ffebd209; }
.audit-counts dt { font-size:16px; line-height:1.4; color:#ebd2b8; }
.audit-counts dd { order:-1; display:grid; place-items:center; flex:0 0 52px; height:52px; border-radius:50%; margin:0; font-size:26px; font-weight:400; }
.audit-counts .severity-0 dd { background:#2c65513d; color:#a5dfc2; }
.audit-counts .severity-1 dd { background:#96802430; color:#f6dc83; }
.audit-counts .severity-2 dd { background:#94403936; color:#ffb4a8; }
.project-meta h3 { font-size:22px; line-height:1.22; }
.project-meta p { font-size:14px; line-height:1.5; max-width:100%; }
@media(max-width:700px){
 .audit-process { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:32px; }
 .audit-process button { flex-direction:column; align-items:flex-start; gap:8px; padding:16px; font-size:14px; }
 .audit-process-number { flex-basis:36px; width:36px; height:36px; }
 .audit-counts { gap:8px; }
 .audit-counts > div { flex-direction:column; justify-content:flex-start; gap:8px; text-align:center; padding:16px 8px; }
 .audit-counts dd { flex-basis:44px; width:44px; height:44px; font-size:23px; }
 .audit-counts dt { font-size:14px; }
 .audit-hero .aplisens-logo-frame { top:5%; left:7%; width:126px; height:46px; }
 .audit-hero-copy { top:19%; }
 .audit-hero .aplisens-cover-image { top:44%; height:61%; }
 .project-meta h3 { font-size:22px; }
}
@media(prefers-reduced-motion:reduce){.audit-process button{transition:none}.audit-process button:hover{transform:none}}
