@font-face{font-family:"Vazirmatn";src:url("fonts/Vazirmatn.woff2") format("woff2");font-weight:100 900;font-display:swap}
:root{--fx-brand:#064975;--fx-brand-dark:#04324f;--fx-accent:#e8a13a;--fx-ink:#14232e;--fx-mut:#5b6b78;--fx-bg:#f3f6f9;--fx-line:#e3e9ee;--fx-r:16px;--fx-shadow:0 10px 30px rgba(6,73,117,.08)}
body{--wp--preset--font-family--manrope:"Vazirmatn",Tahoma,sans-serif;--wp--preset--font-family--fira-code:"Vazirmatn",Tahoma,sans-serif;font-family:"Vazirmatn",Tahoma,sans-serif!important;color:var(--fx-ink);line-height:1.9}
h1,h2,h3,h4,h5,h6,button,input,textarea,select,.wp-block-button__link,.wp-block-navigation{font-family:"Vazirmatn",Tahoma,sans-serif!important;letter-spacing:0!important}
h1,h2,h3{text-wrap:balance}
a{text-underline-offset:4px}
.wp-site-blocks>*{margin-block-start:0!important}
.fx-sec{margin-block:0!important;padding:84px 24px}
.fx-sec.fx-alt{background:var(--fx-bg)}
.fx-sec.fx-dark{background:linear-gradient(135deg,var(--fx-brand-dark),var(--fx-brand));color:#fff}
.fx-eyebrow{color:var(--fx-accent);font-weight:700;font-size:14px;letter-spacing:.02em;margin:0 0 8px!important}
.fx-title{font-size:clamp(26px,3.2vw,36px)!important;font-weight:800!important;line-height:1.45!important;color:var(--fx-brand-dark);margin:0 0 12px!important}
.fx-dark .fx-title{color:#fff}
.fx-lead{color:var(--fx-mut);font-size:17px;max-width:680px;margin:0 0 40px!important}
.fx-center{text-align:center}.fx-center.fx-lead{margin-inline:auto!important}
.fx-dark .fx-lead{color:#cfe0ea}
/* grid + cards */
.fx-grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.fx-grid.fx-g3{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.fx-grid.fx-g2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:56px;align-items:center}
.fx-grid>*{margin:0!important;max-width:none!important}
.fx-card{background:#fff;border:1px solid var(--fx-line);border-radius:var(--fx-r);padding:28px 24px;transition:transform .25s,box-shadow .25s,border-color .25s}
.fx-card:hover{transform:translateY(-4px);box-shadow:var(--fx-shadow);border-color:transparent}
.fx-card h3{font-size:19px!important;font-weight:700!important;color:var(--fx-brand-dark);margin:0 0 8px!important}
.fx-card p{color:var(--fx-mut);font-size:15px;margin:0!important}
.fx-card.fx-svc{border-top:3px solid var(--fx-accent)}
.fx-num{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:var(--fx-brand);color:#fff!important;font-weight:800;font-size:19px!important;margin:0 0 16px!important}
/* buttons */
.fx-btns{gap:14px!important;margin-top:28px!important}
.wp-block-button .wp-block-button__link{border-radius:10px;font-weight:700;font-size:16px;padding:13px 28px;transition:all .2s}
.fx-btn-primary .wp-block-button__link{background:var(--fx-accent);color:#1a2733}
.fx-btn-primary .wp-block-button__link:hover{background:#f3b358;color:#1a2733}
.fx-btn-brand .wp-block-button__link{background:var(--fx-brand);color:#fff}
.fx-btn-brand .wp-block-button__link:hover{background:var(--fx-brand-dark)}
.fx-btn-ghost .wp-block-button__link{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.7)}
.fx-btn-ghost .wp-block-button__link:hover{background:#fff;color:var(--fx-brand-dark)}
.fx-btn-line .wp-block-button__link{background:transparent;color:var(--fx-brand);border:1.5px solid var(--fx-brand)}
.fx-btn-line .wp-block-button__link:hover{background:var(--fx-brand);color:#fff}
.fx-more{justify-content:center;margin-top:40px!important}
/* hero */
.fx-hero{margin-block:0!important;min-height:min(86vh,680px)!important;padding:110px 24px!important}
.fx-hero .wp-block-cover__background{background:linear-gradient(100deg,rgba(4,35,56,.55) 0%,rgba(4,40,63,.86) 55%,rgba(4,35,56,.94) 100%)!important;opacity:1!important}
.fx-hero .wp-block-cover__inner-container{max-width:1160px;margin:0 auto;width:100%}
.fx-hero h1{color:#fff;font-size:clamp(32px,5vw,56px)!important;font-weight:900!important;line-height:1.35!important;margin:0 0 18px!important;max-width:760px}
.fx-hero .fx-hero-sub{color:#dbe7ef;font-size:clamp(16px,1.6vw,19px);max-width:600px;margin:0!important}
.fx-hero .fx-eyebrow{font-size:16px;margin-bottom:14px!important}
.fx-strip{margin-block:0!important;background:var(--fx-brand-dark);padding:0 24px}
.fx-strip .fx-grid{gap:0;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.fx-strip .fx-grid>*{padding:26px 20px;border-inline-start:1px solid rgba(255,255,255,.1)}
.fx-strip h3{color:#fff;font-size:17px!important;font-weight:700!important;margin:0!important}
.fx-strip p{color:#a9c3d3;font-size:14px;margin:2px 0 0!important}
/* page hero */
.fx-pagehero{margin-block:0!important;background:linear-gradient(135deg,var(--fx-brand-dark),var(--fx-brand));padding:72px 24px;color:#fff}
.fx-pagehero h1{color:#fff;font-size:clamp(28px,4vw,42px)!important;font-weight:800!important;margin:0 0 8px!important}
.fx-pagehero p{color:#cfe0ea;margin:0!important;font-size:17px}
/* about image */
.fx-photo img{border-radius:var(--fx-r);width:100%;height:420px;object-fit:cover;box-shadow:var(--fx-shadow);display:block}
.fx-text p{color:#3c4c58;font-size:16.5px}
.fx-checks{list-style:none;padding:0!important;margin:18px 0 0!important;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 20px}
.fx-checks li{position:relative;padding-inline-start:28px;font-weight:600;color:var(--fx-brand-dark);font-size:15.5px}
.fx-checks li:before{content:"";position:absolute;inset-inline-start:0;top:.55em;width:16px;height:9px;border:solid var(--fx-accent);border-width:0 0 3px 3px;transform:rotate(-45deg);transform-origin:center}
/* projects */
.fx-proj{padding:0;overflow:hidden}
.fx-proj figure{margin:0!important;overflow:hidden}
.fx-proj img{width:100%;height:240px;object-fit:cover;display:block;transition:transform .5s}
.fx-proj:hover img{transform:scale(1.05)}
.fx-proj h3{padding:20px 22px 0;margin:0 0 4px!important}
.fx-proj h3 a{color:inherit;text-decoration:none}
.fx-proj p{padding:0 22px 22px}
/* blog */
.wp-block-latest-posts.is-grid{gap:24px;margin:0!important;padding:0!important}
.wp-block-latest-posts.is-grid li{background:#fff;border:1px solid var(--fx-line);border-radius:var(--fx-r);overflow:hidden;margin:0!important;width:auto!important;transition:transform .25s,box-shadow .25s}
.wp-block-latest-posts.is-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.wp-block-latest-posts.is-grid li:hover{transform:translateY(-4px);box-shadow:var(--fx-shadow)}
.wp-block-latest-posts__featured-image{margin:0!important}
.wp-block-latest-posts__featured-image img{width:100%!important;max-width:none!important;height:200px;object-fit:cover;display:block}
.wp-block-latest-posts__post-title{display:block;padding:18px 20px 6px;font-weight:700;font-size:17px;line-height:1.8;color:var(--fx-brand-dark);text-decoration:none}
.wp-block-latest-posts__post-title:hover{color:var(--fx-brand)}
.wp-block-latest-posts__post-excerpt{padding:0 20px 20px;color:var(--fx-mut);font-size:14.5px;margin:0!important}
/* faq */
.fx-faq{max-width:820px;margin-inline:auto!important}
.fx-faq details{background:#fff;border:1px solid var(--fx-line);border-radius:12px;padding:0;margin:0 0 12px!important}
.fx-faq summary{cursor:pointer;font-weight:700;color:var(--fx-brand-dark);padding:18px 22px;list-style:none;position:relative;padding-inline-end:52px}
.fx-faq summary::-webkit-details-marker{display:none}
.fx-faq summary:after{content:"+";position:absolute;inset-inline-end:22px;top:50%;transform:translateY(-50%);font-size:24px;font-weight:400;color:var(--fx-accent)}
.fx-faq details[open] summary:after{content:"−"}
.fx-faq details p{padding:0 22px 20px;margin:0!important;color:var(--fx-mut)}
/* cta */
.fx-cta{text-align:center;padding:72px 24px}
.fx-cta .fx-lead{margin-bottom:0!important}
.fx-cta .fx-btns{justify-content:center}
/* contact */
.fx-contact-card h3{font-size:15px!important;color:var(--fx-mut)!important;font-weight:600!important}
.fx-contact-card p,.fx-contact-card p a{color:var(--fx-brand-dark)!important;font-weight:700;font-size:18px!important;text-decoration:none}
.fx-ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}
.fx-form{max-width:760px;margin-inline:auto!important;background:#fff;border:1px solid var(--fx-line);border-radius:var(--fx-r);padding:32px}
.wpcf7 input:not([type=submit]),.wpcf7 textarea,.wpcf7 select{width:100%;box-sizing:border-box;border:1px solid #cfd8df;border-radius:10px;padding:12px 14px;font-size:15px;background:#fbfcfd}
.wpcf7 input:focus,.wpcf7 textarea:focus{outline:2px solid var(--fx-brand);border-color:transparent}
.wpcf7 input[type=submit]{background:var(--fx-brand);color:#fff;border:0;border-radius:10px;padding:13px 34px;font-weight:700;font-size:16px;cursor:pointer}
.wpcf7 input[type=submit]:hover{background:var(--fx-brand-dark)}
/* header */
.fx-header{background:#fff;border-bottom:1px solid var(--fx-line);padding:12px 24px;position:sticky;top:0;z-index:50;margin:0!important}
.admin-bar .fx-header{top:32px}
header.wp-block-template-part{position:sticky;top:0;z-index:50}
.fx-header-in{max-width:1160px;margin:0 auto!important;display:flex;align-items:center;justify-content:space-between;gap:24px}
.fx-brand{display:flex;align-items:center;gap:12px;margin:0!important}
.fx-brand>*{margin:0!important}
.fx-brand img{width:46px;height:46px;border-radius:10px;display:block}
.fx-brand .wp-block-site-title{font-size:20px!important;font-weight:800}
.fx-brand .wp-block-site-title a{color:var(--fx-brand-dark);text-decoration:none}
.fx-header .wp-block-navigation{font-size:15.5px;font-weight:600;gap:26px}
.fx-header .wp-block-navigation a{color:var(--fx-ink)}
.fx-header .wp-block-navigation a:hover{color:var(--fx-brand);text-decoration:none}
.fx-header .wp-block-navigation__container{gap:26px}
.fx-header .fx-btns{margin:0!important}
.fx-header .wp-block-button__link{padding:10px 20px;font-size:15px}
.fx-header-end{display:flex;align-items:center;gap:22px;margin:0!important}
.fx-header-end>*{margin:0!important}
@media(max-width:781px){.fx-header .fx-btns{display:none}.fx-sec{padding:56px 20px}.fx-hero{padding:80px 20px!important}.fx-photo img{height:280px}.fx-grid.fx-g2{gap:28px}}
/* footer */
.fx-footer{background:#04283f;color:#b9cddb;padding:64px 24px 0;margin:0!important;font-size:15px}
.fx-footer-in{max-width:1160px;margin:0 auto!important}
.fx-footer h3{color:#fff;font-size:17px!important;font-weight:700!important;margin:0 0 14px!important}
.fx-footer p{margin:0 0 8px!important}
.fx-footer a{color:#b9cddb;text-decoration:none}.fx-footer a:hover{color:var(--fx-accent)}
.fx-footer ul{list-style:none;padding:0!important;margin:0!important}.fx-footer li{margin:0 0 8px}
.fx-footer .fx-grid{grid-template-columns:1.6fr 1fr 1.2fr;gap:48px}
@media(max-width:781px){.fx-footer .fx-grid{grid-template-columns:1fr;gap:32px}}
.fx-copy{border-top:1px solid rgba(255,255,255,.1);margin-top:48px!important;padding:20px 0;text-align:center;font-size:13.5px;color:#8fa9ba}
/* generic templates (posts, archives, project pages) */
.wp-block-post-title{font-weight:800!important;color:var(--fx-brand-dark);line-height:1.5!important}
.wp-block-post-content{font-size:17px}
.wp-block-post-content a{color:var(--fx-brand)}
.wp-block-query .wp-block-post-title a{text-decoration:none}
/* loops + singles */
.fx-main{margin:0!important}
.fx-main>*{margin-block:0!important}
ul.fx-loop{list-style:none;padding:0!important;margin:0!important}
ul.fx-loop>li{display:flex}
ul.fx-loop>li>.fx-card{width:100%}
.fx-proj .wp-block-post-title{font-size:19px!important;padding:20px 22px 0;margin:0 0 6px!important;line-height:1.7!important}
.fx-proj .wp-block-post-excerpt{margin:0!important}
.fx-proj .wp-block-post-excerpt__more-text{display:none}
.fx-date{color:var(--fx-mut);font-size:13.5px}
.fx-proj .fx-date{padding:16px 22px 0}
.fx-proj .fx-date+.wp-block-post-title{padding-top:4px}
.fx-pagehero .fx-date{color:#cfe0ea;font-size:15px}
.fx-pagehero .wp-block-post-excerpt p{max-width:760px}
.fx-pager{margin-top:44px!important;gap:10px;font-weight:700}
.fx-pager a,.fx-pager .current{padding:8px 15px;border-radius:10px;border:1px solid var(--fx-line);background:#fff;text-decoration:none;color:var(--fx-brand-dark)}
.fx-pager .current{background:var(--fx-brand);color:#fff;border-color:var(--fx-brand)}
.fx-article{max-width:800px;margin:0 auto!important;padding:56px 24px 72px}
.fx-article-img{margin:0 0 36px!important}
.fx-article-img img{width:100%;height:auto;border-radius:var(--fx-r);display:block}
.fx-article .wp-block-post-content{color:#2b3a45;line-height:2.1}
.fx-article .wp-block-post-content h2{font-size:25px;font-weight:800;color:var(--fx-brand-dark);margin:44px 0 12px;line-height:1.6}
.fx-article .wp-block-post-content h3{font-size:20px;font-weight:700;color:var(--fx-brand-dark);margin:32px 0 10px}
.fx-article .wp-block-post-content img{max-width:100%;height:auto;border-radius:12px}
.fx-article .wp-block-post-content blockquote{border-inline-start:4px solid var(--fx-accent);background:var(--fx-bg);margin:24px 0;padding:16px 22px;border-radius:10px}
.fx-article .wp-block-post-content table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}
.fx-article .wp-block-post-content td,.fx-article .wp-block-post-content th{border:1px solid var(--fx-line);padding:10px 12px}
.fx-single-proj{max-width:1160px;margin:0 auto!important;padding:56px 24px 72px}
.fx-single-proj img{max-width:100%;height:auto}
.fx-proj figure,.fx-proj figure a{display:block!important;width:100%!important;max-width:none!important}
.wp-block-navigation__responsive-container.is-menu-open{padding:24px!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-size:18px;padding:6px 0}
