/* GOLDVESTRA — Persian design v3: visual refinement of the «اطلس طلایی» system (card #354). Loaded only on /fa/ pages, after fa2.css.
   Keeps the v2 identity (paper canvas, navy + gold, arch frames) and raises: container width, Persian type scale (Yekan Bakh), hero, cards,
   process, corridor map, footer, mobile. Everything is scoped to body.gvfa3; the English site never loads this file. */

/* ---------- Width + type tokens ---------- */
body.gvfa3 {
	--wrap: 1400px; --pad: clamp(1.1rem, 3.2vw, 2.75rem); --hdr: 72px; --r: 28px;
	--mute: #3E485C; --ink: #172033;
	--wp--style--global--wide-size: calc(var(--wrap) - 2 * var(--pad));
	--fs-body: 1.125rem; --fs-sec: .9375rem; --fs-card: 1.3rem;
	font-size: var(--fs-body); line-height: 1.95; font-weight: 500;
}
@media (min-width: 2200px) { body.gvfa3 { --wrap: 1440px; } }
@media (max-width: 1199px) { body.gvfa3 { --hdr: 64px; } }
@media (max-width: 680px) { body.gvfa3 { --fs-body: 1.0625rem; } }
.gvfa3 :is(h1, h2, h3, h4) { text-wrap: balance; }
.gvfa3 p, .gvfa3 li { text-wrap: pretty; }
.gvfa3 .fx-h2 { font-size: clamp(1.9rem, 1.4vw + 1.35rem, 2.4rem); line-height: 1.38; }
.gvfa3 .fx-eyebrow { font-size: 1rem; }
.gvfa3 .fx-head__text { font-size: 1.125rem; max-width: 24.9em; color: var(--mute); }
.gvfa3 .fx-sec { padding-block: clamp(4rem, 8vw, 7.5rem); }
.gvfa3 .fx-link { font-size: 1.0625rem; }

/* Header / navigation */
.gvfa3 .gv-header__bar { max-width: var(--wrap); height: var(--hdr); }
.gvfa3 .gv-header__brand .gv-logo { height: 42px; }
.gvfa3 .gv-nav__link { font-size: 1rem; padding: 0 .95rem; }
.gvfa3 .gv-header__cta { font-size: 1rem; min-height: 48px; padding-inline: 1.5rem; }
.gvfa3 .gvfa-lang { font-size: .9375rem; min-height: 48px; }
.gvfa3 .gv-mega { max-width: var(--wrap); }
.gvfa3 .gv-mega__link { font-size: 1.0625rem; }

/* Buttons */
.gvfa3 .fx-btn { min-height: 58px; font-size: 1.0625rem; padding-inline: 2rem; }
.gvfa3 .fx-btn--xl { min-height: 66px; padding-inline: 2.6rem; font-size: 1.2rem; animation: fx3-glow 3.2s ease-in-out 1.6s infinite; }
@keyframes fx3-glow { 0%, 100% { box-shadow: 0 14px 30px -14px rgba(199, 164, 90, .9), 0 0 0 0 rgba(199, 164, 90, .45); } 55% { box-shadow: 0 14px 30px -14px rgba(199, 164, 90, .9), 0 0 0 12px rgba(199, 164, 90, 0); } }
.gvfa3 .fx-btn--xl:hover { animation: none; }

