:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#162e3d;background:#f5f7f6;font-synthesis:none;line-height:1.5;--accent:#126455;--muted:#536773;--line:#dce4e1}
*{box-sizing:border-box}body{margin:0}a{color:inherit}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}[hidden]{display:none!important}:focus-visible{outline:3px solid #bd671b;outline-offset:4px}.skip-link{position:absolute;left:16px;top:-100px;z-index:2;padding:12px;background:white}.skip-link:focus{top:12px}
.site-header,.site-footer{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 32px}.site-header{border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand strong{font-size:24px;letter-spacing:3px;line-height:1.1}.brand small{display:block;font-size:10px;letter-spacing:2.8px;font-weight:650}.brand-mark{display:grid;place-items:center;position:relative;background:var(--accent);color:white;width:45px;height:45px;font-size:30px;font-weight:750;border-radius:4px}.brand-mark span{position:absolute;background:#e6b978;height:4px;width:15px;right:-4px;bottom:7px}.back-link{font-size:14px;text-underline-offset:4px;color:var(--muted)}
main{max-width:1136px;margin:auto;padding:58px 0 56px}.intro{max-width:820px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.8px;color:var(--accent);margin:0 0 13px}h1{font-size:clamp(2.1rem,4.7vw,3.6rem);font-weight:650;line-height:1.12;letter-spacing:-1.8px;margin:0 0 22px}h1 span{color:var(--accent)}.lead{color:var(--muted);font-size:17px;max-width:700px;margin:0}.trust-note{color:var(--accent);font-size:13px;margin:23px 0 35px}.trust-note span{padding-right:5px}.trust-note span+span{padding-left:12px}
.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px;box-shadow:0 12px 35px #193f3010}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:20px}.panel-heading .eyebrow{margin-bottom:5px}h2{font-size:22px;letter-spacing:-.5px;line-height:1.3;margin:0}.step-note{font-size:12px;background:#eff6f3;padding:7px 12px;border-radius:20px;color:var(--accent)}.muted{color:var(--muted);font-size:13px}.filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:25px}label{display:block;font-size:13px;font-weight:650;margin-bottom:9px}select{width:100%;min-width:0;min-height:48px;border:1px solid #b9c9c2;border-radius:6px;padding:10px 12px;background:white;color:#162e3d}select:disabled{color:#61726d;background:#f0f3f2;border-color:#e0e6e3}.form-footer{border-top:1px solid var(--line);margin-top:28px;padding-top:23px;display:flex;justify-content:space-between;align-items:center;gap:15px}button{border:1px solid transparent;border-radius:6px;background:var(--accent);color:#fff;padding:13px 22px;font-weight:650;min-height:48px}button:not(:disabled):hover{background:#0c4e42}button span{padding-left:20px}.secondary{background:#fff;color:var(--accent);border-color:var(--accent)}.secondary:hover{color:#fff}.feedback{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:18px 0;color:var(--muted);font-size:14px}.feedback p:empty{display:none}.feedback p{margin:0}.error{color:#9b3020}.loading::before{content:"";display:inline-block;vertical-align:-2px;width:14px;height:14px;border:2px solid #bfd4cd;border-top-color:var(--accent);border-radius:50%;margin-right:9px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.result{margin-top:24px;border-top:4px solid var(--accent)}.result .eyebrow{margin-bottom:10px}.result h2{overflow-wrap:anywhere}.result-context{color:var(--muted);margin:8px 0 24px}.prices{display:grid;grid-template-columns:1fr 1fr;gap:20px}.price-block{background:#f2f7f4;padding:20px;border-radius:8px}.price-label{font-size:12px;color:var(--muted);margin:0 0 6px}.price-value{font-size:clamp(1.4rem,3.3vw,2.2rem);font-weight:700;letter-spacing:-.7px;margin:0;color:var(--accent);overflow-wrap:anywhere}.price-unit{font-size:13px;font-weight:500;letter-spacing:0;white-space:nowrap}.provenance{border-top:1px solid var(--line);padding-top:18px;margin:24px 0 0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.disclaimer{display:flex;gap:16px;margin-top:35px;padding:22px 0;border-top:1px solid var(--line)}.disclaimer h2{font-size:14px;letter-spacing:0}.disclaimer p{font-size:13px;color:var(--muted);margin:7px 0 0;max-width:900px}.info-icon{flex:none;display:grid;place-items:center;border:1px solid #8fa99c;width:23px;height:23px;border-radius:50%;color:var(--accent);font-family:serif;font-weight:700}.site-footer{border-top:1px solid var(--line);color:var(--muted);font-size:12px}.site-footer span span{padding:0 10px;color:#8ba297}
@media(max-width:1200px){main{margin:0 32px}}@media(max-width:800px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header,.site-footer{padding:22px}main{margin:0 22px;padding-top:38px}.panel{padding:23px}.site-footer{align-items:flex-start;flex-direction:column;gap:7px}}
@media(max-width:520px){.filters{grid-template-columns:1fr;gap:18px}.site-header{padding:18px}.brand strong{font-size:20px}.brand-mark{width:38px;height:38px;font-size:26px}.back-link{font-size:12px}main{margin:0 16px;padding-top:32px}h1{letter-spacing:-1px}.lead{font-size:15px}.panel{padding:20px 16px}.panel-heading{align-items:flex-start}.step-note{display:none}.form-footer{align-items:stretch;flex-direction:column}.form-footer p{margin:0}.prices{grid-template-columns:1fr}.trust-note{font-size:12px}.site-footer{padding:20px 16px}}
@media(prefers-reduced-motion:reduce){.loading::before{animation:none}}
.form-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:20px}.form-footer>div{min-width:0}.form-footer>button{max-width:100%}
@media(max-width:800px){.form-footer{grid-template-columns:repeat(2,minmax(0,1fr))}.form-footer>button{grid-column:1/-1}}
@media(max-width:520px){.form-footer{grid-template-columns:minmax(0,1fr)}}


/* IMMODATA_ZONING_STYLE_V1 */

/* Identite NETAL : bleu petrole et orange */
:root {
  --accent: #126575;
  --netal-dark: #101e2b;
  --netal-blue: #126575;
  --netal-orange: #ed853b;
  --muted: #536775;
  --line: #dce6e9;
}

body {
  min-height: 100vh;
  color: #173444;
  background:
    radial-gradient(ellipse at 90% 0%, #dcecef 0%, transparent 38%),
    linear-gradient(180deg, #f4f8f9 0%, #eef4f5 100%);
}

/* En-tete sombre */
.site-header {
  max-width: none;
  padding: 18px max(24px, calc((100vw - 1200px) / 2));
  background: linear-gradient(110deg, #101925, #123947);
  color: #fff;
  border-bottom: 1px solid #315767;
  box-shadow: 0 8px 28px rgb(8 30 41 / .17);
}

.site-header .brand,
.site-header .back-link {
  color: #fff;
}

.site-header .brand-mark {
  background: linear-gradient(135deg, #f3a05b, #db682e);
  border-radius: 11px;
  box-shadow: 0 4px 14px rgb(0 0 0 / .2);
}

.site-header .back-link {
  padding: 10px 15px;
  border: 1px solid rgb(255 255 255 / .24);
  border-radius: 10px;
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease;
}

.site-header .back-link:hover {
  background: rgb(255 255 255 / .12);
  border-color: #f5a65d;
}

/* Contenu */
main {
  width: min(calc(100% - 2.5rem), 1136px);
  padding-block: clamp(28px, 5vw, 58px);
}

/* Bandeau d'introduction */
.intro {
  position: relative;
  max-width: none;
  overflow: hidden;
  margin-bottom: 26px;
  padding: clamp(28px, 5vw, 52px);
  color: #fff;
  border: 1px solid #346674;
  border-radius: 24px;
  background:
    radial-gradient(circle at 95% 15%, rgb(56 154 166 / .42), transparent 35%),
    linear-gradient(125deg, #11202d 5%, #104b59 100%);
  box-shadow: 0 18px 46px rgb(17 57 69 / .15);
}

.intro .eyebrow {
  color: #ffb978;
}

.intro h1 {
  color: #fff;
  max-width: 850px;
  letter-spacing: -.035em;
}

.intro h1 span {
  color: #ffb978;
}

.intro .lead {
  color: #dce9ed;
  max-width: 760px;
}

.intro .trust-note {
  color: #c3ece4;
  margin-bottom: 0;
}

/* Panneaux de recherche */
.panel {
  border: 1px solid #d5e3e7;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 34px rgb(17 56 70 / .08);
}

.panel-heading {
  border-bottom-color: #e3ebed;
}

.panel-heading .eyebrow {
  color: #bd632d;
}

.step-note {
  background: #eaf5f6;
  border: 1px solid #cfe4e7;
  color: #145d68;
}

select {
  border-color: #b9cfd4;
  border-radius: 11px;
  background: #fafdfe;
  transition: border-color .2s ease, box-shadow .2s ease;
}

select:not(:disabled):hover {
  border-color: #348697;
}

select:focus-visible {
  outline: 3px solid rgb(237 133 59 / .32);
  outline-offset: 2px;
  border-color: #c46c2d;
}

/* Actions */
button:not(.secondary) {
  border-radius: 11px;
  background: linear-gradient(135deg, #ec914c, #d76830);
  box-shadow: 0 5px 15px rgb(196 91 41 / .18);
}

button:not(:disabled):not(.secondary):hover {
  background: linear-gradient(135deg, #f4a159, #c85a25);
  box-shadow: 0 8px 22px rgb(196 91 41 / .25);
}

.secondary {
  border-radius: 11px;
  color: #145d6a;
  border-color: #8db6bd;
}

/* Resultats */
.result {
  margin-block: 24px;
  border-top: 4px solid #19818c;
}

.result h2 {
  color: #123c4b;
}

.price-value {
  color: #0d6572;
  font-variant-numeric: tabular-nums;
}

.price-block {
  border-radius: 12px;
}

/* Pied de page */
.site-footer {
  max-width: none;
  padding: 25px max(24px, calc((100vw - 1200px) / 2));
  background: #101e2b;
  border-top: 1px solid #36505e;
  color: #e0e9eb;
}

/* Langue arabe */
html[dir="rtl"] body {
  font-family: Tahoma, "Segoe UI", system-ui, sans-serif;
}

html[dir="rtl"] .intro h1 {
  letter-spacing: 0;
}

html[dir="rtl"] .eyebrow {
  letter-spacing: 0;
}

/* Mobile */
@media (max-width: 780px) {
  .site-header {
    padding: 15px 20px;
    flex-wrap: wrap;
  }

  main {
    width: calc(100% - 1.5rem);
    padding-block: 24px;
  }

  .intro {
    padding: 28px 23px;
    border-radius: 18px;
  }

  .panel {
    border-radius: 17px;
  }

  .site-footer {
    padding: 25px 20px;
    flex-wrap: wrap;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header .back-link,
  select {
    transition: none;
  }
}

/* FIN IMMODATA_ZONING_STYLE_V1 */

/* IMMODATA_LANG_SWITCH_V1 */

.site-header {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.25rem;
  row-gap: .75rem;
}

.immodata-languages {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .3rem;
  margin-inline-start: auto;
  padding: .3rem;
  border: 1px solid rgb(255 255 255 / .22);
  border-radius: 999px;
  background: rgb(255 255 255 / .08);
}

.immodata-languages a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 42px;
  min-height: 36px;
  padding: .4rem .75rem;
  border-radius: 999px;
  color: #dce9ed;
  text-decoration: none;
  font-size: .82rem;
  font-weight: 750;
  transition: background .2s ease, color .2s ease;
}

.immodata-languages a:hover {
  color: #fff;
  background: rgb(255 255 255 / .16);
}

.immodata-languages a[aria-current="page"] {
  color: #fff;
  background: linear-gradient(135deg, #f3a05b, #d76830);
  box-shadow: 0 3px 12px rgb(0 0 0 / .2);
}

.immodata-languages a:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

html[dir="rtl"] .immodata-languages {
  direction: ltr;
}

/* Les montants conservent un ordre de lecture coherent en arabe. */
html[dir="rtl"] .price-value {
  direction: ltr;
  unicode-bidi: isolate;
}

/* Adaptation du bandeau aux petits ecrans */
@media (max-width: 600px) {
  .site-header {
    gap: .85rem;
  }

  .immodata-languages {
    order: 3;
    flex: 1 1 100%;
    margin-inline-start: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .immodata-languages a {
    transition: none;
  }
}

/* FIN IMMODATA_LANG_SWITCH_V1 */

/* IMMODATA_HERO_COMPACT_V1 */

/* Bandeau plus compact, sans changer l'identite visuelle */
.intro {
  padding: clamp(24px, 3vw, 38px);
  margin-bottom: 22px;
}

.intro .eyebrow {
  margin-top: 0;
  margin-bottom: 12px;
}

.intro h1 {
  font-size: clamp(2.1rem, 4.1vw, 3.65rem);
  line-height: 1.12;
  margin: 0 0 15px;
}

.intro .lead {
  margin: 0 0 16px;
  line-height: 1.55;
}

.intro .trust-note {
  margin: 0;
}

@media (max-width: 780px) {
  .intro {
    padding: 26px 24px;
  }

  .intro h1 {
    font-size: clamp(2rem, 8vw, 2.9rem);
  }
}

/* FIN IMMODATA_HERO_COMPACT_V1 */
