:root{
  --tl-teal:#026168;
  --tl-teal-dark:#01484d;
  --tl-teal-2:#0a747b;
  --tl-orange:#ffb80c;
  --tl-bg:#f4f7f7;
  --tl-line:#dce6e7;
  --tl-text:#1c2d31;
  --tl-muted:#718084;
  --tl-soft:#edf5f5;
  --tl-danger:#c0392b;
  --tl-success:#2f9a6d;
}

.tl-page{max-width:1180px;margin:0 auto;color:var(--tl-text);font-family:inherit}.tl-form-page{padding-bottom:34px}
.tl-kicker{color:var(--tl-orange);font-size:10px;font-weight:900;letter-spacing:.13em}
.tl-card{background:#fff;border:1px solid var(--tl-line);border-radius:16px;margin-bottom:16px;padding:22px;box-shadow:0 7px 20px rgba(23,50,58,.06)}

/* Hero client */
.tl-hero{position:relative;overflow:hidden;border-radius:18px;margin-bottom:0;background:linear-gradient(135deg,#053f46,#087078);color:#fff;box-shadow:0 12px 30px rgba(1,72,77,.18)}
.tl-form-hero:after{content:"";position:absolute;right:-70px;top:-100px;width:390px;height:390px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.16),rgba(255,255,255,0) 66%);pointer-events:none}.tl-form-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.04),transparent 52%);pointer-events:none}
.tl-hero-content{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 32px}.tl-hero h2{color:#fff;margin:3px 0 7px;font-size:31px;line-height:1.1;font-weight:850}.tl-hero p{margin:0;color:rgba(255,255,255,.88);font-size:15px;max-width:650px}.tl-order-pill{white-space:nowrap;border:1px solid rgba(255,255,255,.30);background:rgba(255,255,255,.10);border-radius:999px;padding:10px 14px;font-weight:800;font-size:12px}

/* Progression visuelle (aucune dépendance JS) */
.tl-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:12px}.tl-progress-static{background:#fff;border:1px solid var(--tl-line);border-top:0;margin:0 16px 18px;padding:14px 20px;border-radius:0 0 14px 14px;box-shadow:0 7px 20px rgba(23,50,58,.04)}.tl-progress-item{display:flex;align-items:center;gap:8px;color:#6d8086;font-size:11px;white-space:nowrap}.tl-progress-item span{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#edf2f3;color:#6f8186;font-weight:900}.tl-progress-item strong{font-weight:800}.tl-progress-item.is-active{color:var(--tl-teal-dark)}.tl-progress-item.is-active span{background:var(--tl-teal);color:#fff}.tl-progress-line{height:2px;background:#dfe8e9;border-radius:999px}

.tl-alert{border-radius:14px;margin-bottom:16px}.tl-alert ul{margin:8px 0 0;padding-left:20px}

/* Formulaire final : tout est visible sur une page, robuste sans JS */
.tl-form-master-card{padding:8px 28px 26px}.tl-form-section{padding:24px 0;border-top:1px solid #edf1f2}.tl-form-section:first-child{border-top:0}.tl-section-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:20px}.tl-section-head-inline{align-items:center}.tl-section-head h3{margin:0 0 3px;color:var(--tl-teal-dark);font-size:20px;font-weight:850}.tl-section-head p{margin:0;color:var(--tl-muted);font-size:13px}.tl-section-number{flex:0 0 33px;width:33px;height:33px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:var(--tl-teal);color:#fff;font-weight:900;font-size:14px}.tl-inline-tip{margin-left:auto;max-width:315px;display:flex;gap:9px;align-items:flex-start;background:#f0f6f7;border-radius:10px;padding:10px 12px}.tl-inline-tip>span{width:22px;height:22px;flex:0 0 22px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#d8eef0;color:var(--tl-teal);font-weight:900}.tl-inline-tip p{font-size:10.5px;line-height:1.35;color:#61777d}

.tl-form-row{display:grid;gap:14px;align-items:start}.tl-form-row-4{grid-template-columns:1.35fr .85fr .85fr 1fr}.tl-form-row-3{grid-template-columns:.85fr 1.35fr 1fr}.tl-form-row-dates{grid-template-columns:.8fr .8fr 1.4fr}.tl-field{margin:0}.tl-page .tl-field label{display:block;font-weight:800;color:var(--tl-text);font-size:12px;margin-bottom:6px}.tl-page .tl-field label span{color:var(--tl-danger)}.tl-page .form-control{width:100%;border-radius:9px;border:1px solid #cfdadc;min-height:44px;padding:9px 12px;background:#fff;color:var(--tl-text);font-size:14px;box-shadow:none}.tl-page .form-control:focus{border-color:var(--tl-teal);box-shadow:0 0 0 3px rgba(2,97,104,.10);outline:0}.tl-page textarea.form-control{min-height:86px;resize:vertical}.tl-input-unit{position:relative}.tl-input-unit .form-control{padding-right:48px}.tl-input-unit>span{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-weight:800;color:var(--tl-muted);font-size:11px;pointer-events:none}.tl-help{display:block;margin-top:5px;color:var(--tl-muted);font-size:10.5px;line-height:1.35}.tl-chest-wrap.is-muted{opacity:.72}.tl-chest-wrap.is-muted .form-control{background:#fafcfc}

.tl-choice-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tl-choice{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--tl-line);border-radius:9px;padding:11px 10px;cursor:pointer;background:#fff;transition:.15s ease;margin:0}.tl-choice:hover{border-color:#a9c5c7;background:#fbfdfd}.tl-choice.is-selected{border-color:var(--tl-teal);background:var(--tl-teal);color:#fff;box-shadow:0 0 0 3px rgba(2,97,104,.08)}.tl-choice input{position:absolute;opacity:0;pointer-events:none}.tl-choice strong{font-size:12px}.tl-choice-dot{width:14px;height:14px;border-radius:50%;border:2px solid #99adb2;background:#fff;position:relative}.tl-choice.is-selected .tl-choice-dot{border-color:#fff;background:#fff}.tl-choice.is-selected .tl-choice-dot:after{content:"";position:absolute;width:6px;height:6px;left:2px;top:2px;border-radius:50%;background:var(--tl-teal)}

.tl-date-info{display:flex;gap:11px;align-items:flex-start;background:#eef7fb;border-radius:10px;padding:11px 12px;min-height:76px}.tl-date-info-icon{width:25px;height:25px;flex:0 0 25px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#cfe7f7;color:#347cb1;font-weight:900}.tl-date-info strong{display:block;color:#315d75;font-size:11.5px}.tl-date-info p{margin:3px 0 0;color:#698492;font-size:10.5px;line-height:1.35}.tl-note{border-radius:10px;padding:11px 13px;background:#edf7f7;border-left:4px solid var(--tl-teal);margin:14px 0}.tl-note-warning{background:#fff8e6;border-left-color:var(--tl-orange);font-size:11.5px}.tl-consent{display:flex;gap:10px;align-items:flex-start;padding:12px 13px;border:1px solid var(--tl-line);border-radius:10px;background:#fafcfc;cursor:pointer;margin:16px 0}.tl-consent input{margin-top:3px;transform:scale(1.08)}.tl-consent span{font-size:11.5px;line-height:1.4;color:var(--tl-text)}

.tl-form-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding-top:16px;border-top:1px solid #edf1f2}.tl-form-footer-copy{display:flex;flex-direction:column}.tl-form-footer-copy strong{color:var(--tl-teal-dark);font-size:11.5px}.tl-form-footer-copy span{color:var(--tl-muted);font-size:10.5px;margin-top:2px}.tl-submit{background:var(--tl-teal)!important;border-color:var(--tl-teal)!important;color:#fff!important;border-radius:9px!important;min-width:190px;min-height:44px;font-weight:850;padding:10px 18px!important}.tl-submit:hover{background:var(--tl-teal-dark)!important;border-color:var(--tl-teal-dark)!important}.tl-submit.is-loading{opacity:.72;cursor:wait}

/* Bloc post-commande : finaliser la réservation */
.tl-order-confirmation-card{position:relative;overflow:hidden;margin-top:1rem!important;border:1px solid #cfe0e2!important;border-left:0!important;border-radius:14px!important;padding:20px 22px!important;background:linear-gradient(135deg,#f7fbfb,#fff)!important}.tl-order-confirmation-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--tl-teal)}.tl-order-confirmation-card h3{margin:3px 0 7px;color:var(--tl-teal-dark);font-weight:850;font-size:20px}.tl-order-confirmation-card p{color:#667b81;margin-bottom:12px}.tl-order-confirmation-card .tl-order-cta{background:var(--tl-teal)!important;border-color:var(--tl-teal)!important;border-radius:9px;font-weight:800;padding:10px 16px}.tl-order-confirmation-card .tl-order-cta:hover{background:var(--tl-teal-dark)!important;border-color:var(--tl-teal-dark)!important}

/* Confirmation sûre sur la page native Mes commandes */
.tl-history-success{display:flex;gap:15px;align-items:center;background:linear-gradient(135deg,#effaf5,#f9fdfb);border:1px solid #cfeadd;border-radius:14px;padding:18px 20px;margin:0 0 18px;box-shadow:0 7px 20px rgba(47,154,109,.08)}.tl-history-success-icon{width:48px;height:48px;flex:0 0 48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#dff5e9;color:#247f58;font-size:24px;font-weight:900}.tl-history-success h2{margin:2px 0 4px;color:#14553d;font-size:20px;font-weight:850}.tl-history-success p{margin:0;color:#667d73;font-size:12.5px}

/* Mes locations / confirmation historique */
.tl-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}.tl-status-item{border:1px solid var(--tl-line);border-radius:12px;padding:13px 14px;background:#fff}.tl-status-label{display:block;color:var(--tl-muted);font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.06em}.tl-status-value{display:block;margin-top:3px;font-size:15px;font-weight:800;color:var(--tl-teal-dark)}.tl-list-table{border-collapse:separate;border-spacing:0 8px}.tl-list-table thead th{border:0;color:var(--tl-muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.tl-list-table tbody tr{background:#fff;box-shadow:0 3px 12px rgba(23,50,58,.05)}.tl-list-table tbody td{vertical-align:middle;border-top:1px solid var(--tl-line);border-bottom:1px solid var(--tl-line)}.tl-list-table tbody td:first-child{border-left:1px solid var(--tl-line);border-radius:10px 0 0 10px}.tl-list-table tbody td:last-child{border-right:1px solid var(--tl-line);border-radius:0 10px 10px 0}.tl-confirm-card{text-align:center;padding:34px 30px}.tl-confirm-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#e9f6ef;color:#287c52;font-size:32px;font-weight:800;margin:0 auto 14px}.tl-confirm-card h2{color:var(--tl-teal-dark);font-size:26px;margin:5px 0 7px;font-weight:800}.tl-confirm-lead{color:var(--tl-muted);max-width:620px;margin:0 auto 24px}.tl-summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--tl-line);border:1px solid var(--tl-line);border-radius:13px;overflow:hidden;text-align:left;margin:22px 0}.tl-summary-row{background:#fff;padding:13px 15px}.tl-summary-row strong{display:block;color:var(--tl-muted);font-size:11px;text-transform:uppercase;margin-bottom:3px}.tl-confirm-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:20px}.tl-confirm-actions .btn{border-radius:10px;min-height:44px;padding:10px 16px;font-weight:700}

@media(max-width:980px){.tl-form-row-4{grid-template-columns:repeat(2,minmax(0,1fr))}.tl-form-row-3{grid-template-columns:1fr 1fr}.tl-form-row-3 .tl-field:last-child{grid-column:1/-1}.tl-form-row-dates{grid-template-columns:1fr 1fr}.tl-date-info{grid-column:1/-1}.tl-inline-tip{display:none}}
@media(max-width:767px){.tl-page{max-width:100%}.tl-hero{border-radius:14px}.tl-hero-content{padding:22px 18px;align-items:flex-start;flex-direction:column}.tl-hero h2{font-size:25px}.tl-order-pill{white-space:normal}.tl-progress-static{margin:0 8px 15px;padding:12px 10px}.tl-progress{grid-template-columns:1fr 1fr 1fr;gap:5px}.tl-progress-line{display:none}.tl-progress-item{flex-direction:column;text-align:center;gap:4px;white-space:normal}.tl-progress-item strong{font-size:9.5px}.tl-form-master-card{padding:6px 16px 20px}.tl-section-head h3{font-size:19px}.tl-form-row-4,.tl-form-row-3,.tl-form-row-dates,.tl-summary-list,.tl-status-grid{grid-template-columns:1fr}.tl-form-row-3 .tl-field:last-child,.tl-date-info{grid-column:auto}.tl-gender-field{margin-bottom:4px}.tl-form-footer{flex-direction:column;align-items:stretch}.tl-submit{width:100%;min-width:0}.tl-history-success{align-items:flex-start;padding:15px}.tl-history-success h2{font-size:18px}.tl-confirm-card{padding:26px 17px}.tl-confirm-actions{flex-direction:column}.tl-confirm-actions .btn{width:100%}.tl-list-table thead{display:none}.tl-list-table,.tl-list-table tbody,.tl-list-table tr,.tl-list-table td{display:block;width:100%}.tl-list-table tbody tr{margin-bottom:12px;border:1px solid var(--tl-line);border-radius:12px;overflow:hidden}.tl-list-table tbody td{border:0!important;border-bottom:1px solid #edf1f1!important;border-radius:0!important;padding:10px 13px}.tl-list-table tbody td:last-child{border-bottom:0!important}}

/* RC14 — expérience client enrichie */
.tl-service-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 14px}.tl-service-strip>div{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--tl-line);border-radius:12px;padding:10px 12px}.tl-service-icon{width:30px;height:30px;flex:0 0 30px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:#e6f3f3;color:var(--tl-teal);font-weight:900}.tl-service-strip p{margin:0;line-height:1.2}.tl-service-strip strong,.tl-service-strip small{display:block}.tl-service-strip strong{font-size:10.5px;color:var(--tl-ink)}.tl-service-strip small{font-size:9.5px;color:var(--tl-muted);margin-top:2px}.tl-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:14px;align-items:start}.tl-client-aside{display:flex;flex-direction:column;gap:10px;position:sticky;top:16px}.tl-aside-card{display:flex;gap:11px;background:#fff;border:1px solid var(--tl-line);border-radius:14px;padding:14px;box-shadow:0 5px 18px rgba(18,48,56,.045)}.tl-aside-card strong{display:block;color:var(--tl-teal-dark);font-size:11.5px}.tl-aside-card p{margin:4px 0 0;color:var(--tl-muted);font-size:10.5px;line-height:1.45}.tl-aside-icon{width:32px;height:32px;flex:0 0 32px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#e8f4f4;color:var(--tl-teal);font-weight:900}.tl-aside-primary{display:block;background:linear-gradient(145deg,#063f46,#08727a);border:0;color:#fff;padding:18px}.tl-aside-primary h3{color:#fff;margin:5px 0 8px;font-size:18px;line-height:1.15}.tl-aside-primary>p{color:#d9e9ea;font-size:10.5px}.tl-aside-kicker{color:var(--tl-orange);font-size:9px;font-weight:900;letter-spacing:.12em}.tl-mini-timeline{margin-top:15px}.tl-mini-timeline>div{display:grid;grid-template-columns:26px 1fr;gap:9px;position:relative;padding:0 0 11px}.tl-mini-timeline>div:not(:last-child):after{content:"";position:absolute;left:12px;top:25px;bottom:0;width:1px;background:rgba(255,255,255,.2)}.tl-mini-timeline span{width:25px;height:25px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);font-size:9px;font-weight:900}.tl-mini-timeline .is-current span{background:var(--tl-orange);color:#17323a}.tl-mini-timeline p{margin:0}.tl-mini-timeline strong{color:#fff;font-size:10.5px}.tl-mini-timeline small{display:block;color:#bcd4d6;font-size:9px;margin-top:1px}.tl-aside-caution{background:#fff9ea;border-color:#f3dfaa}.tl-aside-caution .tl-aside-icon{background:#fff0c7;color:#a66d00}.tl-how-it-works{margin-top:18px;background:linear-gradient(135deg,#f3f8f8,#fff);border:1px solid var(--tl-line);border-radius:16px;padding:22px}.tl-how-title{text-align:center;max-width:600px;margin:0 auto 18px}.tl-how-title h3{color:var(--tl-teal-dark);font-size:22px;margin:4px 0}.tl-how-title p{color:var(--tl-muted);font-size:11px;margin:0}.tl-how-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.tl-how-grid article{background:#fff;border:1px solid var(--tl-line);border-radius:12px;padding:14px;min-height:112px}.tl-how-grid article>span{display:inline-flex;color:var(--tl-orange);font-size:10px;font-weight:900;letter-spacing:.08em;margin-bottom:9px}.tl-how-grid strong{display:block;color:var(--tl-teal-dark);font-size:11.5px}.tl-how-grid p{color:var(--tl-muted);font-size:10px;line-height:1.4;margin:5px 0 0}@media(max-width:1100px){.tl-form-layout{grid-template-columns:1fr}.tl-client-aside{position:static;display:grid;grid-template-columns:repeat(3,1fr)}.tl-aside-primary{grid-column:1/-1}.tl-service-strip{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.tl-service-strip{grid-template-columns:1fr 1fr}.tl-service-strip>div{padding:9px}.tl-client-aside{grid-template-columns:1fr}.tl-aside-primary{grid-column:auto}.tl-how-grid{grid-template-columns:1fr 1fr}.tl-how-it-works{padding:17px}}@media(max-width:480px){.tl-service-strip,.tl-how-grid{grid-template-columns:1fr}}
