/* Idéal Web — GOLD — Pricing page polish
   Consolidé après revue visuelle/SEO. CSS sémantique sans numéro de patch. */
body.iw-page-pricing{
  --price-ink:#10261f;
  --price-copy:#52655d;
  --price-green:#0f8442;
  --price-green-dark:#0a6036;
  --price-deep:#052d25;
  --price-deep-2:#03241f;
  --price-mint:#8addbb;
  --price-soft:#f6f9f7;
  --price-line:#d7e3dd;
  --price-card:#ffffff;
  --price-shadow:0 16px 44px rgba(3,36,31,.08);
}

/* Marque officielle : aucun wordmark reconstruit en HTML. */
body.iw-page-pricing .iw-price-brand{
  display:inline-flex;
  align-items:center;
  min-width:0;
  line-height:1;
  text-decoration:none;
}
body.iw-page-pricing .iw-price-brand-logo{
  display:block;
  width:auto;
  height:auto;
  object-fit:contain;
}
body.iw-page-pricing .iw-price-brand-logo--header{width:205px;max-height:54px}
body.iw-page-pricing .iw-price-brand-logo--footer{width:178px;max-height:48px}

/* HERO : deux actions fortes maximum, outils en liens secondaires. */
body.iw-page-pricing .hero{padding-top:64px!important;padding-bottom:70px!important}
body.iw-page-pricing .hero-intro{
  max-width:900px;
  margin-inline:auto;
  text-align:center;
}
body.iw-page-pricing .hero #hero-title{
  max-width:820px;
  margin:20px auto 18px;
  font-size:clamp(2.55rem,4.7vw,4.5rem)!important;
  line-height:1.02!important;
  letter-spacing:-.052em!important;
  text-wrap:balance;
}
body.iw-page-pricing .hero .hero-lead,
body.iw-page-pricing .hero .hero-sub{
  max-width:820px;
  margin-left:auto;
  margin-right:auto;
  font-size:1.02rem!important;
  line-height:1.72!important;
}
body.iw-page-pricing .hero .hero-sub{margin-top:12px}
body.iw-page-pricing .iw-price-hero-actions{
  justify-content:center;
  gap:10px;
  margin-top:24px;
}
body.iw-page-pricing .iw-price-hero-actions .btn-main,
body.iw-page-pricing .iw-price-hero-actions .btn-ghost{
  min-height:50px;
  padding-inline:20px;
  border-radius:14px;
}
body.iw-page-pricing .iw-price-hero-tools{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  margin-top:13px;
  font-size:.9rem;
  font-weight:760;
}
body.iw-page-pricing .iw-price-hero-tools a{color:#b9ead4;text-decoration:none}
body.iw-page-pricing .iw-price-hero-tools a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
body.iw-page-pricing .iw-price-hero-tools span{color:rgba(255,255,255,.34)}
body.iw-page-pricing .hero-visual{
  max-width:980px!important;
  margin-top:30px!important;
  border-radius:28px!important;
  padding:7px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.24)!important;
}
body.iw-page-pricing .hero-visual img{border-radius:21px!important}
body.iw-page-pricing .iw-price-summary{
  max-width:1040px;
  margin:18px auto 0;
  gap:10px;
}
body.iw-page-pricing .hero .iw-price-summary .card{
  padding:17px 18px!important;
  border-radius:16px!important;
}
body.iw-page-pricing .hero .iw-price-summary strong{font-size:1.24rem!important;margin-bottom:5px}
body.iw-page-pricing .hero .iw-price-summary span{font-size:.82rem;line-height:1.42}

