/* =================================================================
   IZICOM Vitrine — style.css v7 Clean Redesign
   Palette: #0B8FC7 / #0A7AB0 / #48B4DC / #040D14
   Font: Outfit (body+display) / Cairo (Arabic)
================================================================= */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&family=Cairo:wght@400;600;700;800&display=swap');

:root {
  --c:      #0B8FC7;
  --cd:     #0A7AB0;
  --cl:     #48B4DC;
  --cxl:    #A3D9F0;
  --cbg:    #EBF6FC;
  --cbg2:   #D7EFF8;
  --ink:    #040D14;
  --ink2:   #0A1826;
  --tx:     #1A3044;
  --mt:     #5A7A8E;
  --border: #D9EBF4;
  --sf:     #F4F9FC;
  --wh:     #FFFFFF;
  --r:      10px;
  --rl:     18px;
  --sh:     0 2px 12px rgba(11,143,199,.09);
  --shh:    0 8px 40px rgba(11,143,199,.2);
  --shd:    0 20px 60px rgba(4,13,20,.26);
  --ease:   cubic-bezier(.4,0,.2,1);
  --t:      .2s var(--ease);
  --ff:     'Outfit','Segoe UI',system-ui,sans-serif;
  --ffa:    'Cairo','Outfit',system-ui,sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--ff);color:var(--tx);background:var(--wh);overflow-x:hidden;line-height:1.65;-webkit-font-smoothing:antialiased}
html[lang=ar] body{font-family:var(--ffa)}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
ul{list-style:none}
button{cursor:pointer;border:none;background:none;font:inherit}
.hidden{display:none!important}

