.aip-sv{
  --red:#dd3333; --red-dark:#c42a2a; --ink:#333; --text:#555; --muted:#7a7f87;
  --line:#e6e8eb; --grey:#f7f7f7; --grey-2:#f3f3f3; --hero:#f4f5f7;
  width:100vw; position:relative; left:50%; margin-left:-50vw; overflow:hidden;
  background:#fff; color:var(--ink); text-align:left; -webkit-font-smoothing:antialiased;
}
.aip-sv, .aip-sv *{font-family:"Fira Sans", Arial, sans-serif !important}
.aip-sv *, .aip-sv *::before, .aip-sv *::after{box-sizing:border-box}
.aip-sv p{font-size:15px !important; line-height:1.84; color:var(--text) !important; font-weight:400 !important; margin:0}
.aip-sv h1, .aip-sv h2, .aip-sv h3, .aip-sv h4{color:var(--ink); font-weight:700; text-transform:none; margin:0}
.aip-sv h1{font-size:clamp(34px,4.2vw,56px); line-height:1.08; letter-spacing:-1.8px}
.aip-sv h2{font-size:clamp(30px,3.4vw,44px); line-height:1.16; letter-spacing:-1.3px}
.aip-sv h3{font-size:20px; line-height:1.3; letter-spacing:-.2px}
.aip-sv .aip-red{color:var(--red)}
.aip-sv a, .aip-sv a:visited{color:inherit; text-decoration:none}
.aip-sv ul, .aip-sv ol{list-style:none; margin:0; padding:0}
.aip-sv li{margin:0}
.aip-sv :focus-visible{outline:3px solid var(--red); outline-offset:3px}
.aip-sv .aip-w{width:min(1180px, calc(100% - 56px)); margin:0 auto}
.aip-sv .aip-sec{padding:96px 0}
.aip-sv .aip-grey{background:var(--grey)}
.aip-sv svg.aip-ic{width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round}

.aip-sv .aip-eb{display:flex; align-items:center; gap:13px; font-size:11px; font-weight:800; letter-spacing:2px; text-transform:uppercase; color:var(--red); margin:0 0 20px}
.aip-sv .aip-eb::after{content:""; width:36px; height:2px; background:var(--red)}
.aip-sv .aip-head{display:grid; grid-template-columns:1.05fr .95fr; gap:70px; align-items:end; margin-bottom:48px}

