/* Illustration entrances start only after decoding, with their space already reserved. */
img[data-illustration]{transition:opacity .7s ease,scale .85s cubic-bezier(.16,1,.3,1);transform-origin:center;scale:1}
.art-prepare img[data-illustration][data-art-initial]:not(.art-ready){opacity:0;scale:.94}
.art-prepare img[data-illustration].art-ready{opacity:1;scale:1}
.feature-card:nth-child(1){margin-top:0}
.feature-card:nth-child(2){margin-top:64px}
.feature-card:nth-child(3){margin-top:128px}
.feature-cards{margin-top:58px}
.feature-card .feature-placeholder{object-fit:contain;height:210px;width:100%;max-width:250px}
.feature-card{padding:36px 30px;min-height:520px}
.feature-card h3{font-size:22px;line-height:1.6;text-wrap:balance}
.feature-card .feature-card-title{color:var(--blue);letter-spacing:0}
.feature-card>p{line-height:1.95}
.home-about .home-about-art{inset:-200px -80px auto;height:920px;max-width:none}
.insurer-logo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px}
.insurer-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-width:0;min-height:114px;padding:20px 15px;border:1px solid #d7e9f0;border-radius:7px;background:#fff;transition:translate .3s,box-shadow .3s,border-color .3s}
.insurer-logo>img{width:100%;height:42px;max-width:178px;object-fit:contain}
.insurer-logo[data-insurer=aflac]>img{width:106px;height:51px}
.insurer-logo>span{font-size:11px;line-height:1.5;letter-spacing:.01em;color:#526473;text-align:center}
.insurer-logo:hover{translate:0 -4px;border-color:#7bc8e5;box-shadow:0 8px 20px #078eb018}
.insurer-online{margin-top:22px}
.insurer-online-link{display:flex;align-items:center;gap:24px;padding:24px;background:linear-gradient(115deg,#fff,#effaff);border:1px solid #b9deed;border-radius:8px;transition:translate .3s,box-shadow .3s}
.insurer-online-link>img{width:150px;height:auto}
.insurer-online-link strong{display:block;font-size:20px}
.insurer-online-link small{display:block;font-size:12px;margin-top:6px;color:#087898}
.insurer-online>p{font-size:13px;line-height:1.9;margin-top:14px}
.about-map-panel{min-width:0}
.about-map-panel .about-map{display:block;width:100%;height:430px;aspect-ratio:auto;border:0;border-radius:14px;background:#e2f1f6}
.about-map-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:18px}
.about-map-actions>.text-link{padding:12px 20px;background:var(--action-blue);border-radius:6px;color:#fff;font-size:15px}
.about-map-actions>a:last-child{font-size:12px;color:#007ea6;text-decoration:underline;text-underline-offset:4px}
.about-map-panel>p{font-size:13px;margin-top:12px}
.insurance-kind{display:inline-block;margin-bottom:10px;font-size:12px;color:#087ba0;border:1px solid #b9dfea;padding:3px 10px;border-radius:20px}
.guidance-card-main{align-items:stretch;flex:1}
.guidance-card-copy>p{font-size:16px;line-height:1.95}
.guidance-card-actions{margin-top:auto}
.insurance-coverage-note{font-size:12px!important;line-height:1.9!important;color:#647281;margin-top:20px!important}
.guidance-detail-body>h3{font-size:17px;margin:24px 0 10px}
.guidance-detail-body ul{display:grid;gap:10px}
.guidance-detail-body li{position:relative;padding-left:20px;font-size:15px}
.guidance-detail-body li::before{content:'';position:absolute;left:0;top:.65em;width:7px;height:7px;border-radius:50%;background:var(--blue)}
.insurance-official-link{display:inline-block;color:#087aa3;font-size:13px;margin-top:20px;text-decoration:underline;text-underline-offset:4px}
.home-news-ticker{position:relative;z-index:2;max-width:1280px;width:calc(100% - 160px);margin:0 auto 30px;display:flex;align-items:center;gap:24px;min-height:84px;padding:16px 24px;background:#fff;border:1px solid #cae6f1;border-radius:10px;box-shadow:0 12px 32px #178ca60a}
.ticker-label{font-size:15px;font-weight:600;flex:none;color:#007da5;padding-right:24px;border-right:1px solid #d0e8f0}
.ticker-label small{font-size:10px;display:block;font-weight:400;color:#7c8992}
.ticker-window{flex:1;min-width:0;overflow:hidden}
.ticker-item{display:flex;gap:20px;align-items:center;min-width:0}
.ticker-item time{font:400 12px/1.5 Inter,sans-serif;flex:none;color:#6a7685}
.ticker-item>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px}
.ticker-controls{display:flex;align-items:center;gap:9px;flex:none}
.ticker-controls>span{font:400 11px/1 Inter,sans-serif;color:#6a7685;margin-right:4px}
.ticker-controls button,.risk-case-controls .case-pause{display:grid;place-items:center;background:#f1faff;border:1px solid #bce0ec;border-radius:50%;width:38px;height:38px;color:#087ba0;font-size:17px;transition:background .25s,scale .25s}
.ticker-controls button:hover,.risk-case-controls .case-pause:hover{background:#d5f1fb;scale:1.08}
.news-sample-note{font-size:13px;color:#657480;margin-bottom:24px}
.risk-case-controls{align-items:center}
.risks-page .risk-case-controls .case-pause{width:50px;height:50px}
.risks-page .risk-case-track.risk-loop-active{scroll-snap-type:none;scroll-behavior:auto;overflow-x:auto;padding-right:0;gap:24px}
.risks-page .risk-case{display:flex;flex-direction:column;align-items:flex-start;min-height:290px}
.risks-page .risk-case strong{font-size:17px}
.risks-page .risk-case p{font-size:15px;line-height:1.9}
.risks-page .risk-case small{font-size:10px;color:#697a83;margin-top:12px}
.risks-page .risk-case>img{margin-top:auto;padding-top:12px;height:44px}
.risks-page .risk-hero-title h1{font-size:72px;line-height:1.08}
@media(max-width:1270px){.home-about .home-about-art{inset:-200px -48px auto}.home-news-ticker{width:calc(100% - 96px)}.feature-card{padding:30px 22px}.feature-card h3{font-size:20px}.insurer-logo-grid{gap:12px}.insurer-logo{padding:16px 12px}}
@media(max-width:1000px){.home-about .home-about-art{inset:-140px -40px auto}.home-news-ticker{width:calc(100% - 80px);gap:14px;padding-inline:18px}.feature-card{min-height:540px}.feature-card h3{font-size:19px}}
@media(max-width:760px){
 .about-map-panel .about-map{height:390px}
 .about-map-actions{align-items:stretch;gap:14px}.about-map-actions>.text-link{justify-content:center;width:100%}
 .insurer-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .insurer-logo{min-height:110px;padding:18px 12px}.insurer-logo>img{height:36px}.insurer-logo>span{font-size:10px}
 .insurer-online-link{padding:20px;gap:18px}.insurer-online-link>img{width:100px}.insurer-online-link strong{font-size:17px}.insurer-online-link small{font-size:10px}
 .risks-page .risk-hero-title h1{font-size:43px}.risks-page .risk-case-controls .case-pause{width:38px;height:38px}
 .risks-page .risk-case{min-height:315px}.risks-page .risk-case-track.risk-loop-active{gap:18px}
}
@media(max-width:700px){
 .home-about{gap:28px}
 .home-about .home-about-art{position:relative;inset:auto;display:block;height:140px;width:100%;max-width:390px;margin:0;padding:0}
 .home-about .home-about-art>img{position:absolute;inset:auto;margin:0;grid-column:auto;object-fit:contain}
 .home-about .home-about-art .person-art{left:2%;bottom:0;width:94px;height:100px}
 .home-about .home-about-art .pair-art{left:calc(50% - 38px);top:0;width:76px;height:86px}
 .home-about .home-about-art .woman-art{right:1%;bottom:8px;width:83px;height:78px}
 .home-about .home-about-art .shield-one{left:28%;top:0;width:25px;height:25px}
 .home-about .home-about-art .shield-two{right:29%;bottom:0;width:26px;height:26px}
 .home-about .home-about-art .shield-three,.home-about .home-about-art .shield-four{display:none}
 .home-about .about-orbit{bottom:auto;top:130px;height:350px;opacity:.45}
 .home-features{margin-top:110px}.feature-cards{margin-top:64px;gap:72px}
 .feature-card,.feature-card:nth-child(1),.feature-card:nth-child(2),.feature-card:nth-child(3){margin-top:0;min-height:0;padding:32px}
 .feature-card h3{font-size:23px}.feature-card .feature-placeholder{height:180px;max-width:250px}
 .feature-card:first-child .feature-card-title{font-size:clamp(18px,5.2vw,22px);width:calc(100% + 24px)}
 .home-news-ticker{width:calc(100% - 40px);padding:15px 16px;gap:12px;flex-wrap:wrap;margin-bottom:24px}
 .ticker-label{font-size:13px;padding-right:12px}.ticker-label small{font-size:9px}
 .ticker-window{flex-basis:calc(100% - 100px)}
 .ticker-item{flex-direction:column;align-items:flex-start;gap:3px}.ticker-item>span{font-size:13px;max-width:100%}
 .ticker-controls{margin-left:auto}.ticker-controls button{height:32px;width:32px}
}
@media(prefers-reduced-motion:reduce){img[data-illustration],.art-prepare img[data-illustration][data-art-initial]:not(.art-ready){opacity:1;scale:1;transition:none}.guidance-insurance-dialog[open]{animation:none}}
/* Risk cards have their own stronger entrance; their hover transition must not mask it. */
.risks-page .risk-card.reveal-pending{opacity:0;transform:translateY(38px) scale(.975);transition:opacity .65s ease,transform .85s cubic-bezier(.16,1,.3,1),box-shadow .3s ease;transition-delay:var(--risk-entry-delay,0ms)}
.risks-page .risk-card.reveal-pending:nth-child(even){--risk-entry-delay:120ms}
.risks-page .risk-card.reveal-pending.is-visible{opacity:1;transform:none}
@media(hover:hover) and (pointer:fine){.risks-page .risk-card.reveal-pending.is-visible:hover{transform:translateY(-5px);transition-delay:0ms}}
@media(max-width:760px){.risks-page .risk-card.reveal-pending:nth-child(even){--risk-entry-delay:0ms}}
@media(prefers-reduced-motion:reduce){.risks-page .risk-card.reveal-pending{opacity:1;transform:none;transition:none}}

/* Illustration and accreditation share a row; the logo caption has one center axis. */
.feature-card .feature-visual--accredited{
 display:grid;
 grid-template-columns:minmax(0,1fr) 82px;
 align-items:center;
 gap:16px;
 width:100%;
 min-width:0;
 height:210px;
 min-height:0;
 flex:none;
 margin-bottom:32px;
}
.feature-card .feature-visual--accredited>.feature-placeholder{
 width:100%;
 min-width:0;
 max-width:100%;
 height:100%;
 min-height:0;
 margin:0;
 object-fit:contain;
}
.feature-card .feature-visual--accredited>.feature-accreditation{
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 align-self:center;
 gap:8px;
 width:100%;
 max-width:100%;
 min-width:0;
 text-align:center;
}
.feature-card .feature-accreditation>img{
 flex:none;
 width:74px;
 max-width:100%;
 height:auto;
 aspect-ratio:147/122;
 object-fit:contain;
}
.feature-card .feature-accreditation>span{
 display:block;
 width:100%;
 min-width:0;
 font-size:11px;
 line-height:1.6;
 white-space:nowrap;
 overflow-wrap:normal;
 text-align:center;
}
@media(min-width:701px) and (max-width:1000px){
 .feature-card .feature-visual--accredited{grid-template-columns:minmax(0,1fr) 64px;gap:8px}
 .feature-card .feature-accreditation>img{width:64px}
 .feature-card .feature-accreditation>span{font-size:10px}
}
@media(max-width:700px){
 .feature-card .feature-visual--accredited{height:180px;margin-bottom:28px}
}
@media(max-width:359px){
 .feature-card .feature-visual--accredited{grid-template-columns:minmax(0,1fr) 68px;gap:12px}
 .feature-card .feature-accreditation>img{width:68px}
 .feature-card .feature-accreditation>span{font-size:10px}
}