/* ---------- Hero ---------- */
.gvfa3 .fx3-hero { padding-block: clamp(1.2rem, 2.6vw, 2.4rem) clamp(4rem, 8vw, 7rem); background: radial-gradient(ellipse 55% 80% at 8% 40%, rgba(199, 164, 90, .26), transparent 70%), radial-gradient(circle at 1px 1px, rgba(16, 29, 53, .08) 1px, transparent 0) 0 0 / 28px 28px, var(--paper); }
.gvfa3 .fx3-hero__grid { display: grid; align-items: center; grid-template-columns: minmax(0, 1.04fr) minmax(0, 1fr); gap: clamp(2rem, 4vw, 4.5rem); min-height: clamp(580px, 80svh, 760px); }
.gvfa3 .fx-chip { font-size: 1rem; padding: .55rem 1.25rem; }
.gvfa3 .fx3-h1 { font-size: clamp(2.3rem, 3.3vw + 1.1rem, 3.5rem); line-height: 1.3; letter-spacing: 0; max-width: 9.2em; }
.gvfa3 .fx3-h1 em { background: linear-gradient(transparent 70%, rgba(199, 164, 90, .42) 70% 94%, transparent 94%); padding-inline: .1em; }
.gvfa3 .fx-lead { font-size: clamp(1.1rem, .5vw + 1rem, 1.3rem); line-height: 2; max-width: 28.2em; color: var(--mute); margin-top: 1.5rem; }
.gvfa3 .fx-actions { gap: 1rem; margin-top: 2.3rem; }
.gvfa3 .fx-facts { margin-top: 2.8rem; gap: 1.4rem; }
.gvfa3 .fx-facts b { font-size: 1.25rem; }
.gvfa3 .fx-facts span { font-size: .9375rem; line-height: 1.8; color: var(--mute); }
.gvfa3 .fx-facts li { border-top-width: 4px; }

