.partner-container { width:var(--content-width); margin-inline:auto; }
.partner-hero { background:#000c3c; color:#fff; }
.partner-hero-inner { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:64px; min-height:600px; padding-block:72px; }
.partner-eyebrow { font-size:14px; margin-bottom:32px; opacity:.7; }
.partner-hero h1 { font-size:48px; font-weight:400; line-height:1.3; letter-spacing:-1px; }
.partner-lead { font-size:16px; line-height:1.8; margin-top:24px; color:#c5cee0; }
.partner-hero .cta { margin-top:40px; }
.partner-hero-image { position:relative; min-width:0; }
.partner-hero-image svg { display:block; width:100%; aspect-ratio:1.4; overflow:hidden; }
.partner-hero-image span { display:block; margin-top:16px; font-size:12px; color:#c5cee0; letter-spacing:2px; }
.partner-jump { display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid #ddd; }
.partner-jump a { padding:28px 0; font-size:16px; }
.partner-jump span { font-size:12px; color:#777; margin-right:16px; }
.partner-sections { padding-block:32px 80px; }
.partner-section { display:grid; grid-template-columns:1fr 1.4fr; column-gap:96px; padding-block:64px; border-bottom:1px solid #ddd; scroll-margin-top:80px; }
.partner-number { font-size:14px; color:#0091d2; }
.partner-en { font-size:12px; color:#777; margin:24px 0 10px; }
.partner-intro h2 { font-size:32px; font-weight:400; line-height:1.4; }
.partner-description { font-size:18px; line-height:1.9; }
.partner-english { font-size:14px; color:#666; line-height:1.7; margin-top:16px; }
.partner-contact { display:flex; flex-direction:column; align-items:start; gap:8px; margin:24px 0; font-size:14px; line-height:1.6; }
.partner-contact a { overflow-wrap:anywhere; }
.partner-form-wrap { grid-column:1/-1; background:#f2f4f5; padding:40px; margin-top:40px; }
.partner-form-wrap[hidden], .partner-result[hidden] { display:none; }
.partner-form-wrap h3 { font-size:22px; font-weight:400; margin-bottom:28px; }
.partner-fields { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.partner-fields label { font-size:14px; line-height:1.6; }
.partner-fields label span { color:#666; }
.partner-fields input, .partner-fields select, .partner-fields textarea, .partner-result textarea { display:block; width:100%; margin-top:8px; padding:12px 14px; border:1px solid #ccc; background:#fff; color:#161616; font:inherit; border-radius:0; min-width:0; }
.partner-fields input, .partner-fields select { min-height:48px; }
.partner-fields textarea { resize:vertical; min-height:120px; }
.partner-fields textarea:focus-visible,.partner-fields select:focus-visible { outline:2px solid #0091d2; outline-offset:2px; }
.field-wide { grid-column:1/-1; }
.partner-form-actions { display:flex; align-items:center; gap:24px; margin-top:28px; }
.partner-form-actions .cta { flex-shrink:0; }
.partner-form-actions p { font-size:12px; color:#666; line-height:1.7; }
.partner-result { margin-top:32px; font-size:14px; }
.partner-result textarea { font-size:14px; line-height:1.6; margin-bottom:20px; }
.partner-closing { background:#e4e9eb; padding:64px 0; text-align:center; }
.partner-closing h2 { font-size:28px; font-weight:400; }
.partner-closing p { font-size:14px; color:#666; margin:20px 0; }
.partner-closing a { font-size:24px; }
@media(max-width:1024px) { .partner-hero-inner { gap:32px; min-height:480px; padding-block:48px; } .partner-hero h1 { font-size:36px; } .partner-section { column-gap:40px; } .partner-intro h2 { font-size:28px; } }
@media(max-width:649.98px) { .partner-hero-inner { grid-template-columns:1fr; gap:32px; padding-block:40px; } .partner-hero h1 { font-size:32px; } .partner-eyebrow { margin-bottom:24px; } .partner-lead { font-size:14px; } .partner-hero .cta { margin-top:24px; } .partner-hero-image svg { aspect-ratio:1.6; } .partner-jump { gap:8px; } .partner-jump a { font-size:12px; padding:20px 0; } .partner-jump span { display:block; margin-bottom:8px; } .partner-section { grid-template-columns:1fr; gap:24px; padding-block:40px; } .partner-en { margin-top:16px; } .partner-description { font-size:16px; } .partner-form-wrap { padding:24px 16px; margin-top:0; } .partner-fields { grid-template-columns:1fr; gap:20px; } .partner-form-actions { align-items:start; flex-direction:column; gap:16px; } .partner-form-wrap h3 { font-size:20px; } .partner-sections { padding-block:0 48px; } .partner-closing { padding-block:48px; } .partner-closing h2 { font-size:24px; } }

/* Full-bleed partnership hero with readable overlay copy. */
.partner-hero { position: relative; isolation: isolate; overflow: hidden; }
.partner-hero-inner { display: flex; align-items: center; min-height: 600px; padding-block: 72px; }
.partner-hero-inner > div:first-child { position: relative; z-index: 2; max-width: 580px; }
.partner-hero-image { position: absolute; inset: 0; z-index: -2; }
.partner-hero-image svg { width: 100%; height: 100%; aspect-ratio: auto; }
.partner-hero-image span { display: none; }
.partner-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(0,12,60,.87), rgba(0,12,60,.5) 40%, rgba(0,12,60,.08) 75%); pointer-events: none; }
.partner-lead, .partner-eyebrow { color: #fff; }
@media (max-width: 649.98px) {
 .partner-hero-inner { min-height: calc(100svh - 50px); align-items: flex-start; padding-block: 48px 64px; }
 .partner-hero-inner > div:first-child { width: 100%; }
 .partner-hero::after { background: linear-gradient(rgba(0,12,60,.83), rgba(0,12,60,.4) 52%, rgba(0,12,60,.1)); }
}

/* Retain the original desktop/tablet hero height after the full-width image change. */
@media (min-width: 650px) and (max-width: 1024px) { .partner-hero-inner { min-height: 480px; padding-block: 48px; } }
/* Contact copy and always-visible application form share each row. */
.partner-section { grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr); gap:48px; align-items:start; padding-block:48px; }
.partner-info .partner-intro { margin-bottom:24px; }
.partner-info .partner-description { line-height:1.8; }
.partner-section > .partner-form-wrap { grid-column:auto; margin-top:0; padding:32px; min-width:0; }
.partner-info { min-width:0; }
.partner-info .partner-contact { overflow-wrap:anywhere; }
@media(max-width:1024px) { .partner-section { grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr); gap:24px; } .partner-section > .partner-form-wrap { padding:24px; } }
@media(max-width:767px) { .partner-section { grid-template-columns:1fr; gap:24px; padding-block:32px; } .partner-section > .partner-form-wrap { padding:24px 16px; } .partner-fields { grid-template-columns:1fr; } }

/* Prominent, easy-to-tap partnership contact links. */
.partner-info .partner-contact { font-size:20px; font-weight:600; gap:12px; margin-top:28px; }
.partner-contact a { display:inline-block; padding:4px 0; }
.partner-contact a:hover,.partner-contact a:focus-visible { text-decoration:underline; text-underline-offset:5px; }
@media(max-width:767px) { .partner-info .partner-contact { font-size:18px; } }
.partner-info > .partner-description + .partner-description { margin-top:20px; }
#cooperation-consultation .partner-contact p { font-size:14px; font-weight:400; margin:0; color:#666; }
#cooperation-consultation .partner-contact h3 { font-size:20px; margin-bottom:8px; }
#cooperation-consultation .partner-contact { font-size:17px; }
#cooperation-consultation [hidden] { display:none; }
/* Black-and-gold artwork: keep the trophy to the right of the headline. */
.partner-hero { background:#000; }
.partner-hero-image img { position:absolute; width:auto; max-width:none; height:220%; left:58%; top:50%; transform:translate(-50%,-50%); }
.partner-hero::after { background:linear-gradient(90deg,rgba(0,0,0,.45),transparent 48%); }
@media(max-width:1024px) and (min-width:650px) { .partner-hero-image img { left:73%; height:190%; } }
@media(max-width:649.98px) {
 .partner-hero-inner { min-height:780px; }
 .partner-hero-image img { height:115%; left:50%; top:auto; bottom:-22%; transform:translateX(-50%); }
 .partner-hero::after { background:linear-gradient(#000 0%,rgba(0,0,0,.65) 28%,transparent 52%); }
}