/* Rythme éditorial : contenu lisible, sans surdimensionnement. */
body.iw-page-pricing main > section:not(.hero){padding:72px 0}
body.iw-page-pricing main > section:not(.hero) .section-head{
  max-width:820px;
  margin:0 auto 34px;
  text-align:center;
}
body.iw-page-pricing main > section:not(.hero) .section-head h2{
  max-width:760px;
  margin:14px auto 10px;
  font-size:clamp(2rem,3.5vw,3.15rem)!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
}
body.iw-page-pricing main > section:not(.hero) .section-head p{
  max-width:760px;
  margin-inline:auto;
  font-size:1rem!important;
  line-height:1.7!important;
}
body.iw-page-pricing main > section:nth-of-type(even):not(.hero){background:#fbfdfc}

/* Cartes : un seul langage visuel clair. */
body.iw-page-pricing main > section:not(.hero) .card{
  background:var(--price-card)!important;
  border:1px solid var(--price-line)!important;
  border-radius:20px!important;
  box-shadow:var(--price-shadow)!important;
  padding:26px!important;
}
body.iw-page-pricing main > section:not(.hero) .card h3{
  font-size:1.08rem!important;
  line-height:1.28!important;
  letter-spacing:-.02em!important;
}
body.iw-page-pricing main > section:not(.hero) .card p,
body.iw-page-pricing main > section:not(.hero) .card li{
  font-size:.96rem!important;
  line-height:1.62!important;
}
body.iw-page-pricing .iw-price-icon{
  width:48px!important;
  height:48px!important;
  border-radius:14px!important;
  color:var(--price-green)!important;
  background:#edf8f2!important;
  border:1px solid #c8e7d6!important;
  box-shadow:none!important;
}
body.iw-page-pricing .iw-price-icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Note TVA isolée : reste alignée avec le contenu, jamais pleine largeur. */
body.iw-page-pricing .iw-vat-note{
  width:min(1180px,calc(100% - 34px));
  margin:0 auto!important;
  border-radius:14px!important;
  padding:13px 16px!important;
  font-size:.9rem;
}

/* Offres : hiérarchie nette et CTA alignés au bas des cartes. */
body.iw-page-pricing #offres-prix-belgique .grid{align-items:stretch}
body.iw-page-pricing #offres-prix-belgique .card{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
body.iw-page-pricing #offres-prix-belgique .card.featured{
  border:2px solid #92cfad!important;
  background:linear-gradient(180deg,#f5fbf7,#fff)!important;
  box-shadow:0 20px 52px rgba(3,36,31,.11)!important;
}
body.iw-page-pricing #offres-prix-belgique .card ul{margin-bottom:16px}
body.iw-page-pricing #offres-prix-belgique .card .more{margin-top:auto}
body.iw-page-pricing #offres-prix-belgique .iw-offer-card-icon{
  box-shadow:none!important;
}

/* Comparatif : sombre volontaire, mais beaucoup plus lisible. */
body.iw-page-pricing #comparatif-offres .iw-price-table-wrap{
  border-radius:22px!important;
  background:linear-gradient(180deg,#0a3129,#06261f)!important;
  border:1px solid rgba(138,221,187,.22)!important;
  box-shadow:0 20px 56px rgba(3,36,31,.17)!important;
}
body.iw-page-pricing #comparatif-offres .iw-price-table th{
  background:rgba(138,221,187,.08)!important;
  color:#f4f7f5!important;
  font-size:.92rem;
}
body.iw-page-pricing #comparatif-offres .iw-price-table td{
  color:#d4e1dc!important;
  font-size:.91rem;
  line-height:1.45;
}
body.iw-page-pricing #comparatif-offres .iw-price-table td:first-child{color:#f4f7f5!important}
body.iw-page-pricing #comparatif-offres .iw-price-table tr:nth-child(even) td{background:rgba(255,255,255,.018)}

/* Facteurs : cartes plus compactes et comparables. */
body.iw-page-pricing #facteurs-prix-site-web .iw-checklist{gap:12px}
body.iw-page-pricing #facteurs-prix-site-web .iw-checklist .card{padding:22px!important}

