.login-link{padding:9px 13px!important;border:1px solid var(--blue);border-radius:4px;color:var(--blue)!important}
.card-link{display:block;margin:0 20px 22px;color:var(--blue);font-weight:900}
.workflow{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.workflow div{padding:22px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--green)}
.workflow p{color:var(--muted);margin-bottom:0}
.detail-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:26px}
.detail-list div{padding:22px;border:1px solid var(--line);background:#fff}
.detail-list p{color:var(--muted);margin-bottom:0}
.mini-grid a{padding:11px;background:var(--bg);border:1px solid var(--line);font-weight:800}
.portal-hero{display:grid;grid-template-columns:1fr 380px;gap:34px;align-items:center;padding:clamp(56px,7vw,96px) clamp(20px,6vw,76px);background:var(--bg)}
.portal-hero p{color:var(--muted);font-size:18px}
.login-card,.portal-panel,.portal-sidebar{display:grid;gap:16px;padding:26px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 28px rgba(10,35,70,.07)}
.login-card label{display:grid;gap:7px;font-weight:800}
.login-card input{padding:13px;border:1px solid #cbd6e3;border-radius:4px;font:inherit}
.portal-grid{display:grid;grid-template-columns:260px 1fr;gap:28px;background:#fff}
.portal-sidebar{align-self:start;position:sticky;top:94px}
.portal-sidebar a{padding:11px;border:1px solid var(--line);font-weight:800}
.portal-main{display:grid;gap:22px}
.portal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.upload-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 20px;border-radius:4px;font-weight:900;cursor:pointer;color:var(--blue);background:#fff;border:1px solid var(--line)}
.upload-btn input{display:none}
.status-row,.report-row{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}
.status-row span{color:var(--muted)}
.payment-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;background:var(--bg);border:1px solid var(--line)}
.payment-card strong{font-size:28px;color:var(--blue)}
@media(max-width:1180px){.workflow{grid-template-columns:repeat(3,1fr)}}
@media(max-width:980px){.portal-hero,.portal-grid{grid-template-columns:1fr}.detail-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.workflow,.detail-list{grid-template-columns:1fr}.payment-card,.status-row,.report-row{flex-direction:column;align-items:flex-start}}

.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 20% 20%,#e8f6ff 0,#f4f7fb 34%,#fff 100%)}
.hero::before{content:"";position:absolute;right:43%;top:12%;width:220px;height:220px;background:rgba(22,128,91,.12);filter:blur(50px)}
.hero-copy{position:relative;z-index:1}
.hero h1{color:#0d1b33;text-wrap:balance}
.hero img{filter:saturate(1.08) contrast(1.03)}
.image-card,.plain-card,.service-block,.pricing-grid article{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.image-card:hover,.plain-card:hover,.service-block:hover,.pricing-grid article:hover{transform:translateY(-5px);box-shadow:0 24px 70px rgba(10,35,70,.16);border-color:#b9cbe2}
.pricing-section{background:linear-gradient(135deg,#081f43 0%,#15458d 52%,#16805b 100%);color:#fff}
.pricing-section .eyebrow{color:#9af0c9}
.pricing-section .section-head p{color:#d7e6f7}
.pricing-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.pricing-grid article{display:flex;flex-direction:column;min-height:320px;padding:24px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:8px;backdrop-filter:blur(10px)}
.pricing-grid span{color:#9af0c9;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.pricing-grid h3{margin-top:12px;color:#fff}
.pricing-grid b{margin-top:8px;font-size:30px;color:#fff}
.pricing-grid p{color:#d7e6f7}
.pricing-grid a,.more-btn{margin-top:auto;width:max-content;color:#fff!important;background:var(--green);border:0}
.more-btn{min-width:120px}
.service-hero{background:linear-gradient(90deg,rgba(6,22,47,.94),rgba(21,69,141,.7)),url("assets/service-psi.jpg") center/cover}
.elevated-services{background:linear-gradient(180deg,#f4f7fb 0,#fff 100%)}
.feature-service{position:relative;overflow:hidden;border-radius:8px}
.feature-service::after{content:"";position:absolute;inset:auto 0 0 0;height:4px;background:linear-gradient(90deg,var(--blue),var(--green))}
.feature-service img{border-radius:6px}
@media(max-width:1180px){.pricing-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.pricing-grid{grid-template-columns:1fr}.pricing-grid article{min-height:auto}}

.company-brief{display:grid;grid-template-columns:360px 1fr;gap:40px;align-items:start;background:#fff;border-top:1px solid var(--line)}
.company-brief p:last-child{margin:0;color:var(--muted);font-size:18px}
@media(max-width:980px){.nav{gap:12px}.nav>a,.nav-item>a{padding:12px 0}}
@media(max-width:760px){.company-brief{grid-template-columns:1fr}.nav .login-link,.nav .quote-link{width:max-content}}

.news-board{background:#fff}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.news-grid article{padding:26px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff 0,#f4f7fb 100%);box-shadow:0 10px 28px rgba(10,35,70,.07)}
.news-grid span{display:inline-block;margin-bottom:12px;color:var(--green);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.news-grid h3{font-size:22px}
.news-grid p{color:var(--muted)}
.news-grid time{color:var(--blue);font-weight:900}
@media(max-width:980px){.news-grid{grid-template-columns:1fr}}

.split-section>div:first-child>.eyebrow{color:#5e6a7c;letter-spacing:.14em}
.split-section>div:first-child>h2{max-width:760px;margin-bottom:14px;color:#132038}
.split-section>div:first-child>p{max-width:860px;margin:0 0 22px;color:#5d6d84;font-size:18px}
.detail-list{max-width:980px}
.detail-list div{min-height:168px}
.detail-list b{display:block;margin-bottom:18px;color:#132038;font-size:16px}
.detail-list p{font-size:18px;line-height:1.55}

.resource-cards .plain-card{display:flex;flex-direction:column;min-height:190px}
.resource-more{margin-top:auto;width:max-content;padding:10px 18px;border-radius:4px;color:#fff!important;background:var(--green);font-weight:900}
.home-qa{background:#f4f7fb}
.qa-list{display:grid;gap:12px;max-width:980px}
.qa-list details{padding:20px 24px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px rgba(10,35,70,.06)}
.qa-list summary{cursor:pointer;color:#132038;font-weight:900;font-size:18px}
.qa-list p{margin:12px 0 0;color:var(--muted)}
