/* Homepage approved from the October 11 reference screenshots. */
.tac-home-editable-section{width:100%;min-width:0}
.tac-home-editable-section .tac-ref-about-copy>div+div{margin-top:34px}
.tac-home-editable-section .tac-ref-about-copy>.tac-ref-stats{margin-top:34px}
.tac-home-editable-section .tac-ref-card>img{width:100%;height:100%;object-fit:cover}
/* Each editable Hero is a single media item; it must retain its height even
   while Elementor refreshes the widget before the slideshow bundle starts. */
.tac-home-editable-section .hero-banner .swiper-wrapper,
.tac-home-editable-section .hero-banner .swiper-slide{width:100%;height:100%}
.tac-ref-home{--ref-red:#bb4224;--ref-ink:#545454;color:var(--ref-ink);font-family:"VL Axiforma",sans-serif;background:#fff}
.tac-ref-home *{box-sizing:border-box}
.tac-ref-home section{scroll-margin-top:112px}
.tac-ref-container{width:89.5%;max-width:1830px;margin-inline:auto}
.tac-ref-home h2,.tac-ref-home h3,.tac-ref-home p,.tac-ref-home ul{margin:0}
.tac-ref-home h2{font-size:clamp(38px,4.2vw,80px);font-weight:700;line-height:1.35;letter-spacing:-.025em;color:var(--ref-red)}
.tac-ref-home p,.tac-ref-home li{font-size:clamp(15px,1.3vw,26px);line-height:1.7}
.tac-ref-pill{display:inline-block;padding:10px 26px;border-radius:40px;background:#faeeea;color:var(--ref-red);font-size:clamp(13px,1.05vw,21px);font-weight:500;text-transform:uppercase;line-height:1.5}
.tac-ref-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px 14px 32px;border-radius:50px;background:var(--ref-red);color:#fff!important;text-decoration:none;font-size:clamp(15px,1.3vw,26px);font-weight:700;line-height:1.4;white-space:nowrap}
.tac-ref-button b{display:grid;place-items:center;width:34px;height:34px;background:#fff;color:var(--ref-red);border-radius:50%;font-size:24px;line-height:1}
.tac-ref-button-outline{border:1px solid #545454;background:#fff;color:#545454!important}
.tac-ref-button-outline b{background:#545454;color:#fff}
.tac-ref-about{display:grid;grid-template-columns:1.08fr 1fr;gap:4.5%;padding-block:90px 60px}
.tac-ref-about h2{margin-top:28px;line-height:1.32}
.tac-ref-about-image{display:block;width:100%;height:auto;margin-top:30px;object-fit:contain}
.tac-ref-about-copy{padding-top:105px}
.tac-ref-about-copy>p+p{margin-top:34px}
.tac-ref-stats{display:grid;grid-template-columns:1fr 1fr;gap:24px 35px;margin-top:34px}
.tac-ref-stats span{font-size:clamp(58px,5.3vw,104px);font-weight:300;line-height:1.3}
.tac-ref-stats sup{font-size:.45em;position:relative;top:-.7em;vertical-align:baseline;margin-left:4px}
.tac-ref-stats p{font-size:clamp(14px,1.15vw,23px);margin-top:12px}
.tac-ref-download{border-top:1px solid #cfcfcf;border-bottom:1px solid #cfcfcf;padding-block:80px;margin-bottom:0}
.tac-ref-download h2{max-width:1200px;font-size:clamp(38px,4vw,78px);line-height:1.32}
.tac-ref-download-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:50px}
.tac-ref-download ul{padding:0;list-style:none}
.tac-ref-download-row p{max-width:1100px}
.tac-ref-download li{font-size:clamp(15px,1.15vw,24px);line-height:1.75}
.tac-ref-approach{padding:90px 0 110px;background:radial-gradient(ellipse at 15% 110%,#fff0d8 0,transparent 55%),radial-gradient(ellipse at 100% 65%,#ffedd1 0,transparent 48%),radial-gradient(ellipse at 50% 130%,#f4ded5 0,transparent 50%),#fff;text-align:center}
.tac-ref-approach h2{color:#a4a4a4;font-size:clamp(24px,2.2vw,44px);line-height:1.45;max-width:1160px;margin:46px auto 40px;font-weight:500;letter-spacing:0}
.tac-ref-approach h2 strong{color:var(--ref-red);font-weight:700}
.tac-ref-approach p{color:var(--ref-red);font-size:clamp(24px,2.2vw,44px);font-weight:700;line-height:1.4}
.tac-ref-solutions{padding-block:80px 90px;overflow:hidden}
.tac-ref-solutions-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;margin-bottom:52px}
.tac-ref-solutions-heading h2{margin-top:30px}
.tac-ref-solutions-heading>div:last-child{text-align:right;max-width:490px}
.tac-ref-solutions-heading .tac-ref-button{margin-top:30px}
.tac-ref-cards{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-inline:5.25%;padding-bottom:8px;overscroll-behavior-x:contain}
.tac-ref-cards::-webkit-scrollbar{display:none}
.tac-ref-card{flex:0 0 30%;min-width:300px;aspect-ratio:.96;position:relative;border-radius:22px;overflow:hidden;color:#fff;scroll-snap-align:center;padding:clamp(24px,2.4vw,48px);display:flex;flex-direction:column;justify-content:space-between;background:#8a4b18}
.tac-ref-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:1;filter:none}
.tac-ref-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,15,8,.02),rgba(20,15,8,.15) 45%,rgba(20,15,8,.58));pointer-events:none}
.tac-ref-card-number,.tac-ref-card-copy{position:relative;z-index:1}
.tac-ref-card-number{font-size:clamp(20px,1.6vw,32px);font-weight:700}
.tac-ref-card h3{font-size:clamp(26px,2.55vw,50px);line-height:1.35;font-weight:700;color:#fff;letter-spacing:-.025em;margin-bottom:18px}
.tac-ref-card ul{padding-left:16px;list-style:disc}
.tac-ref-card li{color:#fff;font-size:clamp(15px,1.25vw,25px);line-height:1.7;padding-left:0}
.tac-ref-contact{margin-top:80px;background:url('../reference-2026/contact.jpg') center/cover no-repeat;padding-block:70px 100px}
.tac-ref-contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:start}
.tac-ref-contact h2{font-size:clamp(38px,4vw,78px);line-height:1.3;margin-top:65px;max-width:640px}
.tac-ref-contact .tac-ref-pill{background:#f2d7b9}
.tac-ref-people{margin-top:55px}
.tac-ref-people>div+div{margin-top:28px}
.tac-ref-people h3{font-size:clamp(19px,1.5vw,30px);font-weight:700;line-height:1.5}
.tac-ref-people p{font-size:clamp(15px,1.2vw,24px);margin-top:5px}
.tac-ref-people p:last-child{margin-top:18px}
.tac-ref-people a{color:inherit;text-decoration:none}
.tac-ref-form-box{--ref-field-font:18px;--ref-consent-font:16px;--ref-field-height:56px;background:#fff;border-radius:24px;padding:clamp(28px,3vw,60px);margin-top:12px}
.tac-ref-form-box>h3{font-size:clamp(23px,2.2vw,42px)!important;font-weight:700;line-height:1.3!important;letter-spacing:0!important;margin-bottom:30px;color:#4b4b4b}
.tac-ref-form-box .tac-lead-form{margin:0;padding:0;border:0;box-shadow:none;background:transparent;gap:20px!important}
.tac-ref-form-box .tac-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 26px}
.tac-ref-form-box .tac-form-grid label{margin:0;min-width:0;display:block;font-weight:400!important}
.tac-ref-form-box form.tac-lead-form--premium .tac-form-grid input:not([type=hidden]),.tac-ref-form-box form.tac-lead-form--premium .tac-form-grid select,.tac-ref-form-box form.tac-lead-form--premium .tac-form-grid textarea{box-sizing:border-box;width:100%;height:var(--ref-field-height)!important;min-height:var(--ref-field-height)!important;border:2px solid #e5e5e5!important;border-radius:999px!important;padding:12px 22px!important;margin:0!important;background:#fff!important;box-shadow:none!important;color:#383838!important;font-family:inherit!important;font-weight:400!important;font-size:var(--ref-field-font)!important;line-height:1.4!important}
.tac-ref-form-box .tac-form-grid textarea{resize:vertical}
.tac-ref-form-box .tac-form-grid input::placeholder,.tac-ref-form-box .tac-form-grid textarea::placeholder{color:#939598!important;opacity:1}
.tac-ref-form-box .tac-form-grid :is(input,select,textarea):focus-visible{outline:2px solid #bb4224;outline-offset:2px}
.tac-ref-form-box .tac-form-grid label:has([name=email]){grid-column:auto}
.tac-ref-form-box .tac-form-grid label:has([name=message]){grid-column:1/-1}
.tac-ref-form-box .tac-consent{display:flex!important;gap:24px!important;align-items:flex-start;margin:0!important;font-size:var(--ref-consent-font)!important;font-weight:400!important;line-height:1.55!important;color:#383838!important;letter-spacing:0!important}
.tac-ref-form-box .tac-consent input{appearance:none!important;display:block;box-sizing:border-box;width:28px!important;height:28px!important;flex:0 0 28px;margin:2px 0 0!important;padding:0!important;border:2px solid #e5e5e5!important;border-radius:5px!important;background:#fff;box-shadow:0 1px 4px #00000012;cursor:pointer}
.tac-ref-form-box .tac-consent input:checked{background:#bb4224;border-color:#bb4224!important}
.tac-ref-form-box .tac-consent input:checked:after{content:'✓';display:block;text-align:center;color:#fff;font-size:20px;line-height:24px}
.tac-ref-form-box .tac-consent input:focus-visible{outline:2px solid #bb4224;outline-offset:3px}
.tac-ref-form-box .tac-consent a{color:#bb4224!important;font-weight:400;text-decoration:none}
.tac-ref-form-box .tac-primary{display:inline-flex;align-items:center;justify-self:start;gap:10px;border-radius:50px;background:#bb4224;color:#fff;font-size:clamp(18px,1.45vw,28px);font-weight:700;padding:14px 18px 14px 28px;min-height:60px;border:0;margin-top:14px}
.tac-ref-form-box .tac-primary span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;color:#bb4224;line-height:1}
.tac-ref-form-box .tac-captcha{margin:0!important;min-height:0!important;background:transparent;border:0;padding:0!important}
.tac-ref-form-box .tac-captcha label{display:grid!important;grid-template-columns:minmax(0,1fr) 90px!important;align-items:center;gap:16px!important;font-size:var(--ref-field-font)!important;font-weight:400!important;line-height:1.5!important;color:#545454!important}
.tac-ref-form-box .tac-captcha label>span{font-size:inherit!important;font-weight:400!important}
.tac-ref-form-box form.tac-lead-form--premium .tac-captcha input[type=number]{width:90px!important;height:var(--ref-field-height)!important;min-height:var(--ref-field-height)!important;padding:6px 10px!important;line-height:1.4!important;font-size:var(--ref-field-font)!important;font-weight:400!important;border:2px solid #e5e5e5!important;border-radius:999px!important}
.tac-ref-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.tac-reference-homepage .c-header__lang-btn{text-decoration:none;cursor:pointer;display:inline-block}
@media(max-width:900px){
 .tac-ref-container{width:90%}.tac-ref-about{gap:4%;padding-top:60px}.tac-ref-about-copy{padding-top:80px}
 .tac-ref-contact-grid{grid-template-columns:1fr 1.3fr;gap:4%}.tac-ref-contact h2{font-size:36px;margin-top:35px}
 .tac-ref-form-box{padding:24px}.tac-ref-form-box .tac-form-grid{gap:12px}.tac-ref-form-box .tac-form-grid input,.tac-ref-form-box .tac-form-grid select,.tac-ref-form-box .tac-form-grid textarea{height:54px;min-height:54px;padding:12px 20px}
 .tac-ref-card{flex-basis:44%;min-width:270px;aspect-ratio:.8}
}
@media(max-width:600px){
 .tac-ref-about{grid-template-columns:1fr;padding-block:45px;gap:20px}.tac-ref-about h2{font-size:38px}.tac-ref-about-copy{padding-top:0}.tac-ref-about-image{margin-top:24px}.tac-ref-stats{gap:22px}.tac-ref-stats span{font-size:58px}
 .tac-ref-download{padding-block:40px}.tac-ref-download h2{font-size:34px}.tac-ref-download-row{display:block;margin-top:24px}.tac-ref-download .tac-ref-button{margin-top:24px}
 .tac-ref-approach{padding-block:50px}.tac-ref-approach h2{margin-block:26px;font-size:24px}.tac-ref-approach p{font-size:22px}
 .tac-ref-solutions{padding-block:45px}.tac-ref-solutions-heading{display:block;margin-bottom:28px}.tac-ref-solutions-heading h2{font-size:36px;margin-top:22px}.tac-ref-solutions-heading>div:last-child{text-align:left;max-width:none;margin-top:18px}.tac-ref-solutions-heading .tac-ref-button{margin-top:14px}
 .tac-ref-card{flex-basis:83%;min-width:0;aspect-ratio:.8;border-radius:18px;padding:28px}.tac-ref-card h3{font-size:30px}.tac-ref-card li{font-size:16px}
 .tac-ref-contact{margin-top:45px;padding-block:45px;background-image:url('../reference-2026/contact-mobile.jpg')}.tac-ref-contact-grid{grid-template-columns:1fr;gap:30px}.tac-ref-contact h2{margin-top:28px;font-size:38px}.tac-ref-people{margin-top:28px}.tac-ref-form-box{padding:24px}.tac-ref-form-box>h3{font-size:23px}
 .tac-ref-form-box .tac-form-grid{grid-template-columns:1fr}.tac-ref-form-box .tac-form-grid label:has([name=email]){grid-column:1/-1}.tac-ref-form-box{--ref-field-font:16px;--ref-consent-font:15px;--ref-field-height:52px}.tac-ref-form-box .tac-consent{font-size:var(--ref-consent-font)!important;gap:16px!important}.tac-ref-button{font-size:16px;padding:12px 14px 12px 24px}.tac-ref-button b{width:28px;height:28px;font-size:20px}
}

/* v1.9.24 — geometric centering, independent of text font baselines. */
.tac-ref-home .tac-ref-button>b,.tac-ref-form-box form.tac-lead-form--premium button[type=submit]>span{display:flex!important;align-items:center!important;justify-content:center!important;align-self:center!important;flex-shrink:0!important;line-height:0!important;padding:0!important;margin:0!important}
.tac-ref-home .tac-ref-button>b svg,.tac-ref-form-box form.tac-lead-form--premium button[type=submit]>span svg{display:block!important;width:22px!important;height:22px!important;flex-shrink:0!important;margin:0!important;transform:none!important}
.tac-ref-form-box form.tac-lead-form--premium button[type=submit]{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;line-height:1.4!important}
