.fmdyn,.fmdyn *{box-sizing:border-box}
.fmdyn{--fm-blue:#015884;--fm-light:#3dadde;--fm-navy:#022a3f;width:100%;padding:clamp(32px,5vw,72px) 20px;background:#f4f8fb;color:var(--fm-navy);direction:rtl;text-align:right;font-family:"Alexandria",Tahoma,sans-serif;isolation:isolate}
.fmdyn .fmdyn__inner{max-width:1140px;margin:auto;width:100%}
.fmdyn .fmdyn__head{margin-bottom:32px}
.fmdyn .fmdyn__head>span{display:flex;align-items:center;gap:9px;color:var(--fm-blue);font-size:12px;font-weight:600;margin-bottom:8px}
.fmdyn .fmdyn__head>span:before{content:"";width:24px;height:2px;background:var(--fm-light)}
.fmdyn .fmdyn__head h2{margin:0;color:var(--fm-navy);font:700 clamp(28px,3vw,40px)/1.5 "Alexandria",Tahoma,sans-serif;letter-spacing:0}
.fmdyn .fmdyn__group+.fmdyn__group{margin-top:48px;padding-top:36px;border-top:1px solid #dbe7ee}
.fmdyn .fmdyn__grouphead{display:flex;align-items:center;gap:13px;margin-bottom:22px}
.fmdyn .fmdyn__grouphead h3{margin:0;color:var(--fm-navy);font:600 clamp(20px,2vw,26px)/1.7 "Alexandria",Tahoma,sans-serif;letter-spacing:0}
.fmdyn .fmdyn__groupicon{width:45px;height:45px;flex:0 0 45px;display:grid;place-items:center;background:#e1f0f8;color:var(--fm-blue);border-radius:13px}
.fmdyn .fmdyn__groupicon svg{width:25px;height:25px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.fmdyn .fmdyn__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.fmdyn .fmdyn__card{min-width:0;background:#fff;border:1px solid #e0eaf0;border-radius:20px;overflow:hidden;box-shadow:0 6px 20px #022a3f05;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.fmdyn .fmdyn__link{display:flex;flex-direction:column;height:100%;color:var(--fm-navy)!important;text-decoration:none!important}
.fmdyn .fmdyn__media{aspect-ratio:3/2;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}
.fmdyn .fmdyn__media img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain;object-position:center;margin:0!important;padding:0!important;border:0;border-radius:0!important}
.fmdyn .fmdyn__body{padding:23px 22px 20px;display:flex;flex-direction:column;flex:1}
.fmdyn .fmdyn__body h4{margin:0 0 12px;color:var(--fm-navy);font:600 18px/1.75 "Alexandria",Tahoma,sans-serif;letter-spacing:0;text-transform:none}
.fmdyn .fmdyn__body p{margin:0 0 22px;color:#526a78;font:400 13px/2.05 "Alexandria",Tahoma,sans-serif;overflow-wrap:anywhere}
.fmdyn .fmdyn__more{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid #e9f0f4;color:var(--fm-blue);font-size:12px;font-weight:600}
.fmdyn .fmdyn__arrow{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eef6fb;transition:background .25s,color .25s}
.fmdyn .fmdyn__arrow svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fmdyn .fmdyn__link:focus-visible{outline:3px solid var(--fm-light);outline-offset:-4px;border-radius:19px}
@media(hover:hover) and (pointer:fine){.fmdyn .fmdyn__card:hover{transform:translateY(-5px);border-color:#91c9e4;box-shadow:0 16px 34px #022a3f10}.fmdyn .fmdyn__card:hover .fmdyn__arrow{background:var(--fm-blue);color:#fff}}
@media(max-width:1000px){.fmdyn .fmdyn__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.fmdyn{padding:32px 16px}.fmdyn .fmdyn__grid{grid-template-columns:1fr;gap:18px}.fmdyn .fmdyn__body{padding:20px}.fmdyn .fmdyn__group+.fmdyn__group{margin-top:32px;padding-top:28px}.fmdyn .fmdyn__grouphead{gap:10px}}
@media(prefers-reduced-motion:reduce){.fmdyn .fmdyn__card,.fmdyn .fmdyn__arrow{transition:none!important;transform:none!important}}
/* Client revision: icons replace service photos; existing media stays in WordPress. */
.fmdyn .fmdyn__serviceicon{width:68px;height:68px;display:grid;place-items:center;background:#e9f4fb;border-radius:18px;color:#015884;margin:26px 24px 0}.fmdyn .fmdyn__serviceicon svg{width:32px;height:32px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.fmdyn .fmdyn__card--icon .fmdyn__body{padding-top:22px}
