/* Pasadena civic modernism — visual layer only */
:root{--ink:#10233f;--blue:#07336f;--civic:#0b63b6;--gold:#f2c14e;--coral:#d9363e;--rose:#d9363e;--leaf:#78a83d;--mist:#f3f6fa;--line:#c8d5e3;--muted:#53657a;--deep:#062f6b;--shadow:0 20px 55px rgba(7,51,111,.14)}
body{font-family:"Avenir Next",Avenir,"Century Gothic","Segoe UI",sans-serif;background:var(--mist);color:var(--ink)}
header{position:absolute;background:var(--blue);border:0;color:#fff;padding-top:12px;box-shadow:0 5px 0 rgba(217,54,62,.88)}
.nav{height:80px}.brand{font-weight:900;letter-spacing:.04em}.brand small{color:#d8e7f8;letter-spacing:.17em}.mark{border:2px solid #fff;border-radius:2px;background:linear-gradient(135deg,var(--rose) 0 67%,var(--gold) 68% 79%,var(--leaf) 80%);color:#fff;box-shadow:none;font-size:1.5rem;line-height:1}
.demo{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.45);box-shadow:none}
.hero{min-height:690px;padding:145px 0 90px;background:#e7eef7;color:var(--ink);align-items:center}
.hero-bg{left:auto;right:0;width:49%;height:100%;object-position:51% center;filter:saturate(.88) contrast(1.04)}
.hero:before{background:linear-gradient(90deg,#e7eef7 0%,#e7eef7 48%,rgba(231,238,247,.2) 64%,rgba(7,51,111,.14) 100%)}
.hero:after{height:42px;background:linear-gradient(135deg,transparent 31%,var(--mist) 32%)}
.hero-copy{max-width:620px}.hero .kicker{display:inline-flex;background:var(--blue);color:#fff;padding:8px 12px;border-radius:2px;letter-spacing:.2em}.hero .kicker:before{display:none}
h1{font-family:"Arial Black","Avenir Next",sans-serif;font-size:clamp(3.3rem,6.6vw,6.1rem);line-height:.88;letter-spacing:-.065em;text-transform:uppercase;max-width:680px;margin:25px 0 24px}
.hero p{color:#263b50;font-size:1.15rem;max-width:580px}.ask{border-radius:2px;padding:5px;box-shadow:8px 8px 0 var(--ink)}
.ask input{font-size:1rem}.ask button,.compose button{border-radius:0;background:var(--rose);color:#fff;text-transform:uppercase;letter-spacing:.05em}
.trust{color:#384f65;font-weight:650}
.services{border:1px solid var(--line);border-radius:0;margin-top:-28px;padding:36px;box-shadow:14px 14px 0 rgba(23,78,166,.13)}
.services-top h2,.section-head h2{font-family:"Arial Black","Avenir Next",sans-serif;text-transform:uppercase;letter-spacing:-.035em}
.services-top .kicker,.section-head .kicker{font-weight:900}.service{border-radius:0;border:0;border-top:5px solid var(--blue);background:#f9fbfd;box-shadow:none;padding:20px 18px;transition:transform .18s,background .18s}
.service:nth-child(3n+2){border-color:var(--coral)}.service:nth-child(3n){border-color:var(--gold)}.service:hover{transform:translateY(-4px);background:#fff}.service .icon{border-radius:50%;background:#e6effa;color:var(--blue)}
.chat{margin-top:64px;border-radius:0;border:1px solid #274763;box-shadow:12px 12px 0 rgba(8,126,139,.16)}
.chat-head{border-radius:0;background:var(--blue);border-bottom:5px solid var(--rose)}.avatar{border-radius:2px;background:linear-gradient(135deg,var(--rose) 0 67%,var(--gold) 68% 79%,var(--leaf) 80%);color:#fff}
.status{background:#223c60}.log{background:linear-gradient(90deg,#f8fafc,#eef5f8)}.msg{border-radius:0}.msg.bot{border-left:5px solid var(--civic)}.msg.user{background:var(--blue);border-radius:0}.resource{border-radius:0;border-left:4px solid var(--coral);background:#fff}
.resource.has-image{display:grid;grid-template-columns:132px 1fr;gap:0;padding:0;overflow:hidden;border:1px solid var(--line);border-left:5px solid var(--rose)}
.resource.has-image img{width:132px;height:100%;min-height:112px;object-fit:cover}
.resource-copy{padding:15px 17px;align-self:center}.resource-copy strong{display:block;color:var(--blue);font-size:1rem;margin-bottom:4px}.resource-copy span{display:block;line-height:1.45}.resource-copy a{display:inline-block;margin-top:9px}
.answer-image{margin:15px 0 4px;border:1px solid var(--line);background:#fff}.answer-image img{display:block;width:100%;height:190px;object-fit:cover}.answer-image span{display:block;padding:9px 12px;color:var(--muted);font-size:.78rem}
.quick button{border-radius:2px;border-color:#6d89a7;background:#fff;color:var(--blue)}.quick button:hover{background:var(--blue);color:#fff}.compose input{border-radius:0}.paths{padding-top:104px}.cards{grid-template-columns:1fr 1fr;grid-template-rows:auto auto}.card{border-radius:0;min-height:340px}.card:first-child{grid-row:span 2;min-height:696px}.card:after{background:linear-gradient(180deg,rgba(20,33,61,.05),rgba(20,33,61,.96))}.card h3{font-family:"Arial Black","Avenir Next",sans-serif;text-transform:uppercase;font-size:1.65rem}.card button{border-radius:0;background:var(--gold);color:var(--ink);text-transform:uppercase;letter-spacing:.04em}.tag{color:#ffd166}
.cta{border-radius:0;background:var(--blue);border-top:7px solid var(--rose);box-shadow:12px 12px 0 #9fb5cf}.cta h2{font-family:"Arial Black","Avenir Next",sans-serif;text-transform:uppercase;letter-spacing:-.04em}.cta p{color:#fff}.cta button{border-radius:0;background:var(--rose);color:#fff;text-transform:uppercase}
.foot{background:var(--ink);color:#cbd8e6;border:0}.foot strong{color:#fff}
@media(max-width:900px){.hero{min-height:640px}.hero-bg{width:46%;opacity:.6}.hero:before{background:linear-gradient(90deg,#e7eef7 0%,#e7eef7 58%,rgba(231,238,247,.65) 100%)}.hero-copy{max-width:66%}.cards{grid-template-columns:1fr}.card:first-child{grid-row:auto;min-height:360px}}
@media(max-width:560px){header{position:absolute}.hero{padding:calc(63vw + 85px) 0 72px;background:#e7eef7}.hero-bg{top:0;left:0;width:100%;height:calc(63vw + 65px);opacity:1;object-position:center 54%}.hero:before{background:linear-gradient(180deg,rgba(7,51,111,.02) 24%,#e7eef7 calc(63vw + 20px),#e7eef7 100%)}.hero-copy{max-width:none}.hero .kicker{background:var(--blue);color:#fff}h1{font-size:clamp(2.65rem,13.4vw,3.85rem);line-height:.91}.services{margin-top:-20px;padding:24px 18px;box-shadow:7px 7px 0 rgba(7,51,111,.14)}.grid{grid-template-columns:1fr}.service{min-height:auto}.chat{margin-top:46px;box-shadow:7px 7px 0 rgba(7,51,111,.16)}.resource.has-image{grid-template-columns:92px 1fr}.resource.has-image img{width:92px;min-height:132px}.resource-copy{padding:12px}.answer-image img{height:145px}.cards{display:block}.card,.card:first-child{min-height:350px;margin-bottom:16px}.cta{box-shadow:7px 7px 0 #9fb5cf}}
