/* Firmato V5.4 · Public coherence + 80% desktop · Mobile keeps V5.3 approved behavior */
:root { --f54-navy:#071d50; --f54-ink:#142747; --f54-brand:#0863eb; --f54-sky:#eaf5ff; --f54-line:#ddeaf6; }
@media (min-width: 861px) {
 .public-v53 .shell, .site-header .shell, .site-footer .shell, .fi-public .fi-wrap,
 body:not(.app-shell) .container {width:80%!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;}
}
@media (min-width: 861px) and (max-width: 1180px) {
 .site-header .shell, .public-v53 .shell {width:80%!important;}
}
/* Do not alter approved small viewport width or spacing. */
@media(max-width:860px){.fi-public .fi-wrap{width:100%!important;padding-inline:16px!important;max-width:none!important}.f54-content .fi-actions{justify-content:center!important}}
.f54-content {background:#f9fcff; color:var(--f54-ink); overflow:clip;}
.f54-content *, .f54-content *::before,.f54-content *::after{box-sizing:border-box}
.f54-content .f54-eyebrow{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;font-weight:800;letter-spacing:.14em;font-size:12px;color:#1868cc}
.f54-content .f54-hero {position:relative;padding:75px 0 62px;background:linear-gradient(112deg,#f8fcff 2%,#e8f5ff 51%,#daeaff 100%);border-bottom:1px solid var(--f54-line)}
.f54-content .f54-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,4vw,78px);align-items:center}
.f54-content .f54-hero h1{font-size:clamp(35px,4.2vw,70px);font-weight:850;letter-spacing:-.045em;line-height:1.09;margin:18px 0 21px;color:#091f52}
.f54-content .f54-hero .f54-lead{font-size:clamp(16px,1.3vw,21px);line-height:1.68;color:#435777;max-width:760px}
.f54-content .f54-hero-image{display:block;width:100%;height:auto;border-radius:25px;box-shadow:0 20px 70px #10378b1b}
.f54-content .f54-actionbar,.f54-content .f54-languages{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:28px 0 0}
.f54-content .f54-btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 23px;border-radius:999px;font:700 14px Arial, sans-serif;text-decoration:none;border:1px solid #bcd3f6;background:#fff;color:#0755b0;transition:transform .2s ease,box-shadow .2s ease}
.f54-content .f54-btn:hover,.f54-content .f54-link-card:hover{transform:translateY(-3px);box-shadow:0 12px 35px #0e48aa17}
.f54-content .f54-btn-primary{background:#0862ed;color:white;border-color:#0862ed;box-shadow:0 10px 24px #0a63ee24}
.f54-content .f54-section{padding:76px 0}
.f54-content .f54-section:nth-of-type(even){background:#fff}
.f54-content .f54-heading{text-align:center;max-width:900px;margin:0 auto 38px}
.f54-content .f54-heading h2{font-size:clamp(27px,2.65vw,46px);font-weight:830;line-height:1.17;letter-spacing:-.035em;color:#091f52;margin:11px 0 14px}
.f54-content .f54-heading p{font-size:17px;color:#546984;line-height:1.7;margin:0}
.f54-content .f54-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.f54-content .f54-card{position:relative;background:white;border:1px solid #e1eaf4;border-radius:21px;padding:25px 19px 23px;box-shadow:0 12px 34px rgba(20,51,97,.045);min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .24s ease,box-shadow .24s ease}
.f54-content .f54-card h3{font-size:18px;color:#0b265c;margin:15px 0 10px;line-height:1.28}
.f54-content .f54-card p{font-size:14px;color:#61718a;line-height:1.62;margin:0 0 18px;flex:1}
.f54-content .f54-card .f54-btn{padding:11px 12px;min-height:40px;font-size:12px;margin:auto auto 0;max-width:100%}
.f54-content .f54-icon{display:grid;place-items:center;width:67px;height:67px;border-radius:21px;background:linear-gradient(145deg,#e7f3ff,#d8ecff);color:#0860d5}
.f54-content .f54-icon svg{width:35px;height:35px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.f54-content .f54-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;align-items:start}
.f54-content .f54-panel{padding:31px;border-radius:25px;background:linear-gradient(130deg,#fff,#f5faff);border:1px solid #e0eafb;box-shadow:0 10px 33px #0f4e9912}
.f54-content .f54-panel h3{font-size:23px;color:#0a285f;margin:0 0 13px}
.f54-content .f54-panel p,.f54-content .f54-panel li{color:#4e6685;line-height:1.75}
.f54-content .f54-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.f54-content .f54-step{background:#fff;padding:24px;border:1px solid #e1e9f4;border-radius:20px;text-align:center}
.f54-content .f54-step b{display:inline-grid;place-items:center;width:42px;height:42px;background:#0862ed;color:#fff;border-radius:50%;font-size:18px}
.f54-content .f54-step h3{font-size:18px;margin:15px 0 6px;color:#102f61}
.f54-content .f54-step p{color:#627895;margin:0;line-height:1.6;font-size:14px}
.f54-content .f54-band{background:linear-gradient(110deg,#06265b,#0d5fbd);color:#fff;padding:47px 0}
.f54-content .f54-band .shell{display:flex;gap:25px;align-items:center;justify-content:space-between}
.f54-content .f54-band h2{margin:0 0 8px;color:#fff;font-size:clamp(22px,2.1vw,34px)}
.f54-content .f54-band p{color:#dfedff;line-height:1.65;margin:0}
.f54-content .f54-band .f54-btn{background:white;color:#075bb6;flex-shrink:0}
.f54-content .f54-help{font-size:13px;color:#708299;line-height:1.65}
.f54-content .f54-list{margin:0;padding:0;list-style:none}
.f54-content .f54-list li{margin:0;padding:9px 0 9px 31px;position:relative;border-bottom:1px solid #e6edf7}
.f54-content .f54-list li::before{content:'✓';position:absolute;inset-inline-start:0;top:10px;color:#07845d;font-weight:900}
.f54-content .f54-mini-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:14px}
.f54-content .f54-mini-links a{padding:6px 11px;border-radius:10px;border:1px solid #cbdef8;background:#fff;text-decoration:none;color:#175bb0;font-weight:700;font-size:12px}
.f54-content .f54-mini-links a[aria-current]{background:#e3f0ff}
.f54-content[dir=rtl] .f54-list li{padding-inline-start:31px;padding-inline-end:0}
.f54-content[dir=rtl] .f54-list li::before{inset-inline-start:0;inset-inline-end:auto}
.f54-content .f54-docs-intro{max-width:760px;margin:18px auto 0;text-align:center;color:#536a87}
/* Standalone registration and sign-in: formerly unstyled register.php */
.f54-auth-page{margin:0;min-height:100vh;font:16px/1.55 Arial,Helvetica,sans-serif;color:#183052;background:linear-gradient(135deg,#edf6ff,#f8fbff 55%,#eaf3fc);overflow-x:hidden}
.f54-auth-page *{box-sizing:border-box}.f54-auth-page a{color:#0b5cc9;text-decoration:none}
.f54-auth-page .f54-auth-header{background:white;border-bottom:1px solid #dce7f7}
.f54-auth-page .f54-auth-header-inner{width:80%;margin:auto;display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:16px}
.f54-auth-page .f54-auth-header img{height:55px;max-width:min(240px,45vw);object-fit:contain}
.f54-auth-page .f54-auth-header nav{display:flex;gap:18px;align-items:center}
.f54-auth-page .f54-auth-layout{width:80%;max-width:1100px;margin:55px auto 70px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:30px;align-items:stretch}
.f54-auth-page .f54-auth-story{padding:34px;display:flex;flex-direction:column;justify-content:center}
.f54-auth-page .f54-auth-story h1{font-size:clamp(32px,3vw,49px);line-height:1.12;letter-spacing:-.04em;color:#071e52;margin:14px 0}
.f54-auth-page .f54-auth-story p{color:#526982;font-size:17px;max-width:490px;line-height:1.68}
.f54-auth-page .f54-auth-story img{max-width:100%;border-radius:18px;box-shadow:0 10px 35px #0b51af1c;margin:16px 0}
.f54-auth-page .f54-auth-card{background:#fff;border:1px solid #dfebf8;border-radius:26px;padding:clamp(23px,3.4vw,44px);box-shadow:0 18px 65px #143f7415}
.f54-auth-page .f54-auth-card h2{margin:0 0 5px;font-size:29px;color:#102858}
.f54-auth-page .f54-auth-card .f54-auth-hint{color:#657792;font-size:14px;margin:0 0 23px}
.f54-auth-page .f54-auth-card label.f54-field-label{display:block;font-weight:700;color:#254367;margin:0 0 7px;font-size:14px}
.f54-auth-page .f54-auth-card .f54-field{margin-bottom:18px}
.f54-auth-page .f54-auth-card input:not([type=checkbox]),.f54-auth-page .f54-auth-card select{width:100%;font:16px Arial, sans-serif;background:#fbfdff;border:1px solid #bfd3ee;border-radius:12px;padding:12px 14px;min-height:49px;color:#21334b}
.f54-auth-page .f54-auth-card input:focus-visible,.f54-auth-page .f54-auth-card select:focus-visible{outline:3px solid #9fcbff;outline-offset:2px}
.f54-auth-page .f54-auth-check{display:flex;gap:10px;align-items:flex-start;margin:10px 0;font-size:13px;color:#455f7c;line-height:1.55}
.f54-auth-page .f54-auth-check input{flex:0 0 auto;accent-color:#0862ed;width:18px;height:18px;margin-top:2px}
.f54-auth-page .f54-auth-submit{margin-top:20px;width:100%;border:0;border-radius:14px;min-height:53px;font:700 16px Arial;color:white;background:#0862ed;cursor:pointer;box-shadow:0 10px 23px #0c60db23}
.f54-auth-page .f54-auth-submit:hover{background:#064fae}
.f54-auth-page .f54-auth-card .alert{padding:14px;border-radius:12px;margin-bottom:18px}
.f54-auth-page .f54-auth-card .alert-danger{color:#a72139;background:#fff1f2}.f54-auth-page .f54-auth-card .alert-ok{color:#165d40;background:#edfaf3}
.f54-auth-page .f54-auth-bottom{text-align:center;margin:22px 0 0;font-size:14px}
.f54-auth-page .f54-auth-foot{border-top:1px solid #dce7f7;padding:23px 12px;text-align:center;color:#627794;font-size:12px}
@media(max-width:1100px){.f54-content .f54-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:860px){.f54-content .f54-hero{padding:36px 0}.f54-content .f54-hero-grid{grid-template-columns:1fr;text-align:center}.f54-content .f54-actionbar{justify-content:center}.f54-content .f54-hero-image{max-width:560px;margin:auto}.f54-content .f54-section{padding:55px 0}.f54-content .f54-band .shell{display:flex;flex-direction:column;text-align:center}.f54-content .f54-two{grid-template-columns:1fr}.f54-auth-page .f54-auth-header-inner{width:calc(100% - 32px);min-height:72px}.f54-auth-page .f54-auth-layout{width:calc(100% - 32px);display:flex;flex-direction:column;gap:20px;margin:25px auto}.f54-auth-page .f54-auth-story{text-align:center;padding:10px 8px}.f54-auth-page .f54-auth-story img{max-width:420px;margin:auto}.f54-auth-page .f54-auth-story p{margin-left:auto;margin-right:auto}}
@media(max-width:680px){.f54-content .f54-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.f54-content .f54-card{padding:18px 11px}.f54-content .f54-card h3{font-size:15px}.f54-content .f54-card p{font-size:12px}.f54-content .f54-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.f54-content .f54-step{padding:18px 11px}.f54-content .f54-card .f54-btn{font-size:11px}.f54-auth-page .f54-auth-header nav{gap:10px;font-size:12px}}
@media(max-width:380px){.f54-content .f54-grid{grid-template-columns:1fr}.f54-content .f54-steps{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.f54-content *, .f54-content *::before, .f54-content *::after{transition:none!important;animation:none!important}}

.f54-site-brochure{padding:22px 0;background:linear-gradient(115deg,#e6f3ff,#f6fbff);border-top:1px solid #d8e8fa}.f54-site-brochure .f54-site-brochure-inner{display:flex;gap:20px;align-items:center;justify-content:space-between}.f54-site-brochure strong{font:800 20px Arial,sans-serif;color:#0b2d5f}.f54-site-brochure p{color:#516c8f;font:14px/1.6 Arial,sans-serif;margin:7px 0 0}.f54-site-brochure form{display:flex;gap:9px;flex-wrap:wrap}.f54-site-brochure select,.f54-site-brochure button{min-height:42px;border-radius:11px;border:1px solid #b9d3f3;padding:9px 13px;font:700 14px Arial,sans-serif;cursor:pointer}.f54-site-brochure select{background:white;color:#164377}.f54-site-brochure button{background:#0862eb;border-color:#0862eb;color:#fff}.f54-site-brochure .sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}@media(max-width:860px){.f54-site-brochure .f54-site-brochure-inner{flex-direction:column;text-align:center}.f54-site-brochure form{justify-content:center}}
.f54-content .f54-brochure-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1050px;margin-inline:auto}.f54-content .f54-brochure-grid .f54-icon{font:bold 35px Arial,sans-serif}
@media(max-width:680px){.f54-content .f54-brochure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.f54-content .f54-brochure-grid{grid-template-columns:1fr}}
/* RTL: screen-reader skip link and antispam honeypot must not create a 10,000px canvas. */
html[dir="rtl"] .hp,html[dir="rtl"] .skip-link:not(:focus):not(:focus-visible){position:absolute!important;inset-inline-start:0!important;left:0!important;right:auto!important;top:0!important;width:1px!important;height:1px!important;max-width:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}

.f54-content .f54-faq-grid{max-width:900px;margin:0 auto;display:grid;gap:13px}.f54-content .f54-faq-item{background:#fff;border:1px solid #dae8fb;border-radius:17px;padding:17px 22px;transition:box-shadow .2s}.f54-content .f54-faq-item[open]{box-shadow:0 9px 25px #0a4ba714}.f54-content .f54-faq-item summary{cursor:pointer;font-size:16px;font-weight:800;color:#123762}.f54-content .f54-faq-item p{font-size:14px;line-height:1.7;color:#536c88;margin:11px 0 2px}.f54-content .f54-faq-item summary::marker{color:#0a63e9}
