.life-page { background:#edf3f8; color:#003976; }
.life-page .nav-links { gap:20px; }
.life-hero { position:relative; overflow:hidden; background:#00254e; color:#ffffff; padding:170px 0 64px; }
.life-hero .container { position:relative; z-index:1; }
.life-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; align-items:center; color:#b9d4ec; font-size:13px; margin-bottom:36px; }
.life-breadcrumb a { color:#dce8f3; }
.life-breadcrumb i { font-size:10px; }
.life-hero-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:60px; align-items:center; }
.life-hero h1 { font-size:clamp(32px,3.6vw,53px); line-height:1.14; letter-spacing:-.035em; margin:14px 0 22px; max-width:760px; font-weight:600; }
.life-hero p { font-size:17px; line-height:1.8; color:#b9d4ec; max-width:680px; }
.life-eyebrow { color:#ffbc84; text-transform:uppercase; font-size:12px; letter-spacing:.16em; font-weight:700; }
.life-photo { position:relative; margin:0; border-radius:12px; overflow:hidden; height:300px; box-shadow:0 25px 70px #00000044; }
.life-photo img { width:100%; height:100%; object-fit:cover; }
.life-photo figcaption { position:absolute; bottom:0; left:0; right:0; padding:24px; background:linear-gradient(transparent,#00254edf); font-size:13px; letter-spacing:.05em; color:white; }
.life-tags { display:flex; flex-wrap:wrap; gap:9px; margin-top:24px; }
.life-tags span { border:1px solid #ffffff30; padding:7px 12px; font-size:12px; border-radius:5px; color:#edf3f8; }
.life-category-nav { background:white; border-bottom:1px solid #dce8f3; }
.life-category-nav .container { display:flex; flex-wrap:wrap; gap:8px; padding-top:18px; padding-bottom:18px; }
.life-category-nav a { padding:11px 14px; font-size:14px; font-weight:600; border-radius:5px; color:#07487f; }
.life-category-nav a.active { background:#003976; color:white; }
.life-category-nav a:hover { background:#edf3f8; color:#003976; }
.life-content { padding:60px 0 75px; }
.life-intro { display:flex; gap:30px; justify-content:space-between; align-items:end; margin-bottom:30px; }
.life-intro h2 { font-size:30px; line-height:1.25; margin:8px 0; }
.life-intro p { color:#1564ad; max-width:580px; line-height:1.7; }
.life-categories { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.life-category { position:relative; display:flex; flex-direction:column; background:white; border:1px solid #dce8f3; border-radius:10px; overflow:hidden; box-shadow:0 6px 25px #00397607; transition:transform .25s,box-shadow .25s; color:#003976; }
.life-category:hover { transform:translateY(-5px); box-shadow:0 15px 35px #00397616; }
.life-category > img { height:190px; width:100%; object-fit:cover; }
.life-category-body { display:flex; flex:1; flex-direction:column; padding:24px; }
.life-category small { color:#3c7cb8; font-weight:600; font-size:12px; }
.life-category h3 { font-size:22px; margin:12px 0; line-height:1.3; }
.life-category h3 i { color:#c05a08; margin-right:8px; }
.life-category p { color:#1564ad; line-height:1.65; font-size:15px; margin:0 0 22px; }
.life-category strong { margin-top:auto; font-size:14px; color:#003976; display:flex; align-items:center; justify-content:space-between; }
.life-category-all { background:#003976; color:white; justify-content:center; padding:35px; }
.life-category-all > i { font-size:40px; color:#f58220; }
.life-category-all h3 { font-size:28px; }
.life-category-all p { color:#b9d4ec; }
.life-category-all strong { color:#ffbc84; margin-top:20px; }
.life-group-links { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:34px; }
.life-group-links a { display:flex; align-items:center; gap:12px; background:white; padding:15px 22px; border:1px solid #dce8f3; border-radius:7px; font-size:15px; font-weight:600; }
.life-group-links a:hover { border-color:#07487f; }
.life-group-head { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-bottom:15px; border-bottom:1px solid #dce8f3; margin:35px 0 24px; }
.life-group-head h2 { font-size:25px; margin:0; }
.life-group-head p { font-size:14px; color:#3c7cb8; margin:7px 0 0; }
.life-group-head a { font-size:14px; color:#07487f; }
.life-products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.life-product-card { display:flex; flex-direction:column; border:1px solid #dce8f3; border-radius:9px; padding:26px; background:white; position:relative; border-top:3px solid #f58220; transition:box-shadow .2s,transform .2s; }
.life-product-card:hover { box-shadow:0 14px 32px #00397614; transform:translateY(-3px); }
.life-product-icon { display:flex; width:47px; height:47px; align-items:center; justify-content:center; background:#edf3f8; color:#07487f; border-radius:8px; font-size:23px; margin-bottom:20px; }
.life-product-card small { color:#c05a08; font-size:12px; letter-spacing:.04em; }
.life-product-card h3 { font-size:20px; line-height:1.4; margin:10px 0 12px; }
.life-product-card p { color:#1564ad; font-size:15px; line-height:1.65; margin:0 0 24px; }
.life-product-card strong { margin-top:auto; display:flex; align-items:center; justify-content:space-between; color:#07487f; font-size:14px; padding-top:18px; border-top:1px solid #edf3f8; }
.life-detail-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:36px; align-items:start; }
.life-features { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.life-feature { border:1px solid #dce8f3; padding:27px; border-radius:9px; background:white; }
.life-feature i { display:inline-flex; align-items:center; justify-content:center; font-size:23px; color:#07487f; margin-bottom:15px; background:#edf3f8; width:44px; height:44px; border-radius:9px; }
.life-feature h3 { font-size:19px; line-height:1.35; margin:0 0 13px; }
.life-feature p { line-height:1.8; font-size:16px; color:#1564ad; margin:0; }
.life-consult { position:sticky; top:24px; background:#003976; color:white; padding:30px; border-radius:10px; box-shadow:0 15px 40px #00397620; }
.life-consult > i { font-size:32px; color:#ffbc84; }
.life-consult h2 { color:#ffffff; font-size:24px; line-height:1.35; margin:20px 0 15px; }
.life-consult p { color:#b9d4ec; font-size:15px; line-height:1.7; }
.life-consult .btn { display:flex; justify-content:center; text-align:center; margin-top:24px; padding:15px; width:100%; white-space:normal; }
.life-consult small { display:block; color:#87b9ee; font-size:12px; line-height:1.7; margin-top:15px; }
.life-source { background:#edf3f8; border-left:3px solid #f58220; padding:22px; margin-top:25px; border-radius:5px; }
.life-source p { font-size:14px; line-height:1.8; color:#1564ad; margin:0 0 10px; }
.life-source a { font-size:14px; font-weight:600; color:#07487f; }
.life-related { margin-top:50px; }
.life-related h2 { font-size:25px; margin-bottom:25px; }
.life-page a:focus-visible { outline:3px solid #1564ad; outline-offset:4px; }
.life-home-action { margin-top:28px; display:flex; justify-content:center; }
@media(max-width:1100px) { .life-page .nav-links { gap:13px; font-size:12px; } .life-hero-grid { gap:30px; } .life-detail-layout { grid-template-columns:minmax(0,1fr) 260px; gap:24px; } }
@media(max-width:980px) { .life-hero { padding-top:125px; } .life-hero-grid { grid-template-columns:1fr; } .life-photo { height:300px; } .life-categories,.life-products { grid-template-columns:repeat(2,minmax(0,1fr)); } .life-detail-layout { grid-template-columns:1fr; } .life-consult { position:static; } .life-intro { display:block; } }
@media(max-width:640px) { .life-hero { padding-bottom:36px; } .life-hero h1 { font-size:32px; } .life-breadcrumb { font-size:12px; margin-bottom:28px; } .life-photo { height:230px; } .life-categories,.life-products,.life-features { grid-template-columns:1fr; } .life-content { padding:36px 0 50px; } .life-category-nav .container { flex-wrap:nowrap; overflow-x:auto; } .life-category-nav a { white-space:nowrap; font-size:13px; } .life-group-head { align-items:start; flex-direction:column; gap:12px; } .life-feature { padding:23px; } .life-category > img { height:210px; } }
.nav-links { gap:16px; }
.branch-faq { margin-top:35px; }
.branch-faq h2 { font-size:28px; margin:0 0 22px; }
.branch-faq details { padding:20px 24px; background:#ffffff; border:1px solid #dce8f3; border-radius:8px; margin-bottom:12px; }
.branch-faq summary { font-size:16px; font-weight:600; cursor:pointer; }
.branch-faq p { font-size:16px; color:#1564ad; line-height:1.8; margin:14px 0 0; }
.branch-types { margin:30px 0; }
.branch-types .life-feature .btn { margin-top:20px; }
@media(min-width:981px) and (max-width:1250px) { .nav-links,.nav-cta { display:none; } .menu-button { display:inline-flex; margin-left:auto; } }
