/* Forex Grey Label — service page system v2.0.0
   Page-specific content architecture with shared identity, custom visual modules and restrained motion. */
.fgl-service-page{--sp-panel:#100a18;--sp-panel-2:#171020;--sp-line:rgba(210,181,255,.18);--sp-text:#f7f1ff;--sp-muted:#bdb0ce;--sp-accent:#b78aff;position:relative;isolation:isolate;background:#050308;color:var(--sp-text);overflow:hidden}
.fgl-service-wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}
.fgl-service-hero{height:min(760px,83svh);min-height:600px;max-height:840px;background:#07040b}
.fgl-service-hero .fgl-slice-background{object-fit:cover;object-position:73% 50%;opacity:.94;transform:scale(1.02);filter:saturate(1.05)}
.fgl-service-hero .fgl-slice-shade{background:linear-gradient(90deg,rgba(5,3,8,.98) 0%,rgba(5,3,8,.92) 30%,rgba(5,3,8,.56) 57%,rgba(5,3,8,.12) 100%),linear-gradient(0deg,#050308 0%,transparent 20%,transparent 82%,rgba(5,3,8,.45) 100%)}
.fgl-service-hero .fgl-slice-copy{max-width:1200px;padding-top:28px;pointer-events:none}
.fgl-service-hero .fgl-slice-copy h1{max-width:770px;font-size:clamp(2.8rem,5.8vw,5.4rem);line-height:1.02;letter-spacing:-.06em}
.fgl-service-hero .fgl-slice-copy p{max-width:620px;font-size:clamp(1rem,1.45vw,1.16rem);line-height:1.82;color:#e1d7ec}
.fgl-service-hero .fgl-new-eyebrow{display:inline-flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid rgba(207,174,255,.3);border-radius:99px;background:rgba(19,10,31,.56);font-size:10px;letter-spacing:.14em;color:#d7c3f1}
.fgl-service-hero .fgl-new-eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--sp-accent);box-shadow:0 0 12px var(--sp-accent)}
.fgl-service-hero .fgl-new-actions{pointer-events:auto}
.fgl-service-hero .fgl-slice-progress span{background:linear-gradient(90deg,#8d55ff,#d9c4ff,#55d5c5)}
.fgl-service-hero .fgl-slice-piece{background:linear-gradient(180deg,rgba(15,8,24,.92),rgba(9,5,14,.9));border-color:rgba(222,204,255,.08)}
.fgl-service-ribbon{border-top:1px solid var(--sp-line);border-bottom:1px solid var(--sp-line);background:linear-gradient(90deg,#0b0710,#130c1e,#0a070f)}
.fgl-service-ribbon .fgl-service-wrap{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.fgl-service-ribbon-label,.fgl-service-eyebrow{font-size:10px;letter-spacing:.16em;color:#b99be3;font-weight:800}
.fgl-service-ribbon-items{display:flex;flex-wrap:wrap;gap:9px}
.fgl-service-ribbon-items span{font-size:11px;color:#e7dcf6;padding:8px 12px;border-radius:99px;border:1px solid rgba(206,177,248,.2);background:rgba(173,125,236,.07)}
.fgl-service-intro{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:clamp(36px,6vw,84px);align-items:center;padding-block:clamp(76px,9vw,124px)}
.fgl-service-intro-copy h2{font-size:clamp(2rem,3.7vw,3.2rem);line-height:1.08;letter-spacing:-.045em;margin:15px 0 22px;max-width:760px}
.fgl-service-intro-copy p{font-size:16px;line-height:1.86;color:#cfc4dc;margin:0 0 15px;max-width:760px}
.fgl-service-intro-media{min-width:0;display:grid;gap:16px}
.fgl-service-visual-frame,.fgl-service-photo-frame{position:relative;margin:0;overflow:hidden;border:1px solid rgba(202,170,248,.2);border-radius:22px;background:#10091a;box-shadow:0 22px 70px rgba(0,0,0,.35)}
.fgl-service-visual-frame img{display:block;width:100%;aspect-ratio:1.46;object-fit:cover;transform:translate3d(0,var(--fgl-parallax-y,0),0);will-change:transform}
.fgl-service-photo-frame img{display:block;width:100%;max-height:220px;aspect-ratio:2.25;object-fit:cover;filter:saturate(.86) contrast(1.02);transform:translate3d(0,var(--fgl-parallax-y,0),0);will-change:transform}
.fgl-service-visual-frame figcaption,.fgl-service-photo-frame figcaption{position:absolute;left:14px;bottom:12px;padding:8px 11px;border:1px solid rgba(218,192,255,.2);border-radius:99px;background:rgba(8,5,12,.78);backdrop-filter:blur(12px);font-size:9px;letter-spacing:.08em;color:#e9dff5}
.fgl-service-section{padding-block:clamp(70px,8vw,108px);position:relative}
.fgl-service-section--alt{background:linear-gradient(135deg,rgba(29,16,45,.58),rgba(10,7,15,.9));border-block:1px solid rgba(202,170,248,.1)}
.fgl-service-section-head{max-width:790px;margin-bottom:34px}
.fgl-service-section-head h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.12;letter-spacing:-.045em;margin:12px 0 0;text-wrap:pretty}
.fgl-service-section-head:after{content:"";display:block;width:74px;height:2px;margin-top:22px;background:linear-gradient(90deg,#a46cff,#55d5c5);box-shadow:0 0 16px rgba(159,98,255,.34)}
.fgl-service-copy-block{max-width:880px}
.fgl-service-copy-block>p{color:#cfc4dc;font-size:15.5px;line-height:1.85;margin:0 0 16px}
.fgl-service-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.fgl-service-card,.fgl-service-mini-card{position:relative;min-width:0;border:1px solid rgba(208,181,247,.18);border-radius:18px;background:linear-gradient(150deg,rgba(25,15,39,.92),rgba(12,8,18,.96));padding:23px;box-shadow:0 12px 35px rgba(0,0,0,.14);transition:transform .25s ease,border-color .25s ease,background .25s ease}
.fgl-service-card:hover,.fgl-service-mini-card:hover{transform:translateY(-4px);border-color:rgba(188,142,255,.48);background:linear-gradient(150deg,rgba(35,20,54,.96),rgba(14,8,21,.98))}
.fgl-service-card-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:19px;border:1px solid rgba(188,142,255,.35);border-radius:13px;background:linear-gradient(145deg,rgba(151,90,255,.2),rgba(49,30,69,.2));color:#decaff;font-size:17px;font-weight:800;box-shadow:inset 0 0 20px rgba(149,90,255,.09)}
.fgl-service-card h3,.fgl-service-mini-card h3{font-size:18px;line-height:1.32;letter-spacing:-.02em;margin:0 0 11px;color:#f7f0ff}
.fgl-service-card p,.fgl-service-mini-card p{font-size:14px;line-height:1.75;color:#bdb0ce;margin:0 0 10px}
.fgl-service-card p:last-child,.fgl-service-mini-card p:last-child{margin-bottom:0}
.fgl-service-subgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:26px}
.fgl-service-mini-card{display:grid;grid-template-columns:40px minmax(0,1fr);gap:13px;padding:19px}
.fgl-service-mini-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(143,83,228,.14);border:1px solid rgba(199,158,255,.25);color:#d9c2ff;font-weight:800}
.fgl-service-mini-card h3{font-size:16px}
.fgl-service-timeline{grid-template-columns:repeat(2,minmax(0,1fr));counter-reset:steps}
.fgl-service-step{padding-top:28px;min-height:185px}
.fgl-service-step .fgl-service-card-icon{border-radius:50%;width:48px;height:48px;font-size:12px;color:#fff;background:linear-gradient(135deg,#8c54eb,#402168)}
.fgl-service-page--04 .fgl-service-timeline{grid-template-columns:repeat(4,minmax(0,1fr))}
.fgl-service-asset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.fgl-service-asset-grid .fgl-service-card{min-height:178px}
.fgl-service-infra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.fgl-service-page--02 .fgl-service-section--platform-compare .fgl-service-card-grid,.fgl-service-page--13 .fgl-service-section--compare .fgl-service-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.fgl-service-page--02 .fgl-service-section--platform-compare .fgl-service-card:first-child,.fgl-service-page--13 .fgl-service-section--compare .fgl-service-card:last-child{border-color:rgba(190,144,255,.48);box-shadow:0 15px 42px rgba(107,54,173,.14)}
.fgl-service-context-note{margin-top:25px;padding:20px 22px;border-left:3px solid #a878ef;border-radius:0 14px 14px 0;background:rgba(139,82,220,.09);max-width:920px}
.fgl-service-context-note strong{display:block;color:#f0e7ff;font-size:14px;margin-bottom:7px}
.fgl-service-context-note p{margin:0;color:#c5b7d7;font-size:13.5px;line-height:1.75}
.fgl-service-context-note a{display:inline-block;margin-top:10px;color:#ddc4ff;font-size:12px;font-weight:800}
.fgl-service-faq{background:#08050d}
.fgl-service-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.fgl-service-faq-item{align-self:start;border:1px solid rgba(206,177,248,.18);border-radius:13px;background:rgba(21,13,31,.76);overflow:hidden}
.fgl-service-faq-item summary{position:relative;cursor:pointer;list-style:none;padding:18px 52px 18px 19px;color:#f1e9fb;font-size:14px;line-height:1.5;font-weight:700}
.fgl-service-faq-item summary::-webkit-details-marker{display:none}
.fgl-service-faq-item summary:after{content:"";position:absolute;right:21px;top:50%;width:8px;height:8px;border-right:1.5px solid #d8bdff;border-bottom:1.5px solid #d8bdff;transform:translateY(-70%) rotate(45deg);transition:transform .2s ease}
.fgl-service-faq-item[open] summary:after{transform:translateY(-25%) rotate(225deg)}
.fgl-service-faq-answer{padding:0 19px 18px;color:#c6b9d6;font-size:13.5px;line-height:1.75}
.fgl-service-faq-answer p{margin:0 0 10px}.fgl-service-faq-answer p:last-child{margin-bottom:0}
.fgl-service-related{padding:58px 0;background:linear-gradient(90deg,#10091a,#170e25,#0b0711);border-top:1px solid var(--sp-line)}
.fgl-service-related .fgl-service-wrap{display:grid;grid-template-columns:.65fr 1.35fr;gap:36px;align-items:center}
.fgl-service-related h2{font-size:clamp(1.5rem,2.5vw,2.1rem);line-height:1.14;letter-spacing:-.04em;margin:9px 0 0}
.fgl-service-related-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.fgl-service-related-links a{display:flex;gap:10px;align-items:center;justify-content:space-between;min-height:64px;padding:14px;border:1px solid rgba(204,177,245,.18);border-radius:12px;background:rgba(9,6,14,.5);font-size:12px;color:#ded1ef;transition:background .2s,border-color .2s,transform .2s}
.fgl-service-related-links a:hover{transform:translateY(-2px);background:rgba(126,74,197,.16);border-color:rgba(201,160,255,.4)}
.fgl-service-related-links b{font-size:18px;color:#c6a4ff}
.fgl-service-bottom-cta{padding:clamp(65px,8vw,100px) 0;background:radial-gradient(ellipse at 80% 50%,rgba(123,65,205,.2),transparent 43%),linear-gradient(120deg,#0f0918,#08050d);border-top:1px solid rgba(207,179,248,.16)}
.fgl-service-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.fgl-service-cta-inner>div{max-width:760px}
.fgl-service-cta-inner h2{font-size:clamp(2rem,3.7vw,3rem);line-height:1.08;letter-spacing:-.045em;margin:12px 0}
.fgl-service-cta-inner p{font-size:15px;line-height:1.8;color:#c7b9d7;margin:0;max-width:660px}
.fgl-service-cta-inner .fgl-new-btn{white-space:nowrap;flex:0 0 auto}
.fgl-service-page--01 .fgl-service-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.fgl-service-page--05 .fgl-service-section--cards .fgl-service-card{min-height:220px}
.fgl-service-page--06 .fgl-service-intro-media{grid-template-columns:1fr}
.fgl-service-page--06 .fgl-service-photo-frame img{max-height:250px}
.fgl-service-page--07 .fgl-service-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.fgl-service-page--09 .fgl-service-section--cards .fgl-service-card{min-height:190px}
.fgl-service-page--10 .fgl-service-section--cards .fgl-service-card{min-height:165px}
.fgl-service-page--11 .fgl-service-section--compliance .fgl-service-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.fgl-service-page--14 .fgl-service-section--infra .fgl-service-card{min-height:190px}
.fgl-service-page--14 .fgl-service-intro-media{grid-template-columns:1fr}
.fgl-service-page--14 .fgl-service-photo-frame img{max-height:205px}
@media(max-width:1000px){
 .fgl-service-wrap{width:min(100% - 44px,860px)}
 .fgl-service-hero{height:min(700px,82svh);min-height:560px}
 .fgl-service-hero .fgl-slice-background{object-position:65% 50%;opacity:.8}
 .fgl-service-hero .fgl-slice-shade{background:linear-gradient(90deg,rgba(5,3,8,.97),rgba(5,3,8,.78) 56%,rgba(5,3,8,.42)),linear-gradient(0deg,#050308,transparent 25%)}
 .fgl-service-intro{grid-template-columns:1fr 1fr;gap:28px;padding-block:72px}
 .fgl-service-card-grid,.fgl-service-page--01 .fgl-service-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fgl-service-page--04 .fgl-service-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fgl-service-related .fgl-service-wrap{grid-template-columns:1fr;gap:20px}
}
@media(max-width:680px){
 .fgl-service-wrap{width:calc(100% - 36px)}
 .fgl-service-hero{height:640px;min-height:610px;max-height:none}
 .fgl-service-hero .fgl-slice-background{object-position:64% center;opacity:.54}
 .fgl-service-hero .fgl-slice-shade{background:linear-gradient(90deg,rgba(5,3,8,.94),rgba(5,3,8,.72)),linear-gradient(0deg,#050308 0%,transparent 38%)}
 .fgl-service-hero .fgl-slice-copy{padding-top:10px;justify-content:center}
 .fgl-service-hero .fgl-slice-copy h1{font-size:clamp(2.35rem,11vw,3.55rem);max-width:100%;line-height:1.04}
 .fgl-service-hero .fgl-slice-copy p{font-size:15px;line-height:1.72}
 .fgl-service-hero .fgl-new-actions{gap:9px}
 .fgl-service-hero .fgl-new-btn{padding:12px 15px;font-size:12px}
 .fgl-service-ribbon .fgl-service-wrap{padding:15px 0;display:grid;gap:10px}
 .fgl-service-ribbon-items{gap:6px}
 .fgl-service-ribbon-items span{font-size:10px;padding:7px 9px}
 .fgl-service-intro{grid-template-columns:1fr;gap:25px;padding-block:58px}
 .fgl-service-intro-copy h2{font-size:2rem}
 .fgl-service-intro-copy p{font-size:14.5px;line-height:1.8}
 .fgl-service-section{padding-block:58px}
 .fgl-service-section-head{margin-bottom:25px}
 .fgl-service-section-head h2{font-size:1.9rem}
 .fgl-service-card-grid,.fgl-service-page--01 .fgl-service-card-grid,.fgl-service-page--02 .fgl-service-section--platform-compare .fgl-service-card-grid,.fgl-service-page--13 .fgl-service-section--compare .fgl-service-card-grid,.fgl-service-page--11 .fgl-service-section--compliance .fgl-service-card-grid,.fgl-service-page--07 .fgl-service-card-grid{grid-template-columns:1fr}
 .fgl-service-page--04 .fgl-service-timeline{grid-template-columns:1fr}
 .fgl-service-card{padding:20px}
 .fgl-service-subgrid{grid-template-columns:1fr}
 .fgl-service-faq-grid{grid-template-columns:1fr}
 .fgl-service-related{padding:45px 0}
 .fgl-service-related-links{grid-template-columns:1fr}
 .fgl-service-cta-inner{display:grid;gap:24px}
 .fgl-service-cta-inner h2{font-size:2rem}
 .fgl-service-cta-inner .fgl-new-btn{justify-self:start}
}
@media(prefers-reduced-motion:reduce){
 .fgl-service-page *,.fgl-service-page *:before,.fgl-service-page *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
 .fgl-service-card:hover,.fgl-service-mini-card:hover,.fgl-service-related-links a:hover{transform:none}
}
/* Slide headings keep one semantic H1 per page while the two secondary slides remain visually prominent. */
.fgl-service-hero .fgl-slice-copy h2{max-width:770px;margin:16px 0 18px;font-size:clamp(2.5rem,5.2vw,4.8rem);line-height:1.04;letter-spacing:-.058em;font-weight:850;color:#fff;text-wrap:pretty}
@media(max-width:680px){.fgl-service-hero .fgl-slice-copy h2{font-size:clamp(2.2rem,10vw,3.2rem);max-width:100%;line-height:1.05}}
.fgl-service-section,.fgl-service-intro,.fgl-service-related,.fgl-service-bottom-cta{transition:background-color .35s ease}
.fgl-service-page--02 .fgl-service-hero .fgl-slice-background{object-position:76% 50%}
.fgl-service-page--13 .fgl-service-hero .fgl-slice-background{object-position:70% 50%}
.fgl-service-page--07 .fgl-service-intro-media .fgl-service-visual-frame{border-color:rgba(85,213,197,.28)}
.fgl-service-page--08 .fgl-service-visual-frame{box-shadow:0 22px 70px rgba(35,120,96,.12)}
.fgl-service-page--11 .fgl-service-visual-frame{border-color:rgba(85,213,197,.3)}
.fgl-service-page--14 .fgl-service-visual-frame{border-color:rgba(201,165,255,.35)}

/* Responsive picture sources: keep the established slice hero positioned on the inner img. */
.fgl-service-hero-picture{display:contents}
.fgl-service-photo-frame picture,.fgl-service-visual-frame picture{display:block;width:100%;overflow:hidden;border-radius:inherit}
.fgl-service-photo-frame picture img,.fgl-service-visual-frame picture img{display:block;width:100%;height:auto;object-fit:cover}
.fgl-service-hero .fgl-slice-background{width:100%;height:100%;object-fit:cover}

.fgl-service-section-lead{max-width:930px;margin:0 0 26px}.fgl-service-section-lead p{color:#cfc4dc;font-size:15px;line-height:1.85;margin:0 0 14px}.fgl-service-section-lead p:last-child{margin-bottom:0}
