
:root{
  --tsa-navy:#001c45;
  --tsa-red:#d41118;
  --tsa-text:#17233b;
  --tsa-muted:#657185;
  --tsa-soft:#f6f8fb;
  --tsa-line:#e1e8f0;
}
.tesimpots-service-autonomes-active .entry-title,
.tesimpots-service-autonomes-active .page-header,
.tesimpots-service-autonomes-active .entry-header,
.tesimpots-service-autonomes-active .breadcrumbs,
.tesimpots-service-autonomes-active .breadcrumb-wrap{display:none!important}
.tesimpots-service-autonomes-active .site-main,
.tesimpots-service-autonomes-active .content-area,
.tesimpots-service-autonomes-active .entry-content{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important
}
.tsa-page{font-family:Inter,Arial,sans-serif;color:var(--tsa-text);background:#fff}
.tsa-page *{box-sizing:border-box}
.tsa-container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.tsa-kicker{
  display:inline-block;margin-bottom:14px;color:var(--tsa-red);font-size:.78rem;
  font-weight:900;letter-spacing:.13em;text-transform:uppercase
}
.tsa-page h1,.tsa-page h2,.tsa-page h3{
  margin:0;color:var(--tsa-navy);line-height:1.05;letter-spacing:-.035em
}
.tsa-page h1{font-size:clamp(3rem,5.7vw,5.45rem);max-width:850px}
.tsa-page h2{font-size:clamp(2rem,3.5vw,3.45rem)}
.tsa-page h3{font-size:1.2rem}
.tsa-page p{margin:16px 0 0;color:var(--tsa-muted);font-size:1.05rem;line-height:1.72}

.tsa-hero{padding:110px 0 92px;border-bottom:1px solid var(--tsa-line);background:linear-gradient(180deg,#fff,#fbfcfe)}
.tsa-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:70px;align-items:center}
.tsa-hero p{max-width:760px;font-size:1.16rem}
.tsa-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.tsa-primary,.tsa-secondary{
  display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;
  border-radius:11px;text-decoration:none!important;font-weight:900
}
.tsa-primary{background:var(--tsa-red);color:#fff!important}
.tsa-secondary{border:1px solid var(--tsa-line);background:#fff;color:var(--tsa-navy)!important}
.tsa-trust-line{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.tsa-trust-line span{
  padding:8px 12px;border-radius:999px;background:var(--tsa-soft);color:var(--tsa-navy);
  font-size:.78rem;font-weight:800
}
.tsa-price-card{
  padding:34px;border:1px solid var(--tsa-line);border-radius:24px;background:#fff;
  box-shadow:0 22px 52px rgba(0,28,69,.09)
}
.tsa-price-card>span{display:block;color:var(--tsa-red);font-size:.77rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.tsa-price-card strong{display:block;margin-top:14px;color:var(--tsa-navy);font-size:3.25rem;letter-spacing:-.05em}
.tsa-price-card a{
  display:flex;align-items:center;justify-content:center;min-height:50px;margin-top:26px;
  border-radius:10px;background:var(--tsa-navy);color:#fff!important;text-decoration:none!important;font-weight:900
}
.tsa-price-card small{display:block;margin-top:14px;color:var(--tsa-muted);line-height:1.5}

.tsa-professions,.tsa-expenses,.tsa-errors,.tsa-why,.tsa-resources,.tsa-faq{padding:86px 0}
.tsa-section-heading{max-width:840px;margin-bottom:38px}
.tsa-profession-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tsa-profession-grid article{
  display:flex;align-items:center;gap:15px;padding:22px;border:1px solid var(--tsa-line);
  border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(0,28,69,.04)
}
.tsa-profession-grid article>span{
  display:flex;align-items:center;justify-content:center;flex:0 0 45px;width:45px;height:45px;
  border-radius:13px;background:#fff0f1;color:var(--tsa-red)
}
.tsa-profession-grid svg{width:23px;height:23px}
.tsa-profession-grid strong{color:var(--tsa-navy)}

.tsa-expenses{background:var(--tsa-soft)}
.tsa-expense-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.tsa-expense-card{
  display:flex;flex-direction:column;min-height:245px;padding:25px;border:1px solid var(--tsa-line);
  border-radius:20px;background:#fff;text-align:left;cursor:pointer;
  box-shadow:0 12px 30px rgba(0,28,69,.045);transition:.2s
}
.tsa-expense-card:hover{transform:translateY(-4px);border-color:rgba(212,17,24,.35);box-shadow:0 20px 40px rgba(0,28,69,.085)}
.tsa-expense-card>span{
  display:flex;align-items:center;justify-content:center;width:46px;height:46px;
  border-radius:14px;background:#fff0f1;color:var(--tsa-red)
}
.tsa-expense-card svg{width:24px;height:24px}
.tsa-expense-card strong{display:block;margin-top:20px;color:var(--tsa-navy);font-size:1.05rem}
.tsa-expense-card small{display:block;margin-top:8px;color:var(--tsa-muted);line-height:1.55}
.tsa-expense-card em{margin-top:auto;padding-top:18px;color:var(--tsa-red);font-style:normal;font-weight:900;font-size:.84rem}

.tsa-taxes{padding:86px 0;background:#fff}
.tsa-two-column{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}
.tsa-tax-card{
  display:flex;gap:20px;padding:32px;border:1px solid var(--tsa-line);border-radius:22px;
  background:var(--tsa-soft)
}
.tsa-tax-card>span{
  flex:0 0 50px;display:flex;align-items:center;justify-content:center;width:50px;height:50px;
  border-radius:15px;background:#fff0f1;color:var(--tsa-red)
}
.tsa-tax-card svg{width:26px;height:26px}
.tsa-tax-card ul{margin:18px 0 0;padding-left:20px;color:var(--tsa-muted);line-height:1.8}

.tsa-errors{background:var(--tsa-soft)}
.tsa-error-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tsa-error-grid article{
  display:flex;gap:14px;align-items:flex-start;padding:22px;border:1px solid var(--tsa-line);
  border-radius:17px;background:#fff
}
.tsa-error-grid span{color:var(--tsa-red)}
.tsa-error-grid svg{width:24px;height:24px}
.tsa-error-grid strong{color:var(--tsa-navy);line-height:1.45}

.tsa-documents{padding:86px 0;background:#fff}
.tsa-documents-card{
  display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;padding:46px;
  border:1px solid var(--tsa-line);border-radius:24px;background:var(--tsa-navy);
  box-shadow:0 24px 54px rgba(0,28,69,.14)
}
.tsa-documents-card h2,.tsa-documents-card p{color:#fff}
.tsa-documents-card p{opacity:.78}

.tsa-why{background:#fff}
.tsa-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tsa-why-grid article{
  padding:26px;border:1px solid var(--tsa-line);border-radius:20px;background:#fff;
  box-shadow:0 12px 30px rgba(0,28,69,.045)
}
.tsa-why-grid article>span{
  display:flex;align-items:center;justify-content:center;width:45px;height:45px;
  border-radius:14px;background:#eaf7ef;color:#17703a
}
.tsa-why-grid svg{width:23px;height:23px}
.tsa-why-grid h3{margin-top:20px}
.tsa-why-grid p{font-size:.91rem}

.tsa-resources{background:var(--tsa-soft)}
.tsa-resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tsa-resource-grid a{
  display:flex;flex-direction:column;min-height:225px;padding:28px;border:1px solid var(--tsa-line);
  border-radius:20px;background:#fff;color:inherit!important;text-decoration:none!important;
  box-shadow:0 12px 30px rgba(0,28,69,.045);transition:.2s
}
.tsa-resource-grid a:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,28,69,.085)}
.tsa-resource-grid span{color:var(--tsa-red);font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.tsa-resource-grid strong{display:block;margin-top:18px;color:var(--tsa-navy);font-size:1.25rem;line-height:1.35}
.tsa-resource-grid em{margin-top:auto;color:var(--tsa-red);font-style:normal;font-weight:900}

.tsa-faq{background:#fff}
.tsa-faq-list{display:grid;gap:13px}
.tsa-faq-list article{overflow:hidden;border:1px solid var(--tsa-line);border-radius:16px;background:#fff}
.tsa-faq-list button{
  display:flex;align-items:center;justify-content:space-between;width:100%;gap:20px;
  padding:24px 26px;border:0;background:#fff;text-align:left;cursor:pointer
}
.tsa-faq-list button strong{color:var(--tsa-navy);font-size:1.04rem}
.tsa-faq-list button span{position:relative;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:var(--tsa-soft)}
.tsa-faq-list button span:before,.tsa-faq-list button span:after{
  content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;background:var(--tsa-navy);transform:translate(-50%,-50%)
}
.tsa-faq-list button span:after{transform:translate(-50%,-50%) rotate(90deg)}
.tsa-faq-list article.is-open button span{background:var(--tsa-red)}
.tsa-faq-list article.is-open button span:before,.tsa-faq-list article.is-open button span:after{background:#fff}
.tsa-faq-list article.is-open button span:after{transform:translate(-50%,-50%) rotate(0)}
.tsa-faq-list article>div{padding:0 70px 24px 26px}

.tsa-cta{padding:86px 0;background:var(--tsa-soft)}
.tsa-cta-card{
  display:grid;grid-template-columns:1fr .7fr;gap:55px;align-items:center;padding:54px;
  border-radius:24px;background:var(--tsa-navy);box-shadow:0 24px 54px rgba(0,28,69,.14)
}
.tsa-cta-card h2,.tsa-cta-card p{color:#fff}
.tsa-cta-card p{opacity:.78}
.tsa-cta-actions{display:grid;gap:12px}
.tsa-cta-actions a{
  display:flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;
  border:1px solid rgba(255,255,255,.15);border-radius:11px;background:rgba(255,255,255,.06);
  color:#fff!important;text-decoration:none!important;font-weight:850
}
.tsa-cta-actions .tsa-primary{border-color:var(--tsa-red);background:var(--tsa-red)}

.tsa-modal[hidden]{display:none}
.tsa-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px}
.tsa-modal-backdrop{position:absolute;inset:0;background:rgba(0,18,45,.72);backdrop-filter:blur(4px)}
.tsa-modal-dialog{
  position:relative;z-index:1;width:min(560px,100%);padding:38px;border-radius:22px;background:#fff;
  box-shadow:0 30px 80px rgba(0,0,0,.28)
}
.tsa-modal-close{
  position:absolute;right:16px;top:14px;width:40px;height:40px;border:0;border-radius:50%;
  background:var(--tsa-soft);color:var(--tsa-navy);font-size:1.5rem;cursor:pointer
}
.tsa-modal-note{margin-top:24px;padding:16px;border-left:4px solid var(--tsa-red);border-radius:10px;background:#fff5f5;color:var(--tsa-muted);font-size:.9rem}

@media(max-width:1000px){
  .tsa-hero-grid,.tsa-two-column,.tsa-cta-card,.tsa-documents-card{grid-template-columns:1fr}
  .tsa-profession-grid,.tsa-expense-grid,.tsa-why-grid{grid-template-columns:repeat(2,1fr)}
  .tsa-error-grid{grid-template-columns:repeat(2,1fr)}
  .tsa-resource-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .tsa-container{width:min(100% - 28px,1180px)}
  .tsa-hero{padding:80px 0 68px}
  .tsa-page h1{font-size:2.65rem}
  .tsa-page h2{font-size:2rem}
  .tsa-professions,.tsa-expenses,.tsa-taxes,.tsa-errors,.tsa-documents,.tsa-why,.tsa-resources,.tsa-faq,.tsa-cta{padding:62px 0}
  .tsa-profession-grid,.tsa-expense-grid,.tsa-error-grid,.tsa-why-grid{grid-template-columns:1fr}
  .tsa-price-card{padding:28px 22px}
  .tsa-price-card strong{font-size:2.8rem}
  .tsa-documents-card,.tsa-cta-card{padding:34px 24px}
  .tsa-modal-dialog{padding:34px 24px}
}
