/* Final Expense Insurance demo — v0.1.1 mobile-first presentation cleanup */
body.dbpins-insurance-page.dbp-standalone-page{
  background:#071a2a!important;
  background-image:radial-gradient(circle at 15% 10%,rgba(211,174,91,.18),transparent 28%),linear-gradient(155deg,#0a2237 0%,#071522 65%,#020b12 100%)!important;
}
#dbp-app.dbpins-insurance-demo{
  --ins-navy:#0b2a43;--ins-navy2:#123d60;--ins-gold:#d0aa58;--ins-gold2:#f0d493;--ins-cream:#fbf7ee;--ins-ink:#162a39;--ins-soft:#edf4f8;--ins-line:#cedce6;
  --accent:#123d60;--accent-strong:#0b2a43;--accent-line:#82a6bb;--accent-text:#fff;
  container-type:inline-size;
}
#dbp-app.dbpins-insurance-demo .dbp-card{
  background:linear-gradient(180deg,#fff 0%,#fbfcfd 58%,#f4f7f9 100%)!important;
  overflow:hidden;
  padding:16px!important;
}
#dbp-app.dbpins-insurance-demo .dbp-card:before{display:none!important}

/* Demo navigation */
.dbpins-demo-nav{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:0 0 8px}
.dbpins-demo-nav a,.dbpins-demo-nav span{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border-radius:999px;border:1px solid #cedce6;font-size:9px;font-weight:900;text-decoration:none;letter-spacing:.02em;white-space:nowrap}
.dbpins-demo-nav span{background:var(--ins-navy);color:#fff;border-color:var(--ins-navy)}
.dbpins-demo-nav a{background:#fff;color:var(--ins-navy)}

/* Hero — intentionally single-column because the app itself is phone-width */
.dbpins-protection-hero{
  position:relative;
  margin:14px 0 0;
  padding:28px 22px 26px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:10px;
  background:linear-gradient(145deg,#0b2a43 0%,#123d60 62%,#1d5274 100%);
  color:#fff;
  border-radius:24px;
  overflow:hidden;
  min-height:0;
}
.dbpins-protection-hero:before,.dbpins-protection-hero:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}
.dbpins-protection-hero:before{width:280px;height:280px;right:-150px;top:-150px}
.dbpins-protection-hero:after{width:190px;height:190px;left:-110px;bottom:-120px}
.dbpins-hero-glow{position:absolute;width:190px;height:190px;left:50%;top:10px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(240,212,147,.22),rgba(240,212,147,0) 68%);pointer-events:none}
.dbpins-shield-wrap{position:relative;z-index:2;display:grid;place-items:center;width:118px;height:132px;margin:0 auto}
.dbpins-shield-wrap svg{width:104px;max-width:100%;filter:drop-shadow(0 12px 18px rgba(0,0,0,.20))}
.dbpins-shield-wrap path{fill:#d0aa58;stroke:#f5dfaa;stroke-width:3}.dbpins-shield-wrap path.inner{fill:#0f3451;stroke:#e4c878;stroke-width:2}.dbpins-shield-wrap path.heart{fill:#f8e9c0;stroke:none}
.dbpins-hero-copy{position:relative;z-index:2;width:100%;max-width:340px;margin:0 auto}
.dbpins-demo-badge{display:inline-flex;align-items:center;justify-content:center;max-width:100%;padding:7px 11px;border:1px solid rgba(240,212,147,.48);border-radius:999px;color:#f4dca4;background:rgba(7,24,39,.30);font-size:8px;font-weight:900;letter-spacing:.08em;line-height:1.35;text-align:center}
.dbpins-hero-copy h1{margin:12px 0 7px!important;color:#fff!important;font-size:32px!important;line-height:1!important;letter-spacing:-.02em!important;text-align:center!important}
.dbpins-protection-line{color:#efd18d;font-size:9px;font-weight:900;letter-spacing:.09em;line-height:1.4;text-align:center}
.dbpins-hero-copy p{max-width:320px;margin:12px auto 0;color:#d8e6ef;font-size:12px;line-height:1.55;text-align:center}

/* Primary actions */
.dbpins-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 8px}
.dbpins-action{appearance:none;border:1px solid #d6e2e9;background:#fff;color:var(--ins-navy);min-height:84px;border-radius:16px;padding:11px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;text-decoration:none;cursor:pointer;box-shadow:0 7px 18px rgba(14,43,64,.06);font-family:inherit}
.dbpins-action span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eaf1f6;color:var(--ins-navy);font-size:15px;font-weight:900}
.dbpins-action b{font-size:10px;line-height:1.25}.dbpins-action small{font-size:8px;color:#7d8992;line-height:1.2}
.dbpins-action-voice{grid-column:1/-1;min-height:68px;flex-direction:row;gap:10px;background:linear-gradient(135deg,#f8edd1,#fff7e5);border-color:#e5ca8b}
.dbpins-action-voice span{background:#d0aa58;color:#fff;flex:0 0 32px}
.dbpins-action-voice b{font-size:11px}.dbpins-action-voice small{font-size:9px}
.dbpins-voice-status{margin:8px 0 16px;padding:10px 12px;border-radius:12px;background:#fff7e3;border:1px solid #ecd8aa;color:#69552c;font-size:10px;line-height:1.45;text-align:center}

/* Shared section cleanup */
#dbp-app.dbpins-insurance-demo .dbp-section{border-color:#dbe5eb;margin-top:24px!important;padding-top:22px!important}
#dbp-app.dbpins-insurance-demo .dbp-section::before{width:62px;height:3px;background:linear-gradient(90deg,var(--ins-navy2),#55b9d3,var(--ins-gold))}
#dbp-app.dbpins-insurance-demo .dbp-kicker{font-size:8px!important;line-height:1.4!important;letter-spacing:.16em!important;color:#315d79!important}
#dbp-app.dbpins-insurance-demo .dbp-section h2{margin:8px 0 10px!important;font-size:24px!important;line-height:1.05!important;letter-spacing:-.02em!important;color:var(--ins-ink)!important}
#dbp-app.dbpins-insurance-demo .dbp-copy{font-size:11px!important;line-height:1.55!important;color:#60717d!important}

/* Expense cards */
.dbpins-expense-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.dbpins-expense-grid article{position:relative;padding:14px;border:1px solid #dbe4e9;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fafb);min-height:0}
.dbpins-expense-icon{display:grid;place-items:center;width:38px;height:38px;margin-bottom:10px;border-radius:13px;background:#edf3f7;color:var(--ins-navy2);font-size:18px;font-weight:900}
.dbpins-expense-grid h3{margin:0 0 6px;color:var(--ins-ink);font-size:13px;line-height:1.2}.dbpins-expense-grid p{margin:0;color:#61717c;font-size:10px;line-height:1.5}

/* Four-step path */
.dbpins-step-track{display:grid;grid-template-columns:1fr;gap:8px;margin-top:15px;background:transparent;border:0;border-radius:0;overflow:visible}
.dbpins-step-track article{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;padding:13px;border:1px solid #dfe7eb!important;border-radius:14px;background:#fff}
.dbpins-step-track b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--ins-navy);color:#fff;font-size:11px}
.dbpins-step-track h3{margin:1px 0 5px;color:var(--ins-ink);font-size:12px;line-height:1.2}.dbpins-step-track p{margin:0;color:#677681;font-size:10px;line-height:1.45}

/* Coverage questions */
.dbpins-coverage-card{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;align-items:start;background:linear-gradient(135deg,#fbf7ee,#fff)!important;border-left:4px solid var(--ins-gold)!important;padding-left:16px!important}
.dbpins-coverage-copy p{margin:0;color:#60717d;font-size:11px;line-height:1.55}
.dbpins-question-list{display:grid;gap:8px}.dbpins-question-list span{padding:11px 12px;border-radius:11px;background:#fff;border:1px solid #e4dccb;color:#465663;font-size:10px;font-weight:750;line-height:1.4}

/* Grace */
.dbpins-grace-section{background:linear-gradient(180deg,#f7fafc,#fff)!important}
.dbpins-grace-intro{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;margin:12px 0;padding:13px;border:1px solid #d7e4eb;border-radius:16px;background:#fff}
.dbpins-grace-avatar{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:linear-gradient(145deg,#d0aa58,#efd18b);color:#0b2a43;font-size:22px;font-weight:950;box-shadow:inset 0 0 0 4px rgba(255,255,255,.58)}
.dbpins-grace-intro p{margin:0;color:#4d606d;font-size:10px;line-height:1.5}
.dbpins-prompt-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 12px}
.dbpins-prompt-chips button{appearance:none;border:1px solid #d4e0e7;background:#fff;color:var(--ins-navy);border-radius:999px;padding:7px 9px;font-size:8px;font-weight:850;line-height:1.25;cursor:pointer;font-family:inherit}.dbpins-prompt-chips button:hover{background:#edf4f8}
#dbp-app.dbpins-insurance-demo #dbpins-chat-log{margin:0 0 8px}
#dbp-app.dbpins-insurance-demo .dbp-chat-form{display:grid;gap:8px;margin-top:8px}
#dbp-app.dbpins-insurance-demo .dbp-chat-form label{display:block;color:#344b5c;font-size:10px;font-weight:850;line-height:1.35}
#dbp-app.dbpins-insurance-demo .dbp-chat-form textarea{width:100%;min-height:74px;resize:vertical;padding:11px 12px;border:1px solid #cbd9e1;border-radius:12px;background:#fff;color:#243845;font:inherit;font-size:12px;line-height:1.45}
#dbp-app.dbpins-insurance-demo .dbp-chat-form button{width:100%;min-height:44px;border:0;border-radius:12px;background:linear-gradient(135deg,#0b2a43,#176b91);color:#fff;font-family:inherit;font-size:11px;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(18,58,94,.16)}

/* Contact form */
.dbpins-contact-panel{border-top:5px solid var(--ins-gold)!important;padding-top:18px!important}
.dbpins-contact-form{display:block;width:100%}
.dbpins-contact-form label{display:block;margin:10px 0 5px;font-size:9px;font-weight:850;line-height:1.3;color:#425766}.dbpins-contact-form label span{font-weight:500}
.dbpins-contact-form input,.dbpins-contact-form textarea,.dbpins-contact-form select{display:block;width:100%;min-width:0;border:1px solid #cbd9e1!important;border-radius:10px!important;background:#fff!important;color:#243845!important;padding:10px 11px!important;font-family:inherit!important;font-size:12px!important;line-height:1.35!important;box-shadow:none!important}
.dbpins-contact-form input,.dbpins-contact-form select{min-height:42px}.dbpins-contact-form textarea{min-height:105px;resize:vertical}
.dbpins-form-grid{display:grid;grid-template-columns:1fr;gap:0}
.dbpins-contact-form button{display:block;width:100%;min-height:46px;margin-top:12px!important;border:0!important;border-radius:12px!important;background:linear-gradient(135deg,#0b2a43,#176b91)!important;color:#fff!important;font-family:inherit!important;font-size:11px!important;font-weight:900!important;cursor:pointer;box-shadow:0 8px 18px rgba(18,58,94,.16)}

/* Proof strip */
.dbpins-proof-strip{display:grid;grid-template-columns:1fr;gap:8px;margin:16px 0 6px}.dbpins-proof-strip>div{padding:13px;border-radius:13px;background:#0c2d46;color:#fff;text-align:center}.dbpins-proof-strip strong,.dbpins-proof-strip span{display:block}.dbpins-proof-strip strong{font-size:8px;letter-spacing:.06em}.dbpins-proof-strip span{margin-top:4px;color:#d4e4ee;font-size:8px}
#dbp-app.dbpins-insurance-demo .dbp-footer{font-size:9px!important;line-height:1.45!important}

/* Dark mode */
#dbp-app.dbpins-insurance-demo.dbp-dark .dbp-card{background:linear-gradient(180deg,#071a2a,#0a2337)!important}
.dbpins-insurance-demo.dbp-dark .dbp-section{background:#0b2539!important;border-color:#29465a!important}
.dbpins-insurance-demo.dbp-dark .dbpins-expense-grid article,.dbpins-insurance-demo.dbp-dark .dbpins-step-track article,.dbpins-insurance-demo.dbp-dark .dbpins-grace-intro,.dbpins-insurance-demo.dbp-dark .dbpins-question-list span{background:#0f2c42;border-color:#304b5e;color:#e7f0f5}
.dbpins-insurance-demo.dbp-dark .dbpins-expense-grid h3,.dbpins-insurance-demo.dbp-dark .dbpins-step-track h3,.dbpins-insurance-demo.dbp-dark .dbpins-grace-section h2,.dbpins-insurance-demo.dbp-dark .dbpins-expense-section h2,.dbpins-insurance-demo.dbp-dark .dbpins-path-section h2,.dbpins-insurance-demo.dbp-dark .dbpins-coverage-card h2,.dbpins-insurance-demo.dbp-dark .dbpins-contact-panel h2{color:#f7fbfd!important}
.dbpins-insurance-demo.dbp-dark .dbpins-expense-grid p,.dbpins-insurance-demo.dbp-dark .dbpins-step-track p,.dbpins-insurance-demo.dbp-dark .dbpins-grace-intro p{color:#c6d7e2}.dbpins-insurance-demo.dbp-dark .dbpins-coverage-card{background:linear-gradient(135deg,#162d3c,#0d2638)!important}

/* App-width responsive rules. These work even when the browser viewport is wide but the app is embedded/narrow. */
@container (max-width:360px){
  #dbp-app.dbpins-insurance-demo .dbp-card{padding:12px!important;border-radius:24px}
  .dbpins-demo-nav a,.dbpins-demo-nav span{font-size:8px;padding:6px 9px}
  .dbpins-protection-hero{padding:23px 14px 22px;border-radius:20px}
  .dbpins-shield-wrap{width:102px;height:112px}.dbpins-shield-wrap svg{width:88px}
  .dbpins-demo-badge{font-size:7px;padding:6px 9px}
  .dbpins-hero-copy h1{font-size:28px!important}
  .dbpins-protection-line{font-size:8px}.dbpins-hero-copy p{font-size:11px}
  .dbpins-actions{gap:8px}.dbpins-action{min-height:76px;padding:9px 6px}.dbpins-action b{font-size:9px}
  .dbpins-expense-grid{grid-template-columns:1fr}
  .dbpins-grace-intro{grid-template-columns:46px minmax(0,1fr);gap:9px;padding:11px}.dbpins-grace-avatar{width:46px;height:46px;font-size:19px}.dbpins-grace-intro p{font-size:9px}
  #dbp-app.dbpins-insurance-demo .dbp-section h2{font-size:22px!important}
}

/* Fallback for browsers without container-query support */
@media(max-width:520px){
  .dbpins-protection-hero{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;grid-template-columns:none!important;min-height:0!important}
  .dbpins-shield-wrap{margin:0 auto!important}.dbpins-hero-copy{text-align:center!important}.dbpins-hero-copy h1,.dbpins-hero-copy p,.dbpins-protection-line{text-align:center!important}
  .dbpins-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dbpins-action-voice{grid-column:1/-1!important}
  .dbpins-expense-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dbpins-step-track{grid-template-columns:1fr!important}.dbpins-coverage-card{grid-template-columns:1fr!important}.dbpins-form-grid{grid-template-columns:1fr!important}.dbpins-proof-strip{grid-template-columns:1fr!important}
}
@media(max-width:360px){.dbpins-expense-grid{grid-template-columns:1fr!important}}

/* WebX United parent brand: intentionally secondary, small but noticeable. */
#dbp-app.dbpins-insurance-demo .webxu-powered{display:flex;align-items:center;justify-content:center;gap:7px;width:max-content;max-width:92%;margin:12px auto 2px;padding:6px 10px;border:1px solid #d9e3e8;border-radius:999px;background:rgba(255,255,255,.94);text-decoration:none!important;box-shadow:0 5px 14px rgba(11,42,67,.07)}
#dbp-app.dbpins-insurance-demo .webxu-powered span{font-size:8px;line-height:1;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#6c7b85;white-space:nowrap}
#dbp-app.dbpins-insurance-demo .webxu-powered img{display:block;width:108px;height:auto;max-height:31px;object-fit:contain}
