/* TTC Services Manager 1.2 — styles are scoped; Flatsome's primary color remains the accent. */
.ttcs-services{--ttcs-primary:var(--primary-color,#f0b946);--ttcs-ink:#142442;--ttcs-muted:#586479;width:100%;max-width:1280px;margin:0 auto;padding:26px 0;box-sizing:border-box}
.ttcs-services *, .ttcs-services *::before,.ttcs-services *::after,.ttcs-detail *,.ttcs-detail *::before,.ttcs-detail *::after{box-sizing:border-box}
.ttcs-services__intro{margin:0 0 28px}.ttcs-services__kicker{display:block;color:var(--ttcs-primary);font-size:12px;font-weight:750;letter-spacing:.12em;margin-bottom:11px}.ttcs-services__heading{color:var(--ttcs-ink);font-size:clamp(28px,3vw,42px);line-height:1.16;margin:0;font-weight:800}.ttcs-services__lead{color:var(--ttcs-muted);margin:10px 0 0;font-size:17px;line-height:1.65}
.ttcs-services__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.ttcs-card{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-width:0;min-height:370px;width:100%;padding:31px;overflow:hidden;color:#fff!important;text-decoration:none!important;border-radius:14px;background:var(--ttcs-card-color,#80652f);box-shadow:0 8px 25px rgba(17,35,57,.12);transition:transform .4s ease,box-shadow .4s ease;outline-offset:4px}
.ttcs-card__media{position:absolute;inset:0;z-index:-3;display:block;overflow:hidden}.ttcs-card__image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;opacity:.85;filter:saturate(.8);transform:scale(1.01);transition:transform .75s ease,filter .45s ease}
.ttcs-card__shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(9,16,29,.08) 0%,var(--ttcs-card-overlay,rgba(80,55,23,.75)) 58%,rgba(8,15,24,.80) 100%);transition:opacity .42s ease}
.ttcs-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.ttcs-card__index{display:grid;place-items:center;min-width:46px;height:39px;padding:0 10px;border:1px solid rgba(255,255,255,.64);border-radius:8px;color:#fff;font-size:16px;font-weight:800}.ttcs-card__category{color:rgba(255,255,255,.92);font-size:11px;font-weight:800;letter-spacing:.13em}
.ttcs-card__body{display:flex;flex-direction:column;align-items:flex-start;gap:14px;max-width:450px;margin-top:64px;padding-right:28px;position:relative;z-index:1}.ttcs-card__title{display:block;color:#fff!important;font-size:clamp(27px,2.8vw,39px);line-height:1.17;letter-spacing:-.025em;font-weight:800}.ttcs-card__description{color:#fff!important;font-size:16px;line-height:1.6;font-weight:500;max-width:390px}.ttcs-card__cta{display:inline-flex;gap:9px;align-items:center;margin-top:4px;padding-bottom:6px;color:#fff!important;border-bottom:2px solid var(--ttcs-primary);font-size:14px;line-height:1.4;font-weight:800}.ttcs-card__arrow{display:inline-block;font-size:20px;transition:transform .35s ease}.ttcs-card__circle{position:absolute;right:27px;bottom:27px;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#fff;color:#142442;font-size:23px;transition:transform .4s ease,background-color .4s ease}
.ttcs-card:hover,.ttcs-card:focus-visible{transform:translateY(-6px);box-shadow:0 18px 38px rgba(17,35,57,.2)}.ttcs-card:hover .ttcs-card__image,.ttcs-card:focus-visible .ttcs-card__image{transform:scale(1.065);filter:saturate(1.05)}.ttcs-card:hover .ttcs-card__shade,.ttcs-card:focus-visible .ttcs-card__shade{opacity:.88}.ttcs-card:hover .ttcs-card__arrow,.ttcs-card:focus-visible .ttcs-card__arrow{transform:translateX(6px)}.ttcs-card:hover .ttcs-card__circle,.ttcs-card:focus-visible .ttcs-card__circle{transform:translate(3px,-3px);background:var(--ttcs-primary)}.ttcs-services__empty{padding:24px;background:#f1f6fa;color:#142442;border-radius:8px}
/* No JS = visible. Reveal is enabled only after an IntersectionObserver is attached. */
.ttcs-services.ttcs-ready .ttcs-card:not(.ttcs-in-view){opacity:0;transform:translateY(24px)}.ttcs-services.ttcs-ready .ttcs-card.ttcs-in-view{opacity:1;transform:translateY(0);transition:opacity .55s ease,transform .55s ease,box-shadow .4s ease;transition-delay:var(--ttcs-delay,0ms)}.ttcs-services.ttcs-ready .ttcs-card.ttcs-in-view:hover{transform:translateY(-6px)}
@media(max-width:849px){.ttcs-services__grid{gap:15px}.ttcs-card{min-height:315px;padding:23px}.ttcs-card__body{margin-top:52px;gap:10px}.ttcs-card__title{font-size:28px}.ttcs-card__description{font-size:14px}}
@media(max-width:549px){.ttcs-services__grid{grid-template-columns:1fr;gap:16px}.ttcs-card{min-height:310px;padding:25px}.ttcs-card__title{font-size:31px}.ttcs-card__circle{right:22px;bottom:22px}.ttcs-card__body{margin-top:55px}}
/* One service = one rich-text/detail URL. Full-bleed Vero-inspired hero, no gray rounded hero box. */
.ttcs-detail{--ttcs-primary:var(--primary-color,#f0b946);--ttcs-navy:#202c61;--ttcs-ink:#172745;--ttcs-soft:#f4f7fa;--ttcs-rule:#dce4ee;width:100%;max-width:none;margin:0;overflow:clip;color:var(--ttcs-ink);background:#fff}
.ttcs-detail__hero{position:relative;display:flex;align-items:center;min-height:clamp(490px,57vw,675px);width:100%;background:linear-gradient(113deg,#262959 0%,#273764 56%,#294b8a 100%);color:white;overflow:hidden}
.ttcs-detail__hero::after{content:"";position:absolute;z-index:1;right:39%;inset-block:0;width:21%;background:linear-gradient(90deg,#262f64 5%,rgba(38,47,100,0));pointer-events:none}
.ttcs-detail__image-wrap{position:absolute;inset:0 0 0 49%;overflow:hidden;clip-path:polygon(16% 0,100% 0,100% 100%,0 100%);background:linear-gradient(140deg,#62bca6,#2e569b)}
.ttcs-detail__hero-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.92;filter:saturate(.88)}
.ttcs-detail__hero-inner{position:relative;z-index:2;width:min(100%,1380px);margin:0 auto;padding:76px clamp(28px,5.3vw,88px);}
.ttcs-detail__eyebrow{display:block;color:#ffe6a7;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.ttcs-detail__eyebrow span{padding:0 8px;color:rgba(255,255,255,.6)}
.ttcs-detail__hero h1{max-width:62%;margin:30px 0 26px;color:#fff!important;font-size:clamp(56px,8vw,118px)!important;line-height:1.02!important;letter-spacing:-.045em;font-weight:650;overflow-wrap:break-word}
.ttcs-detail__hero-desc{max-width:500px;color:rgba(255,255,255,.93)!important;font-size:clamp(17px,1.55vw,22px);line-height:1.55;margin:0 0 28px}.ttcs-detail__hero-button{display:inline-flex;align-items:center;gap:18px;min-height:46px;padding:10px 21px;border:1px solid rgba(255,255,255,.85);border-radius:99px;color:#fff!important;text-decoration:none!important;font-size:15px;font-weight:650;transition:background .25s,color .25s}.ttcs-detail__hero-button:hover,.ttcs-detail__hero-button:focus-visible{background:#fff;color:#202c61!important}
.ttcs-detail__intro,.ttcs-detail__solutions-inner,.ttcs-detail__contact-inner{width:min(100% - 48px,1240px);margin:0 auto}.ttcs-detail__intro{padding:clamp(65px,7.4vw,116px) 0;display:grid;grid-template-columns:minmax(170px,.28fr) minmax(0,1fr);gap:clamp(26px,5vw,100px)}.ttcs-detail__label{display:flex;gap:16px;align-items:center;color:#bc7b12;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.ttcs-detail__label-line{height:1px;flex:1;min-width:22px;background:var(--ttcs-rule)}.ttcs-detail__intro .ttcs-detail__label{align-self:start;padding-top:11px}.ttcs-detail__prose{color:var(--ttcs-ink);font-size:clamp(20px,2.1vw,28px);line-height:1.55;font-weight:400}.ttcs-detail__prose p{margin:0 0 22px}.ttcs-detail__prose h2,.ttcs-detail__prose h3{color:var(--ttcs-ink);font-weight:700;line-height:1.2}
.ttcs-detail__solutions{background:#f4f7fa;padding:clamp(68px,8vw,120px) 0}.ttcs-detail__solutions h2{margin:23px 0 42px;color:var(--ttcs-ink);font-size:clamp(38px,5.3vw,74px);font-weight:650;letter-spacing:-.035em;line-height:1.07}.ttcs-detail__dot{color:var(--ttcs-primary)}.ttcs-detail__accordion{border-top:1px solid #b5c3d2}.ttcs-detail__item{margin:0;border-bottom:1px solid #cbd6e0}.ttcs-detail__summary{display:grid;grid-template-columns:64px minmax(0,1fr) 40px;align-items:center;gap:20px;min-height:104px;padding:26px 10px;cursor:pointer;list-style:none;color:var(--ttcs-ink);transition:color .25s}.ttcs-detail__summary::-webkit-details-marker{display:none}.ttcs-detail__summary:hover,.ttcs-detail__item[open] .ttcs-detail__summary{color:#b97913}.ttcs-detail__item-number{color:#aa7a20;font-size:17px;font-weight:800}.ttcs-detail__item-title{font-size:clamp(21px,2.5vw,32px);line-height:1.23;font-weight:630;letter-spacing:-.02em}.ttcs-detail__toggle{position:relative;width:28px;height:28px;border:1px solid currentColor;border-radius:50%;justify-self:end}.ttcs-detail__toggle::before,.ttcs-detail__toggle::after{content:"";position:absolute;left:7px;right:7px;top:12px;height:2px;background:currentColor}.ttcs-detail__toggle::after{transform:rotate(90deg);transition:transform .25s}.ttcs-detail__item[open] .ttcs-detail__toggle::after{transform:rotate(0)}.ttcs-detail__panel{padding:0 68px 32px 94px;color:#435470;font-size:18px;line-height:1.72;max-width:1050px}.ttcs-detail__panel p:last-child{margin-bottom:0}.ttcs-detail__panel img{max-width:100%;height:auto;border-radius:10px}
.ttcs-detail__contact{padding:clamp(64px,7vw,110px) 0;background:#fff}.ttcs-detail__contact-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:45px}.ttcs-detail__contact h2{max-width:820px;margin:18px 0 13px;font-size:clamp(38px,5.3vw,70px);line-height:1.1;letter-spacing:-.04em;font-weight:650;color:var(--ttcs-ink)}.ttcs-detail__contact p{color:#586679;font-size:18px;line-height:1.65}.ttcs-detail__contact a{display:inline-flex;white-space:nowrap;align-items:center;gap:25px;background:var(--ttcs-primary);border-radius:100px;padding:16px 27px;color:#182947!important;font-size:15px;font-weight:800;text-decoration:none!important;transition:transform .25s}.ttcs-detail__contact a:hover{transform:translateY(-3px)}
@media(max-width:849px){.ttcs-detail__hero{min-height:540px}.ttcs-detail__hero-inner{padding:65px 34px}.ttcs-detail__hero h1{font-size:clamp(54px,8vw,82px)!important;max-width:70%}.ttcs-detail__image-wrap{inset:0 0 0 42%;opacity:.6}.ttcs-detail__hero::after{right:40%;width:28%}.ttcs-detail__intro{grid-template-columns:1fr;gap:22px}.ttcs-detail__summary{grid-template-columns:48px minmax(0,1fr) 32px;gap:14px}.ttcs-detail__panel{padding:0 36px 27px 62px}}
@media(max-width:549px){.ttcs-detail__hero{min-height:590px;align-items:flex-end}.ttcs-detail__image-wrap{inset:0 0 42% 0;clip-path:none;opacity:.55}.ttcs-detail__hero::after{inset:auto 0 36% 0;height:30%;width:100%;background:linear-gradient(0deg,#263064,transparent)}.ttcs-detail__hero-inner{padding:245px 23px 46px}.ttcs-detail__hero h1{max-width:100%;font-size:clamp(46px,11vw,62px)!important;margin:18px 0}.ttcs-detail__hero-desc{font-size:16px}.ttcs-detail__intro,.ttcs-detail__solutions-inner,.ttcs-detail__contact-inner{width:calc(100% - 36px)}.ttcs-detail__intro{padding:58px 0}.ttcs-detail__prose{font-size:20px}.ttcs-detail__solutions{padding:65px 0}.ttcs-detail__solutions h2{font-size:39px;margin:17px 0 26px}.ttcs-detail__summary{grid-template-columns:33px minmax(0,1fr) 26px;gap:9px;padding:20px 1px;min-height:86px}.ttcs-detail__item-number{font-size:12px}.ttcs-detail__item-title{font-size:21px}.ttcs-detail__panel{padding:0 10px 22px 43px;font-size:16px}.ttcs-detail__contact-inner{flex-direction:column;align-items:flex-start}.ttcs-detail__contact h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){.ttcs-services .ttcs-card,.ttcs-services .ttcs-card__image,.ttcs-services .ttcs-card__shade,.ttcs-services .ttcs-card__arrow,.ttcs-services .ttcs-card__circle,.ttcs-detail *{transition:none!important;animation:none!important;transition-delay:0ms!important}.ttcs-services.ttcs-ready .ttcs-card{transform:none!important;opacity:1!important}}
