:root{--dark:#061b20;--dark2:#0b3d3b;--teal:#0f766e;--mint:#5eead4;--ink:#10212c;--muted:#60717e;--line:#dce9e7;--bg:#f5f9f8;--white:#fff}*{box-sizing:border-box}html{font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg);scroll-behavior:smooth}body{margin:0;background:var(--bg)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.public-loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:#061b20;transition:.3s}.public-loader.hide{opacity:0;visibility:hidden}.public-spinner{width:55px;height:55px;border:5px solid rgba(255,255,255,.2);border-top-color:var(--mint);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.public-nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(4vw,20px);background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:90;backdrop-filter:blur(14px);box-shadow:0 7px 26px rgba(15,23,42,.04)}.public-left{display:flex;align-items:center;gap:14px;min-width:0}.public-brand{display:flex;align-items:center;gap:10px;min-width:0}.public-brand img{width:46px;height:46px;object-fit:cover;border-radius:13px;background:#fff}.public-brand b{display:block;font-size:20px;white-space:nowrap}.public-brand small{display:block;color:var(--teal);text-transform:uppercase;font-size:9px;font-weight:900;letter-spacing:1px;white-space:nowrap}.language-switch{position:relative}.language-switch button{height:38px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:#f7fbfa;color:#0f766e;font-size:11px;font-weight:900;cursor:pointer}.language-switch>div{display:none;position:absolute;top:45px;left:0;width:70px;padding:5px;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 15px 40px rgba(15,23,42,.15)}.language-switch>div.open{display:grid}.language-switch a{padding:8px;border-radius:8px;font-size:11px;font-weight:900;text-align:center}.language-switch a:hover{background:#ecfdf5}.public-nav nav{display:flex;align-items:center;gap:5px}.public-nav nav a{padding:10px 11px;border-radius:10px;font-size:12px;font-weight:800;color:#475569;white-space:nowrap}.public-nav nav a.active,.public-nav nav a:hover{background:#e9f7f5;color:var(--teal)}.public-nav .public-login{background:#071f24;color:#fff}.cart-nav{position:relative}.cart-nav span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px}.public-burger{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:#f0fdfa;color:#0f766e;font-size:22px;cursor:pointer}
.hero{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--dark),#0a3334);color:#fff}.medical-hero{min-height:640px}.hero-photo{position:absolute;inset:0 0 0 50%;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#061b20 0%,rgba(6,27,32,.96) 40%,rgba(6,27,32,.35) 72%,rgba(6,27,32,.12) 100%)}.hero-grid{position:relative;z-index:2;min-height:640px;max-width:1280px;margin:auto;padding:75px 25px;display:grid;grid-template-columns:1.18fr .82fr;gap:70px;align-items:center}.eyebrow{display:inline-block;color:var(--mint);font-size:11px;text-transform:uppercase;letter-spacing:2px;font-weight:900}.eyebrow.dark{color:var(--teal)}.hero h1,.page-hero h1{font-size:54px;line-height:1.06;margin:18px 0 20px;max-width:800px}.hero p{color:#c9dcdf;line-height:1.8;font-size:18px;max-width:720px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.public-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:14px;border:1px solid rgba(255,255,255,.25);font-weight:900}.public-btn.primary{background:var(--mint);color:#052d2b;border:0}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:38px;max-width:650px}.hero-stats div{padding:16px;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);backdrop-filter:blur(8px)}.hero-stats b{display:block;color:var(--mint);font-size:23px}.hero-stats span{font-size:11px;color:#aac2c4}.hero-card{padding:28px;border-radius:28px;background:rgba(255,255,255,.96);color:var(--ink);box-shadow:0 35px 90px rgba(0,0,0,.25)}.hero-card img{width:82px;height:82px;border-radius:22px;object-fit:cover}.hero-card h2{font-size:25px}.hero-card p{color:var(--muted);font-size:14px}.rate-public{padding:16px;border-radius:15px;background:#e8f8f5;color:var(--teal)}
.public-section{max-width:1280px;margin:auto;padding:78px 25px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}.section-head h2{font-size:38px;margin:8px 0}.section-head a{font-weight:900;color:var(--teal)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.public-product{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;padding:14px;box-shadow:0 14px 38px rgba(15,23,42,.045);transition:.2s}.public-product:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(15,23,42,.1)}.product-image{height:210px;position:relative;border-radius:17px;background:#f4f8f8;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;padding:12px}.availability{position:absolute;right:10px;top:10px;padding:6px 9px;border-radius:999px;font-size:9px;font-weight:900;text-transform:uppercase}.availability.ok{background:#d1fae5;color:#065f46}.availability.no{background:#ffe4e6;color:#9f1239}.public-product h3{margin:13px 0 8px;font-size:18px}.public-product p{font-size:13px;line-height:1.6;color:var(--muted);min-height:42px}.public-product>small{display:block;margin-top:12px;color:var(--teal);font-weight:800}.product-price{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:15px}.product-price b{font-size:21px;color:var(--teal)}.product-price span{font-size:10px;color:var(--muted);text-align:right}.add-cart-btn{width:100%;margin-top:14px;padding:11px;border:0;border-radius:12px;background:#071f24;color:#fff;font-weight:900;cursor:pointer}.add-cart-btn:hover,.add-cart-btn.added{background:#0f766e}.add-cart-btn.disabled{background:#cbd5e1;color:#64748b;cursor:not-allowed}.public-empty{grid-column:1/-1;padding:40px;text-align:center;border:1px dashed #9cb9b6;border-radius:20px;color:var(--muted);background:#fff}
.public-band{position:relative;overflow:hidden;display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:center;background:#061b20;color:#fff;padding:75px max(4vw,25px)}.public-band>div{min-width:0}.public-band h2{font-size:38px}.service-photo{height:480px;border-radius:28px;overflow:hidden;box-shadow:0 25px 70px rgba(0,0,0,.3)}.service-photo img{width:100%;height:100%;object-fit:cover}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0}.service-grid article{border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:20px;background:rgba(255,255,255,.05)}.service-grid b{color:var(--mint)}.service-grid h3{font-size:16px}.service-grid p{color:#b4c7c9;line-height:1.65;font-size:12px}
.page-hero{position:relative;min-height:360px;padding:75px max(4vw,25px);display:flex;align-items:center;overflow:hidden;background:linear-gradient(145deg,#061b20,#0b4a46);color:#fff}.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.25}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,27,32,.95),rgba(6,27,32,.4))}.page-hero>div{position:relative;z-index:2;max-width:850px}.page-hero h1{margin-bottom:10px}.page-hero p{color:#c7d9da;font-size:17px;line-height:1.7}.compact-hero{min-height:270px}.catalogue-filter{display:grid;grid-template-columns:1fr 260px 140px;gap:10px;margin-bottom:28px}.catalogue-filter input,.catalogue-filter select,.catalogue-filter button,.contact-card input,.contact-card select,.contact-card textarea,.cart-checkout input,.cart-checkout select{width:100%;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff;outline:none}.catalogue-filter button{background:var(--teal);color:#fff;font-weight:900}.catalogue-filter input:focus,.catalogue-filter select:focus,.contact-card input:focus,.contact-card select:focus,.contact-card textarea:focus,.cart-checkout input:focus,.cart-checkout select:focus{border-color:#14b8a6;box-shadow:0 0 0 3px rgba(20,184,166,.12)}
.service-catalogue{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-catalogue article{padding:25px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 15px 38px rgba(15,23,42,.04)}.service-catalogue article>span{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#ccfbf1;color:#0f766e;font-weight:900}.service-catalogue h3{font-size:19px}.service-catalogue p{color:var(--muted);line-height:1.7}.about-doctor{display:grid;grid-template-columns:1.15fr .85fr;gap:45px;align-items:center}.about-doctor>img{width:100%;max-height:620px;object-fit:cover;border-radius:30px;box-shadow:0 25px 70px rgba(15,23,42,.16)}.about-doctor h2{font-size:38px}.about-doctor>div>p{font-size:16px;line-height:1.9;color:#475569}.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:25px}.about-values article{padding:18px;border:1px solid var(--line);border-radius:17px;background:#fff}.about-values b{color:#0f766e}.about-values p{font-size:12px!important;line-height:1.6!important;margin-bottom:0}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:25px}.contact-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 16px 42px rgba(15,23,42,.05)}.contact-card label,.cart-checkout label{display:block;margin:13px 0 7px;font-size:12px;font-weight:900}.contact-card textarea{min-height:140px;resize:vertical}.public-form-button{width:100%;margin-top:15px;padding:13px;border:0;border-radius:12px;background:#0f766e;color:#fff;font-weight:900;cursor:pointer}.proforma-button{background:#071f24}.order-button{background:#0f766e}
.cart-layout{display:grid;grid-template-columns:1fr 380px;gap:25px;align-items:start}.cart-items{display:grid;gap:13px}.cart-item{display:grid;grid-template-columns:110px 1fr 140px;gap:16px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:20px;background:#fff}.cart-image{width:110px;height:100px;object-fit:contain;border-radius:14px;background:#f3f8f7}.cart-info h3{margin:4px 0}.cart-info p{margin:4px 0;color:var(--muted)}.cart-code{color:#0f766e;font-weight:900}.cart-prices{display:flex;gap:12px;align-items:center}.cart-prices b{color:#0f766e}.cart-prices span{font-size:11px;color:var(--muted)}.cart-controls{display:grid;gap:7px}.cart-controls label{font-size:10px;font-weight:900;text-transform:uppercase}.cart-qty{width:100%;padding:9px;border:1px solid var(--line);border-radius:10px}.cart-remove{border:0;background:#ffe4e6;color:#9f1239;padding:8px;border-radius:9px;font-weight:900;cursor:pointer}.cart-checkout{position:sticky;top:96px;padding:23px;border-radius:23px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 50px rgba(15,23,42,.08)}.cart-checkout h2{margin-top:0}.cart-total-line{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.cart-total-line b{color:#0f766e}.cart-checkout small{display:block;margin-top:13px;color:var(--muted);line-height:1.55}.floating-cart{position:fixed;right:25px;bottom:25px;z-index:50;display:flex;align-items:center;gap:7px;padding:14px 16px;border-radius:999px;background:#071f24;color:#fff;box-shadow:0 15px 45px rgba(0,0,0,.3)}.floating-cart-count{display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#ef4444;font-size:10px;font-weight:900}
.medical-contact{position:fixed;right:22px;bottom:88px;z-index:100}.medical-contact-button{position:relative;width:58px;height:58px;border:0;border-radius:50%;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;box-shadow:0 14px 40px rgba(15,118,110,.38);cursor:pointer}.medical-cross{font-size:38px;font-weight:300;line-height:1}.online-dot{position:absolute;right:1px;top:2px;width:15px;height:15px;border-radius:50%;background:#22c55e;border:3px solid #fff;animation:onlinePulse 1.2s infinite}@keyframes onlinePulse{50%{box-shadow:0 0 0 8px rgba(34,197,94,.15);opacity:.65}}.medical-contact-panel{display:none;position:absolute;right:0;bottom:70px;width:230px;padding:10px;border-radius:17px;background:#fff;border:1px solid var(--line);box-shadow:0 22px 65px rgba(15,23,42,.22)}.medical-contact-panel.open{display:grid}.online-title{display:flex;align-items:center;gap:8px;padding:10px;font-size:11px;font-weight:900;color:#047857}.online-title span{width:8px;height:8px;border-radius:50%;background:#22c55e;animation:onlinePulse 1.2s infinite}.medical-contact-panel a{padding:11px;border-radius:10px;font-size:12px;font-weight:800}.medical-contact-panel a:hover{background:#ecfdf5;color:#0f766e}
.public-footer{display:flex;justify-content:space-between;gap:20px;padding:32px max(4vw,25px);background:#031317;color:#b9cbcd;font-size:12px}.public-footer p{margin:5px 0}.public-footer a:hover{color:#5eead4}
@media(max-width:1050px){.public-burger{display:grid;place-items:center}.public-nav nav{display:none;position:absolute;top:70px;left:15px;right:15px;flex-direction:column;align-items:stretch;padding:10px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 20px 60px rgba(15,23,42,.18)}.public-nav nav.open{display:flex}.public-nav nav a{display:block!important;padding:13px}.public-nav .public-login{background:#eef7f6;color:#0f766e}.hero-grid{grid-template-columns:1fr}.hero-card{display:none}.hero-photo{left:35%}.hero-overlay{background:linear-gradient(90deg,#061b20 0%,rgba(6,27,32,.9) 62%,rgba(6,27,32,.4))}.product-grid{grid-template-columns:repeat(2,1fr)}.public-band{grid-template-columns:1fr}.service-photo{height:380px}.service-catalogue{grid-template-columns:repeat(2,1fr)}.about-doctor{grid-template-columns:1fr}.about-doctor>img{max-height:500px}.cart-layout{grid-template-columns:1fr}.cart-checkout{position:static}.contact-grid{grid-template-columns:1fr}}
@media(max-width:680px){.public-nav{height:68px;padding:0 12px}.public-left{gap:7px}.public-brand img{width:40px;height:40px}.public-brand b{font-size:16px}.public-brand small{display:none}.language-switch button{height:34px;padding:0 8px}.public-burger{width:40px;height:40px}.medical-hero,.hero-grid{min-height:600px}.hero-grid{padding:60px 17px}.hero-photo{left:0;opacity:.45}.hero-overlay{background:linear-gradient(90deg,rgba(6,27,32,.97),rgba(6,27,32,.7))}.hero h1,.page-hero h1{font-size:34px}.hero p{font-size:15px}.hero-actions{flex-direction:column}.hero-stats{grid-template-columns:1fr}.public-section{padding:55px 16px}.section-head{align-items:flex-start;flex-direction:column}.section-head h2,.public-band h2,.about-doctor h2{font-size:30px}.product-grid,.service-grid,.service-catalogue,.about-values{grid-template-columns:1fr}.public-band{padding:55px 16px}.service-photo{height:280px}.page-hero{min-height:310px;padding:55px 17px}.catalogue-filter{grid-template-columns:1fr}.cart-item{grid-template-columns:78px 1fr}.cart-image{width:78px;height:78px}.cart-controls{grid-column:1/-1;grid-template-columns:1fr 1fr;align-items:end}.public-footer{flex-direction:column}.medical-contact{right:15px;bottom:82px}.medical-contact-button{width:54px;height:54px}.floating-cart{right:15px;bottom:17px}.contact-card{padding:20px}}
.public-alert{max-width:1280px;margin:18px auto 0;padding:13px 16px;border-radius:13px;font-size:13px;font-weight:800}.public-alert.success{background:#d1fae5;color:#065f46}.public-alert.error{background:#ffe4e6;color:#9f1239}.public-alert.info{background:#dbeafe;color:#1e40af}

/* BMMS Premium 2026.4.2 — capsule médicale de contact */
.medical-contact{right:24px;bottom:30px}.medical-contact-button{width:220px;height:66px;padding:7px 17px 7px 8px;display:flex;align-items:center;gap:11px;border-radius:999px;background:linear-gradient(135deg,#075e54,#0f9f8f);box-shadow:0 18px 55px rgba(6,78,72,.38);overflow:visible}.medical-contact-button:hover{transform:translateY(-2px);box-shadow:0 22px 62px rgba(6,78,72,.46)}.medical-pill-cross{display:grid;place-items:center;flex:0 0 50px;height:50px;border-radius:50%;background:#fff;color:#dc2626;font-size:39px;font-weight:500;line-height:1;box-shadow:inset 0 0 0 4px rgba(220,38,38,.08)}.medical-pill-copy{min-width:0;text-align:left}.medical-pill-copy b,.medical-pill-copy small{display:block;white-space:nowrap}.medical-pill-copy b{font-size:13px;letter-spacing:.2px}.medical-pill-copy small{margin-top:3px;color:#ccfbf1;font-size:10px}.medical-contact-button .online-dot{right:8px;top:5px;width:14px;height:14px}.medical-contact-panel{bottom:78px;width:310px;padding:12px;border-radius:22px}.online-title{padding:10px 11px 14px;border-bottom:1px solid var(--line);margin-bottom:5px}.online-title>span{flex:0 0 10px;height:10px}.online-title b,.online-title small{display:block}.online-title small{margin-top:2px;color:var(--muted);font-size:9px}.contact-channel{display:flex;align-items:center;gap:12px!important;padding:10px!important}.contact-channel .channel-icon{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:14px;color:#fff;font-size:21px;font-weight:900}.contact-channel .channel-icon svg{width:23px;height:23px;fill:currentColor}.contact-channel span:last-child b,.contact-channel span:last-child small{display:block}.contact-channel span:last-child small{margin-top:2px;color:var(--muted);font-size:9px}.contact-channel.whatsapp .channel-icon{background:#25d366}.contact-channel.facebook .channel-icon{background:#1877f2}.contact-channel.call .channel-icon{background:#0f766e}.contact-channel.mail .channel-icon{background:#ea4335}.contact-channel.form .channel-icon{background:#7c3aed}
@media(max-width:680px){.medical-contact{right:12px;bottom:14px}.medical-contact-button{width:184px;height:58px;padding:6px 12px 6px 6px}.medical-pill-cross{flex-basis:46px;height:46px;font-size:35px}.medical-pill-copy b{font-size:11px}.medical-pill-copy small{font-size:8px}.medical-contact-panel{position:fixed;right:12px;left:12px;bottom:82px;width:auto;max-height:70vh;overflow:auto}.floating-cart{bottom:84px}}


/* BMMS Premium 2026.4.3 — contact simple fermé, panneau médical large */
.medical-contact-button{width:64px!important;height:64px!important;padding:0!important;display:grid!important;place-items:center!important;border-radius:50%!important;gap:0!important;overflow:visible!important}
.medical-pill-cross{width:49px!important;height:49px!important;flex:0 0 49px!important;border-radius:50%!important;font-size:39px!important}
.medical-contact-panel{width:340px!important;padding:14px!important;border-radius:24px!important}
.service-detailed details{margin-top:16px;border-top:1px solid var(--line);padding-top:13px}.service-detailed summary{cursor:pointer;color:#0f766e;font-size:12px;font-weight:900}.service-detailed ul{margin:12px 0 0;padding-left:19px;color:var(--muted);line-height:1.7;font-size:12px}.public-footer>div:first-child{max-width:720px}.public-footer p{line-height:1.65}
@media(max-width:680px){.medical-contact-button{width:58px!important;height:58px!important}.medical-pill-cross{width:45px!important;height:45px!important;flex-basis:45px!important}.medical-contact-panel{width:auto!important}}