/* ── PRELOADER ────────────────────────────────────────────────── */
body.preloading{overflow:hidden}
.preloader{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  gap:1.05rem;
  background:
    radial-gradient(74% 56% at 25% 16%, rgba(163,217,240,.64) 0%, rgba(163,217,240,0) 66%),
    radial-gradient(82% 62% at 86% 84%, rgba(11,143,199,.18) 0%, rgba(11,143,199,0) 72%),
    linear-gradient(165deg, #f4fbff 0%, #e8f5fb 44%, #d7ecf7 100%);
  transition:opacity .38s ease, visibility .38s ease;
}
.preloader.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.preloader-core{
  position:relative;
  width:min(50vw, 274px);
  aspect-ratio:1/1;
  display:grid;
  place-items:center;
  isolation:isolate;
}
.preloader-aura{
  position:absolute;
  inset:10%;
  border-radius:50%;
  background:radial-gradient(circle, rgba(72,180,220,.46) 0%, rgba(72,180,220,.13) 46%, rgba(72,180,220,0) 72%);
  filter:blur(5px);
  animation:iz-aura-pulse 2.25s ease-in-out infinite;
}
.preloader-ring{
  position:absolute;
  border-radius:50%;
}
.preloader-ring-outer{
  inset:2%;
  border:2px solid rgba(11,143,199,.2);
  border-top-color:rgba(11,143,199,.92);
  border-right-color:rgba(10,122,176,.62);
  animation:iz-spin 1.2s linear infinite;
}
.preloader-ring-inner{
  inset:17%;
  border-radius:50%;
  border:2px dashed rgba(10,122,176,.36);
  animation:iz-spin-rev 2s linear infinite;
}
.preloader-orbit{
  position:absolute;
  inset:0;
  border-radius:50%;
}
.preloader-orbit::before{
  content:'';
  position:absolute;
  width:10px;
  height:10px;
  border-radius:50%;
  background:linear-gradient(145deg, #0A7AB0, #48B4DC);
  box-shadow:0 0 0 6px rgba(72,180,220,.16), 0 0 14px rgba(11,143,199,.52);
  top:0;
  left:50%;
  transform:translate(-50%, -4px);
}
.preloader-orbit-a{animation:iz-spin 3s linear infinite}
.preloader-orbit-b{
  inset:14%;
  animation:iz-spin-rev 2.2s linear infinite;
}
.preloader-orbit-b::before{
  width:8px;
  height:8px;
  background:linear-gradient(145deg, #48B4DC, #A3D9F0);
}
.preloader-sheen{
  position:absolute;
  inset:34% 24%;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.72) 48%, rgba(255,255,255,0) 100%);
  filter:blur(.45px);
  animation:iz-sheen 1.8s ease-in-out infinite;
}
.preloader-logo{
  width:min(28vw, 150px);
  height:auto;
  filter:drop-shadow(0 14px 34px rgba(11,143,199,.26));
  z-index:2;
  animation:iz-pulse 1.4s ease-in-out infinite;
}
.preloader-text{
  text-align:center;
  line-height:1.2;
  color:#1a3044;
  letter-spacing:.02em;
}
.preloader-text strong{
  display:block;
  font-size:clamp(1rem, 2.2vw, 1.25rem);
  font-weight:900;
}
.preloader-text span{
  display:block;
  margin-top:.24rem;
  font-size:clamp(.74rem, 1.8vw, .84rem);
  font-weight:600;
  color:#4f7086;
}
html[lang=ar] .preloader-text span{font-family:var(--ffa)}
@keyframes iz-spin{to{transform:rotate(360deg)}}
@keyframes iz-spin-rev{to{transform:rotate(-360deg)}}
@keyframes iz-pulse{0%,100%{transform:scale(.95)}50%{transform:scale(1.03)}}
@keyframes iz-aura-pulse{0%,100%{opacity:.58;transform:scale(.98)}50%{opacity:.94;transform:scale(1.06)}}
@keyframes iz-sheen{0%,100%{opacity:0;transform:translateX(-30%) scaleX(.86)}45%{opacity:.8}50%{opacity:1;transform:translateX(30%) scaleX(1.08)}}
@media (prefers-reduced-motion: reduce) {
  .preloader-aura,
  .preloader-ring,
  .preloader-orbit,
  .preloader-sheen,
  .preloader-logo { animation: none !important; }
}
@media (max-width: 560px) {
  .preloader{gap:.72rem}
  .preloader-core{width:min(66vw, 244px)}
  .preloader-text strong{font-size:1rem}
  .preloader-text span{font-size:.75rem}
}

/* ── ANNOUNCE BAR ─────────────────────────────────────────────── */
.announce-bar{
  background:var(--ink2);color:rgba(255,255,255,.55);
  font-size:.73rem;font-weight:500;letter-spacing:.01em;
  padding:.42rem 1rem;
  display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap;
}
.announce-bar i{color:var(--cl)}
.announce-bar strong{color:#fff;font-weight:700}
.ab-sep{opacity:.2}
.ab-tel{color:var(--cxl);font-weight:700;transition:color var(--t)}
.ab-tel i{color:var(--cl);margin-inline-end:.2rem}
.ab-tel:hover{color:#fff}

/* ── NAVBAR ───────────────────────────────────────────────────── */
.navbar{
  position:sticky;top:0;z-index:200;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(20px) saturate(1.8);
  -webkit-backdrop-filter:blur(20px) saturate(1.8);
  border-bottom:1px solid transparent;
  transition:border-color var(--t),box-shadow var(--t);
}
.navbar.scrolled{border-color:var(--border);box-shadow:0 4px 24px rgba(11,143,199,.08)}
.nav-in{
  max-width:1240px;margin:0 auto;padding:.72rem 1.5rem;
  display:flex;align-items:center;gap:.75rem;
}
.logo{display:flex;align-items:center;flex-shrink:0}
.logo-img{height:34px;width:auto;object-fit:contain}
.logo-txt{font-size:1.45rem;font-weight:900;letter-spacing:-.05em;line-height:1}
.lizi{color:var(--c)}
.lcom{color:var(--ink)}
.nav-links{display:flex;margin:0 auto}
.nav-links a{
  padding:.44rem .9rem;border-radius:8px;
  font-size:.84rem;font-weight:600;color:var(--mt);
  transition:color var(--t),background var(--t);white-space:nowrap;
}
.nav-links a:hover{color:var(--c);background:var(--cbg)}
.nav-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}
.nav-phone{
  display:flex;align-items:center;gap:.35rem;
  font-size:.8rem;font-weight:700;color:var(--tx);
  padding:.38rem .7rem;border-radius:8px;
  transition:color var(--t),background var(--t);
}
.nav-phone i{color:var(--c);font-size:.72rem}
.nav-phone:hover{color:var(--c);background:var(--cbg)}
.btn-primary{
  display:inline-flex;align-items:center;gap:.4rem;
  background:var(--c);color:#fff;
  padding:.5rem 1.15rem;border-radius:50px;
  font-size:.8rem;font-weight:700;
  box-shadow:0 2px 12px rgba(11,143,199,.3);
  transition:background var(--t),transform var(--t),box-shadow var(--t);
}
.btn-primary:hover{background:var(--cd);transform:translateY(-1px);box-shadow:0 4px 20px rgba(11,143,199,.45)}
.lang-toggle{
  border:1.5px solid var(--border);color:var(--mt);
  padding:.38rem .82rem;border-radius:50px;
  font-size:.74rem;font-weight:800;letter-spacing:.06em;
  transition:border-color var(--t),color var(--t),background var(--t);
}
.lang-toggle:hover{border-color:var(--c);color:var(--c);background:var(--cbg)}
.menu-btn{
  display:none;flex-direction:column;justify-content:center;gap:5px;
  width:36px;height:36px;padding:6px;border-radius:8px;
  transition:background var(--t);
}
.menu-btn:hover{background:var(--cbg)}
.menu-btn span{
  display:block;height:2px;border-radius:2px;background:var(--tx);
  transition:transform .25s var(--ease),opacity .2s;
}
.menu-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-btn.open span:nth-child(2){opacity:0}
.menu-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mob-drawer{
  position:fixed;
  top:0;
  bottom:0;
  width:min(88vw,340px);
  background:#fff;
  border-inline-start:1px solid var(--border);
  border-inline-end:1px solid var(--border);
  box-shadow:0 24px 60px rgba(4,13,20,.24);
  padding:.65rem 0 1.2rem;
  display:flex;
  flex-direction:column;
  overflow-y:auto;
  z-index:260;
  visibility:hidden;
  pointer-events:none;
  transition:transform .3s var(--ease),visibility .2s var(--ease),box-shadow .2s var(--ease);
  will-change:transform;
}
.mob-drawer.side-right{
  right:0;
  left:auto;
  transform:translateX(108%);
}
.mob-drawer.side-left{
  left:0;
  right:auto;
  transform:translateX(-108%);
}
.mob-drawer.open{
  visibility:visible;
  pointer-events:auto;
}
.mob-drawer.open.side-right,
.mob-drawer.open.side-left{
  transform:translateX(0);
}
.mob-backdrop{
  position:fixed;
  inset:0;
  background:rgba(4,13,20,.45);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
  z-index:250;
  opacity:0;
  visibility:hidden;
  transition:opacity .25s var(--ease),visibility .25s var(--ease);
}
.mob-backdrop.show{
  opacity:1;
  visibility:visible;
}
body.menu-open{overflow:hidden}
.md-link{
  padding:.72rem 1.5rem;font-size:.9rem;font-weight:600;
  color:var(--tx);text-align:start;
  transition:color var(--t),background var(--t);
}
.md-link:hover{color:var(--c);background:var(--cbg)}
.md-phone{color:var(--c);font-weight:700}
.md-hr{border:none;border-top:1px solid var(--border);margin:.3rem 1.5rem}
.md-lang{
  margin:.4rem 1.2rem 0;padding:.55rem 1rem;
  border:1.5px solid var(--border);border-radius:50px;
  color:var(--mt);font-weight:700;font-size:.8rem;
  display:flex;align-items:center;justify-content:center;gap:.5rem;
  transition:border-color var(--t),color var(--t);
}
.md-lang:hover{border-color:var(--c);color:var(--c)}

html[dir=ltr] .dir-arr.bi-chevron-right::before{content:"\F284"}
html[dir=rtl] .dir-arr.bi-chevron-right::before{content:"\F285"}
html[dir=ltr] .dir-arr.bi-arrow-left::before{content:"\F138"}
html[dir=rtl] .dir-arr.bi-arrow-left::before{content:"\F135"}

/* ── HERO ─────────────────────────────────────────────────────── */
.hero{
  background:var(--ink);
  padding:5.5rem 1.5rem 5rem;
  position:relative;overflow:hidden;
}
/* Background glow behind phone */
.hero-glow{
  position:absolute;
  width:700px;height:700px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(11,143,199,.13) 0%,transparent 68%);
  top:50%;
  inset-inline-end:5%;
  transform:translateY(-50%);
  pointer-events:none;
}
.hero-in{
  position:relative;z-index:2;
  max-width:1240px;margin:0 auto;
  display:flex;align-items:center;gap:4rem;
}

/* Left: Text */
.hero-text{flex:1 1 440px;display:flex;flex-direction:column;gap:1.5rem}
.hero-eyebrow{
  display:flex;align-items:center;gap:.55rem;
  font-size:.76rem;font-weight:600;letter-spacing:.04em;
  color:rgba(255,255,255,.4);
}
.eyebrow-dot{
  width:8px;height:8px;border-radius:50%;
  background:#22c55e;
  box-shadow:0 0 0 0 rgba(34,197,94,.4);
  animation:pulse-dot 2.2s ease-in-out infinite;
  flex-shrink:0;
}
@keyframes pulse-dot{
  0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.4)}
  60%{box-shadow:0 0 0 9px rgba(34,197,94,0)}
}
.hero-text h1{
  font-size:clamp(2.5rem,5.8vw,4.6rem);font-weight:900;
  color:#fff;line-height:1.08;letter-spacing:-.04em;
  padding-bottom:.08em;
}
html[lang=ar] .hero-text h1{letter-spacing:0}
.hero-text h1 em{
  font-style:normal;display:block;
  line-height:1.12;
  padding-bottom:.05em;
  background:linear-gradient(100deg,var(--cxl) 0%,var(--cl) 45%,var(--c) 90%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-sub{
  font-size:clamp(.9rem,1.8vw,1.05rem);
  color:rgba(255,255,255,.55);line-height:1.85;max-width:460px;
}
.hero-btns{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.2rem}
.btn-hero-main{
  display:inline-flex;align-items:center;gap:.55rem;
  background:var(--c);color:#fff;
  padding:.9rem 2rem;border-radius:50px;
  font-weight:700;font-size:.92rem;
  box-shadow:0 4px 30px rgba(11,143,199,.55);
  transition:background var(--t),transform var(--t),box-shadow var(--t);
}
.btn-hero-main:hover{background:var(--cd);transform:translateY(-2px);box-shadow:0 8px 40px rgba(11,143,199,.65)}
.btn-hero-call{
  display:inline-flex;align-items:center;gap:.5rem;
  background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.2);
  color:#fff;padding:.9rem 1.8rem;border-radius:50px;
  font-weight:600;font-size:.92rem;backdrop-filter:blur(8px);
  transition:background var(--t),border-color var(--t);
}
.btn-hero-call:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.48)}
.hero-trust{display:flex;gap:.6rem;flex-wrap:wrap}
.ht-chip{
  display:flex;align-items:center;gap:.38rem;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:50px;padding:.3rem .85rem;
  font-size:.73rem;font-weight:600;color:rgba(255,255,255,.5);
}
.ht-chip i{color:var(--cl);font-size:.76rem}