/* Bloc sombre : contraste explicitement verrouillé, cartes internes claires. */
body.iw-page-pricing #cout-cache-site-web .split-panel{
  padding:38px!important;
  border-radius:26px!important;
  background:linear-gradient(135deg,#052d25,#071b20)!important;
  border:1px solid rgba(138,221,187,.22)!important;
  box-shadow:0 22px 60px rgba(3,36,31,.18)!important;
}
body.iw-page-pricing #cout-cache-site-web .split-panel > div:first-child h2{
  color:#f4f7f5!important;
  -webkit-text-fill-color:#f4f7f5!important;
  font-size:clamp(2rem,3.3vw,3rem)!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
}
body.iw-page-pricing #cout-cache-site-web .split-panel > div:first-child p{
  color:#cbdad4!important;
  -webkit-text-fill-color:#cbdad4!important;
}
body.iw-page-pricing #cout-cache-site-web .split-panel .card{
  background:#fff!important;
  border-color:#d8e7df!important;
  box-shadow:0 14px 38px rgba(0,0,0,.12)!important;
}
body.iw-page-pricing #cout-cache-site-web .split-panel .card :is(h3,strong){color:var(--price-ink)!important;-webkit-text-fill-color:var(--price-ink)!important}
body.iw-page-pricing #cout-cache-site-web .split-panel .card :is(p,li,span){color:var(--price-copy)!important;-webkit-text-fill-color:var(--price-copy)!important}

/* FAQ : sombre assumé, plus lisible que le mélange dark/light historique. */
body.iw-page-pricing #faq-prix-site-web-belgique .faq-grid{max-width:900px;margin-inline:auto;gap:10px}
body.iw-page-pricing #faq-prix-site-web-belgique .faq-item{
  background:linear-gradient(180deg,#0b2025,#071a20)!important;
  border:1px solid rgba(138,221,187,.14)!important;
  border-radius:15px!important;
  box-shadow:0 12px 30px rgba(3,36,31,.10)!important;
}
body.iw-page-pricing #faq-prix-site-web-belgique .faq-item summary{
  min-height:62px;
  padding:17px 19px;
  color:#f4f7f5!important;
  -webkit-text-fill-color:#f4f7f5!important;
  font-size:.98rem;
}
body.iw-page-pricing #faq-prix-site-web-belgique .faq-item summary span{color:#f4f7f5!important;-webkit-text-fill-color:#f4f7f5!important}
body.iw-page-pricing #faq-prix-site-web-belgique .faq-item p{
  padding:0 19px 19px;
  color:#c8d7d1!important;
  -webkit-text-fill-color:#c8d7d1!important;
  font-size:.94rem!important;
}
body.iw-page-pricing #faq-prix-site-web-belgique .faq-item summary i{
  width:30px;height:30px;min-width:30px;
  color:#052d25!important;
  background:#8addbb!important;
}

/* CTA final : texte blanc garanti et boutons limités. */
body.iw-page-pricing #demarrer .cta-card{
  grid-template-columns:minmax(0,1fr) minmax(220px,290px);
  padding:40px!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,#07372e,#071b25)!important;
  border-color:rgba(138,221,187,.24)!important;
  box-shadow:0 22px 58px rgba(3,36,31,.18)!important;
}
body.iw-page-pricing #demarrer .cta-card :is(h2,strong){color:#f4f7f5!important;-webkit-text-fill-color:#f4f7f5!important}
body.iw-page-pricing #demarrer .cta-card p{color:#cad9d3!important;-webkit-text-fill-color:#cad9d3!important}
body.iw-page-pricing #demarrer .cta-actions{min-width:0}
body.iw-page-pricing #demarrer .btn-main,
body.iw-page-pricing #demarrer .btn-ghost{border-radius:13px}

