@charset "UTF-8";
:root{--brand-base:#7BCBAB;--brand-primary:#0DA67D;--brand-mute:#6EB0B9;--brand-accent:#FB8340;--brand-border:#D3D3D3;--text:#212529;--card-bg:#fff;--porto-verde:#104957;--porto-orange:#F39327}
.pj-wrap{color:var(--text)}
.pj-wrap h2,.pj-wrap .h3{font-size:28px;font-weight:800;color:var(--porto-verde);margin-bottom:20px;letter-spacing:-0.3px;position:relative;padding-left:16px}
.pj-wrap h2::before,.pj-wrap .h3::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:24px;background:linear-gradient(180deg,var(--brand-primary),var(--brand-base));border-radius:2px}
.pj-wrap .card{background:#fff;border:1px solid var(--brand-border);border-radius:20px;overflow:hidden;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.pj-wrap .card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,0.08);border-color:rgba(123,203,171,0.3)}
.pj-wrap .card-body{padding:32px}
.pj-wrap .card-body p{font-size:16px;line-height:1.7;color:var(--text);margin-bottom:16px}
.pj-wrap .card-body p:last-child{margin-bottom:0}
.pj-wrap .card-body ul{margin:20px 0;padding-left:0;list-style:none}
.pj-wrap .card-body ul li{position:relative;padding-left:32px;margin-bottom:14px;font-size:16px;line-height:1.6;color:var(--text)}
.pj-wrap .card-body ul li::before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;background:linear-gradient(135deg,var(--brand-primary),var(--brand-base));color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:bold;flex-shrink:0}
.pj-wrap .card-body ul li:last-child{margin-bottom:0}
.pj-wrap .card-body ol{margin:20px 0;padding-left:0;list-style:none;counter-reset:step-counter}
.pj-wrap .card-body ol li{position:relative;padding-left:50px;margin-bottom:20px;font-size:16px;line-height:1.6;color:var(--text);counter-increment:step-counter;transition:all 0.2s ease}
.pj-wrap .card-body ol li::before{content:counter(step-counter);position:absolute;left:0;top:0;width:32px;height:32px;background:linear-gradient(135deg,var(--brand-primary),var(--brand-base));color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0;box-shadow:0 4px 12px rgba(13,166,125,0.2)}
.pj-wrap .card-body ol li:not(:last-child)::after{content:"";position:absolute;left:15px;top:32px;width:2px;height:calc(100% - 12px);background:linear-gradient(180deg,var(--brand-base) 0%,rgba(123,203,171,0.3) 100%)}
.pj-wrap .card-body ol li:last-child{margin-bottom:0}
.pj-wrap .card-body ol li:hover{padding-left:55px}
.pj-wrap .card-body ol li:hover::before{transform:scale(1.1);box-shadow:0 6px 16px rgba(13,166,125,0.3)}
.pj-wrap section{margin-bottom:40px}
.pj-wrap .mb-5{margin-bottom:40px}
.pj-wrap .mb-4{margin-bottom:32px}
.pj-wrap a{text-decoration:none}
.pj-wrap a:hover{text-decoration:none}
.pj-hero{background:linear-gradient(135deg,#0a3d4a 0%,var(--porto-verde) 35%,#1a6a7a 70%,var(--brand-base) 100%);background-size:contain;background-position:top;background-repeat:no-repeat;border:0;border-radius:24px;padding:56px 32px;position:relative;overflow:hidden;box-shadow:0 20px 60px rgba(16,73,87,0.15),0 8px 20px rgba(16,73,87,0.1);margin-bottom:24px}
.pj-hero::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(123,203,171,0.15) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,0.05) 0%,transparent 50%);pointer-events:none;z-index:2}
.pj-hero>*:not(.pj-hero-overlay):not(.pj-hero-content){position:relative;z-index:3}
.pj-hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(236deg,#7bcbabbf 0%,#568e78bf 35%,rgba(26,106,122,0.95) 70%,#7bcbabbf 100%);z-index:1}
.pj-hero-content{position:relative;z-index:3}
.pj-hero-content>*{position:relative}
.tag{display:inline-block;font-size:13px;font-weight:600;letter-spacing:0.3px;padding:8px 14px;border-radius:999px;color:#ff931b;box-shadow:0 4px 12px rgba(0,0,0,0.08);backdrop-filter:blur(10px);transition:transform 0.2s ease,box-shadow 0.2s ease}
.pj-title{font-size:48px;font-weight:800;line-height:1.1;margin:24px 0 20px;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,0.15);letter-spacing:-0.5px}
.pj-sub{font-size:19px;line-height:1.6;opacity:0.95;margin:0;color:#f8fffe;font-weight:400;max-width:700px}
.pj-actions{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.btn-pj{appearance:none;border:0;border-radius:12px;padding:14px 26px;font-weight:600;font-size:15px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);box-shadow:0 4px 12px rgba(0,0,0,0.1)}
.btn-pj:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}
.btn-pj-primary{background:linear-gradient(135deg,var(--brand-primary) 0%,#0b8f6a 100%) !important;color:#fff !important}
.btn-pj-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(13,166,125,0.6)}
.btn-pj-ghost{background:rgba(255,255,255,0.95);color:var(--porto-verde) !important;border:1px solid rgba(255,255,255,0.3);backdrop-filter:blur(10px)}
.btn-pj-ghost:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 20px rgba(255,255,255,0.25)}
.btn-pj-aplica{background:#fff;color:var(--porto-orange) !important;border:1px solid rgba(255,255,255,0.3);backdrop-filter:blur(20px);box-shadow:0 8px 20px rgba(255,255,255,0.6)}
.btn-pj-aplica:hover{background:rgba(255,255,255,0.75);transform:translateY(-2px);box-shadow:0 8px 20px rgba(255,255,255,0.4)}
.pj-subhero{background:linear-gradient(135deg,#ff9840 0%,var(--porto-orange) 50%,#e67d15 100%);border-radius:24px;padding:28px 32px;margin-bottom:48px;position:relative;overflow:hidden;box-shadow:0 16px 48px rgba(243,147,39,0.2),0 6px 16px rgba(243,147,39,0.12)}
.pj-subhero::before{content:"";position:absolute;top:0;right:-10%;width:40%;height:100%;background:radial-gradient(ellipse at center,rgba(255,255,255,0.12) 0%,transparent 70%);pointer-events:none}
.pj-subhero>*{position:relative;z-index:1}
.pj-subhero p{color:#fff;font-size:16px;line-height:1.7;text-shadow:0 1px 3px rgba(0,0,0,0.1);margin-bottom:0 !important}
.pj-subhero a[href*="portofin"] span{color:var(--porto-verde) !important;background:rgba(255,255,255,0.9);padding:2px 8px;border-radius:4px;transition:all 0.2s ease}
.pj-subhero a[href*="portofin"]:hover span{background:white}
.credit-types-intro{margin:32px 0 28px;padding:28px;background:linear-gradient(135deg,rgba(123,203,171,0.08) 0%,rgba(110,176,185,0.06) 100%);border-radius:0px;border-left:4px solid var(--brand-primary);border-right:4px solid var(--brand-primary)}
.credit-types-title{font-size:22px;font-weight:700;color:var(--porto-verde);margin:0 0 12px}
.credit-types-subtitle{font-size:16px;line-height:1.6;color:var(--text);margin:0}
.credit-types-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-top:24px}
.credit-type-card{background:#fff;border:1px solid var(--brand-border);border-radius:16px;padding:24px;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);position:relative;overflow:hidden}
.credit-type-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--brand-primary),var(--brand-base));transform:scaleX(0);transform-origin:left;transition:transform 0.3s ease}
.credit-type-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(13,166,125,0.12);border-color:rgba(123,203,171,0.4)}
.credit-type-card:hover::before{transform:scaleX(1)}
.credit-type-card:hover .credit-type-icon{transform:scale(1.1)}
.credit-type-icon{font-size:36px;margin-bottom:16px;display:inline-block;transition:transform 0.3s ease}
.credit-type-name{font-size:18px;font-weight:700;color:var(--porto-verde);margin:0 0 12px;line-height:1.3}
.credit-type-desc{font-size:15px;line-height:1.6;color:var(--text-muted);margin:0}
.credit-types-list-style .credit-types-grid{display:block}
.credit-types-list-style .credit-type-card{margin-bottom:16px;padding:20px;display:flex;align-items:flex-start;gap:16px}
.credit-types-list-style .credit-type-icon{font-size:28px;margin:0;flex-shrink:0}
.credit-types-list-style .credit-type-content{flex:1}
.credit-types-list-style .credit-type-name{font-size:16px;margin-bottom:6px}
.credit-types-list-style .credit-type-desc{font-size:14px}
.cta-section{background:linear-gradient(135deg,#5da3ad 0%,var(--brand-mute) 50%,#7fc0c9 100%);border-radius:20px;padding:32px;margin-top:48px;box-shadow:0 12px 40px rgba(110,176,185,0.25);border:0;position:relative;overflow:hidden}
.cta-section::before{content:"";position:absolute;top:-50%;right:-10%;width:300px;height:300px;background:radial-gradient(circle,rgba(255,255,255,0.1) 0%,transparent 70%);pointer-events:none}
.cta-section>*{position:relative;z-index:1}
.cta-section .fw-bold{font-size:20px;font-weight:700;color:var(--porto-verde);margin-bottom:6px}
.cta-section div:not(.fw-bold){font-size:16px;color:rgba(33,37,41,0.85);display:flex;flex-direction:column;align-items:center}
.cta-section .btn-pj-cta{background:linear-gradient(135deg,var(--brand-primary) 0%,#0b8f6a 100%) !important;color:#fff !important;border:0 !important;border-radius:12px;padding:14px 28px !important;font-weight:600 !important;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);box-shadow:0 4px 12px rgba(13,166,125,0.2)}
.cta-section .btn-pj-cta:hover{transform:translateY(-2px);box-shadow:0 14px 20px rgba(13,166,125,0.35)}
html{scroll-behavior:smooth}
@media (max-width:768px){.pj-hero{border-radius:20px;min-height:340px;padding:30px 15px}.pj-title{font-size:36px;text-align:center}.tag{padding:8px 8px}.pj-sub{font-size:17px;text-align:center}.pj-subhero{padding:23px 23px}.pj-subhero p{border-radius:20px;font-size:14px}.pj-wrap h2,.pj-wrap .h3{font-size:24px}.pj-wrap .card-body{padding:18px}.cta-section{padding:24px !important}.btn-pj{width:100%}.p-4{padding:1rem !important}}
@media (min-width:769px){.credit-types-grid{grid-template-columns:repeat(2,1fr)}.cta-section{display:flex;align-items:center;gap:20px}.cta-section .btn-pj{white-space:nowrap}}
@media (min-width:1024px){.credit-types-grid{grid-template-columns:repeat(2,1fr);gap:24px}}
@media (min-width:1200px){.pj-hero{min-height:400px}}
@media (min-width:1600px){.pj-hero{min-height:400px}}