:root{--fa-ink:#14231f;--fa-muted:#65726d;--fa-green:#194f3c;--fa-green2:#256b53;--fa-gold:#b98637;--fa-line:#d9e1dd;--fa-bg:#faf8f2;--fa-navy:#102b3a}.fa-app,.fa-app *{box-sizing:border-box}.fa-app{max-width:960px;margin:28px auto;padding:clamp(24px,5vw,58px);border:1px solid var(--fa-line);border-radius:26px;background:linear-gradient(145deg,#fff,var(--fa-bg));box-shadow:0 24px 70px rgba(21,35,31,.1);font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--fa-ink);scroll-margin-top:24px}.fa-eyebrow,.fa-section-kicker{margin:0 0 12px;color:var(--fa-gold);font-size:12px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.fa-intro h2{max-width:850px;margin:0;font:700 clamp(30px,4.7vw,52px)/1.08 Georgia,serif;letter-spacing:-.03em}.fa-reassurance{margin:20px 0 0;color:var(--fa-muted);font-size:16px;line-height:1.55}.fa-progress-block{margin:34px 0 32px}.fa-progress-label{display:flex;justify-content:space-between;margin-bottom:9px;font-size:12px;font-weight:800;color:var(--fa-muted)}.fa-progress{height:9px;overflow:hidden;border-radius:999px;background:#e4e9e6}.fa-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--fa-gold),#d3a759);transition:width .3s ease}.fa-step{animation:fa-in .24s ease}.fa-step[hidden]{display:none!important}@keyframes fa-in{from{opacity:.25;transform:translateY(8px)}to{opacity:1;transform:none}}.fa-question-number{margin:0 0 9px;color:var(--fa-gold);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.fa-step h3{max-width:850px;margin:0;font:700 clamp(25px,3.6vw,38px)/1.18 Georgia,serif}.fa-help{margin:10px 0 0;color:var(--fa-muted);font-size:13px}.fa-options{display:grid;gap:13px;margin:26px 0}.fa-option{display:grid;grid-template-columns:38px 1fr 28px;align-items:center;width:100%;min-height:70px;padding:12px 18px;border:1px solid var(--fa-line);border-radius:16px;background:linear-gradient(180deg,#fff,#fbfcfb);color:var(--fa-ink);font:700 16px/1.35 inherit;text-align:left;cursor:pointer;box-shadow:0 7px 18px rgba(20,35,31,.045);transition:transform .15s,border-color .15s,background .15s,color .15s,box-shadow .15s}.fa-option:hover{transform:translateY(-2px);border-color:#7fa291;box-shadow:0 12px 26px rgba(20,35,31,.1)}.fa-option-mark{display:grid;width:28px;height:28px;place-items:center;border:2px solid #cfd9d4;border-radius:50%;color:transparent;background:#fff}.fa-option-label{text-align:center;padding:0 8px}.fa-option-arrow{font-size:28px;color:#9aa8a2;text-align:right}.fa-option.is-selected{border-color:var(--fa-green);background:linear-gradient(135deg,var(--fa-green),var(--fa-green2));color:#fff;box-shadow:0 12px 28px rgba(25,79,60,.22)}.fa-option.is-selected .fa-option-mark{border-color:#fff;background:#fff;color:var(--fa-green)}.fa-option.is-selected .fa-option-arrow{color:#fff}.fa-navigation{display:flex;align-items:center;justify-content:space-between;gap:16px}.fa-primary,.fa-cta{border:0;border-radius:12px;padding:15px 23px;font-size:15px;font-weight:850;cursor:pointer;text-decoration:none}.fa-primary,.fa-cta-main{background:var(--fa-green);color:#fff}.fa-primary:disabled,.fa-cta:disabled{opacity:.42;cursor:not-allowed}.fa-back,.fa-restart,.fa-flow-back{border:0;background:none;color:var(--fa-green);font-weight:800;cursor:pointer;padding:10px 0}.fa-results>h3{font-size:clamp(29px,4vw,44px)}.fa-result-copy{color:var(--fa-muted);font-size:16px}.fa-products{display:grid;gap:16px;margin:28px 0}.fa-product{display:grid;grid-template-columns:62px 1fr;gap:18px;width:100%;padding:22px;border:1px solid var(--fa-line);border-radius:18px;background:#fff;color:var(--fa-ink);text-align:left;cursor:pointer;box-shadow:0 9px 24px rgba(20,35,31,.06);transition:transform .18s,box-shadow .18s,border-color .18s}.fa-product:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(20,35,31,.12);border-color:#94aa9f}.fa-product-icon{display:grid;width:56px;height:56px;place-items:center;border-radius:15px;background:#f2f2ec;font-size:27px}.fa-product-content{display:flex;flex-direction:column;align-items:flex-start}.fa-product-content strong{margin:7px 0;font:700 24px/1.2 Georgia,serif}.fa-product-content>span:not(.fa-status){color:var(--fa-muted);line-height:1.52}.fa-product-content em{margin-top:13px;color:var(--fa-green);font-style:normal;font-weight:850}.fa-status{display:inline-flex;padding:7px 10px;border-radius:999px;background:#f1f2ef;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;text-decoration:underline;text-underline-offset:3px}.fa-level-high{border-left:6px solid #a64a3f}.fa-level-high .fa-status{background:#f8eae8;color:#87372f}.fa-level-medium{border-left:6px solid #b58a47}.fa-level-medium .fa-status{background:#f7f0e3;color:#7f5d27}.fa-level-covered{border-left:6px solid #38725b}.fa-level-covered .fa-status{background:#e8f4ee;color:#285944}.fa-level-check{border-left:6px solid #557397}.fa-level-check .fa-status{background:#e9f0f7;color:#3f5e81}.fa-level-low{border-left:6px solid #97a39e}.fa-modal[hidden]{display:none!important}.fa-modal{position:fixed!important;inset:0!important;z-index:1000000!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important}.fa-modal-backdrop{position:absolute;inset:0;background:rgba(5,12,16,.84);backdrop-filter:blur(4px)}.fa-modal-dialog{position:relative;z-index:1;width:min(1180px,96vw);max-height:94vh;overflow:auto;border:1px solid rgba(185,134,55,.5);border-radius:20px;background:#f8f5ec;box-shadow:0 30px 110px rgba(0,0,0,.6);overscroll-behavior:contain}.fa-modal-close{position:sticky;float:right;top:14px;right:14px;z-index:10;display:grid;width:43px;height:43px;margin:14px 14px -58px 0;padding:0;place-items:center;border:1px solid var(--fa-gold);border-radius:50%;background:#fff;color:var(--fa-navy);font-size:29px;line-height:1;cursor:pointer}.fa-modal-open{overflow:hidden!important}.fa-product-hero{padding:56px clamp(24px,6vw,70px) 48px;background:radial-gradient(circle at 70% 0,#284938 0,#153329 46%,#0c201a 100%);color:#fff}.fa-product-big-icon{display:grid;width:68px;height:68px;margin-bottom:18px;place-items:center;border:1px solid rgba(255,255,255,.35);border-radius:18px;background:rgba(255,255,255,.09);font-size:34px}.fa-product-hero>p{margin:0 0 9px;color:#e5c47c;font-weight:850;text-transform:uppercase;letter-spacing:.13em;font-size:12px}.fa-product-hero h3{max-width:850px;margin:0 0 13px!important;color:#fff!important;font:700 clamp(36px,5vw,62px)/1.05 Georgia,serif!important}.fa-product-price{display:inline-block;margin:5px 0 20px;padding:8px 13px;border:1px solid rgba(229,196,124,.55);border-radius:999px;color:#f4d78f;font-weight:800}.fa-product-hero>div{max-width:780px;color:#e4ebe7;font-size:17px;line-height:1.68}.fa-product-section{padding:42px clamp(20px,5vw,58px)}.fa-product-section h4{margin:0 0 22px;font:700 clamp(27px,4vw,39px)/1.15 Georgia,serif;color:var(--fa-navy)}.fa-guarantee-wrap{overflow:auto;border:1px solid #ded7c9;border-radius:15px;background:#fff}.fa-guarantee-table{width:100%;border-collapse:collapse;min-width:620px}.fa-guarantee-table th,.fa-guarantee-table td{padding:17px 19px;border-bottom:1px solid #ece7dd;text-align:left}.fa-guarantee-table th{background:#f1ecdf;color:#6b5836;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.fa-guarantee-table td:last-child{font-weight:800;color:var(--fa-green)}.fa-demo-note{margin:16px 0 0;padding:14px 17px;border-left:4px solid var(--fa-gold);background:#fff;color:#6b6256;line-height:1.55}.fa-product-actions{display:flex;gap:13px;flex-wrap:wrap;padding:0 clamp(20px,5vw,58px) 44px}.fa-cta-alt{border:1px solid var(--fa-green);background:#fff;color:var(--fa-green)}.fa-flow-page,.fa-success-page{padding:clamp(34px,6vw,70px);background:#fff;min-height:520px}.fa-flow-page h3,.fa-success-page h3{margin:4px 0 14px!important;font:700 clamp(34px,5vw,54px)/1.08 Georgia,serif!important;color:var(--fa-navy)!important}.fa-flow-page>p{max-width:720px;color:var(--fa-muted);font-size:17px;line-height:1.65}.fa-flow-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:27px 0 18px}.fa-flow-grid label{font-size:13px;font-weight:850}.fa-flow-grid input{display:block;width:100%;margin-top:7px;padding:14px;border:1px solid var(--fa-line);border-radius:11px;background:#fff;font:inherit}.fa-flow-consent{display:block;margin:17px 0;color:var(--fa-muted);font-size:13px}.fa-flow-message{min-height:21px;font-weight:750}.fa-success-page{text-align:center;display:grid;place-items:center;align-content:center}.fa-success-icon{display:grid;width:78px;height:78px;place-items:center;border-radius:50%;background:var(--fa-green);color:#fff;font-size:38px}.fa-success-page p{color:var(--fa-muted);font-size:17px}.fa-restart{margin-top:18px}@media(max-width:680px){.fa-app{margin:8px;padding:23px 17px;border-radius:18px}.fa-intro h2{font-size:33px}.fa-step h3{font-size:27px}.fa-option{grid-template-columns:32px 1fr 20px;min-height:64px;padding:11px 13px;font-size:15px}.fa-option-label{text-align:left}.fa-product{grid-template-columns:1fr}.fa-modal{padding:5px!important}.fa-modal-dialog{width:100%;max-height:98vh;border-radius:13px}.fa-product-hero{padding:62px 20px 36px}.fa-product-hero h3{font-size:38px!important}.fa-product-section{padding:30px 18px}.fa-product-actions{padding:0 18px 30px;flex-direction:column}.fa-cta{width:100%}.fa-flow-grid{grid-template-columns:1fr}.fa-flow-page,.fa-success-page{padding:58px 20px 34px}}
/* v2.1.1 — actions explicites sur la page de résultat */
.fa-product{position:relative;cursor:pointer}.fa-status-link{border:0;cursor:pointer;font-family:inherit}.fa-product-link{display:inline-flex;align-items:center;gap:8px;margin-top:15px;padding:11px 16px;border:1px solid var(--fa-green);border-radius:10px;background:var(--fa-green);color:#fff;font:800 14px/1.2 inherit;cursor:pointer;transition:transform .15s,background .15s}.fa-product-link:hover{transform:translateY(-1px);background:var(--fa-green2)}.fa-product:focus-visible{outline:3px solid rgba(185,134,55,.5);outline-offset:4px}.fa-product-content .fa-status-link{text-decoration:none}.fa-product-content .fa-status-link:hover{text-decoration:underline;text-underline-offset:3px}

/* v2.2.0 — expérience commerciale inspirée du parcours Hospitality */
.fa-hospitality-page{background:#f8f4eb;color:#222;min-height:650px}.fa-hotel-top{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:34px;align-items:center;padding:48px 46px;background:linear-gradient(145deg,#121916,#1a3429);color:#fff}.fa-hotel-heading h3,.fa-mini-head h3{margin:5px 0 15px!important;font:700 clamp(34px,5vw,58px)/1.05 Georgia,serif!important;color:inherit!important}.fa-hotel-heading>p:last-child,.fa-mini-head>p:last-child{max-width:760px;font-size:17px;line-height:1.65;color:#e4e9e6}.fa-popup-kicker,.fa-panel-kicker{margin:0 0 8px;color:#c89a43;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.fa-hotel-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:170px;border:1px solid rgba(200,154,67,.55);border-radius:18px;background:rgba(255,255,255,.06);text-align:center}.fa-hotel-badge span{font-size:44px}.fa-hotel-badge strong{margin-top:10px;font:700 24px Georgia,serif}.fa-hotel-badge small{color:#d9c9a6}.fa-flow-tabs{display:flex;gap:0;border-bottom:1px solid #d8ccb3;background:#fff;padding:0 34px}.fa-flow-tab{min-height:64px;padding:0 25px;border:0;border-bottom:4px solid transparent;background:transparent;color:#5e5548;font-weight:850;cursor:pointer}.fa-flow-tab:hover,.fa-flow-tab.is-active{color:#163e30;border-bottom-color:#c79a42;background:#fbf8f1}.fa-overview{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:26px;padding:36px 42px}.fa-overview-copy h4,.fa-flow-panel h4,.fa-quote-contact h4,.fa-quote-services h4{margin:0 0 20px;font:700 clamp(25px,3vw,36px)/1.15 Georgia,serif;color:#1e2f28}.fa-table-check{display:inline-grid;width:23px;height:23px;margin-right:10px;place-items:center;border-radius:50%;background:#e6f2eb;color:#286247;font-weight:900}.fa-rate-card,.fa-flow-panel,.fa-quote-contact,.fa-quote-services{border:1px solid #dfd2b5;border-radius:16px;background:#fff;padding:26px;box-shadow:0 8px 24px rgba(45,32,13,.07)}.fa-rate-card{align-self:start;background:linear-gradient(180deg,#fffdf8,#fff)}.fa-rate-card>span{color:#826425;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.08em}.fa-rate-card>strong{display:block;margin:8px 0 12px;font:700 28px Georgia,serif}.fa-rate-card p{color:#6a6154;line-height:1.55}.fa-secure-button,.fa-outline-button{display:block;width:100%;min-height:52px;margin-top:13px;padding:13px 18px;border-radius:10px;font:850 15px inherit;cursor:pointer}.fa-secure-button{border:1px solid #c69a43;background:#131715;color:#fff}.fa-secure-button:hover{background:#234a3b}.fa-outline-button{border:1px solid #173f31;background:#fff;color:#173f31}.fa-popup-notes{margin:0 42px 34px;padding:15px 18px;border-left:4px solid #c79a42;background:#fff;color:#645b4e;line-height:1.55}.fa-mini-head{padding:42px 44px 30px;background:#152d24;color:#fff}.fa-hotel-flow{padding:28px 38px 38px}.fa-booking-layout,.fa-quote-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.75fr);gap:24px}.fa-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fa-contact-grid label{display:flex;flex-direction:column;gap:7px;color:#3b342b;font-size:13px;font-weight:850}.fa-contact-grid label span{font-weight:500;color:#82786a}.fa-contact-grid input,.fa-contact-grid select,.fa-contact-grid textarea{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid #d7ccb5;border-radius:9px;background:#fff;font:inherit}.fa-field-full{grid-column:1/-1}.fa-plan-list{display:grid;gap:11px}.fa-plan-choice{cursor:pointer}.fa-plan-choice input{position:absolute;opacity:0}.fa-plan-choice span{display:flex;justify-content:space-between;gap:15px;padding:15px;border:1px solid #dbcfb5;border-radius:11px;background:#fff}.fa-plan-choice input:checked+span{border-color:#c59a43;background:#fff8e9;box-shadow:0 0 0 2px rgba(197,154,67,.18)}.fa-plan-choice strong,.fa-plan-choice small{display:block}.fa-plan-choice small{color:#806225;font-weight:800}.fa-choice-total{margin-top:18px;padding:17px;border-radius:12px;background:#121514;color:#fff}.fa-choice-total span{display:block;color:#d7c9ad;font-size:12px}.fa-choice-total strong{display:block;margin-top:5px;color:#e0b95e;font:700 20px Georgia,serif}.fa-plan-panel small,.fa-quote-services small{display:block;margin-top:10px;color:#756b5d;text-align:center;line-height:1.45}.fa-consent{display:block;margin-top:19px;color:#6c6254;font-size:13px}.fa-quote-summary{display:grid;gap:12px;margin:22px 0}.fa-quote-summary>div{padding:15px;border-radius:11px;background:#171a18;color:#fff}.fa-quote-summary span{display:block;color:#cbbd9f;font-size:11px;text-transform:uppercase}.fa-quote-summary strong{display:block;margin-top:4px;color:#e3bd63;font-size:19px}.fa-flow-message{min-height:22px;margin:16px 0 0;color:#9d3e31;font-weight:800}.fa-quote-thankyou{display:grid;min-height:620px;place-items:center;align-content:center;padding:50px;text-align:center;background:#f8f4eb}.fa-quote-thankyou h3{max-width:720px;margin:8px 0 12px!important;font:700 clamp(35px,5vw,56px)/1.08 Georgia,serif!important}.fa-quote-thankyou p{max-width:620px;color:#5d5549;font-size:17px}.fa-reference{margin:18px 0;padding:14px 20px;border:1px solid #dfd1b2;border-radius:10px;background:#fff}.fa-quote-thankyou .fa-secure-button{width:auto;min-width:220px}.fa-modal-dialog{background:#f8f4eb!important}
@media(max-width:800px){.fa-hotel-top{grid-template-columns:1fr;padding:38px 22px}.fa-hotel-badge{display:none}.fa-flow-tabs{padding:0;overflow:auto}.fa-flow-tab{min-width:max-content;padding:0 18px}.fa-overview,.fa-booking-layout,.fa-quote-layout{grid-template-columns:1fr}.fa-overview{padding:25px 18px}.fa-popup-notes{margin:0 18px 25px}.fa-mini-head{padding:38px 20px 25px}.fa-hotel-flow{padding:22px 16px 28px}.fa-contact-grid{grid-template-columns:1fr}.fa-field-full{grid-column:auto}.fa-quote-thankyou{padding:40px 18px}}
