/* Geographic accents on the opening screen; Trinity's identity stays primary. */
.portal-hero{isolation:isolate}
.portal-intro,.portal-paths,.portal-dubai{position:relative;z-index:1}
.hero-country-flags{position:absolute;inset:0 0 auto;height:520px;z-index:0;pointer-events:none;overflow:hidden;opacity:.16;-webkit-mask-image:linear-gradient(#000 0%,#000 38%,transparent 98%);mask-image:linear-gradient(#000 0%,#000 38%,transparent 98%);animation:flagsReveal 2.4s ease-out both}
.country-flag{position:absolute;max-width:none;width:clamp(620px,76vw,1380px);height:auto;transform-origin:center;will-change:transform}
.flag-us{top:-12%;left:-21%;transform:rotate(-8deg);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 50%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 50%,transparent 100%);animation:usSilkDrift 24s ease-in-out infinite}
.flag-ae{top:3%;right:-23%;transform:rotate(8deg);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 48%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 48%,#000 100%);animation:aeSilkDrift 27s ease-in-out infinite}
.hero-country-flags::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#06131d26,transparent 15%,#06131d9c 43%,#06131d88 57%,transparent 87%,#06131d26)}
.flag-silk-light{position:absolute;inset:-20%;background:linear-gradient(112deg,transparent 19%,#f5f3ee16 26%,transparent 32%,#06131d55 39%,transparent 45%,#f5f3ee0f 59%,transparent 67%);animation:silkLightDrift 22s ease-in-out infinite}
@keyframes flagsReveal{from{opacity:0}to{opacity:.16}}
@keyframes usSilkDrift{0%,100%{transform:translate(0,0) rotate(-8deg) scale(1.015)}50%{transform:translate(8px,5px) rotate(-7.5deg) scale(1.035)}}
@keyframes aeSilkDrift{0%,100%{transform:translate(0,0) rotate(8deg) scale(1.02)}50%{transform:translate(-8px,4px) rotate(7.5deg) scale(1.04)}}
@keyframes silkLightDrift{0%,100%{transform:translateX(-1%);opacity:.6}50%{transform:translateX(2%);opacity:1}}
@media(max-width:760px){.hero-country-flags{height:650px;opacity:.13;animation-name:flagsRevealMobile}.country-flag{width:850px}.flag-us{left:-390px;top:-5%}.flag-ae{right:-470px;top:13%}}
@keyframes flagsRevealMobile{from{opacity:0}to{opacity:.13}}
@media(prefers-reduced-motion:reduce){.hero-country-flags,.country-flag,.flag-silk-light{animation:none;will-change:auto}.flag-us{transform:rotate(-8deg)}.flag-ae{transform:rotate(8deg)}}
@media print{.hero-country-flags,.country-flag,.flag-silk-light{animation:none;will-change:auto}}
