/* Refined navigation, with a stable hit area and a quiet underline. */
@media(min-width:721px){
 .header nav{display:flex;align-items:center;gap:clamp(20px,2.6vw,44px);font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:600;line-height:1.3;letter-spacing:.075em;text-transform:uppercase}
 .header nav a{position:relative;display:inline-flex;align-items:center;min-height:48px;padding:12px 0;border:0;white-space:nowrap}
 .header nav a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
 .header nav a:hover::after,.header nav a:focus-visible::after{transform:scaleX(1)}
 .header nav a:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
 .header nav .other-services{gap:10px;padding:10px 16px;border:1px solid #19191670;border-radius:999px;letter-spacing:.04em;transition:background .2s,color .2s}
 .header nav .other-services::after{display:none}
 .header nav .other-services span{font-size:20px;line-height:1}
 .header nav .other-services:hover{background:var(--ink);color:#fff}
 .hero{padding-bottom:28px}
 /* Fit the full portrait inside the hero, including at wide desktop sizes. */
 .hero .hero-portrait{height:calc(100% - 28px);width:auto;max-width:47%;aspect-ratio:1122 / 1402;right:0;bottom:0;margin:0}
 .hero .hero-portrait img{width:100%;height:100%;object-fit:contain;object-position:center bottom}
}
@media(min-width:721px) and (max-width:1100px){
 .header{gap:16px;padding-inline:3%}
 .header nav{gap:clamp(10px,1.5vw,16px);font-size:12px;letter-spacing:.025em}
 .header nav .other-services{padding-inline:11px;gap:6px}
 .header>.button.small{padding-inline:12px;gap:12px;white-space:nowrap}
}
/* These facts occupy their own row, outside the portrait's section. */
main>.hero-bottom{position:relative;inset:auto;display:grid;grid-template-columns:1.2fr 1.2fr .9fr;align-items:center;gap:24px;margin:0;padding:24px 6%;background:var(--orange);color:var(--ink);border-top:1px solid #19191626;font:15px/1.65 Arial,Helvetica,sans-serif;z-index:4}
main>.hero-bottom>span{min-width:0;width:auto;text-align:left;font-size:inherit}
main>.hero-bottom>span:last-child{text-align:right;font-size:inherit;width:auto}
main>.hero-bottom .bottom-dot{display:none}
main>.hero-bottom b{font-weight:700}
/* Four identical groups: moving by one group makes an exact rightward loop. */
.ticker{display:block;overflow:hidden;position:relative;padding:24px 0;margin:0 -2%;white-space:nowrap;background:var(--orange);color:var(--ink);border-top:1px solid #19191626;border-bottom:1px solid #19191626;transform:rotate(-1.3deg)}
.ticker .ticker-track{display:flex;flex-wrap:nowrap;width:max-content;animation:ticker-right 34s linear infinite;will-change:transform}
.ticker .ticker-group{box-sizing:border-box;display:flex;flex:none;align-items:center;justify-content:space-around;gap:clamp(40px,5vw,96px);width:max-content;min-width:100vw;padding:0 clamp(20px,2.5vw,48px)}
.ticker .ticker-group span,.ticker .ticker-group b{display:block;flex:none;font-family:Arial,Helvetica,sans-serif;font-size:clamp(16px,1.4vw,22px);font-weight:700;line-height:1.3;letter-spacing:.055em;white-space:nowrap;color:var(--ink);animation:none}
.ticker .ticker-group b{font-size:24px}
.ticker .ticker-toggle{position:absolute;right:5%;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid #19191660;border-radius:50%;background:var(--orange);color:var(--ink);cursor:pointer;box-shadow:0 0 0 8px var(--orange)}
.ticker .ticker-toggle:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.ticker .ticker-toggle span{display:block;width:10px;height:12px;border-left:3px solid currentColor;border-right:3px solid currentColor}
.ticker.is-paused .ticker-track{animation-play-state:paused}
.ticker.is-paused .ticker-toggle span{width:0;height:0;border:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;margin-left:2px}
@keyframes ticker-right{from{transform:translateX(-25%)}to{transform:translateX(0)}}
@media(max-width:1050px) and (min-width:721px){main>.hero-bottom{grid-template-columns:1fr 1fr;gap:10px 24px}main>.hero-bottom>span:last-child{grid-column:1/-1;text-align:left}}
@media(max-width:720px){
 main>.hero-bottom{grid-template-columns:minmax(0,1fr);gap:10px;padding:22px 6%;font-size:15px}
 main>.hero-bottom>span:last-child{text-align:left}
 .ticker{display:block;flex-wrap:nowrap;white-space:nowrap;padding:20px 0;margin:0;transform:rotate(-1deg)}
 .ticker .ticker-group{gap:40px;padding-inline:20px}
 .ticker .ticker-group span{font-size:16px}
 .ticker .ticker-toggle{right:6%;width:36px;height:36px}
}
@media(prefers-reduced-motion:reduce){
 .header nav a::after{transition:none}
 .ticker .ticker-track{animation:none;transform:none;will-change:auto}
 .ticker{transform:none;overflow-x:auto}
 .ticker .ticker-toggle{display:none}
}
