/* JN COS TECH — Partnership */
.partnership-page{background:#fff}
.partnership-hero{position:relative;overflow:hidden;background:#ece6e1}
.partnership-hero-mark{position:absolute;right:5%;top:50%;width:min(42vw,540px);transform:translateY(-50%);filter:brightness(0) saturate(100%) invert(11%) sepia(19%) saturate(1394%) hue-rotate(337deg) brightness(91%) contrast(95%);opacity:.08;pointer-events:none}
.partnership-hero .subpage-hero-visual{opacity:.18!important}
.partnership-intro{padding:86px 0;background:#fff}
.partnership-intro-copy{max-width:900px}
.partnership-intro h2{margin:0 0 20px}
.partnership-intro p{margin:0 0 18px;max-width:900px;color:#74655d;font-size:13px;line-height:1.85}

.partnership-section{padding:86px 0}
.partnership-section.alt{background:#f2ece6}
.partnership-heading{max-width:900px;margin:0 0 38px}
.partnership-heading h2{margin:0 0 14px}
.partnership-heading p{margin:0;max-width:820px;color:#75665f;font-size:13px;line-height:1.82}

/* interactive world map */
.partnership-world{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;align-items:stretch}
.partnership-map-canvas{min-height:430px;border:1px solid #d9c8bb;background:#fff;display:flex;align-items:center;justify-content:center;padding:24px}
.partnership-map-svg{width:100%;height:auto;max-height:420px;overflow:visible}
.map-land path{fill:#e9dfd8;stroke:#d2c1b5;stroke-width:1.4}
.map-region{cursor:pointer;outline:none}
.map-region circle{fill:#fff;stroke:#8f6a53;stroke-width:3;transition:r .2s ease,fill .2s ease,stroke-width .2s ease}
.map-region text{font-family:Pretendard,sans-serif;font-size:15px;font-weight:650;fill:#6d5e55;pointer-events:none}
.map-region:hover circle,.map-region:focus circle,.map-region.is-active circle{r:17;fill:#8f6a53;stroke-width:2}
.map-region:hover text,.map-region:focus text,.map-region.is-active text{fill:#2f1b13;font-weight:760}
.partnership-map-info{border:1px solid #d9c8bb;background:#fff;padding:34px 32px;display:flex;flex-direction:column;justify-content:center}
.partnership-map-info .eyebrow{margin:0 0 12px}
.partnership-map-info h3{margin:0 0 14px;font-size:25px!important}
.partnership-map-info>p{margin:0;color:#75665f;font-size:13px;line-height:1.85}
.partnership-map-detail{margin-top:26px;padding-top:22px;border-top:1px solid #e2d7d0;color:#8f6a53;font-size:12.5px;line-height:1.75}
.partnership-map-selector{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:9px;margin-top:2px}
.partnership-map-selector button{min-height:42px;padding:0 16px;border:1px solid #d9c8bb;background:#fff;color:#675950;font:inherit;font-size:12px;font-weight:650;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}
.partnership-map-selector button:hover{transform:translateY(-2px);border-color:#b9957f}
.partnership-map-selector button.is-active{background:#2f1b13;color:#fff;border-color:#2f1b13}

.partnership-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.partnership-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.partnership-card,.partnership-model{padding:28px 28px 30px;border:1px solid #d9c8bb;background:#fff}
.partnership-card{min-height:210px}
.partnership-icon{width:44px;height:44px;display:grid;place-items:center;margin:0 0 22px;border:1px solid #dbc9bc;background:#f6f0eb;color:#8f6a53;border-radius:50%}
.partnership-icon svg{width:21px;height:21px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.partnership-card h3,.partnership-model h3{margin:0 0 12px}
.partnership-card p,.partnership-model p{margin:0;color:#75665f;font-size:12.5px;line-height:1.82}

/* expandable models — equal closed heights across both rows */
.partnership-model-grid-details{align-items:stretch;grid-auto-rows:auto}
details.partnership-model{padding:0;min-height:0;height:100%;overflow:hidden;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;background:#fff}
details.partnership-model:hover{transform:translateY(-4px);border-color:#b9957f;box-shadow:0 15px 34px rgba(54,31,21,.075)}
details.partnership-model summary{position:relative;list-style:none;cursor:pointer;padding:26px 58px 26px 26px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:18px;align-items:start;min-height:188px;box-sizing:border-box}
details.partnership-model summary::-webkit-details-marker{display:none}
details.partnership-model summary::after{content:'+';position:absolute;right:24px;top:26px;color:#8f6a53;font-size:24px;font-weight:400;line-height:1;transition:transform .2s ease}
details.partnership-model[open] summary::after{transform:rotate(45deg)}
details.partnership-model summary .partnership-icon{margin:0}
details.partnership-model summary h3{margin:1px 0 8px;min-height:46px;display:flex;align-items:flex-start}
details.partnership-model summary p{max-width:100%;min-height:68px}
.partnership-model-detail{padding:0 26px 24px 88px;border-top:1px solid #eee4dd}
.partnership-model-detail ul{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.partnership-model-detail li{position:relative;padding-left:17px;color:#75665f;font-size:12px;line-height:1.55}
.partnership-model-detail li::before{content:'↗';position:absolute;left:0;top:0;color:#9a745d;font-size:11px}

.partnership-cta{padding:78px 0;background:#2f1b13;color:#fff;text-align:center;border-top:1px solid rgba(255,255,255,.08)}
.partnership-cta h2{margin:0;color:#fff;font-size:31px!important;text-align:center!important}
.partnership-cta p{max-width:720px;margin:16px auto 0;color:#c6b7af;font-size:13px;line-height:1.8}
.partnership-cta .hero-actions{justify-content:center;margin-top:28px}
.partnership-cta .button{background:transparent;border-color:#a58d80;color:#fff}

@media(max-width:1050px){.partnership-benefit-grid{grid-template-columns:repeat(2,1fr)}.partnership-world{grid-template-columns:1fr}.partnership-map-selector{grid-column:1}}
@media(max-width:900px){.partnership-model-grid{grid-template-columns:repeat(2,1fr)}.partnership-hero-mark{width:62vw;right:-8%}.partnership-map-canvas{min-height:360px}details.partnership-model summary{min-height:176px}}
@media(max-width:720px){
 .partnership-section,.partnership-intro{padding:64px 0}
 .partnership-benefit-grid,.partnership-model-grid{grid-template-columns:1fr}
 .partnership-card{min-height:auto;padding:25px 23px}
 .partnership-hero-mark{width:90vw;right:-28%;opacity:.05}
 .partnership-map-canvas{min-height:280px;padding:10px;overflow-x:auto;justify-content:flex-start}
 .partnership-map-svg{min-width:680px}
 .partnership-map-info{padding:26px 22px}
 .partnership-map-selector{gap:7px}
 .partnership-map-selector button{min-height:40px;padding:0 13px;font-size:11px}
 details.partnership-model{height:auto}
 details.partnership-model summary{grid-template-columns:40px 1fr;padding:22px 50px 22px 22px;gap:14px;min-height:0}
 details.partnership-model summary h3,details.partnership-model summary p{min-height:0}
 details.partnership-model summary .partnership-icon{width:40px;height:40px}
 .partnership-model-detail{padding:0 22px 22px 76px}
 .partnership-cta{padding:66px 0}
 .partnership-cta .hero-actions{flex-direction:column}
 .partnership-cta .button{width:100%}
}
@media(prefers-reduced-motion:reduce){.partnership-page *{transition:none!important}}