.aip-sv a.aip-btn{display:inline-flex; align-items:center; gap:20px; padding:16px 22px; border:1px solid var(--red); border-radius:4px; background:var(--red); color:#fff; font-size:13px; font-weight:700; white-space:nowrap; transition:background .2s, border-color .2s, color .2s}
.aip-sv a.aip-btn:hover{background:#5f6368; border-color:#5f6368; color:#fff}
.aip-sv a.aip-btn-line{background:#fff; color:var(--ink); border-color:#c9ccd1}
.aip-sv a.aip-btn-line:hover{background:#eef0f2; border-color:#b8bcc2; color:var(--ink)}
.aip-sv .aip-link{display:inline-flex; align-items:center; gap:18px; padding:9px 0; border-bottom:2px solid var(--red); font-size:13px; font-weight:700; color:var(--ink)}
.aip-sv .aip-link span{color:var(--red); font-size:16px; line-height:1}
.aip-sv .aip-link:hover{color:var(--red)}

/* ===== 1. HERO ===== */
.aip-sv .aip-hero{background:var(--hero); padding:72px 0 0; position:relative}
.aip-sv .aip-hero::before{content:""; position:absolute; left:0; top:0; width:46%; height:100%; background-image:radial-gradient(#d9dce1 1px, transparent 1.3px); background-size:18px 18px; opacity:.55; pointer-events:none}
.aip-sv .aip-hero-in{position:relative; display:grid; grid-template-columns:1.02fr .98fr; gap:64px; align-items:center; padding-bottom:64px}
.aip-sv .aip-crumb{font-size:12.5px; color:var(--muted); margin:0 0 26px}
.aip-sv .aip-crumb a:hover{color:var(--red)}
.aip-sv .aip-crumb span{margin:0 8px; color:#c4c8ce}
.aip-sv .aip-hero h1{margin-bottom:22px}
.aip-sv .aip-lead{font-size:17px !important; line-height:1.75; max-width:560px}
.aip-sv .aip-hero-acts{display:flex; flex-wrap:wrap; gap:12px; margin:32px 0 0}
.aip-sv .aip-hero-vis{position:relative; padding:0 0 30px 30px}
.aip-sv .aip-hero-img{position:relative; aspect-ratio:1.2/1; background:#e3e6ea right center/cover no-repeat; border:8px solid #fff; box-shadow:0 30px 60px -36px rgba(70,75,85,.45)}
.aip-sv .aip-hero-img::after{content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--red)}
.aip-sv .aip-hero-badge{position:absolute; left:0; bottom:0; z-index:2; background:#fff; border-top:3px solid var(--red); padding:18px 22px; box-shadow:0 20px 40px -24px rgba(70,75,85,.5); max-width:250px}
.aip-sv .aip-hero-badge strong{display:block; font-size:30px; font-weight:800; letter-spacing:-1px; line-height:1; color:var(--ink)}
.aip-sv .aip-hero-badge span{display:block; font-size:12.5px; color:var(--muted); margin-top:7px; line-height:1.45}
.aip-sv .aip-facts{position:relative; background:#fff; border-top:1px solid var(--line); border-bottom:1px solid var(--line)}
.aip-sv .aip-facts ul{display:grid; grid-template-columns:repeat(4,1fr)}
.aip-sv .aip-facts li{display:flex; gap:14px; align-items:center; padding:24px 22px; border-left:1px solid var(--line)}
.aip-sv .aip-facts li:first-child{border-left:0; padding-left:0}
.aip-sv .aip-ring{flex:none; width:42px; height:42px; border-radius:50%; background:#fdeeee; color:var(--red); display:grid; place-items:center}
.aip-sv .aip-facts strong{display:block; font-size:15px; font-weight:700; color:var(--ink); line-height:1.3}
.aip-sv .aip-facts small{display:block; font-size:12.5px; color:var(--muted); margin-top:2px}

/* ===== 2. FILING vs PROSECUTION ===== */
.aip-sv .aip-two{display:grid; grid-template-columns:1fr 1fr; gap:28px}
.aip-sv .aip-panel{background:#fff; border:1px solid var(--line); border-top:3px solid var(--red); padding:38px 38px 34px}
.aip-sv .aip-panel.is-grey{background:var(--grey)}
.aip-sv .aip-panel-top{display:flex; align-items:center; gap:16px; margin-bottom:16px}
.aip-sv .aip-panel-top .aip-ring{width:48px; height:48px}
.aip-sv .aip-panel-top small{display:block; font-size:11px; font-weight:800; letter-spacing:1.6px; text-transform:uppercase; color:var(--muted); margin-bottom:3px}
.aip-sv .aip-panel h3{font-size:23px}
.aip-sv .aip-panel > p{margin-bottom:22px}
.aip-sv .aip-steps{counter-reset:st}
.aip-sv .aip-steps li{counter-increment:st; position:relative; padding:14px 0 14px 48px; border-top:1px solid var(--line); font-size:15px; color:var(--ink); line-height:1.5}
.aip-sv .aip-steps li::before{content:counter(st, decimal-leading-zero); position:absolute; left:0; top:14px; font-size:13px; font-weight:800; color:var(--red)}
.aip-sv .aip-steps li span, .aip-sv .aip-checks li span{display:block; font-size:13px; color:var(--muted); margin-top:2px}
.aip-sv .aip-checks li{position:relative; padding:14px 0 14px 34px; border-top:1px solid #e3e5e9; font-size:15px; color:var(--ink); line-height:1.5}
.aip-sv .aip-checks li::before{content:""; position:absolute; left:0; top:17px; width:18px; height:18px; border-radius:50%; background:#fdeeee}
.aip-sv .aip-checks li::after{content:""; position:absolute; left:6px; top:20px; width:5px; height:9px; border:solid var(--red); border-width:0 2px 2px 0; transform:rotate(45deg)}

/* ===== 3. FILING ROUTES ===== */
.aip-sv .aip-routes{display:grid; grid-template-columns:repeat(4,1fr); gap:20px}
.aip-sv .aip-route{position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); padding:30px 26px 26px; transition:border-color .2s, box-shadow .25s, transform .25s}
.aip-sv .aip-route::before{content:""; position:absolute; left:-1px; right:-1px; top:-1px; height:3px; background:#d5d8dd; transition:background .2s}
.aip-sv .aip-route:hover{box-shadow:0 26px 50px -34px rgba(70,75,85,.55); transform:translateY(-4px)}
.aip-sv .aip-route:hover::before{background:var(--red)}
.aip-sv .aip-route-when{align-self:flex-start; font-size:10.5px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--red); background:#fdeeee; padding:6px 10px; border-radius:3px; margin-bottom:22px}
.aip-sv .aip-route h3{font-size:19px; margin-bottom:10px}
.aip-sv .aip-route > p{font-size:14px !important; line-height:1.7; margin-bottom:18px}
.aip-sv .aip-route-best{margin-top:auto; padding:14px 0 18px; border-top:1px solid var(--line); font-size:13px; color:var(--text); line-height:1.55}
.aip-sv .aip-route-best b{display:block; font-size:11px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--ink); margin-bottom:4px}
.aip-sv .aip-route .aip-link{align-self:flex-start}
.aip-sv .aip-route:hover .aip-link{color:var(--red)}
.aip-sv .aip-routes-note{display:flex; align-items:center; gap:12px; margin-top:28px; font-size:13.5px; color:var(--muted)}
.aip-sv .aip-routes-note b{color:var(--ink); font-weight:600}

/* ===== 4. PROSECUTION TIMELINE ===== */
.aip-sv .aip-tl{position:relative; display:grid; grid-template-columns:repeat(6,1fr)}
.aip-sv .aip-tl::before{content:""; position:absolute; left:0; right:0; top:21px; height:2px; background:#e3e5e9}
.aip-sv .aip-tl li{position:relative; padding:0 22px 0 0}
.aip-sv .aip-tl-dot{position:relative; z-index:1; width:44px; height:44px; border-radius:50%; background:#fff; border:2px solid #d5d8dd; color:#8a8f97; display:grid; place-items:center; font-size:13px; font-weight:800; transition:background .2s, border-color .2s, color .2s}
.aip-sv .aip-tl li:hover .aip-tl-dot, .aip-sv .aip-tl li.is-key .aip-tl-dot{background:var(--red); border-color:var(--red); color:#fff}
.aip-sv .aip-tl h3{font-size:16.5px; margin:22px 0 8px}
.aip-sv .aip-tl p{font-size:13.5px !important; line-height:1.65}
.aip-sv .aip-tl-foot{display:grid; grid-template-columns:auto 1fr auto; gap:28px; align-items:center; margin-top:54px; padding:26px 30px; background:var(--grey); border-left:3px solid var(--red)}
.aip-sv .aip-tl-foot strong{font-size:34px; font-weight:800; letter-spacing:-1px; color:var(--ink); line-height:1; white-space:nowrap}
.aip-sv .aip-tl-foot p{font-size:14px !important; line-height:1.7}

/* ===== 5. BEFORE YOU FILE ===== */
.aip-sv .aip-plan{display:grid; grid-template-columns:.85fr 1.15fr; gap:72px; align-items:start}
.aip-sv .aip-plan-intro{position:sticky; top:40px}
.aip-sv .aip-plan-intro h2{margin-bottom:18px}
.aip-sv .aip-plan-intro > p{margin-bottom:28px}
.aip-sv .aip-plan-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px}
.aip-sv .aip-plan-card{background:#fff; border:1px solid var(--line); border-left:3px solid var(--red); padding:28px 26px}
.aip-sv .aip-plan-card .aip-ring{margin-bottom:18px}
.aip-sv .aip-plan-card h3{font-size:18px; margin-bottom:8px}
.aip-sv .aip-plan-card p{font-size:14px !important; line-height:1.7}
.aip-sv .aip-plan-card ul{margin-top:14px; border-top:1px solid var(--line); padding-top:12px}
.aip-sv .aip-plan-card ul li{font-size:13px; color:var(--text); line-height:1.5; padding:4px 0 4px 16px; position:relative}
.aip-sv .aip-plan-card ul li::before{content:""; position:absolute; left:0; top:11px; width:6px; height:2px; background:var(--red)}

/* ===== 6. FAQ ===== */
.aip-sv .aip-faq{display:grid; grid-template-columns:.8fr 1.2fr; gap:72px; align-items:start}
.aip-sv .aip-faq-side h2{margin-bottom:18px}
.aip-sv .aip-faq-side > p{margin-bottom:28px}
.aip-sv .aip-ask{background:var(--grey); border-top:3px solid var(--red); padding:26px 26px 28px}
.aip-sv .aip-ask h3{font-size:18px; margin-bottom:8px}
.aip-sv .aip-ask p{font-size:14px !important; margin-bottom:18px}
.aip-sv .aip-qa{border-top:1px solid var(--line)}
.aip-sv .aip-qa details{border-bottom:1px solid var(--line)}
.aip-sv .aip-qa summary{list-style:none; cursor:pointer; display:grid; grid-template-columns:44px 1fr 28px; gap:12px; align-items:center; padding:22px 0; font-size:17px; font-weight:600; color:var(--ink); line-height:1.4; transition:color .2s}
.aip-sv .aip-qa summary::-webkit-details-marker{display:none}
.aip-sv .aip-qa summary b{font-size:13px; font-weight:800; color:#b4b8bf; transition:color .2s}
.aip-sv .aip-qa summary i{position:relative; width:28px; height:28px; border:1px solid #d4d7dc; border-radius:50%; transition:background .2s, border-color .2s}
.aip-sv .aip-qa summary i::before, .aip-sv .aip-qa summary i::after{content:""; position:absolute; left:50%; top:50%; width:10px; height:2px; margin:-1px 0 0 -5px; background:var(--ink); transition:transform .25s, background .2s}
.aip-sv .aip-qa summary i::after{transform:rotate(90deg)}
.aip-sv .aip-qa summary:hover{color:var(--red)}
.aip-sv .aip-qa details[open] summary{color:var(--red)}
.aip-sv .aip-qa details[open] summary b{color:var(--red)}
.aip-sv .aip-qa details[open] summary i{background:var(--red); border-color:var(--red)}
.aip-sv .aip-qa details[open] summary i::before, .aip-sv .aip-qa details[open] summary i::after{background:#fff}
.aip-sv .aip-qa details[open] summary i::after{transform:rotate(0)}
.aip-sv .aip-qa .aip-ans{padding:0 40px 24px 56px}
.aip-sv .aip-qa .aip-ans p{font-size:14.5px !important; line-height:1.8}

/* ===== 7. RELATED ===== */
.aip-sv .aip-rel{display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); margin-top:80px}
.aip-sv .aip-rel a{display:grid; grid-template-columns:42px 1fr auto; gap:14px; align-items:center; padding:22px 20px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:#fff; transition:background .2s}
.aip-sv .aip-rel a:hover{background:var(--grey)}
.aip-sv .aip-rel strong{display:block; font-size:15px; font-weight:700; color:var(--ink); line-height:1.3; transition:color .2s}
.aip-sv .aip-rel small{display:block; font-size:12.5px; color:var(--muted); margin-top:2px}
.aip-sv .aip-rel em{font-style:normal; color:#c4c8ce; font-size:16px; transition:color .2s, transform .2s}
.aip-sv .aip-rel a:hover strong, .aip-sv .aip-rel a:hover em{color:var(--red)}
.aip-sv .aip-rel a:hover em{transform:translate(2px,-2px)}
.aip-sv .aip-rel-label{font-size:11px; font-weight:800; letter-spacing:1.6px; text-transform:uppercase; color:var(--muted); margin:80px 0 16px}
.aip-sv .aip-rel-label + .aip-rel{margin-top:0}

/* ===== 8. CTA ===== */
.aip-sv .aip-end{background:var(--grey-2); border-top:1px solid #e4e4e4; padding:62px 0}
.aip-sv .aip-end .aip-w{display:flex; align-items:center; justify-content:space-between; gap:40px}
.aip-sv .aip-end h2{font-size:clamp(27px,3vw,38px); margin:0 0 12px}
.aip-sv .aip-end-acts{display:flex; gap:12px; flex-wrap:wrap; flex:none}


/* ===== DRAFTING: intro ===== */
.aip-sv .aip-intro{display:grid; grid-template-columns:1.1fr .9fr; gap:72px; align-items:start}
.aip-sv .aip-intro h2{margin-bottom:22px}
.aip-sv .aip-intro-copy p + p{margin-top:16px}
.aip-sv .aip-quote{margin:30px 0 0; padding:22px 26px; border-left:3px solid var(--red); background:var(--grey); font-size:18px; font-weight:600; line-height:1.55; color:var(--ink)}
.aip-sv .aip-offer{background:#fff; border:1px solid var(--line); border-top:3px solid var(--red); padding:34px 34px 30px}
.aip-sv .aip-offer h3{font-size:21px; margin-bottom:8px}
.aip-sv .aip-offer > p{font-size:14px !important; margin-bottom:20px}
.aip-sv .aip-who{display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); margin-bottom:24px}
.aip-sv .aip-who li{display:flex; align-items:center; gap:12px; padding:14px 14px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); font-size:14px; font-weight:600; color:var(--ink)}
.aip-sv .aip-who .aip-ring{width:34px; height:34px}
.aip-sv .aip-who svg.aip-ic{width:17px; height:17px}
.aip-sv .aip-k{display:block; font-size:11px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--muted); margin-bottom:10px}
.aip-sv .aip-chips{display:flex; flex-wrap:wrap; gap:8px}
.aip-sv .aip-chips li{font-size:12.5px; font-weight:700; color:var(--ink); background:var(--grey); border:1px solid #e3e5e9; padding:7px 12px; border-radius:3px}

/* ===== DRAFTING: provisional vs complete (decision layout) ===== */
.aip-sv .aip-bridge{position:relative; display:grid; grid-template-columns:1fr 1fr 1fr; background:#fff; border:1px solid var(--line); padding:30px 34px 26px; margin-bottom:24px}
.aip-sv .aip-bridge::before{content:""; position:absolute; left:34px; right:34px; top:63px; height:2px; background:linear-gradient(90deg, var(--red) 0 50%, #d5d8dd 50% 100%)}
.aip-sv .aip-bridge li{position:relative; padding-right:20px}
.aip-sv .aip-bridge li:last-child{text-align:right; padding-right:0}
.aip-sv .aip-bridge li:nth-child(2){text-align:center}
.aip-sv .aip-bridge-m{display:inline-block; font-size:10.5px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--muted); margin-bottom:10px}
.aip-sv .aip-bridge-dot{display:block; width:16px; height:16px; border-radius:50%; background:#fff; border:3px solid var(--red); margin:0 0 14px; position:relative; z-index:1}
.aip-sv .aip-bridge li:nth-child(2) .aip-bridge-dot{margin:0 auto 14px; background:var(--red)}
.aip-sv .aip-bridge li:last-child .aip-bridge-dot{margin:0 0 14px auto; border-color:#b8bcc2}
.aip-sv .aip-bridge strong{display:block; font-size:15px; font-weight:700; color:var(--ink)}
.aip-sv .aip-bridge small{display:block; font-size:12.5px; color:var(--muted); margin-top:3px; line-height:1.5}
.aip-sv .aip-bridge-gap{position:absolute; left:75%; top:1px; transform:translateX(-50%); background:#fff; padding:0 12px; font-size:11px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); z-index:2; white-space:nowrap}
.aip-sv .aip-cx{display:grid; grid-template-columns:1fr 1fr; gap:24px}
.aip-sv .aip-cx-card{display:flex; flex-direction:column; background:#fff; border:1px solid var(--line)}
.aip-sv .aip-cx-head{position:relative; padding:32px 34px 28px; border-bottom:1px solid var(--line); background:linear-gradient(180deg,#fbfbfc,#fff)}
.aip-sv .aip-cx-head::before{content:""; position:absolute; left:-1px; right:-1px; top:-1px; height:3px; background:var(--red)}
.aip-sv .aip-cx-top{display:flex; justify-content:space-between; align-items:center; gap:14px; margin-bottom:18px}
.aip-sv .aip-cx-top .aip-ring{width:50px; height:50px}
.aip-sv .aip-cx-tag{font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; padding:7px 11px; border-radius:3px; background:#eef0f2; color:#5f6368}
.aip-sv .aip-cx-tag.is-on{background:#e8f5ee; color:#237a52}
.aip-sv .aip-cx-head small{display:block; font-size:11px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--red); margin-bottom:6px}
.aip-sv .aip-cx-head h3{font-size:25px; margin-bottom:10px}
.aip-sv .aip-cx-head p{font-size:14.5px !important; line-height:1.7}
.aip-sv .aip-cx-rows{padding:6px 34px 0; flex:1}
.aip-sv .aip-cx-rows > div{display:grid; grid-template-columns:150px 1fr; gap:18px; padding:16px 0; border-bottom:1px solid var(--line)}
.aip-sv .aip-cx-rows > div:last-child{border-bottom:0}
.aip-sv .aip-cx-rows dt{font-size:11px; font-weight:800; letter-spacing:1.1px; text-transform:uppercase; color:var(--ink); padding-top:3px; line-height:1.5}
.aip-sv .aip-cx-rows dd{margin:0; font-size:14px; color:var(--text); line-height:1.65}
.aip-sv .aip-cx-foot{padding:20px 34px 26px; border-top:1px solid var(--line); background:#fbfbfc}
.aip-sv .aip-cx-rec{display:grid; grid-template-columns:auto 1fr auto; gap:24px; align-items:center; margin-top:24px; padding:26px 30px; background:#fff; border:1px solid var(--line); border-left:3px solid var(--red)}
.aip-sv .aip-cx-rec .aip-ring{width:50px; height:50px}
.aip-sv .aip-cx-rec strong{display:block; font-size:17px; font-weight:700; color:var(--ink); margin-bottom:4px}
.aip-sv .aip-cx-rec p{font-size:14px !important; line-height:1.7}

/* ===== DRAFTING: anatomy ===== */
.aip-sv .aip-anat{display:grid; grid-template-columns:.9fr 1.1fr; gap:64px; align-items:center}
.aip-sv .aip-doc{position:relative; background:#fff; border:1px solid #e3e5e9; box-shadow:0 30px 60px -40px rgba(70,75,85,.45); padding:34px 34px 30px; max-width:470px}
.aip-sv .aip-doc::before{content:""; position:absolute; left:16px; right:-16px; top:16px; bottom:-16px; background:#eef0f2; border:1px solid #e3e5e9; z-index:-1}
.aip-sv .aip-doc-wrap{position:relative; z-index:0; padding:0 16px 16px 0}
.aip-sv .aip-doc-top{display:flex; justify-content:space-between; align-items:center; padding-bottom:16px; margin-bottom:18px; border-bottom:2px solid var(--ink); font-size:11px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--ink)}
.aip-sv .aip-doc-top span{color:var(--red)}
.aip-sv .aip-doc ol li{display:grid; grid-template-columns:30px 1fr; gap:8px; align-items:center; padding:9px 0; border-bottom:1px dashed #dfe2e6}
.aip-sv .aip-doc ol li b{font-size:11px; font-weight:800; color:#b4b8bf}
.aip-sv .aip-doc ol li i{display:block; height:7px; border-radius:2px; background:#e6e8eb}
.aip-sv .aip-doc ol li em{font-style:normal; font-size:13px; font-weight:700; color:var(--ink); display:block; margin-bottom:5px}
.aip-sv .aip-doc ol li.is-key{background:#fdeeee; margin:0 -12px; padding:10px 12px; border-bottom:0}
.aip-sv .aip-doc ol li.is-key b, .aip-sv .aip-doc ol li.is-key em{color:var(--red)}
.aip-sv .aip-doc ol li.is-key i{background:#f6c9c9}
.aip-sv .aip-parts{display:grid; grid-template-columns:1fr 1fr; gap:0 34px}
.aip-sv .aip-parts li{padding:16px 0; border-top:1px solid var(--line)}
.aip-sv .aip-parts h3{font-size:16px; margin-bottom:4px; display:flex; gap:10px; align-items:baseline}
.aip-sv .aip-parts h3 b{font-size:12px; font-weight:800; color:var(--red)}
.aip-sv .aip-parts p{font-size:13.5px !important; line-height:1.6}

/* ===== DRAFTING: why grid (6) ===== */
.aip-sv .aip-why{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
.aip-sv .aip-tech{display:flex; flex-wrap:wrap; align-items:center; gap:10px 12px; margin-top:34px; padding-top:26px; border-top:1px solid #e3e5e9}
.aip-sv .aip-tech .aip-k{margin:0 8px 0 0}
.aip-sv .aip-tech span:not(.aip-k){font-size:13px; font-weight:600; color:var(--ink); background:#fff; border:1px solid #e3e5e9; padding:8px 14px; border-radius:3px}

/* ===== DRAFTING: type cards ===== */
.aip-sv .aip-types{display:grid; grid-template-columns:1fr 1fr; gap:24px}
.aip-sv .aip-type{display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-top:3px solid var(--red); padding:36px 36px 32px; transition:box-shadow .25s, transform .25s}
.aip-sv .aip-type:hover{box-shadow:0 26px 50px -34px rgba(70,75,85,.55); transform:translateY(-4px)}
.aip-sv .aip-type-top{display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:16px}
.aip-sv .aip-type h3{font-size:23px}
.aip-sv .aip-type > p{margin-bottom:22px}
.aip-sv .aip-type .aip-checks{margin-bottom:26px}
.aip-sv .aip-type .aip-link{margin-top:auto; align-self:flex-start}
.aip-sv .aip-type:hover .aip-link{color:var(--red)}


/* ===== SEARCH: decision matrix ===== */
.aip-sv .aip-dm{border:1px solid var(--line); background:#fff}
.aip-sv .aip-dm-row{display:grid; grid-template-columns:1.05fr .95fr 1.3fr 40px; align-items:center; border-top:1px solid var(--line); transition:background .2s}
.aip-sv .aip-dm-row:first-child{border-top:0}
.aip-sv .aip-dm-row > *{padding:20px 24px}
.aip-sv .aip-dm-row.is-head{background:#fbfbfc}
.aip-sv .aip-dm-row.is-head > *{padding:14px 24px; font-size:11px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--muted)}
.aip-sv a.aip-dm-row:hover{background:var(--grey)}
.aip-sv .aip-dm-q{display:flex; align-items:center; gap:14px; font-size:15.5px; font-weight:600; color:var(--ink); line-height:1.4}
.aip-sv .aip-dm-s{font-size:14px; font-weight:700; color:var(--red)}
.aip-sv .aip-dm-s span{display:inline-block; position:relative; padding-left:26px}
.aip-sv .aip-dm-s span::before{content:""; position:absolute; left:0; top:50%; width:16px; height:2px; background:var(--red)}
.aip-sv .aip-dm-g{font-size:13.5px; color:var(--text); line-height:1.6}
.aip-sv .aip-dm-row em{font-style:normal; color:#c4c8ce; font-size:16px; transition:color .2s, transform .2s}
.aip-sv a.aip-dm-row:hover em{color:var(--red); transform:translate(2px,-2px)}

/* ===== SEARCH: service grid ===== */
.aip-sv .aip-svc{display:grid; grid-template-columns:repeat(4,1fr); gap:20px}
.aip-sv .aip-svc-card{position:relative; display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); padding:28px 24px 24px; transition:box-shadow .25s, transform .25s}
.aip-sv .aip-svc-card::before{content:""; position:absolute; left:-1px; right:-1px; top:-1px; height:3px; background:#d5d8dd; transition:background .2s}
.aip-sv .aip-svc-card:hover{box-shadow:0 26px 50px -34px rgba(70,75,85,.55); transform:translateY(-4px)}
.aip-sv .aip-svc-card:hover::before{background:var(--red)}
.aip-sv .aip-svc-card .aip-ring{margin-bottom:20px}
.aip-sv .aip-svc-card h3{font-size:18px; margin-bottom:8px}
.aip-sv .aip-svc-card > p{font-size:13.5px !important; line-height:1.65; margin-bottom:16px}
.aip-sv .aip-svc-use{margin-top:auto; padding:12px 0 16px; border-top:1px solid var(--line); font-size:12.5px; color:var(--muted); line-height:1.5}
.aip-sv .aip-svc-use b{color:var(--ink); font-weight:700}
.aip-sv .aip-svc-card .aip-link{align-self:flex-start}
.aip-sv .aip-svc-card:hover .aip-link{color:var(--red)}
.aip-sv .aip-svc-cta{display:flex; flex-direction:column; justify-content:space-between; background:var(--red); padding:28px 24px 24px; color:#fff}
.aip-sv .aip-svc-cta h3{color:#fff; font-size:20px; margin-bottom:10px}
.aip-sv .aip-svc-cta p{color:rgba(255,255,255,.88) !important; font-size:13.5px !important; line-height:1.65}
.aip-sv .aip-svc-cta a.aip-btn{align-self:flex-start; background:#fff; border-color:#fff; color:var(--ink); margin-top:22px}
.aip-sv .aip-svc-cta a.aip-btn:hover{background:#f1f1f1; border-color:#f1f1f1; color:var(--ink)}

/* ===== SEARCH: method list ===== */
.aip-sv .aip-method > li{display:grid; grid-template-columns:42px 1fr; gap:16px; padding:18px 0; border-top:1px solid var(--line)}
.aip-sv .aip-method h3{font-size:16.5px; margin-bottom:4px}
.aip-sv .aip-method p{font-size:13.5px !important; line-height:1.65}
.aip-sv .aip-db{display:flex; flex-wrap:wrap; gap:8px; margin-top:22px}
.aip-sv .aip-db li{font-size:12.5px; font-weight:700; color:var(--ink); background:var(--grey); border:1px solid #e3e5e9; padding:7px 12px; border-radius:3px}
.aip-sv .aip-doc ol li.is-key{margin:0 -12px}


/* ===== TRADEMARK: hero portfolio panel ===== */
.aip-sv .aip-port{position:relative; background:#fff; border:1px solid #e3e5e9; box-shadow:0 30px 60px -36px rgba(70,75,85,.45)}
.aip-sv .aip-port::before{content:""; position:absolute; left:-1px; top:-1px; bottom:-1px; width:4px; background:var(--red)}
.aip-sv .aip-port-top{display:flex; justify-content:space-between; align-items:center; gap:14px; padding:20px 24px 16px; border-bottom:1px solid var(--line)}
.aip-sv .aip-port-top small{display:block; font-size:10.5px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--muted)}
.aip-sv .aip-port-top strong{display:block; font-size:18px; font-weight:800; letter-spacing:2px; color:var(--ink); margin-top:2px}
.aip-sv .aip-port-mark{display:flex; align-items:center; gap:12px}
.aip-sv .aip-port-mark svg{width:40px; height:40px; flex:none}
.aip-sv .aip-port-kpi{display:flex; gap:18px; text-align:right}
.aip-sv .aip-port-kpi b{display:block; font-size:20px; font-weight:800; color:var(--ink); line-height:1}
.aip-sv .aip-port-kpi span{display:block; font-size:10.5px; color:var(--muted); margin-top:4px}
.aip-sv .aip-port table{width:100%; border-collapse:collapse; font-size:13px}
.aip-sv .aip-port th{font-size:10px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--muted); text-align:left; padding:10px 24px 8px; background:#fbfbfc; border-bottom:1px solid var(--line)}
.aip-sv .aip-port td{padding:11px 24px; border-bottom:1px solid #f0f1f3; color:var(--text); white-space:nowrap}
.aip-sv .aip-port td:first-child{font-weight:700; color:var(--ink)}
.aip-sv .aip-cc{display:inline-grid; place-items:center; width:30px; height:22px; margin-right:10px; border-radius:3px; background:#eef0f2; font-size:10.5px; font-weight:800; color:#4a4e55; letter-spacing:.5px}
.aip-sv .aip-st{display:inline-flex; align-items:center; gap:7px; font-size:12px; font-weight:700; color:var(--ink)}
.aip-sv .aip-st::before{content:""; width:8px; height:8px; border-radius:50%; background:#2f9e6b}
.aip-sv .aip-st.is-pub::before{background:#e0a020}
.aip-sv .aip-st.is-exam::before{background:#9aa0a8}
.aip-sv .aip-st.is-due::before{background:var(--red)}
.aip-sv .aip-port-foot{display:flex; align-items:center; gap:12px; padding:14px 24px; background:#fdf4f4; font-size:12.5px; color:var(--ink)}
.aip-sv .aip-port-foot b{color:var(--red)}
.aip-sv .aip-port-note{position:absolute; right:12px; bottom:-26px; font-size:11px; color:var(--muted)}

/* ===== TRADEMARK: mark types ===== */
.aip-sv .aip-types-row{display:flex; flex-wrap:wrap; align-items:center; gap:10px 12px; margin-top:30px; padding-top:24px; border-top:1px solid #e3e5e9}
.aip-sv .aip-types-row .aip-k{margin:0 8px 0 0}
.aip-sv .aip-types-row span:not(.aip-k){font-size:13px; font-weight:600; color:var(--ink); background:#fff; border:1px solid #e3e5e9; padding:8px 14px; border-radius:3px}
.aip-sv .aip-svc{grid-template-columns:repeat(3,1fr)}


/* ===== A&L: hero claim chart ===== */
.aip-sv .aip-cc-card{position:relative; background:#fff; border:1px solid #e3e5e9; box-shadow:0 30px 60px -36px rgba(70,75,85,.45)}
.aip-sv .aip-cc-card::before{content:""; position:absolute; left:-1px; top:-1px; bottom:-1px; width:4px; background:var(--red)}
.aip-sv .aip-cc-top{display:flex; justify-content:space-between; align-items:flex-start; gap:14px; padding:18px 22px 14px; border-bottom:1px solid var(--line)}
.aip-sv .aip-cc-top small{display:block; font-size:10.5px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--muted)}
.aip-sv .aip-cc-top strong{display:block; font-size:16px; font-weight:700; color:var(--ink); margin-top:3px}
.aip-sv .aip-cc-flag{flex:none; font-size:10px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); border:1px solid #f1c4c4; background:#fdf4f4; padding:6px 9px; border-radius:3px}
.aip-sv .aip-cc-card table{width:100%; border-collapse:collapse}
.aip-sv .aip-cc-card th{font-size:10px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--muted); text-align:left; padding:9px 14px; background:#fbfbfc; border-bottom:1px solid var(--line)}
.aip-sv .aip-cc-card td{padding:11px 14px; border-bottom:1px solid #f0f1f3; font-size:12.5px; line-height:1.45; color:var(--text); vertical-align:top}
.aip-sv .aip-cc-card td:first-child{width:46px; font-weight:800; color:var(--ink)}
.aip-sv .aip-cc-card td b{color:var(--ink); font-weight:600}
.aip-sv .aip-ev{display:block; font-size:11px; color:var(--muted); margin-top:3px}
.aip-sv .aip-m{display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:700; white-space:nowrap; color:#237a52}
.aip-sv .aip-m::before{content:""; width:8px; height:8px; border-radius:50%; background:#2f9e6b}
.aip-sv .aip-m.is-part{color:#a06b00}
.aip-sv .aip-m.is-part::before{background:#e0a020}
.aip-sv .aip-cc-foot{display:flex; justify-content:space-between; align-items:center; gap:12px; padding:13px 22px; background:#fbfbfc; font-size:12px; color:var(--muted)}
.aip-sv .aip-cc-foot b{color:var(--ink)}
.aip-sv .aip-cc-bar{flex:1; max-width:150px; height:6px; border-radius:3px; background:#e6e8eb; overflow:hidden}
.aip-sv .aip-cc-bar i{display:block; height:100%; width:88%; background:var(--red)}

/* ===== A&L: clients ===== */
.aip-sv .aip-cli{display:grid; grid-template-columns:repeat(3,1fr); gap:22px}
.aip-sv .aip-cli-card{background:#fff; border:1px solid var(--line); border-top:3px solid var(--red); padding:32px 30px 28px}
.aip-sv .aip-cli-card .aip-ring{width:50px; height:50px; margin-bottom:20px}
.aip-sv .aip-cli-card h3{font-size:20px; margin-bottom:8px}
.aip-sv .aip-cli-card > p{font-size:14px !important; line-height:1.7; margin-bottom:16px}
.aip-sv .aip-cli-card ul li{position:relative; padding:9px 0 9px 26px; border-top:1px solid var(--line); font-size:13.5px; color:var(--ink); line-height:1.5}
.aip-sv .aip-cli-card ul li::before{content:""; position:absolute; left:0; top:13px; width:14px; height:14px; border-radius:50%; background:#fdeeee}
.aip-sv .aip-cli-card ul li::after{content:""; position:absolute; left:5px; top:15.5px; width:3.5px; height:7px; border:solid var(--red); border-width:0 1.8px 1.8px 0; transform:rotate(45deg)}

/* ===== A&L: practice blocks ===== */
.aip-sv .aip-prac{display:grid; gap:22px}
.aip-sv .aip-prac.is-3{grid-template-columns:repeat(3,1fr)}
.aip-sv .aip-prac.is-2{grid-template-columns:repeat(2,1fr)}
.aip-sv .aip-pb{display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); padding:32px 30px 28px}
.aip-sv .aip-pb-top{display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:22px}
.aip-sv .aip-pb-ic{width:52px; height:52px; border-radius:4px; background:var(--red); color:#fff; display:grid; place-items:center}
.aip-sv .aip-pb-ic svg.aip-ic{width:24px; height:24px}
.aip-sv .aip-pb-top small{font-size:10.5px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--muted); padding-top:6px}
.aip-sv .aip-pb h3{font-size:21px; margin-bottom:10px}
.aip-sv .aip-pb > p{font-size:14px !important; line-height:1.7; margin-bottom:18px}
.aip-sv .aip-pb ul{columns:1; margin-bottom:20px}
.aip-sv .aip-prac.is-2 .aip-pb ul{columns:2; column-gap:26px}
.aip-sv .aip-pb ul li{break-inside:avoid; position:relative; padding:6px 0 6px 16px; font-size:13.5px; color:var(--ink); line-height:1.5}
.aip-sv .aip-pb ul li::before{content:""; position:absolute; left:0; top:14px; width:7px; height:2px; background:var(--red)}
.aip-sv .aip-pb .aip-link{margin-top:auto; align-self:flex-start}
.aip-sv .aip-strip{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:22px; padding:22px 26px; background:#fdf4f4; border:1px solid #f6dede}
.aip-sv .aip-strip div{display:flex; align-items:center; gap:14px; font-size:14px; font-weight:600; color:var(--ink); line-height:1.4}
.aip-sv .aip-strip .aip-ring{background:var(--red); color:#fff}

/* ===== A&L: engagement ===== */
.aip-sv .aip-eng{display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line)}
.aip-sv .aip-eng > div{padding:32px 28px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:#fff}
.aip-sv .aip-eng small{display:block; font-size:10.5px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--red); margin-bottom:10px}
.aip-sv .aip-eng h3{font-size:19px; margin-bottom:8px}
.aip-sv .aip-eng p{font-size:14px !important; line-height:1.7}
.aip-sv .aip-commit{display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:26px; background:var(--grey); border-left:3px solid var(--red)}
.aip-sv .aip-commit > div > div{display:block}
.aip-sv .aip-commit > div{display:flex; gap:12px; align-items:flex-start; padding:20px 22px; font-size:13.5px; color:var(--ink); line-height:1.5}
.aip-sv .aip-commit b{display:block; font-weight:700}
.aip-sv .aip-commit span:not(.aip-ring){display:block; color:var(--muted); font-size:12.5px}
.aip-sv .aip-commit .aip-ring{background:#fff}


/* ===== SERVICE TEMPLATE: hero with form ===== */
.aip-sv .aip-hero-in.is-form{grid-template-columns:1fr 470px; gap:60px; align-items:start; padding-bottom:70px}
.aip-sv .aip-hero-pts{margin:28px 0 0; display:grid; gap:12px}
.aip-sv .aip-hero-pts li{display:grid; grid-template-columns:26px 1fr; gap:12px; font-size:15px; color:var(--ink); line-height:1.5}
.aip-sv .aip-hero-pts li::before{content:""; width:22px; height:22px; border-radius:50%; background:#fdeeee url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dd3333' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat; margin-top:1px}
.aip-sv .aip-hero-pts b{font-weight:700}
.aip-sv .aip-trust{display:flex; flex-wrap:wrap; gap:26px; margin-top:34px; padding-top:24px; border-top:1px solid #e1e4e8}
.aip-sv .aip-trust div strong{display:block; font-size:26px; font-weight:800; color:var(--ink); letter-spacing:-.5px; line-height:1}
.aip-sv .aip-trust div span{display:block; font-size:12.5px; color:var(--muted); margin-top:6px}

/* form card */
.aip-sv .aip-form-card{position:relative; background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red); box-shadow:0 34px 70px -40px rgba(50,55,65,.55); padding:30px 30px 26px}
.aip-sv .aip-form-card h2{font-size:24px; letter-spacing:-.4px; margin-bottom:6px}
.aip-sv .aip-form-card > p{font-size:13.5px !important; line-height:1.6; margin-bottom:20px}
.aip-sv .aip-form{display:grid; grid-template-columns:1fr 1fr; gap:14px 14px}
.aip-sv .aip-field{display:flex; flex-direction:column; gap:6px; min-width:0}
.aip-sv .aip-field.is-full{grid-column:1 / -1}
.aip-sv .aip-field label{font-size:12.5px; font-weight:600; color:var(--ink)}
.aip-sv .aip-field label i{font-style:normal; color:var(--red)}
.aip-sv .aip-field label em{font-style:normal; font-weight:400; color:var(--muted)}
.aip-sv .aip-form input[type=text], .aip-sv .aip-form input[type=email], .aip-sv .aip-form input[type=tel], .aip-sv .aip-form select, .aip-sv .aip-form textarea{width:100%; height:44px; padding:0 13px; border:1px solid #d6d9de; border-radius:4px; background:#fff; font-size:14px !important; color:var(--ink); font-family:inherit; box-shadow:none; margin:0; transition:border-color .2s, box-shadow .2s}
.aip-sv .aip-form select{appearance:none; -webkit-appearance:none; padding-right:36px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 12px center/16px no-repeat}
.aip-sv .aip-form textarea{height:92px; padding:11px 13px; resize:vertical; line-height:1.5}
.aip-sv .aip-form input:focus, .aip-sv .aip-form select:focus, .aip-sv .aip-form textarea:focus{outline:none; border-color:var(--red); box-shadow:0 0 0 3px rgba(221,51,51,.14)}
.aip-sv .aip-form .is-bad input, .aip-sv .aip-form .is-bad select, .aip-sv .aip-form .is-bad textarea{border-color:var(--red)}
.aip-sv .aip-err{display:none; font-size:12px; color:var(--red)}
.aip-sv .is-bad .aip-err{display:block}
.aip-sv .aip-consent{grid-column:1 / -1; display:grid; grid-template-columns:18px 1fr; gap:10px; align-items:start; font-size:12.5px; color:var(--text); line-height:1.5}
.aip-sv .aip-consent input{width:16px; height:16px; margin:2px 0 0; accent-color:var(--red)}
.aip-sv .aip-hp{position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden}
.aip-sv .aip-form button[type=submit]{grid-column:1 / -1; display:flex; justify-content:center; align-items:center; gap:14px; height:50px; border:0; border-radius:4px; background:var(--red); color:#fff; font-size:14px; font-weight:700; cursor:pointer; transition:background .2s}
.aip-sv .aip-form button[type=submit]:hover{background:#5f6368}
.aip-sv .aip-form button[disabled]{opacity:.7; cursor:wait}
.aip-sv .aip-form-note{grid-column:1 / -1; display:flex; align-items:center; gap:8px; font-size:12px; color:var(--muted)}
.aip-sv .aip-form-note svg.aip-ic{width:15px; height:15px; color:#2f9e6b}
.aip-sv .aip-msg{grid-column:1 / -1; display:none; padding:13px 15px; border-radius:4px; font-size:13.5px; line-height:1.5}
.aip-sv .aip-msg.is-ok{display:block; background:#e8f5ee; color:#1d6b46; border:1px solid #bfe3cf}
.aip-sv .aip-msg.is-err{display:block; background:#fdf1f1; color:#a32020; border:1px solid #f3c9c9}

/* at a glance */
.aip-sv .aip-glance{display:grid; grid-template-columns:1.1fr .9fr; gap:64px; align-items:start}
.aip-sv .aip-glance-copy h2{margin-bottom:20px}
.aip-sv .aip-glance-copy p + p{margin-top:16px}
.aip-sv .aip-spec{background:#fff; border:1px solid var(--line); border-top:3px solid var(--red)}
.aip-sv .aip-spec h3{font-size:18px; padding:22px 26px 14px}
.aip-sv .aip-spec dl{margin:0}
.aip-sv .aip-spec dl > div{display:grid; grid-template-columns:130px 1fr; gap:16px; padding:14px 26px; border-top:1px solid var(--line)}
.aip-sv .aip-spec dt{font-size:11px; font-weight:800; letter-spacing:1.1px; text-transform:uppercase; color:var(--muted); padding-top:2px}
.aip-sv .aip-spec dd{margin:0; font-size:14px; color:var(--ink); line-height:1.55; font-weight:500}

/* jurisdictions */
.aip-sv .aip-juris{display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line)}
.aip-sv .aip-juris a, .aip-sv .aip-juris div{display:block; padding:24px 20px; background:#fff; border-right:1px solid var(--line); border-bottom:1px solid var(--line); transition:background .2s}
.aip-sv .aip-juris a:hover{background:var(--grey)}
.aip-sv .aip-juris b{display:block; font-size:20px; font-weight:800; color:var(--ink); letter-spacing:-.3px}
.aip-sv .aip-juris small{display:block; font-size:12.5px; color:var(--muted); margin-top:4px}
.aip-sv .aip-juris .is-more{background:var(--red)}
.aip-sv .aip-juris .is-more b, .aip-sv .aip-juris .is-more small{color:#fff}
.aip-sv .aip-juris .is-more:hover{background:#c42a2a}

/* flags */
.aip-sv .aip-juris2{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
.aip-sv .aip-jt{display:flex; align-items:center; gap:16px; padding:20px 20px; background:#fff; border:1px solid var(--line); transition:box-shadow .25s, transform .25s}
.aip-sv .aip-jt:hover{box-shadow:0 20px 40px -28px rgba(70,75,85,.55); transform:translateY(-2px)}
.aip-sv .aip-flag{flex:none; width:54px; height:36px; border-radius:3px; overflow:hidden; box-shadow:0 0 0 1px rgba(0,0,0,.12), 0 6px 14px -8px rgba(0,0,0,.35)}
.aip-sv .aip-flag > svg{display:block; width:100%; height:100%}
.aip-sv .aip-flag.is-globe{display:grid; place-items:center; background:rgba(255,255,255,.14); box-shadow:none}
.aip-sv .aip-flag.is-globe > svg{width:26px; height:26px}
.aip-sv .aip-jt b{display:block; font-size:16px; font-weight:700; color:var(--ink)}
.aip-sv .aip-jt small{display:block; font-size:12.5px; color:var(--muted); margin-top:2px}
.aip-sv .aip-jt.is-more{background:var(--red); border-color:var(--red)}
.aip-sv .aip-jt.is-more b, .aip-sv .aip-jt.is-more small{color:#fff}
/* industries */
.aip-sv .aip-ind{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
.aip-sv .aip-ic-card{background:#fff; border:1px solid var(--line); overflow:hidden; transition:box-shadow .25s}
.aip-sv .aip-ic-card:hover{box-shadow:0 20px 40px -28px rgba(70,75,85,.55)}
.aip-sv .aip-ic-img{height:150px; background:#e6e8eb center/cover no-repeat; transition:transform .5s}
.aip-sv .aip-ic-card:hover .aip-ic-img{transform:scale(1.05)}
.aip-sv .aip-ic-body{position:relative; padding:14px 16px 16px; border-top:3px solid var(--red); background:#fff}
.aip-sv .aip-ic-body h3{font-size:15.5px; margin-bottom:3px}
.aip-sv .aip-ic-body small{display:block; font-size:12.5px; color:var(--muted); line-height:1.45}
/* phone with country code */
.aip-sv .aip-phone{display:grid; grid-template-columns:minmax(0,46%) 1fr; gap:8px}
.aip-sv .aip-juris2.is-5{grid-template-columns:repeat(5,1fr)}
.aip-sv .aip-juris2.is-5 .aip-jt{padding:18px 16px; gap:12px}
.aip-sv .aip-juris2.is-5 .aip-flag{width:46px; height:31px}
/* more countries */
.aip-sv .aip-more-head{margin:34px 0 14px; font-size:11px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--muted)}
.aip-sv .aip-more{display:grid; grid-template-columns:repeat(5,auto); gap:22px 34px; justify-content:start; padding:24px 26px; background:var(--grey); border:1px solid var(--line)}
.aip-sv .aip-more-g .aip-k{margin-bottom:10px}
.aip-sv .aip-chips2{display:flex; flex-wrap:wrap; gap:8px}
.aip-sv .aip-chip{display:inline-flex; align-items:center; gap:8px; padding:7px 11px 7px 8px; background:#fff; border:1px solid #e3e5e9; border-radius:3px; font-size:13px; font-weight:600; color:var(--ink)}
.aip-sv .aip-chip.is-reg{padding:7px 11px; gap:6px; font-weight:500; color:var(--muted)}
.aip-sv .aip-chip.is-reg b{color:var(--ink); font-weight:700}
.aip-sv .aip-mflag{width:24px; height:16px; border-radius:2px; overflow:hidden; box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.aip-sv .aip-mflag > svg, .aip-sv .aip-tflag > svg{display:block; width:100%; height:100%}
.aip-sv .aip-more-note{display:flex; align-items:center; gap:10px; margin-top:16px; font-size:13.5px !important}
.aip-sv .aip-more-note a{color:var(--red) !important; font-weight:600}
/* requirements table */
.aip-sv .aip-req-wrap{overflow-x:auto; background:#fff; border:1px solid var(--line); border-top:3px solid var(--red)}
.aip-sv .aip-req{width:100%; border-collapse:collapse; min-width:760px}
.aip-sv .aip-req th{text-align:left; font-size:11px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--muted); padding:14px 20px; background:#fbfbfc; border-bottom:1px solid var(--line)}
.aip-sv .aip-req td{padding:16px 20px; border-bottom:1px solid var(--line); font-size:14px; color:var(--text); line-height:1.55; vertical-align:top}
.aip-sv .aip-req tr:last-child td{border-bottom:0}
.aip-sv .aip-req td:first-child{min-width:190px}
.aip-sv .aip-tcell{display:grid; grid-template-columns:38px 1fr; column-gap:12px; align-items:center}
.aip-sv .aip-tcell b{font-size:15px; font-weight:700; color:var(--ink); grid-column:2}
.aip-sv .aip-tcell small{grid-column:2; font-size:12px; color:var(--muted)}
.aip-sv .aip-tflag{grid-row:1 / span 2; width:38px; height:25px; border-radius:2px; overflow:hidden; box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.aip-sv .aip-req td:nth-child(2){color:var(--ink); font-weight:500; min-width:150px}
.aip-sv .aip-req tbody tr:hover td{background:#fcfcfd}
.aip-sv .aip-req-note{margin-top:14px; font-size:12.5px !important; color:var(--muted) !important}

/* ---- PCT life cycle ---- */
.aip-sv .aip-lc-track{position:relative; height:196px; margin-bottom:10px}
.aip-sv .aip-lc-axis{position:absolute; left:22px; right:22px; top:0; bottom:0}
.aip-sv .aip-lc-band{position:absolute; top:0; height:34px; display:flex; align-items:center; padding:0 14px; font-size:11px; font-weight:800; letter-spacing:1.6px; text-transform:uppercase; white-space:nowrap; box-sizing:border-box}
.aip-sv .aip-lc-band small{font-size:11px; font-weight:600; letter-spacing:1.2px; margin-left:6px; opacity:.75}
.aip-sv .aip-lc-band.is-int{left:-22px; width:calc(88.2% + 22px); background:var(--grey); color:#555; border-left:3px solid var(--red)}
.aip-sv .aip-lc-band.is-nat{left:88.2%; right:-22px; background:var(--red); color:#fff; margin-left:4px}
.aip-sv .aip-lc-bar{position:absolute; left:-22px; right:-22px; top:118px; height:2px; background:linear-gradient(90deg,#d5d8dd 0,#d5d8dd 88.2%,var(--red) 88.2%)}
.aip-sv .aip-lc-m{position:absolute; top:119px; transform:translate(-50%,-50%); width:44px; height:44px}
.aip-sv .aip-lc-m b{display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#fff; border:2px solid #c9ccd2; color:#6b7078; font-size:13px; font-weight:800; box-sizing:border-box}
.aip-sv .aip-lc-m.is-key b{background:var(--red); border-color:var(--red); color:#fff}
.aip-sv .aip-lc-m em{position:absolute; left:50%; transform:translateX(-50%); font-style:normal; font-size:13px; font-weight:700; color:var(--ink); white-space:nowrap}
.aip-sv .aip-lc-m em::before{content:""; position:absolute; left:50%; width:1px; height:10px; background:#c9ccd2}
.aip-sv .aip-lc-m.is-up em{bottom:58px}
.aip-sv .aip-lc-m.is-up em::before{top:calc(100% + 3px)}
.aip-sv .aip-lc-m.is-dn em{top:58px}
.aip-sv .aip-lc-m.is-dn em::before{bottom:calc(100% + 3px)}
.aip-sv .aip-lc-bar + .aip-lc-m em{left:0; transform:none}
.aip-sv .aip-lc-bar + .aip-lc-m em::before{left:22px}
.aip-sv ol.aip-lc-steps{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; list-style:none !important; margin:30px 0 0 !important; padding:0 !important}
.aip-sv .aip-lc-steps li{background:#fff; border:1px solid #e6e8ec; border-top:3px solid #c9ccd2; padding:24px 26px 26px; margin:0 !important; list-style:none !important}
.aip-sv .aip-lc-steps li.is-key{border-top-color:var(--red)}
.aip-sv .aip-lc-mo{display:block; font-size:11px; font-weight:800; letter-spacing:1.6px; text-transform:uppercase; color:var(--red)}
.aip-sv .aip-lc-steps h3{font-size:17px; margin:10px 0 8px; line-height:1.35}
.aip-sv .aip-lc-steps p{font-size:14px !important; line-height:1.7 !important; margin:0 !important}
.aip-sv .aip-grey .aip-ask{background:#fff}

/* ---- Country picker (national phase form) ---- */
.aip-sv .aip-field label .aip-cnt{float:right; font-weight:700; color:var(--red); font-size:11.5px; letter-spacing:.3px}
.aip-sv .aip-cquick{display:grid; grid-template-columns:repeat(3,1fr); gap:6px}
.aip-sv .aip-form button.aip-cq{display:flex !important; align-items:center; gap:7px; width:100%; height:34px; margin:0; padding:0 8px !important; background:#fff !important; border:1px solid #d6d9de !important; border-radius:4px; box-shadow:none !important; font-family:inherit; font-size:12.5px !important; font-weight:600; color:var(--ink) !important; text-transform:none !important; letter-spacing:0 !important; line-height:1 !important; text-align:left; cursor:pointer; white-space:nowrap; overflow:hidden; transition:border-color .15s, background .15s}
.aip-sv .aip-form button.aip-cq:hover{border-color:#a9adb4 !important}
.aip-sv .aip-form button.aip-cq.is-on{background:#fdf1f1 !important; border-color:var(--red) !important; color:var(--red) !important}
.aip-sv .aip-cq .aip-mflag{flex:none; width:20px; height:13px}
.aip-sv .aip-cq span.aip-cq-t{overflow:hidden; text-overflow:ellipsis}
.aip-sv .aip-csearch{position:relative; margin-top:8px}
.aip-sv .aip-form .aip-csearch input[type=text]{height:40px; padding-left:36px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") 12px center/16px no-repeat}
.aip-sv .aip-clist{position:absolute; z-index:30; left:0; right:0; top:calc(100% + 4px); max-height:250px; overflow:auto; background:#fff; border:1px solid #d6d9de; border-radius:4px; box-shadow:0 22px 44px -22px rgba(40,45,55,.45)}
.aip-sv .aip-clist[hidden]{display:none}
.aip-sv .aip-clist .aip-cg{display:block; padding:9px 12px 5px; font-size:10.5px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--muted)}
.aip-sv .aip-form .aip-clist button{display:flex !important; justify-content:space-between; align-items:center; width:100%; height:auto; margin:0; padding:8px 12px !important; background:#fff !important; border:0 !important; border-radius:0; box-shadow:none !important; font-family:inherit; font-size:13.5px !important; font-weight:500; color:var(--ink) !important; text-transform:none !important; letter-spacing:0 !important; line-height:1.3 !important; text-align:left; cursor:pointer}
.aip-sv .aip-form .aip-clist button:hover, .aip-sv .aip-form .aip-clist button.is-act{background:#f4f5f7 !important}
.aip-sv .aip-form .aip-clist button.is-on{color:var(--red) !important; font-weight:700}
.aip-sv .aip-form .aip-clist button.is-on::after{content:"\2713"; font-weight:800}
.aip-sv .aip-clist .aip-cnone{display:block; padding:12px; font-size:13px; color:var(--muted)}
.aip-sv .aip-csel{display:flex; flex-wrap:wrap; gap:6px; margin-top:8px}
.aip-sv .aip-csel:empty{display:none}
.aip-sv .aip-csel span{display:inline-flex; align-items:center; gap:6px; padding:5px 6px 5px 10px; background:#f4f5f7; border:1px solid #e1e4e8; border-radius:3px; font-size:12.5px; font-weight:600; color:var(--ink)}
.aip-sv .aip-form .aip-csel button{display:grid !important; place-items:center; width:18px; height:18px; margin:0; padding:0 !important; border:0 !important; border-radius:50%; background:#dfe2e6 !important; color:#555 !important; font-size:12px !important; line-height:1 !important; box-shadow:none !important; cursor:pointer}
.aip-sv .aip-form .aip-csel button:hover{background:var(--red) !important; color:#fff !important}
.aip-sv .aip-form .is-bad .aip-cquick button.aip-cq{border-color:#e9a3a3 !important}
.aip-sv .aip-field-hint{font-size:11.5px; color:var(--muted); line-height:1.45}

/* ---- Proposal preview ---- */
.aip-sv .aip-qdoc{position:relative; background:#fff; border:1px solid #e3e5e9; box-shadow:0 40px 80px -50px rgba(50,55,65,.5); overflow:hidden}
.aip-sv .aip-qdoc-top{display:flex; justify-content:space-between; align-items:flex-start; gap:24px; padding:26px 30px 22px; border-bottom:1px solid #eceef1; border-top:4px solid var(--red)}
.aip-sv .aip-qdoc-brand{display:flex; align-items:center; gap:12px}
.aip-sv .aip-qdoc-logo{display:grid; place-items:center; width:40px; height:40px; background:var(--red); color:#fff; font-weight:800; font-size:18px; border-radius:3px}
.aip-sv .aip-qdoc-brand b{display:block; font-size:17px; color:var(--ink)}
.aip-sv .aip-qdoc-brand small{display:block; font-size:12px; color:var(--muted); margin-top:2px}
.aip-sv .aip-qdoc-meta{display:grid; grid-template-columns:repeat(4,auto); gap:4px 26px; font-size:12px; color:var(--muted); text-align:left}
.aip-sv .aip-qdoc-meta b{display:block; color:var(--ink); font-size:12.5px; font-weight:700; margin-top:2px; white-space:nowrap}
.aip-sv .aip-qdoc-stamp{position:absolute; right:26px; bottom:22px; transform:rotate(-8deg); border:2px solid rgba(221,51,51,.45); color:rgba(221,51,51,.6); font-size:11px; font-weight:800; letter-spacing:2px; padding:5px 10px; text-transform:uppercase; pointer-events:none}
.aip-sv .aip-qdoc-scroll{overflow-x:auto}
.aip-sv table.aip-qt{width:100%; min-width:900px; border-collapse:collapse; margin:0; border:0; font-size:13px}
.aip-sv .aip-qt th{background:#f7f8fa; color:var(--muted); font-size:10.5px; font-weight:800; letter-spacing:.9px; text-transform:uppercase; text-align:left; padding:12px 12px; border:0; border-bottom:1px solid #e6e8ec; white-space:nowrap}
.aip-sv .aip-qt td{padding:14px 12px; border:0; border-bottom:1px solid #eef0f2; color:var(--ink); vertical-align:middle; white-space:nowrap; background:#fff}
.aip-sv .aip-qt th:first-child, .aip-sv .aip-qt td:first-child{padding-left:30px}
.aip-sv .aip-qt th:last-child, .aip-sv .aip-qt td:last-child{padding-right:30px; text-align:right}
.aip-sv .aip-qt .aip-qc{display:flex; align-items:center; gap:10px; font-weight:700}
.aip-sv .aip-qt .aip-qc small{display:block; font-weight:500; color:var(--muted); font-size:11.5px}
.aip-sv .aip-qt .aip-mflag{width:24px; height:16px; flex:none}
.aip-sv .aip-amt{display:inline-block; width:var(--w,54px); height:9px; border-radius:5px; background:#dfe2e6; vertical-align:middle}
.aip-sv .aip-amt.is-tot{background:#9da2aa}
.aip-sv .aip-tag{display:inline-block; padding:3px 8px; border-radius:3px; font-size:11px; font-weight:700; background:#f1f2f4; color:#666}
.aip-sv .aip-tag.is-due{background:#fdecec; color:#c62828}
.aip-sv .aip-tag.is-opt{background:#eef5f1; color:#2f7d55}
.aip-sv .aip-qt .is-na{color:#a3a7ae}
.aip-sv .aip-qt tfoot td{background:#fafbfc; font-weight:800; border-bottom:0}
.aip-sv .aip-qt tfoot .aip-amt{background:var(--red); height:11px}
.aip-sv .aip-qdoc-post{display:flex; flex-wrap:wrap; align-items:center; gap:8px 10px; padding:18px 30px 22px; border-top:1px solid #eceef1; font-size:12px; color:var(--muted)}
.aip-sv .aip-qdoc-post b{color:var(--ink); font-size:12px; margin-right:4px}
.aip-sv .aip-qdoc-post span{padding:4px 9px; background:#f4f5f7; border-radius:3px; color:#555; font-weight:600}

/* ---- Fee stages ---- */
.aip-sv .aip-stages{display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:28px}
.aip-sv .aip-stage{background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red)}
.aip-sv .aip-stage.is-post{border-top-color:#5f6368}
.aip-sv .aip-stage-h{display:flex; align-items:center; gap:16px; padding:24px 30px 20px; border-bottom:1px solid #eceef1}
.aip-sv .aip-stage-n{display:grid; place-items:center; flex:none; width:46px; height:46px; border-radius:50%; background:var(--red); color:#fff; font-weight:800; font-size:15px}
.aip-sv .aip-stage.is-post .aip-stage-n{background:#5f6368}
.aip-sv .aip-stage-h small{display:block; font-size:11px; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted)}
.aip-sv .aip-stage-h h3{font-size:20px; margin:3px 0 0}
.aip-sv ul.aip-fees{list-style:none !important; margin:0 !important; padding:6px 30px 14px !important}
.aip-sv .aip-fees li{display:grid; grid-template-columns:1fr auto; gap:4px 16px; align-items:start; padding:14px 0; border-bottom:1px solid #f0f1f3; margin:0 !important; list-style:none !important}
.aip-sv .aip-fees li:last-child{border-bottom:0}
.aip-sv .aip-fees b{font-size:15px; color:var(--ink)}
.aip-sv .aip-fees p{grid-column:1; font-size:13px !important; line-height:1.55 !important; margin:0 !important; color:var(--muted)}
.aip-sv .aip-fees .aip-tag{grid-row:1 / span 2; grid-column:2; align-self:center; white-space:nowrap}
.aip-sv .aip-nohid{display:grid; grid-template-columns:auto 1fr; gap:34px; align-items:center; margin-top:24px; padding:30px 34px; background:#fff; border:1px solid #e3e5e9; border-left:4px solid var(--red)}
.aip-sv .aip-nohid-badge{display:flex; align-items:center; gap:16px}
.aip-sv .aip-nohid-badge .aip-ring{width:58px; height:58px}
.aip-sv .aip-nohid-badge strong{display:block; font-size:22px; line-height:1.2; color:var(--ink); letter-spacing:-.3px}
.aip-sv .aip-nohid-badge strong span{color:var(--red)}
.aip-sv ul.aip-nohid-pts{display:grid; grid-template-columns:1fr 1fr; gap:10px 28px; list-style:none !important; margin:0 !important; padding:0 !important}
.aip-sv .aip-nohid-pts li{position:relative; padding-left:26px; font-size:14px; line-height:1.5; color:var(--ink); margin:0 !important; list-style:none !important}
.aip-sv .aip-nohid-pts li::before{content:""; position:absolute; left:0; top:4px; width:15px; height:15px; border-radius:50%; background:#fdecec url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dd3333' stroke-width='3.5'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/9px no-repeat}

/* ---- Deadline calculator ---- */
.aip-sv .aip-calc{display:grid; grid-template-columns:auto 1fr auto; gap:26px; align-items:center; padding:22px 28px; background:var(--grey); border-left:4px solid var(--red); margin-bottom:22px}
.aip-sv .aip-calc label{display:block; font-size:11px; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); margin-bottom:7px}
.aip-sv .aip-calc input[type=date]{height:46px; padding:0 14px; border:1px solid #d6d9de; border-radius:4px; background:#fff; font-family:inherit; font-size:15px !important; color:var(--ink); min-width:210px; margin:0; box-shadow:none}
.aip-sv .aip-calc input[type=date]:focus{outline:none; border-color:var(--red); box-shadow:0 0 0 3px rgba(221,51,51,.14)}
.aip-sv .aip-calc p{font-size:13.5px !important; line-height:1.6 !important; margin:0 !important}
.aip-sv .aip-calc p b{color:var(--ink)}
.aip-sv .aip-dl{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
.aip-sv .aip-dt{display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); transition:box-shadow .25s, transform .25s}
.aip-sv .aip-dt:hover{box-shadow:0 20px 40px -28px rgba(70,75,85,.55); transform:translateY(-2px)}
.aip-sv .aip-dt-top{display:flex; align-items:center; gap:14px; padding:18px 18px 14px}
.aip-sv .aip-dt-top .aip-flag{width:46px; height:31px}
.aip-sv .aip-dt-top b{display:block; font-size:15.5px; color:var(--ink)}
.aip-sv .aip-dt-top small{display:block; font-size:12px; color:var(--muted); margin-top:2px}
.aip-sv .aip-dt-bot{display:flex; justify-content:space-between; align-items:flex-end; gap:10px; margin-top:auto; padding:12px 18px 15px; border-top:1px dashed #e3e5e9}
.aip-sv .aip-dt-mo{font-size:22px; font-weight:800; color:var(--ink); letter-spacing:-.5px; line-height:1}
.aip-sv .aip-dt-mo small{font-size:12px; font-weight:600; color:var(--muted); letter-spacing:0; margin-left:4px}
.aip-sv .aip-dt.is-31 .aip-dt-mo{color:var(--red)}
.aip-sv .aip-dt-date{text-align:right; font-size:12px; color:var(--muted); line-height:1.35}
.aip-sv .aip-dt-date b{display:block; font-size:13.5px; color:var(--ink)}
.aip-sv .aip-dt-date.is-soon b{color:#c77700}
.aip-sv .aip-dt-date.is-past b{color:var(--red)}
.aip-sv .aip-dt-late{display:block; font-style:normal; font-size:11.5px; font-weight:600; color:#b26a00; margin-top:4px}
.aip-sv .aip-dl-note{display:flex; gap:10px; align-items:flex-start; margin-top:18px; font-size:13px; color:var(--muted); line-height:1.6}
.aip-sv .aip-dl-note svg.aip-ic{flex:none; width:17px; height:17px; margin-top:2px; color:var(--muted)}

.aip-sv .aip-hcov{margin-top:34px; padding:22px 24px 20px; background:#fff; border:1px solid #e3e5e9; border-top:3px solid var(--red); max-width:600px}
.aip-sv .aip-hcov-h{display:flex; align-items:center; gap:9px; font-size:12px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--ink)}
.aip-sv .aip-hcov-h svg.aip-ic{width:17px; height:17px; color:var(--red)}
.aip-sv .aip-hcov ul{display:flex; flex-wrap:wrap; gap:7px; list-style:none !important; margin:14px 0 16px !important; padding:0 !important}
.aip-sv .aip-hcov li{margin:0 !important; padding:6px 11px; background:var(--grey); border:1px solid #e6e8ec; border-radius:3px; font-size:12.5px; font-weight:600; color:var(--ink); list-style:none !important}

/* ---- Official fee calculator ---- */
.aip-sv .aip-fc{background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red); box-shadow:0 40px 80px -55px rgba(50,55,65,.5)}
.aip-sv .aip-fc-steps{display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid #eceef1; counter-reset:fcs}
.aip-sv .aip-fc-step{display:flex; align-items:center; gap:12px; padding:18px 26px; font-size:13.5px; font-weight:700; color:#9aa0a8; border-right:1px solid #eceef1}
.aip-sv .aip-fc-step:last-child{border-right:0}
.aip-sv .aip-fc-step i{display:grid; place-items:center; flex:none; width:30px; height:30px; border-radius:50%; border:2px solid #d5d8dd; font-style:normal; font-size:12.5px; font-weight:800; color:#9aa0a8; background:#fff}
.aip-sv .aip-fc-step.is-on{color:var(--ink)}
.aip-sv .aip-fc-step.is-on i{border-color:var(--red); background:var(--red); color:#fff}
.aip-sv .aip-fc-step.is-done{color:var(--ink)}
.aip-sv .aip-fc-step.is-done i{border-color:#2f9e6b; background:#2f9e6b; color:#fff; font-size:0}
.aip-sv .aip-fc-step.is-done i::before{content:"\2713"; font-size:13px}
.aip-sv .aip-fc-body{padding:30px 32px 32px}
.aip-sv .aip-fc-pane[hidden]{display:none !important}
.aip-sv .aip-fc-gate{display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:40px; align-items:start}
.aip-sv .aip-fc h3{font-size:20px; margin:0 0 6px}
.aip-sv .aip-fc-sub{font-size:14px !important; line-height:1.6 !important; color:var(--muted); margin:0 0 20px !important}
.aip-sv .aip-fc-why{background:var(--grey); padding:24px 26px; border-left:3px solid var(--red)}
.aip-sv .aip-fc-why h4{font-size:12px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; margin:0 0 14px; color:var(--ink)}
.aip-sv ul.aip-fc-list{list-style:none !important; margin:0 !important; padding:0 !important; display:grid; gap:12px}
.aip-sv .aip-fc-list li{position:relative; padding-left:28px; font-size:14px; line-height:1.5; color:var(--ink); margin:0 !important; list-style:none !important}
.aip-sv .aip-fc-list li::before{content:""; position:absolute; left:0; top:2px; width:17px; height:17px; border-radius:50%; background:#fdecec url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dd3333' stroke-width='3.5'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/10px no-repeat}
.aip-sv .aip-fc-meta{margin-top:18px; padding-top:16px; border-top:1px solid #e3e5e9; font-size:12.5px; color:var(--muted)}
.aip-sv .aip-fc-meta b{color:var(--ink)}
.aip-sv .aip-fc-code{display:flex; gap:12px; align-items:stretch; max-width:460px; margin:6px 0 12px}
.aip-sv .aip-form .aip-fc-code input[type=text]{height:56px; font-size:26px !important; letter-spacing:10px; font-weight:800; text-align:center; padding:0 10px}
.aip-sv .aip-fc-code button[type=submit]{flex:none; width:150px; height:56px}
.aip-sv .aip-fc-links{display:flex; flex-wrap:wrap; gap:18px; font-size:13px}
.aip-sv .aip-form .aip-fc-links button, .aip-sv .aip-fc button.aip-fc-lnk{background:none !important; border:0 !important; padding:0 !important; margin:0; box-shadow:none !important; color:var(--red) !important; font-family:inherit; font-size:13px !important; font-weight:700; cursor:pointer; text-transform:none !important; letter-spacing:0 !important; height:auto; line-height:1.4 !important; text-decoration:underline; text-underline-offset:3px}
.aip-sv .aip-fc button.aip-fc-lnk[disabled]{color:#9aa0a8 !important; cursor:default; text-decoration:none}
.aip-sv .aip-fc-who{display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; padding:14px 18px; margin:-6px 0 24px; background:#f2f9f5; border:1px solid #cfe9db; font-size:13.5px; color:#1f5f3f}
.aip-sv .aip-fc-who b{color:#1f5f3f}
.aip-sv .aip-fc-grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px 16px}
.aip-sv .aip-fc-grid .is-2{grid-column:span 2}
.aip-sv .aip-fc-grid .is-full{grid-column:1 / -1}
.aip-sv .aip-seg{display:flex; border:1px solid #d6d9de; border-radius:4px; overflow:hidden; height:44px}
.aip-sv .aip-seg label{flex:1; position:relative; margin:0}
.aip-sv .aip-seg input{position:absolute; opacity:0; pointer-events:none}
.aip-sv .aip-seg span{display:flex; align-items:center; justify-content:center; height:100%; padding:0 10px; font-size:13px; font-weight:600; color:var(--muted); cursor:pointer; text-align:center; line-height:1.2; transition:background .15s, color .15s}
.aip-sv .aip-seg label + label span{border-left:1px solid #d6d9de}
.aip-sv .aip-seg input:checked + span{background:#fdf1f1; color:var(--red)}
.aip-sv .aip-seg input:focus-visible + span{outline:2px solid var(--red); outline-offset:-2px}
.aip-sv .aip-form input[type=number]{width:100%; height:44px; padding:0 13px; border:1px solid #d6d9de; border-radius:4px; background:#fff; font-size:14px !important; color:var(--ink); font-family:inherit; box-shadow:none; margin:0}
.aip-sv .aip-form input[type=number]:focus{outline:none; border-color:var(--red); box-shadow:0 0 0 3px rgba(221,51,51,.14)}
.aip-sv .aip-fc-extra{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px 16px; grid-column:1 / -1; padding:18px 18px 16px; background:var(--grey); border-left:3px solid var(--red)}
.aip-sv .aip-fc-extra[hidden]{display:none}
.aip-sv .aip-fc-extra > p{grid-column:1 / -1; margin:0 !important; font-size:12px !important; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--ink)}
.aip-sv .aip-fc-extra .aip-field[hidden]{display:none}
.aip-sv .aip-chk{display:flex; align-items:center; gap:10px; height:44px; font-size:13.5px; color:var(--ink); cursor:pointer}
.aip-sv .aip-chk input{width:18px; height:18px; accent-color:var(--red); margin:0}
.aip-sv .aip-fc-go{display:flex; align-items:center; gap:18px; flex-wrap:wrap; grid-column:1 / -1; margin-top:6px}
.aip-sv .aip-fc-go button[type=submit]{min-width:260px; padding:0 28px}
.aip-sv .aip-fc-go small{font-size:12.5px; color:var(--muted)}
.aip-sv .aip-form button[type=submit].is-busy{opacity:.75; cursor:wait}

/* results */
.aip-sv .aip-fr{margin-top:30px; border-top:1px solid #eceef1; padding-top:28px}
.aip-sv .aip-fr[hidden]{display:none}
.aip-sv .aip-fr-head{display:flex; justify-content:space-between; align-items:flex-end; gap:20px; flex-wrap:wrap; margin-bottom:16px}
.aip-sv .aip-fr-head h3{margin:0}
.aip-sv .aip-fr-head p{margin:4px 0 0 !important; font-size:13px !important; color:var(--muted)}
.aip-sv .aip-fr-tot{display:flex; gap:10px; flex-wrap:wrap}
.aip-sv .aip-fr-tot span{display:flex; flex-direction:column; padding:10px 16px; background:#fdf1f1; border-left:3px solid var(--red); font-size:11px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--muted)}
.aip-sv .aip-fr-tot b{font-size:21px; letter-spacing:-.4px; color:var(--red); text-transform:none}
.aip-sv .aip-fr-wrap{overflow-x:auto; border:1px solid #e6e8ec}
.aip-sv table.aip-ft{width:100%; min-width:860px; border-collapse:collapse; margin:0; border:0; font-size:13.5px}
.aip-sv .aip-ft th{background:#f7f8fa; color:var(--muted); font-size:10.5px; font-weight:800; letter-spacing:1px; text-transform:uppercase; text-align:right; padding:12px 14px; border:0; border-bottom:1px solid #e6e8ec; white-space:nowrap}
.aip-sv .aip-ft th:first-child{text-align:left}
.aip-sv .aip-ft td{padding:13px 14px; border:0; border-bottom:1px solid #eef0f2; text-align:right; vertical-align:middle; color:var(--ink); background:#fff; white-space:nowrap}
.aip-sv .aip-ft td:first-child{text-align:left; white-space:normal}
.aip-sv .aip-ft .aip-fcn{display:flex; align-items:center; gap:10px; font-weight:700}
.aip-sv .aip-ft .aip-fcn small{display:block; font-weight:500; font-size:11.5px; color:var(--muted)}
.aip-sv .aip-ft td.is-tot{font-weight:800; color:var(--ink); background:#fbfbfc}
.aip-sv .aip-ft .is-note{font-size:11.5px; color:var(--muted); white-space:normal; max-width:150px; display:inline-block; text-align:right; line-height:1.35}
.aip-sv .aip-ft .is-na{color:#b4b8be}
.aip-sv .aip-ft button.aip-fx{display:inline-grid !important; place-items:center; width:26px; height:26px; margin:0 0 0 6px; padding:0 !important; border:1px solid #d6d9de !important; border-radius:50%; background:#fff !important; color:var(--ink) !important; font-size:14px !important; line-height:1 !important; cursor:pointer; box-shadow:none !important; vertical-align:middle; transition:transform .2s}
.aip-sv .aip-ft tr.is-open button.aip-fx{transform:rotate(45deg); border-color:var(--red) !important; color:var(--red) !important}
.aip-sv .aip-ft tr.aip-fdet td{background:#fafbfc; text-align:left; white-space:normal; padding:16px 18px 18px}
.aip-sv .aip-fdet-g{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px 26px; font-size:13px}
.aip-sv .aip-fdet-g h5{font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--muted); margin:0 0 6px}
.aip-sv .aip-fdet-g dl{margin:0; display:grid; grid-template-columns:1fr auto; gap:5px 14px}
.aip-sv .aip-fdet-g dt{color:var(--muted); font-weight:500}
.aip-sv .aip-fdet-g dd{margin:0; font-weight:700; text-align:right}
.aip-sv .aip-fdet-g p{margin:0 !important; font-size:13px !important; line-height:1.55 !important}
.aip-sv .aip-fr-acts{display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:20px}
.aip-sv button.aip-btn{display:inline-flex !important; align-items:center; gap:20px; width:auto; height:auto; margin:0; padding:16px 22px !important; border:1px solid var(--red) !important; border-radius:4px; background:var(--red) !important; color:#fff !important; font-family:inherit; font-size:13px !important; font-weight:700; line-height:1.2 !important; letter-spacing:0 !important; text-transform:none !important; white-space:nowrap; box-shadow:none !important; cursor:pointer; transition:background .2s, border-color .2s}
.aip-sv button.aip-btn:hover{background:#5f6368 !important; border-color:#5f6368 !important}
.aip-sv button.aip-btn.aip-btn-line{background:#fff !important; color:var(--ink) !important; border-color:#c9ccd1 !important}
.aip-sv button.aip-btn.aip-btn-line:hover{background:#eef0f2 !important}
.aip-sv button.aip-btn[disabled]{opacity:.7; cursor:wait}
.aip-sv .aip-fc .aip-cquick{grid-template-columns:repeat(6,minmax(0,1fr))}
.aip-sv .aip-fr-note{display:flex; gap:10px; align-items:flex-start; margin-top:18px; font-size:12.5px; color:var(--muted); line-height:1.6}
.aip-sv .aip-fr-note svg.aip-ic{flex:none; width:16px; height:16px; margin-top:2px}
.aip-sv .aip-fc-msg{font-size:13.5px; margin-top:12px; padding:10px 14px; border-radius:3px}
.aip-sv .aip-fc-msg:empty{display:none}
.aip-sv .aip-fc-msg.is-err{background:#fdecec; color:#a61b1b}
.aip-sv .aip-fc-msg.is-ok{background:#eaf6ef; color:#1f6b45}
.aip-sv .aip-fc-off{padding:26px; background:var(--grey); border-left:3px solid var(--red); font-size:14px}

/* ---- Country guide ---- */
.aip-sv .aip-cg{display:grid; grid-template-columns:320px minmax(0,1fr); background:#fff; border:1px solid #e3e5e9; min-height:560px}
.aip-sv .aip-cg-side{border-right:1px solid #eceef1; display:flex; flex-direction:column; min-height:0}
.aip-sv .aip-cg-search{padding:16px; border-bottom:1px solid #eceef1}
.aip-sv .aip-cg-search input{width:100%; height:42px; padding:0 12px 0 36px; border:1px solid #d6d9de; border-radius:4px; font-family:inherit; font-size:14px !important; color:var(--ink); background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") 11px center/16px no-repeat; margin:0; box-shadow:none}
.aip-sv .aip-cg-search input:focus{outline:none; border-color:var(--red)}
.aip-sv .aip-cg-list{flex:1; overflow-y:auto; max-height:620px}
.aip-sv .aip-cg-list button{display:flex !important; align-items:center; gap:12px; width:100%; height:auto; margin:0; padding:11px 16px !important; background:#fff !important; border:0 !important; border-bottom:1px solid #f1f2f4 !important; border-left:3px solid transparent !important; border-radius:0; box-shadow:none !important; font-family:inherit; font-size:14px !important; font-weight:600; color:var(--ink) !important; text-transform:none !important; letter-spacing:0 !important; line-height:1.3 !important; text-align:left; cursor:pointer}
.aip-sv .aip-cg-list button:hover{background:#f7f8fa !important}
.aip-sv .aip-cg-list button.is-on{background:#fdf4f4 !important; border-left-color:var(--red) !important}
.aip-sv .aip-cg-list button small{margin-left:auto; font-size:12px; font-weight:600; color:var(--muted)}
.aip-sv .aip-cfl{display:inline-grid; place-items:center; flex:none; width:28px; height:19px; border-radius:2px; overflow:hidden; box-shadow:0 0 0 1px rgba(0,0,0,.12); background:#eef0f3; font-size:9px; font-weight:800; color:#555; text-transform:uppercase; letter-spacing:.3px}
.aip-sv .aip-cfl > svg{display:block; width:100%; height:100%}
.aip-sv .aip-cfl.is-lg{width:54px; height:36px; font-size:13px}
.aip-sv .aip-cg-main{padding:30px 34px 34px; min-width:0}
.aip-sv .aip-cg-top{display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:22px}
.aip-sv .aip-cg-top h3{font-size:26px; letter-spacing:-.5px; margin:0}
.aip-sv .aip-cg-top small{display:block; font-size:13px; color:var(--muted); margin-top:3px}
.aip-sv .aip-cg-top .aip-btn{margin-left:auto}
.aip-sv .aip-cg-facts{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:#eceef1; border:1px solid #eceef1; margin-bottom:22px}
.aip-sv .aip-cg-facts div{background:#fff; padding:16px 18px}
.aip-sv .aip-cg-facts span{display:block; font-size:10.5px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--muted); margin-bottom:6px}
.aip-sv .aip-cg-facts b{display:block; font-size:14.5px; color:var(--ink); line-height:1.4}
.aip-sv .aip-cg-notes{font-size:13.5px !important; line-height:1.6 !important; color:var(--ink); margin:0 0 20px !important; padding:12px 16px; background:#fffaf0; border-left:3px solid #e0a43a}
.aip-sv .aip-cg-lock{position:relative; border:1px solid #e6e8ec; overflow:hidden}
.aip-sv .aip-cg-lock-blur{filter:blur(5px); opacity:.55; pointer-events:none; padding:18px 20px}
.aip-sv .aip-cg-lock-blur div{height:12px; border-radius:6px; background:#dfe2e6; margin:12px 0}
.aip-sv .aip-cg-lock-in{position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; text-align:center; padding:20px; background:rgba(255,255,255,.55)}
.aip-sv .aip-cg-lock-in b{font-size:17px; color:var(--ink)}
.aip-sv .aip-cg-lock-in p{font-size:13.5px !important; color:var(--muted); margin:0 0 6px !important; max-width:380px}
.aip-sv .aip-cg-sched h4{font-size:12px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--ink); margin:22px 0 10px}
.aip-sv .aip-cg-sched h4:first-child{margin-top:0}
.aip-sv .aip-cg-var{font-size:15px; font-weight:800; color:var(--red); margin:26px 0 10px; padding-top:20px; border-top:1px solid #eceef1}
.aip-sv .aip-cg-var:first-child{margin-top:0; padding-top:0; border-top:0}
.aip-sv .aip-cg-two{display:grid; grid-template-columns:1fr 1fr; gap:22px}
.aip-sv .aip-cg-two dl, .aip-sv .aip-cg-ann{margin:0; display:grid; grid-template-columns:1fr auto; border:1px solid #eceef1}
.aip-sv .aip-cg-two dt, .aip-sv .aip-cg-two dd{padding:9px 12px; border-bottom:1px solid #f1f2f4; font-size:13px; margin:0}
.aip-sv .aip-cg-two dt{color:var(--muted)}
.aip-sv .aip-cg-two dd{text-align:right; font-weight:700; color:var(--ink)}
.aip-sv .aip-cg-two dd.is-tot, .aip-sv .aip-cg-two dt.is-tot{background:#fdf4f4; color:var(--red); font-weight:800}
.aip-sv .aip-cg-anns{display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; background:#eceef1; border:1px solid #eceef1}
.aip-sv .aip-cg-anns div{background:#fff; padding:9px 10px; font-size:12.5px}
.aip-sv .aip-cg-anns span{display:block; font-size:10.5px; font-weight:700; color:var(--muted); letter-spacing:.6px; text-transform:uppercase}
.aip-sv .aip-cg-anns b{font-size:13.5px; color:var(--ink)}
.aip-sv .aip-cg-basis{font-size:12.5px; color:var(--muted); margin:14px 0 0 !important}
.aip-sv .aip-cg-empty{display:grid; place-items:center; height:100%; min-height:300px; color:var(--muted); font-size:14px}
.aip-sv .aip-fcf{display:block}
.aip-sv .aip-hcov-acts{display:flex; flex-wrap:wrap; gap:22px}
.aip-sv .aip-cg-list button.is-hide{display:none !important}

/* ---- UI round 2: intro steps, enquiry, deadlines, country tabs ---- */
.aip-sv .aip-hsteps{align-self:center; background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red); box-shadow:0 34px 70px -40px rgba(50,55,65,.55); padding:28px 30px 30px}
.aip-sv .aip-hsteps-h{font-size:12px; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; color:var(--ink); margin-bottom:18px}
.aip-sv .aip-hsteps ol{list-style:none !important; margin:0 0 24px !important; padding:0 !important; display:grid; gap:0}
.aip-sv .aip-hsteps li{display:flex; gap:16px; align-items:flex-start; padding:16px 0; border-bottom:1px solid #eef0f2; margin:0 !important; list-style:none !important}
.aip-sv .aip-hsteps li:first-child{padding-top:0}
.aip-sv .aip-hsteps li > span{flex:none; display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:#fdecec; color:var(--red); font-weight:800; font-size:13px}
.aip-sv .aip-hsteps li b{display:block; font-size:16px; color:var(--ink)}
.aip-sv .aip-hsteps li small{display:block; font-size:13px; color:var(--muted); margin-top:3px; line-height:1.5}
.aip-sv .aip-hsteps-acts{display:flex; flex-direction:column; gap:10px}
.aip-sv .aip-hsteps-acts a.aip-btn{justify-content:center}
.aip-sv .aip-enq{display:grid; grid-template-columns:minmax(0,1fr) 470px; gap:60px; align-items:start}
.aip-sv .aip-enq-copy{padding-top:10px}
.aip-sv .aip-enq-copy h2{margin:10px 0 16px}
.aip-sv .aip-enq-copy > p{font-size:15.5px !important; line-height:1.75 !important; margin:0 0 24px !important}
.aip-sv .aip-enq-copy ul.aip-nohid-pts{grid-template-columns:1fr}
.aip-sv .aip-fr-dl{font-size:13px !important; color:var(--ink) !important; margin:6px 0 0 !important}
.aip-sv .aip-fr-dl b{color:var(--red)}
.aip-sv .aip-ft td.aip-fdl{text-align:left; white-space:nowrap}
.aip-sv .aip-ft td.aip-fdl b{display:block; font-size:13.5px; color:var(--ink)}
.aip-sv .aip-ft td.aip-fdl small{display:block; font-size:11.5px; color:var(--muted); margin-top:2px}
.aip-sv .aip-ft td.aip-fdl.is-soon b{color:#c77700}
.aip-sv .aip-ft td.aip-fdl.is-past b{color:var(--red)}
.aip-sv .aip-ft th:nth-child(2){text-align:left}
.aip-sv .aip-fc button.aip-fcd{display:block; margin-top:3px !important; font-size:11.5px !important; text-decoration:none}
.aip-sv .aip-fc button.aip-fcd::after{content:" \2192"}
.aip-sv .aip-fr-warn{display:flex; gap:12px; align-items:flex-start; margin-top:18px; padding:14px 18px; background:#fffaf0; border-left:3px solid #e0a43a; font-size:13px; line-height:1.6; color:var(--ink)}
.aip-sv .aip-fr-warn svg.aip-ic{flex:none; width:17px; height:17px; margin-top:2px; color:#b26a00}
.aip-sv .aip-cg-top small a{color:var(--muted); text-decoration:underline; text-underline-offset:3px}
.aip-sv .aip-cg-top small a::after{content:" \2197"}
.aip-sv .aip-cg-tabs{display:flex; gap:4px; border-bottom:2px solid #eceef1; margin-bottom:24px; overflow-x:auto}
.aip-sv .aip-cg-tabs button{display:inline-flex !important; align-items:center; gap:8px; flex:none; height:auto; margin:0 0 -2px; padding:12px 16px !important; background:none !important; border:0 !important; border-bottom:2px solid transparent !important; border-radius:0; box-shadow:none !important; font-family:inherit; font-size:14px !important; font-weight:700; color:var(--muted) !important; text-transform:none !important; letter-spacing:0 !important; line-height:1.2 !important; cursor:pointer; white-space:nowrap}
.aip-sv .aip-cg-tabs button:hover{color:var(--ink) !important}
.aip-sv .aip-cg-tabs button.is-on{color:var(--red) !important; border-bottom-color:var(--red) !important}
.aip-sv .aip-cg-lockic{display:inline-block; width:12px; height:12px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2.4'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center/contain no-repeat}
.aip-sv .aip-cg-intro{font-size:15px !important; line-height:1.75 !important; color:var(--ink); margin:0 0 22px !important}
.aip-sv .aip-cg-ov, .aip-sv .aip-cg-pa{display:grid; grid-template-columns:1fr 1fr; gap:1px; background:#eceef1; border:1px solid #eceef1}
.aip-sv .aip-cg-ov > div, .aip-sv .aip-cg-pa > div{background:#fff; padding:15px 18px}
.aip-sv .aip-cg-ov span, .aip-sv .aip-cg-pa span{display:block; font-size:10.5px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; color:var(--muted); margin-bottom:6px}
.aip-sv .aip-cg-ovt{font-size:13.5px; line-height:1.6; color:var(--ink)}
.aip-sv .aip-cg-pa{margin-top:18px}
.aip-sv .aip-cg-notes{margin-top:18px}
.aip-sv ol.aip-cg-steps{list-style:none !important; margin:0 !important; padding:0 !important; position:relative}
.aip-sv ol.aip-cg-steps::before{content:""; position:absolute; left:19px; top:8px; bottom:24px; width:2px; background:#e3e5e9}
.aip-sv .aip-cg-steps li{position:relative; display:flex; gap:18px; padding:0 0 22px; margin:0 !important; list-style:none !important}
.aip-sv .aip-cg-sn{position:relative; z-index:1; flex:none; display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:#fff; border:2px solid #d5d8dd; font-size:13px; font-weight:800; color:#6b7078}
.aip-sv .aip-cg-steps li.is-key .aip-cg-sn{background:var(--red); border-color:var(--red); color:#fff}
.aip-sv .aip-cg-steps small{display:block; font-size:11px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); margin-top:2px}
.aip-sv .aip-cg-steps b{display:block; font-size:16px; color:var(--ink); margin:3px 0 4px}
.aip-sv .aip-cg-st{font-size:13.5px; line-height:1.6; color:var(--muted)}
.aip-sv ul.aip-cg-docs{list-style:none !important; margin:0 !important; padding:0 !important; border:1px solid #eceef1}
.aip-sv .aip-cg-docs li{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:13px 18px; border-bottom:1px solid #f1f2f4; margin:0 !important; list-style:none !important; font-size:14px; color:var(--ink)}
.aip-sv .aip-cg-docs li:last-child{border-bottom:0}
.aip-sv .aip-cg-docs .aip-tag{flex:none; white-space:nowrap}
.aip-sv .aip-cg-locktx{font-size:13.5px; color:var(--muted); margin:0 0 6px; max-width:380px; line-height:1.6}
.aip-sv .aip-cg-basis{font-size:12.5px; color:var(--muted); margin:14px 0 0}
.aip-sv .aip-form input[type=date]{width:100%; height:44px; padding:0 12px; border:1px solid #d6d9de; border-radius:4px; background:#fff; font-size:14px !important; color:var(--ink); font-family:inherit; box-shadow:none; margin:0}
.aip-sv .aip-form input[type=date]:focus{outline:none; border-color:var(--red); box-shadow:0 0 0 3px rgba(221,51,51,.14)}
.aip-sv .aip-form .is-bad input[type=date], .aip-sv .aip-form .is-bad input[type=number]{border-color:var(--red)}
.aip-sv .aip-cg-two dl{grid-template-columns:minmax(150px,1fr) minmax(0,1.1fr)}
.aip-sv .aip-cg-anns{background:#fff; gap:0; border-right:0; border-bottom:0}
.aip-sv .aip-cg-anns div{border-right:1px solid #eceef1; border-bottom:1px solid #eceef1}
.aip-sv .aip-enq-mail{display:flex; align-items:center; gap:10px; margin-top:26px; padding-top:20px; border-top:1px solid #e3e5e9; font-size:14px; color:var(--ink)}
.aip-sv .aip-enq-mail svg.aip-ic{width:18px; height:18px; color:var(--red)}
.aip-sv .aip-enq-mail a{color:var(--red); font-weight:700}

/* ---- Country details: all PCT offices ---- */
.aip-sv .aip-cg-bar{display:flex; flex-wrap:wrap; gap:12px 16px; align-items:center; margin-bottom:12px}
.aip-sv .aip-cg-bar .aip-cg-search{padding:0; border:0; flex:1 1 280px; max-width:360px}
.aip-sv .aip-cg-regions, .aip-sv .aip-cg-views{display:flex; flex-wrap:wrap; gap:6px}
.aip-sv .aip-cg-views{margin-left:auto; background:#f1f2f4; padding:4px; border-radius:6px}
.aip-sv .aip-cg-regions button, .aip-sv .aip-cg-views button{display:inline-flex !important; align-items:center; height:auto; margin:0; padding:8px 13px !important; background:#fff !important; border:1px solid #d6d9de !important; border-radius:20px; box-shadow:none !important; font-family:inherit; font-size:13px !important; font-weight:600; color:var(--ink) !important; text-transform:none !important; letter-spacing:0 !important; line-height:1.2 !important; cursor:pointer; white-space:nowrap}
.aip-sv .aip-cg-regions button.is-on{background:var(--red) !important; border-color:var(--red) !important; color:#fff !important}
.aip-sv .aip-cg-views button{border:0 !important; border-radius:4px; background:transparent !important; color:var(--muted) !important}
.aip-sv .aip-cg-views button.is-on{background:#fff !important; color:var(--ink) !important; box-shadow:0 1px 3px rgba(0,0,0,.12) !important}
.aip-sv .aip-cg-meta{display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:12.5px; color:var(--muted); margin:0 0 12px}
.aip-sv .aip-cg-key{display:inline-flex; align-items:center; gap:7px}
.aip-sv i.aip-cg-fee{display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--red); margin-left:7px; vertical-align:middle}
.aip-sv .aip-cg-key i.aip-cg-fee{margin-left:0}
.aip-sv .aip-cg-side{max-height:none}
.aip-sv .aip-cg-list{max-height:760px}
.aip-sv .aip-cg-none{padding:20px 16px; font-size:13.5px; color:var(--muted)}
.aip-sv .aip-cg-route{display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:22px 24px; background:var(--grey); border-left:3px solid var(--red); margin-bottom:16px}
.aip-sv .aip-cg-route b{font-size:16px; color:var(--ink)}
.aip-sv .aip-cg-route .aip-btn{margin-top:6px}
.aip-sv .aip-cg-src{font-size:12px; color:var(--muted); margin-top:20px; padding-top:14px; border-top:1px solid #eceef1}
.aip-sv .aip-dtab-wrap{border:1px solid #e3e5e9; background:#fff; max-height:720px; overflow:auto}
.aip-sv .aip-dtab-wrap[hidden], .aip-sv .aip-cg[hidden]{display:none !important}
.aip-sv table.aip-dtab{width:100%; min-width:820px; border-collapse:collapse; margin:0; border:0; font-size:13.5px}
.aip-sv .aip-dtab th{position:sticky; top:0; z-index:1; background:#f7f8fa; color:var(--muted); font-size:10.5px; font-weight:800; letter-spacing:1px; text-transform:uppercase; text-align:left; padding:12px 14px; border:0; border-bottom:1px solid #e6e8ec; white-space:nowrap}
.aip-sv .aip-dtab td{padding:11px 14px; border:0; border-bottom:1px solid #f0f1f3; color:var(--ink); background:#fff; vertical-align:middle}
.aip-sv .aip-dtab tbody tr{cursor:pointer}
.aip-sv .aip-dtab tbody tr:hover td{background:#fdf6f6}
.aip-sv .aip-dtab td.is-num{font-weight:700; white-space:nowrap}
.aip-sv .aip-dtab td.is-note{font-size:12.5px; color:var(--muted); max-width:340px}
.aip-sv .aip-dtab .aip-fcn small{display:block; font-weight:500; font-size:11.5px; color:var(--muted)}
.aip-sv .aip-dtab .is-na{color:#a3a7ae; font-size:12.5px}
.aip-sv .aip-dtab .aip-fcn{display:flex; align-items:center; gap:10px; font-weight:700}
.aip-sv .aip-cg-top small a + a, .aip-sv .aip-cg-top small a{white-space:nowrap}
.aip-sv .aip-cg-h4{font-size:12px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--ink); margin:24px 0 10px}
.aip-sv .aip-cg-h4.is-first{margin-top:0}
.aip-sv table.aip-cg-ft{width:100%; border-collapse:collapse; margin:0; border:1px solid #eceef1; font-size:13.5px}
.aip-sv .aip-cg-ft td{padding:11px 16px; border:0; border-bottom:1px solid #f1f2f4; color:var(--ink); background:#fff; vertical-align:top}
.aip-sv .aip-cg-ft td:last-child{text-align:right; font-weight:700; white-space:nowrap; width:1%}
.aip-sv .aip-cg-ft tr:nth-child(even) td{background:#fafbfc}
.aip-sv .aip-cg-route.is-soft{background:#fdf6f6; margin-top:18px}
.aip-sv .aip-cg-src a{color:var(--red); font-weight:700}
.aip-sv .aip-cg-ov > div:last-child:nth-child(odd){grid-column:1 / -1}
/* stronger, more readable text in country details */
.aip-sv .aip-cg-intro{color:#222 !important; font-weight:500}
.aip-sv .aip-cg-ovt{font-size:14.5px; line-height:1.65; color:#222; font-weight:500}
.aip-sv .aip-cg-ov span, .aip-sv .aip-cg-pa span, .aip-sv .aip-cg-facts span{color:#555}
.aip-sv .aip-cg-facts b{color:#1f1f1f; font-weight:700}
.aip-sv .aip-cg-st{font-size:14px; color:#333; font-weight:500}
.aip-sv .aip-cg-steps b{color:#1f1f1f}
.aip-sv .aip-cg-docs li{font-size:14.5px; color:#222; font-weight:500}
.aip-sv .aip-cg-docs li.is-doc{justify-content:flex-start; gap:14px}
.aip-sv .aip-cg-docs li.is-doc::before{content:""; flex:none; width:18px; height:18px; border-radius:50%; background:#fdecec url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dd3333' stroke-width='3.5'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/10px no-repeat}
.aip-sv .aip-cg-notes{color:#222; font-weight:500}
.aip-sv .aip-cg-ft td{color:#222}
.aip-sv .aip-cg-two dt{color:#444}
.aip-sv .aip-cg-two dd{color:#1f1f1f}
.aip-sv .aip-fr-sent{margin-top:16px; padding:16px 20px; background:#eaf6ef; border-left:3px solid #2f9e6b; font-size:14px; line-height:1.6; color:#1f4d36}
.aip-sv .aip-fr-sent[hidden]{display:none}
.aip-sv .aip-fc button.aip-btn[disabled]{opacity:1; cursor:default; background:#2f9e6b !important; border-color:#2f9e6b !important}
.aip-sv .aip-form-card.is-short{padding:28px 28px 26px}
.aip-sv .aip-form-card.is-short textarea{height:84px}
.aip-sv .aip-enq{grid-template-columns:minmax(0,1fr) 440px}
.aip-sv .aip-cg-ov span, .aip-sv .aip-cg-pa span, .aip-sv .aip-cg-facts span{color:var(--red) !important; font-size:11.5px; font-weight:800; letter-spacing:1.2px; margin-bottom:7px}
.aip-sv .aip-ft small.aip-fsub{display:block; font-size:11px; color:var(--muted); margin-top:2px}
.aip-sv .aip-fdet-g{grid-template-columns:repeat(4,minmax(0,1fr))}
.aip-sv .aip-fdet-g dt.is-due{color:var(--red); font-weight:700}
.aip-sv .aip-cg-anns div.is-due{background:#fdf1f1}
.aip-sv .aip-cg-anns div.is-due span{color:var(--red) !important}
/* ---- Package of included work ---- */
.aip-sv .aip-pkg{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:start}
.aip-sv .aip-pkg-col{background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red)}
.aip-sv .aip-pkg-h{display:flex; align-items:center; gap:14px; padding:22px 24px 18px; border-bottom:1px solid #eceef1}
.aip-sv .aip-pkg-h > span{display:grid; place-items:center; flex:none; width:44px; height:44px; border-radius:50%; background:var(--red); color:#fff; font-weight:800; font-size:14px}
.aip-sv .aip-pkg-h small{display:block; font-size:11px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:var(--muted)}
.aip-sv .aip-pkg-h h3{font-size:19px; margin:3px 0 0}
.aip-sv .aip-pkg ul{list-style:none !important; margin:0 !important; padding:8px 24px 14px !important}
.aip-sv .aip-pkg li{position:relative; padding:13px 0 13px 30px; border-bottom:1px solid #f1f2f4; margin:0 !important; list-style:none !important}
.aip-sv .aip-pkg li:last-child{border-bottom:0}
.aip-sv .aip-pkg li::before{content:""; position:absolute; left:0; top:15px; width:18px; height:18px; border-radius:50%; background:#fdecec url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dd3333' stroke-width='3.5'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/10px no-repeat}
.aip-sv .aip-pkg li b{display:block; font-size:15px; color:#1f1f1f}
.aip-sv .aip-pkg li span{display:block; font-size:13.5px; line-height:1.55; color:#444; margin-top:3px}
.aip-sv .aip-pkg{align-items:stretch}
/* ---- Office tiles (office action page) ---- */
.aip-sv .aip-ot-grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px}
.aip-sv .aip-ot{background:#fff; border:1px solid var(--line); border-top:3px solid var(--red)}
.aip-sv .aip-ot-h{display:flex; align-items:center; gap:12px; padding:16px 18px 14px; border-bottom:1px solid #eef0f2}
.aip-sv .aip-ot-h .aip-flag{width:42px; height:28px}
.aip-sv .aip-ot-h b{display:block; font-size:15.5px; color:var(--ink)}
.aip-sv .aip-ot-h small{display:block; font-size:12px; color:var(--muted); margin-top:1px}
.aip-sv .aip-ot dl{margin:0; padding:12px 18px 16px}
.aip-sv .aip-ot dt{font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); margin-top:8px}
.aip-sv .aip-ot dt:first-child{margin-top:0}
.aip-sv .aip-ot dd{margin:3px 0 0; font-size:13.5px; line-height:1.5; color:#222; font-weight:500}
/* ---- File attachment ---- */
.aip-sv .aip-up{position:relative; display:flex; align-items:center; gap:14px; padding:14px 16px; border:1.5px dashed #c9ccd2; border-radius:4px; background:#fafbfc; cursor:pointer; transition:border-color .2s, background .2s; margin:0}
.aip-sv .aip-up:hover, .aip-sv .aip-up.is-drag{border-color:var(--red); background:#fdf6f6}
.aip-sv .aip-up[hidden], .aip-sv .aip-up-sel[hidden]{display:none}
.aip-sv .aip-up input[type=file]{position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer}
.aip-sv .aip-up-ic{display:grid; place-items:center; flex:none; width:38px; height:38px; border-radius:50%; background:#fdecec; color:var(--red)}
.aip-sv .aip-up-ic svg{width:18px; height:18px}
.aip-sv .aip-up-t{font-size:13.5px; color:#444; line-height:1.4}
.aip-sv .aip-up-t b{color:var(--red)}
.aip-sv .aip-up-t small{display:block; font-size:12px; color:var(--muted); margin-top:2px}
.aip-sv .aip-up-sel{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 14px; border:1px solid #cfe9db; background:#f2f9f5; border-radius:4px; font-size:13.5px; color:#1f5f3f; font-weight:600}
.aip-sv .aip-up-sel .aip-up-name{overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.aip-sv .aip-form button.aip-up-x{display:grid !important; place-items:center; flex:none; width:24px; height:24px; margin:0; padding:0 !important; border:0 !important; border-radius:50%; background:#dfe2e6 !important; color:#444 !important; font-size:15px !important; line-height:1 !important; cursor:pointer; box-shadow:none !important}
.aip-sv .aip-form button.aip-up-x:hover{background:var(--red) !important; color:#fff !important}
.aip-sv .aip-up-f.is-bad .aip-up{border-color:var(--red)}
/* ---- Compact enquiry card ---- */
.aip-sv .aip-form-card.is-compact{padding:22px 24px 18px}
.aip-sv .aip-form-card.is-compact h2{font-size:21px; margin-bottom:4px}
.aip-sv .aip-form-card.is-compact > p{font-size:13px !important; line-height:1.5; margin-bottom:14px}
.aip-sv .is-compact .aip-form{gap:10px 12px}
.aip-sv .is-compact .aip-field{gap:4px}
.aip-sv .is-compact .aip-field label{font-size:12px}
.aip-sv .is-compact .aip-form input[type=text], .aip-sv .is-compact .aip-form input[type=email], .aip-sv .is-compact .aip-form input[type=tel], .aip-sv .is-compact .aip-form select{height:40px; font-size:13.5px !important}
.aip-sv .is-compact .aip-form textarea{height:58px; padding:9px 13px; font-size:13.5px !important}
.aip-sv .is-compact .aip-form button[type=submit]{height:44px}
.aip-sv .is-compact .aip-consent{font-size:12px; line-height:1.4}
.aip-sv .is-compact .aip-up{height:40px; padding:0 10px; gap:9px; border-width:1px}
.aip-sv .is-compact .aip-up-ic{width:26px; height:26px}
.aip-sv .is-compact .aip-up-ic svg{width:14px; height:14px}
.aip-sv .is-compact .aip-up-t{font-size:12.5px; line-height:1.2; white-space:nowrap; overflow:hidden}
.aip-sv .is-compact .aip-up-t small{font-size:11px; margin-top:1px}
.aip-sv .is-compact .aip-up-sel{height:40px; padding:0 8px 0 12px; font-size:12.5px}
/* ---- Sample claim chart ---- */
.aip-sv .aip-chx{background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red); box-shadow:0 30px 60px -44px rgba(50,55,65,.5)}
.aip-sv .aip-chx-top{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 22px; border-bottom:1px solid #e6e8ec}
.aip-sv .aip-chx-top b{display:block; font-size:15px; color:var(--ink)}
.aip-sv .aip-chx-top small{display:block; font-size:12.5px; color:var(--muted); margin-top:3px}
.aip-sv .aip-chx-top > span{flex:none; font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); background:#fdeeee; padding:6px 10px; border-radius:3px}
.aip-sv .aip-chx-wrap{overflow-x:auto}
.aip-sv table.aip-chx-t{width:100%; min-width:760px; border-collapse:collapse; margin:0; border:0; font-size:13.5px}
.aip-sv .aip-chx-t th{background:#f7f8fa; color:var(--muted); font-size:10.5px; font-weight:800; letter-spacing:1px; text-transform:uppercase; text-align:left; padding:12px 16px; border:0; border-bottom:1px solid #e6e8ec}
.aip-sv .aip-chx-t td{padding:15px 16px; border:0; border-bottom:1px solid #eef0f2; vertical-align:top; color:var(--text); line-height:1.55; background:#fff}
.aip-sv .aip-chx-t tr:last-child td{border-bottom:0}
.aip-sv .aip-chx-t td.aip-chx-id{width:64px; font-weight:800; color:var(--red); white-space:nowrap}
.aip-sv .aip-chx-t td.aip-chx-claim{width:32%; color:var(--ink); font-weight:600}
.aip-sv .aip-chx-t td.aip-chx-ev small{display:block; margin-top:5px; font-size:12px; color:var(--muted)}
.aip-sv .aip-chx-st{display:inline-block; font-size:11px; font-weight:800; letter-spacing:.6px; text-transform:uppercase; padding:5px 9px; border-radius:3px; white-space:nowrap}
.aip-sv .aip-chx-st.is-ok{background:#e8f5ee; color:#1d6b46}
.aip-sv .aip-chx-st.is-gap{background:#fff4e0; color:#9a5b00}
.aip-sv .aip-chx + .aip-dl-note{margin-top:18px}
@media (max-width:700px){
  .aip-sv .aip-chx-top{flex-direction:column; align-items:flex-start}
  .aip-sv table.aip-chx-t{min-width:0}
  .aip-sv .aip-chx-t thead{display:none}
  .aip-sv .aip-chx-t tr{display:grid; grid-template-columns:auto 1fr; gap:6px 12px; padding:14px 18px; border-bottom:1px solid #eef0f2}
  .aip-sv .aip-chx-t tr:last-child{border-bottom:0}
  .aip-sv .aip-chx-t td{display:block; padding:0; border:0 !important; width:auto !important}
  .aip-sv .aip-chx-t td.aip-chx-ev{grid-column:1 / -1}
  .aip-sv .aip-chx-t td:last-child{grid-column:1 / -1}
}
/* ---- Numbered service cards ---- */
.aip-sv .aip-plan-card.aip-opx{position:relative}
.aip-sv .aip-opx-n{position:absolute; top:22px; right:24px; font-size:30px; font-weight:800; letter-spacing:-1px; color:#e9ebee; line-height:1}
/* ---- Landscape dashboard ---- */
.aip-sv .aip-lsd{background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red); box-shadow:0 30px 60px -44px rgba(50,55,65,.5)}
.aip-sv .aip-lsd-top{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 22px; border-bottom:1px solid #e6e8ec}
.aip-sv .aip-lsd-top b{display:block; font-size:15px; color:var(--ink)}
.aip-sv .aip-lsd-top small{display:block; font-size:12.5px; color:var(--muted); margin-top:3px}
.aip-sv .aip-lsd-top > span{flex:none; font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); background:#fdeeee; padding:6px 10px; border-radius:3px}
.aip-sv .aip-lsd-grid{display:grid; grid-template-columns:1.1fr 1fr 1.2fr}
.aip-sv .aip-lsd-p{padding:22px; border-right:1px solid #eef0f2}
.aip-sv .aip-lsd-p:last-child{border-right:0}
.aip-sv .aip-lsd-p h4{font-size:11px; font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--muted); margin:0 0 16px}
.aip-sv .aip-lsd-bars{display:flex; align-items:flex-end; gap:6px; height:170px}
.aip-sv .aip-lsd-bar{flex:1; display:flex; flex-direction:column; justify-content:flex-end; align-items:center; height:100%; gap:6px}
.aip-sv .aip-lsd-bar i{display:block; width:100%; background:var(--red); border-radius:2px 2px 0 0; opacity:.85}
.aip-sv .aip-lsd-bar:last-child i{opacity:1}
.aip-sv .aip-lsd-bar span{font-size:10.5px; color:var(--muted)}
.aip-sv .aip-lsd-h{display:grid; grid-template-columns:92px 1fr; gap:10px; align-items:center; margin-bottom:12px; font-size:12.5px; color:var(--ink)}
.aip-sv .aip-lsd-h b{display:block; height:10px; background:#f0f1f3; border-radius:5px; overflow:hidden}
.aip-sv .aip-lsd-h i{display:block; height:100%; background:#5f6368; border-radius:5px}
.aip-sv .aip-lsd-h:first-of-type i{background:var(--red)}
.aip-sv .aip-lsd-hm{display:grid; grid-template-columns:82px repeat(4,1fr); gap:4px; font-size:11px}
.aip-sv .aip-lsd-hm .aip-lsd-c{text-align:center; color:var(--muted); font-weight:700; padding-bottom:2px}
.aip-sv .aip-lsd-hm .aip-lsd-r{color:var(--ink); font-weight:600; align-self:center}
.aip-sv .aip-lsd-hm i, .aip-sv .aip-lsd-key i{display:grid; place-items:center; height:30px; border-radius:2px; font-style:normal; font-size:9px; font-weight:800; letter-spacing:.3px; text-transform:uppercase; color:#1d6b46; text-align:center; line-height:1.1}
.aip-sv .aip-lsd-hm i.l0{background:#e8f5ee; border:1px dashed #7cc19c}
.aip-sv .l1{background:#fbe3e3} .aip-sv .l2{background:#f4b3b3} .aip-sv .l3{background:#ea7474} .aip-sv .l4{background:#dd3333}
.aip-sv .aip-lsd-key{display:flex; align-items:center; gap:4px; margin-top:12px; font-size:11px; color:var(--muted)}
.aip-sv .aip-lsd-key i{width:22px; height:10px}
.aip-sv .aip-lsd + .aip-dl-note{margin-top:18px}
@media (max-width:900px){ .aip-sv .aip-lsd-grid{grid-template-columns:1fr} .aip-sv .aip-lsd-p{border-right:0; border-bottom:1px solid #eef0f2} .aip-sv .aip-lsd-top{flex-direction:column; align-items:flex-start} }
/* ---- Layout variety ---- */
html, body{overflow-x:clip}
/* Line grid */
.aip-sv .aip-lgrid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #d9dce1; border-left:1px solid #d9dce1; counter-reset:lg}
.aip-sv .aip-lgrid > .aip-plan-card{counter-increment:lg; position:relative; border:0; border-right:1px solid #d9dce1; border-bottom:1px solid #d9dce1; padding:30px 28px 32px; background:transparent; box-shadow:none; transition:background .2s}
.aip-sv .aip-lgrid > .aip-plan-card::after{content:counter(lg, decimal-leading-zero); position:absolute; top:30px; right:28px; font-size:12px; font-weight:800; letter-spacing:1px; color:#b4b8bf}
.aip-sv .aip-lgrid > .aip-plan-card:hover{background:rgba(221,51,51,.045)}
.aip-sv .aip-lgrid .aip-ring{width:auto; height:auto; background:none; display:block; margin-bottom:16px; color:var(--red)}
.aip-sv .aip-lgrid .aip-ring svg.aip-ic{width:28px; height:28px; stroke-width:1.5}
.aip-sv .aip-lgrid h3{font-size:18px}
/* Feature list */
.aip-sv .aip-feat{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px 48px}
.aip-sv .aip-feat > .aip-plan-card{display:grid; grid-template-columns:46px 1fr; column-gap:16px; align-content:start; padding:24px 0 0; border:0; border-top:2px solid #2d3035; background:none; box-shadow:none}
.aip-sv .aip-feat > .aip-plan-card .aip-ring{grid-row:1 / span 2; margin:0; width:46px; height:46px; background:var(--red); color:#fff}
.aip-sv .aip-feat > .aip-plan-card h3{grid-column:2; font-size:17px; margin-bottom:6px}
.aip-sv .aip-feat > .aip-plan-card p{grid-column:2}
/* Tabs */
.aip-sv .aip-tabs{display:grid; grid-template-columns:330px minmax(0,1fr); background:#fff; border:1px solid #e3e5e9; box-shadow:0 30px 60px -48px rgba(50,55,65,.5)}
.aip-sv .aip-tabs-nav{display:flex; flex-direction:column; background:#f7f8fa; border-right:1px solid #e3e5e9}
.aip-sv .aip-tabs button.aip-tab{display:flex !important; align-items:center; gap:14px; width:100%; margin:0; padding:19px 22px !important; border:0 !important; border-bottom:1px solid #e6e8ec !important; border-left:3px solid transparent !important; border-radius:0 !important; background:transparent !important; color:var(--ink) !important; font-family:inherit !important; font-size:15px !important; font-weight:600 !important; line-height:1.35 !important; letter-spacing:0 !important; text-transform:none !important; text-align:left; box-shadow:none !important; cursor:pointer; transition:background .2s, color .2s}
.aip-sv .aip-tabs button.aip-tab:last-child{border-bottom:0 !important}
.aip-sv .aip-tabs button.aip-tab svg.aip-ic{flex:none; width:19px; height:19px; color:#8a8f97}
.aip-sv .aip-tabs button.aip-tab:hover{background:#fff !important}
.aip-sv .aip-tabs button.aip-tab.is-on{background:#fff !important; color:var(--red) !important; border-left-color:var(--red) !important}
.aip-sv .aip-tabs button.aip-tab.is-on svg.aip-ic{color:var(--red)}
.aip-sv .aip-tabs-panel{padding:44px 48px}
.aip-sv .aip-tp[hidden]{display:none}
.aip-sv .aip-tp-eb{font-size:11px; font-weight:800; letter-spacing:1.6px; text-transform:uppercase; color:var(--red); margin-bottom:12px}
.aip-sv .aip-tp h3{font-size:28px; letter-spacing:-.5px; margin-bottom:12px}
.aip-sv .aip-tp > p{font-size:16px !important; line-height:1.75; max-width:640px; margin-bottom:22px}
.aip-sv .aip-tp .aip-checks{display:grid; grid-template-columns:1fr 1fr; column-gap:32px; margin-bottom:28px}
/* Editorial rows */
.aip-sv .aip-rows{border-top:2px solid #2d3035}
.aip-sv .aip-row{display:grid; grid-template-columns:96px minmax(0,1fr) minmax(0,1.25fr); gap:40px; padding:38px 0; border-bottom:1px solid #d9dce1}
.aip-sv .aip-row-n{font-size:48px; font-weight:800; letter-spacing:-2px; line-height:1; color:var(--red)}
.aip-sv .aip-row-t{display:grid; grid-template-columns:auto 1fr; column-gap:14px; align-content:start}
.aip-sv .aip-row-t .aip-ring{width:40px; height:40px}
.aip-sv .aip-row-t h3{align-self:center; font-size:22px; letter-spacing:-.3px}
.aip-sv .aip-row-t p{grid-column:1 / -1; margin-top:12px; font-size:15px !important; line-height:1.75}
.aip-sv .aip-row-l{display:grid; grid-template-columns:1fr 1fr; gap:12px 28px; align-content:start; margin:0; padding:4px 0 0; list-style:none}
.aip-sv .aip-row-l li{position:relative; padding-left:18px; font-size:14px; line-height:1.55; color:var(--ink)}
.aip-sv .aip-row-l li::before{content:""; position:absolute; left:0; top:10px; width:8px; height:2px; background:var(--red)}
@media (max-width:1000px){
  .aip-sv .aip-lgrid, .aip-sv .aip-feat{grid-template-columns:1fr 1fr}
  .aip-sv .aip-tabs{grid-template-columns:1fr}
  .aip-sv .aip-tabs-nav{flex-direction:row; overflow-x:auto; border-right:0; border-bottom:1px solid #e3e5e9}
  .aip-sv .aip-tabs button.aip-tab{flex:none; width:auto; border-bottom:0 !important; border-left:0 !important; border-top:3px solid transparent !important; white-space:nowrap}
  .aip-sv .aip-tabs button.aip-tab.is-on{border-top-color:var(--red) !important}
  .aip-sv .aip-row{grid-template-columns:70px minmax(0,1fr); gap:24px}
  .aip-sv .aip-row-l{grid-column:2}
}
@media (max-width:640px){
  .aip-sv .aip-lgrid, .aip-sv .aip-feat{grid-template-columns:1fr}
  .aip-sv .aip-tabs-panel{padding:28px 22px}
  .aip-sv .aip-tp h3{font-size:23px}
  .aip-sv .aip-tp .aip-checks, .aip-sv .aip-row-l{grid-template-columns:1fr}
  .aip-sv .aip-row{grid-template-columns:1fr; gap:14px; padding:30px 0}
  .aip-sv .aip-row-n{font-size:36px}
  .aip-sv .aip-row-l{grid-column:1}
}
/* ---- Partner band ---- */
.aip-sv .aip-sec.aip-pt-band{background:#fdf5f4}
.aip-sv .aip-pt{display:grid; grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr); align-items:stretch}
.aip-sv .aip-pt-card{background:#fff; border:1px solid #ecdcda; border-top:4px solid #5f6368; padding:30px 32px 18px}
.aip-sv .aip-pt-card.is-partner{border-top-color:var(--red)}
.aip-sv .aip-pt-name{padding-bottom:16px; margin-bottom:4px; border-bottom:1px solid #eef0f2}
.aip-sv .aip-pt-name span{display:block; font-size:24px; font-weight:800; letter-spacing:-.5px; color:var(--ink)}
.aip-sv .aip-pt-card.is-partner .aip-pt-name span{color:var(--red)}
.aip-sv .aip-pt-name small{display:block; margin-top:4px; font-size:12px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--muted)}
.aip-sv .aip-pt-plus{align-self:center; justify-self:center; display:grid; place-items:center; width:46px; height:46px; border-radius:50%; background:var(--red); color:#fff; font-size:26px; font-weight:700; line-height:1}
.aip-sv .aip-pt-foot{display:flex; align-items:center; gap:14px; margin-top:22px; padding:18px 22px; background:#fff; border:1px solid #ecdcda; border-left:4px solid var(--red)}
.aip-sv .aip-pt-foot svg.aip-ic{flex:none; width:24px; height:24px; color:var(--red)}
.aip-sv .aip-pt-foot p{font-size:14.5px !important; line-height:1.6; margin:0}
.aip-sv .aip-pt-foot b{color:var(--ink)}
.aip-sv .aip-pt-foot a{color:var(--red); font-weight:700; white-space:nowrap}
@media (max-width:900px){ .aip-sv .aip-pt{grid-template-columns:1fr} .aip-sv .aip-pt-plus{margin:-10px auto; position:relative; z-index:1} .aip-sv .aip-pt-foot{align-items:flex-start} }
/* ---- Valuation snapshot ---- */
.aip-sv .aip-vs{background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red); box-shadow:0 30px 60px -44px rgba(50,55,65,.5)}
.aip-sv .aip-vs-top{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 22px; border-bottom:1px solid #e6e8ec}
.aip-sv .aip-vs-top b{display:block; font-size:15px; color:var(--ink)}
.aip-sv .aip-vs-top small{display:block; font-size:12.5px; color:var(--muted); margin-top:3px}
.aip-sv .aip-vs-top > span{flex:none; font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); background:#fdeeee; padding:6px 10px; border-radius:3px}
.aip-sv .aip-vs-grid{display:grid; grid-template-columns:1fr 1fr}
.aip-sv .aip-vs-p{padding:26px 28px}
.aip-sv .aip-vs-p + .aip-vs-p{border-left:1px solid #eef0f2}
.aip-sv .aip-vs-p h4{font-size:11px; font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--muted); margin:0 0 14px}
.aip-sv .aip-vs-big{font-size:40px; font-weight:800; letter-spacing:-1.5px; color:var(--ink); line-height:1}
.aip-sv .aip-vs-big em{font-style:normal; font-size:18px; font-weight:600; color:var(--muted); letter-spacing:0; margin:0 6px}
.aip-sv .aip-vs-range{position:relative; height:10px; margin:22px 0 8px; border-radius:5px; background:#f0f1f3}
.aip-sv .aip-vs-range i{position:absolute; top:0; height:100%; border-radius:5px; background:linear-gradient(90deg,#f4b3b3,#dd3333)}
.aip-sv .aip-vs-range b{position:absolute; top:-6px; width:4px; height:22px; margin-left:-2px; border-radius:2px; background:var(--ink)}
.aip-sv .aip-vs-rl{display:flex; justify-content:space-between; font-size:11.5px; color:var(--muted)}
.aip-sv .aip-vs-rl span:nth-child(2){color:var(--ink); font-weight:700}
.aip-sv .aip-vs-stack{display:flex; height:34px; border-radius:3px; overflow:hidden; font-size:11px; font-weight:700; color:#fff}
.aip-sv .aip-vs-stack i{display:grid; place-items:center; font-style:normal; white-space:nowrap}
.aip-sv .aip-vs-stack i:nth-child(1){background:var(--red)} .aip-sv .aip-vs-stack i:nth-child(2){background:#ea7474} .aip-sv .aip-vs-stack i:nth-child(3){background:#5f6368}
.aip-sv .aip-vs-f{display:grid; grid-template-columns:140px 1fr 22px; gap:12px; align-items:center; margin-bottom:14px; font-size:13px; color:var(--ink)}
.aip-sv .aip-vs-f b{display:block; height:10px; background:#f0f1f3; border-radius:5px; overflow:hidden}
.aip-sv .aip-vs-f i{display:block; height:100%; background:var(--red); border-radius:5px}
.aip-sv .aip-vs-f em{font-style:normal; font-weight:800; text-align:right}
.aip-sv .aip-vs + .aip-dl-note{margin-top:18px}
@media (max-width:800px){ .aip-sv .aip-vs-grid{grid-template-columns:1fr} .aip-sv .aip-vs-p + .aip-vs-p{border-left:0; border-top:1px solid #eef0f2} .aip-sv .aip-vs-top{flex-direction:column; align-items:flex-start} .aip-sv .aip-vs-f{grid-template-columns:118px 1fr 18px} .aip-sv .aip-vs-big{font-size:32px} }
/* ---- Design search results board ---- */
.aip-sv .aip-hits{background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red); box-shadow:0 30px 60px -44px rgba(50,55,65,.5)}
.aip-sv .aip-hits-top{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 22px; border-bottom:1px solid #e6e8ec}
.aip-sv .aip-hits-top b{display:block; font-size:15px; color:var(--ink)}
.aip-sv .aip-hits-top small{display:block; font-size:12.5px; color:var(--muted); margin-top:3px}
.aip-sv .aip-hits-top > span{flex:none; font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); background:#fdeeee; padding:6px 10px; border-radius:3px}
.aip-sv .aip-hits-grid{display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; padding:22px}
.aip-sv .aip-hit{border:1px solid #e6e8ec; background:#fff}
.aip-sv .aip-hit.is-q{border:2px solid var(--red)}
.aip-sv .aip-hit-img{display:grid; place-items:center; height:150px; background:#f7f8fa; border-bottom:1px solid #eef0f2}
.aip-sv .aip-hit-img svg{width:80%; height:130px}
.aip-sv .aip-hit-b{padding:12px 12px 14px}
.aip-sv .aip-hit-b b{display:block; font-size:13px; color:var(--ink); white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.aip-sv .aip-hit-b small{display:block; font-size:11.5px; color:var(--muted); margin:3px 0 10px; line-height:1.4}
.aip-sv .aip-hit-s{display:inline-block; font-size:10px; font-weight:800; letter-spacing:.5px; text-transform:uppercase; padding:4px 7px; border-radius:3px}
.aip-sv .aip-hit-s.is-high{background:#fdeeee; color:#b42424}
.aip-sv .aip-hit-s.is-medium{background:#fff4e0; color:#9a5b00}
.aip-sv .aip-hit-s.is-low{background:#e8f5ee; color:#1d6b46}
.aip-sv .aip-hit-s.is-q{background:var(--red); color:#fff}
.aip-sv .aip-hits + .aip-dl-note{margin-top:18px}
@media (max-width:1100px){ .aip-sv .aip-hits-grid{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (max-width:620px){ .aip-sv .aip-hits-grid{grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:16px} .aip-sv .aip-hits-top{flex-direction:column; align-items:flex-start} .aip-sv .aip-hit-img{height:120px} .aip-sv .aip-hit-img svg{height:104px} }
/* ---- Requirements matrix ---- */
.aip-sv .aip-mxw{background:#fff; border:1px solid #e3e5e9; border-top:4px solid var(--red); box-shadow:0 30px 60px -44px rgba(50,55,65,.5)}
.aip-sv .aip-mx-top{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 22px; border-bottom:1px solid #e6e8ec}
.aip-sv .aip-mx-top b{display:block; font-size:15px; color:var(--ink)}
.aip-sv .aip-mx-top small{display:block; font-size:12.5px; color:var(--muted); margin-top:3px}
.aip-sv .aip-mx-top > span{flex:none; font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); background:#fdeeee; padding:6px 10px; border-radius:3px}
.aip-sv .aip-mx-scroll{overflow-x:auto}
.aip-sv table.aip-mxt{width:100%; min-width:620px; border-collapse:collapse; margin:0; border:0; font-size:14px}
.aip-sv .aip-mxt th{background:#f7f8fa; color:var(--muted); font-size:10.5px; font-weight:800; letter-spacing:1px; text-transform:uppercase; text-align:center; padding:13px 14px; border:0; border-bottom:1px solid #e6e8ec}
.aip-sv .aip-mxt th:first-child{text-align:left; padding-left:22px}
.aip-sv .aip-mxt td{padding:13px 14px; border:0; border-bottom:1px solid #eef0f2; text-align:center; color:var(--ink); background:#fff}
.aip-sv .aip-mxt td:first-child{text-align:left; padding-left:22px; font-weight:600}
.aip-sv .aip-mxt tr:hover td{background:#fdf8f8}
.aip-sv .aip-mx{display:inline-grid; place-items:center; width:26px; height:26px; border-radius:50%; font-size:13px; font-weight:800; line-height:1}
.aip-sv .aip-mx.is-y{background:#e8f5ee; color:#1d6b46}
.aip-sv .aip-mx.is-o{background:#fff4e0; color:#9a5b00}
.aip-sv .aip-mx.is-n{background:#f0f1f3; color:#9aa0a7}
.aip-sv .aip-mx-key{display:flex; flex-wrap:wrap; gap:10px 26px; padding:14px 22px; font-size:12.5px; color:var(--muted)}
.aip-sv .aip-mx-key span{display:inline-flex; align-items:center; gap:8px}
.aip-sv .aip-mx-key .aip-mx{width:20px; height:20px; font-size:11px}
.aip-sv .aip-mxw + .aip-dl-note{margin-top:18px}
@media (max-width:620px){ .aip-sv .aip-mx-top{flex-direction:column; align-items:flex-start} }
.aip-sv .aip-chx-t td.aip-chx-claim small.aip-om-q{display:block; margin-top:6px; font-size:12.5px; font-weight:400; font-style:italic; color:var(--muted)}
/* ---- Figure gallery ---- */
.aip-sv .aip-vg{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px}
.aip-sv figure.aip-vg-c{margin:0; background:#fff; border:1px solid var(--line); transition:box-shadow .25s, transform .25s}
.aip-sv figure.aip-vg-c:hover{box-shadow:0 26px 50px -34px rgba(70,75,85,.55); transform:translateY(-4px)}
.aip-sv .aip-vg-img{position:relative; padding:18px 18px 10px; border-bottom:1px solid #eef0f2; background:#fff}
.aip-sv .aip-vg-img svg{display:block; width:100%; height:auto; aspect-ratio:4/3}
.aip-sv .aip-vg-img span{position:absolute; left:14px; top:12px; font-size:10px; font-weight:800; letter-spacing:1.2px; color:var(--red)}
.aip-sv .aip-vg-c figcaption{padding:16px 18px 18px}
.aip-sv .aip-vg-c figcaption b{display:block; font-size:16px; color:var(--ink); margin-bottom:4px}
.aip-sv .aip-vg-c figcaption small{display:block; font-size:13px; line-height:1.55; color:var(--muted)}
@media (max-width:1000px){ .aip-sv .aip-vg{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:480px){ .aip-sv .aip-vg{gap:12px} .aip-sv .aip-vg-c figcaption{padding:12px} .aip-sv .aip-vg-c figcaption b{font-size:14px} .aip-sv .aip-vg-c figcaption small{font-size:12px} }
/* ---- Design view set board ---- */
.aip-sv .aip-vs7{display:grid; grid-template-columns:1.4fr repeat(3,minmax(0,1fr)); grid-template-rows:auto auto; gap:16px}
.aip-sv figure.aip-vs7-c{margin:0; display:flex; flex-direction:column; background:#fff; border:1px solid var(--line)}
.aip-sv figure.aip-vs7-c.is-main{grid-row:1 / span 2; border-top:4px solid var(--red)}
.aip-sv .aip-vs7-img{flex:1; display:grid; place-items:center; padding:14px}
.aip-sv .aip-vs7-img svg{width:100%; height:180px}
.aip-sv .is-main .aip-vs7-img svg{height:440px}
.aip-sv .aip-vs7-c figcaption{padding:11px 14px; border-top:1px solid #eef0f2; font-size:12.5px; color:var(--muted)}
.aip-sv .aip-vs7-c figcaption b{color:var(--red); font-size:11px; letter-spacing:1px; margin-right:8px}
.aip-sv .aip-vs7 > figure:nth-child(7){grid-column:4} 
.aip-sv .aip-vs7{grid-template-areas:"m a b c" "m d e f"}
.aip-sv .aip-vs7 > figure:nth-child(1){grid-area:m} .aip-sv .aip-vs7 > figure:nth-child(2){grid-area:a} .aip-sv .aip-vs7 > figure:nth-child(3){grid-area:b} .aip-sv .aip-vs7 > figure:nth-child(4){grid-area:c} .aip-sv .aip-vs7 > figure:nth-child(5){grid-area:d} .aip-sv .aip-vs7 > figure:nth-child(6){grid-area:e} .aip-sv .aip-vs7 > figure:nth-child(7){grid-area:f}
.aip-sv .aip-ot-grid.aip-ot-3{grid-template-columns:repeat(3,minmax(0,1fr))}
/* ---- Scope comparison ---- */
.aip-sv .aip-scope{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px}
.aip-sv .aip-scope-c{background:#fff; border:1px solid var(--line)}
.aip-sv .aip-scope-c:nth-child(2){border-top:4px solid var(--red)}
.aip-sv .aip-scope-img{display:grid; place-items:center; padding:18px; background:#f7f8fa; border-bottom:1px solid #eef0f2}
.aip-sv .aip-scope-img svg{width:100%; height:200px}
.aip-sv .aip-scope-b{padding:20px 22px 22px}
.aip-sv .aip-scope-b span{display:inline-block; font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--red); background:#fdeeee; padding:5px 9px; border-radius:3px; margin-bottom:12px}
.aip-sv .aip-scope-b b{display:block; font-size:17px; color:var(--ink); margin-bottom:6px}
.aip-sv .aip-scope-b p{font-size:14px !important; line-height:1.65}
@media (max-width:1000px){
  .aip-sv .aip-vs7{grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:"m m" "a b" "c d" "e f"}
  .aip-sv .is-main .aip-vs7-img svg{height:320px}
  .aip-sv .aip-scope, .aip-sv .aip-ot-grid.aip-ot-3{grid-template-columns:1fr}
}
@media (max-width:620px){ .aip-sv .aip-vs7-img svg{height:140px} }
/* ---- Before / after ---- */
.aip-sv .aip-ba{display:grid; grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr); align-items:start}
.aip-sv .aip-ba-c{background:#fff; border:1px solid var(--line); border-top:4px solid #9aa0a7}
.aip-sv .aip-ba-c.is-after{border-top-color:#2f9e6b}
.aip-sv .aip-ba-c.is-before{border-top-color:var(--red)}
.aip-sv .aip-ba-top{display:flex; align-items:center; gap:12px; padding:14px 20px; border-bottom:1px solid #eef0f2}
.aip-sv .aip-ba-top span{font-size:10.5px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; padding:5px 9px; border-radius:3px}
.aip-sv .is-before .aip-ba-top span{background:#fdeeee; color:#b42424}
.aip-sv .is-after .aip-ba-top span{background:#e8f5ee; color:#1d6b46}
.aip-sv .aip-ba-top b{font-size:15px; color:var(--ink)}
.aip-sv .aip-ba-img{padding:16px; border-bottom:1px solid #eef0f2}
.aip-sv .aip-ba-img svg{display:block; width:100%; height:auto; aspect-ratio:572/460}
.aip-sv ol.aip-ba-list{margin:0; padding:6px 20px 14px; list-style:none}
.aip-sv .aip-ba-list li{display:grid; grid-template-columns:24px 1fr; gap:12px; padding:10px 0; border-top:1px solid #eef0f2}
.aip-sv .aip-ba-list li:first-child{border-top:0}
.aip-sv .aip-ba-list i{display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:var(--red); color:#fff; font-style:normal; font-size:11px; font-weight:800}
.aip-sv .aip-ba-list b{display:block; font-size:14px; color:var(--ink)}
.aip-sv .aip-ba-list small{display:block; font-size:12.5px; color:var(--muted); line-height:1.5; margin-top:2px}
.aip-sv .aip-ba-c.is-after .aip-checks{padding:6px 20px 14px}
.aip-sv .aip-ba-c.is-after .aip-checks li{font-size:14px}
.aip-sv .aip-ba-arrow{align-self:center; justify-self:center; display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--red); color:#fff; font-size:20px; font-weight:700}
@media (max-width:900px){ .aip-sv .aip-ba{grid-template-columns:1fr} .aip-sv .aip-ba-arrow{transform:rotate(90deg); margin:12px auto} }

/* ===== RESPONSIVE ===== */
@media (max-width:1100px){
  .aip-sv .aip-routes{grid-template-columns:1fr 1fr}
  .aip-sv .aip-tl{grid-template-columns:repeat(3,1fr); row-gap:40px}
  .aip-sv .aip-tl::before{display:none}
  .aip-sv .aip-rel{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .aip-sv .aip-sec{padding:70px 0}
  .aip-sv .aip-hero{padding-top:50px}
  .aip-sv .aip-hero-in, .aip-sv .aip-head, .aip-sv .aip-two, .aip-sv .aip-plan, .aip-sv .aip-faq{grid-template-columns:1fr; gap:36px}
  .aip-sv .aip-hero-vis{max-width:600px}
  .aip-sv .aip-facts ul{grid-template-columns:1fr 1fr}
  .aip-sv .aip-facts li:nth-child(3){border-left:0; padding-left:0}
  .aip-sv .aip-facts li:nth-child(n+3){border-top:1px solid var(--line)}
  .aip-sv .aip-plan-intro{position:static}
  .aip-sv .aip-tl-foot{grid-template-columns:1fr; gap:14px}
  .aip-sv .aip-end .aip-w{display:block}
  .aip-sv .aip-end-acts{margin-top:24px}
}
@media (max-width:620px){
  .aip-sv .aip-w{width:calc(100% - 40px)}
  .aip-sv .aip-hero-acts a.aip-btn{flex:1 1 100%; justify-content:center}
  .aip-sv .aip-hero-vis{padding:0 0 22px 16px}
  .aip-sv .aip-hero-img{border-width:6px}
  .aip-sv .aip-hero-badge{padding:13px 16px; max-width:210px}
  .aip-sv .aip-hero-badge strong{font-size:24px}
  .aip-sv .aip-facts ul{grid-template-columns:1fr}
  .aip-sv .aip-facts li, .aip-sv .aip-facts li:nth-child(3){border-left:0; padding:18px 0}
  .aip-sv .aip-facts li + li{border-top:1px solid var(--line)}
  .aip-sv .aip-panel{padding:28px 22px 24px}
  .aip-sv .aip-routes, .aip-sv .aip-plan-grid, .aip-sv .aip-rel{grid-template-columns:1fr}
  .aip-sv .aip-tl{grid-template-columns:1fr; row-gap:0}
  .aip-sv .aip-tl::before{display:block; left:21px; right:auto; top:0; bottom:44px; width:2px; height:auto}
  .aip-sv .aip-tl li{padding:0 0 26px 64px; min-height:44px}
  .aip-sv .aip-tl-dot{position:absolute; left:0; top:0}
  .aip-sv .aip-tl h3{margin-top:2px}
  .aip-sv .aip-qa summary{grid-template-columns:32px 1fr 28px; font-size:16px}
  .aip-sv .aip-qa .aip-ans{padding:0 0 22px 44px}
}
@media (prefers-reduced-motion:reduce){
  .aip-sv *{transition:none !important}
}
@media (max-width:1100px){
  .aip-sv .aip-why{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .aip-sv .aip-intro, .aip-sv .aip-anat{grid-template-columns:1fr; gap:40px}
  .aip-sv .aip-types{grid-template-columns:1fr}
}
@media (max-width:620px){
  .aip-sv .aip-who, .aip-sv .aip-parts, .aip-sv .aip-why{grid-template-columns:1fr}
  .aip-sv .aip-offer, .aip-sv .aip-type{padding:28px 22px 24px}
  .aip-sv .aip-doc{padding:24px 20px}
}
@media (max-width:900px){
  .aip-sv .aip-cx{grid-template-columns:1fr}
  .aip-sv .aip-cx-rec{grid-template-columns:1fr; gap:14px}
}
@media (max-width:620px){
  .aip-sv .aip-bridge{grid-template-columns:1fr; padding:24px 22px 8px}
  .aip-sv .aip-bridge::before{left:29px; right:auto; top:30px; bottom:40px; width:2px; height:auto; background:linear-gradient(180deg, var(--red) 0 50%, #d5d8dd 50% 100%)}
  .aip-sv .aip-bridge li, .aip-sv .aip-bridge li:nth-child(2), .aip-sv .aip-bridge li:last-child{text-align:left; padding:0 0 18px 34px}
  .aip-sv .aip-bridge-dot, .aip-sv .aip-bridge li:nth-child(2) .aip-bridge-dot, .aip-sv .aip-bridge li:last-child .aip-bridge-dot{position:absolute; left:0; top:2px; margin:0}
  .aip-sv .aip-bridge-m{margin-bottom:4px}
  .aip-sv .aip-bridge-gap{display:none}
  .aip-sv .aip-cx-head, .aip-sv .aip-cx-foot{padding-left:22px; padding-right:22px}
  .aip-sv .aip-cx-rows{padding:4px 22px 0}
  .aip-sv .aip-cx-rows > div{grid-template-columns:1fr; gap:4px}
}
@media (max-width:1100px){
  .aip-sv .aip-svc{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:900px){
  .aip-sv .aip-dm-row.is-head{display:none}
  .aip-sv .aip-dm-row{grid-template-columns:1fr 32px; padding:18px 20px; row-gap:6px}
  .aip-sv .aip-dm-row > *{padding:0}
  .aip-sv .aip-dm-q{grid-column:1; grid-row:1}
  .aip-sv .aip-dm-s{grid-column:1; grid-row:2}
  .aip-sv .aip-dm-g{grid-column:1; grid-row:3}
  .aip-sv .aip-dm-row em{grid-column:2; grid-row:1}
}
@media (max-width:620px){
  .aip-sv .aip-svc{grid-template-columns:1fr}
  .aip-sv .aip-dm-q .aip-ring{display:none}
}
@media (max-width:1100px){
  .aip-sv .aip-svc{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  .aip-sv .aip-svc{grid-template-columns:1fr}
  .aip-sv .aip-port-kpi{display:none}
  .aip-sv .aip-port th, .aip-sv .aip-port td{padding-left:14px; padding-right:10px}
  .aip-sv .aip-port .aip-hide-m{display:none}
  .aip-sv .aip-cc{margin-right:6px}
}
@media (max-width:1100px){
  .aip-sv .aip-prac.is-3, .aip-sv .aip-cli{grid-template-columns:1fr 1fr}
  .aip-sv .aip-commit{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .aip-sv .aip-prac.is-2, .aip-sv .aip-eng, .aip-sv .aip-strip{grid-template-columns:1fr}
}
@media (max-width:620px){
  .aip-sv .aip-prac.is-3, .aip-sv .aip-cli, .aip-sv .aip-commit{grid-template-columns:1fr}
  .aip-sv .aip-prac.is-2 .aip-pb ul{columns:1}
  .aip-sv .aip-pb, .aip-sv .aip-cli-card{padding:26px 22px 22px}
  .aip-sv .aip-cc-card .aip-hide-m{display:none}
  .aip-sv .aip-cc-flag{display:none}
  .aip-sv .aip-cc-card td, .aip-sv .aip-cc-card th{padding-left:10px; padding-right:10px}
}
@media (max-width:1100px){
  .aip-sv .aip-hero-in.is-form{grid-template-columns:1fr 420px; gap:40px}
  .aip-sv .aip-juris{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  .aip-sv .aip-hero-in.is-form, .aip-sv .aip-glance{grid-template-columns:1fr; gap:40px}
}
@media (max-width:620px){
  .aip-sv .aip-form{grid-template-columns:1fr}
  .aip-sv .aip-form-card{padding:24px 20px 22px}
  .aip-sv .aip-spec dl > div{grid-template-columns:1fr; gap:4px; padding:12px 20px}
  .aip-sv .aip-juris{grid-template-columns:1fr 1fr}
}

@media (max-width:1100px){
  .aip-sv .aip-juris2, .aip-sv .aip-ind{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  .aip-sv .aip-phone{grid-template-columns:1fr}
  .aip-sv .aip-jt{padding:16px}
}
@media (max-width:1100px){ .aip-sv .aip-juris2.is-5{grid-template-columns:repeat(3,1fr)} }
@media (max-width:620px){ .aip-sv .aip-juris2.is-5{grid-template-columns:repeat(2,1fr)} }
@media (max-width:1100px){ .aip-sv .aip-more{grid-template-columns:repeat(2,auto)} }
@media (max-width:620px){ .aip-sv .aip-more{grid-template-columns:1fr; padding:20px} }
@media (max-width:1000px){
  .aip-sv .aip-lc-track{display:none}
  .aip-sv ol.aip-lc-steps{grid-template-columns:1fr 1fr; margin-top:0 !important}
}
@media (max-width:620px){
  .aip-sv ol.aip-lc-steps{grid-template-columns:1fr; gap:14px}
}
@media (max-width:1100px){
  .aip-sv .aip-dl{grid-template-columns:repeat(3,1fr)}
  .aip-sv .aip-qdoc-meta{grid-template-columns:repeat(2,auto)}
}
@media (max-width:900px){
  .aip-sv .aip-stages{grid-template-columns:1fr}
  .aip-sv .aip-nohid{grid-template-columns:1fr; gap:22px}
  .aip-sv .aip-calc{grid-template-columns:1fr; gap:14px}
  .aip-sv .aip-dl{grid-template-columns:repeat(2,1fr)}
  .aip-sv .aip-qdoc-top{flex-direction:column}
}
@media (max-width:620px){
  .aip-sv .aip-cquick{grid-template-columns:repeat(2,1fr)}
  .aip-sv ul.aip-nohid-pts{grid-template-columns:1fr}
  .aip-sv .aip-dl{grid-template-columns:1fr}
  .aip-sv .aip-nohid{padding:24px 20px}
  .aip-sv .aip-stage-h, .aip-sv ul.aip-fees{padding-left:20px !important; padding-right:20px !important}
  .aip-sv .aip-qdoc-top{padding:22px 20px 18px}
  .aip-sv .aip-calc input[type=date]{min-width:0; width:100%}
}
@media (max-width:900px){
  .aip-sv .aip-hcov{display:none}
}
@media (max-width:620px){
  .aip-sv .aip-qdoc-stamp{display:none}
  .aip-sv .aip-qdoc-scroll::before{content:"Swipe to see all columns \2192"; display:block; padding:10px 20px 0; font-size:11.5px; font-weight:600; color:var(--muted)}
}
@media (max-width:1000px){
  .aip-sv .aip-fc-gate{grid-template-columns:1fr; gap:24px}
  .aip-sv .aip-fc-grid, .aip-sv .aip-fc-extra{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aip-sv .aip-cg{grid-template-columns:1fr}
  .aip-sv .aip-cg-side{border-right:0; border-bottom:1px solid #eceef1}
  .aip-sv .aip-cg-list{max-height:260px}
  .aip-sv .aip-fdet-g{grid-template-columns:1fr 1fr}
  .aip-sv .aip-fc .aip-cquick{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:620px){
  .aip-sv .aip-fc-steps{grid-template-columns:repeat(3,1fr)}
  .aip-sv .aip-fc-step{padding:14px 10px; flex-direction:column; gap:6px; font-size:11.5px; text-align:center}
  .aip-sv .aip-fc-body{padding:22px 18px 24px}
  .aip-sv .aip-fc-grid, .aip-sv .aip-fc-extra{grid-template-columns:1fr}
  .aip-sv .aip-fc-grid .is-2{grid-column:auto}
  .aip-sv .aip-fc-code{flex-direction:column}
  .aip-sv .aip-fc-code button[type=submit]{width:100%}
  .aip-sv .aip-fc-go button[type=submit]{min-width:0; width:100%}
  .aip-sv .aip-cg-main{padding:22px 18px}
  .aip-sv .aip-cg-facts{grid-template-columns:1fr 1fr}
  .aip-sv .aip-cg-two{grid-template-columns:1fr}
  .aip-sv .aip-cg-anns{grid-template-columns:repeat(3,minmax(0,1fr))}
  .aip-sv .aip-cg-top .aip-btn{margin-left:0; width:100%; justify-content:center}
  .aip-sv .aip-fdet-g{grid-template-columns:1fr}
  .aip-sv .aip-fc .aip-cquick{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1000px){
  .aip-sv .aip-enq{grid-template-columns:1fr; gap:30px}
  .aip-sv .aip-hsteps{align-self:stretch}
}
@media (max-width:620px){
  .aip-sv .aip-cg-ov, .aip-sv .aip-cg-pa{grid-template-columns:1fr}
  .aip-sv .aip-cg-docs li{flex-direction:column; align-items:flex-start; gap:6px}
  .aip-sv .aip-hsteps{padding:22px 20px}
}
@media (max-width:1000px){
  .aip-sv .aip-cg-views{margin-left:0}
  .aip-sv .aip-cg-bar .aip-cg-search{max-width:none; flex-basis:100%}
}
@media (max-width:620px){
  .aip-sv .aip-cg-regions{flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; width:100%}
}
@media (max-width:1000px){ .aip-sv .aip-pkg{grid-template-columns:1fr} }
@media (max-width:1100px){ .aip-sv .aip-ot-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:620px){ .aip-sv .aip-ot-grid{grid-template-columns:1fr} }

/* security code (captcha) */
.aip-sv .aip-cap{display:flex; gap:8px; align-items:center}
.aip-sv .aip-cap-img{flex:none; width:150px; height:44px; border:1px solid #d6d9de; border-radius:4px; background:#f7f2f2; user-select:none}
.aip-sv .aip-cap-new{flex:none; width:44px; height:44px; margin:0 !important; padding:0 !important; display:flex !important; align-items:center; justify-content:center; background:#fff !important; border:1px solid #d6d9de !important; border-radius:4px !important; box-shadow:none !important; cursor:pointer}
.aip-sv .aip-cap-new svg{width:18px; height:18px; fill:none; stroke:#555; stroke-width:2; stroke-linecap:round; stroke-linejoin:round}
.aip-sv .aip-cap-new:hover{border-color:var(--red) !important} .aip-sv .aip-cap-new:hover svg{stroke:var(--red)}
.aip-sv .aip-cap input{flex:1; min-width:0; text-transform:uppercase; letter-spacing:3px; font-weight:700}
.aip-sv .aip-cap input::placeholder{text-transform:none; letter-spacing:0; font-weight:400}
@media (max-width:400px){ .aip-sv .aip-cap{flex-wrap:wrap} .aip-sv .aip-cap input{flex:1 1 100%} }

.aip-sv .is-compact .aip-cap-img{height:40px; width:136px}
.aip-sv .is-compact .aip-cap-new{width:40px; height:40px}
/* extra compact */
.aip-sv .aip-form-card.is-compact{padding:18px 22px 14px}
.aip-sv .aip-form-card.is-compact h2{font-size:19px; margin-bottom:2px}
.aip-sv .aip-form-card.is-compact > p{font-size:12.5px !important; line-height:1.45; margin-bottom:10px}
.aip-sv .is-compact .aip-form{gap:8px 12px}
.aip-sv .is-compact .aip-field{gap:3px}
.aip-sv .is-compact .aip-field label{font-size:11.5px}
.aip-sv .is-compact .aip-form input[type=text], .aip-sv .is-compact .aip-form input[type=email], .aip-sv .is-compact .aip-form input[type=tel], .aip-sv .is-compact .aip-form select{height:36px; font-size:13px !important}
.aip-sv .is-compact .aip-form textarea{height:46px; padding:7px 12px; font-size:13px !important}
.aip-sv .is-compact .aip-up, .aip-sv .is-compact .aip-up-sel{height:36px}
.aip-sv .is-compact .aip-up-t small{display:inline; margin:0 0 0 6px}
.aip-sv .is-compact .aip-cap-img{height:36px; width:124px}
.aip-sv .is-compact .aip-cap-new{width:36px; height:36px}
.aip-sv .is-compact .aip-phone select, .aip-sv .is-compact .aip-phone input{height:36px !important}
.aip-sv .is-compact .aip-form button[type=submit]{height:40px}
.aip-sv .is-compact .aip-consent{font-size:11.5px}
.aip-sv .is-compact .aip-form-note{margin-top:2px; font-size:11.5px}

.aip-sv .is-compact .aip-field:not(.is-full) .aip-up-t small{display:block; margin:0}

/* From style="" attributes of the original page (the security policy blocks them) */
.aip-s-38ed6c17.aip-s-38ed6c17.aip-s-38ed6c17{position:absolute}
.aip-s-8c707aa4.aip-s-8c707aa4.aip-s-8c707aa4{padding:6px 34px 26px}