/* ==========================================================================
   EA CONSULTING — thelotlic.com
   Color-block poster. Every story is a full-width flat slab, edge to edge.
   No cards, no rules, no rounding, no shadows, no shared background.
   ========================================================================== */

@font-face{font-family:'Archivo Black';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/archivo-black-normal-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo Black';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/archivo-black-normal-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Archivo';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/archivo-italic-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/archivo-italic-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/archivo-normal-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/archivo-normal-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/archivo-normal-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/archivo-normal-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/archivo-normal-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/archivo-normal-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}

:root{
  --cream:#F4F1EA;
  --cream-2:#E9E4D8;
  --page-bg:#E8E4DB;
  --ink:#17150F;
  --cobalt:#12365C;
  --coral:#E4573D;
  --mustard:#C9A227;

  --on-cream-body:#3B3729;
  --on-cream-muted:#7C766A;
  --on-ink-body:#D8D2C4;
  --on-ink-muted:#B8B2A4;
  --on-cobalt-body:#C7D3E1;
  --on-cobalt-faint:#9FB4CB;
  --on-coral-body:#FBD9CF;
  --on-coral-faint:#F0A895;
  --on-mustard-body:#4A4118;

  --display:'Archivo Black','Archivo Black Fallback','Helvetica Neue',Arial,sans-serif;
  --body:'Archivo','Helvetica Neue',Arial,system-ui,sans-serif;

  --pad-x:clamp(20px,3.2vw,44px);
  --pad-y:clamp(28px,3.2vw,44px);
}

*,*::before,*::after{box-sizing:border-box;}

html{-webkit-text-size-adjust:100%;}

body{
  margin:0;
  background:var(--page-bg);
  color:var(--ink);
  font-family:var(--body);
  font-size:17.5px;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

.ea-shell{
  max-width:1380px;
  margin:0 auto;
  background:var(--cream);
  overflow-x:hidden;
}

a{color:inherit;text-decoration:none;}
a:hover{opacity:.75;}
img{max-width:100%;height:auto;display:block;}

:focus-visible{outline:3px solid var(--coral);outline-offset:2px;}
.ea-masthead :focus-visible,.ea-optin :focus-visible,.ea-footer :focus-visible{outline-color:var(--cream);}

.ea-sr{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

/* --- Advertorial disclosure strip ---------------------------------------- */

.ea-disclosure{
  background:var(--ink);
  color:var(--cream);
  font-size:12.5px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding:9px var(--pad-x);
}

/* --- Masthead ------------------------------------------------------------ */

.ea-masthead{
  background:var(--cobalt);
  color:var(--cream);
  padding:26px var(--pad-x) 30px;
}
.ea-masthead-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}
.ea-wordmark{
  font-family:var(--display);
  font-size:clamp(23px,2.5vw,34px);
  letter-spacing:-0.01em;
  line-height:1;
  text-transform:uppercase;
}
.ea-nav{
  display:flex;
  gap:24px;
  font-size:15.5px;
  font-weight:500;
  align-items:center;
  flex-wrap:wrap;
}
.ea-nav a{display:inline-flex;align-items:center;gap:7px;}
.ea-nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--mustard);}
.ea-nav a img{flex:none;}
.ea-nav-cta{background:var(--coral);padding:8px 16px;color:var(--cream);}
.ea-nav-cta[aria-current="page"]{box-shadow:none;}
.ea-tagline{
  margin:6px 0 0;
  font-size:14.5px;
  line-height:1.5;
  color:var(--on-cobalt-faint);
}
.ea-navtoggle{display:none;}

/* --- Kickers ------------------------------------------------------------- */

.ea-kicker{
  display:flex;
  width:fit-content;
  align-items:center;
  gap:8px;
  font-size:15px;
  font-weight:600;
  line-height:1.2;
}
.ea-kicker img{flex:none;}
.ea-kicker--sm{font-size:14px;gap:7px;}
.ea-kicker--coral{color:var(--coral);}
.ea-kicker--mustard{color:var(--mustard);}
.ea-kicker--soft{color:var(--on-coral-body);}

/* --- Hero slab (featured article) ---------------------------------------- */

