.audit-page-hero { padding:10px 0 58px; }
.audit-hero-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; align-items:center; }
.audit-hero-copy { min-width:0; }
.page-hero h1.audit-hero-title { max-width:none; font-size:clamp(49px,calc(4.5vw + 1px),57px); line-height:1.08; letter-spacing:-.035em; }
.audit-hero-title span { display:block; white-space:nowrap; }
.audit-hero-copy .page-lead { max-width:570px; }

.audit-hero-visual { position:relative; min-height:540px; overflow:hidden; cursor:crosshair; touch-action:pan-y; isolation:isolate; }
.audit-hero-visual::before { content:""; position:absolute; inset:0; z-index:-2; opacity:.28; background-image:radial-gradient(#8390a4 .65px,transparent .65px); background-size:22px 22px; mask-image:linear-gradient(90deg,transparent,#000 12%,#000 100%); }
.audit-hero-visual::after { content:""; position:absolute; left:50%; top:10%; bottom:7%; z-index:-1; border-left:1px dashed rgba(91,105,128,.19); }
.aud-scene { position:absolute; left:50%; top:50%; width:620px; height:520px; transform:translate(-50%,-50%) scale(.88); transform-origin:center; }
.aud-item { position:absolute; z-index:4; will-change:transform; }
.aud-drift { animation:aud-drift var(--aud-speed,7s) ease-in-out infinite alternate; animation-delay:var(--aud-delay,0s); }
.aud-drift-1 { --aud-speed:8.4s; --aud-delay:-2s; --aud-r1:-1.1deg; --aud-r2:.5deg; }
.aud-drift-2 { --aud-speed:7.1s; --aud-delay:-4s; --aud-r1:.8deg; --aud-r2:-.5deg; }
.aud-drift-3 { --aud-speed:6.8s; --aud-delay:-1s; --aud-r1:.3deg; --aud-r2:1deg; }
.aud-drift-4 { --aud-speed:9.2s; --aud-delay:-4s; }
@keyframes aud-drift { from { transform:translate3d(-3px,-4px,0) rotate(var(--aud-r1,-.5deg)); } to { transform:translate3d(5px,6px,0) rotate(var(--aud-r2,.7deg)); } }

.aud-card { position:relative; width:194px; min-height:204px; overflow:hidden; border:1px solid rgba(255,255,255,.9); border-radius:5px; background:#fff; box-shadow:0 14px 38px rgba(25,37,57,.13),0 2px 5px rgba(25,37,57,.06); }
.aud-card::after { content:""; position:absolute; inset:0; border-radius:inherit; box-shadow:inset 0 0 0 1px rgba(16,23,35,.035); pointer-events:none; }
.aud-card p { margin:0; padding:10px 11px 11px; color:#263044; font:700 10px/1.3 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; }
.aud-card p span { display:block; margin-top:4px; color:#8a93a3; font-size:9px; font-weight:500; line-height:1.4; }
.aud-graphic { position:relative; height:110px; overflow:hidden; }
.aud-graphic::after { content:""; position:absolute; inset:0; opacity:.5; background-image:radial-gradient(rgba(50,72,111,.24) .6px,transparent .6px); background-size:10px 10px; mask-image:linear-gradient(135deg,#000,transparent 72%); }
.aud-area-1 { top:28px; left:7px; }
.aud-area-2 { top:28px; left:213px; }
.aud-area-3 { top:28px; right:7px; }

.aud-media { background:linear-gradient(145deg,#eaf1ff,#f8faff); }
.aud-media-platform { position:absolute; z-index:3; width:48px; height:48px; display:grid; place-items:center; border:1px solid #dce4f3; border-radius:9px; background:#fff; box-shadow:0 7px 16px rgba(37,65,112,.09); }
.aud-media-platform img { width:28px; height:28px; object-fit:contain; }
.aud-google { left:18px; top:17px; }
.aud-meta { right:18px; top:17px; color:#0866ff; font:700 31px/1 Arial,sans-serif; }
.aud-budget { position:absolute; z-index:2; left:50%; bottom:7px; width:76px; height:25px; display:flex; align-items:end; gap:5px; transform:translateX(-50%); border-bottom:1px solid #cbd6e8; }
.aud-budget i { flex:1; height:var(--h); border-radius:2px 2px 0 0; background:#9db5e5; animation:aud-bars 2.7s ease-in-out infinite alternate; animation-delay:var(--d); transform-origin:bottom; }
.aud-budget i:nth-child(2) { background:var(--accent); }
.aud-budget i:nth-child(3) { background:#f1a329; }
@keyframes aud-bars { from { transform:scaleY(.8); opacity:.72; } to { transform:scaleY(1); opacity:1; } }

.aud-tracking { background:linear-gradient(145deg,#eaf8f4,#f7fcfa); }
.aud-track-line { position:absolute; z-index:1; left:25px; right:25px; top:50%; height:2px; border-top:2px dashed #6fa893; transform:rotate(-7deg); }
.aud-track-node { position:absolute; z-index:3; width:43px; height:43px; display:grid; place-items:center; border:1px solid rgba(32,91,69,.18); border-radius:50%; color:#21684f; background:#fff; box-shadow:0 7px 16px rgba(37,93,73,.1); font:800 9px/1 var(--font-mono); }
.aud-t1 { left:12px; bottom:13px; }
.aud-t2 { left:50%; top:27px; transform:translateX(-50%); }
.aud-t3 { right:12px; top:10px; color:#fff; background:#2ba977; }

.aud-funnel { display:grid; place-content:center; gap:5px; background:linear-gradient(145deg,#eeeaff,#faf9ff); }
.aud-funnel i { position:relative; z-index:2; height:17px; background:#a89bdc; }
.aud-funnel i::after { position:absolute; inset:0; display:grid; place-items:center; color:#fff; font:800 9px/1 var(--font-mono); letter-spacing:.06em; }
.aud-funnel .aud-f1 { width:124px; clip-path:polygon(0 0,100% 0,91% 100%,9% 100%); }
.aud-funnel .aud-f1::after { content:"LANDING"; }
.aud-funnel .aud-f2 { width:88px; margin-inline:auto; background:#7e6ac8; clip-path:polygon(0 0,100% 0,86% 100%,14% 100%); }
.aud-funnel .aud-f2::after { content:"LEAD"; }
.aud-funnel .aud-f3 { width:52px; margin-inline:auto; background:var(--accent); clip-path:polygon(0 0,100% 0,75% 100%,25% 100%); }
.aud-funnel .aud-f3::after { content:"SALE"; }
.aud-leak { position:absolute; z-index:4; right:27px; top:45px; width:11px; height:11px; border-radius:50%; background:#ef6e5a; box-shadow:0 0 0 6px rgba(239,110,90,.11); animation:aud-leak 2.4s ease-in-out infinite alternate; }
@keyframes aud-leak { to { transform:translate(8px,8px); opacity:.45; } }

.aud-plan { top:318px; left:50%; transform:translateX(-50%); }
.aud-plan-panel { width:500px; padding:14px 17px 17px; border:1px solid rgba(45,62,89,.16); border-radius:6px; background:rgba(255,255,255,.97); box-shadow:0 18px 48px rgba(22,37,62,.14); }
.aud-plan-title { margin-bottom:12px; padding-bottom:9px; border-bottom:1px solid #e7eaf0; color:#263044; font:700 9px/1 var(--font-mono); letter-spacing:.09em; text-transform:uppercase; }
.aud-priorities { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.aud-priority { min-height:92px; padding:9px; border:1px solid #e2e7ef; border-radius:5px; background:#fafbfc; }
.aud-priority-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.aud-priority-head b { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; color:#fff; background:#ef6e5a; font:800 10px/1 var(--font-mono); }
.aud-priority:nth-child(2) .aud-priority-head b { background:#e69a27; }
.aud-priority:nth-child(3) .aud-priority-head b { background:var(--accent); }
.aud-priority-head i { width:45px; height:6px; overflow:hidden; border-radius:5px; background:#e6eaf0; }
.aud-priority-head i::after { content:""; display:block; width:var(--w); height:100%; border-radius:inherit; background:#ef6e5a; animation:aud-priority 2.8s ease-in-out infinite alternate; transform-origin:left; }
.aud-priority:nth-child(2) .aud-priority-head i::after { background:#e69a27; animation-delay:-.8s; }
.aud-priority:nth-child(3) .aud-priority-head i::after { background:var(--accent); animation-delay:-1.5s; }
@keyframes aud-priority { from { transform:scaleX(.76); opacity:.7; } to { transform:scaleX(1); opacity:1; } }
.aud-priority strong { display:block; color:#263044; font:700 10px/1.3 var(--font-mono); text-transform:uppercase; }
.aud-priority small { display:block; margin-top:4px; color:#8b94a4; font:600 9px/1.3 var(--font-mono); }

.aud-flow { position:absolute; z-index:1; height:1px; background:linear-gradient(90deg,transparent,rgba(102,116,139,.34) 15%,rgba(102,116,139,.34) 85%,transparent); transform-origin:left center; }
.aud-flow::after { content:""; position:absolute; left:12%; top:-2px; width:5px; height:5px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 5px rgba(37,95,230,.08); animation:aud-signal 3.6s ease-in-out infinite; animation-delay:var(--aud-flow-delay,0s); }
@keyframes aud-signal { 0% { left:12%; opacity:0; } 18% { opacity:1; } 82% { opacity:1; } 100% { left:86%; opacity:0; } }
.aud-flow-1 { top:236px; left:104px; width:121px; transform:rotate(42deg); --aud-flow-delay:-.5s; }
.aud-flow-2 { top:236px; left:310px; width:82px; transform:rotate(90deg); --aud-flow-delay:-1.6s; }
.aud-flow-3 { top:236px; left:516px; width:121px; transform:rotate(138deg); --aud-flow-delay:-2.4s; }
.aud-orbit { position:absolute; z-index:0; left:50%; top:49%; width:520px; height:300px; border:1px solid rgba(37,95,230,.08); border-radius:50%; transform:translate(-50%,-50%) rotate(-8deg); }
.aud-orbit::before { content:""; position:absolute; inset:34px 72px; border:1px solid rgba(37,95,230,.06); border-radius:inherit; }

@media (max-width:1100px) {
  .audit-hero-grid { grid-template-columns:1fr; gap:32px; }
  .audit-hero-copy { max-width:760px; }
  .audit-hero-visual { min-height:520px; }
  .aud-scene { transform:translate(-50%,-50%) scale(.94); }
}

@media (max-width:720px) {
  .audit-page-hero { padding:10px 0 42px; }
  .page-hero h1.audit-hero-title { font-size:clamp(38px,10.5vw,48px); }
  .audit-hero-title span { white-space:normal; }
  .audit-hero-grid { gap:22px; }
}

@media (prefers-reduced-motion:reduce) {
  .aud-drift,.aud-flow::after,.aud-budget i,.aud-leak,.aud-priority-head i::after { animation:none !important; }
}
