/* Local-mode company landing. Shared watercolor, type, header and footer stay intact. */
.company-page .company-eyebrow { margin:0 0 20px; color:#76818b; font-size:11px; line-height:1.5; font-weight:400; letter-spacing:.06em; }
.company-page .company-hero { min-height:780px; }
.company-page .company-hero .hero-copy { padding-right:43%; padding-top:95px; padding-bottom:40px; }
.company-page .company-hero h1 { font-size:clamp(2.35rem,4.4vw,4.15rem); line-height:1.06; letter-spacing:-.055em; white-space:normal; }
.company-page .company-value { display:grid; justify-items:start; }
.company-page .company-value .value-line { grid-area:1 / 1; margin:0; max-width:11.5em; transition:opacity .85s cubic-bezier(.2,.7,.2,1); }
.company-page .company-value .value-to { opacity:0; pointer-events:none; }
.company-page.is-value-transformed .company-value .value-from { opacity:0; pointer-events:none; }
.company-page.is-value-transformed .company-value .value-to { opacity:1; pointer-events:auto; }
.company-provider-marks { display:flex; align-items:center; gap:22px; margin:26px 0 28px; }
.company-provider-marks > span { display:flex; align-items:center; gap:9px; color:#48535e; font-size:14px; }
.company-provider-marks img { object-fit:contain; flex-shrink:0; }
.company-provider-marks i { font-size:15px; font-style:normal; color:#adb5bc; }
.company-page .company-hero .hero-actions { margin-top:0; }
.company-connect { padding:75px 28px 95px; text-align:center; }
.company-connect-copy { max-width:660px; margin:auto; }
.company-connect h2 { font-size:clamp(2rem,3.4vw,3.15rem); line-height:1.1; letter-spacing:-.045em; }
.company-connect-copy > p:not(.company-eyebrow) { color:#687581; font-size:17px; line-height:1.65; margin-top:22px; }
.connection-details { max-width:520px; margin:26px auto 0; color:#687581; font-size:13px; }
.connection-details summary { list-style:none; display:inline-flex; align-items:center; gap:14px; min-height:40px; cursor:pointer; color:#1775ca; }
.connection-details summary::-webkit-details-marker { display:none; }
.connection-details summary span { font-size:18px; transition:transform .2s; }
.connection-details[open] summary span { transform:rotate(45deg); }
.connection-details > div { text-align:left; line-height:1.7; padding:12px 0; }
.connection-details p+p { margin-top:15px; }
.connection-sources { display:flex; flex-wrap:wrap; gap:8px 22px; }
.connection-sources a { color:#1775ca; text-decoration:underline; text-underline-offset:3px; }
.company-feature { max-width:1188px; margin:auto; padding:100px var(--gutter); display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:80px; }
.company-feature h2 { font-size:clamp(2.4rem,3.8vw,3.65rem); line-height:1.08; letter-spacing:-.045em; }
.company-feature-copy > p:last-child { margin-top:24px; color:#687581; font-size:16px; line-height:1.7; }
.context-map { padding:22px 24px; max-width:390px; width:100%; justify-self:center; }
.context-root { display:flex; align-items:center; gap:14px; font-size:18px; letter-spacing:-.025em; }
.context-root img { border-radius:10px; }
.context-branches { border-left:1px solid #dce5ee; margin:22px 0 0 17px; padding:0 0 0 32px; }
.context-branches > div { display:flex; align-items:center; gap:16px; position:relative; padding:14px 0; font-size:15px; }
.context-branches > div::before { content:''; height:1px; background:#dce5ee; width:20px; position:absolute; left:-32px; }
.context-branches small,.agent-roster small { display:block; color:#8b959e; font-size:12px; margin-top:6px; }
.note-symbol { display:grid; place-items:center; border:1px solid #dce5ee; border-radius:7px; width:30px; height:38px; color:#6e94b7; font-size:23px; line-height:1; }
.visual-caption { display:block; color:#9ca4ab; font-size:10px; margin-top:24px; text-align:center; }
.company-manage .company-feature-copy { grid-column:2; grid-row:1; }
.agent-roster { grid-column:1; grid-row:1; width:100%; max-width:390px; justify-self:center; }
.agent-roster > div { display:flex; align-items:center; gap:14px; padding:23px 0; border-bottom:1px solid #e8edf1; font-size:15px; }
.agent-roster > div > img { border-radius:11px; }
.agent-family { margin-left:auto; font-size:11px; color:#7b8995; }
.company-page .company-team { padding-top:110px; padding-bottom:80px; }
.company-team .collaboration-art { margin-top:20px; }
.company-final-action { display:flex; flex-direction:column; align-items:center; gap:14px; margin-top:5px; padding:0 24px; }
.company-final-action .availability { margin:0; color:#8b959e; line-height:1.6; }
.company-back { display:inline-flex; align-items:center; min-height:44px; color:#687581; font-size:12px; margin-top:10px; }
@media(min-width:1500px) { .company-page .company-hero .hero-copy { padding-right:46%; } }
@media(max-width:760px) {
 .company-page .company-hero { min-height:0; }
 .company-page .company-hero .hero-copy { padding:125px 24px 0; }
 .company-page .company-hero h1 { font-size:clamp(2.05rem,8.4vw,3.5rem); }
 .company-page .company-value { justify-items:center; }
 .company-page .company-value .value-line { text-align:center; max-width:14em; }
 .company-page .company-eyebrow { font-size:10px; margin-bottom:18px; }
 .company-provider-marks { justify-content:center; gap:20px; margin:23px 0; }
 .company-provider-marks > span { font-size:13px; gap:7px; }
 .company-page .company-hero .scene-art { margin-top:14px; height:325px; min-height:325px; }
 .company-page .company-hero .scene-art img { width:680px; height:383px; left:calc(50% - 485px); top:-40px; }
 .company-connect { padding:55px 28px 50px; }
 .company-connect-copy > p:not(.company-eyebrow) { font-size:15px; }
 .company-feature { padding:65px 28px; grid-template-columns:1fr; gap:35px; }
 .company-feature h2 { font-size:clamp(2.1rem,8.5vw,3.8rem); }
 .company-feature-copy > p:last-child { font-size:15px; margin-top:20px; }
 .company-manage .company-feature-copy,.agent-roster { grid-column:auto; grid-row:auto; }
 .context-map { padding:10px 16px; }
 .agent-roster > div { gap:12px; }
 .agent-family { font-size:10px; }
 .company-page .company-team { padding-top:65px; padding-bottom:55px; }
 .company-team h2 { font-size:clamp(2.05rem,8vw,3.8rem); }
}
.company-page .site-header .header-cta { background:#076ddd; color:#fff; border:0; }
.company-page .site-header .header-cta:hover { background:#0561c9; }
@media(prefers-reduced-motion:reduce) {
 .company-page .company-value .value-from { opacity:0; }
 .company-page .company-value .value-to { opacity:1; }
}
