:root{
  --green:#27633b;--greenDark:#174a2b;--ink:#161a17;--muted:#626862;
  --cream:#f5f0e8;--card:rgba(255,255,255,.94);--line:rgba(35,40,35,.12);
  --shadow:0 10px 28px rgba(60,48,33,.09);--navy:#1f2c28
}
*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#f4efe7}
button,a{font:inherit}.partnerPortal{min-height:100vh;padding:22px;background:linear-gradient(90deg,rgba(250,247,240,.87),rgba(250,247,240,.58)),url('assets/spain-essentials-collage-v1.png') center/cover fixed no-repeat}.portalShell{max-width:1080px;margin:0 auto}.portalHeader{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 16px;border:1px solid var(--line);border-radius:20px;background:rgba(250,247,241,.94);box-shadow:var(--shadow);backdrop-filter:blur(10px)}
.portalBrand{display:flex;align-items:center;gap:11px;text-decoration:none;color:inherit}.portalBrand img{width:58px;height:58px;object-fit:contain;border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(29,52,35,.10)}.portalBrand b{display:block;font-size:26px;letter-spacing:-.035em;color:var(--ink)}.portalBrand b span{color:var(--green)}.portalBrand small{display:block;margin-top:2px;color:var(--green);font-weight:700}.portalLang{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.portalLang button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;font-weight:800;color:#53605a;cursor:pointer}.portalLang button.active{background:var(--green);border-color:var(--green);color:#fff}
.portalHero{text-align:center;padding:58px 10px 24px}.portalEyebrow{display:inline-block;padding:7px 12px;border-radius:999px;background:rgba(233,241,231,.96);color:var(--green);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.portalHero h1{margin:13px 0 8px;color:var(--ink);font-size:46px;line-height:1.05;letter-spacing:-1.4px}.portalHero p{max-width:760px;margin:0 auto;color:#455047;font-size:18px;line-height:1.55}.portalCard{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow);backdrop-filter:blur(9px)}.portalGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.portalGrid article{padding:20px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.9);box-shadow:0 5px 15px rgba(50,40,30,.04)}.stepNo{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font-weight:900}.portalGrid h2{margin:13px 0 7px;color:var(--ink);font-size:19px}.portalGrid p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.portalNotice{margin-top:18px;padding:16px 18px;border:1px solid #e9dcac;border-radius:15px;background:#fff7df}.portalNotice b{color:#5f5222}.portalNotice p{margin:5px 0 0;color:#655c39;font-size:13px;line-height:1.5}.portalActions{display:flex;gap:12px;justify-content:center;margin-top:23px}.portalBtn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border-radius:14px;font-weight:850;text-decoration:none;border:1px solid var(--line);box-shadow:0 3px 10px rgba(50,40,30,.04)}.portalBtn.primary{background:var(--green);color:#fff;border-color:var(--green)}.portalBtn.primary:hover{background:var(--greenDark)}.portalBtn.secondary{background:#fff;color:var(--green)}.portalFoot{text-align:center;color:#697169;font-size:12px;margin:14px 0 0}.backLink{display:inline-block;margin:18px 4px 0;color:var(--green);font-weight:850;text-decoration:none}
@media(max-width:760px){.partnerPortal{padding:11px;background-attachment:scroll;background-position:58% center}.portalHeader{padding:10px 11px}.portalBrand img{width:48px;height:48px;border-radius:14px}.portalBrand b{font-size:21px}.portalBrand small{display:none}.portalLang button{padding:6px 8px;font-size:12px}.portalHero{padding:38px 4px 18px}.portalHero h1{font-size:31px}.portalHero p{font-size:15px}.portalCard{padding:16px;border-radius:19px}.portalGrid{grid-template-columns:1fr}.portalActions{flex-direction:column}.portalBtn{width:100%}}
