/* Vida Divina Studio | Centro de Aplicações e Conhecimento.
   CSS isolado, sem alterar o visual dos módulos existentes. */
.lp-hub-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(160px,.5fr);align-items:center;gap:18px;padding:clamp(22px,4.5vw,46px);margin:0 0 26px;background:radial-gradient(circle at 88% 20%,rgba(233,190,103,.25),transparent 45%),linear-gradient(122deg,#51212e 0%,#792e39 49%,#234f40 100%);border:1px solid rgba(255,238,211,.24);border-radius:27px;color:#fff8eb;box-shadow:0 22px 42px rgba(63,35,35,.16)}
.lp-hub-hero:before{content:"";position:absolute;right:-50px;top:-65px;width:260px;height:260px;border:1px solid rgba(236,198,127,.3);border-radius:50%;box-shadow:0 0 0 35px rgba(236,198,127,.05),0 0 0 75px rgba(236,198,127,.03);pointer-events:none}
.lp-hub-hero h2{font-size:clamp(2.3rem,4.6vw,4.3rem);line-height:1.08;letter-spacing:-.025em;margin:10px 0 14px;color:#fff8eb;max-width:750px}
.lp-hub-hero p{color:#fae8d4;font-size:.96rem;line-height:1.75;max-width:690px;margin:0 0 22px}
.lp-hub-kicker{display:inline-flex;align-items:center;gap:7px;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#f0d5a6}
.lp-hub-kicker:before{content:"";width:8px;height:8px;background:#e8c98b;border-radius:50%}
.lp-hub-art{position:relative;display:flex;justify-content:center;align-items:center;font:normal clamp(100px,13vw,185px)/1 Georgia,serif;color:#e7c283;filter:drop-shadow(0 11px 24px rgba(21,28,23,.25));transform:rotate(-10deg)}
.lp-hub-hero .btn{white-space:normal}
.lp-hub-stats{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 29px}
.lp-hub-stat{display:inline-flex;gap:9px;align-items:center;padding:9px 13px;background:#f7f4e9;border:1px solid #e3e5d4;border-radius:99px;color:#43634c;font-size:.76rem;font-weight:750}
.lp-hub-stat b{color:#6e303a}
.lp-hub-section{margin:28px 0 32px}
.lp-hub-heading{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap;margin:0 0 17px}
.lp-hub-heading .eyebrow{color:#8e6851}
.lp-hub-heading h2{font-size:clamp(1.9rem,3.5vw,2.75rem);margin:5px 0 5px;color:#244934}
.lp-hub-heading p{margin:0;color:#667a68;font-size:.84rem;max-width:620px;line-height:1.65}
.lp-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.lp-hub-tool{position:relative;min-width:0;display:flex;flex-direction:column;gap:10px;padding:19px 18px;border:1px solid #e4e9de;border-radius:20px;background:#fffefa;color:#244934;text-decoration:none;box-shadow:0 8px 25px rgba(31,61,34,.055);transition:transform .18s,box-shadow .18s,border-color .18s}
a.lp-hub-tool:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(31,61,34,.12);border-color:#a8c7aa}
a.lp-hub-tool:focus-visible{outline:3px solid #bd985b;outline-offset:3px}
.lp-hub-tool[data-tone=gold]{background:linear-gradient(170deg,#fff9eb,#fffefa 65%)}
.lp-hub-tool[data-tone=green]{background:linear-gradient(170deg,#edf7ef,#fffefa 68%)}
.lp-hub-tool[data-tone=rose]{background:linear-gradient(170deg,#fbeced,#fffefa 65%)}
.lp-hub-tool[data-tone=cream]{background:linear-gradient(170deg,#f7f5ed,#fffefa 65%)}
.lp-hub-tool.is-locked{background:#f5f4f0;border-style:dashed;box-shadow:none}
.lp-hub-tool .lp-hub-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#eaf2e8;color:#35684c;font-size:24px}
.lp-hub-tool[data-tone=rose] .lp-hub-icon{background:#f1dde0;color:#813e4a}
.lp-hub-tool[data-tone=gold] .lp-hub-icon{background:#f6e8ca;color:#79532c}
.lp-hub-tool.is-locked .lp-hub-icon{background:#e7e7e3;color:#747d72}
.lp-hub-tool h3{font:800 .99rem/1.35 "DM Sans",Arial,sans-serif;letter-spacing:0;margin:0}
.lp-hub-tool p{font-size:.79rem;line-height:1.58;color:#63796b;margin:0;flex:1}
.lp-hub-tool .lp-hub-action{color:#7b4047;font-weight:800;font-size:.75rem;margin-top:3px}
.lp-hub-tool.is-locked .lp-hub-action{color:#6b736c}
.lp-hub-tool .lp-hub-perm{font-size:.67rem;color:#777b71}
.lp-hub-contribute{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:24px;align-items:center;background:linear-gradient(120deg,#f3eddf,#e8f1e5);border:1px solid #d7e3d1;padding:clamp(20px,4vw,32px);border-radius:24px;margin:28px 0}
.lp-hub-contribute h2{font-size:clamp(2rem,3.3vw,2.7rem);color:#28523b;margin:6px 0 11px}
.lp-hub-contribute p{font-size:.88rem;line-height:1.7;color:#45644b;max-width:660px}
.lp-hub-contribute .flex{gap:10px;flex-wrap:wrap}
.lp-hub-contribute-icon{display:grid;place-items:center;min-height:150px;font:normal 140px/1 Georgia,serif;color:#7caa7f;opacity:.7}
.lp-hub-safety{margin:22px 0;color:#66786a;font-size:.79rem;line-height:1.7;max-width:900px}
.lp-hub-safety strong{color:#355d42}
@media(max-width:1040px){.lp-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.lp-hub-hero{grid-template-columns:1fr;border-radius:21px;padding:24px 20px}.lp-hub-hero h2{font-size:clamp(2.25rem,10vw,3.15rem)}.lp-hub-art{display:none}.lp-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.lp-hub-tool{padding:15px 12px;border-radius:16px}.lp-hub-tool h3{font-size:.87rem}.lp-hub-tool p{font-size:.74rem}.lp-hub-contribute{grid-template-columns:1fr}.lp-hub-contribute-icon{display:none}}
@media(max-width:390px){.lp-hub-grid{grid-template-columns:1fr}.lp-hub-hero .btn{width:100%;text-align:center}.lp-hub-tool{padding:17px}}
@media(prefers-reduced-motion:reduce){.lp-hub-tool{transition:none}a.lp-hub-tool:hover{transform:none}}

.lp-hub-promo{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:18px 0 24px;padding:20px 24px;border-radius:21px;border:1px solid #dfd0b9;background:linear-gradient(115deg,#fdf1e0 0%,#f4e8e2 52%,#ecf3e5 100%);box-shadow:0 10px 24px rgba(75,51,37,.055)}
.lp-hub-promo .eyebrow{color:#93634c}
.lp-hub-promo h3{font-size:clamp(1.55rem,3vw,2.2rem);color:#5b3440;margin:4px 0 5px}
.lp-hub-promo p{font-size:.83rem;color:#526953;line-height:1.6;margin:0}
.lp-hub-promo .btn{flex-shrink:0;white-space:normal;text-align:center}
.lp-hub-request{color:#7b4047;font-weight:800;font-size:.75rem;text-decoration:underline;text-underline-offset:3px}
.lp-hub-request:focus-visible{outline:2px solid #945d61;outline-offset:3px}
@media(max-width:720px){.lp-hub-promo{padding:19px 17px}.lp-hub-promo .btn{width:100%}}
