:root {
  --tas-red: #DE0F3F;
  --tas-blue: #004884;
  --tas-deep: #002b50;
  --tas-ink: #07182b;
  --tas-muted: #607488;
}

/* Service output component — independent of the active theme, but matches TaxAdvizor. */
.tas-service-outputs {
  position: relative;
  max-width: 940px;
  margin: 44px 0 34px;
  overflow: hidden;
  border: 1px solid rgba(0,72,132,.14);
  border-radius: 22px;
  background: linear-gradient(135deg,#fbfdff,#edf6fc);
  box-shadow: 0 18px 42px rgba(0,43,80,.11);
  font-family: "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;
}
.tas-service-outputs::before { position:absolute; top:-100px; right:-75px; width:260px; height:260px; border:1px solid rgba(222,15,63,.2); border-radius:50%; content:""; }
.tas-service-outputs__head { position:relative; z-index:1; display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding:31px 31px 24px; border-bottom:1px solid rgba(0,72,132,.12); }
.tas-service-outputs__head > div > span { display:block; margin-bottom:10px; color:var(--tas-red); font-size:10px; font-weight:850; letter-spacing:.12em; }
.tas-service-outputs h2 { margin:0; color:var(--tas-deep); font-family:"DM Serif Display", Georgia, serif; font-size:clamp(30px,4vw,46px); font-weight:400; letter-spacing:-.06em; line-height:.96; }
.tas-service-outputs h2 em { color:var(--tas-red); font-style:italic; }
.tas-service-outputs__seal { display:flex; align-items:center; gap:8px; flex:0 0 auto; padding:10px 12px; border-radius:12px; background:var(--tas-blue); color:#fff; }
.tas-service-outputs__seal b { font-family:"DM Serif Display", Georgia, serif; font-size:33px; font-weight:400; line-height:.85; }.tas-service-outputs__seal small { font-size:8px; font-weight:850; letter-spacing:.07em; line-height:1.2; text-transform:uppercase; }
.tas-service-outputs__grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:1px; border-bottom:1px solid rgba(0,72,132,.11); background:rgba(0,72,132,.11); }
.tas-service-outputs__grid article { display:grid; grid-template-columns:26px 24px 1fr; gap:9px; align-items:start; min-height:82px; padding:17px 20px; background:rgba(255,255,255,.69); transition:background .2s ease; }.tas-service-outputs__grid article:hover { background:#fff; }
.tas-service-outputs__grid article > i { padding-top:4px; color:#91a4b3; font-size:9px; font-style:normal; font-weight:850; }.tas-service-outputs__tick { display:grid; place-items:center; width:21px; height:21px; margin-top:1px; border-radius:50%; background:rgba(222,15,63,.1); color:var(--tas-red); font-size:12px; font-weight:900; }.tas-service-outputs__grid p { margin:0; color:#41586d; font-size:12px; font-weight:620; line-height:1.58; }
.tas-service-outputs__disclaimer { position:relative; z-index:1; margin:0; padding:15px 31px 18px; color:#738496; font-size:10px; line-height:1.6; }

/* Expanded service mega menu populated by the Service Suite plugin. */
.ta-menu .sub-menu.tas-service-mega { width:min(780px, calc(100vw - 46px)); grid-template-columns:repeat(3, 1fr); gap:0 6px; padding:15px; border-radius:18px; }
.ta-menu .tas-service-mega .tas-menu-group { grid-column:auto; padding:8px 7px 11px; }.ta-menu .tas-service-mega .tas-menu-group > b { display:block; margin:0 0 7px; color:var(--tas-red); font-size:8px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }.ta-menu .tas-service-mega .tas-menu-group a { display:block; padding:7px 6px; border-radius:7px; color:var(--tas-deep); font-size:10px; font-weight:760; line-height:1.3; text-transform:none; }.ta-menu .tas-service-mega .tas-menu-group a:hover { background:rgba(222,15,63,.07); color:var(--tas-red); }.ta-menu .tas-service-mega .tas-menu-footer { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:6px; padding:11px 7px 1px; border-top:1px solid rgba(0,72,132,.12); }.ta-menu .tas-service-mega .tas-menu-footer span { color:#718497; font-size:9px; }.ta-menu .tas-service-mega .tas-menu-footer a { padding:0; color:var(--tas-blue); font-size:10px; font-weight:850; }.ta-menu .tas-service-mega .tas-menu-footer a:hover { background:transparent; color:var(--tas-red); }

@media (max-width:900px) {
  .mobile-navigation .ta-menu .sub-menu.tas-service-mega { grid-template-columns:1fr 1fr; width:auto; margin:0 8px 10px; padding:8px; }.mobile-navigation .ta-menu .tas-service-mega .tas-menu-group { padding:8px; }.mobile-navigation .ta-menu .tas-service-mega .tas-menu-group a { padding:8px 4px; font-size:11px; }.mobile-navigation .ta-menu .tas-service-mega .tas-menu-footer { grid-column:1/-1; display:block; }.mobile-navigation .ta-menu .tas-service-mega .tas-menu-footer a { display:block; margin-top:7px; }
}
@media (max-width:560px) {
  .tas-service-outputs { margin:30px 0 23px; border-radius:17px; }.tas-service-outputs__head { gap:12px; padding:23px 17px 18px; }.tas-service-outputs__head > div > span { font-size:9px; }.tas-service-outputs h2 { font-size:31px; }.tas-service-outputs__seal { padding:8px; }.tas-service-outputs__seal b { font-size:27px; }.tas-service-outputs__seal small { display:none; }.tas-service-outputs__grid { grid-template-columns:1fr; }.tas-service-outputs__grid article { min-height:0; padding:14px 17px; }.tas-service-outputs__grid p { font-size:12px; }.tas-service-outputs__disclaimer { padding:14px 17px 17px; font-size:9px; }
  .mobile-navigation .ta-menu .sub-menu.tas-service-mega { grid-template-columns:1fr; }.mobile-navigation .ta-menu .tas-service-mega .tas-menu-group { border-bottom:1px solid rgba(0,72,132,.10); }.mobile-navigation .ta-menu .tas-service-mega .tas-menu-footer { grid-column:auto; }
}

/* Self-contained required document module. It is hidden automatically when
   the dedicated TaxAdvizor Service Documents plugin is active. */
.tas-service-documents { position:relative; max-width:940px; margin:40px 0 34px; overflow:hidden; border:1px solid rgba(0,72,132,.14); border-radius:22px; background:#fff; box-shadow:0 18px 40px rgba(0,43,80,.09); font-family:"Plus Jakarta Sans",Inter,ui-sans-serif,system-ui,sans-serif; }.tas-service-documents::before { position:absolute; right:-85px; bottom:-120px; width:270px; height:270px; border:1px solid rgba(222,15,63,.16); border-radius:50%; content:""; }.tas-service-documents__head { position:relative; z-index:1; display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:29px 30px 21px; border-bottom:1px solid rgba(0,72,132,.12); background:linear-gradient(135deg,#f3f9fd,#fff); }.tas-service-documents__head span { display:block; margin-bottom:9px; color:var(--tas-red); font-size:9px; font-weight:900; letter-spacing:.12em; }.tas-service-documents__head h2 { max-width:620px; margin:0; color:var(--tas-deep); font-family:"DM Serif Display",Georgia,serif; font-size:clamp(28px,3.7vw,43px); font-weight:400; letter-spacing:-.055em; line-height:.98; }.tas-service-documents__head > b { display:grid; place-items:center; width:58px; height:58px; border-radius:50%; background:var(--tas-red); color:#fff; font-family:"DM Serif Display",Georgia,serif; font-size:29px; font-weight:400; line-height:.76; }.tas-service-documents__head > b small { display:block; margin-top:5px; font-family:"Plus Jakarta Sans",Inter,sans-serif; font-size:7px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }.tas-service-documents__body { position:relative; z-index:1; display:grid; grid-template-columns:1.25fr .75fr; gap:22px; padding:22px 30px 29px; }.tas-service-documents__body ol { display:grid; gap:0; padding:0; margin:0; list-style:none; }.tas-service-documents__body li { display:grid; grid-template-columns:26px 22px 1fr; gap:8px; align-items:start; padding:11px 0; border-bottom:1px solid rgba(0,72,132,.10); }.tas-service-documents__body li:last-child { border-bottom:0; }.tas-service-documents__body li > i { padding-top:4px; color:#92a5b5; font-size:9px; font-style:normal; font-weight:850; }.tas-service-documents__body li > span { display:grid; place-items:center; width:20px; height:20px; margin-top:1px; border-radius:50%; background:rgba(222,15,63,.1); color:var(--tas-red); font-size:11px; font-weight:900; }.tas-service-documents__body li p { margin:0; color:#41586d; font-size:12px; font-weight:620; line-height:1.55; }.tas-service-documents__body aside { align-self:start; padding:17px; border:1px solid rgba(0,72,132,.13); border-radius:14px; background:rgba(0,72,132,.05); }.tas-service-documents__body aside > b { color:var(--tas-blue); font-size:12px; }.tas-service-documents__body aside p { margin:9px 0; color:var(--tas-muted); font-size:11px; line-height:1.6; }.tas-service-documents__body aside small { display:block; padding-top:9px; border-top:1px solid rgba(0,72,132,.13); color:#805061; font-size:9px; font-weight:760; line-height:1.5; }
@media(max-width:700px) { .tas-service-documents__body { grid-template-columns:1fr; }.tas-service-documents__body aside { margin-top:4px; } }
@media(max-width:560px) { .tas-service-documents { margin:29px 0 22px; border-radius:17px; }.tas-service-documents__head { padding:22px 17px 17px; }.tas-service-documents__head h2 { font-size:29px; }.tas-service-documents__head > b { width:47px; height:47px; font-size:25px; }.tas-service-documents__body { gap:15px; padding:15px 17px 22px; }.tas-service-documents__body li { grid-template-columns:21px 20px 1fr; gap:7px; }.tas-service-documents__body li p { font-size:12px; } }
