#main .page-content:has(.plai){padding:0}
.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated:has(.plai){padding:0}
.elementor-container.elementor-container:has(.plai){max-width:none}
.elementor-section.elementor-section-boxed > .elementor-container.elementor-container:has(.plai){max-width:none}
#main:has(.plai) .page-header,
.page-header:has(~ * .plai){display:none}
.plai{
  --bg:#0d0d0e; --bg-2:#151517; --surface:#0d0d0e; --surface-2:#151517; --surface-3:#1c1c1f;
  --sunk:#08080a;                      
  --border:#2b2b2f; --border-2:#3a3a40;
  --text:#e8e8e6;                      
  --text-2:#c6d2df;
  --muted:#9a9a97;                     
  --dim:#8a8a87;                       
  --accent:#7ab51d;                    
  --accent-ink:#0a1200;                
  --led:#8fd11a;                       
  --blue:#5a9fd4;                      
  --warn:#c9922a;                      
  --danger:#d4685a;                    
  --radius:0; --radius-sm:0;           
  --maxw:1220px;
  --font:'Helvetica Neue',Helvetica,Arial,sans-serif;
  --mono:ui-monospace,'SF Mono','Cascadia Mono',Consolas,monospace;
  color:var(--text); font-family:var(--font); line-height:1.55;
  background:var(--bg); -webkit-font-smoothing:antialiased;
}
.plai *{box-sizing:border-box; margin:0; padding:0}
.plai img{max-width:100%; display:block}
.plai a{text-decoration:none}
.plai .hero .wrap > *,.plai .grid > *,.plai .cols > *,.plai .split > *,
.plai .vrow > *,.plai .vhead > *,.plai .clc-grid > *,.plai .book > *,
.plai .step > *,.plai .frow > *{min-width:0}
.plai .term,.plai .decode{min-width:0; max-width:100%}
.plai .term pre{-webkit-overflow-scrolling:touch}
.plai .wrap{max-width:var(--maxw); margin:0 auto; padding:0 30px}
.plai section{padding:58px 0; border-bottom:1px solid var(--border)}
.plai a:focus-visible,.plai button:focus-visible,.plai summary:focus-visible,
.plai input:focus-visible,.plai select:focus-visible,.plai textarea:focus-visible{
  outline:2px solid var(--led); outline-offset:2px}
.plai .field input:focus-visible,.plai .field select:focus-visible,.plai .field textarea:focus-visible,
.plai .clc-f input:focus-visible,.plai .sel-f select:focus-visible{outline-offset:0}
.plai h1{font-size:43px; line-height:1.05; letter-spacing:-.035em; font-weight:700; color:var(--text)}
.plai h2{font-size:29px; line-height:1.2; letter-spacing:-.025em; font-weight:700; margin-bottom:10px; color:var(--text)}
.plai h3{font-size:16.5px; letter-spacing:-.01em; font-weight:700; color:var(--text)}
.plai .eyebrow{font-family:var(--mono); color:var(--accent); font-size:.7rem; font-weight:400;
  letter-spacing:.14em; text-transform:uppercase; margin-bottom:12px}
.plai .lead{color:var(--muted); font-size:1rem; max-width:64ch}
.plai .btn{display:inline-flex; align-items:center; gap:8px; font-weight:700; font-size:.85rem;
  padding:13px 22px; border:1px solid var(--accent); cursor:pointer; transition:.15s;
  background:var(--accent); font-family:inherit}
.plai .btn:hover{background:var(--led); border-color:var(--led)}
.plai .btn-primary,.plai .btn-primary:hover{background:var(--accent); border-color:var(--accent)}
.plai .btn-ghost,.plai .btn.ghost{background:transparent; border-color:var(--border-2)}
.plai .btn-ghost:hover,.plai .btn.ghost:hover{background:transparent; border-color:var(--accent)}
.plai .btn,#main .plai .btn,
.plai .btn:hover,#main .plai .btn:hover,
.plai .btn:focus,#main .plai .btn:focus,
.plai .btn:visited,#main .plai .btn:visited,
.plai .btn-primary,#main .plai .btn-primary,
.plai .btn-primary:hover,#main .plai .btn-primary:hover{color:var(--accent-ink) !important}
.plai .btn-ghost,#main .plai .btn-ghost,
.plai .btn.ghost,#main .plai .btn.ghost,
.plai .btn-ghost:visited,#main .plai .btn-ghost:visited{color:var(--text) !important}
.plai .btn-ghost:hover,#main .plai .btn-ghost:hover,
.plai .btn.ghost:hover,#main .plai .btn.ghost:hover{color:var(--accent) !important}
.plai a:not(.btn),#main .plai a:not(.btn),
.plai a:not(.btn):hover,#main .plai a:not(.btn):hover,
.plai a:not(.btn):focus,#main .plai a:not(.btn):focus,
.plai a:not(.btn):visited,#main .plai a:not(.btn):visited{color:inherit; text-decoration:none}
.plai .art a:not(.btn),#main .plai .art a:not(.btn),
.plai .art a:not(.btn):hover,#main .plai .art a:not(.btn):hover,
.plai .related a,#main .plai .related a,
.plai .faq details p a,#main .plai .faq details p a,
.plai .crumb a:hover,#main .plai .crumb a:hover{color:var(--accent)}
.plai .legal a,#main .plai .legal a,
.plai .micro a,#main .plai .micro a{color:var(--muted)}
.plai .legal a:hover,#main .plai .legal a:hover,
.plai .micro a:hover,#main .plai .micro a:hover{color:var(--accent)}
.plai .form-ok.pending a,#main .plai .form-ok.pending a{color:var(--warn)}
.plai .cta-row,.plai .row{display:flex; flex-wrap:wrap; gap:12px; margin-top:22px}
.plai .badge{display:inline-flex; align-items:center; gap:6px; font-family:var(--mono);
  font-size:.7rem; font-weight:400; letter-spacing:.06em; padding:5px 10px;
  border:1px solid var(--border-2); color:var(--muted)}
