/* ============================================================ About Us — pinned sections with scroll-linked transitions #au-1 : mask darkens + intro/corner hide + slogan rises in #au-3 : photo zooms to fullscreen + fades, then logo/text reveal ============================================================ */ .au-main { position: relative; z-index: 1; } .site-footer { position: relative; z-index: 3; } /* CSS sticky pin (native GPU compositing — smoother than JS pin) */ .au-pin { position: relative; height: 300vh; } .au-screen { position: sticky; top: 0; height: 100vh; overflow: hidden; } #au-1 { z-index: 1; } #au-3 { z-index: 2; } /* full-bleed photo + base veil */ .au-bg { position: absolute; inset: 0; z-index: 0; background-size: cover; background-position: center; } .au-bg::after { content: ""; position: absolute; inset: 0; background: rgba(1,15,30,0.30); } .au-corner-img { position: absolute; right: 0; bottom: 0; z-index: 2; height: auto; pointer-events: none; } .au-inner { position: relative; z-index: 1; width: 100%; max-width: var(--container); margin: 60px auto 0; padding: var(--header-h) 32px; text-align: left; color: #fff; } .au-text { margin-left: 0; margin-right: auto; } /* mask overlay — fades in (clear -> dark), scroll-linked */ .au-mask { position: absolute; inset: 0; z-index: 3; background: rgba(1,15,30,0.55); opacity: 0; } /* slogan overlay — center-lower; slogan rises in (NIO-style) via .is-current */ .au-slogan-layer { position: absolute; inset: 0; z-index: 4; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: var(--header-h) 32px; padding-top: 16vh; text-align: center; color: #fff; } .au-title { font-family: var(--font-display); font-weight: 900; font-size: clamp(2rem, 5vw, 2.4rem); line-height: 1.1; color: #fff; margin-bottom: 26px; text-shadow: 0 2px 20px rgba(0,0,0,0.45); } .au-text { font-size: clamp(1rem, 1.4vw, 1.1rem); line-height: 1.85; color: rgba(255,255,255,0.92); max-width: 820px; text-shadow: 0 1px 12px rgba(0,0,0,0.4); } .au-slogan { font-family: var(--font-display); font-weight: 800; font-size: clamp(2.2rem, 6vw, 2.6rem); line-height: 1.1; color: #fff; text-shadow: 0 2px 24px rgba(0,0,0,0.5); margin-bottom: 24px; } .au-slogan-cn { font-size: clamp(1.2rem, 2.4vw, 2rem); letter-spacing: 0.3em; color: var(--orange-300); text-shadow: 0 1px 12px rgba(0,0,0,0.5); } /* slogan entry/exit is driven by the GSAP timeline in about-us.js */ /* ============================================================ Section #au-3 — Strong Resources: image zoom-fade -> logo reveal ============================================================ */ .au-zoom-img { position: absolute; left: 50%; top: 68%; width: min(711px, 82vw); height: min(560px, 58vh); transform: translate(-50%, -50%) scale(1); transform-origin: center; background-size: cover; background-position: center; z-index: 1; box-shadow: 0 24px 70px rgba(0,0,0,0.45); } /* black veil over the zooming photo — fades IN instead of fading the photo out */ .au-zoom-mask { position: absolute; inset: 0; z-index: 2; background: #000; opacity: 0; } /* title + intro (top, centered, not vertically centered) */ .au-sec-head { position: absolute; top: 0; left: 0; right: 0; z-index: 3; padding: calc(var(--header-h) + 56px) 32px 0; text-align: center; color: #fff; } .au-sec-title { font-family: var(--font-display); font-weight: 700; font-size: clamp(1.8rem, 4vw, 2rem); line-height: 1.1; color: #202020; margin-bottom: 18px; } .au-sec-text { font-size: clamp(0.95rem, 1.3vw, 1rem); line-height: 1.8; color: #202020; max-width: 760px; margin: 0 auto; } /* centered logo + text reveal */ .au-reveal { position: absolute; inset: 0; z-index: 4; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 32px; text-align: center; color: #fff; opacity: 0; } .au-logo-big { display: flex; align-items: center; justify-content: center; margin-bottom: 28px; } .au-logo-big .logo-img { height: clamp(44px, 6vw, 76px); } .au-reveal-text { font-size: clamp(1rem, 1.4vw, 1.15rem); line-height: 1.85; color: rgba(255,255,255,0.92); max-width: 720px; } @media (max-width: 760px) { .au-inner { text-align: left; } .au-gps__cards { grid-template-columns: 1fr 1fr; } .au-gps__split { grid-template-columns: 1fr; } .au-gps { padding: 80px 0; } .au-gps__wide, .au-gps__split { margin-top: 60px; } /* grid/flex children must shrink below content min-width, else the carousel track stretches the 1fr column to 393px and overflows the viewport */ .au-gps__split > *, .au-gps__data, .au-gps__viewport { min-width: 0; max-width: 100%; } } /* initial states + GPU compositing for smooth scroll */ .au-bg { transform: scale(1.04); } .au-bg, .au-inner, .au-corner-img, .au-mask, .au-zoom-img, .au-zoom-mask, .au-sec-head, .au-reveal { will-change: transform, opacity; } /* ============================================================ Global Presence, Local Service — white background section ============================================================ */ .au-gps { background: #ffffff; padding: 120px 0; } .au-gps__inner { max-width: 1400px; margin: 0 auto; padding: 0 40px; } .au-gps__title { font-family: var(--font-display); font-weight: 700; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.1; letter-spacing: -0.01em; color: #111; margin-bottom: 24px; text-align: center; } .au-gps__text { font-size: clamp(1rem, 1.3vw, 1.1rem); line-height: 1.8; color: #333; max-width: 900px; margin-bottom: 60px; text-align: center; margin-inline: auto; } /* 4 images in a row (plain, no labels) */ .au-gps__cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; } .au-gps__card-img { width: 100%; object-fit: cover; display: block; } /* wide image */ .au-gps__wide { max-width: 1000px; margin: 100px auto 0; padding: 0 40px; } .au-gps__wide-img { width: 100%; display: block; } .au-gps__wide-img:hover { transform: scale(1.04); transition: transform .5s var(--ease); } .au-gps__split { display: grid; grid-template-columns: 1.7fr 1fr; gap: 32px; max-width: 1000px; margin: 100px auto 0; padding: 0 40px; } .au-gps__data { display: flex; flex-direction: column; } .au-gps__viewport { overflow: hidden; border-radius: 8px; } .au-gps__track { display: flex; transition: transform .55s cubic-bezier(.22,1,.36,1); will-change: transform; } .au-gps__data-card { flex: 0 0 100%; } .au-gps__data-img { width: 100%; aspect-ratio: 16 / 10; border-radius: 8px; background-size: cover; background-position: center; } .au-gps__data-body { padding: 16px 4px 0; } .au-gps__data-body h4 { font-family: var(--font-display); font-weight: 700; font-size: 1.15rem; color: #111; margin-bottom: 8px; } .au-gps__data-body p { font-size: 0.92rem; color: #555; line-height: 1.6; } /* carousel pager — horizontal bars, left-aligned */ .au-gps__dots { display: flex; justify-content: flex-start; gap: 10px; margin-top: 20px; } .au-gps__dots button { width: 28px; height: 3px; border: 0; border-radius: 2px; background: #d9dee6; cursor: pointer; padding: 0; transition: background .3s, width .3s; } .au-gps__dots button.active { background: var(--orange-500); width: 44px; } .au-gps__feature { position: relative; border-radius: 8px; overflow: hidden; min-height: 400px; } .au-gps__feature-img { position: absolute; inset: 0; background: url(../image/about-us/right.jpg) center / cover no-repeat; display: flex; align-items: center; padding: 40px 44px; } /* title sits outside the vertical line; the line spans only the list below it */ .au-gps__feature-title { font-family: var(--font-display); font-weight: 800; font-size: clamp(1.6rem, 2vw, 1.5rem); line-height: 1.2; letter-spacing: 0.01em; background: linear-gradient(88.61deg, #FF6000 7.43%, #FFA557 98.82%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; margin-bottom: 18px; } .au-gps__feature-list { position: relative; padding-left: 26px; } /* vertical line drawn as a pseudo element so it stops exactly at the first / last text line instead of spanning the whole padded box */ .au-gps__feature-list::before { content: ""; position: absolute; left: 0; top: 17px; bottom: 17px; /* ≈ one half-leading (line-height 3) */ width: 1px; background: #ffffff; } .au-gps__feature-list p { font-family: var(--font-display); font-weight: 600; font-size: 1.05rem; color: #ffffff; line-height: 3.5; padding: 0; text-shadow: 0 1px 10px rgba(0,0,0,0.45); } .au-gps__feature-list p + p { margin-top: 12px; } .au-slogan, .au-slogan-cn { opacity: 0; transform: translate3d(0, 50px, 0); transition: opacity .3s linear, transform .3s linear; } .au-slogan-layer.is-current .au-slogan { opacity: 1; transform: translateZ(0); transition: opacity .6s linear .3s, transform .6s linear .3s; } .au-slogan-layer.is-current .au-slogan-cn { opacity: 1; transform: translateZ(0); transition: opacity .6s linear .5s, transform .6s linear .5s; }