/* TRUST_POLISH_v1 — Web Designer. Loads last. Scope: body.tp. Foundation (marquee, header, footer, CTA colours, fonts) untouched. */
body.tp{--tp-navy:#253679;--tp-ink:#14204A;--tp-blue:#124A92;--tp-sub:#4A5578;--tp-line:#D6DCE8;--tp-tint:#EEF1FA;--tp-paper:#FBF8F2;--tp-ease:cubic-bezier(.2,.7,.2,1)}
body.tp main .band{padding:72px 0;overflow:clip}
body.tp main .tp-tint{background:var(--tp-tint)!important;color:var(--tp-ink)!important;border-top:4px solid var(--tp-navy);padding:96px 0}
body.tp main .tp-tint h2,body.tp main .tp-tint h3,body.tp main .tp-tint p{color:var(--tp-ink)!important}
body.tp main .tp-tint .eyebrow{color:var(--tp-sub)!important}
body.tp main .tp-paper{background:var(--tp-paper)!important}
body.tp main .tp-white{background:#fff!important}
body.tp main .tp-contact{padding:96px 0 40px}
body.tp main .tp-close{padding:0 0 96px}
body.tp main .sec-head{max-width:760px;margin:0 0 32px}
body.tp main .sec-head .eyebrow{display:inline-block;margin-bottom:8px;letter-spacing:.08em}
body.tp main .sec-head h2{margin:0;text-wrap:balance}
body.tp main h1,body.tp main h2,body.tp main h3{text-wrap:balance}
body.tp main p,body.tp main li{text-wrap:pretty}
body.tp main .wrap{max-width:1160px}
/* HERO */
body.tp .tp-hero{position:relative;isolation:isolate;overflow:clip;background:linear-gradient(180deg,#F4F7FD 0%,#fff 100%);padding:56px 0 96px}
body.tp .tp-hero-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
body.tp .tp-hero-bg span{position:absolute;border-radius:50%;filter:blur(60px)}
body.tp .tp-hero-bg .g1{width:560px;height:480px;right:-120px;top:-140px;background:radial-gradient(circle,#C9D8F5 0%,rgba(201,216,245,0) 70%)}
body.tp .tp-hero-bg .g2{width:420px;height:360px;left:-140px;bottom:-120px;background:radial-gradient(circle,#DCEEF9 0%,rgba(220,238,249,0) 70%)}
body.tp .tp-hero-bg .g3{width:300px;height:260px;left:40%;top:30%;background:radial-gradient(circle,rgba(37,54,121,.10) 0%,rgba(37,54,121,0) 70%)}
body.tp .tp-hero-bg .grid{inset:0;border-radius:0;filter:none;background-image:radial-gradient(rgba(37,54,121,.10) 1px,transparent 1.2px);background-size:24px 24px;-webkit-mask-image:linear-gradient(180deg,#000 0,transparent 80%);mask-image:linear-gradient(180deg,#000 0,transparent 80%)}
body.tp .tp-hero .blobs{opacity:.45}
body.tp .tp-frame{border-radius:28px;padding:10px;background:rgba(255,255,255,.7);border:1px solid var(--tp-line);box-shadow:0 24px 60px -24px rgba(37,54,121,.35),0 2px 6px rgba(20,32,74,.06);overflow:hidden}
body.tp .tp-frame img{border-radius:20px;display:block;width:100%;height:auto}
body.tp .tp-hero .btn-row{gap:12px;margin-top:24px}
body.tp .tp-hero .hero-notes .note{background:rgba(255,255,255,.66);-webkit-backdrop-filter:saturate(160%) blur(18px);backdrop-filter:saturate(160%) blur(18px);border:1px solid var(--tp-line);border-left:4px solid var(--tp-navy);border-radius:16px;padding:16px 20px;color:var(--tp-ink);box-shadow:0 8px 24px -16px rgba(37,54,121,.3)}
/* ICON TILE */
body.tp .tp-ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#E3E9F8;color:var(--tp-navy);margin-bottom:16px;transition:transform .3s var(--tp-ease)}
body.tp .tp-ic svg{width:24px;height:24px}
body.tp .tp-ic img{width:32px;height:32px}
body.tp .tp-guards .tp-ic{background:#E1F0FA;color:var(--tp-blue)}
/* CARDS */
body.tp .tp-swipe.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
body.tp .tp-pillars .card,body.tp .tp-guards .card{display:flex;flex-direction:column;background:rgba(255,255,255,.86);border:1px solid var(--tp-line);border-radius:20px;padding:24px;box-shadow:0 1px 2px rgba(20,32,74,.04),0 12px 32px -20px rgba(37,54,121,.28);color:var(--tp-ink);transition:transform .3s var(--tp-ease),box-shadow .3s var(--tp-ease),border-color .3s;position:relative}
body.tp .tp-pillars .card h3,body.tp .tp-guards .card h3{font-size:1.25rem;margin:0 0 8px;color:var(--tp-ink)!important}
body.tp .tp-pillars .card p,body.tp .tp-guards .card p{color:#3A4566!important;margin:0 0 12px}
body.tp .tp-pillars .card .photo{margin:auto 0 0;padding-top:12px}
body.tp .tp-pillars .card .photo img{border-radius:14px;aspect-ratio:3/2;object-fit:cover;width:100%;height:auto;display:block;transition:transform .4s var(--tp-ease)}
body.tp .tp-pillars .card .photo{overflow:hidden;border-radius:14px}
body.tp .tp-guards .card{border-top:4px solid #4DBAE5}
body.tp main .card:is(:hover,:focus-within,:active){transform:translateY(-4px);box-shadow:0 2px 4px rgba(20,32,74,.06),0 20px 44px -18px rgba(37,54,121,.4);border-color:#B9C4DE}
body.tp main .card:is(:hover,:focus-within,:active) .tp-ic{transform:rotate(-6deg)}
body.tp main .card:is(:hover,:focus-within,:active) .photo img{transform:scale(1.04)}
body.tp main .card a.stretch:focus-visible{outline:3px solid var(--tp-blue);outline-offset:4px;border-radius:6px}
/* HABITS TIMELINE */
body.tp .tp-habits .intro.narrow{max-width:none;display:grid;grid-template-columns:4fr 8fr;gap:24px 48px;align-items:start}
body.tp .tp-habits .intro>p{font-size:1.125rem;color:#3A4566;margin:0}
body.tp .tp-habits .intro>.photo{grid-column:1;grid-row:2;margin:0;border-radius:20px;overflow:hidden;border:1px solid var(--tp-line);padding:8px;background:#fff;box-shadow:0 12px 32px -20px rgba(37,54,121,.3)}
body.tp .tp-habits .intro>.photo img{border-radius:14px;display:block;width:100%;height:auto}
body.tp .tp-steps{grid-column:2;grid-row:1/span 2;list-style:none;margin:0;padding:0 0 0 0;counter-reset:tp;position:relative;display:flex;flex-direction:column;gap:16px}
body.tp .tp-steps::before{content:"";position:absolute;left:23px;top:24px;bottom:24px;width:2px;background:var(--tp-line)}
body.tp .tp-steps::after{content:"";position:absolute;left:23px;top:24px;bottom:24px;width:2px;background:linear-gradient(#253679,#4DBAE5);transform-origin:top;transform:scaleY(var(--tp-p,1))}
body.tp .tp-steps li{counter-increment:tp;position:relative;padding:20px 24px 20px 80px;background:#fff;border:1px solid var(--tp-line);border-radius:18px;color:#3A4566;box-shadow:0 8px 24px -18px rgba(37,54,121,.3);transition:transform .3s var(--tp-ease),box-shadow .3s;min-height:48px;margin:0}
body.tp .tp-steps li::before{content:counter(tp,decimal-leading-zero);position:absolute;left:0;top:18px;width:48px;height:48px;border-radius:50%;background:#fff;border:2px solid var(--tp-navy);color:var(--tp-navy);font-weight:800;display:grid;place-items:center;z-index:1;font-size:.95rem}
body.tp .tp-steps li .li-t{display:block;color:var(--tp-ink);font-size:1.125rem;margin-bottom:4px}
body.tp .tp-steps li br{display:none}
body.tp .tp-steps li:is(:hover,:active){transform:translateY(-4px);box-shadow:0 16px 36px -18px rgba(37,54,121,.4)}
body.tp .tp-habits .sec-head{max-width:none;padding-right:180px}body.tp .tp-habits .teddy{position:absolute;right:0;top:-16px;width:140px;height:auto}@media (max-width:767px){body.tp .tp-habits .sec-head{padding-right:96px}body.tp .tp-habits .teddy{width:88px;top:-8px}}
body.tp .tp-habits .sec-head{position:relative}
/* SPLITS 5/7 */
body.tp .tp-split .wrap{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:start}
body.tp .tp-split .sec-head{margin:0;position:sticky;top:96px}
body.tp .tp-split .intro.narrow{max-width:none;margin:0;background:#fff;border:1px solid var(--tp-line);border-radius:20px;padding:32px;box-shadow:0 12px 32px -22px rgba(37,54,121,.3);color:var(--tp-ink)}
body.tp .tp-split .intro .btn-row{margin-top:24px}
/* FAQ */
body.tp main .faq{display:flex;flex-direction:column;gap:12px;margin:0}
body.tp details.qa{background:#fff;border:1px solid var(--tp-line);border-radius:16px;overflow:hidden;transition:box-shadow .3s,border-color .3s}
body.tp details.qa[open]{border-color:#B9C4DE;box-shadow:0 12px 30px -20px rgba(37,54,121,.4)}
body.tp details.qa summary{min-height:56px;display:flex;align-items:center;gap:16px;justify-content:space-between;padding:12px 20px;cursor:pointer;font-weight:700;color:var(--tp-ink);list-style:none}
body.tp details.qa summary::-webkit-details-marker{display:none}
body.tp details.qa summary::after{content:"";flex:0 0 32px;height:32px;border-radius:50%;background:#E3E9F8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23253679' stroke-width='1.75' stroke-linecap='round'%3E%3Cpath d='M12 7v10M7 12h10'/%3E%3C/svg%3E") center/18px no-repeat;transition:transform .3s var(--tp-ease)}
body.tp details.qa[open] summary::after{transform:rotate(45deg)}
body.tp details.qa summary:focus-visible{outline:3px solid var(--tp-blue);outline-offset:-3px;border-radius:16px}
body.tp details.qa .ans{padding:0 20px 20px;color:#3A4566}
body.tp details.qa .ans p{margin:0}
/* ASK CTA card */
body.tp .tp-ask .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
body.tp .tp-ask .sec-head,body.tp .tp-ask .intro{grid-column:1/span 8}
body.tp .tp-ask .intro.narrow{max-width:none;margin:0}
body.tp .tp-ask .sec-head{margin-bottom:8px}
body.tp .tp-ask .wrap{background:#fff;border:1px solid var(--tp-line);border-radius:24px;padding:48px;box-shadow:0 20px 50px -30px rgba(37,54,121,.4);max-width:1112px}
/* CONTACT */
body.tp .tp-contact .wrap{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:start}
body.tp .tp-contact .sec-head{margin:0}
body.tp .tp-contact .intro.narrow{max-width:none;margin:0;display:flex;flex-direction:column;gap:16px}
body.tp .tp-contact .intro p{margin:0;color:var(--tp-ink)}
body.tp .tp-contact .intro p:nth-of-type(2){align-self:flex-start;font-weight:700;font-size:1.125rem;color:var(--tp-navy);background:#fff;border:1px solid var(--tp-line);border-radius:999px;padding:12px 20px}
body.tp .tp-contact .intro p:nth-of-type(3){background:#FFFBEA;border:1px solid #C9A227;border-radius:14px;padding:16px 20px}
body.tp .tp-close .ph.big{background:#fff;border:1px solid var(--tp-line);border-radius:20px;box-shadow:0 12px 32px -22px rgba(37,54,121,.3);color:var(--tp-ink)}
body.tp .tp-close .ph.big a{display:inline-flex;align-items:center;min-height:44px;padding:0 2px}
body.tp .tp-close .ph.big a{color:var(--tp-blue)}


/* REVEAL (transform only, never opacity) */
@media (prefers-reduced-motion:no-preference){
 html.tp-js body.tp .tp-rv{transform:translateY(16px);transition:transform .5s var(--tp-ease);transition-delay:var(--tp-d,0ms)}
 html.tp-js body.tp .tp-rv.tp-in{transform:none}
}
@media (prefers-reduced-motion:reduce){
 body.tp main *,body.tp main *::before,body.tp main *::after{transition:none!important;animation:none!important}
 body.tp main .card:is(:hover,:focus-within,:active),body.tp .tp-steps li:is(:hover,:active){transform:none}
 body.tp .tp-steps::after{transform:none}
}
/* TABLET */
@media (max-width:1023px){body.tp .tp-split .wrap,body.tp .tp-contact .wrap{grid-template-columns:1fr;gap:24px}body.tp .tp-split .sec-head{position:static}body.tp .tp-habits .intro.narrow{grid-template-columns:1fr}body.tp .tp-habits .intro>.photo,body.tp .tp-steps{grid-column:1;grid-row:auto}}
/* PHONE */
@media (max-width:767px){
 body.tp main .band{padding:40px 0}
 body.tp main .tp-tint{padding:56px 0}
 body.tp main .tp-contact{padding:56px 0 24px}body.tp main .tp-close{padding:0 0 56px}
 body.tp .tp-hero{padding:32px 0 56px}
 body.tp main .sec-head{margin-bottom:24px}
 body.tp .tp-hero .btn-row .btn{width:100%;justify-content:center}
 body.tp .tp-swipe{display:flex!important;flex-direction:row!important;gap:12px!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:20px;margin:0 -20px;padding:4px 20px 16px;scrollbar-width:thin;scrollbar-color:#253679 #E3E9F8;-webkit-overflow-scrolling:touch}
 body.tp .tp-swipe::-webkit-scrollbar{height:6px}body.tp .tp-swipe::-webkit-scrollbar-track{background:#E3E9F8;border-radius:3px;margin:0 20px}body.tp .tp-swipe::-webkit-scrollbar-thumb{background:#253679;border-radius:3px}
 body.tp .tp-swipe>*{flex:0 0 82%;scroll-snap-align:start}
 body.tp .tp-swipe:focus-visible{outline:3px solid var(--tp-blue);outline-offset:2px}
 body.tp .tp-pillars .card,body.tp .tp-guards .card{padding:20px}
 body.tp .tp-steps::before,body.tp .tp-steps::after{left:20px;right:20px;top:42px;bottom:auto;width:auto;height:2px;transform-origin:left;transform:scaleX(var(--tp-p,1))}
 body.tp .tp-steps{position:relative}
 body.tp .tp-steps li{padding:76px 20px 20px}
 body.tp .tp-steps li::before{left:20px;top:18px}
 body.tp .tp-steps::before,body.tp .tp-steps::after{display:none}
 body.tp .tp-split .intro.narrow{padding:20px}
 body.tp .tp-ask .wrap{padding:24px 20px;margin:0 20px;width:auto;display:block}
 body.tp .tp-contact .intro p:nth-of-type(2){border-radius:14px;word-break:break-word}
}
/* taps */
body.tp main .card h3 a.stretch{display:inline-flex!important;align-items:center;min-height:44px}

/* pillar cards: photo always leads, same rhythm in all 3 */
body.tp .tp-pillars .card{justify-content:flex-start}
body.tp .tp-pillars .card .photo{order:-1;margin:0 0 20px!important;padding:0!important;flex:none}
body.tp .tp-pillars .card .photo figcaption{display:none}
body.tp .tp-habits .sec-head .teddy{width:140px!important;height:140px!important;max-width:none!important;position:absolute!important;right:0!important;left:auto!important;top:-16px!important;margin:0!important;transform:none!important}
@media (max-width:767px){body.tp .tp-habits .sec-head .teddy{width:80px!important;height:80px!important;top:-4px!important}}

/* Arhal a1/a2 addendum: reduced motion = no transforms/transitions in tp scope */
@media (prefers-reduced-motion:reduce){body.tp main *,body.tp main *::after{transition:none!important;animation:none!important}}

/* Arhal a2 (Growth F-02): FAQ rows never carry a transform/translate, so a toggle cannot move the question mid-reveal (static closed/open look unchanged) */
body.tp main details.qa,html.gl-motion body.tp main details.qa.gl-rise{transform:none!important;translate:none!important;opacity:1!important}