/* LQA: the approved compact process, within Perfectloc's editorial page system. */
.lqa-page{--lqa-ink:#102238;--lqa-muted:#627081;--lqa-red:#b91832}
.lqa-page .content-section{padding-block:clamp(60px,6vw,90px)}
.lqa-page h2{font-size:clamp(30px,3.2vw,46px);max-width:800px;line-height:1.18}
.lqa-icon{width:24px;height:24px;flex:0 0 auto;vertical-align:middle}
.lqa-page .lqa-intro{padding-top:56px;padding-bottom:72px}
.lqa-intro .detail-hero{grid-template-columns:1fr 1.04fr;gap:55px}
.lqa-intro h1{font-size:clamp(36px,4vw,58px);line-height:1.16;text-wrap:balance;margin-bottom:23px}
.lqa-intro .section-description{font-size:17px;line-height:1.85;max-width:560px;margin:0 0 28px}
.lqa-hero-media{margin:0;min-width:0}
.lqa-intro .service-image{aspect-ratio:4/3;object-fit:cover;border-radius:3px}
.lqa-cta-link{display:inline-flex!important;align-items:center;justify-content:space-between;gap:20px;padding:16px 23px!important;background:#b91832;color:#fff!important;font-size:15px!important;text-decoration:none;font-weight:600;max-width:100%;line-height:1.5}
.lqa-cta-link svg{margin:0}.lqa-cta-link:hover{background:#9c1228}
.lqa-scope{background:#f4f6f8}
.lqa-scope .section-description{max-width:760px;margin-top:16px}
.lqa-scope-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;margin-top:45px}
.lqa-scope-grid article{min-width:0}
.lqa-scope-grid .lqa-icon{width:31px;height:31px;color:var(--lqa-red);margin-bottom:22px}
.lqa-scope-grid h3{font-size:20px;margin-bottom:12px}
.lqa-scope-grid p{margin:0;color:var(--lqa-muted);font-size:15px;line-height:1.75;max-width:240px}
.lqa-page .lqa-process-section{padding-bottom:0}
.lqa-flow{--flow-bg:#09101a;--flow-panel:#121d2b;--flow-ink:#edf4ff;--flow-muted:#a9bbd0;--flow-line:#314459;--flow-accent:#76dfdf;--flow-soft:#193b43;background:var(--flow-bg);color:var(--flow-ink);padding:clamp(24px,4vw,52px);border-radius:16px;max-width:1000px;margin-inline:auto}
.lqa-flow *{box-sizing:border-box}
.lqa-flow .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.lqa-flow [hidden]{display:none!important}
.lqa-flow-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:35px}
.lqa-flow .section-label{font-size:11px;color:var(--flow-accent);letter-spacing:.12em;margin:0 0 10px}
.lqa-flow h2{font-size:clamp(24px,2.3vw,32px);color:var(--flow-ink);font-weight:500;line-height:1.35;letter-spacing:-.025em}
.lqa-flow button{cursor:pointer;font:inherit}
.lqa-play{display:none;background:var(--flow-panel);color:var(--flow-ink);border:1px solid var(--flow-line);border-radius:30px;min-height:44px;min-width:120px;padding:11px 17px;align-items:center;justify-content:center;gap:8px;font-size:13px!important;flex-shrink:0}
.lqa-play .lqa-icon{width:16px;height:16px}
.lqa-route{display:none;position:relative;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
.lqa-route:before{content:"";position:absolute;top:25px;left:10%;right:10%;height:1px;background:var(--flow-line)}
.lqa-route li{z-index:1;min-width:0}
.lqa-step{width:100%;border:0;background:transparent;color:var(--flow-muted);display:flex;align-items:center;flex-direction:column;gap:13px;padding:0;font-size:14px!important;line-height:1.5;text-align:center}
.lqa-node{width:52px;height:52px;border:1px solid var(--flow-line);background:var(--flow-bg);display:grid;place-items:center;border-radius:50%;transition:background .3s,transform .3s,color .3s}
.lqa-step:hover .lqa-node{border-color:var(--flow-accent)}
.lqa-step.is-complete .lqa-node{color:var(--flow-accent);border-color:var(--flow-accent)}
.lqa-step[aria-pressed="true"]{color:var(--flow-ink)}
.lqa-step[aria-pressed="true"] .lqa-node{background:var(--flow-accent);color:var(--flow-bg);border-color:var(--flow-accent);transform:scale(1.07)}
.lqa-flow button:focus-visible{outline:2px solid var(--flow-accent);outline-offset:5px}
.lqa-return{display:none;gap:7px;justify-content:center;align-items:center;margin:17px 7% 23px 68%;padding-bottom:8px;border-bottom:1px dashed var(--flow-line);font-size:11px;line-height:1.5;color:var(--flow-muted)}
.lqa-return .lqa-icon{width:14px;height:14px}
.lqa-flow[data-enhanced] .lqa-route{display:grid}.lqa-flow[data-enhanced] .lqa-play,.lqa-flow[data-enhanced] .lqa-return{display:flex}
.lqa-panel+.lqa-panel{margin-top:24px}.lqa-flow[data-enhanced] .lqa-panel{margin:0}
.lqa-stage{min-height:235px;min-width:0;position:relative;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:30px 24px;background:var(--flow-panel);border-radius:12px;overflow:hidden}
.lqa-scene{width:100%;max-width:490px;min-height:175px;display:flex;align-items:center;justify-content:center;gap:25px;animation:lqa-scene-in .4s ease both}
.lqa-scene>.lqa-icon{color:var(--flow-accent)}
.lqa-diagram-label{position:absolute;right:15px;bottom:11px;color:var(--flow-muted);font-size:11px}
.lqa-file{border:1px solid var(--flow-line);padding:20px;background:var(--flow-bg);border-radius:8px;width:145px;display:flex;flex-direction:column;gap:15px;font-size:13px}
.lqa-line{display:block;height:5px;background:var(--flow-line);border-radius:2px;width:100%}.lqa-line.short{width:66%}
.lqa-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lqa-modules>span{border:1px solid var(--flow-line);border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 15px;font-size:12px;min-width:73px;color:var(--flow-muted)}
.lqa-checks{display:flex;flex-direction:column;gap:15px;min-width:0}
.lqa-check-row{display:flex;gap:11px;align-items:center;font-size:13px;line-height:1.5}.lqa-check-row .lqa-icon{color:var(--flow-accent);width:22px;height:22px}
.lqa-strings{border:1px solid var(--flow-line);padding:18px;width:230px;border-radius:7px;display:flex;flex-direction:column;gap:16px;font-size:15px}.lqa-strings>span:first-child{color:var(--flow-accent)}
.lqa-game-scene{width:300px;height:170px;border:1px solid var(--flow-line);border-radius:9px;position:relative;overflow:hidden;background:var(--flow-bg);flex-shrink:1;min-width:0}
.lqa-landscape{position:absolute;inset:20px 0 45px;background:var(--flow-soft);clip-path:polygon(0 85%,20% 27%,39% 69%,65% 0,100% 82%,100% 100%,0 100%)}
.lqa-game-top{position:relative;display:flex;justify-content:space-between;padding:10px;color:var(--flow-muted)}.lqa-game-top .lqa-icon{width:18px;height:18px}
.lqa-subtitle{position:absolute;bottom:13px;left:12px;right:12px;text-align:center;font-size:12px;line-height:1.4;padding:8px;background:var(--flow-panel);border:1px solid var(--flow-accent);border-radius:4px}
.lqa-game-tags{flex-shrink:0}
.lqa-ticket{width:255px;border:1px solid var(--flow-line);border-radius:8px;padding:18px;display:flex;gap:16px;align-items:center;min-width:0}
.lqa-thumbnail{background:var(--flow-soft);color:var(--flow-accent);width:64px;height:58px;display:grid;place-items:center;border-radius:4px;flex-shrink:0}
.lqa-ticket-copy{display:flex;flex-direction:column;gap:12px;flex:1;font-size:13px;min-width:0}
.lqa-developers{display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center;font-size:12px;max-width:100px;color:var(--flow-muted)}
.lqa-final{width:82px;height:82px;border-radius:50%;background:var(--flow-soft);color:var(--flow-accent);display:grid;place-items:center;flex-shrink:0}.lqa-final .lqa-icon{width:37px;height:37px}
.lqa-caption{display:flex;align-items:baseline;gap:18px;margin-top:23px;min-height:80px}
.lqa-count{color:var(--flow-accent);font:12px/1.5 var(--mono);white-space:nowrap}
.lqa-caption h3{font-size:19px;line-height:1.4;color:var(--flow-ink);margin:0 0 7px;font-weight:500;letter-spacing:0}
.lqa-caption p{font-size:14px;line-height:1.7;margin:0;color:var(--flow-muted);max-width:710px}
.lqa-progress{height:2px;background:var(--flow-line);margin-top:20px;display:none}.lqa-flow[data-enhanced] .lqa-progress{display:block}.lqa-progress>div{height:100%;width:20%;background:var(--flow-accent);transition:width .4s ease}
.lqa-advantage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:45px}
.lqa-proof-value{min-height:84px;display:flex;align-items:center;gap:14px;font-size:72px;line-height:1;letter-spacing:-.06em;color:var(--lqa-red);margin-bottom:20px;font-weight:500}
.lqa-proof-advisor{font-size:clamp(23px,2.1vw,32px);letter-spacing:-.03em}.lqa-proof-advisor .lqa-icon{width:37px;height:37px}
.lqa-advantage-grid h3{font-size:20px;line-height:1.4}.lqa-advantage-grid p{font-size:15px;color:var(--lqa-muted);margin:0;max-width:320px}
.lqa-reach{display:flex;justify-content:space-between;gap:25px;align-items:center;border-top:1px solid #dbe1e7;margin-top:45px;padding-top:25px}.lqa-reach p{display:flex;align-items:center;gap:12px;margin:0;font-size:16px}.lqa-reach a{display:inline-flex;align-items:center;gap:12px;color:var(--lqa-red);text-decoration:none;font-size:14px;line-height:1.6}.lqa-reach a svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}
.lqa-quality{background:#f4f6f8}.lqa-quality-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:65px}.lqa-quality-grid h2{max-width:400px}.lqa-quality dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin:0}.lqa-quality dl>div{display:flex;flex-direction:column}.lqa-quality dt{order:1;font-size:17px;line-height:1.5}.lqa-quality dd{font-size:clamp(50px,5.2vw,76px);line-height:1;letter-spacing:-.065em;margin:0 0 18px;color:var(--lqa-ink);font-weight:500}.lqa-quality dl p{order:2;margin:8px 0 0;font-size:13px;color:var(--lqa-muted);line-height:1.6}.lqa-quality-note{color:var(--lqa-muted);font-size:13px!important;max-width:850px;margin:30px 0 0}.lqa-safeguards{list-style:none;padding:24px 0 0;margin:25px 0 0;display:flex;flex-wrap:wrap;gap:16px 30px;border-top:1px solid #dbe1e7}.lqa-safeguards li{display:flex;align-items:center;gap:9px;font-size:13px;line-height:1.6}.lqa-safeguards .lqa-icon{width:17px;height:17px;color:var(--lqa-red)}
.lqa-contact p{color:#c3cedb;max-width:640px;margin:24px 0 30px;font-size:16px}.lqa-contact .lqa-cta-link{background:#c61732}
@keyframes lqa-scene-in{from{transform:translateY(9px);opacity:.6}to{transform:translateY(0);opacity:1}}
@media(max-width:900px){.lqa-intro .detail-hero{gap:30px}.lqa-scope-grid{gap:25px;grid-template-columns:repeat(2,minmax(0,1fr))}.lqa-advantage-grid{gap:25px}.lqa-quality-grid{gap:30px;grid-template-columns:1fr}.lqa-quality-grid h2{max-width:650px}.lqa-quality dl{max-width:660px}.lqa-reach{align-items:flex-start;flex-direction:column;gap:15px}.lqa-flow-header{align-items:flex-start}.lqa-flow h2{max-width:540px}}
@media(max-width:700px){.lqa-intro .detail-hero{grid-template-columns:1fr;gap:32px}.lqa-intro h1{font-size:38px}.lqa-intro .section-description{font-size:16px}.lqa-intro .service-image{aspect-ratio:16/9}.lqa-page .lqa-intro{padding-top:40px;padding-bottom:52px}.lqa-advantage-grid{grid-template-columns:1fr;gap:30px}.lqa-advantage-grid article{display:grid;grid-template-columns:105px minmax(0,1fr);gap:0 20px}.lqa-proof-value{grid-row:span 2;font-size:58px;min-height:0;align-items:flex-start;margin:0}.lqa-proof-advisor{font-size:21px;flex-direction:column;gap:10px}.lqa-advantage-grid h3{font-size:18px;margin-bottom:10px}.lqa-advantage-grid p{font-size:14px}.lqa-scope-grid p{font-size:14px}.lqa-scope-grid h3{font-size:18px}.lqa-flow{padding:25px 18px}.lqa-flow-header{flex-direction:column;gap:18px;margin-bottom:26px}.lqa-flow h2{font-size:25px}.lqa-flow .section-label{font-size:10px}.lqa-play{min-height:42px;padding:9px 14px;min-width:0}.lqa-step{font-size:11px!important;gap:10px}.lqa-node{width:40px;height:40px}.lqa-node .lqa-icon{width:19px;height:19px}.lqa-route{gap:3px}.lqa-route:before{top:20px}.lqa-return{margin-left:56%;margin-right:0;font-size:10px;gap:4px;min-height:34px}.lqa-stage{min-height:205px;padding:23px 12px}.lqa-scene{min-height:153px;gap:12px}.lqa-file{width:99px;padding:12px;font-size:11px;gap:12px}.lqa-modules{gap:7px}.lqa-modules>span{min-width:50px;padding:9px 6px;font-size:10px}.lqa-modules .lqa-icon{width:20px;height:20px}.lqa-scene>.lqa-icon{width:18px;height:18px}.lqa-strings{width:125px;padding:12px;gap:13px;font-size:12px}.lqa-check-row{font-size:11px;gap:7px}.lqa-check-row .lqa-icon{width:18px;height:18px}.lqa-game-scene{width:180px;height:150px}.lqa-game-tags{flex-shrink:1;max-width:115px}.lqa-game-tags .lqa-icon{width:16px;height:16px}.lqa-subtitle{font-size:11px;left:7px;right:7px;padding:7px}.lqa-ticket{width:175px;padding:12px;gap:9px}.lqa-thumbnail{width:37px;height:50px}.lqa-ticket-copy{font-size:11px}.lqa-developers{font-size:11px;max-width:68px}.lqa-final{width:65px;height:65px}.lqa-caption{gap:11px;min-height:114px;margin-top:20px}.lqa-count{font-size:10px}.lqa-caption h3{font-size:17px}.lqa-caption p{font-size:12px}.lqa-diagram-label{font-size:10px;bottom:7px}.lqa-progress{margin-top:12px}.lqa-quality dd{font-size:55px}.lqa-quality dl{gap:20px}.lqa-quality dt{font-size:15px}}
@media(max-width:360px){.lqa-flow{padding-inline:12px}.lqa-step{font-size:10px!important}.lqa-scene{gap:8px}.lqa-check-row{font-size:10px}.lqa-caption{min-height:145px}.lqa-intro h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){.lqa-flow *{animation:none!important;transition:none!important}}
.lqa-quality dd.lqa-metric-note{order:2;margin:8px 0 0;font-size:13px;color:var(--lqa-muted);line-height:1.6;letter-spacing:0;font-weight:400}
