.fc-home-v2{
  --orange: #eb6d12;
  --orange-bright: #ef7f1a;
  --gold: #e9c75d;
  --ink: #17120b;
  --night: #14110a;
  --cream: #fdfcf8;
  --sand: #f6f1e6;
  --muted: #5d5448;
  --line: rgba(23, 18, 11, 0.13);
  --light-line: rgba(255, 255, 255, 0.16);
  --surface: #fffdf8;
  --surface-strong: #ffffff;
  --radius: 0;
  --serif: "Marcellus", Georgia, serif;
  --sans: "Jost", system-ui, sans-serif;
  --pad: clamp(20px, 5vw, 80px);
  --gutter: clamp(20px, 3vw, 52px);
  --max: 1400px;
  --shadow: 0 24px 70px -42px rgba(23, 18, 11, 0.38);
}

.fc-home-v2 *, .fc-home-v2 *::before, .fc-home-v2 *::after{ box-sizing: border-box; }
.fc-home-v2{ scroll-behavior: smooth; }
.fc-home-v2{ margin: 0; color: var(--ink); background: #f3eee5; font: 400 16px/1.6 var(--sans); -webkit-font-smoothing: antialiased; }
.fc-home-v2 main, .fc-home-v2 .site-header, .fc-home-v2 .site-footer, .fc-home-v2 .floating-whatsapp{ position: relative; z-index: 1; }
.fc-home-v2 .ambient-webgl{ position: fixed; z-index: 0; inset: 0; width: 100%; height: 100%; pointer-events: none; opacity: 0; transition: opacity .35s ease; }
.fc-home-v2 .ambient-webgl.is-visible{ opacity: .34; }
.fc-home-v2 section[id]{ scroll-margin-top: 125px; }
.fc-home-v2.menu-open{ overflow: hidden; }
.fc-home-v2 img{ display: block; max-width: 100%; }
.fc-home-v2 .svg-sprite{ position: absolute; width: 0; height: 0; overflow: hidden; }
.fc-home-v2 [hidden]{ display: none !important; }
.fc-home-v2 a{ color: inherit; }
.fc-home-v2 button, .fc-home-v2 input, .fc-home-v2 select, .fc-home-v2 textarea{ font: inherit; }
.fc-home-v2 button{ color: inherit; }
.fc-home-v2 h1, .fc-home-v2 h2, .fc-home-v2 h3, .fc-home-v2 p, .fc-home-v2 figure, .fc-home-v2 blockquote, .fc-home-v2 dl, .fc-home-v2 dd{ margin: 0; }
.fc-home-v2 h1, .fc-home-v2 h2{ font-family: var(--serif); font-weight: 400; }
.fc-home-v2 h2{ font-size: clamp(1.85rem, 3vw, 3.35rem); line-height: 1.1; letter-spacing: -0.025em; }
.fc-home-v2 h3{ line-height: 1.2; }
.fc-home-v2 .container{ width: min(calc(100% - (var(--gutter) * 2)), var(--max)); margin-inline: auto; padding-inline: 0; }
.fc-home-v2 .section{ position: relative; padding-block: clamp(78px, 7.5vw, 116px); }
.fc-home-v2 .sr-only{ position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.fc-home-v2 .skip-link{ position: fixed; top: 10px; left: 10px; z-index: 1000; padding: 10px 16px; color: #fff; background: var(--ink); transform: translateY(-150%); }
.fc-home-v2 .skip-link:focus{ transform: none; }
.fc-home-v2 :focus-visible{ outline: 3px solid var(--gold); outline-offset: 4px; }

.fc-home-v2 .eyebrow{ display: flex; align-items: center; gap: 15px; color: var(--gold); font-size: 0.72rem; font-weight: 600; letter-spacing: 0.25em; text-transform: uppercase; }
.fc-home-v2 .eyebrow span{ width: 42px; height: 1px; background: currentColor; }
.fc-home-v2 .eyebrow.dark{ color: #a55218; }
.fc-home-v2 .button{ display: inline-flex; min-height: 54px; align-items: center; justify-content: center; gap: 28px; padding: 13px 25px; border: 1px solid transparent; border-radius: 0; text-decoration: none; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; transition: transform .22s ease, color .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease; cursor: pointer; }
.fc-home-v2 .button:hover{ transform: translateY(-2px); }
.fc-home-v2 .button-primary{ color: #fff; background: linear-gradient(110deg, var(--orange), var(--orange-bright)); box-shadow: 0 14px 34px -18px rgba(235,109,18,.8); }
.fc-home-v2 .button-primary:hover{ background: #c95008; box-shadow: 0 18px 40px -18px rgba(235,109,18,.9); }
.fc-home-v2 .button-ghost{ color: #fff; border-color: rgba(255,255,255,.45); background: rgba(17,13,8,.16); backdrop-filter: blur(8px); }
.fc-home-v2 .button-ghost:hover{ border-color: var(--gold); }
.fc-home-v2 .button-small{ min-height: 44px; padding: 9px 18px; font-size: 0.68rem; }
.fc-home-v2 .button-outline{ color: #fff; border-color: rgba(255,255,255,.44); }
.fc-home-v2 .text-link{ display: inline-flex; align-items: center; gap: 16px; color: #a74b0d; font-size: .78rem; font-weight: 600; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; }
.fc-home-v2 .text-link span{ transition: transform .2s ease; }
.fc-home-v2 .text-link:hover span{ transform: translate(3px,-3px); }

.fc-home-v2 .site-header{ position: fixed; inset: 0 0 auto; z-index: 100; color: #fff; transition: background .35s ease, box-shadow .35s ease; }
.fc-home-v2 .site-header.is-scrolled{ color: var(--ink); background: rgba(255,253,248,.97); box-shadow: 0 12px 38px rgba(23,18,11,.12); backdrop-filter: blur(14px); }
.fc-home-v2 .alert-bar{ min-height: 36px; display: flex; align-items: center; justify-content: center; gap: 24px; padding: 6px var(--pad); color: #fff; background: var(--orange); font-size: .76rem; letter-spacing: .04em; }
.fc-home-v2 .alert-bar p span{ font-weight: 600; text-transform: uppercase; }
.fc-home-v2 .alert-bar a{ font-weight: 600; }
.fc-home-v2 .alert-bar button{ position: absolute; right: 18px; border: 0; color: #fff; background: none; font-size: 1.25rem; cursor: pointer; }
.fc-home-v2 .alert-bar[hidden]{ display: none; }
.fc-home-v2 .nav-shell{ width: min(calc(100% - (var(--gutter) * 2)), var(--max)); min-height: 86px; position: relative; z-index: 100; margin: 0 auto; padding: 6px 0; display: flex; align-items: center; justify-content: space-between; gap: 35px; border-bottom: 1px solid rgba(255,255,255,.18); }
.fc-home-v2 .brand{ position: relative; width: 174px; height: 74px; display: flex; align-items: center; overflow: visible; }
.fc-home-v2 .brand-logo{ position: absolute; inset: 50% auto auto 0; width: 164px; height: auto; filter: none; transform: translateY(-50%); transition: opacity .25s ease; }
.fc-home-v2 .brand-logo-white{ opacity: 1; }
.fc-home-v2 .brand-logo-color{ opacity: 0; }
.fc-home-v2 .site-header.is-scrolled .brand-logo-white{ opacity: 0; }
.fc-home-v2 .site-header.is-scrolled .brand-logo-color{ opacity: 1; }
.fc-home-v2 .site-header.is-scrolled .nav-shell{ border-bottom-color: var(--line); }
.fc-home-v2 .site-header.is-scrolled .nav-whatsapp{ color: #a55218; }
.fc-home-v2 .site-header.is-scrolled .button-outline{ color: var(--ink); border-color: var(--line); }
.fc-home-v2 .site-header.is-scrolled .menu-button > span:not(.sr-only){ background: var(--ink); }
.fc-home-v2 .footer-brand img{ width: 164px; height: auto; filter: none; }
.fc-home-v2 .desktop-nav{ display: flex; align-items: center; gap: clamp(20px, 2.5vw, 40px); margin-left: auto; }
.fc-home-v2 .desktop-nav a{ position: relative; text-decoration: none; font-size: .7rem; font-weight: 500; letter-spacing: .17em; text-transform: uppercase; }
.fc-home-v2 .desktop-nav a::after{ content: ""; position: absolute; left: 0; right: 100%; bottom: -10px; height: 1px; background: var(--orange); transition: right .25s ease; }
.fc-home-v2 .desktop-nav a:hover::after{ right: 0; }
.fc-home-v2 .nav-actions{ display: flex; align-items: center; gap: 18px; }
.fc-home-v2 .nav-whatsapp{ color: var(--gold); font-size: .7rem; font-weight: 600; letter-spacing: .12em; text-decoration: none; text-transform: uppercase; }
.fc-home-v2 .menu-button{ display: none; width: 46px; height: 46px; padding: 11px 8px; border: 0; background: transparent; cursor: pointer; }
.fc-home-v2 .menu-button > span:not(.sr-only){ display: block; width: 28px; height: 1px; margin: 6px auto; background: #fff; transition: transform .25s ease, opacity .25s ease; }
.fc-home-v2 .menu-button[aria-expanded="true"] > span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
.fc-home-v2 .menu-button[aria-expanded="true"] > span:nth-child(2){ opacity: 0; }
.fc-home-v2 .menu-button[aria-expanded="true"] > span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }
.fc-home-v2 .mobile-menu{ position: fixed; inset: 0; z-index: -1; display: grid; align-content: center; grid-template-columns: 1.3fr 1fr; gap: 12vw; padding: 140px var(--pad) 60px; color: #fff; background: var(--night); visibility: hidden; opacity: 0; transition: opacity .25s ease, visibility .25s ease; }
.fc-home-v2 .mobile-menu[data-open="true"]{ z-index: 90; visibility: visible; opacity: 1; }
.fc-home-v2 .mobile-menu nav{ display: grid; }
.fc-home-v2 .mobile-menu nav a{ display: flex; justify-content: space-between; padding: 12px 0; border-bottom: 1px solid var(--light-line); font: 400 clamp(2rem, 5vw, 4rem)/1.2 var(--serif); text-decoration: none; }
.fc-home-v2 .mobile-menu nav span{ color: var(--orange); font: 500 .7rem/1 var(--sans); letter-spacing: .12em; }
.fc-home-v2 .mobile-menu-contact{ align-self: end; display: grid; gap: 8px; }
.fc-home-v2 .mobile-menu-contact p{ margin-bottom: 10px; color: var(--gold); font-size: .7rem; letter-spacing: .2em; text-transform: uppercase; }
.fc-home-v2 .mobile-menu-contact a{ text-decoration: none; }

.fc-home-v2 .hero{ min-height: max(790px, 100svh); position: relative; display: grid; align-items: center; overflow: hidden; color: #fff; background: var(--night); }
.fc-home-v2 .hero-media{ position: absolute; inset: -4%; background: linear-gradient(90deg, rgba(12,9,5,.93) 0%, rgba(14,10,6,.74) 42%, rgba(15,11,7,.25) 100%), url("/static/assets/homepage-v2/hero-temp.jpg") center/cover no-repeat; transform: translate3d(0, var(--hero-y, 0), 0) scale(1.045); will-change: transform; }
.fc-home-v2 .hero::after{ content: ""; position: absolute; inset: auto 0 0; height: 25%; background: linear-gradient(transparent, rgba(10,7,4,.62)); pointer-events: none; }
.fc-home-v2 .hero-content{ min-width: 0; position: relative; z-index: 1; padding-top: 150px; padding-bottom: 50px; }
.fc-home-v2 .hero h1{ max-width: 880px; margin-top: 22px; font-size: clamp(2.3rem, 3.45vw, 4rem); line-height: 1.07; letter-spacing: -.035em; }
.fc-home-v2 .hero h1 em{ color: var(--gold); font-style: normal; }
.fc-home-v2 .hero-lead{ max-width: 610px; margin-top: 22px; color: rgba(255,255,255,.82); font-size: clamp(1rem, 1.15vw, 1.14rem); line-height: 1.6; }
.fc-home-v2 .hero-service-pills{ list-style: none; min-width: 0; display: flex; flex-wrap: wrap; gap: 8px; max-width: 760px; margin: 20px 0 0; padding: 0; }
.fc-home-v2 .hero-service-pills li{ padding: 8px 13px; border: 1px solid rgba(255,255,255,.24); border-radius: 0; color: rgba(255,255,255,.82); background: rgba(17,13,8,.2); backdrop-filter: blur(9px); font-size: .68rem; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.fc-home-v2 .hero-service-pills li::before,
.fc-home-v2 .hero-service-pills li::after{ content: none !important; display: none !important; }
.fc-home-v2 .hero-service-pills li::marker{ content: ""; }
.fc-home-v2 .hero-actions{ display: flex; gap: 12px; margin-top: 24px; }
.fc-home-v2 .hero-proof{ width: min(100%, 1000px); display: grid; grid-template-columns: repeat(5, minmax(140px, 1fr)); gap: clamp(12px, 2vw, 24px); margin-top: 28px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
.fc-home-v2 .hero-proof::-webkit-scrollbar{ display: none; }
.fc-home-v2 .hero-proof-item{ min-width: 0; display: grid; gap: 2px; padding-left: 18px; border-left: 1px solid rgba(255,255,255,.3); }
.fc-home-v2 .hero-proof strong{ font: 400 1.7rem/1 var(--serif); }
.fc-home-v2 .hero-proof span{ color: rgba(255,255,255,.66); font-size: .7rem; letter-spacing: .09em; text-transform: uppercase; }
.fc-home-v2 .hero-scroll{ position: absolute; z-index: 2; right: var(--pad); bottom: 30px; display: flex; align-items: center; gap: 12px; color: rgba(255,255,255,.7); font-size: .67rem; letter-spacing: .18em; text-decoration: none; text-transform: uppercase; }
.fc-home-v2 .hero-scroll span{ width: 48px; height: 1px; background: var(--orange); }

.fc-home-v2 .section-heading{ display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-bottom: clamp(38px, 4.5vw, 62px); }
.fc-home-v2 .section-heading > div{ max-width: 820px; }
.fc-home-v2 .section-heading h2{ margin-top: 18px; }
.fc-home-v2 .section-heading > p{ max-width: 410px; color: var(--muted); font-size: 1.08rem; }
.fc-home-v2 .company-intro{ overflow: hidden; background: #eee8de; }
.fc-home-v2 .company-intro-grid{ display: grid; grid-template-columns: minmax(360px, .84fr) minmax(0, 1.36fr); grid-template-rows: auto auto 1fr; gap: 0; align-items: stretch; padding: 0; overflow: hidden; border: 0; border-radius: 0; background: #fff; box-shadow: 0 32px 78px -54px rgba(23,18,11,.58); }
.fc-home-v2 .coverage-overview{ grid-column: 2; grid-row: 1; display: block; padding: 54px 62px 36px; border-bottom: 1px solid var(--line); }
.fc-home-v2 .coverage-copy{ max-width: none; margin-top: 26px; color: var(--muted); font-size: .98rem; line-height: 1.75; }
.fc-home-v2 .coverage-copy p + p{ margin-top: 16px; }
.fc-home-v2 .company-intro-primary{ position: relative; grid-column: 1; grid-row: 1 / 4; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; padding: 60px 56px 48px; color: #fff; background: var(--ink); }
.fc-home-v2 .company-intro-primary::after{ content: ""; position: absolute; top: 0; right: 0; width: 5px; height: 35%; background: var(--orange); }
.fc-home-v2 .company-intro-primary .eyebrow{ color: var(--gold); }
.fc-home-v2 .company-intro-primary h2{ max-width: 480px; margin-top: 34px; color: #fff; font-size: clamp(2.35rem, 3.5vw, 3.45rem); line-height: 1.08; }
.fc-home-v2 .company-intro-lead{ max-width: 430px; margin-top: 28px; color: rgba(255,255,255,.66); font-size: 1.02rem; line-height: 1.65; }
.fc-home-v2 .company-intro-primary .text-link{ width: 100%; display: flex; justify-content: space-between; margin-top: 38px; padding: 18px 0; border-top: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); color: #fff; }
.fc-home-v2 .company-intro-igniter{ position: relative; width: clamp(92px, 9vw, 132px); aspect-ratio: 1; display: grid; place-items: center; align-self: center; margin: clamp(38px, 5vw, 64px) auto 0; padding: 0; border: 0; color: inherit; background: transparent; cursor: url("/static/assets/homepage-v2/matchstick-cursor.png") 11 14, pointer; isolation: isolate; }
.fc-home-v2 .company-intro-igniter::before{ content: ""; position: absolute; z-index: -1; inset: 18%; border-radius: 50%; opacity: 0; background: radial-gradient(circle, rgba(255,196,45,.72), rgba(235,109,18,.25) 48%, transparent 72%); transform: scale(.35); }
.fc-home-v2 .company-intro-igniter::after{ content: ""; position: absolute; z-index: -1; inset: 8%; border: 1px solid rgba(255,196,45,.7); border-radius: 50%; opacity: 0; transform: scale(.55); }
.fc-home-v2 .company-intro-mark{ width: 100%; height: auto; object-fit: contain; filter: grayscale(1) saturate(0) brightness(.82) contrast(1.35) drop-shadow(0 16px 28px rgba(0,0,0,.2)); transform-origin: 50% 76%; transition: filter .22s ease, transform .16s cubic-bezier(.16,1,.3,1); }
.fc-home-v2 .company-intro-igniter:hover .company-intro-mark, .fc-home-v2 .company-intro-igniter:focus-visible .company-intro-mark{ transform: scale(1.045); }
.fc-home-v2 .company-intro-igniter:active .company-intro-mark{ transform: scale(.96); }
.fc-home-v2 .company-intro-igniter.is-lit .company-intro-mark{ filter: grayscale(0) saturate(1) brightness(1) contrast(1) drop-shadow(0 14px 24px rgba(235,109,18,.32)); }
.fc-home-v2 .company-intro-igniter.is-igniting .company-intro-mark{ animation: flame-ignite .58s cubic-bezier(.34,1.56,.64,1); }
.fc-home-v2 .company-intro-igniter.is-igniting::before{ animation: flame-glow .58s ease-out; }
.fc-home-v2 .company-intro-igniter.is-igniting::after{ animation: flame-ring .5s ease-out; }
.fc-home-v2 .company-intro-sparks{ position: absolute; z-index: 2; inset: 50%; pointer-events: none; }
.fc-home-v2 .company-intro-sparks i{ --spark-x: 0px; --spark-y: -50px; position: absolute; width: 5px; height: 5px; border-radius: 50%; opacity: 0; background: var(--gold); box-shadow: 0 0 8px rgba(255,196,45,.8); }
.fc-home-v2 .company-intro-sparks i:nth-child(1){ --spark-x: -46px; --spark-y: -42px; }
.fc-home-v2 .company-intro-sparks i:nth-child(2){ --spark-x: -24px; --spark-y: -64px; }
.fc-home-v2 .company-intro-sparks i:nth-child(3){ --spark-x: 6px; --spark-y: -72px; }
.fc-home-v2 .company-intro-sparks i:nth-child(4){ --spark-x: 38px; --spark-y: -54px; }
.fc-home-v2 .company-intro-sparks i:nth-child(5){ --spark-x: 52px; --spark-y: -22px; }
.fc-home-v2 .company-intro-sparks i:nth-child(6){ --spark-x: -54px; --spark-y: -12px; }
.fc-home-v2 .company-intro-sparks i:nth-child(7){ --spark-x: 32px; --spark-y: 4px; }
.fc-home-v2 .company-intro-sparks i:nth-child(8){ --spark-x: -30px; --spark-y: 8px; }
.fc-home-v2 .company-intro-igniter.is-igniting .company-intro-sparks i{ animation: spark-fly .5s ease-out both; }
.fc-home-v2 .company-intro-igniter.is-igniting .company-intro-sparks i:nth-child(even){ animation-delay: .05s; }
@keyframes flame-ignite {
  0% { transform: scale(.88) rotate(-3deg); }
  38% { transform: scale(1.16) rotate(2deg); }
  68% { transform: scale(.97) rotate(-1deg); }
  100% { transform: scale(1) rotate(0); }
}
@keyframes flame-glow {
  0% { opacity: 0; transform: scale(.35); }
  35% { opacity: 1; transform: scale(1.08); }
  100% { opacity: 0; transform: scale(1.55); }
}
@keyframes flame-ring {
  0% { opacity: 0; transform: scale(.55); }
  30% { opacity: .9; }
  100% { opacity: 0; transform: scale(1.5); }
}
@keyframes spark-fly {
  0% { opacity: 0; transform: translate(0, 8px) scale(.35); }
  24% { opacity: 1; }
  100% { opacity: 0; transform: translate(var(--spark-x), var(--spark-y)) scale(0); }
}
.fc-home-v2 .company-intro-proof{ width: 100%; display: grid; grid-template-columns: 1fr 1fr; margin-top: auto; padding-top: 68px; }
.fc-home-v2 .company-intro-proof div{ padding-top: 20px; border-top: 1px solid rgba(255,255,255,.16); }
.fc-home-v2 .company-intro-proof div + div{ padding-left: 22px; border-left: 1px solid rgba(255,255,255,.16); }
.fc-home-v2 .company-intro-proof strong{ display: block; color: var(--orange); font: 400 1.55rem/1 var(--serif); }
.fc-home-v2 .company-intro-proof span{ display: block; margin-top: 7px; color: rgba(255,255,255,.5); font-size: .58rem; letter-spacing: .12em; text-transform: uppercase; }
.fc-home-v2 .company-intro-expertise{ grid-column: 2; grid-row: 2; display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 34px; padding: 36px 62px; border-bottom: 1px solid var(--line); }
.fc-home-v2 .company-intro-group-label strong{ display: block; color: var(--orange); font: 400 2.2rem/1 var(--serif); }
.fc-home-v2 .company-intro-group-label span{ display: block; margin-top: 9px; color: #9b6842; font-size: .58rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.fc-home-v2 .company-intro-expertise h3, .fc-home-v2 .company-intro-detail-heading h3{ font: 400 clamp(1.5rem, 2vw, 1.9rem)/1.18 var(--serif); }
.fc-home-v2 .company-intro-expertise-grid{ display: grid; grid-template-columns: 1fr 1fr; margin-top: 24px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.fc-home-v2 .company-intro-expertise-grid span{ min-height: 66px; display: flex; align-items: center; gap: 13px; padding: 14px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font: 400 .92rem/1.25 var(--serif); }
.fc-home-v2 .company-intro-expertise-grid b{ color: var(--orange); font: 600 .58rem/1 var(--sans); letter-spacing: .1em; }
.fc-home-v2 .company-intro-copy{ grid-column: 2; grid-row: 3; padding: 36px 62px 52px; border: 0; border-radius: 0; background: #fff; }
.fc-home-v2 .company-intro-detail-heading{ display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 34px; margin-bottom: 22px; }
.fc-home-v2 .company-intro-copy > p{ margin-left: 194px; color: var(--muted); font-size: .9rem; line-height: 1.68; }
.fc-home-v2 .company-intro-copy > p + p{ margin-top: 16px; }
.fc-home-v2 .service-finder{ background: #fbf8f2; }
.fc-home-v2 .service-explorer{ display: grid; grid-template-columns: minmax(220px, .62fr) 2.2fr; overflow: hidden; border: 1px solid rgba(23,18,11,.1); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.fc-home-v2 .service-tabs{ display: grid; align-content: stretch; padding: 10px; border-right: 1px solid var(--line); background: #f0eadf; }
.fc-home-v2 .service-tabs button{ min-height: 82px; display: flex; align-items: center; gap: 22px; padding: 18px 20px; border: 0; border-radius: 0; color: var(--muted); background: transparent; text-align: left; font-size: 1rem; cursor: pointer; transition: color .22s ease, background .22s ease, transform .22s ease; }
.fc-home-v2 .service-tabs button:last-child{ border-bottom: 0; }
.fc-home-v2 .service-tabs button span{ color: #a56232; font-size: .67rem; letter-spacing: .1em; }
.fc-home-v2 .service-tabs button:hover{ transform: translateX(3px); }
.fc-home-v2 .service-tabs button[aria-selected="true"]{ color: #fff; background: linear-gradient(135deg, #df5d08, var(--orange-bright)); box-shadow: 0 16px 30px -20px rgba(194,77,5,.85); }
.fc-home-v2 .service-tabs button[aria-selected="true"] span{ color: #fff; }
.fc-home-v2 .service-panels{ min-height: 420px; }
.fc-home-v2 .service-panel{ height: 100%; display: grid; grid-template-columns: 1.1fr 1fr; }
.fc-home-v2 .service-intro{ display: flex; flex-direction: column; justify-content: center; padding: clamp(35px, 5vw, 78px); }
.fc-home-v2 .service-intro > span{ color: #a55218; font-size: .72rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.fc-home-v2 .service-intro h3{ max-width: 520px; margin-top: 22px; font: 400 clamp(1.55rem, 2vw, 2.45rem)/1.12 var(--serif); }
.fc-home-v2 .service-intro p{ max-width: 500px; margin-top: 22px; color: var(--muted); }
.fc-home-v2 .service-links{ display: grid; align-content: center; padding: clamp(28px, 4vw, 62px); background: radial-gradient(circle at 90% 10%, rgba(235,109,18,.22), transparent 35%), var(--ink); }
.fc-home-v2 .service-links a{ display: flex; justify-content: space-between; gap: 20px; padding: 20px 4px; border-bottom: 1px solid var(--light-line); color: #fff; text-decoration: none; font: 400 clamp(1.25rem, 2vw, 1.75rem)/1.2 var(--serif); transition: color .2s ease, padding .2s ease; }
.fc-home-v2 .service-links a:hover{ padding-inline: 10px; color: var(--gold); }

.fc-home-v2 .content-block{ background: #fff; }
.fc-home-v2 .content-shell{ display: grid; gap: clamp(34px, 5vw, 58px); }
.fc-home-v2 .content-intro{ display: grid; grid-template-columns: minmax(0,1fr) minmax(260px,.5fr); align-items: end; gap: 22px 70px; padding: 0 0 clamp(30px, 4vw, 48px); border-bottom: 1px solid var(--line); color: var(--ink); }
.fc-home-v2 .content-intro .eyebrow{ color: #a55218; }
.fc-home-v2 .content-intro .eyebrow, .fc-home-v2 .content-intro h2{ grid-column: 1; }
.fc-home-v2 .content-intro h2{ max-width: 900px; margin-top: -4px; }
.fc-home-v2 .content-intro > p:last-child{ grid-column: 2; grid-row: 1 / 3; max-width: 440px; color: var(--muted); font-size: 1.05rem; }
.fc-home-v2 .financial-route{ display: grid; grid-template-columns: minmax(0,1fr) 72px minmax(0,1fr) 72px minmax(0,1fr); align-items: center; padding: 18px 0; border-block: 1px solid var(--line); }
.fc-home-v2 .financial-route div{ display: flex; align-items: center; gap: 14px; }
.fc-home-v2 .financial-route span{ color: var(--orange); font-size: .64rem; font-weight: 600; letter-spacing: .12em; }
.fc-home-v2 .financial-route strong{ font: 400 1.05rem/1.2 var(--serif); }
.fc-home-v2 .financial-route i{ width: 34px; height: 34px; display: grid; place-items: center; justify-self: center; color: #fff; border-radius: 50%; background: var(--orange); font-style: normal; }
.fc-home-v2 .content-pillar-grid{ display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); border-block: 1px solid var(--line); }
.fc-home-v2 .content-pillar{ min-width: 0; padding: clamp(28px, 4vw, 48px); border-right: 1px solid var(--line); }
.fc-home-v2 .content-pillar:last-child{ border-right: 0; }
.fc-home-v2 .content-pillar-top{ display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.fc-home-v2 .content-pillar-top span{ color: var(--orange); font-size: .68rem; font-weight: 600; letter-spacing: .12em; }
.fc-home-v2 .content-pillar-top svg{ width: 32px; height: 32px; fill: none; stroke: var(--orange); stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.fc-home-v2 .content-pillar h3{ margin-top: 34px; font: 400 clamp(1.3rem, 1.8vw, 1.7rem)/1.15 var(--serif); }
.fc-home-v2 .content-pillar p{ margin-top: 18px; color: var(--muted); font-size: .95rem; line-height: 1.72; }
.fc-home-v2 .content-pillar.content-lead{ color: #fff; background: var(--ink); }
.fc-home-v2 .content-pillar.content-lead h3{ color: #fff; }
.fc-home-v2 .content-pillar.content-lead p{ color: rgba(255,255,255,.68); }
.fc-home-v2 .content-pillar.content-lead .content-pillar-top svg{ stroke: var(--gold); }
.fc-home-v2 .content-tags{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: -12px; padding: 0; border: 0; border-radius: 0; background: transparent; }
.fc-home-v2 .content-tags span{ padding: 8px 12px; border: 1px solid rgba(235,109,18,.2); border-radius: 0; color: #a55218; background: #fff8f1; font-size: .64rem; font-weight: 600; letter-spacing: .11em; text-transform: uppercase; }

.fc-home-v2 .tax-agent{ overflow: hidden; perspective: 1600px; color: #fff; background: radial-gradient(circle at 8% 10%, rgba(235,109,18,.22), transparent 30%), radial-gradient(circle at 92% 90%, rgba(233,199,93,.08), transparent 28%), rgba(20,17,10,.94); }
.fc-home-v2 .tax-agent::before{ content: ""; position: absolute; inset: 0; opacity: .12; background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(to bottom, #000, transparent 90%); pointer-events: none; }
.fc-home-v2 .tax-agent-grid{ position: relative; z-index: 1; display: grid; gap: clamp(38px, 5vw, 70px); transform-style: preserve-3d; }
.fc-home-v2 .tax-agent-intro{ display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(260px, .55fr); gap: 30px 90px; align-items: end; }
.fc-home-v2 .tax-agent-intro h2{ max-width: 980px; margin-top: 20px; color: #fff; }
.fc-home-v2 .tax-agent-intro > p{ max-width: 400px; padding-bottom: 8px; color: rgba(255,255,255,.62); font-size: 1.02rem; line-height: 1.65; }
.fc-home-v2 .fta-representation{ position: relative; color: var(--ink); background: #fffaf2; box-shadow: 0 38px 90px -38px rgba(0,0,0,.95); transform: rotateX(1deg) rotateY(-.5deg); transform-origin: center top; transform-style: preserve-3d; backface-visibility: hidden; }
.fc-home-v2 .fta-route{ position: relative; display: grid; grid-template-columns: minmax(0,1fr) 52px minmax(0,1.18fr) 52px minmax(0,1fr); align-items: stretch; transform-style: preserve-3d; }
.fc-home-v2 .fta-route > i{ display: grid; place-items: center; color: var(--orange); background: #f2eadf; font: normal 400 1.3rem/1 var(--sans); transform: translateZ(18px); }
.fc-home-v2 .fta-party{ min-height: 190px; display: flex; flex-direction: column; justify-content: center; padding: clamp(28px, 4vw, 48px); }
.fc-home-v2 .fta-party > span{ color: var(--orange); font-size: .64rem; font-weight: 600; letter-spacing: .14em; }
.fc-home-v2 .fta-party small{ margin-top: 20px; color: #8b705b; font-size: .66rem; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.fc-home-v2 .fta-party strong{ max-width: 260px; margin-top: 9px; font: 400 clamp(1.25rem, 1.8vw, 1.65rem)/1.16 var(--serif); }
.fc-home-v2 .fta-party-agent{ position: relative; z-index: 2; color: #fff; background: var(--orange); box-shadow: 0 26px 45px -25px rgba(77,31,4,.75); transform: translateZ(34px); }
.fc-home-v2 .fta-party-agent > span, .fc-home-v2 .fta-party-agent small{ color: rgba(255,255,255,.76); }
.fc-home-v2 .fta-party-agent em{ margin-top: 24px; color: rgba(255,255,255,.84); font-size: .68rem; font-style: normal; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.fc-home-v2 .fta-service-line{ display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(23,18,11,.1); }
.fc-home-v2 .fta-service-line span{ min-height: 56px; display: grid; place-items: center; padding: 10px; border-right: 1px solid rgba(23,18,11,.1); color: #795c46; font-size: .65rem; font-weight: 600; letter-spacing: .11em; text-align: center; text-transform: uppercase; }
.fc-home-v2 .fta-service-line span:last-child{ border-right: 0; }
.fc-home-v2 .tax-agent-copy{ display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid var(--light-line); }
.fc-home-v2 .tax-agent-copy article{ display: grid; grid-template-columns: 58px minmax(0,1fr); gap: 22px; padding: clamp(34px, 4vw, 54px) clamp(0px, 4vw, 58px); border-bottom: 1px solid var(--light-line); }
.fc-home-v2 .tax-agent-copy article:nth-child(odd){ padding-left: 0; border-right: 1px solid var(--light-line); }
.fc-home-v2 .tax-agent-copy article:nth-child(even){ padding-right: 0; }
.fc-home-v2 .tax-agent-copy article > span{ color: rgba(233,199,93,.72); font: 400 2.15rem/1 var(--serif); }
.fc-home-v2 .tax-kicker{ margin-bottom: 8px; color: var(--gold) !important; font-size: .62rem !important; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.fc-home-v2 .tax-agent-copy h3{ margin-bottom: 14px; color: #fff; font: 400 clamp(1.3rem, 1.7vw, 1.65rem)/1.2 var(--serif); }
.fc-home-v2 .tax-agent-copy p{ color: rgba(255,255,255,.67); line-height: 1.72; transition: color .22s ease; }
.fc-home-v2 .tax-agent-copy article:hover p{ color: rgba(255,255,255,.9); }

.fc-home-v2 .numbers{ padding-block: 22px; color: #fff; background: linear-gradient(110deg, #d95508, var(--orange) 48%, #f28a21); }
.fc-home-v2 .numbers-grid{ display: grid; grid-template-columns: repeat(4, 1fr); }
.fc-home-v2 .number-card{ min-height: 104px; display: flex; flex-wrap: wrap; align-content: center; padding: 12px clamp(18px, 3vw, 38px); border-right: 1px solid rgba(255,255,255,.3); }
.fc-home-v2 .number-card:last-child{ border-right: 0; }
.fc-home-v2 .number-card span, .fc-home-v2 .number-card b{ font: 400 clamp(2.1rem, 3vw, 3.25rem)/1 var(--serif); }
.fc-home-v2 .number-card p{ flex-basis: 100%; max-width: 190px; margin-top: 8px; color: rgba(255,255,255,.82); font-size: .65rem; letter-spacing: .1em; text-transform: uppercase; }
.fc-home-v2 .rating-value{ flex-basis: 100%; display: flex; align-items: center; gap: 12px; }
.fc-home-v2 .rating-stars{ display: flex; gap: 3px; color: #fff; font-size: clamp(.66rem, .9vw, .84rem); line-height: 1; }
.fc-home-v2 .rating-stars i{ font-style: normal; }

.fc-home-v2 .advisory{ overflow: clip; background: #f8f4ec; }
.fc-home-v2 .advisory-heading{ max-width: 1050px; margin-bottom: clamp(44px, 6vw, 76px); }
.fc-home-v2 .advisory-heading h2{ margin-top: 18px; }
.fc-home-v2 .advisory-heading-note{ max-width: 620px; margin-top: 22px; color: var(--muted); font-size: 1.04rem; }
.fc-home-v2 .advisory-experience{ display: grid; grid-template-columns: minmax(320px,.78fr) minmax(0,1.22fr); gap: clamp(48px, 7vw, 100px); align-items: start; }
.fc-home-v2 .advisory-media{ position: sticky; top: 145px; padding: 0; border: 0; background: transparent; }
.fc-home-v2 .advisory-image{ position: relative; height: var(--advisory-chapter-height, 500px); overflow: hidden; border-radius: 0; background: var(--night); box-shadow: 0 28px 70px -46px rgba(23,18,11,.65); transition: height .2s ease-out; }
.fc-home-v2 .advisory-image::before{ content: ""; position: absolute; z-index: 1; inset: 18px; border: 1px solid rgba(255,255,255,.55); pointer-events: none; }
.fc-home-v2 .advisory-media img{ width: 100%; height: 100%; object-fit: cover; object-position: center 55%; filter: saturate(.82) contrast(1.03); }
.fc-home-v2 .advisory-service-map{ position: absolute; z-index: 2; inset: auto 18px 18px; display: grid; grid-template-columns: 1fr 1fr; color: #fff; background: rgba(20,17,10,.92); backdrop-filter: blur(10px); }
.fc-home-v2 .advisory-service-map span{ min-height: 52px; display: flex; align-items: center; padding: 12px 16px; border-right: 1px solid var(--light-line); border-bottom: 1px solid var(--light-line); font-size: .66rem; font-weight: 600; letter-spacing: .11em; text-transform: uppercase; }
.fc-home-v2 .advisory-service-map span:nth-child(even){ border-right: 0; }
.fc-home-v2 .advisory-service-map span:nth-child(n/**/+3){ border-bottom: 0; }
.fc-home-v2 .advisory-media figcaption{ position: relative; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); color: var(--muted); font-size: .7rem; letter-spacing: .13em; text-transform: uppercase; }
.fc-home-v2 .large-copy{ max-width: 720px; margin-top: 30px; color: var(--muted); font-size: 1.15rem; }
.fc-home-v2 .advisory-story{ min-width: 0; }
.fc-home-v2 .advisory-copy-stack{ position: relative; isolation: isolate; border-top: 1px solid var(--line); }
.fc-home-v2 .advisory-copy-stack > article{ position: sticky; top: 145px; display: grid; grid-template-columns: 56px minmax(0,1fr); gap: 24px; min-height: var(--advisory-chapter-height, 500px); padding: clamp(36px, 5vw, 58px) 0; border-bottom: 1px solid var(--line); background: #f8f4ec; transform-origin: center top; }
.fc-home-v2 .advisory-copy-stack > article::before{ content: ""; position: absolute; z-index: 0; top: 0; bottom: 0; left: 27px; width: 1px; background: linear-gradient(var(--orange), rgba(235,109,18,.1)); pointer-events: none; }
.fc-home-v2 .advisory-copy-stack > article:nth-child(1){ z-index: 1; }
.fc-home-v2 .advisory-copy-stack > article:nth-child(2){ z-index: 2; box-shadow: 0 -30px 45px -48px rgba(23,18,11,.7); }
.fc-home-v2 .advisory-copy-stack > article:nth-child(3){ z-index: 3; box-shadow: 0 -30px 45px -48px rgba(23,18,11,.7); }
.fc-home-v2 .advisory-copy-stack > article > span{ position: relative; z-index: 1; width: 56px; height: 56px; display: grid; place-items: center; border: 1px solid rgba(235,109,18,.28); border-radius: 50%; color: var(--orange); background: #f8f4ec; font-size: .68rem; font-weight: 600; letter-spacing: .12em; }
.fc-home-v2 .chapter-kicker{ margin-bottom: 10px; color: #a55218 !important; font: 600 .64rem/1.2 var(--sans) !important; letter-spacing: .14em; text-transform: uppercase; }
.fc-home-v2 .advisory-copy-stack h3{ margin-bottom: 16px; font: 400 clamp(1.45rem, 2vw, 1.9rem)/1.15 var(--serif); }
.fc-home-v2 .advisory-copy-stack p{ color: var(--muted); line-height: 1.72; }
.fc-home-v2 .principles{ display: grid; grid-template-columns: repeat(3, 1fr); overflow: hidden; margin: clamp(48px, 7vw, 86px) 0 0; border-radius: 0; color: #fff; background: var(--night); }
.fc-home-v2 .principles article{ display: grid; grid-template-columns: 36px minmax(0,1fr); gap: 16px; min-height: 172px; padding: 26px; border-right: 1px solid var(--light-line); background: linear-gradient(145deg, rgba(235,109,18,.08), transparent 46%); }
.fc-home-v2 .principles article:last-child{ border-right: 0; }
.fc-home-v2 .principles article > span{ color: var(--gold); font-size: .68rem; letter-spacing: .1em; }
.fc-home-v2 .principles h3{ color: #fff; font: 400 1.18rem/1.2 var(--serif); }
.fc-home-v2 .principles p{ margin-top: 10px; color: rgba(255,255,255,.6); font-size: .86rem; }
.fc-home-v2 .advisory-link{ margin-top: 28px; }

.fc-home-v2 .leadership{ overflow: hidden; color: var(--ink); background: #fff; }
.fc-home-v2 .leadership .section-heading{ align-items: end; }
.fc-home-v2 .leadership .section-heading h2{ max-width: 930px; margin-top: 18px; }
.fc-home-v2 .leadership .eyebrow{ color: #a55218; }
.fc-home-v2 .leadership .section-heading > p{ color: var(--muted); }
.fc-home-v2 .leadership-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: stretch; }
.fc-home-v2 .leader-card, .fc-home-v2 .leader-card:nth-child(2), .fc-home-v2 .leader-card:nth-child(3){ position: relative; min-height: 510px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 0; background: #302d29; box-shadow: 0 24px 60px -34px rgba(0,0,0,.75); }
.fc-home-v2 .leader-card::after{ content: ""; position: absolute; inset: 30% 0 0; background: linear-gradient(transparent, rgba(10,8,5,.92)); }
.fc-home-v2 .leader-card img{ width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: center top; filter: saturate(.88); transition: transform .75s cubic-bezier(.22,1,.36,1), filter .4s ease; }
.fc-home-v2 .leader-card:hover img{ transform: scale(1.035); filter: saturate(1); }
.fc-home-v2 .leader-card > div{ position: absolute; z-index: 1; inset: auto 0 0; padding: clamp(24px, 3vw, 42px); }
.fc-home-v2 .leader-card p{ color: var(--gold); font-size: .65rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.fc-home-v2 .leader-card h3{ margin-top: 8px; color: #fff; font: 400 clamp(1.3rem, 1.7vw, 1.85rem)/1.14 var(--serif); text-shadow: 0 2px 14px rgba(0,0,0,.42); }
.fc-home-v2 .leader-card span{ display: block; margin-top: 7px; color: rgba(255,255,255,.62); font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; }

.fc-home-v2 .featured{ background: #fbf8f2; }
.fc-home-v2 .featured-grid{ display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; border: 0; }
.fc-home-v2 .feature-card{ --spot-x: 50%; --spot-y: 50%; position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 0; min-height: 390px; overflow: hidden; padding: 30px; border: 1px solid rgba(23,18,11,.1); border-radius: 0; color: inherit; background: radial-gradient(440px circle at var(--spot-x) var(--spot-y), rgba(235,109,18,.13), transparent 42%), #fff; text-decoration: none; box-shadow: 0 20px 55px -46px rgba(23,18,11,.55); transition: color .3s ease, background-color .3s ease, border-color .3s ease, transform .3s ease; }
.fc-home-v2 .feature-card:hover{ z-index: 2; color: #fff; border-color: rgba(235,109,18,.58); background-color: var(--ink); transform: translateY(-5px); }
.fc-home-v2 .feature-card:hover h3{ color: #fff; }
.fc-home-v2 .card-number{ position: absolute; top: 24px; right: 26px; left: auto; color: #9a8f80; font-size: .62rem; letter-spacing: .1em; }
.fc-home-v2 .card-icon{ width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid rgba(235,109,18,.35); border-radius: 50%; color: var(--orange); }
.fc-home-v2 .card-icon svg{ width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.fc-home-v2 .feature-card h3{ margin-top: 30px; font: 400 clamp(1.15rem, 1.45vw, 1.45rem)/1.2 var(--serif); }
.fc-home-v2 .feature-card p{ max-width: none; margin-top: 16px; color: var(--muted); line-height: 1.62; }
.fc-home-v2 .feature-card:hover p{ color: rgba(255,255,255,.68); }
.fc-home-v2 .feature-card b{ margin-top: auto; padding-top: 26px; color: var(--orange); font-size: .68rem; letter-spacing: .11em; white-space: nowrap; text-transform: uppercase; }

.fc-home-v2 .process{ color: #fff; background: radial-gradient(circle at 20% 20%, rgba(235,109,18,.16), transparent 34%), rgba(20,17,10,.94); }
.fc-home-v2 .process-grid{ display: grid; grid-template-columns: 1fr; gap: 54px; align-items: start; }
.fc-home-v2 .process-intro{ position: static; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 28px 70px; }
.fc-home-v2 .process-intro .eyebrow, .fc-home-v2 .process-intro h2{ grid-column: 1; }
.fc-home-v2 .process-intro > p:not(.eyebrow){ grid-column: 1; }
.fc-home-v2 .process-intro .button{ grid-column: 2; grid-row: 1 / 4; align-self: end; }
.fc-home-v2 .process-intro h2{ margin-top: 20px; color: #fff; }
.fc-home-v2 .process-intro > p:not(.eyebrow){ max-width: 540px; margin: 26px 0 34px; color: rgba(255,255,255,.66); font-size: 1.1rem; }
.fc-home-v2 .process-list{ list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; }
.fc-home-v2 .process-list li{ --spot-x: 50%; --spot-y: 50%; display: grid; grid-template-columns: 38px 1fr; gap: 14px; min-height: 225px; padding: 26px; border: 1px solid rgba(255,255,255,.13); border-radius: 0; background: radial-gradient(360px circle at var(--spot-x) var(--spot-y), rgba(235,109,18,.2), transparent 42%), rgba(255,255,255,.035); transition: border-color .25s ease, transform .25s ease; }
.fc-home-v2 .process-list li:hover{ border-color: rgba(235,109,18,.55); transform: translateY(-4px); }
.fc-home-v2 .process-list li > span{ color: var(--orange); font-size: .72rem; letter-spacing: .1em; }
.fc-home-v2 .process-list h3{ color: #fff; font: 400 clamp(1.2rem, 1.55vw, 1.5rem)/1.16 var(--serif); }
.fc-home-v2 .process-list p{ max-width: 580px; margin-top: 8px; color: rgba(255,255,255,.58); }

.fc-home-v2 .reviews{ overflow: hidden; background: #efe9de; }
.fc-home-v2 .reviews-heading{ display: flex; justify-content: space-between; align-items: end; gap: 35px; margin-bottom: 28px; }
.fc-home-v2 .reviews-heading h2{ max-width: 800px; margin-top: 18px; }
.fc-home-v2 .google-score{ display: flex; align-items: center; gap: 18px; padding: 18px 24px; border: 1px solid rgba(23,18,11,.1); border-radius: 0; background: #fff; box-shadow: var(--shadow); }
.fc-home-v2 .google-score > strong{ font: 400 2.2rem/1 var(--serif); }
.fc-home-v2 .google-score span{ color: var(--muted); font-size: .72rem; line-height: 1.3; text-transform: uppercase; }
.fc-home-v2 .google-score b{ color: #e99a0d; letter-spacing: .06em; }
.fc-home-v2 .trustpilot-proof{ display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: clamp(24px, 4vw, 58px); margin-bottom: 32px; padding: 20px 24px; border: 1px solid rgba(23,18,11,.1); color: var(--ink); background: rgba(255,255,255,.78); text-decoration: none; transition: border-color .2s ease, background .2s ease; }
.fc-home-v2 .trustpilot-proof:hover, .fc-home-v2 .trustpilot-proof:focus-visible{ border-color: rgba(0,182,122,.48); background: #fff; }
.fc-home-v2 .trustpilot-brand, .fc-home-v2 .trustpilot-rating{ display: flex; align-items: center; }
.fc-home-v2 .trustpilot-brand{ gap: 9px; font-size: 1.25rem; }
.fc-home-v2 .trustpilot-brand svg{ width: 29px; height: 29px; fill: #00b67a; }
.fc-home-v2 .trustpilot-rating{ min-width: 0; gap: 13px; }
.fc-home-v2 .trustpilot-rating > b{ font: 400 1.08rem/1 var(--serif); }
.fc-home-v2 .trustpilot-stars{ display: flex; gap: 3px; }
.fc-home-v2 .trustpilot-stars i{ width: 22px; height: 22px; display: grid; place-items: center; color: #fff; background: #00b67a; font: normal 700 .8rem/1 var(--sans); }
.fc-home-v2 .trustpilot-stars i:last-child{ background: linear-gradient(90deg, #00b67a 40%, #d9d9e1 40%); }
.fc-home-v2 .trustpilot-rating small{ color: var(--muted); white-space: nowrap; }
.fc-home-v2 .trustpilot-action{ display: flex; align-items: center; gap: 12px; color: #80502c; font-size: .7rem; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.fc-home-v2 .trustpilot-action b{ color: var(--orange); font-size: 1rem; transition: transform .18s ease; }
.fc-home-v2 .trustpilot-proof:hover .trustpilot-action b{ transform: translate(2px,-2px); }
.fc-home-v2 .google-g{ width: 24px; height: 24px; flex: 0 0 auto; }
.fc-home-v2 .review-rail{ display: grid; grid-auto-flow: column; grid-auto-columns: minmax(390px, 1fr); gap: 14px; overflow-x: auto; padding: 5px 0 24px; scroll-snap-type: x mandatory; scrollbar-color: var(--orange) transparent; }
.fc-home-v2 .review-card{ min-height: 285px; display: flex; flex-direction: column; padding: clamp(26px, 3vw, 38px); border: 0; border-top: 3px solid var(--orange); border-radius: 0; background: #fff; box-shadow: 0 16px 46px -38px rgba(23,18,11,.5); scroll-snap-align: start; }
.fc-home-v2 .review-meta{ display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; align-items: center; gap: 14px; }
.fc-home-v2 .review-meta > span{ width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; color: #a55218; background: #f8e7d7; font: 400 .92rem var(--serif); }
.fc-home-v2 .review-meta h3{ font: 400 1.1rem var(--serif); }
.fc-home-v2 .review-meta p{ color: var(--muted); font-size: .76rem; }
.fc-home-v2 .review-meta b{ color: #e99a0d; font-size: .7rem; letter-spacing: .04em; }
.fc-home-v2 .review-source{ display: grid; justify-items: end; gap: 5px; }
.fc-home-v2 .review-card blockquote{ order: -1; position: relative; margin: 0 0 auto; padding: 10px 0 32px 34px; color: #332c22; font: 400 clamp(1.03rem, 1.2vw, 1.18rem)/1.5 var(--serif); }
.fc-home-v2 .review-card blockquote::before{ content: "“"; position: absolute; top: -12px; left: 0; color: var(--orange); font: 400 3rem/1 var(--serif); }
.fc-home-v2 .review-card .review-meta{ padding-top: 22px; border-top: 1px solid var(--line); }
.fc-home-v2 .reviews-link{ margin-top: 30px; }

.fc-home-v2 .insights{ background: #fbf8f2; }
.fc-home-v2 .insights-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(20px, 3vw, 40px); }
.fc-home-v2 .insight-card{ overflow: hidden; border: 1px solid rgba(23,18,11,.1); border-radius: 0; background: #fff; box-shadow: 0 20px 55px -46px rgba(23,18,11,.55); }
.fc-home-v2 .insight-card > p, .fc-home-v2 .insight-card > h3, .fc-home-v2 .insight-card > .text-link{ margin-inline: 24px; }
.fc-home-v2 .insight-card > .text-link{ margin-bottom: 26px; }
.fc-home-v2 .insight-media{ position: relative; display: block; height: clamp(180px, 18vw, 260px); overflow: hidden; }
.fc-home-v2 .insight-media img{ width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.22,1,.36,1); }
.fc-home-v2 .insight-card:hover .insight-media img{ transform: scale(1.045); }
.fc-home-v2 .insight-media span{ position: absolute; left: 16px; bottom: 16px; padding: 8px 11px; color: #fff; background: rgba(20,17,10,.82); font-size: .65rem; letter-spacing: .08em; text-transform: uppercase; }
.fc-home-v2 .insight-card > p{ margin-top: 16px; color: #a55218; font-size: .68rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.fc-home-v2 .insight-card h3{ margin: 9px 24px 18px; font: 400 clamp(1.08rem, 1.25vw, 1.25rem)/1.28 var(--serif); }
.fc-home-v2 .insight-card h3 a{ text-decoration: none; }

.fc-home-v2 .tax-calculator{ background: #f3eee5; }
.fc-home-v2 .tax-calculator-grid{ display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(55px, 9vw, 135px); align-items: start; }
.fc-home-v2 .tax-calculator-copy h2{ margin-top: 20px; }
.fc-home-v2 .tax-calculator-copy > p:last-child{ max-width: 480px; margin-top: 22px; color: var(--muted); }
.fc-home-v2 .tax-whatsapp-cta{ min-height: 390px; overflow: hidden; color: #fff; background: radial-gradient(circle at 0 0, rgba(235,109,18,.2), transparent 38%), var(--night); box-shadow: var(--shadow); }
.fc-home-v2 .tax-whatsapp-content{ display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(30px,4vw,56px); }
.fc-home-v2 .tax-whatsapp-kicker{ margin-bottom: 16px; color: var(--gold); font-size: .68rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.fc-home-v2 .tax-whatsapp-content h3{ max-width: 560px; margin: 0; color: #fff; font: 400 clamp(1.65rem,2.5vw,2.65rem)/1.12 var(--serif); }
.fc-home-v2 .tax-whatsapp-content p{ max-width: 590px; margin-top: 20px; color: rgba(255,255,255,.68); }
.fc-home-v2 .tax-whatsapp-points{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.fc-home-v2 .tax-whatsapp-points span{ padding: 7px 10px; border: 1px solid rgba(255,255,255,.17); color: rgba(255,255,255,.72); font-size: .68rem; }
.fc-home-v2 .tax-whatsapp-button{ min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 24px; margin-top: 30px; padding: 13px 20px; color: #102619; background: #55df87; font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; transition: background-color .2s ease, transform .2s ease; }
.fc-home-v2 .tax-whatsapp-button:hover{ color: #102619; background: #7bea9f; transform: translateY(-2px); }

.fc-home-v2 .faq{ background: #fbf8f2; }
.fc-home-v2 .faq-grid{ display: grid; gap: clamp(38px, 5vw, 66px); }
.fc-home-v2 .faq-intro{ position: static; max-width: 920px; }
.fc-home-v2 .faq-intro h2{ margin-top: 20px; }
.fc-home-v2 .faq-intro > p:last-child{ max-width: 680px; margin-top: 22px; color: var(--muted); }
.fc-home-v2 .faq-tabs{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.fc-home-v2 .faq-tabs button{ padding: 9px 15px; border: 1px solid var(--line); border-radius: 0; color: var(--ink); background: #fff; font-size: .75rem; cursor: pointer; transition: color .2s ease, background .2s ease, border-color .2s ease; }
.fc-home-v2 .faq-tabs button:hover{ border-color: var(--orange); }
.fc-home-v2 .faq-tabs button[aria-pressed="true"]{ color: #fff; border-color: var(--orange); background: var(--orange); }
.fc-home-v2 .faq-list{ padding: clamp(22px, 3vw, 38px); border: 1px solid rgba(23,18,11,.1); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.fc-home-v2 .faq-list details{ border-bottom: 1px solid var(--line); }
.fc-home-v2 .faq-list details:first-of-type{ border-top: 0; }
.fc-home-v2 .faq-list summary{ list-style: none; display: flex; justify-content: space-between; gap: 20px; padding: 24px 0; cursor: pointer; font: 400 clamp(1.05rem, 1.35vw, 1.28rem)/1.38 var(--serif); }
.fc-home-v2 .faq-list summary::-webkit-details-marker{ display: none; }
.fc-home-v2 .faq-list summary span{ color: var(--orange); font: 400 1.5rem/1 var(--sans); transition: transform .2s ease; }
.fc-home-v2 .faq-list details[open] summary span{ transform: rotate(45deg); }
.fc-home-v2 .faq-list details p{ max-width: 720px; padding: 0 50px 26px 0; color: var(--muted); }

.fc-home-v2 .contact{ overflow: hidden; color: #fff; background: radial-gradient(circle at 12% 20%, rgba(235,109,18,.21), transparent 30%), radial-gradient(circle at 90% 80%, rgba(233,199,93,.08), transparent 28%), rgba(20,17,10,.94); }
.fc-home-v2 .contact-grid{ display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(55px, 9vw, 135px); align-items: start; }
.fc-home-v2 .contact-copy h2{ max-width: 680px; margin-top: 20px; color: #fff; }
.fc-home-v2 .contact-copy > p:not(.eyebrow){ max-width: 600px; margin-top: 25px; color: rgba(255,255,255,.65); font-size: 1.08rem; }
.fc-home-v2 .contact-copy dl{ margin-top: 48px; border-top: 1px solid var(--light-line); }
.fc-home-v2 .contact-copy dl div{ display: grid; grid-template-columns: 100px 1fr; padding: 14px 0; border-bottom: 1px solid var(--light-line); }
.fc-home-v2 .contact-copy dt{ color: var(--gold); font-size: .66rem; letter-spacing: .14em; text-transform: uppercase; }
.fc-home-v2 .contact-copy dd, .fc-home-v2 .contact-copy dd a{ color: rgba(255,255,255,.84); text-decoration: none; }
.fc-home-v2 .contact-form{ padding: clamp(28px, 4vw, 58px); border: 1px solid rgba(255,255,255,.16); border-radius: var(--radius); color: var(--ink); background: #fffdf8; box-shadow: 0 30px 80px -45px rgba(0,0,0,.85); }
.fc-home-v2 .form-kicker{ margin-bottom: 28px; color: #a55218; font-size: .7rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.fc-home-v2 .form-row{ display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.fc-home-v2 .contact-form label{ display: grid; gap: 8px; margin-bottom: 18px; color: #6a5b48; font-size: .68rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.fc-home-v2 .contact-form input, .fc-home-v2 .contact-form select, .fc-home-v2 .contact-form textarea{ width: 100%; min-height: 52px; padding: 13px 14px; border: 1px solid rgba(23,18,11,.16); border-radius: 0; color: var(--ink); background: #fbf8f2; font-size: 1rem; letter-spacing: 0; text-transform: none; }
.fc-home-v2 .contact-form textarea{ resize: vertical; }
.fc-home-v2 .contact-form input:focus, .fc-home-v2 .contact-form select:focus, .fc-home-v2 .contact-form textarea:focus{ outline: 2px solid rgba(235,109,18,.3); border-color: var(--orange); }
.fc-home-v2 .contact-form .consent{ display: flex; grid-template-columns: none; align-items: flex-start; gap: 12px; color: var(--muted); font-size: .78rem; font-weight: 400; letter-spacing: 0; line-height: 1.45; text-transform: none; }
.fc-home-v2 .contact-form .consent input{ width: 18px; min-height: 18px; margin: 2px 0 0; accent-color: var(--orange); }
.fc-home-v2 .contact-form .button{ border: 0; }
.fc-home-v2 .contact-form small{ display: block; margin-top: 14px; color: var(--muted); }

.fc-home-v2 .final-cta{ padding-block: clamp(52px, 6vw, 82px); background: #efe9de; }
.fc-home-v2 .final-cta-inner{ display: flex; align-items: center; justify-content: space-between; gap: 45px; padding: clamp(32px, 5vw, 64px); border-radius: var(--radius); color: #fff; background: radial-gradient(circle at 10% 0, rgba(235,109,18,.26), transparent 38%), var(--night); box-shadow: var(--shadow); }
.fc-home-v2 .final-cta .eyebrow{ color: var(--gold); }
.fc-home-v2 .final-cta h2{ max-width: 850px; margin-top: 16px; color: #fff; }
.fc-home-v2 .final-cta .button{ flex: 0 0 auto; }

.fc-home-v2 .site-footer{ padding-top: 75px; color: #fff; background: #0c0a07; }
.fc-home-v2 .footer-top{ display: grid; grid-template-columns: 1.6fr repeat(3, 1fr); gap: clamp(35px, 6vw, 95px); padding-bottom: 65px; }
.fc-home-v2 .footer-brand img{ margin-bottom: 22px; }
.fc-home-v2 .footer-brand p{ max-width: 380px; color: rgba(255,255,255,.56); }
.fc-home-v2 .footer-brand .footer-newsletter{ margin-top: 22px; color: var(--gold); font-size: .7rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.fc-home-v2 .footer-brand .footer-newsletter span{ color: rgba(255,255,255,.56); font-weight: 400; letter-spacing: 0; text-transform: none; }
.fc-home-v2 .footer-top h2{ margin-bottom: 18px; color: var(--gold); font: 600 .68rem/1.2 var(--sans); letter-spacing: .17em; text-transform: uppercase; }
.fc-home-v2 .footer-top > div:not(.footer-brand){ display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.fc-home-v2 .footer-top a{ color: rgba(255,255,255,.66); text-decoration: none; }
.fc-home-v2 .footer-top a:hover{ color: #fff; }
.fc-home-v2 .footer-bottom{ min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 30px; border-top: 1px solid var(--light-line); color: rgba(255,255,255,.46); font-size: .72rem; }
.fc-home-v2 .footer-bottom p{ color: inherit; }
.fc-home-v2 .footer-bottom div{ display: flex; gap: 22px; }
.fc-home-v2 .footer-bottom a{ text-decoration: none; }
.fc-home-v2.homepage-v2-footer-shell{ overflow: visible; }
.homepage-v2-footer-shell .homepage-v2-footer-contact{ display: grid; gap: 7px; margin-top: 22px; }
.homepage-v2-footer-shell .homepage-v2-footer-contact a,
.homepage-v2-footer-shell .homepage-v2-footer-contact address{ margin: 0; color: rgba(255,255,255,.66); font-size: .82rem; font-style: normal; line-height: 1.55; text-decoration: none; }
.homepage-v2-footer-shell .homepage-v2-footer-contact a:hover{ color: #fff; }
.homepage-v2-footer-shell .homepage-v2-review-link{ display: grid; gap: 9px; margin-top: 18px; }
.homepage-v2-footer-shell .homepage-v2-review-link img{ width: 124px; height: auto; }
.homepage-v2-footer-shell .homepage-v2-review-link span{ color: rgba(255,255,255,.56); font-size: .72rem; line-height: 1.5; }
.homepage-v2-footer-shell .homepage-v2-review-link strong,
.homepage-v2-footer-shell .homepage-v2-brand-note{ color: var(--gold); }
.homepage-v2-footer-shell .homepage-v2-payment{ width: 180px; height: auto; margin-top: 17px; }
.homepage-v2-footer-shell .homepage-v2-brand-note{ max-width: 230px; margin-top: 14px; font-size: .75rem; line-height: 1.55; }
.homepage-v2-footer-shell .homepage-v2-newsletter{ display: flex; align-items: center; justify-content: space-between; gap: 34px; padding-block: 28px; border-block: 1px solid var(--light-line); }
.homepage-v2-footer-shell .homepage-v2-newsletter p{ color: var(--gold); font-size: .7rem; font-weight: 600; letter-spacing: .17em; text-transform: uppercase; }
.homepage-v2-footer-shell .homepage-v2-newsletter span{ color: rgba(255,255,255,.56); font-size: .78rem; }
.homepage-v2-footer-shell .homepage-v2-newsletter form{ width: min(100%, 470px); display: flex; }
.homepage-v2-footer-shell .homepage-v2-newsletter input{ min-width: 0; flex: 1; min-height: 50px; padding: 12px 16px; border: 1px solid rgba(255,255,255,.2); border-right: 0; border-radius: 0; color: #fff; background: rgba(255,255,255,.055); }
.homepage-v2-footer-shell .homepage-v2-newsletter button{ min-height: 50px; padding: 12px 20px; border: 0; color: #fff; background: var(--orange); font-size: .7rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; }
.homepage-v2-footer-shell .homepage-v2-offices{ padding-block: 42px; }
.homepage-v2-footer-shell .homepage-v2-offices-heading{ display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.homepage-v2-footer-shell .homepage-v2-offices-heading h2{ margin: 0; color: var(--gold); font: 600 .68rem/1.2 var(--sans); letter-spacing: .17em; text-transform: uppercase; }
.homepage-v2-footer-shell .homepage-v2-offices-heading span{ color: rgba(255,255,255,.42); font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; }
.homepage-v2-footer-shell .homepage-v2-office-grid{ display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-block: 1px solid var(--light-line); }
.homepage-v2-footer-shell .homepage-v2-office-grid article{ min-width: 0; padding: 28px clamp(18px,3vw,38px); border-right: 1px solid var(--light-line); }
.homepage-v2-footer-shell .homepage-v2-office-grid article:first-child{ padding-left: 0; }
.homepage-v2-footer-shell .homepage-v2-office-grid article:last-child{ padding-right: 0; border-right: 0; }
.homepage-v2-footer-shell .homepage-v2-office-grid article > span{ color: var(--orange); font-size: .62rem; letter-spacing: .12em; }
.homepage-v2-footer-shell .homepage-v2-office-grid h3{ margin: 12px 0 10px; color: #fff; font: 400 1.18rem/1.2 var(--serif); }
.homepage-v2-footer-shell .homepage-v2-office-grid address{ margin: 0; color: rgba(255,255,255,.56); font-size: .8rem; font-style: normal; line-height: 1.7; }
.fc-home-v2 .floating-whatsapp{ position: fixed; z-index: 80; left: 22px; bottom: 22px; width: 56px; height: 56px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.82); border-radius: 50%; color: #fff; background: #25d366; box-shadow: 0 12px 30px rgba(0,0,0,.23); text-decoration: none; transition: transform .18s cubic-bezier(.16,1,.3,1), box-shadow .18s ease; }
.fc-home-v2 .floating-whatsapp:hover, .fc-home-v2 .floating-whatsapp:focus-visible{ transform: translateY(-2px) scale(1.04); box-shadow: 0 16px 34px rgba(0,0,0,.27); }
.fc-home-v2 .floating-whatsapp:active{ transform: scale(.96); }
.fc-home-v2 .floating-whatsapp svg{ width: 28px; height: 32px; fill: currentColor; }

.fc-home-v2.js .reveal{ opacity: 0; transform: translateY(24px); transition: opacity .4s ease, transform .4s cubic-bezier(.22,1,.36,1); }
.fc-home-v2.js .reveal.is-visible{ opacity: 1; transform: none; }

@media (max-width: 1100px) {
  .fc-home-v2 .desktop-nav, .fc-home-v2 .nav-whatsapp{ display: none; }
  .fc-home-v2 .menu-button{ display: block; }
  .fc-home-v2 .featured-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .fc-home-v2 .process-list{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .fc-home-v2 .service-panel{ grid-template-columns: 1fr; }
  .fc-home-v2 .service-links{ grid-template-columns: 1fr 1fr; }
  .fc-home-v2 .service-panels{ min-height: 500px; }
  .fc-home-v2 .numbers-grid{ grid-template-columns: repeat(2, 1fr); row-gap: 35px; }
  .fc-home-v2 .number-card:nth-child(2){ border-right: 0; }
  .fc-home-v2 .advisory-experience{ gap: 55px; }
  .fc-home-v2 .leader-card, .fc-home-v2 .leader-card:nth-child(2), .fc-home-v2 .leader-card:nth-child(3){ min-height: 460px; }
  .fc-home-v2 .insights-grid{ gap: 20px; }
}

@media (max-width: 780px) {
  .fc-home-v2 .ambient-webgl{ display: none; }
  .fc-home-v2 h2{ font-size: clamp(1.75rem, 6.8vw, 2.7rem); }
  .fc-home-v2 .section{ padding-block: 72px; }
  .fc-home-v2 .alert-bar{ justify-content: flex-start; padding-right: 54px; }
  .fc-home-v2 .alert-bar p span{ display: none; }
  .fc-home-v2 .alert-bar a{ white-space: nowrap; }
  .fc-home-v2 .nav-shell{ min-height: 72px; }
  .fc-home-v2 .brand{ width: 150px; height: 62px; }
  .fc-home-v2 .brand .brand-logo{ width: 145px; }
  .fc-home-v2 .nav-actions .button{ display: none; }
  .fc-home-v2 .mobile-menu{ grid-template-columns: 1fr; gap: 45px; padding-top: 125px; }
  .fc-home-v2 .hero{ min-height: 800px; }
  .fc-home-v2 .hero-content{ padding-top: 165px; padding-bottom: 50px; }
  .fc-home-v2 .hero h1{ font-size: clamp(2.25rem, 8vw, 3.35rem); }
  .fc-home-v2 .hero-service-pills{ flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
  .fc-home-v2 .hero-service-pills::-webkit-scrollbar{ display: none; }
  .fc-home-v2 .hero-proof{ grid-template-columns: repeat(5, 132px); gap: 20px; }
  .fc-home-v2 .hero-proof-item{ padding-left: 10px; }
  .fc-home-v2 .hero-proof strong{ font-size: 1.35rem; }
  .fc-home-v2 .hero-proof span{ font-size: .58rem; }
  .fc-home-v2 .hero-scroll{ display: none; }
  .fc-home-v2 .section-heading, .fc-home-v2 .reviews-heading{ display: grid; align-items: start; }
  .fc-home-v2 .trustpilot-proof{ grid-template-columns: 1fr; gap: 16px; padding: 20px; }
  .fc-home-v2 .trustpilot-rating{ flex-wrap: wrap; gap: 9px 12px; }
  .fc-home-v2 .trustpilot-action{ justify-content: space-between; padding-top: 16px; border-top: 1px solid var(--line); }
  .fc-home-v2 .final-cta-inner{ align-items: flex-start; flex-direction: column; }
  .fc-home-v2 .service-explorer{ grid-template-columns: 1fr; }
  .fc-home-v2 .service-tabs{ grid-template-columns: repeat(4, 1fr); border-right: 0; border-bottom: 1px solid var(--line); overflow-x: auto; }
  .fc-home-v2 .service-tabs button{ min-width: 120px; min-height: 70px; justify-content: center; padding: 13px 10px; border-right: 1px solid var(--line); border-bottom: 0; }
  .fc-home-v2 .service-tabs button span{ display: none; }
  .fc-home-v2 .service-panels{ min-height: 0; }
  .fc-home-v2 .service-intro{ padding: 42px 26px; }
  .fc-home-v2 .service-links{ grid-template-columns: 1fr; padding: 24px; }
  .fc-home-v2 .company-intro-grid, .fc-home-v2 .content-shell, .fc-home-v2 .tax-agent-grid, .fc-home-v2 .advisory-experience, .fc-home-v2 .process-grid, .fc-home-v2 .tax-calculator-grid, .fc-home-v2 .faq-grid, .fc-home-v2 .contact-grid{ grid-template-columns: 1fr; }
  .fc-home-v2 .company-intro-grid{ grid-template-rows: auto; padding: 0; }
  .fc-home-v2 .company-intro-primary, .fc-home-v2 .coverage-overview, .fc-home-v2 .company-intro-expertise, .fc-home-v2 .company-intro-copy{ grid-column: 1; grid-row: auto; }
  .fc-home-v2 .company-intro-primary{ order: 1; padding: 38px 26px; }
  .fc-home-v2 .coverage-overview{ order: 2; }
  .fc-home-v2 .company-intro-expertise{ order: 3; }
  .fc-home-v2 .company-intro-copy{ order: 4; }
  .fc-home-v2 .company-intro-primary h2{ font-size: 2.2rem; }
  .fc-home-v2 .company-intro-igniter{ width: 82px; margin-top: 32px; }
  .fc-home-v2 .company-intro-proof{ margin-top: 42px; padding-top: 0; }
  .fc-home-v2 .coverage-overview, .fc-home-v2 .company-intro-expertise, .fc-home-v2 .company-intro-copy{ padding: 32px 26px; }
  .fc-home-v2 .company-intro-expertise, .fc-home-v2 .company-intro-detail-heading{ grid-template-columns: 1fr; gap: 20px; }
  .fc-home-v2 .company-intro-expertise-grid{ grid-template-columns: 1fr; }
  .fc-home-v2 .company-intro-copy > p{ margin-left: 0; }
  .fc-home-v2 .content-shell{ gap: 28px; }
  .fc-home-v2 .content-intro{ grid-template-columns: 1fr; }
  .fc-home-v2 .content-intro .eyebrow, .fc-home-v2 .content-intro h2, .fc-home-v2 .content-intro > p:last-child{ grid-column: 1; grid-row: auto; }
  .fc-home-v2 .financial-route{ grid-template-columns: 1fr; gap: 10px; }
  .fc-home-v2 .financial-route i{ margin-inline: auto; transform: rotate(90deg); }
  .fc-home-v2 .content-pillar-grid{ grid-template-columns: 1fr; }
  .fc-home-v2 .content-pillar{ border-right: 0; border-bottom: 1px solid var(--line); }
  .fc-home-v2 .content-pillar:last-child{ border-bottom: 0; }
  .fc-home-v2 .tax-agent-intro{ grid-template-columns: 1fr; }
  .fc-home-v2 .tax-agent-intro > p{ padding-bottom: 0; }
  .fc-home-v2 .fta-representation{ overflow: hidden; box-shadow: 0 22px 55px -36px rgba(0,0,0,.8); transform: none; transform-style: flat; }
  .fc-home-v2 .fta-route{ grid-template-columns: 1fr; transform-style: flat; }
  .fc-home-v2 .fta-route > i{ min-height: 46px; font-size: 0; transform: none; }
  .fc-home-v2 .fta-route > i::after{ content: "↓"; font-size: 1.3rem; }
  .fc-home-v2 .fta-party{ min-height: 155px; }
  .fc-home-v2 .fta-party-agent{ transform: none; }
  .fc-home-v2 .fta-service-line{ grid-template-columns: 1fr 1fr; }
  .fc-home-v2 .fta-service-line span:nth-child(2){ border-right: 0; }
  .fc-home-v2 .fta-service-line span:nth-child(-n/**/+2){ border-bottom: 1px solid rgba(23,18,11,.1); }
  .fc-home-v2 .tax-agent-copy{ grid-template-columns: 1fr; }
  .fc-home-v2 .tax-agent-copy article, .fc-home-v2 .tax-agent-copy article:nth-child(odd), .fc-home-v2 .tax-agent-copy article:nth-child(even){ padding-inline: 0; border-right: 0; }
  .fc-home-v2 .advisory-media, .fc-home-v2 .process-intro, .fc-home-v2 .faq-intro{ position: static; }
  .fc-home-v2 .advisory-media{ max-width: 620px; }
  .fc-home-v2 .advisory-image{ height: auto; aspect-ratio: .82; }
  .fc-home-v2 .advisory-copy-stack > article{ position: relative; top: auto; min-height: 0; opacity: 1 !important; transform: none !important; }
  .fc-home-v2 .principles{ grid-template-columns: 1fr; }
  .fc-home-v2 .principles article{ min-height: 0; border-right: 0; border-bottom: 1px solid var(--light-line); }
  .fc-home-v2 .principles article:last-child{ border-bottom: 0; }
  .fc-home-v2 .leadership-grid{ grid-template-columns: repeat(3, minmax(260px, 1fr)); overflow-x: auto; padding-bottom: 18px; scroll-snap-type: x mandatory; }
  .fc-home-v2 .leader-card, .fc-home-v2 .leader-card:nth-child(2), .fc-home-v2 .leader-card:nth-child(3){ min-height: 475px; scroll-snap-align: start; }
  .fc-home-v2 .featured-grid{ grid-template-columns: 1fr; }
  .fc-home-v2 .feature-card{ min-height: 0; padding: 26px; }
  .fc-home-v2 .process-grid{ gap: 70px; }
  .fc-home-v2 .process-intro{ display: block; }
  .fc-home-v2 .process-intro .button{ margin-top: 30px; }
  .fc-home-v2 .process-list{ grid-template-columns: 1fr; }
  .fc-home-v2 .process-list li{ min-height: 0; }
  .fc-home-v2 .insights-grid{ grid-template-columns: 1fr; gap: 45px; }
  .fc-home-v2 .insight-card{ max-width: 650px; }
  .fc-home-v2 .faq-grid, .fc-home-v2 .contact-grid{ gap: 55px; }
  .fc-home-v2 .footer-top{ grid-template-columns: 1.4fr 1fr 1fr; }
  .fc-home-v2 .footer-brand{ grid-column: 1/-1; }
  .homepage-v2-footer-shell .homepage-v2-newsletter{ align-items: flex-start; flex-direction: column; }
  .homepage-v2-footer-shell .homepage-v2-newsletter form{ width: 100%; }
  .homepage-v2-footer-shell .homepage-v2-office-grid{ grid-template-columns: 1fr; }
  .homepage-v2-footer-shell .homepage-v2-office-grid article,
  .homepage-v2-footer-shell .homepage-v2-office-grid article:first-child,
  .homepage-v2-footer-shell .homepage-v2-office-grid article:last-child{ padding: 24px 0; border-right: 0; border-bottom: 1px solid var(--light-line); }
  .homepage-v2-footer-shell .homepage-v2-office-grid article:last-child{ border-bottom: 0; }
}

@media (max-width: 540px) {
  .fc-home-v2 .section{ padding-block: 58px; }
  .fc-home-v2 .alert-bar{ font-size: .65rem; gap: 10px; }
  .fc-home-v2 .nav-shell{ padding-block: 6px; }
  .fc-home-v2 .hero{ min-height: 800px; }
  .fc-home-v2 .hero-media{ background-image: linear-gradient(180deg, rgba(12,9,5,.58), rgba(12,9,5,.84)), url("/static/assets/homepage-v2/hero-temp.jpg"); background-position: center; }
  .fc-home-v2 .hero-content{ padding-top: 155px; padding-bottom: 34px; }
  .fc-home-v2 .hero .eyebrow{ max-width: 280px; line-height: 1.7; }
  .fc-home-v2 .hero h1{ margin-top: 18px; font-size: clamp(2rem, 8.9vw, 2.75rem); line-height: 1.06; }
  .fc-home-v2 .hero h1 br{ display: none; }
  .fc-home-v2 .hero h1 em{ display: block; margin-top: 7px; }
  .fc-home-v2 .hero-lead{ margin-top: 18px; font-size: .96rem; line-height: 1.5; }
  .fc-home-v2 .hero-service-pills{ width: 100%; max-width: 100%; margin-top: 16px; margin-right: 0; }
  .fc-home-v2 .hero-service-pills li{ flex: 0 0 auto; }
  .fc-home-v2 .hero-actions{ display: grid; grid-template-columns: 1fr; margin-top: 24px; }
  .fc-home-v2 .hero .button{ min-height: 48px; }
  .fc-home-v2 .hero-proof{ margin-top: 24px; }
  .fc-home-v2 .section-heading{ margin-bottom: 42px; }
  .fc-home-v2 .section-heading > p{ font-size: 1rem; }
  .fc-home-v2 .service-tabs{ grid-template-columns: repeat(4, minmax(96px, 1fr)); }
  .fc-home-v2 .service-tabs button{ min-width: 96px; font-size: .8rem; }
  .fc-home-v2 .service-intro h3{ font-size: 1.75rem; }
  .fc-home-v2 .service-links a{ font-size: 1.25rem; }
  .fc-home-v2 .numbers{ padding-block: 20px; }
  .fc-home-v2 .numbers-grid{ grid-template-columns: 1fr 1fr; }
  .fc-home-v2 .number-card{ min-height: 96px; padding: 12px 15px; }
  .fc-home-v2 .number-card span, .fc-home-v2 .number-card b{ font-size: 2.25rem; }
  .fc-home-v2 .number-card p{ font-size: .58rem; }
  .fc-home-v2 .fta-party{ min-height: 0; padding: 26px 22px; }
  .fc-home-v2 .fta-party small{ margin-top: 14px; }
  .fc-home-v2 .fta-party-agent em{ margin-top: 18px; }
  .fc-home-v2 .tax-agent-copy article, .fc-home-v2 .tax-agent-copy article:nth-child(odd), .fc-home-v2 .tax-agent-copy article:nth-child(even){ grid-template-columns: 42px minmax(0,1fr); gap: 12px; padding: 28px 0; }
  .fc-home-v2 .tax-agent-copy article > span{ font-size: 1.65rem; }
  .fc-home-v2 .advisory-heading{ margin-bottom: 38px; }
  .fc-home-v2 .advisory-experience{ gap: 38px; }
  .fc-home-v2 .advisory-media{ padding: 0; }
  .fc-home-v2 .leadership-grid{ grid-template-columns: repeat(3, 84%); margin-right: calc(var(--pad) * -1); }
  .fc-home-v2 .leader-card, .fc-home-v2 .leader-card:nth-child(2), .fc-home-v2 .leader-card:nth-child(3){ min-height: 480px; }
  .fc-home-v2 .advisory-copy-stack > article::before{ left: 21px; }
  .fc-home-v2 .advisory-copy-stack > article{ grid-template-columns: 44px minmax(0,1fr); gap: 14px; padding: 28px 0; }
  .fc-home-v2 .advisory-copy-stack > article > span{ width: 44px; height: 44px; }
  .fc-home-v2 .principles article{ padding: 18px 0; }
  .fc-home-v2 .feature-card{ padding: 24px 20px; }
  .fc-home-v2 .card-icon{ width: 52px; height: 52px; }
  .fc-home-v2 .process-list li{ padding: 22px 18px; }
  .fc-home-v2 .review-rail{ grid-auto-columns: 88%; }
  .fc-home-v2 .review-card{ min-height: 290px; }
  .fc-home-v2 .google-score{ width: max-content; }
  .fc-home-v2 .form-row{ grid-template-columns: 1fr; gap: 0; }
  .fc-home-v2 .contact-form{ margin-inline: -6px; }
  .fc-home-v2 .footer-top{ grid-template-columns: 1fr 1fr; }
  .fc-home-v2 .footer-bottom{ min-height: 105px; align-items: flex-start; justify-content: center; flex-direction: column; }
  .homepage-v2-footer-shell .homepage-v2-newsletter form{ display: grid; grid-template-columns: 1fr; gap: 10px; }
  .homepage-v2-footer-shell .homepage-v2-newsletter input{ border-right: 1px solid rgba(255,255,255,.2); }
  .homepage-v2-footer-shell .homepage-v2-offices-heading{ align-items: flex-start; flex-direction: column; }
  .fc-home-v2 .floating-whatsapp{ width: 50px; height: 50px; left: 15px; bottom: 15px; }
  .fc-home-v2 .floating-whatsapp svg{ width: 25px; height: 29px; }
}

@media (prefers-reduced-motion: reduce) {
  .fc-home-v2{ scroll-behavior: auto; }
  .fc-home-v2 *, .fc-home-v2 *::before, .fc-home-v2 *::after{ scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .fc-home-v2.js .reveal{ opacity: 1; transform: none; }
  .fc-home-v2 .hero-media{ transform: scale(1.02); }
  .fc-home-v2 .ambient-webgl{ display: none; }
}


/* Django shell integration: keep the v2 body below the existing fixed header and marquee. */
.fc-home-v2 {
  position: relative;
  overflow: clip;
  padding-top: 0;
  color: var(--ink);
  background: #f3eee5;
  font: 400 16px/1.6 var(--sans);
  -webkit-font-smoothing: antialiased;
}
.fc-home-v2 .hero { min-height: max(790px, 100svh); }
.fc-home-v2 .hero h1 { color: #fff; }
.fc-home-v2 .ambient-webgl { z-index: 1; }
.fc-home-v2 main { position: relative; z-index: 2; }

html.homepage-menu-open { overflow: hidden; }
