/* Company profile: shared structure, three established visual directions. */
body[data-company-theme] { --company-accent: #75ecff; --company-text: #f5f8ff; --company-muted: #b0bed0; --company-surface: #0a1320; --company-soft: #050b13; --company-line: rgba(164,194,229,.24); }
body[data-company-theme="2"] { --company-accent: #1769ff; --company-text: #071a39; --company-muted: #4d607a; --company-surface: #fff; --company-soft: #edf3fc; --company-line: #c6d6ed; }
body[data-company-theme="3"] { --company-accent: #d62525; --company-text: #111; --company-muted: #595650; --company-surface: #f2f0e9; --company-soft: #e8e5dd; --company-line: #b8b3a8; }
body[data-company-theme] .site-nav { gap: clamp(14px,1.5vw,24px); font-size: 14px; white-space: nowrap; }
body[data-company-theme] .site-header { background: var(--company-soft); border-bottom: 1px solid var(--company-line); }
body[data-company-theme] .hero h1 { line-height: 1.15; letter-spacing: -.04em; }
body[data-company-theme="1"] .hero-copy { width: min(810px,76%); padding-top: clamp(90px,9vw,140px); }
body[data-company-theme="1"] .hero h1 { font-size: clamp(48px,5.8vw,86px); }
body[data-company-theme="1"] .hero-lede { font-size: clamp(16px,1.35vw,20px); max-width: 590px; }
body[data-company-theme="3"] .hero h1 { line-height: 1.02; font-size: clamp(84px,8.7vw,135px); letter-spacing: -.065em; }
body[data-company-theme] section[id] { scroll-margin-top: calc(var(--header-h) + 18px); }
.company-anchor { position: absolute; scroll-margin-top: calc(var(--header-h) + 18px); }
.company-section { padding: clamp(76px,8vw,120px) 0; color: var(--company-text); }
.company-kicker { margin-bottom: 24px; color: var(--company-accent); font: 700 14px/1.6 ui-monospace,monospace; letter-spacing: .12em; }
.company-section h2 { font-size: clamp(32px,3.8vw,58px); line-height: 1.28; letter-spacing: -.025em; font-weight: 650; }
.company-section h2 em { color: var(--company-accent); font-style: normal; }
.company-section h3 { font-size: clamp(23px,2.25vw,29px); line-height: 1.4; letter-spacing: -.01em; }
.company-section p { font-size: 16px; line-height: 1.9; }
.company-section small { font-size: 14px; line-height: 1.6; letter-spacing: .055em; }
.company-intro { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(36px,6vw,85px); align-items: start; }
.company-copy { padding-top: 44px; color: var(--company-muted); }
.company-copy p+p { margin-top: 18px; }
.company-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 50px; border-block: 1px solid var(--company-line); }
.company-facts>div { padding: 23px 20px; border-right: 1px solid var(--company-line); }
.company-facts>div:first-child { padding-left: 0; }
.company-facts>div:last-child { border-right: 0; }
.company-facts dt { color: var(--company-muted); font-size: 14px; line-height: 1.6; }
.company-facts dd { margin-top: 10px; font-size: 16px; line-height: 1.7; font-weight: 600; }
.company-heading { display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-bottom: 40px; }
.company-heading>p { color: var(--company-muted); max-width: 390px; }
.company-business,.company-rights { background: var(--company-soft); }
.company-business-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.company-business-grid article { min-width: 0; padding: 30px; background: var(--company-surface); border: 1px solid var(--company-line); border-radius: 20px; transition: border-color .25s ease,transform .25s ease; }
.company-business-grid article:hover { transform: translateY(-4px); border-color: var(--company-accent); }
.company-card-top { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; color: var(--company-muted); }
.company-card-top b { color: var(--company-accent); font: 22px/1.4 ui-monospace,monospace; }
.company-business-grid h3 { margin-top: 44px; }
.company-business-grid p { color: var(--company-muted); margin-top: 16px; }
.company-tag { display: inline-block; margin-top: 24px; color: var(--company-accent); font-size: 14px; padding: 6px 11px; border: 1px solid var(--company-line); border-radius: 100px; }
.company-format-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.company-format-grid article { min-width: 0; }
.company-format-grid figure { position: relative; overflow: hidden; aspect-ratio: 4/5; border-radius: 20px; background: var(--company-surface); }
.company-format-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.company-format-grid article:hover img { transform: scale(1.035); }
.company-format-grid figure>span { position: absolute; inset: 18px auto auto 18px; font: 20px ui-monospace,monospace; background: rgba(0,0,0,.74); color: #fff; padding: 8px 12px; border-radius: 8px; }
.company-format-grid article>div { padding: 25px 0 0; }
.company-format-grid small { color: var(--company-accent); }
.company-format-grid h3 { margin-top: 8px; }
.company-format-grid p { margin-top: 12px; color: var(--company-muted); }
.company-visual-note { margin-top: 24px; color: var(--company-muted); font-size: 14px !important; }
.company-rights-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.company-rights-grid article { padding: 38px; border: 1px solid var(--company-line); border-radius: 20px; background: var(--company-surface); }
.company-rights-grid small { color: var(--company-accent); }
.company-rights-grid h3 { margin-top: 22px; }
.company-rights-grid p { color: var(--company-muted); margin-top: 18px; }
.company-rights-grid ul { margin-top: 26px; }
.company-rights-grid li { padding: 12px 0; border-top: 1px solid var(--company-line); font-size: 16px; line-height: 1.7; }
.company-rights-tags,.company-connect-topics,.company-contact-tags { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 27px; }
.company-rights-tags span,.company-connect-topics span,.company-contact-tags span { padding: 7px 12px; border: 1px solid var(--company-line); border-radius: 100px; font-size: 14px; line-height: 1.6; }
.company-rights-note { border-top: 1px solid var(--company-line); padding-top: 24px; margin-top: 30px !important; font-size: 14px !important; }
.company-connect-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.company-connect-grid article { padding: 42px; border: 1px solid var(--company-line); border-radius: 20px; }
.company-connect-grid article>span { color: var(--company-accent); font: 14px/1.6 ui-monospace,monospace; }
.company-connect-grid h3 { margin-top: 38px; font-size: 32px; }
.company-connect-grid p { color: var(--company-muted); margin-top: 19px; }
.company-connect-topics { color: var(--company-muted); }
.company-link { display: inline-flex; padding: 12px 0; margin-top: 24px; border-bottom: 1px solid var(--company-accent); color: var(--company-accent); font-size: 16px; font-weight: 650; }
.company-contact { background: var(--company-soft); border-top: 1px solid var(--company-line); }
.company-contact-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 70px; align-items: center; }
.company-contact-lede { color: var(--company-muted); margin-top: 26px; }
.company-contact-tags { color: var(--company-muted); }
.company-contact-info { padding: 34px; border: 1px solid var(--company-line); border-radius: 20px; background: var(--company-surface); }
.company-contact-info h3 { font-size: 20px; line-height: 1.7; }
.company-contact-info dl { margin-top: 24px; }
.company-contact-info dl>div { padding: 15px 0; border-top: 1px solid var(--company-line); }
.company-contact-info dt { color: var(--company-muted); font-size: 14px; }
.company-contact-info dd { margin-top: 8px; font-size: 16px; line-height: 1.8; overflow-wrap: anywhere; }
.company-contact-info>p { font-size: 14px; color: var(--company-muted); margin-top: 20px; }
body[data-company-theme] .site-footer .shell { font-size: 14px; line-height: 1.8; }
body[data-company-theme] .site-footer .shell>span { max-width: 520px; }
body[data-company-theme] a:focus-visible,body[data-company-theme] button:focus-visible { outline: 3px solid var(--company-accent); outline-offset: 5px; }
body[data-company-theme="2"] .company-business-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
body[data-company-theme="2"] .company-business-grid article { display: grid; grid-template-columns: 80px 1fr; gap: 0 20px; }
body[data-company-theme="2"] .company-card-top { display: block; grid-row: 1/4; }
body[data-company-theme="2"] .company-card-top small { display: none; }
body[data-company-theme="2"] .company-card-top b { font-size: 46px; color: #c6d9fb; }
body[data-company-theme="2"] .company-business-grid h3 { margin-top: 0; }
body[data-company-theme="2"] .company-tag { justify-self: start; }
body[data-company-theme="3"] .company-section h2,body[data-company-theme="3"] .company-section h3 { font-family: "Songti SC","SimSun",serif; }
body[data-company-theme="3"] .company-business-grid { display: block; border-top: 2px solid #111; }
body[data-company-theme="3"] .company-business-grid article { display: grid; grid-template-columns: 85px 250px 1fr 105px; align-items: center; gap: 24px; border: 0; border-bottom: 1px solid var(--company-line); border-radius: 0; padding: 26px 0; }
body[data-company-theme="3"] .company-card-top small { display: none; }
body[data-company-theme="3"] .company-business-grid h3,body[data-company-theme="3"] .company-business-grid p,body[data-company-theme="3"] .company-tag { margin-top: 0; }
body[data-company-theme="3"] .company-tag { border: 0; padding: 0; color: var(--company-muted); text-align: right; }
body[data-company-theme="3"] .company-business-grid article:hover { transform: none; background: #fff; }
body[data-company-theme="3"] .company-format-grid figure,body[data-company-theme="3"] .company-rights-grid article,body[data-company-theme="3"] .company-connect-grid article,body[data-company-theme="3"] .company-contact-info { border-radius: 0; }
body[data-company-theme="3"] .company-format-grid img { filter: grayscale(.9); }
body[data-company-theme="3"] .company-format-grid article>div { border-top: 5px solid var(--company-accent); margin-top: 16px; }
@media(max-width:1100px) {
  body[data-company-theme] .brand { width: 205px; flex-shrink: 0; }
  body[data-company-theme] .brand img { max-width: 205px; height: auto; }
  body[data-company-theme] .site-nav { gap: 14px; }
  .company-business-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body[data-company-theme="3"] .company-business-grid article { grid-template-columns: 60px 210px 1fr; }
  body[data-company-theme="3"] .company-tag { display: none; }
}
@media(max-width:920px) {
  .company-intro,.company-contact-grid { grid-template-columns: 1fr; gap: 28px; }
  .company-copy { padding-top: 0; }
  .company-heading { display: block; }
  .company-heading>p { margin-top: 22px; }
  .company-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .company-facts>div { padding: 22px 16px; }
  .company-facts>div:first-child { padding-left: 16px; }
  .company-facts>div:nth-child(2) { border-right: 0; }
  .company-facts>div:nth-child(-n+2) { border-bottom: 1px solid var(--company-line); }
  .company-rights-grid,.company-connect-grid { grid-template-columns: 1fr; }
}
@media(max-width:640px) {
  body[data-company-theme="1"] .hero-copy { width: 100%; padding: 32px 23px 40px; }
  body[data-company-theme="1"] .hero h1 { font-size: clamp(35px,9.5vw,48px); }
  body[data-company-theme="1"] .hero-frame { min-height: 720px; }
  body[data-company-theme="1"] .hero-lede { font-size: 16px; }
  body[data-company-theme="2"] .hero h1 { font-size: clamp(39px,10vw,54px); }
  body[data-company-theme="3"] .hero h1 { font-size: clamp(72px,20vw,100px); }
  body[data-company-theme] .hero-overline,body[data-company-theme] .hero-title>p,body[data-company-theme] .hero-type>p { font-size: 14px; letter-spacing: .07em; }
  .company-section { padding: 70px 0; }
  .company-section h2 { font-size: clamp(29px,7.5vw,39px); }
  .company-business-grid,body[data-company-theme="2"] .company-business-grid { grid-template-columns: 1fr; }
  .company-business-grid article { padding: 26px; }
  .company-business-grid h3 { margin-top: 30px; }
  body[data-company-theme="2"] .company-business-grid article { grid-template-columns: 48px 1fr; gap: 0 16px; }
  body[data-company-theme="2"] .company-card-top b { font-size: 32px; }
  body[data-company-theme="3"] .company-business-grid article { grid-template-columns: 40px 1fr; gap: 12px 16px; }
  body[data-company-theme="3"] .company-business-grid p { grid-column: 2; }
  .company-format-grid { grid-template-columns: 1fr; gap: 40px; }
  .company-format-grid figure { aspect-ratio: 4/4.5; }
  .company-rights-grid article,.company-connect-grid article { padding: 28px 24px; }
  .company-contact-info { padding: 26px 22px; }
  .company-facts { margin-top: 36px; }
  .company-facts>div { padding: 20px 14px; }
  .company-facts dd { font-size: 15px; }
  .company-facts>div:first-child { padding-left: 14px; }
  body[data-company-theme] .site-footer .shell>span { max-width: none; }
}
