/* EAP Extradition Advisors Partners - landing */
:root{
  --navy:#012652;
  --navy-deep:#011a3a;
  --navy-line:rgba(255,255,255,.14);
  --crimson:#c8102e;
  --crimson-dark:#a10d25;
  --silver:#a7a9ac;
  --paper:#f5f6f8;
  --white:#ffffff;
  --ink:#16202e;
  --ink-soft:#4a5566;
  --rule:#d5d9e0;
  --serif:"EB Garamond", Garamond, "Times New Roman", serif;
  --sans:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --wrap:1180px;
  --gutter:clamp(16px,4vw,40px);
}
.eap *{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body.eap-landing{margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
.eap img,.eap video,.eap svg{display:block;max-width:100%}
.eap a{color:inherit}
.eap :focus-visible{outline:2px solid var(--crimson);outline-offset:3px}
.eap .wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.eap h1,.eap h2,.eap h3{font-family:var(--serif);font-weight:500;line-height:1.12;margin:0;letter-spacing:-.005em}
.eap p{margin:0 0 1em;font-size:inherit;line-height:inherit;color:inherit;font-family:inherit}
.eap h1,.eap h2,.eap h3{color:inherit;text-transform:none;text-align:inherit}
.eap ol,.eap ul{margin:0}

/* ---------- compass grid (brand motif from the video) ---------- */
.eap .grid-bg{position:relative;background-color:var(--navy);color:var(--white);isolation:isolate}
.eap .grid-bg::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.55;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.16' stroke-width='1'%3E%3Cpath d='M80 0V160M0 80H160'/%3E%3Ccircle cx='80' cy='80' r='34'/%3E%3C/g%3E%3Cpath d='M80 56 84 76 104 80 84 84 80 104 76 84 56 80 76 76Z' fill='none' stroke='%23ffffff' stroke-opacity='.22'/%3E%3C/svg%3E");
  background-size:160px 160px;background-position:center top;
  -webkit-mask-image:radial-gradient(ellipse at 30% 40%,transparent 0,#000 75%);
          mask-image:radial-gradient(ellipse at 30% 40%,transparent 0,#000 75%)}

/* ---------- header ---------- */
.eap .top{position:sticky;top:0;z-index:20;background:rgba(1,38,82,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--navy-line);color:var(--white)}
.eap .top .wrap{display:flex;align-items:center;gap:28px;height:72px}
.eap .brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.eap .brand svg{height:34px;width:auto}
.eap .brand span{font-family:var(--serif);font-size:15px;letter-spacing:.14em;line-height:1.15;color:rgba(255,255,255,.88)}
.eap .nav{display:flex;gap:26px;margin-left:auto;font-size:15px}
.eap .nav a{text-decoration:none;color:rgba(255,255,255,.82)}
.eap .nav a:hover{color:var(--white)}
.eap .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 15px/1 var(--sans);padding:14px 22px;border-radius:2px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background-color .15s,border-color .15s}
.eap .btn-red{background:var(--crimson);color:var(--white)}
.eap .btn-red:hover{background:var(--crimson-dark)}
.eap .btn-line{border-color:rgba(255,255,255,.45);color:var(--white)}
.eap .btn-line:hover{border-color:var(--white)}
.eap .top .btn{padding:11px 16px;font-size:14px}
.eap .dot{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.25)}

/* ---------- hero ---------- */
.eap .hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:center;padding-top:clamp(48px,8vw,96px);padding-bottom:clamp(56px,8vw,104px)}
.eap .hero h1{font-size:clamp(40px,5.4vw,70px);font-weight:500}
.eap .hero .lede{font-size:clamp(17px,1.5vw,19px);color:rgba(255,255,255,.82);max-width:34em;margin:26px 0 34px}
.eap .hero .actions{display:flex;flex-wrap:wrap;gap:12px}
.eap .tagline{display:flex;align-items:center;gap:14px;font-family:var(--serif);font-style:italic;font-size:19px;color:var(--silver);margin-bottom:22px}
.eap .tagline::before{content:"";width:40px;height:1px;background:var(--crimson)}
.eap .film{margin:0;position:relative;aspect-ratio:1/1;border:1px solid var(--navy-line);background:var(--navy-deep)}
.eap .film video,.eap .film img{width:100%;height:100%;object-fit:cover}
.eap .film figcaption{position:absolute;left:0;right:0;bottom:-34px;font-size:13px;color:rgba(255,255,255,.55)}
.eap .film .replay{position:absolute;right:12px;bottom:12px;background:rgba(1,26,58,.7);color:#fff;border:1px solid var(--navy-line);font:500 13px/1 var(--sans);padding:9px 12px;border-radius:2px;cursor:pointer;opacity:0;transition:opacity .3s}
.eap .film.ended .replay{opacity:1}

/* ---------- urgent ---------- */
.eap .urgent{background:var(--crimson);color:var(--white)}
.eap .urgent .wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);gap:clamp(24px,5vw,64px);padding-top:56px;padding-bottom:56px}
.eap .urgent h2{font-size:clamp(28px,3vw,38px)}
.eap .urgent ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;counter-reset:u}
.eap .urgent li{counter-increment:u;border-top:1px solid rgba(255,255,255,.45);padding-top:16px;font-size:16px}
.eap .urgent li::before{content:"Paso " counter(u);display:block;font-family:var(--serif);font-style:italic;font-size:18px;margin-bottom:6px;opacity:.85}
.eap .urgent li strong{display:block;font-weight:600;margin-bottom:4px}

