.company-page { min-height:100vh; min-height:100dvh; }
.nav-contact { padding:10px 14px; border:1px solid var(--line); border-radius:999px; color:var(--muted); background:var(--surface); font-size:12px; font-weight:650; letter-spacing:.01em; }
.company-hero { min-height:0; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(350px,.65fr); align-items:center; gap:clamp(50px,8vw,130px); max-width:1540px; margin:0 auto; padding:clamp(24px,2.5vw,40px) clamp(20px,5vw,76px) clamp(40px,4vw,64px); }
.company-copy { max-width:900px; }.company-copy h1 { max-width:950px; }.company-copy > p:not(.eyebrow) { max-width:750px; color:var(--muted); font-size:clamp(18px,1.7vw,24px); line-height:1.58; }.company-copy .company-cn { margin-top:28px; padding:18px 22px; border-left:3px solid var(--blue); border-radius:0 14px 14px 0; color:var(--muted); background:var(--surface-blue); font-size:14px; }
.identity-card { position:relative; overflow:hidden; padding:clamp(28px,4vw,48px); border:1px solid var(--line); border-radius:28px; background:#fff; box-shadow:0 20px 60px rgba(60,64,67,.11); }.identity-card::before { content:""; position:absolute; width:240px; height:240px; right:-130px; top:-110px; border:1px solid rgba(26,115,232,.2); border-radius:50%; box-shadow:0 0 0 36px rgba(26,115,232,.04),0 0 0 72px rgba(52,168,83,.025); }.identity-head { display:flex; justify-content:space-between; margin-bottom:46px; color:var(--subtle); font-size:9px; font-weight:800; letter-spacing:.15em; }.identity-head i { color:var(--blue); font-style:normal; }.identity-card > img { width:82px; height:82px; margin-bottom:34px; }.identity-card h2 { margin-bottom:36px; font-size:clamp(28px,3vw,46px); line-height:1; letter-spacing:-.04em; }.identity-card dl { margin:0; }.identity-card dl div { display:grid; grid-template-columns:.7fr 1.3fr; gap:18px; padding:17px 0; border-top:1px solid var(--line); }.identity-card dt { color:var(--subtle); font-size:10px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }.identity-card dd { margin:0; color:var(--text); font-size:13px; line-height:1.4; }.identity-card dd small { display:block; margin-top:4px; color:var(--subtle); }
.company-section { max-width:1540px; margin:0 auto; padding:clamp(44px,4.5vw,64px) clamp(20px,5vw,76px) clamp(12px,1.5vw,20px); border-top:1px solid var(--line); }.company-section-head { display:grid; grid-template-columns:.45fr 1.55fr; gap:50px; margin-bottom:42px; }.company-section-head h2 { max-width:850px; margin:0; font-size:clamp(40px,5.5vw,78px); line-height:.98; letter-spacing:-.05em; }.focus-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }.focus-grid article { min-height:220px; display:flex; flex-direction:column; justify-content:flex-start; padding:28px; border:1px solid var(--line); border-radius:22px; background:var(--surface); }.focus-grid article:nth-child(1) { border-top:4px solid var(--blue); }.focus-grid article:nth-child(2) { border-top:4px solid var(--red); }.focus-grid article:nth-child(3) { border-top:4px solid var(--yellow); }.focus-grid article:nth-child(4) { border-top:4px solid var(--green); }.focus-grid span { color:var(--blue); font-size:10px; font-weight:800; }.focus-grid h3 { margin:24px 0 16px; font-size:clamp(22px,2.1vw,31px); line-height:1.08; }.focus-grid p { margin:0; color:var(--muted); font-size:13px; line-height:1.6; }
.company-contact { max-width:1388px; min-height:340px; display:flex; align-items:flex-end; justify-content:space-between; gap:50px; margin:0 auto clamp(24px,3vw,40px); padding:clamp(38px,6vw,78px); border-radius:32px; color:#fff; background:linear-gradient(135deg,#1a73e8,#4285f4); box-shadow:0 24px 60px rgba(26,115,232,.2); }.company-contact .section-index { margin-bottom:24px; color:#d9e9ff; }.company-contact h2 { max-width:760px; margin:0; font-size:clamp(40px,5vw,72px); line-height:.98; letter-spacing:-.05em; }
.contact-details { min-width:min(100%,360px); display:grid; border:1px solid rgba(255,255,255,.28); border-radius:20px; background:rgba(255,255,255,.1); backdrop-filter:blur(10px); }.contact-details p { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0; padding:15px 18px; border-bottom:1px solid rgba(255,255,255,.16); }.contact-details p:last-child { border-bottom:0; }.contact-details span { color:#d9e9ff; font-size:10px; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }.contact-details strong { color:#fff; font-size:13px; text-align:right; }
@media (max-width:960px) { .company-hero { grid-template-columns:1fr; }.identity-card { max-width:620px; }.company-section-head { grid-template-columns:1fr; }.focus-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:700px) { .nav-contact { display:none; }.company-hero { min-height:auto; gap:28px; padding-top:24px; padding-right:max(18px,env(safe-area-inset-right)); padding-bottom:38px; padding-left:max(18px,env(safe-area-inset-left)); }.company-copy .company-cn { margin-top:20px; padding:14px 16px; }.identity-card { padding:24px; border-radius:22px; }.identity-head { margin-bottom:24px; }.identity-card > img { width:64px; height:64px; margin-bottom:22px; }.identity-card h2 { margin-bottom:26px; }.identity-card dl div { padding:14px 0; }.company-section { padding:40px max(18px,env(safe-area-inset-right)) 12px max(18px,env(safe-area-inset-left)); }.company-section-head { gap:20px; margin-bottom:28px; }.focus-grid { grid-template-columns:1fr; gap:10px; }.focus-grid article { min-height:0; padding:22px; border-radius:18px; }.focus-grid h3 { margin-top:20px; }.company-contact { min-height:0; align-items:flex-start; flex-direction:column; gap:32px; margin:0 max(14px,env(safe-area-inset-right)) 24px max(14px,env(safe-area-inset-left)); padding:34px 24px; border-radius:24px; }.company-contact .section-index { margin-bottom:18px; }.contact-details { width:100%; min-width:0; }.contact-details strong { overflow-wrap:anywhere; } }