/* Pré-footer : SEO conservé, mais les blocs ressemblent à une seule zone utile. */
body.iw-page-pricing .iw-seo-architecture{
  background:#071f1a!important;
  border-color:rgba(138,221,187,.14)!important;
}
body.iw-page-pricing .iw-seo-architecture__inner{padding:16px 0!important}
body.iw-page-pricing .iw-v7-children{
  max-width:1180px;
  margin:0 auto!important;
  padding:34px 22px 14px!important;
  border:0!important;
  border-radius:0!important;
  background:#f7faf8!important;
}
body.iw-page-pricing .iw-v7-children h2{
  margin-bottom:12px!important;
  color:var(--price-ink)!important;
  font-size:1.35rem!important;
}
body.iw-page-pricing .iw-v7-grid a{
  border-color:#d9e6df!important;
  background:#fff!important;
  color:var(--price-ink)!important;
  box-shadow:0 8px 22px rgba(3,36,31,.05);
}
body.iw-page-pricing .iw-seo-cluster{
  margin:0!important;
  padding:18px 0 38px!important;
  background:#f7faf8!important;
  border:0!important;
}
body.iw-page-pricing .iw-seo-cluster-shell{padding-top:0!important;padding-bottom:0!important}
body.iw-page-pricing .iw-seo-cluster h2{font-size:clamp(1.65rem,2.8vw,2.35rem)!important}
body.iw-page-pricing .iw-oneapp-global-proof{
  border-top:1px solid #dce9e2!important;
  background:linear-gradient(180deg,#f0f8f3,#e8f5ee)!important;
}

/* Footer : lockup officiel propre. */
body.iw-page-pricing .iw-seo-footer .iw-price-brand--footer{
  margin-bottom:14px;
}

/* Responsive : garde la hiérarchie sans allonger inutilement la page. */
@media(max-width:900px){
  body.iw-page-pricing .iw-price-brand-logo--header{width:174px;max-height:46px}
  body.iw-page-pricing .hero #hero-title{font-size:clamp(2.35rem,7.2vw,3.6rem)!important}
  body.iw-page-pricing #demarrer .cta-card{grid-template-columns:1fr}
  body.iw-page-pricing #cout-cache-site-web .split-panel{grid-template-columns:1fr!important}
}
@media(max-width:720px){
  body.iw-page-pricing .hero{padding-top:42px!important;padding-bottom:48px!important}
  body.iw-page-pricing .hero #hero-title{font-size:clamp(2rem,10vw,3rem)!important;letter-spacing:-.04em!important}
  body.iw-page-pricing .hero .hero-lead,
  body.iw-page-pricing .hero .hero-sub{font-size:.96rem!important;line-height:1.65!important}
  body.iw-page-pricing .iw-price-hero-actions{display:grid!important;grid-template-columns:1fr!important}
  body.iw-page-pricing .iw-price-hero-tools{font-size:.84rem}
  body.iw-page-pricing .hero-visual{margin-top:22px!important;border-radius:20px!important;padding:5px!important}
  body.iw-page-pricing .hero-visual img{border-radius:15px!important}
  body.iw-page-pricing .iw-price-summary{grid-template-columns:1fr 1fr!important;gap:8px}
  body.iw-page-pricing .hero .iw-price-summary .card{padding:14px!important}
  body.iw-page-pricing .hero .iw-price-summary strong{font-size:1.06rem!important}
  body.iw-page-pricing main > section:not(.hero){padding:54px 0}
  body.iw-page-pricing main > section:not(.hero) .section-head{margin-bottom:26px}
  body.iw-page-pricing main > section:not(.hero) .section-head h2{font-size:clamp(1.8rem,8vw,2.45rem)!important}
  body.iw-page-pricing main > section:not(.hero) .card{padding:21px!important}
  body.iw-page-pricing .iw-vat-note{width:calc(100% - 24px);font-size:.84rem}
  body.iw-page-pricing #comparatif-offres .iw-price-table th,
  body.iw-page-pricing #comparatif-offres .iw-price-table td{padding:13px 14px}
  body.iw-page-pricing #cout-cache-site-web .split-panel,
  body.iw-page-pricing #demarrer .cta-card{padding:26px!important;border-radius:22px!important}
  body.iw-page-pricing #faq-prix-site-web-belgique .faq-item summary{padding:15px 16px;font-size:.93rem}
  body.iw-page-pricing #faq-prix-site-web-belgique .faq-item p{padding:0 16px 16px}
  body.iw-page-pricing .iw-v7-children{padding:28px 14px 10px!important}
  body.iw-page-pricing .iw-seo-cluster{padding:14px 0 28px!important}
}
@media(max-width:460px){
  body.iw-page-pricing .iw-price-brand-logo--header{width:148px}
  body.iw-page-pricing .iw-price-summary{grid-template-columns:1fr!important}
}