.ea-hero{
  display:block;
  background:var(--coral);
  color:var(--cream);
  padding:var(--pad-y) var(--pad-x) calc(var(--pad-y) + 4px);
}
.ea-hero .ea-kicker{color:var(--cream);}
.ea-hero-title{
  display:block;
  margin:12px 0 0;
  font-family:var(--display);
  font-size:clamp(34px,5.4vw,74px);
  line-height:.96;
  letter-spacing:-0.015em;
  max-width:15em;
  text-transform:uppercase;
  text-wrap:pretty;
}
.ea-hero-dek{
  display:block;
  margin:18px 0 0;
  font-size:clamp(16.5px,1.4vw,19px);
  line-height:1.55;
  max-width:36em;
  color:var(--on-coral-body);
}
.ea-hero-meta{display:block;margin:20px 0 0;font-size:14.5px;color:var(--on-coral-faint);}

/* --- Two-up and three-up slab grids -------------------------------------- */

.ea-grid2{display:grid;grid-template-columns:1fr 1fr;}
.ea-grid3{display:grid;grid-template-columns:1fr 1fr 1fr;}

.ea-slab{
  display:block;
  padding:36px clamp(20px,2.9vw,40px) 40px;
}
.ea-slab--ink{background:var(--ink);color:var(--cream);}
.ea-slab--ink .ea-kicker{color:var(--mustard);}
.ea-slab--ink .ea-slab-dek{color:var(--on-ink-muted);}
.ea-slab--mustard{background:var(--mustard);color:var(--ink);}
.ea-slab--mustard .ea-slab-dek{color:var(--on-mustard-body);}
.ea-slab--coral{background:var(--coral);color:var(--cream);}
.ea-slab--coral .ea-kicker{color:var(--on-coral-body);}
.ea-slab--coral .ea-slab-dek{color:var(--on-coral-body);}
.ea-slab--cobalt{background:var(--cobalt);color:var(--cream);}
.ea-slab--cobalt .ea-kicker{color:var(--mustard);}
.ea-slab--cobalt .ea-slab-dek{color:var(--on-cobalt-body);}

.ea-slab-title{
  display:block;
  margin:10px 0 0;
  font-family:var(--display);
  font-size:clamp(25px,2.6vw,36px);
  line-height:1.04;
  letter-spacing:-0.01em;
  text-transform:uppercase;
  text-wrap:pretty;
}
.ea-slab-dek{
  display:block;
  margin:12px 0 0;
  font-size:clamp(15.5px,1.25vw,16.5px);
  line-height:1.55;
}

.ea-cell{
  display:block;
  padding:30px clamp(20px,2.5vw,34px) 36px;
  background:var(--cream);
}
.ea-cell--alt{background:var(--cream-2);}
.ea-cell-title{
  display:block;
  margin-top:8px;
  font-family:var(--display);
  font-size:clamp(20px,1.75vw,24px);
  line-height:1.1;
  text-transform:uppercase;
  text-wrap:pretty;
}

/* --- Category band on the homepage ---------------------------------------- */

.ea-catband{background:var(--cream);}
.ea-catband-h{
  margin:0;padding:30px var(--pad-x) 0;
  font-family:var(--display);font-size:18px;text-transform:uppercase;letter-spacing:.02em;
}
.ea-catband .ea-grid4{margin-top:18px;}
.ea-grid4{display:grid;grid-template-columns:repeat(4,1fr);}
.ea-grid4 .ea-slab-title{font-size:clamp(22px,1.9vw,26px);}
.ea-grid4 .ea-slab{padding:28px clamp(18px,2.2vw,30px) 32px;}

/* --- Figure slab (cobalt number + image) --------------------------------- */

