/* The product photograph remains intact; leaders are measured in source-image space. */
.routine-board{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,27%);gap:clamp(18px,2vw,38px);align-items:start;direction:ltr;margin-top:24px}
.routine-artwork{min-width:0;position:relative}
.routine-artwork .product-display{display:block;width:100%;height:auto;max-height:none;aspect-ratio:3/2;background:#fff;overflow:visible}
.routine-artwork .product-display picture{display:block;width:100%;height:100%}
.routine-artwork .product-display img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
.routine-artwork .product-display:hover img{transform:none}
.routine-artwork .display-expand{top:10px;inset-inline-start:10px;inset-inline-end:auto;bottom:auto}
.routine-leaders{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible;pointer-events:none}
.routine-leaders path{fill:none;stroke:#737373;stroke-width:1;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.routine-leaders .routine-source-dot{fill:#fff;stroke:#444;stroke-width:1;vector-effect:non-scaling-stroke}
.routine-leaders .routine-mobile-dot{fill:#fff;stroke:#777;stroke-width:1;vector-effect:non-scaling-stroke}
.routine-leaders text{fill:#111;stroke:none;font:500 10px var(--text);text-anchor:middle;dominant-baseline:central}
.routine-guide{padding-top:var(--routine-guide-top,80px);min-width:0}
.routine-guide>.overline{color:var(--muted);margin:0 0 14px;line-height:1.4}
.routine-guide ol{list-style:none;margin:0;padding:0;display:grid;grid-template-rows:repeat(6,minmax(var(--routine-row-height,58px),auto))}
.routine-guide li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:15px;align-items:start;direction:ltr;padding:3px 0 11px}
.routine-guide-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #aaa;border-radius:50%;background:#fff;position:relative;z-index:3;color:#333;font-size:10px;line-height:1;font-variant-numeric:tabular-nums}
.routine-guide h3{font:500 clamp(15px,1.15vw,19px)/1.3 var(--text);letter-spacing:-.015em;margin:0;overflow-wrap:anywhere}
.routine-guide li p{font:400 12px/1.55 var(--text);color:var(--muted);margin:5px 0 0}
.routine-contact{display:flex;justify-content:flex-end;margin-top:12px}
.routine-contact .action{font-size:12px;min-width:180px}
[dir=rtl] .routine-guide>p,[dir=rtl] .routine-guide li>div{text-align:right}
@media(max-width:1099px){
  .routine-board{grid-template-columns:1fr;gap:25px;margin-top:20px}
  .routine-artwork{max-width:850px;width:100%;margin-inline:auto}
  .routine-guide{padding-top:0}
  .routine-guide>.overline{margin-bottom:20px}
  .routine-guide ol{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:22px 34px}
  .routine-guide li{grid-template-columns:28px minmax(0,1fr);gap:13px;padding:0 0 14px;border-bottom:1px solid var(--line)}
  .routine-guide h3{font-size:17px}
  .routine-guide li p{font-size:12px}
  .routine-contact{margin-top:24px}
}
@media(max-width:699px){
  .routine-board{gap:25px;margin-top:14px}
  .routine-artwork{margin-inline:calc(-1 * var(--gutter));width:calc(100% + 2 * var(--gutter));max-width:none}
  .routine-guide ol{gap:22px 18px}
  .routine-guide li{grid-template-columns:25px minmax(0,1fr);gap:9px}
  .routine-guide-number{width:25px;height:25px;font-size:9px}
  .routine-guide h3{font-size:15px}
  .routine-guide li p{font-size:11px;margin-top:6px}
  .routine-guide>.overline{font-size:10px}
  .routine-contact{justify-content:stretch;margin-top:17px}
  .routine-contact .action{width:100%;font-size:12px}
  .routine-artwork .display-expand{inset-inline-start:var(--gutter);inset-inline-end:auto}
}
