/* Privacy policy page styles. Scoped to .frosa-terms-use only. */
.frosa-terms-use{--ftu-ink:#12233c;--ftu-blue:#222681;--ftu-muted:#5c6e84;--ftu-line:#dfe7f1;--ftu-tint:#f5f8fc;width:100%;margin:0;background:#fff;color:var(--ftu-ink);font:16px/1.85 "PingFang SC","Microsoft YaHei","Segoe UI",sans-serif;}
.frosa-terms-use,.frosa-terms-use *,.frosa-terms-use *::before,.frosa-terms-use *::after{box-sizing:border-box;}
.frosa-terms-use :is(h1,h2,h3,p,ul,ol){margin:0;padding:0;}
.frosa-terms-use :is(h1,h2,h3){font-family:inherit;color:var(--ftu-ink);background:transparent;font-weight:650;text-wrap:pretty;}
.frosa-terms-use h1{font-size:clamp(40px,5vw,64px);line-height:1.2;letter-spacing:-.04em;}
.frosa-terms-use h2{font-size:clamp(27px,3vw,37px);line-height:1.42;letter-spacing:-.025em;}
.frosa-terms-use h3{font-size:18px;line-height:1.5;}
.frosa-terms-use a{color:var(--ftu-blue);text-decoration:none;text-underline-offset:4px;}
.frosa-terms-use a:hover{text-decoration:underline;}
.frosa-terms-use :is(a,summary):focus-visible{outline:3px solid #4385ff;outline-offset:4px;}
.frosa-terms-use .ftu-wrap{width:calc(100% - 64px);max-width:1200px;margin-inline:auto;}
.frosa-terms-use .ftu-hero{background:linear-gradient(115deg,#f2f7ff,#fff 76%);}
.frosa-terms-use .ftu-crumb{display:flex;flex-wrap:wrap;gap:9px;padding:20px 0;color:var(--ftu-muted);font-size:12px;}
.frosa-terms-use .ftu-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;padding:52px 0 65px;}
.frosa-terms-use .ftu-kicker{margin-bottom:14px;color:var(--ftu-blue);font-size:11px;font-weight:700;letter-spacing:.12em;line-height:1.8;}
.frosa-terms-use .ftu-lead{max-width:720px;margin-top:23px;color:var(--ftu-muted);font-size:17px;line-height:1.9;}
.frosa-terms-use .ftu-updated{margin-top:20px;color:var(--ftu-muted);font-size:12px;}
.frosa-terms-use .ftu-hero-card{padding:30px 32px;border:1px solid var(--ftu-line);border-radius:14px;background:#fff;box-shadow:0 16px 38px #173b6d0b;}
.frosa-terms-use .ftu-hero-card>span{color:var(--ftu-blue);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;}
.frosa-terms-use .ftu-hero-card h2{margin-top:13px;font-size:25px;}
.frosa-terms-use .ftu-hero-card p{margin-top:10px;color:var(--ftu-muted);font-size:13px;}
.frosa-terms-use .ftu-hero-card a{display:inline-flex;margin-top:16px;font-size:13px;font-weight:650;}
.frosa-terms-use .ftu-toc{display:flex;flex-wrap:wrap;gap:5px 24px;padding:14px 0;border-top:1px solid var(--ftu-line);}
.frosa-terms-use .ftu-toc a{display:flex;align-items:center;min-height:38px;font-size:12px;font-weight:600;}
.frosa-terms-use .ftu-section{padding:74px 0;scroll-margin-top:110px;}
.frosa-terms-use .ftu-tint{background:var(--ftu-tint);}
.frosa-terms-use .ftu-two-col{display:grid;grid-template-columns:.82fr 1.18fr;gap:72px;align-items:start;}
.frosa-terms-use .ftu-copy{margin-top:15px;color:var(--ftu-muted);font-size:14px;line-height:1.9;}
.frosa-terms-use .ftu-copy a{font-weight:600;}
.frosa-terms-use .ftu-card-list{border-top:1px solid var(--ftu-line);}
.frosa-terms-use .ftu-card-list article{display:grid;grid-template-columns:36px 1fr;gap:15px;padding:22px 0;border-bottom:1px solid var(--ftu-line);}
.frosa-terms-use .ftu-card-list article>span,.frosa-terms-use .ftu-purpose-grid article>b{color:var(--ftu-blue);font-size:11px;font-weight:700;letter-spacing:.08em;}
.frosa-terms-use .ftu-card-list h3{font-size:17px;}
.frosa-terms-use .ftu-card-list p,.frosa-terms-use .ftu-share-list p{margin-top:7px;color:var(--ftu-muted);font-size:13px;line-height:1.85;}
.frosa-terms-use .ftu-section-heading{display:flex;justify-content:space-between;gap:36px;align-items:flex-end;margin-bottom:28px;}
.frosa-terms-use .ftu-section-heading>p{max-width:475px;color:var(--ftu-muted);font-size:14px;}
.frosa-terms-use .ftu-purpose-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.frosa-terms-use .ftu-purpose-grid article{min-width:0;padding:21px;border:1px solid var(--ftu-line);border-radius:11px;background:#fff;}
.frosa-terms-use .ftu-purpose-grid h3{margin-top:13px;font-size:16px;}
.frosa-terms-use .ftu-purpose-grid p{margin-top:7px;color:var(--ftu-muted);font-size:12px;line-height:1.85;}
.frosa-terms-use .ftu-note{margin-top:18px;padding:17px 20px;border-left:3px solid #83a9e8;background:#edf4ff;}
.frosa-terms-use .ftu-note strong{font-size:13px;}
.frosa-terms-use .ftu-note p{margin-top:4px;color:var(--ftu-muted);font-size:12px;}
.frosa-terms-use .ftu-share-list article{padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid var(--ftu-line);}
.frosa-terms-use .ftu-share-list article:last-child{margin-bottom:0;}
.frosa-terms-use .ftu-share-list article>span{font-size:15px;font-weight:650;}
.frosa-terms-use .ftu-rights-card{padding:25px 27px;border:1px solid var(--ftu-line);border-radius:12px;background:#fff;}
.frosa-terms-use .ftu-rights-card h3{font-size:18px;}
.frosa-terms-use .ftu-rights-card p{margin-top:12px;color:var(--ftu-muted);font-size:13px;line-height:1.9;}
.frosa-terms-use .ftu-rights-card a{font-weight:650;overflow-wrap:anywhere;}
.frosa-terms-use .ftu-other details{border-bottom:1px solid var(--ftu-line);}
.frosa-terms-use .ftu-other summary{display:flex;justify-content:space-between;gap:18px;align-items:center;min-height:57px;cursor:pointer;list-style:none;font-size:15px;font-weight:650;}
.frosa-terms-use .ftu-other summary::-webkit-details-marker{display:none;}
.frosa-terms-use .ftu-other summary::after{content:"+";flex:none;color:var(--ftu-blue);font-size:21px;}
.frosa-terms-use .ftu-other details[open] summary::after{content:"−";}
.frosa-terms-use .ftu-other details p{padding:0 26px 18px 0;color:var(--ftu-muted);font-size:13px;line-height:1.9;}
.frosa-terms-use .ftu-contact{padding:58px 0;background:#142e55;scroll-margin-top:110px;}
.frosa-terms-use .ftu-contact-grid{display:flex;justify-content:space-between;align-items:center;gap:44px;}
.frosa-terms-use .ftu-contact h2{color:#fff;}
.frosa-terms-use .ftu-contact p:not(.ftu-kicker){max-width:720px;margin-top:14px;color:#cad8eb;font-size:14px;}
.frosa-terms-use .ftu-contact p a{color:#fff;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere;}
.frosa-terms-use .ftu-contact .ftu-kicker{color:#b9d2f8;}
.frosa-terms-use .ftu-button{display:inline-flex;flex:none;justify-content:space-between;align-items:center;gap:26px;min-height:52px;padding:13px 20px;border-radius:7px;background:#fff!important;color:#194985!important;-webkit-text-fill-color:#194985!important;font-size:14px!important;line-height:1.45!important;font-weight:650!important;text-indent:0!important;letter-spacing:normal!important;text-transform:none!important;}
.frosa-terms-use .ftu-button:hover{background:#eaf1fb;text-decoration:none;}
.frosa-terms-use .ftu-two-col{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;}
.frosa-terms-use .ftu-two-col>*{width:100%;min-width:0!important;max-width:none!important;}
.frosa-terms-use .ftu-card-list{width:100%;min-width:0!important;max-width:none!important;}
.frosa-terms-use .ftu-card-list article{display:flex!important;align-items:flex-start;width:100%;min-width:0!important;max-width:none!important;}
.frosa-terms-use .ftu-card-list article>span{flex:0 0 36px;width:36px;}
.frosa-terms-use .ftu-card-list article>div{flex:1 1 0%;width:auto!important;min-width:0!important;max-width:none!important;}
.frosa-terms-use .ftu-card-list article :is(h3,p){width:auto;max-width:none!important;overflow-wrap:anywhere;word-break:normal;}
.frosa-terms-use .ftu-share-list,.frosa-terms-use .ftu-rights-card,.frosa-terms-use .ftu-other{width:100%;min-width:0!important;max-width:none!important;}
@media(max-width:960px){.frosa-terms-use .ftu-hero-grid{gap:38px;}.frosa-terms-use .ftu-two-col{gap:42px;}.frosa-terms-use .ftu-purpose-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.frosa-terms-use .ftu-wrap{width:calc(100% - 40px);}.frosa-terms-use .ftu-hero-grid,.frosa-terms-use .ftu-two-col{grid-template-columns:minmax(0,1fr)!important;gap:28px;}.frosa-terms-use .ftu-hero-grid{padding:28px 0 42px;}.frosa-terms-use .ftu-section{padding:52px 0;}.frosa-terms-use .ftu-section-heading{display:block;}.frosa-terms-use .ftu-section-heading>p{margin-top:12px;}.frosa-terms-use .ftu-contact-grid{align-items:flex-start;}}
@media(max-width:520px){.frosa-terms-use .ftu-wrap{width:calc(100% - 36px);}.frosa-terms-use h1{font-size:39px;}.frosa-terms-use h2{font-size:26px;}.frosa-terms-use .ftu-lead{font-size:15px;}.frosa-terms-use .ftu-toc{gap:2px 14px;}.frosa-terms-use .ftu-toc a{font-size:11px;}.frosa-terms-use .ftu-purpose-grid{grid-template-columns:1fr;}.frosa-terms-use .ftu-contact-grid{display:block;}.frosa-terms-use .ftu-button{width:100%;margin-top:22px;}}
.frosa-terms-use .ftu-contact-address{margin-top:8px;color:#cad8eb;font-size:12px;}

.frosa-terms-use .ftu-limits p{margin-top:14px;color:var(--ftu-muted);font-size:14px;line-height:1.9;}
.frosa-terms-use .ftu-contact p:not(.ftu-kicker){max-width:760px;}

.frosa-terms-use .ftu-limits{padding:23px 26px;border:1px solid var(--ftu-line);border-radius:12px;background:#fff;}


/* Privacy policy page styles. Scoped to .frosa-privacy-policy only. */
.frosa-privacy-policy{--fp-ink:#12233c;--fp-blue:#222681;--fp-muted:#5c6e84;--fp-line:#dfe7f1;--fp-tint:#f5f8fc;width:100%;margin:0;background:#fff;color:var(--fp-ink);font:16px/1.85 "PingFang SC","Microsoft YaHei","Segoe UI",sans-serif;}
.frosa-privacy-policy,.frosa-privacy-policy *,.frosa-privacy-policy *::before,.frosa-privacy-policy *::after{box-sizing:border-box;}
.frosa-privacy-policy :is(h1,h2,h3,p,ul,ol){margin:0;padding:0;}
.frosa-privacy-policy :is(h1,h2,h3){font-family:inherit;color:var(--fp-ink);background:transparent;font-weight:650;text-wrap:pretty;}
.frosa-privacy-policy h1{font-size:clamp(40px,5vw,64px);line-height:1.2;letter-spacing:-.04em;}
.frosa-privacy-policy h2{font-size:clamp(27px,3vw,37px);line-height:1.42;letter-spacing:-.025em;}
.frosa-privacy-policy h3{font-size:18px;line-height:1.5;}
.frosa-privacy-policy a{color:var(--fp-blue);text-decoration:none;text-underline-offset:4px;}
.frosa-privacy-policy a:hover{text-decoration:underline;}
.frosa-privacy-policy :is(a,summary):focus-visible{outline:3px solid #4385ff;outline-offset:4px;}
.frosa-privacy-policy .fp-wrap{width:calc(100% - 64px);max-width:1200px;margin-inline:auto;}
.frosa-privacy-policy .fp-hero{background:linear-gradient(115deg,#f2f7ff,#fff 76%);}
.frosa-privacy-policy .fp-crumb{display:flex;flex-wrap:wrap;gap:9px;padding:20px 0;color:var(--fp-muted);font-size:12px;}
.frosa-privacy-policy .fp-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;padding:52px 0 65px;}
.frosa-privacy-policy .fp-kicker{margin-bottom:14px;color:var(--fp-blue);font-size:11px;font-weight:700;letter-spacing:.12em;line-height:1.8;}
.frosa-privacy-policy .fp-lead{max-width:720px;margin-top:23px;color:var(--fp-muted);font-size:17px;line-height:1.9;}
.frosa-privacy-policy .fp-updated{margin-top:20px;color:var(--fp-muted);font-size:12px;}
.frosa-privacy-policy .fp-hero-card{padding:30px 32px;border:1px solid var(--fp-line);border-radius:14px;background:#fff;box-shadow:0 16px 38px #173b6d0b;}
.frosa-privacy-policy .fp-hero-card>span{color:var(--fp-blue);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;}
.frosa-privacy-policy .fp-hero-card h2{margin-top:13px;font-size:25px;}
.frosa-privacy-policy .fp-hero-card p{margin-top:10px;color:var(--fp-muted);font-size:13px;}
.frosa-privacy-policy .fp-hero-card a{display:inline-flex;margin-top:16px;font-size:13px;font-weight:650;}
.frosa-privacy-policy .fp-toc{display:flex;flex-wrap:wrap;gap:5px 24px;padding:14px 0;border-top:1px solid var(--fp-line);}
.frosa-privacy-policy .fp-toc a{display:flex;align-items:center;min-height:38px;font-size:12px;font-weight:600;}
.frosa-privacy-policy .fp-section{padding:74px 0;scroll-margin-top:110px;}
.frosa-privacy-policy .fp-tint{background:var(--fp-tint);}
.frosa-privacy-policy .fp-two-col{display:grid;grid-template-columns:.82fr 1.18fr;gap:72px;align-items:start;}
.frosa-privacy-policy .fp-copy{margin-top:15px;color:var(--fp-muted);font-size:14px;line-height:1.9;}
.frosa-privacy-policy .fp-copy a{font-weight:600;}
.frosa-privacy-policy .fp-card-list{border-top:1px solid var(--fp-line);}
.frosa-privacy-policy .fp-card-list article{display:grid;grid-template-columns:36px 1fr;gap:15px;padding:22px 0;border-bottom:1px solid var(--fp-line);}
.frosa-privacy-policy .fp-card-list article>span,.frosa-privacy-policy .fp-purpose-grid article>b{color:var(--fp-blue);font-size:11px;font-weight:700;letter-spacing:.08em;}
.frosa-privacy-policy .fp-card-list h3{font-size:17px;}
.frosa-privacy-policy .fp-card-list p,.frosa-privacy-policy .fp-share-list p{margin-top:7px;color:var(--fp-muted);font-size:13px;line-height:1.85;}
.frosa-privacy-policy .fp-section-heading{display:flex;justify-content:space-between;gap:36px;align-items:flex-end;margin-bottom:28px;}
.frosa-privacy-policy .fp-section-heading>p{max-width:475px;color:var(--fp-muted);font-size:14px;}
.frosa-privacy-policy .fp-purpose-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.frosa-privacy-policy .fp-purpose-grid article{min-width:0;padding:21px;border:1px solid var(--fp-line);border-radius:11px;background:#fff;}
.frosa-privacy-policy .fp-purpose-grid h3{margin-top:13px;font-size:16px;}
.frosa-privacy-policy .fp-purpose-grid p{margin-top:7px;color:var(--fp-muted);font-size:12px;line-height:1.85;}
.frosa-privacy-policy .fp-note{margin-top:18px;padding:17px 20px;border-left:3px solid #83a9e8;background:#edf4ff;}
.frosa-privacy-policy .fp-note strong{font-size:13px;}
.frosa-privacy-policy .fp-note p{margin-top:4px;color:var(--fp-muted);font-size:12px;}
.frosa-privacy-policy .fp-share-list article{padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid var(--fp-line);}
.frosa-privacy-policy .fp-share-list article:last-child{margin-bottom:0;}
.frosa-privacy-policy .fp-share-list article>span{font-size:15px;font-weight:650;}
.frosa-privacy-policy .fp-rights-card{padding:25px 27px;border:1px solid var(--fp-line);border-radius:12px;background:#fff;}
.frosa-privacy-policy .fp-rights-card h3{font-size:18px;}
.frosa-privacy-policy .fp-rights-card p{margin-top:12px;color:var(--fp-muted);font-size:13px;line-height:1.9;}
.frosa-privacy-policy .fp-rights-card a{font-weight:650;overflow-wrap:anywhere;}
.frosa-privacy-policy .fp-other details{border-bottom:1px solid var(--fp-line);}
.frosa-privacy-policy .fp-other summary{display:flex;justify-content:space-between;gap:18px;align-items:center;min-height:57px;cursor:pointer;list-style:none;font-size:15px;font-weight:650;}
.frosa-privacy-policy .fp-other summary::-webkit-details-marker{display:none;}
.frosa-privacy-policy .fp-other summary::after{content:"+";flex:none;color:var(--fp-blue);font-size:21px;}
.frosa-privacy-policy .fp-other details[open] summary::after{content:"−";}
.frosa-privacy-policy .fp-other details p{padding:0 26px 18px 0;color:var(--fp-muted);font-size:13px;line-height:1.9;}
.frosa-privacy-policy .fp-contact{padding:58px 0;background:#142e55;scroll-margin-top:110px;}
.frosa-privacy-policy .fp-contact-grid{display:flex;justify-content:space-between;align-items:center;gap:44px;}
.frosa-privacy-policy .fp-contact h2{color:#fff;}
.frosa-privacy-policy .fp-contact p:not(.fp-kicker){max-width:720px;margin-top:14px;color:#cad8eb;font-size:14px;}
.frosa-privacy-policy .fp-contact p a{color:#fff;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere;}
.frosa-privacy-policy .fp-contact .fp-kicker{color:#b9d2f8;}
.frosa-privacy-policy .fp-button{display:inline-flex;flex:none;justify-content:space-between;align-items:center;gap:26px;min-height:52px;padding:13px 20px;border-radius:7px;background:#fff!important;color:#194985!important;-webkit-text-fill-color:#194985!important;font-size:14px!important;line-height:1.45!important;font-weight:650!important;text-indent:0!important;letter-spacing:normal!important;text-transform:none!important;}
.frosa-privacy-policy .fp-button:hover{background:#eaf1fb;text-decoration:none;}
.frosa-privacy-policy .fp-two-col{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;}
.frosa-privacy-policy .fp-two-col>*{width:100%;min-width:0!important;max-width:none!important;}
.frosa-privacy-policy .fp-card-list{width:100%;min-width:0!important;max-width:none!important;}
.frosa-privacy-policy .fp-card-list article{display:flex!important;align-items:flex-start;width:100%;min-width:0!important;max-width:none!important;}
.frosa-privacy-policy .fp-card-list article>span{flex:0 0 36px;width:36px;}
.frosa-privacy-policy .fp-card-list article>div{flex:1 1 0%;width:auto!important;min-width:0!important;max-width:none!important;}
.frosa-privacy-policy .fp-card-list article :is(h3,p){width:auto;max-width:none!important;overflow-wrap:anywhere;word-break:normal;}
.frosa-privacy-policy .fp-share-list,.frosa-privacy-policy .fp-rights-card,.frosa-privacy-policy .fp-other{width:100%;min-width:0!important;max-width:none!important;}
@media(max-width:960px){.frosa-privacy-policy .fp-hero-grid{gap:38px;}.frosa-privacy-policy .fp-two-col{gap:42px;}.frosa-privacy-policy .fp-purpose-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.frosa-privacy-policy .fp-wrap{width:calc(100% - 40px);}.frosa-privacy-policy .fp-hero-grid,.frosa-privacy-policy .fp-two-col{grid-template-columns:minmax(0,1fr)!important;gap:28px;}.frosa-privacy-policy .fp-hero-grid{padding:28px 0 42px;}.frosa-privacy-policy .fp-section{padding:52px 0;}.frosa-privacy-policy .fp-section-heading{display:block;}.frosa-privacy-policy .fp-section-heading>p{margin-top:12px;}.frosa-privacy-policy .fp-contact-grid{align-items:flex-start;}}
@media(max-width:520px){.frosa-privacy-policy .fp-wrap{width:calc(100% - 36px);}.frosa-privacy-policy h1{font-size:39px;}.frosa-privacy-policy h2{font-size:26px;}.frosa-privacy-policy .fp-lead{font-size:15px;}.frosa-privacy-policy .fp-toc{gap:2px 14px;}.frosa-privacy-policy .fp-toc a{font-size:11px;}.frosa-privacy-policy .fp-purpose-grid{grid-template-columns:1fr;}.frosa-privacy-policy .fp-contact-grid{display:block;}.frosa-privacy-policy .fp-button{width:100%;margin-top:22px;}}
.frosa-privacy-policy .fp-contact-address{margin-top:8px;color:#cad8eb;font-size:12px;}


/* Article and archive only; shared header/footer remain unchanged. */
.allreg-single-template,.allreg-archive-template {
 --allreg-primary: #1559d6;
 --allreg-ink: #253047;
 --allreg-muted: #66758a;
 --allreg-line: #e7ebf1;
 --allreg-anchor-offset: 112px;
 font-family: var(--allreg-font,"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif);
 color: var(--allreg-ink);
 background: #fff;
 font-size: 16px;
 line-height: 1.8;
 padding-bottom: 80px;
 margin-block-start: 0;
}
:is(.allreg-single-template,.allreg-archive-template),
:is(.allreg-single-template,.allreg-archive-template) * { box-sizing: border-box; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-template-container {
 width: calc(100% - 48px); max-width: 1280px; margin-inline: auto;
}
:is(.allreg-single-template,.allreg-archive-template) :where(a) { color:var(--allreg-primary); text-underline-offset:4px; }
:is(.allreg-single-template,.allreg-archive-template) :is(a,button,input,summary):focus-visible { outline:2px solid var(--allreg-primary); outline-offset:4px; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-breadcrumbs {
 padding-block: 26px; color: var(--allreg-muted); font-size: 13px; overflow-wrap: anywhere;
}
:is(.allreg-single-template,.allreg-archive-template) .allreg-breadcrumbs p { margin:0; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-breadcrumbs a { color:var(--allreg-muted); text-decoration:none; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-breadcrumbs a:hover { color:var(--allreg-primary); text-decoration:underline; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-editorial-kicker { color:var(--allreg-primary);font-size:10px;font-weight:700;letter-spacing:.15em;margin:0 0 12px; }
.allreg-single-template .allreg-entry-heading { max-width:900px; padding-block:24px 38px; margin:0; }
.allreg-single-template .allreg-entry-categories { font-size:12px; margin:0 0 17px; }
.allreg-single-template .allreg-entry-categories a { text-decoration:none; font-weight:600; }
.allreg-single-template .allreg-entry-title { font-size:clamp(30px,3.3vw,46px);line-height:1.4;letter-spacing:-.025em;margin:0 0 21px;overflow-wrap:anywhere; }
.allreg-single-template .allreg-entry-meta { display:flex;flex-wrap:wrap;gap:10px 28px;font-size:12px;color:var(--allreg-muted);margin:0; }
.allreg-single-template .allreg-meta-item { display:flex;gap:8px;align-items:baseline; }
.allreg-single-template .allreg-meta-item>* { margin:0; }
.allreg-single-template .allreg-meta-item a { color:inherit;text-decoration:none; }
.allreg-single-template .allreg-entry-summary { font-size:17px;line-height:1.9;color:#526378;margin:26px 0 0;border-left:3px solid #bdd3f8;padding:3px 0 3px 19px; }
.allreg-single-template .allreg-entry-summary p { margin:0; }
.allreg-single-template .allreg-single-layout { display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:64px;align-items:start;border-top:1px solid var(--allreg-line);padding-top:38px;margin:0; }
.allreg-single-template .allreg-entry { min-width:0;margin:0; }
.allreg-single-template .allreg-entry-cover { margin:0 0 30px; }
.allreg-single-template .allreg-entry-cover img { display:block;width:100%;height:auto;border-radius:12px; }
.allreg-single-template .allreg-post-body { font-size:17px;line-height:1.95;overflow-wrap:anywhere; }
.allreg-single-template .allreg-post-body :is(h2,h3,h4,h5,h6) { scroll-margin-top:var(--allreg-anchor-offset);color:var(--allreg-ink); }
.allreg-single-template .allreg-post-body h2 { font-size:27px;line-height:1.5;margin:45px 0 17px;letter-spacing:-.02em; }
.allreg-single-template .allreg-post-body h3 { font-size:21px;line-height:1.55;margin:29px 0 12px; }
.allreg-single-template .allreg-post-body>:first-child { margin-top:0; }
.allreg-single-template .allreg-post-body p { margin:0 0 20px; }
.allreg-single-template .allreg-post-body :is(ul,ol) { padding-left:1.5em;margin-block:18px; }
.allreg-single-template .allreg-post-body li { margin-bottom:7px; }
.allreg-single-template .allreg-post-body blockquote { margin:25px 0;padding:19px 23px;background:#f5f8fd;border-left:3px solid var(--allreg-primary);border-radius:0 8px 8px 0; }
.allreg-single-template .allreg-post-body blockquote p:last-child { margin-bottom:0; }
.allreg-single-template .allreg-post-body img { max-width:100%;height:auto; }
.allreg-single-template .allreg-post-body :is(figure,iframe,video) { max-width:100%; }
.allreg-single-template .allreg-post-body figure { margin-inline:0; }
.allreg-single-template .allreg-post-body figcaption { color:var(--allreg-muted);font-size:13px; }
.allreg-single-template .allreg-post-body .wp-block-table { overflow-x:auto; }
.allreg-single-template .allreg-post-body table { border-collapse:collapse;width:100%;font-size:15px; }
.allreg-single-template .allreg-post-body :is(td,th) { border:1px solid #dce3ee;padding:12px 15px;text-align:left;min-width:110px; }
.allreg-single-template .allreg-post-body th { background:#f1f5fb;font-weight:600; }
.allreg-single-template .allreg-post-body pre { overflow:auto;max-width:100%;font-size:14px;padding:20px;background:#f5f8fd; }
.allreg-single-template .allreg-entry-tags { margin:32px 0;font-size:12px;color:var(--allreg-muted); }
.allreg-single-template .allreg-post-navigation { display:grid;grid-template-columns:1fr 1fr;gap:25px;border-top:1px solid var(--allreg-line);padding-top:25px;font-size:14px; }
.allreg-single-template .allreg-post-navigation .post-navigation-link-next { text-align:right; }
.allreg-single-template .allreg-single-sidebar { position:sticky;top:var(--allreg-anchor-offset);margin:0;max-height:calc(100vh - 140px);max-height:calc(100dvh - 140px);overflow-y:auto;padding:3px; }
.allreg-single-template .allreg-article-toc { margin:0 0 24px;border:1px solid var(--allreg-line);padding:22px;border-radius:12px;background:#fff; }
.allreg-single-template .allreg-article-toc[hidden] { display:none; }
.allreg-single-template .allreg-article-toc h2 { font-size:17px;line-height:1.5;margin:0 0 17px; }
.allreg-single-template .allreg-toc-list { list-style:none;padding:0;margin:0; }
.allreg-single-template .allreg-toc-list li { margin:0; }
.allreg-single-template .allreg-toc-list a { display:block;padding:7px 0;color:#5a697c;font-size:13px;line-height:1.65;text-decoration:none; }
.allreg-single-template .allreg-toc-list a:hover { color:var(--allreg-primary);text-decoration:underline; }
.allreg-single-template .allreg-toc-list .allreg-toc-sub { padding-left:13px;border-left:1px solid #dfe7f1; }
.allreg-single-template .allreg-article-sources { padding:23px;background:#f5f8fd;border-radius:10px;margin-top:38px; }
.allreg-single-template .allreg-post-body .allreg-article-sources h2 { margin-top:0;font-size:21px; }
.allreg-single-template .allreg-article-sources :is(p,li) { font-size:14px; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-editorial-consult { border:1px solid #dce6f8;background:linear-gradient(145deg,#f2f7ff,#fbfcff);padding:24px;border-radius:12px; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-editorial-consult h2 { font-size:22px;line-height:1.55;margin:0 0 13px; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-editorial-consult>p:not(.allreg-editorial-kicker) { font-size:13px;color:var(--allreg-muted);line-height:1.8;margin:0 0 20px; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-editorial-button { display:flex;align-items:center;justify-content:space-between;gap:14px;border-radius:8px;background:var(--allreg-primary);color:#fff;padding:12px 15px;font-size:13px;font-weight:600;text-decoration:none; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-editorial-button:hover { background:#1046ad; }
:is(.allreg-single-template,.allreg-archive-template) .allreg-editorial-phone { display:block;margin-top:13px;text-align:center;font-size:13px;text-decoration:none;color:#526378; }
.allreg-archive-template .allreg-archive-heading { padding:24px 0 40px;max-width:850px;margin:0; }
.allreg-archive-template .allreg-archive-title { font-size:clamp(32px,4vw,46px);line-height:1.35;letter-spacing:-.03em;margin:0 0 18px;background:transparent;color:#253047; }
.allreg-archive-template .allreg-archive-description { font-size:16px;color:var(--allreg-muted);line-height:1.85;max-width:740px; }
.allreg-archive-template .allreg-archive-description p { margin:0 0 10px; }
.allreg-archive-template .allreg-archive-layout { display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:48px;align-items:start;border-top:1px solid var(--allreg-line);padding-top:36px;margin:0; }
.allreg-archive-template .allreg-archive-query { min-width:0;margin:0; }
.allreg-archive-template .allreg-archive-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding:0;margin:0;list-style:none; }
.allreg-archive-template .allreg-archive-grid>li { min-width:0;margin:0; }
.allreg-archive-template .allreg-archive-card { display:flex;flex-direction:column;height:100%;min-width:0;padding:27px;border:1px solid var(--allreg-line);border-radius:12px;background:#fff;transition:border-color .15s,box-shadow .15s; }
.allreg-archive-template .allreg-archive-card:hover { border-color:#b8cdf0;box-shadow:0 8px 28px #17386109; }
.allreg-archive-template .allreg-card-category { font-size:11px;margin:0 0 17px; }
.allreg-archive-template .allreg-card-category a { text-decoration:none;font-weight:600; }
.allreg-archive-template .allreg-card-title { font-size:21px;line-height:1.6;margin:0 0 13px;overflow-wrap:anywhere; }
.allreg-archive-template .allreg-card-title a { color:var(--allreg-ink);text-decoration:none; }
.allreg-archive-template .allreg-card-title a:hover { color:var(--allreg-primary); }
.allreg-archive-template .allreg-card-summary { color:var(--allreg-muted);font-size:14px;line-height:1.85;margin:0 0 23px; }
.allreg-archive-template .allreg-card-summary p { margin:0; }
.allreg-archive-template .allreg-card-bottom { display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:auto;border-top:1px solid var(--allreg-line);padding-top:17px;font-size:12px; }
.allreg-archive-template .allreg-card-bottom .wp-block-post-date { color:var(--allreg-muted); }
.allreg-archive-template .allreg-card-bottom a { text-decoration:none; }
.allreg-archive-template .allreg-pagination { display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:38px 0 0;font-size:13px; }
.allreg-archive-template .allreg-pagination :is(a,.current) { display:inline-flex;min-width:38px;min-height:40px;align-items:center;justify-content:center;padding:5px 12px;border:1px solid var(--allreg-line);border-radius:6px;text-decoration:none; }
.allreg-archive-template .allreg-pagination .current { color:white;background:var(--allreg-primary);border-color:var(--allreg-primary); }
.allreg-archive-template .allreg-pagination .wp-block-query-pagination-numbers { display:flex;gap:7px;align-items:center; }
.allreg-archive-template .allreg-archive-sidebar { margin:0;min-width:0; }
.allreg-archive-template .allreg-sidebar-module { border-bottom:1px solid var(--allreg-line);padding-bottom:26px;margin:0 0 26px; }
.allreg-archive-template .allreg-sidebar-module h2 { font-size:17px;margin:0 0 16px;line-height:1.5; }
.allreg-archive-template .wp-block-search__inside-wrapper { display:flex;gap:6px;max-width:100%; }
.allreg-archive-template .wp-block-search__input { min-width:0;width:100%;border:1px solid #d2ddea;padding:10px;border-radius:6px;font:inherit;font-size:13px;background:#fff;color:var(--allreg-ink); }
.allreg-archive-template .wp-block-search__button { border:0;border-radius:6px;background:var(--allreg-primary);color:#fff;font:inherit;font-size:13px;padding:10px 14px;margin:0;white-space:nowrap; }
.allreg-archive-template .allreg-category-list { list-style:none;font-size:13px;padding:0;margin:0;color:var(--allreg-muted); }
.allreg-archive-template .allreg-category-list li { padding:7px 0; }
.allreg-archive-template .allreg-category-list a { color:var(--allreg-ink);text-decoration:none; }
.allreg-archive-template .allreg-category-list a:hover { color:var(--allreg-primary);text-decoration:underline; }
.allreg-archive-template .allreg-category-list ul { list-style:none;padding:4px 0 0 15px; }
.allreg-archive-template .allreg-empty-state { padding:35px;border:1px dashed #ccd9eb;border-radius:12px;background:#f7faff; }
.allreg-archive-template .allreg-empty-state h2 { font-size:24px;margin:0 0 13px; }
.allreg-archive-template .allreg-empty-state p { font-size:15px;color:var(--allreg-muted); }
body.admin-bar .allreg-single-template { --allreg-anchor-offset:144px; }
@media(max-width:1100px) {
 .allreg-single-template .allreg-single-layout { gap:36px;grid-template-columns:minmax(0,1fr) 250px; }
 .allreg-archive-template .allreg-archive-layout { gap:28px;grid-template-columns:minmax(0,1fr) 235px; }
 .allreg-archive-template .allreg-archive-card { padding:22px; }
}
@media(max-width:850px) {
 .allreg-single-template .allreg-single-layout,.allreg-archive-template .allreg-archive-layout { grid-template-columns:minmax(0,1fr);gap:32px; }
 .allreg-single-template .allreg-single-sidebar { position:static;max-height:none;overflow:visible;display:contents; }
 .allreg-single-template .allreg-article-toc { grid-row:1;margin:0; }
 .allreg-single-template .allreg-entry { grid-row:2; }
 .allreg-single-template .allreg-editorial-consult { grid-row:3; }
 .allreg-archive-template .allreg-archive-sidebar { display:grid;grid-template-columns:1fr 1fr;gap:25px; }
 .allreg-archive-template .allreg-archive-sidebar .allreg-editorial-consult { grid-column:1/-1; }
}
@media(max-width:600px) {
 .allreg-single-template,.allreg-archive-template { padding-bottom:48px; }
 :is(.allreg-single-template,.allreg-archive-template) .allreg-template-container { width:calc(100% - 32px); }
 :is(.allreg-single-template,.allreg-archive-template) .allreg-breadcrumbs { font-size:12px;padding-block:19px; }
 .allreg-single-template .allreg-entry-heading { padding:13px 0 27px; }
 .allreg-single-template .allreg-entry-summary { font-size:15px;padding-left:14px;margin-top:20px; }
 .allreg-single-template .allreg-single-layout { padding-top:25px; }
 .allreg-single-template .allreg-post-body { font-size:16px; }
 .allreg-single-template .allreg-post-body h2 { font-size:23px;margin-top:35px; }
 .allreg-single-template .allreg-post-body h3 { font-size:19px; }
 .allreg-single-template .allreg-post-navigation { grid-template-columns:1fr;gap:18px; }
 .allreg-single-template .allreg-post-navigation .post-navigation-link-next { text-align:left; }
 .allreg-archive-template .allreg-archive-heading { padding:13px 0 27px; }
 .allreg-archive-template .allreg-archive-grid,.allreg-archive-template .allreg-archive-sidebar { grid-template-columns:1fr; }
 .allreg-archive-template .allreg-archive-card { padding:23px; }
 .allreg-archive-template .allreg-card-title { font-size:20px; }
 .allreg-archive-template .allreg-archive-description { font-size:15px; }
}
@media(prefers-reduced-motion:reduce) {
 :is(.allreg-single-template,.allreg-archive-template) * { transition:none!important;scroll-behavior:auto!important; }
}
/* ALL REG — archive article cards v2
   Append to the existing archive CSS. No HTML/JavaScript changes needed.
   Scope: article cards and pagination inside .allreg-archive-template only. */

.allreg-archive-template .allreg-archive-query .allreg-archive-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.allreg-archive-template .allreg-archive-grid > .wp-block-post {
    display: flex;
    min-width: 0;
    margin: 0;
}

.allreg-archive-template .allreg-archive-grid .allreg-archive-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-height: 306px;
    margin: 0 !important;
    /* Override Spectra's .wp-block-group.is-layout-flow padding reset. */
    padding: 28px !important;
    border: 1px solid #e2e9f2;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 3px 14px rgba(24, 49, 83, .025);
    transition: border-color .18s ease, box-shadow .18s ease;
}

.allreg-archive-template .allreg-archive-grid .allreg-archive-card:hover,
.allreg-archive-template .allreg-archive-grid .allreg-archive-card:focus-within {
    border-color: #b5ccef;
    box-shadow: 0 10px 28px rgba(24, 65, 124, .07);
}

.allreg-archive-template .allreg-archive-card .allreg-card-category {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin: 0 0 18px !important;
    font-size: 11px;
    line-height: 1.5;
}

.allreg-archive-template .allreg-card-category .wp-block-post-terms__separator {
    display: none;
}

.allreg-archive-template .allreg-card-category a {
    display: inline-flex;
    align-items: center;
    padding: 5px 10px;
    border-radius: 5px;
    color: #2355a1;
    background: #edf4ff;
    font-weight: 500;
    text-decoration: none;
}

.allreg-archive-template .allreg-card-category a:hover {
    background: #dfeaff;
    color: #123f88;
}

.allreg-archive-template .allreg-archive-card .allreg-card-title {
    margin: 0 0 15px !important;
    padding: 0;
    background: transparent;
    font-size: 20px;
    font-weight: 650;
    line-height: 1.65;
    letter-spacing: 0;
    overflow-wrap: anywhere;
}

.allreg-archive-template .allreg-card-title a {
    color: #1e3049;
    text-decoration: none;
}

.allreg-archive-template .allreg-card-title a:hover {
    color: #1559d6;
}

.allreg-archive-template .allreg-archive-card .allreg-card-summary {
    margin: 0 0 26px !important;
    color: #67758a;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.9;
}

.allreg-archive-template .allreg-card-summary p {
    margin: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.allreg-archive-template .allreg-archive-card .allreg-card-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin: auto 0 0 !important;
    padding: 19px 0 0 !important;
    border-top: 1px solid #edf1f6;
    background: transparent;
}

.allreg-archive-template .allreg-card-bottom > * {
    margin: 0 !important;
}

.allreg-archive-template .allreg-card-bottom .wp-block-post-date {
    color: #748196;
    font-size: 12px;
    font-variant-numeric: tabular-nums;
    letter-spacing: .025em;
}

.allreg-archive-template .allreg-card-bottom .wp-block-read-more {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    color: #1559d6;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
}

.allreg-archive-template .allreg-card-bottom .wp-block-read-more:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
}

.allreg-archive-template .allreg-pagination {
    gap: 10px;
    margin-top: 40px;
}

.allreg-archive-template .allreg-pagination a:hover {
    border-color: #b8cdf0;
    background: #f2f6ff;
}

@media (max-width: 1100px) {
    .allreg-archive-template .allreg-archive-query .allreg-archive-grid { gap: 18px; }
    .allreg-archive-template .allreg-archive-grid .allreg-archive-card { padding: 23px !important; }
    .allreg-archive-template .allreg-archive-card .allreg-card-title { font-size: 19px; }
}

@media (max-width: 600px) {
    .allreg-archive-template .allreg-archive-query .allreg-archive-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .allreg-archive-template .allreg-archive-grid .allreg-archive-card { min-height: 0; padding: 23px !important; border-radius: 12px; }
    .allreg-archive-template .allreg-archive-card .allreg-card-title { font-size: 19px; line-height: 1.65; }
    .allreg-archive-template .allreg-archive-card .allreg-card-summary { margin-bottom: 21px !important; }
    .allreg-archive-template .allreg-card-bottom .wp-block-read-more { min-height: 44px; }
}

@media (prefers-reduced-motion: reduce) {
    .allreg-archive-template .allreg-archive-grid .allreg-archive-card { transition: none; }
}

/* ALL REG — article heading v2
   Append to article/template CSS. No HTML or JS changes required. */

.allreg-single-template .allreg-entry-heading {
    max-width: 960px;
    margin: 0 !important;
    padding: 22px 0 36px !important;
}

.allreg-single-template .allreg-entry-heading .allreg-entry-categories {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0 0 20px !important;
    padding: 0;
    font-size: 12px;
    line-height: 1.5;
}

.allreg-single-template .allreg-entry-categories .wp-block-post-terms__separator {
    display: none;
}

.allreg-single-template .allreg-entry-categories a {
    display: inline-flex;
    align-items: center;
    padding: 5px 11px;
    border-radius: 5px;
    background: #edf4ff;
    color: #2355a1;
    font-weight: 500;
    text-decoration: none;
}

.allreg-single-template .allreg-entry-categories a:hover {
    background: #dfeaff;
    color: #123f88;
}

.allreg-single-template .allreg-entry-heading .allreg-entry-title {
    margin: 0 0 23px !important;
    padding: 0;
    background: transparent;
    color: #1e3049;
    font-size: clamp(28px, 3vw, 40px);
    font-weight: 650;
    line-height: 1.48;
    letter-spacing: -.015em;
    word-break: normal;
    overflow-wrap: anywhere;
    text-wrap: pretty;
}

.allreg-single-template .allreg-entry-heading .allreg-entry-meta {
    display: flex !important;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 12px 28px;
    margin: 0 !important;
    padding: 0 !important;
    color: #718096;
    font-size: 13px;
    line-height: 1.6;
}

/* Reset flow-layout margins on BOTH groups, not just their contents. */
.allreg-single-template .allreg-entry-meta > .allreg-meta-item {
    display: inline-flex !important;
    flex: 0 0 auto;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0;
    max-width: 100%;
    line-height: inherit;
}

.allreg-single-template .allreg-entry-meta .allreg-meta-item > * {
    margin: 0 !important;
    padding: 0 !important;
    font-size: inherit;
    line-height: inherit;
}

.allreg-single-template .allreg-meta-item > p {
    color: #718096;
    flex-shrink: 0;
}

.allreg-single-template .allreg-entry-meta .wp-block-post-author-name,
.allreg-single-template .allreg-entry-meta .wp-block-post-date {
    color: #40516a;
    overflow-wrap: anywhere;
    font-variant-numeric: tabular-nums;
}

.allreg-single-template .allreg-entry-meta .wp-block-post-author-name a {
    color: #40516a;
    font-weight: 600;
    text-decoration: none;
}

.allreg-single-template .allreg-entry-meta .wp-block-post-author-name a:hover {
    color: #1559d6;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.allreg-single-template .allreg-entry-heading .allreg-entry-summary {
    margin: 26px 0 0 !important;
    padding: 18px 22px !important;
    border: 1px solid #e5ecf5;
    border-left: 3px solid #abc6ef;
    border-radius: 0 9px 9px 0;
    background: #f7f9fc;
    color: #596b82;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.9;
    overflow-wrap: anywhere;
}

.allreg-single-template .allreg-entry-summary p {
    margin: 0 !important;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
}

@media (max-width: 600px) {
    .allreg-single-template .allreg-entry-heading { padding: 15px 0 27px !important; }
    .allreg-single-template .allreg-entry-heading .allreg-entry-categories { margin-bottom: 16px !important; font-size: 11px; }
    .allreg-single-template .allreg-entry-heading .allreg-entry-title { font-size: 28px; line-height: 1.5; margin-bottom: 19px !important; }
    .allreg-single-template .allreg-entry-heading .allreg-entry-meta { gap: 10px 20px; font-size: 12px; }
    .allreg-single-template .allreg-entry-heading .allreg-entry-summary { padding: 15px 16px !important; margin-top: 21px !important; font-size: 15px; }
}

/* Search template additions. Load AFTER the confirmed archive/card CSS.
   Existing .allreg-archive-template classes reuse the approved card design. */
.allreg-search-template .allreg-archive-heading {
    max-width: 960px;
    margin: 0 !important;
    padding: 20px 0 34px !important;
}

.allreg-search-template .allreg-archive-heading .allreg-archive-title {
    margin: 0 0 15px !important;
    padding: 0;
    background: transparent;
    color: #1e3049;
    font-size: clamp(28px, 3vw, 40px);
    font-weight: 650;
    line-height: 1.45;
    letter-spacing: -.015em;
    overflow-wrap: anywhere;
}

.allreg-search-template .allreg-search-intro {
    margin: 0 0 23px !important;
    color: #66758a;
    font-size: 15px;
    line-height: 1.85;
}

.allreg-search-template .allreg-search-form {
    width: 100%;
    max-width: 700px;
    margin: 0 !important;
}

.allreg-search-template .allreg-search-form .wp-block-search__inside-wrapper {
    display: flex;
    align-items: stretch;
    gap: 10px;
    padding: 0;
    border: 0;
    background: transparent;
}

.allreg-search-template .allreg-search-form .wp-block-search__input {
    flex: 1;
    min-width: 0;
    min-height: 50px;
    padding: 12px 16px;
    border: 1px solid #cfdced;
    border-radius: 9px;
    background: #fff;
    color: #253047;
    font-size: 15px;
    line-height: 1.5;
}

.allreg-search-template .allreg-search-form .wp-block-search__button {
    min-height: 50px;
    padding: 12px 25px;
    margin: 0;
    border: 0;
    border-radius: 9px;
    background: #1559d6;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

.allreg-search-template .allreg-search-form .wp-block-search__button:hover { background: #1046ad; }
.allreg-search-template .allreg-card-bottom { justify-content: flex-end !important; }
.allreg-search-template .allreg-card-category:empty { display: none; }
.allreg-search-template .allreg-empty-state {
    margin: 0 !important;
    padding: 38px !important;
    border: 1px solid #dce6f4;
    border-radius: 14px;
    background: #f7faff;
}
.allreg-search-template .allreg-empty-state h2 { color: #253047; background: transparent; line-height: 1.5; }
.allreg-search-template .allreg-search-empty-links { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 23px; }
.allreg-search-template .allreg-search-empty-links a { display: inline-flex; align-items: center; min-height: 44px; color: #1559d6; font-size: 14px; font-weight: 600; text-decoration: none; }
.allreg-search-template .allreg-search-empty-links a:hover { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 600px) {
    .allreg-search-template .allreg-archive-heading { padding: 12px 0 28px !important; }
    .allreg-search-template .allreg-search-intro { font-size: 14px; }
    .allreg-search-template .allreg-search-form .wp-block-search__button { padding-inline: 19px; }
    .allreg-search-template .allreg-search-form .wp-block-search__input { font-size: 16px; padding-inline: 12px; }
    .allreg-search-template .allreg-empty-state { padding: 24px !important; }
}

/* Ordinary page styles only. Keep the confirmed header/footer/sticky CSS. */
.allreg-basic-page {
    margin-block: 0;
    padding: 0 0 80px;
    background: #fff;
    color: #253047;
    font-family: var(--allreg-font,"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif);
    font-size: 16px;
    line-height: 1.9;
}
.allreg-basic-page,.allreg-basic-page * { box-sizing: border-box; }
.allreg-basic-page .allreg-basic-page__container {
    width: calc(100% - 48px);
    max-width: 1280px;
    margin: 0 auto !important;
    padding: 0 !important;
}
.allreg-basic-page .allreg-basic-page__breadcrumbs {
    margin: 0 !important;
    padding: 26px 0 !important;
    font-size: 13px;
    color: #66758a;
    overflow-wrap: anywhere;
}
.allreg-basic-page .allreg-basic-page__breadcrumbs :is(p,div) { margin-block: 0; }
.allreg-basic-page .allreg-basic-page__breadcrumbs a { color: #66758a; text-decoration: none; }
.allreg-basic-page .allreg-basic-page__breadcrumbs a:hover { color: #1559d6; text-decoration: underline; }
.allreg-basic-page .allreg-basic-page__heading {
    margin: 0 0 38px !important;
    padding: 20px 0 30px !important;
    border-bottom: 1px solid #e7ebf1;
    background: transparent;
}
.allreg-basic-page .allreg-basic-page__heading .allreg-basic-page__title {
    max-width: 960px;
    margin: 0 !important;
    padding: 0;
    background: transparent;
    color: #1e3049;
    font-size: clamp(30px,3.2vw,42px);
    font-weight: 650;
    line-height: 1.45;
    letter-spacing: -.015em;
    overflow-wrap: anywhere;
}
.allreg-basic-page .allreg-basic-page__content {
    margin: 0 !important;
    padding: 0 !important;
    overflow-wrap: anywhere;
}
.allreg-basic-page .allreg-basic-page__content > :is(p,ul,ol,blockquote,h2,h3,h4) { max-width: 850px; }
.allreg-basic-page .allreg-basic-page__content > p { margin: 0 0 23px; }
.allreg-basic-page .allreg-basic-page__content > :is(h2,h3,h4) { color: #253047; background: transparent; scroll-margin-top: 120px; }
.allreg-basic-page .allreg-basic-page__content > h2 { margin: 40px 0 17px; font-size: 27px; line-height: 1.5; }
.allreg-basic-page .allreg-basic-page__content > h3 { margin: 28px 0 13px; font-size: 21px; line-height: 1.55; }
.allreg-basic-page .allreg-basic-page__content > :first-child { margin-top: 0; }
.allreg-basic-page .allreg-basic-page__content > :is(ul,ol) { padding-left: 1.5em; margin-block: 19px; }
.allreg-basic-page .allreg-basic-page__content > :is(ul,ol) > li { margin-bottom: 8px; }
.allreg-basic-page .allreg-basic-page__content > blockquote { margin: 26px 0; padding: 20px 24px; border-left: 3px solid #abc6ef; background: #f5f8fd; }
.allreg-basic-page .allreg-basic-page__content > blockquote p:last-child { margin-bottom: 0; }
.allreg-basic-page .allreg-basic-page__content :is(img,video,iframe) { max-width: 100%; }
.allreg-basic-page .allreg-basic-page__content img { height: auto; }
.allreg-basic-page .allreg-basic-page__content > .wp-block-table { max-width: 100%; margin-inline: 0; overflow-x: auto; }
.allreg-basic-page .allreg-basic-page__content > .wp-block-table table { width: 100%; border-collapse: collapse; }
.allreg-basic-page .allreg-basic-page__content > .wp-block-table :is(th,td) { border: 1px solid #dce3ee; padding: 12px 15px; min-width: 110px; text-align: left; }
.allreg-basic-page .allreg-basic-page__content > .wp-block-table th { background: #f3f7fc; }
.allreg-basic-page .allreg-basic-page__content > p a { color: #1559d6; text-underline-offset: 4px; }
.allreg-basic-page :is(a,button,input,textarea,select,summary):focus-visible { outline: 2px solid #1559d6; outline-offset: 4px; }

/* Canvas variant: the page's existing content owns title, spacing and width. */
.allreg-canvas-page,.allreg-canvas-page .allreg-canvas-page__content {
    width: 100%;
    max-width: none;
    margin: 0 !important;
    padding: 0 !important;
}
@media (max-width: 600px) {
    .allreg-basic-page { padding-bottom: 48px; }
    .allreg-basic-page .allreg-basic-page__container { width: calc(100% - 32px); }
    .allreg-basic-page .allreg-basic-page__breadcrumbs { padding-block: 19px !important; font-size: 12px; }
    .allreg-basic-page .allreg-basic-page__heading { padding: 12px 0 24px !important; margin-bottom: 27px !important; }
    .allreg-basic-page .allreg-basic-page__content > h2 { font-size: 23px; }
    .allreg-basic-page .allreg-basic-page__content > h3 { font-size: 19px; }
}

/* ALL REG · 404 专用样式；仅作用于此模板 */
.allreg-notfound{--nf-ink:#17284a;--nf-blue:#195de0;--nf-muted:#5c6e86;box-sizing:border-box;background:#fff;color:var(--nf-ink);margin-block:0!important;padding:64px 24px 80px!important;font-family:inherit;}
.allreg-notfound *, .allreg-notfound *::before,.allreg-notfound *::after{box-sizing:border-box;}
.allreg-notfound .allreg-notfound__container{width:100%;max-width:1280px;margin:0 auto!important;padding:0!important;}
.allreg-notfound .allreg-notfound__intro{text-align:center;margin:0;}
.allreg-notfound .allreg-notfound__code{font-size:clamp(80px,12vw,132px);font-weight:750;line-height:1;letter-spacing:-.06em;color:#dbe7fb;margin:0 0 22px;}
.allreg-notfound .allreg-notfound__eyebrow{font-size:12px;letter-spacing:.14em;font-weight:650;color:var(--nf-blue);margin:0 0 14px;}
.allreg-notfound h1{font-size:clamp(28px,4vw,40px);font-weight:650;line-height:1.4;letter-spacing:-.025em;color:var(--nf-ink);background:transparent;margin:0 0 18px;padding:0;}
.allreg-notfound .allreg-notfound__lead{font-size:16px;line-height:1.9;color:var(--nf-muted);margin:0;}
.allreg-notfound .allreg-notfound__search{max-width:640px;margin:28px auto 0!important;}
.allreg-notfound .wp-block-search__label{display:block;color:var(--nf-ink);font-size:14px;font-weight:600;margin-bottom:10px;}
.allreg-notfound .wp-block-search__inside-wrapper{display:flex;gap:10px;padding:0;border:0;}
.allreg-notfound .wp-block-search__input{min-width:0;width:100%;height:52px;border:1px solid #cbd8ea;border-radius:10px;background:#fff;color:var(--nf-ink);padding:12px 16px;font:inherit;font-size:15px;}
.allreg-notfound .wp-block-search__button{flex-shrink:0;margin:0;border:0;border-radius:10px;background:var(--nf-blue);color:#fff;padding:12px 24px;font:inherit;font-size:15px;font-weight:600;cursor:pointer;}
.allreg-notfound .allreg-notfound__actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px 28px;margin:24px 0 0;}
.allreg-notfound .allreg-notfound__actions a{display:inline-flex;align-items:center;gap:14px;min-height:44px;font-size:15px;font-weight:600;text-decoration:none;color:var(--nf-blue);}
.allreg-notfound .allreg-notfound__services{margin:52px 0 0;padding:32px 0 0;border-top:1px solid #e3eaf3;}
.allreg-notfound .allreg-notfound__section-heading{text-align:center;}
.allreg-notfound h2{font-size:22px;line-height:1.5;font-weight:650;color:var(--nf-ink);margin:0;background:transparent;}
.allreg-notfound .allreg-notfound__section-heading p{font-size:14px;line-height:1.8;color:var(--nf-muted);margin:8px 0 24px;}
.allreg-notfound .allreg-notfound__grid{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;padding:0;margin:0;}
.allreg-notfound .allreg-notfound__grid li{margin:0;min-width:0;}
.allreg-notfound .allreg-notfound__grid a{display:flex;flex-direction:column;align-items:flex-start;height:100%;padding:24px 20px;border:1px solid #dfe7f3;border-radius:14px;background:#f8faff;text-decoration:none;color:var(--nf-ink);transition:border-color .18s,background .18s;}
.allreg-notfound .allreg-notfound__number{font-size:12px;line-height:1.5;font-weight:650;color:#6b84aa;}
.allreg-notfound h3{font-size:17px;font-weight:650;line-height:1.6;color:var(--nf-ink);margin:16px 0 22px;background:transparent;}
.allreg-notfound .allreg-notfound__destination{margin-top:auto;display:flex;gap:10px;align-items:center;color:var(--nf-blue);font-size:13px;line-height:1.8;}
.allreg-notfound .allreg-notfound__grid a:hover{border-color:#9cbcf2;background:#f0f5ff;}
.allreg-notfound a:focus-visible,.allreg-notfound input:focus-visible,.allreg-notfound button:focus-visible{outline:3px solid #195de0;outline-offset:4px;}
@media(max-width:1024px){.allreg-notfound .allreg-notfound__grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:640px){.allreg-notfound{padding:40px 20px 48px!important;}.allreg-notfound .allreg-notfound__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}.allreg-notfound .allreg-notfound__grid a{padding:20px 16px;}.allreg-notfound .allreg-notfound__services{margin-top:36px;}.allreg-notfound .wp-block-search__button{padding:12px 18px;}.allreg-notfound .wp-block-search__input{font-size:16px;}}
@media(max-width:360px){.allreg-notfound .allreg-notfound__grid{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){.allreg-notfound .allreg-notfound__grid a{transition:none;}}

/* 索引模板补充样式；保留现有归档与卡片 CSS */
.allreg-index-template .allreg-archive-heading .allreg-archive-title{background:transparent!important;color:#17284a!important;font-size:clamp(30px,4vw,42px);font-weight:650;line-height:1.4;letter-spacing:-.025em;padding:0!important;margin:12px 0 16px!important;}
.allreg-index-template .allreg-archive-heading .allreg-archive-description{max-width:760px;font-size:16px;line-height:1.85;color:#5c6e86;margin:0!important;}


/* FROSA company news archive — WordPress post-query layout */
.frosa-news-page{--fn-ink:#12233c;--fn-text:#526781;--fn-muted:#7c8ba0;--fn-blue:#222681;--fn-bright:#347cff;--fn-line:#e1e8f1;--fn-width:1260px;display:flow-root;margin:0!important;padding:0!important;color:var(--fn-ink);font-family:Inter,"Noto Sans SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.7;overflow:hidden;-webkit-font-smoothing:antialiased}
.frosa-news-page,.frosa-news-page *,.frosa-news-page *::before,.frosa-news-page *::after{box-sizing:border-box}
.frosa-news-page :is(h1,h2,h3,p){margin:0}
.frosa-news-page a{color:inherit;text-decoration:none;text-underline-offset:4px}
.frosa-news-page a:focus-visible{outline:3px solid #8bb5ff;outline-offset:4px;border-radius:4px}
.fnews-wrap{width:min(var(--fn-width),calc(100% - 64px));margin-inline:auto}
.fnews-breadcrumb{display:flex;align-items:center;gap:10px;padding-block:17px;color:#7d8da1;font-size:10px}
.fnews-breadcrumb a:hover{color:#2869cf}
.fnews-breadcrumb span[aria-hidden]{color:#b1bdcc}
.fnews-breadcrumb [aria-current]{color:#526781}
.fnews-eyebrow{display:flex;align-items:center;gap:10px;color:var(--fn-blue);font-size:10px;font-weight:800;letter-spacing:.13em;line-height:1.6}
.fnews-eyebrow>span{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--fn-bright);box-shadow:0 0 0 5px rgba(52,124,255,.11)}
.fnews-hero{position:relative;display:grid;min-height:340px;grid-template-columns:minmax(0,1fr) minmax(320px,.65fr);align-items:center;gap:70px;overflow:hidden;padding:54px 58px;border:1px solid #e5ebf4;border-radius:12px;background:radial-gradient(ellipse at 77% 35%,rgba(69,128,231,.15),transparent 34%),linear-gradient(135deg,#f6f9ff,#fff 75%)}
.fnews-hero::before{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(31,74,142,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(31,74,142,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(90deg,transparent,#000 55%,#000);content:""}
.fnews-hero-copy{position:relative;z-index:1;max-width:650px}
.fnews-hero h1{margin-top:18px;color:#10213a;font-size:clamp(42px,5.8vw,68px);font-weight:760;letter-spacing:-.055em;line-height:1.16}
.fnews-hero-copy>p:not(.fnews-eyebrow){max-width:590px;margin-top:16px;color:var(--fn-text);font-size:14px;line-height:1.9}
.fnews-button{display:inline-flex;min-width:160px;min-height:46px;align-items:center;justify-content:space-between;gap:22px;margin-top:21px;padding:0 16px;border-radius:6px;background:linear-gradient(135deg,#202783,#347cff);box-shadow:0 9px 22px rgba(34,39,129,.17);color:#fff!important;font-size:11px;font-weight:700;transition:transform .2s ease,box-shadow .2s ease}
.fnews-button:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(34,39,129,.24)}
.fnews-hero-aside{position:relative;z-index:1;justify-self:end;width:min(100%,370px);padding:25px 26px 21px;border:1px solid rgba(190,205,226,.78);border-radius:9px;background:rgba(255,255,255,.88);box-shadow:0 18px 46px rgba(28,54,92,.08)}
.fnews-aside-label{color:#8999ae;font-size:9px;font-weight:800;letter-spacing:.14em}
.fnews-hero-aside>strong{display:block;margin-top:15px;color:#172942;font-size:27px;font-weight:720;letter-spacing:-.04em;line-height:1.4}
.fnews-hero-aside>p{margin-top:10px;color:#667991;font-size:11px;line-height:1.85}
.fnews-hero-aside>div{display:flex;align-items:center;gap:10px;margin-top:18px;padding-top:13px;border-top:1px solid #e8edf4;color:#526781;font-size:9px;font-weight:750;letter-spacing:.06em}
.fnews-hero-aside>div span{color:#2869cf}.fnews-hero-aside>div i{width:18px;height:1px;background:#cfdae9}
.fnews-hero-index{position:absolute;right:14px;bottom:-34px;color:rgba(34,38,129,.045);font-size:78px;font-weight:850;letter-spacing:-.06em;line-height:.9;text-align:right;pointer-events:none}
.fnews-articles{padding-block:65px 78px;scroll-margin-top:110px}
.fnews-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:23px}
.fnews-section-heading h2{margin-top:10px;color:#152740;font-size:clamp(27px,3.4vw,38px);font-weight:720;letter-spacing:-.045em;line-height:1.3}
.fnews-section-heading>p{max-width:400px;margin:0 0 4px;color:#687b91;font-size:12px;line-height:1.8}
.fnews-query{margin:0}
.fnews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;margin:0;padding:0}
.fnews-grid>.wp-block-post{min-width:0;margin:0}
.fnews-grid>.wp-block-post[hidden]{display:none!important}
.fnews-card{height:100%;overflow:hidden;border:1px solid #e0e7f1;border-radius:8px;background:#fff;box-shadow:0 8px 25px rgba(27,51,84,.04);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.fnews-card:hover{transform:translateY(-3px);border-color:#c7d7ed;box-shadow:0 16px 35px rgba(27,51,84,.09)}
.fnews-card-image{display:block;overflow:hidden;margin:0!important;aspect-ratio:16/9;background:linear-gradient(140deg,#edf4ff,#dce9ff)}
.fnews-card-image a{display:block;height:100%}
.fnews-card-image img{display:block;width:100%;height:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .35s ease}
.fnews-card:hover .fnews-card-image img{transform:scale(1.035)}
.fnews-card-image:empty{display:block;background:radial-gradient(circle at 75% 30%,rgba(103,151,235,.2),transparent 27%),linear-gradient(140deg,#eef3ff,#e2ebfa)}
.fnews-category{display:flex;flex-wrap:wrap;gap:5px 9px;margin:17px 19px 0!important;color:#2869cf;font-size:9px;font-weight:700}
.fnews-category a{color:inherit}
.fnews-card-title{margin:8px 19px 0!important;color:#192b43;font-size:18px!important;font-weight:700!important;letter-spacing:-.025em;line-height:1.5!important}
.fnews-card-title a:hover{color:#2869cf}
.fnews-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:62px;margin:8px 19px 0!important;color:#687b91;font-size:11px;line-height:1.85}
.fnews-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:17px 19px 0!important;padding:12px 0 16px;border-top:1px solid #edf1f6;color:#8291a4;font-size:9px}
.fnews-card-bottom .wp-block-post-date{margin:0}
.fnews-card-bottom .wp-block-read-more{color:#285cbe;font-size:10px;font-weight:750;white-space:nowrap}
.fnews-card-bottom .wp-block-read-more:hover{color:#347cff}
.fnews-grid>.wp-block-post:first-child{grid-column:1/-1}
.fnews-grid>.wp-block-post:first-child .fnews-card{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;min-height:280px;background:linear-gradient(110deg,#f7faff,#fff 65%)}
.fnews-grid>.wp-block-post:first-child .fnews-card-image{grid-row:1/6;grid-column:1;align-self:center;aspect-ratio:auto!important;min-height:0;height:auto!important;background:#f3f7fd}
.fnews-grid>.wp-block-post:first-child .fnews-card-image a{display:block;height:auto}
.fnews-grid>.wp-block-post:first-child .fnews-card-image img{display:block;width:100%;height:auto!important;aspect-ratio:auto!important;object-fit:contain}
.fnews-grid>.wp-block-post:first-child .fnews-category{grid-column:2;margin:25px 28px 0!important}
.fnews-grid>.wp-block-post:first-child .fnews-card-title{grid-column:2;margin:8px 28px 0!important;font-size:clamp(21px,2.3vw,28px)!important;line-height:1.45!important}
.fnews-grid>.wp-block-post:first-child .fnews-excerpt{grid-column:2;min-height:0;margin:9px 28px 0!important;-webkit-line-clamp:3;font-size:12px}
.fnews-grid>.wp-block-post:first-child .fnews-card-bottom{grid-column:2;margin:15px 28px 0!important;padding-bottom:22px}
.fnews-empty{grid-column:1/-1;padding:44px 20px;border:1px dashed #cdd9e9;border-radius:9px;background:#f8faff;text-align:center}
.fnews-empty-code{color:#347cff;font-size:9px;font-weight:800;letter-spacing:.15em}
.fnews-empty h3{margin-top:9px;color:#192b43;font-size:20px;font-weight:700}
.fnews-empty>p:last-child{margin-top:7px;color:#718198;font-size:12px}
.fnews-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:25px}
.fnews-pagination:empty{display:none}
.fnews-pagination a,.fnews-pagination span{display:grid;min-width:38px;min-height:38px;place-items:center;padding:6px 11px;border:1px solid var(--fn-line);border-radius:5px;background:#fff;color:#536781;font-size:11px}
.fnews-pagination a:hover,.fnews-pagination .current{border-color:#222681;background:#222681;color:#fff}
.fnews-contact{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:58px;padding:30px 34px;border:1px solid #dce6f8;border-radius:9px;background:linear-gradient(110deg,#f2f7ff,#fbfcff)}
.fnews-contact h2{margin-top:10px;color:#162941;font-size:22px;font-weight:720;letter-spacing:-.03em}
.fnews-contact>div>p:last-child{margin-top:6px;color:#64778e;font-size:11px;line-height:1.8}
.fnews-contact>a{display:flex;min-width:150px;min-height:43px;align-items:center;justify-content:space-between;gap:18px;padding:0 14px;border-radius:5px;background:#222681;color:#fff!important;font-size:11px;font-weight:700;transition:background .18s ease}
.fnews-contact>a:hover{background:#347cff}
@media(max-width:900px){.fnews-hero{min-height:0;grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);gap:28px;padding:42px 34px}.fnews-hero h1{font-size:clamp(40px,6vw,56px)}.fnews-hero-aside{padding:21px}.fnews-grid{gap:13px}.fnews-card-title{font-size:16px!important}.fnews-category,.fnews-card-title,.fnews-excerpt{margin-inline:15px!important}.fnews-card-bottom{margin-inline:15px!important}.fnews-grid>.wp-block-post:first-child .fnews-category,.fnews-grid>.wp-block-post:first-child .fnews-card-title,.fnews-grid>.wp-block-post:first-child .fnews-excerpt,.fnews-grid>.wp-block-post:first-child .fnews-card-bottom{margin-left:22px!important;margin-right:22px!important}}
@media(max-width:650px){.fnews-wrap{width:calc(100% - 36px)}.fnews-breadcrumb{padding-block:13px}.fnews-hero{grid-template-columns:1fr;gap:24px;padding:32px 22px 25px;border-radius:8px}.fnews-hero h1{margin-top:14px;font-size:43px}.fnews-hero-copy>p:not(.fnews-eyebrow){font-size:12px}.fnews-hero-aside{width:100%;max-width:none;justify-self:stretch;padding:18px}.fnews-hero-aside>strong{font-size:23px}.fnews-hero-index{right:8px;bottom:-16px;font-size:47px}.fnews-articles{padding-block:48px 52px;scroll-margin-top:85px}.fnews-section-heading{display:block;margin-bottom:18px}.fnews-section-heading h2{font-size:29px}.fnews-section-heading>p{margin-top:7px;font-size:11px}.fnews-grid{grid-template-columns:1fr;gap:12px}.fnews-grid>.wp-block-post:first-child{grid-column:auto}.fnews-grid>.wp-block-post:first-child .fnews-card{display:block;min-height:0}.fnews-grid>.wp-block-post:first-child .fnews-card-image{min-height:0;aspect-ratio:auto!important}.fnews-grid>.wp-block-post:first-child .fnews-card-image img{height:auto!important;aspect-ratio:auto!important}.fnews-grid>.wp-block-post:first-child .fnews-category{margin:16px 17px 0!important}.fnews-grid>.wp-block-post:first-child .fnews-card-title{margin:8px 17px 0!important;font-size:19px!important}.fnews-grid>.wp-block-post:first-child .fnews-excerpt{min-height:0;margin:8px 17px 0!important;font-size:11px}.fnews-grid>.wp-block-post:first-child .fnews-card-bottom{margin:14px 17px 0!important;padding-bottom:14px}.fnews-category,.fnews-card-title,.fnews-excerpt{margin-inline:17px!important}.fnews-card-title{font-size:18px!important}.fnews-card-bottom{margin-inline:17px!important}.fnews-contact{align-items:flex-start;flex-direction:column;margin-bottom:35px;padding:23px 20px}.fnews-contact h2{font-size:20px}.fnews-contact>a{width:100%}}
@media(prefers-reduced-motion:reduce){.frosa-news-page *,.frosa-news-page *::before,.frosa-news-page *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* About FROSA — cohesive editorial layout */
.frosa-about-page {
  --fa-ink: #142642;
  --fa-body: #536984;
  --fa-muted: #8493a8;
  --fa-blue: #222681;
  --fa-accent: #347cff;
  --fa-line: #e4eaf2;
  --fa-width: 1260px;
  display: flow-root;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  color: var(--fa-ink);
  font-family: Inter, "Noto Sans SC", "Microsoft YaHei", sans-serif;
  font-size: 16px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}
.frosa-about-page,
.frosa-about-page *,
.frosa-about-page *::before,
.frosa-about-page *::after { box-sizing: border-box; }
.frosa-about-page :is(h1,h2,h3,p,ol) { margin: 0; }
.frosa-about-page a { color: inherit; text-decoration: none; text-underline-offset: 4px; }
.frosa-about-page a:focus-visible { outline: 3px solid #8bb5ff; outline-offset: 4px; border-radius: 5px; }
.fa-container { width: min(var(--fa-width), calc(100% - 64px)); margin-inline: auto; }
.fa-breadcrumb { display: flex; align-items: center; gap: 10px; width: min(var(--fa-width), calc(100% - 64px)); margin-inline: auto; padding-block: 15px; color: #8593a6; font-size: 10px; }
.fa-breadcrumb a:hover { color: var(--fa-accent); }
.fa-breadcrumb span[aria-hidden] { color: #bec8d5; }
.fa-breadcrumb [aria-current] { color: #526781; }
.fa-eyebrow { display: flex; align-items: center; gap: 10px; color: var(--fa-blue); font-size: 10px; font-weight: 800; letter-spacing: .13em; line-height: 1.6; }
.fa-eyebrow > span { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: var(--fa-accent); box-shadow: 0 0 0 5px rgba(52,124,255,.11); }

/* Hero */
.fa-hero { position: relative; overflow: hidden; border: 1px solid #e5ebf4; border-radius: 12px; background: radial-gradient(ellipse at 78% 40%,rgba(69,128,231,.14),transparent 34%), linear-gradient(135deg,#f5f8ff,#fff 76%); }
.fa-hero::before { position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(31,74,142,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(31,74,142,.035) 1px,transparent 1px); background-size: 62px 62px; mask-image: linear-gradient(90deg,transparent,#000 48%,#000); content: ""; }
.fa-hero-inner { position: relative; display: grid; width: min(100%, 1370px); min-height: 490px; grid-template-columns: minmax(0,1fr) minmax(390px,.9fr); align-items: center; gap: 40px; margin-inline: auto; padding: 58px clamp(38px,6vw,82px); }
.fa-hero-copy { position: relative; z-index: 1; max-width: 650px; }
.fa-hero h1 { margin-top: 20px; color: #10213a; font-size: clamp(42px,5.1vw,66px); font-weight: 760; letter-spacing: -.055em; line-height: 1.2; }
.fa-hero h1 em { color: #2869cf; font-style: normal; }
.fa-hero-lead { max-width: 600px; margin-top: 19px !important; color: var(--fa-body); font-size: 14px; line-height: 2; }
.fa-hero-actions { display: flex; align-items: center; gap: 22px; margin-top: 25px; }
.fa-button { display: inline-flex; min-width: 158px; min-height: 47px; align-items: center; justify-content: space-between; gap: 22px; padding-inline: 16px; border-radius: 6px; font-size: 11px; font-weight: 750; transition: transform .2s ease,box-shadow .2s ease; }
.fa-button-primary { background: linear-gradient(135deg,#202783,#347cff); box-shadow: 0 9px 22px rgba(34,39,129,.18); color: #fff !important; }
.fa-button-primary:hover { transform: translateY(-2px); box-shadow: 0 14px 28px rgba(34,39,129,.24); }
.fa-text-link { color: #526781; font-size: 11px; font-weight: 700; }
.fa-text-link:hover { color: #2869cf; }
.fa-hero-facts { display: flex; align-items: center; gap: 18px; margin-top: 42px; }
.fa-hero-facts div { display: grid; gap: 2px; }
.fa-hero-facts b { color: #263b59; font-size: 11px; font-weight: 750; }
.fa-hero-facts span { color: #8290a4; font-size: 9px; }
.fa-hero-facts > i { width: 1px; height: 29px; background: #d8e1ed; }
.fa-hero-visual { position: relative; display: grid; min-height: 340px; place-items: center; }
.fa-orbit { position: absolute; width: 260px; height: 260px; border: 1px solid rgba(43,85,165,.17); border-radius: 50%; }
.fa-orbit-one { width: 215px; height: 215px; }
.fa-orbit-two { width: 275px; height: 275px; border-style: dashed; opacity: .7; }
.fa-orbit-three { width: 340px; height: 340px; border-color: rgba(43,85,165,.1); }
.fa-hero-monogram { position: relative; z-index: 1; display: grid; width: 178px; height: 178px; place-items: center; border: 1px solid rgba(47,94,176,.22); border-radius: 50%; background: radial-gradient(circle at 35% 28%,#fff,rgba(223,235,255,.9) 70%); box-shadow: inset -15px -14px 35px rgba(56,94,167,.1),0 25px 55px rgba(34,63,111,.12); color: #252b80; font-size: 112px; font-weight: 850; letter-spacing: -.12em; line-height: 1; text-shadow: 0 7px 14px rgba(29,38,126,.12); }
.fa-hero-tag { position: absolute; z-index: 2; display: flex; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid #dce5f1; border-radius: 5px; background: rgba(255,255,255,.96); box-shadow: 0 8px 22px rgba(32,55,93,.08); color: #75869d; font-size: 8px; font-weight: 800; letter-spacing: .08em; }
.fa-hero-tag b { display: grid; width: 21px; height: 21px; place-items: center; border-radius: 50%; background: #eef3ff; color: #2869cf; font-size: 8px; }
.fa-tag-top { top: 37px; left: 3%; }
.fa-tag-right { top: 143px; right: 0; }
.fa-tag-bottom { bottom: 36px; left: 12%; }
.fa-hero-caption { position: absolute; right: 0; bottom: 5px; color: #7f91aa; font-size: 8px; font-weight: 800; letter-spacing: .13em; }

/* Brand line */
.fa-intro-strip { border-bottom: 1px solid #e8edf4; }
.fa-intro-strip > .fa-container { display: flex; min-height: 58px; align-items: center; gap: 16px; color: #687b91; font-size: 10px; }
.fa-intro-strip > .fa-container > span { color: var(--fa-blue); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.fa-intro-strip > .fa-container > i { width: 24px; height: 1px; background: #cbd6e5; }
.fa-intro-strip p { color: #718198; }
.fa-intro-strip a { display: flex; align-items: center; gap: 10px; margin-left: auto; color: #285cbe; font-size: 10px; font-weight: 700; }

/* Shared section headings */
.fa-section-heading { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(300px,.72fr); align-items: end; gap: clamp(34px,5vw,70px); margin-bottom: 32px; }
.fa-section-heading h2 { margin-top: 12px !important; color: #152740; font-size: clamp(31px,3.5vw,44px); font-weight: 730; letter-spacing: -.045em; line-height: 1.3; }
.fa-section-heading > p { max-width: 500px; margin: 0 0 4px auto !important; color: #61738a; font-size: 12px; line-height: 1.95; }

/* 01 — approach */
.fa-approach { padding-block: 82px 86px; }
.fa-approach-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--fa-line); }
.fa-approach-grid article { display: grid; grid-template-columns: 36px minmax(0,1fr) 18px; align-items: start; gap: 12px; padding: 22px 17px 20px 0; border-bottom: 1px solid var(--fa-line); }
.fa-approach-grid article + article { padding-left: 19px; border-left: 1px solid var(--fa-line); }
.fa-approach-grid article > span { color: var(--fa-accent); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.fa-approach-grid h3 { color: #1b2d46; font-size: 14px; font-weight: 720; line-height: 1.6; }
.fa-approach-grid p { margin-top: 5px !important; color: #6c7e93; font-size: 10px; line-height: 1.85; }
.fa-approach-grid article > b { color: #91a7c5; font-size: 13px; font-weight: 400; }

/* 02 — services on a soft blue band */
.fa-services { position: relative; width: 100vw; margin-inline: calc(50% - 50vw); padding: 76px max(32px,calc((100vw - var(--fa-width))/2)) 82px; overflow: hidden; background: #f3f7fd; }
.fa-services::before,.fa-timeline::before { position: absolute; top: 0; right: 0; left: 0; height: 1px; content: ""; }
.fa-services::before { background: #e3ebf6; }
.fa-services .fa-section-heading,.fa-timeline .fa-section-heading { width: 100%; max-width: var(--fa-width); margin-inline: auto; }
.fa-services .fa-section-heading > p { padding-left: 18px; border-left: 2px solid #cbd9ed; }
.fa-service-grid { display: grid; width: 100%; max-width: var(--fa-width); grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px; margin-inline: auto; }
.fa-service-grid > a { position: relative; display: flex; min-width: 0; min-height: 282px; flex-direction: column; align-items: flex-start; padding: 25px 24px 18px; border: 1px solid #e0e7f0; border-radius: 10px; background: #fff; box-shadow: 0 7px 22px rgba(24,48,83,.04); transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.fa-service-grid > a::before { position: absolute; top: -1px; left: 23px; width: 42px; height: 3px; border-radius: 0 0 3px 3px; background: linear-gradient(90deg,#222681,#4d8dff); content: ""; }
.fa-service-grid > a:hover { transform: translateY(-4px); border-color: #bfd0e7; box-shadow: 0 16px 34px rgba(24,48,83,.09); }
.fa-card-index { color: #7e90a8; font-size: 8px; font-weight: 800; letter-spacing: .11em; }
.fa-card-index i { padding-inline: 3px; color: #b4c0d0; font-style: normal; }
.fa-service-icon { display: grid; width: 35px; height: 35px; place-items: center; margin-top: 21px; border: 1px solid #dce6f6; border-radius: 8px; background: #f2f6ff; color: #2b5ec0; font-size: 10px; font-weight: 850; letter-spacing: .02em; }
.fa-service-grid h3 { margin-top: 12px !important; color: #172744; font-size: 21px; font-weight: 730; letter-spacing: -.03em; line-height: 1.4; }
.fa-service-grid p { margin-top: 8px !important; color: #687b91; font-size: 11px; line-height: 1.8; }
.fa-service-grid > a > b { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 15px; border-top: 1px solid #edf1f6; color: var(--fa-blue); font-size: 10px; font-weight: 750; }
.fa-service-grid > a > b i { font-size: 14px; font-style: normal; font-weight: 400; transition: transform .18s ease; }
.fa-service-grid > a:hover > b i { transform: translate(2px,-2px); }

/* 03 — timeline on white, with a distinct but gentle transition */
.fa-timeline { position: relative; width: 100vw; margin-inline: calc(50% - 50vw); padding: 78px max(32px,calc((100vw - var(--fa-width))/2)) 84px; overflow: hidden; background: #fff; }
.fa-timeline::before { background: #edf0f5; }
.fa-timeline .fa-section-heading > p { padding-left: 18px; border-left: 2px solid #e1e7ef; }
.fa-timeline-list { position: relative; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 0 auto; padding: 0; list-style: none; }
.fa-timeline-list li { position: relative; display: flex; min-width: 0; min-height: 154px; flex-direction: column; align-items: flex-start; padding: 24px 20px 17px; border: 1px solid #e5eaf1; border-radius: 9px; background: #fff; transition: border-color .2s ease,box-shadow .2s ease; }
.fa-timeline-list li:hover { border-color: #cbd7e6; box-shadow: 0 10px 24px rgba(24,48,83,.055); }
.fa-timeline-dot { position: absolute; top: 14px; left: 19px; width: 9px; height: 9px; border: 2px solid #fff; border-radius: 50%; background: var(--fa-accent); box-shadow: 0 0 0 1px #bfd0e9; }
.fa-timeline-list time { margin-top: 1px; color: var(--fa-blue); font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.fa-timeline-list small { margin-top: 10px; color: #8996a8; font-size: 9px; }
.fa-timeline-list h3 { max-width: calc(100% - 30px); margin-top: 3px !important; color: #1b2d46; font-size: 13px; font-weight: 700; line-height: 1.7; }
.fa-timeline-list li > b { position: absolute; right: 17px; bottom: 13px; color: #e5eaf2; font-size: 19px; font-weight: 800; letter-spacing: .04em; }

/* 04 — process */
.fa-process { padding-block: 78px 82px; }
.fa-process-heading { margin-bottom: 27px; }
.fa-process-heading > p { max-width: 390px; }
.fa-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0; padding: 0; overflow: hidden; border: 1px solid #e0e7f1; border-radius: 9px; list-style: none; }
.fa-steps li { min-height: 164px; padding: 21px 20px; border-right: 1px solid #e0e7f1; background: #fff; }
.fa-steps li:last-child { border-right: 0; }
.fa-steps li > span { display: block; margin-bottom: 20px; color: #347cff; font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.fa-steps li > b { color: #1b2d46; font-size: 14px; font-weight: 720; }
.fa-steps li > p { margin-top: 8px !important; color: #718198; font-size: 10px; line-height: 1.8; }

/* Commitment and contact */
.fa-values { margin-bottom: 22px; }
.fa-values-card { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 220px; align-items: center; gap: 40px; overflow: hidden; padding: 43px 48px; border: 1px solid #dce6f8; border-radius: 10px; background: linear-gradient(112deg,#f3f7ff,#fbfcff); }
.fa-values-mark { position: absolute; bottom: -100px; left: 4px; color: rgba(34,38,129,.045); font-size: 360px; font-weight: 850; letter-spacing: -.15em; line-height: 1; pointer-events: none; }
.fa-values-copy { position: relative; z-index: 1; max-width: 740px; }
.fa-values h2 { margin-top: 12px !important; color: #172942; font-size: clamp(27px,3.1vw,37px); font-weight: 730; letter-spacing: -.045em; line-height: 1.35; }
.fa-values-copy > p:not(.fa-eyebrow) { max-width: 700px; margin-top: 10px !important; color: #5e7189; font-size: 11px; line-height: 1.9; }
.fa-values-copy > a { display: inline-flex; align-items: center; gap: 15px; margin-top: 17px; color: #285cbe; font-size: 10px; font-weight: 750; }
.fa-values-side { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 11px; color: #647995; font-size: 8px; font-weight: 800; letter-spacing: .13em; }
.fa-values-side i { width: 1px; height: 13px; margin-left: 4px; background: #aabbd3; }
.fa-contact { padding-block: 24px 56px; }
.fa-contact-card { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 30px 34px; border-radius: 9px; background: linear-gradient(110deg,#151b61,#202887 52%,#2869cf); color: #fff; }
.fa-contact .fa-eyebrow { color: #b8c9ff; }
.fa-contact .fa-eyebrow > span { background: #8ab4ff; box-shadow: 0 0 0 5px rgba(138,180,255,.14); }
.fa-contact h2 { margin-top: 10px !important; font-size: 23px; font-weight: 730; letter-spacing: -.03em; }
.fa-contact-card > div:first-child > p:last-child { margin-top: 6px !important; color: rgba(255,255,255,.74); font-size: 11px; line-height: 1.8; }
.fa-contact-actions { display: grid; min-width: 245px; gap: 8px; }
.fa-contact-button { display: flex; min-height: 43px; align-items: center; justify-content: space-between; padding-inline: 14px; border-radius: 5px; background: #fff; color: #202783 !important; font-size: 10px; font-weight: 750; transition: transform .18s ease; }
.fa-contact-button:hover { transform: translateY(-2px); }
.fa-contact-actions > a:not(.fa-contact-button) { color: rgba(255,255,255,.86); font-size: 9px; text-align: right; }

@media (max-width: 900px) {
  .fa-hero-inner { min-height: 440px; grid-template-columns: minmax(0,1fr) minmax(290px,.8fr); gap: 20px; padding-inline: 38px; }
  .fa-hero-visual { min-height: 290px; }
  .fa-orbit-three { width: 290px; height: 290px; }
  .fa-section-heading { grid-template-columns: minmax(0,1fr) minmax(240px,.8fr); gap: 27px; }
  .fa-approach-grid { grid-template-columns: 1fr; }
  .fa-approach-grid article,.fa-approach-grid article + article { padding: 17px 0; border-left: 0; }
  .fa-services,.fa-timeline { padding-block: 60px 66px; }
  .fa-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fa-service-grid > a:last-child { grid-column: 1/-1; min-height: 225px; }
  .fa-timeline-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fa-steps li { padding-inline: 15px; }
  .fa-values-card { grid-template-columns: 1fr 150px; padding: 36px; }
}

@media (max-width: 650px) {
  .fa-container,.fa-breadcrumb { width: calc(100% - 36px); }
  .fa-breadcrumb { padding-block: 12px; }
  .fa-hero { border-radius: 8px; }
  .fa-hero-inner { grid-template-columns: 1fr; gap: 15px; padding: 31px 21px 20px; }
  .fa-hero h1 { margin-top: 15px; font-size: clamp(37px,10.5vw,49px); }
  .fa-hero-lead { margin-top: 15px !important; font-size: 12px; }
  .fa-hero-actions { gap: 16px; margin-top: 19px; }
  .fa-hero-facts { gap: 12px; margin-top: 25px; }
  .fa-hero-facts b { font-size: 10px; }
  .fa-hero-facts span { font-size: 8px; }
  .fa-hero-visual { min-height: 245px; }
  .fa-hero-monogram { width: 145px; height: 145px; font-size: 92px; }
  .fa-orbit-one { width: 180px; height: 180px; }
  .fa-orbit-two { width: 225px; height: 225px; }
  .fa-orbit-three { width: 270px; height: 270px; }
  .fa-tag-top { top: 15px; left: 2%; }
  .fa-tag-right { top: 98px; right: 0; }
  .fa-tag-bottom { bottom: 13px; left: 6%; }
  .fa-hero-caption { right: 0; bottom: -3px; font-size: 6px; }
  .fa-intro-strip > .fa-container { min-height: 54px; flex-wrap: wrap; gap: 5px 9px; padding-block: 10px; font-size: 9px; }
  .fa-intro-strip > .fa-container > span { font-size: 8px; }
  .fa-intro-strip > .fa-container > i { width: 15px; }
  .fa-intro-strip a { margin-left: auto; font-size: 9px; }
  .fa-section-heading { grid-template-columns: 1fr; gap: 11px; margin-bottom: 23px; }
  .fa-section-heading h2 { font-size: clamp(28px,8vw,35px); }
  .fa-section-heading > p { margin: 0 !important; font-size: 11px; }
  .fa-approach { padding-block: 51px 55px; }
  .fa-approach-grid article { grid-template-columns: 28px minmax(0,1fr) 16px; gap: 9px; }
  .fa-approach-grid h3 { font-size: 13px; }
  .fa-approach-grid p { font-size: 10px; }
  .fa-services,.fa-timeline { padding: 49px 18px 55px; }
  .fa-services .fa-section-heading > p,.fa-timeline .fa-section-heading > p { padding-left: 12px; }
  .fa-service-grid,.fa-timeline-list { grid-template-columns: 1fr; gap: 10px; }
  .fa-service-grid > a,.fa-service-grid > a:last-child { grid-column: auto; min-height: 220px; padding: 21px 20px 16px; border-radius: 9px; }
  .fa-service-grid > a::before { left: 19px; }
  .fa-service-icon { margin-top: 16px; }
  .fa-service-grid h3 { font-size: 20px; }
  .fa-timeline-list li { min-height: 130px; padding: 22px 17px 15px; }
  .fa-timeline-dot { left: 16px; }
  .fa-timeline-list h3 { font-size: 13px; }
  .fa-process { padding-block: 51px 54px; }
  .fa-steps { grid-template-columns: 1fr 1fr; }
  .fa-steps li { min-height: 145px; padding: 15px 13px; border-top: 1px solid #e0e7f1; border-right: 1px solid #e0e7f1; }
  .fa-steps li:nth-child(-n+2) { border-top: 0; }
  .fa-steps li:nth-child(2n) { border-right: 0; }
  .fa-steps li > span { margin-bottom: 13px; }
  .fa-steps li > b { font-size: 12px; }
  .fa-steps li > p { font-size: 9px; }
  .fa-values { margin-bottom: 0; }
  .fa-values-card { grid-template-columns: 1fr; gap: 20px; padding: 26px 21px; }
  .fa-values h2 { font-size: 26px; }
  .fa-values-copy > p:not(.fa-eyebrow) { font-size: 10px; }
  .fa-values-side { flex-direction: row; align-items: center; gap: 9px; }
  .fa-values-side i { width: 12px; height: 1px; margin: 0; }
  .fa-values-mark { right: -4px; bottom: -60px; left: auto; font-size: 250px; }
  .fa-contact { padding-block: 19px 35px; }
  .fa-contact-card { align-items: flex-start; flex-direction: column; gap: 20px; padding: 24px 20px; }
  .fa-contact h2 { font-size: 20px; }
  .fa-contact-card > div:first-child > p:last-child { font-size: 10px; }
  .fa-contact-actions { width: 100%; }
  .fa-contact-actions > a:not(.fa-contact-button) { text-align: left; }
}

@media (max-width: 380px) {
  .fa-container,.fa-breadcrumb { width: calc(100% - 30px); }
  .fa-hero-inner { padding-inline: 17px; }
  .fa-hero-actions { align-items: flex-start; flex-direction: column; }
  .fa-hero-visual { min-height: 225px; }
  .fa-hero-tag { gap: 5px; padding: 6px 7px; font-size: 7px; }
  .fa-hero-tag b { width: 18px; height: 18px; }
  .fa-intro-strip a { width: 100%; margin-left: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .frosa-about-page *, .frosa-about-page *::before, .frosa-about-page *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}


/* Contact page only. Every rule is scoped to this unique root class; safe on the test page and live contact page. */
.frosa-contact-page {
  --fcx-ink: #12233c;
  --fcx-blue: #222681;
  --fcx-muted: #637792;
  --fcx-line: #dce5f1;
  --fcx-soft: #f5f8fd;
  --fcx-radius: 18px;
  color: var(--fcx-ink);
  font-family: Inter, "Noto Sans SC", "Microsoft YaHei", sans-serif;
  overflow: clip;
  width: 100%;
  max-width: none;
  margin: 0;
}
.frosa-contact-page * { box-sizing: border-box; }
.frosa-contact-page a { color: inherit; text-decoration: none; }
.frosa-contact-page a:focus-visible { outline: 3px solid #7aa7ff; outline-offset: 3px; }
.frosa-contact-page .fcx-hero,
.frosa-contact-page .fcx-section,
.frosa-contact-page .fcx-final { width: min(100% - 48px, 1320px); margin-inline: auto; }
.frosa-contact-page .fcx-hero { display: grid; grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr); gap: clamp(36px, 6vw, 88px); align-items: start; margin-block-start: 0!important; padding-block: clamp(20px, 2vw, 30px) 64px; }
.frosa-contact-page .fcx-hero-copy { padding-top: 12px; }
.frosa-contact-page .fcx-eyebrow { display: flex; align-items: center; gap: 11px; margin: 0 0 20px; color: var(--fcx-blue); font-size: 12px; font-weight: 750; letter-spacing: .14em; line-height: 1.4; }
.frosa-contact-page .fcx-eyebrow span { width: 22px; height: 2px; background: currentColor; }
.frosa-contact-page h1 { max-width: 720px; margin: 0 0 24px; color: var(--fcx-ink); font-size: clamp(38px, 3.35vw, 50px); font-weight: 720; letter-spacing: -.045em; line-height: 1.3; }
.frosa-contact-page .fcx-lead { max-width: 600px; margin: 0 0 14px; color: #324966; font-size: clamp(18px, 1.8vw, 21px); line-height: 1.8; }
.frosa-contact-page .fcx-note { max-width: 580px; margin: 0; color: var(--fcx-muted); font-size: 15px; line-height: 1.8; }
.frosa-contact-page .fcx-contact-links { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 28px; }
.frosa-contact-page .fcx-contact-links a { position: relative; display: flex; flex-direction: column; gap: 8px; min-width: 0; padding: 16px 38px 16px 17px; border: 1px solid var(--fcx-line); border-radius: 13px; background: #fff; transition: border-color .2s, transform .2s; }
.frosa-contact-page .fcx-contact-links a:hover { border-color: #9cbcff; transform: translateY(-2px); }
.frosa-contact-page .fcx-link-label { color: var(--fcx-muted); font-size: 12px; }
.frosa-contact-page .fcx-contact-links strong { color: var(--fcx-ink); font-size: 14px; overflow-wrap: anywhere; }
.frosa-contact-page .fcx-arrow { position: absolute; top: 16px; right: 14px; color: var(--fcx-blue); }
.frosa-contact-page .fcx-wechat { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 18px; padding: 18px 20px; border-radius: 14px; background: var(--fcx-soft); }
.frosa-contact-page .fcx-wechat-copy { display: grid; gap: 5px; }
.frosa-contact-page .fcx-kicker { color: var(--fcx-blue); font-size: 10px; font-weight: 750; letter-spacing: .13em; }
.frosa-contact-page .fcx-wechat-copy strong { font-size: 15px; }
.frosa-contact-page .fcx-wechat-copy > span:last-of-type { color: var(--fcx-muted); font-size: 13px; }
.frosa-contact-page .fcx-qr { display: grid; justify-items: center; gap: 5px; flex: 0 0 82px; color: var(--fcx-muted); font-size: 10px; }
.frosa-contact-page .fcx-qr img { display: block; width: 68px; height: 68px; object-fit: contain; border: 4px solid #fff; border-radius: 8px; }
.frosa-contact-page .fcx-wechat-mobile { display: none; color: var(--fcx-blue) !important; font-size: 14px; font-weight: 700; }
.frosa-contact-page .fcx-form-card { padding: 0!important; border: 1px solid var(--fcx-line); border-radius: 20px; background: #fff; box-shadow: 0 18px 55px rgba(23, 43, 77, .08); scroll-margin-top: 110px; overflow: hidden; }
.frosa-contact-page .fcx-form-heading { margin: 0 0 18px; padding: 32px 36px 0; }
.frosa-contact-page .fcx-form-card > .wp-block-shortcode { margin: 0!important; padding: 0!important; }
.frosa-contact-page .fcx-form-heading h2 { margin: 8px 0 6px; font-size: clamp(24px, 2.3vw, 30px); line-height: 1.35; }
.frosa-contact-page .fcx-form-heading p { margin: 0; color: var(--fcx-muted); font-size: 14px; line-height: 1.7; }
.frosa-contact-page .fcx-form-privacy { margin: 14px 36px 0; padding-bottom: 28px; color: var(--fcx-muted); font-size: 12px; line-height: 1.6; }
/* Preserve SureForms behavior while making fields fit the card. */
.frosa-contact-page .fcx-form-card .srfm-form,
.frosa-contact-page .fcx-form-card form { max-width: 100%; }
.frosa-contact-page .fcx-form-card .srfm-form-container { box-sizing: border-box!important; width: 100%!important; margin-inline: 0!important; padding-inline: 36px!important; }
.frosa-contact-page .fcx-form-card .srfm-block-label { display: inline-block; margin-block-end: 6px !important; color: #263851 !important; font-size: 13px !important; font-weight: 650 !important; line-height: 1.5 !important; }
.frosa-contact-page .fcx-form-card input:not([type=checkbox]):not([type=radio]),
.frosa-contact-page .fcx-form-card select,
.frosa-contact-page .fcx-form-card textarea { width: 100% !important; max-width: 100% !important; min-height: 48px !important; padding: 12px 14px !important; border: 1px solid #c9d0dc !important; border-radius: 7px !important; background: #fafafa !important; color: #1b2d46 !important; font-family: inherit !important; font-size: 13px !important; line-height: 1.5 !important; box-shadow: none !important; }
.frosa-contact-page .fcx-form-card .srfm-input-common,
.frosa-contact-page .fcx-form-card select,
.frosa-contact-page .fcx-form-card textarea { padding: 12px 14px !important; border-color: #c9d0dc !important; border-radius: 7px !important; background-color: #fafafa !important; color: #1d304a !important; font-family: inherit !important; font-size: 13px !important; line-height: 1.5 !important; box-shadow: none !important; transition: border-color .18s ease,box-shadow .18s ease !important; }
.frosa-contact-page .fcx-form-card .srfm-input-common::placeholder,
.frosa-contact-page .fcx-form-card textarea::placeholder { color: #9aa7b8 !important; opacity: 1; }
.frosa-contact-page .fcx-form-card .srfm-input-common:focus,
.frosa-contact-page .fcx-form-card select:focus,
.frosa-contact-page .fcx-form-card textarea:focus { border-color: #6277d8 !important; outline: 0 !important; box-shadow: 0 0 0 3px rgba(52,124,255,.12) !important; }
.frosa-contact-page .fcx-form-card input[type=checkbox],
.frosa-contact-page .fcx-form-card input[type=radio] { accent-color: #222681; }
.frosa-contact-page .fcx-form-card textarea { min-height: 118px; resize: vertical; }
.frosa-contact-page .fcx-form-card button[type=submit],
.frosa-contact-page .fcx-form-card input[type=submit],
.frosa-contact-page .fcx-form-card #srfm-submit-btn,
.frosa-contact-page .fcx-form-card .srfm-submit-button { display: block; width: 100% !important; min-height: 48px !important; padding: 0 24px !important; border: 0 !important; border-radius: 6px !important; background: #222681 !important; color: #fff !important; font: inherit !important; font-size: 13px !important; font-weight: 700 !important; box-shadow: none !important; cursor: pointer; transition: background .18s ease,transform .18s ease !important; }
.frosa-contact-page .fcx-form-card #srfm-submit-btn:hover,
.frosa-contact-page .fcx-form-card .srfm-submit-button:hover { transform: translateY(-1px); background: #347cff !important; }
.frosa-contact-page .fcx-section { padding-block: clamp(64px, 8vw, 104px); border-top: 1px solid var(--fcx-line); }
.frosa-contact-page .fcx-section-head { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(260px, .7fr); gap: 32px; align-items: end; margin-bottom: 30px; }
.frosa-contact-page .fcx-section-head .fcx-eyebrow { margin-bottom: 15px; }
.frosa-contact-page .fcx-section-head h2,
.frosa-contact-page .fcx-final h2 { margin: 0; color: var(--fcx-ink); font-size: clamp(30px, 4vw, 46px); letter-spacing: -.035em; line-height: 1.25; }
.frosa-contact-page .fcx-section-head > p,
.frosa-contact-page .fcx-office-intro p { margin: 0 0 4px; color: var(--fcx-muted); font-size: 15px; line-height: 1.8; }
.frosa-contact-page .fcx-support-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.frosa-contact-page .fcx-support-card { position: relative; display: flex; min-height: 250px; flex-direction: column; align-items: flex-start; padding: 25px; border: 1px solid var(--fcx-line); border-radius: var(--fcx-radius); background: #fff; transition: transform .2s, border-color .2s, box-shadow .2s; }
.frosa-contact-page .fcx-support-card:hover { transform: translateY(-3px); border-color: #adc6f9; box-shadow: 0 12px 30px rgba(23,43,77,.07); }
.frosa-contact-page .fcx-support-card--soft { background: var(--fcx-soft); }
.frosa-contact-page .fcx-card-index { position: absolute; top: 22px; right: 23px; color: #8091a9; font-size: 12px; }
.frosa-contact-page .fcx-support-card .fcx-kicker { margin: 0 30px 22px 0; }
.frosa-contact-page .fcx-support-card h3 { margin: 0 0 10px; font-size: 21px; line-height: 1.4; }
.frosa-contact-page .fcx-support-card p { margin: 0 0 22px; color: var(--fcx-muted); font-size: 14px; line-height: 1.8; }
.frosa-contact-page .fcx-card-link { display: flex; justify-content: space-between; gap: 12px; width: 100%; margin-top: auto; color: var(--fcx-blue); font-size: 14px; font-weight: 700; }
.frosa-contact-page .fcx-steps { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.frosa-contact-page .fcx-steps li { min-height: 190px; padding: 23px; border: 1px solid var(--fcx-line); border-radius: 15px; background: #fff; }
.frosa-contact-page .fcx-steps li > span { color: var(--fcx-blue); font-size: 11px; font-weight: 750; letter-spacing: .12em; }
.frosa-contact-page .fcx-steps h3 { margin: 23px 0 8px; font-size: 19px; }
.frosa-contact-page .fcx-steps p { margin: 0; color: var(--fcx-muted); font-size: 13px; line-height: 1.75; }
.frosa-contact-page .fcx-offices { padding-bottom: 90px; }
.frosa-contact-page .fcx-offices-head { align-items: center; }
.frosa-contact-page .fcx-office-intro a { display: inline-block; margin-top: 9px; color: var(--fcx-blue); font-size: 14px; font-weight: 700; overflow-wrap: anywhere; }
.frosa-contact-page .fcx-map { margin: 0 0 18px; padding: 14px; overflow: hidden; border: 1px solid var(--fcx-line); border-radius: var(--fcx-radius); background: #fff; }
.frosa-contact-page .fcx-map svg { display: block; width: 100%; height: auto; }
.frosa-contact-page .fcx-map figcaption { padding: 8px 8px 2px; color: var(--fcx-muted); font-size: 12px; }
.frosa-contact-page .fcx-office-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.frosa-contact-page .fcx-office-card { min-width: 0; padding: 21px; border: 1px solid var(--fcx-line); border-radius: 14px; background: #fff; }
.frosa-contact-page .fcx-office-card > div { display: flex; justify-content: space-between; gap: 10px; color: var(--fcx-blue); }
.frosa-contact-page .fcx-office-card > div span { font-size: 12px; font-weight: 750; }
.frosa-contact-page .fcx-office-card > div small { color: #7586a0; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-align: right; }
.frosa-contact-page .fcx-office-card h3 { margin: 18px 0 9px; font-size: 18px; }
.frosa-contact-page .fcx-office-card address { min-height: 52px; color: var(--fcx-muted); font-size: 13px; font-style: normal; line-height: 1.75; overflow-wrap: anywhere; }
.frosa-contact-page .fcx-office-card p { margin: 12px 0 0; font-size: 13px; font-weight: 700; }
.frosa-contact-page .fcx-office-card p a { color: var(--fcx-blue); }
.frosa-contact-page .fcx-final { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 80px; padding: clamp(28px, 5vw, 54px); border: 1px solid #d7e4fb; border-radius: 20px; background: linear-gradient(110deg, #f3f7ff, #fbfdff); }
.frosa-contact-page .fcx-final .fcx-eyebrow { margin-bottom: 13px; }
.frosa-contact-page .fcx-final h2 { font-size: clamp(26px, 3.4vw, 38px); }
.frosa-contact-page .fcx-final p:not(.fcx-eyebrow) { margin: 10px 0 0; color: var(--fcx-muted); font-size: 14px; line-height: 1.7; }
.frosa-contact-page .fcx-button { display: inline-flex; align-items: center; justify-content: center; gap: 18px; flex: 0 0 auto; min-height: 52px; padding: 0 22px; border-radius: 10px; background: var(--fcx-blue); color: #fff; font-weight: 700; }
.frosa-contact-page .fcx-button:hover { background: #0b4ed0; }
@media (max-width: 900px) {
  .frosa-contact-page .fcx-hero { grid-template-columns: minmax(0,1fr) minmax(340px,.95fr); gap: 28px; }
  .frosa-contact-page h1 { font-size: clamp(34px, 4.3vw, 42px); }
  .frosa-contact-page .fcx-contact-links { grid-template-columns: 1fr; }
  .frosa-contact-page .fcx-support-grid { grid-template-columns: 1fr 1fr; }
  .frosa-contact-page .fcx-support-card:last-child { grid-column: 1 / -1; min-height: 200px; }
  .frosa-contact-page .fcx-office-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 680px) {
  .frosa-contact-page .fcx-hero,
  .frosa-contact-page .fcx-section,
  .frosa-contact-page .fcx-final { width: min(100% - 32px, 1320px); }
  .frosa-contact-page .fcx-hero { grid-template-columns: 1fr; gap: 24px; padding-block: 22px 38px; }
  .frosa-contact-page h1 { font-size: clamp(29px, 8.2vw, 39px); line-height: 1.28; }
  .frosa-contact-page .fcx-contact-links { grid-template-columns: 1fr 1fr; gap: 8px; }
  .frosa-contact-page .fcx-contact-links a { padding: 13px 28px 13px 12px; }
  .frosa-contact-page .fcx-contact-links strong { font-size: 12px; }
  .frosa-contact-page .fcx-wechat { padding: 15px; }
  .frosa-contact-page .fcx-qr { display: none; }
  .frosa-contact-page .fcx-wechat-mobile { display: inline-flex; align-items: center; gap: 8px; margin-top: 4px; }
  .frosa-contact-page .fcx-form-card { padding: 0!important; border-radius: 15px; }
  .frosa-contact-page .fcx-form-heading { margin-bottom: 15px; padding: 23px 18px 0; }
  .frosa-contact-page .fcx-form-card .srfm-form-container { padding-inline: 18px!important; }
  .frosa-contact-page .fcx-form-privacy { margin-inline: 18px; padding-bottom: 20px; }
  .frosa-contact-page .fcx-section { padding-block: 54px; }
  .frosa-contact-page .fcx-section-head { grid-template-columns: 1fr; gap: 14px; margin-bottom: 22px; }
  .frosa-contact-page .fcx-support-grid,
  .frosa-contact-page .fcx-office-grid { grid-template-columns: 1fr; }
  .frosa-contact-page .fcx-support-card,
  .frosa-contact-page .fcx-support-card:last-child { grid-column: auto; min-height: 205px; }
  .frosa-contact-page .fcx-steps { grid-template-columns: 1fr 1fr; gap: 9px; }
  .frosa-contact-page .fcx-steps li { min-height: 175px; padding: 17px; }
  .frosa-contact-page .fcx-steps h3 { margin-top: 17px; font-size: 17px; }
  .frosa-contact-page .fcx-map { padding: 8px; overflow-x: auto; }
  .frosa-contact-page .fcx-map svg { width: 760px; max-width: none; }
  .frosa-contact-page .fcx-office-card address { min-height: 0; }
  .frosa-contact-page .fcx-final { align-items: flex-start; flex-direction: column; margin-bottom: 48px; padding: 25px 20px; }
  .frosa-contact-page .fcx-button { width: 100%; }
}


/* FROSA TECHNOLOGY header · adapt the FDA reference header's blue, spacious system */
.frosa-global-header,
.frosa-global-header * { box-sizing: border-box; }
.frosa-global-header {
  --frosa-blue: #222681;
  --frosa-blue-dark: #191e68;
  --frosa-ink: #172744;
  --frosa-muted: #64748b;
  --frosa-border: #e4eaf3;
  --frosa-paper: #f4f7fc;
  position: sticky;
  top: 0;
  z-index: 9999;
  width: 100%;
  border-bottom: 1px solid var(--frosa-border);
  background: rgba(255,255,255,.96);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  font-family: inherit;
}
.frosa-global-header a,
.frosa-global-header button { font: inherit; }
.frosa-global-header button { color: inherit; }
.frosa-header-shell { position: relative; width: 100%; }
.frosa-header-inner {
  position: relative;
  width: calc(100% - 48px);
  max-width: 1380px;
  min-height: 76px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.frosa-header-brand {
  display: flex;
  flex: 0 0 184px;
  align-items: center;
  color: var(--frosa-ink);
  text-decoration: none;
}
.frosa-brand-logo { display: block; width: 184px; height: auto; max-width: 100%; }
.frosa-desktop-nav { display: flex; flex: 1; align-items: center; justify-content: center; gap: clamp(13px, 1.7vw, 25px); }
.frosa-nav-item { position: relative; }
.frosa-nav-link {
  position: relative;
  min-height: 76px;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--frosa-ink) !important;
  font-size: 13px !important;
  font-weight: 520;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none !important;
  cursor: pointer;
  transition: color .18s ease;
}
.frosa-nav-link::after {
  position: absolute;
  right: 50%;
  bottom: 16px;
  left: 50%;
  height: 2px;
  border-radius: 2px;
  background: var(--frosa-blue);
  content: "";
  transition: left .18s ease, right .18s ease;
}
.frosa-nav-link:hover, .frosa-nav-link[aria-current], .frosa-nav-link[aria-expanded="true"] { color: var(--frosa-blue) !important; }
.frosa-nav-item.is-current > .frosa-nav-trigger { color: var(--frosa-blue) !important; }
.frosa-nav-item.is-current > .frosa-nav-trigger::after { right: 0; left: 0; }
.frosa-nav-link:hover::after, .frosa-nav-link[aria-current]::after,
.frosa-nav-link[aria-expanded="true"]::after { right: 0; left: 0; }
.frosa-chevron { display: inline-block; color: #8b98aa; font-size: 12px; transform: translateY(-1px); transition: transform .18s ease; }
.frosa-nav-trigger[aria-expanded="true"] .frosa-chevron { color: var(--frosa-blue); transform: rotate(180deg); }
.frosa-header-actions { position: relative; display: flex; flex: 0 0 auto; align-items: center; gap: 12px; }


.frosa-mobile-trigger { display: none; }

/* Desktop drop-down surfaces */
.frosa-dropdown {
  position: absolute;
  top: calc(100% - 2px);
  left: 50%;
  z-index: 20;
  width: 570px;
  padding: 22px;
  border: 1px solid var(--frosa-border);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 60px rgba(25, 40, 68, .15);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 9px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.frosa-has-dropdown:hover > .frosa-dropdown,
.frosa-has-dropdown:focus-within > .frosa-dropdown,
.frosa-has-dropdown.is-touch-open > .frosa-dropdown {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}
.frosa-dropdown-heading { padding: 0 0 15px; border-bottom: 1px solid var(--frosa-border); }
.frosa-dropdown-eyebrow { display: block; margin-bottom: 8px; color: var(--frosa-blue); font-size: 9px; font-weight: 750; letter-spacing: .14em; }
.frosa-dropdown-heading > strong { display: block; color: var(--frosa-ink); font-size: 17px; font-weight: 650; }
.frosa-dropdown-heading > p { margin: 7px 0 0; color: var(--frosa-muted); font-size: 11px; line-height: 1.7; }
.frosa-service-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding-block: 14px; }
.frosa-service-item, .frosa-resource-list > a, .frosa-compact-dropdown > a {
  min-width: 0;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 15px;
  align-items: center;
  gap: 10px;
  padding: 11px 9px;
  border-radius: 5px;
  color: var(--frosa-ink);
  text-decoration: none;
  transition: background .16s ease;
}
.frosa-service-item:hover, .frosa-resource-list > a:hover, .frosa-compact-dropdown > a:hover,
.frosa-about-dropdown > a:hover { background: var(--frosa-paper); }
.frosa-service-code, .frosa-resource-code {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 50%;
  background: #edf3ff;
  color: var(--frosa-blue);
  font-size: 10px;
  font-weight: 750;
}
.frosa-code-eu { background: #eef2e7; color: #75854d; }
.frosa-code-digital { background: #f0edfa; color: #7660a8; }
.frosa-code-overview { background: #eff2f5; color: #627386; }
.frosa-service-item > span:nth-child(2), .frosa-resource-list > a > span:nth-child(2), .frosa-compact-dropdown > a > span:nth-child(2) { min-width: 0; }
.frosa-service-item strong, .frosa-resource-list strong, .frosa-compact-dropdown strong,
.frosa-about-dropdown strong { display: block; overflow: hidden; color: var(--frosa-ink); font-size: 11px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.frosa-service-item small, .frosa-resource-list small, .frosa-compact-dropdown small,
.frosa-about-dropdown small { display: block; margin-top: 5px; overflow-wrap: anywhere; color: var(--frosa-muted); font-size: 9px; line-height: 1.5; }
.frosa-service-item > b, .frosa-resource-list > a > b, .frosa-compact-dropdown > a > b,
.frosa-about-dropdown > a > b { color: #8d9aab; font-size: 13px; font-weight: 400; }
.frosa-dropdown-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-top: 13px; border-top: 1px solid var(--frosa-border); color: var(--frosa-muted); font-size: 10px; }
.frosa-dropdown-footer a { color: var(--frosa-blue); font-size: 10px; font-weight: 650; text-decoration: none; white-space: nowrap; }
.frosa-knowledge-dropdown { width: 415px; }
.frosa-resource-list { display: grid; grid-template-columns: 1fr 1fr; gap: 3px; padding-top: 10px; }
.frosa-resource-list > a { grid-template-columns: 32px minmax(0,1fr) 12px; gap: 8px; padding-inline: 5px; }
.frosa-resource-code { width: 29px; height: 29px; font-size: 9px; }
.frosa-compact-dropdown { width: 310px; padding: 10px; }
.frosa-compact-dropdown > a { grid-template-columns: 34px minmax(0,1fr) 14px; }
.frosa-about-dropdown { right: 0; left: auto; width: 260px; padding: 9px; transform: translateY(9px); }
.frosa-has-dropdown:hover > .frosa-about-dropdown,
.frosa-has-dropdown:focus-within > .frosa-about-dropdown,
.frosa-has-dropdown.is-touch-open > .frosa-about-dropdown { transform: translateY(0); }
.frosa-about-dropdown > a { display: grid; grid-template-columns: minmax(0,1fr) 14px; gap: 4px 8px; padding: 11px; border-radius: 5px; text-decoration: none; }
.frosa-about-dropdown > a > strong, .frosa-about-dropdown > a > small { grid-column: 1; }
.frosa-about-dropdown > a > b { grid-column: 2; grid-row: 1 / span 2; align-self: center; }

/* Mobile navigation */
.frosa-mobile-menu { display: none; }
.frosa-global-header :is(a, button, summary):focus-visible { outline: 2px solid var(--frosa-blue); outline-offset: 4px; }
.frosa-global-header [aria-current="page"] { color: var(--frosa-blue) !important; font-weight: 700; }
.frosa-mobile-menu details.is-current > summary { color: var(--frosa-blue); font-weight: 700; }
.frosa-mobile-menu details.is-current > summary::before { width: 3px; height: 17px; margin-right: 9px; border-radius: 3px; background: var(--frosa-blue); content: ""; }

@media (min-width: 783px) { body.admin-bar .frosa-global-header { top: 32px; } }
@media (min-width: 601px) and (max-width: 782px) { body.admin-bar .frosa-global-header { top: 46px; } }
@media (max-width: 600px) { body.admin-bar .frosa-global-header { top: 0; } }

@media (max-width: 1240px) {
  .frosa-header-inner { gap: 16px; }
  .frosa-header-brand { flex-basis: 164px; }
  .frosa-desktop-nav { gap: 13px; }
  .frosa-nav-link { font-size: 12px !important; }
}
@media (max-width: 1160px) {
  .frosa-header-inner { width: calc(100% - 36px); min-height: 72px; }
  .frosa-desktop-nav { display: none; }
  .frosa-header-actions { margin-left: auto; }
  .frosa-mobile-trigger { width: 40px; height: 40px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; padding: 0; border: 1px solid var(--frosa-border); border-radius: 4px; background: #fff; cursor: pointer; }
  .frosa-mobile-trigger span { width: 17px; height: 1.5px; border-radius: 2px; background: var(--frosa-ink); transition: transform .18s ease, opacity .18s ease; }
  .frosa-mobile-trigger[aria-expanded="true"] span:first-child { transform: translateY(6.5px) rotate(45deg); }
  .frosa-mobile-trigger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .frosa-mobile-trigger[aria-expanded="true"] span:last-child { transform: translateY(-6.5px) rotate(-45deg); }
  .frosa-mobile-menu { position: absolute; top: 100%; left: 0; z-index: 15; width: 100%; max-height: calc(100vh - 90px); max-height: calc(100dvh - 90px); display: block; overflow-y: auto; overscroll-behavior: contain; padding: 0 max(24px, calc((100% - 900px)/2)); border-top: 1px solid var(--frosa-border); background: #fff; box-shadow: 0 20px 40px rgba(25,40,68,.1); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-5px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease; }
  .frosa-mobile-menu.is-open { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
  .frosa-mobile-menu > a, .frosa-mobile-menu summary { min-height: 50px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--frosa-border); color: var(--frosa-ink); font-size: 14px; font-weight: 550; text-decoration: none; cursor: pointer; list-style: none; }
  .frosa-mobile-menu summary::-webkit-details-marker { display: none; }
  .frosa-mobile-menu summary::after { content: "+"; color: #8090a5; font-size: 18px; font-weight: 300; }
  .frosa-mobile-menu details[open] > summary::after { content: "−"; color: var(--frosa-blue); }
  .frosa-mobile-menu details > div { display: grid; padding: 4px 0 10px 15px; border-bottom: 1px solid var(--frosa-border); }
  .frosa-mobile-menu details > div a { padding: 10px 0; color: var(--frosa-muted); font-size: 12px; text-decoration: none; }
  
  
}
@media (max-width: 600px) {
  .frosa-header-inner { width: calc(100% - 30px); min-height: 66px; gap: 10px; }
  .frosa-header-brand { flex: 0 1 156px; }
  .frosa-brand-logo { width: 156px; }
  
  .frosa-mobile-trigger { width: 38px; height: 38px; }
  .frosa-mobile-menu { padding-inline: 20px; max-height: calc(100vh - 82px); max-height: calc(100dvh - 82px); }
  .frosa-consult-intro { padding-right: 24px; }
  .frosa-consult-intro h2 { font-size: 18px; }
  .frosa-consult-wechat img { display: none; }
  .frosa-consult-wechat p { display: none; }
  .frosa-wechat-mobile { display: inline-block; margin-top: 11px; color: var(--frosa-blue); font-size: 11px; text-decoration: none; }
  .frosa-consult-foot { font-size: 7px; }
}
@media (max-width: 360px) {
  .frosa-header-inner { gap: 7px; }
  
}
@media (prefers-reduced-motion: reduce) {
  .frosa-global-header *, .frosa-global-header *::before, .frosa-global-header *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* Final polish: keep the shared navigation in step with FROSA's finished pages. */
.frosa-global-header.wp-block-group,
.frosa-global-header.alignfull { margin: 0 !important; padding: 0 !important; }
.frosa-header-inner { max-width: 1340px; min-height: 78px; gap: clamp(18px, 2.1vw, 32px); }
.frosa-header-brand { flex-basis: 190px; }
.frosa-brand-logo { width: 190px; }
.frosa-desktop-nav { gap: clamp(12px, 1.45vw, 22px); }
.frosa-nav-link { min-height: 78px; font-size: 13px !important; font-weight: 560; }
.frosa-nav-link::after { bottom: 15px; height: 2px; }


.frosa-dropdown { border-color: var(--frosa-border); border-radius: 13px; box-shadow: 0 22px 56px rgba(24, 39, 68, .14); }
.frosa-service-item, .frosa-resource-list > a, .frosa-compact-dropdown > a, .frosa-about-dropdown > a { border-radius: 8px; }
.frosa-mobile-trigger { border-radius: 8px; }
@media (max-width: 1240px) {
  .frosa-header-inner { gap: 15px; }
  .frosa-header-brand { flex-basis: 170px; }
  .frosa-brand-logo { width: 170px; }
  .frosa-desktop-nav { gap: 12px; }
}
@media (max-width: 1160px) {
  .frosa-header-inner { min-height: 72px; }
  .frosa-header-brand { flex-basis: 178px; }
  .frosa-brand-logo { width: 178px; }
}
@media (max-width: 600px) {
  .frosa-header-inner { min-height: 68px; }
  .frosa-header-brand { flex-basis: 150px; }
  .frosa-brand-logo { width: 150px; }
  
}
/* Proportions aligned with the supplied ALL REG EU header CSS. */
.frosa-header-brand { flex: 0 0 118px; }
.frosa-brand-logo { width: 118px; }
.frosa-desktop-nav { gap: 25px; }
.frosa-nav-link { font-size: 14.5px !important; font-weight: 500; }


@media (max-width: 1240px) {
  .frosa-header-inner { gap: 20px; }
  .frosa-desktop-nav { gap: 17px; }
  .frosa-nav-link { font-size: 13.5px !important; }
}

@media (max-width: 1160px) {
  .frosa-header-brand { flex-basis: 118px; }
  .frosa-brand-logo { width: 118px; }
}

@media (max-width: 600px) {
  .frosa-header-brand { flex: 0 1 108px; }
  .frosa-brand-logo { width: 108px; }
}

@media (max-width: 360px) {
  .frosa-header-brand { flex-basis: 100px; }
  .frosa-brand-logo { width: 100px; }
}



/* FROSA global footer — adapted from the FDA-registered site footer. */
.frosa-site-footer{--ff-ink:#f5f8fc;--ff-muted:#b3c0d2;--ff-dim:#98a8be;--ff-blue:#347cff;position:relative;isolation:isolate;width:100%;overflow:hidden;background:radial-gradient(circle at 84% 0%,rgba(37,99,235,.15),transparent 34%),linear-gradient(180deg,#0b1220 0%,#080e19 100%);color:var(--ff-ink);font:400 16px/1.75 "PingFang SC","Microsoft YaHei","Segoe UI",sans-serif}
.frosa-site-footer,.frosa-site-footer *,.frosa-site-footer *::before,.frosa-site-footer *::after{box-sizing:border-box}
.frosa-site-footer::before{position:absolute;top:0;right:0;left:0;height:1px;background:linear-gradient(90deg,transparent,rgba(72,132,255,.72),transparent);content:""}
.frosa-site-footer :is(h2,h3,p){margin:0}
.frosa-site-footer a{color:inherit;text-decoration:none;text-underline-offset:4px}
.frosa-site-footer :is(a,button):focus-visible{outline:2px solid #8bb5ff;outline-offset:4px;border-radius:4px}
.frosa-footer-inner{position:relative;width:min(1380px,calc(100% - 64px));margin-inline:auto}
.frosa-footer-top{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:center;gap:clamp(42px,7vw,100px);padding:78px 0 68px}
.frosa-footer-intro{max-width:650px}
.frosa-footer-logo{display:inline-flex;align-items:center;margin-bottom:31px}
.frosa-footer-logo img{display:block;width:142px;height:auto;object-fit:contain;opacity:.96}
.frosa-footer-eyebrow,.frosa-footer-cta-label{display:block;color:#83adf5;font-size:10px;font-weight:750;letter-spacing:.15em;line-height:1.6}
.frosa-footer-eyebrow{margin-bottom:12px}
.frosa-footer-intro h2{max-width:600px;color:#fff;font-size:clamp(32px,3vw,46px);font-weight:650;line-height:1.2;letter-spacing:-.035em}
.frosa-footer-intro p{max-width:570px;margin-top:15px;color:var(--ff-muted);font-size:14px;line-height:1.85}
.frosa-footer-cta{position:relative;padding:28px 30px;border:1px solid rgba(255,255,255,.13);border-radius:15px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 20px 55px rgba(0,0,0,.15)}
.frosa-footer-cta::before{position:absolute;top:-1px;left:28px;width:64px;height:2px;border-radius:99px;background:#4a88ff;content:""}
.frosa-footer-cta-label{margin-bottom:13px}
.frosa-footer-cta h3{color:#fff;font-size:23px;font-weight:650;line-height:1.4}
.frosa-footer-cta p{max-width:440px;margin-top:7px;color:var(--ff-muted);font-size:13px;line-height:1.8}
.frosa-footer-cta-button{display:inline-flex;min-width:190px;min-height:48px;align-items:center;justify-content:space-between;gap:30px;margin-top:19px;padding:0 17px;border-radius:8px;background:linear-gradient(135deg,#1559d6,#347cff);box-shadow:0 9px 24px rgba(21,89,214,.26);color:#fff!important;font-size:13px;font-weight:700;transition:transform .18s ease,box-shadow .18s ease}
.frosa-footer-cta-button:hover{transform:translateY(-1px);box-shadow:0 13px 30px rgba(21,89,214,.34)}
.frosa-footer-cta-button>span:last-child{font-size:17px;transition:transform .18s ease}
.frosa-footer-cta-button:hover>span:last-child{transform:translateX(3px)}
.frosa-footer-navigation{display:grid;grid-template-columns:1.15fr 1.15fr .85fr .85fr;gap:clamp(24px,4vw,58px);padding:42px 0 46px;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.frosa-footer-column{min-width:0}
.frosa-footer-column-label{display:block;color:var(--ff-dim);font-size:9px;font-weight:750;letter-spacing:.13em;line-height:1.6}
.frosa-footer-column h3{margin:9px 0 15px;color:#f7f9fc;font-size:14px;font-weight:650;line-height:1.5}
.frosa-footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.frosa-footer-links a{display:inline-flex;min-height:30px;align-items:center;gap:6px;color:#b2bfd1;font-size:12px;line-height:1.55;transition:color .18s ease,transform .18s ease}
.frosa-footer-links a:hover{transform:translateX(2px);color:#fff}
.frosa-footer-links .frosa-footer-overview{color:#fff;font-weight:700}
.frosa-footer-links a span{color:#83adf5;font-size:11px}
.frosa-footer-contact{display:grid;grid-template-columns:minmax(220px,1.2fr) repeat(3,minmax(125px,.75fr)) auto;align-items:center;gap:20px;padding:29px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.frosa-footer-contact-intro{display:grid;gap:4px}
.frosa-footer-contact-intro>span,.frosa-footer-contact-link small,.frosa-footer-wechat small{color:var(--ff-dim);font-size:9px;font-weight:750;letter-spacing:.1em}
.frosa-footer-contact-intro strong{color:#fff;font-size:14px;font-weight:650}
.frosa-footer-contact-intro p{color:#aab8cb;font-size:11px}
.frosa-footer-contact-link{display:flex;min-width:0;flex-direction:column;gap:4px}
.frosa-footer-contact-link strong,.frosa-footer-wechat strong{overflow-wrap:anywhere;color:#f0f4fa;font-size:11px;font-weight:600;line-height:1.5;transition:color .18s ease}
.frosa-footer-contact-link:hover strong{color:#9fc1ff}
.frosa-footer-wechat{display:flex;min-width:132px;align-items:center;gap:9px;padding:7px 9px;border:1px solid rgba(255,255,255,.13);border-radius:8px;background:rgba(255,255,255,.035);color:#fff;text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease}
.frosa-footer-wechat:hover{border-color:rgba(117,164,255,.55);background:rgba(36,94,205,.11)}
.frosa-footer-wechat-icon{display:grid;width:31px;height:31px;flex:0 0 31px;place-items:center;border-radius:8px;background:#08a85b;color:#fff;font-size:13px;font-weight:700}
.frosa-footer-wechat>span:nth-child(2){display:grid;gap:1px}
.frosa-footer-wechat small{font-size:7px}
.frosa-footer-wechat strong{font-size:10px}
.frosa-footer-wechat>b{margin-left:auto;color:#83adf5;font-size:13px;font-weight:400}
.frosa-footer-contact-button{display:inline-flex;min-height:42px;align-items:center;justify-content:space-between;gap:18px;padding:0 14px;border-radius:6px;background:#1559d6;color:#fff!important;font-size:11px;font-weight:650;white-space:nowrap;transition:background .18s ease}
.frosa-footer-contact-button:hover{background:#347cff}
.frosa-footer-contact-button span{font-size:15px}
.frosa-footer-social{padding:25px 0 27px;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.frosa-footer-social-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:15px}
.frosa-footer-social-head>div{display:grid;gap:4px}
.frosa-footer-social-head>div>span,.frosa-footer-social-copy small{color:var(--ff-dim);font-size:9px;font-weight:750;letter-spacing:.13em;line-height:1.5}
.frosa-footer-social-head h2{margin:0;color:#f7f9fc;font-size:16px;font-weight:650;line-height:1.45}
.frosa-footer-social-head>p{margin:0;color:#aab8cb;font-size:11px;line-height:1.6}
.frosa-footer-social-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.frosa-footer-social-item{display:flex;min-width:0;min-height:58px;align-items:center;gap:10px;padding:8px 11px;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(255,255,255,.035);color:#f3f6fb;text-align:left;font:inherit;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.frosa-footer-social-item:hover{transform:translateY(-1px);border-color:rgba(117,164,255,.55);background:rgba(36,94,205,.12)}
.frosa-footer-social-icon{display:grid;width:33px;height:33px;flex:0 0 33px;place-items:center;border-radius:9px;background:#182235;color:#fff;font-size:12px;font-weight:800}
.frosa-footer-social-icon svg{display:block;width:21px;height:21px}
.frosa-social-red{background:#ef4452;font-size:9px;letter-spacing:-.05em}
.frosa-social-wechat{background:#08a85b}
.frosa-social-zhihu{background:#1677ff;font-size:17px}
.frosa-social-channels{background:#f3a33b}
.frosa-footer-social-copy{display:grid;min-width:0;gap:2px}
.frosa-footer-social-copy small{font-size:8px;letter-spacing:.08em;white-space:nowrap}
.frosa-footer-social-copy strong{overflow:hidden;color:#f5f8fc;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}
.frosa-footer-social-arrow{margin-left:auto;color:#83adf5;font-size:14px}
.frosa-footer-social-item:focus-visible{outline:2px solid #8bb5ff;outline-offset:3px}
.frosa-footer-bottom{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:14px 25px}
.frosa-footer-company,.frosa-footer-legal,.frosa-footer-legal nav{display:flex;flex-wrap:wrap;align-items:center;gap:7px 15px}
.frosa-footer-company{color:#a3b0c2;font-size:10px}
.frosa-footer-company strong{color:#c7d4e6;font-size:9px;letter-spacing:.09em}
.frosa-footer-company i{width:1px;height:12px;background:rgba(255,255,255,.22)}
.frosa-footer-legal{justify-content:flex-end;color:#a3b0c2;font-size:9px}
.frosa-footer-legal nav{gap:8px 18px}
.frosa-footer-legal a{color:#b0bdce;transition:color .18s ease}
.frosa-footer-legal nav a strong{color:inherit;font-size:inherit;font-weight:700}
.frosa-footer-legal nav a span{color:#83adf5;font-size:10px}
.frosa-footer-legal a:hover{color:#fff}









@media(max-width:1100px){.frosa-footer-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px}.frosa-footer-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 48px}.frosa-footer-contact{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.frosa-footer-contact-intro{grid-column:1/-1}.frosa-footer-contact-button{justify-self:start}}
@media(max-width:900px){.frosa-footer-social-links{grid-template-columns:repeat(3,minmax(0,1fr))}.frosa-footer-social-item:nth-child(4){grid-column:1/2}}
@media(max-width:760px){.frosa-footer-inner{width:calc(100% - 40px)}.frosa-footer-top{grid-template-columns:1fr;gap:30px;padding:52px 0 42px}.frosa-footer-logo{margin-bottom:25px}.frosa-footer-logo img{width:128px}.frosa-footer-intro h2{font-size:32px}.frosa-footer-intro p{font-size:13px}.frosa-footer-cta{padding:23px 22px}.frosa-footer-navigation{gap:30px 22px;padding:34px 0}.frosa-footer-contact{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;padding:25px 0}.frosa-footer-contact-intro{grid-column:1/-1}.frosa-footer-contact-button{justify-self:stretch}.frosa-footer-bottom{align-items:flex-start;flex-direction:column;gap:10px;padding:16px 0 20px}.frosa-footer-legal{justify-content:flex-start}.frosa-footer-wechat{min-height:46px}.frosa-footer-social{padding:23px 0}.frosa-footer-social-head{align-items:flex-start;flex-direction:column;gap:5px}.frosa-footer-social-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.frosa-footer-social-item{min-height:55px;padding:7px}.frosa-footer-social-icon{width:30px;height:30px;flex-basis:30px}.frosa-footer-social-copy strong{font-size:10px}.frosa-footer-social-item:nth-child(4){grid-column:auto}}
@media(max-width:480px){.frosa-footer-inner{width:calc(100% - 36px)}.frosa-footer-navigation{grid-template-columns:1fr;gap:23px;padding:30px 0}.frosa-footer-column h3{margin:7px 0 10px}.frosa-footer-links{gap:5px}.frosa-footer-links a{min-height:35px}.frosa-footer-contact{grid-template-columns:1fr;gap:14px}.frosa-footer-contact-intro{grid-column:auto}.frosa-footer-wechat{max-width:none}.frosa-footer-contact-button{width:100%}.frosa-footer-legal{align-items:flex-start;flex-direction:column;gap:6px}.frosa-footer-cta-button{width:100%}}
@media(prefers-reduced-motion:reduce){.frosa-site-footer *,.frosa-site-footer *::before,.frosa-site-footer *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Contact strip aligned to the shared ALL REG / FROSA footer system. */
.frosa-footer-contact{display:block;padding:27px 0 28px;border-bottom:1px solid rgba(255,255,255,.1)}
.frosa-footer-contact-heading{margin:0 0 18px;color:var(--ff-dim);font-size:9px;font-weight:750;letter-spacing:.1em;line-height:1.5}
.frosa-footer-contact-grid{display:grid;grid-template-columns:minmax(210px,1.05fr) minmax(120px,.55fr) minmax(205px,1fr) minmax(330px,1.8fr);align-items:center;gap:clamp(18px,2vw,30px)}
.frosa-footer-contact-primary{display:grid;min-width:0;gap:14px}
.frosa-footer-contact-primary .frosa-footer-wechat{width:100%;max-width:225px;min-height:58px;padding:8px 11px;border-color:rgba(117,164,255,.4);background:rgba(36,94,205,.08)}
.frosa-footer-contact-primary .frosa-footer-wechat-icon{width:34px;height:34px;flex-basis:34px}
.frosa-footer-contact-primary .frosa-footer-wechat>span:nth-child(2){gap:2px}
.frosa-footer-contact-primary .frosa-footer-wechat small{font-size:8px}
.frosa-footer-contact-primary .frosa-footer-wechat strong{font-size:11px}
.frosa-footer-email,.frosa-footer-phone{display:flex;min-width:0;flex-direction:column;gap:4px}
.frosa-footer-email small,.frosa-footer-phone small{color:var(--ff-dim);font-size:9px;font-weight:750;letter-spacing:.1em}
.frosa-footer-email strong,.frosa-footer-phone strong{overflow-wrap:anywhere;color:#f0f4fa;font-size:11px;font-weight:650;line-height:1.5}
.frosa-footer-contact-motto{display:grid;gap:5px;justify-self:center}
.frosa-footer-contact-motto strong{color:#f5f8fc;font-size:16px;font-weight:650;line-height:1.4}
.frosa-footer-contact-motto span{color:#91a5c0;font-size:8px;font-weight:750;letter-spacing:.09em;white-space:nowrap}
.frosa-footer-ecosystem{display:grid;justify-items:end;gap:9px;min-width:0}
.frosa-footer-ecosystem>span{color:var(--ff-dim);font-size:9px;font-weight:750;letter-spacing:.1em}
.frosa-footer-ecosystem nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.frosa-footer-ecosystem nav a{display:inline-flex;min-height:31px;align-items:center;gap:4px;padding:0 10px;border:1px solid rgba(255,255,255,.13);border-radius:6px;color:#c7d4e6;font-size:8px;font-weight:650;white-space:nowrap;transition:border-color .18s ease,color .18s ease,background .18s ease}
.frosa-footer-ecosystem nav a:hover{border-color:rgba(117,164,255,.5);background:rgba(36,94,205,.1);color:#fff}
.frosa-footer-ecosystem nav i{color:#83adf5;font-size:9px;font-style:normal}
@media(max-width:1100px){.frosa-footer-contact-grid{grid-template-columns:minmax(220px,1fr) minmax(140px,.7fr);gap:23px 34px}.frosa-footer-contact-motto{justify-self:start}.frosa-footer-ecosystem{justify-items:start}.frosa-footer-ecosystem nav{justify-content:flex-start}}
@media(max-width:600px){.frosa-footer-contact{padding:24px 0}.frosa-footer-contact-grid{grid-template-columns:1fr;gap:19px}.frosa-footer-contact-motto{justify-self:start}.frosa-footer-contact-motto strong{font-size:15px}.frosa-footer-ecosystem nav{gap:6px}.frosa-footer-ecosystem nav a{min-height:34px;padding-inline:9px}}


/* FROSA homepage styles. Add this to WordPress Additional CSS. */
.frosa-homepage{--fh-ink:#12233c;--fh-text:#536781;--fh-muted:#74849a;--fh-blue:#222681;--fh-bright:#347cff;--fh-line:#e1e8f1;--fh-pale:#f5f8fc;--fh-width:1260px;display:flow-root;margin:0!important;padding:0!important;color:var(--fh-ink);font-family:Inter,"Noto Sans SC","Microsoft YaHei",sans-serif;line-height:1.7;overflow:hidden;-webkit-font-smoothing:antialiased}
.frosa-homepage,.frosa-homepage *,.frosa-homepage *::before,.frosa-homepage *::after{box-sizing:border-box}
.frosa-homepage :is(h1,h2,h3,p,ol,ul){margin:0}
.frosa-homepage a{color:inherit;text-decoration:none;text-underline-offset:4px}
.frosa-homepage a:focus-visible,.frosa-homepage summary:focus-visible{outline:3px solid #8bb5ff;outline-offset:4px;border-radius:4px}
/* Reset WordPress block gap and any leading spacer on this homepage. */
body.home:has(.frosa-homepage) .wp-site-blocks>main,body.home:has(.frosa-homepage) .wp-block-post-content,body.home:has(.frosa-homepage) .entry-content,body.home:has(.frosa-homepage) .wp-block-html,body.home:has(.frosa-homepage) .wp-block-group{margin-block-start:0!important;padding-block-start:0!important}
body.home:has(.frosa-homepage) .wp-block-spacer{display:none!important;height:0!important}
.frosa-global-header{margin-block-end:0!important}
.frosa-homepage{margin-block-start:-30px!important}
.fhp-wrap{width:min(var(--fh-width),calc(100% - 64px));margin-inline:auto}
.fhp-hero{position:relative;overflow:hidden;margin:0!important;padding:0!important;border-bottom:1px solid #e6edf6;background:radial-gradient(circle at 80% 28%,rgba(49,119,238,.13),transparent 31%),linear-gradient(180deg,#f7faff 0%,#fff 86%)}
.fhp-hero::before{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(24,86,180,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(24,86,180,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 26%,#000 62%,#000 100%);content:""}
.fhp-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.95fr) minmax(430px,1.05fr);align-items:center;gap:clamp(48px,7vw,100px);min-height:0!important;padding-block:22px 38px!important}
.fhp-hero-copy{max-width:610px}
.fhp-eyebrow{display:flex;align-items:center;gap:11px;color:var(--fh-blue);font-size:10px;font-weight:800;letter-spacing:.12em;line-height:1.6}
.fhp-eyebrow>span{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#347cff;box-shadow:0 0 0 5px rgba(52,124,255,.1)}
.fhp-eyebrow>i{width:24px;height:1px;background:#c8d5e8}
.fhp-hero h1{margin-top:20px;color:#10213a;font-size:clamp(42px,5.1vw,68px);font-weight:760;letter-spacing:-.055em;line-height:1.16}
.fhp-hero h1 em{color:#2869cf;font-style:normal}
.fhp-lead{max-width:580px;margin-top:18px!important;color:var(--fh-text);font-size:16px;line-height:1.85}
.fhp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:11px;margin-top:23px}
.fhp-button{display:inline-flex;min-height:49px;align-items:center;justify-content:space-between;gap:22px;padding:0 18px;border-radius:7px;font-size:12px;font-weight:700;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}
.fhp-button:hover{transform:translateY(-2px)}
.fhp-button-primary{min-width:170px;background:linear-gradient(135deg,#202783,#347cff);box-shadow:0 10px 25px rgba(34,39,129,.2);color:#fff!important}
.fhp-button-primary:hover{box-shadow:0 14px 30px rgba(34,39,129,.28)}
.fhp-button-secondary{min-width:176px;border:1px solid #d5dfed;background:rgba(255,255,255,.78);color:#17263b!important}
.fhp-button-secondary:hover{border-color:#9eb9df;background:#fff}
.fhp-note{margin-top:12px!important;color:#7889a0;font-size:9px}
.fhp-route-card{position:relative;padding:23px 25px 18px;border:1px solid rgba(184,201,226,.72);border-radius:11px;background:rgba(255,255,255,.93);box-shadow:0 22px 65px rgba(31,58,97,.11)}
.fhp-route-card::before{position:absolute;top:-1px;left:25px;width:72px;height:3px;border-radius:9px;background:linear-gradient(90deg,#222681,#4b91ff);content:""}
.fhp-route-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#8594a9;font-size:8px;font-weight:800;letter-spacing:.1em}
.fhp-chip{padding:4px 8px;border-radius:20px;background:#eef4ff;color:#2869cf;font-size:8px;letter-spacing:0;white-space:nowrap}
.fhp-route-card h2{margin-top:15px;color:#172942;font-size:24px;font-weight:700;letter-spacing:-.035em;line-height:1.32}
.fhp-route-card ol{display:grid;margin:12px 0 10px;padding:0;list-style:none}
.fhp-route-card li{display:grid;grid-template-columns:32px minmax(0,1fr) 14px;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #edf1f6}
.fhp-route-card li>span{display:grid;width:28px;height:28px;place-items:center;border:1px solid #dce7f5;border-radius:50%;color:#347cff;font-size:9px;font-weight:800}
.fhp-route-card li div{display:grid;gap:2px}
.fhp-route-card li strong{color:#243752;font-size:11px;font-weight:700}
.fhp-route-card li small{color:#8391a4;font-size:9px;line-height:1.5}
.fhp-route-card li>b{color:#87a1c6;font-size:12px;font-weight:400}
.fhp-route-card>p{padding-top:9px;border-top:1px solid #edf1f6;color:#8996a8;font-size:9px}
.fhp-market-strip{position:relative;z-index:1;border-top:1px solid rgba(224,232,242,.8);background:rgba(255,255,255,.72)}
.fhp-market-strip>.fhp-wrap{display:flex;min-height:48px;align-items:center;flex-wrap:wrap;gap:5px 27px}
.fhp-market-strip>div>span{color:#8290a3;font-size:9px;font-weight:700}
.fhp-market-strip a{display:inline-flex;min-height:30px;align-items:center;color:#53657d;font-size:9px;font-weight:650;transition:color .18s ease}
.fhp-market-strip a:hover{color:#2869cf}
.fhp-section{padding-block:82px}
.fhp-services{background:#f8faff}
.fhp-insights{background:#fff}
.fhp-section-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.75fr);align-items:end;gap:42px;margin-bottom:32px}
.fhp-section-head h2,.fhp-faq-intro h2{margin-top:10px;color:#13243d;font-size:clamp(32px,3.2vw,42px);font-weight:720;letter-spacing:-.045em;line-height:1.25}
.fhp-section-head>p{max-width:520px;margin:0 0 3px auto;color:#596d86;font-size:13px;line-height:1.85}
.fhp-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.fhp-service-card{position:relative;display:flex;min-height:385px;flex-direction:column;padding:24px 24px 0;border:1px solid #dce5f1;border-radius:10px;background:#fff;box-shadow:0 10px 30px rgba(28,50,81,.055);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.fhp-service-card:hover{transform:translateY(-3px);border-color:#c0d3ec;box-shadow:0 17px 40px rgba(28,50,81,.1)}
.fhp-platform-card{background:linear-gradient(155deg,#f8faff,#fff 65%)}
.fhp-card-top{display:flex;align-items:center;justify-content:space-between;color:#74869e}
.fhp-card-top>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#eef3ff;color:#2869cf;font-size:10px;font-weight:800}
.fhp-card-top small{color:#8393aa;font-size:9px;font-weight:800;letter-spacing:.1em}
.fhp-service-card h3{margin-top:19px;color:#152740;font-size:24px;font-weight:700;letter-spacing:-.035em;line-height:1.32}
.fhp-service-card>p{margin-top:12px;color:#596d86;font-size:12px;line-height:1.8}
.fhp-service-card ul{display:grid;gap:8px;margin:16px 0 19px;padding:0;list-style:none}
.fhp-service-card li{position:relative;padding-left:15px;color:#465d79;font-size:11px;line-height:1.65}
.fhp-service-card li::before{position:absolute;top:.65em;left:1px;width:4px;height:4px;border-radius:50%;background:#347cff;content:""}
.fhp-card-link{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:10px;margin:auto -24px 0;padding:0 24px;border-top:1px solid #e8edf4;color:#245db5!important;font-size:11px;font-weight:700;transition:background .18s ease}
.fhp-card-link:hover{background:#f5f8fe}
.fhp-card-link span{font-size:15px;font-weight:400}
.fhp-disclaimer{margin-top:17px!important;color:#75869d;font-size:10px;line-height:1.75}
.fhp-needs,.fhp-faq{background:#f6f8fc}
.fhp-needs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.fhp-needs-grid article{display:flex;min-height:205px;flex-direction:column;padding:19px 20px;border:1px solid #e3e9f1;border-radius:7px;background:#fff}
.fhp-needs-grid article>span{color:#7f91a8;font-size:8px;font-weight:800;letter-spacing:.08em}
.fhp-needs-grid h3{margin-top:10px;color:#1b2e49;font-size:16px;font-weight:700}
.fhp-needs-grid p{margin-top:7px;color:#6d7d91;font-size:10px;line-height:1.8}
.fhp-needs-grid a{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:11px;color:#2869cf;font-size:9px;font-weight:700}
.fhp-needs-grid a b{font-size:13px;font-weight:400}
.fhp-process{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 0%,rgba(55,119,221,.18),transparent 32%),linear-gradient(145deg,#111e33,#0a1425);color:#fff}
.fhp-process::after{position:absolute;right:-80px;bottom:-300px;width:500px;height:500px;border:1px solid rgba(120,163,226,.1);border-radius:50%;box-shadow:0 0 0 55px rgba(120,163,226,.025),0 0 0 110px rgba(120,163,226,.02);content:"";pointer-events:none}
.fhp-section-head-light{position:relative;z-index:1}
.fhp-section-head-light h2{color:#f5f8fc}
.fhp-section-head-light>p{color:#adbbcf}
.fhp-section-head-light .fhp-eyebrow{color:#9fc1ff}
.fhp-steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;padding:0;list-style:none}
.fhp-steps li{min-height:165px;padding:15px 14px 0 0;border-top:1px solid rgba(255,255,255,.2)}
.fhp-steps li>span{color:#9fc1ff;font-size:8px;font-weight:800;letter-spacing:.13em}
.fhp-steps h3{margin-top:17px;color:#f5f8fc;font-size:14px;font-weight:650}
.fhp-steps p{max-width:235px;margin-top:8px;color:#b3c0d2;font-size:9px;line-height:1.8}
.fhp-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--fh-line);border-bottom:1px solid var(--fh-line)}
.fhp-resource-grid>a{position:relative;display:flex;min-height:165px;flex-direction:column;justify-content:center;padding:22px 24px;border-right:1px solid var(--fh-line);transition:background .18s ease}
.fhp-resource-grid>a:first-child{border-left:1px solid var(--fh-line)}
.fhp-resource-grid>a:hover{background:#f7f9fc}
.fhp-resource-grid>a>span{color:#2869cf;font-size:8px;font-weight:800;letter-spacing:.1em}
.fhp-resource-grid h3{margin-top:8px;color:#182b45;font-size:15px;font-weight:700}
.fhp-resource-grid p{max-width:290px;margin-top:5px;color:#748398;font-size:9px;line-height:1.7}
.fhp-resource-grid b{display:flex;align-items:center;gap:8px;margin-top:12px;color:#2869cf;font-size:9px;font-weight:700}
.fhp-resource-grid i{font-size:13px;font-style:normal;font-weight:400}
.fhp-faq-grid{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);gap:clamp(38px,7vw,100px)}
.fhp-faq-intro h2{font-size:clamp(31px,3.2vw,40px)}
.fhp-faq-intro>p:last-child{max-width:330px;margin-top:13px;color:#68798f;font-size:10px;line-height:1.8}
.fhp-faq-list{border-top:1px solid #dce4ef}
.fhp-faq-list details{border-bottom:1px solid #dce4ef}
.fhp-faq-list summary{position:relative;padding:15px 32px 15px 0;color:#20344f;font-size:11px;font-weight:700;cursor:pointer;list-style:none}
.fhp-faq-list summary::-webkit-details-marker{display:none}
.fhp-faq-list summary::after{position:absolute;top:11px;right:2px;color:#347cff;content:"+";font-size:18px;font-weight:300}
.fhp-faq-list details[open] summary::after{content:"−"}
.fhp-faq-list details p{max-width:680px;padding:0 28px 15px 0;color:#677990;font-size:9px;line-height:1.85}
.fhp-final{padding-block:62px;color:#fff;background:linear-gradient(110deg,#eaf1fb,#f1f5fb)}
.fhp-final-inner{display:flex;align-items:center;justify-content:space-between;gap:42px}
.fhp-final .fhp-eyebrow{color:#2869cf}
.fhp-final h2{margin-top:10px;color:#13243d;font-size:clamp(31px,3.4vw,42px);font-weight:720;letter-spacing:-.04em;line-height:1.25}
.fhp-final-inner>div:first-child>p:last-child{max-width:590px;margin-top:12px;color:#5f7188;font-size:10px;line-height:1.8}
.fhp-final-actions{display:flex;flex:0 0 auto;flex-direction:column;align-items:flex-start;gap:10px}
.fhp-final-actions>a:not(.fhp-button){color:#455b77;font-size:10px;transition:color .18s ease}
.fhp-final-actions>a:not(.fhp-button):hover{color:#2869cf}
@media(max-width:980px){.fhp-hero-grid{grid-template-columns:minmax(0,.95fr) minmax(340px,1.05fr);gap:32px}.fhp-hero h1{font-size:clamp(38px,5.3vw,56px)}.fhp-route-card{padding-inline:20px}.fhp-service-card{padding-inline:17px}.fhp-card-link{margin-inline:-17px;padding-inline:17px}}
@media(max-width:760px){.fhp-wrap{width:calc(100% - 40px)}.fhp-hero-grid{grid-template-columns:1fr;gap:24px;padding-block:24px 28px!important}.fhp-hero h1{margin-top:17px;font-size:clamp(38px,9.5vw,54px)}.fhp-lead{margin-top:14px!important;font-size:13px}.fhp-actions{gap:9px;margin-top:18px}.fhp-button{min-height:45px;padding-inline:14px;font-size:10px}.fhp-button-primary,.fhp-button-secondary{min-width:0}.fhp-note{margin-top:10px!important}.fhp-route-card{max-width:560px;padding:20px 18px 16px}.fhp-route-card h2{font-size:22px}.fhp-market-strip>.fhp-wrap{min-height:0;gap:2px 15px;padding-block:9px}.fhp-market-strip>div>span{width:100%}.fhp-market-strip a{min-height:27px;font-size:8px}.fhp-section{padding-block:58px}.fhp-section-head{grid-template-columns:1fr;gap:11px;margin-bottom:22px}.fhp-section-head h2,.fhp-faq-intro h2{font-size:clamp(28px,7.8vw,36px)}.fhp-section-head>p{margin:0;font-size:10px}.fhp-service-grid,.fhp-needs-grid{grid-template-columns:1fr;gap:10px}.fhp-service-card{min-height:0;padding:19px 19px 0}.fhp-service-card h3{font-size:21px}.fhp-card-link{margin-inline:-19px;padding-inline:19px}.fhp-needs-grid article{min-height:0;padding:16px 17px}.fhp-needs-grid a{padding-top:10px}.fhp-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 16px}.fhp-steps li{min-height:142px}.fhp-steps h3{margin-top:12px;font-size:12px}.fhp-steps p{font-size:9px}.fhp-resource-grid{grid-template-columns:1fr}.fhp-resource-grid>a,.fhp-resource-grid>a:first-child{min-height:126px;padding:18px;border-right:0;border-bottom:1px solid var(--fh-line);border-left:0}.fhp-resource-grid>a:last-child{border-bottom:0}.fhp-faq-grid{grid-template-columns:1fr;gap:21px}.fhp-final{padding-block:48px}.fhp-final-inner{align-items:flex-start;flex-direction:column;gap:20px}.fhp-final h2{font-size:clamp(29px,7.8vw,38px)}}
@media(max-width:420px){.fhp-wrap{width:calc(100% - 32px)}.fhp-hero h1{font-size:36px}.fhp-actions{align-items:stretch;flex-direction:column}.fhp-button{width:100%}.fhp-route-head{align-items:flex-start;flex-direction:column}.fhp-route-card li{grid-template-columns:28px minmax(0,1fr) 12px;gap:8px}.fhp-route-card li strong{font-size:10px}.fhp-market-strip>.fhp-wrap{gap:2px 11px}.fhp-steps{gap:16px 12px}}
@media(prefers-reduced-motion:reduce){.frosa-homepage *,.frosa-homepage *::before,.frosa-homepage *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Knowledge and updates: independent, evenly sized entry cards. */
.frosa-homepage .fhp-insights{padding-block:76px;background:linear-gradient(180deg,#fff 0%,#fbfcff 100%)}
.frosa-homepage .fhp-insights .fhp-section-head{grid-template-columns:minmax(0,1.1fr) minmax(260px,.7fr);gap:40px;margin:0 0 30px!important;align-items:end}
.frosa-homepage .fhp-insights .fhp-section-head>p{max-width:440px;margin:0 0 5px auto!important;font-size:13px;line-height:1.9}
.frosa-homepage .fhp-resource-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px;align-items:stretch;border:0!important}
.frosa-homepage .fhp-resource-grid>a,
.frosa-homepage .fhp-resource-grid>a:first-child{position:relative;display:flex!important;min-width:0;min-height:220px;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:0;width:auto;margin:0!important;padding:26px 26px 22px!important;overflow:hidden;border:1px solid #e0e7f1!important;border-radius:14px!important;background:#fff!important;box-shadow:0 8px 24px rgba(26,48,79,.045);text-align:left!important;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.frosa-homepage .fhp-resource-grid>a::before{position:absolute;top:0;left:26px;width:48px;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,#222681,#4d8dff);content:""}
.frosa-homepage .fhp-resource-grid>a:hover{transform:translateY(-4px);border-color:#c8d5ea!important;background:#fff!important;box-shadow:0 17px 38px rgba(26,48,79,.09)}
.frosa-homepage .fhp-resource-grid>a>span,
.frosa-homepage .fhp-resource-grid>a>h3,
.frosa-homepage .fhp-resource-grid>a>p,
.frosa-homepage .fhp-resource-grid>a>b{position:static!important;float:none!important;display:block!important;width:100%;margin-right:0!important;margin-left:0!important;text-align:left!important;transform:none!important}
.frosa-homepage .fhp-resource-grid>a>span{margin-top:5px!important;color:#3c5fbb;font-size:9px;font-weight:800;letter-spacing:.12em;line-height:1.6}
.frosa-homepage .fhp-resource-grid>a>h3{margin-top:20px!important;color:#172744;font-size:22px;font-weight:700;letter-spacing:-.025em;line-height:1.35}
.frosa-homepage .fhp-resource-grid>a>p{max-width:340px;margin-top:9px!important;color:#64748b;font-size:13px;line-height:1.8}
.frosa-homepage .fhp-resource-grid>a>b{display:flex!important;align-items:center;justify-content:space-between;margin-top:auto!important;padding-top:18px;border-top:1px solid #edf1f6;color:#222681;font-size:11px;font-weight:700;line-height:1.5}
.frosa-homepage .fhp-resource-grid>a>b i{font-size:15px;font-style:normal;font-weight:400}
@media(max-width:900px){.frosa-homepage .fhp-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.frosa-homepage .fhp-resource-card:last-child{grid-column:1/-1;min-height:185px}}
@media(max-width:760px){.frosa-homepage .fhp-insights{padding-block:54px}.frosa-homepage .fhp-insights .fhp-section-head{grid-template-columns:1fr;gap:10px;margin-bottom:22px!important}.frosa-homepage .fhp-insights .fhp-section-head>p{margin:0!important}.frosa-homepage .fhp-resource-grid{grid-template-columns:1fr!important;gap:12px}.frosa-homepage .fhp-resource-card,.frosa-homepage .fhp-resource-card:last-child{grid-column:auto;min-height:190px;padding:22px!important;border-radius:12px!important}.frosa-homepage .fhp-resource-card h3{margin-top:15px!important;font-size:20px}}

/* Structured resource cards keep the US and EU knowledge bases distinct. */
.frosa-homepage .fhp-resource-grid>.fhp-resource-card{position:relative;display:flex;min-width:0;min-height:230px;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;margin:0;padding:25px 25px 20px;border:1px solid #e0e7f1;border-radius:14px;background:linear-gradient(145deg,#fff,#fbfcff);box-shadow:0 8px 24px rgba(26,48,79,.045);text-align:left;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.frosa-homepage .fhp-resource-grid>.fhp-resource-card::before{position:absolute;top:0;left:25px;width:50px;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,#222681,#4d8dff);content:""}
.frosa-homepage .fhp-resource-grid>.fhp-resource-card:hover{transform:translateY(-4px);border-color:#c8d5ea;background:#fff;box-shadow:0 17px 38px rgba(26,48,79,.09)}
.frosa-homepage .fhp-resource-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.frosa-homepage .fhp-resource-market{color:#3c5fbb;font-size:9px;font-weight:800;letter-spacing:.1em;line-height:1.6}
.frosa-homepage .fhp-resource-number{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border-radius:50%;background:#eff3ff;color:#222681;font-size:9px;font-weight:800}
.frosa-homepage .fhp-resource-card h3{margin:22px 0 0;color:#172744;font-size:22px;font-weight:700;letter-spacing:-.025em;line-height:1.35}
.frosa-homepage .fhp-resource-card p{max-width:360px;margin:9px 0 18px;color:#64748b;font-size:12px;line-height:1.85}
.frosa-homepage .fhp-resource-card>a{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:15px;border-top:1px solid #edf1f6;color:#222681;font-size:11px;font-weight:700;line-height:1.5;text-decoration:none}
.frosa-homepage .fhp-resource-card>a:hover{color:#347cff}
.frosa-homepage .fhp-resource-card>a i{font-size:15px;font-style:normal;font-weight:400}
.frosa-homepage .fhp-resource-eu .fhp-resource-number{background:#eef5ee;color:#486d48}
.frosa-homepage .fhp-resource-news .fhp-resource-number{background:#f3f0fa;color:#655395}
@media(max-width:760px){.frosa-homepage .fhp-resource-grid>.fhp-resource-card{min-height:205px;padding:22px}.frosa-homepage .fhp-resource-card h3{margin-top:16px;font-size:20px}}


/* Static migration shell */
html{scroll-behavior:smooth} body{margin:0;font-family:Inter,"Noto Sans SC","Microsoft YaHei",sans-serif;color:#15243b} img{max-width:100%;height:auto} .frosa-mobile-menu-toggle{cursor:pointer} .frosa-global-header details[open]>div{z-index:20} .static-inquiry-note{padding:30px;border:1px solid #d7e0ec;border-radius:12px;background:#f7f9fc;color:#34435a;line-height:1.8}.static-inquiry-note a{color:#1e2586;font-weight:700}
