/* Dedicated icon slots prevent page typography and flex sizing from distorting arrows. */
.pill{--arrow-size:38px;--arrow-inset:14px}
body .pill>.button-arrow[aria-hidden]{position:absolute;top:50%;bottom:auto;left:auto;right:var(--arrow-inset);translate:0 -50%;width:var(--arrow-size);height:var(--arrow-size);min-width:0;min-height:0;max-width:none;aspect-ratio:1;flex:none;display:block;padding:0;margin:0;border:0;line-height:0;font-size:0;letter-spacing:0;background-position:center;background-size:contain;background-repeat:no-repeat}
body .route-cards>a>.route-arrow[aria-hidden]{aspect-ratio:1;min-width:0;min-height:0;padding:0;margin:0;line-height:0;font-size:0;letter-spacing:0;background-position:center;background-size:contain;background-repeat:no-repeat}
/* Rotate the SVG within a centered square, retaining its native 12.1213:21.4142 ratio. */
body :is(.faq-page-tabs,.news-filters)>a>.tab-arrow{position:absolute;right:20px;top:50%;translate:0 -50%;width:24px;height:24px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;flex:none;pointer-events:none}
body :is(.faq-page-tabs,.news-filters)>a>.tab-arrow>img{position:static;display:block;width:12.1213px;height:21.4142px;max-width:none;flex:none;object-fit:contain;transform:rotate(90deg);transform-origin:center}
/* An inherited 45px min-height was making the 36px mobile page buttons oval. */
body.tto-news .pagination .page-numbers{min-height:0;min-width:0;flex:0 0 auto;line-height:1}
body.tto-news .pagination :is(.prev,.next)>img{display:block;max-width:none;aspect-ratio:1;object-fit:contain;flex:none}
body .slider-control.slider-prev,body .slider-control.slider-next{padding:0;font-size:0;line-height:0;aspect-ratio:1}
body .slider-control::before{content:'';position:absolute;left:50%;top:50%;translate:-50% -50%;width:24%;height:44%;background:url('../images/550bb.svg') center/contain no-repeat;pointer-events:none}
body .slider-control.slider-prev::before{transform:rotate(180deg)}
/* Use the same original artwork on desktop and mobile, without a font baseline. */
body .site-footer .back-top{display:block;aspect-ratio:1;padding:0;border:0;font-size:0;line-height:0;background:url('../images/3e47c.svg') center/contain no-repeat;z-index:6}
body .breadcrumbs>span[aria-hidden]{display:block;flex:none;align-self:center;width:10px;height:12px;padding:0;font-size:0;line-height:0;background:url('../images/45647.svg') center/contain no-repeat}
.down-arrows,.worry-arrow{object-fit:contain}
/* Flow triangles: size in the SVG's native ratio, then rotate the icon.
   The old 22.5 x 49.363 background box stretched a 39.8876 x 21.4405 SVG. */
body .flow-steps,body .inherit-flow-steps{--flow-gap:24px;--flow-arrow-length:32px;gap:var(--flow-gap)}
body .flow-steps>li:not(:last-child)::after{content:'';position:absolute;left:calc(100% + var(--flow-gap)/2);right:auto;top:55%;width:var(--flow-arrow-length);height:calc(var(--flow-arrow-length)*21.4405/39.8876);padding:0;border:0;font-size:0;line-height:0;background:url('../images/9eee8.svg') center/contain no-repeat;transform:translate(-50%,-50%) rotate(90deg);z-index:2}
body .inherit-flow-steps .flow-next{position:absolute;left:calc(100% + var(--flow-gap)/2);right:auto;top:50%;bottom:auto;width:var(--flow-arrow-length);height:calc(var(--flow-arrow-length)*21.4405/39.8876);max-width:none;object-fit:contain;margin:0;transform:translate(-50%,-50%) rotate(90deg);z-index:2}
@media(min-width:1101px){
 body.home .flow-steps{--flow-gap:calc(30 * var(--tto-u));--flow-arrow-length:calc(40 * var(--tto-u))}
 body .inherit-flow-steps{--flow-gap:calc(30 * var(--inherit-u));--flow-arrow-length:calc(40 * var(--inherit-u))}
 .home .pill{--arrow-size:calc(40 * var(--tto-u));--arrow-inset:calc(16 * var(--tto-u))}
 .tto-contact .pill,.tto-news-detail .pill{--arrow-size:calc(40 * var(--about-u));--arrow-inset:calc(16 * var(--about-u))}
 body.tto-about :is(.faq-page-tabs,.news-filters)>a>.tab-arrow{right:calc(20 * var(--about-u));width:calc(24 * var(--about-u));height:calc(24 * var(--about-u))}
 body.tto-about :is(.faq-page-tabs,.news-filters)>a>.tab-arrow>img{width:calc(12.1213 * var(--about-u));height:calc(21.4142 * var(--about-u))}
 body.tto-about .breadcrumbs>span[aria-hidden]{width:calc(10 * var(--about-u));height:calc(12 * var(--about-u))}
}
@media(max-width:1100px){
 body.home .office-banner>div>span[aria-hidden]{display:block;width:40px;height:40px;font-size:0;line-height:0;background:url('../images/f5bf3.svg') center/contain no-repeat}
 body .service-cards h3>span[aria-hidden]{display:block;width:24px;height:24px;flex:none;font-size:0;line-height:0;background:url('../images/550bb.svg') center/12.1213px 21.4142px no-repeat}
}
@media(max-width:700px){
 body .flow-steps{--flow-gap:10px;--flow-arrow-length:16px}
 body .inherit-flow-steps{--flow-gap:25px;--flow-arrow-length:28px}
 body .inherit-flow-steps .flow-next{left:50%;top:calc(100% + var(--flow-gap)/2);right:auto;bottom:auto;transform:translate(-50%,-50%) rotate(180deg)}
 .pill{--arrow-size:30px;--arrow-inset:10px}
 body :is(.faq-page-tabs,.news-filters)>a>.tab-arrow{right:12px;width:20px;height:20px}
 body :is(.faq-page-tabs,.news-filters)>a>.tab-arrow>img{width:10px;height:17.6667px}
}
