:root{--green:#0b7545;--mint:#effff5;--ink:#303844;--muted:#5f6873;--line:#e4e9e7;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body.mofa-page{margin:0;background:#f4f5f7;color:var(--ink);font-family:Arial,Helvetica,sans-serif}.mofa-app a{text-decoration:none}.mofa-container{width:min(1180px,calc(100% - 40px));margin:auto}.mofa-header{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.12)}.nav-wrap{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand img{width:170px;display:block}.header-right{display:flex;align-items:center;gap:22px}.gov-mark{width:72px;height:72px;object-fit:contain}.mofa-header nav{display:flex;align-items:center;gap:26px;order:2}.mofa-header nav a{color:#116c45;font-size:14px}.nav-toggle{display:none;border:0;background:transparent;color:var(--green);font-size:30px}.hero{background:#f4fbfd;position:relative;overflow:hidden;min-height:500px}.hero:before{content:"";position:absolute;inset:auto 0 0;height:145px;background:linear-gradient(180deg,transparent,#c8f3ff)}.hero-inner{min-height:500px;display:grid;grid-template-columns:1fr 1fr 260px;align-items:center;position:relative}.hero-copy{display:contents}.hero-copy .eyebrow,.hero-copy .authority{grid-column:1}.hero-copy h1,.hero-copy>p:not(.authority),.verify-search{grid-column:2}.hero-copy h1{font-size:38px;line-height:1.08;color:var(--green);margin:0 0 10px}.eyebrow{font-size:32px;font-weight:700;color:var(--green)}.authority{font-size:18px;line-height:1.55;color:var(--ink);max-width:200px}.hero-copy>p:not(.authority){font-size:19px;line-height:1.55;text-align:center;color:var(--muted);margin:0 0 22px}.verify-search{display:flex;background:#fff;border:4px solid var(--green);border-radius:30px;overflow:hidden;box-shadow:0 6px 14px rgba(0,0,0,.12)}.verify-search input{flex:1;border:0;padding:14px;font-size:15px;outline:0}.verify-search button{border:0;background:#fff;color:var(--green);font-size:28px;padding:0 15px}.hero-person{grid-column:3;align-self:end}.hero-person img{width:230px;display:block}.mofa-section{padding:70px 0}.mofa-section.soft{background:#f5f6f8}.mofa-section.dark{background:#f5f6f8;color:var(--ink)}.mofa-section h2{font-size:32px;color:var(--green);text-align:center}.mofa-section p{font-size:17px;line-height:1.7;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:25px}.intro .split>img{display:none}.intro .split{display:block;max-width:700px;margin:auto;text-align:center}.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service-card,.feature,.values article{background:#fff;border-radius:8px;padding:30px;text-align:center;box-shadow:0 6px 18px rgba(0,0,0,.12)}.service-card h3,.feature h3,.values h3{color:var(--green);font-size:20px}.service-card a{display:inline-block;background:var(--green);color:#fff;border-radius:24px;padding:11px 20px}.verify{grid-template-columns:1.3fr .7fr}.qr-art{min-height:260px;background:var(--mint);border-radius:8px}.qr,.check{display:none}.dark .links-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dark .links-grid a{color:#176dcc;text-decoration:underline;background:var(--mint);padding:14px}.section-head{margin-bottom:28px}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.video-grid article:nth-child(4){display:none}.thumb{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 5px 16px rgba(0,0,0,.12)}.thumb img{width:100%;display:block}.thumb span{display:none}.values{background:#fff;padding:30px;border-radius:8px}.values article{background:var(--mint);box-shadow:none}.policy-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.feature b{font-size:35px;color:var(--green)}.workflow-stack,.workflow{display:grid;gap:25px}.workflow img,.workflow-stack img{width:100%;background:#fff}.mofa-footer{background:#fff;color:var(--green);padding:55px 0 0}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px}.footer-grid>div:first-child{display:none}.footer-grid h4{font-size:22px}.footer-grid a,.footer-grid p{color:var(--green);font-size:17px;line-height:1.6}.footer-bottom{border-top:1px solid #ddd;margin-top:40px;padding:28px max(20px,calc((100% - 1180px)/2));display:flex;justify-content:space-between;gap:35px;color:var(--ink)}.footer-bottom>div{display:flex;align-items:center;gap:14px}.footer-bottom img{height:42px}.back-top{position:fixed;right:34px;bottom:28px;width:54px;height:54px;border-radius:50%;background:#18ac56;color:white!important;display:grid;place-items:center;font-size:34px;z-index:60}.inner-hero{padding:70px 0;background:#effff5}.inner-hero h1{color:var(--green)}
@media(max-width:900px){.mofa-container{width:min(100% - 36px,1180px)}.nav-wrap{min-height:160px}.brand img{width:220px}.gov-mark{width:88px;height:88px}.mofa-header nav{display:none;position:absolute;top:150px;left:18px;right:18px;background:#fff;padding:18px;flex-direction:column;box-shadow:0 12px 25px rgba(0,0,0,.15)}.mofa-header nav.open{display:flex}.nav-toggle{display:block}.hero{min-height:860px}.hero-inner{min-height:860px;display:flex;flex-direction:column;align-items:stretch;padding:120px 70px 0}.hero-copy{display:block}.eyebrow{font-size:46px}.authority{font-size:30px;max-width:360px}.hero-copy h1{font-size:38px;text-align:center;margin-top:180px}.hero-copy>p:not(.authority){font-size:28px}.verify-search{margin-top:60px}.verify-search input{font-size:26px;padding:20px}.hero-person{align-self:flex-end;margin-top:160px}.hero-person img{width:370px}.split,.cards3,.video-grid,.footer-grid{grid-template-columns:1fr}.service-card{padding:46px 28px}.service-card h3{font-size:28px}.service-card p,.service-card a{font-size:23px}.dark .links-grid,.policy-list{grid-template-columns:1fr}.values{padding:0;background:#fff}.values article{padding:50px;min-height:600px}.mofa-section{padding:80px 0}.mofa-section h2{font-size:40px}.mofa-section p{font-size:28px}.footer-grid{padding:0 70px}.footer-bottom{flex-direction:column;padding:30px 70px;font-size:20px}.back-top{width:62px;height:62px;right:30px;bottom:36px}.workflow img{min-height:230px;object-fit:contain;background:#fff}}
@media(max-width:600px){.nav-wrap{min-height:160px}.brand img{width:220px}.header-right{gap:14px}.hero-inner{padding-left:40px;padding-right:40px}.hero-copy h1{font-size:35px}.eyebrow{font-size:42px}.authority{font-size:28px}.hero-copy>p:not(.authority){font-size:26px}.hero-person img{width:330px}.mofa-container{width:min(100% - 28px,1180px)}.mofa-section h2{font-size:38px}.footer-grid,.footer-bottom{padding-left:55px;padding-right:55px}}

/* v0.2.1 mobile fidelity fixes */
html,body{max-width:100%;overflow-x:hidden}.mofa-app,.mofa-header,.hero{max-width:100%;overflow-x:hidden}.brand,.header-right,.ministry-brand,.hero-copy,.verify-search,.verify-search input{min-width:0}.ministry-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.ministry-brand span{margin-top:4px;color:#1f2429;font-size:13px;font-weight:700;white-space:nowrap}.verify-search{width:100%;max-width:100%}.verify-search input{width:100%;max-width:100%}.verify-search button{flex:0 0 auto}
@media(max-width:900px){
  .mofa-container{width:100%;padding-left:0;padding-right:0}
  .nav-wrap{width:100%;min-height:160px;padding:18px 36px;gap:16px}
  .brand{flex:1 1 auto;overflow:hidden}
  .brand img{width:min(220px,100%);height:auto;object-fit:contain;object-position:left center}
  .header-right{flex:0 0 auto;gap:18px}
  .ministry-brand{width:118px}
  .gov-mark{width:78px;height:78px}
  .ministry-brand span{font-size:14px;margin-top:5px}
  .nav-toggle{flex:0 0 auto;font-size:30px;padding:4px}
  .hero-inner{width:100%;padding:120px 40px 0}
  .hero-copy{width:100%;max-width:100%}
  .verify-search{margin:60px auto 0;width:100%;border-width:4px;border-radius:52px}
  .verify-search input{font-size:clamp(18px,4.4vw,26px);padding:20px 18px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
  .verify-search button{font-size:31px;padding:0 18px}
  .hero-person{max-width:100%;overflow:hidden}
  .hero-person img{max-width:100%;height:auto}
}
@media(max-width:600px){
  .nav-wrap{padding:18px 22px;gap:10px}
  .brand img{width:min(205px,100%)}
  .header-right{gap:10px}
  .ministry-brand{width:104px}
  .gov-mark{width:70px;height:70px}
  .ministry-brand span{font-size:12px}
  .nav-toggle{font-size:28px}
  .hero-inner{padding-left:40px;padding-right:40px}
  .verify-search{width:100%;margin-left:auto;margin-right:auto}
  .verify-search input{font-size:clamp(17px,4.3vw,23px);padding:19px 16px}
  .verify-search button{font-size:29px;padding:0 14px}
}
@media(max-width:390px){
  .nav-wrap{padding-left:14px;padding-right:14px}
  .brand img{width:180px}
  .ministry-brand{width:92px}
  .gov-mark{width:62px;height:62px}
  .ministry-brand span{font-size:11px}
  .hero-inner{padding-left:28px;padding-right:28px}
  .verify-search input{font-size:17px;padding-left:14px;padding-right:8px}
  .verify-search button{padding-left:8px;padding-right:12px}
}

/* v0.2.2 supplied high-resolution header lockups */
.brand{display:flex;align-items:center;flex:0 1 285px;min-width:0}
.brand img{width:100%;max-width:285px;height:auto;object-fit:contain;display:block}
.ministry-brand{flex:0 0 auto}
.ministry-brand .gov-mark{width:118px;height:auto;max-height:86px;object-fit:contain;display:block}
.ministry-brand span{display:none}
@media(max-width:900px){
  .nav-wrap{padding:14px 0;min-height:128px}
  .brand{flex-basis:235px}
  .brand img{max-width:235px}
  .ministry-brand .gov-mark{width:112px;max-height:96px}
}
@media(max-width:600px){
  .mofa-container.nav-wrap{width:100%;padding:14px 24px;gap:10px}
  .brand{flex:1 1 auto;max-width:230px}
  .brand img{width:100%;max-width:230px}
  .header-right{gap:8px}
  .ministry-brand .gov-mark{width:105px;max-height:92px}
  .nav-toggle{font-size:31px;line-height:1;padding:6px;flex:0 0 auto}
}
@media(max-width:420px){
  .mofa-container.nav-wrap{padding-left:14px;padding-right:14px}
  .brand{max-width:190px}
  .brand img{max-width:190px}
  .ministry-brand .gov-mark{width:92px;max-height:82px}
  .nav-toggle{font-size:27px;padding:4px}
}

/* v0.2.3 exact header/footer containment and official-link fidelity */
.mofa-app,.mofa-app *{box-sizing:border-box}
.mofa-header .nav-wrap{display:grid;grid-template-columns:minmax(210px,285px) minmax(0,1fr) auto;align-items:center}
.mofa-header .brand{grid-column:1;min-width:0;max-width:285px}
.mofa-header nav{grid-column:2;justify-self:center;order:initial}
.mofa-header .header-right{grid-column:3;min-width:0}
.mofa-header .ministry-brand{width:118px;overflow:hidden}
.mofa-header .ministry-brand img{max-width:100%;width:100%;height:auto;object-fit:contain}
.mofa-footer{overflow:hidden}
.mofa-footer .footer-grid{grid-template-columns:1fr 1.35fr 1fr;max-width:980px;padding:0 24px;gap:70px}
.mofa-footer .footer-column{min-width:0}
.mofa-footer .footer-column h4{margin:0 0 18px;color:#0b7145;font-size:20px;line-height:1.25}
.mofa-footer .footer-link{display:flex!important;align-items:flex-start;gap:10px;margin:7px 0;color:#0b7145!important;font-size:16px;line-height:1.35;white-space:normal}
.mofa-footer .footer-link span{font-size:28px;line-height:18px;font-weight:700}
.mofa-footer .footer-contact p{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;align-items:start;margin:10px 0;color:#0b7145;font-size:16px;line-height:1.45}
.mofa-footer .footer-contact a{color:#0b7145;overflow-wrap:anywhere}
.mofa-footer .footer-icon{font-size:16px;line-height:1.45;text-align:center}
.mofa-footer .footer-divider{height:1px;background:#ddd;max-width:1180px;margin-top:35px}
.mofa-footer .footer-bottom{max-width:980px;margin:0 auto;padding:22px 24px 38px;border:0;display:flex;align-items:flex-start;justify-content:space-between;gap:45px;color:#363d48}
.mofa-footer .copyright-block,.mofa-footer .implementation-block{display:flex;align-items:center;gap:14px;min-width:0}
.mofa-footer .copyright-block img{width:42px;height:42px;object-fit:contain;flex:0 0 auto}
.mofa-footer .copyright-block span{font-size:14px;line-height:1.45}
.mofa-footer .implementation-block{flex-direction:column;align-items:flex-start;gap:10px;font-size:14px}
.mofa-footer .implementation-block img{width:230px;max-width:100%;height:auto;object-fit:contain}
.mobile-only{display:none}
@media(max-width:900px){
  .mofa-header .nav-wrap{grid-template-columns:minmax(0,1fr) auto auto;width:100%;padding:12px 28px;min-height:132px;gap:15px}
  .mofa-header .brand{grid-column:1;max-width:230px;width:100%}
  .mofa-header .header-right{grid-column:2 / 4;display:contents}
  .mofa-header .ministry-brand{grid-column:2;width:112px;justify-self:end}
  .mofa-header .nav-toggle{grid-column:3;display:block;justify-self:end}
  .mofa-header nav{position:absolute;grid-column:auto;top:132px;left:18px;right:18px;justify-self:stretch}
  .mofa-footer .footer-grid{grid-template-columns:1fr;max-width:530px;padding:0 38px;gap:52px}
  .mofa-footer .footer-column h4{font-size:29px;margin-bottom:20px}
  .mofa-footer .footer-link,.mofa-footer .footer-contact p{font-size:25px;line-height:1.45}
  .mofa-footer .footer-link{gap:14px;margin:7px 0}
  .mofa-footer .footer-link span{font-size:40px;line-height:27px}
  .mofa-footer .footer-contact p{grid-template-columns:28px minmax(0,1fr);gap:12px;margin:12px 0}
  .mofa-footer .footer-icon{font-size:22px}
  .mofa-footer .footer-divider{width:calc(100% - 90px);margin:62px auto 0}
  .mofa-footer .footer-bottom{max-width:530px;padding:34px 38px 54px;flex-direction:column;gap:42px}
  .mofa-footer .copyright-block{align-items:flex-start}
  .mofa-footer .copyright-block img{width:50px;height:50px;margin-top:9px}
  .mofa-footer .copyright-block span{font-size:22px;line-height:1.5}
  .mofa-footer .implementation-block{font-size:22px;gap:16px;width:100%}
  .mofa-footer .implementation-block img{width:360px}
  .mobile-only{display:block}
}
@media(max-width:600px){
  .mofa-header .nav-wrap{padding:12px 18px;gap:9px;min-height:124px}
  .mofa-header .brand{max-width:205px}
  .mofa-header .ministry-brand{width:98px}
  .mofa-header nav{top:124px}
  .mofa-footer .footer-grid{padding:0 44px;gap:48px}
  .mofa-footer .footer-bottom{padding-left:44px;padding-right:44px}
  .mofa-footer .footer-column h4{font-size:27px}
  .mofa-footer .footer-link,.mofa-footer .footer-contact p{font-size:22px}
  .mofa-footer .copyright-block span,.mofa-footer .implementation-block{font-size:20px}
}
@media(max-width:420px){
  .mofa-header .nav-wrap{padding-left:12px;padding-right:12px;grid-template-columns:minmax(0,1fr) 84px 36px}
  .mofa-header .brand{max-width:185px}
  .mofa-header .ministry-brand{width:84px}
  .mofa-footer .footer-grid,.mofa-footer .footer-bottom{padding-left:28px;padding-right:28px}
  .mofa-footer .footer-divider{width:calc(100% - 56px)}
  .mofa-footer .footer-column h4{font-size:25px}
  .mofa-footer .footer-link,.mofa-footer .footer-contact p{font-size:20px}
  .mofa-footer .copyright-block span,.mofa-footer .implementation-block{font-size:18px}
  .mofa-footer .copyright-block img{width:44px;height:44px}
}

/* v0.2.4 official link targets, partner hit areas and motion fidelity */
.brand,.ministry-brand,.footer-gov-link,.partner-hit{cursor:pointer}
.brand:focus-visible,.ministry-brand:focus-visible,.footer-gov-link:focus-visible,.partner-hit:focus-visible{outline:3px solid #18aa60;outline-offset:4px;border-radius:8px}
.footer-gov-link{display:flex;flex:0 0 auto;border-radius:50%}
.partner-logo-map{position:relative;width:230px;max-width:100%;line-height:0}
.partner-logo-map>img{display:block;width:100%;height:auto}
.partner-hit{position:absolute;top:0;bottom:0;z-index:2;border-radius:5px}
.partner-a2i{left:0;width:22%}.partner-cabinet{left:22%;width:35%}.partner-ict{left:57%;width:27%}.partner-undp{left:84%;width:16%}
.partner-hit:hover{background:rgba(11,113,69,.08);box-shadow:inset 0 0 0 2px rgba(11,113,69,.22)}

/* Reference-style hover movement */
.service-card,.video-card,.values article,.feature,.policy-list>div,.links-grid a,.workflow img,.qr-art{transition:transform .35s ease,box-shadow .35s ease,filter .35s ease}
.service-card:hover,.video-card:hover,.values article:hover,.feature:hover{transform:translateY(-9px);box-shadow:0 18px 34px rgba(14,52,39,.16)}
.service-card:nth-child(even):hover,.video-card:nth-child(even):hover,.values article:nth-child(even):hover,.feature:nth-child(even):hover{transform:translateY(7px);box-shadow:0 18px 34px rgba(14,52,39,.16)}
.service-card b,.feature b,.values article:before{transition:transform .35s ease}
.service-card:hover b,.feature:hover b{transform:scale(1.10) rotate(-3deg)}
.video-card{overflow:hidden}.video-card img{transition:transform .5s ease}.video-card:hover img{transform:scale(1.045)}
.links-grid a:hover{transform:translateX(7px)}
.policy-list>div:hover{transform:translateY(-5px)}
.workflow img:hover{transform:translateY(-5px) scale(1.01);box-shadow:0 16px 36px rgba(14,52,39,.14)}
.text-link,.pill,.service-card a{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.text-link:hover,.pill:hover,.service-card a:hover{transform:translateY(-3px)}
.brand img,.ministry-brand img,.footer-gov-link img,.partner-logo-map img{transition:transform .3s ease,filter .3s ease}
.brand:hover img,.ministry-brand:hover img,.footer-gov-link:hover img{transform:translateY(-3px);filter:drop-shadow(0 7px 9px rgba(0,0,0,.12))}

/* Scroll reveal: selected blocks enter alternately from below and above */
.js-motion .motion-section [data-motion]{opacity:0;will-change:transform,opacity;transition:opacity .72s ease,transform .72s cubic-bezier(.22,.61,.36,1)}
.js-motion .motion-section [data-motion="up"]{transform:translateY(58px)}
.js-motion .motion-section [data-motion="down"]{transform:translateY(-58px)}
.js-motion .motion-section [data-motion="left"]{transform:translateX(-48px)}
.js-motion .motion-section [data-motion="right"]{transform:translateX(48px)}
.js-motion .motion-section [data-motion].is-visible{opacity:1;transform:none}
@media(max-width:900px){
  .partner-logo-map{width:360px}
  .service-card:hover,.service-card:nth-child(even):hover,.video-card:hover,.video-card:nth-child(even):hover,.values article:hover,.values article:nth-child(even):hover,.feature:hover,.feature:nth-child(even):hover{transform:translateY(-5px)}
}
@media(prefers-reduced-motion:reduce){
  .js-motion .motion-section [data-motion]{opacity:1!important;transform:none!important;transition:none!important}
  .service-card,.video-card,.values article,.feature,.policy-list>div,.links-grid a,.workflow img,.qr-art,.video-card img{transition:none!important}
}

/* v0.2.5 responsive autoplay sliders */
.mofa-slider{position:relative;padding:0 44px}.slider-viewport{overflow:hidden;width:100%}.slider-track{display:flex;gap:24px;transition:transform .55s ease;will-change:transform}.slider-slide{flex:0 0 calc((100% - 48px)/3);min-width:0}.workflow-slider .slider-slide{flex-basis:100%}.video-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 5px 16px rgba(0,0,0,.12)}.video-card h3{margin:0;padding:18px;color:var(--green);font-size:18px;line-height:1.35}.video-card .thumb{box-shadow:none;border-radius:0}.video-card .thumb img{width:100%;aspect-ratio:16/8;object-fit:cover}.workflow-slider .workflow{display:block}.workflow-slider .workflow img{width:100%;height:auto;display:block;object-fit:contain}.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;border:0;background:transparent;color:#0788e7;font-size:66px;line-height:1;cursor:pointer;padding:8px}.slider-arrow.prev{left:0}.slider-arrow.next{right:0}.slider-dots{display:flex;justify-content:center;gap:9px;margin-top:18px}.slider-dot{width:11px;height:11px;border:0;border-radius:50%;padding:0;background:#c9ced2;cursor:pointer}.slider-dot.active{background:#168de2}.mofa-slider:hover .slider-track{transition-duration:.4s}
@media(max-width:900px){.mofa-slider{padding:0 28px}.slider-track{gap:0}.video-slider .slider-slide,.workflow-slider .slider-slide{flex-basis:100%}.video-card h3{font-size:22px}.video-card .thumb img{aspect-ratio:16/9}.slider-arrow{font-size:58px}.slider-arrow.prev{left:-8px}.slider-arrow.next{right:-8px}.workflow img{min-height:0!important}}
@media(prefers-reduced-motion:reduce){.slider-track{transition:none!important}}

/* v0.2.6 reference scroll entrance and service icons */
.service-icon{width:78px;height:78px;margin:0 auto 22px;color:var(--green);display:grid;place-items:center;transform-origin:center}
.service-icon svg{width:100%;height:100%;display:block;fill:currentColor}
.service-card>span{display:none!important}
.js-motion .verify-search[data-motion="search-up"]{opacity:0;transform:translateY(72px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.72,.24,1)}
.js-motion .verify-search[data-motion="search-up"].is-visible{opacity:1;transform:translateY(0)}
.js-motion .hero-person img[data-motion="zoom-clear"]{opacity:0;transform:scale(.72) translateY(34px);filter:blur(16px) brightness(1.35);transition:opacity 1s ease,transform 1.15s cubic-bezier(.18,.76,.22,1),filter 1.05s ease;will-change:opacity,transform,filter}
.js-motion .hero-person img[data-motion="zoom-clear"].is-visible{opacity:1;transform:scale(1) translateY(0);filter:blur(0) brightness(1)}
.js-motion .service-icon[data-motion="icon-pop"]{opacity:0;transform:translateY(35px) scale(.68);transition:opacity .65s ease,transform .78s cubic-bezier(.2,.8,.2,1.18)}
.js-motion .service-icon[data-motion="icon-pop"].is-visible{opacity:1;transform:translateY(0) scale(1)}
@media(max-width:900px){.service-icon{width:88px;height:88px;margin-bottom:25px}.js-motion .verify-search[data-motion="search-up"]{transform:translateY(58px)}.js-motion .hero-person img[data-motion="zoom-clear"]{transform:scale(.76) translateY(28px)}}
@media(prefers-reduced-motion:reduce){.js-motion .verify-search[data-motion="search-up"],.js-motion .hero-person img[data-motion="zoom-clear"],.js-motion .service-icon[data-motion="icon-pop"]{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}}

/* v0.2.7 reference corrections */
.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:min(31.97vw,245px);min-height:150px;background-image:url('images/hero-landscape.png');background-position:center bottom;background-size:100% auto;background-repeat:no-repeat;z-index:0;pointer-events:none}
.hero-inner{z-index:1}
.hero-person{position:relative;z-index:2}
@media(max-width:900px){
  .hero:after{height:230px;background-size:auto 230px;background-position:center bottom}
  .hero-person{align-self:center;margin-top:120px}
  .hero-person img{width:300px!important;max-width:78vw!important}
}
@media(max-width:600px){.hero-person img{width:286px!important;max-width:80vw!important}}
.js-motion .hero-person img[data-motion="zoom-clear"]{transform:scale(.90) translateY(22px);filter:blur(9px) brightness(1.12);transition:opacity .78s ease,transform .92s cubic-bezier(.18,.76,.22,1),filter .82s ease}
@media(max-width:900px){.js-motion .hero-person img[data-motion="zoom-clear"]{transform:scale(.92) translateY(18px)}}

/* v0.2.8 content, official registration artwork and reversible reveals */
.service-icon-registration{width:92px;height:92px}
.service-icon-registration .registration-icon-img{display:block;width:100%;height:100%;object-fit:contain}
.service-icon-verify svg path{fill:currentColor}
.value-list{list-style:none;padding:0;margin:18px 0 0;text-align:left}
.value-list li{position:relative;padding:0 0 15px 30px;line-height:1.55}
.value-list li:before{content:"✓";position:absolute;left:0;top:.08em;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#23c779;color:#fff;font-size:12px;font-weight:800}
.quality-card{max-width:980px;background:#effff5;border-radius:9px;padding:48px;box-shadow:0 8px 22px rgba(0,0,0,.10)}
.quality-copy{text-align:center;max-width:720px;margin:0 auto 28px}.quality-copy p{text-align:justify}
.quality-medal{font-size:56px;line-height:1;color:var(--green);margin:12px 0 22px}
.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 40px}
.policy-grid>div{position:relative;padding:0 0 0 22px;border:0;background:transparent;box-shadow:none;min-height:0}
.policy-grid>div:before{content:"▪";position:absolute;left:0;color:#25bd72;font-size:20px;line-height:1}
.chain-wrap{background:#effff5;padding:55px 42px}.chain-intro{max-width:690px;margin:22px auto;line-height:1.75;text-align:left}
.chain-wrap .feature b{font-size:50px;color:var(--green)}
/* Content begins softly and becomes fully readable on every viewport re-entry. */
.js-motion .intro h2,.js-motion .intro p,.js-motion .verify p,.js-motion .values article p,.js-motion .value-list,.js-motion .chain-intro{opacity:.10;transition:opacity .8s ease}
.js-motion .intro h2.is-visible,.js-motion .intro p.is-visible,.js-motion .verify p.is-visible,.js-motion .values article.is-visible p,.js-motion .values article.is-visible .value-list,.js-motion .chain-intro.is-visible{opacity:1}
/* Smaller, subtler hero image entrance than previous release. */
.js-motion .hero-person img[data-motion="zoom-clear"]{transform:scale(.965) translateY(12px);filter:blur(5px) brightness(1.06);transition:opacity .68s ease,transform .78s cubic-bezier(.18,.76,.22,1),filter .72s ease}
.js-motion .hero-person img[data-motion="zoom-clear"].is-visible{transform:scale(1) translateY(0);filter:none}
@media(max-width:900px){
 .service-icon-registration{width:94px;height:94px}
 .quality-card{padding:48px 34px}.policy-grid{grid-template-columns:1fr;gap:18px}.chain-wrap{padding:50px 28px}
 .js-motion .hero-person img[data-motion="zoom-clear"]{transform:scale(.975) translateY(10px)}
}
@media(max-width:600px){.quality-card{padding:42px 28px}.chain-wrap{padding:44px 22px}.chain-intro{text-align:justify}}

/* v0.2.10: keep service-card icons fully solid and unaffected by reveal opacity */
.service-icon-registration,
.service-icon-registration[data-motion="icon-pop"],
.service-icon-registration[data-motion="icon-pop"].is-visible,
.service-icon-registration .registration-icon-img {
  opacity: 1 !important;
  filter: none !important;
  visibility: visible !important;
}
.service-icon-registration[data-motion="icon-pop"] {
  transform: none !important;
  transition: none !important;
}
.service-icon-registration .registration-icon-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

/* v0.2.10 registration icon asset and rendering hard-fix */
.service-card .service-icon-registration,
.service-card .service-icon-registration[data-motion],
.service-card .service-icon-registration.is-visible,
.service-card .service-icon-registration .registration-icon-img {
  opacity: 1 !important;
  filter: none !important;
  visibility: visible !important;
  mix-blend-mode: normal !important;
  -webkit-filter: none !important;
}
.service-card .service-icon-registration {
  background: transparent !important;
  transform: none !important;
  transition: none !important;
}
.service-card .service-icon-registration .registration-icon-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* v0.2.11: use the supplied original hero landscape without cover-cropping or artificial zoom */
@media (max-width:767px){.hero:after{height:31.97vw;min-height:0;background-size:100% auto;background-position:center bottom}}

/* v0.2.12: compact desktop hero to match the reference proportions. */
@media (min-width:901px){
  .hero{
    min-height:290px;
    height:290px;
  }
  .hero-inner{
    display:block;
    min-height:290px;
    height:290px;
    position:relative;
    padding:0;
  }
  .hero-copy{display:block}
  .hero-copy .eyebrow{
    position:absolute;
    left:0;
    top:72px;
    width:190px;
    margin:0;
    font-size:31px;
    line-height:1.08;
  }
  .hero-copy .authority{
    position:absolute;
    left:0;
    top:132px;
    width:190px;
    max-width:190px;
    margin:0;
    font-size:17px;
    line-height:1.45;
  }
  .hero-copy h1{
    position:absolute;
    left:28%;
    top:42px;
    width:43%;
    margin:0;
    font-size:36px;
    line-height:1.08;
    text-align:left;
  }
  .hero-copy>p:not(.authority){
    position:absolute;
    left:28%;
    top:126px;
    width:43%;
    margin:0;
    font-size:18px;
    line-height:1.45;
    text-align:center;
  }
  .verify-search{
    position:absolute;
    left:20%;
    bottom:43px;
    width:56%;
    margin:0;
    z-index:4;
  }
  .hero-person{
    position:absolute;
    right:1.5%;
    top:25px;
    width:185px;
    margin:0;
    align-self:auto;
    z-index:3;
  }
  .hero-person img{
    width:185px;
    max-width:185px;
    height:auto;
  }
  .hero:after{
    height:145px;
    min-height:0;
    background-size:100% auto;
    background-position:center bottom;
  }
  .hero:before{height:105px}
}

@media (min-width:901px) and (max-width:1100px){
  .hero-copy h1,.hero-copy>p:not(.authority){left:29%;width:41%}
  .verify-search{left:21%;width:53%}
  .hero-person{right:0;width:170px;top:28px}
  .hero-person img{width:170px;max-width:170px}
}


/* v0.2.13: taller supplied hero artwork, preserving the full skyline and landscape scale. */
@media (min-width:901px){
  .hero{
    min-height:360px;
    height:360px;
  }
  .hero-inner{
    min-height:360px;
    height:360px;
  }
  .hero-copy .eyebrow{top:92px}
  .hero-copy .authority{top:154px}
  .hero-copy h1{top:70px}
  .hero-copy>p:not(.authority){top:154px}
  .verify-search{bottom:58px}
  .hero-person{top:42px;width:190px}
  .hero-person img{width:190px;max-width:190px}
  .hero:after{
    height:360px;
    min-height:0;
    background-size:100% 100%;
    background-position:center bottom;
  }
  .hero:before{display:none}
}
@media (min-width:901px) and (max-width:1100px){
  .hero-person{top:50px;width:175px}
  .hero-person img{width:175px;max-width:175px}
}
@media (max-width:900px){
  .hero:after{
    background-image:url('images/hero-landscape.png');
    background-size:auto 100%;
    background-position:center bottom;
  }
}

/* v0.2.14 — reference header alignment and mobile hero crop */
@media (min-width:901px){
  .mofa-header .nav-wrap{
    position:relative;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:88px!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }
  .mofa-header .brand,
  .mofa-header .header-right{position:relative;z-index:2;flex:0 0 auto}
  .mofa-header nav{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:22px!important;
    width:max-content!important;
    margin:0!important;
    padding:0!important;
    order:initial!important;
    z-index:1;
  }
  .mofa-header nav a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    white-space:nowrap;
    line-height:1;
    font-size:14px;
  }
}
.mofa-header nav a .nav-icon{
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 18px;
  color:var(--green);
  font-size:18px;
  line-height:1;
  font-weight:700;
}
.mofa-header nav a .nav-info,
.mofa-header nav a .nav-help{
  border-radius:50%;
  background:var(--green);
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:12px;
  font-weight:700;
}
.mofa-header nav a .nav-sign{font-size:16px}
.mofa-header nav a .nav-gear{font-size:17px}

@media (max-width:900px){
  .mofa-header nav a{display:flex;align-items:center;gap:9px;width:100%}
  .hero:after{
    /* On the official mobile view only the bridge/CNG area is visible beneath the person. */
    height:235px!important;
    min-height:0!important;
    background-size:auto 235px!important;
    background-position:58% bottom!important;
    background-repeat:no-repeat!important;
  }
  .hero-person{
    position:relative!important;
    z-index:3!important;
  }
  .hero-person img{
    position:relative;
    z-index:3;
  }
}
@media (max-width:600px){
  .hero:after{
    height:220px!important;
    background-size:auto 220px!important;
    background-position:59% bottom!important;
  }
}


/* v0.2.15 — compact desktop header so centered menu remains fully visible */
@media (min-width:901px){
  .mofa-header .nav-wrap{
    min-height:72px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .mofa-header .brand{
    width:145px!important;
    max-width:145px!important;
  }
  .mofa-header .brand img{
    width:145px!important;
    max-width:100%!important;
    height:auto!important;
  }
  .mofa-header .header-right{
    width:92px!important;
    max-width:92px!important;
  }
  .mofa-header .ministry-brand{
    width:82px!important;
    max-width:82px!important;
    overflow:visible!important;
  }
  .mofa-header .ministry-brand img,
  .mofa-header .gov-mark{
    width:82px!important;
    height:auto!important;
    max-height:66px!important;
    object-fit:contain!important;
  }
  .mofa-header nav{
    gap:18px!important;
    z-index:3!important;
  }
  .mofa-header nav a{
    font-size:12.5px!important;
    gap:5px!important;
  }
  .mofa-header nav a .nav-icon{
    width:16px!important;
    height:16px!important;
    flex-basis:16px!important;
    font-size:15px!important;
  }
}


/* v0.2.16 — fixed mobile header and bridge/CNG-only mobile landscape crop */
@media (max-width:900px){
  /* Keep the complete header visible while the page scrolls. */
  .mofa-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    z-index:9999!important;
    overflow:visible!important;
  }
  body.admin-bar .mofa-header{top:46px!important}
  .mofa-app{overflow:visible!important}
  .mofa-app main{padding-top:124px!important}
  .mofa-header nav{z-index:10001!important}

  /* Do not shrink the full landscape into the mobile hero.  Only the
     centre bridge/CNG segment appears beneath the person, as in the reference. */
  .hero:after{
    height:170px!important;
    min-height:0!important;
    background-image:url('images/hero-landscape.png')!important;
    background-size:auto 170px!important;
    background-position:50.5% bottom!important;
    background-repeat:no-repeat!important;
  }
  .hero-person{z-index:3!important}
  .hero-person img{z-index:3!important}
}
@media (max-width:600px){
  .mofa-app main{padding-top:124px!important}
  .hero:after{
    height:158px!important;
    background-size:auto 158px!important;
    background-position:50.5% bottom!important;
  }
}
@media (max-width:782px){
  body.admin-bar .mofa-header{top:46px!important}
}

/* v0.2.17 — official-site desktop hero title and stable e-Apostille intro */
@media (min-width:901px){
  /* Keep the full welcome title on one centered line, as requested. */
  .hero-copy h1{
    left:25%!important;
    width:52%!important;
    max-width:none!important;
    white-space:nowrap!important;
    font-size:31px!important;
    line-height:1.12!important;
    text-align:center!important;
    letter-spacing:-.35px;
  }
  .hero-copy>p:not(.authority){
    left:29%!important;
    width:44%!important;
  }
}
@media (min-width:901px) and (max-width:1120px){
  .hero-copy h1{
    left:24%!important;
    width:54%!important;
    font-size:28px!important;
  }
}

/* The official intro appears faint, but it must not jump vertically when the
   user reverses scroll direction. Keep its position fixed and use opacity only. */
.js-motion .intro .split>div,
.js-motion .intro h2,
.js-motion .intro p,
.js-motion .intro .text-link{
  transform:none!important;
  filter:none!important;
  transition-property:opacity!important;
  transition-duration:.7s!important;
  transition-timing-function:ease!important;
}
.js-motion .intro .split>div:not(.is-visible),
.js-motion .intro h2:not(.is-visible),
.js-motion .intro p:not(.is-visible){
  opacity:.075!important;
}
.js-motion .intro .split>div.is-visible,
.js-motion .intro h2.is-visible,
.js-motion .intro p.is-visible,
.js-motion .intro .text-link{
  opacity:1!important;
}

/* Prevent the heading from inheriting any alternating up/down reveal rule. */
.intro h2{
  position:relative!important;
  top:auto!important;
  bottom:auto!important;
  margin-top:0!important;
}

/* v0.2.18 — exact single-line desktop title and non-jumping intro reveal */
@media (min-width:901px){
  .hero-copy h1{
    left:22%!important;
    width:61%!important;
    max-width:61%!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-wrap:nowrap!important;
    font-size:clamp(24px,2.35vw,31px)!important;
    line-height:1.08!important;
    letter-spacing:-.45px!important;
    text-align:center!important;
  }
}
@media (min-width:901px) and (max-width:1050px){
  .hero-copy h1{
    left:20%!important;
    width:64%!important;
    max-width:64%!important;
    font-size:24px!important;
  }
}

/* Remove every legacy motion transform from the Bangladesh e-Apostille block. */
.intro .split>div,
.intro .split>div[data-motion],
.intro h2,
.intro p,
.intro .text-link{
  transform:none!important;
  translate:none!important;
  top:auto!important;
  bottom:auto!important;
  filter:none!important;
  animation:none!important;
  transition-property:opacity!important;
  transition-duration:.72s!important;
  transition-timing-function:ease!important;
  transition-delay:0s!important;
  will-change:opacity;
}
.js-motion .intro .split>div.intro-fade-ready{
  opacity:.075!important;
}
.js-motion .intro .split>div.intro-fade-ready.intro-fade-visible{
  opacity:1!important;
}
/* Children inherit the parent's opacity; never animate independently. */
.js-motion .intro .split>div.intro-fade-ready h2,
.js-motion .intro .split>div.intro-fade-ready p,
.js-motion .intro .split>div.intro-fade-ready .text-link,
.js-motion .intro .split>div.intro-fade-ready h2:not(.is-visible),
.js-motion .intro .split>div.intro-fade-ready p:not(.is-visible){
  opacity:1!important;
  transform:none!important;
  transition:none!important;
}

/* Apostille verification record v0.2.19 */
.apostille-result-section{padding:70px 0 90px;background:#fff;scroll-margin-top:110px}
.apostille-result-section h2{text-align:center;color:#0b753f;font-size:clamp(28px,4vw,46px);margin:0 0 34px}
.document-panel,.certificate-panel{max-width:920px;margin:0 auto;border:1px solid #dfe4e8;border-radius:12px;padding:34px;background:#fff;box-shadow:0 10px 28px rgba(18,45,35,.08)}
/* v0.2.42: use a rendered first-page image instead of the browser PDF plugin,
   which appears as a black panel on some Android/mobile browsers. */
.apostille-pdf-preview-link{display:block;width:100%;background:#fff;border:1px solid #e2e6e9;border-radius:4px;overflow:hidden;text-decoration:none;line-height:0}
.apostille-pdf-preview{display:block;width:100%;height:auto;margin:0;background:#fff;object-fit:contain}
.apostille-download-btn{display:flex;align-items:center;justify-content:center;width:max-content;max-width:100%;margin:36px auto 0;padding:18px 34px;border-radius:7px;background:#202a3a;color:#fff!important;text-decoration:none;font-weight:800;letter-spacing:.12em;font-size:21px}
.result-divider{max-width:920px;margin:70px auto;border:0;border-top:1px solid #d7dce0}
.certificate-panel img{display:block;max-width:100%;height:auto;margin:0 auto 30px;border:1px solid #e2e6e9}
.verified-copy{text-align:center;color:#642392;font-family:cursive;font-size:clamp(34px,6vw,62px);line-height:1.05;margin:24px 0 36px}
.signatory-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.signatory-list>div{text-align:center;border-top:1px solid #e7e8eb;padding:24px 12px;color:#642392}
.signatory-list strong,.signatory-list span,.signatory-list small{display:block}
.signatory-list strong{font-size:20px;margin-bottom:9px}
.signatory-list span{font-size:24px;font-weight:700;line-height:1.25}
.signatory-list small{font-size:18px;line-height:1.4;margin-top:8px}
.apostille-result-missing{max-width:700px;margin:0 auto;text-align:center;padding:48px;border:1px solid #e3e5e8;border-radius:12px;background:#fafbfc}
.apostille-result-missing p{font-size:18px}
@media(max-width:700px){
 .apostille-result-section{padding:42px 0 65px;scroll-margin-top:150px}
 .document-panel,.certificate-panel{padding:18px 12px;border-radius:8px}
 .apostille-download-btn{width:100%;font-size:17px;padding:16px 12px;letter-spacing:.09em}
 .signatory-list{grid-template-columns:1fr}
 .signatory-list span{font-size:21px}
 .signatory-list small{font-size:16px}
}


/* v0.2.20 verification record presentation */
.verified-copy-image{display:block;width:min(540px,88%);height:auto;margin:18px auto 34px;object-fit:contain}
.signatory-list{display:block;max-width:720px;margin:0 auto}
.signatory-entry{text-align:center;border:1px solid #e1e3e7;border-radius:10px;padding:30px 22px 34px;margin:0 0 28px;color:#642392;background:#fff}
.signatory-entry strong,.signatory-entry span,.signatory-entry small{display:block}
.signatory-entry strong{font-size:clamp(20px,3vw,30px);margin:14px 0 12px}
.signatory-entry span{font-size:clamp(24px,4vw,38px);font-weight:700;line-height:1.2}
.signatory-entry small{font-size:clamp(18px,3vw,28px);line-height:1.35;margin-top:10px;font-weight:600}
.attested-copy-image{display:block;width:min(330px,72%);height:auto;margin:4px auto 18px;object-fit:contain}
.signature-image{display:block;width:min(340px,76%);max-height:180px;height:auto;margin:4px auto 8px;object-fit:contain}
@media (max-width:600px){
 .verified-copy-image{width:92%;margin-bottom:24px}
 .signatory-entry{padding:24px 14px 30px;margin-bottom:20px}
 .signature-image{width:78%;max-height:145px}
 .attested-copy-image{width:68%}
}


.apostille-record[hidden]{display:none!important}
.not-official-banner{display:block!important;width:min(100%,920px)!important;height:auto!important;margin:22px auto 30px!important;border:0!important;box-shadow:none!important;object-fit:contain!important}
@media (max-width:700px){.not-official-banner{margin:16px auto 22px!important}}



/* v0.2.43: slightly smaller certificate/transcript presentation and
   explicit restoration of the v0.2.31 footer government/partner graphics. */
.certificate-panel{max-width:860px}
.certificate-panel img{width:auto;max-width:90%;}
.mofa-footer .implementation-block{display:flex!important;visibility:visible!important;opacity:1!important}
.mofa-footer .partner-logo-map{display:block!important;visibility:visible!important;opacity:1!important;width:250px}
.mofa-footer .partner-logo-map>img{display:block!important;visibility:visible!important;opacity:1!important;width:100%;height:auto}
.mofa-footer .footer-gov-link{display:flex!important;visibility:visible!important;opacity:1!important}
.mofa-footer .footer-gov-link>img{display:block!important;visibility:visible!important;opacity:1!important}
@media(max-width:700px){
  .certificate-panel img{max-width:94%}
  .mofa-footer .partner-logo-map{width:min(360px,100%)}
}


/* v0.2.48: slightly reduce verification artwork and signatory text for a cleaner result layout. */
.verified-copy-image{width:min(430px,76%);margin:14px auto 28px}
.attested-copy-image{width:min(265px,62%);margin:2px auto 14px}
.signature-image{width:min(280px,66%);max-height:145px;margin:2px auto 6px}
.signatory-entry strong{font-size:clamp(18px,2.4vw,25px);margin:10px 0 9px}
.signatory-entry span{font-size:clamp(21px,3.2vw,31px);line-height:1.2}
.signatory-entry small{font-size:clamp(16px,2.4vw,22px);line-height:1.35;margin-top:8px}
@media (max-width:600px){
 .verified-copy-image{width:82%;margin-bottom:20px}
 .attested-copy-image{width:58%}
 .signature-image{width:68%;max-height:125px}
 .signatory-entry span{font-size:22px}
 .signatory-entry small{font-size:16px}
}


/* v0.2.49 — authorized signatory directory */
.signatory-directory{max-width:1180px;margin:0 auto;background:#fff}
.signatory-table-search{display:flex;justify-content:flex-end;margin:0 0 18px}
.signatory-table-search input{width:min(100%,360px);border:1px solid #dfe3e7;border-radius:7px;padding:12px 14px;font:inherit;color:#222;background:#fff;outline:none;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.signatory-table-search input:focus{border-color:#15965d;box-shadow:0 0 0 3px rgba(21,150,93,.12)}
.signatory-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.signatory-table{width:100%;min-width:1090px;border-collapse:collapse;table-layout:fixed;background:#fff;color:#24292f;font-size:13px;line-height:1.4}
.signatory-table th{background:#eef0f2;color:#fff;font-weight:700;text-align:center;padding:15px 8px;border:0}
.signatory-table th:nth-child(1){width:58px}.signatory-table th:nth-child(2){width:155px}.signatory-table th:nth-child(3){width:140px}.signatory-table th:nth-child(4){width:128px}.signatory-table th:nth-child(5){width:155px}.signatory-table th:nth-child(6){width:95px}.signatory-table th:nth-child(7){width:175px}.signatory-table th:nth-child(8){width:145px}
.signatory-table td{padding:15px 8px;border-bottom:1px solid #eceef0;text-align:center;vertical-align:middle;background:#fff;overflow-wrap:anywhere}
.signatory-table tbody tr:hover>td:not(.signatory-hash-note){background:#fbfdfc}
.signatory-name{font-weight:500}.signatory-date{color:#d5d7da}.signatory-specimen{height:70px}.signatory-specimen img{display:block;width:118px;height:48px;object-fit:contain;margin:0 auto;background:#fff}
.signature-missing{display:inline-block;font-size:12px;line-height:1.25;color:#222}
.signatory-status{font-weight:400}.signatory-status.is-active,.signatory-status.is-inactive{color:#20262b}
.signatory-verify-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;padding:9px 11px;border-radius:5px;background:#fff;color:#2f3337!important;text-decoration:none!important;box-shadow:0 2px 8px rgba(0,0,0,.16);font-size:13px;transition:transform .16s ease,box-shadow .16s ease}
.signatory-verify-button span{display:inline-grid;place-items:center;width:15px;height:18px;color:#16a568;font-size:17px;line-height:1}
.signatory-verify-button:hover,.signatory-verify-button:focus{transform:translateY(-1px);box-shadow:0 4px 11px rgba(0,0,0,.20)}
.signatory-hash-note{vertical-align:top!important;text-align:left!important;padding:17px 12px!important;font-size:12px;line-height:1.45;color:#25292d}
.signatory-hash-note strong{display:inline}.signatory-hash-note a{display:block;margin-top:3px;color:#25292d!important;font-weight:700;text-decoration:none!important}
#mofa-signatory-empty td{padding:28px;font-weight:600;color:#5d646a}
@media(max-width:900px){
  .signatory-directory{margin-left:-8px;margin-right:-8px}
  .signatory-table-search{justify-content:stretch;padding:0 8px}
  .signatory-table-search input{width:100%;font-size:15px}
  .signatory-table{font-size:12px;min-width:1040px}
  .signatory-table td{padding:13px 7px}
  .signatory-specimen img{width:108px;height:44px}
  .signatory-verify-button{font-size:12px;padding:8px 9px}
}

/* v0.2.51 — reference-matched mobile signatory table; existing site footer remains unchanged */
@media (max-width: 900px) {
  /* The supplied reference shows the complete eight-column directory on mobile. */
  .mofa-section .mofa-container.prose {
    width: 100%;
    padding-left: 18px;
    padding-right: 18px;
  }
  .signatory-directory {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }
  .signatory-table-search {
    justify-content: flex-end;
    padding: 0;
    margin-bottom: 12px;
  }
  .signatory-table-search input {
    width: min(100%, 250px);
    padding: 8px 10px;
    font-size: 11px;
  }
  .signatory-table-scroll {
    width: 100%;
    overflow-x: visible;
  }
  .signatory-table {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
    font-size: clamp(7px, 1.45vw, 10.5px);
    line-height: 1.32;
  }
  .signatory-table th {
    padding: 9px 2px;
    font-size: clamp(6.5px, 1.35vw, 9.5px);
    overflow-wrap: anywhere;
  }
  .signatory-table th:nth-child(1) { width: 5%; }
  .signatory-table th:nth-child(2) { width: 18%; }
  .signatory-table th:nth-child(3) { width: 14%; }
  .signatory-table th:nth-child(4) { width: 12%; }
  .signatory-table th:nth-child(5) { width: 14%; }
  .signatory-table th:nth-child(6) { width: 9%; }
  .signatory-table th:nth-child(7) { width: 17%; }
  .signatory-table th:nth-child(8) { width: 11%; }
  .signatory-table td {
    padding: 10px 2px;
    overflow-wrap: anywhere;
    word-break: normal;
  }
  .signatory-specimen {
    height: 52px;
  }
  .signatory-specimen img {
    width: 100%;
    max-width: 74px;
    height: 38px;
    object-fit: contain;
  }
  .signature-missing {
    font-size: clamp(6.5px, 1.3vw, 9px);
    line-height: 1.25;
  }
  .signatory-verify-button {
    width: 100%;
    min-width: 0;
    gap: 2px;
    padding: 6px 2px;
    border-radius: 4px;
    font-size: clamp(6.2px, 1.25vw, 9px);
    line-height: 1.1;
    box-shadow: 0 2px 6px rgba(0,0,0,.14);
  }
  .signatory-verify-button span {
    width: 9px;
    height: 12px;
    font-size: 10px;
  }
  .signatory-hash-note {
    padding: 10px 3px !important;
    font-size: clamp(6.2px, 1.22vw, 8.7px);
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

}

@media (max-width: 420px) {
  .mofa-section .mofa-container.prose {
    padding-left: 10px;
    padding-right: 10px;
  }
  .signatory-table {
    font-size: 6.5px;
  }
  .signatory-table th {
    padding: 7px 1px;
    font-size: 6px;
  }
  .signatory-table td {
    padding: 8px 1px;
  }
  .signatory-specimen {
    height: 45px;
  }
  .signatory-specimen img {
    max-width: 52px;
    height: 31px;
  }
  .signatory-verify-button {
    padding: 5px 1px;
    font-size: 5.7px;
  }
  .signatory-verify-button span {
    width: 7px;
    font-size: 8px;
  }
  .signatory-hash-note {
    padding: 8px 2px !important;
    font-size: 5.7px;
  }
}
/* v0.2.53 reference page matching */
.prose>.reference-box{background:#fff;padding:42px 38px;max-width:980px;margin:0 auto 45px;box-shadow:0 1px 4px rgba(0,0,0,.04)}
.prose .reference-box h2,.prose .access-box h2{color:var(--green);text-align:left;margin:0 0 20px;font-size:28px}
.prose .left-title{text-align:left;color:var(--ink);margin-top:45px}
.reference-list{list-style:none;padding:0;margin:25px 0}.reference-list li{position:relative;padding-left:25px;margin:14px 0;color:var(--muted);line-height:1.55}.reference-list li:before{content:'✓';position:absolute;left:0;color:#168653;font-weight:bold}
.reference-list.two{display:grid;grid-template-columns:1fr 1fr;gap:5px 35px}
.access-box{background:#effff5;border-radius:9px;padding:45px;max-width:980px;margin:55px auto 0;box-shadow:0 8px 22px rgba(0,0,0,.1)}
.green-btn{display:inline-block;background:#18a957;color:#fff!important;padding:12px 25px;border-radius:5px;margin-top:15px}
.reference-services .feature b{font-size:45px}.reference-quality{max-width:980px!important;text-align:left}.reference-quality h2{text-align:center!important}.reference-quality .quality-medal{text-align:center}
@media(max-width:900px){.reference-list.two{grid-template-columns:1fr}.access-box{padding:30px}}

/* v0.2.54 icon and page match refinements */
.reference-services{margin-top:200px;margin-bottom:120px}
.reference-services .feature{padding:34px 24px 30px;min-height:176px}
.reference-services .feature h3{margin:12px 0 10px;font-size:19px;line-height:1.25;color:var(--green)}
.reference-services .feature p{margin:0;font-size:15px;line-height:1.55}
.reference-services .service-icon,.quality-medal,.list-icon,.policy-check{display:inline-flex;align-items:center;justify-content:center;color:var(--green)}
.reference-services .service-icon{width:58px;height:58px;margin:0 auto 10px}
.reference-services .service-icon svg,.quality-medal svg,.list-icon svg,.policy-check svg{display:block;width:100%;height:100%}
.reference-services .feature b{display:none}
.reference-list li,.policy-check-grid>div{display:flex;align-items:flex-start}
.reference-list li{gap:10px;padding-left:0}
.reference-list li:before{display:none}
.list-icon{width:18px;height:18px;flex:0 0 18px;margin-top:2px}
.prose .reference-box p,.prose>p,.access-box p,.conclusion-copy{font-size:15px;line-height:1.65;color:#4e5560}
.prose>.reference-box{padding:46px 34px;max-width:980px;border-radius:2px;box-shadow:none}
.prose .reference-box h2,.prose .access-box h2{font-size:24px}
.prose .left-title{font-size:28px;color:#2a3240;margin:54px 0 16px;text-align:left}
.access-box{background:#edf9f0;padding:42px 32px;border-radius:6px;box-shadow:0 6px 18px rgba(0,0,0,.08)}
.green-btn{padding:10px 22px;border-radius:4px;font-size:14px;font-weight:600}
.conclusion-title{text-align:center!important;color:#232a38!important;font-size:28px!important;margin:48px 0 12px!important}
.conclusion-copy{text-align:center;max-width:900px;margin:0 auto}
.reference-quality{margin-top:120px;margin-bottom:120px}
.reference-quality h2{font-size:26px!important;margin-bottom:8px}
.reference-quality .quality-medal{width:62px;height:62px;margin:8px auto 18px}
.reference-quality p{font-size:15px;line-height:1.7;margin-bottom:12px}
.policy-check-grid{gap:12px 26px}
.policy-check-grid>div{gap:8px;background:transparent;box-shadow:none;padding:0}
.policy-check{width:16px;height:16px;flex:0 0 16px;margin-top:4px}
.policy-check-grid>div span:last-child{display:block;font-size:15px;line-height:1.55;color:#4e5560}
@media (max-width:900px){
  .reference-services{margin-top:120px;margin-bottom:90px}
  .reference-services .feature{min-height:auto}
  .reference-services .service-icon{width:50px;height:50px}
  .prose>.reference-box,.access-box,.quality-card{padding:28px 22px}
  .prose .reference-box h2,.prose .access-box h2,.reference-quality h2{font-size:22px!important}
}

/* v0.2.55 page-shell matching */
.reference-page-shell{padding:48px 0 64px}
.reference-page-head{max-width:980px;margin:0 auto 34px;text-align:center}
.reference-page-head h1{margin:0 0 14px;color:var(--green);font-size:28px;line-height:1.18;font-weight:700}
.reference-page-head p{margin:0 auto;color:#66707c;font-size:15px;line-height:1.55;max-width:720px}
.reference-page-head-about{padding-top:6px}
.reference-top-spacer{height:360px}
.reference-page-shell .prose>p{max-width:980px;margin-left:auto;margin-right:auto}
.reference-services{margin-top:0;margin-bottom:120px}
.reference-quality{margin-top:0;margin-bottom:120px}
@media (max-width:900px){
  .reference-page-shell{padding:34px 0 48px}
  .reference-page-head{margin-bottom:26px}
  .reference-page-head h1{font-size:24px}
  .reference-page-head p{font-size:14px;max-width:88%}
  .reference-top-spacer{height:260px}
}