/* ---------- sections ---------- */
.eap section{scroll-margin-top:72px}
.eap .block{padding:clamp(64px,9vw,120px) 0}
.eap .head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(24px,5vw,64px);align-items:end;margin-bottom:clamp(40px,5vw,64px)}
.eap .head h2{font-size:clamp(34px,4vw,52px)}
.eap .head p{color:var(--ink-soft);max-width:38em;margin:0}

/* practice areas — ruled list, not cards */
.eap .areas{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(32px,6vw,88px);border-top:2px solid var(--navy)}
.eap .area{display:grid;grid-template-columns:56px 1fr;gap:4px 20px;padding:30px 0 32px;border-bottom:1px solid var(--rule)}
.eap .area svg{grid-row:span 2;width:44px;height:44px;color:var(--navy)}
.eap .area h3{font-size:26px;color:var(--navy)}
.eap .area p{color:var(--ink-soft);margin:6px 0 0;font-size:16px}

/* procedure — genuine sequence */
.eap .proc{background:var(--navy-deep)}
.eap .proc .head p{color:rgba(255,255,255,.72)}
.eap .route{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:0;padding:0;list-style:none}
.eap .route::before{content:"";position:absolute;left:0;right:0;top:22px;height:1px;background:linear-gradient(90deg,var(--crimson),var(--silver))}
.eap .route li{position:relative;padding:62px 22px 0 0}
.eap .route li::before{content:"";position:absolute;top:13px;left:0;width:18px;height:18px;border-radius:50%;background:var(--navy-deep);border:2px solid var(--silver)}
.eap .route li:first-child::before{border-color:var(--crimson);background:var(--crimson)}
.eap .route .when{font-family:var(--serif);font-style:italic;color:var(--silver);font-size:17px}
.eap .route h3{font-size:23px;margin:6px 0 10px}
.eap .route p{font-size:15px;color:rgba(255,255,255,.72);margin:0}
.eap .proc .note{margin-top:56px;padding-top:24px;border-top:1px solid var(--navy-line);font-size:14px;color:rgba(255,255,255,.55);max-width:62em}

/* origin */
.eap .origin{background:var(--paper)}
.eap .origin .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:center}
.eap .origin h2{font-size:clamp(32px,3.6vw,46px);margin-bottom:24px}
.eap .origin p{color:var(--ink-soft);font-family:var(--serif);font-size:20px;line-height:1.6}
.eap .firms{display:grid;grid-template-columns:1fr 1fr;background:var(--white);border:1px solid var(--rule)}
.eap .firm{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:40px 24px;text-align:center;min-height:260px}
.eap .firm + .firm{border-left:1px solid var(--rule)}
.eap .firm img{max-height:120px;width:auto;object-fit:contain}
.eap .firm .llhh{max-height:62px}
.eap .firm span{font-size:14px;color:var(--ink-soft)}
.eap .plus{grid-column:1/-1;border-top:1px solid var(--rule);padding:18px;text-align:center;font-family:var(--serif);font-size:18px;color:var(--navy)}