.ea-figure{display:grid;grid-template-columns:1fr 460px;}
.ea-figure-text{
  background:var(--cobalt);
  color:var(--cream);
  padding:40px var(--pad-x) 44px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ea-figure-num{
  font-family:var(--display);
  font-size:clamp(46px,6.7vw,92px);
  line-height:1;
  color:var(--mustard);
}
.ea-figure-dek{
  margin:14px 0 0;
  font-size:clamp(16px,1.35vw,18px);
  line-height:1.55;
  color:var(--on-cobalt-body);
  max-width:30em;
}
.ea-figure-note{
  margin:12px 0 0;
  font-size:13.5px;
  line-height:1.5;
  color:var(--on-cobalt-faint);
  max-width:34em;
}
.ea-figure img{width:100%;height:100%;object-fit:cover;}

/* --- Category page ------------------------------------------------------- */

.ea-cathead{
  background:var(--ink);
  color:var(--cream);
  padding:var(--pad-y) var(--pad-x);
}
.ea-cathead-h1{
  margin:10px 0 0;
  font-family:var(--display);
  font-size:clamp(34px,4.4vw,60px);
  line-height:1;
  letter-spacing:-0.012em;
  text-transform:uppercase;
}
.ea-cathead-dek{
  margin:14px 0 0;
  font-size:clamp(16.5px,1.4vw,19px);
  line-height:1.55;
  color:var(--on-ink-muted);
  max-width:34em;
}

.ea-row{
  display:grid;
  grid-template-columns:1fr 460px;
  gap:0;
  background:var(--cream);
  align-items:stretch;
}
.ea-row--alt{background:var(--cream-2);}
.ea-row-text{
  padding:34px clamp(20px,3.2vw,44px) 38px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ea-row-title{
  display:block;
  margin-top:10px;
  font-family:var(--display);
  font-size:clamp(24px,2.4vw,34px);
  line-height:1.06;
  letter-spacing:-0.01em;
  text-transform:uppercase;
  text-wrap:pretty;
}
.ea-row-dek{
  display:block;
  margin-top:12px;
  font-size:16.5px;
  line-height:1.55;
  color:var(--on-cream-body);
  max-width:40em;
}
.ea-row-meta{
  display:block;
  margin-top:14px;
  font-size:14px;
  color:var(--on-cream-muted);
}
.ea-row-img{width:100%;height:100%;object-fit:cover;min-height:220px;}

/* --- Article ------------------------------------------------------------- */

.ea-article{background:var(--cream);padding:clamp(30px,3.5vw,48px) var(--pad-x) clamp(30px,3.5vw,44px);}
.ea-article-inner{max-width:720px;margin:0 auto;}

.ea-article-h1{
  margin:12px 0 0;
  font-family:var(--display);
  font-size:clamp(31px,4vw,54px);
  line-height:1.0;
  letter-spacing:-0.012em;
  text-transform:uppercase;
  text-wrap:pretty;
}
.ea-article-meta{margin:16px 0 0;font-size:14.5px;color:var(--on-cream-muted);}
.ea-article-note{
  margin:14px 0 0;
  padding:12px 16px;
  background:var(--cream-2);
  border-left:3px solid var(--coral);
  font-size:14px;
  line-height:1.55;
  color:var(--on-cream-body);
}
.ea-article-hero{margin:28px 0 0;}
.ea-article-hero img{width:100%;aspect-ratio:16/9;object-fit:cover;}
.ea-article-hero figcaption{
  margin-top:8px;font-size:13.5px;color:var(--on-cream-muted);
}

.ea-standfirst{
  margin:30px 0 0;
  font-size:clamp(19px,1.6vw,21px);
  line-height:1.55;
  font-weight:500;
}
.ea-article-inner p{margin:18px 0 0;font-size:17.5px;line-height:1.68;color:var(--on-cream-body);}
.ea-article-inner p:first-child{margin-top:0;}
.ea-article-inner h2{
  margin:34px 0 0;
  font-family:var(--display);
  font-size:clamp(22px,1.9vw,26px);
  line-height:1.1;
  color:var(--ink);
  text-transform:uppercase;
  text-wrap:pretty;
}
.ea-article-inner h3{
  margin:26px 0 0;
  font-family:var(--body);
  font-weight:600;
  font-size:18.5px;
  line-height:1.35;
  color:var(--ink);
}
.ea-article-inner ul,.ea-article-inner ol{
  margin:16px 0 0;padding-left:22px;color:var(--on-cream-body);
}
.ea-article-inner li{margin:8px 0;line-height:1.62;}
.ea-article-inner strong{color:var(--ink);font-weight:600;}
.ea-article-inner a:not(.ea-kicker):not(.ea-btn){
  box-shadow:inset 0 -1px 0 var(--coral);
}
.ea-article-inner figure{margin:30px 0 0;}
.ea-article-inner figure img{width:100%;aspect-ratio:16/9;object-fit:cover;}
.ea-article-inner figcaption{margin-top:8px;font-size:13.5px;line-height:1.5;color:var(--on-cream-muted);}

/* Inline dark callout, as in the design's "el trámite, en corto" block */
.ea-callout{
  margin:30px 0 0;
  background:var(--ink);
  color:var(--cream);
  padding:26px clamp(20px,2.4vw,30px);
}
.ea-callout .ea-kicker{color:var(--mustard);font-size:14.5px;}
.ea-callout p{margin:10px 0 0;font-size:16.5px;line-height:1.6;color:var(--on-ink-body);}
.ea-callout p:first-of-type{margin-top:10px;}
.ea-callout ul{margin:10px 0 0;padding-left:20px;color:var(--on-ink-body);}
.ea-callout li{margin:6px 0;}
.ea-callout strong{color:var(--cream);}

/* Key-figure band inside an article */
.ea-keyfig{
  margin:30px 0 0;
  background:var(--cobalt);
  color:var(--cream);
  padding:28px clamp(20px,2.4vw,30px) 30px;
}
.ea-keyfig-num{
  font-family:var(--display);
  font-size:clamp(38px,4.4vw,58px);
  line-height:1;
  color:var(--mustard);
}
.ea-keyfig p{margin:12px 0 0;font-size:16.5px;line-height:1.55;color:var(--on-cobalt-body);}
.ea-keyfig .ea-fine{margin-top:10px;font-size:13.5px;color:var(--on-cobalt-faint);}

/* Tables */
.ea-tablewrap{margin:30px 0 0;overflow-x:auto;}
.ea-table{width:100%;border-collapse:collapse;font-size:16px;min-width:520px;}
.ea-table caption{
  text-align:left;font-size:14px;color:var(--on-cream-muted);
  padding-bottom:10px;line-height:1.5;
}
.ea-table th,.ea-table td{
  padding:11px 14px;text-align:left;vertical-align:top;line-height:1.45;
}
.ea-table thead th{
  background:var(--ink);color:var(--cream);
  font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;
}
.ea-table tbody tr{background:var(--cream);}
.ea-table tbody tr:nth-child(even){background:var(--cream-2);}
.ea-table td strong{font-weight:600;}

/* Sources + disclaimer */
.ea-sources{margin:40px 0 0;padding-top:24px;border-top:3px solid var(--ink);}
.ea-sources-h{
  margin:0;font-family:var(--display);font-size:18px;text-transform:uppercase;letter-spacing:.01em;
}
.ea-sources ul{margin:12px 0 0;padding-left:20px;}
.ea-sources li{margin:7px 0;font-size:15.5px;line-height:1.5;word-break:break-word;}

.ea-disclaimer{
  margin:30px 0 0;
  background:var(--cream-2);
  padding:24px clamp(18px,2.2vw,28px) 26px;
  border-left:3px solid var(--ink);
}
.ea-disclaimer h2{
  margin:0;font-family:var(--display);font-size:16px;
  text-transform:uppercase;letter-spacing:.03em;
}
.ea-disclaimer p{margin:10px 0 0;font-size:14.5px;line-height:1.6;color:var(--on-cream-body);}

.ea-tail{background:var(--cream);padding:clamp(30px,3.5vw,44px) var(--pad-x) clamp(30px,3.5vw,44px);}
.ea-tail .ea-sources{margin-top:0;}

/* --- Opt-in -------------------------------------------------------------- */

.ea-optin{
  background:var(--coral);
  color:var(--cream);
  padding:34px var(--pad-x) 38px;
}
.ea-optin-inner{max-width:720px;margin:0 auto;}
/* No margin anywhere: .ea-article and .ea-legal now carry their own bottom padding,
   so the opt-in butts straight up against the preceding block and the edge-to-edge
   slab system holds. A margin here would show a stray band of page ground. */
.ea-optin-title{
  margin:10px 0 0;
  font-family:var(--display);
  font-size:clamp(23px,2.2vw,30px);
  line-height:1.06;
  max-width:18em;
  text-transform:uppercase;
  text-wrap:pretty;
}
.ea-optin-dek{
  margin:12px 0 0;font-size:16px;line-height:1.55;color:var(--on-coral-body);max-width:40em;
}
.ea-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:22px;}
.ea-form input[type=email]{
  font-family:var(--body);font-size:15.5px;padding:13px 14px;border:0;
  background:var(--cream);color:var(--ink);min-width:0;
}
.ea-form button{
  font-family:var(--body);font-size:15.5px;font-weight:600;padding:13px 26px;border:0;
  background:var(--ink);color:var(--cream);cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;justify-content:center;
}
.ea-form button:hover{opacity:.85;}
.ea-consent{
  display:flex;gap:10px;align-items:flex-start;margin-top:14px;
  font-size:13.5px;line-height:1.5;color:var(--on-coral-body);cursor:pointer;
}
.ea-consent input{margin-top:3px;flex:none;accent-color:var(--ink);width:16px;height:16px;}
.ea-consent a{box-shadow:inset 0 -1px 0 currentColor;}
.ea-form-msg{margin:10px 0 0;font-size:14px;font-weight:600;min-height:0;}
.ea-form-msg:empty{margin:0;}
.ea-optin-fine{margin:12px 0 0;font-size:12.5px;line-height:1.5;color:var(--on-coral-body);}

/* --- Related ------------------------------------------------------------- */

.ea-related{background:var(--cream);}
.ea-related-h{
  margin:0;padding:30px var(--pad-x) 0;
  font-family:var(--display);font-size:18px;text-transform:uppercase;letter-spacing:.02em;
}
.ea-related .ea-grid3{margin-top:18px;}

/* --- Footer -------------------------------------------------------------- */

.ea-footer{
  background:var(--ink);
  color:var(--on-ink-muted);
  padding:30px var(--pad-x) 36px;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:24px;
  flex-wrap:wrap;
}
.ea-footer-wordmark{
  font-family:var(--display);font-size:20px;color:var(--cream);text-transform:uppercase;
}
.ea-footer-brand p{margin:8px 0 0;font-size:14px;max-width:34em;line-height:1.55;}
.ea-footer-nav{display:flex;gap:22px;font-size:14.5px;flex-wrap:wrap;}
.ea-footer-copy{width:100%;font-size:13px;color:#6E6858;padding-top:6px;}

/* --- Cookie banner ------------------------------------------------------- */

.ea-cookie{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  background:var(--ink);color:var(--on-ink-body);
  padding:16px var(--pad-x);
  display:flex;gap:18px;align-items:center;justify-content:space-between;
  flex-wrap:wrap;
  border-top:3px solid var(--coral);
}
/* The author-level display:flex above beats the UA stylesheet's [hidden]{display:none},
   so the hidden attribute needs an explicit override — without this the banner is
   permanently visible and the dismiss button looks dead. */
.ea-cookie[hidden]{display:none;}
.ea-cookie p{margin:0;font-size:14px;line-height:1.5;max-width:70ch;}
.ea-cookie a{box-shadow:inset 0 -1px 0 currentColor;}
.ea-cookie button{
  font-family:var(--body);font-size:15px;font-weight:600;padding:11px 26px;border:0;
  background:var(--coral);color:var(--cream);cursor:pointer;flex:none;
}
.ea-cookie button:hover{opacity:.85;}

/* --- Legal / plain pages ------------------------------------------------- */

.ea-legal{background:var(--cream);padding:clamp(30px,3.5vw,48px) var(--pad-x) clamp(34px,4vw,52px);}
.ea-legal-inner{max-width:720px;margin:0 auto;}
.ea-legal-h1{
  margin:0;font-family:var(--display);
  font-size:clamp(30px,3.4vw,46px);line-height:1.02;letter-spacing:-0.01em;
  text-transform:uppercase;
}
.ea-legal-inner h2{
  margin:32px 0 0;font-family:var(--display);font-size:19px;
  text-transform:uppercase;letter-spacing:.02em;
}
.ea-legal-inner h3{margin:22px 0 0;font-size:17px;font-weight:600;}
.ea-legal-inner p{margin:12px 0 0;font-size:16.5px;line-height:1.65;color:var(--on-cream-body);}
.ea-legal-inner ul{margin:12px 0 0;padding-left:22px;color:var(--on-cream-body);}
.ea-legal-inner li{margin:7px 0;font-size:16.5px;line-height:1.6;}
.ea-legal-inner a{box-shadow:inset 0 -1px 0 var(--coral);}
.ea-legal-inner a.ea-nolink{box-shadow:none;}

/* The registration + VAT block: deliberately loud, directly under the name. */
.ea-idblock{
  margin:20px 0 0;
  background:var(--cream-2);
  border-left:6px solid var(--coral);
  padding:22px clamp(18px,2.2vw,28px) 24px;
}
.ea-idblock-label{
  font-size:12px;letter-spacing:.09em;text-transform:uppercase;
  color:var(--on-cream-muted);font-weight:600;
}
.ea-idblock-num{
  display:block;margin-top:4px;
  font-family:var(--display);font-size:clamp(24px,2.4vw,30px);line-height:1.1;
  color:var(--coral);
}
.ea-idblock-row{margin-top:16px;}
.ea-idblock-row .ea-idblock-num{color:var(--ink);font-size:clamp(20px,2vw,25px);}

.ea-contactgrid{
  margin:20px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0;
}
.ea-contactgrid > div{padding:22px clamp(18px,2.2vw,26px) 24px;}
.ea-contactgrid > div:first-child{background:var(--ink);color:var(--cream);}
.ea-contactgrid > div:last-child{background:var(--cobalt);color:var(--cream);}
.ea-contactgrid h3{margin:0;font-family:var(--display);font-size:15px;text-transform:uppercase;letter-spacing:.04em;color:var(--mustard);}
.ea-contactgrid p{margin:10px 0 0;font-size:16.5px;line-height:1.6;color:var(--cream);}
.ea-contactgrid a{box-shadow:inset 0 -1px 0 currentColor;}

/* --- Thank-you page ------------------------------------------------------ */

.ea-thanks{
  background:var(--cobalt);color:var(--cream);
  padding:clamp(40px,5vw,72px) var(--pad-x);
}
.ea-thanks-inner{max-width:720px;margin:0 auto;}
.ea-thanks h1{
  margin:12px 0 0;font-family:var(--display);
  font-size:clamp(30px,3.6vw,50px);line-height:1.02;text-transform:uppercase;
}
.ea-thanks p{margin:16px 0 0;font-size:17.5px;line-height:1.6;color:var(--on-cobalt-body);max-width:38em;}
.ea-btn{
  display:inline-flex;align-items:center;gap:8px;margin-top:26px;
  background:var(--coral);color:var(--cream);
  font-size:15.5px;font-weight:600;padding:13px 26px;
}

/* --- Responsive ---------------------------------------------------------- */

@media (max-width:1000px){
  .ea-grid4{grid-template-columns:1fr 1fr;}
  .ea-figure{grid-template-columns:1fr;}
  .ea-figure img{height:auto;aspect-ratio:16/9;}
  .ea-row{grid-template-columns:1fr;}
  .ea-row-img{min-height:0;aspect-ratio:16/9;}
  .ea-grid3{grid-template-columns:1fr 1fr;}
  .ea-grid3 > :nth-child(3){grid-column:1 / -1;}
}

@media (max-width:860px){
  body{font-size:17px;}
  .ea-navtoggle{
    display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:44px;height:40px;padding:0 10px;border:0;background:transparent;cursor:pointer;flex:none;
  }
  .ea-navtoggle span:not(.ea-sr){display:block;height:2px;background:var(--cream);width:100%;}
  .ea-nav{
    display:none;width:100%;flex-direction:column;align-items:flex-start;
    gap:0;margin-top:18px;font-size:16.5px;
  }
  .ea-nav.is-open{display:flex;}
  .ea-nav a{width:100%;padding:13px 0;border-bottom:1px solid rgba(244,241,234,.18);}
  .ea-nav a[aria-current="page"]{box-shadow:none;color:var(--mustard);}
  .ea-nav-cta{margin-top:14px;border-bottom:0;justify-content:center;padding:13px 16px;}
  .ea-masthead-row{flex-wrap:wrap;}
}

@media (max-width:720px){
  .ea-grid2,.ea-grid3,.ea-grid4{grid-template-columns:1fr;}
  .ea-grid3 > :nth-child(3){grid-column:auto;}
  .ea-cell--alt{background:var(--cream);}
  .ea-cell{border-bottom:1px solid rgba(23,21,15,.12);}
  .ea-form{grid-template-columns:1fr;}
  .ea-contactgrid{grid-template-columns:1fr;}
  .ea-footer{flex-direction:column;gap:18px;}
  .ea-cookie{flex-direction:column;align-items:flex-start;}
  .ea-cookie button{width:100%;}
}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important;transition-duration:.01ms !important;}
}
