/* FinanciaTuProyecto.org — isolated responsive frontend */
:root { --ftp-navy:#082d52; --ftp-dark:#061d38; --ftp-blue:#0965d9; --ftp-teal:#06bf99; --ftp-green:#14ca9c; --ftp-ink:#0d2746; --ftp-muted:#65768c; --ftp-line:#e6edf5; --ftp-fog:#f5f9fe; --ftp-white:#fff; --ftp-width:1250px; --ftp-radius:17px; }
body.ftp-full-page { margin:0; background:#fff; }
.ftp-full-page *, .ftp-portal *, .ftp-site-header *, .ftp-site-footer * {box-sizing:border-box;}
.ftp-full-page,.ftp-portal,.ftp-site-header,.ftp-site-footer {font-family:'DM Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ftp-ink);}
.ftp-portal {width:100%;max-width:none !important;overflow:hidden;background:#fff;font-size:16px;line-height:1.6;}
.ftp-portal h1,.ftp-portal h2,.ftp-portal h3,.ftp-site-header h2,.ftp-site-footer h2 {font-family:'Plus Jakarta Sans','DM Sans',sans-serif;line-height:1.25;margin:0;letter-spacing:-.035em;font-weight:800;}
.ftp-portal p,.ftp-site-footer p {margin:0;}
.ftp-portal a,.ftp-site-header a,.ftp-site-footer a {text-decoration:none;}
.ftp-portal button,.ftp-portal input,.ftp-portal select,.ftp-portal textarea,.ftp-site-header button {font:inherit;}
.ftp-portal button,.ftp-site-header button {cursor:pointer;}
.ftp-icon {display:inline-block;vertical-align:middle;flex:none;}
.ftp-container {max-width:var(--ftp-width);width:calc(100% - 64px);margin-left:auto;margin-right:auto;}
.ftp-sr-only {border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;}
.ftp-skip {position:absolute;top:-100px;left:1em;z-index:9999;background:#fff;color:#003869;padding:12px;}
.ftp-skip:focus {top:8px;}
.ftp-btn {display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 23px;min-height:49px;border-radius:11px;font-size:14px;font-weight:800;line-height:1.3;border:1px solid transparent;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;white-space:normal;text-align:center;cursor:pointer;}
.ftp-btn:hover {transform:translateY(-2px);box-shadow:0 10px 22px rgba(6,35,70,.13);}
.ftp-btn-primary {background:#075fd1;color:#fff !important;border-color:#075fd1;}
.ftp-btn-primary:hover {background:#054cae;}
.ftp-btn-teal {background:var(--ftp-teal);color:#052b3a !important;border-color:var(--ftp-teal);}
.ftp-btn-teal:hover {background:#17dab4;}
.ftp-btn-outline {color:#fff !important;border-color:rgba(255,255,255,.75);background:rgba(255,255,255,.05);}
.ftp-btn-outline-dark {color:var(--ftp-navy)!important;border-color:#c3d3e7;background:#fff;}
.ftp-btn-white {color:#0758be!important;background:white;box-shadow:0 7px 18px #051d3725;}
/* branded chrome */
.ftp-site-header {background:#fff;position:relative;z-index:100;border-bottom:1px solid #e7edf5;}
.ftp-site-header .ftp-topbar {display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:83px;}
.ftp-brand {display:inline-flex;align-items:center;gap:10px;color:#092b52!important;line-height:1;flex-shrink:0;}
.ftp-brand-symbol {display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(140deg,#13ce9c,#03a996);color:#fff;transform:rotate(-8deg);}
.ftp-brand-text {display:flex;flex-direction:column;gap:5px;}
.ftp-brand-text strong {font-family:'Plus Jakarta Sans','DM Sans',sans-serif;font-weight:800;font-size:23px;letter-spacing:-1.3px;white-space:nowrap;}
.ftp-brand-text strong span {color:#0bb991;}
.ftp-brand-text small {font-size:8px;letter-spacing:2px;font-weight:800;color:#5c7089;white-space:nowrap;}
.ftp-nav {display:flex;align-items:center;gap:24px;}
.ftp-nav a {color:#273f5b;display:flex;align-items:center;min-height:46px;font-size:13.5px;font-weight:700;border-bottom:3px solid transparent;padding:3px 0 0;transition:color .18s ease;}
.ftp-nav a:hover,.ftp-nav a.ftp-current {color:#0761d2;border-bottom-color:#0865df;}
.ftp-nav-cta {min-height:43px;padding:12px 16px;font-size:12px;white-space:nowrap;}
.ftp-menu-toggle {display:none;color:#09365c;background:#eaf4ff;border:1px solid #dbe8f5;border-radius:10px;padding:10px;}
/* hero */
.ftp-hero {background:radial-gradient(ellipse at 60% 0,#1a639e 0%,transparent 38%),linear-gradient(108deg,#052d52 0%,#062946 54%,#0b4168 100%);color:#fff;position:relative;isolation:isolate;}
.ftp-hero:before {content:"";position:absolute;inset:0;background-image:radial-gradient(#68b6df55 1px,transparent 1px);background-size:27px 27px;opacity:.22;pointer-events:none;}
.ftp-hero:after {content:"";pointer-events:none;position:absolute;left:-4%;right:-4%;bottom:-30px;height:67px;background:#fff;transform:rotate(-1.15deg);z-index:0;}
.ftp-hero-inner {display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);gap:28px;align-items:center;min-height:532px;position:relative;z-index:1;padding-top:65px;padding-bottom:92px;}
.ftp-hero-copy {position:relative;z-index:3;}
.ftp-hero-kicker {display:inline-flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.9px;font-weight:800;color:#a6f4e3;margin-bottom:17px;}
.ftp-kicker-dot {display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ftp-green);box-shadow:0 0 0 5px #06bf992f;}
.ftp-hero h1 {font-size:clamp(34px,3.6vw,54px);letter-spacing:-2.3px;color:white;line-height:1.12;max-width:720px;}
.ftp-hero h1 em {font-style:normal;color:#53e5c1;}
.ftp-hero-copy>p {font-size:16px;line-height:1.75;color:#e5f3fe;max-width:588px;margin-top:22px;}
.ftp-hero-search {background:#fff;display:flex;align-items:center;gap:12px;padding:6px 7px 6px 17px;box-shadow:0 15px 45px #001b3e50;border-radius:12px;max-width:620px;margin-top:27px;color:#53718c;}
.ftp-hero-search input {height:47px;background:transparent;color:#1a3552;border:0;outline:none;min-width:0;flex:1;font-size:14px;padding:0;}
.ftp-hero-search button {display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;color:#fff;background:#0760ce;font-weight:800;font-size:13px;height:47px;padding:0 20px;white-space:nowrap;}
.ftp-hero-search button:hover {background:#064fa7;}
.ftp-hero-buttons {display:flex;gap:12px;flex-wrap:wrap;margin-top:14px;}
.ftp-hero-copy>.ftp-hero-note {display:flex;align-items:center;gap:7px;margin-top:20px;font-size:12px;color:#cae9f9;}
.ftp-hero-visual {position:relative;min-width:0;height:420px;overflow:visible;filter:drop-shadow(0 16px 20px #01192b35);}
.ftp-hero-visual:before {content:"";position:absolute;inset:20px 0 20px 10px;border-radius:90px 55px 70px 100px;background:linear-gradient(45deg,#01aab34d,#7ecaff55);transform:rotate(6deg);}
.ftp-hero-visual img {position:absolute;left:0;top:40px;width:109%;height:340px;object-fit:cover;object-position:center;clip-path:polygon(3% 6%,97% 3%,100% 88%,73% 100%,5% 94%,0 62%);border-radius:15px;mask-image:linear-gradient(to right,transparent 0%,#000 14%,#000 100%);}
.ftp-hero-float {position:absolute;display:flex;align-items:center;gap:9px;padding:10px 15px;background:#fffffff0;color:#103d62;box-shadow:0 15px 30px #001a3548;border:1px solid #e6effb;border-radius:14px;font-size:12px;font-weight:800;max-width:185px;}
.ftp-hero-float svg {color:#0961d3;}
.ftp-hero-float-1 {top:16px;left:10%;transform:rotate(-5deg);}
.ftp-hero-float-2 {bottom:13px;right:0;transform:rotate(5deg);}
/* common sections */
.ftp-section-pad {padding:64px 0;}
.ftp-categories-section {padding-top:45px;padding-bottom:35px;}
.ftp-featured-section {padding-top:35px;padding-bottom:75px;background:linear-gradient(#fff,#fbfdff);}
.ftp-section-head {display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px;}
.ftp-eyebrow {display:block;color:#07a487;font-size:10px;letter-spacing:2.2px;font-weight:800;text-transform:uppercase;margin-bottom:9px;}
.ftp-section-head h2,.ftp-insights-section h2 {font-size:clamp(23px,2.2vw,32px);color:#0a2c50;}
.ftp-section-head p {color:var(--ftp-muted);font-size:14px;margin-top:10px;}
.ftp-text-link {color:#0863d1!important;display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:800;white-space:nowrap;padding-bottom:6px;}
.ftp-text-link:hover {color:#003c89!important;}
.ftp-category-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.ftp-category {display:flex;gap:13px;align-items:center;min-height:84px;border-radius:13px;padding:13px 16px;border:1px solid transparent;transition:transform .2s ease,box-shadow .2s ease;color:#173555!important;}
.ftp-category>span {display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:#ffffffa9;flex:none;}
.ftp-category>strong {font-size:13.5px;font-weight:800;flex:1;}
.ftp-category>svg {opacity:.7;}
.ftp-category:hover {transform:translateY(-3px);box-shadow:0 8px 22px #0e36561a;}
.ftp-category-pink {background:#fff0f4;color:#c33258!important;}
.ftp-category-blue {background:#edf5ff;color:#1e6bd0!important;}
.ftp-category-yellow {background:#fff7e6;color:#bb8500!important;}
.ftp-category-green {background:#eaf8f0;color:#208b51!important;}
.ftp-category-purple {background:#f3efff;color:#7744d0!important;}
.ftp-category-cyan {background:#e9f9f7;color:#049a8c!important;}
.ftp-category-orange {background:#fff1e8;color:#cc6a16!important;}
.ftp-cards-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.ftp-call-card {min-width:0;background:#fff;border:1px solid #e4eaf3;border-radius:16px;overflow:hidden;box-shadow:0 8px 25px #0a36560d;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease;}
.ftp-call-card:hover {transform:translateY(-4px);box-shadow:0 17px 33px #0a365621;}
.ftp-card-cover {height:141px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.ftp-card-cover.ftp-cat-pink {background:linear-gradient(135deg,#ffbccb,#da5e84);}
.ftp-card-cover.ftp-cat-green {background:linear-gradient(135deg,#9ddec0,#178f8e);}
.ftp-card-cover.ftp-cat-blue {background:linear-gradient(135deg,#b5dcff,#3b81d6);}
.ftp-card-cover.ftp-cat-purple {background:linear-gradient(135deg,#dfc8ff,#895be0);}
.ftp-card-cover.ftp-cat-yellow {background:linear-gradient(135deg,#ffe6ab,#eaa52e);}
.ftp-card-cover.ftp-cat-cyan {background:linear-gradient(135deg,#b7eee5,#2eb5ab);}
.ftp-card-cover img {height:100%;width:100%;object-fit:cover;}
.ftp-cover-art {display:flex;align-items:center;justify-content:center;position:relative;color:#ffffffeb;width:100%;height:100%;}
.ftp-cover-art>svg {position:relative;z-index:1;filter:drop-shadow(0 4px 8px #0002);}
.ftp-cover-orbit {position:absolute;border:2px solid #ffffff7a;width:240px;height:110px;transform:rotate(-23deg);border-radius:50%;left:50%;top:20px;margin-left:-120px;}
.ftp-cover-dot {position:absolute;right:18%;top:15%;width:15px;height:15px;border:4px solid #fff9;border-radius:50%;}
.ftp-call-body {display:flex;flex-direction:column;align-items:stretch;flex:1;padding:15px 17px 16px;}
.ftp-call-top {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:5px;margin-bottom:12px;}
.ftp-tag {border-radius:999px;font-size:10px;line-height:1.4;font-weight:800;padding:5px 9px;}
.ftp-tag.ftp-cat-pink {color:#b92558;background:#ffedf3;}
.ftp-tag.ftp-cat-green {color:#1d8858;background:#e7f8ee;}
.ftp-tag.ftp-cat-blue {color:#1759c7;background:#e9f3ff;}
.ftp-tag.ftp-cat-purple {color:#6d40ba;background:#f2ebff;}
.ftp-tag.ftp-cat-yellow {color:#9b7100;background:#fff7e2;}
.ftp-tag.ftp-cat-cyan {color:#037b72;background:#def9f4;}
.ftp-status {font-size:9px;font-weight:800;color:#0b8467;}
.ftp-status-today {color:#c74b09;}
.ftp-status-closed {color:#b4474e;}
.ftp-status-unverified {color:#7b8492;}
.ftp-call-body h3 {font-size:15.3px;color:#0c2b4e;line-height:1.45;letter-spacing:-.02em;min-height:43px;margin:0 0 5px;overflow-wrap:anywhere;}
.ftp-card-org {font-size:12px;color:#597087;line-height:1.6;margin-bottom:9px!important;}
.ftp-card-meta {display:grid;gap:7px;margin-top:auto;padding-top:13px;}
.ftp-card-meta>span {display:flex;align-items:center;gap:6px;color:#526b85;font-size:11.5px;line-height:1.4;}
.ftp-money {color:#0964ad;font-size:12px;font-weight:800;margin-top:10px!important;}
.ftp-card-link {display:flex;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#075dc9!important;border:1px solid #accaf5;border-radius:9px;padding:10px 12px;margin-top:15px;min-height:39px;}
.ftp-card-link:hover {background:#eaf4ff;border-color:#1370e0;}
.ftp-empty {border:1px dashed #bcd1e6;background:#f7fbff;border-radius:15px;padding:35px;text-align:center;color:#55718f;}
.ftp-empty-wide {grid-column:1/-1;min-height:245px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;}
.ftp-empty>svg {color:#0a72d4;}
.ftp-empty h3 {font-size:19px;color:#153d60;}
.ftp-empty p {max-width:620px;font-size:14px;line-height:1.75;}
/* special */
.ftp-band-section {background:linear-gradient(105deg,#043c70 0%,#0858a2 76%,#0378aa 100%);color:#fff;}
.ftp-band-inner {display:flex;align-items:center;gap:28px;padding:35px 0;}
.ftp-band-inner>div:nth-child(2) {flex:1;}
.ftp-band-icon {height:75px;width:75px;border-radius:18px;color:#42e0c0;background:#ffffff24;display:flex;align-items:center;justify-content:center;flex:none;}
.ftp-band-section .ftp-eyebrow {color:#75f5dc;}
.ftp-band-section h2 {color:#fff;font-size:23px;margin-bottom:7px;}
.ftp-band-section p {font-size:13.5px;color:#deeeff;max-width:700px;line-height:1.7;}
.ftp-insights-section {background:#f7faff;}
.ftp-benefits-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.ftp-benefits-grid>div,.ftp-benefits-grid>article {border:1px solid #e3ebf5;background:white;border-radius:14px;padding:25px;}
.ftp-benefits-grid>div>svg,.ftp-benefits-grid>article>svg {color:#0b84b7;background:#e9f8f8;border-radius:9px;padding:7px;width:45px;height:45px;}
.ftp-benefits-grid h3,.ftp-benefits-grid h2 {font-size:18px;margin:14px 0 7px;color:#0b3259;}
.ftp-benefits-grid p {color:#64778b;font-size:14px;line-height:1.75;}
.ftp-stats-strip {display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border-radius:16px;background:#eaf4ff;border:1px solid #d7e7fa;margin-top:25px;padding:24px 22px;}
.ftp-stats-strip>div {display:grid;grid-template-columns:35px auto;grid-template-rows:auto auto;column-gap:10px;border-right:1px solid #cbddf1;padding:2px 13px;}
.ftp-stats-strip>div:last-child {border:0;}
.ftp-stats-strip svg {grid-row:1/3;align-self:center;color:#0971d8;}
.ftp-stats-strip strong {font-size:23px;line-height:1.2;color:#093466;}
.ftp-stats-strip span {font-size:11px;line-height:1.5;color:#536d88;}
.ftp-bottom-cta {background:linear-gradient(115deg,#072f50,#063253);color:white;}
.ftp-bottom-cta-inner {display:flex;gap:35px;justify-content:space-between;align-items:center;padding:53px 0;}
.ftp-bottom-cta .ftp-eyebrow {color:#6af4d1;}
.ftp-bottom-cta h2 {font-size:clamp(22px,2.25vw,29px);color:#fff;max-width:720px;}
.ftp-bottom-cta p {font-size:14px;color:#d2e7f2;margin-top:10px;}
.ftp-bottom-cta .ftp-btn {flex-shrink:0;}
/* inner pages */
.ftp-inner-hero {position:relative;background:linear-gradient(120deg,#eff8ff,#e7f8f6);padding:75px 0 58px;border-bottom:1px solid #d9eaf5;}
.ftp-inner-hero h1 {max-width:950px;color:#0a365d;font-size:clamp(30px,3.8vw,48px);margin:0 0 14px;}
.ftp-inner-hero p {max-width:800px;font-size:16px;color:#42647d;line-height:1.8;margin-bottom:0;}
.ftp-inner-hero .ftp-eyebrow {color:#079b8c;}
.ftp-inner-hero .ftp-btn {margin-top:22px;}
.ftp-inner-blue {background:linear-gradient(112deg,#052e52,#084d82);}
.ftp-inner-blue h1,.ftp-inner-blue p {color:#fff;}
.ftp-inner-blue p {color:#d2e7f8;}
.ftp-inner-blue .ftp-eyebrow {color:#7deccc;}
.ftp-filters {display:grid;grid-template-columns:2fr 1.3fr 1.1fr 1.2fr 1.2fr auto;gap:9px;background:#fff;border:1px solid #e0eaf4;border-radius:15px;padding:14px;box-shadow:0 12px 25px #052a4d0a;margin-bottom:20px;}
.ftp-filters:has(>div:nth-child(5)+button) {grid-template-columns:2fr 1.2fr 1.1fr 1.2fr auto;}
.ftp-filters>div {min-width:0;}
.ftp-filters input,.ftp-filters select {width:100%;min-width:0;height:45px;padding:0 10px;border:1px solid #dce6f2;background:#fafcff;color:#254260;border-radius:8px;font-size:12px;outline-color:#0c7cc9;}
.ftp-filter-search {position:relative;display:flex;align-items:center;}
.ftp-filter-search>svg {position:absolute;left:12px;color:#61809f;}
.ftp-filter-search input {padding-left:41px;}
.ftp-filters .ftp-btn {height:45px;min-height:45px;font-size:12px;padding:0 13px;}
.ftp-listing-count {display:flex;align-items:center;gap:5px;color:#647991;font-size:13px;margin-bottom:17px;flex-wrap:wrap;}
.ftp-listing-count strong {color:#0b528e;}
.ftp-listing-count span {margin-left:auto;font-size:11px;color:#7b8b9e;}
.ftp-list-cards {grid-template-columns:repeat(3,minmax(0,1fr));}
.ftp-list-cards .ftp-card-cover {height:160px;}
.ftp-pagination {display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:25px;}
.ftp-pagination a {display:flex;align-items:center;justify-content:center;min-width:42px;height:42px;border:1px solid #bcd1e8;border-radius:8px;color:#17599c;font-weight:800;font-size:13px;}
.ftp-pagination .ftp-page-active {color:white;background:#086ad9;border-color:#086ad9;}
.ftp-notice {display:flex;gap:12px;padding:18px 20px;background:#eaf6fb;border:1px solid #bce2f2;border-radius:11px;color:#21576c;font-size:13px;line-height:1.7;margin-bottom:25px;}
.ftp-notice>svg {flex:none;color:#1389b1;}
/* publish form and prose */
.ftp-form-layout {display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:29px;align-items:start;}
.ftp-form-card {border:1px solid #deebf5;background:#fff;border-radius:18px;padding:35px;box-shadow:0 20px 40px #112e4c0a;}
.ftp-form-card h2 {font-size:24px;margin-bottom:24px;}
.ftp-submit-form {display:flex;flex-direction:column;gap:18px;}
.ftp-submit-form label {display:flex;flex-direction:column;gap:7px;color:#294762;font-weight:800;font-size:12px;}
.ftp-submit-form label>span {color:#d14352;}
.ftp-submit-form input,.ftp-submit-form textarea,.ftp-submit-form select {border:1px solid #cbdbea;border-radius:9px;background:#fbfdff;padding:13px 14px;width:100%;font-size:14px;color:#163c5e;outline-color:#097cd7;font-weight:500;}
.ftp-submit-form input,.ftp-submit-form select {min-height:47px;}
.ftp-submit-form textarea {resize:vertical;min-height:124px;}
.ftp-form-row {display:grid;grid-template-columns:1fr 1fr;gap:15px;}
.ftp-submit-form .ftp-checkbox-label {display:flex;align-items:flex-start;flex-direction:row;font-size:13px;font-weight:500;gap:10px;}
.ftp-submit-form .ftp-checkbox-label input {width:18px;height:18px;min-height:18px;flex:none;}
.ftp-submit-form .ftp-btn {width:max-content;}
.ftp-form-footnote {color:#7a8b9e;font-size:12px;}
.ftp-trap {position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.ftp-form-side {background:#052f53;border-radius:18px;padding:36px;color:#fff;position:relative;overflow:hidden;}
.ftp-form-side:after {content:"";position:absolute;right:-100px;top:-100px;width:270px;height:270px;border-radius:50%;border:50px solid #1f7a9490;opacity:.4;}
.ftp-form-side h2 {color:#fff;font-size:27px;margin:20px 0 15px;position:relative;z-index:1;}
.ftp-form-side p {color:#d3e6f5;font-size:14px;line-height:1.8;position:relative;z-index:1;}
.ftp-side-art {display:flex;align-items:center;justify-content:center;width:77px;height:77px;border-radius:20px;color:#04d4a4;background:#ffffff23;}
.ftp-side-note {border-top:1px solid #ffffff36;margin-top:30px;padding-top:20px;display:flex;gap:10px;color:#d8eefe;font-size:12px;line-height:1.7;}
.ftp-side-note>svg {flex:none;color:#5fe9c6;}
.ftp-message {display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:10px;font-size:13px;font-weight:700;margin-bottom:22px;}
.ftp-message-success {color:#166341;background:#e6faf0;border:1px solid #91e1b8;}
.ftp-message-error {color:#9f3e40;background:#fff0f0;border:1px solid #f6b7b7;}
.ftp-prose {max-width:900px;line-height:1.85;font-size:16px;color:#425a70;}
.ftp-prose h2 {font-size:26px;color:#0d355b;margin:28px 0 10px;}
.ftp-prose p {margin-bottom:17px;}
.ftp-prose .ftp-btn {margin-top:12px;}
.ftp-resource-grid {grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:28px;}
.ftp-contact-box {max-width:760px;border-radius:15px;border:1px solid #e1eaf5;padding:30px;}
.ftp-contact-box h2 {font-size:28px;margin-bottom:12px;}
.ftp-contact-box p {margin-bottom:15px;color:#5f7084;}
.ftp-contact-email {font-size:clamp(16px,2.3vw,24px);font-weight:800;color:#0968cb;word-break:break-all;display:inline-block;margin-bottom:22px;}
.ftp-single-layout {display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:35px;align-items:start;}
.ftp-single-content {width:100%;max-width:100%;}
.ftp-single-content>.ftp-single-meta {display:grid;grid-template-columns:repeat(2,1fr);gap:15px;background:#f4faff;border:1px solid #e0ecf8;padding:20px;border-radius:12px;margin-bottom:20px;}
.ftp-single-meta>div {display:flex;flex-direction:column;gap:5px;}
.ftp-single-meta strong {font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#5b7795;}
.ftp-single-meta span {font-size:14px;font-weight:700;color:#0e3153;}
.ftp-single-content p {margin-bottom:20px;}
.ftp-single-warning {font-size:12px;color:#677c91;background:#eff7fb;padding:15px;border-radius:8px;}
.ftp-single-aside {background:#f5f9fe;padding:25px;border-radius:15px;border:1px solid #e4edf6;}
.ftp-single-aside h2 {font-size:19px;margin-bottom:12px;}
.ftp-single-aside p {font-size:14px;line-height:1.8;color:#5b7087;margin-bottom:20px;}
.ftp-back-link {display:block;color:#008c80!important;font-size:12px;font-weight:800;margin-bottom:16px;}
/* footer */
.ftp-site-footer {background:#041f37;color:#d4e3f1;}
.ftp-footer-grid {display:grid;grid-template-columns:2.15fr 1fr 1fr 1.45fr;gap:55px;padding:51px 0 43px;}
.ftp-site-footer .ftp-brand {color:#fff!important;}
.ftp-site-footer .ftp-brand-text strong {color:#fff;}
.ftp-site-footer .ftp-brand-text small {color:#9ebac9;}
.ftp-footer-grid p {font-size:12.5px;line-height:1.85;margin-top:20px;color:#b8d0df;}
.ftp-footer-grid h3 {color:#fff;font-size:13px;font-weight:800;margin:4px 0 16px;}
.ftp-footer-grid>div:not(:first-child)>a {display:block;color:#b8d0df;font-size:13px;margin-bottom:10px;}
.ftp-footer-grid a:hover {color:#4ce8c2!important;}
.ftp-footer-bottom {border-top:1px solid #1b4261;padding:16px 0;font-size:11px;color:#9cb3c7;}
.ftp-footer-bottom .ftp-container {display:flex;justify-content:space-between;gap:12px;}
/* compact WP theme embed mode */
body:not(.ftp-full-page) .ftp-portal {width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);}
body:not(.ftp-full-page) .ftp-portal .ftp-hero-inner {max-width:var(--ftp-width);}
/* responsive */
@media(max-width:1250px) {
 .ftp-site-header .ftp-topbar {gap:18px;}
 .ftp-nav {gap:15px;}
 .ftp-brand-text strong {font-size:20px;}
 .ftp-brand-text small {font-size:7px;letter-spacing:1.5px;}
 .ftp-nav a {font-size:12px;}
 .ftp-hero-visual {height:360px;}
 .ftp-hero-visual img {top:35px;height:300px;}
 .ftp-hero-inner {min-height:500px;}
 .ftp-category-grid {grid-template-columns:repeat(4,1fr);}
 .ftp-cards-grid {gap:13px;}
 .ftp-call-body {padding:14px;}
}
@media(max-width:1000px) {
 .ftp-container {width:calc(100% - 46px);}
 .ftp-menu-toggle {display:inline-flex;margin-left:auto;}
 .ftp-site-header .ftp-topbar {min-height:75px;}
 .ftp-nav {display:none;position:absolute;top:75px;left:0;right:0;background:#fff;box-shadow:0 15px 25px #0d27461c;padding:16px 24px;z-index:10;flex-direction:column;align-items:stretch;gap:3px;}
 .ftp-nav.ftp-nav-open {display:flex;}
 .ftp-nav a {padding:13px 8px;min-height:42px;border-bottom:1px solid #e7f0f8;}
 .ftp-nav a.ftp-current {border-bottom:2px solid #0865df;}
 .ftp-nav-cta {display:none;}
 .ftp-hero-inner {grid-template-columns:1.1fr .9fr;min-height:490px;gap:0;}
 .ftp-hero-visual {height:350px;margin-left:-20px;}
 .ftp-hero h1 {font-size:40px;}
 .ftp-hero-copy>p {font-size:14px;}
 .ftp-hero-float {font-size:10px;}
 .ftp-category-grid {grid-template-columns:repeat(4,1fr);}
 .ftp-category {padding:12px;gap:7px;}
 .ftp-category>span {width:37px;height:37px;}
 .ftp-category>strong {font-size:12px;}
 .ftp-cards-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .ftp-call-body h3 {min-height:auto;font-size:16px;}
 .ftp-list-cards {grid-template-columns:repeat(2,minmax(0,1fr));}
 .ftp-filters,.ftp-filters:has(>div:nth-child(5)+button) {grid-template-columns:repeat(3,1fr);}
 .ftp-filters .ftp-btn {width:100%;}
 .ftp-footer-grid {grid-template-columns:repeat(2,1fr);gap:35px;}
}
@media(max-width:700px) {
 .ftp-container {width:calc(100% - 34px);}
 .ftp-section-pad {padding:45px 0;}
 .ftp-categories-section {padding-top:28px;}
 .ftp-site-header .ftp-topbar {min-height:70px;}
 .ftp-nav {top:70px;}
 .ftp-brand-symbol {width:34px;height:34px;}
 .ftp-brand-text strong {font-size:19px;}
 .ftp-brand-text small {font-size:6.5px;letter-spacing:1px;}
 .ftp-hero:after {bottom:-24px;height:40px;}
 .ftp-hero-inner {grid-template-columns:1fr;min-height:0;padding-top:55px;padding-bottom:58px;}
 .ftp-hero h1 {font-size:clamp(33px,8.5vw,49px);letter-spacing:-1.75px;max-width:570px;}
 .ftp-hero-visual {height:250px;margin:15px -10px 0;}
 .ftp-hero-visual img {left:0;top:0;object-position:center;height:235px;width:100%;mask-image:linear-gradient(to right,transparent 0%,#000 9%,#000 100%);}
 .ftp-hero-visual:before {top:5px;bottom:0;}
 .ftp-hero-float {display:none;}
 .ftp-hero-search {width:100%;}
 .ftp-hero-search input {font-size:13px;}
 .ftp-hero-search button {padding:0 14px;}
 .ftp-hero-buttons {gap:9px;}
 .ftp-btn {font-size:13px;padding:12px 16px;}
 .ftp-section-head {align-items:flex-start;flex-direction:column;gap:12px;}
 .ftp-section-head h2 {font-size:25px;}
 .ftp-category-grid {grid-template-columns:repeat(2,1fr);gap:9px;}
 .ftp-category {min-height:66px;}
 .ftp-cards-grid,.ftp-list-cards {grid-template-columns:1fr;}
 .ftp-card-cover,.ftp-list-cards .ftp-card-cover {height:165px;}
 .ftp-call-body {padding:20px;}
 .ftp-call-top {margin-bottom:9px;}
 .ftp-band-inner,.ftp-bottom-cta-inner {flex-direction:column;align-items:flex-start;gap:20px;}
 .ftp-band-inner {padding:35px 0;}
 .ftp-band-icon {height:60px;width:60px;}
 .ftp-benefits-grid {grid-template-columns:1fr;}
 .ftp-stats-strip {grid-template-columns:repeat(2,1fr);gap:18px;}
 .ftp-stats-strip>div {border:0;padding:6px;}
 .ftp-inner-hero {padding:54px 0 43px;}
 .ftp-inner-hero h1 {font-size:33px;}
 .ftp-filters,.ftp-filters:has(>div:nth-child(5)+button) {grid-template-columns:1fr 1fr;}
 .ftp-filters .ftp-filter-search {grid-column:1/-1;}
 .ftp-filters .ftp-btn {grid-column:1/-1;}
 .ftp-form-layout,.ftp-single-layout {grid-template-columns:1fr;}
 .ftp-form-card {padding:23px;}
 .ftp-form-side {padding:25px;}
 .ftp-footer-grid {grid-template-columns:1fr 1fr;gap:25px;}
 .ftp-footer-grid>div:first-child {grid-column:1/-1;}
 .ftp-footer-bottom .ftp-container {flex-direction:column;}
 .ftp-listing-count span {width:100%;margin-left:0;}
}
@media(max-width:420px) {
 .ftp-brand-text strong {font-size:16px;}
 .ftp-brand-text small {font-size:5.8px;letter-spacing:.65px;}
 .ftp-hero-search button svg {display:none;}
 .ftp-hero-buttons {flex-direction:column;align-items:stretch;}
 .ftp-hero h1 {font-size:33px;}
 .ftp-hero-copy>p {font-size:13.5px;}
 .ftp-category>strong {font-size:11px;}
 .ftp-category>span {width:32px;height:32px;}
 .ftp-category>span svg {width:23px;height:23px;}
 .ftp-stats-strip {padding:15px 10px;}
 .ftp-stats-strip>div {grid-template-columns:1fr;gap:3px;}
 .ftp-stats-strip svg {grid-row:auto;}
 .ftp-filters,.ftp-filters:has(>div:nth-child(5)+button) {grid-template-columns:1fr;}
 .ftp-filters .ftp-filter-search {grid-column:1;}
 .ftp-filters .ftp-btn {grid-column:1;}
 .ftp-form-row,.ftp-single-content>.ftp-single-meta {grid-template-columns:1fr;}
 .ftp-footer-grid {grid-template-columns:1fr;}
 .ftp-footer-grid>div:first-child {grid-column:auto;}
}
@media(prefers-reduced-motion:reduce) {.ftp-portal *, .ftp-site-header * {transition:none!important;scroll-behavior:auto!important;}}
/* Lecturas originales y páginas públicas de transparencia — versión 1.1 */
.ftp-learning-section{background:#f5f9fd;border-top:1px solid #e6eff5}
.ftp-learning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ftp-learning-grid a{display:flex;flex-direction:column;align-items:flex-start;padding:27px;border:1px solid #dceaf4;background:#fff;border-radius:17px;color:#173656!important;box-shadow:0 8px 25px #082b460d;transition:transform .2s ease,box-shadow .2s ease}
.ftp-learning-grid a:hover{transform:translateY(-3px);box-shadow:0 15px 32px #052f4b24}
.ftp-learning-grid .ftp-learning-icon{background:#e5f8f1;color:#03977b;display:flex;align-items:center;justify-content:center;padding:12px;border-radius:13px;margin-bottom:19px}
.ftp-learning-grid h3{font-size:20px;letter-spacing:-.03em;line-height:1.35;margin:0 0 12px;color:#0d3354}
.ftp-learning-grid p{color:#64798d;font-size:14px;line-height:1.7;flex:1}
.ftp-learning-grid strong{display:flex;align-items:center;gap:9px;color:#0b65c9;font-size:14px;margin-top:17px}
.ftp-legal .ftp-article{max-width:900px;color:#435d71;font-size:16px;line-height:1.85}
.ftp-legal .ftp-article section{padding-bottom:8px;margin-bottom:16px;border-bottom:1px solid #e8eff5}
.ftp-legal .ftp-article section:last-child{border-bottom:0}
.ftp-legal .ftp-article h2{font-size:25px;line-height:1.35;letter-spacing:-.025em;margin:28px 0 12px;color:#0b3154}
.ftp-legal .ftp-article p{margin:0 0 20px}
.ftp-guide-links{margin-top:35px;padding:24px;border-radius:14px;background:#f0f8ff;border:1px solid #e4effa}
.ftp-guide-links h2{margin:0 0 10px;font-size:19px}
.ftp-guide-links a{font-weight:750;color:#0d5fc0}
@media (max-width:900px){.ftp-learning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:650px){.ftp-learning-grid{grid-template-columns:1fr}.ftp-learning-grid a{padding:22px}.ftp-legal .ftp-article h2{font-size:22px}}

/* V1.2: enlace visible y accesible a la fuente original en cada tarjeta. */
.ftp-source-card{display:inline-flex;align-items:center;gap:5px;color:#096f79;font-size:12px;font-weight:700;margin:10px 0 0;text-decoration:underline;text-underline-offset:3px}
.ftp-source-card:hover,.ftp-source-card:focus{color:#04415c}

/* v1.4 · navegación informativa y editorial propias */
.ftp-topics-bar{background:#f7fbff;border-top:1px solid #e8f0f7;border-bottom:1px solid #e6ecf5}
.ftp-topics-inner{display:flex;align-items:center;gap:23px;min-height:39px;white-space:nowrap;overflow-x:auto;scrollbar-width:thin}
.ftp-topics-inner>span{font-weight:800;font-size:10px;letter-spacing:1.25px;color:#69829d}
.ftp-topics-inner>a{font-weight:700;font-size:12px;color:#315370!important;transition:color .2s}
.ftp-topics-inner>a:hover{color:#0779bd!important}
.ftp-topics-inner>a.ftp-topics-all{color:#0678a3!important;display:inline-flex;align-items:center;gap:4px;margin-left:auto}
.ftp-explore-types{background:#fff;padding:36px 0 55px}
.ftp-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ftp-type-item{background:#f8fbff;border:1px solid #dfeaf5;border-radius:14px;min-width:0;display:flex;gap:15px;align-items:flex-start;padding:18px;color:#102f4a!important;transition:transform .2s,box-shadow .2s}
.ftp-type-item:hover{transform:translateY(-3px);box-shadow:0 12px 22px #103b5720}
.ftp-type-icon{display:flex;justify-content:center;align-items:center;width:46px;height:46px;border-radius:12px;background:#dff6ef;color:#008b76;flex:none}
.ftp-type-item>div{flex:1}.ftp-type-item h3{font-weight:800;color:#103554;font-size:15px;line-height:1.35;margin:0 0 6px}
.ftp-type-item p{font-size:12px;color:#5b728c;line-height:1.55;margin:0}.ftp-type-item>svg{color:#1f83be;flex:none;margin-top:10px}
.ftp-editorial-feature{background:#eef7f5;padding:55px 0;border-top:1px solid #dceee9;border-bottom:1px solid #dceee9}
.ftp-editorial-layout{display:grid;grid-template-columns:1.6fr .8fr;gap:52px;align-items:center}
.ftp-editorial-main h2{font-size:clamp(25px,2.4vw,35px);color:#0b3457;line-height:1.2;margin:8px 0 17px}
.ftp-editorial-main p{font-size:14px;line-height:1.9;color:#33536b;margin:0 0 14px}
.ftp-editorial-side{background:white;border-radius:16px;border:1px solid #d5ece6;padding:27px;box-shadow:0 10px 25px #123a3713}
.ftp-editorial-side h3{font-size:19px;color:#0d3659;margin:0 0 15px}
.ftp-editorial-side ul{margin:0;padding-left:22px;list-style:disc}.ftp-editorial-side li{margin-bottom:12px;font-size:13.5px;color:#254858}
.ftp-editorial-side>p{border-top:1px solid #e8f2ef;padding-top:15px;color:#647b8b;font-size:11.5px;line-height:1.7}
@media(max-width:900px){.ftp-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ftp-editorial-layout{grid-template-columns:1fr;gap:25px}}
@media(max-width:640px){.ftp-type-grid{grid-template-columns:1fr}.ftp-topics-inner{gap:16px}.ftp-topics-inner>a{font-size:11.5px}.ftp-explore-types{padding:30px 0 42px}.ftp-editorial-feature{padding:40px 0}}

/* v1.5 · ruta de financiación guiada y países LATAM */
.ftp-impact-map{padding:48px 0;background:linear-gradient(120deg,#eef8f7 0%,#f4f8fd 100%);border-block:1px solid #d9eae9}
.ftp-impact-map-inner{display:grid;grid-template-columns:1.04fr .96fr;gap:65px;align-items:center}
.ftp-impact-map h2{font-size:clamp(27px,2.6vw,35px);line-height:1.2;color:#103958;max-width:550px;margin:10px 0 17px}
.ftp-impact-map p{max-width:570px;color:#526b7e;line-height:1.8;font-size:13.5px;margin:0 0 20px}
.ftp-impact-country-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ftp-impact-country-grid a{border:1px solid #dce8ef;border-radius:10px;background:white;display:flex;align-items:center;gap:9px;color:#27516a!important;font-weight:700;padding:13px 12px;box-shadow:0 5px 12px #1f58790d;font-size:12px}
.ftp-impact-country-grid a svg:first-child{color:#16a190;flex-shrink:0}
.ftp-impact-country-grid a svg:last-child{margin-left:auto;flex-shrink:0;color:#8eb5c3}
.ftp-impact-country-grid a:hover{border-color:#28a898}
.ftp-route-section{background:#f6faff;padding:55px 0 65px}
.ftp-route-layout{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr);gap:27px;align-items:start}
.ftp-route-form-box,.ftp-route-explainer{background:#fff;border:1px solid #dce9f5;border-radius:19px;padding:31px;box-shadow:0 11px 24px #1a4f7a0a}
.ftp-route-form-box h2,.ftp-route-results h2{font-size:clamp(22px,2.3vw,30px);color:#133c5b;margin:9px 0 11px}
.ftp-route-form-box>p,.ftp-route-explainer p{color:#5a7185;line-height:1.8;font-size:13px}
.ftp-route-form{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:24px}
.ftp-route-form label{font-weight:800;color:#294b62;font-size:12px;display:flex;gap:7px;flex-direction:column}
.ftp-route-form select{border:1px solid #ccdce9;background:#fff;border-radius:9px;color:#16344b;height:44px;width:100%;padding:0 11px;min-width:0;font:500 13px 'DM Sans',sans-serif}
.ftp-route-form button{grid-column:1/-1;justify-content:center}
.ftp-route-explainer{background:linear-gradient(165deg,#143e61,#0b4960);color:white;padding:33px}
.ftp-route-step{letter-spacing:1px;font-size:10px;font-weight:800;color:#a8e4d6}
.ftp-route-explainer h2{font-size:25px;line-height:1.25;margin:17px 0;color:#fff}
.ftp-route-explainer p{color:#d1e5ed}
.ftp-route-explainer ul{list-style:none;margin:26px 0;padding:0}.ftp-route-explainer li{display:flex;align-items:center;gap:11px;font-size:13px;margin-bottom:16px;color:#f4fbff}
.ftp-route-explainer li svg{color:#70e4c5}
.ftp-route-notice{font-size:11.5px;color:#dbedf2;border-top:1px solid #ffffff24;padding-top:17px;line-height:1.7}
.ftp-route-results{margin-top:44px}
.ftp-route-guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:19px 0 34px}
.ftp-route-guides article{background:#fff;border:1px solid #dce9f4;border-radius:14px;padding:22px}
.ftp-route-guides article span{font-size:12px;color:#118f83;font-weight:900}
.ftp-route-guides h3{font-size:16px;color:#123951;margin:7px 0 9px}
.ftp-route-guides p{font-size:12.5px;color:#5b7287;line-height:1.7;margin:0}
.ftp-route-results>h3{font-size:20px;color:#163d5a;margin-bottom:5px}
.ftp-route-disclaimer{font-size:12.5px;color:#647689;margin:4px 0 23px}
.ftp-route-end{display:flex;align-items:center;gap:26px;margin-top:25px}
@media(max-width:900px){.ftp-impact-map-inner{grid-template-columns:1fr;gap:25px}.ftp-route-layout{grid-template-columns:1fr}.ftp-route-guides{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.ftp-impact-map{padding:38px 0}.ftp-impact-country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ftp-impact-country-grid a{font-size:11px;padding:11px 8px}.ftp-route-section{padding:35px 0}.ftp-route-form-box,.ftp-route-explainer{padding:20px}.ftp-route-form{grid-template-columns:1fr}.ftp-route-guides{grid-template-columns:1fr}.ftp-route-end{flex-wrap:wrap;gap:15px}}
