/* Team rail and shared footer. No animation dependencies or additional media. */
.team-carousel{min-width:0;max-width:1000px;margin-inline:auto}
.team-track{gap:24px;padding:4px 0 22px;scroll-padding-inline:2px}
.team-track .team-card{flex:0 0 calc((100% - 48px)/3);min-width:0;max-width:none;width:auto;margin:0;scroll-snap-align:start;border:1px solid #deebe2;background:#f0f7f2}
.team-track .team-card>img{aspect-ratio:1.4;object-position:center 12%}
.team-track .team-info{min-height:82px;padding:17px 9px}
.team-track .team-info h3{font-size:clamp(18px,1.65vw,22px)}
.team-track .team-info p{font-size:12px;color:#526f63}
.team-carousel-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:6px}
.team-carousel-footer>p{display:flex;align-items:center;gap:12px;font-size:12px;color:#62796f}
.team-scroll-line{height:1px;width:42px;background:#8eac9b;position:relative}
.team-scroll-line:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid #8eac9b;border-right:1px solid #8eac9b;transform:rotate(45deg)}
.team-carousel .carousel-counter{font-size:11px;white-space:nowrap;flex-shrink:0}
.team-carousel-footer .carousel-nav{flex-shrink:0}
.team-carousel .round-button{width:42px;height:42px}
.team-autoplay [data-play-icon]{font-size:15px;line-height:1;font-weight:600}
.team-autoplay[hidden]{display:none}
.team-track:focus-visible{outline:2px solid #3d8c69;outline-offset:6px;border-radius:10px}
.team-track .team-card:focus-within{border-color:#649e7d}
.footer-refined{padding:58px 0 25px;background:radial-gradient(ellipse at 95% 0,#285b4b 0,transparent 48%),#123b36;color:#d5e4db;border-top:4px solid #fbd535}
.footer-invitation{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:0 0 43px;border-bottom:1px solid #ffffff24}
.footer-eyebrow{display:block;font-size:10px;letter-spacing:.16em;font-weight:600;color:#c4d6c9;margin-bottom:19px}
.footer-invitation h2{font-size:clamp(36px,4.1vw,57px);line-height:1.06;letter-spacing:-.045em;font-weight:500;color:#fff}
.footer-invitation h2>span{color:#d3e6b8}
.footer-invitation-action{max-width:340px}
.footer-invitation-action>p{font-size:14px;line-height:1.7;color:#c4d7cc;margin-bottom:22px}
.footer-invitation .button{font-size:13px;padding:17px 22px;gap:30px;border-radius:5px}
.footer-layout{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:42px;padding:43px 0 35px}
.footer-refined .footer-logo{width:185px;max-width:100%;height:auto;margin-bottom:22px}
.footer-relationship{font-size:12px;line-height:1.9;color:#bdcfc5;max-width:320px}
.footer-location-tag{display:flex;align-items:flex-start;gap:8px;font-size:10px;line-height:1.7;color:#a6c4b2;margin-top:18px}
.footer-location-tag i{height:6px;width:6px;flex-shrink:0;border-radius:50%;background:#c9dc9c;margin-top:6px}
.footer-layout h3{font-size:14px;font-weight:550;color:#fff;letter-spacing:.01em;margin:0 0 21px}
.footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.footer-nav h3{margin-bottom:7px}
.footer-nav>a{font-size:12px;line-height:1.6;color:#bdcfc5;text-underline-offset:5px}
.footer-nav>a:hover{color:#ffe270;text-decoration:underline}
.footer-reach>a{display:block}
.footer-reach .footer-phone{font-size:20px;letter-spacing:-.025em;line-height:1.3;color:#fff;white-space:nowrap}
.footer-phone>span{font-size:16px;color:#f8d63e;margin-left:5px}
.footer-email{font-size:12px;color:#d8e5dd;margin-top:10px;overflow-wrap:anywhere}
.footer-reach>p{font-size:12px;line-height:1.8;color:#bdcfc5;margin-top:17px}
.footer-reach .footer-whatsapp{display:flex;align-items:center;gap:8px;font-size:11px;color:#d6e7c1;margin-top:17px}
.footer-whatsapp svg{width:16px;height:16px}
.footer-whatsapp>span{margin-left:auto}
.footer-firms{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-bottom:32px}
.footer-firms>a{display:flex;justify-content:space-between;align-items:center;gap:22px;border:1px solid #ffffff26;border-radius:7px;padding:21px 23px;background:#ffffff04;transition:background .2s,border-color .2s}
.footer-firms>a:hover{background:#ffffff0c;border-color:#bbd39180}
.footer-firms small{display:block;font-size:9px;letter-spacing:.1em;color:#a8c2b3;margin-bottom:8px;line-height:1.6}
.footer-firms strong{display:block;font-size:17px;font-weight:500;line-height:1.4;letter-spacing:-.015em;color:#f3f7f1}
.firm-domain{display:block;font-size:11px;color:#d4dfb3;margin-top:5px}
.firm-arrow{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;border:1px solid #ffffff30;border-radius:50%;color:#f5dc72;font-size:18px}
.footer-closing{border-top:1px solid #ffffff24;padding-top:23px;display:flex;justify-content:space-between;align-items:center;gap:18px;color:#aac3b5;font-size:11px}
.footer-closing>a{color:#e0e9df;display:flex;gap:17px;align-items:center}
.footer-closing>a>span{font-size:18px;color:#f7dd79}
.footer-guidance-note{max-width:910px;font-size:10px;line-height:1.8;color:#a5bdb0;margin-top:17px}
.footer-refined a:focus-visible,.team-carousel button:focus-visible{outline:2px solid #e8cd50;outline-offset:5px;border-radius:3px}
@media(min-width:821px){.team-track .team-info h3{white-space:normal}.team-carousel-footer{display:none}}
@media(min-width:821px){.team-section{padding-block:80px}.team-section .section-heading{margin-bottom:34px}}
@media(max-width:1050px){.footer-layout{grid-template-columns:1.2fr 1fr 1fr;gap:30px}.footer-brand-block{grid-column:1/4;display:grid;grid-template-columns:220px 1fr;column-gap:30px}.footer-relationship{max-width:610px}.footer-location-tag{grid-column:2;margin-top:9px}.footer-refined .footer-logo{margin-bottom:0}.team-track .team-info{padding-inline:3px}.team-track .team-info h3{font-size:18px}}
@media(max-width:820px){.team-track{gap:18px}.team-track .team-card{flex-basis:calc((100% - 18px)/2)}.team-track .team-info h3{font-size:21px}.footer-invitation h2{font-size:42px}.footer-invitation .button{font-size:12px;gap:20px}.footer-invitation-action>p{font-size:13px}.footer-invitation{gap:25px}.footer-firms strong{font-size:15px}.footer-firms>a{padding:19px;gap:15px}.footer-closing>span:nth-child(2){display:none}}
@media(max-width:600px){.team-track{gap:16px;margin-right:0;padding-right:0;scroll-padding-right:0}.team-track .team-card{flex-basis:100%;padding:9px 9px 0}.team-track .team-info{padding:18px 6px;min-height:85px}.team-track .team-info h3{font-size:21px}.team-track .team-info p{font-size:11px}.team-carousel-footer{gap:8px}.team-carousel-footer>p{font-size:10px;gap:7px}.team-scroll-line{width:20px}.team-carousel .carousel-counter{font-size:10px;margin-right:3px}.team-carousel .round-button{width:36px;height:36px}.team-carousel .carousel-nav{gap:6px}.footer-refined{padding:38px 0 25px}.footer-invitation{display:block;padding-bottom:30px}.footer-eyebrow{font-size:9px;margin-bottom:15px}.footer-invitation h2{font-size:44px}.footer-invitation-action{margin-top:25px;max-width:none}.footer-invitation-action>p{font-size:13px;margin-bottom:17px}.footer-invitation .button{font-size:12px;padding:16px 19px;gap:26px}.footer-layout{grid-template-columns:1fr 1fr;gap:30px 24px;padding:31px 0}.footer-brand-block{display:block;grid-column:1/-1}.footer-refined .footer-logo{width:173px;margin-bottom:18px}.footer-relationship{font-size:12px;max-width:400px}.footer-location-tag{font-size:10px;margin-top:14px}.footer-layout h3{font-size:14px}.footer-nav>a{font-size:12px}.footer-nav{gap:10px}.footer-reach{grid-column:1/-1;border-top:1px solid #ffffff1c;padding-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.footer-reach h3{grid-column:1/-1;margin-bottom:16px}.footer-reach .footer-phone{font-size:21px;grid-column:1/-1}.footer-reach .footer-email{grid-column:1/-1;margin-top:9px}.footer-reach>p{margin:16px 0 0}.footer-reach .footer-whatsapp{align-self:center;font-size:11px;line-height:1.7;gap:8px}.footer-whatsapp>span{margin-left:0}.footer-firms{grid-template-columns:1fr;gap:12px;padding-bottom:27px}.footer-firms>a{padding:19px 18px}.footer-firms strong{font-size:16px}.footer-firms small{font-size:8px}.footer-closing{font-size:10px;gap:12px;padding-top:20px}.footer-closing>a{gap:9px;white-space:nowrap}.footer-guidance-note{font-size:10px;line-height:1.85;margin-top:18px}}
@media(prefers-reduced-motion:reduce){.team-track{scroll-behavior:auto!important}.footer-firms>a{transition:none}}
/* Desktop readability: retain the approved typefaces and mobile scale. */
@media(min-width:821px){
  .main-nav{font-size:15px;gap:22px}
  .dropdown-panel a{font-size:14px;padding-block:10px}
  .dropdown-label{font-size:11px}
  .nav-actions .quote-btn{font-size:13px}
  .contact-strip{font-size:11px}
}
@media(min-width:1024px){
  body{font-size:16px}
  .hero-copy>p{font-size:16px;max-width:590px;line-height:1.8}
  .hero-kicker{font-size:12px}
  .hero-actions .button,.hero-explore{font-size:14px}
  .hero-note{font-size:12px}
  .hero-bottom{font-size:11px}
  .eyebrow,.knowledge-label{font-size:12px}
  .topic-nav a{font-size:13px}
  .topic-nav .wrap>span{font-size:10px}
  .button,.text-link{font-size:14px}
  .heading-aside p,.solutions-copy>p,.section-heading p,.about-aside>p,.about-main>p,.registration-grid p,.consultation-copy>p,.faq-grid>div:first-child>p{font-size:15px;line-height:1.85}
  .service-card p,.knowledge-card>p,.benefit-card p,.article-copy>p,.testimonial-card blockquote,.process-step p,.check-list li,.about-list li{font-size:14px;line-height:1.85}
  .service-card .card-link,.source-link,.article-copy .text-link,.reading-links a{font-size:13px}
  .service-number,.article-category,.article-meta,.reference-date,.knowledge-card .knowledge-note,.tax-information-note{font-size:12px}
  .reading-strip>span{font-size:11px}
  .faq-list summary{font-size:16px}
  .faq-list details>p{font-size:14px;line-height:1.85}
  .faq-list .faq-source{font-size:12px}
  .enquiry-form>p{font-size:14px}
  .enquiry-form>label:not(.consent-label){font-size:13px}
  .enquiry-form input:not([type=checkbox]),.enquiry-form select{font-size:15px}
  .consent-label,.preview-form-note{font-size:12px}
  .consultation-contact small{font-size:10px}
  .prose{font-size:17px;line-height:1.9}
  .contents ol,.card-body p,.author-panel p,.contact-panel p,.aside-box p{font-size:14px}
  .editorial-note,.breadcrumbs,.article-meta,.aside-links>a,.official-links{font-size:13px}
  .footer-layout h3{font-size:16px}
  .footer-nav>a,.footer-email,.footer-reach>p{font-size:14px}
  .footer-relationship{font-size:13px}
  .footer-location-tag,.footer-reach .footer-whatsapp,.footer-closing{font-size:12px}
  .footer-firms small,.footer-guidance-note{font-size:11px}
}
@media(min-width:821px) and (max-width:1150px){.nav-shell{gap:20px}.main-nav{gap:17px;font-size:14px}}
@media(max-width:820px){
  .main-nav>a,.nav-trigger{font-size:16px;min-height:48px}
  .dropdown-panel a{font-size:14px;padding-block:11px;white-space:normal}
  .contact-strip{font-size:11px}
  .hero-copy>p{font-size:14px;line-height:1.85}
  .hero-note{font-size:11px;line-height:1.7}
  .hero-actions .button,.button,.text-link{font-size:13px}
  .hero-kicker{font-size:9px}
  .heading-aside p,.section-heading p,.solutions-copy>p,.about-aside>p,.about-main>p,.registration-grid p,.consultation-copy>p,.faq-grid>div:first-child>p{font-size:14px;line-height:1.85}
  .service-card p,.knowledge-card>p,.benefit-card p,.article-copy>p,.testimonial-card blockquote,.process-step p,.check-list li,.about-list li{font-size:14px;line-height:1.8}
  .service-card .card-link,.source-link,.article-copy .text-link,.reading-links a,.freezone-link{font-size:12px}
  .reference-date,.knowledge-card .knowledge-note,.tax-information-note,.faq-list .faq-source{font-size:11px;line-height:1.85}
  .faq-list summary{font-size:15px;line-height:1.6}
  .faq-list details>p{font-size:14px;line-height:1.85}
  .enquiry-form>p{font-size:13px}
  .enquiry-form>label:not(.consent-label){font-size:12px}
  .enquiry-form input:not([type=checkbox]),.enquiry-form select{font-size:16px}
  .consent-label,.preview-form-note{font-size:11px;line-height:1.7}
  .prose{font-size:16px;line-height:1.9}
  .page-intro,.card-body p,.author-panel p,.contact-panel p,.aside-box p{font-size:14px}
  .editorial-note,.breadcrumbs,.article-meta{font-size:12px}
  .team-carousel .round-button{width:44px;height:44px}
  .team-track .team-info>a{height:44px;width:44px}
  .footer-relationship,.footer-email,.footer-reach>p,.footer-nav>a{font-size:14px}
  .footer-nav>a{padding-block:4px;min-height:32px}
  .footer-nav{gap:3px}
  .footer-reach .footer-whatsapp{font-size:12px;min-height:44px}
  .footer-invitation-action>p{font-size:14px}
  .footer-location-tag,.footer-guidance-note{font-size:11px}
  .footer-closing{font-size:11px}
}
@media(max-width:360px){.team-carousel-footer>p{font-size:0;gap:0}.team-scroll-line{width:28px}.team-track .team-info h3{font-size:19px}.footer-invitation h2{font-size:38px}.footer-reach{grid-template-columns:1fr}.footer-reach>p,.footer-reach .footer-whatsapp{grid-column:1/-1}.footer-reach .footer-whatsapp{justify-content:flex-start;margin-top:10px}.footer-closing{font-size:10px}}
/* Compact footer: a simple portal introduction and discreet firm links. */
.footer-refined{padding-top:35px;border-top-width:2px;background:#123b36}
.footer-invitation{padding-bottom:28px;gap:25px}
.footer-invitation h2{font-size:32px;line-height:1.25;letter-spacing:-.03em}
.footer-invitation .button{padding:13px 19px;font-size:13px;gap:22px;flex-shrink:0}
.footer-layout{padding:31px 0}
.footer-website-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:16px;font-size:12px;color:#d6dfb9}
.footer-website-links a{display:inline-flex;gap:9px;align-items:center;padding-block:3px;text-underline-offset:4px}
.footer-website-links a:hover{text-decoration:underline}
.footer-guidance-note{max-width:100%;margin-top:14px}
@media(min-width:601px) and (max-width:1050px){.footer-website-links{grid-column:2;margin-top:10px}}
@media(max-width:600px){.footer-refined{padding-top:28px}.footer-invitation h2{font-size:29px;max-width:330px}.footer-invitation .button{margin-top:20px;font-size:13px;padding:13px 18px}.footer-invitation{padding-bottom:27px}.footer-layout{padding:28px 0;gap:25px 24px}.footer-website-links{font-size:13px;gap:22px;margin-top:13px}.footer-website-links a{min-height:36px}.footer-closing{padding-top:18px}}
@media(max-width:600px){.footer-invitation h2>span{display:block}}
