/* ===================== COMPARE ===================== */
.svh-k{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 22px}
.svh-kl{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.cph{padding-block:calc(env(safe-area-inset-top,0px) + 150px) clamp(70px,8vw,120px)}
.cph-v{display:flex;align-items:baseline;justify-content:space-between;gap:.2em;margin-top:clamp(40px,6vw,90px);font-size:clamp(46px,9.6vw,184px);font-weight:800;letter-spacing:-.065em;line-height:.86;white-space:nowrap}
.cph-v .a{color:var(--fg)}
.cph-v .b{color:transparent;-webkit-text-stroke:2px var(--fg)}
.cph-v .vs{font-size:.34em;letter-spacing:-.03em;color:var(--ac);align-self:center}
.cph-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:30px clamp(40px,6vw,110px);align-items:end;margin-top:clamp(40px,5vw,70px);padding-top:26px;border-top:1px solid var(--ln)}
.cph h1{font-size:clamp(36px,4.6vw,84px);font-weight:800;letter-spacing:-.055em;line-height:.94}
.cph-2{display:grid;grid-template-columns:1fr 1fr;gap:0}
.cph-2>div{display:grid;gap:8px;padding:0 22px 0 0}
.cph-2>div+div{padding:0 0 0 22px;border-left:1px solid var(--ln)}
.cph-2 b{font-size:clamp(18px,1.5vw,22px);font-weight:800;letter-spacing:-.02em}
.cph-2 div+div b{color:var(--ac)}
.cph-2 p{font-size:15.5px;line-height:1.5;color:var(--mut)}

/* table */
.cpt-w{overflow-x:auto}
.cpt{width:100%;min-width:680px;border-collapse:collapse}
.cpt th,.cpt td{text-align:left;vertical-align:top;padding:18px 22px 18px 0;border-bottom:1px solid var(--ln)}
.cpt thead th{padding-bottom:16px;border-bottom:1px solid var(--fg)}
.cpt thead th span{font-size:clamp(26px,2.6vw,44px);font-weight:800;letter-spacing:-.05em;line-height:1}
.cpt thead th:nth-child(3) span{color:transparent;-webkit-text-stroke:1.5px var(--fg)}
.cpt tbody th{width:18%;font:600 11px/1.7 var(--f);letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.cpt tbody td{width:41%;font-size:17px;line-height:1.45;font-weight:600}
.cpt tbody td:nth-child(3){font-weight:500;color:color-mix(in srgb,var(--fg) 82%,var(--bg))}
.cpt tbody tr:hover td{background:color-mix(in srgb,var(--fg) 4%,transparent)}

/* overlap */
.cpo-l{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px}
.cpo-l .label{margin-right:8px}
.cpo-l button{font:600 14px/1 var(--f);color:var(--fg);background:transparent;border:1px solid var(--ln);padding:10px 14px;cursor:pointer}
.cpo-l button:hover{border-color:var(--fg)}
.cpo-l button[aria-pressed="true"]{background:var(--fg);border-color:var(--fg);color:var(--bg)}
.cpo{list-style:none;margin:0;padding:0;border-top:1px solid var(--fg)}
.cpo li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1.1fr) 90px;gap:10px 28px;align-items:start;padding:18px 0;border-bottom:1px solid var(--ln);transition:opacity .3s}
.cpo li.dim{opacity:.25}
.cpo b{font-size:clamp(18px,1.5vw,22px);font-weight:800;letter-spacing:-.025em;line-height:1.2}
.cpo .x,.cpo .y{display:grid;gap:4px;font-size:15px;line-height:1.45}
.cpo i{font:600 10px/1.4 var(--f);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.cpo em{justify-self:end;font:500 11px/1 var(--m);font-style:normal;padding:6px 8px;border:1px solid var(--line2);color:var(--mut)}
.cpo li[data-o="strong"] em{background:var(--ac);border-color:var(--ac);color:var(--bg)}

/* dates */
.cpd{display:grid;gap:30px}
.cpd-ax{position:relative;height:74px}
.cpd-ax .bar{position:absolute;left:0;right:0;top:40px;height:2px;background:var(--ln)}
.cpd-ax .past{position:absolute;left:0;top:40px;height:2px;width:calc(var(--a) * 100%);background:var(--fg)}
.cpd-ax .y{position:absolute;top:56px;left:calc(var(--a) * 100%);transform:translateX(-50%);font:500 11px/1 var(--m);color:var(--mut)}
.cpd-ax .dot{position:absolute;top:34px;left:calc(var(--a) * 100%);width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--bg);border:2px solid var(--fg);transition:transform .25s}
.cpd-ax .dot.done{background:var(--fg)}
.cpd-ax .dot.iso{border-radius:0}
.cpd-ax .dot.omni{border-color:var(--ac);background:var(--ac)}
.cpd-ax .dot.hi{transform:scale(1.5)}
.cpd-ax .now{position:absolute;top:0;bottom:22px;left:calc(var(--a) * 100%);width:2px;background:var(--ac)}
.cpd-ax .now span{position:absolute;top:0;left:8px;font:500 11px/1 var(--m);color:var(--ac);white-space:nowrap}
.cpd-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--fg)}
.cpd-l li{position:relative;display:grid;gap:8px;align-content:start;padding:18px 20px 22px 0;border-bottom:1px solid var(--ln);transition:background-color .25s}
.cpd-l li:not(:nth-child(4n+1)){padding-left:20px;border-left:1px solid var(--ln)}
.cpd-l time{font:500 12px/1 var(--m);color:var(--ac)}
.cpd-l b{font-size:clamp(18px,1.5vw,22px);font-weight:800;letter-spacing:-.025em;line-height:1.15}
.cpd-l p{font-size:14.5px;line-height:1.5;color:var(--mut)}
.cpd-l .st{font:500 10.5px/1 var(--m);color:var(--mut)}
.cpd-l li.done .st{color:var(--fg)}
.cpd-l li.omni b{color:var(--ac)}
.cpd-l li.hi{background:color-mix(in srgb,var(--fg) 5%,transparent)}