.plai .badge.buy,.plai .badge.star{color:var(--accent); border-color:rgba(122,181,29,.5); background:rgba(122,181,29,.09)}
.plai .badge.quote{color:var(--blue); border-color:rgba(90,159,212,.45); background:rgba(90,159,212,.09)}
.plai .badge.best{color:var(--warn); border-color:rgba(201,146,42,.5); background:rgba(201,146,42,.10)}
.plai .spec .upsell{margin:12px 0 18px; padding:10px 12px; border:1px solid rgba(201,146,42,.3);
  background:rgba(201,146,42,.06); font-size:.82rem; line-height:1.5; color:var(--text-2)}
.plai .spec .upsell b{color:var(--warn)}
.plai .trust{border-top:1px solid var(--border); border-bottom:1px solid var(--border); background:var(--bg)}
.plai .trust .wrap{display:flex; flex-wrap:wrap; gap:10px 30px; padding:11px 30px}
.plai .trust span{display:inline-flex; align-items:center; gap:8px; font-family:var(--mono);
  font-size:.7rem; letter-spacing:.05em; text-transform:uppercase; color:var(--dim)}
.plai .trust span::before{content:"●"; color:var(--accent); font-size:8px}
.plai .trust svg{width:14px; height:14px; color:var(--accent)}
.plai .crumb{padding:18px 0 0; font-family:var(--mono); font-size:.7rem; color:var(--dim)}
.plai .crumb .wrap{font-family:inherit; font-size:inherit; color:inherit}
.plai .crumb a:hover{color:var(--accent)}
.plai .crumb b{color:var(--muted); font-weight:400}
.plai .footnote{font-family:var(--mono); color:var(--dim); font-size:.7rem;
  border-top:1px solid var(--border); padding:22px; text-align:center}
.plai .hero{position:relative; padding:52px 0; border-bottom:1px solid var(--border); background:var(--bg)}
.plai .hero .wrap{position:relative}
.plai .hero h1{max-width:16ch; margin-top:4px}
.plai .hero p.sub{color:var(--muted); font-size:1rem; margin-top:16px; max-width:52ch}
.plai .hero.split-2 .wrap{display:grid; grid-template-columns:1.1fr .9fr; gap:44px; align-items:start}
.plai .hero.plain{padding:38px 0 10px}
.plai .hero.plain h1,.plai .hero.split-2 h1{max-width:none}
.plai .story{margin-top:16px; padding:12px 14px; border-left:2px solid var(--accent);
  background:var(--bg-2); color:var(--text-2); font-size:.9rem; max-width:58ch}
.plai .story b{color:var(--text)}
.plai .seg{display:inline-flex; gap:1px; margin-top:26px; background:var(--border); border:1px solid var(--border)}
.plai .seg button{background:var(--bg); border:none; border-top:2px solid transparent; color:var(--muted);
  font-family:var(--mono); font-size:.78rem; padding:10px 16px; cursor:pointer; transition:.15s}
.plai .seg button:hover{background:var(--bg-2)}
.plai .seg button.active{background:var(--bg-2); border-top-color:var(--accent); color:var(--accent)}
.plai .persona-note{margin-top:16px; color:var(--muted); font-size:.9rem; min-height:1.5em}
.plai .price-lg{margin-top:22px; display:flex; align-items:baseline; gap:10px; flex-wrap:wrap}
.plai .price-lg .from{font-family:var(--mono); color:var(--dim); font-size:.7rem;
  letter-spacing:.08em; text-transform:uppercase}
.plai .price-lg .amt{font-family:var(--mono); font-size:1.7rem; font-weight:700;
  color:var(--text); letter-spacing:-.02em}
.plai .price-lg .ht{font-family:var(--mono); color:var(--dim); font-size:.75rem}
.plai .hero-card,.plai .verdict{background:var(--bg-2); border:1px solid var(--border); padding:22px}
.plai .hero-card .k,.plai .verdict .k,.plai .panel .k{font-family:var(--mono); font-size:.7rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--accent); margin-bottom:12px}
.plai .hero-card ul{list-style:none}
.plai .hero-card li{display:flex; justify-content:space-between; gap:14px; padding:10px 0;
  border-bottom:1px solid var(--border); font-family:var(--mono); font-size:.78rem}
.plai .hero-card li:last-child{border-bottom:none}
.plai .hero-card li span{color:var(--dim)}
.plai .hero-card li b{color:var(--text); font-weight:600}
.plai .verdict p{color:var(--muted); font-size:.9rem; margin-bottom:10px}
.plai .verdict b{color:var(--text)}
.plai .term{background:var(--sunk); border:1px solid var(--border)}
.plai .term .bar{display:flex; align-items:center; gap:7px; padding:8px 12px;
  border-bottom:1px solid var(--border); background:var(--bg-2)}
.plai .term .bar i{width:7px; height:7px; background:var(--border-2); display:block}
.plai .term .bar i.on{background:var(--led); animation:plai-pulse 2.4s ease-in-out infinite}
@keyframes plai-pulse{0%,100%{opacity:1} 50%{opacity:.35}}
.plai .term .bar span{font-family:var(--mono); font-size:.7rem; color:var(--dim); margin-left:6px}
.plai .term pre{font-family:var(--mono); font-size:.7rem; line-height:1.62; color:#bdbdb9;
  padding:13px; overflow-x:auto; min-height:196px}
