/* ============================================================ Global Presence — full-page scroll-snap page (linked after style.css; reuses its tokens + .ph-* gradients) ============================================================ */ /* fullpage behaviour is driven by JS (css/global-presence.js) */ .gp-main { background: transparent; position: relative; z-index: 1; } /* lift footer + header above the fixed background */ .site-footer { position: relative; z-index: 2; } /* one fixed background shared by the whole page */ .gp-pagebg { position: fixed; inset: 0; z-index: 0; background-image: url(../image/presence-bg.jpg); background-size: cover; background-position: center; } /* ---------- each screen = one viewport ---------- */ .gp-screen { position: relative; height: 100vh; display: flex; align-items: center; overflow: hidden; } .gp-screen:not(.gp-overview) { align-items: flex-start; } /* per-screen overlay tint over the shared background (region screens) */ .gp-overlay { position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(255,255,255,0.6) 0%, rgba(14,39,64,0.6) 99.99%); } .gp-inner { position: relative; z-index: 2; width: 100%; max-width: var(--container); margin: 40px auto; padding: var(--header-h) 32px 0; } .gp-panel { width: 100%; } /* decorative corner image (e.g. region map) */ .gp-corner-img { position: absolute; right: 48px; bottom: 48px; z-index: 2; height: auto; pointer-events: none; } .gp-title { font-family: var(--font-display); font-weight: 700; font-size: clamp(2.4rem, 6vw, 3.5rem); line-height: 1.02; color: #0b141d; margin-bottom: 22px; } .gp-title1 { font-family: var(--font-display); font-weight: 700; font-size: clamp(2.4rem, 6vw, 2.5rem); line-height: 1.02; color: #0b141d; margin-bottom: 22px; } .gp-lead { color: #1f2d3d; font-size: clamp(1rem, 1.4vw, 1.15rem); line-height: 1.7; margin-bottom: 30px; } .gp-overview-inner { display: flex; flex-direction: column; align-items: flex-end; text-align: right; } .gp-nav-list { width: min(340px, 60%); margin-top: 8px; } .gp-nav-list li { margin: 0; } .gp-nav-list a { display: block; width: 100%; text-align: right; font-family: var(--font-display); font-weight: 600; font-size: clamp(1.05rem, 1.8vw, 1.5rem); color: #0b141d; padding: 16px 0; border-bottom: 1px solid rgba(11,20,29,0.25); text-shadow: 0 1px 10px rgba(255,255,255,0.35); transition: color .2s, border-color .2s; } .gp-nav-list a:hover { color: var(--orange-500); border-color: var(--orange-500); } @keyframes gp-wheel { 0% { opacity: 0; top: 6px; } 40% { opacity: 1; } 80% { opacity: 0; top: 16px; } 100% { opacity: 0; } } /* ---------- responsive ---------- */ @media (max-width: 760px) { .gp-overview-inner { align-items: flex-end; } .gp-corner-img { width: 55vw; right: 12px; bottom: 12px; opacity: .45; } }