/* principles */
.eap .princ{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,56px)}
.eap .princ h3{font-size:24px;color:var(--navy);padding-top:18px;border-top:2px solid var(--crimson);margin-bottom:10px}
.eap .princ p{color:var(--ink-soft);font-size:16px;margin:0}

/* contact */
.eap .contact .wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,6vw,96px)}
.eap .contact h2{font-size:clamp(34px,4vw,52px);margin-bottom:20px}
.eap .contact .lede{color:rgba(255,255,255,.8);max-width:30em}
.eap .lines{margin:36px 0 0;padding:0;list-style:none;border-top:1px solid var(--navy-line)}
.eap .lines li{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--navy-line);flex-wrap:wrap}
.eap .lines span{color:rgba(255,255,255,.62);font-size:15px}
.eap .lines a{font-family:var(--serif);font-size:21px;text-decoration:none}
.eap .lines a:hover{text-decoration:underline;text-decoration-color:var(--crimson)}

.eap .eap-form{background:var(--white);color:var(--ink);padding:clamp(24px,4vw,44px);border-top:4px solid var(--crimson)}
.eap .eap-form h3{font-size:28px;color:var(--navy);margin-bottom:6px}
.eap .eap-form .sub{color:var(--ink-soft);font-size:15px;margin-bottom:26px}
.eap .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.eap .eap-form label{display:block;font-size:14px;font-weight:500;margin-bottom:16px}
.eap .eap-form input,.eap .eap-form select,.eap .eap-form textarea{display:block;width:100%;margin-top:6px;font:16px/1.4 var(--sans);color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:2px;padding:12px 14px}
.eap .eap-form textarea{min-height:110px;resize:vertical}
.eap .eap-form input:focus,.eap .eap-form select:focus,.eap .eap-form textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(1,38,82,.15);background:#fff}
.eap .eap-form .check{display:flex;gap:10px;align-items:flex-start;font-weight:400;color:var(--ink-soft);font-size:14px}
.eap .eap-form .check input{width:auto;margin-top:3px}
.eap .eap-form .btn{width:100%;margin-top:6px}
.eap .eap-form .msg{margin-top:16px;padding:14px 16px;background:var(--paper);border-left:3px solid var(--navy);font-size:15px}
.eap .eap-form .msg-error{border-left-color:var(--crimson)}