.plai .term .c{color:var(--accent)}
.plai .term .g{color:var(--led)}
.plai .term .d{color:var(--dim)}
.plai .caret{display:inline-block; width:7px; background:var(--led); animation:plai-blink 1s step-end infinite}
@keyframes plai-blink{50%{opacity:0}}
.plai .decode{border:1px solid var(--border); border-top:none; background:var(--bg-2); padding:16px 14px}
.plai .decode .h{font-size:.82rem; color:var(--text); font-weight:700; margin-bottom:10px}
.plai .decode .h::before{content:"↑ "; color:var(--accent)}
.plai .decode ul{list-style:none; display:grid; gap:8px}
.plai .decode li{display:grid; grid-template-columns:auto 1fr; gap:10px;
  align-items:baseline; font-size:.8rem; color:var(--muted)}
.plai .decode code{font-family:var(--mono); font-size:.7rem; color:var(--accent);
  background:var(--sunk); border:1px solid var(--border-2); padding:2px 6px; white-space:nowrap}
.plai .decode b{color:var(--text); font-weight:600}
.plai .grid{display:grid; gap:14px}
.plai .g-2{grid-template-columns:repeat(2,1fr)}
.plai .g-3{grid-template-columns:repeat(3,1fr)}
.plai .g-4{grid-template-columns:repeat(4,1fr)}
.plai .card{background:var(--bg); border:1px solid var(--border); border-top:2px solid var(--border);
  padding:22px; transition:background .15s, border-color .15s}
.plai .card:hover{background:var(--surface-3); border-color:var(--border-2); border-top-color:var(--accent)}
.plai .card .ic{width:28px; height:28px; color:var(--accent); margin-bottom:12px}
.plai .card p{color:var(--muted); font-size:.9rem; margin-top:8px}
.plai .panel{background:var(--bg-2); border:1px solid var(--border); padding:24px}
.plai .panel h3{margin-bottom:6px}
.plai .split{display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--border); border:1px solid var(--border)}
.plai .split>div{background:var(--bg); padding:26px}
.plai .sphere{display:flex; flex-direction:column}
.plai .sphere.feat{background:var(--bg-2); border-top-color:var(--accent)}
.plai .sphere .top{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:6px}
.plai .sphere .tiers{margin:14px 0; border-top:1px solid var(--border); padding-top:14px}
.plai .sphere .tier{display:flex; justify-content:space-between; align-items:baseline; gap:10px;
  font-size:.85rem; padding:6px 0}
.plai .sphere .tier b{font-weight:600}
.plai .sphere .tier span{font-family:var(--mono); color:var(--accent); font-variant-numeric:tabular-nums; font-size:.78rem}
.plai .sphere .go{margin-top:auto; padding-top:14px; color:var(--accent); font-weight:700;
  font-size:.85rem; display:inline-flex; align-items:center; gap:6px}
.plai .sphere:hover .go{gap:10px}
.plai .spec{position:relative; background:var(--bg); border:1px solid var(--border);
  border-top:2px solid var(--border); padding:24px; display:flex; flex-direction:column}
