.branch-page { background:#fff; color:#063755; }
.branch-page .ed-hero { background:radial-gradient(ellipse at 85% 20%,#235d8d80,transparent 55%),linear-gradient(125deg,#062a3a,#053852 60%,#164d80); padding-bottom:110px; border-radius:0 0 48% 7% / 0 0 45px 25px; }
.branch-page .ed-section { padding:80px 0; position:relative; }
.branch-page .ed-intro { color:#496574; font-size:17px; line-height:1.85; }
.branch-page .ed-lead { color:#dce9f3; font-size:18px; line-height:1.85; }
.branch-page h2 { font-size:clamp(28px,3vw,40px); }
.branch-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.branch-grid--two { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.branch-card { border:1px solid #d3e3ed; border-radius:24px; background:linear-gradient(145deg,#f4f8fd,#e8f1fa); padding:30px 24px; text-align:center; box-shadow:none; }
.branch-card:nth-child(even) { background:linear-gradient(145deg,#eef7fa,#e0edf4); }
.branch-card h3 { font-size:21px; line-height:1.4; letter-spacing:-.25px; margin:12px 0; }
.branch-card p { font-size:16px; line-height:1.85; color:#496574; }
.branch-card > .solution-icon { position:static; display:block; width:44px; height:44px; margin:0 auto 20px; color:#1b6287; stroke-width:1; }
.branch-card a:not(.site-pill) { color:inherit; text-decoration:none; }
.branch-context .branch-card:nth-child(even) { transform:translateY(18px); }
.branch-approach { background:radial-gradient(ellipse at 5% 40%,#dcecf7,transparent 60%),#f4f8fc; }
.branch-approach .branch-card { background:#fff; border-radius:32px 32px 12px 32px; }
.branch-approach .branch-card:last-child { background:linear-gradient(140deg,#063755,#205b81); color:#fff; border-color:#1f597b; border-radius:32px 32px 32px 12px; }
.branch-approach .branch-card:last-child p { color:#dceaf4; }
.branch-products { background:#fff; isolation:isolate; }
.branch-products::before { content:""; position:absolute; inset:25% -10% 10%; z-index:-1; border-radius:50%; background:radial-gradient(ellipse,#e2eef8,transparent 68%); pointer-events:none; }
.branch-product,.branch-product:nth-child(even) { display:flex; flex-direction:column; align-items:center; padding:38px; color:#fff; background:radial-gradient(ellipse at 95% 0%,#26749a60,transparent 65%),#063755; border-color:#315f7d; }
.branch-product:nth-child(even) { background:radial-gradient(ellipse at 5% 100%,#4087ae40,transparent 65%),#104764; }
.branch-product p { color:#dceaf4; }
.branch-product img { max-width:100%; object-fit:contain; margin-bottom:18px; }
.branch-product .site-pill { margin-top:auto; }
.branch-after { margin-top:32px; }
.branch-experience { background:linear-gradient(120deg,#f0f6fb,#fff); }
.branch-note { padding:40px; border-radius:28px; background:linear-gradient(125deg,#e3effb,#eff6fb); color:#063755; border:1px solid #d1e1ee; }
.branch-note p { color:#34566d; font-size:17px; line-height:1.85; margin-bottom:26px; }
.branch-support { background:radial-gradient(ellipse at 10% 45%,#0e4eb730,transparent 60%),linear-gradient(120deg,#062a3a,#053852 55%,#104c70); color:#fff; }
.branch-support .ed-intro,.branch-support .branch-card p { color:#d2e4ef; }
.branch-support .branch-card { background:#28739840; border-color:#ffffff20; }
.branch-support .branch-card:nth-child(even) { background:#348aad33; }
.branch-support .solution-icon { color:#c6e4f0; }
.branch-page .ed-faq details { background:#f3f8fc; border-color:#d6e5ef; }
.branch-page .ed-faq summary { color:#063755; }
.branch-page .ed-faq summary span,.branch-page .ed-faq .faq-a { color:#496574; }
.branch-closing { background:#f4f8fc; }
.branch-closing .branch-note { position:relative; isolation:isolate; overflow:hidden; color:#fff; background:linear-gradient(120deg,#063755,#164f78); border:0; padding:56px 40px; }
.branch-closing .branch-note::before { content:""; width:420px; height:420px; position:absolute; right:-220px; top:-180px; border:50px solid #ffffff06; border-radius:50%; z-index:-1; }
.branch-closing .branch-note p { color:#dceaf4; }
.branch-page a:focus-visible,.branch-page summary:focus-visible { outline:3px solid #4b9ecf; outline-offset:4px; }
@media(max-width:1000px) { .branch-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .branch-grid { grid-template-columns:1fr; } .branch-page .ed-section { padding:48px 0; } .branch-card,.branch-product,.branch-note,.branch-closing .branch-note { padding:28px 22px; } .branch-page .ed-intro,.branch-page .ed-lead { font-size:16px; } .branch-context .branch-card:nth-child(even) { transform:none; } .branch-page .ed-hero { padding-bottom:70px; } }
