.life-page { background:#f5f7f9; color:#173348; }
.life-page .nav-links { gap:20px; }
.life-hero { position:relative; overflow:hidden; background:#071c2c; color:#fff; 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:#afc1ce; font-size:13px; margin-bottom:36px; }
.life-breadcrumb a { color:#d7e4ed; }
.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:#c2d0da; max-width:680px; }
.life-eyebrow { color:#e3be73; 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 #0004; }
.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,#061a29df); 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:#e8eff4; }
.life-category-nav { background:white; border-bottom:1px solid #dce3e9; }
.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:#455e70; }
.life-category-nav a.active { background:#0b3449; color:white; }
.life-category-nav a:hover { background:#e7eff3; color:#123247; }
.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:#617686; 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 #dce4ea; border-radius:10px; overflow:hidden; box-shadow:0 6px 25px #0a294307; transition:transform .25s,box-shadow .25s; color:#18384f; }
.life-category:hover { transform:translateY(-5px); box-shadow:0 15px 35px #0a294316; }
.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:#667f90; font-weight:600; font-size:12px; }
.life-category h3 { font-size:22px; margin:12px 0; line-height:1.3; }
.life-category h3 i { color:#a17d37; margin-right:8px; }
.life-category p { color:#657989; line-height:1.65; font-size:15px; margin:0 0 22px; }
.life-category strong { margin-top:auto; font-size:14px; color:#126e6b; display:flex; align-items:center; justify-content:space-between; }
.life-category-all { background:#0a2a3d; color:white; justify-content:center; padding:35px; }
.life-category-all > i { font-size:40px; color:#d7b06c; }
.life-category-all h3 { font-size:28px; }
.life-category-all p { color:#b7c9d5; }
.life-category-all strong { color:#e1be7c; 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 #d6e0e7; border-radius:7px; font-size:15px; font-weight:600; }
.life-group-links a:hover { border-color:#198981; }
.life-group-head { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-bottom:15px; border-bottom:1px solid #dce4ea; margin:35px 0 24px; }
.life-group-head h2 { font-size:25px; margin:0; }
.life-group-head p { font-size:14px; color:#6b7f8e; margin:7px 0 0; }
.life-group-head a { font-size:14px; color:#137d76; }
.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 #dce4ea; border-radius:9px; padding:26px; background:white; position:relative; border-top:3px solid #ccb079; transition:box-shadow .2s,transform .2s; }
.life-product-card:hover { box-shadow:0 14px 32px #163f5214; transform:translateY(-3px); }
.life-product-icon { display:flex; width:47px; height:47px; align-items:center; justify-content:center; background:#e9f4f2; color:#148379; border-radius:8px; font-size:23px; margin-bottom:20px; }
.life-product-card small { color:#8b7145; 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:#647989; 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:#087c71; font-size:14px; padding-top:18px; border-top:1px solid #e6edf0; }
.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 #dce4e9; padding:27px; border-radius:9px; background:white; }
.life-feature i { display:inline-flex; align-items:center; justify-content:center; font-size:23px; color:#118074; margin-bottom:15px; background:#edf7f5; 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:#5c7484; margin:0; }
.life-consult { position:sticky; top:24px; background:#092a3e; color:white; padding:30px; border-radius:10px; box-shadow:0 15px 40px #0d304220; }
.life-consult > i { font-size:32px; color:#e0b96f; }
.life-consult h2 { color:#fff; font-size:24px; line-height:1.35; margin:20px 0 15px; }
.life-consult p { color:#b7cbd8; 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:#a3b9c8; font-size:12px; line-height:1.7; margin-top:15px; }
.life-source { background:#eaf0f4; border-left:3px solid #bea069; padding:22px; margin-top:25px; border-radius:5px; }
.life-source p { font-size:14px; line-height:1.8; color:#526b7e; margin:0 0 10px; }
.life-source a { font-size:14px; font-weight:600; color:#08766c; }
.life-related { margin-top:50px; }
.life-related h2 { font-size:25px; margin-bottom:25px; }
.life-page a:focus-visible { outline:3px solid #23a890; 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:#fff; border:1px solid #dce4e9; border-radius:8px; margin-bottom:12px; }
.branch-faq summary { font-size:16px; font-weight:600; cursor:pointer; }
.branch-faq p { font-size:16px; color:#5c7484; 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; } }
