/* Three action levels; widths follow the label, never an input-like rule. */
.button.action-primary,.textlink.action-primary,.cta .button.action-primary,.contact-grid .button.action-primary{
 display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;justify-self:start;
 width:fit-content;max-width:100%;min-width:0;min-height:48px;padding:14px 22px;gap:22px;
 border:1px solid transparent;border-radius:9px;background:var(--ink);color:#fff;
 font-family:Sofia,Arial,sans-serif;font-size:17px;font-weight:400;line-height:1.3;text-align:left;
 transition:background-color .2s,transform .2s;
}
.hero-action .textlink.action-primary{background:#f4f1ec;color:#20142e;width:fit-content;max-width:100%;font-size:17px;padding:14px 22px}
.cta .button.action-primary{justify-self:end}
.textlink.action-secondary,.header .nav-contact.action-secondary{
 display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;justify-self:start;
 width:fit-content;max-width:100%;min-width:0;min-height:46px;padding:11px 17px;gap:18px;
 border:1px solid currentColor;border-radius:9px;background:transparent;color:inherit;
 font-size:16px;line-height:1.3;text-align:left;transition:background-color .2s;
}
.textlink.action-tertiary,.news-read{
 display:inline-flex;align-items:center;justify-content:flex-start;width:fit-content;max-width:100%;min-width:0;
 min-height:44px;padding:8px 0;gap:10px;border:0;border-radius:0;background:none;color:inherit;font-size:16px;line-height:1.3;
}
.news-read{margin-top:auto}
.header .nav-contact.action-secondary{align-self:center}
.action-primary .arrow-icon,.action-secondary .arrow-icon,.action-tertiary .arrow-icon,.news-read .arrow-icon{width:20px;height:20px;flex:none;transition:transform .2s}
.action-primary>span,.action-secondary>span{display:inline-flex;flex:none;font-size:inherit}
.action-primary:hover{filter:brightness(1.12)}
.action-secondary:hover{background:#81738b12}
.action-tertiary:hover,.news-card a:hover .news-read{text-decoration:underline;text-underline-offset:5px}
.news-card a:hover .news-read svg{transform:translate(2px,-2px)}
@media(max-width:1000px){.header .nav-contact.action-secondary{display:none}}
@media(max-width:760px){
 .cta .button.action-primary{justify-self:start}
 .hero-action .textlink.action-primary{margin-top:0}
 .news.section{padding-left:0;padding-right:0}
 .news-heading{margin-left:27px;margin-right:27px}
 .news-grid{gap:44px}
 .news-card a,.news-card:not(:first-child) a{display:flex;flex-direction:column;gap:0}
 .news-image,.news-card:not(:first-child) .news-image{aspect-ratio:16/10;width:100%;border-radius:0}
 .news-copy,.news-card:not(:first-child) .news-copy{padding:22px 27px 0;width:100%}
 .news-copy h3,.news-card:not(:first-child) .news-copy h3{font-size:29px;line-height:1.12}
 .news-copy time,.news-card:not(:first-child) time{font-size:14px;margin-bottom:12px}
 .news-card:not(:first-child) .news-copy p{display:block}
 .news-copy p{font-size:17px;margin:14px 0}
 .news-read,.news-card:not(:first-child) .news-read{margin-top:0;border:0;padding:8px 0;gap:10px}
}
@media(prefers-reduced-motion:reduce){.action-primary,.action-secondary,.action-tertiary .arrow-icon,.news-read .arrow-icon{transition:none}}
