/* COMAC Afrique — thème V10 — généré par tools/theme/build-css.php (ne pas modifier : éditer assets/css/src/) */
/* ── 50-blocks-actions.css ── */
.nw-img,.wk-img{position:relative;overflow:hidden;background:var(--soft)}
.nw-img .slot-img,.wk-img .slot-img,.nw-img .slot-empty,.wk-img .slot-empty{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nw-img .slot-empty,.wk-img .slot-empty{display:flex;align-items:center;justify-content:center;padding:var(--s-3);text-align:center;color:var(--c-muted);font:500 var(--fs-xs)/1.4 var(--font-body)}
.blk-cta .cta-navy,.blk-cta .cta-form{background:linear-gradient(135deg,var(--navy),var(--navy-700))}
.blk-cta .cta-navy>i,.blk-cta .cta-form>i{background:rgb(var(--blue-rgb) / .35)}
.blk-cta .cta-light{background:var(--surface);border:1px solid var(--line);color:var(--navy);box-shadow:var(--sh-1)}
.blk-cta .cta-light h2{color:var(--navy)}
.blk-cta .cta-light p{color:var(--c-muted)}
.blk-cta .cta .btn-primary,.blk-cta .cta .btn-light{background:var(--white);border-color:var(--white);color:var(--navy);box-shadow:none}
.blk-cta .cta .btn-primary:hover,.blk-cta .cta .btn-light:hover{background:var(--sky);border-color:var(--sky);color:var(--navy);box-shadow:none}
.blk-cta .cta .btn-ghost,.blk-cta .cta .btn-outline,.blk-cta .cta .btn-secondary{background:transparent;color:var(--on-dark);border-color:rgb(var(--white-rgb) / .55)}
.blk-cta .cta .btn-ghost:hover,.blk-cta .cta .btn-outline:hover,.blk-cta .cta .btn-secondary:hover{background:rgb(var(--white-rgb) / .14);border-color:var(--white);color:var(--on-dark)}
.blk-cta .cta-light .btn-primary{background:var(--c-accent);border-color:var(--c-accent);color:var(--on-dark);box-shadow:var(--sh-btn)}
.blk-cta .cta-light .btn-primary:hover{background:var(--c-accent-hover);border-color:var(--c-accent-hover);color:var(--on-dark);box-shadow:var(--sh-btn-hover)}
.blk-cta .cta-light .btn-ghost,.blk-cta .cta-light .btn-outline,.blk-cta .cta-light .btn-secondary{background:var(--surface);color:var(--blue-700);border-color:var(--line-strong)}
.blk-cta .cta-light .btn-ghost:hover,.blk-cta .cta-light .btn-outline:hover,.blk-cta .cta-light .btn-secondary:hover{background:var(--sky);border-color:var(--blue);color:var(--blue-700)}
.blk-cta .cta .actions{align-items:center}
.blk-cta .cta .btn:focus-visible,.blk-cta .cta input:focus-visible{outline-color:var(--on-dark)}
.blk-cta .cta-light .btn:focus-visible{outline-color:var(--c-focus)}
.cta-mail{position:relative;display:flex;flex-wrap:wrap;gap:var(--s-2);flex:1 1 340px;max-width:480px}
.cta-mail input{flex:1 1 200px;min-width:0;min-height:46px;padding:0 var(--s-4);border:1px solid transparent;border-radius:var(--r-btn);background:var(--surface);color:var(--ink);font:400 var(--fs-base)/1.4 var(--font-body)}
.cta-mail input::placeholder{color:var(--mute)}
.cta-mail input:focus{outline:0;box-shadow:var(--ring);border-color:var(--blue-300)}
.cta-mail .btn{min-height:46px}
@container main (max-width:560px){.blk-cta .cta{padding:var(--s-5)}.blk-cta .cta .actions .btn,.cta-mail .btn{flex:1 1 auto}.cta-mail{max-width:none}.blk-cta .cta>i{width:200px;height:200px;right:-60px;top:-70px}}
.blk-downloads .dl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-3);font-size:var(--fs-base)}
.blk-downloads .dl li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--s-4);align-items:center;padding:var(--s-3) var(--s-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1);transition:border-color var(--t-fast),box-shadow var(--t)}
.blk-downloads .dl li:hover,.blk-downloads .dl li:focus-within{border-color:var(--line-strong);box-shadow:var(--sh-2)}
.dl-ic{position:relative;display:grid;place-items:center;align-content:center;gap:1px;width:52px;height:52px;border-radius:var(--r-btn);background:var(--sky);color:var(--blue-700);flex:none}
.dl-ic::after{content:attr(data-ext);font:700 9.5px/1 var(--font-mono);letter-spacing:.04em}
.dl-ic:not([data-ext])::after{content:none}
.dl-ic.is-pdf{background:var(--danger-bg);color:var(--danger)}
.dl-ic.is-xls{background:var(--ok-bg);color:var(--ok)}
.dl-ic.is-doc{background:var(--info-bg);color:var(--info)}
.dl-ic svg{width:22px;height:22px}
.blk-downloads .dl strong{display:block;font:700 var(--fs-md)/1.35 var(--font-head);color:var(--navy);overflow-wrap:anywhere}
.blk-downloads .dl small{display:block;margin-top:2px;font:500 var(--fs-xs)/1.4 var(--font-mono);color:var(--c-muted)}
.blk-downloads .dl .btn{white-space:nowrap}
.blk-downloads .dl .btn[aria-disabled="true"]{opacity:.55;cursor:not-allowed}
@container main (max-width:480px){
  .blk-downloads .dl li{grid-template-columns:auto minmax(0,1fr)}
  .blk-downloads .dl li .btn{grid-column:1/-1;width:100%;min-height:var(--tap)}
}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1);padding:var(--s-6)}
.blk-form .panel,.blk-search_site .panel,.blk-checker.band-none .panel,.blk-checker.band-white .panel,.blk-suivi.band-none .panel,.blk-suivi.band-white .panel{padding:0;border:0;background:none;box-shadow:none}
.blk-checker.band-sand .panel,.blk-suivi.band-sand .panel{box-shadow:none}
.blk-verify .verify .acc,.blk-cta .cta .acc{color:var(--blue-300)}
.blk-cta .cta-light .acc{color:var(--blue)}
.panel :where(label){font:600 var(--fs-sm)/1.3 var(--font-body);color:var(--ink-2)}
.form-panel .form{display:grid;gap:var(--s-5)}
.form .form-grid{gap:var(--s-4) var(--s-5)}
.form .fld-2{grid-column:1/-1}
.fld abbr{color:var(--danger);text-decoration:none;cursor:help}
.fld>small:not(.fld-err){font-size:var(--fs-xs);line-height:1.4;color:var(--c-muted)}
.fld input[type=file]{padding:var(--s-2) var(--s-3);min-height:var(--tap);cursor:pointer}
.fld input[type=file]::file-selector-button{margin-right:var(--s-3);min-height:var(--tap-sm);padding:0 var(--s-3);border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--soft);color:var(--blue-700);font:600 var(--fs-sm) var(--font-body);cursor:pointer}
.fld.err .field,.fld.err input,.fld.err select,.fld.err textarea{border-color:var(--danger);background-color:var(--danger-bg)}
.fld.err>label{color:var(--danger)}
.fld-err{display:flex;gap:6px;align-items:flex-start;font:600 var(--fs-xs)/1.4 var(--font-body);color:var(--danger)}
.fld-err::before{content:"";flex:none;width:14px;height:14px;margin-top:1px;background-color:currentColor;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat;--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 100 20 10 10 0 000-20zm1 15h-2v-2h2zm0-4h-2V7h2z'/%3E%3C/svg%3E")}
.form-errors{display:grid;gap:var(--s-2);margin-bottom:var(--s-5);padding:var(--s-4) var(--s-5);border:1px solid var(--danger-bg);border-left:4px solid var(--danger);border-radius:var(--r);background:var(--danger-bg);color:var(--ink)}
.form-errors strong{font:700 var(--fs-base)/1.3 var(--font-head);color:var(--danger)}
.form-errors ul{margin:0;padding-left:var(--s-5);font-size:var(--fs-sm);line-height:1.5}
.form-errors a{color:var(--danger);text-decoration:underline;text-underline-offset:3px}
.consent{margin:0;font:400 var(--fs-sm)/1.5 var(--font-body);color:var(--c-text-2)}
.consent label,.consent .check{display:flex;gap:10px;align-items:flex-start;font:400 var(--fs-sm)/1.5 var(--font-body);color:var(--c-text-2);cursor:pointer}
.consent .check input{margin-top:0}
.consent.err label{color:var(--danger)}
.consent.err input{border-color:var(--danger)}
.consent .fld-err{margin-top:var(--s-2)}
.report-note{display:grid;gap:var(--s-3);padding:var(--s-4) var(--s-5);border:1px solid var(--info-bg);border-left:4px solid var(--blue);border-radius:var(--r);background:var(--info-bg);font-size:var(--fs-sm);line-height:1.55;color:var(--ink)}
.report-note p{margin:0}
.hp{position:absolute!important;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.form-panel .form>div:last-child .btn-rust,.form-panel .form>div:last-child .btn{min-width:160px}
.sent{display:grid;gap:var(--s-2);justify-items:center;padding:var(--s-6) var(--s-4);border:1px solid var(--ok-bg);border-radius:var(--r);background:var(--ok-bg);text-align:center}
.sent[hidden]{display:none}
.sent strong{font:800 var(--fs-xl)/1.2 var(--font-head);color:var(--ok)}
.sent p{margin:0;max-width:52ch;color:var(--ink)}
.sent:focus,.form-errors:focus{outline:3px solid var(--c-focus);outline-offset:3px}
@container main (max-width:560px){.panel{padding:var(--s-4)}.form .form-grid{grid-template-columns:minmax(0,1fr)}.form-panel .form>div:last-child .btn-rust,.form-panel .form>div:last-child .btn{width:100%;min-height:var(--tap)}}
.panel.chk{display:block}
.reg-form{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-2)}
.reg-form input{flex:1 1 240px;min-width:0;min-height:48px;padding:0 var(--s-4);border:1px solid var(--border-input);border-radius:var(--r-field);background:var(--surface);color:var(--ink);font:500 var(--fs-md)/1.4 var(--font-mono);transition:border-color var(--t-fast),box-shadow var(--t-fast)}
.reg-form input::placeholder{color:var(--mute);opacity:.8}
.reg-form input:hover{border-color:var(--navy-700)}
.reg-form input:focus{outline:0;border-color:var(--blue);box-shadow:var(--ring)}
.reg-form .btn,.reg-form .btn-rust{min-height:48px}
.hint{margin:var(--s-3) 0 0;font-size:var(--fs-xs);line-height:1.5;color:var(--c-muted)}
.result{display:grid;gap:var(--s-2);margin-top:var(--s-5);padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:var(--r);background:var(--soft)}
.result-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s-2) var(--s-4);font:500 var(--fs-sm)/1.4 var(--font-mono);color:var(--c-muted)}
.result-top strong{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--r-pill);background:var(--surface);font:700 var(--fs-xs)/1.4 var(--font-body);color:var(--blue-700)}
.result-top strong::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.result-t{font:800 var(--fs-xl)/1.2 var(--font-head);letter-spacing:-.02em;color:var(--navy)}
.result-m{font-size:var(--fs-sm);color:var(--c-text-2)}
.result.tone-ok{border-left-color:var(--ok)!important}.result.tone-ok .result-top strong{color:var(--ok)!important;background:var(--ok-bg)}
.result.tone-info{border-left-color:var(--blue)!important}.result.tone-info .result-top strong{color:var(--info)!important;background:var(--info-bg)}
.result.tone-warn{border-left-color:var(--warn)!important}.result.tone-warn .result-top strong{color:var(--warn)!important;background:var(--warn-bg)}
.result.tone-danger{border-left-color:var(--danger)!important}.result.tone-danger .result-top strong{color:var(--danger)!important;background:var(--danger-bg)}
@container main (max-width:480px){.reg-form .btn,.reg-form .btn-rust{flex:1 1 100%;min-height:var(--tap)}.result{padding:var(--s-4)}.result-t{font-size:var(--fs-lg)}}
.sv-steps{list-style:none;margin:var(--s-4) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr));gap:var(--s-3)}
.sv-steps li{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-2);padding-top:var(--s-3);border-top:4px solid var(--line-strong);font:600 var(--fs-sm)/1.35 var(--font-body);color:var(--c-muted)}
.sv-steps li i{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line-strong);border-radius:50%;background:var(--surface);font:700 var(--fs-xs)/1 var(--font-mono);font-style:normal;color:var(--c-muted)}
.sv-steps li i svg{width:14px;height:14px}
.sv-steps li.done{border-top-color:var(--navy);color:var(--navy)}
.sv-steps li.done i{background:var(--navy);border-color:var(--navy);color:var(--on-dark)}
.sv-steps li.now{border-top-color:var(--blue);color:var(--ink)}
.sv-steps li.now i{background:var(--blue);border-color:var(--blue);color:var(--on-dark);box-shadow:var(--ring)}
.sv-note{margin:var(--s-4) 0 0;font-size:var(--fs-sm);line-height:1.6;color:var(--c-text-2)}
@container main (max-width:520px){
  .sv-steps{grid-template-columns:minmax(0,1fr);gap:var(--s-2)}
  .sv-steps li{flex-direction:row;align-items:center;padding:2px 0 2px var(--s-3);border-top:0;border-left:4px solid var(--line-strong)}
  .sv-steps li.done{border-left-color:var(--navy)}.sv-steps li.now{border-left-color:var(--blue)}
}
.blk-verify .verify{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--s-5) var(--s-6);align-items:center;overflow:hidden;margin:0;padding:var(--s-7);border-radius:var(--r-lg);background:linear-gradient(135deg,var(--navy),var(--navy-700));color:var(--on-dark);box-shadow:var(--sh-2)}
.blk-verify .verify>i{position:absolute;left:-80px;bottom:-110px;width:300px;height:300px;border-radius:50%;background:rgb(var(--blue-rgb) / .35)}
.blk-verify .verify>div{position:relative}
.blk-verify .verify h2{margin:0 0 var(--s-2);font:800 clamp(24px,2.6vw,32px)/1.15 var(--font-head);letter-spacing:-.025em;color:var(--on-dark)}
.blk-verify .verify p{margin:0;color:var(--on-dark-mute);font-size:var(--fs-md)}
.verify-form{position:relative;display:flex;flex-wrap:wrap;gap:var(--s-2)}
.verify-form input{flex:1 1 200px;min-width:0;min-height:48px;padding:0 var(--s-4);border:1px solid transparent;border-radius:var(--r-btn);background:var(--surface);color:var(--ink);font:500 var(--fs-md)/1.4 var(--font-mono)}
.verify-form input::placeholder{color:var(--mute)}
.verify-form input:focus{outline:0;border-color:var(--blue-300);box-shadow:var(--ring)}
.verify-form input:focus-visible{outline:3px solid var(--on-dark);outline-offset:2px}
.verify-form .btn{min-height:48px;background:var(--white);border-color:var(--white);color:var(--navy);box-shadow:none}
.verify-form .btn:hover{background:var(--sky);border-color:var(--sky);color:var(--navy);box-shadow:none}
.verify-form .btn:focus-visible{outline-color:var(--on-dark)}
@container main (max-width:560px){.blk-verify .verify{padding:var(--s-5)}.verify-form .btn{flex:1 1 100%;min-height:var(--tap)}}
.nw{display:grid;gap:var(--s-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.nw-i{display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1);color:var(--ink);transition:transform var(--t),box-shadow var(--t),border-color var(--t-fast)}
.nw-i:hover{transform:translateY(-3px);box-shadow:var(--sh-2);color:var(--ink)}
.nw-i:focus-visible{outline-offset:3px}
.nw-img{aspect-ratio:16/10}
.nw-img img{transition:transform .7s var(--ease,ease)}
.nw-i:hover .nw-img img{transform:scale(1.04)}
.nw-b{display:grid;gap:6px;align-content:start;padding:var(--s-4) var(--s-4) var(--s-5)}
.nw-b strong{display:block;font:700 var(--fs-lg)/1.3 var(--font-head);letter-spacing:-.01em;color:var(--navy)}
.nw-i:hover .nw-b strong{color:var(--blue-700)}
.nw-b p{margin:0;font-size:var(--fs-sm);line-height:1.6;color:var(--c-text-2)}
.nw-featured{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
@container main (min-width:720px){
  .nw-featured{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
  .nw-featured .nw-i:first-child{grid-row:span 2}
  .nw-featured .nw-i:first-child .nw-img{aspect-ratio:auto;flex:1 1 auto;min-height:260px}
  .nw-featured .nw-i:first-child .nw-b strong{font-size:var(--fs-xl);line-height:1.2}
  .nw-featured .nw-i:not(:first-child) .nw-img{aspect-ratio:16/8}
  .nw-featured .nw-i:not(:first-child) .nw-b strong{font-size:var(--fs-md)}
  .nw-featured .nw-i:not(:first-child) .nw-b p{display:none}
}
.wk{display:grid;gap:var(--s-4)}
.wk-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:var(--s-3) var(--s-4);padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1)}
.wk-bar .fld:first-child{grid-column:1/-1}
@container main (min-width:640px){.wk-bar .fld:first-child{grid-column:span 2}}
.wk-count{margin:0;padding:0 var(--s-1);font:500 var(--fs-sm)/1.4 var(--font-body);color:var(--c-muted)}
.wk-count strong{font:800 var(--fs-md) var(--font-head);color:var(--navy)}
.wk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:var(--s-4)}
.wk-i{display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1);color:var(--ink);transition:transform var(--t),box-shadow var(--t)}
.wk-i[hidden]{display:none}
a.wk-i:hover{transform:translateY(-3px);box-shadow:var(--sh-2);color:var(--ink)}
a.wk-i:focus-visible{outline-offset:3px}
.wk-img{aspect-ratio:4/3}
.wk-img.wk-portrait{aspect-ratio:1/1}
.wk-st{position:absolute;left:var(--s-3);top:var(--s-3);z-index:1;display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--r-pill);background:var(--surface);box-shadow:var(--sh-1);font:700 var(--fs-xs)/1.4 var(--font-body);font-style:normal;color:var(--info)}
.wk-st::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.wk-st.ok{color:var(--ok)}
.wk-st.va{color:var(--info)}
.wk-st.al{color:var(--danger)}
.wk-b{display:grid;gap:3px;align-content:start;padding:var(--s-3) var(--s-4) var(--s-4)}
.wk-b code{justify-self:start;padding:1px 7px;border:0;border-radius:var(--r-xs);background:var(--sky);font:600 var(--fs-xs)/1.6 var(--font-mono);color:var(--blue-700)}
.wk-b strong{margin-top:4px;font:700 var(--fs-md)/1.3 var(--font-head);color:var(--navy)}
a.wk-i:hover .wk-b strong{color:var(--blue-700)}
.wk-b span{font:600 var(--fs-sm)/1.4 var(--font-body);color:var(--ink-2)}
.wk-b small{font-size:var(--fs-xs);line-height:1.5;color:var(--c-muted)}
.wk-none{margin:0;padding:var(--s-6);border:1px dashed var(--line-strong);border-radius:var(--r);background:var(--surface);text-align:center;color:var(--c-muted)}
@container main (max-width:420px){.wk-bar{padding:var(--s-4)}.wk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3)}.wk-b{padding:var(--s-3)}.wk-b strong{font-size:var(--fs-base)}}
@container main (max-width:300px){.wk-grid{grid-template-columns:minmax(0,1fr)}}
.related{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--s-4)}
.rel{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1);color:var(--ink);transition:transform var(--t),box-shadow var(--t)}
.rel:hover{transform:translateY(-3px);box-shadow:var(--sh-2);color:var(--ink)}
.rel strong{font:700 var(--fs-md)/1.3 var(--font-head);color:var(--navy)}
.rel:hover strong{color:var(--blue-700)}
.rel span{font-size:var(--fs-sm);line-height:1.55;color:var(--c-text-2)}
.rel em{display:inline-flex;align-items:center;gap:6px;min-height:24px;margin-top:auto;padding-top:var(--s-2);font:600 var(--fs-sm)/1.2 var(--font-body);font-style:normal;color:var(--blue-700)}
.blk-form .panel #resultats h3,.blk-search_site .panel #resultats h3{margin:var(--s-5) 0 var(--s-2);font:700 var(--fs-md)/1.3 var(--font-head);color:var(--navy)}
.panel .acct-list{list-style:none;margin:0 0 var(--s-3);padding:0;display:grid}
.panel .acct-list li{padding:var(--s-3) 0;border-bottom:1px solid var(--line);font-size:var(--fs-base)}
.panel .acct-list li:last-child{border-bottom:0}
.panel .acct-list a{font-weight:600;text-decoration:underline;text-underline-offset:3px}
.panel .acct-list small{color:var(--c-muted)}
@media (pointer:coarse){.wk-bar .field,.reg-form input,.cta-mail input,.verify-form input{min-height:var(--tap)}}
@media (prefers-reduced-motion:reduce){.nw-i,.wk-i,.rel,.nw-img img,.rel em{transition:none}.nw-i:hover,a.wk-i:hover,.rel:hover{transform:none}.nw-i:hover .nw-img img{transform:none}}
/* ── 50-blocks-bridge.css ── */
:root{
  
  --rust:var(--blue);--rust-l:var(--blue-300);--sand:var(--bg);--sand2:var(--sky);--muted:var(--mute);
  --font:var(--font-body);--serif:var(--font-head);--navy2:var(--navy-700);
}
.app{min-height:100vh;background:var(--c-page);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-base)}
.acc,.acc-l{font:inherit;font-style:normal;color:var(--blue)}
.band-navy .acc,.band-rust .acc,.hero .acc{color:var(--blue-300)}
.hero,.phero{margin:var(--s-5) auto 0;width:calc(100% - var(--gutter) * 2);max-width:calc(var(--w-site) - var(--gutter) * 2);border-radius:var(--r-lg)}
.phero{background:linear-gradient(135deg,var(--navy),var(--navy-700));color:var(--on-dark)}
.phero>i{display:none}
.phero-in{padding:var(--s-7) var(--s-6) var(--s-6)}
.phero h1{font:800 var(--fs-3xl)/var(--lh-tight) var(--font-head);letter-spacing:-.03em;color:inherit;margin:var(--s-3) 0 var(--s-3)}
.phero p{font:400 var(--fs-lg)/1.6 var(--font-body);color:var(--on-dark-mute);max-width:640px}
.phero .crumbs,.phero .crumbs a{color:var(--on-dark-mute)}
.hero{min-height:480px}
.hero-in{padding:var(--s-8) var(--s-6) var(--s-6)}
.hero h1{font-size:clamp(34px,4.4vw,60px);margin:var(--s-4) 0}
.pg-c>.blk{padding:0;margin:0;border:0;background:none;border-radius:0}
.pg-c .blk>.wrap,.pg-c .blk>.wrap-wide{max-width:none;padding:0}
.pg-c>.blk.band-none,.pg-c>.blk.band-white,.pg-c>.blk.band-sand{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:var(--s-6);box-shadow:var(--sh-1)}
.pg-c>.blk.band-sand{background:var(--sky);border-color:var(--sky-2);box-shadow:none}
.pg-c>.blk.band-navy,.pg-c>.blk.band-rust{background:linear-gradient(135deg,var(--navy),var(--navy-700));color:var(--on-dark);border-radius:var(--r);padding:var(--s-6)}
.pg-c .h2{font:800 var(--fs-2xl)/var(--lh-tight) var(--font-head);letter-spacing:-.025em;margin:var(--s-3) 0 0;color:var(--navy)}
.pg-c .band-navy .h2,.pg-c .band-rust .h2{color:var(--on-dark)}
.pg-c .lead{font-size:var(--fs-lg)}
.pg-c .cta,.pg-c .join{border-radius:var(--r)}
.band-navy .btn-primary,.band-rust .btn-primary{background:var(--white);color:var(--navy);border-color:var(--white)}
.hero .btn-ghost,.phero .btn-ghost,.band-navy .btn-ghost,.band-rust .btn-ghost{color:var(--on-dark);border-color:rgb(var(--white-rgb) / .5)}
.hero .btn-ghost:hover,.phero .btn-ghost:hover,.band-navy .btn-ghost:hover,.band-rust .btn-ghost:hover{background:rgb(var(--white-rgb) / .12);color:var(--on-dark)}
.hero h1{color:inherit}
.hero h1 span{font:inherit;font-style:normal;color:var(--blue-300)}
.hero p{color:var(--on-dark-mute)}
/* ── 50-blocks-donnees.css ── */
.photo-img .slot-img,.photo-img .slot-empty,.story-ph .slot-img,.story-ph .slot-empty,.card2-img .slot-img,.card2-img .slot-empty,
.gal-ph .slot-img,.gal-ph .slot-empty,.person-ph .slot-img,.person-ph .slot-empty,.logo-ph .slot-img,.logo-ph .slot-empty,
.vid-ph .slot-img,.vid-ph .slot-empty,.dom .slot-img,.dom .slot-empty,.slot-fill .slot-img,.slot-fill .slot-empty{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.photo-img .slot-empty,.story-ph .slot-empty,.card2-img .slot-empty,.gal-ph .slot-empty,.person-ph .slot-empty,.logo-ph .slot-empty,.vid-ph .slot-empty,.dom .slot-empty,.slot-fill .slot-empty{display:flex;align-items:center;justify-content:center;padding:var(--s-3);background:var(--soft);color:var(--c-muted);font:500 var(--fs-xs)/1.3 var(--font-body);text-align:center;border:1px dashed var(--line-strong)}
.vid-ph .slot-empty{align-items:flex-end;padding-bottom:var(--s-4);background:var(--navy-700);border:0;color:var(--on-dark-soft)}
.cards{--n:3;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:var(--s-4)}
.cards.cols-2{--n:2}.cards.cols-3{--n:3}.cards.cols-4{--n:4}
.card2{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1);color:var(--ink);transition:transform var(--t),box-shadow var(--t),border-color var(--t)}
a.card2:hover{transform:translateY(-3px);box-shadow:var(--sh-2);border-color:var(--line-strong);color:var(--ink)}
a.card2:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
.card2-body{display:grid;gap:6px;align-content:start;flex:1;min-width:0}
.card2-body .kick{margin:0}
.card2-body strong{display:block;font:700 var(--fs-md)/1.3 var(--font-head);letter-spacing:-.01em;color:var(--navy);overflow-wrap:break-word;hyphens:auto}
.card2-body p{margin:0;font-size:var(--fs-sm);line-height:1.6;color:var(--c-text-2)}
.card2-body small{font:500 var(--fs-xs)/1.4 var(--font-mono);color:var(--c-muted)}
.card2-body em{margin-top:auto;padding-top:var(--s-2);font:600 var(--fs-sm)/1.3 var(--font-body);font-style:normal;color:var(--blue-700)}
a.card2:hover .card2-body em{text-decoration:underline}
.card2-n{display:inline-grid;place-items:center;width:40px;height:40px;margin-bottom:var(--s-3);border-radius:50%;background:var(--sky);color:var(--blue-700);font:800 var(--fs-base)/1 var(--font-head)}
.card2-ic{display:grid;place-items:center;flex:none;width:48px;height:48px;margin-bottom:var(--s-3);border-radius:14px;background:var(--sky);color:var(--blue)}
.card2-img{position:relative;aspect-ratio:16/10;margin:calc(var(--s-5) * -1) calc(var(--s-5) * -1) var(--s-4);overflow:hidden;background:var(--soft)}
.card2-img .slot-img{transition:transform .7s var(--ease,ease)}
a.card2:hover .card2-img .slot-img{transform:scale(1.05)}
@container main (max-width:560px){.cards.cols-3,.cards.cols-4{--n:2}}
@container main (max-width:340px){.cards{--n:1}.cards.cols-3,.cards.cols-4{--n:1}}
.blk-cards .cards-icon{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.blk-cards .cards-icon .card2{background:var(--soft);box-shadow:none;padding:var(--s-5) var(--s-4)}
.blk-cards .cards-icon .card2:not(:last-child)::after{content:"→";position:absolute;right:-14px;top:50%;z-index:1;display:grid;place-items:center;width:24px;height:24px;margin-top:-12px;border-radius:50%;background:var(--surface);border:1px solid var(--line);color:var(--blue);font:700 12px/1 var(--font-body)}
.blk-cards .cards-icon .card2{overflow:visible}
@container main (max-width:560px){.blk-cards .cards-icon .card2::after{display:none}}
.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:var(--s-4)}
.photo-card{display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-1);transition:transform var(--t),box-shadow var(--t)}
.photo-card:hover,.photo-card:focus-within{transform:translateY(-3px);box-shadow:var(--sh-2)}
.photo-img{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--soft)}
.photo-img .slot-img{transition:transform .7s var(--ease,ease)}
.photo-card:hover .photo-img .slot-img{transform:scale(1.05)}
.photo-b{display:grid;gap:6px;align-content:start;padding:var(--s-3) var(--s-4) var(--s-4);flex:1}
.photo-b .kick{font-size:11px}
.photo-b h3{margin:0;font:700 var(--fs-md)/1.25 var(--font-head);overflow-wrap:break-word;hyphens:auto}
.photo-b h3 a{color:var(--ink)}.photo-b h3 a:hover{color:var(--blue-700)}
.photo-b p{margin:0;font-size:var(--fs-sm);line-height:1.55;color:var(--c-text-2)}
.photo-meta{justify-self:start;padding:2px 8px;border:0;border-radius:var(--r-xs);background:var(--sky);color:var(--blue-700);font:500 11.5px/1.5 var(--font-mono)}
.photo-more{display:inline-flex;align-items:center;min-height:24px;align-self:end;margin-top:auto;font:600 var(--fs-sm)/1.2 var(--font-body);color:var(--blue-700)}
.photo-more:hover{text-decoration:underline}
.photo-grid.p5{grid-template-columns:repeat(6,minmax(0,1fr))}
.photo-grid.p5 .photo-card{grid-column:span 2}
.photo-grid.p5 .photo-card:nth-child(-n+2){grid-column:span 3}
.photo-grid.p5 .photo-card:nth-child(-n+2) .photo-img{aspect-ratio:16/9}
@container main (max-width:560px){.photo-grid.p5{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-grid.p5 .photo-card,.photo-grid.p5 .photo-card:nth-child(-n+2){grid-column:auto}}
@container main (max-width:560px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container main (max-width:340px){.photo-grid,.photo-grid.p5{grid-template-columns:minmax(0,1fr)}}
.svc-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:var(--s-4);align-items:stretch}
.svc-row:not(:has(.svc-big)){grid-template-columns:minmax(0,1fr)}
.svc-big{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:var(--s-6);min-height:260px;overflow:hidden;padding:var(--s-6);border-radius:var(--r-lg);background:linear-gradient(135deg,var(--navy),var(--navy-700));color:var(--on-dark);box-shadow:var(--sh-2);transition:transform var(--t),box-shadow var(--t)}
.svc-big:hover{transform:translateY(-3px);color:var(--on-dark)}
.svc-big>i{position:absolute;right:-70px;top:-80px;width:240px;height:240px;border-radius:50%;background:rgb(var(--white-rgb) / .1)}
.svc-big div{position:relative}
.svc-big .no,.svc-card .no{position:relative;font:800 var(--fs-xl)/1 var(--font-head);letter-spacing:-.03em}
.svc-big .no{color:var(--blue-300)}
.svc-card .no{color:var(--blue)}
.svc-big strong{display:block;font:800 var(--fs-xl)/1.15 var(--font-head);letter-spacing:-.02em;color:var(--on-dark)}
.svc-big p{margin:var(--s-3) 0 0;font-size:var(--fs-base);line-height:1.6;color:var(--on-dark-mute)}
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:var(--s-4)}
.svc-card{display:flex;flex-direction:column;justify-content:space-between;gap:var(--s-5);min-height:150px;padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1);color:var(--navy);transition:transform var(--t),box-shadow var(--t)}
.svc-card:hover{transform:translateY(-3px);box-shadow:var(--sh-2);color:var(--navy)}
.svc-card strong{display:block;font:700 var(--fs-md)/1.3 var(--font-head);color:var(--navy)}
.svc-card em{display:block;margin-top:var(--s-2);font:600 var(--fs-sm)/1.3 var(--font-body);font-style:normal;color:var(--blue-700)}
.svc-big:focus-visible,.svc-card:focus-visible,.dom:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
@container main (max-width:640px){.svc-row{grid-template-columns:minmax(0,1fr)}.svc-big{min-height:200px}}
.dom-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--s-4)}
.dom{position:relative;display:block;aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;background:var(--navy);color:var(--on-dark);box-shadow:var(--sh-1);transition:transform var(--t),box-shadow var(--t)}
.dom:hover{transform:translateY(-3px);box-shadow:var(--sh-2);color:var(--on-dark)}
.dom .slot-fill{position:absolute;inset:0}
.dom .slot-img{transition:transform .7s var(--ease,ease)}
.dom:hover .slot-img{transform:scale(1.05)}
.dom-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 40%,rgb(var(--ink-rgb) / .85))}
.dom-cap{position:absolute;left:var(--s-4);right:var(--s-4);bottom:var(--s-4);display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s-3);pointer-events:none}
.dom-cap span:first-child{font:700 var(--fs-lg)/1.2 var(--font-head);letter-spacing:-.01em;color:var(--on-dark)}
.dom-cap span:last-child{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:var(--surface);color:var(--navy)}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--s-5) var(--s-6)}
.feat{display:grid;grid-template-columns:48px minmax(0,1fr);gap:var(--s-3);align-items:start}
.feat-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--sky);color:var(--blue)}
.feat strong{display:block;margin-bottom:2px;font:700 var(--fs-md)/1.3 var(--font-head);color:var(--navy)}
.feat p{margin:0;font-size:var(--fs-sm);line-height:1.55;color:var(--c-text-2)}
.people{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr));gap:var(--s-5) var(--s-4)}
.person{display:flex;flex-direction:column;gap:2px;min-width:0}
.person-ph{position:relative;aspect-ratio:4/5;margin-bottom:var(--s-3);border-radius:var(--r);overflow:hidden;background:var(--soft);box-shadow:var(--sh-1)}
.person strong{font:700 var(--fs-md)/1.3 var(--font-head);color:var(--navy);overflow-wrap:break-word;hyphens:auto}
.person span{font:600 var(--fs-sm)/1.4 var(--font-body);color:var(--blue-700)}
.person small{font:400 var(--fs-xs)/1.4 var(--font-body);color:var(--c-muted)}
.logos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,108px),1fr));gap:var(--s-3)}
.logo-t{display:grid;justify-items:center;align-content:start;gap:2px;padding:var(--s-4) var(--s-2);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);text-align:center;box-shadow:var(--sh-1);transition:transform var(--t),box-shadow var(--t)}
.logo-t:hover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.logo-ph{position:relative;width:60px;height:60px;margin-bottom:6px;border-radius:14px;overflow:hidden;background:var(--soft)}
.logo-ph .slot-empty{font-size:10px;padding:2px}
.logo-t strong{font:700 var(--fs-sm)/1.3 var(--font-head);color:var(--navy);overflow-wrap:break-word;hyphens:auto}
.logo-t small{font-size:var(--fs-xs);line-height:1.3;color:var(--c-muted)}
.gal{display:grid;gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr))}
.gal-masonry{display:block;columns:3 180px;column-gap:var(--s-4)}
.gal-masonry .gal-i{break-inside:avoid;margin-bottom:var(--s-4)}
.gal-i{margin:0;min-width:0}
.gal-ph{position:relative;border-radius:var(--r);overflow:hidden;background:var(--soft);box-shadow:var(--sh-1)}
.gal-ph .slot-img{transition:transform .7s var(--ease,ease)}
.gal-i:hover .gal-ph .slot-img{transform:scale(1.05)}
.r-land .gal-ph{aspect-ratio:4/3}.r-port .gal-ph{aspect-ratio:3/4}.r-sq .gal-ph{aspect-ratio:1}
.gal-i figcaption{padding:var(--s-2) 2px 0;font:500 var(--fs-sm)/1.4 var(--font-body);color:var(--c-muted)}
.gal-mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:150px;gap:12px}
.gal-mosaic .gal-i{position:relative;margin:0;border-radius:var(--r);overflow:hidden;background:var(--soft);box-shadow:var(--sh-1);aspect-ratio:auto}
.gal-mosaic .gal-ph{position:absolute;inset:0;width:100%;height:100%;padding:0;aspect-ratio:auto;border-radius:0;box-shadow:none}
.gal-mosaic .gal-ph img{transition:transform .8s var(--ease,ease)}
.gal-mosaic .gal-i:hover .gal-ph img{transform:scale(1.06)}
.gal-mosaic figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:34px 14px 12px;background:linear-gradient(180deg,transparent,rgb(var(--ink-rgb) / .78));color:var(--on-dark);font:600 var(--fs-xs)/1.35 var(--font-body)}
.gal-mosaic .gal-i:nth-child(1){grid-column:1/3;grid-row:1/3}
.gal-mosaic .gal-i:nth-child(2){grid-column:3/5;grid-row:1}
.gal-mosaic .gal-i:nth-child(3){grid-column:3;grid-row:2}
.gal-mosaic .gal-i:nth-child(4){grid-column:4;grid-row:2/4}
.gal-mosaic .gal-i:nth-child(5){grid-column:1/3;grid-row:3}
.gal-mosaic .gal-i:nth-child(6){grid-column:3;grid-row:3}
@container main (max-width:560px){.gal-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:140px}.gal-mosaic .gal-i:nth-child(n){grid-column:auto;grid-row:auto}.gal-mosaic .gal-i:nth-child(1){grid-column:1/3;grid-row:span 2}}
@container main (max-width:420px){.gal:not(.gal-mosaic){grid-template-columns:repeat(2,minmax(0,1fr))}.gal-masonry{columns:2 120px}}
.vid{position:relative;margin:0;border-radius:var(--r-lg);overflow:hidden;background:var(--navy);box-shadow:var(--sh-2)}
.vid-ph{position:relative;aspect-ratio:16/9}
.vid-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgb(var(--ink-rgb) / .1) 30%,rgb(var(--ink-rgb) / .78))}
.vid-link{position:absolute;inset:0;z-index:3}
.vid-link:focus-visible{outline:3px solid var(--c-focus);outline-offset:-6px;border-radius:var(--r-lg)}
.vid-play{position:absolute;left:50%;top:50%;z-index:2;display:grid;place-items:center;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;background:var(--surface);color:var(--blue);box-shadow:var(--sh-2);transition:transform var(--t),background var(--t)}
.vid:hover .vid-play,.vid:focus-within .vid-play{transform:scale(1.08);background:var(--blue);color:var(--on-dark)}
.vid figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s-4);padding:var(--s-5);color:var(--on-dark);pointer-events:none}
.vid figcaption strong{font:700 var(--fs-lg)/1.3 var(--font-head);max-width:520px;color:var(--on-dark)}
.vid figcaption small{flex:none;padding:3px 10px;border-radius:var(--r-pill);background:var(--navy);color:var(--on-dark);font:600 var(--fs-xs)/1.5 var(--font-mono)}
@container main (max-width:520px){.vid figcaption{padding:var(--s-3) var(--s-4)}.vid figcaption strong{font-size:var(--fs-base)}.vid-play{width:56px;height:56px;margin:-28px 0 0 -28px}}
.regions{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.regions a{display:inline-flex;align-items:center;gap:var(--s-2);min-height:var(--tap-sm);padding:6px 16px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);color:var(--blue-700);font:600 var(--fs-sm)/1.2 var(--font-body);transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast)}
.regions a:hover{background:var(--sky);border-color:var(--blue)}
.regions a span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:var(--r-pill);background:var(--sky);color:var(--blue-700);font:700 var(--fs-xs)/1 var(--font-body)}
.regions a:hover span{background:var(--surface)}
.blk-regions .tabs{display:block;padding:0;border-radius:0;background:none;overflow:visible}
.blk-regions .tabs-list{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-bottom:var(--s-4)}
.blk-regions .tabs-list [role=tab]{display:inline-flex;align-items:center;gap:var(--s-2);min-height:var(--tap-sm);padding:6px 16px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-2);font:600 var(--fs-sm)/1.2 var(--font-body);transition:var(--t-fast)}
.blk-regions .tabs-list [role=tab]:hover{border-color:var(--blue);color:var(--blue-700);background:var(--sky)}
.blk-regions .tabs-list [role=tab][aria-selected="true"]{background:var(--navy);border-color:var(--navy);color:var(--on-dark);box-shadow:none}
.blk-regions .tabs-list [role=tab] em{font-style:normal;font-size:var(--fs-xs);opacity:.8}
.blk-regions .tabs-list [role=tab]:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
.blk-regions .tabs-panel{padding:0}
.countries{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-bottom:var(--s-4)}
.countries span{padding:6px 14px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--soft);color:var(--ink-2);font:500 var(--fs-sm)/1.3 var(--font-body)}
.contacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:var(--s-4)}
.cc2{display:flex;gap:var(--s-4);align-items:center;min-width:0;padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1);color:var(--ink);transition:transform var(--t),box-shadow var(--t),border-color var(--t)}
a.cc2:hover{transform:translateY(-2px);box-shadow:var(--sh-2);border-color:var(--blue);color:var(--ink)}
a.cc2:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
.cc2>div{min-width:0}
.cc2-ic{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:14px;background:var(--sky);color:var(--blue)}
.cc2 small{display:block;font:700 var(--fs-xs)/1.3 var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--blue-700)}
.cc2 strong{display:block;margin-top:2px;font:600 var(--fs-base)/1.4 var(--font-body);color:var(--ink);overflow-wrap:break-word;hyphens:auto}
.testi{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:var(--s-4)}
.testi figure{display:flex;flex-direction:column;justify-content:space-between;gap:var(--s-4);min-width:0;margin:0;padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1)}
.testi blockquote{margin:0;font:500 var(--fs-base)/1.65 var(--font-body);color:var(--c-text-2)}
.testi blockquote::before{content:"“";display:block;height:28px;font:800 48px/1 var(--font-head);color:var(--blue-300)}
.testi figcaption{display:flex;align-items:center;gap:var(--s-3)}
.testi .av{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:50%;background:var(--blue);color:var(--on-dark);font:800 17px/1 var(--font-head)}
.testi figcaption strong{display:block;font:700 var(--fs-sm)/1.3 var(--font-body);color:var(--ink)}
.testi figcaption small{display:block;font-size:var(--fs-xs);color:var(--c-muted)}
.steps2{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-4);counter-reset:s}
.steps2-row{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.steps2 li{position:relative;display:flex;flex-direction:column;gap:var(--s-3);min-width:0;padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1)}
.steps2-n{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:var(--blue);color:var(--on-dark);font:800 var(--fs-md)/1 var(--font-head)}
.steps2 strong{display:block;font:700 var(--fs-md)/1.3 var(--font-head);letter-spacing:-.01em;color:var(--navy)}
.steps2 p{margin:6px 0 0;font-size:var(--fs-sm);line-height:1.6;color:var(--c-text-2)}
.steps2 small{display:inline-flex;gap:6px;align-items:center;margin-top:var(--s-3);padding:4px 11px;border-radius:var(--r-pill);background:var(--sky);font:600 var(--fs-xs)/1.3 var(--font-body);color:var(--blue-700)}
.steps2-vertical{gap:0}
.steps2-vertical li{flex-direction:row;align-items:flex-start;gap:var(--s-4);padding:0 0 var(--s-5);border:0;border-radius:0;background:none;box-shadow:none}
.steps2-vertical li::before{content:"";position:absolute;left:19px;top:44px;bottom:4px;width:2px;background:var(--line-strong)}
.steps2-vertical li:last-child{padding-bottom:0}
.steps2-vertical li:last-child::before{display:none}
.steps2-vertical li>div{padding-top:var(--s-2);min-width:0}
.steps2-vertical .steps2-n{box-shadow:0 0 0 4px var(--sky)}
.blk-timeline .tl{list-style:none;margin:0;padding:0;display:grid;gap:0}
.blk-timeline .tl li{position:relative;display:grid;grid-template-columns:84px minmax(0,1fr);gap:var(--s-4);padding:0 0 var(--s-5) var(--s-5);margin:0;border:0;background:none}
.blk-timeline .tl li::before{content:"";position:absolute;left:0;top:10px;bottom:-4px;width:2px;background:var(--line-strong)}
.blk-timeline .tl li:last-child::before{bottom:auto;height:14px}
.blk-timeline .tl li::after{content:"";position:absolute;left:-5px;top:8px;width:12px;height:12px;border:0;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px var(--sky)}
.blk-timeline .tl time{position:static;padding:0;background:none;text-align:left;font:800 var(--fs-xl)/1.2 var(--font-head);font-style:normal;letter-spacing:-.02em;color:var(--navy)}
.blk-timeline .tl-box{padding:0;background:none;border:0;box-shadow:none}
.blk-timeline .tl-box strong{display:block;margin-bottom:2px;font:700 var(--fs-md)/1.3 var(--font-body);color:var(--ink)}
.blk-timeline .tl-box p{margin:0;font-size:var(--fs-sm);color:var(--c-text-2)}
@container main (max-width:420px){.blk-timeline .tl li{grid-template-columns:minmax(0,1fr);gap:2px}}
.chk{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:var(--s-4)}
.chk-g{min-width:0;padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1)}
.chk-g h3{margin:0 0 var(--s-3);font:700 var(--fs-md)/1.3 var(--font-head);color:var(--navy)}
.chk-g ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-3)}
.chk-g li{display:flex;gap:var(--s-3);align-items:flex-start;font:500 var(--fs-base)/1.5 var(--font-body);color:var(--ink)}
.chk-g li i{display:grid;place-items:center;flex:none;width:24px;height:24px;margin-top:1px;border-radius:50%;background:var(--ok-bg);color:var(--ok);font-style:normal}
.chk-no li i{background:var(--danger-bg);color:var(--danger)}
.chk-neutral li i{background:var(--sky);color:var(--blue-700)}
.chk-ok{border-top:3px solid var(--ok)}
.chk-no{border-top:3px solid var(--danger)}
.chk-neutral{border-top:3px solid var(--blue)}
.cmp{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--s-4)}
.cmp-c{min-width:0;padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1)}
.cmp-c h3{margin:0 0 var(--s-4);font:700 var(--fs-lg)/1.25 var(--font-head);color:var(--navy)}
.cmp-c ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-3)}
.cmp-c li{display:flex;gap:var(--s-3);font:500 var(--fs-base)/1.55 var(--font-body);color:var(--c-text-2)}
.cmp-c li .ic{flex:none;margin-top:3px;color:var(--blue)}
.cmp-ok{background:linear-gradient(135deg,var(--navy),var(--navy-700));border-color:var(--navy);color:var(--on-dark);box-shadow:var(--sh-2)}
.cmp-ok h3{color:var(--on-dark)}.cmp-ok li{color:var(--on-dark-mute)}.cmp-ok li .ic{color:var(--blue-300)}
.cmp-no li .ic{color:var(--danger)}
.blk-table .tbl{min-width:520px}
.tbl th.hl,.tbl td.hl{background:var(--sky)}
.tbl th.hl{background:var(--navy-700);color:var(--on-dark)}
.tbl tbody tr:hover td.hl{background:var(--sky-2)}
.tbl-note{margin:var(--s-3) 0 0;font-size:var(--fs-xs);color:var(--c-muted)}
.tbl-wrap:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
.stats2{display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:var(--s-5)}
.stat{min-width:0}
.stat b{display:block;white-space:nowrap;font:800 clamp(28px,min(4vw,5.6cqi),48px)/1 var(--font-head);letter-spacing:-.04em;color:var(--navy)}
.stat span{display:block;margin-top:var(--s-2);font:700 var(--fs-base)/1.3 var(--font-body);color:var(--ink-2)}
.stat small{display:block;margin-top:2px;font-size:var(--fs-sm);line-height:1.5;color:var(--c-muted)}
.stats2-plain .stat{padding-left:var(--s-4);border-left:3px solid var(--blue)}
.stats2-plain .stat b{color:var(--blue)}
.stats2-cards .stat{padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--sh-1)}
.stats2-cards .stat b{color:var(--blue)}
.stats2-dark .stat{padding:2px 0 2px var(--s-4);border-left:3px solid var(--blue-300)}
.stats2-dark .stat b{font-size:clamp(30px,min(4.4vw,6.2cqi),54px);color:var(--on-dark)}
.stats2-dark .stat span{color:var(--on-dark)}
.stats2-dark .stat small{color:var(--on-dark-mute)}
.band-navy .stat b,.band-rust .stat b{color:var(--on-dark)}
.band-navy .stat span,.band-rust .stat span{color:var(--on-dark)}
.band-navy .stat small,.band-rust .stat small{color:var(--on-dark-mute)}
@container main (max-width:560px){.stats2{grid-template-columns:repeat(var(--cols-s,2),minmax(0,1fr))}}
@container main (max-width:300px){.stats2{grid-template-columns:minmax(0,1fr)}}
.est{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:var(--s-5);align-items:stretch}
.est-form{display:grid;gap:var(--s-4);align-content:start;min-width:0}
.est-opts{display:grid;gap:var(--s-3);margin:0;padding:0;border:0;min-width:0}
.est-opts legend{padding:0;margin-bottom:var(--s-3);font:700 var(--fs-sm)/1.3 var(--font-body);color:var(--ink-2)}
.est-opt{display:flex;gap:var(--s-3);align-items:flex-start;font:500 var(--fs-base)/1.5 var(--font-body);color:var(--ink);cursor:pointer}
.est-opt input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--blue)}
.est-opt input:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
.est-out{display:flex;flex-direction:column;justify-content:center;gap:var(--s-2);min-width:0;padding:var(--s-6) var(--s-5);border-radius:var(--r);background:linear-gradient(135deg,var(--navy),var(--navy-700));color:var(--on-dark);box-shadow:var(--sh-2)}
.est-out small{font:700 var(--fs-xs)/1.3 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark-mute)}
.est-out b{font:800 clamp(26px,3.2vw,34px)/1.1 var(--font-head);letter-spacing:-.03em;overflow-wrap:normal}
.est-out span{font:500 var(--fs-md) var(--font-body);color:var(--on-dark-mute)}
.est-out span strong{color:var(--on-dark)}
.est-out em{margin-top:var(--s-2);font:400 var(--fs-xs)/1.5 var(--font-body);font-style:normal;color:var(--on-dark-soft)}
@container main (max-width:620px){.est{grid-template-columns:minmax(0,1fr)}}
.ev{list-style:none;margin:0;padding:0;display:grid}
.ev li{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:var(--s-4);align-items:center;padding:var(--s-3) 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;box-shadow:none}
.ev li:last-child{border-bottom:0}
.ev-d{display:block;width:auto;height:auto;padding:0;border-radius:12px;overflow:hidden;text-align:center;background:var(--sky)}
.ev-d b{display:block;padding-top:7px;font:800 var(--fs-xl)/1.1 var(--font-head);color:var(--navy)}
.ev-d span{display:block;padding:2px 0 7px;font:700 11px/1.2 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--blue-700)}
.ev-b{min-width:0}
.ev-b strong{display:block;font:700 var(--fs-md)/1.3 var(--font-head);color:var(--ink)}
.ev-b small{display:flex;align-items:center;gap:4px;margin-top:2px;font-size:var(--fs-sm);color:var(--c-muted)}
.ev-b .kick{margin-bottom:2px}
.ev li .btn{white-space:nowrap}
@container main (max-width:520px){.ev li{grid-template-columns:62px minmax(0,1fr)}.ev li .btn{grid-column:2;justify-self:start}}
@media (prefers-reduced-motion:reduce){
  .card2,.photo-card,.svc-big,.svc-card,.dom,.cc2,.logo-t,.vid-play,
  .card2-img .slot-img,.photo-img .slot-img,.gal-ph .slot-img,.dom .slot-img,.gal-mosaic .gal-ph img{transition:none}
  a.card2:hover,.photo-card:hover,.photo-card:focus-within,.svc-big:hover,.svc-card:hover,.dom:hover,a.cc2:hover,.logo-t:hover{transform:none}
  a.card2:hover .card2-img .slot-img,.photo-card:hover .photo-img .slot-img,.gal-i:hover .gal-ph .slot-img,.dom:hover .slot-img,.gal-mosaic .gal-i:hover .gal-ph img,.vid:hover .vid-play,.vid:focus-within .vid-play{transform:none}
}
.blk h3>a:only-child,.blk h4>a:only-child{display:inline-block;padding-block:2px}
/* ── 50-blocks-textuel.css ── */
:where(.blk-intro,.blk-split,.blk-callout,.blk-tabs,.hero2,.hx-band) .actions{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-4)}
:where(.blk-intro,.blk-split,.blk-callout,.blk-tabs,.hero2,.hx-band) .actions .btn span{transition:transform var(--t-fast)}
:where(.blk-intro,.blk-split,.blk-callout,.blk-tabs,.hero2,.hx-band) .actions .btn:hover span{transform:translateX(2px)}
:where(.hero2,.hx-band,.blk-split,.blk-quote) .slot-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
:where(.hero2,.hx-band,.blk-split,.blk-quote) .slot-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:var(--s-3);text-align:center;background:var(--soft);border:1.5px dashed var(--line-strong);border-radius:inherit;color:var(--c-muted);font:500 var(--fs-sm)/1.4 var(--font-body)}
.sh .acc,.h2 .acc,h1 .acc,h2 .acc,h3 .acc,span.acc{display:inline;gap:0}
.slot-fill{position:absolute;inset:0;overflow:hidden}
.hero2{container:hero/inline-size;position:relative;isolation:isolate;overflow:hidden;margin:var(--s-5) auto 0;width:calc(100% - var(--gutter) * 2);max-width:calc(var(--w-site) - var(--gutter) * 2);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-1)}
.hero2-orb{display:none}
.hero2-in{display:grid;gap:var(--s-6);align-items:center;padding:var(--s-7) var(--s-6)}
.hero2-split .hero2-in,.hero2-facts .hero2-in{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
.hero2-txt{min-width:0}
.hero2 .crumbs{margin:0}
.hero2-kick{margin-top:var(--s-5)}
.hero2 h1{margin:var(--s-3) 0;font:800 var(--fs-3xl)/var(--lh-tight) var(--font-head);letter-spacing:-.03em;color:var(--navy)}
.hero2 .acc,.hero2 h1 .acc{color:var(--blue)}
.hero2 p{max-width:640px;margin:0;font:400 var(--fs-lg)/1.6 var(--font-body);color:var(--c-text-2)}
.hero2-art{position:relative;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:var(--soft);border:1px solid var(--line)}
.hfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:var(--s-4);margin:0;padding:var(--s-5);background:var(--sky);border:1px solid var(--sky-2);border-radius:var(--r)}
.hfacts>div{display:grid;gap:2px;align-content:start;min-width:0}
.hfacts dt{font:600 var(--fs-xs)/1.3 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--c-muted)}
.hfacts dd{margin:0;font:800 var(--fs-lg)/1.2 var(--font-head);letter-spacing:-.02em;color:var(--navy);overflow-wrap:anywhere;word-break:break-word;text-align:left}
.hero2-center .hero2-in{justify-items:center;text-align:center}
.hero2-center .crumbs,.hero2-center .actions{justify-content:center}
.hero2-center p{margin-inline:auto}
.hero2-split,.hero2-facts,.hero2-center{background:radial-gradient(circle at calc(100% - 30px) -20px,var(--sky) 0,var(--sky) 190px,transparent 191px),var(--surface)}
.hero2-light{background:none;border:0;box-shadow:none;overflow:visible}
.hero2-light .hero2-in{padding:var(--s-5) 0 var(--s-4)}
.hero2-light>.wrap{max-width:none;margin:0;padding:0}
.hero2-strip{position:relative;width:100%;height:auto;max-height:340px;aspect-ratio:21/8;min-height:160px;border-radius:var(--r-lg);overflow:hidden;background:var(--soft);border:1px solid var(--line)}
.hero2-image{min-height:clamp(320px,30vw,440px);display:flex;align-items:flex-end;color:var(--on-dark);background:var(--navy);border:0}
.hero2-image>.hero2-in{position:relative;width:100%}
.hero2-shade,.hx-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgb(var(--navy-rgb) / .9),rgb(var(--navy-rgb) / .72) 45%,rgb(var(--navy-rgb) / .42) 75%,rgb(var(--navy-rgb) / .22))}
.hero2-image .hero2-shade{z-index:0}
.hero2-image .hero2-in{z-index:1;align-items:end}
.hero2-image.has-facts .hero2-in{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.hero2-image .slot-fill .slot-img{transform:scale(1.02)}
.hfacts-glass{background:rgb(var(--navy-rgb) / .55);border:1px solid rgb(var(--white-rgb) / .28);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.hfacts-glass dt{color:var(--on-dark-mute)}
.hfacts-glass dd{color:var(--on-dark)}
.hero2-image h1,.hx-band h1{color:var(--on-dark)}
.hero2-image p,.hx-band p{color:var(--on-dark);text-shadow:0 1px 12px rgb(var(--navy-rgb) / .5)}
.hero2-image .crumbs,.hero2-image .crumbs a{color:var(--on-dark-mute)}
.hero2-image .crumbs a:hover{color:var(--on-dark)}
.hero2-image .crumbs [aria-current]{color:var(--on-dark)}
.hero2-image .acc,.hx-band .acc,.hero2-image h1 .acc,.hx-band h1 .acc{color:var(--blue-300)}
.hero2-image .btn-ghost,.hx-band .btn-ghost{color:var(--on-dark);border-color:rgb(var(--white-rgb) / .5)}
.hero2-image .btn-ghost:hover,.hx-band .btn-ghost:hover{background:rgb(var(--white-rgb) / .14);color:var(--on-dark)}
.hero2-image .btn-primary,.hx-band .btn-primary{background:var(--white);border-color:var(--white);color:var(--navy);box-shadow:none}
.hero2-image .btn-primary:hover,.hx-band .btn-primary:hover{background:var(--sky);border-color:var(--sky);color:var(--navy)}
.hx-band{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;min-height:clamp(300px,32vw,400px);background:var(--navy);color:var(--on-dark)}
.hx-shade{z-index:0}
.hx-band .hx-band-in{position:relative;z-index:1;width:100%;max-width:720px;margin:0;padding:var(--s-7) var(--s-6)}
.hx-kick{display:inline-block;padding:5px 13px;border-radius:var(--r-pill);background:rgb(var(--white-rgb) / .16);color:var(--on-dark);font:700 var(--fs-xs)/1.2 var(--font-body);letter-spacing:.06em;text-transform:uppercase}
.hx-band h1{margin:var(--s-3) 0;font:800 var(--fs-3xl)/var(--lh-tight) var(--font-head);letter-spacing:-.03em}
.hx-band p{max-width:620px;margin:0;font:400 var(--fs-lg)/1.6 var(--font-body)}
@container hero (max-width:760px){
  .hero2-in,.hero2-split .hero2-in,.hero2-facts .hero2-in,.hero2-image.has-facts .hero2-in{grid-template-columns:minmax(0,1fr);gap:var(--s-5);padding:var(--s-6) var(--s-5)}
  .hero2-light .hero2-in{padding-inline:0}
  .hero2-shade,.hx-shade{background:rgb(var(--navy-rgb) / .74)}
  .hero2-image .hfacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3) var(--s-4);padding:var(--s-4)}
  .hero2-art{aspect-ratio:16/9}
  .hero2-strip{aspect-ratio:16/9}
}
@media (max-width:760px){.hx-band .hx-band-in{padding:var(--s-6) var(--s-5)}.hx-shade{background:rgb(var(--navy-rgb) / .78)}}
.pg-c .toc,.pg-c .subnav{position:static;margin:0;padding:0;max-width:none}
.toc-in,.subnav-in{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1)}
.pg-c .toc-in{border-radius:var(--r)}
.toc-in>span{margin-right:var(--s-2);font:700 var(--fs-xs)/1.2 var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--c-muted)}
.toc-in a,.subnav-in a{display:inline-flex;align-items:center;min-height:var(--tap-sm);padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-2);font:600 var(--fs-sm)/1.2 var(--font-body);transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast)}
.toc-in a:hover,.subnav-in a:hover{background:var(--sky);border-color:var(--blue);color:var(--blue-700)}
.subnav-in a.on,.subnav-in a[aria-current="page"]{background:var(--navy);border-color:var(--navy);color:var(--on-dark)}
@container main (max-width:560px){.toc-in{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.toc-in>span,.toc-in a{flex:none}}
@media (pointer:coarse){.toc-in a,.subnav-in a{min-height:var(--tap)}}
html{scroll-padding-top:calc(var(--sh-h,124px) + var(--s-4))}
.pg-c>.blk.blk-callout,.pg-c>.blk.blk-quote{padding:0;background:none;border:0;box-shadow:none;border-radius:0}
.intro-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:var(--s-6);align-items:start}
.intro-grid.intro-solo{grid-template-columns:minmax(0,1fr)}
.intro-grid .lead{margin:0 0 var(--s-4);color:var(--ink-2)}
.intro-grid .body{margin:0 0 var(--s-3);max-width:var(--w-text);font:400 var(--fs-md)/1.75 var(--font-body);color:var(--c-text-2)}
.intro-aside{padding:var(--s-5);background:var(--sky);border:1px solid var(--sky-2);border-radius:var(--r)}
.intro-aside>strong{display:block;margin-bottom:var(--s-3);font:800 var(--fs-md)/1.3 var(--font-head);letter-spacing:-.01em;color:var(--navy)}
.intro-aside ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-3)}
.intro-aside li{display:flex;gap:10px;align-items:flex-start;font:500 var(--fs-base)/1.45 var(--font-body);color:var(--ink)}
.intro-aside li svg{flex:none;width:18px;height:18px;margin-top:2px;color:var(--blue)}
@container main (max-width:640px){.intro-grid{grid-template-columns:minmax(0,1fr)}}
.text{max-width:none}
.text p{margin:0 0 var(--s-4);font:400 var(--fs-md)/var(--lh-prose) var(--font-body);color:var(--c-text-2);hyphens:auto;overflow-wrap:break-word}
.text p:last-child{margin-bottom:0}
.text-c2{column-count:2;column-gap:var(--s-6)}
.text-c2 p{break-inside:avoid-column}
.text.narrow{max-width:var(--w-text);margin-inline:auto}
.text.dropcap p:first-child::first-letter{float:left;margin:.06em .12em 0 0;font:800 3.4em/.85 var(--font-head);color:var(--blue)}
@container main (max-width:640px){.text-c2{column-count:1}}
.blk-split .split{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);gap:var(--s-6);align-items:center}
.blk-split .split-right .split-media{order:2}
.blk-split .split-media{position:relative;min-width:0}
.blk-split .split-img{position:relative;width:100%;aspect-ratio:4/3;border-radius:var(--r-lg);overflow:hidden;background:var(--soft);border:1px solid var(--line)}
.blk-split .split-img.shape-arch{aspect-ratio:5/4;border-radius:calc(var(--r-lg) * 5) calc(var(--r-lg) * 5) var(--r-lg) var(--r-lg)}
.blk-split .split-img.shape-round{aspect-ratio:1;max-width:360px;margin-inline:auto;border-radius:50%}
.blk-split .split-badge{position:absolute;right:var(--s-3);bottom:var(--s-4);max-width:calc(100% - var(--s-5));padding:14px 18px;border-radius:var(--r);background:var(--blue);color:var(--on-dark);box-shadow:var(--sh-2);font:600 var(--fs-sm)/1.3 var(--font-body)}
.blk-split .split-badge b{display:block;font:800 28px/1 var(--font-head)}
.blk-split .split-txt{min-width:0}
.blk-split .split-txt .h2{margin:var(--s-3) 0;font:800 var(--fs-2xl)/1.15 var(--font-head);letter-spacing:-.025em}
.blk-split .split-txt .lead{margin:0 0 var(--s-3);font-size:var(--fs-md);color:var(--ink-2)}
.blk-split .split-txt .body{margin:0 0 var(--s-3);font-size:var(--fs-md);line-height:1.7;color:var(--c-text-2)}
.blk-split .checks,.blk-tabs .checks{list-style:none;margin:var(--s-4) 0;padding:0;display:grid;gap:10px}
.blk-split .checks li,.blk-tabs .checks li{display:flex;gap:12px;align-items:center;font:600 var(--fs-base)/1.4 var(--font-body);color:var(--ink)}
@container main (max-width:640px){.blk-split .split{grid-template-columns:minmax(0,1fr)}.blk-split .split-right .split-media{order:0}}
.callout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--s-4);align-items:start;padding:var(--s-5);border:1px solid var(--info-bg);border-left:4px solid var(--blue);border-radius:var(--r);background:var(--info-bg);color:var(--ink)}
.callout-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--surface);color:var(--blue-700)}
.callout-ic svg{width:24px;height:24px}
.callout strong{display:block;margin-bottom:var(--s-1);font:800 var(--fs-md)/1.3 var(--font-head);letter-spacing:-.01em;color:var(--navy)}
.callout p{margin:0;font:400 var(--fs-base)/1.65 var(--font-body);color:var(--ink)}
.callout-warn{background:var(--warn-bg);border-color:var(--warn-bg);border-left-color:var(--warn)}
.callout-warn .callout-ic{color:var(--warn)}
.callout-key{background:linear-gradient(135deg,var(--navy),var(--navy-700));border-color:var(--navy);border-left-color:var(--blue-300);color:var(--on-dark)}
.callout-key .callout-ic{background:rgb(var(--white-rgb) / .14);color:var(--on-dark)}
.callout-key strong{color:var(--on-dark)}
.callout-key p{color:var(--on-dark-mute)}
.callout-key .btn-primary{background:var(--white);border-color:var(--white);color:var(--navy);box-shadow:none}
.callout-key .btn-primary:hover{background:var(--sky);border-color:var(--sky);color:var(--navy)}
.callout-key .btn-outline,.callout-key .btn-ghost{background:transparent;color:var(--on-dark);border-color:rgb(var(--white-rgb) / .5)}
.callout-key .btn-outline:hover,.callout-key .btn-ghost:hover{background:rgb(var(--white-rgb) / .14);color:var(--on-dark)}
@container main (max-width:440px){.callout{grid-template-columns:minmax(0,1fr);padding:var(--s-4)}}
.blk-quote .quote{position:relative;display:grid;grid-template-columns:minmax(0,1fr);margin:0;padding:var(--s-6);gap:var(--s-3);background:var(--sky);border:1px solid var(--sky-2);border-left:4px solid var(--blue);border-radius:var(--r);box-shadow:none;color:var(--navy)}
.blk-quote .quote blockquote{position:relative;margin:0;padding:0}
.blk-quote .quote blockquote::before{content:"“";display:block;margin-bottom:-.32em;font:800 72px/1 var(--font-head);color:var(--blue);opacity:.35;position:static}
.blk-quote .quote blockquote p{margin:0;font:600 clamp(19px,2.3cqi,24px)/1.45 var(--font-head);letter-spacing:-.01em;color:var(--navy);text-wrap:pretty}
.blk-quote .quote figcaption{display:grid;gap:2px;margin:0;padding:0;grid-column:auto}
.blk-quote .quote figcaption strong{font:700 var(--fs-base)/1.3 var(--font-body);color:var(--ink)}
.blk-quote .quote figcaption span{font-size:var(--fs-sm);color:var(--c-muted)}
.blk-quote .quote-img{grid-template-columns:minmax(0,180px) minmax(0,1fr);column-gap:var(--s-5);align-items:center}
.blk-quote .quote-ph{position:relative;grid-row:1/3;min-height:0;aspect-ratio:1;border-radius:var(--r);overflow:hidden;background:var(--surface)}
@container main (max-width:560px){
  .blk-quote .quote{padding:var(--s-5)}
  .blk-quote .quote-img{grid-template-columns:minmax(0,1fr)}
  .blk-quote .quote-ph{grid-row:auto;aspect-ratio:16/10}
}
.glo{display:grid;gap:var(--s-4)}
.glo .glo-q{max-width:420px}
.glo dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--s-3);margin:0}
.glo-i{padding:var(--s-4);background:var(--soft);border:1px solid var(--line);border-radius:var(--r);transition:border-color var(--t-fast),background var(--t-fast)}
.glo-i:hover{border-color:var(--line-strong);background:var(--surface)}
.glo-i[hidden]{display:none}
.glo-i dt{margin:0 0 var(--s-1);font:800 var(--fs-md)/1.3 var(--font-head);letter-spacing:-.01em;color:var(--navy)}
.glo-i dd{margin:0;font:400 var(--fs-base)/1.6 var(--font-body);color:var(--c-text-2)}
.acc2{display:grid;gap:var(--s-3);align-items:start}
.acc2-c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.acc2 .faq-i{margin:0;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow:hidden;transition:border-color var(--t-fast),box-shadow var(--t-fast)}
.acc2 .faq-i:hover{border-color:var(--line-strong)}
.acc2 .faq-i.open{border-color:var(--blue);box-shadow:var(--sh-1)}
.acc2 .faq-q{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);width:100%;min-height:var(--tap);padding:14px var(--s-5);border:0;border-radius:0;background:transparent;text-align:left;font:700 var(--fs-md)/1.35 var(--font-head);color:var(--navy);cursor:pointer;transition:background var(--t-fast)}
.acc2 .faq-q:hover{background:var(--soft)}
.acc2 .faq-q:focus-visible{outline:3px solid var(--c-focus);outline-offset:-3px}
.acc2 .faq-q b{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--sky);color:var(--blue-700);font:700 18px/1 var(--font-body);transition:background var(--t-fast),color var(--t-fast)}
.acc2 .faq-i.open .faq-q b{background:var(--blue);color:var(--on-dark)}
.acc2 .faq-a{display:none;margin:0;padding:0 var(--s-5) var(--s-4);font-size:var(--fs-base);line-height:1.7;color:var(--c-text-2)}
.acc2 .faq-i.open .faq-a{display:block;animation:acc-in var(--t) ease-out}
@keyframes acc-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.acc2-flat .faq-i{border-width:0 0 1px;border-radius:0;box-shadow:none;background:none}
.acc2-flat .faq-i.open{border-color:var(--line)}
.acc2-flat .faq-q,.acc2-flat .faq-a{padding-inline:0}
@container main (max-width:640px){.acc2-c2{grid-template-columns:minmax(0,1fr)}}
.blk-tabs .tabs{display:block;max-width:none;padding:0;border-radius:0;background:none;overflow:visible}
.blk-tabs .tabs-list{display:flex;max-width:100%;gap:4px;width:max-content;padding:4px;border-radius:12px;background:var(--line);overflow-x:auto;scrollbar-width:none}
.blk-tabs .tabs-list::-webkit-scrollbar{display:none}
.blk-tabs .tabs-list [role=tab]{flex:none}
.blk-tabs .tabs-list [role=tab]:focus-visible{outline:3px solid var(--c-focus);outline-offset:1px}
.blk-tabs .tabs-panel{margin-top:var(--s-4);padding:var(--s-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1)}
.blk-tabs .tabs-panel[hidden]{display:none}
.blk-tabs .tabs-panel h3{margin:0 0 var(--s-2);font:800 var(--fs-xl)/1.2 var(--font-head);letter-spacing:-.02em;color:var(--navy)}
.blk-tabs .tabs-panel>p{margin:0;max-width:var(--w-text);font:400 var(--fs-md)/1.7 var(--font-body);color:var(--c-text-2)}
@container main (max-width:560px){.blk-tabs .tabs-list{width:auto}.blk-tabs .tabs-panel{padding:var(--s-4)}}
@media (prefers-reduced-motion:reduce){
  .acc2 .faq-i.open .faq-a{animation:none}
  .acc2 .faq-i,.acc2 .faq-q,.acc2 .faq-q b,.glo-i,.toc-in a,.subnav-in a,.blk-tabs .tabs-list [role=tab]{transition:none}
  :where(.blk-intro,.blk-split,.blk-callout,.blk-tabs,.hero2,.hx-band) .actions .btn span{transition:none}
}
.hero2-home.hero2-image{min-height:clamp(420px,38vw,540px)}
.hero2-home h1{font-size:clamp(34px,4.4vw,56px)}
.hero2-home .hero2-in{padding-block:var(--s-8)}
/* ── 50-blocks-v10.css ── */
.pg-c>.blk.band-bare{background:none;border:0;border-radius:0;box-shadow:none;padding:0}
.pg-c>.blk.band-bare:not(:first-child){margin-top:var(--s-4)}
.sh.sh-bare{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap;max-width:none;margin:0 0 var(--s-4);padding:0;text-align:left}
.sh.sh-bare .h2{display:flex;margin:0;align-items:center;gap:10px;font:800 22px/1.2 var(--font-head);letter-spacing:-.02em;color:var(--navy)}
.sh.sh-bare .h2::before{content:"";flex:none;width:5px;height:22px;border-radius:3px;background:var(--blue)}
.sh.sh-bare .sh-intro{flex-basis:100%;margin:0;color:var(--c-muted)}
.sh-link-more{display:inline-flex;align-items:center;min-height:var(--tap-sm);padding:0 14px;border-radius:var(--r-sm);background:var(--sky);color:var(--blue-700);font:600 var(--fs-sm)/1 var(--font-body);white-space:nowrap;transition:background var(--t-fast),color var(--t-fast)}
.sh-link-more:hover{background:var(--blue);color:var(--on-dark)}
.lead3{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:var(--s-5);align-items:stretch}
.lead-main{display:flex;flex-direction:column;min-width:0}
.lead-main .kick{display:inline-block;margin-bottom:var(--s-2)}
.lead-t{margin:0 0 var(--s-3);font:800 clamp(30px,3.2vw,44px)/1.1 var(--font-head);letter-spacing:-.03em;color:var(--navy)}
.lead-t a{color:inherit}.lead-t a:hover{color:var(--blue-700)}
.stand{margin:0 0 var(--s-4);font:400 18px/1.6 var(--font-body);color:var(--c-text-2);max-width:var(--w-text)}
.fig{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-1)}
.fig-img{position:relative;display:block;width:100%;overflow:hidden;background:var(--soft)}
.fig figcaption{padding:10px 14px;font:400 var(--fs-xs)/1.5 var(--font-body);color:var(--c-muted)}
.fig figcaption b{color:var(--ink);font-weight:600}
.lead-main .meta{margin:var(--s-2) 0 0;font-size:var(--fs-xs);color:var(--c-muted)}
.lead-main .meta strong{color:var(--ink)}
.lead-side{display:grid;gap:var(--s-3);align-content:start}
.story{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1);transition:transform var(--t),box-shadow var(--t)}
.story:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}
.story .kick{display:block;margin-bottom:6px}
.story h3{margin:0 0 6px;font:700 17px/1.3 var(--font-head);letter-spacing:-.01em}
.story h3 a{color:var(--navy)}.story h3 a:hover{color:var(--blue-700)}
.story p{margin:0;font-size:var(--fs-sm);color:var(--c-text-2)}
@container main (max-width:720px){.lead3{grid-template-columns:minmax(0,1fr)}}
.wire{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1);overflow:hidden}
.wire-row{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:var(--s-4);align-items:center;padding:14px 20px;border-bottom:1px solid var(--line);transition:background var(--t-fast)}
.wire-row:last-child{border-bottom:0}
.wire-row:hover{background:var(--soft)}
.wire-row time{font:500 var(--fs-xs)/1.4 var(--font-mono);color:var(--c-muted)}
.wire-row a{display:flex;align-items:center;min-height:24px;font:600 15px/1.4 var(--font-body);color:var(--ink)}
.wire-row a:hover{color:var(--blue-700)}
.wire-tag{padding:4px 11px;border-radius:var(--r-pill);background:var(--sky);color:var(--blue-700);font:600 11px/1.3 var(--font-body)}
@container main (max-width:560px){.wire-row{grid-template-columns:84px minmax(0,1fr)}.wire-tag{display:none}}
.blk-servicetabs .tabs{margin-bottom:var(--s-3)}
.blk-servicetabs .tabpanel{padding-top:0}
.blk-servicetabs .tbl th[scope="row"]{font-weight:700}
.blk-servicetabs .tbl td.num{text-align:right}
.dossier{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:var(--s-5);align-items:start}
.dossier-steps{list-style:none;margin:0;padding:0;display:grid}
.dossier-steps li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--s-3);align-items:start;padding:var(--s-3) 0}
.dossier-steps b{font:800 26px/1 var(--font-head);color:var(--blue)}
.dossier-steps strong{display:block;font:700 var(--fs-md)/1.3 var(--font-body);color:var(--ink)}
.dossier-steps span{display:block;margin-top:2px;font-size:var(--fs-sm);color:var(--c-muted)}
@container main (max-width:720px){.dossier{grid-template-columns:minmax(0,1fr)}}
.covers{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--s-4)}
.covers li{min-width:0}
.covers a{display:grid;gap:2px;min-width:0;color:var(--ink)}
.covers strong{margin-top:6px;font:600 13px/1.3 var(--font-body)}
.covers a>small{font-size:var(--fs-xs);color:var(--c-muted)}
.cover{display:flex;flex-direction:column;justify-content:space-between;min-width:0;overflow:hidden;aspect-ratio:3/4;padding:14px 12px;border-radius:var(--r-sm);color:var(--on-dark);box-shadow:var(--sh-1);transition:transform var(--t),box-shadow var(--t)}
.covers a:hover .cover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.cover small{font:600 10px/1.3 var(--font-body);letter-spacing:.1em;text-transform:uppercase;opacity:.9}
.cover>span{font:800 15px/1.15 var(--font-head);overflow-wrap:anywhere}
.cover-navy{background:var(--cover-navy)}.cover-rust{background:var(--cover-rust)}.cover-green{background:var(--cover-green)}.cover-gold{background:var(--cover-gold)}.cover-ink{background:var(--cover-ink)}
@container main (max-width:560px){.covers{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container main (max-width:380px){.covers{grid-template-columns:repeat(2,minmax(0,1fr))}}
.band-bare .tbl tbody th{font-weight:400}
.pg-c>.blk:not(.band-bare) .sh{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;max-width:none;margin:0 0 var(--s-5);gap:var(--s-2) var(--s-4)}
.pg-c>.blk:not(.band-bare) .sh>div{flex:1 1 320px}
.pg-c>.blk:not(.band-bare) .sh .h2{margin:var(--s-2) 0 0;font:800 var(--fs-2xl)/1.15 var(--font-head);letter-spacing:-.025em}
.sh .pill{margin-bottom:2px}
.pg-c .band-navy .sh .h2,.pg-c .band-rust .sh .h2{color:var(--on-dark)}
.pg-c .band-navy .pill-sand,.pg-c .band-rust .pill-sand{background:rgb(var(--white-rgb) / .14);color:var(--on-dark);border-color:transparent}
.pg-c .band-navy .sh-link-more{background:rgb(var(--white-rgb) / .14);color:var(--on-dark)}
.sh-intro{margin:0;color:var(--c-muted)}
.story.story-img{padding:0;overflow:hidden}
.story-ph{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--soft)}
.story-ph img{transition:transform .7s var(--ease,ease)}
.story-img:hover .story-ph img{transform:scale(1.05)}
.story-b{padding:var(--s-4) 18px 18px}
.checks li i{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:var(--sky);color:var(--blue)}
.blk-cta .cta{position:relative;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--s-5) var(--s-6);overflow:hidden;padding:var(--s-7);border-radius:var(--r-lg);background:linear-gradient(120deg,var(--blue-700),var(--blue));color:var(--on-dark);box-shadow:var(--sh-2)}
.blk-cta .cta>i{position:absolute;right:-70px;top:-90px;width:300px;height:300px;border-radius:50%;background:rgb(var(--white-rgb) / .1)}
.blk-cta .cta>div{position:relative;flex:1 1 320px}
.blk-cta .cta h2{margin:0;max-width:560px;font:800 clamp(26px,2.8vw,36px)/1.15 var(--font-head);letter-spacing:-.025em;color:var(--on-dark)}
.blk-cta .cta p{margin:var(--s-3) 0 0;max-width:560px;color:var(--sky);font-size:var(--fs-md)}
.blk-cta .cta .actions{position:relative;display:flex;gap:var(--s-3);flex-wrap:wrap}
.lead-x{flex:1;display:flex;flex-direction:column;margin-top:var(--s-4);padding:var(--s-4) var(--s-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1)}
.lead-x-t{display:flex;align-items:center;gap:var(--s-3);margin:0 0 var(--s-2);font:700 var(--fs-md)/1.3 var(--font-head);color:var(--navy)}
.lead-x ul{flex:1;display:flex;flex-direction:column;justify-content:space-between;list-style:none;margin:0;padding:0}
.lead-x li{flex:1;display:flex;border-top:1px solid var(--line)}
.lead-x li a{flex:1;display:flex;align-items:center;gap:var(--s-4);padding:var(--s-3) 0;color:var(--ink)}
.lx-ph{position:relative;flex:none;width:64px;aspect-ratio:1;border-radius:var(--r-sm);overflow:hidden;background:var(--soft)}
.lx-ph .slot-img,.lx-ph .slot-empty{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lx-b{flex:1;display:grid;gap:2px;min-width:0}
.lx-b code{justify-self:start;padding:1px 8px;border-radius:var(--r-pill);background:var(--sky);color:var(--blue-700);font:500 var(--fs-xs)/1.6 var(--font-mono)}
.lx-b strong{font:700 var(--fs-base)/1.3 var(--font-head);color:var(--navy)}
.lx-b small{font-size:var(--fs-xs);color:var(--c-muted)}
.lx-go{color:var(--blue);font-weight:700;transition:transform var(--t-fast)}
.lead-x li a:hover .lx-b strong{color:var(--blue-700)}.lead-x li a:hover .lx-go{transform:translateX(3px)}
