:root {
  --ta-red: #DE0F3F;
  --ta-red-dark: #b70830;
  --ta-blue: #004884;
  --ta-blue-deep: #002b50;
  --ta-blue-ink: #001d36;
  --ta-white: #FFFFFF;
  --ta-paper: #f5f8fc;
  --ta-warm: #faf7f2;
  --ta-ink: #07182b;
  --ta-muted: #647287;
  --ta-line: rgba(0, 52, 95, .13);
  --ta-line-light: rgba(255,255,255,.20);
  --ta-glass: rgba(255,255,255,.64);
  --ta-glass-strong: rgba(255,255,255,.84);
  --ta-shadow: 0 22px 55px rgba(12, 42, 72, .12);
  --ta-shadow-heavy: 0 32px 78px rgba(0, 34, 66, .20);
  --ta-radius: 24px;
  --ta-radius-lg: 34px;
  --ta-serif: Georgia, "Times New Roman", serif;
  --ta-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--ta-paper); color: var(--ta-ink); font-family: var(--ta-sans); font-size: 16px; line-height: 1.5; overflow-x: hidden; }
body.modal-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid rgba(222,15,63,.42); outline-offset: 3px; }
img { max-width: 100%; height: auto; }
svg { display: block; width: 1em; height: 1em; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
[hidden] { display: none !important; }
::selection { background: var(--ta-red); color: #fff; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link:focus { z-index: 99; top: 10px; left: 10px; width: auto; height: auto; padding: 10px 14px; clip: auto; background: #fff; color: var(--ta-blue); }

.ta-site { position: relative; }
.site-main { position: relative; z-index: 1; }
.ta-shell { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.ta-page-glow { position: fixed; z-index: 0; width: 38vw; height: 38vw; min-width: 340px; min-height: 340px; border-radius: 50%; pointer-events: none; filter: blur(20px); opacity: .35; }
.ta-page-glow--one { top: -18vw; right: -15vw; background: rgba(222, 15, 63, .12); }
.ta-page-glow--two { bottom: 3vh; left: -25vw; background: rgba(0,72,132,.11); }

/* Shared type, cards and controls */
.eyebrow { display: inline-flex; align-items: center; gap: 9px; color: var(--ta-blue); font-size: 10px; font-weight: 850; letter-spacing: .135em; line-height: 1.2; text-transform: uppercase; }
.eyebrow::before { content: ''; display: inline-block; width: 20px; height: 2px; background: currentColor; }
.eyebrow--red { color: var(--ta-red); }
h1, h2, h3, h4, p { margin-top: 0; }
h1, h2, h3 { text-wrap: balance; }
h1, h2 { font-family: var(--ta-serif); font-weight: 400; letter-spacing: -.065em; line-height: .93; }
h1 em, h2 em { color: var(--ta-red); font-style: italic; }
.glass-card { border: 1px solid rgba(255,255,255,.72); border-radius: var(--ta-radius); background: var(--ta-glass); box-shadow: var(--ta-shadow); backdrop-filter: blur(18px) saturate(1.1); -webkit-backdrop-filter: blur(18px) saturate(1.1); }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 48px; padding: 13px 19px; border: 1px solid transparent; border-radius: 13px; background: transparent; color: var(--ta-ink); font-size: 12px; font-weight: 800; letter-spacing: .01em; line-height: 1.2; text-align: center; transition: transform .22s ease, box-shadow .22s ease, color .22s ease, background .22s ease, border-color .22s ease; }
.button svg { width: 17px; height: 17px; transition: transform .22s ease; }
.button:hover { transform: translateY(-3px); }
.button:hover svg { transform: translateX(4px); }
.button--primary { background: var(--ta-red); color: #fff; box-shadow: 0 12px 25px rgba(222,15,63,.22); }
.button--primary:hover { background: #ed164b; box-shadow: 0 17px 30px rgba(222,15,63,.32); }
.button--outline { border-color: rgba(0,72,132,.28); background: rgba(255,255,255,.45); color: var(--ta-blue); }
.button--outline:hover { border-color: var(--ta-blue); background: #fff; box-shadow: 0 13px 25px rgba(0,72,132,.12); }
.button--outline-on-dark { border-color: rgba(255,255,255,.42); color: #fff; background: rgba(255,255,255,.08); }
.button--outline-on-dark:hover { background: #fff; color: var(--ta-blue); }
.button--light { background: #fff; color: var(--ta-blue); }
.button--light:hover { box-shadow: 0 14px 25px rgba(0,0,0,.16); }
.button--wide { width: 100%; justify-content: space-between; }
.text-link { display: inline-flex; align-items: center; gap: 8px; border: 0; border-bottom: 1px solid currentColor; padding: 0 0 4px; background: none; color: var(--ta-blue); font-size: 12px; font-weight: 850; transition: color .2s ease, gap .2s ease; }
.text-link:hover { gap: 13px; color: var(--ta-red); }
.text-link--light { color: #fff; }
.text-link--light:hover { color: #ffd0dc; }
.status-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:#2abd88; box-shadow: 0 0 0 4px rgba(42,189,136,.14); }
.section { position: relative; padding: 110px 0; }
.section-heading { max-width: 730px; margin-bottom: 55px; }
.section-heading h2 { margin: 17px 0 14px; color: var(--ta-blue-deep); font-size: clamp(46px, 5vw, 72px); }
.section-heading p { max-width: 560px; margin-bottom: 0; color: var(--ta-muted); font-size: 15px; line-height: 1.75; }
.section-heading--center { margin-right: auto; margin-left: auto; text-align: center; }
.section-heading--center .eyebrow { justify-content: center; }
.section-heading--center p { margin-right: auto; margin-left: auto; }
.section-heading--split { display: flex; align-items: end; justify-content: space-between; gap: 55px; max-width: none; }
.section-heading--split > p { max-width: 390px; margin-bottom: 8px; }
.section-action { display: flex; justify-content: center; margin-top: 34px; }

/* Header */
.site-header { position: sticky; z-index: 30; top: 0; padding: 13px 0; transition: background .25s ease, box-shadow .25s ease, padding .25s ease; }
.site-header.is-scrolled { padding: 8px 0; background: rgba(248,251,255,.77); box-shadow: 0 10px 30px rgba(0,37,69,.08); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); }
.site-header__inner { display: flex; align-items: center; min-height: 55px; }
.site-header__brand { flex: 0 0 auto; }
.ta-brand { display: inline-flex; align-items: center; gap: 9px; }
.ta-brand-mark { display: grid; place-items: center; width: 35px; height: 35px; border-radius: 8px; background: var(--ta-red); color: #fff; box-shadow: 0 7px 14px rgba(222,15,63,.18); font-family: var(--ta-serif); font-size: 23px; font-weight: 700; line-height: 1; }
.ta-brand-mark span { position: relative; top: -1px; }
.ta-brand-lockup { display: grid; gap: 1px; }
.ta-brand-lockup strong { color: var(--ta-blue-deep); font-size: 16px; font-weight: 900; letter-spacing: -.05em; line-height: 1; }
.ta-brand-lockup strong b { color: var(--ta-red); font-weight: inherit; }
.ta-brand-lockup small { color: var(--ta-blue); font-size: 6.5px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.site-header__nav { margin-left: auto; }
.ta-menu, .footer-menu { display: flex; align-items: center; gap: 27px; padding: 0; margin: 0; list-style: none; }
.ta-menu a { position: relative; padding: 10px 0; color: #314259; font-size: 10px; font-weight: 800; text-transform: uppercase; transition: color .2s ease; }
.ta-menu a::after { position: absolute; right: 0; bottom: 5px; left: 0; width: 0; height: 2px; margin: auto; background: var(--ta-red); content: ''; transition: width .2s ease; }
.ta-menu .current-menu-item > a, .ta-menu a:hover { color: var(--ta-blue); }
.ta-menu .current-menu-item > a::after, .ta-menu a:hover::after { width: 12px; }
.site-header__actions { display:flex; align-items:center; margin-left: 34px; }
.header-call { display: inline-flex; align-items: center; gap: 8px; min-height: 39px; padding: 9px 15px 9px 9px; border-radius: 999px; background: var(--ta-red); color: #fff; box-shadow: 0 9px 18px rgba(222,15,63,.17); font-size: 10px; font-weight: 850; transition: transform .2s, box-shadow .2s; }
.header-call:hover { transform: translateY(-2px); box-shadow: 0 13px 22px rgba(222,15,63,.3); }
.header-call__icon { display:grid; place-items:center; width:21px; height:21px; border-radius: 50%; background: rgba(255,255,255,.2); }
.header-call svg { width: 12px; height: 12px; }
.menu-toggle { display:none; width:45px; height:45px; padding: 0; margin-left: 12px; border:1px solid rgba(0,72,132,.2); border-radius: 50%; background: rgba(255,255,255,.55); color: var(--ta-blue); }
.menu-toggle span { display:block; width:17px; height:1.5px; margin:4px auto; background: currentColor; transition: transform .2s, opacity .2s; }
.menu-toggle.is-open span:nth-child(1) { transform: translateY(5.5px) rotate(45deg); }
.menu-toggle.is-open span:nth-child(2) { opacity:0; }
.menu-toggle.is-open span:nth-child(3) { transform: translateY(-5.5px) rotate(-45deg); }
.mobile-navigation { position:absolute; top: calc(100% + 1px); right: 0; left: 0; padding: 13px 0 22px; border-top: 1px solid rgba(0,72,132,.1); background: rgba(247,250,255,.95); box-shadow: 0 18px 32px rgba(0,35,66,.12); backdrop-filter: blur(17px); -webkit-backdrop-filter: blur(17px); }
.mobile-navigation .ta-menu { display:grid; grid-template-columns:repeat(2,1fr); gap:0; border:1px solid var(--ta-line); border-radius: 15px; overflow: hidden; background: rgba(255,255,255,.75); }
.mobile-navigation .ta-menu li { border-right:1px solid var(--ta-line); border-bottom:1px solid var(--ta-line); }
.mobile-navigation .ta-menu li:nth-child(even) { border-right:0; }
.mobile-navigation .ta-menu li:nth-last-child(-n+2) { border-bottom:0; }
.mobile-navigation .ta-menu a { display:block; padding:15px; }
.mobile-navigation .ta-menu a::after { display:none; }
.mobile-navigation__actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:13px; }

/* Homepage hero */
.hero-home { position: relative; min-height: 720px; margin-top: -81px; padding: 151px 0 82px; overflow: hidden; background: linear-gradient(118deg, #fbfdff 0%, #f4f8fd 51%, #e7f0fa 100%); }
.hero-home::before { position:absolute; inset:0; content:''; background-image: linear-gradient(rgba(0,72,132,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(0,72,132,.045) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(90deg, #000 0%, #000 38%, transparent 76%); }
.hero-home__rail { position:absolute; z-index:1; top: 195px; bottom:75px; left: max(18px, calc((100% - 1375px)/2)); display:flex; align-items:center; gap:15px; color: var(--ta-blue); font-size:8px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; writing-mode:vertical-rl; }
.hero-home__rail i { width:2px; height:62px; background:var(--ta-red); }
.hero-home__light { position:absolute; border-radius:50%; filter: blur(3px); pointer-events:none; }
.hero-home__light--one { width:450px; height:450px; right:5%; top:80px; border:1px solid rgba(222,15,63,.13); box-shadow: inset 0 0 80px rgba(255,255,255,.7); }
.hero-home__light--two { width:270px; height:270px; right:33%; bottom:-150px; background:rgba(222,15,63,.07); }
.hero-home__grid { position:relative; z-index:2; display:grid; grid-template-columns: .91fr 1.09fr; align-items:center; gap: 18px; }
.hero-home__copy { padding: 27px 0 19px; }
.hero-home h1 { max-width: 570px; margin: 19px 0 24px; color: var(--ta-blue-deep); font-family: var(--ta-sans); font-size: clamp(53px, 5.45vw, 82px); font-weight: 800; letter-spacing: -.07em; line-height: .96; }
.hero-home h1 span, .hero-home h1 strong { display:block; }
.hero-home h1 strong { color:var(--ta-red); font-weight:800; }
.hero-home__copy > p { max-width:430px; margin-bottom: 27px; color: #526378; font-size: 14px; line-height:1.75; }
.hero-home__actions { display:flex; flex-wrap:wrap; align-items:center; gap: 12px; }
.button--play { padding: 8px 12px 8px 7px; border-radius:999px; }
.button--play i { display:grid; place-items:center; width:32px; height:32px; border: 1px solid rgba(0,72,132,.35); border-radius:50%; color:var(--ta-red); font-style:normal; }
.button--play i svg { width:14px; height:14px; fill: currentColor; stroke:none; }
.hero-home__mini-proof { display:flex; flex-wrap:wrap; gap:18px; margin-top:34px; color:#526b82; font-size:10px; font-weight:750; }
.hero-home__mini-proof span { display:flex; align-items:center; gap:7px; }
.hero-home__mini-proof svg { width:16px; height:16px; color:var(--ta-red); }
.hero-home__visual { position:relative; min-height: 480px; }
.visual-floor { position:absolute; right:-100px; bottom:-51px; left:4%; height:200px; border:1px solid rgba(0,72,132,.12); border-radius: 50% 50% 0 0; transform: perspective(400px) rotateX(57deg); background:linear-gradient(180deg, rgba(255,255,255,.5), rgba(0,72,132,.03)); }
.visual-skyline { position:absolute; right:-28px; bottom:35px; width:300px; height:285px; opacity:.18; }
.visual-skyline::after { position:absolute; bottom:0; left:0; width:100%; height:1px; background:var(--ta-blue); content:''; }
.visual-skyline i { position:absolute; bottom:0; display:block; width:38px; border:1px solid var(--ta-blue); border-bottom:0; background:linear-gradient(90deg, transparent 48%, rgba(0,72,132,.6) 49%, rgba(0,72,132,.6) 51%, transparent 52%); }
.visual-skyline i:nth-child(1) { left:7px; height:75px; }.visual-skyline i:nth-child(2) { left:49px; height:135px; }.visual-skyline i:nth-child(3) { left:93px; height:99px; }.visual-skyline i:nth-child(4) { left:139px; height:224px; width:45px; }.visual-skyline i:nth-child(5) { left:190px; height:158px; }.visual-skyline i:nth-child(6) { left:234px; height:112px; }
.glass-document { position:absolute; z-index:4; top:24px; left:19%; width:min(345px, 55vw); padding: 25px 28px 18px; border: 1px solid rgba(255,255,255,.82); border-radius: 5px 30px 5px 5px; background: rgba(255,255,255,.66); box-shadow: 0 30px 50px rgba(0,34,67,.18); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); transform: rotate(-2deg); }
.glass-document::before { position:absolute; top:-18px; right:-15px; width:99%; height:100%; border:1px solid rgba(0,72,132,.2); border-radius: 5px 31px 5px 5px; content:''; transform:rotate(3deg); }
.glass-document__top { position:relative; z-index:1; display:flex; flex-direction:column; margin-bottom:16px; }
.glass-document__top span { color:var(--ta-red); font-size:32px; font-weight:900; letter-spacing:-.06em; line-height:.9; }.glass-document__top small { color:var(--ta-blue-deep); font-size:14px; font-weight:850; letter-spacing:-.03em; }
.glass-document ul { position:relative; z-index:1; padding:0; margin:0; list-style:none; }.glass-document li { display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid rgba(0,72,132,.12); color:#243a52; font-size:12px; font-weight:750; }.glass-document li b { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:var(--ta-red); color:#fff; }.glass-document li b svg { width:13px; height:13px; }.glass-document__footer { position:relative; z-index:1; display:flex; align-items:center; gap:7px; margin-top:13px; color:var(--ta-blue); font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.06em; }
.visual-cube { position:absolute; z-index:5; display:block; width:57px; height:57px; transform: rotate(30deg) skew(-2deg, -2deg); box-shadow:14px 14px 19px rgba(0,34,67,.18); }.visual-cube::before, .visual-cube::after { position:absolute; content:''; }.visual-cube span { display:block; width:100%; height:100%; border:1px solid rgba(255,255,255,.9); background:inherit; }.visual-cube::before { right:-15px; bottom:-12px; width:15px; height:100%; background:rgba(0,0,0,.13); transform:skewY(-42deg); transform-origin:left top; }.visual-cube::after { right:-15px; bottom:-12px; width:100%; height:12px; background:rgba(255,255,255,.48); transform:skewX(-48deg); transform-origin:left top; }.visual-cube--red { top:199px; left:9%; background:rgba(222,15,63,.82); }.visual-cube--blue { right:20%; bottom:87px; width:48px; height:48px; background:rgba(0,72,132,.81); }.visual-cube--small { right:6%; bottom:13px; width:65px; height:65px; background:rgba(222,15,63,.90); }
.visual-proof { position:absolute; z-index:6; right:0; bottom:83px; display:grid; grid-template-columns:1fr auto; gap:3px 15px; width:149px; padding:17px; border-radius:15px; transform:rotate(2deg); }.visual-proof small { color:var(--ta-muted); font-size:8px; font-weight:800; text-transform:uppercase; }.visual-proof strong { color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:20px; letter-spacing:-.06em; line-height:.92; }.visual-proof i { grid-row:1/3; grid-column:2; display:grid; place-items:center; width:31px; height:31px; border-radius:50%; background:rgba(222,15,63,.12); color:var(--ta-red); font-style:normal; }.visual-proof i svg { width:17px; }

/* Services */
.section--services { padding-top: 103px; background: linear-gradient(180deg, rgba(255,255,255,.42), rgba(245,248,252,.92)); }
.service-grid { display:grid; grid-template-columns:repeat(5, 1fr); gap:13px; }
.service-card { min-height:187px; overflow:hidden; border:1px solid rgba(0,72,132,.09); border-radius:18px; background: rgba(255,255,255,.66); box-shadow: 0 9px 20px rgba(5,48,84,.05); transition: transform .25s ease, box-shadow .25s ease, background .25s ease; }.service-card:hover { z-index:2; transform:translateY(-8px); background:#fff; box-shadow: 0 20px 35px rgba(0,38,69,.13); }.service-card__link { position:relative; display:flex; flex-direction:column; height:100%; padding:19px 17px; }.service-card__orb { display:grid; place-items:center; width:35px; height:35px; margin-bottom:18px; border:1px solid rgba(222,15,63,.22); border-radius:50%; background:rgba(222,15,63,.055); color:var(--ta-red); }.service-card__orb svg { width:17px; height:17px; }.service-card__badge { position:absolute; top:19px; right:14px; max-width:60px; color:#8190a1; font-size:7px; font-weight:850; letter-spacing:.06em; line-height:1.25; text-align:right; text-transform:uppercase; }.service-card h3 { margin:0 0 7px; color:var(--ta-blue-deep); font-size:13px; font-weight:850; letter-spacing:-.04em; line-height:1.15; }.service-card p { display:-webkit-box; overflow:hidden; margin:0; color:var(--ta-muted); font-size:9px; line-height:1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }.service-card__arrow { display:grid; place-items:center; width:25px; height:25px; margin-top:auto; margin-left:auto; border:1px solid rgba(0,72,132,.2); border-radius:50%; color:var(--ta-blue); transition:background .2s, color .2s; }.service-card__arrow svg { width:14px; }.service-card:hover .service-card__arrow { background:var(--ta-red); color:#fff; border-color:var(--ta-red); }

/* Why */
.why-section { padding: 26px 0 100px; }.why-section__shell { display:grid; grid-template-columns:.8fr 1.9fr; gap:35px; padding:38px; overflow:hidden; background:linear-gradient(125deg, rgba(255,255,255,.85), rgba(235,244,252,.75)); }.why-section__headline { align-self:center; }.why-section h2 { margin:14px 0; color:var(--ta-blue-deep); font-family:var(--ta-sans); font-size:clamp(29px,3.1vw,43px); font-weight:800; letter-spacing:-.06em; }.why-section h2 em { font-style:normal; }.why-section__headline p { margin:0; color:var(--ta-muted); font-size:11px; line-height:1.6; }.why-section__cards { display:grid; grid-template-columns:repeat(4,1fr); gap:13px; }.why-card { position:relative; padding:16px 10px; text-align:center; }.why-card::after { position:absolute; top:19px; right:-7px; bottom:19px; width:1px; background:var(--ta-line); content:''; }.why-card:last-child::after { display:none; }.why-card i { display:grid; place-items:center; width:36px; height:36px; margin:0 auto 12px; border:1px solid rgba(222,15,63,.22); border-radius:50%; color:var(--ta-red); font-style:normal; }.why-card i svg { width:17px; }.why-card h3 { margin:0 0 7px; color:var(--ta-blue-deep); font-size:11px; font-weight:850; letter-spacing:-.03em; }.why-card p { margin:0; color:var(--ta-muted); font-size:9px; line-height:1.48; }

/* Interactive tools */
.tools-section { overflow:hidden; background: linear-gradient(180deg, #f4f8fc, #fff); }.tools-section::before { position:absolute; top:270px; left:-220px; width:560px; height:560px; border:1px solid rgba(0,72,132,.09); border-radius:50%; content:''; }.tool-shell { position:relative; display:grid; grid-template-columns:.72fr 1.28fr; gap:34px; min-height:590px; margin-top:33px; padding:46px; overflow:hidden; }.tool-shell__glow { position:absolute; top:-120px; left:-100px; width:290px; height:290px; border-radius:50%; background:rgba(222,15,63,.07); filter:blur(4px); }.tool-shell__intro { position:relative; z-index:1; align-self:start; }.tool-badge { display:inline-flex; align-items:center; gap:8px; min-height:31px; padding:6px 10px 6px 7px; border:1px solid rgba(222,15,63,.16); border-radius:999px; background:rgba(255,255,255,.65); color:var(--ta-blue); font-size:9px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }.tool-badge i { display:grid; place-items:center; width:20px; height:20px; border-radius:50%; background:var(--ta-red); color:#fff; font-style:normal; }.tool-badge i svg { width:12px; }.tool-badge--light { border-color:rgba(255,255,255,.25); background:rgba(255,255,255,.09); color:#e5f4ff; }.tool-badge--light i { background:#fff; color:var(--ta-red); }.tool-shell h2 { margin:20px 0 17px; color:var(--ta-blue-deep); font-size:clamp(39px,4.1vw,60px); }.tool-shell h2 em { color:var(--ta-red); }.tool-shell__intro > p { max-width:360px; margin-bottom:24px; color:var(--ta-muted); font-size:13px; line-height:1.75; }.tool-shell__note { display:flex; gap:10px; max-width:330px; padding-top:16px; border-top:1px solid var(--ta-line); color:#587087; font-size:10px; line-height:1.55; }.tool-shell__note i { color:var(--ta-red); }.tool-shell__note i svg { width:16px; height:16px; }.tool-calculator { position:relative; z-index:2; min-height: 450px; padding:25px; border:1px solid rgba(255,255,255,.87); border-radius:20px; background:rgba(255,255,255,.77); box-shadow: 0 21px 42px rgba(0,40,75,.11); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); }.tool-form__topline { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:19px; color:var(--ta-muted); font-size:9px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }.tool-form__topline b { color:var(--ta-blue); }.tool-form__topline small { color:#93a0ae; font-size:7px; }.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }.field { display:grid; gap:7px; }.field--full { grid-column:1/-1; }.field label { color:var(--ta-blue-deep); font-size:10px; font-weight:800; line-height:1.35; }.field label span { color:var(--ta-red); }.field input, .field select, .field textarea { width:100%; min-height:43px; padding:10px 12px; border:1px solid rgba(0,72,132,.16); border-radius:9px; outline:0; background:rgba(255,255,255,.72); color:var(--ta-ink); font-size:12px; transition:border .2s, box-shadow .2s, background .2s; }.field textarea { min-height:90px; resize:vertical; }.field select { appearance:none; background-image:linear-gradient(45deg, transparent 50%, var(--ta-blue) 50%),linear-gradient(135deg, var(--ta-blue) 50%, transparent 50%); background-position:calc(100% - 15px) 17px,calc(100% - 11px) 17px; background-size:4px 4px,4px 4px; background-repeat:no-repeat; padding-right:30px; }.field input:focus, .field select:focus, .field textarea:focus { border-color:var(--ta-red); box-shadow:0 0 0 3px rgba(222,15,63,.1); background:#fff; }.input-affix { position:relative; }.input-affix span { position:absolute; z-index:1; top:12px; left:12px; color:var(--ta-muted); font-size:12px; }.input-affix input { padding-left:25px; }.deduction-details { margin:17px 0; border-top:1px solid var(--ta-line); border-bottom:1px solid var(--ta-line); }.deduction-details summary { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:14px 0; color:var(--ta-blue); font-size:11px; font-weight:850; cursor:pointer; list-style:none; }.deduction-details summary::-webkit-details-marker { display:none; }.deduction-details summary span { color:var(--ta-red); font-size:9px; letter-spacing:.07em; text-transform:uppercase; }.deduction-details summary i { display:grid; place-items:center; width:20px; height:20px; border:1px solid rgba(0,72,132,.22); border-radius:50%; color:var(--ta-red); font-size:17px; font-style:normal; font-weight:400; transition:transform .2s; }.deduction-details[open] summary i { transform:rotate(45deg); }.deduction-details > p { margin:0 0 13px; color:var(--ta-muted); font-size:9px; line-height:1.5; }.deduction-details .form-grid { padding-bottom:16px; }.tool-form__error { min-height:17px; margin:7px 0 0; color:var(--ta-red); font-size:10px; font-weight:750; }.tool-result__head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:17px; }.tool-reset { border:0; background:none; color:var(--ta-blue); font-size:10px; font-weight:850; text-decoration:underline; }.tax-result__total { padding:19px 20px; border-radius:13px; background:linear-gradient(120deg, rgba(222,15,63,.96), #f02c5b); color:#fff; box-shadow: 0 13px 22px rgba(222,15,63,.17); }.tax-result__total small { display:block; margin-bottom:4px; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.tax-result__total strong { display:block; font-family:var(--ta-serif); font-size:42px; font-weight:400; letter-spacing:-.065em; line-height:1; }.tax-result__total span { display:block; margin-top:7px; font-size:10px; opacity:.9; }.tax-result__compare { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-top:11px; }.tax-compare-card { padding:11px; border:1px solid rgba(0,72,132,.12); border-radius:10px; background:rgba(255,255,255,.6); }.tax-compare-card.is-selected { border-color:rgba(222,15,63,.42); background:rgba(222,15,63,.055); }.tax-compare-card small { display:block; color:var(--ta-muted); font-size:9px; }.tax-compare-card b { display:block; margin-top:2px; color:var(--ta-blue-deep); font-size:18px; letter-spacing:-.05em; }.tool-result__columns { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:20px; }.tool-result__columns h3, .attention-list h3 { margin:0 0 9px; color:var(--ta-blue-deep); font-size:11px; font-weight:850; }.tool-result__columns ul, .attention-list ul { display:grid; gap:7px; padding:0; margin:0; list-style:none; }.tool-result__columns li, .attention-list li { position:relative; padding-left:14px; color:#587087; font-size:10px; line-height:1.45; }.tool-result__columns li::before, .attention-list li::before { position:absolute; top:.5em; left:0; width:6px; height:6px; border-radius:50%; background:var(--ta-red); content:''; }.tool-result__cta { display:flex; flex-wrap:wrap; gap:9px; margin-top:21px; }.tool-result__cta .button { flex:1 1 190px; font-size:10px; }.tool-disclaimer { margin:17px 0 0; color:#718094; font-size:9px; line-height:1.55; }.tool-disclaimer strong { color:var(--ta-blue); }
/* Compliance health tool */
.tool-shell--health { grid-template-columns:.75fr 1.25fr; min-height:635px; border:1px solid rgba(255,255,255,.12); border-radius:var(--ta-radius-lg); background:linear-gradient(135deg, var(--ta-blue-deep), var(--ta-blue) 65%, #0c5893); color:#fff; box-shadow:var(--ta-shadow-heavy); }.tool-shell--health::before { position:absolute; inset:0; content:''; opacity:.34; background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(90deg, #000, transparent 80%); }.tool-shell--health__orbit { position:absolute; border:1px solid rgba(255,255,255,.2); border-radius:50%; pointer-events:none; }.orbit-a { top:-220px; right:-80px; width:610px; height:610px; }.orbit-b { top:-100px; right:40px; width:380px; height:380px; border-style:dashed; animation: ta-spin 32s linear infinite; }.tool-shell--health .tool-shell__intro { z-index:2; }.tool-shell--health h2 { color:#fff; }.tool-shell--health h2 em { color:#ff6688; }.tool-shell--health .tool-shell__intro > p { color:#c1d9eb; }.health-legend { display:grid; gap:8px; margin-top:33px; color:#d7e9f6; font-size:9px; font-weight:750; }.health-legend span { display:flex; align-items:center; gap:8px; }.legend-dot { width:8px; height:8px; border-radius:50%; }.legend-dot--good { background:#6ee0b2; }.legend-dot--attention { background:#ffd373; }.legend-dot--action { background:#ff6688; }.tool-calculator--dark { border-color:rgba(255,255,255,.25); background:rgba(0,24,47,.33); box-shadow:0 25px 50px rgba(0,17,34,.27); color:#fff; }.tool-form--dark .tool-form__topline { color:#b9d7eb; }.tool-form--dark .tool-form__topline b { color:#fff; }.tool-form--dark .field label { color:#e2f1fb; }.tool-form--dark .field input, .tool-form--dark .field select { border-color:rgba(255,255,255,.18); background:rgba(255,255,255,.10); color:#fff; }.tool-form--dark .field input::placeholder { color:#a3bdd0; }.tool-form--dark .field select option { color:var(--ta-ink); }.tool-form--dark .field select { background-image:linear-gradient(45deg, transparent 50%, #fff 50%),linear-gradient(135deg, #fff 50%, transparent 50%); }.tool-form--dark .field input:focus, .tool-form--dark .field select:focus { border-color:#fff; background:rgba(255,255,255,.16); box-shadow:0 0 0 3px rgba(255,255,255,.1); }.registration-checks { display:grid; grid-template-columns:1fr 1fr; gap:9px; padding:16px 0; margin:15px 0 17px; border:0; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }.registration-checks legend { grid-column:1/-1; width:100%; padding:0; margin-bottom:1px; color:#d5e8f5; font-size:10px; font-weight:800; }.registration-checks legend small { color:#a8c8db; font-size:8px; font-weight:600; }.registration-checks label { display:flex; align-items:center; gap:7px; color:#e7f3fb; font-size:10px; cursor:pointer; }.registration-checks input { width:15px; height:15px; accent-color:var(--ta-red); }.compliance-result { color:#fff; }.tool-reset--light { color:#fff; }.score-overview { display:grid; grid-template-columns:111px 1fr; align-items:center; gap:18px; padding:2px 0 17px; border-bottom:1px solid rgba(255,255,255,.18); }.score-ring { --score: 0%; position:relative; display:grid; place-items:center; width:108px; height:108px; border-radius:50%; background:conic-gradient(#ff5479 var(--score), rgba(255,255,255,.17) 0); }.score-ring::before { position:absolute; inset:8px; border-radius:50%; background:var(--ta-blue-deep); content:''; }.score-ring > div { position:relative; z-index:1; display:flex; align-items:baseline; gap:2px; }.score-ring strong { color:#fff; font-family:var(--ta-serif); font-size:40px; font-weight:400; letter-spacing:-.08em; line-height:1; }.score-ring span { color:#bcd8e9; font-size:11px; }.score-overview p { margin:0 0 4px; color:#bcd9ea; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }.score-overview h3 { margin:0 0 5px; color:#fff; font-family:var(--ta-serif); font-size:24px; font-weight:400; letter-spacing:-.05em; line-height:1; }.score-overview > div:last-child > span { color:#d0e4f1; font-size:10px; line-height:1.5; }.score-breakdown { display:grid; grid-template-columns:1fr 1fr; gap:10px 15px; padding:17px 0; }.score-category { display:grid; grid-template-columns:1fr auto; gap:4px 10px; }.score-category span { color:#fff; font-size:10px; font-weight:750; }.score-category b { font-size:9px; }.score-category b.is-good { color:#75e0b7; }.score-category b.is-attention { color:#ffd378; }.score-category b.is-action { color:#ff7f9a; }.score-category i { position:relative; grid-column:1/-1; height:4px; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.15); }.score-category i::after { position:absolute; inset:0 auto 0 0; width:var(--bar, 0%); border-radius:inherit; background:var(--bar-color,#ff6688); content:''; }.attention-list { padding:14px; border:1px solid rgba(255,255,255,.16); border-radius:12px; background:rgba(255,255,255,.07); }.attention-list h3 { color:#fff; }.attention-list li { color:#d5e7f3; }.attention-list li::before { background:#ff6c8b; }.tool-disclaimer--light { color:#b9d4e7; }.tool-disclaimer--light strong { color:#fff; }

/* Process and stage */
.process-section { padding-top:92px; background:linear-gradient(180deg,#fff,#f4f8fc); }.process-line { position:relative; display:grid; grid-template-columns:repeat(5,1fr); gap:0; padding:0; margin:55px 0 0; list-style:none; }.process-line::before { position:absolute; top:14px; right:8%; left:8%; height:1px; background:rgba(0,72,132,.25); content:''; }.process-line li { position:relative; padding:0 13px 0 0; }.process-line li:last-child { padding-right:0; }.process-line b { position:relative; z-index:1; display:grid; place-items:center; width:30px; height:30px; margin-bottom:21px; border:2px solid #fff; border-radius:50%; background:var(--ta-blue); box-shadow:0 0 0 1px rgba(0,72,132,.5); color:#fff; font-size:9px; }.process-line li:first-child b { background:var(--ta-red); box-shadow:0 0 0 1px var(--ta-red); }.process-line h3 { margin:0 0 7px; color:var(--ta-blue-deep); font-size:14px; letter-spacing:-.04em; }.process-line p { max-width:160px; margin:0; color:var(--ta-muted); font-size:10px; line-height:1.55; }.stage-section { position:relative; overflow:hidden; padding:91px 0; background:var(--ta-blue-deep); color:#fff; }.stage-section::before { position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px); background-size:44px 44px; content:''; }.stage-section__inner { position:relative; z-index:1; display:grid; grid-template-columns:.77fr 1.23fr; gap:55px; align-items:center; }.stage-section h2 { margin:15px 0 17px; color:#fff; font-size:clamp(39px,4.3vw,62px); }.stage-section h2 em { color:#ff5c80; }.stage-section__copy > p { max-width:350px; margin-bottom:23px; color:#b7d3e6; font-size:13px; line-height:1.7; }.stage-section .eyebrow { color:#ff94aa; }.stage-section .text-link { color:#fff; }.stage-tabs { padding:17px; border:1px solid rgba(255,255,255,.2); border-radius:20px; background:rgba(255,255,255,.07); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); }.stage-tabs__controls { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; }.stage-tabs__controls button { min-height:39px; padding:7px; border:1px solid rgba(255,255,255,.16); border-radius:9px; background:transparent; color:#c4dae9; font-size:10px; font-weight:800; }.stage-tabs__controls button[aria-selected="true"] { border-color:#fff; background:#fff; color:var(--ta-blue); }.stage-panel { display:grid; grid-template-columns:auto 1fr; gap:11px 16px; min-height:179px; padding:29px 16px 10px; }.stage-panel i { grid-row:1/3; display:grid; place-items:center; width:46px; height:46px; border:1px solid rgba(255,255,255,.37); border-radius:50%; color:#ff85a0; font-style:normal; }.stage-panel i svg { width:22px; }.stage-panel h3 { align-self:end; margin:0; color:#fff; font-family:var(--ta-serif); font-size:29px; font-weight:400; letter-spacing:-.06em; }.stage-panel p { grid-column:2; max-width:350px; margin:0; color:#bfd8e8; font-size:11px; line-height:1.6; }.stage-panel a { grid-column:2; align-self:end; color:#fff; font-size:10px; font-weight:850; text-decoration:underline; text-underline-offset:4px; }

/* CTA and footer */
.cta-section { position:relative; overflow:hidden; padding:95px 0; background:linear-gradient(125deg,#f7f9fc,#e8f1fb); }.cta-section__backdrop { position:absolute; inset:0; overflow:hidden; }.cta-section__backdrop span { position:absolute; border:1px solid rgba(222,15,63,.13); border-radius:50%; }.cta-section__backdrop span:nth-child(1) { right:-240px; bottom:-440px; width:810px; height:810px; }.cta-section__backdrop span:nth-child(2) { right:-154px; bottom:-353px; width:630px; height:630px; }.cta-section__backdrop span:nth-child(3) { right:-59px; bottom:-263px; width:450px; height:450px; }.cta-section__inner { position:relative; z-index:1; display:grid; grid-template-columns:.73fr 1.27fr; align-items:center; gap:51px; }.cta-chess { position:relative; min-height:284px; }.cta-chess__base { position:absolute; bottom:0; left:9%; width:250px; height:98px; border:1px solid rgba(0,72,132,.14); border-radius:50%; background:rgba(255,255,255,.54); transform:perspective(330px) rotateX(55deg); }.cta-chess__ring { position:absolute; bottom:30px; left:21%; width:160px; height:160px; border:11px solid rgba(222,15,63,.14); border-radius:50%; }.cta-chess__piece { position:absolute; z-index:1; bottom:44px; left:34%; width:69px; height:155px; border-radius:38px 38px 14px 14px; background:linear-gradient(90deg,#a80930,#ec234e 53%,#a80930); box-shadow:17px 19px 21px rgba(0,27,49,.17); }.cta-chess__piece::before { position:absolute; top:-46px; left:8px; width:54px; height:54px; border-radius:9px 9px 50% 50%; background:inherit; content:''; }.cta-chess__piece::after { position:absolute; bottom:-19px; left:-23px; width:116px; height:29px; border-radius:50%; background:inherit; content:''; }.cta-section h2 { margin:15px 0; color:var(--ta-blue-deep); font-family:var(--ta-sans); font-size:clamp(36px,4.1vw,58px); font-weight:800; letter-spacing:-.065em; }.cta-section h2 em { font-style:normal; }.cta-section__copy > p { max-width:550px; margin-bottom:20px; color:var(--ta-muted); font-size:13px; line-height:1.65; }.cta-contact-options { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:10px; max-width:540px; }.cta-contact-card { display:flex; align-items:center; gap:11px; min-width:0; padding:12px; border:1px solid rgba(0,72,132,.1); border-radius:11px; background:rgba(255,255,255,.61); transition:transform .2s, box-shadow .2s; }.cta-contact-card:hover { transform:translateY(-3px); box-shadow:0 12px 20px rgba(0,38,69,.1); }.cta-contact-card i { display:grid; place-items:center; flex:0 0 auto; width:30px; height:30px; border-radius:50%; background:rgba(0,72,132,.08); color:var(--ta-blue); font-style:normal; }.cta-contact-card--phone { background:var(--ta-red); color:#fff; }.cta-contact-card--phone i { background:rgba(255,255,255,.17); color:#fff; }.cta-contact-card svg { width:15px; }.cta-contact-card span { display:grid; min-width:0; color:inherit; font-size:10px; font-weight:850; }.cta-contact-card small { color:inherit; font-size:8px; font-weight:700; opacity:.8; }.cta-buttons { display:flex; flex-wrap:wrap; gap:10px; margin-top:15px; }
.site-footer { position:relative; z-index:1; padding-top:70px; background:#041425; color:#fff; }.site-footer__grid { display:grid; grid-template-columns:1.25fr .66fr .82fr 1.1fr; gap:43px; padding-bottom:48px; }.footer-eyebrow { margin:0 0 11px; color:#ee6a88; font-size:9px; font-weight:850; letter-spacing:.14em; }.site-footer h2 { margin:0 0 15px; color:#fff; font-size:clamp(30px,3vw,42px); }.site-footer__intro > p:not(.footer-eyebrow) { max-width:290px; color:#a9bfd0; font-size:11px; line-height:1.7; }.footer-whatsapp { display:inline-flex; align-items:center; gap:8px; margin-top:11px; color:#fff; font-size:10px; font-weight:800; text-decoration:underline; text-underline-offset:5px; }.footer-whatsapp svg { width:15px; }.footer-heading { margin:4px 0 17px; color:#84b4d5; font-size:9px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }.footer-menu { display:grid; gap:10px; }.footer-menu a { color:#e1ecf3; font-size:11px; transition:color .2s; }.footer-menu a:hover { color:#ff6d8c; }.site-footer__contact { display:grid; align-content:start; gap:14px; }.site-footer__contact .footer-heading { margin-bottom:2px; }.footer-contact-item { display:flex; align-items:flex-start; gap:10px; color:#e3edf4; font-size:11px; line-height:1.45; }.footer-contact-item:hover span { color:#fff; }.footer-contact-item i { display:grid; place-items:center; flex:0 0 auto; width:25px; height:25px; margin-top:1px; border-radius:50%; background:rgba(255,255,255,.09); color:#ff6687; font-style:normal; }.footer-contact-item i svg { width:13px; }.footer-contact-item span { display:grid; transition:color .2s; }.footer-contact-item small { color:#86a8c0; font-size:8px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }.site-footer__bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:62px; border-top:1px solid rgba(255,255,255,.13); color:#7d9aaf; font-size:9px; }.site-footer__bottom > div { display:flex; gap:19px; }.site-footer__bottom a:hover { color:#fff; }

/* Inner pages */
.inner-hero { position:relative; overflow:hidden; padding:123px 0 83px; background:linear-gradient(125deg,#f9fcff,#eaf3fb); }.inner-hero::before { position:absolute; top:-230px; right:-70px; width:590px; height:590px; border:1px solid rgba(0,72,132,.11); border-radius:50%; content:''; }.inner-hero--simple h1 { max-width:780px; margin:17px 0 0; color:var(--ta-blue-deep); font-size:clamp(53px,6vw,88px); }.inner-hero--simple > .ta-shell > p { max-width:560px; margin:19px 0 0; color:var(--ta-muted); }.page-content-section { min-height:350px; }.prose { max-width:860px; }.prose__card { padding:37px; }.prose__card h1,.prose__card h2,.prose__card h3 { color:var(--ta-blue-deep); }.prose__card p,.prose__body p { color:#536579; line-height:1.75; }.post-list { display:grid; gap:17px; max-width:800px; }.post-list__item { padding:28px; }.post-list__item h2 { margin:12px 0; color:var(--ta-blue-deep); font-size:32px; }.post-list__item p { color:var(--ta-muted); }.error-page { min-height:64vh; display:grid; align-items:center; }.error-page h1 { margin-bottom:17px; }.error-page .hero-home__actions { margin-top:26px; }
/* Services page */
.services-hero { padding-bottom:87px; }.services-hero__grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr .78fr; gap:69px; align-items:center; }.services-hero h1,.why-hero h1,.process-hero h1,.about-hero h1,.contact-hero h1,.pricing-hero h1 { margin:19px 0; color:var(--ta-blue-deep); font-size:clamp(50px,5.8vw,82px); }.services-hero p { max-width:535px; margin-bottom:27px; color:var(--ta-muted); font-size:14px; line-height:1.72; }.services-hero__board { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:58px 21px 21px; border-radius:22px 22px 70px 22px; transform:rotate(1.5deg); }.services-hero__board::before { position:absolute; top:14px; right:0; left:0; height:1px; background:var(--ta-line); content:''; }.services-hero__board-label { position:absolute; top:20px; left:21px; color:var(--ta-red); font-size:8px; font-weight:850; letter-spacing:.11em; }.services-hero__board > div { display:grid; place-items:center; gap:8px; min-height:96px; border:1px solid rgba(0,72,132,.11); border-radius:13px; color:var(--ta-blue-deep); font-size:10px; font-weight:800; text-align:center; }.services-hero__board i { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:rgba(222,15,63,.07); color:var(--ta-red); font-style:normal; }.services-hero__board svg { width:15px; }.directory-filter { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin:-10px 0 28px; }.directory-filter button { padding:9px 13px; border:1px solid rgba(0,72,132,.15); border-radius:999px; background:rgba(255,255,255,.56); color:var(--ta-blue); font-size:10px; font-weight:800; transition:all .2s; }.directory-filter button:hover,.directory-filter button.is-active { border-color:var(--ta-red); background:var(--ta-red); color:#fff; }.directory-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }.directory-card { display:flex; flex-direction:column; min-height:262px; padding:20px; transition:transform .22s, box-shadow .22s; }.directory-card:hover { transform:translateY(-6px); box-shadow:0 22px 35px rgba(0,38,69,.15); }.directory-card__top { display:flex; align-items:start; justify-content:space-between; }.directory-card__num { color:#8194a7; font-family:var(--ta-serif); font-size:23px; letter-spacing:-.06em; }.directory-card__icon { display:grid; place-items:center; width:34px; height:34px; border:1px solid rgba(222,15,63,.22); border-radius:50%; background:rgba(222,15,63,.06); color:var(--ta-red); }.directory-card__icon svg { width:16px; }.directory-card__group { display:block; margin-top:22px; color:var(--ta-red); font-size:8px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }.directory-card h2 { margin:7px 0 10px; color:var(--ta-blue-deep); font-family:var(--ta-sans); font-size:20px; font-weight:850; letter-spacing:-.055em; line-height:1.04; }.directory-card p { margin:0; color:var(--ta-muted); font-size:10px; line-height:1.55; }.directory-card__bottom { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; padding-top:16px; border-top:1px solid var(--ta-line); color:var(--ta-blue); font-size:10px; font-weight:850; }.directory-card__bottom a { display:grid; place-items:center; width:27px; height:27px; border-radius:50%; background:var(--ta-blue); color:#fff; }.directory-card__bottom svg { width:14px; }.directory-empty { margin-top:20px; color:var(--ta-muted); text-align:center; }.pricing-explainer { background:linear-gradient(180deg,transparent,rgba(231,241,250,.7)); }.pricing-explainer__grid { display:grid; grid-template-columns:1fr 1fr; gap:75px; align-items:center; }.pricing-explainer h2 { margin:16px 0; color:var(--ta-blue-deep); font-size:clamp(41px,4.4vw,63px); }.pricing-explainer > div > p { max-width:465px; color:var(--ta-muted); font-size:13px; line-height:1.7; }.pricing-explainer__points { display:grid; gap:0; padding:17px 24px; }.pricing-explainer__points div { display:grid; grid-template-columns:35px 1fr; gap:12px; align-items:center; padding:15px 0; border-bottom:1px solid var(--ta-line); }.pricing-explainer__points div:last-child { border:0; }.pricing-explainer__points i { display:grid; place-items:center; width:29px; height:29px; border-radius:50%; background:var(--ta-red); color:#fff; font-size:9px; font-style:normal; font-weight:800; }.pricing-explainer__points p { margin:0; color:var(--ta-muted); font-size:11px; line-height:1.5; }.pricing-explainer__points b { color:var(--ta-blue-deep); }
/* Service single */
.service-hero { position:relative; overflow:hidden; padding:132px 0 90px; background:linear-gradient(125deg,#f8fbff,#eaf3fb); }.service-hero__deco { position:absolute; border:1px solid rgba(0,72,132,.12); border-radius:50%; }.service-hero__deco--one { top:-250px; right:-90px; width:680px; height:680px; }.service-hero__deco--two { top:-103px; right:25px; width:420px; height:420px; border-style:dashed; }.service-hero__grid { position:relative; z-index:1; display:grid; grid-template-columns:1.2fr .8fr; gap:80px; align-items:center; }.breadcrumb { display:inline-flex; gap:8px; margin-bottom:26px; color:var(--ta-blue); font-size:10px; font-weight:800; }.breadcrumb:hover { color:var(--ta-red); }.service-hero h1 { max-width:620px; margin:16px 0; color:var(--ta-blue-deep); font-size:clamp(49px,5.5vw,78px); }.service-hero__grid > div > p { max-width:595px; margin-bottom:27px; color:var(--ta-muted); font-size:14px; line-height:1.75; }.service-hero__actions { display:flex; flex-wrap:wrap; gap:10px; }.service-hero__quote { position:relative; padding:29px; overflow:hidden; border-radius:23px 60px 23px 23px; }.service-hero__quote > i { display:grid; place-items:center; width:49px; height:49px; margin-bottom:26px; border-radius:50%; background:var(--ta-red); color:#fff; font-style:normal; }.service-hero__quote > i svg { width:23px; }.service-hero__quote small { display:block; color:var(--ta-muted); font-size:9px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }.service-hero__quote strong { display:block; margin:6px 0 12px; color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:31px; font-weight:400; letter-spacing:-.06em; line-height:.96; }.service-hero__quote p { max-width:280px; margin:0; color:var(--ta-muted); font-size:10px; line-height:1.65; }.service-hero__quote-line { display:block; height:1px; margin:20px 0 13px; background:var(--ta-line); }.service-hero__quote b { display:flex; align-items:center; gap:7px; color:var(--ta-blue); font-size:10px; }.service-hero__quote b svg { width:14px; color:var(--ta-red); }.service-detail__grid { display:grid; grid-template-columns:1.1fr .9fr; gap:95px; align-items:start; }.service-detail h2 { margin:16px 0 25px; color:var(--ta-blue-deep); font-size:clamp(43px,4.5vw,65px); }.prose__body p { max-width:620px; font-size:14px; }.included-card { padding:31px; }.included-card ul { display:grid; gap:0; padding:0; margin:24px 0 0; list-style:none; }.included-card li { display:flex; align-items:center; gap:12px; padding:13px 0; border-bottom:1px solid var(--ta-line); color:var(--ta-blue-deep); font-size:12px; font-weight:750; }.included-card li:last-child { border-bottom:0; }.included-card li i { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:rgba(222,15,63,.1); color:var(--ta-red); }.included-card li svg { width:13px; }.service-path-section { padding:100px 0; background:linear-gradient(180deg,#fff,#f0f6fb); }.service-path { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; max-width:920px; margin:53px auto 0; border:1px solid var(--ta-line); background:var(--ta-line); }.service-path article { min-height:215px; padding:25px; background:rgba(255,255,255,.85); }.service-path b { color:var(--ta-red); font-family:var(--ta-serif); font-size:38px; font-weight:400; letter-spacing:-.07em; }.service-path h3 { margin:26px 0 10px; color:var(--ta-blue-deep); font-size:19px; letter-spacing:-.05em; }.service-path p { margin:0; color:var(--ta-muted); font-size:11px; line-height:1.6; }.service-contact-band { position:relative; overflow:hidden; padding:70px 0; background:var(--ta-blue-deep); color:#fff; }.service-contact-band::before { position:absolute; top:-210px; right:-70px; width:530px; height:530px; border:1px solid rgba(255,255,255,.16); border-radius:50%; content:''; }.service-contact-band__inner { position:relative; z-index:1; display:flex; align-items:end; justify-content:space-between; gap:40px; }.service-contact-band .eyebrow { color:#ff99af; }.service-contact-band h2 { margin:14px 0 0; color:#fff; font-size:clamp(37px,4.2vw,60px); }.service-contact-band h2 em { color:#ff6989; }.service-contact-band__inner > div:last-child { display:grid; justify-items:start; gap:17px; }
/* Why, process, about pages */
.why-hero { padding-bottom:94px; }.why-hero__grid,.process-hero__grid,.about-hero__grid,.contact-hero__grid,.pricing-hero__grid { position:relative; z-index:1; display:grid; grid-template-columns:1.15fr .85fr; gap:75px; align-items:center; }.why-hero p,.process-hero p,.about-hero p,.contact-hero p,.pricing-hero p { max-width:590px; margin-bottom:26px; color:var(--ta-muted); font-size:14px; line-height:1.75; }.why-hero__wordmark { display:grid; align-content:center; justify-items:center; min-height:330px; padding:28px; border:1px solid rgba(0,72,132,.13); border-radius:50%; background:rgba(255,255,255,.35); color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:clamp(42px,4.6vw,65px); font-style:italic; letter-spacing:-.08em; line-height:.8; text-align:center; transform:rotate(-7deg); }.why-hero__wordmark span:nth-child(2) { color:var(--ta-red); }.why-hero__wordmark i { width:60px; height:60px; margin-top:18px; border-radius:50%; background:var(--ta-red); }.value-section { background:#fff; }.value-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }.value-card { position:relative; min-height:265px; padding:22px; transition:transform .22s, box-shadow .22s; }.value-card:hover { transform:translateY(-6px); box-shadow:0 21px 34px rgba(0,38,69,.14); }.value-card > span { position:absolute; top:17px; right:19px; color:#91a4b4; font-size:10px; font-weight:850; }.value-card i { display:grid; place-items:center; width:43px; height:43px; border:1px solid rgba(222,15,63,.22); border-radius:50%; background:rgba(222,15,63,.06); color:var(--ta-red); font-style:normal; }.value-card i svg { width:20px; }.value-card h3 { margin:48px 0 9px; color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:28px; font-weight:400; letter-spacing:-.06em; }.value-card p { margin:0; color:var(--ta-muted); font-size:11px; line-height:1.6; }.split-manifesto { display:grid; grid-template-columns:1fr 1fr; min-height:550px; }.split-manifesto__art { position:relative; overflow:hidden; padding:60px max(40px, calc((100vw - 1180px)/2)); background:var(--ta-red); color:#fff; }.split-manifesto__art::before { position:absolute; right:-125px; bottom:-125px; width:500px; height:500px; border:1px solid rgba(255,255,255,.34); border-radius:50%; content:''; }.split-manifesto__art::after { position:absolute; right:-40px; bottom:-40px; width:340px; height:340px; border:1px solid rgba(255,255,255,.28); border-radius:50%; content:''; }.manifesto-stamp { display:flex; align-items:center; gap:11px; color:rgba(255,255,255,.85); font-size:8px; font-weight:800; letter-spacing:.08em; line-height:1.4; text-transform:uppercase; }.manifesto-stamp span { display:grid; place-items:center; width:37px; height:37px; border:1px solid rgba(255,255,255,.75); border-radius:50%; font-family:var(--ta-serif); font-size:23px; }.split-manifesto__art p { position:relative; z-index:1; margin:80px 0 0; font-family:var(--ta-serif); font-size:clamp(55px,7vw,98px); letter-spacing:-.09em; line-height:.76; }.split-manifesto__art p em { font-style:italic; }.split-manifesto__copy { display:flex; flex-direction:column; justify-content:center; padding:70px max(40px, calc((100vw - 1180px)/2)); background:#fff; }.split-manifesto__copy h2 { margin:17px 0 25px; color:var(--ta-blue-deep); font-size:clamp(42px,4.8vw,67px); }.split-manifesto__copy ul { display:grid; gap:0; padding:0; margin:0; list-style:none; border-top:1px solid var(--ta-line); }.split-manifesto__copy li { display:flex; align-items:center; gap:12px; padding:11px 0; border-bottom:1px solid var(--ta-line); color:#526579; font-size:12px; }.split-manifesto__copy li span { color:var(--ta-red); font-size:10px; font-weight:850; }.split-manifesto__copy .text-link { align-self:start; margin-top:24px; }.reassurance-section { padding-top:0; }.reassurance-section__card { display:grid; grid-template-columns:1fr 1fr; gap:60px; padding:42px; }.reassurance-section h2 { margin:16px 0 0; color:var(--ta-blue-deep); font-size:clamp(34px,3.7vw,51px); }.reassurance-section p { align-self:end; max-width:450px; margin:0; color:var(--ta-muted); font-size:13px; line-height:1.75; }
.process-hero__diagram { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:9px; min-height:210px; padding:36px; color:var(--ta-blue-deep); text-align:center; }.process-hero__diagram span { display:grid; place-items:center; width:74px; height:74px; border:1px solid rgba(0,72,132,.17); border-radius:50%; background:rgba(255,255,255,.63); font-size:10px; font-weight:850; }.process-hero__diagram i { color:var(--ta-red); font-size:20px; font-style:normal; }.process-hero__diagram b { width:100%; margin-top:15px; color:var(--ta-red); font-size:9px; letter-spacing:.1em; }.detailed-process { background:#fff; }.detailed-process__intro { max-width:670px; }.detailed-process__intro h2 { margin:16px 0 47px; color:var(--ta-blue-deep); font-size:clamp(44px,5vw,70px); }.detailed-process__steps { display:grid; gap:0; padding:0; margin:0; list-style:none; border-top:1px solid var(--ta-line); }.detailed-process__steps li { display:grid; grid-template-columns:145px 1fr; gap:32px; padding:30px 0; border-bottom:1px solid var(--ta-line); }.detailed-process__number { color:rgba(0,72,132,.2); font-family:var(--ta-serif); font-size:75px; letter-spacing:-.1em; line-height:.7; }.detailed-process__content { display:grid; grid-template-columns:.8fr 1.2fr; gap:12px 40px; }.detailed-process__content .eyebrow { grid-column:1/-1; }.detailed-process__content h3 { margin:0; color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:32px; font-weight:400; letter-spacing:-.06em; line-height:.95; }.detailed-process__content p { margin:0; color:var(--ta-muted); font-size:12px; line-height:1.7; }.detailed-process__content ul { grid-column:2; display:flex; flex-wrap:wrap; gap:7px 14px; padding:0; margin:5px 0 0; list-style:none; }.detailed-process__content li { color:var(--ta-blue); font-size:9px; font-weight:800; }.detailed-process__content li::before { margin-right:5px; color:var(--ta-red); content:'•'; }.process-note { background:linear-gradient(180deg,#fff,#eef5fb); }.process-note__inner { display:grid; grid-template-columns:.9fr 1.1fr; gap:63px; padding:48px; }.process-note h2 { margin:16px 0 0; color:var(--ta-blue-deep); font-size:clamp(37px,4vw,56px); }.process-note p { align-self:end; max-width:470px; margin:0; color:var(--ta-muted); font-size:13px; line-height:1.75; }
.about-hero__details { display:grid; gap:10px; margin-top:29px; }.about-hero__details span { display:flex; align-items:center; gap:8px; max-width:430px; color:#526b83; font-size:10px; font-weight:750; }.about-hero__details svg { flex:0 0 auto; width:16px; color:var(--ta-red); }.about-hero__panel { position:relative; display:flex; align-items:end; justify-content:space-between; min-height:300px; padding:27px; overflow:hidden; border-radius:25px 65px 25px 25px; }.about-hero__panel::before { position:absolute; top:-85px; right:-85px; width:250px; height:250px; border:1px solid rgba(0,72,132,.13); border-radius:50%; content:''; }.about-hero__panel-mark { position:absolute; top:26px; left:28px; color:var(--ta-red); font-family:var(--ta-serif); font-size:90px; font-weight:700; letter-spacing:-.12em; }.about-hero__panel small { display:block; color:var(--ta-muted); font-size:9px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }.about-hero__panel strong { display:block; margin-top:5px; color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:31px; font-weight:400; letter-spacing:-.06em; line-height:.9; }.about-hero__panel > i { color:var(--ta-red); font-size:9px; font-style:normal; font-weight:850; }.about-story { background:#fff; }.about-story__grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; }.about-story h2 { margin:16px 0 0; color:var(--ta-blue-deep); font-size:clamp(38px,4.1vw,57px); }.about-story__copy { border-left:1px solid var(--ta-line); padding-left:38px; }.about-story__copy p { margin-bottom:16px; color:var(--ta-muted); font-size:14px; line-height:1.8; }.team-section { background:linear-gradient(180deg,#fff,#f2f7fb); }.team-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:17px; }.team-card { overflow:hidden; }.team-card__portrait { position:relative; display:grid; place-items:center; min-height:230px; overflow:hidden; background:linear-gradient(135deg,#dbeaf6,#fdfefe); color:var(--ta-red); font-family:var(--ta-serif); font-size:73px; font-style:italic; letter-spacing:-.08em; }.team-card__portrait::after { position:absolute; right:-42px; bottom:-69px; width:195px; height:195px; border:1px solid rgba(222,15,63,.2); border-radius:50%; content:''; }.team-card__portrait--image img { width:100%; height:230px; object-fit:cover; }.team-card__portrait i { position:absolute; z-index:1; top:17px; right:17px; color:var(--ta-blue); font-family:var(--ta-sans); font-size:10px; font-style:normal; font-weight:850; }.team-card__body { padding:23px; }.team-card__body h3 { margin:12px 0 3px; color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:31px; font-weight:400; letter-spacing:-.06em; }.team-card__body h4 { margin:0 0 11px; color:var(--ta-red); font-size:10px; font-weight:850; }.team-card__body p { margin:0; color:var(--ta-muted); font-size:11px; line-height:1.65; }.about-location { padding:0 0 110px; background:linear-gradient(180deg,#f2f7fb,#fff); }.about-location__inner { display:grid; grid-template-columns:.68fr 1.32fr; gap:57px; align-items:center; padding:34px; }.about-location__map { position:relative; min-height:250px; overflow:hidden; border-radius:17px; background:linear-gradient(135deg,#e8f2fa,#fff); }.about-location__map::before { position:absolute; inset:0; background-image:linear-gradient(rgba(0,72,132,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(0,72,132,.11) 1px,transparent 1px); background-size:28px 28px; content:''; }.about-location__map i { position:absolute; z-index:2; top:calc(50% - 28px); left:calc(50% - 28px); display:grid; place-items:center; width:56px; height:56px; border-radius:50%; background:var(--ta-red); color:#fff; box-shadow:0 12px 20px rgba(222,15,63,.25); font-style:normal; }.about-location__map i svg { width:25px; }.map-ring { position:absolute; top:50%; left:50%; border:1px solid rgba(222,15,63,.25); border-radius:50%; transform:translate(-50%,-50%); }.map-ring--one { width:148px; height:148px; }.map-ring--two { width:225px; height:225px; border-style:dashed; }.about-location h2 { margin:16px 0; color:var(--ta-blue-deep); font-size:clamp(34px,3.8vw,54px); }.about-location p { max-width:470px; color:var(--ta-muted); font-size:13px; }.about-location__links { display:flex; gap:21px; margin-top:25px; }
/* Contact & pricing */
.contact-hero__quick { display:flex; flex-wrap:wrap; gap:10px; }.contact-hero__quick a { display:flex; align-items:center; gap:10px; min-width:190px; padding:11px; border:1px solid rgba(0,72,132,.1); border-radius:11px; background:rgba(255,255,255,.58); transition:transform .2s; }.contact-hero__quick a:hover { transform:translateY(-3px); }.contact-hero__quick i { display:grid; place-items:center; width:29px; height:29px; border-radius:50%; background:rgba(222,15,63,.08); color:var(--ta-red); font-style:normal; }.contact-hero__quick svg { width:14px; }.contact-hero__quick span { display:grid; color:var(--ta-blue-deep); font-size:10px; font-weight:850; }.contact-hero__quick small { color:var(--ta-muted); font-size:8px; font-weight:750; }.contact-hero__stamp { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:275px; border-radius:50%; text-align:center; transform:rotate(7deg); }.contact-hero__stamp span { color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:62px; font-style:italic; letter-spacing:-.08em; line-height:.74; }.contact-hero__stamp i { display:grid; place-items:center; width:48px; height:48px; margin:24px 0; border-radius:50%; background:var(--ta-red); color:#fff; font-style:normal; transform:rotate(-7deg); }.contact-hero__stamp i svg { width:20px; }.contact-hero__stamp small { color:var(--ta-muted); font-size:7px; font-weight:850; letter-spacing:.08em; line-height:1.6; }.contact-page { background:#fff; }.contact-page__grid { display:grid; grid-template-columns:1.2fr .8fr; gap:25px; align-items:start; }.contact-page__form { padding:40px; }.contact-page h2 { margin:15px 0 27px; color:var(--ta-blue-deep); font-size:clamp(42px,4.5vw,61px); }.lead-form--page .form-grid { gap:16px; }.lead-form__privacy { margin:16px 0; color:#718094; font-size:9px; line-height:1.5; }.lead-form__status { min-height:18px; margin:10px 0 0; color:#16805c; font-size:11px; font-weight:750; }.lead-form__status.is-error { color:var(--ta-red); }.contact-page__side { display:grid; gap:15px; }.contact-side-card { padding:27px; border-radius:20px; }.contact-side-card--blue { background:linear-gradient(135deg,var(--ta-blue-deep),var(--ta-blue)); color:#fff; box-shadow:var(--ta-shadow); }.contact-side-card--blue .eyebrow { color:#ff94aa; }.contact-side-card--blue h3 { margin:17px 0 9px; font-family:var(--ta-serif); font-size:31px; font-weight:400; letter-spacing:-.06em; line-height:.95; }.contact-side-card--blue p { color:#c4ddec; font-size:11px; line-height:1.65; }.contact-side-card--blue .button { margin-top:10px; width:100%; font-size:10px; }.contact-side-card:not(.contact-side-card--blue) ul { display:grid; gap:13px; padding:0; margin:21px 0; list-style:none; }.contact-side-card:not(.contact-side-card--blue) li { display:flex; align-items:flex-start; gap:10px; color:#556b7e; font-size:11px; line-height:1.5; }.contact-side-card:not(.contact-side-card--blue) i { display:grid; place-items:center; flex:0 0 auto; width:25px; height:25px; border-radius:50%; background:rgba(222,15,63,.08); color:var(--ta-red); font-style:normal; }.contact-side-card:not(.contact-side-card--blue) svg { width:13px; }.contact-side-card:not(.contact-side-card--blue) a:hover { color:var(--ta-red); }.pricing-hero__card { display:grid; grid-template-columns:45px 1fr; gap:15px; align-items:center; padding:29px; }.pricing-hero__card span { display:grid; place-items:center; width:37px; height:37px; border-radius:50%; background:var(--ta-red); color:#fff; font-size:10px; font-weight:850; }.pricing-hero__card p { margin:0; color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:27px; letter-spacing:-.06em; line-height:1; }.pricing-list { background:#fff; }.pricing-list__intro { max-width:670px; margin-bottom:42px; }.pricing-list__intro h2 { margin:16px 0; color:var(--ta-blue-deep); font-size:clamp(42px,4.8vw,66px); }.pricing-list__table { overflow:hidden; }.pricing-list__head,.pricing-list__row { display:grid; grid-template-columns:.75fr 1.4fr .75fr; gap:21px; align-items:center; padding:18px 24px; }.pricing-list__head { background:rgba(0,72,132,.06); color:var(--ta-blue); font-size:9px; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }.pricing-list__row { border-top:1px solid var(--ta-line); transition:background .2s; }.pricing-list__row:hover { background:rgba(222,15,63,.04); }.pricing-list__row strong { color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:23px; font-weight:400; letter-spacing:-.06em; }.pricing-list__row > span { color:var(--ta-muted); font-size:11px; line-height:1.5; }.pricing-list__row b { display:flex; align-items:center; justify-content:space-between; gap:9px; color:var(--ta-red); font-size:11px; }.pricing-list__row i { display:grid; place-items:center; width:25px; height:25px; border:1px solid currentColor; border-radius:50%; font-style:normal; }.pricing-list__note { max-width:660px; margin:21px auto 0; color:var(--ta-muted); font-size:11px; text-align:center; }

/* Lead modal */
.lead-modal { position:fixed; z-index:99; inset:0; display:grid; place-items:center; padding:18px; opacity:0; visibility:hidden; transition:opacity .22s ease, visibility .22s ease; }.lead-modal.is-open { opacity:1; visibility:visible; }.lead-modal__backdrop { position:absolute; inset:0; background:rgba(0,22,41,.66); backdrop-filter:blur(7px); -webkit-backdrop-filter:blur(7px); }.lead-modal__panel { position:relative; z-index:1; width:min(600px,100%); max-height:calc(100vh - 36px); padding:34px; overflow:auto; border:1px solid rgba(255,255,255,.86); border-radius:25px; background:rgba(250,253,255,.94); box-shadow:0 32px 90px rgba(0,0,0,.29); transform:translateY(15px) scale(.98); transition:transform .25s cubic-bezier(.2,.75,.25,1); }.lead-modal.is-open .lead-modal__panel { transform:translateY(0) scale(1); }.lead-modal__close { position:absolute; top:14px; right:14px; display:grid; place-items:center; width:31px; height:31px; border:1px solid var(--ta-line); border-radius:50%; background:#fff; color:var(--ta-blue); font-size:22px; line-height:1; }.lead-modal__header { max-width:420px; }.lead-modal__header h2 { margin:16px 0 12px; color:var(--ta-blue-deep); font-size:48px; }.lead-modal__header p { color:var(--ta-muted); font-size:12px; line-height:1.6; }.lead-form { margin-top:23px; }.lead-form__honeypot { position:absolute !important; left:-9999px !important; }.lead-modal__alternative { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:18px; color:var(--ta-muted); font-size:10px; }.lead-modal__alternative a { color:var(--ta-blue); font-weight:850; text-decoration:underline; text-underline-offset:4px; }

/* Motion — only transform / opacity, and totally disabled for reduced motion. */
.js .reveal { opacity:0; transform:translate3d(0,24px,0); transition:opacity .65s ease, transform .75s cubic-bezier(.18,.77,.3,1); }.js .reveal.is-visible { opacity:1; transform:translate3d(0,0,0); }.js .reveal--delay-1 { transition-delay:.09s; }.js .reveal--delay-2 { transition-delay:.17s; }.js .reveal--delay-3 { transition-delay:.24s; }.js .reveal--delay-4 { transition-delay:.31s; }.scroll-float { --scroll-y: 0px; transform:translate3d(0,var(--scroll-y),0) rotate(-2deg); transition:transform .09s linear; }.visual-cube--red { animation:ta-hover 4.5s ease-in-out infinite; }.visual-cube--blue { animation:ta-hover 5.4s ease-in-out infinite reverse; }.visual-cube--small { animation:ta-hover 4.9s ease-in-out infinite .4s; }.service-card__orb,.why-card i,.value-card i { transition:transform .25s ease, background .25s ease; }.service-card:hover .service-card__orb,.why-card:hover i,.value-card:hover i { transform:rotateY(180deg) scale(1.08); background:var(--ta-red); color:#fff; }.cta-chess__ring { animation:ta-pulse-ring 4s ease-in-out infinite; }
@keyframes ta-hover { 50% { transform:translateY(-10px) rotate(34deg) skew(-2deg,-2deg); } }@keyframes ta-pulse-ring { 50% { transform:scale(1.06); opacity:.65; } }@keyframes ta-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; } .js .reveal { opacity:1; transform:none; } }

/* Responsive */
@media (max-width: 1100px) {
  .site-header__nav { margin-left:auto; }.ta-menu { gap:18px; }.site-header__actions { margin-left:20px; }
  .hero-home__grid { grid-template-columns:.95fr 1.05fr; }.hero-home__visual { min-height:430px; }.glass-document { left:10%; }.visual-proof { right:-10px; }
  .service-grid { grid-template-columns:repeat(4,1fr); }.tool-shell { grid-template-columns:.85fr 1.15fr; padding:34px; }.tool-shell--health { grid-template-columns:.82fr 1.18fr; }.tool-shell h2 { font-size:46px; }
  .stage-section__inner { grid-template-columns:.85fr 1.15fr; }.site-footer__grid { grid-template-columns:1.2fr .7fr .9fr; }.site-footer__contact { grid-column:2/4; grid-template-columns:repeat(3,1fr); }.site-footer__contact .footer-heading { grid-column:1/-1; }
  .directory-grid { grid-template-columns:repeat(3,1fr); }.about-story__grid,.service-detail__grid { gap:55px; }.detailed-process__content { gap:12px 25px; }
}
@media (max-width: 900px) {
  .ta-shell { width:min(700px,calc(100% - 38px)); }.site-header { padding:9px 0; }.site-header__nav { display:none; }.site-header__actions { margin-left:auto; }.header-call { min-height:38px; }.menu-toggle { display:block; }
  .hero-home { min-height:auto; margin-top:-77px; padding:132px 0 68px; }.hero-home__rail { display:none; }.hero-home__grid { grid-template-columns:1fr; gap:20px; }.hero-home__copy { max-width:590px; }.hero-home h1 { max-width:650px; font-size:clamp(52px,9vw,76px); }.hero-home__visual { width: min(100%,590px); min-height:430px; margin-left:auto; }.glass-document { left:15%; }.visual-proof { right:4%; }
  .section { padding:85px 0; }.section-heading--split { display:grid; gap:12px; }.section-heading--split > p { max-width:560px; margin:0; }.service-grid { grid-template-columns:repeat(3,1fr); }.why-section { padding-bottom:77px; }.why-section__shell { grid-template-columns:1fr; gap:10px; }.why-section__cards { grid-template-columns:repeat(4,1fr); }
  .tool-shell,.tool-shell--health { grid-template-columns:1fr; gap:32px; min-height:0; }.tool-shell__intro > p { max-width:570px; }.tool-calculator { min-height:0; }.health-legend { grid-template-columns:repeat(3,max-content); gap:10px 14px; }.orbit-a { right:-220px; }.orbit-b { right:-90px; }.process-line { grid-template-columns:repeat(3,1fr); gap:30px 13px; }.process-line::before { display:none; }.stage-section__inner { grid-template-columns:1fr; gap:30px; }.stage-section__copy > p { max-width:570px; }.cta-section__inner { grid-template-columns:.64fr 1.36fr; gap:25px; }.cta-chess { min-height:230px; transform:scale(.85); transform-origin:left center; }.site-footer__grid { grid-template-columns:1.2fr 1fr; gap:40px; }.site-footer__contact { grid-column:auto; grid-template-columns:1fr; }.site-footer__contact .footer-heading { grid-column:auto; }
  .services-hero__grid,.why-hero__grid,.process-hero__grid,.about-hero__grid,.contact-hero__grid,.pricing-hero__grid { grid-template-columns:1fr; gap:33px; }.services-hero__board { max-width:480px; width:100%; }.why-hero__wordmark { max-width:390px; min-height:270px; margin:auto; }.service-hero__grid { grid-template-columns:1fr; gap:37px; }.service-hero__quote { max-width:470px; }.service-detail__grid,.pricing-explainer__grid,.about-story__grid { grid-template-columns:1fr; gap:38px; }.about-story__copy { padding-left:0; border-left:0; border-top:1px solid var(--ta-line); padding-top:27px; }.service-path { max-width:none; }.split-manifesto { grid-template-columns:1fr; }.split-manifesto__art { min-height:385px; padding:47px max(19px,calc((100vw - 700px)/2)); }.split-manifesto__copy { padding:68px max(19px,calc((100vw - 700px)/2)); }.reassurance-section__card,.process-note__inner { grid-template-columns:1fr; gap:26px; }.detailed-process__steps li { grid-template-columns:105px 1fr; }.detailed-process__content { grid-template-columns:1fr; gap:12px; }.detailed-process__content ul { grid-column:auto; }.team-grid { grid-template-columns:repeat(3,1fr); }.team-card__body { padding:18px; }.team-card__body h3 { font-size:27px; }.about-location__inner { grid-template-columns:.7fr 1.3fr; gap:28px; }.contact-page__grid { grid-template-columns:1fr; }.contact-page__side { grid-template-columns:1fr 1fr; }.pricing-list__head,.pricing-list__row { grid-template-columns:.8fr 1.2fr .85fr; gap:13px; }
}
@media (max-width: 620px) {
  .ta-shell { width:calc(100% - 30px); }.ta-page-glow { min-width:260px; min-height:260px; }.ta-brand-mark { width:32px; height:32px; }.ta-brand-lockup strong { font-size:15px; }.ta-brand-lockup small { font-size:5.8px; }.header-call { padding:8px; }.header-call > span:last-child { display:none; }.menu-toggle { width:39px; height:39px; margin-left:8px; }.mobile-navigation .ta-menu { grid-template-columns:1fr; }.mobile-navigation .ta-menu li { border-right:0; }.mobile-navigation .ta-menu li:nth-last-child(-n+2) { border-bottom:1px solid var(--ta-line); }.mobile-navigation .ta-menu li:last-child { border-bottom:0; }.mobile-navigation__actions { grid-template-columns:1fr; }
  .hero-home { padding-top:121px; }.hero-home h1 { font-size:clamp(48px,14vw,65px); }.hero-home__copy > p { font-size:13px; }.hero-home__mini-proof { display:grid; gap:10px; }.hero-home__actions .button { width:100%; }.hero-home__visual { min-height:365px; margin-top:0; }.glass-document { top:16px; left:2%; width:72%; padding:20px; }.glass-document__top span { font-size:27px; }.glass-document li { padding:8px 0; font-size:11px; }.visual-cube--red { top:190px; left:4%; }.visual-cube--blue { right:8%; bottom:70px; }.visual-cube--small { right:-7px; bottom:7px; }.visual-proof { right:0; bottom:70px; transform:scale(.88) rotate(2deg); transform-origin:right bottom; }.visual-skyline { right:-78px; bottom:32px; transform:scale(.82); transform-origin:bottom right; }
  .section { padding:67px 0; }.section-heading { margin-bottom:34px; }.section-heading h2 { font-size:clamp(38px,11vw,55px); }.section-heading p { font-size:13px; }.service-grid { grid-template-columns:repeat(2,1fr); gap:9px; }.service-card { min-height:170px; }.service-card__link { padding:15px 13px; }.service-card__orb { margin-bottom:13px; }.service-card__badge { display:none; }.service-card h3 { font-size:12px; }.service-card p { font-size:8.5px; }.why-section { padding:10px 0 57px; }.why-section__shell { padding:24px 17px; }.why-section h2 { font-size:34px; }.why-section__cards { grid-template-columns:1fr 1fr; gap:0; }.why-card { padding:17px 8px; }.why-card:nth-child(2)::after { display:none; }.why-card:nth-child(-n+2) { border-bottom:1px solid var(--ta-line); }.why-card::after { top:15px; bottom:15px; }.why-card h3 { font-size:10px; }.why-card p { font-size:8px; }
  .tools-section { padding-top:66px; }.tool-shell { margin-top:22px; padding:24px 17px; border-radius:19px; }.tool-shell h2 { font-size:clamp(37px,10vw,49px); }.tool-shell__intro > p { font-size:12px; }.tool-shell__note { font-size:9px; }.tool-calculator { padding:18px 14px; border-radius:15px; }.form-grid { grid-template-columns:1fr; gap:12px; }.field--full { grid-column:auto; }.tool-form__topline { align-items:start; flex-direction:column; }.deduction-details .form-grid { grid-template-columns:1fr; }.tool-result__columns { grid-template-columns:1fr; gap:16px; }.tax-result__total strong { font-size:37px; }.tool-result__cta .button { width:100%; }.health-legend { grid-template-columns:1fr; gap:7px; margin-top:23px; }.registration-checks { grid-template-columns:1fr; }.score-overview { grid-template-columns:90px 1fr; gap:12px; }.score-ring { width:88px; height:88px; }.score-ring::before { inset:7px; }.score-ring strong { font-size:32px; }.score-overview h3 { font-size:21px; }.score-breakdown { grid-template-columns:1fr; }.tool-shell--health { padding-bottom:25px; }
  .process-section { padding-top:66px; }.process-line { grid-template-columns:1fr 1fr; gap:26px 15px; margin-top:35px; }.process-line li:last-child { grid-column:1/-1; }.process-line p { font-size:9px; }.stage-section { padding:68px 0; }.stage-tabs { padding:11px; }.stage-tabs__controls { grid-template-columns:1fr 1fr; }.stage-panel { grid-template-columns:auto 1fr; min-height:166px; padding:23px 10px 6px; }.stage-panel h3 { font-size:26px; }.stage-panel p { font-size:10px; }.cta-section { padding:64px 0; }.cta-section__inner { grid-template-columns:1fr; gap:3px; }.cta-chess { min-height:170px; transform:scale(.68); transform-origin:center top; margin-bottom:-38px; }.cta-section h2 { font-size:clamp(35px,10vw,50px); }.cta-contact-options { grid-template-columns:1fr; }.cta-buttons { display:grid; grid-template-columns:1fr; }.site-footer { padding-top:52px; }.site-footer__grid { grid-template-columns:1fr 1fr; gap:29px 17px; padding-bottom:35px; }.site-footer__intro { grid-column:1/-1; }.site-footer__intro > p:not(.footer-eyebrow) { font-size:10px; }.site-footer__contact { grid-column:1/-1; }.site-footer__bottom { align-items:flex-start; flex-direction:column; gap:9px; padding:17px 0; }.site-footer__bottom > div { gap:13px; }
  .inner-hero { padding:109px 0 61px; }.inner-hero--simple h1,.services-hero h1,.why-hero h1,.process-hero h1,.about-hero h1,.contact-hero h1,.pricing-hero h1 { font-size:clamp(44px,12vw,63px); }.services-hero p,.why-hero p,.process-hero p,.about-hero p,.contact-hero p,.pricing-hero p { font-size:13px; }.services-hero__board { grid-template-columns:1fr 1fr; padding:52px 13px 13px; }.services-hero__board-label { left:13px; }.directory-filter { justify-content:flex-start; overflow:auto; flex-wrap:nowrap; padding-bottom:6px; }.directory-filter button { flex:0 0 auto; }.directory-grid { grid-template-columns:1fr; }.directory-card { min-height:220px; }.pricing-explainer__grid { gap:31px; }.pricing-explainer h2,.service-detail h2,.split-manifesto__copy h2,.detailed-process__intro h2,.about-story h2,.pricing-list__intro h2 { font-size:clamp(37px,10vw,52px); }.service-hero { padding:113px 0 65px; }.service-hero__grid { gap:29px; }.service-hero h1 { font-size:clamp(43px,12vw,62px); }.service-hero__actions { display:grid; grid-template-columns:1fr; }.service-hero__quote { padding:25px; }.service-detail__grid { gap:31px; }.included-card { padding:23px; }.service-path-section { padding:65px 0; }.service-path { grid-template-columns:1fr; gap:1px; margin-top:34px; }.service-path article { min-height:0; padding:22px; }.service-contact-band { padding:55px 0; }.service-contact-band__inner { align-items:flex-start; flex-direction:column; gap:25px; }.service-contact-band h2 { font-size:clamp(34px,10vw,50px); }.service-contact-band__inner > div:last-child { width:100%; }.service-contact-band__inner .button { width:100%; }.why-hero__wordmark { min-height:220px; font-size:47px; }.value-grid { grid-template-columns:1fr 1fr; gap:10px; }.value-card { min-height:225px; padding:17px; }.value-card h3 { margin-top:34px; font-size:24px; }.split-manifesto__art { min-height:310px; padding:36px 15px; }.split-manifesto__art p { margin-top:62px; font-size:62px; }.split-manifesto__copy { padding:53px 15px; }.reassurance-section__card,.process-note__inner { padding:25px 18px; }.reassurance-section h2,.process-note h2 { font-size:38px; }.detailed-process__steps li { grid-template-columns:63px 1fr; gap:15px; padding:25px 0; }.detailed-process__number { font-size:54px; }.detailed-process__content h3 { font-size:27px; }.about-hero__panel { min-height:225px; }.about-hero__panel-mark { font-size:70px; }.about-story__grid { gap:26px; }.team-grid { grid-template-columns:1fr; }.team-card { display:grid; grid-template-columns:115px 1fr; }.team-card__portrait { min-height:100%; font-size:42px; }.team-card__portrait--image img { height:100%; }.team-card__body h3 { font-size:27px; }.about-location { padding-bottom:67px; }.about-location__inner { grid-template-columns:1fr; gap:24px; padding:17px; }.about-location__map { min-height:190px; }.contact-hero__quick { display:grid; grid-template-columns:1fr; }.contact-hero__quick a { min-width:0; }.contact-hero__stamp { min-height:190px; }.contact-hero__stamp span { font-size:50px; }.contact-page__form { padding:25px 17px; }.contact-page h2 { font-size:39px; }.contact-page__side { grid-template-columns:1fr; }.pricing-hero__card { max-width:360px; }.pricing-list__table { overflow:visible; }.pricing-list__head { display:none; }.pricing-list__row { grid-template-columns:1fr auto; gap:8px 15px; padding:17px; }.pricing-list__row > span { grid-column:1/-1; grid-row:2; }.pricing-list__row b { grid-column:2; grid-row:1; max-width:120px; text-align:right; }.pricing-list__row strong { font-size:20px; }.lead-modal { padding:9px; }.lead-modal__panel { max-height:calc(100vh - 18px); padding:27px 17px 21px; border-radius:19px; }.lead-modal__header h2 { font-size:41px; }.lead-modal__alternative { font-size:9px; }
}

/* ==============================================================
   V1.1 — editorial crystal hero, choice-driven tools, service DNA
   =============================================================== */
/* Larger, calmer reading rhythm */
body { font-size: 17px; }
.section-heading p, .hero-home__copy > p, .services-hero p, .why-hero p, .process-hero p, .about-hero p, .contact-hero p, .pricing-hero p { font-size: 16px; }
.service-card h3 { font-size: 15px; }
.service-card p { font-size: 10.5px; }
.why-card h3 { font-size: 12px; }
.why-card p { font-size: 10px; }

/* Service mega-dropdown: desktop hover and accessible mobile tap control. */
.ta-menu > li { position: relative; }
.ta-menu .menu-item-has-children > a { padding-right: 11px; }
.ta-menu .menu-item-has-children > a::before { position:absolute; top:50%; right:0; width:5px; height:5px; margin-top:-5px; border-right:1px solid currentColor; border-bottom:1px solid currentColor; content:''; transform:rotate(45deg); }
.menu-subtoggle { display:none; }
.ta-menu .sub-menu { position:absolute; top:calc(100% + 12px); left:50%; display:grid; grid-template-columns: 1fr 1fr; width:386px; padding:11px; margin:0; border:1px solid rgba(0,72,132,.13); border-radius:16px; background:rgba(252,254,255,.94); box-shadow:0 19px 42px rgba(0,36,68,.17); list-style:none; opacity:0; visibility:hidden; transform:translate(-50%, 10px); transition:opacity .2s ease, transform .2s ease, visibility .2s ease; backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); }
.ta-menu .menu-item-has-children:hover > .sub-menu, .ta-menu .menu-item-has-children:focus-within > .sub-menu, .ta-menu .menu-item-has-children.is-submenu-open > .sub-menu { opacity:1; visibility:visible; transform:translate(-50%, 0); }
.ta-menu .sub-menu li { min-width:0; }
.ta-menu .sub-menu a { display:block; padding:10px 11px; border-radius:9px; color:var(--ta-blue-deep); font-size:10px; font-weight:760; letter-spacing:-.01em; line-height:1.2; text-transform:none; }
.ta-menu .sub-menu a::after { display:none; }
.ta-menu .sub-menu a:hover { background:rgba(222,15,63,.07); color:var(--ta-red); }
.ta-menu .sub-menu__intro, .ta-menu .sub-menu__all { grid-column:1/-1; }
.ta-menu .sub-menu__intro { padding:8px 11px 9px; color:var(--ta-red); font-size:8px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }
.ta-menu .sub-menu__all { margin-top:5px; padding-top:7px; border-top:1px solid var(--ta-line); }
.ta-menu .sub-menu__all a { display:flex; align-items:center; justify-content:space-between; color:var(--ta-blue); }

/* Unique crystal dossier hero. It intentionally uses architectural CSS layers,
   not a generic image/stock-photo layout. */
.hero-home--crystal { min-height: 785px; padding: 151px 0 121px; background:linear-gradient(112deg,#fbfdff 0%,#f7fbff 45%,#e6f0fa 100%); }
.hero-home--crystal::before { opacity:.85; background-size:38px 38px; mask-image:linear-gradient(90deg,#000 0%,#000 42%,transparent 74%); }
.hero-home--crystal .hero-home__grid { grid-template-columns:.82fr 1.18fr; gap:14px; align-items:center; }
.hero-home--crystal .hero-home__copy { z-index:5; padding:26px 0; }
.hero-home--crystal h1 { max-width:650px; margin:20px 0 27px; font-size:clamp(61px,6.3vw,95px); letter-spacing:-.078em; line-height:.9; }
.hero-home--crystal .hero-home__copy > p { max-width:515px; margin-bottom:31px; color:#4a5e76; font-size:17px; line-height:1.72; }
.button--hero { min-height:54px; padding:16px 22px; font-size:13px; }
.button--hero-play { padding:10px 15px 10px 8px; }
.hero-home__mini-proof--large { margin-top:38px; gap:24px; font-size:11px; }
.hero-home__mini-proof--large svg { width:18px; height:18px; }
.hero-sun { position:absolute; z-index:0; pointer-events:none; border-radius:50%; }.hero-sun--one { top:-245px; right:-150px; width:690px; height:690px; border:1px solid rgba(0,72,132,.12); box-shadow:inset 0 0 100px rgba(255,255,255,.68); }.hero-sun--two { right:17%; bottom:-255px; width:500px; height:500px; background:radial-gradient(circle,rgba(222,15,63,.11),transparent 68%); }
.hero-gridlines { position:absolute; z-index:0; right:0; bottom:0; width:55%; height:58%; opacity:.55; background:repeating-linear-gradient(90deg,transparent 0,transparent 54px,rgba(0,72,132,.08) 55px),repeating-linear-gradient(0deg,transparent 0,transparent 54px,rgba(0,72,132,.08) 55px); mask-image:linear-gradient(135deg,transparent 0%,#000 54%); }
.hero-crystal-scene { position:relative; min-height:520px; overflow:visible; }
.crystal-floor { position:absolute; right:-8%; bottom:-58px; left:4%; height:210px; border:1px solid rgba(0,72,132,.13); border-radius:50% 50% 0 0; background:linear-gradient(180deg,rgba(255,255,255,.83),rgba(150,197,229,.08)); transform:perspective(420px) rotateX(61deg); }
.crystal-city { position:absolute; right:-25px; bottom:27px; width:300px; height:310px; opacity:.17; }.crystal-city::after { position:absolute; right:0; bottom:0; left:0; height:1px; background:var(--ta-blue); content:''; }.crystal-city i { position:absolute; bottom:0; display:block; border:1px solid var(--ta-blue); border-bottom:0; background:repeating-linear-gradient(90deg,transparent 0,transparent 7px,rgba(0,72,132,.52) 8px); }.crystal-city i:nth-child(1) { left:0; width:30px; height:94px; }.crystal-city i:nth-child(2) { left:37px; width:39px; height:143px; }.crystal-city i:nth-child(3) { left:84px; width:30px; height:112px; }.crystal-city i:nth-child(4) { left:121px; width:44px; height:250px; }.crystal-city i:nth-child(5) { left:172px; width:32px; height:165px; }.crystal-city i:nth-child(6) { left:211px; width:39px; height:128px; }.crystal-city i:nth-child(7) { left:257px; width:39px; height:200px; }
.crystal-frame { position:absolute; border:1px solid rgba(0,72,132,.26); border-radius:5px 34px 5px 5px; background:linear-gradient(135deg,rgba(255,255,255,.21),rgba(255,255,255,.03)); box-shadow:inset 1px 1px 0 rgba(255,255,255,.6), 17px 17px 28px rgba(0,40,75,.07); transform:skewY(-5deg); }.crystal-frame--back { top:25px; right:15%; width:275px; height:348px; border-color:rgba(0,72,132,.17); transform:skewY(-5deg) rotate(5deg); }.crystal-frame--mid { top:5px; right:7%; width:322px; height:403px; background:linear-gradient(125deg,rgba(255,255,255,.28),rgba(255,255,255,.025)); transform:skewY(-4deg) rotate(-1deg); }.crystal-frame--front { top:51px; right:22%; width:287px; height:385px; border-color:rgba(0,72,132,.29); background:linear-gradient(135deg,rgba(255,255,255,.33),rgba(255,255,255,.04)); transform:skewY(-4deg) rotate(-6deg); }
.crystal-compliance-card { position:absolute; z-index:4; top:78px; right:20%; width:302px; padding:20px 22px 15px; border:1px solid rgba(255,255,255,.89); border-radius:4px 23px 4px 4px; background:rgba(252,254,255,.76); box-shadow:0 31px 52px rgba(0,33,62,.19); backdrop-filter:blur(18px) saturate(1.15); -webkit-backdrop-filter:blur(18px) saturate(1.15); transform:rotate(-4deg); }.crystal-compliance-card::before { position:absolute; top:-12px; left:-13px; width:100%; height:100%; border:1px solid rgba(0,72,132,.19); border-radius:4px 23px 4px 4px; content:''; transform:rotate(3deg); }.crystal-compliance-card__top,.crystal-compliance-card__bottom { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:9px; }.crystal-compliance-card__top small { color:#6b7e8e; font-size:7px; font-weight:900; letter-spacing:.12em; }.crystal-compliance-card__top span { display:flex; align-items:center; gap:6px; color:var(--ta-blue); font-size:8px; font-weight:850; }.crystal-compliance-card h2 { position:relative; z-index:1; display:grid; gap:1px; margin:22px 0 14px; color:var(--ta-blue-deep); font-family:var(--ta-sans); font-size:23px; font-weight:900; letter-spacing:-.07em; line-height:.85; }.crystal-compliance-card h2 b { color:var(--ta-red); font-size:39px; }.crystal-compliance-card ul { position:relative; z-index:1; display:grid; gap:0; padding:0; margin:0; list-style:none; }.crystal-compliance-card li { display:grid; grid-template-columns:25px 1fr; gap:8px; align-items:center; padding:10px 0; border-top:1px solid rgba(0,72,132,.11); color:var(--ta-blue-deep); font-size:12px; font-weight:850; }.crystal-compliance-card li > i { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:rgba(222,15,63,.1); color:var(--ta-red); font-style:normal; }.crystal-compliance-card li svg { width:13px; }.crystal-compliance-card li span { display:flex; align-items:baseline; justify-content:space-between; gap:10px; }.crystal-compliance-card li small { color:#82909c; font-size:8px; font-weight:650; }.crystal-compliance-card__bottom { margin-top:13px; padding-top:11px; border-top:1px solid rgba(0,72,132,.12); color:var(--ta-blue); font-size:7px; font-weight:900; letter-spacing:.07em; }.crystal-compliance-card__bottom > i { display:grid; place-items:center; width:20px; height:20px; border-radius:50%; background:var(--ta-red); color:#fff; font-style:normal; font-size:12px; }
.crystal-cube { position:absolute; z-index:6; width:54px; height:54px; box-shadow:14px 16px 22px rgba(0,30,58,.18); transform:rotate(30deg) skew(-2deg,-2deg); animation:crystal-bob 4.8s ease-in-out infinite; }.crystal-cube span { display:block; width:100%; height:100%; border:1px solid rgba(255,255,255,.93); background:inherit; }.crystal-cube::before,.crystal-cube::after { position:absolute; content:''; }.crystal-cube::before { right:-14px; bottom:-12px; width:14px; height:100%; background:rgba(0,0,0,.14); transform:skewY(-42deg); transform-origin:left top; }.crystal-cube::after { right:-14px; bottom:-12px; width:100%; height:12px; background:rgba(255,255,255,.5); transform:skewX(-48deg); transform-origin:left top; }.crystal-cube--red { top:201px; left:6%; background:rgba(222,15,63,.84); }.crystal-cube--blue { right:5%; bottom:98px; width:48px; height:48px; background:rgba(0,72,132,.84); animation-delay:-1.3s; }.crystal-cube--coral { right:24%; bottom:16px; width:64px; height:64px; background:rgba(239,57,92,.92); animation-delay:-2.4s; }
.crystal-note { position:absolute; z-index:8; display:grid; border-radius:13px; }.crystal-note--top { top:27px; left:6%; padding:12px 14px; color:var(--ta-blue-deep); transform:rotate(5deg); }.crystal-note--top span { color:#75889a; font-size:8px; font-weight:800; }.crystal-note--top b { font-family:var(--ta-serif); font-size:19px; font-weight:400; letter-spacing:-.06em; line-height:.9; }.crystal-note--bottom { right:-1%; bottom:73px; grid-template-columns:auto 1fr; gap:9px; align-items:center; padding:12px; transform:rotate(3deg); }.crystal-note--bottom > i { display:grid; place-items:center; width:29px; height:29px; border-radius:50%; background:var(--ta-red); color:#fff; font-style:normal; }.crystal-note--bottom svg { width:15px; }.crystal-note--bottom span { color:#66798b; font-size:8px; line-height:1.25; }.crystal-note--bottom b { color:var(--ta-blue-deep); font-size:10px; }
.hero-service-ribbon { position:absolute; z-index:10; right:0; bottom:0; left:0; display:flex; align-items:center; justify-content:center; gap:21px; height:38px; overflow:hidden; background:var(--ta-red); color:#fff; font-size:8px; font-weight:900; letter-spacing:.13em; white-space:nowrap; }.hero-service-ribbon i { color:#ffd3de; font-size:10px; font-style:normal; animation:ribbon-shimmer 2.4s ease-in-out infinite; }

/* Choice-driven calculator interface: cards, not legacy dropdowns. */
.tool-shell__scanlines { position:absolute; right:-30px; bottom:-80px; width:370px; height:370px; border:1px solid rgba(0,72,132,.09); border-radius:50%; box-shadow:0 0 0 42px rgba(0,72,132,.025),0 0 0 84px rgba(0,72,132,.018); }
.tool-calculator--choice { padding:28px; }.income-entry { display:grid; gap:8px; margin-bottom:20px; }.income-entry > label,.choice-section > legend,.choice-section__label { color:var(--ta-blue-deep); font-size:11px; font-weight:850; }.income-entry > label span,.choice-section__label b { color:var(--ta-red); }.income-entry__field { position:relative; display:flex; align-items:center; gap:8px; min-height:58px; padding:7px 15px; border:1px solid rgba(0,72,132,.15); border-radius:13px; background:rgba(255,255,255,.72); transition:border .2s, box-shadow .2s; }.income-entry__field:focus-within { border-color:var(--ta-red); box-shadow:0 0 0 3px rgba(222,15,63,.1); }.income-entry__field > span { color:var(--ta-red); font-family:var(--ta-serif); font-size:27px; }.income-entry__field input { min-width:0; flex:1; padding:6px 0; border:0; outline:0; background:transparent; color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:30px; font-weight:400; letter-spacing:-.05em; }.income-entry__field input::placeholder { color:#b8c5cf; }.income-entry__field small { position:absolute; right:15px; bottom:8px; color:#8796a3; font-size:8px; }.choice-section { padding:0; margin:0 0 17px; border:0; }.choice-section > legend { margin-bottom:9px; }.choice-section__label { display:block; margin-bottom:9px; }.choice-grid { display:grid; gap:8px; }.choice-grid--four { grid-template-columns:repeat(4,1fr); }.choice-grid--three { grid-template-columns:repeat(3,1fr); }.choice-grid--five { grid-template-columns:repeat(5,1fr); }.choice-grid--two { grid-template-columns:repeat(2,1fr); }.choice-columns { display:grid; grid-template-columns:1fr 1.2fr; gap:15px; }.choice-columns--health { grid-template-columns:1fr 1fr; }.choice-option { position:relative; display:block; min-width:0; cursor:pointer; }.choice-option input { position:absolute; opacity:0; pointer-events:none; }.choice-option > span { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-height:72px; padding:9px 7px; border:1px solid rgba(0,72,132,.13); border-radius:11px; background:rgba(255,255,255,.58); color:#6c7d8e; text-align:center; transition:transform .2s, border .2s, background .2s, color .2s, box-shadow .2s; }.choice-option > span i { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:rgba(222,15,63,.08); color:var(--ta-red); font-style:normal; font-size:12px; }.choice-option > span svg { width:14px; }.choice-option > span b { color:var(--ta-blue-deep); font-size:10px; font-weight:850; line-height:1.15; }.choice-option > span small { color:#8595a3; font-size:8px; line-height:1.2; }.choice-option:hover > span { transform:translateY(-3px); border-color:rgba(222,15,63,.35); box-shadow:0 8px 17px rgba(0,38,69,.08); }.choice-option input:checked + span { border-color:var(--ta-red); background:linear-gradient(135deg,rgba(222,15,63,.95),#ef315c); color:#fff; box-shadow:0 10px 18px rgba(222,15,63,.22); }.choice-option input:checked + span b,.choice-option input:checked + span small { color:#fff; }.choice-option input:checked + span i { background:rgba(255,255,255,.18); color:#fff; }.choice-grid--compact .choice-option > span { min-height:52px; }.choice-grid--compact .choice-option > span b { font-size:9px; }.choice-grid--compact .choice-option > span i { display:none; }
/* The dark wizard has more visual hierarchy and replaces generic select fields. */
.tool-calculator--wizard { min-height:0; padding:27px; }.tool-shell--health__grid { position:absolute; right:0; bottom:0; width:58%; height:65%; opacity:.23; background:repeating-linear-gradient(90deg,transparent 0,transparent 34px,rgba(255,255,255,.12) 35px),repeating-linear-gradient(0deg,transparent 0,transparent 34px,rgba(255,255,255,.12) 35px); mask-image:linear-gradient(135deg,transparent 0%,#000 45%); }.wizard-progress { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin:-3px 0 20px; }.wizard-progress i { display:block; height:3px; border-radius:999px; background:rgba(255,255,255,.19); transition:background .25s, box-shadow .25s; }.wizard-progress i.is-active { background:#ff6386; box-shadow:0 0 12px rgba(255,99,134,.7); }.tool-wizard__step { min-width:0; padding:0; margin:0; border:0; }.tool-wizard__step > legend { padding:0; margin:0 0 16px; color:#fff; font-family:var(--ta-serif); font-size:25px; font-weight:400; letter-spacing:-.05em; }.choice-section--dark > legend,.choice-section--dark .choice-section__label { color:#d6eafa; }.choice-option--dark > span { border-color:rgba(255,255,255,.18); background:rgba(255,255,255,.07); color:#b9d6e8; }.choice-option--dark > span b { color:#fff; }.choice-option--dark > span small { color:#bbd4e5; }.choice-option--dark > span i { background:rgba(255,255,255,.12); color:#ff7f9c; }.choice-option--dark:hover > span { border-color:rgba(255,255,255,.62); box-shadow:0 10px 20px rgba(0,0,0,.13); }.choice-option--dark input:checked + span { border-color:#ff6587; background:linear-gradient(135deg,rgba(222,15,63,.96),rgba(242,62,96,.86)); }.choice-grid--business .choice-option > span { min-height:82px; }.choice-grid--business .choice-option b { font-size:9px; }.tool-wizard__actions { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:20px; }.tool-wizard__actions .button { min-width:220px; margin-left:auto; font-size:10px; }.wizard-back { padding:8px 0; border:0; background:transparent; color:#d0e5f3; font-size:10px; font-weight:800; }.wizard-back:hover { color:#fff; text-decoration:underline; }.registration-checks { margin-top:5px; }.tool-calculator--wizard .registration-checks label { font-size:11px; }

/* Service page DNA: each slug selects a different colour/geometry class. */
.service-visual { position:relative; min-height:390px; }.service-visual__back { position:absolute; border:1px solid rgba(0,72,132,.2); border-radius:18px 45px 18px 18px; }.service-visual__back--one { top:15px; right:5%; width:83%; height:81%; background:rgba(255,255,255,.2); transform:rotate(7deg); }.service-visual__back--two { top:37px; right:13%; width:79%; height:76%; border-style:dashed; transform:rotate(-4deg); }.service-visual__card { position:absolute; z-index:2; top:17px; right:9%; bottom:23px; left:5%; padding:24px; border:1px solid rgba(255,255,255,.83); border-radius:15px 43px 15px 15px; background:rgba(255,255,255,.76); box-shadow:0 27px 42px rgba(0,34,66,.16); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); overflow:hidden; }.service-visual__card::after { position:absolute; right:-36px; bottom:-36px; width:150px; height:150px; border:1px solid rgba(0,72,132,.12); border-radius:50%; content:''; }.service-visual__top { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:10px; color:var(--ta-blue); font-size:8px; font-weight:900; letter-spacing:.1em; }.service-visual__top > i { display:grid; place-items:center; width:29px; height:29px; border-radius:50%; background:rgba(222,15,63,.09); color:var(--ta-red); font-style:normal; }.service-visual__top svg { width:15px; }.service-visual__mark { position:relative; z-index:1; margin:15px 0 13px; color:var(--ta-red); font-family:var(--ta-serif); font-size:69px; font-style:italic; font-weight:700; letter-spacing:-.13em; line-height:.72; }.service-visual ol { position:relative; z-index:1; padding:0; margin:0; list-style:none; }.service-visual li { display:grid; grid-template-columns:31px 1fr 18px; align-items:center; gap:8px; padding:10px 0; border-top:1px solid var(--ta-line); color:var(--ta-blue-deep); font-size:12px; font-weight:820; }.service-visual li > b { color:var(--ta-red); font-size:9px; }.service-visual li > i { color:var(--ta-blue); font-style:normal; }.service-visual li svg { width:14px; }.service-visual__footer { position:absolute; z-index:2; right:24px; bottom:16px; left:24px; display:flex; align-items:center; gap:7px; color:#788897; font-size:8px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.service-visual__price { position:absolute; z-index:3; right:-4%; bottom:-8px; max-width:155px; padding:13px 15px; border-radius:12px; background:var(--ta-red); box-shadow:0 14px 24px rgba(222,15,63,.26); color:#fff; transform:rotate(3deg); }.service-visual__price small,.service-visual__price span { display:block; font-size:7px; font-weight:800; letter-spacing:.06em; opacity:.84; text-transform:uppercase; }.service-visual__price strong { display:block; margin:3px 0; font-family:var(--ta-serif); font-size:19px; font-weight:400; letter-spacing:-.05em; line-height:1; }.service-visual--returns .service-visual__card { border-radius:47px 12px 47px 12px; }.service-visual--planning .service-visual__back--one,.service-visual--iso .service-visual__back--one { border-radius:50%; }.service-visual--company .service-visual__mark,.service-visual--llp .service-visual__mark { color:var(--ta-blue); }.service-visual--trademark .service-visual__top > i,.service-visual--fssai .service-visual__top > i { background:var(--ta-red); color:#fff; }.service-visual--accounting .service-visual__card { background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(221,237,248,.74)); }.service-visual--gem .service-visual__back--two { border-color:rgba(222,15,63,.35); }.service-visual--iec .service-visual__mark { letter-spacing:-.18em; }
.service-story { background:#fff; }.service-story__grid { display:grid; grid-template-columns:.86fr 1.14fr; gap:90px; align-items:start; }.service-story__sticky { position:sticky; top:100px; }.service-story__sticky h2 { margin:17px 0 27px; color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:clamp(35px,3.5vw,50px); font-weight:400; letter-spacing:-.065em; line-height:.98; }.service-story__stamp { display:flex; align-items:center; gap:10px; color:var(--ta-blue); font-size:8px; font-weight:900; letter-spacing:.11em; line-height:1.4; }.service-story__stamp i { display:grid; place-items:center; width:33px; height:33px; border-radius:50%; background:var(--ta-red); color:#fff; font-style:normal; }.service-story__stamp svg { width:16px; }.service-story__content { display:grid; gap:48px; padding-top:29px; }.service-story__body { padding-bottom:34px; border-bottom:1px solid var(--ta-line); }.story-index { display:block; margin-bottom:17px; color:var(--ta-red); font-size:9px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }.service-story__body p { max-width:590px; color:#536579; font-size:16px; line-height:1.78; }.service-workbench { padding:92px 0; background:linear-gradient(135deg,#eaf3fa,#f9fcff); }.service-workbench__head { max-width:660px; margin-bottom:43px; }.service-workbench__head h2 { margin:16px 0 0; color:var(--ta-blue-deep); font-size:clamp(42px,4.7vw,64px); }.service-workbench__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }.workbench-card { position:relative; min-height:290px; padding:27px; overflow:hidden; }.workbench-card:hover { transform:translateY(-7px); box-shadow:0 24px 40px rgba(0,36,68,.14); }.workbench-card__number { position:absolute; top:20px; right:22px; color:#9aabb9; font-family:var(--ta-serif); font-size:28px; letter-spacing:-.07em; }.workbench-card > i { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:rgba(222,15,63,.08); color:var(--ta-red); font-style:normal; }.workbench-card > i svg { width:20px; }.workbench-card h3 { margin:31px 0 14px; color:var(--ta-blue-deep); font-family:var(--ta-serif); font-size:29px; font-weight:400; letter-spacing:-.06em; line-height:.94; }.workbench-card ul { display:grid; gap:8px; padding:0; margin:0; list-style:none; }.workbench-card li { position:relative; padding-left:13px; color:#5d7082; font-size:11px; line-height:1.5; }.workbench-card li::before { position:absolute; top:.55em; left:0; width:5px; height:5px; border-radius:50%; background:var(--ta-red); content:''; }.workbench-card--accent { border-color:transparent; background:linear-gradient(135deg,var(--ta-blue-deep),var(--ta-blue)); color:#fff; }.workbench-card--accent::after { position:absolute; right:-55px; bottom:-65px; width:200px; height:200px; border:1px solid rgba(255,255,255,.2); border-radius:50%; content:''; }.workbench-card--accent > i { background:rgba(255,255,255,.14); color:#fff; }.workbench-card--accent h3,.workbench-card--accent p { position:relative; z-index:1; color:#fff; }.workbench-card--accent p { max-width:290px; font-size:11px; line-height:1.65; }.workbench-card--accent .text-link { position:relative; z-index:1; margin-top:13px; color:#fff; }.service-inclusions { background:#fff; }.service-inclusions__grid { display:grid; grid-template-columns:1fr .9fr; gap:92px; align-items:center; }.service-inclusions h2 { margin:16px 0; color:var(--ta-blue-deep); font-size:clamp(42px,4.5vw,61px); }.service-inclusions > div > p { max-width:480px; color:var(--ta-muted); font-size:14px; line-height:1.7; }.related-services { padding:89px 0; background:linear-gradient(180deg,#fff,#eff6fb); }.related-services__head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:32px; }.related-services__head h2 { margin:16px 0 0; color:var(--ta-blue-deep); font-size:clamp(38px,4vw,56px); }.related-services__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }.related-service-card { display:flex; align-items:center; gap:13px; min-height:78px; padding:16px; border:1px solid rgba(0,72,132,.13); border-radius:15px; background:rgba(255,255,255,.7); box-shadow:0 8px 19px rgba(0,38,69,.05); transition:transform .2s, background .2s, box-shadow .2s; }.related-service-card:hover { transform:translateY(-5px); background:#fff; box-shadow:0 16px 28px rgba(0,38,69,.12); }.related-service-card > i { display:grid; place-items:center; flex:0 0 auto; width:32px; height:32px; border-radius:50%; background:rgba(222,15,63,.08); color:var(--ta-red); font-style:normal; }.related-service-card svg { width:16px; }.related-service-card span { flex:1; color:var(--ta-blue-deep); font-size:12px; font-weight:830; line-height:1.2; }.related-service-card b { color:var(--ta-red); font-size:17px; font-weight:400; }

/* A richer but performant motion vocabulary. */
.glass-card,.service-card,.directory-card,.workbench-card,.team-card,.related-service-card,.choice-option > span { will-change:transform; }
.hero-home--crystal .crystal-frame--back { animation:frame-drift 12s ease-in-out infinite; }.hero-home--crystal .crystal-frame--mid { animation:frame-drift 10s ease-in-out infinite reverse; }.hero-home--crystal .crystal-frame--front { animation:frame-drift 8s ease-in-out infinite 1s; }.crystal-note--top { animation:note-drift 5s ease-in-out infinite; }.crystal-note--bottom { animation:note-drift 5.7s ease-in-out infinite reverse; }.service-visual__back--one { animation:frame-drift 11s ease-in-out infinite; }.service-visual__back--two { animation:frame-drift 9s ease-in-out infinite reverse; }.workbench-card::before { position:absolute; top:-120%; left:-48%; width:35%; height:310%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.47),transparent); content:''; transform:rotate(23deg); transition:left .7s ease; }.workbench-card:hover::before { left:125%; }.service-card::before { position:absolute; z-index:0; top:0; right:0; width:0; height:3px; background:var(--ta-red); content:''; transition:width .3s ease; }.service-card:hover::before { left:0; width:100%; }
@keyframes crystal-bob { 50% { transform:translateY(-13px) rotate(33deg) skew(-2deg,-2deg); } }@keyframes frame-drift { 50% { translate:0 -9px; } }@keyframes note-drift { 50% { translate:0 -8px; } }@keyframes ribbon-shimmer { 50% { transform:scale(1.4) rotate(36deg); color:#fff; } }

/* Final responsive refinements for the richer interface. */
@media (max-width:1100px) { .hero-home--crystal .hero-home__grid { grid-template-columns:.86fr 1.14fr; }.hero-home--crystal h1 { font-size:clamp(56px,6.5vw,77px); }.crystal-compliance-card { right:14%; }.crystal-frame--front { right:16%; }.choice-grid--five { grid-template-columns:repeat(3,1fr); }.choice-grid--business { grid-template-columns:repeat(5,1fr); }.choice-grid--business .choice-option > span { min-height:74px; }.service-story__grid,.service-inclusions__grid { gap:58px; } }
@media (max-width:900px) { .ta-menu .sub-menu { display:none; }.hero-home--crystal { min-height:0; padding:133px 0 81px; }.hero-home--crystal .hero-home__grid { grid-template-columns:1fr; }.hero-home--crystal .hero-home__copy { max-width:650px; }.hero-home--crystal h1 { font-size:clamp(57px,10.5vw,83px); }.hero-home--crystal .hero-home__copy > p { font-size:16px; }.hero-crystal-scene { width:min(620px,100%); min-height:500px; margin-left:auto; }.crystal-compliance-card { right:17%; }.crystal-note--top { left:10%; }.crystal-note--bottom { right:7%; }.choice-grid--business { grid-template-columns:repeat(5,1fr); }.service-story__grid,.service-inclusions__grid { grid-template-columns:1fr; gap:36px; }.service-story__sticky { position:static; }.service-story__content { padding-top:0; }.service-workbench__grid { grid-template-columns:repeat(3,1fr); }.workbench-card { padding:20px; }.workbench-card h3 { font-size:26px; }.related-services__grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:620px) { body { font-size:16px; }.section-heading p,.hero-home__copy > p { font-size:14px; }.hero-home--crystal { padding:119px 0 65px; }.hero-home--crystal h1 { font-size:clamp(48px,14vw,68px); }.hero-home--crystal .hero-home__copy > p { font-size:15px; }.hero-home__mini-proof--large { gap:12px; font-size:10px; }.hero-crystal-scene { min-height:374px; transform:scale(.94); transform-origin:top right; width:106%; margin-right:-6%; }.crystal-frame--back { top:10px; right:11%; width:210px; height:280px; }.crystal-frame--mid { top:0; right:1%; width:250px; height:316px; }.crystal-frame--front { top:32px; right:16%; width:230px; height:290px; }.crystal-compliance-card { top:50px; right:16%; width:238px; padding:16px; }.crystal-compliance-card h2 { margin:14px 0 10px; font-size:17px; }.crystal-compliance-card h2 b { font-size:30px; }.crystal-compliance-card li { padding:7px 0; font-size:10px; }.crystal-compliance-card li small { display:none; }.crystal-compliance-card__bottom { margin-top:7px; }.crystal-cube--red { top:168px; left:4%; transform:scale(.78) rotate(30deg) skew(-2deg,-2deg); }.crystal-cube--blue { right:4%; bottom:75px; transform:scale(.7) rotate(30deg) skew(-2deg,-2deg); }.crystal-cube--coral { right:20%; bottom:15px; transform:scale(.78) rotate(30deg) skew(-2deg,-2deg); }.crystal-city { transform:scale(.7); transform-origin:bottom right; right:-45px; bottom:21px; }.crystal-note--top { top:14px; left:3%; transform:scale(.85) rotate(5deg); transform-origin:top left; }.crystal-note--bottom { right:0; bottom:57px; transform:scale(.77) rotate(3deg); transform-origin:bottom right; }.hero-service-ribbon { justify-content:flex-start; gap:14px; padding-left:16px; font-size:7px; }.choice-grid--four { grid-template-columns:1fr 1fr; }.choice-grid--five { grid-template-columns:repeat(2,1fr); }.choice-grid--business { grid-template-columns:repeat(2,1fr); }.choice-grid--business .choice-option:last-child { grid-column:1/-1; }.choice-columns,.choice-columns--health { grid-template-columns:1fr; gap:0; }.choice-grid--three { grid-template-columns:repeat(3,1fr); }.choice-option > span { min-height:65px; }.choice-option > span b { font-size:9px; }.choice-option > span small { font-size:7px; }.choice-grid--two .choice-option > span { min-height:69px; }.income-entry__field input { font-size:27px; }.income-entry__field small { display:none; }.tool-calculator--choice,.tool-calculator--wizard { padding:20px 14px; }.tool-wizard__step > legend { font-size:23px; }.tool-wizard__actions { align-items:stretch; flex-direction:column-reverse; }.tool-wizard__actions .button { width:100%; min-width:0; margin-left:0; }.wizard-back { align-self:flex-start; }.service-visual { min-height:340px; }.service-story__sticky h2 { font-size:38px; }.service-story__body p { font-size:14px; }.service-workbench { padding:64px 0; }.service-workbench__grid { grid-template-columns:1fr; }.workbench-card { min-height:0; }.service-inclusions__grid { gap:26px; }.related-services { padding:64px 0; }.related-services__head { align-items:start; flex-direction:column; gap:12px; }.related-services__grid { grid-template-columns:1fr; }.related-service-card { min-height:65px; } }
@media (max-width:900px) {
  .mobile-navigation .ta-menu .menu-item-has-children { grid-column:1/-1; position:relative; }
  .mobile-navigation .ta-menu .menu-item-has-children > a { padding-right:48px; }
  .mobile-navigation .menu-subtoggle { position:absolute; top:9px; right:10px; z-index:3; display:grid; place-items:center; width:32px; height:32px; border:1px solid rgba(0,72,132,.18); border-radius:50%; background:#fff; color:var(--ta-red); font-size:18px; line-height:1; }
  .mobile-navigation .ta-menu .sub-menu { position:static; display:none; grid-template-columns:1fr; width:auto; padding:7px; margin:0 9px 10px; border-radius:11px; opacity:1; visibility:visible; transform:none; box-shadow:none; background:rgba(235,245,252,.78); }
  .mobile-navigation .ta-menu .menu-item-has-children.is-submenu-open > .sub-menu { display:grid; }
  .mobile-navigation .ta-menu .sub-menu__intro,.mobile-navigation .ta-menu .sub-menu__all { grid-column:auto; }
}

/* V1.2 typography pass — larger UI copy and a modern, less generic type system. */
:root {
  --ta-sans: "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ta-serif: "DM Serif Display", Georgia, "Times New Roman", serif;
}
body { font-family:var(--ta-sans); font-size:18px; font-feature-settings:"liga" 1,"kern" 1; }
.eyebrow { font-size:11px; letter-spacing:.12em; }
.button { min-height:52px; padding:14px 20px; font-size:13px; }
.ta-menu a { font-size:12px; letter-spacing:.015em; }
.header-call { min-height:42px; padding:10px 17px 10px 10px; font-size:12px; }
.ta-menu .sub-menu a { font-size:12px; line-height:1.32; }
.ta-menu .sub-menu__intro { font-size:9px; }
.hero-home--crystal .hero-home__copy > p { font-size:18px; line-height:1.72; }
.hero-home__mini-proof--large { font-size:12px; }
.section-heading p { font-size:17px; line-height:1.72; }
.service-card { min-height:205px; }
.service-card h3 { font-size:16px; line-height:1.18; }
.service-card p { font-size:11.5px; line-height:1.55; -webkit-line-clamp:3; }
.service-card__badge { font-size:8px; }
.why-section__headline p { font-size:12px; }
.why-card h3 { font-size:13px; }.why-card p { font-size:11px; line-height:1.55; }
.tool-shell__intro > p { font-size:15px; }.tool-shell__note { font-size:11px; }.tool-form__topline { font-size:10px; }.income-entry > label,.choice-section > legend,.choice-section__label { font-size:12px; }.choice-option > span b { font-size:11px; }.choice-option > span small { font-size:9px; }.choice-grid--compact .choice-option > span b { font-size:10px; }.tool-result__columns h3,.attention-list h3 { font-size:13px; }.tool-result__columns li,.attention-list li { font-size:11px; }.tool-disclaimer { font-size:10px; }.score-overview p { font-size:11px; }.score-overview > div:last-child > span { font-size:11px; }.score-category span { font-size:11px; }.score-category b { font-size:10px; }.registration-checks label { font-size:11px; }
.process-line h3 { font-size:16px; }.process-line p { font-size:11px; }.stage-panel p { font-size:12px; }.stage-panel a { font-size:11px; }
.footer-menu a,.footer-contact-item { font-size:12px; }.footer-eyebrow,.footer-heading { font-size:10px; }.site-footer__intro > p:not(.footer-eyebrow) { font-size:12px; }
.directory-card p { font-size:12px; }.directory-card__bottom { font-size:11px; }.directory-card__group { font-size:9px; }.pricing-explainer > div > p { font-size:14px; }.pricing-explainer__points p { font-size:12px; }
.service-visual li { font-size:13px; }.service-story__body p { font-size:17px; }.workbench-card li,.workbench-card--accent p { font-size:12px; }.service-inclusions > div > p { font-size:15px; }.related-service-card span { font-size:13px; }
.contact-hero__quick span { font-size:12px; }.contact-side-card--blue p,.contact-side-card:not(.contact-side-card--blue) li { font-size:12px; }.field label { font-size:11px; }.field input,.field select,.field textarea { min-height:47px; font-size:14px; }
@media (max-width:620px) {
  body { font-size:17px; }
  .ta-menu a { font-size:13px; }
  .hero-home--crystal .hero-home__copy > p { font-size:16px; }
  .service-card { min-height:194px; }.service-card h3 { font-size:14px; }.service-card p { font-size:10.5px; }
  .choice-option > span b { font-size:10px; }.choice-option > span small { font-size:8px; }
  .tool-shell__intro > p { font-size:14px; }.service-story__body p { font-size:15px; }
}

/* V1.3 footer redesign — intentional desktop alignment and a clean stacked mobile footer. */
.site-footer--v13 { overflow:hidden; padding:0; background:linear-gradient(145deg,#031a31,#02101f 70%); }
.site-footer--v13::before { position:absolute; top:-220px; right:-185px; width:580px; height:580px; border:1px solid rgba(255,255,255,.13); border-radius:50%; content:''; }.site-footer--v13::after { position:absolute; top:-108px; right:-73px; width:355px; height:355px; border:1px solid rgba(222,15,63,.42); border-radius:50%; content:''; }
.footer-contact-rail { position:relative; z-index:1; display:grid; grid-template-columns:1.1fr .9fr; gap:42px; align-items:center; padding:62px 0 49px; border-bottom:1px solid rgba(255,255,255,.16); }.footer-contact-rail__copy { max-width:590px; }.footer-contact-rail__copy .eyebrow { color:#ff9aaf; }.footer-contact-rail__copy h2 { margin:17px 0 15px; color:#fff; font-family:var(--ta-sans); font-size:clamp(38px,4vw,61px); font-weight:800; letter-spacing:-.07em; line-height:.92; }.footer-contact-rail__copy h2 em { color:#ff6d8d; font-style:normal; }.footer-contact-rail__copy p { max-width:500px; margin:0; color:#b9d4e6; font-size:14px; line-height:1.7; }.footer-contact-rail__actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }.footer-call-card,.footer-mail-card { display:flex; align-items:center; min-width:0; gap:10px; min-height:72px; padding:13px; border:1px solid rgba(255,255,255,.16); border-radius:14px; background:rgba(255,255,255,.07); transition:transform .22s,background .22s,border .22s; }.footer-call-card:hover,.footer-mail-card:hover { transform:translateY(-4px); border-color:rgba(255,255,255,.5); background:rgba(255,255,255,.12); }.footer-call-card > i,.footer-mail-card > i { display:grid; place-items:center; flex:0 0 auto; width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.14); color:#fff; font-style:normal; }.footer-call-card > i svg,.footer-mail-card > i svg { width:16px; }.footer-call-card span,.footer-mail-card span { display:grid; min-width:0; gap:2px; }.footer-call-card small,.footer-mail-card small { color:#b7d5e9; font-size:8px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }.footer-call-card b,.footer-mail-card b { overflow:hidden; color:#fff; font-size:12px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }.footer-call-card em { display:grid; place-items:center; width:22px; height:22px; margin-left:auto; border-radius:50%; background:var(--ta-red); color:#fff; font-size:12px; font-style:normal; }.footer-whatsapp-card { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; padding:13px 16px; border-radius:12px; background:var(--ta-red); color:#fff; font-size:11px; font-weight:850; box-shadow:0 12px 24px rgba(222,15,63,.18); transition:transform .22s,background .22s; }.footer-whatsapp-card:hover { transform:translateY(-3px); background:#ed174b; }.footer-whatsapp-card i { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:rgba(255,255,255,.18); font-size:16px; font-style:normal; }
.footer-data-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.1fr .54fr .88fr .92fr; gap:46px; padding:48px 0 43px; }.footer-manifesto { padding-right:17px; }.footer-index { display:block; margin-bottom:18px; color:#ef7190; font-size:9px; font-weight:900; letter-spacing:.14em; }.footer-manifesto h3 { margin:0 0 14px; color:#fff; font-family:var(--ta-serif); font-size:43px; font-weight:400; letter-spacing:-.065em; line-height:.88; }.footer-manifesto h3 em { color:#ff6c8c; }.footer-manifesto p { max-width:290px; margin:0; color:#a6c1d3; font-size:12px; line-height:1.7; }.footer-status { display:flex; align-items:center; gap:8px; margin-top:21px; color:#d4e5ef; font-size:10px; font-weight:760; }.site-footer--v13 .footer-heading { margin:4px 0 18px; color:#83b6d9; font-size:9px; letter-spacing:.13em; }.site-footer--v13 .footer-menu { display:grid; gap:11px; }.site-footer--v13 .footer-menu a { color:#e5eef4; font-size:12px; }.site-footer--v13 .footer-menu a:hover { color:#ff7492; }.footer-service-links { display:grid; gap:0; border-top:1px solid rgba(255,255,255,.13); }.footer-service-links a { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:9px 0; border-bottom:1px solid rgba(255,255,255,.13); color:#d8e7f1; font-size:11px; line-height:1.35; transition:color .2s,padding .2s; }.footer-service-links a:hover { padding-left:5px; color:#ff7492; }.footer-service-links i { color:#ff7593; font-size:13px; font-style:normal; }.footer-all-services { display:inline-flex; gap:7px; margin-top:15px; border-bottom:1px solid currentColor; padding-bottom:3px; color:#fff; font-size:10px; font-weight:850; }.footer-all-services:hover { color:#ff7896; }.footer-address { display:flex; align-items:flex-start; gap:10px; color:#dbe9f1; font-size:12px; line-height:1.62; }.footer-address i { display:grid; place-items:center; flex:0 0 auto; width:28px; height:28px; border-radius:50%; background:rgba(222,15,63,.15); color:#ff7593; font-style:normal; }.footer-address svg { width:14px; }.footer-address:hover span { color:#fff; }.footer-mini-links { display:grid; gap:10px; margin-top:20px; }.footer-mini-links a { color:#9fc2d9; font-size:11px; font-weight:760; }.footer-mini-links a:hover { color:#ff7492; }.site-footer--v13 .site-footer__bottom { position:relative; z-index:1; min-height:67px; color:#87a5ba; font-size:10px; }.site-footer--v13 .site-footer__bottom > div { gap:21px; }.site-footer--v13 .site-footer__bottom a:hover { color:#fff; }

/* Phone-first stacking: no tiny footer columns or clipped contact data. */
@media (max-width:900px) { .footer-contact-rail { grid-template-columns:1fr; gap:27px; }.footer-contact-rail__actions { max-width:620px; }.footer-data-grid { grid-template-columns:1fr 1fr; gap:37px 29px; }.footer-manifesto { grid-column:1/-1; padding-right:0; }.footer-manifesto p { max-width:530px; }.footer-column--visit { grid-column:2; } }
@media (max-width:620px) { .site-footer--v13 { margin-top:0; }.footer-contact-rail { gap:23px; padding:47px 0 35px; }.footer-contact-rail__copy h2 { font-size:clamp(36px,11vw,49px); }.footer-contact-rail__copy p { font-size:13px; }.footer-contact-rail__actions { grid-template-columns:1fr; gap:9px; }.footer-call-card,.footer-mail-card { min-height:63px; }.footer-whatsapp-card { grid-column:auto; min-height:48px; }.footer-data-grid { grid-template-columns:1fr; gap:29px; padding:34px 0; }.footer-manifesto { grid-column:auto; }.footer-manifesto h3 { font-size:40px; }.footer-column--visit { grid-column:auto; }.site-footer--v13 .site-footer__bottom { align-items:flex-start; gap:12px; padding:18px 0 21px; }.site-footer--v13 .site-footer__bottom > div { display:flex; flex-wrap:wrap; gap:10px 15px; }.site-footer--v13 .footer-menu { grid-template-columns:1fr 1fr; gap:10px 18px; }.footer-service-links a { font-size:12px; }.footer-address { max-width:325px; } }

/* Extra-small devices: content cards become single-column rather than cramped. */
@media (max-width:430px) { .service-grid { grid-template-columns:1fr; }.service-card { min-height:165px; }.service-card__link { padding:18px; }.service-card h3 { font-size:17px; }.service-card p { font-size:12px; }.why-section__cards { grid-template-columns:1fr; }.why-card { display:grid; grid-template-columns:42px 1fr; gap:0 12px; text-align:left; padding:16px 5px; border-bottom:1px solid var(--ta-line) !important; }.why-card::after { display:none; }.why-card i { grid-row:1/3; margin:0; }.why-card h3 { align-self:end; margin:0; font-size:14px; }.why-card p { margin:4px 0 0; font-size:11px; }.hero-crystal-scene { width:100%; margin:0; transform:none; }.choice-grid--three { grid-template-columns:1fr 1fr; }.choice-grid--three .choice-option:last-child { grid-column:1/-1; }.stage-tabs__controls { grid-template-columns:1fr; }.cta-contact-options { gap:9px; } }
