/* V321 — Espace client Hôtels212 (connexion, inscription, mon compte, mot de passe) : interface 100 % Hôtels212 */
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body.hc{min-height:100vh;display:flex;flex-direction:column;font-family:Montserrat,system-ui,-apple-system,"Segoe UI",sans-serif;color:#1F1F26;background:#1F2937;-webkit-font-smoothing:antialiased}
.hc-bg{position:fixed;inset:0;z-index:0;background:linear-gradient(180deg,rgba(17,24,39,.55),rgba(17,24,39,.78)),url('/assets/images/marrakech-hero-2026.webp') center/cover no-repeat}
.hc-top,.hc-main,.hc-foot{position:relative;z-index:1}
.hc-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px max(18px,calc((100vw - 1180px)/2));background:rgba(31,41,55,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}
.hc-brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.hc-brand img{width:40px;height:40px;border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.hc-brand span{font:800 25px/1 Montserrat,sans-serif;letter-spacing:-.025em;color:#fff}
.hc-brand em{font-style:normal;color:#F59E5B}
.hc-back{color:#E5E7EB;text-decoration:none;font-weight:600;font-size:13.5px;padding:9px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);transition:background .15s}
.hc-back:hover{background:rgba(255,255,255,.14)}
.hc-main{flex:1;display:grid;place-items:center;padding:34px 16px 40px}
.hc-card{width:min(460px,100%);background:#fff;border-radius:24px;padding:26px 26px 22px;box-shadow:0 30px 80px -30px rgba(0,0,0,.6);animation:hcin .35s ease-out}
.hc-card-wide{width:min(640px,100%)}
@keyframes hcin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.hc-card{animation:none}}
.hc-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:14px;background:#F1F5F9;margin-bottom:18px}
.hc-tabs a{text-align:center;padding:10px 8px;border-radius:11px;font-weight:700;font-size:13.5px;color:#475569;text-decoration:none}
.hc-tabs a[aria-current]{background:#fff;color:#C2410C;box-shadow:0 2px 8px rgba(15,23,42,.08)}
.hc-over{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#C2410C;margin-bottom:6px}
.hc-card h1{margin:0 0 6px;font-size:24px;line-height:1.15;letter-spacing:-.02em;font-weight:800}
.hc-card h2{margin:22px 0 10px;font-size:16px;font-weight:800}
.hc-sub{margin:0 0 16px;color:#64748B;font-size:14px;line-height:1.5}
.hc-form{display:flex;flex-direction:column;gap:12px}
.hc-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hc-f{display:flex;flex-direction:column;gap:6px}
.hc-f>span:first-child{font-size:12px;font-weight:700;color:#334155;letter-spacing:.01em}
.hc-f small{font-weight:500;color:#94A3B8}
.hc-f input{width:100%;font:500 15px Montserrat,system-ui,sans-serif;color:#1F1F26;padding:13px 14px;border:1.5px solid #E2E8F0;border-radius:13px;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}
.hc-f input:focus{border-color:#FF7417;box-shadow:0 0 0 4px rgba(255,116,23,.14)}
.hc-pw{position:relative;display:block}
.hc-pw input{padding-right:70px}
.hc-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:#F1F5F9;color:#475569;font:700 12px Montserrat,sans-serif;padding:7px 10px;border-radius:9px;cursor:pointer}
.hc-chk{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.45;color:#475569;cursor:pointer}
.hc-chk input{width:18px;height:18px;margin:1px 0 0;accent-color:#C2410C;flex:none}
.hc-go{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:14px 18px;border:0;border-radius:14px;background:linear-gradient(135deg,#FF7417,#C2410C);color:#fff;font:800 15px Montserrat,system-ui,sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 14px 30px -14px rgba(194,65,12,.8);transition:transform .15s,box-shadow .15s}
.hc-go:hover{transform:translateY(-1px);box-shadow:0 18px 36px -14px rgba(194,65,12,.9)}
.hc-help{margin:4px 0 0;text-align:center;font-size:13px}
.hc-help a,.hc-link{color:#C2410C;font-weight:700;text-decoration:none}
.hc-help a:hover,.hc-link:hover{text-decoration:underline}
.hc-err{margin:0 0 14px;padding:11px 14px;border-radius:12px;background:#FEF2F2;border:1px solid #FECACA;color:#991B1B;font-size:13.5px;line-height:1.45}
.hc-err p{margin:0}.hc-err p+p{margin-top:4px}
.hc-ok{margin:0 0 14px;padding:11px 14px;border-radius:12px;background:#ECFDF5;border:1px solid #A7F3D0;color:#065F46;font-size:13.5px;line-height:1.45}
.hc-plus{list-style:none;margin:18px 0 0;padding:14px 0 0;border-top:1px solid #F1F5F9;display:flex;flex-direction:column;gap:7px}
.hc-plus li{position:relative;padding-left:24px;font-size:12.5px;color:#475569}
.hc-plus li::before{content:"";position:absolute;left:0;top:2px;width:15px;height:15px;border-radius:50%;background:#FFEDD5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2410C' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/10px no-repeat}
.hc-empty{margin:0;padding:14px;border-radius:14px;background:#F8FAFC;color:#64748B;font-size:13.5px;line-height:1.5}
.hc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.hc-list li{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:12px 14px;border:1px solid #E2E8F0;border-radius:14px}
.hc-list b{font-size:14px}.hc-list span{grid-column:1;font-size:12.5px;color:#64748B}
.hc-st{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;font-size:11.5px;font-weight:800;padding:5px 10px;border-radius:999px;background:#FFF7ED;color:#C2410C}
.hc-st-traite,.hc-st-traitee{background:#ECFDF5;color:#047857}
.hc-optin-f{margin:18px 0 0}
.hc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:18px}
.hc-actions .hc-go{width:auto;flex:1 1 220px}
.hc-foot{padding:16px;text-align:center;font-size:12.5px;color:rgba(255,255,255,.75)}
.hc-foot b{color:#fff}.hc-foot a{color:#F59E5B;text-decoration:none;font-weight:700}
@media(max-width:520px){
  .hc-top{padding:10px 14px}.hc-brand img{width:34px;height:34px;border-radius:10px}.hc-brand span{font-size:20px}
  .hc-back{font-size:12.5px;padding:8px 11px}
  .hc-main{place-items:start center;padding:18px 12px 28px}
  .hc-card{padding:20px 18px 18px;border-radius:20px}.hc-card h1{font-size:21px}
  .hc-row{grid-template-columns:1fr}
  .hc-f input{font-size:16px}
}
@media(max-width:360px){.hc-back span+*{display:none}}
/* V324 : bouton de langue */
.hc-top .h212-lg{position:relative;margin-left:auto;margin-right:10px}
.h212-lg-b{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 13px 0 11px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:#fff;font:800 13px Montserrat,system-ui,sans-serif;cursor:pointer}
.h212-lg-b:hover,.h212-lg-b[aria-expanded="true"]{background:rgba(255,116,23,.18);border-color:rgba(245,158,91,.6)}
.h212-lg-m{position:absolute;top:calc(100% + 8px);right:0;z-index:50;min-width:200px;padding:6px;border-radius:16px;background:#fff;box-shadow:0 24px 50px -18px rgba(15,23,42,.55);border:1px solid #E2E8F0}
.h212-lg-o{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:11px;background:none;color:#1F1F26;font:600 14px Montserrat,system-ui,sans-serif;cursor:pointer;text-align:start}
.h212-lg-o b{display:inline-grid;place-items:center;min-width:30px;height:24px;border-radius:7px;background:#F1F5F9;color:#475569;font-size:11.5px;font-weight:800}
.h212-lg-o:hover{background:#FFF7ED}.h212-lg-o.on{background:#FFF7ED;color:#C2410C}.h212-lg-o.on b{background:linear-gradient(135deg,#FF7417,#C2410C);color:#fff}
@media(max-width:520px){.h212-lg-b svg{display:none}.h212-lg-b{height:36px;padding:0 10px}}