.eap .eap-footer{background:var(--navy-deep);color:rgba(255,255,255,.6);font-size:14px;padding:36px 0}
.eap .eap-footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.eap .eap-footer nav{display:flex;gap:22px;flex-wrap:wrap}
.eap .eap-footer a{text-decoration:none}
.eap .eap-footer a:hover{color:#fff}

/* ---------- responsive ---------- */
@media (max-width:980px){
  .eap .nav{display:none}
  .eap .top .btn{margin-left:auto}
  .eap .hero .wrap,.eap .head,.eap .origin .wrap,.eap .contact .wrap,.eap .urgent .wrap{grid-template-columns:1fr}
  .eap .film{max-width:520px}
  .eap .route{grid-template-columns:1fr;padding-left:6px}
  .eap .route::before{left:14px;right:auto;top:0;bottom:0;width:1px;height:auto;background:linear-gradient(180deg,var(--crimson),var(--silver))}
  .eap .route li{padding:0 0 34px 52px}
  .eap .route li::before{top:4px;left:0}
  .eap .princ{grid-template-columns:1fr}
}
@media (max-width:720px){
  .eap .areas{grid-template-columns:1fr}
  .eap .urgent ol{grid-template-columns:1fr}
  .eap .brand span{display:none}
  .eap .row{grid-template-columns:1fr}
  .eap .firms{grid-template-columns:1fr}
  .eap .firm + .firm{border-left:0;border-top:1px solid var(--rule)}
  .eap .firm{min-height:0}
}

/* WordPress */
.eap .eap-form .hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.eap .eap-form .msg{margin:0 0 20px}
.admin-bar .eap .top{top:32px}
@media (max-width:782px){.admin-bar .eap .top{top:46px}}
@media (max-width:600px){.admin-bar .eap .top{top:0}}

/* Logos enlazados a las webs de los despachos */
.eap a.firm{text-decoration:none;color:inherit}
.eap a.firm small{display:block;margin-top:2px;font-size:13px;color:var(--navy);text-decoration:underline;text-decoration-color:var(--crimson);text-underline-offset:3px}
.eap a.firm:hover small{color:var(--crimson)}
.eap .eap-form #eapSent{margin:16px 0 0}

/* Canales de contacto de los despachos socios */
.eap .contact .via{margin:34px 0 0;font-family:var(--serif);font-style:italic;font-size:18px;color:var(--silver)}
.eap .channels{display:grid;grid-template-columns:1fr;gap:28px;margin-top:14px}
.eap .channel h3{font-size:26px;color:var(--white);margin:0}
.eap .channel .role{margin:4px 0 0;font-size:14px;color:rgba(255,255,255,.62)}
.eap .channel .lines{margin-top:12px}
.eap .channel .lines li{padding:12px 0}
.eap .channel .lines a{font-size:19px}
.eap .contact .notice{grid-column:1/-1;margin:8px 0 0;padding-top:24px;border-top:1px solid var(--navy-line);font-size:13px;line-height:1.7;color:rgba(255,255,255,.55);max-width:62em}
@media (min-width:981px) and (max-width:1180px){.eap .channel .lines a{font-size:17px}}
.eap .contact .wrap{row-gap:44px}

/* Presencia en España y Estados Unidos */
.eap .presence{background:var(--paper)}
.eap .shores{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,8vw,140px);padding-top:76px}
.eap .bridge{position:absolute;left:0;right:0;top:0;width:100%;height:77px}
.eap .shore{position:relative;padding-top:22px;border-top:2px solid var(--navy)}
.eap .shore::before{content:"";position:absolute;top:-7px;left:0;width:12px;height:12px;border-radius:50%;background:var(--crimson)}
.eap .shore:last-of-type{text-align:right}
.eap .shore:last-of-type::before{left:auto;right:0}
.eap .shore h3{font-size:clamp(30px,3.2vw,40px);color:var(--navy);margin-bottom:12px}
.eap .shore p{color:var(--ink-soft);font-size:16px;margin:0;max-width:34em}
.eap .shore:last-of-type p{margin-left:auto;text-align:left}
@media (max-width:720px){
  .eap .shores{grid-template-columns:1fr;padding-top:0;gap:40px}
  .eap .bridge{display:none}
  .eap .shore:last-of-type{text-align:left}
  .eap .shore:last-of-type::before{left:0;right:auto}
  .eap .shore:last-of-type p{margin-left:0}
}

/* Cabecera con el vídeo de EAP de fondo */
.eap .hero{position:relative;overflow:hidden;background:var(--navy);color:var(--white);isolation:isolate}
.eap .hero-bg{position:absolute;inset:0;z-index:-1}
.eap .hero-bg video{position:absolute;top:0;right:0;height:100%;width:auto;aspect-ratio:1/1;max-width:none;object-fit:cover;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%);mask-image:linear-gradient(90deg,transparent 0,#000 30%)}
.eap .hero .wrap{display:block;min-height:min(86vh,760px);padding-top:clamp(56px,9vw,112px);padding-bottom:clamp(56px,9vw,112px)}
.eap .hero-copy{max-width:600px;position:relative}
.eap .motto{font-family:var(--serif);font-style:italic;font-size:clamp(22px,2.2vw,28px);line-height:1.2;color:var(--white);margin:0 0 22px;display:flex;align-items:center;gap:16px}
.eap .motto::before{content:"";width:48px;height:2px;background:var(--crimson);flex:none}
@media (max-width:1100px){
  .eap .hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,38,82,.92) 0,rgba(1,38,82,.75) 55%,rgba(1,38,82,.35) 100%)}
}
@media (max-width:720px){
  .eap .hero-bg video{left:50%;right:auto;transform:translateX(-50%);height:100%;-webkit-mask-image:none;mask-image:none}
  .eap .hero-bg::after{background:rgba(1,38,82,.8)}
  .eap .hero .wrap{min-height:0}
}
.eap .hero-copy{max-width:560px}
.eap .hero .lede{max-width:none}
@media (min-width:1101px){.eap .hero-bg video{opacity:.92}}
@media (max-width:1180px){.eap .nav{display:none}.eap .top .btn{margin-left:auto}}
@media (max-width:720px){.eap .hero-bg::after{background:rgba(1,38,82,.9)}}