/* Right: Phone visual */
.hero-visual{
  flex:0 0 auto;
  position:relative;
  width:380px;height:520px;
  display:flex;align-items:center;justify-content:center;
}
.phone-wrap{
  position:relative;
  animation:float 6s ease-in-out infinite;
}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
.phone-frame{
  width:210px;height:420px;border-radius:46px;
  background:linear-gradient(160deg,#1c2e46 0%,#0e1d30 100%);
  border:2px solid rgba(255,255,255,.1);
  position:relative;overflow:hidden;
  box-shadow:
    0 0 0 5px rgba(11,143,199,.07),
    0 0 70px rgba(11,143,199,.25),
    0 50px 90px rgba(0,0,0,.65),
    inset 0 1px 0 rgba(255,255,255,.07);
}
.phone-notch{
  position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:86px;height:22px;
  background:var(--ink);border-radius:0 0 16px 16px;z-index:3;
}
.phone-screen{
  position:absolute;top:10px;left:8px;right:8px;bottom:8px;
  border-radius:38px;
  background:linear-gradient(180deg,#071a2e 0%,#040d1e 100%);
  display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:1rem;padding:2rem .85rem 1.5rem;
  overflow:hidden;
}
.ps-status{
  display:flex;justify-content:space-between;align-items:center;
  width:100%;padding:0 .3rem;
  font-size:.58rem;font-weight:700;color:rgba(255,255,255,.4);letter-spacing:.02em;
}
.pss-icons{display:flex;gap:.3rem;font-size:.6rem}
.ps-app-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;width:100%}
.pa-icon{
  aspect-ratio:1;border-radius:13px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;color:#fff;
}
.pa-blue{background:linear-gradient(135deg,#0B8FC7,#0A7AB0)}
.pa-green{background:linear-gradient(135deg,#10B981,#059669)}
.pa-purple{background:linear-gradient(135deg,#8B5CF6,#7C3AED)}
.pa-amber{background:linear-gradient(135deg,#F59E0B,#D97706)}
.ps-price-tag{
  width:100%;
  background:rgba(11,143,199,.15);border:1px solid rgba(11,143,199,.3);
  border-radius:12px;padding:.5rem .8rem;text-align:center;
}
.ppt-from{font-size:.54rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.32);display:block}
.ppt-price{font-size:1.05rem;font-weight:900;color:var(--cl);display:block}
.phone-side-btn{
  position:absolute;background:rgba(255,255,255,.1);border-radius:3px;
  inset-inline-end:-2px;
}
.psb1{width:3px;height:38px;top:88px}
.psb2{width:3px;height:56px;top:138px}
.phone-bottom-bar{
  position:absolute;bottom:12px;left:50%;transform:translateX(-50%);
  width:55px;height:4px;border-radius:4px;background:rgba(255,255,255,.18);
}

/* Floating trust badges */
.flt-badge{
  position:absolute;
  background:#fff;border-radius:16px;
  padding:.65rem 1rem;
  box-shadow:0 8px 32px rgba(4,13,20,.28),0 2px 8px rgba(4,13,20,.14);
  display:flex;align-items:center;gap:.55rem;white-space:nowrap;z-index:5;
}
.flt-badge strong{display:block;font-size:.78rem;font-weight:800;color:var(--ink);line-height:1.2}
.flt-badge small{display:block;font-size:.65rem;color:var(--mt);line-height:1.1}
.flt-ico{
  width:34px;height:34px;border-radius:10px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-size:1.05rem;color:#fff;
}
.fi-green{background:linear-gradient(135deg,#10B981,#059669)}
.fi-blue{background:linear-gradient(135deg,var(--c),var(--cd))}
.fb-a{
  top:12%;inset-inline-start:-30%;
  animation:float 5s ease-in-out infinite .8s;
}
.fb-b{
  bottom:18%;inset-inline-end:-28%;
  animation:float 5s ease-in-out infinite 2s;
}

/* ── SERVICES STRIP ───────────────────────────────────────────── */
.svc-strip{background:var(--wh);border-bottom:2px solid var(--border)}
.svc-strip-in{
  max-width:1100px;margin:0 auto;padding:1.6rem 1.5rem;
  display:flex;align-items:center;justify-content:center;flex-wrap:wrap;
}
.svc-item{
  display:flex;align-items:center;gap:.65rem;
  padding:.65rem 1.6rem;
  font-size:.85rem;font-weight:700;color:var(--tx);
  text-decoration:none;
  transition:color var(--t),background var(--t);
  border-radius:var(--r);
}
.svc-item:hover{color:var(--c);background:var(--cbg)}
.svc-item:hover .svc-icon{transform:scale(1.1)}
.svc-icon{
  width:40px;height:40px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.05rem;color:#fff;flex-shrink:0;
  transition:transform var(--t);
}
.si-blue{background:linear-gradient(135deg,#0B8FC7,#0A7AB0)}
.si-green{background:linear-gradient(135deg,#10B981,#059669)}
.si-amber{background:linear-gradient(135deg,#F59E0B,#D97706)}
.si-purple{background:linear-gradient(135deg,#8B5CF6,#7C3AED)}
.si-red{background:linear-gradient(135deg,#EF4444,#DC2626)}
.svc-sep{width:1px;height:30px;background:var(--border);flex-shrink:0}

/* ── STATS BAR ────────────────────────────────────────────────── */
.stats-bar{background:var(--ink2)}
.stats-in{
  max-width:940px;margin:0 auto;padding:2rem 1.5rem;
  display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap;
}
.stat-item{flex:1;min-width:130px;text-align:center;padding:.5rem 1rem}
.stat-item strong{
  display:block;
  font-size:2.25rem;
  font-weight:900;
  line-height:1.02;
  letter-spacing:-.04em;
  color:#fff;
  text-shadow:0 3px 22px rgba(11,143,199,.28);
  min-height:2.35rem;
}
.stat-item strong span{
  display:inline;
  font:inherit;
  color:inherit;
  letter-spacing:inherit;
  text-transform:none;
  margin:0;
}
.stat-item small{
  display:block;
  min-height:1.05rem;
  font-size:.8rem;
  font-weight:800;
  color:var(--cxl);
}
.stat-item > span{
  font-size:.68rem;color:rgba(255,255,255,.35);font-weight:500;
  display:block;
  min-height:1.1rem;
  margin-top:.2rem;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.stat-div{width:1px;height:40px;background:rgba(255,255,255,.08);flex-shrink:0}

/* ── SECTION COMMON ───────────────────────────────────────────── */
.section-wrap{max-width:1100px;margin:0 auto;padding:0 1.5rem}
.section-head{text-align:center;margin-bottom:3rem}
.section-label{
  display:inline-block;background:var(--cbg);color:var(--c);
  border:1px solid var(--cbg2);
  padding:.26rem .95rem;border-radius:50px;
  font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  margin-bottom:.7rem;
}
.section-head h2{
  font-size:clamp(1.8rem,3.5vw,2.7rem);font-weight:800;
  color:var(--ink);line-height:1.15;letter-spacing:-.03em;
}
html[lang=ar] .section-head h2{letter-spacing:0}
.section-head p{color:var(--mt);font-size:.93rem;margin-top:.55rem;line-height:1.75}

/* ── REPAIR SECTION ───────────────────────────────────────────── */
.repair-section{background:var(--sf);padding:5.5rem 0;border-top:1px solid var(--border)}

/* Progress steps */
.progress-steps{display:flex;align-items:center;justify-content:center;margin-bottom:3rem;gap:0}
.ps-step{display:flex;flex-direction:column;align-items:center;gap:.38rem;opacity:.3;transition:opacity var(--t)}
.ps-step.active,.ps-step.done{opacity:1}
.ps-num{
  width:36px;height:36px;border-radius:50%;
  background:var(--border);color:var(--mt);
  font-size:.8rem;font-weight:800;
  display:flex;align-items:center;justify-content:center;
  border:2px solid var(--border);
  transition:background var(--t),color var(--t),border-color var(--t),font-size var(--t);
}
.ps-step.active .ps-num{background:var(--c);color:#fff;border-color:var(--c)}
.ps-step.done .ps-num{background:var(--c);color:#fff;border-color:var(--c);font-size:0}
.ps-step.done .ps-num::after{content:'\2713';font-size:.82rem}
.ps-step span{font-size:.68rem;font-weight:700;color:var(--mt);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.ps-step.active span{color:var(--c)}
.ps-line{flex:1;height:2px;background:var(--border);min-width:20px;max-width:80px;margin:0 .5rem;margin-bottom:1.5rem;transition:background var(--t)}
.ps-line.done{background:var(--c)}

.est-step{animation:fadeUp .3s var(--ease) both}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

.step-topbar{display:flex;align-items:center;gap:1rem;margin-bottom:1.3rem;flex-wrap:wrap}
.back-btn{
  display:inline-flex;align-items:center;gap:.4rem;
  background:var(--wh);border:1.5px solid var(--border);color:var(--mt);
  padding:.38rem .9rem;border-radius:50px;font-size:.78rem;font-weight:600;
  transition:color var(--t),border-color var(--t),background var(--t);
}
.back-btn:hover{color:var(--c);border-color:var(--c);background:var(--cbg)}
.step-hint{font-size:.88rem;font-weight:700;color:var(--tx);margin-bottom:1.4rem}
.step-context{font-size:.83rem;color:var(--mt);font-weight:500;margin:0}

.ux-est-controls{
  position:sticky;
  bottom:14px;
  z-index:25;
  margin-top:1rem;
  display:flex;
  gap:.55rem;
  justify-content:center;
  pointer-events:none;
}
.ux-est-controls.hidden{display:none}
.ux-est-controls .ux-btn{
  pointer-events:auto;
  border:1.5px solid var(--cbg2);
  background:rgba(255,255,255,.94);
  color:var(--ink);
  border-radius:999px;
  padding:.52rem .85rem;
  font-size:.78rem;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  gap:.32rem;
  box-shadow:0 8px 20px rgba(16,41,74,.12);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:transform var(--t),border-color var(--t),background var(--t),color var(--t);
}
.ux-est-controls .ux-btn i{font-size:1.05rem;line-height:1}
.ux-est-controls .ux-btn:hover{transform:translateY(-1px);border-color:var(--c);color:var(--c);background:#fff}
.ux-est-controls .ux-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}

/* Brand pill breadcrumb */
.brand-pill{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--cbg);border:1.5px solid var(--cbg2);
  border-radius:50px;padding:.28rem .8rem .28rem .45rem;
}
.brand-pill .bp-logo{
  width:24px;height:24px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.brand-pill .bp-logo img{width:16px;height:16px;object-fit:contain}
.brand-pill .bp-name{font-size:.78rem;font-weight:700;color:var(--c)}

/* ── BRAND ROW ────────────────────────────────────────────────── */
.brand-row{
  display:flex;flex-wrap:wrap;gap:.85rem;
  justify-content:center;padding-bottom:.5rem;
}
.brand-row-feat{
  display:flex;justify-content:center;gap:1.5rem;
  padding-bottom:.6rem;
}
.brand-row-sep{
  height:1px;background:var(--border);
  margin:.7rem 0 .9rem;
  position:relative;
}
.brand-row-sep::before{
  content:'autres marques';
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  background:var(--sf);
  padding:0 .75rem;
  font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mt);
}
html[lang=ar] .brand-row-sep::before{content:'ماركات أخرى'}
.brand-card{
  flex:0 0 auto;width:108px;
  background:var(--wh);border:1.5px solid var(--border);border-radius:var(--r);
  padding:1.3rem .75rem 1rem;
  cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.55rem;
  position:relative;overflow:hidden;
  transition:border-color var(--t),box-shadow var(--t),transform var(--t);
}
.brand-card.featured{
  border-color:var(--cbg2);
  background:linear-gradient(160deg,#fff 0%,var(--cbg) 100%);
  box-shadow:0 4px 18px rgba(11,143,199,.1);
  width:130px;
}
.brand-card.featured .bc-img{width:70px;height:70px;border-radius:18px}
.brand-card.featured .bc-img img{width:46px;height:46px}
.brand-card.featured .bc-name{font-size:.82rem;color:var(--c);font-weight:800}
.brand-badge{
  position:absolute;top:.42rem;inset-inline-end:.42rem;
  background:linear-gradient(135deg,var(--c),var(--cd));
  color:#fff;font-size:.55rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  padding:.1rem .38rem;border-radius:50px;
}
.brand-card:hover{border-color:var(--cl);box-shadow:var(--shh);transform:translateY(-3px)}
.brand-card.active{border-color:var(--c);box-shadow:0 0 0 3px rgba(11,143,199,.14),var(--shh)}
.brand-card.active::after{
  content:'';position:absolute;bottom:0;left:0;right:0;
  height:3px;background:var(--c);
}
.bc-img{width:58px;height:58px;border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.bc-img img{width:38px;height:38px;object-fit:contain}
.bc-init{font-size:1rem;font-weight:900;color:#fff;letter-spacing:-.02em}
.bc-name{font-size:.73rem;font-weight:700;color:var(--tx);text-align:center;line-height:1.2}

/* ── MODEL GRID ───────────────────────────────────────────────── */
.model-grid{display:flex;flex-direction:column;gap:2rem}
.model-group-title{
  display:flex;align-items:center;gap:.6rem;
  margin-bottom:1rem;padding-bottom:.5rem;
  border-bottom:1.5px solid var(--border);
}
.model-group-title span:first-child{font-size:.78rem;font-weight:800;color:var(--tx);text-transform:uppercase;letter-spacing:.08em}
.mgc{background:var(--cbg);color:var(--c);font-size:.66rem;font-weight:800;padding:.1rem .45rem;border-radius:50px;border:1px solid var(--cbg2)}
.model-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:.85rem}
.model-card{
  background:var(--wh);border:1.5px solid var(--border);border-radius:var(--r);
  cursor:pointer;overflow:hidden;display:flex;flex-direction:column;position:relative;
  transition:border-color var(--t),box-shadow var(--t),transform var(--t);
}
.model-card:hover{border-color:var(--cl);box-shadow:var(--shh);transform:translateY(-3px)}
.model-card.active{border-color:var(--c);box-shadow:0 0 0 3px rgba(11,143,199,.14)}
.model-featured{border-color:rgba(11,143,199,.38)!important;background:linear-gradient(160deg,#fff 0%,#eef8fd 100%)!important}
.model-new-badge{
  position:absolute;top:.5rem;inset-inline-end:.5rem;
  background:var(--c);color:#fff;font-size:.6rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  padding:.12rem .46rem;border-radius:50px;z-index:3;
  box-shadow:0 2px 8px rgba(11,143,199,.35);
}
.mc-photo{height:148px;background:linear-gradient(160deg,#f0f8fc,#e3f2f9);display:flex;align-items:center;justify-content:center;overflow:hidden}
.mc-photo img{height:128px;width:auto;object-fit:contain;transition:transform .3s var(--ease)}
.model-card:hover .mc-photo img{transform:scale(1.08)}
.mc-fb{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.18rem;padding:.5rem .3rem}
.mc-fb-brand{font-size:.54rem;font-weight:900;letter-spacing:.14em;color:rgba(255,255,255,.42);text-transform:uppercase}
.mc-fb-main{font-size:1.28rem;font-weight:900;color:#fff;line-height:1.05;letter-spacing:-.03em;text-align:center}
.mc-fb-sub{font-size:.62rem;font-weight:700;color:rgba(255,255,255,.68);text-align:center;line-height:1.2}
.mc-name{padding:.5rem .6rem;font-size:.73rem;font-weight:700;color:var(--tx);text-align:center;line-height:1.3;border-top:1px solid var(--border);background:var(--wh)}

/* ── SERVICE GRID ─────────────────────────────────────────────── */
.service-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(156px,1fr));gap:.9rem}
.service-card{
  background:var(--wh);border:1.5px solid var(--border);border-radius:var(--r);
  padding:1.7rem 1.1rem 1.3rem;
  cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center;
  transition:border-color var(--t),box-shadow var(--t),transform var(--t),background var(--t);
}
.service-card:hover{border-color:var(--cl);box-shadow:var(--shh);background:var(--cbg);transform:translateY(-3px)}
.service-card.active{border-color:var(--c);background:var(--cbg);box-shadow:0 0 0 3px rgba(11,143,199,.14)}
.sc-icon{
  width:52px;height:52px;border-radius:14px;background:var(--cbg);
  display:flex;align-items:center;justify-content:center;
  font-size:1.3rem;color:var(--c);
  transition:background var(--t),color var(--t),transform var(--t);
}
.service-card:hover .sc-icon,.service-card.active .sc-icon{background:var(--c);color:#fff;transform:scale(1.08)}
.sc-name{font-size:.82rem;font-weight:700;color:var(--tx);line-height:1.35}

/* ── PRICE CARD ───────────────────────────────────────────────── */
#price-card{
  background:var(--wh);border:1.5px solid var(--border);
  border-radius:var(--rl);padding:3rem 2.5rem;
  max-width:440px;margin:0 auto;text-align:center;
  box-shadow:var(--shd);position:relative;overflow:hidden;
}
#price-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--cl),var(--c));
}
.pc-label{
  display:inline-block;background:var(--cbg);color:var(--c);
  border:1px solid var(--cbg2);
  padding:.28rem 1rem;border-radius:50px;
  font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem;
}
.pc-device{font-size:.92rem;font-weight:700;color:var(--tx);margin-bottom:.25rem}
.pc-service{font-size:.8rem;color:var(--mt);margin-bottom:.8rem}
.pc-price{
  font-size:clamp(2.8rem,7vw,4rem);font-weight:900;
  color:var(--c);letter-spacing:-.05em;line-height:1;margin:.5rem 0;
}
.pc-dur{
  display:inline-flex;align-items:center;gap:.38rem;
  background:var(--sf);border:1px solid var(--border);color:var(--mt);
  padding:.28rem .85rem;border-radius:50px;font-size:.76rem;font-weight:600;margin:.5rem 0 .9rem;
}
.pc-note{font-size:.76rem;color:rgba(90,122,142,.55);margin-bottom:.5rem;line-height:1.75}
.pc-notfound{font-size:.85rem;color:var(--mt);line-height:1.75;margin:.5rem 0 1.3rem}
.pc-cta{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--c);color:#fff;
  padding:.92rem 2.4rem;border-radius:50px;font-weight:700;font-size:.9rem;
  box-shadow:0 4px 24px rgba(11,143,199,.38);
  transition:background var(--t),transform var(--t),box-shadow var(--t);
}
.pc-cta:hover{background:var(--cd);transform:translateY(-2px);box-shadow:0 8px 32px rgba(11,143,199,.52)}

/* ── SKELETON ─────────────────────────────────────────────────── */
.skel{
  background:linear-gradient(90deg,#edf5f9 25%,#e0eef5 37%,#edf5f9 63%);
  background-size:400% 100%;
  animation:shimmer 1.3s ease-in-out infinite;
  border-radius:var(--r);
}
@keyframes shimmer{0%{background-position:100% 50%}100%{background-position:0 50%}}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── WHY SECTION ──────────────────────────────────────────────── */
.why-section{background:var(--wh);padding:5.5rem 0;border-top:1px solid var(--border)}
.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.25rem}
.why-card{
  background:var(--sf);border:1.5px solid var(--border);border-radius:var(--rl);
  padding:2.2rem 1.75rem;text-align:center;
  transition:box-shadow var(--t),transform var(--t),border-color var(--t);
}
.why-card:hover{box-shadow:var(--shh);transform:translateY(-5px);border-color:var(--cl)}
.why-icon{
  width:62px;height:62px;border-radius:18px;background:var(--cbg);
  display:flex;align-items:center;justify-content:center;
  font-size:1.5rem;color:var(--c);margin:0 auto 1.2rem;
  transition:background var(--t),color var(--t),transform var(--t);
}
.why-card:hover .why-icon{background:var(--c);color:#fff;transform:scale(1.08) rotate(-3deg)}
.why-card h3{font-size:.98rem;font-weight:800;color:var(--ink);margin-bottom:.5rem;letter-spacing:-.01em}
.why-card p{font-size:.83rem;color:var(--mt);line-height:1.8}

/* ── CTA BANNER ───────────────────────────────────────────────── */
.cta-banner{
  background:var(--ink2);padding:4.5rem 1.5rem;
  position:relative;overflow:hidden;
}
.cta-banner::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 80% at 75% 50%,rgba(11,143,199,.16) 0%,transparent 70%);
  pointer-events:none;
}
html[dir=rtl] .cta-banner::before{
  background:radial-gradient(ellipse 60% 80% at 25% 50%,rgba(11,143,199,.16) 0%,transparent 70%);
}
.cta-in{
  max-width:960px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  gap:2rem;flex-wrap:wrap;position:relative;
}
.cta-in h2{font-size:clamp(1.5rem,3vw,2.1rem);font-weight:800;color:#fff;letter-spacing:-.03em;margin-bottom:.4rem}
html[lang=ar] .cta-in h2{letter-spacing:0}
.cta-in p{font-size:.88rem;color:rgba(255,255,255,.5);line-height:1.75}
.cta-actions{display:flex;gap:.75rem;flex-wrap:wrap;flex-shrink:0}
.btn-cta-primary{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--c);color:#fff;
  padding:.9rem 1.9rem;border-radius:50px;font-weight:700;font-size:.9rem;
  box-shadow:0 4px 24px rgba(11,143,199,.42);
  transition:background var(--t),transform var(--t),box-shadow var(--t);
}
.btn-cta-primary:hover{background:var(--cd);transform:translateY(-2px);box-shadow:0 8px 36px rgba(11,143,199,.55)}
.btn-cta-ghost{
  display:inline-flex;align-items:center;
  background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.18);
  color:#fff;padding:.9rem 1.6rem;border-radius:50px;font-weight:600;font-size:.9rem;
  transition:background var(--t),border-color var(--t);
}
.btn-cta-ghost:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.42)}

/* ── FOOTER ───────────────────────────────────────────────────── */
.footer{background:var(--ink);padding:4.5rem 1.5rem 0}
.footer-in{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:2fr 1fr 1.2fr;
  gap:3rem;padding-bottom:3rem;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.footer-logo{height:42px;object-fit:contain;filter:brightness(0) invert(1);margin-bottom:1rem}
.footer-logo-txt{font-size:1.55rem;font-weight:900;letter-spacing:-.04em;margin-bottom:1rem}
.footer-brand p{font-size:.82rem;color:rgba(255,255,255,.4);line-height:1.85;margin-bottom:1.3rem}
.footer-social{display:flex;gap:.5rem}
.footer-social a{
  width:34px;height:34px;border-radius:10px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;
  font-size:.85rem;color:rgba(255,255,255,.4);
  transition:background var(--t),color var(--t),border-color var(--t);
}
.footer-social a:hover{background:var(--c);color:#fff;border-color:var(--c)}
.footer-col h4{font-size:.7rem;font-weight:800;color:rgba(255,255,255,.8);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1.1rem}
.footer-col ul li{margin-bottom:.5rem}
.footer-col ul li a{font-size:.8rem;color:rgba(255,255,255,.38);transition:color var(--t)}
.footer-col ul li a:hover{color:var(--cxl)}
.footer-contact li{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:.62rem}
.footer-contact i{color:var(--cl);font-size:.8rem;margin-top:.22rem;flex-shrink:0}
.footer-contact a,.footer-contact span{font-size:.8rem;color:rgba(255,255,255,.4)}
.footer-contact a:hover{color:var(--cxl)}
.footer-bot{max-width:1100px;margin:0 auto;padding:1.1rem 0;font-size:.72rem;color:rgba(255,255,255,.18);text-align:center}

/* ── RESPONSIVE ───────────────────────────────────────────────── */
@media(max-width:960px){
  .nav-links,.nav-phone{display:none}
  .btn-primary{display:none}
  .menu-btn{display:flex}
  .nav-in{position:relative;padding:.62rem 1rem;justify-content:center;min-height:56px}
  .logo{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    margin:0;
  }
  .nav-actions{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    margin:0;
  }
  html[dir=rtl] .logo{left:1rem}
  html[dir=rtl] .nav-actions{right:1rem}
  html[dir=ltr] .logo{right:1rem}
  html[dir=ltr] .nav-actions{left:1rem}
  .footer-in{grid-template-columns:1fr 1fr}
  .hero{padding:4.5rem 1.5rem 4rem}
}
@media(min-width:961px){
  .mob-backdrop{display:none!important}
  .mob-drawer{
    position:static;
    transform:none!important;
    visibility:visible;
    pointer-events:auto;
    width:auto;
    border:0;
    box-shadow:none;
    padding:0;
    overflow:visible;
    display:none;
  }
}
@media(max-width:760px){
  .announce-bar{font-size:.68rem;gap:.45rem;padding:.36rem .75rem}
  .announce-bar .ab-sep{display:none}
  .announce-bar span:nth-of-type(2){display:none}

  .nav-in{gap:.45rem}
  .mob-drawer{padding-top:1rem}
  .logo-txt{font-size:1.35rem}
  .lang-toggle{padding:.3rem .62rem;font-size:.68rem}

  .ux-est-controls{
    bottom:10px;
    justify-content:space-between;
  }
  .ux-est-controls .ux-btn{
    flex:1;
    justify-content:center;
    padding:.62rem .7rem;
    font-size:.74rem;
  }
  .menu-btn{width:34px;height:34px}

  .hero-in{flex-direction:column;gap:3rem;align-items:center;text-align:center}
  .hero{padding:3.1rem 1rem 2.8rem}
  .hero-text{gap:1rem;max-width:560px}
  .hero-text h1{font-size:clamp(2rem,10vw,3rem);line-height:1.08;padding-bottom:.08em}
  .hero-sub{font-size:.95rem;line-height:1.65}
  .hero-eyebrow{justify-content:center}
  .hero-sub{margin:0 auto}
  .hero-btns{justify-content:center}
  .btn-hero-main,.btn-hero-call{width:100%;max-width:320px;justify-content:center;padding:.8rem 1rem}
  .hero-trust{justify-content:center}
  .hero-visual{width:100%;justify-content:center;height:auto;min-height:300px}
  .phone-frame{width:182px;height:364px;border-radius:40px}
  .phone-screen{padding:1.5rem .75rem 1.2rem}
  .fb-a,.fb-b{display:none}

  .svc-strip{border-bottom-width:1px}
  .svc-strip-in{
    overflow-x:auto;
    flex-wrap:nowrap;
    justify-content:flex-start;
    padding:1rem .75rem;
    gap:.35rem;
    scroll-snap-type:x proximity;
  }
  .svc-item{flex-shrink:0;scroll-snap-align:start;padding:.52rem .9rem;font-size:.76rem;gap:.45rem}
  .svc-icon{width:32px;height:32px;border-radius:10px;font-size:.88rem}
  .svc-sep{display:none}

  .stats-in{gap:0}
  .stats-bar{padding:.3rem 0}
  .stat-div{display:none}
  .stat-item{min-width:50%;padding:.7rem .45rem}
  .stat-item strong{font-size:1.65rem}
  .stat-item small{font-size:.72rem}
  .stat-item span{font-size:.62rem}

  .repair-section,.why-section{padding:3.5rem 0}

  .progress-steps{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.55rem .8rem;
    justify-items:start;
    align-items:center;
    overflow:visible;
    margin-bottom:1.8rem;
  }
  .ps-line{display:none}
  .ps-step{opacity:1;flex-direction:row;gap:.45rem;align-items:center}
  .ps-step span{font-size:.64rem;letter-spacing:.04em}
  .ps-num{width:30px;height:30px;font-size:.72rem}

  .step-topbar{gap:.55rem;margin-bottom:1rem}
  .back-btn{font-size:.72rem;padding:.34rem .72rem}
  .step-hint{font-size:.82rem;margin-bottom:1rem}

  .model-group-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem}
  .mc-photo{height:126px}
  .mc-photo img{height:108px}
  .mc-name{font-size:.7rem}

  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem}
  .service-card{padding:1rem .62rem .85rem}
  .sc-icon{width:42px;height:42px;font-size:1.05rem}
  .sc-name{font-size:.76rem}

  #price-card{max-width:100%;padding:1.7rem 1rem}
  .pc-price{font-size:clamp(2.2rem,11vw,3rem)}
  .pc-cta{width:100%;justify-content:center;padding:.82rem 1rem}

  .cta-in{flex-direction:column;text-align:center}
  .cta-actions{justify-content:center}
  .cta-actions a{width:100%;max-width:320px;justify-content:center}

  .footer{padding:3.2rem 1rem 0}
  .footer-in{gap:1.4rem;padding-bottom:1.7rem}
  .footer-col h4{margin-bottom:.8rem}
  .footer-col ul li{margin-bottom:.35rem}
}
@media(max-width:560px){
  .hero{padding:3.5rem 1rem 3.5rem}
  .hero-visual{min-height:250px}
  .phone-frame{width:160px;height:320px;border-radius:34px}
  .phone-screen{top:8px;left:6px;right:6px;bottom:6px;border-radius:30px;padding:1.25rem .6rem 1rem}
  .phone-notch{width:66px;height:18px}
  .model-group-grid{grid-template-columns:repeat(2,1fr)}
  .service-grid{grid-template-columns:1fr 1fr}
  .footer-in{grid-template-columns:1fr;gap:2rem}
  #price-card{padding:2rem 1.2rem}
}
@media(max-width:380px){
  .announce-bar{font-size:.63rem;gap:.3rem}
  .hero{padding:2.7rem .8rem 2.3rem}
  .hero-text h1{font-size:clamp(1.85rem,11vw,2.4rem)}
  .hero-sub{font-size:.88rem}
  .btn-hero-main,.btn-hero-call{max-width:none;width:100%}
  .service-grid{grid-template-columns:1fr}
  .model-group-grid{grid-template-columns:1fr}
  .progress-steps{grid-template-columns:1fr}
  .ps-step{width:100%}
  .hero-btns{flex-direction:column;align-items:center}
}
