/* Churras Express — Parceiros & Fornecedores v1 */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#090909;color:#f5f2ec}
.partner-public-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.partner-public-top{position:sticky;top:0;z-index:80;background:rgba(8,8,8,.96);border-bottom:1px solid #202020;backdrop-filter:blur(14px)}
.partner-public-top-inner{min-height:76px;display:flex;align-items:center;gap:26px}
.partner-public-brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:900}
.partner-public-brand img{width:50px;height:50px;object-fit:contain}
.partner-public-nav{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.partner-public-nav a{padding:10px 12px;border-radius:999px;text-decoration:none;color:#c7c7c7;font-size:13px;font-weight:800}
.partner-public-nav a:hover,.partner-public-nav a.active{color:#111;background:#ff6817}
.partner-public-hero{padding:100px 0 86px;background:radial-gradient(circle at 80% 0%,rgba(255,104,23,.13),transparent 35%),#0a0a0a;border-bottom:1px solid #1e1e1e}
.partner-public-kicker{display:block;color:#a8cf45;font-size:11px;letter-spacing:.22em;font-weight:900;margin-bottom:18px}
.partner-public-hero h1,.partner-detail-copy h1{font-family:"Arial Narrow",Impact,Arial,sans-serif;text-transform:uppercase;line-height:.96;margin:0}
.partner-public-hero h1{font-size:clamp(48px,7vw,92px)}
.partner-public-hero h1 em{font-style:normal;color:#ff6817}
.partner-public-hero p{max-width:760px;color:#b9b9b9;font-size:18px;line-height:1.8;margin:28px 0 0}
.partner-public-section{padding:84px 0;background:#0d0d0d}
.partner-supplier-section{background:#f2efe8;color:#151515}
.partner-section-head{margin-bottom:34px}
.partner-section-head span{font-size:11px;font-weight:900;letter-spacing:.2em;color:#ff6817}
.partner-section-head h2{margin:8px 0 0;font-family:"Arial Narrow",Impact,Arial,sans-serif;font-size:clamp(36px,4.4vw,58px);text-transform:uppercase}
.partner-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.partner-card{background:#151515;border:1px solid #272727;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:.2s ease}
.partner-card:hover{transform:translateY(-4px);border-color:#ff6817}
.partner-supplier-section .partner-card{background:#fff;border-color:#ded9cf;color:#171717}
.partner-card.featured{box-shadow:0 0 0 1px rgba(168,207,69,.48),0 24px 70px rgba(0,0,0,.14)}
.partner-card-logo{min-height:190px;padding:28px;background:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none}
.partner-card-logo img{display:block;max-width:100%;width:auto;max-height:130px;object-fit:contain}
.partner-card-logo span,.partner-detail-logo span{font-size:62px;font-weight:900;color:#ff6817}
.partner-card-body{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}
.partner-card-type{color:#a8cf45;font-size:10px;letter-spacing:.16em;font-weight:900;text-transform:uppercase}
.partner-supplier-section .partner-card-type{color:#607c16}
.partner-card h3{font-size:25px;margin:0}
.partner-card h3 a{color:inherit;text-decoration:none}
.partner-card p{color:#a9a9a9;line-height:1.65;margin:0;flex:1}
.partner-supplier-section .partner-card p{color:#5c5c5c}
.partner-card-actions{display:flex;align-items:center;gap:14px;justify-content:space-between;margin-top:10px;flex-wrap:wrap}
.partner-card-more,.partner-card-external{font-size:12px;font-weight:900;text-decoration:none}
.partner-card-more{color:#ff6817}
.partner-card-external{color:#a7a7a7}
.partner-supplier-section .partner-card-external{color:#666}
.partner-public-empty{padding:90px 0;text-align:center}
.partner-detail-hero{padding:80px 0;background:radial-gradient(circle at 85% 10%,rgba(255,104,23,.12),transparent 33%),#0b0b0b}
.partner-detail-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.6fr);gap:60px;align-items:center}
.partner-detail-logo{background:#fff;border-radius:24px;min-height:300px;padding:42px;display:flex;align-items:center;justify-content:center}
.partner-detail-logo img{max-width:100%;max-height:220px;object-fit:contain}
.partner-breadcrumb{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12px;color:#777;margin-bottom:30px}
.partner-breadcrumb a{color:#aaa;text-decoration:none}
.partner-detail-copy h1{font-size:clamp(48px,6.2vw,84px)}
.partner-detail-lead{font-size:19px;color:#b8b8b8;line-height:1.75;max-width:760px;margin:24px 0}
.partner-external-button{display:inline-flex;padding:14px 18px;border-radius:12px;background:#ff6817;color:#111;font-weight:900;text-decoration:none}
.partner-detail-content{padding:80px 0;background:#f3f0e9;color:#171717}
.partner-detail-text{max-width:900px}
.partner-detail-text h2{font-family:"Arial Narrow",Impact,Arial,sans-serif;text-transform:uppercase;font-size:42px;margin:0 0 24px}
.partner-rich-text{font-size:17px;line-height:1.9;color:#444}
.partner-detail-back{padding:36px 0;background:#111;border-top:1px solid #242424}
.partner-detail-back a{color:#ff6817;text-decoration:none;font-weight:900}
@media(max-width:900px){
  .partner-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .partner-detail-grid{grid-template-columns:1fr;gap:32px}
  .partner-detail-logo{min-height:230px}
}
@media(max-width:680px){
  .partner-public-container{width:calc(100% - 28px)}
  .partner-public-top-inner{padding:10px 0;flex-wrap:wrap}
  .partner-public-brand span{display:none}
  .partner-public-nav{width:100%;margin-left:0;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
  .partner-public-nav a{white-space:nowrap}
  .partner-public-hero{padding:72px 0 62px}
  .partner-card-grid{grid-template-columns:1fr}
  .partner-public-section{padding:62px 0}
  .partner-card-logo{min-height:160px}
  .partner-detail-hero{padding:54px 0}
  .partner-detail-logo{min-height:200px;padding:30px}
}

/* PATCH-017 — ajuste forte de logos para qualquer proporção */
.partner-card-logo{height:190px;min-height:190px;overflow:hidden}
.partner-card-logo img{display:block;width:100%;height:100%;max-width:100%;max-height:130px;object-fit:contain;object-position:center}
.partner-detail-logo{height:300px;min-height:300px;overflow:hidden}
.partner-detail-logo img{display:block;width:100%;height:100%;max-width:100%;max-height:220px;object-fit:contain;object-position:center}
@media(max-width:900px){.partner-detail-logo{height:240px;min-height:240px}.partner-detail-logo img{max-height:180px}}

/* =========================================================
   ACESSO AO PROGRAMA DE PARCEIROS
   ========================================================= */

.partner-public-access{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin:26px 0 34px;
    padding:20px 22px;
    background:#111;
    border:1px solid #2d2d2d;
    border-left:4px solid #ff6817;
    border-radius:14px;
}

.partner-public-access__copy{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.partner-public-access__copy strong{
    color:#fff;
    font-size:18px;
    font-weight:800;
}

.partner-public-access__copy span{
    color:#999;
    font-size:13px;
    line-height:1.5;
}

.partner-public-access__actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.partner-access-btn{
    display:inline-flex;
    min-height:42px;
    align-items:center;
    justify-content:center;
    padding:10px 16px;
    border-radius:9px;
    font-size:13px;
    font-weight:800;
    text-decoration:none;
    transition:.18s ease;
}

.partner-access-btn--primary{
    background:#ff6817;
    border:1px solid #ff6817;
    color:#111;
}

.partner-access-btn--primary:hover{
    background:#ff7d35;
    border-color:#ff7d35;
}

.partner-access-btn--secondary{
    background:#191919;
    border:1px solid #444;
    color:#eee;
}

.partner-access-btn--secondary:hover{
    border-color:#ff6817;
    color:#ff8a46;
}

@media(max-width:760px){
    .partner-public-access{
        flex-direction:column;
        align-items:flex-start;
    }

    .partner-public-access__actions{
        width:100%;
    }

    .partner-access-btn{
        flex:1;
    }
}

@media(max-width:480px){
    .partner-public-access__actions{
        flex-direction:column;
    }

    .partner-access-btn{
        width:100%;
        box-sizing:border-box;
    }
}


/* =========================================================
   PATCH-021 - CONTATOS PUBLICOS DOS PARCEIROS
   ========================================================= */

.partner-contact-links{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    width:100%;
}

.partner-contact-links--compact{
    grid-template-columns:1fr;
    margin-top:4px;
    padding-top:14px;
    border-top:1px solid #2a2a2a;
}

.partner-contact-link{
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:3px;
    padding:11px 12px;
    border:1px solid #353535;
    border-radius:10px;
    background:#191919;
    color:#f2f2f2;
    text-decoration:none;
    transition:.18s ease;
}

.partner-contact-link:hover{
    border-color:#ff6817;
    background:#211a16;
    transform:translateY(-1px);
}

.partner-contact-link span{
    color:#ff8b4b;
    font-size:11px;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.partner-contact-link small{
    min-width:0;
    overflow:hidden;
    color:#b9b9b9;
    font-size:12px;
    line-height:1.35;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.partner-contact-link--whatsapp{
    border-color:rgba(71,190,116,.30);
}

.partner-contact-link--whatsapp span{
    color:#73d89a;
}

.partner-detail-contact-section{
    padding:58px 0;
    background:#111;
    border-top:1px solid #242424;
}

.partner-detail-contact-box{
    display:grid;
    grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr);
    gap:34px;
    align-items:start;
}

.partner-detail-contact-heading span{
    color:#ff6817;
    font-size:10px;
    font-weight:900;
    letter-spacing:.16em;
}

.partner-detail-contact-heading h2{
    margin:7px 0 8px;
    color:#fff;
    font-family:"Arial Narrow",Impact,Arial,sans-serif;
    font-size:34px;
    text-transform:uppercase;
}

.partner-detail-contact-heading p{
    margin:0;
    color:#999;
    line-height:1.5;
}

.partner-card .partner-contact-links--compact{
    margin-top:auto;
}

.partner-supplier-section .partner-contact-links--compact{
    border-top-color:#ded9cf;
}

.partner-supplier-section .partner-contact-link{
    background:#f6f3ed;
    border-color:#d9d4ca;
    color:#171717;
}

.partner-supplier-section .partner-contact-link small{
    color:#555;
}

@media(max-width:760px){
    .partner-detail-contact-box{
        grid-template-columns:1fr;
    }

    .partner-contact-links{
        grid-template-columns:1fr;
    }
}

/* PATCH-029 — UX premium contatos parceiros */
.partner-contact-stack{display:grid;grid-template-columns:1fr;gap:10px;width:100%;margin-top:18px}.partner-contact-stack--large{gap:12px}.partner-contact-row{position:relative;width:100%;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:11px 13px;border:1px solid rgba(255,255,255,.105);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),#151515;color:#f4f4f4;text-decoration:none;box-shadow:0 8px 20px rgba(0,0,0,.16);overflow:hidden;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease,filter .16s ease}.partner-contact-stack--large .partner-contact-row{min-height:68px;padding:14px 16px;border-radius:14px}.partner-contact-row::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#ff6817;opacity:.78;transition:width .16s ease,opacity .16s ease}.partner-contact-row:hover{transform:translateY(-2px);border-color:rgba(255,104,23,.62);background:linear-gradient(180deg,rgba(255,104,23,.085),rgba(255,104,23,.035)),#171512;box-shadow:0 14px 30px rgba(0,0,0,.24)}.partner-contact-row:hover::before{width:5px;opacity:1}.partner-contact-row:active{transform:translateY(0) scale(.995);filter:brightness(1.08);box-shadow:0 5px 14px rgba(0,0,0,.20)}.partner-contact-row:focus-visible{outline:3px solid rgba(255,104,23,.32);outline-offset:2px;border-color:#ff7a26}.partner-contact-badge{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;border:1px solid rgba(255,104,23,.26);background:rgba(255,104,23,.09);color:#ff8d4a}.partner-contact-stack--large .partner-contact-badge{width:40px;height:40px;border-radius:11px}.partner-contact-badge svg{width:18px;height:18px;fill:currentColor}.partner-contact-stack--large .partner-contact-badge svg{width:20px;height:20px}.partner-contact-text{min-width:0;display:flex;flex-direction:column;gap:3px}.partner-contact-text strong{color:#f8f8f8;font-size:11px;font-weight:900;line-height:1.1;letter-spacing:.055em;text-transform:uppercase}.partner-contact-stack--large .partner-contact-text strong{font-size:12px}.partner-contact-text small{display:block;max-width:100%;color:#aaa;font-size:12px;line-height:1.34;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.partner-contact-stack--large .partner-contact-text small{color:#b7b7b7;font-size:14px}.partner-contact-arrow{color:#777;font-size:25px;line-height:1;transition:transform .16s ease,color .16s ease}.partner-contact-row:hover .partner-contact-arrow{transform:translateX(2px);color:#ff8a46}.partner-contact-row--whatsapp::before{background:#36c56b}.partner-contact-row--whatsapp .partner-contact-badge{color:#68dc92;border-color:rgba(54,197,107,.30);background:rgba(54,197,107,.09)}.partner-contact-row--whatsapp:hover{border-color:rgba(54,197,107,.52);background:linear-gradient(180deg,rgba(54,197,107,.085),rgba(54,197,107,.03)),#141715}.partner-contact-row--instagram::before{background:#d95caf}.partner-contact-row--instagram .partner-contact-badge{color:#ec8dcb;border-color:rgba(217,92,175,.30);background:rgba(217,92,175,.09)}.partner-contact-row--instagram:hover{border-color:rgba(217,92,175,.52);background:linear-gradient(180deg,rgba(217,92,175,.08),rgba(217,92,175,.028)),#171417}.partner-contact-row--email::before{background:#e3a14c}.partner-contact-row--email .partner-contact-badge{color:#f1b86f}.partner-contact-row--phone::before{background:#ff7a26}.partner-contact-row--website::before{background:#d9873a}@media(max-width:700px){.partner-contact-row,.partner-contact-stack--large .partner-contact-row{min-height:60px;padding:11px 12px;border-radius:11px}.partner-contact-stack--large .partner-contact-text small{font-size:13px}}@media(max-width:420px){.partner-contact-row{grid-template-columns:auto minmax(0,1fr)}.partner-contact-arrow{display:none}}

