/*
Theme Name: TaxPuente
Theme URI: https://taxpuente.es/
Author: SUNVENTUM DIGITAL
Author URI: https://sunventum.com/
Description: Tema bilingüe exclusivo para TaxPuente, orientación fiscal española para vidas entre países.
Version: 0.2.1
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: taxpuente
License: Proprietary
*/

:root{--petrol:#073f46;--blue:#245fe5;--coral:#ff6c5f;--ink:#081921;--paper:#f4f7f7;--white:#fff;--line:#b9c8c8;--muted:#52666b;--shadow:7px 7px 0 var(--ink);--shell:min(1180px,calc(100% - 40px));font-size:16px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6}
button,a{font:inherit}
a{color:inherit}
button{color:inherit}
button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:4px solid var(--coral);outline-offset:4px}
[hidden]{display:none!important}
.shell{width:var(--shell);margin-inline:auto}
.skip-link{position:fixed;left:16px;top:-80px;z-index:9999;background:var(--ink);color:#fff;padding:12px 18px;font-weight:800}.skip-link:focus{top:16px}
.site-header{position:relative;z-index:50;background:rgba(244,247,247,.96);border-bottom:1px solid var(--ink)}
.header-rule{height:7px;background:linear-gradient(90deg,var(--petrol) 0 47%,var(--blue) 47% 73%,var(--coral) 73%)}
.header-inner{min-height:82px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;width:max-content}
.brand-mark{display:grid;grid-template-columns:8px 18px 8px;align-items:end;gap:3px;width:40px;height:28px}.brand-mark span{display:block;background:var(--petrol);height:21px}.brand-mark span:nth-child(2){height:10px;background:var(--blue)}
.brand-name{font-size:1.28rem;font-weight:900;letter-spacing:-.05em}.brand-name>span{color:var(--blue)}
.main-nav{display:flex;gap:28px}.main-nav a{text-decoration:none;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.main-nav a:hover{color:var(--blue)}
.language-switch{justify-self:end;display:flex;gap:8px;font:800 .78rem ui-monospace,SFMono-Regular,Consolas,monospace}.language-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;text-decoration:none;opacity:.48}.language-switch>span{display:inline-flex;align-items:center}.language-switch a[aria-current="page"]{opacity:1;color:var(--blue);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:4px}
.hero{position:relative;overflow:hidden;background:var(--petrol);color:#fff;border-bottom:1px solid var(--ink)}
.hero-grid{position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.38) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.38) 1px,transparent 1px);background-size:42px 42px;transform:skewY(-4deg) scale(1.15)}
.hero-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:80px;align-items:center;padding-block:92px}
.eyebrow,.section-code,.micro-label,.ledger-code,.service-code{font:800 .72rem ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:15px;color:#dcebea}.eyebrow-index{background:var(--coral);color:var(--ink);padding:5px 9px}
h1,h2,h3,p{margin-top:0}.hero h1{max-width:760px;margin-bottom:28px;font-size:clamp(2.8rem,6vw,5.9rem);line-height:.94;letter-spacing:-.065em}.hero-intro{max-width:660px;color:#d7e4e3;font-size:clamp(1.05rem,2vw,1.28rem)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:38px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:50px;padding:12px 20px;border:2px solid var(--ink);border-radius:0;text-decoration:none;font-size:.88rem;font-weight:900;cursor:pointer;transition:transform .18s,box-shadow .18s}.button:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--ink)}.button-primary{background:var(--coral);color:var(--ink)}.button-quiet{background:var(--white);color:var(--ink)}.button-coral{background:var(--coral)}
.hero-notes{display:flex;gap:22px;flex-wrap:wrap;margin:0;padding:0;list-style:none;font:700 .73rem ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase}.hero-notes li{border-top:1px solid rgba(255,255,255,.4);padding-top:9px}.hero-notes strong{color:var(--coral)}
.route-board{background:var(--paper);color:var(--ink);border:2px solid var(--ink);box-shadow:var(--shadow);padding:28px;transform:rotate(1.2deg)}.route-board-head{display:flex;justify-content:space-between;gap:12px;border-bottom:2px solid var(--ink);padding-bottom:13px}.route-stamp{border:2px solid var(--coral);color:var(--petrol);font:900 .65rem ui-monospace,monospace;padding:3px 6px}.route-board h2{font-size:2rem;line-height:1.05;margin:24px 0}.route-ledger{list-style:none;margin:0;padding:0}.route-ledger li{display:grid;grid-template-columns:62px 1fr;gap:13px;border-top:1px solid var(--line);padding:13px 0}.route-ledger strong,.route-ledger small{display:block}.route-ledger small{color:var(--muted)}.route-caveat{margin:12px 0 0;border-left:4px solid var(--coral);padding-left:12px;font-size:.78rem;color:var(--muted)}
.section{padding-block:90px}.section-heading{margin-bottom:44px}.split-heading{display:grid;grid-template-columns:1fr minmax(260px,410px);gap:50px;align-items:end}.section-code{color:var(--blue);margin-bottom:12px}.section-heading h2{margin:0;font-size:clamp(2.1rem,4vw,4rem);line-height:1;letter-spacing:-.055em}.section-heading>p{margin:0;color:var(--muted);font-size:1.08rem}
.situations{background:#fff}.situation-workbench{display:grid;grid-template-columns:38% 62%;border:2px solid var(--ink);box-shadow:var(--shadow)}.situation-tabs{background:var(--petrol);padding:16px}.situation-tab{width:100%;min-height:66px;display:grid;grid-template-columns:45px 1fr 20px;gap:10px;align-items:center;background:transparent;color:#fff;border:0;border-bottom:1px solid rgba(255,255,255,.25);text-align:left;cursor:pointer}.situation-tab[aria-selected="true"]{background:var(--coral);color:var(--ink);padding-inline:12px}.situation-tab-number{font:800 .72rem ui-monospace,monospace}.situation-detail{position:relative;min-height:430px;padding:58px;background:var(--paper);overflow:hidden}.situation-detail-index{position:absolute;right:24px;top:-30px;color:rgba(36,95,229,.09);font-size:10rem;font-weight:950}.situation-detail h3{position:relative;font-size:2.35rem;line-height:1.05;max-width:540px}.situation-detail>p{position:relative;max-width:650px;color:var(--muted);font-size:1.08rem}.situation-tags{position:relative;display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:28px 0}.situation-tags li{border:1px solid var(--ink);background:#fff;padding:6px 10px;font:700 .72rem ui-monospace,monospace;text-transform:uppercase}.situation-route{position:relative;display:grid;grid-template-columns:28px 1fr;gap:12px;border-top:2px solid var(--ink);padding-top:20px}.situation-route strong{color:var(--coral)}
.services{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink);border-left:2px solid var(--ink)}.service-card{display:flex;flex-direction:column;min-height:320px;background:#fff;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:24px;transition:background .2s,transform .2s}.service-card:hover,.service-card.is-recommended{background:#e8eefb;transform:translateY(-4px)}.service-code{color:var(--blue)}.service-card h3{font-size:1.35rem;line-height:1.1;margin:20px 0 14px}.service-card>p{color:var(--muted);font-size:.92rem}.service-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;border-top:1px solid var(--line);padding-top:16px}.service-format{font:800 .66rem ui-monospace,monospace;text-transform:uppercase}.service-open{width:46px;height:46px;border:2px solid var(--ink);background:var(--coral);font-weight:900;cursor:pointer}
.diagnostic-band{background:var(--blue);color:#fff;border-block:2px solid var(--ink)}.diagnostic-layout{display:grid;grid-template-columns:105px 1fr auto;gap:36px;align-items:center;padding-block:54px}.diagnostic-index{display:grid;background:var(--ink);border:2px solid #fff;padding:10px;text-align:center;font:900 1.7rem ui-monospace,monospace;line-height:1}.diagnostic-index span:last-child{font-size:.65rem;color:var(--coral);margin-top:7px}.diagnostic-band h2{font-size:clamp(1.8rem,3.4vw,3.4rem);line-height:1;margin-bottom:9px}.diagnostic-band p{margin-bottom:0;color:#e0e7ff}.section-code-light{color:#b8c8ff}
.criteria{background:#fff}.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);border:2px solid var(--ink)}.principles-grid article{min-height:260px;padding:28px;border-right:2px solid var(--ink)}.principles-grid article:last-child{border:0}.principle-number{display:grid;place-items:center;width:40px;height:40px;background:var(--petrol);color:#fff;font:900 1rem ui-monospace,monospace}.principles-grid h3{font-size:1.45rem;margin:24px 0 12px}.principles-grid p{color:var(--muted)}.compliance-note{display:grid;grid-template-columns:260px 1fr;gap:28px;margin-top:26px;padding:24px;border:2px solid var(--ink);border-left:12px solid var(--coral);background:var(--paper)}.compliance-note p{margin:0}
.site-footer{background:var(--ink);color:#fff}.footer-main{display:flex;justify-content:space-between;gap:50px;align-items:flex-start;padding-block:54px}.brand-footer .brand-mark span{background:#fff}.brand-footer .brand-mark span:nth-child(2){background:var(--coral)}.brand-footer .brand-name>span{color:var(--coral)}.brand-footer+ p{color:#aab9bc}.footer-meta{text-align:right;font-size:.84rem;color:#b9c5c8}.footer-meta strong{color:#fff}.footer-rule{height:8px;background:linear-gradient(90deg,var(--coral) 0 30%,var(--blue) 30% 62%,var(--petrol) 62%)}
.content-main{min-height:65vh;padding-block:80px}.content-shell{max-width:880px}.content-card{background:#fff;border:2px solid var(--ink);box-shadow:var(--shadow);padding:clamp(24px,5vw,60px);margin-bottom:32px}.content-card h1{font-size:clamp(2.2rem,5vw,4.5rem);line-height:1}.entry-content{font-size:1.05rem}.entry-content a{color:var(--blue)}
@media(max-width:980px){.hero-layout{grid-template-columns:1fr;gap:50px}.route-board{max-width:650px}.service-grid{grid-template-columns:repeat(2,1fr)}.header-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:16px;row-gap:0;padding-block:7px}.header-inner>.brand{grid-column:1;grid-row:1}.header-inner>.language-switch{grid-column:2;grid-row:1}.main-nav{grid-column:1/-1;grid-row:2;display:flex;flex-wrap:wrap;gap:0 22px;width:100%}.main-nav a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}.situation-workbench{grid-template-columns:1fr}.situation-detail{min-height:auto}.diagnostic-layout{grid-template-columns:86px 1fr}.diagnostic-layout>.button{grid-column:2}.principles-grid{grid-template-columns:1fr}.principles-grid article{border-right:0;border-bottom:2px solid var(--ink)}.principles-grid article:last-child{border-bottom:0}}
@media(max-width:640px){:root{--shell:calc(100% - 26px);--shadow:4px 4px 0 var(--ink)}.header-inner{min-height:0;column-gap:10px;row-gap:0}.main-nav{justify-content:space-between;gap:0 8px}.main-nav a{font-size:.7rem;letter-spacing:.04em}.brand-name{font-size:1.08rem}.hero-layout,.section{padding-block:62px}.hero h1{font-size:clamp(2.65rem,13vw,4.2rem)}.split-heading{grid-template-columns:1fr;gap:18px}.situation-detail{padding:34px 24px}.service-grid{grid-template-columns:1fr}.diagnostic-layout{grid-template-columns:1fr;gap:22px}.diagnostic-index{width:76px}.diagnostic-layout>.button{grid-column:auto}.compliance-note{grid-template-columns:1fr}.footer-main{display:grid}.footer-meta{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