/* situations */
.cps{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:30px clamp(30px,5vw,90px);align-items:start}
.cps-t{display:grid;border-top:1px solid var(--fg)}
.cps-t button{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:baseline;padding:20px 0;text-align:left;font:800 clamp(20px,1.8vw,28px)/1.15 var(--f);letter-spacing:-.035em;color:var(--fg);background:none;border:0;border-bottom:1px solid var(--ln);cursor:pointer;transition:color .2s,padding-left .35s var(--eo)}
.cps-t button span{font:500 12px/1 var(--m);letter-spacing:0;color:var(--mut)}
.cps-t button:hover{color:var(--ac)}
.cps-t button[aria-selected="true"]{color:var(--vul);padding-left:14px;box-shadow:inset 3px 0 0 var(--vul)}
.cps-p{display:grid;gap:20px;padding:26px;background:var(--surface);border:1px solid var(--line)}
.cps-p h3{font-size:clamp(30px,3.2vw,54px);font-weight:800;letter-spacing:-.05em;line-height:.95;color:var(--rime)}
.cps-p>p{font-size:17px;line-height:1.6;color:var(--gangue);max-width:52ch}
.cps-p dl{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.cps-p dl div{display:grid;gap:4px;padding:12px 14px 0 0}
.cps-p dl div+div{padding-left:14px;border-left:1px solid var(--line)}
.cps-p dt{font:600 10px/1.4 var(--f);letter-spacing:.14em;text-transform:uppercase;color:var(--gangue)}
.cps-p dd{margin:0;font-size:15px;font-weight:700;color:var(--rime)}
.cps-p .eg-a{justify-self:start;color:var(--rime)}
.cpr b{font-size:clamp(28px,2.8vw,46px)!important}
.cpx-n{margin-top:clamp(50px,6vw,90px);padding-top:16px;border-top:1px solid rgba(0,22,33,.24);font:500 12px/1.5 var(--m);color:var(--mut)}

@media (max-width:1100px){.cph-g,.cps{grid-template-columns:1fr}.cpo li{grid-template-columns:1fr 1fr}.cpo b{grid-column:1/-1}.cpo em{grid-column:2;grid-row:1}
  .cpd-l{grid-template-columns:1fr 1fr}.cpd-l li:not(:nth-child(4n+1)){padding-left:0;border-left:0}.cpd-l li:nth-child(even){padding-left:20px;border-left:1px solid var(--ln)}}
@media (max-width:760px){
  .cph{padding-top:calc(env(safe-area-inset-top,0px) + 120px)}
  .svh-k>.label:last-child{display:none}
  .cph-v{flex-direction:column;align-items:flex-start;font-size:clamp(46px,15vw,80px);gap:.08em}
  .cph-v .vs{align-self:flex-start;font-size:.45em}
  .cph-2{grid-template-columns:1fr;gap:16px}.cph-2>div+div{padding:16px 0 0;border-left:0;border-top:1px solid var(--ln)}
  .cpt{min-width:0}.cpt thead{display:none}
  .cpt tbody,.cpt tr,.cpt th,.cpt td{display:block;width:auto!important}
  .cpt tr{padding:14px 0;border-bottom:1px solid var(--ln)}.cpt th,.cpt td{border:0;padding:3px 0}
  .cpt tbody td{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;font-size:15.5px}
  .cpt tbody td::before{content:attr(data-h);font:600 10px/2 var(--f);letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
  .cpo li{grid-template-columns:1fr}.cpo em{grid-column:1;grid-row:auto;justify-self:start}
  .cpd-ax .y:nth-child(even){display:none}
  .cpd-l{grid-template-columns:1fr}.cpd-l li:nth-child(even){padding-left:0;border-left:0}
  .cps-p dl{grid-template-columns:1fr}.cps-p dl div+div{padding-left:0;border-left:0}
}
.cpd-ax .dot.omni{top:18px;width:10px;height:10px;margin-left:-5px}
