/* Homepage only. Existing desktop/tablet rules remain authoritative above 600px. */
.mobile-home-only{display:none}
@media(max-width:600px){
 body.mobile-home{background:#f6f9fa;color:#162e39}
 .mobile-home .mobile-home-only{display:block}
 .mobile-home #mode-bar,.mobile-home .hero,.mobile-home .brand-logo{display:none}
 .mobile-home .site-header{height:76px;max-width:none;padding:0 max(24px,calc((100% - 432px)/2));gap:12px;flex-wrap:nowrap;position:sticky;top:0;z-index:40}
 .mobile-home .brand{min-width:0}
 .mobile-home .mobile-wordmark{color:#142e39;line-height:1;white-space:nowrap}
 .mobile-home .mobile-wordmark strong{display:block;font-size:17px;letter-spacing:-.5px;font-weight:800}
 .mobile-home .mobile-wordmark small{display:block;font-size:8px;letter-spacing:5px;color:#4c6976;margin-top:7px;font-weight:500}
 .mobile-home .mobile-header-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}
 .mobile-home .mobile-header-actions a,.mobile-home .mobile-menu-toggle{display:grid;place-items:center;width:44px;height:44px;border:1px solid #bfdce3;border-radius:50%;background:#e8f7fa;color:#006c7e;text-decoration:none;padding:0}
 .mobile-home .mobile-menu-toggle{border-color:#cbdce2;background:#ffffffb0}
 .mobile-home .nav{display:none;position:absolute;top:68px;left:20px;right:20px;width:auto;max-height:calc(100dvh - 90px);overflow:auto;padding:22px;border:1px solid #d1e1e7;border-radius:20px;background:#fff;box-shadow:0 22px 60px #173c4b20;white-space:normal}
 .mobile-home .site-header.mobile-menu-open .nav{display:block}
 .mobile-home .nav .mobile-menu-intro{font-size:22px;line-height:1.2;color:#183d4b;margin:0 0 16px;letter-spacing:-.6px}
 .mobile-home .nav>a{display:flex;min-height:48px;align-items:center;border:0;border-top:1px solid #e0e9ed;padding:12px 0;color:#183d4b;background:none;border-radius:0;font-size:15px;font-weight:500;box-shadow:none}
 .mobile-home .nav>a.nav-assistant,.mobile-home .nav>[data-book]{display:none}
 .mobile-home #main{background:radial-gradient(ellipse 400px 480px at 90% 0,#dff6fa,transparent)}
 .mobile-home .experience{display:block;max-width:480px;padding:0 26px 32px;margin:0 auto}
 .mobile-home .conversation{background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
 .mobile-home .conversation.is-empty .conversation-top,.mobile-home .conversation.is-empty #start>h2{display:none}
 .mobile-home .conversation.is-empty #start{padding:0}
 .mobile-home .mobile-welcome{position:relative;padding-top:clamp(175px,26svh,220px)}
 .mobile-home .mobile-portrait{position:absolute;top:-14px;left:50%;transform:translateX(-50%);width:440px;max-width:calc(100vw - 4px);height:350px;overflow:hidden;pointer-events:none;mask-image:linear-gradient(to bottom,#000 0%,#000 30%,rgba(0,0,0,.12) 62%,transparent 85%)}
 .mobile-home .mobile-portrait img{display:block;width:440px;max-width:none;height:auto;position:absolute;left:50%;transform:translateX(-50%)}
 .mobile-home .mobile-welcome-copy{position:relative;z-index:1}
 .mobile-home .mobile-hello{display:flex;gap:8px;align-items:center;color:#365b6a;font-size:13px;line-height:1.5;margin:0 0 13px}
 .mobile-home .mobile-hello::before{content:'';width:5px;height:5px;border-radius:50%;background:#00c9e8}
 .mobile-home .mobile-welcome h1{font-size:clamp(28px,8.5vw,36px);line-height:1.08;letter-spacing:-1.6px;color:#142e39;margin:0 0 17px;font-weight:650}
 .mobile-home .mobile-intro{font-size:15px;line-height:1.55;color:#506975;margin:0 0 25px}
 .mobile-home .composer,.mobile-home .conversation.is-empty .composer{padding:0;background:transparent}
 .mobile-home .composer-box{display:flex;flex-direction:row;gap:12px;align-items:center;padding:12px 12px 12px 17px;border:1.5px solid #008ba1;border-radius:20px;background:#fff;box-shadow:0 8px 30px #1c677b0c}
 .mobile-home .composer-box:focus-within{box-shadow:0 0 0 4px #00c9e81a}
 .mobile-home .composer textarea{width:100%;min-width:0;min-height:60px;font-size:16px;line-height:1.45;padding:8px 0;color:#183b49}
 .mobile-home .composer textarea::placeholder{color:#526b78}
 .mobile-home #send{width:44px;height:44px;min-height:44px;flex:none;border:0;border-radius:50%;padding:0;gap:0;background:#00c9e8;color:#07202a;font-size:0;box-shadow:none}
 .mobile-home #send span{font-size:25px;line-height:1}
 .mobile-home .composer-bottom{display:block;margin-top:12px;text-align:center}
 .mobile-home #privacy-note{font-size:10px;line-height:1.5;color:#526b78}
 .mobile-home #chat-status{display:block;font-size:12px;margin-top:8px}
 .mobile-home #chat-status:empty{display:none}
 .mobile-home .mobile-reassurance{margin-top:25px;text-align:center}
 .mobile-home .mobile-reassurance>p{font-size:11px;line-height:1.5;color:#3e5c6a;margin:0}
 .mobile-home .mobile-reassurance>p span{color:#007c90;margin-right:6px}
 .mobile-home .mobile-quick-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:10px;margin-top:18px}
 .mobile-home .mobile-quick-actions .button{min-height:46px;padding:10px 8px;font-size:12px;white-space:nowrap;background:#fff;border:1px solid #9cbcc9;color:#214d60;border-radius:12px}
 .mobile-home .mobile-quick-actions .primary{background:#e4f6f8;border-color:#69aebc;color:#005e70}
 .mobile-home .mobile-quick-actions:has([data-book][hidden]){grid-template-columns:1fr}
 .mobile-home .mobile-service-status{font-size:11px;color:#526b78;margin:12px 0 0;line-height:1.5}
 .mobile-home .conversation:not(.is-empty) .conversation-top{padding:12px 0 16px;background:transparent;border:0;gap:8px;flex-wrap:wrap}
 .mobile-home .conversation:not(.is-empty) .top-actions{width:auto;gap:6px;margin-left:auto}
 .mobile-home .conversation:not(.is-empty) .chat-cta,.mobile-home .mode-pill{display:none}
 .mobile-home .conversation:not(.is-empty) .messages{padding:0 0 18px;background:transparent;border:0;min-width:0}
 .mobile-home .conversation:not(.is-empty) .composer{padding-top:8px}
 .mobile-home .message.user{background:#e1f0f4;color:#1d4050}
 .mobile-home .message{overflow-wrap:anywhere}
 .mobile-home .promise-band{margin:0;padding:36px 26px 28px;background:#eaf3f5;border-top:1px solid #d7e5ea;color:#193c4b}
 .mobile-home .promise-band-inner{display:block;max-width:428px;margin:auto;padding:0;border:0}
 .mobile-home .promise-band .eyebrow{font-size:10px;letter-spacing:1.8px;color:#006c7e;margin-bottom:18px}
 .mobile-home .promise-band h2{font-size:26px;line-height:1.16;letter-spacing:-.8px;color:#173641}
 .mobile-home .promise-book{font-size:13px;padding:12px 18px;min-height:46px;margin-top:24px}
 .mobile-home .promise-band-points{margin-top:26px}
 .mobile-home .promise-band-points p{font-size:14px;line-height:1.75;color:#3f5d6a;margin-bottom:22px}
 .mobile-home .promise-band-points p:last-child{margin-bottom:0}
 .mobile-home .promise-band-points strong{color:#193c4b}
 .mobile-home .story-doorway{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px 14px;max-width:none;margin:0;padding:32px max(26px,calc((100% - 428px)/2));border:0;border-top:1px solid #d7e5ea;background:#fff;align-items:start}
 .mobile-home .story-doorway img{margin-top:2px;grid-row:1/3}
 .mobile-home .story-doorway p{font-size:14px;line-height:1.65;color:#4a6470}
 .mobile-home .story-doorway strong{font-size:16px;line-height:1.4;margin-bottom:8px;color:#18242b}
 .mobile-home .story-doorway>a{grid-column:2;margin:0;min-height:44px;padding:8px 0;font-size:14px;white-space:normal;color:#006b7a}
 .mobile-home .footer{display:block;margin:0;padding:24px max(26px,calc((100% - 428px)/2));background:#edf4f6;color:#496471;border-top:1px solid #d7e5ea;font-size:12px}
 .mobile-home .footer-links{gap:4px 18px;margin-top:14px}
 .mobile-home .footer a,.mobile-home .footer .footer-phone{display:inline-flex;align-items:center;min-height:44px;color:#24566a;font-size:12px}
 .mobile-home #human-dialog .eyebrow{color:#006b7a}
}
@media(max-width:340px){
 .mobile-home .site-header{height:68px;padding:0 18px;gap:6px}
 .mobile-home .mobile-wordmark strong{font-size:16px}
 .mobile-home .experience{padding-left:22px;padding-right:22px}
 .mobile-home .mobile-welcome{padding-top:205px}
 .mobile-home .mobile-welcome h1{font-size:28px;letter-spacing:-1.2px}
 .mobile-home .mobile-intro{font-size:14px}
 .mobile-home .promise-band{padding-left:22px;padding-right:22px}
 .mobile-home .promise-band h2{font-size:25px}
 .mobile-home .story-doorway,.mobile-home .footer{padding-left:22px;padding-right:22px}
}