.gvfa3 .fx3-art { position: relative; width: 100%; max-width: 620px; margin-inline: auto; aspect-ratio: 600 / 660; }
.gvfa3 .fx3-art figure { position: absolute; margin: 0; overflow: hidden; background: var(--sand-2); box-shadow: 0 40px 70px -34px rgba(16, 29, 53, .6); border: 8px solid #fff; }
.gvfa3 .fx3-art img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gvfa3 .fx3-art__main { inset: 0 24% 13% 0; border-radius: 999px 999px 34px 34px; z-index: 2; }
.gvfa3 .fx3-art__main img { object-position: 58% 50%; animation: fx3-zoom 2.4s var(--ease) both; }
.gvfa3 .fx3-art__side--a { inset: 9% 0 54% 60%; border-radius: 999px 999px 28px 28px; z-index: 1; }
.gvfa3 .fx3-art__side--b { inset: 55% 3% 0 52%; border-radius: 28px 28px 999px 999px; z-index: 3; }
.gvfa3 .fx3-art__side img { animation: fx3-zoom 2.8s var(--ease) .2s both; }
@keyframes fx3-zoom { from { transform: scale(1.14); } to { transform: none; } }
.gvfa3 .fx3-art__ring { position: absolute; border-radius: 50%; pointer-events: none; z-index: 0; }
.gvfa3 .fx3-art__ring--1 { width: 92%; aspect-ratio: 1; left: -16%; top: 6%; border: 1.5px solid rgba(199, 164, 90, .7); animation: fx3-drift 14s ease-in-out infinite; }
.gvfa3 .fx3-art__ring--2 { width: 64%; aspect-ratio: 1; right: -8%; bottom: -4%; border: 2px dashed rgba(138, 106, 38, .45); animation: fx3-drift 18s ease-in-out -6s infinite reverse; }
@keyframes fx3-drift { 50% { transform: translate(10px, -14px) rotate(8deg); } }
.gvfa3 .fx3-art__route { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 4; color: var(--gold-ink); pointer-events: none; overflow: visible; }
.gvfa3 .fx3-art__path { animation: fx3-flow 3.2s linear infinite; }
@keyframes fx3-flow { to { stroke-dashoffset: -48; } }
.gvfa3 .fx3-seal { z-index: 5; width: 31%; right: 20%; left: auto; top: 51%; animation: fx3-spin 44s linear infinite; background: var(--paper); box-shadow: 0 16px 34px -18px rgba(16, 29, 53, .5); }
@keyframes fx3-spin { from { transform: translateY(-50%) rotate(0); } to { transform: translateY(-50%) rotate(-360deg); } }
.gvfa3 .fx3-art .fx-float { z-index: 6; padding: .85rem 1.25rem; border-radius: 20px; }
.gvfa3 .fx3-art .fx-float small { font-size: .875rem; }
.gvfa3 .fx3-art .fx-float b { font-size: 1.0625rem; }
.gvfa3 .fx3-art .fx-float--a { left: -2%; bottom: 6%; }
.gvfa3 .fx3-art .fx-float--b { right: -1%; top: 0; }

@media (prefers-reduced-motion: no-preference) {
	.gvfa3 .fx3-in { animation: fx3-rise .9s var(--ease) both; animation-delay: calc(var(--d, 0) * 110ms + 60ms); }
	.gvfa3 .fx3-h1.fx3-in { animation-name: fx3-rise-t; }
}
@keyframes fx3-rise { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
@keyframes fx3-rise-t { from { transform: translateY(24px); } to { transform: none; } }

/* ---------- Intro ---------- */
.gvfa3 .fx-intro__grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
.gvfa3 .fx-intro__lead { font-size: clamp(1.3rem, 1vw + 1.05rem, 1.75rem); line-height: 1.75; }
.gvfa3 .fx-intro__body p { font-size: 1.125rem; line-height: 2.05; color: rgba(255, 255, 255, .86); max-width: 34.7em; }
.gvfa3 .fx-intro__body .fx-intro__lead { color: #fff; }

/* ---------- Services bento ---------- */
.gvfa3 .fx-bento { grid-auto-rows: minmax(300px, auto); gap: 1.25rem; }
.gvfa3 .fx-tile { min-height: 300px; border-radius: var(--r); transition: transform .5s var(--ease), box-shadow .5s var(--ease); }
.gvfa3 .fx-tile:hover { transform: translateY(-6px); box-shadow: 0 34px 60px -30px rgba(10, 21, 40, .7); }
.gvfa3 .fx-tile img { object-position: 50% 30%; }
.gvfa3 .fx-tile::after { background: linear-gradient(0deg, rgba(10, 21, 40, .96) 0, rgba(10, 21, 40, .82) 30%, rgba(10, 21, 40, .28) 62%, rgba(10, 21, 40, 0)); }
.gvfa3 .fx-tile:hover::after { background: linear-gradient(0deg, rgba(10, 21, 40, .97) 0, rgba(10, 21, 40, .86) 38%, rgba(16, 29, 53, .4) 72%, rgba(199, 164, 90, .14)); }
.gvfa3 .fx-tile__body { padding: 2rem 2.1rem; }
.gvfa3 .fx-tile h3 { font-size: clamp(1.3rem, .9vw + 1rem, 1.55rem); line-height: 1.45; margin-bottom: .5rem; }
.gvfa3 .fx-tile p { font-size: 1.0625rem; line-height: 1.85; color: rgba(255, 255, 255, .92); }
.gvfa3 .fx-tile--1 { min-height: 620px; }
.gvfa3 .fx-tile--1 h3 { font-size: clamp(1.7rem, 1.6vw + 1.1rem, 2.3rem); }
.gvfa3 .fx-tile--1 p { font-size: 1.15rem; max-width: 21.7em; }
.gvfa3 .fx-tile--6 { min-height: 280px; }
.gvfa3 .fx-tile__n { font-size: 1.1rem; top: 1.3rem; right: 1.6rem; text-shadow: 0 2px 8px rgba(0, 0, 0, .5); }
.gvfa3 .fx-tile__go { width: 48px; height: 48px; left: 1.3rem; top: 1.2rem; }

/* ---------- Process ---------- */
.gvfa3 .fx-proc__grid { grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr); gap: clamp(2rem, 5vw, 5.5rem); }
.gvfa3 .fx-proc__fig { aspect-ratio: 4 / 3.5; position: relative; }
.gvfa3 .fx-steps { gap: 1.25rem; }
.gvfa3 .fx-step { gap: 1.7rem; padding: 2.3rem 2.4rem; top: calc(var(--hdr) + 40px + var(--i) * 18px); }
.gvfa3 .fx-step__n { width: 78px; height: 78px; font-size: 2.1rem; box-shadow: 0 0 0 7px rgba(199, 164, 90, .28), 0 12px 24px -12px rgba(199, 164, 90, .9); }
.gvfa3 .fx-step:nth-child(even) .fx-step__n { box-shadow: 0 0 0 7px rgba(213, 181, 109, .22), 0 12px 24px -12px rgba(0, 0, 0, .6); }
.gvfa3 .fx-step h3 { font-size: 1.5rem; margin-bottom: .55rem; }
.gvfa3 .fx-step p { font-size: 1.125rem; line-height: 1.95; color: #3b455a; }
.gvfa3 .fx-step:nth-child(even) p { color: rgba(255, 255, 255, .92); }
.gvfa3 .fx-step:nth-child(even) h3 { color: #fff; }

/* ---------- Industries ---------- */
.gvfa3 .fx-ind__row { height: clamp(460px, 40vw, 600px); gap: 1rem; }
.gvfa3 .fx-ind__t { padding: 1.7rem 1.3rem 1.9rem; }
.gvfa3 .fx-ind__t b { font-size: 1.3rem; }
.gvfa3 .fx-ind__t small { font-size: 1rem; line-height: 1.75; }
.gvfa3 .fx-ind__p::after { background: linear-gradient(0deg, rgba(10, 21, 40, .95) 0, rgba(10, 21, 40, .55) 38%, rgba(10, 21, 40, .05) 70%); }
.gvfa3 .fx-ind__p { transition: flex-grow .7s var(--ease), box-shadow .5s; }
.gvfa3 .fx-ind__p:hover, .gvfa3 .fx-ind__p:focus-visible { box-shadow: 0 30px 50px -30px rgba(10, 21, 40, .8); }
@media (min-width: 1001px) {
	.gvfa3 .fx-ind__row:not(:hover):not(:focus-within) .fx-ind__p:first-child { flex-grow: 3.4; }
	.gvfa3 .fx-ind__row:not(:hover):not(:focus-within) .fx-ind__p:first-child small { max-height: 6em; opacity: 1; }
}

/* ---------- Corridors + map ---------- */
.gvfa3 .fx3-cor__top { display: grid; grid-template-columns: 1fr; gap: clamp(1.8rem, 3vw, 2.8rem); }
.gvfa3 .fx-cor__head { max-width: 820px; }
.gvfa3 .fx-cor__head p:not(.fx-eyebrow) { font-size: 1.125rem; line-height: 2.05; color: rgba(255, 255, 255, .86); }
.gvfa3 .fx3-cor__map { position: relative; border-radius: var(--r); padding: clamp(.8rem, 2vw, 1.6rem) clamp(.6rem, 1.6vw, 1.4rem) 0; background: radial-gradient(ellipse at 47% 55%, rgba(32, 59, 96, .75), rgba(10, 21, 40, .2) 70%); border: 1px solid rgba(199, 164, 90, .3); overflow: hidden; }
.gvfa3 .fxm { display: block; width: 100%; height: auto; direction: ltr; }
.gvfa3 .fxm-land { fill: none; stroke: var(--gold-2); stroke-width: 4.4; stroke-linecap: round; opacity: .4; }
.gvfa3 .fxm-arc { stroke: var(--gold-2); stroke-width: 2.8; stroke-linecap: round; stroke-dasharray: 2 3; opacity: .95; animation: fxm-flow 5s linear infinite; }
.gvfa3 .fxm-arc--gc, .gvfa3 .fxm-arc--om { animation-duration: 3.2s; }
@keyframes fxm-flow { to { stroke-dashoffset: -50; } }
.gvfa3 .fxm-dot { fill: var(--gold-2); stroke: var(--deep); stroke-width: 3; }
.gvfa3 .fxm-pulse { fill: var(--gold-2); opacity: .5; transform-box: fill-box; transform-origin: center; animation: fxm-pulse 3s ease-out infinite; }
.gvfa3 .fxm-node--tr .fxm-pulse { animation-delay: -.6s; } .gvfa3 .fxm-node--eu .fxm-pulse { animation-delay: -1.2s; } .gvfa3 .fxm-node--in .fxm-pulse { animation-delay: -1.8s; } .gvfa3 .fxm-node--cn .fxm-pulse { animation-delay: -2.4s; }
@keyframes fxm-pulse { from { transform: scale(1); opacity: .55; } to { transform: scale(3.2); opacity: 0; } }
.gvfa3 .fxm text { font-family: var(--yb); font-weight: 800; font-size: 29px; fill: #fff; paint-order: stroke; stroke: var(--deep); stroke-width: 7px; stroke-linejoin: round; direction: rtl; }
.gvfa3 .fxm-hub text { fill: var(--gold-2); font-size: 34px; }
.gvfa3 .fxm-core { fill: #fff; stroke: var(--gold); stroke-width: 5; }
.gvfa3 .fxm-ring { fill: none; stroke: var(--gold-2); stroke-width: 2; transform-box: fill-box; transform-origin: center; animation: fxm-ring 3.4s ease-out infinite; }
.gvfa3 .fxm-ring--2 { animation-delay: -1.7s; }
@keyframes fxm-ring { from { transform: scale(.6); opacity: .9; } to { transform: scale(3); opacity: 0; } }
.gvfa3 .fx3-cor__cap { margin: 0; padding: .6rem .4rem 1rem; font-size: .9375rem; color: rgba(255, 255, 255, .62); text-align: center; }
.gvfa3 .fx-cor__cols { gap: 1.4rem; margin-top: 2.2rem; }
.gvfa3 .fx-cor__col { padding: 2.2rem 2.3rem; }
.gvfa3 .fx-cor__col h3 { font-size: 1.5rem; }
.gvfa3 .fx-cor__col li { font-size: 1.0625rem; padding: .55rem 1.15rem; }
.gvfa3 .fx-cor__note { font-size: 1rem; color: rgba(255, 255, 255, .78); }
@media (prefers-reduced-motion: reduce) { .gvfa3 .fxm *, .gvfa3 .fx3-art *, .gvfa3 .fx-btn--xl, .gvfa3 .fx3-seal { animation: none !important; } }

/* ---------- Why / group / insights / CTA ---------- */
.gvfa3 .fx-why__grid { gap: 1.25rem; }
.gvfa3 .fx-why__grid li { padding: 2.4rem 2.1rem 2.2rem; }
.gvfa3 .fx-why h3 { font-size: 1.35rem; }
.gvfa3 .fx-why p { font-size: 1.0625rem; line-height: 1.95; color: var(--mute); }
.gvfa3 .fx-grp__copy p { font-size: 1.125rem; line-height: 2.05; }
.gvfa3 .fx-ins__grid { gap: 1.25rem; }
.gvfa3 .fx-post { padding: 2.3rem 2.1rem; }
.gvfa3 .fx-post__k { font-size: .9375rem; }
.gvfa3 .fx-post h3 { font-size: 1.35rem; line-height: 1.6; }
.gvfa3 .fx-post p { font-size: 1.0625rem; line-height: 1.9; }
.gvfa3 .fx-cta { max-width: calc(var(--wrap) - 2 * var(--pad)); }
.gvfa3 .fx-cta p, .gvfa3 .fx-cta__list li { font-size: 1.125rem; }
.gvfa3 .fx-cta__contact { font-size: 1.125rem; }

/* ---------- Inner pages ---------- */
.gvfa3 .gv-page-hero { padding-top: calc(var(--hdr) + 3.6rem); }
.gvfa3 .gv-page-hero__inner, .gvfa3 .gv-band__head, .gvfa3 .gv-grid, .gvfa3 .gv-cta__inner { max-width: calc(var(--wrap) - 2 * var(--pad)); }
.gvfa3 .gv-page-hero__title { font-size: clamp(2.2rem, 2.8vw + 1.1rem, 3.5rem); line-height: 1.3; max-width: 11.9em; }
.gvfa3 .gv-page-hero--article .gv-page-hero__title { font-size: clamp(1.9rem, 2vw + 1.1rem, 2.9rem); max-width: 15.2em; }
.gvfa3 .gv-page-hero__intro { font-size: clamp(1.1rem, .5vw + 1rem, 1.3rem); line-height: 2; max-width: 33.6em; }
.gvfa3 .gv-crumbs ol { font-size: .9375rem; }
.gvfa3 .gv-page-hero .gv-eyebrow, .gvfa3 .gv-eyebrow { font-size: 1rem; }
.gvfa3 .gvfa-hero__art { width: min(100%, 360px); max-height: 440px; }
.gvfa3 .gv-sec, .gvfa3 .wp-block-group.gv-sec { max-width: 860px; }
.gvfa3 .gv-content { font-size: 1.125rem; line-height: 2.05; }
.gvfa3 .gv-content :is(p, li) { max-width: 39.0em; }
.gvfa3 .gv-content h2 { font-size: clamp(1.7rem, 1.3vw + 1.3rem, 2.3rem); }
.gvfa3 .gv-content h3 { font-size: clamp(1.3rem, .8vw + 1.1rem, 1.6rem); }
.gvfa3 .gv-band__head h2 { font-size: clamp(1.9rem, 1.4vw + 1.35rem, 2.4rem); }
.gvfa3 .gv-pcard__link { padding: 2rem; }
.gvfa3 .gv-pcard h3, .gvfa3 .gv-pcard__title { font-size: 1.3rem; }
.gvfa3 .gv-pcard p { font-size: 1.0625rem; line-height: 1.9; }
.gvfa3 .gv-faq summary { font-size: 1.15rem; line-height: 1.8; padding-block: 1.15rem; }
.gvfa3 .gv-cta h2 { font-size: clamp(1.8rem, 1.4vw + 1.3rem, 2.4rem); }
.gvfa3 .gv-cta p { font-size: 1.125rem; }
.gvfa3 .gv-btn { font-size: 1.0625rem; min-height: 54px; }
.gvfa3 :is(input:not([type=checkbox], [type=radio], [type=file]), select, textarea) { font-size: 1.0625rem; min-height: 52px; }
.gvfa3 label { font-size: 1rem; font-weight: 700; }
.gvfa3 .gvf small, .gvfa3 .gvf .description { font-size: .9375rem; }

/* ---------- Footer ---------- */
.gvfa3 .gv-footer { background: var(--deep); font-size: 1.0625rem; color: rgba(255, 255, 255, .86); padding: clamp(3.4rem, 6vw, 5.5rem) 0 0; border-radius: clamp(28px, 5vw, 64px) clamp(28px, 5vw, 64px) 0 0; position: relative; overflow: hidden; }
.gvfa3 .gv-footer::before { content: ""; position: absolute; inset: -40% auto auto -8%; width: 560px; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(199, 164, 90, .16), transparent 65%); pointer-events: none; }
.gvfa3 .gv-footer__inner { position: relative; display: grid; grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, .9fr)) minmax(0, 1.5fr); gap: 2.6rem clamp(1.6rem, 3vw, 3.2rem); max-width: var(--wrap); margin-inline: auto; padding: 0 var(--pad) clamp(2.4rem, 5vw, 4rem); box-sizing: border-box; }
.gvfa3 .gv-footer__logo .gv-logo { height: 54px; width: auto; }
.gvfa3 .gv-footer__about { font-size: 1.0625rem; line-height: 2; color: rgba(255, 255, 255, .86); margin: 1.2rem 0 .9rem; max-width: 21.7em; }
.gvfa3 .gv-footer__group a { font-size: 1rem; font-weight: 700; color: var(--gold-2); }
.gvfa3 .gv-footer .gv-btn--gold { margin-top: 1.1rem; min-height: 56px; padding-inline: 1.9rem; font-size: 1.0625rem; }
.gvfa3 .gv-footer__heading { margin: 0 0 1.1rem; font-size: 1.15rem; font-weight: 800; color: #fff; padding-bottom: .7rem; position: relative; }
.gvfa3 .gv-footer__heading::after { content: ""; position: absolute; inset-inline-start: 0; bottom: 0; width: 34px; height: 3px; border-radius: 3px; background: var(--gold); }
.gvfa3 .gv-footer__links { gap: .35rem; }
.gvfa3 .gv-footer__links a { font-size: 1.0625rem; color: rgba(255, 255, 255, .86); padding-block: .3rem; display: inline-block; transition: color .2s, transform .25s var(--ease); }
.gvfa3 .gv-footer__links a:hover { color: var(--gold-2); transform: translateX(-4px); }
.gvfa3 .gv-footer__contact { padding: 1.7rem 1.6rem; border-radius: var(--r); background: rgba(255, 255, 255, .06); border: 1px solid rgba(199, 164, 90, .38); align-self: start; }
.gvfa3 .gv-footer__contact-list { gap: .9rem; }
.gvfa3 .gv-footer__contact-list li { font-size: 1.0625rem; line-height: 1.9; align-items: flex-start; }
.gvfa3 .gv-footer__contact-list address { font-style: normal; font-size: 1.0625rem; line-height: 1.9; color: rgba(255, 255, 255, .92); direction: ltr; text-align: left; unicode-bidi: plaintext; }
.gvfa3 .gv-footer__contact-list address a { color: var(--gold-2); font-weight: 700; direction: rtl; display: inline-block; }
.gvfa3 .gv-footer__contact-list li > a { font-size: 1.25rem; font-weight: 800; color: #fff; letter-spacing: .01em; }
.gvfa3 .gv-footer__contact-list svg { color: var(--gold-2); flex: none; width: 22px; height: 22px; }
.gvfa3 .gv-footer__bottom { position: relative; max-width: var(--wrap); margin-inline: auto; padding: 1.5rem var(--pad) 1.8rem; box-sizing: border-box; border-top: 1px solid rgba(255, 255, 255, .14); font-size: 1rem; color: rgba(255, 255, 255, .78); display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2rem; }
.gvfa3 .gv-footer__bottom p { margin: 0; font-size: 1rem; flex: 1 1 auto; }
.gvfa3 .gv-footer__legal { display: flex; flex-wrap: wrap; gap: .4rem 1.6rem; margin: 0; padding: 0; list-style: none; }
.gvfa3 .gv-footer__legal a { font-size: 1rem; color: rgba(255, 255, 255, .86); }
.gvfa3 .gv-footer__legal a:hover { color: var(--gold-2); }
/* language selector (Persian is current) */
.gvfa3 .gvfa-seg { display: inline-flex; align-items: center; padding: 4px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .28); }
.gvfa3 .gvfa-seg > * { display: inline-flex; align-items: center; min-height: 40px; padding: 0 1.1rem; border-radius: 999px; font-size: .9375rem; font-weight: 800; text-decoration: none; }
.gvfa3 .gvfa-seg__cur { background: var(--gold); color: var(--deep); }
.gvfa3 .gvfa-seg .gvfa-lang { border: 0; color: #fff; min-height: 40px; padding: 0 1.1rem; }
.gvfa3 .gvfa-seg .gvfa-lang:hover { color: var(--gold-2); }
@media (max-width: 1180px) {
	.gvfa3 .gv-footer__inner { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.gvfa3 .gv-footer__brand { grid-column: 1 / -1; }
	.gvfa3 .gv-footer__contact { grid-column: 1 / -1; }
	.gvfa3 .gv-footer__contact-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
	.gvfa3 .gv-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 1.2rem; }
	.gvfa3 .gv-footer__contact-list { grid-template-columns: 1fr; }
	.gvfa3 .gv-footer__bottom { flex-direction: column; align-items: flex-start; }
}

/* ---------- Mobile CTA bar (conversion shortcut) ---------- */
.gvfa3-cta { display: none; }
@media (max-width: 800px) {
	.gvfa3 .gvfa3-cta { display: flex; position: fixed; z-index: 80; inset-inline: 14px; bottom: calc(12px + env(safe-area-inset-bottom)); justify-content: center; align-items: center; gap: .6rem; min-height: 56px; border-radius: 999px; background: linear-gradient(135deg, var(--gold-2), var(--gold)); color: var(--deep); font-weight: 800; font-size: 1.0625rem; text-decoration: none; box-shadow: 0 18px 34px -12px rgba(10, 21, 40, .6); }
	.gvfa3.page-id-197 .gvfa3-cta { display: none; }
	.gvfa3 { padding-bottom: 84px; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1000px) {
	.gvfa3 .fx3-hero__grid { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 2.4rem; }
	.gvfa3 .fx3-hero__copy { max-width: 720px; }
	.gvfa3 .fx3-art { max-width: 520px; order: 2; }
	.gvfa3 .fx3-h1 { max-width: none; }
	.gvfa3 .fx3-cor__top { grid-template-columns: 1fr; }
	.gvfa3 .fx-tile--1 { min-height: 420px; }
	.gvfa3 .fx-ind__row { height: auto; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .9rem; }
	.gvfa3 .fx-ind__p { aspect-ratio: 3 / 4; border-radius: 999px 999px var(--r-s) var(--r-s); }
	.gvfa3 .fx-ind__t { text-align: center; padding: 1rem .8rem 1.3rem; }
	.gvfa3 .fx-ind__t small { max-height: none; opacity: 1; font-size: .9375rem; }
	.gvfa3 .fx-step { padding: 1.9rem 1.7rem; }
	.gvfa3 .gv-sec, .gvfa3 .wp-block-group.gv-sec { max-width: 760px; }
}
@media (max-width: 680px) {
	.gvfa3 .fx3-hero { padding-top: 1.2rem; }
	.gvfa3 .fx3-art { max-width: 420px; }
	.gvfa3 .fx-facts li { padding-top: .8rem; }
	.gvfa3 .fx-tile, .gvfa3 .fx-tile--6 { min-height: 300px; }
	.gvfa3 .fx-tile--1 { min-height: 380px; }
	.gvfa3 .fx-tile__body { padding: 1.6rem 1.5rem; }
	.gvfa3 .fx-ind__row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gvfa3 .fx-ind__t b { font-size: 1.05rem; }
	.gvfa3 .fx-step { padding: 1.6rem 1.4rem; }
	.gvfa3 .fx-step__n { width: 64px; height: 64px; font-size: 1.7rem; }
	.gvfa3 .fx-step h3 { font-size: 1.35rem; }
	.gvfa3 .fx-cor__col { padding: 1.6rem 1.3rem; }
	.gvfa3 .fxm text { font-size: 40px; stroke-width: 9px; }
	.gvfa3 .fxm-hub text { font-size: 46px; }
	.gvfa3 .fx3-art .fx-float--a { left: 0; bottom: 2%; }
	.gvfa3 .fx3-art .fx-float--b { right: 0; top: -2%; }
	.gvfa3 .fx-btn--xl { width: 100%; }
}
