/* Mirai Tech - Partnership strategiche v1 */

.partnership-page { background: var(--bg); }
.partnership-page .main-nav a[aria-current="page"] { color: var(--green-bright); }

.partnership-hero {
    position: relative;
    min-height: 760px;
    height: min(88svh, 900px);
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 28%, rgba(139,214,58,.12), transparent 28%),
        radial-gradient(circle at 18% 78%, rgba(238,125,25,.08), transparent 25%),
        #090d0f;
}
.partnership-hero::after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, rgba(7,12,14,.98) 0%, rgba(7,12,14,.76) 55%, rgba(7,12,14,.42) 100%);
    pointer-events:none;
}
.partnership-hero-grid {
    position:absolute;
    inset:0;
    opacity:.18;
    background-image:
        linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
    background-size:78px 78px;
    mask-image:linear-gradient(90deg, transparent 0%, #000 45%, #000 100%);
}
.partnership-hero-content { position:relative; z-index:2; padding-top:92px; }
.partnership-hero h1 {
    max-width:1050px;
    margin:0;
    font-size:clamp(52px,7vw,102px);
    line-height:.94;
    letter-spacing:-.055em;
    font-weight:720;
}
.partnership-hero h1 span { color:#aeb7b9; font-weight:430; }
.partnership-hero-lead {
    max-width:720px;
    margin:30px 0 34px;
    color:#d4d9da;
    font-size:clamp(18px,2vw,24px);
    line-height:1.5;
    font-weight:360;
}

.partnership-facts { background:#11181b; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.partnership-facts-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.partnership-facts-grid > div {
    min-height:125px;
    padding:28px 25px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-right:1px solid var(--line);
}
.partnership-facts-grid > div:first-child { border-left:1px solid var(--line); }
.partnership-facts-grid strong { font-size:14px; letter-spacing:.045em; }
.partnership-facts-grid span { margin-top:8px; color:var(--muted); font-size:13px; line-height:1.45; }

.partnership-intro { background:var(--paper); color:var(--text-dark); }
.partnership-intro .intro-copy p:last-child { margin-bottom:0; }

.strategic-partner { background:#0d1315; color:var(--text); }
.strategic-partner-alt { background:var(--paper-2); color:var(--text-dark); }
.strategic-partner-grid {
    display:grid;
    grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
    gap:clamp(48px,8vw,120px);
    align-items:start;
}
.strategic-brand {
    position:sticky;
    top:calc(var(--header-h) + 44px);
    border:1px solid var(--line);
    background:#11181b;
}
.strategic-partner-alt .strategic-brand {
    border-color:var(--line-dark);
    background:#f4f2ec;
}
.strategic-logo-wrap {
    min-height:300px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:52px;
    background:#fff;
}
.strategic-logo-wrap img {
    width:min(100%, 330px);
    max-height:150px;
    object-fit:contain;
}
.strategic-brand-meta {
    min-height:108px;
    padding:24px 26px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-top:1px solid var(--line);
}
.strategic-partner-alt .strategic-brand-meta { border-color:var(--line-dark); }
.strategic-brand-meta span {
    color:var(--green-bright);
    font-size:10px;
    font-weight:800;
    letter-spacing:.15em;
    text-transform:uppercase;
}
.strategic-brand-meta strong { margin-top:8px; font-size:23px; letter-spacing:-.02em; }
.strategic-partner-alt .strategic-brand-meta span { color:#416a18; }
.strategic-partner-alt .strategic-brand-meta strong { color:var(--text-dark); }

.strategic-copy { padding-top:5px; }
.strategic-partner-alt .strategic-copy .eyebrow { color:#416a18; }
.strategic-copy h2 {
    max-width:810px;
    margin:0;
    font-size:clamp(42px,5vw,72px);
    line-height:1.02;
    letter-spacing:-.045em;
    font-weight:620;
}
.strategic-description { max-width:780px; margin-top:36px; }
.strategic-description p {
    margin:0 0 18px;
    color:var(--muted);
    font-size:17px;
    line-height:1.72;
}
.strategic-partner-alt .strategic-description p { color:#596164; }

.certification-callout {
    max-width:800px;
    margin-top:42px;
    padding:28px;
    display:grid;
    grid-template-columns:56px minmax(0,1fr);
    gap:22px;
    border:1px solid rgba(139,214,58,.34);
    background:rgba(139,214,58,.055);
}
.strategic-partner-alt .certification-callout {
    border-color:rgba(93,152,34,.35);
    background:rgba(93,152,34,.06);
}
.certification-mark {
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border:1px solid var(--green-bright);
    color:var(--green-bright);
    font-size:22px;
    font-weight:850;
}
.certification-label {
    display:block;
    color:var(--green-bright);
    font-size:10px;
    font-weight:800;
    letter-spacing:.16em;
}
.strategic-partner-alt .certification-label { color:#416a18; }
.certification-callout h3 { margin:7px 0 9px; font-size:25px; letter-spacing:-.025em; }
.certification-callout p { margin:0; color:var(--muted); font-size:14px; line-height:1.65; }
.strategic-partner-alt .certification-callout p { color:#626b6d; }

.strategic-skills-wrap { margin-top:88px; }
.strategic-skills-heading {
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:30px;
    margin-bottom:28px;
}
.strategic-skills-heading .eyebrow { margin-bottom:4px; }
.strategic-skills-heading h3 {
    margin:0;
    font-size:clamp(28px,3vw,42px);
    line-height:1.08;
    letter-spacing:-.035em;
}
.strategic-skills {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border-top:1px solid var(--line);
    border-left:1px solid var(--line);
}
.strategic-partner-alt .strategic-skills { border-color:var(--line-dark); }
.strategic-skill {
    min-height:285px;
    padding:27px 24px;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
}
.strategic-partner-alt .strategic-skill { border-color:var(--line-dark); }
.strategic-skill > span { color:var(--green-bright); font-size:10px; font-weight:800; }
.strategic-partner-alt .strategic-skill > span { color:#416a18; }
.strategic-skill h4 { margin:72px 0 13px; font-size:21px; line-height:1.15; letter-spacing:-.025em; }
.strategic-skill p { margin:0; color:var(--muted); font-size:13px; line-height:1.65; }
.strategic-partner-alt .strategic-skill p { color:#596063; }
.strategic-action { margin-top:30px; }
.button-outline {
    border-color:rgba(255,255,255,.3);
    background:transparent;
    color:#fff;
}
.button-outline:hover { border-color:var(--green-bright); color:var(--green-bright); }
.strategic-partner-alt .button-outline { border-color:rgba(15,25,27,.28); color:var(--text-dark); }
.strategic-partner-alt .button-outline:hover { border-color:#416a18; color:#4d8120; }

.partnership-empty { background:var(--paper); color:var(--text-dark); }
.partnership-empty p { margin:0; font-size:18px; }

.partnership-closing {
    padding:120px 0;
    background:
        radial-gradient(circle at 82% 24%, rgba(139,214,58,.12), transparent 29%),
        #101719;
    border-top:1px solid var(--line);
}
.partnership-closing-inner { max-width:980px; }
.partnership-closing h2 {
    margin:0;
    font-size:clamp(48px,6vw,84px);
    line-height:.98;
    letter-spacing:-.05em;
    font-weight:650;
}
.partnership-closing h2 span { color:#aeb7b9; font-weight:430; }
.partnership-closing p:not(.eyebrow) {
    max-width:680px;
    margin:28px 0 32px;
    color:var(--muted);
    font-size:17px;
    line-height:1.7;
}

@media (max-width:1120px) {
    .strategic-partner-grid { grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr); gap:48px; }
    .strategic-logo-wrap { min-height:260px; padding:38px; }
    .strategic-skills { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:820px) {
    .partnership-hero { min-height:650px; height:auto; padding:145px 0 88px; }
    .partnership-hero-content { padding-top:0; }
    .partnership-hero h1 { font-size:clamp(46px,12vw,72px); }
    .partnership-facts-grid { grid-template-columns:1fr 1fr; }
    .partnership-facts-grid > div { min-height:112px; border-bottom:1px solid var(--line); }
    .strategic-partner-grid { grid-template-columns:1fr; }
    .strategic-brand { position:relative; top:auto; max-width:520px; }
    .strategic-logo-wrap { min-height:220px; }
    .strategic-skills-wrap { margin-top:64px; }
    .strategic-skills-heading { display:block; }
    .strategic-skills-heading h3 { margin-top:8px; }
    .partnership-closing { padding:90px 0; }
}

@media (max-width:560px) {
    .partnership-hero { min-height:580px; padding:125px 0 70px; }
    .partnership-hero h1 { font-size:clamp(42px,13vw,60px); }
    .partnership-hero-lead { font-size:17px; }
    .partnership-facts-grid { grid-template-columns:1fr 1fr; }
    .partnership-facts-grid > div { min-height:102px; padding:20px 16px; }
    .partnership-facts-grid strong { font-size:11px; }
    .partnership-facts-grid span { font-size:11px; }
    .strategic-logo-wrap { min-height:180px; padding:30px; }
    .strategic-copy h2 { font-size:38px; }
    .strategic-description p { font-size:15px; }
    .certification-callout { grid-template-columns:1fr; padding:22px; }
    .certification-mark { width:44px; height:44px; }
    .strategic-skills { grid-template-columns:1fr; }
    .strategic-skill { min-height:230px; }
    .strategic-skill h4 { margin-top:48px; }
    .partnership-closing h2 { font-size:44px; }
}