.plai .spec:hover{border-color:var(--border-2)}
.plai .spec.feat{background:var(--bg-2); border-top-color:var(--accent)}
.plai .spec.feat:hover{border-top-color:var(--accent)}
.plai .spec .tag{position:absolute; top:16px; right:16px; z-index:2}
.plai .spec .tag.buy{background:#1e2318}
.plai .spec .tag.best{background:#252019}
.plai .spec .tag.quote{background:#1b2128}
.plai .spec h3{font-size:1.2rem}
.plai .spec .sub{color:var(--muted); font-size:.85rem; margin:4px 0 14px}
.plai .spec .price{font-family:var(--mono); font-size:1.3rem; font-weight:700;
  letter-spacing:-.02em; margin-bottom:4px; color:var(--text)}
.plai .spec .price .from{font-size:.7rem; color:var(--dim); font-weight:400;
  letter-spacing:.08em; text-transform:uppercase}
.plai .spec ul{list-style:none; margin:14px 0}
.plai .spec li{display:flex; justify-content:space-between; gap:12px; padding:9px 0;
  border-bottom:1px solid var(--border); font-family:var(--mono); font-size:.75rem}
.plai .spec li span{color:var(--dim)}
.plai .spec li b{color:var(--text); font-weight:600; text-align:right}
.plai .spec .btn{margin-top:auto; justify-content:center}
.plai .pimg{width:100%; display:block; border:1px solid var(--border);
  background:#fff; object-fit:contain; aspect-ratio:16/10}
.plai .hero-card .pimg{aspect-ratio:4/3; margin-bottom:16px}
.plai .spec .pimg{margin-bottom:16px}
.plai .scroll{overflow-x:auto; border:1px solid var(--border)}
.plai .tbl{width:100%; border-collapse:collapse; font-size:.85rem}
.plai .tbl th,.plai .tbl td{text-align:left; padding:11px 14px;
  border-bottom:1px solid var(--border); vertical-align:top}
.plai .tbl thead th{font-family:var(--mono); color:var(--dim); font-weight:400; font-size:.7rem;
  text-transform:uppercase; letter-spacing:.09em; border-bottom:1px solid var(--accent); white-space:nowrap}
.plai .tbl tbody tr:hover{background:var(--bg-2)}
.plai .tbl tbody td{color:var(--muted)}
.plai .tbl .em,.plai .tbl td.crit{color:var(--text); font-weight:700}
.plai .tbl .ok{color:var(--accent)}
.plai .tbl .no{color:var(--dim)}
.plai .tbl .mid{color:var(--warn)}
.plai .tbl .bl{color:var(--blue)}
.plai .ptwrap{overflow-x:auto; margin-top:26px}
.plai .ptable{width:100%; min-width:660px; border-collapse:collapse; border:1px solid var(--border)}
.plai .ptable th,.plai .ptable td{padding:11px 14px; text-align:left; vertical-align:middle}
.plai .ptable thead th{font-family:var(--mono); font-size:.7rem; font-weight:400; text-transform:uppercase;
  letter-spacing:.09em; color:var(--dim); border-bottom:1px solid var(--accent); white-space:nowrap}
.plai .ptable thead th:first-child{width:31%; color:var(--muted)}
.plai .ptable thead th:not(:first-child){text-align:right; width:23%}
.plai .ptable tbody td{font-size:.82rem; color:var(--muted); border-bottom:1px solid var(--border)}
.plai .ptable tbody tr:last-child td{border-bottom:none}
.plai .ptable tbody tr:hover{background:var(--bg-2)}
.plai .ptable td.m{font-family:var(--mono); font-size:.75rem; text-align:right; color:var(--text)}
.plai .ptable td.tot{color:var(--text); font-weight:600}
.plai .ptable td.m.tot{color:var(--accent)}
.plai .ptable tr.sum td{border-top:1px solid var(--border-2)}
.plai .bkbar{height:16px; background:var(--sunk); border:1px solid var(--border-2);
  position:relative; overflow:hidden}
.plai .bkbar i{position:absolute; right:0; top:0; bottom:0; width:0; background:var(--accent);
  display:block; transition:width .9s cubic-bezier(.2,.8,.2,1)}
.plai .bkv{font-family:var(--mono); font-size:.7rem; color:var(--accent);
  margin-top:6px; text-align:right; white-space:nowrap}
.plai .bkscale{font-family:var(--mono); font-size:.7rem; color:var(--dim); margin-top:9px}
.plai .bkscale b{color:var(--accent); font-weight:400}
.plai .scrollhint{display:none; font-family:var(--mono); font-size:.7rem; color:var(--dim); margin-bottom:8px}
.plai .picker{display:flex; flex-wrap:wrap; gap:1px; background:var(--border);
  border:1px solid var(--border); margin-bottom:8px}
.plai .picker button{flex:1; background:var(--bg); border:none; border-top:2px solid transparent;
  color:var(--muted); font-family:var(--mono); font-size:.7rem; padding:12px 10px;
  cursor:pointer; text-align:left; transition:background .15s, color .15s}
.plai .picker button b{display:block; font-family:var(--font); font-size:.82rem;
  color:var(--text); margin-bottom:2px; letter-spacing:-.01em}
.plai .picker button:hover{background:var(--bg-2)}
.plai .picker button.on{background:var(--bg-2); border-top-color:var(--accent); color:var(--accent)}
.plai .picker button.on b{color:var(--accent)}
.plai .picker .tagpme{font-size:.7rem; color:var(--accent); letter-spacing:.08em}
.plai .picker .tagup{font-size:.7rem; color:var(--warn); letter-spacing:.08em}
.plai .vtable{border:1px solid var(--border); border-top:none}
.plai .vhead,.plai .vrow{display:grid; grid-template-columns:1.5fr 1.5fr .6fr 1.6fr .9fr;
  gap:14px; align-items:center; padding:11px 14px}
.plai .vhead{border-bottom:1px solid var(--accent); font-family:var(--mono); font-size:.7rem;
  text-transform:uppercase; letter-spacing:.09em; color:var(--dim)}
.plai .vhead .hum{color:var(--accent)}
.plai .vrow{border-bottom:1px solid var(--border)}
.plai .vrow:last-child{border-bottom:none}
.plai .vrow:hover{background:var(--bg-2)}
.plai .vrow .mdl{font-size:.82rem; font-weight:600; color:var(--text)}
.plai .vrow .mdl em{font-style:normal; font-family:var(--mono); font-size:.7rem; color:var(--dim)}
.plai .vrow .use{font-size:.78rem; color:var(--text)}
.plai .vrow .pre{font-family:var(--mono); font-size:.7rem; color:var(--muted)}
.plai .vbar{height:19px; background:var(--sunk); border:1px solid var(--border-2);
  position:relative; overflow:hidden}
.plai .vbar i{position:absolute; left:0; top:0; bottom:0; display:block; width:0;
  transition:width .7s cubic-bezier(.2,.8,.2,1), background .3s}
.plai .vbar i.ok{background:var(--accent)}
.plai .vbar i.wr{background:var(--warn)}
.plai .vbar i.no{background:var(--danger)}
.plai .vbar span{position:absolute; right:6px; top:50%; transform:translateY(-50%);
  font-family:var(--mono); font-size:.7rem; color:var(--text)}
.plai .vrow .vd{font-family:var(--mono); font-size:.7rem; text-align:right}
.plai .vd.ok{color:var(--accent)}
.plai .vd.wr{color:var(--warn)}
.plai .vd.no{color:var(--dim)}
.plai ul.checks{list-style:none}
.plai ul.checks li{position:relative; padding-left:22px; margin:10px 0; color:var(--muted); font-size:.88rem}
.plai ul.checks li::before{content:"▸"; position:absolute; left:0; top:0; color:var(--accent); font-size:.7rem}
.plai ul.checks.cloud li::before{color:var(--blue)}
.plai ul.checks li b{color:var(--text); font-weight:600}
.plai .callout{background:var(--bg-2); border-left:2px solid var(--accent);
  padding:12px 14px; margin:24px 0; color:var(--muted); font-size:.88rem}
.plai .callout b{color:var(--text)}
.plai .callout::before{content:"En clair — "; font-family:var(--mono); font-size:.7rem;
  letter-spacing:.1em; text-transform:uppercase; color:var(--accent)}
.plai .note{background:var(--bg-2); border:1px solid var(--border);
  padding:14px 16px; color:var(--muted); font-size:.85rem; margin-top:18px}
.plai .note b{color:var(--text)}
.plai .note-warn{background:rgba(201,146,42,.07); border:1px solid rgba(201,146,42,.35);
  padding:14px 16px; color:var(--muted); font-size:.85rem; margin:22px 0}
.plai .note-warn b{color:var(--warn)}
.plai .marquee{border:1px solid var(--border); overflow:hidden; position:relative; margin-top:8px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 70px,#000 calc(100% - 70px),transparent);
  mask-image:linear-gradient(90deg,transparent,#000 70px,#000 calc(100% - 70px),transparent)}
.plai .marquee-track{display:flex; width:max-content; animation:plai-scroll 60s linear infinite}
.plai .marquee:hover .marquee-track,.plai .marquee:focus-within .marquee-track{animation-play-state:paused}
@keyframes plai-scroll{from{transform:translateX(0)} to{transform:translateX(-50%)}}
.plai .brand{display:flex; align-items:center; justify-content:center; flex:none;
  height:76px; padding:0 24px; border-right:1px solid var(--border);
  font-family:var(--mono); font-size:.7rem; letter-spacing:.04em; color:var(--muted); white-space:nowrap}
.plai .brand img{width:112px; height:auto; object-fit:contain; display:block;
  filter:brightness(0) invert(1); opacity:.6; transition:opacity .2s}
.plai .brand.keep img{filter:none; opacity:.9}
.plai .marquee:hover .brand img{opacity:.95}
.plai .ladder{display:grid; grid-template-columns:repeat(4,1fr); gap:1px;
  background:var(--border); border:1px solid var(--border); margin-top:24px}
.plai .rung{background:var(--bg); padding:20px; display:flex; flex-direction:column}
.plai .rung.rec{background:var(--bg-2); box-shadow:inset 0 2px 0 var(--accent)}
.plai .rung .lvl{font-family:var(--mono); font-size:.7rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--dim)}
.plai .rung h3{margin:7px 0; font-size:1rem}
.plai .rung p{color:var(--muted); font-size:.82rem; flex:1}
.plai .rung .pr{font-family:var(--mono); margin-top:12px; color:var(--accent);
  font-weight:700; font-size:.85rem}
.plai .steps{display:grid; gap:1px; background:var(--border); border:1px solid var(--border); margin-top:26px}
.plai .step{display:grid; grid-template-columns:auto 1fr auto; gap:18px; align-items:center;
  background:var(--bg); padding:18px 20px}
.plai .step:hover{background:var(--bg-2)}
.plai .step .n{width:34px; height:34px; border:1px solid var(--border-2); color:var(--accent);
  font-family:var(--mono); font-weight:700; font-size:.85rem;
  display:flex; align-items:center; justify-content:center; background:var(--sunk)}
.plai .step .t{font-weight:700; font-size:.95rem}
.plai .step .d{color:var(--muted); font-size:.85rem; margin-top:2px}
.plai .step .dur{font-family:var(--mono); color:var(--accent); font-size:.75rem;
  font-weight:700; white-space:nowrap}
.plai .cat{font-family:var(--mono); color:var(--accent); font-size:.7rem; font-weight:400;
  letter-spacing:.12em; text-transform:uppercase; margin:26px 0 4px}
.plai .faq details{border-bottom:1px solid var(--border)}
.plai .faq summary{cursor:pointer; padding:15px 0; font-weight:600; font-size:.92rem; list-style:none;
  display:flex; justify-content:space-between; gap:16px; color:var(--text)}
.plai .faq summary::-webkit-details-marker{display:none}
.plai .faq summary::after{content:"+"; font-family:var(--mono); color:var(--accent)}
.plai .faq details[open] summary::after{content:"−"}
.plai .faq details p{color:var(--muted); font-size:.88rem; padding:0 0 15px}
.plai .faq details p a{color:var(--accent); text-decoration:underline; text-underline-offset:2px}
.plai .cta{background:var(--bg-2); border-top:1px solid var(--border); padding:52px 0}
.plai .cta.center{text-align:center}
.plai .cta.center .row,.plai .cta.center .cta-row{justify-content:center}
.plai .cta.solid{background:var(--accent); color:var(--accent-ink)}
.plai .cta.solid .eyebrow{color:#1f3004}            
.plai .cta.solid h2{color:var(--accent-ink); max-width:22ch}
.plai .cta.solid p,.plai .cta.solid .lead{color:#294005; font-size:.95rem; margin-top:8px}
.plai .cta.solid .btn{background:var(--accent-ink); border-color:var(--accent-ink)}
.plai .cta.solid .btn:hover{background:#000; border-color:#000}
.plai .cta.solid .btn-ghost,.plai .cta.solid .btn.ghost{background:transparent; border-color:var(--accent-ink)}
.plai .cta.solid .btn-ghost:hover{background:var(--accent-ink)}
.plai .cta.solid .btn,#main .plai .cta.solid .btn,
.plai .cta.solid .btn:hover,#main .plai .cta.solid .btn:hover{color:var(--accent) !important}
.plai .cta.solid .btn-ghost,#main .plai .cta.solid .btn-ghost,
.plai .cta.solid .btn.ghost,#main .plai .cta.solid .btn.ghost{color:var(--accent-ink) !important}
.plai .cta.solid .btn-ghost:hover,#main .plai .cta.solid .btn-ghost:hover{color:var(--accent) !important}
.plai form.lead{background:var(--bg-2); border:1px solid var(--border); padding:24px; margin-top:20px; max-width:none}
.plai .frow{display:grid; grid-template-columns:1fr 1fr; gap:14px}
.plai .field{margin-bottom:13px}
.plai .field label{display:block; font-family:var(--mono); font-size:.7rem; letter-spacing:.08em;
  text-transform:uppercase; color:var(--dim); margin-bottom:6px}
.plai .field input,.plai .field select,.plai .field textarea{width:100%; background:var(--sunk);
  border:1px solid var(--border-2); color:var(--text); padding:10px 11px; font-size:.9rem; font-family:inherit}
.plai .field input:focus,.plai .field select:focus,.plai .field textarea:focus{border-color:var(--accent)}
.plai .field input::placeholder,.plai .field textarea::placeholder{color:var(--dim); opacity:1}
.plai .req{color:var(--danger); margin-left:3px; font-weight:700}
.plai .flegend{font-size:.7rem; color:var(--dim); margin:12px 0 0; text-align:center}
.plai .flegend .req{margin-left:0; margin-right:3px; font-weight:400}
.plai .consent{display:flex; gap:10px; align-items:flex-start; font-size:.82rem; color:var(--muted);
  margin:4px 0; padding:11px 12px; border:1px solid var(--border-2); background:var(--sunk); cursor:pointer}
.plai .consent input{width:auto; flex:none; margin-top:2px; accent-color:var(--accent)}
.plai .consent.opt{margin-bottom:12px}
.plai .legal{font-size:.75rem; line-height:1.6; color:var(--dim); margin:10px 0 16px}
.plai .legal b{color:var(--muted)}
.plai .legal a{color:var(--muted); text-decoration:underline; text-underline-offset:2px}
.plai .legal a:hover{color:var(--accent)}
.plai .hp{position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%); white-space:nowrap; border:0}
.plai form.lead{position:relative}
.plai .form-ok{display:none; background:rgba(122,181,29,.1); border:1px solid rgba(122,181,29,.45);
  color:var(--text); padding:14px 16px; margin-top:14px; font-size:.88rem}
.plai .form-ok b{color:var(--accent)}
.plai .form-ok.pending{background:rgba(201,146,42,.08); border-color:rgba(201,146,42,.45)}
.plai .form-ok.pending b{color:var(--warn)}
.plai .form-ok.pending a{color:var(--warn); text-decoration:underline; text-underline-offset:2px}
.plai .book{border:1px solid var(--border); border-top:2px solid var(--accent); background:var(--bg-2);
  padding:24px; display:grid; grid-template-columns:1fr auto; gap:26px; align-items:center; margin-top:20px}
.plai .book h3{font-size:1.15rem; margin:7px 0 6px}
.plai .book p{font-size:.85rem; color:var(--muted); max-width:54ch}
.plai .book .btn{white-space:nowrap}
.plai .orsep{display:flex; align-items:center; gap:14px; margin:26px 0; font-family:var(--mono);
  font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; color:var(--dim)}
.plai .orsep::before,.plai .orsep::after{content:""; flex:1; height:1px; background:var(--border)}
@media(max-width:760px){ .plai .book{grid-template-columns:1fr; gap:18px} .plai .book .btn{width:100%; justify-content:center} }
.plai .micro{font-family:var(--mono); color:var(--dim); font-size:.7rem; text-align:center; margin-top:10px}
.plai .micro a{color:var(--muted); text-decoration:underline; text-underline-offset:2px}
.plai .micro a:hover{color:var(--accent)}
.plai .cols{display:grid; grid-template-columns:1.35fr .65fr; gap:30px; align-items:start; padding:30px 0 60px}
.plai .fset{border-top:1px solid var(--border); margin-top:20px; padding-top:18px}
.plai .fset:first-of-type{border-top:none; margin-top:0; padding-top:0}
.plai .fset .lg{font-family:var(--mono); font-size:.7rem; letter-spacing:.1em; text-transform:uppercase;
  color:var(--accent); margin-bottom:12px}
.plai .side{display:grid; gap:14px; position:sticky; top:20px}
.plai .side .panel{padding:20px}
.plai .side .k{font-family:var(--mono); font-size:.7rem; letter-spacing:.1em; text-transform:uppercase;
  color:var(--accent); margin-bottom:12px}
.plai .stepl{list-style:none}
.plai .stepl li{display:grid; grid-template-columns:auto 1fr; gap:12px; padding:9px 0;
  color:var(--muted); font-size:.85rem}
.plai .stepl .n{width:22px; height:22px; border:1px solid var(--border-2); color:var(--accent);
  font-family:var(--mono); font-size:.7rem; font-weight:700;
  display:flex; align-items:center; justify-content:center; background:var(--sunk)}
.plai .stepl b{color:var(--text); display:block}
.plai .tools{display:grid; grid-template-columns:1fr 1fr; gap:1px;
  background:var(--border); border:1px solid var(--border); margin-top:26px}
.plai .tool{display:flex; flex-direction:column; background:var(--bg-2);
  border-top:2px solid var(--accent); padding:22px; transition:background .15s}
.plai .tool:hover{background:var(--surface-3)}
.plai .tool .tag{font-family:var(--mono); font-size:.7rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--accent); margin-bottom:8px}
.plai .tool p{color:var(--muted); font-size:.88rem; margin:8px 0 14px}
.plai .tool .go{color:var(--accent); font-weight:700; font-size:.85rem; margin-top:auto}
.plai .card .pill{display:inline-block; font-family:var(--mono); font-size:.7rem; letter-spacing:.06em;
  color:var(--muted); border:1px solid var(--border-2); padding:3px 9px; margin-bottom:10px; width:fit-content}
.plai .card .pill.star{color:var(--accent); border-color:rgba(122,181,29,.5); background:rgba(122,181,29,.09)}
.plai .card .go{color:var(--accent); font-weight:700; font-size:.85rem; margin-top:auto; padding-top:12px}
.plai .card:hover .go{text-decoration:underline}
.plai a.card{display:flex; flex-direction:column}
.plai .head{border-bottom:1px solid var(--border); padding-bottom:26px}
.plai .art{max-width:760px; margin:0 auto; padding:34px 0 10px; line-height:1.7}
.plai .art h2{font-size:1.4rem; margin:34px 0 12px}
.plai .art h3{font-size:1.08rem; margin:24px 0 8px}
.plai .art p{color:var(--text-2); margin:14px 0; font-size:.95rem}
.plai .art strong{color:var(--text)}
.plai .art a:not(.btn),.plai .art a:not(.btn):hover{color:var(--accent); text-decoration:underline; text-underline-offset:2px}
.plai .art ol{margin:14px 0 14px 20px; color:var(--text-2)}
.plai .art ol li{margin:9px 0}
.plai .art ul{margin:14px 0 14px 4px; list-style:none}
.plai .art ul li{position:relative; padding-left:22px; margin:9px 0; color:var(--text-2)}
.plai .art ul li::before{content:"▸"; position:absolute; left:0; top:0; color:var(--accent); font-size:.7rem}
.plai .art ul li b{color:var(--text)}
.plai .art .tldr{background:var(--bg-2); border-left:2px solid var(--accent);
  padding:14px 16px; color:var(--muted); margin:18px 0; font-size:.88rem}
.plai .art .tldr b{color:var(--text)}
.plai .art table{width:100%; border-collapse:collapse; font-size:.85rem; border:1px solid var(--border)}
.plai .art th,.plai .art td{text-align:left; padding:11px 14px;
  border-bottom:1px solid var(--border); vertical-align:top; color:var(--muted)}
.plai .art thead th{font-family:var(--mono); color:var(--dim); font-weight:400; font-size:.7rem;
  text-transform:uppercase; letter-spacing:.09em; border-bottom:1px solid var(--accent)}
.plai .art tbody tr:hover{background:var(--bg-2)}
.plai .art td.c{color:var(--text); font-weight:600}
.plai .cta-box{background:var(--bg-2); border:1px solid var(--border);
  border-top:2px solid var(--accent); padding:24px; margin:30px 0; text-align:center}
.plai .cta-box h3{font-size:1.1rem; margin-bottom:6px}
.plai .cta-box p{color:var(--muted); margin-bottom:16px; font-size:.9rem}
.plai .related{border-top:1px solid var(--border); margin-top:34px; padding:24px 0 40px}
.plai .faq + .related{border-top:none; padding-top:0}
.plai .related .eyebrow{margin-bottom:10px}
.plai .related a,.plai .related a:hover{display:inline-block; margin-right:18px; color:var(--accent)}
.plai .related a:hover{text-decoration:underline}
.plai .clc{background:var(--bg); border:1px solid var(--border); margin:26px 0}
.plai .clc-head{padding:20px 24px; border-bottom:1px solid var(--border)}
.plai .clc-head h3{margin:0 0 4px; font-size:1.2rem}
.plai .clc-head p{margin:0; color:var(--muted); font-size:.85rem}
.plai .clc-grid{display:grid; grid-template-columns:1fr 1fr}
.plai .clc-inputs{padding:20px 24px; border-right:1px solid var(--border)}
.plai .clc-f{margin-bottom:16px}
.plai .clc-f label{display:block; font-family:var(--mono); font-size:.7rem; letter-spacing:.08em;
  text-transform:uppercase; color:var(--dim); margin-bottom:6px}
.plai .clc-f .clc-row{display:flex; align-items:center; gap:8px}
.plai .clc-f input[type=number]{width:100%; background:var(--sunk); border:1px solid var(--border-2);
  color:var(--text); padding:10px 11px; font-family:var(--mono); font-size:.9rem}
.plai .clc-f input:focus{border-color:var(--accent)}
.plai .clc-f .clc-unit{font-family:var(--mono); color:var(--dim); font-size:.75rem; white-space:nowrap}
.plai .clc-f input[type=range]{width:100%; accent-color:var(--accent); margin-top:8px}
.plai .clc-results{padding:20px 24px; background:var(--bg-2)}
.plai .clc-verdict{font-size:.95rem; font-weight:600; padding:12px 14px; margin-bottom:18px;
  background:rgba(122,181,29,.1); border:1px solid rgba(122,181,29,.4)}
.plai .clc-verdict.is-cloud{background:rgba(90,159,212,.1); border-color:rgba(90,159,212,.4)}
.plai .clc-bars{margin:16px 0 4px}
.plai .clc-bar{height:24px; margin:8px 0; display:flex; align-items:center; padding:0 10px;
  font-family:var(--mono); font-size:.7rem; white-space:nowrap; min-width:60px}
.plai .clc-bar.is-local{background:var(--accent); color:var(--accent-ink)}
.plai .clc-bar.is-cloud{background:var(--blue); color:#04121f}
.plai .clc-stat{display:flex; justify-content:space-between; align-items:baseline;
  padding:11px 0; border-bottom:1px solid var(--border)}
.plai .clc-stat:last-of-type{border-bottom:none}
.plai .clc-stat .clc-k{color:var(--muted); font-size:.85rem}
.plai .clc-stat .clc-v{font-family:var(--mono); font-size:1.05rem; font-weight:700; color:var(--text)}
.plai .clc-v.is-green{color:var(--accent)}
.plai .clc-v.is-blue{color:var(--blue)}
.plai .clc-v.is-warn{color:var(--warn)}
.plai .clc-cta{margin-top:20px; text-align:center}
.plai .clc-cta small{display:block; font-family:var(--mono); color:var(--dim); margin-top:8px; font-size:.7rem}
.plai .clc-note{font-family:var(--mono); color:var(--dim); font-size:.7rem;
  padding:12px 24px; border-top:1px solid var(--border)}
.plai .sel{background:var(--bg); border:1px solid var(--border); margin:26px 0}
.plai .sel-head{padding:20px 24px; border-bottom:1px solid var(--border)}
.plai .sel-head h3{margin:0 0 4px; font-size:1.2rem}
.plai .sel-head p{margin:0; color:var(--muted); font-size:.85rem}
.plai .sel-body{padding:20px 24px}
.plai .sel-fields{display:grid; grid-template-columns:1fr 1fr 1fr; gap:16px}
.plai .sel-f label{display:block; font-family:var(--mono); font-size:.7rem; letter-spacing:.08em;
  text-transform:uppercase; color:var(--dim); margin-bottom:6px}
.plai .sel-f select{width:100%; background:var(--sunk); border:1px solid var(--border-2);
  color:var(--text); padding:10px 11px; font-size:.9rem; font-family:inherit}
.plai .sel-f select:focus{border-color:var(--accent)}
.plai .sel-result{margin-top:22px; background:var(--bg-2); border:1px solid var(--border); padding:20px}
.plai .sel-vram{display:flex; align-items:baseline; gap:10px; margin-bottom:16px}
.plai .sel-vram .sel-big{font-family:var(--mono); font-size:2rem; font-weight:700; color:var(--accent)}
.plai .sel-vram .sel-lbl{color:var(--muted); font-size:.85rem}
.plai .sel-reco{display:flex; align-items:center; gap:14px; padding:14px;
  background:var(--sunk); border:1px solid var(--border-2); border-left:2px solid var(--accent)}
.plai .sel-reco .sel-badge{font-family:var(--mono); font-size:1.5rem; color:var(--accent)}
.plai .sel-reco .sel-name{font-size:1.05rem; font-weight:700; color:var(--text)}
.plai .sel-reco .sel-price{font-family:var(--mono); color:var(--muted); font-size:.8rem}
.plai .sel-reco .sel-desc{font-size:.85rem; color:var(--text-2); margin-top:2px}
.plai .sel-cta{margin-top:18px; text-align:center}
.plai .sel-cta .btn{margin:0 4px}
.plai .sel-cta small{display:block; font-family:var(--mono); color:var(--dim); margin-top:8px; font-size:.7rem}
.plai .sel-note{font-family:var(--mono); color:var(--dim); font-size:.7rem;
  padding:12px 24px; border-top:1px solid var(--border)}
@media(max-width:960px){
  .plai h1{font-size:32px}
  .plai h2{font-size:24px}
  .plai .g-4{grid-template-columns:repeat(2,1fr)}
  .plai .ladder{grid-template-columns:repeat(2,1fr)}
  .plai .split{grid-template-columns:1fr}
}
@media(max-width:900px){
  .plai .hero.split-2 .wrap{grid-template-columns:1fr; gap:28px}
  .plai .cols{grid-template-columns:1fr; gap:22px}
  .plai .side{position:static}
  .plai .clc-grid{grid-template-columns:1fr}
  .plai .clc-inputs{border-right:none; border-bottom:1px solid var(--border)}
  .plai .sel-fields{grid-template-columns:1fr}
}
@media(max-width:820px){
  .plai .tools{grid-template-columns:1fr}
}
@media(max-width:760px){
  .plai .scrollhint{display:block}
  .plai .step{grid-template-columns:auto 1fr}
  .plai .step .dur{grid-column:2}
  .plai .brand{height:64px; padding:0 18px}
  .plai .brand img{width:88px}
  .plai .picker button{flex:1 1 calc(50% - 1px)}
}
@media(max-width:980px){
  .plai .vhead{display:none}
  .plai .vrow{grid-template-columns:1fr 1fr; gap:8px}
  .plai .vrow .pre{display:none}
}
@media(max-width:640px){
  .plai section{padding:44px 0}
  .plai .g-2,.plai .g-3,.plai .g-4{grid-template-columns:1fr}
  .plai .frow{grid-template-columns:1fr}
  .plai .hero{padding:40px 0}
  .plai .ladder{grid-template-columns:1fr}
  .plai .wrap{padding:0 20px}
}
@media(prefers-reduced-motion:reduce){
  .plai *,.plai *::before,.plai *::after{transition:none !important; animation:none !important}
  .plai .marquee-track{width:auto; flex-wrap:wrap}
  .plai .marquee-track .dup{display:none}
  .plai .marquee{-webkit-mask-image:none; mask-image:none}
}
