:root{
  --primary:#1E345E;
  --secondary:#ED6D4F;
  --bg:#f8fafc;
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --appH: 100dvh;
  --wizardGapDesktop: 10px;
}
/* Reset theme margins — pages Confia */
.page-id-5 .wp-block-post-title,
.page-id-6 .wp-block-post-title,
.page-id-7 .wp-block-post-title{display:none !important;}
.page-id-5 .wp-block-post-content,
.page-id-5 .entry-content,
.page-id-5 main,
.page-id-5 .wp-site-blocks,
.page-id-6 .wp-block-post-content,
.page-id-6 .entry-content,
.page-id-6 main,
.page-id-6 .wp-site-blocks,
.page-id-7 .wp-block-post-content,
.page-id-7 .entry-content,
.page-id-7 main,
.page-id-7 .wp-site-blocks{padding-top:0 !important;padding-bottom:0 !important;margin-top:0 !important;margin-bottom:0 !important;}
.page-id-5 .wp-site-blocks > *,
.page-id-6 .wp-site-blocks > *,
.page-id-7 .wp-site-blocks > *{margin-block-start:0 !important;}
.page-id-5 .has-global-padding,
.page-id-6 .has-global-padding,
.page-id-7 .has-global-padding{padding-left:10px !important;padding-right:10px !important;}
.page-id-5 header,.page-id-5 .wp-block-template-part:first-child{margin-bottom:0 !important;}
.page-id-5 footer,.page-id-5 .wp-block-template-part:last-child{margin-top:0 !important;}
@media (max-width:768px){
.page-id-5,.page-id-6,.page-id-7{overflow-x:hidden !important;--wp--style--root--padding-left:0px !important;--wp--style--root--padding-right:0px !important;--wp--preset--spacing--50:0px !important;--wp--preset--spacing--60:0px !important;}
.page-id-5 *,.page-id-6 *,.page-id-7 *{box-sizing:border-box !important;}
.page-id-5 main,.page-id-6 main,.page-id-7 main{margin-top:0 !important;padding:0 !important;max-width:100vw !important;overflow-x:hidden !important;}
.page-id-5 main .wp-block-group,.page-id-6 main .wp-block-group,.page-id-7 main .wp-block-group{padding-left:0 !important;padding-right:0 !important;}
.page-id-5 .entry-content,.page-id-6 .entry-content,.page-id-7 .entry-content{padding-left:0 !important;padding-right:0 !important;}
#diag-wizard{margin:4px 8px 30px 8px !important;width:auto !important;max-width:none !important;}
}
#diag-wizard{max-width:660px;margin:0 auto;background:#fff;border-radius:24px;box-shadow:0 25px 50px -12px rgba(30,52,94,.2);font-family:system-ui,sans-serif;border:1px solid #e2e8f0;overflow:hidden;display:flex;flex-direction:column;box-sizing:border-box}
@media (min-width:769px){#diag-wizard{height:calc(100vh - 80px);max-height:calc(100vh - 80px);min-height:400px;}}
@media (max-width:768px){#diag-wizard{height:auto;max-height:none;min-height:0;border-radius:16px;box-shadow:0 12px 30px rgba(2,6,23,.12);overflow:visible;}}
@media (max-width:360px){#diag-wizard{border-radius:14px}.headline h1{font-size:13px}.headline p{font-size:10px}.confia-trust{font-size:9px;padding:3px 8px}}
#diag-wizard .step{flex:1 1 auto;overflow:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
#diag-wizard .step{display:none;padding:26px;animation:fade .3s}#diag-wizard .step.active{display:block;overflow:auto}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1}}
@media (max-width:768px){#diag-wizard .step{overflow:visible}.step.active{overflow:visible}.step{padding:16px}}
.wizard-header{padding:18px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e7eb}
.headline{padding:16px 24px 6px;background:#fff}.headline h1{margin:0;font-size:18px;color:var(--primary)}.headline p{margin:6px 0 0;color:#475569;font-size:13px}
.pg-container{height:6px;background:#e5e7eb}.pg-bar{height:100%;width:10%;background:var(--primary);transition:.3s}
.sticky-recap{background:#f8fafc;padding:10px 15px;font-size:13px;color:#475569;border-bottom:1px solid #e5e7eb}
@media (max-width:768px){.headline{padding:10px 14px 4px}.headline h1{font-size:16px;line-height:1.3;word-wrap:break-word;overflow-wrap:break-word}.headline p{font-size:12px;margin-top:3px}.wizard-header{padding:12px 14px}.sticky-recap{padding:9px 12px;font-size:12px}.confia-trust{font-size:11px;padding:5px 12px}}
#diag-wizard h2{text-align:center;color:var(--primary);margin-bottom:14px}
.helper{font-size:12px;color:#64748b;text-align:center;margin-top:-6px;margin-bottom:14px}.helper strong{color:#0f172a}
.s1-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:768px){.s1-grid{grid-template-columns:1fr;gap:10px}}
.opt-grid{display:grid;gap:12px}
.btn-opt{background:#fff;border:2px solid #e5e7eb;padding:18px;border-radius:16px;cursor:pointer;display:flex;gap:12px;align-items:center;font-weight:600;color:var(--primary);transition:.25s;position:relative;-webkit-tap-highlight-color:transparent;font-family:inherit;font-size:15px}
@media (hover:hover){.btn-opt:hover{border-color:var(--secondary);background:#fffaf9;color:var(--primary)}}
.btn-opt.selected{border-color:var(--primary);background:#eef2f8;color:var(--primary)}
.btn-opt:active,.btn-opt:focus{color:var(--primary);outline:none}
.btn-opt .tick{position:absolute;right:14px;top:50%;transform:translateY(-50%) scale(.8);opacity:0;transition:.2s;color:var(--primary);font-weight:900}
.btn-opt.selected .tick{opacity:1;transform:translateY(-50%) scale(1)}
.cta-main{background:var(--primary);color:#fff;border:none;padding:18px;width:100%;border-radius:14px;font-weight:700;cursor:pointer;margin-top:12px;font-family:inherit;font-size:15px;-webkit-tap-highlight-color:transparent}
@media (max-width:768px){.btn-opt{padding:16px;border-radius:14px}.cta-main{padding:16px;border-radius:14px}}
#diag-wizard input,#diag-wizard textarea{width:100%;padding:15px;border-radius:12px;border:2px solid #e5e7eb;margin-bottom:12px;font-size:15px;box-sizing:border-box;font-family:inherit}
#diag-wizard textarea{min-height:92px;resize:vertical}
@media (max-width:768px){#diag-wizard input,#diag-wizard textarea{padding:14px;border-radius:14px;font-size:15.5px}}
.res-box{background:#f8fafc;padding:15px;border-radius:14px;margin-bottom:15px;font-size:14px}
.diag-check{display:flex;align-items:center;gap:10px;background:#fff;padding:12px;border-radius:10px;border:1px solid #e5e7eb;margin-bottom:8px;font-size:14px}
.diag-check input{margin:0;accent-color:var(--primary);width:18px;height:18px;flex-shrink:0}
.diag-check label{cursor:pointer;flex:1}
.badge-offert{background:var(--secondary);color:#fff;padding:3px 8px;font-size:10px;font-weight:800;border-radius:20px;margin-left:auto}
.price-box{background:var(--secondary);padding:18px;border-radius:18px;text-align:center;margin:16px 0}
.price{font-size:32px;font-weight:900;color:#fff;transition:transform .25s}.price.bump{transform:scale(1.03)}
.subnote{font-size:12px;color:#475569;text-align:center;margin-top:6px}
.breakdown{font-size:12px;color:#475569;text-align:center;margin-top:8px;line-height:1.35}
.privacy-line{font-size:12px;color:#64748b;text-align:center;margin-top:10px}.privacy-line b{color:#0f172a}
.inline-msg{display:none;margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid #e5e7eb;background:#f8fafc;font-size:13px;color:#0f172a}
.inline-msg.show{display:block}.inline-msg.error{border-color:#fecaca;background:#fff1f2}.inline-msg.success{border-color:#bbf7d0;background:#f0fdf4}
.addr-wrap{position:relative}
.addr-suggest{position:absolute;left:0;right:0;top:100%;background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 12px 30px rgba(2,6,23,.12);overflow:hidden;z-index:50;display:none;margin-top:6px}
.addr-suggest button{width:100%;text-align:left;background:#fff;border:0;padding:12px;cursor:pointer;font-size:13px;color:#0f172a;font-family:inherit}
.addr-suggest button:hover{background:#f8fafc}
#s9{padding-bottom:26px}#s9.step{height:100%;overflow:hidden}#s9.step.active{overflow:hidden}
#s9 .s9-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px;align-items:start;height:100%;min-height:0}
#s9 .s9-left{display:flex;flex-direction:column;min-height:0}
#s9 #results{background:#f8fafc;padding:12px;border-radius:14px;border:1px solid #e5e7eb;display:grid;grid-template-columns:1fr 1fr;gap:10px;flex:1 1 auto;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}
#s9 #results .diag-check:first-child{grid-column:1 / -1}
#s9 .diag-check{margin:0;padding:7px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;font-size:13px;gap:7px}
#s9 .diag-check input{width:18px;height:18px}
#s9 .s9-right{position:sticky;top:10px;align-self:start}
#s9 .price-box{margin:0;padding:14px;border-radius:18px}
#s9 .price{font-size:30px;line-height:1.05}
#s9 .s9-cta{position:static;margin-top:10px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border:1px solid #e5e7eb;border-radius:16px;padding:10px;box-shadow:0 10px 25px rgba(2,6,23,.08)}
#s9 .s9-cta .cta-main{margin-top:0}
@media (max-width:768px){#s9.step,#s9.step.active{overflow:hidden}#s9 .s9-grid{display:flex;flex-direction:column;gap:10px;height:auto}#s9 #results{grid-template-columns:1fr 1fr;gap:8px;padding:10px;overflow:visible;max-height:none}#s9 #results .diag-check:first-child{grid-column:1 / -1}#s9 .diag-check{padding:6px;border-radius:12px;font-size:12.7px;line-height:1.2;min-height:44px}#s9 .diag-check input{width:16px;height:16px}#s9 .price-box{padding:12px;border-radius:16px}#s9 .price{font-size:26px}#s9 .s9-right{position:sticky;bottom:0;top:auto;z-index:20}#s9 .s9-cta{margin-top:8px;padding:10px;border-radius:16px}}
#s10{padding-bottom:18px}
#s10 .s10-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
#s10 .form-section{margin:0;padding:12px;border-radius:16px}
#s10 .form-section h3{margin:0 0 10px;font-size:13px;color:#0f172a}
#s10 input,#s10 textarea{padding:16px;font-size:15.5px;line-height:1.25;border-radius:14px;margin-bottom:12px}
#s10 input{min-height:52px}#s10 textarea{min-height:120px}
#s10 .s10-cta{grid-column:1 / -1;background:rgba(248,250,252,.92);border:1px solid #e5e7eb;border-radius:16px;padding:10px;margin-top:10px;box-shadow:0 10px 25px rgba(2,6,23,.08)}
#s10 .s10-cta .cta-main{margin-top:0}
@media (max-width:768px){
#s10{padding:12px 12px 0 12px;}
#s10 .s10-grid{grid-template-columns:1fr;gap:6px}
#s10 .form-section{padding:6px 0;border-radius:0}
#s10 .form-section h3{font-size:12px;margin-bottom:6px;}
#s10 input{min-height:42px;padding:10px 12px;margin-bottom:8px;font-size:14px;}
#s10 textarea{min-height:60px;padding:10px 12px;font-size:14px;}
#s10 .s10-cta{position:sticky;bottom:0;z-index:20;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);margin:0 -12px;padding:10px 12px;border-top:1px solid #e5e7eb;}
#s10 .s10-cta .cta-main{margin-top:0;padding:14px;}
}
.call-nudge{display:none;margin-top:10px;padding:10px 12px;border-radius:14px;border:1px solid #dbeafe;background:#eef2f8;font-size:13px;color:#0f172a;align-items:center;justify-content:center;gap:10px;flex-wrap:nowrap}
.call-nudge a{color:var(--primary);font-weight:900;text-decoration:none;border-bottom:1px dashed rgba(30,52,94,.35);white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.call-nudge a:hover{border-bottom-color:rgba(30,52,94,.9)}
.call-nudge.show{display:flex}
@media (min-width:769px){.call-nudge{display:none !important}}
@media (max-width:360px){.call-nudge{font-size:12px}.call-nudge a{font-size:12px}}
.nav-footer{padding:8px 18px;padding-bottom:calc(8px + var(--safe-bottom, 0px));background:#f8fafc;display:none;justify-content:space-between;border-top:1px solid #e5e7eb}
@media (min-width:769px){.nav-footer{padding:4px 18px;}}
.btn-back{background:none;border:none;color:#64748b;text-decoration:underline;cursor:pointer;font-family:inherit;font-size:14px}
.confia-loader{text-align:center;padding:60px 24px}
.confia-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}
@keyframes spin{to{transform:rotate(360deg)}}
/* Hide page titles on all Confia pages */
body:has(#diag-wizard) .wp-block-post-title,
body:has(#confia-booking) .wp-block-post-title,
body:has(#confia-devis-valide) .wp-block-post-title{display:none !important;}
body:has(#diag-wizard) .entry-title,
body:has(#confia-booking) .entry-title,
body:has(#confia-devis-valide) .entry-title{display:none !important;}
.confia-trust{display:flex;justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-size:11px;color:#64748b;background:#f8fafc;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}
.confia-trust strong{color:#1E345E}.confia-sep{color:#cbd5e1}
