/* ==========================================================
   ELÃ — v2: warm, clear, modern (2026)
   ========================================================== */

/* ==========================================================
   Fontes — servidas do próprio domínio.

   Antes vinham do Google Fonts por um <link media="print"
   onload="this.media='all'">, ou seja: o CSS das fontes só era
   aplicado depois do onload, e só aí é que os ficheiros .woff2
   começavam a ser pedidos (a fonts.gstatic.com, outra ligação).
   O resultado era a primeira pintura em Times New Roman/Arial e
   uma troca visível meio segundo depois, mesmo com tudo em cache.

   Agora os @font-face estão neste stylesheet (mesmo domínio, já
   render-blocking) e os três ficheiros acima da dobra — Fraunces
   normal, Fraunces itálico e Inter — são pré-carregados no <head>.
   Em cache quente já estão prontos antes da primeira pintura.
   ========================================================== */

/* Fraunces — variável (opsz 9..144), usada em títulos e no logo */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 300 500;
  font-display: swap;
  src: url(/assets/fonts/fraunces-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: 'Fraunces';
  font-style: normal;
  font-weight: 300 500;
  font-display: swap;
  src: url(/assets/fonts/fraunces-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: 'Fraunces';
  font-style: italic;
  font-weight: 300 400;
  font-display: swap;
  src: url(/assets/fonts/fraunces-italic-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: 'Fraunces';
  font-style: italic;
  font-weight: 300 400;
  font-display: swap;
  src: url(/assets/fonts/fraunces-italic-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;
}

/* Inter — variável, corpo de texto e navegação */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(/assets/fonts/inter-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: 'Inter';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(/assets/fonts/inter-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;
}

/* Caveat — apontamentos manuscritos (abaixo da dobra) */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 500 600;
  font-display: swap;
  src: url(/assets/fonts/caveat-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: 'Caveat';
  font-style: normal;
  font-weight: 500 600;
  font-display: swap;
  src: url(/assets/fonts/caveat-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;
}

/* JetBrains Mono — etiquetas e números */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url(/assets/fonts/jetbrains-mono-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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url(/assets/fonts/jetbrains-mono-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;
}

/* Fallbacks com as métricas verticais das fontes reais. Se numa
   ligação lenta a primeira pintura ainda apanhar a fonte de sistema,
   as caixas de linha já têm a altura certa, por isso a troca não
   empurra o layout — e Georgia/Segoe UI parecem-se muito mais com
   Fraunces/Inter do que Times New Roman/Arial.
   Valores tirados dos próprios ficheiros: Fraunces upm 2000,
   asc 1956, desc 510; Inter upm 2048, asc 1984, desc 494. */
@font-face {
  font-family: 'Fraunces Fallback';
  src: local('Georgia'), local('Times New Roman'), local('Times');
  ascent-override: 97.8%;
  descent-override: 25.5%;
  line-gap-override: 0%;
}
@font-face {
  font-family: 'Inter Fallback';
  src: local('Segoe UI'), local('Helvetica Neue'), local('Helvetica'), local('Arial');
  ascent-override: 96.88%;
  descent-override: 24.12%;
  line-gap-override: 0%;
}

:root {
  /* Warm paper palette */
  --bg: #FBF7EF;
  --bg-2: #F4EDDF;
  --surface: #FFFFFF;
  --ink: #1A1814;
  --ink-2: #4A463E;
  --ink-3: #8A8478;
  --line: #E8DEC9;

  /* Brand accents */
  --blue: #BFD4F2;
  --blue-2: #DCE7F7;
  --blue-3: #EEF3FB;
  --coral: #E8623C;
  --coral-2: #F4A48B;
  --coral-3: #FBE5DD;
  --sage: #C6D4B7;
  --butter: #F2DDA5;

  --radius-sm: 12px;
  --radius: 20px;
  --radius-lg: 28px;
  --radius-xl: 40px;

  --font-display: 'Fraunces', 'Fraunces Fallback', Georgia, 'Times New Roman', serif;
  --font-body: 'Inter', 'Inter Fallback', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, monospace;
  --font-hand: 'Caveat', 'Segoe Script', 'Bradley Hand', cursive;

  --container: 1200px;
  --gutter: clamp(20px, 4vw, 40px);

  --shadow-soft: 0 1px 2px rgba(26,24,20,0.04), 0 8px 24px -12px rgba(26,24,20,0.08);
  --shadow-md: 0 1px 3px rgba(26,24,20,0.05), 0 20px 40px -20px rgba(26,24,20,0.15);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html, body { margin: 0; padding: 0; }
[id] { scroll-margin-top: 96px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body {
  background: var(--bg);
  color: var(--ink);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Paper grain. A fixed overlay of SVG turbulence, generated in the browser, so
   there is no image to download. Sits above the sticky nav (z-index 50) but
   never takes a click. Static, not motion, so reduced-motion keeps it. */
body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 60;
  pointer-events: none;
  opacity: .14;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");
}

img { display: block; max-width: 100%; }
a { color: inherit; }

h1, h2, h3, h4, h5 {
  font-family: var(--font-display);
  font-weight: 400;
  letter-spacing: -0.018em;
  line-height: 1.05;
  margin: 0;
  text-wrap: balance;
}
p { margin: 0; text-wrap: pretty; }

.container {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--gutter);
}

/* ----- Buttons ----- */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 22px;
  border-radius: 999px;
  font-family: var(--font-body);
  font-weight: 500;
  font-size: 15px;
  text-decoration: none;
  border: 1px solid transparent;
  cursor: pointer;
  transition: transform .2s ease, background .2s, color .2s, border-color .2s, box-shadow .2s;
  white-space: nowrap;
}
.btn-primary { background: var(--ink); color: var(--bg); }
.btn-primary:hover { background: var(--coral); transform: translateY(-1px); }
.btn-ghost { background: transparent; color: var(--ink); border-color: var(--line); }
.btn-ghost:hover { border-color: var(--ink); }
.btn-coral { background: var(--coral); color: #fff; }
.btn-coral:hover { background: var(--ink); transform: translateY(-1px); }
.btn-pale { background: var(--surface); color: var(--ink); border: 1px solid var(--line); box-shadow: var(--shadow-soft); }
.btn-pale:hover { background: var(--ink); color: var(--bg); border-color: var(--ink); }
.btn-sm { padding: 10px 16px; font-size: 14px; }

.arrow-ico { width: 14px; height: 14px; transition: transform .2s; }
.btn:hover .arrow-ico { transform: translate(2px, -2px); }

/* ----- Eyebrow ----- */
.eyebrow {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-3);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.eyebrow .dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--coral);
}

/* ----- Nav ----- */
.nav {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(251, 247, 239, 0.78);
  backdrop-filter: blur(16px) saturate(140%);
  border-bottom: 1px solid color-mix(in oklab, var(--line) 60%, transparent);
}
.nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px var(--gutter);
  max-width: var(--container);
  margin: 0 auto;
}
.nav-logo {
  display: flex; align-items: center; gap: 10px;
  text-decoration: none;
}
.nav-logo img { height: 84px; width: auto; }
.nav-logo-main { height: 64px !important; width: auto; }
.nav-logo-text {
  font-family: var(--font-display);
  font-size: 36px;
  letter-spacing: -0.02em;
}
.nav-pill {
  display: flex;
  align-items: center;
  gap: 3px;
  padding: 4px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 999px;
  box-shadow: var(--shadow-soft);
}
.nav-pill a {
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  color: var(--ink-2);
  transition: background .2s, color .2s;
}
.nav-pill a:hover { background: var(--bg-2); color: var(--ink); }
/* The pill stops fitting between the logo and the CTA at about 1005px, so it
   hands over to the hamburger a little above that rather than pushing the page
   wide. (At the old 900px breakpoint the nav overflowed from ~1050px down.) */
@media (max-width: 1060px) { .nav-pill { display: none; } }

/* Nav right group: language switch + book button */
.nav-right {
  display: flex;
  align-items: center;
  gap: 14px;
}

/* ----- Language switch ----- */
/* One flag only, always the language you are NOT reading, so there is no
   active/inactive pair to distinguish -- it just needs to read as clickable. */
.flag-btn {
  display: block;
  flex: none;
  width: 28px;
  height: 19px;
  padding: 0;
  border: none;
  background: none;
  border-radius: 5px;
  overflow: hidden;
  cursor: pointer;
  opacity: 0.8;
  box-shadow: 0 0 0 1px var(--line);
  transition: opacity .22s ease, transform .22s ease, box-shadow .22s ease;
}
.flag-btn:hover,
.flag-btn:focus-visible {
  opacity: 1;
  transform: translateY(-1px);
  box-shadow: 0 0 0 1px var(--ink-3);
}
.flag-btn svg { width: 100%; height: 100%; display: block; }
@media (max-width: 420px) {
  .nav-right { gap: 10px; }
  .flag-btn { width: 24px; height: 16px; }
}

/* ----- Hero ----- */
.hero {
  padding: clamp(50px, 8vw, 90px) 0 clamp(40px, 6vw, 70px);
  position: relative;
}
.hero-inner { display: flex; flex-direction: column; gap: 36px; }
.hero-top {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: clamp(30px, 5vw, 60px);
  align-items: end;
}
@media (max-width: 900px) {
  .hero-top { grid-template-columns: 1fr; }
}
.hero-title {
  font-size: clamp(44px, 7.5vw, 96px);
  letter-spacing: -0.03em;
  line-height: 0.96;
  font-weight: 300;
  margin-top: 18px;
}
.hero-title em { font-style: italic; color: var(--coral); font-weight: 400; }
.hero-aside {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding-bottom: 8px;
}
.hero-intro {
  color: var(--ink-2);
  font-size: 17px;
  line-height: 1.55;
  max-width: 38ch;
}
.hero-cta-row {
  display: flex; gap: 10px; flex-wrap: wrap;
}

/* "Conhece a equipa" — the hero's sign-post down into the team row that peeks
   up from below. Written and drawn live.
   Every resting state here is the FINISHED one (text fully shown, stroke fully
   drawn); the hidden state exists only under .js-reveal, which main.js adds
   solely when it is going to animate. So no JS, no IntersectionObserver, or
   reduced motion all land on a cue that is simply already written. */
.hero-cue {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  margin-top: 40px;
  color: var(--coral);
}
.hero-cue-text {
  font-family: var(--font-hand);
  font-size: clamp(24px, 2.4vw, 31px);
  font-weight: 600;
  line-height: 1.1;
  transform: rotate(-1.5deg);
  clip-path: inset(0 -4% 0 0);
}
.hero-cue-arrow {
  width: 40px;
  height: 56px;
  overflow: visible;
}
.hero-cue-arrow path { stroke-dasharray: 1; stroke-dashoffset: 0; }

.js-reveal .hero-cue-text { clip-path: inset(0 100% 0 0); }
.js-reveal .hero-cue-arrow path { stroke-dashoffset: 1; }

/* Quick on purpose: this is a nudge, not a performance. */
.js-reveal .hero-cue.is-visible .hero-cue-text {
  animation: cue-write .55s cubic-bezier(.4,.5,.3,1) forwards;
}
.js-reveal .hero-cue.is-visible .hero-cue-arrow path {
  animation: cue-draw .32s ease forwards;
}
/* The arrowhead only starts once the shaft has been drawn. */
.js-reveal .hero-cue.is-visible .hero-cue-arrow path:nth-child(1) { animation-delay: .5s; }
.js-reveal .hero-cue.is-visible .hero-cue-arrow path:nth-child(2) { animation-delay: .78s; }

@keyframes cue-write { to { clip-path: inset(0 -4% 0 0); } }
@keyframes cue-draw  { to { stroke-dashoffset: 0; } }

@media (max-width: 560px) { .hero-cue { margin-top: 26px; } }

/* Hero feature row: 3 friendly cards */
.hero-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 12px;
}
@media (max-width: 800px) { .hero-features { grid-template-columns: 1fr; } }
.feature-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 42px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: transform .25s ease, box-shadow .25s ease;
  text-decoration: none;
  color: var(--ink);
  position: relative;
  overflow: hidden;
}
.feature-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.feature-icon {
  width: 48px; height: 48px;
  border-radius: 14px;
  display: grid; place-items: center;
  flex-shrink: 0;
}
.feature-card.f-blue .feature-icon { background: var(--blue); }
.feature-card.f-coral .feature-icon { background: var(--coral-3); color: var(--coral); }
.feature-card.f-sage .feature-icon { background: var(--sage); }
.feature-card h3 {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 400;
  letter-spacing: -0.015em;
}
.feature-card p {
  color: var(--ink-2);
  font-size: 14.5px;
  line-height: 1.55;
}
.feature-link {
  margin-top: auto;
  font-size: 13px;
  font-weight: 500;
  color: var(--ink);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

/* ----- Sections ----- */
section { padding: clamp(70px, 9vw, 110px) 0; }
.section-head {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px 30px;
  align-items: end;
  margin-bottom: 40px;
}
.section-head .section-meta { display: flex; flex-direction: column; gap: 12px; }
.section-title {
  font-size: clamp(32px, 4.5vw, 52px);
  letter-spacing: -0.02em;
  font-weight: 300;
}
.section-title em { font-style: italic; color: var(--coral); font-weight: 400; }

/* Hand-drawn underline under every coral emphasis — 14 per page, so it reads
   as the site's signature gesture.
   Drawn as a background rather than a positioned SVG because these run from
   "aprender" to "escolas internacionais": the long ones wrap, and an absolutely
   positioned stroke would break across the line. box-decoration-break keeps the
   stroke on every fragment. The full-width state lives here, outside @supports,
   so a browser that cannot animate it still gets the underline. */
.hero-title em,
.section-title em,
.mission-quote em,
.cta-title em {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 8' preserveAspectRatio='none'%3E%3Cpath d='M2,5.6 C20,2.4 38,7 58,4.6 78,2.2 96,6.4 118,3.4' fill='none' stroke='%23E8623C' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 0 98%;
  background-size: 100% .17em;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding-bottom: .06em;
}
/* The dark CTA panels tint their emphasis with --coral-2 for contrast, so the
   stroke under them has to match or it reads as a different accent. */
.cta-title em {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 8' preserveAspectRatio='none'%3E%3Cpath d='M2,5.6 C20,2.4 38,7 58,4.6 78,2.2 96,6.4 118,3.4' fill='none' stroke='%23F4A48B' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.section-lead {
  color: var(--ink-2);
  font-size: 16px;
  max-width: 50ch;
  line-height: 1.6;
}
.head-row {
  display: flex; justify-content: space-between; align-items: end; gap: 30px; flex-wrap: wrap;
  margin-bottom: 48px;
}
.head-row .head-left { max-width: 60ch; display: flex; flex-direction: column; gap: 18px; }
.head-row .section-lead { margin-top: 4px; }

/* Section headings rise as they enter, driven by the same [data-reveal]
   observer as the team cards. Deliberately JS rather than a second CSS
   scroll-timeline system: this one is tested and works in every browser, so
   the baseline motion is universal and view() stays for the flourishes.
   The hidden state only exists once main.js adds .js-reveal. */
.js-reveal .head-row {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .55s ease, transform .55s cubic-bezier(.2,.7,.2,1);
}
.js-reveal .head-row.is-visible { opacity: 1; transform: none; }

/* ----- Team ----- */
/* Bridges the hero (--bg) into Approach (--bg-2) so neither edge shows a seam. */
.team {
  background: linear-gradient(180deg, var(--bg) 0%, var(--blue-3) 42%, var(--bg-2) 100%);
  /* Pulled up so the row peeks into the hero. The section carries no heading of
     its own — the hero's "Conhece a equipa" cue introduces it instead. */
  padding-top: 0;
  margin-top: -58px;
}
.team-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 92px 16px;
  margin-top: 74px;
}
@media (max-width: 900px) { .team-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .team-grid { grid-template-columns: 1fr; } }

/* Each card is the person's own colour, with the cut-out standing on the
   bottom edge. The tilt lives in --rot, set inline per card. */
.team-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 0;
  padding: 0 22px 28px;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  /* Not overflow:hidden — the person has to break the top edge. The bottom
     cut they still need comes from clip-path on .team-figure instead. */
  overflow: visible;
  transform: rotate(var(--rot, 0deg));
  transition: transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s, opacity .5s;
}
.team-card:hover {
  transform: rotate(0deg) translateY(-8px);
  z-index: 2;
}
.t-butter { --card-bg: var(--butter); }
.t-coral  { --card-bg: var(--coral); }
.t-sage   { --card-bg: var(--sage); }
.t-blue   { --card-bg: var(--blue-2); }

.team-figure {
  /* The photo is taken out of flow on purpose. As a normal grid item a taller
     image simply makes the card taller; absolutely positioned, it keeps the
     card at its own height and spills over the top edge instead. */
  position: relative;
  /* Only this slice of the person sits inside the card; the rest of the photo
     rises out of the top. */
  height: 240px;
  /* Open at the top so the head escapes the card, closed on the other three
     sides so the photo is cut cleanly by the card's own edges. */
  clip-path: inset(-120% 0 0 0);
}
/* Sized by height so all four read at the same scale despite differing widths. */
.team-figure img {
  position: absolute;
  bottom: 0;
  /* left/right/margin centres it without touching transform, which the hover
     and the scroll animation both need. */
  left: 0;
  right: 0;
  margin: 0 auto;
  /* No max-width. With height fixed, a max-width clamp does NOT rescale the
     height — it just squashes the photo horizontally. The column above is
     sized for the widest cut-out (494x900) so nothing ever needs clamping. */
  height: clamp(235px, 22vw, 302px);
  width: auto;
  max-width: none;
  object-fit: contain;
  object-position: bottom;
  transition: transform .45s cubic-bezier(.2,.7,.2,1);
}
/* Independent scale/translate, not transform: the scroll animation below owns
   transform on this same element, and the two would otherwise overwrite one
   another. These compose cleanly. */
.team-card:hover .team-figure img { translate: 0 -6px; scale: 1.03; }

.team-body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 9px;
}
.team-card h3 {
  font-family: var(--font-hand);
  font-size: clamp(27px, 2.4vw, 32px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  color: var(--ink);
}
/* The wobbly border-radius stands in for the hand-drawn ring around the
   catchphrase in the original cards — no SVG needed. */
.team-quote {
  font-family: var(--font-hand);
  font-size: 17px;
  font-weight: 500;
  color: var(--ink);
  padding: 5px 13px;
  border: 1.6px solid var(--ink);
  border-radius: 46% 54% 52% 48% / 62% 38% 62% 38%;
  transform: rotate(-1.5deg);
  transition: transform .35s cubic-bezier(.2,.7,.2,1);
}
.team-card:hover .team-quote { transform: rotate(1.5deg); }
.team-traits {
  list-style: none;
  padding: 0;
  margin: 2px 0 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.team-traits li {
  position: relative;
  padding-left: 20px;
  font-family: var(--font-hand);
  font-size: 16.5px;
  line-height: 1.25;
  color: var(--ink);
}
.team-traits li::before {
  content: "";
  position: absolute;
  left: 0; top: .62em;
  width: 12px; height: 2px;
  border-radius: 2px;
  background: var(--ink);
  opacity: .55;
  transform: rotate(-4deg);
}

@media (max-width: 560px) {
  .team-figure { height: 260px; }
  .team-figure img { height: 320px; }
}

/* The rest of the team, who have not had their photo taken yet. Same card
   family, full width, left blank-paper white so it reads as a card still
   waiting for its portrait rather than a footnote. */
.team-more {
  grid-column: 1 / -1;
  align-items: center;
  text-align: center;
  min-height: 0;
  padding: 34px 36px;
  --card-bg: var(--surface);
}
.team-more-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  max-width: 52ch;
}
.team-more h3 { font-size: clamp(23px, 2.4vw, 28px); }
.team-more-head p { font-size: 14.5px; line-height: 1.55; color: var(--ink-2); }

/* Reveal on scroll. The hidden state only exists once main.js adds .js-reveal,
   so with JS off or unsupported the cards render plainly visible. */
.js-reveal .team-card { opacity: 0; transform: translateY(20px) rotate(0deg); }
.js-reveal .team-card.is-visible {
  opacity: 1;
  transform: rotate(var(--rot, 0deg));
  transition-delay: calc(var(--i, 0) * 90ms);
}
/* Has to out-specify the rule above, which also sets transform — otherwise a
   revealed card ignores .team-card:hover and never straightens. */
.js-reveal .team-card.is-visible:hover {
  transform: rotate(0deg) translateY(-8px);
  transition-delay: 0s;
}

@media (prefers-reduced-motion: reduce) {
  .team-card,
  .js-reveal .team-card,
  .js-reveal .team-card.is-visible {
    opacity: 1;
    transform: none;
    transition: box-shadow .25s;
    transition-delay: 0s;
  }
  .team-card:hover { transform: none; }
  .team-card:hover .team-figure img { translate: none; scale: none; }
  .team-quote, .team-card:hover .team-quote { transform: none; }
}

/* ----- Approach (Fórmula) ----- */
.approach {
  background: var(--bg-2);
}
.approach-grid {
  /* Containing block for the two connecting arrows below. Being absolutely
     positioned, they are not grid items and create no tracks. */
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
@media (max-width: 820px) { .approach-grid { grid-template-columns: 1fr; } }

/* Hand-drawn arrows sitting in the 16px gaps, so 01 -> 02 -> 03 reads as the
   journey the section claims it is. Purely decorative, hence no markup.

   They hang off the grid, not off the cards, even though a card would place
   them more simply. Each card is masked into a torn sheet further down, and a
   mask clips the element's pseudo-elements along with the element: an arrow
   parked on .approach-card lost everything past the card's own edge, leaving
   only the stub of its tail that fell inside. The grid carries no mask, so
   from here the arrow spans the gap whole.

   Positions come from the track geometry rather than a guess: with three equal
   columns and a 16px gap each column is (100% - 32px)/3 wide, so the gaps are
   centred at 1c + 8px and 2c + 24px. Half the arrow's 32px width comes off
   each to place its left edge, which is why it overhangs 8px onto the cards
   either side - that overhang is what makes it read as bridging them.
   Hidden once the grid stacks: a 16px vertical gap is too tight for a legible
   arrow, and the numbers already carry the order there. */
.approach-grid::before,
.approach-grid::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 32px;
  height: 24px;
  margin-top: -12px;
  /* Over the cards, which are positioned and would otherwise paint across the
     8px of overhang. */
  z-index: 1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 20' preserveAspectRatio='none'%3E%3Cpath d='M1,10.5 C7,8.2 13,12.4 23,9.8' fill='none' stroke='%23E8623C' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M17.5,5.4 L23.4,9.7 L17.9,13.8' fill='none' stroke='%23E8623C' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 0 50%;
  background-size: 100% 100%;
  opacity: .75;
}
.approach-grid::before { left: calc((100% - 32px) / 3 - 8px); }
.approach-grid::after  { left: calc((100% - 32px) * 2 / 3 + 8px); }
@media (max-width: 820px) {
  .approach-grid::before, .approach-grid::after { display: none; }
}
.approach-card { position: relative; }

.approach-card {
  min-width: 0;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 44px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: 280px;
  transition: transform .25s, box-shadow .25s;
}
.approach-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.approach-card .step {
  display: flex; align-items: center; justify-content: space-between;
}
.approach-card .step-num {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.1em;
  color: var(--ink-3);
  text-transform: uppercase;
}
.approach-card .step-tag {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-family: var(--font-mono);
  padding: 4px 10px;
  border-radius: 999px;
  background: var(--coral-3);
  color: var(--coral);
}
.approach-card.a-blue .step-tag { background: var(--blue-2); color: #2A4D80; }
.approach-card.a-sage .step-tag { background: var(--sage); color: #3F5A2E; }
.approach-card h3 {
  font-size: 26px;
  letter-spacing: -0.02em;
  margin-top: 8px;
}
.approach-card p { color: var(--ink-2); font-size: 15px; }
.approach-card ul {
  list-style: none; padding: 0; margin: auto 0 0;
  display: flex; flex-direction: column; gap: 6px;
  border-top: 1px solid var(--line);
  padding-top: 16px;
}
.approach-card li {
  font-size: 13.5px;
  color: var(--ink-2);
  display: flex; align-items: center; gap: 8px;
}
.approach-card li::before {
  content: ''; width: 5px; height: 5px; border-radius: 50%; background: var(--coral); flex-shrink: 0;
}

/* Reveal on scroll, as one chain: step 01 rises, its arrow draws across the
   gap, step 02 rises, its arrow draws, step 03 rises — the section animates
   the journey it describes. Same [data-reveal] observer as the team cards, so
   the timing is a per-card transition-delay off --i rather than a second
   scroll system, and it works in every browser (the arrows used to draw off
   animation-timeline: view(), which only Chrome has).
   Every resting state below is the finished one; the hidden state exists only
   under .js-reveal, which main.js adds solely when it is going to animate. So
   no JS, no IntersectionObserver, or reduced motion all land on the section
   already assembled. */
.js-reveal .approach-card {
  opacity: 0;
  /* translate, not transform: :hover owns transform on this same element and
     the two would overwrite one another. These compose. */
  translate: 0 22px;
  transition: opacity .55s ease, translate .55s cubic-bezier(.2,.7,.2,1),
              transform .25s, box-shadow .25s;
}
.js-reveal .approach-card.is-visible {
  opacity: 1;
  translate: none;
  /* Only the reveal is staggered — the hover pair stays instant, or a card
     would sit still for up to 0.9s before lifting. */
  transition-delay: calc(var(--i, 0) * 450ms), calc(var(--i, 0) * 450ms), 0s, 0s;
}

/* The arrows live on the grid, so they take their cue from the grid's own
   reveal rather than a card's. Same 450ms beat, offset so each one starts once
   the card behind it is most of the way up and lands just before the next one
   begins — the arrow is what hands the eye across. */
.js-reveal .approach-grid::before,
.js-reveal .approach-grid::after { background-size: 0 100%; }
.js-reveal .approach-grid.is-visible::before,
.js-reveal .approach-grid.is-visible::after {
  animation: approach-arrow-draw .45s ease both;
}
.js-reveal .approach-grid.is-visible::before { animation-delay: 260ms; }
.js-reveal .approach-grid.is-visible::after  { animation-delay: 710ms; }
@keyframes approach-arrow-draw {
  from { background-size: 0 100%; }
  to   { background-size: 100% 100%; }
}

/* Stacked, the arrows are gone and the cards arrive one screen at a time, so
   a queue delay would just look like lag. */
@media (max-width: 820px) {
  .js-reveal .approach-card.is-visible { transition-delay: 0s; }
}

/* ----- Services ----- */
.svc-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
@media (max-width: 720px) { .svc-grid { grid-template-columns: 1fr; } }
.svc-row {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 42px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  transition: transform .25s, box-shadow .25s;
}
.svc-row:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.svc-row .svc-head {
  display: flex; justify-content: space-between; align-items: center; gap: 12px;
}
.svc-row .svc-mode {
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-family: var(--font-mono);
  padding: 4px 10px;
  border-radius: 999px;
  background: var(--bg-2);
  color: var(--ink-2);
}
.svc-row.svc-online .svc-mode { background: var(--blue-2); color: #2A4D80; }
.svc-row h4 {
  font-size: 22px;
  font-weight: 400;
  letter-spacing: -0.015em;
}
.svc-row .svc-formats {
  display: flex; gap: 8px; flex-wrap: wrap; margin-top: auto;
}
.svc-row .svc-format {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 6px 12px;
  font-size: 13px;
  color: var(--ink-2);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.svc-row .svc-format strong {
  color: var(--ink);
  font-weight: 600;
}

/* Subjects */
.subjects-block {
  margin-top: 30px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 44px;
}
.subjects-head {
  display: flex; justify-content: space-between; align-items: baseline; gap: 20px;
  margin-bottom: 22px; flex-wrap: wrap;
}
.subjects-head h4 {
  font-size: 24px;
  font-weight: 400;
}
.subjects-tabs {
  display: flex; gap: 6px; flex-wrap: wrap;
}
.subj-tab {
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--bg);
  font-size: 13px;
  color: var(--ink-2);
  cursor: pointer;
  font-family: var(--font-body);
  font-weight: 500;
  transition: all .2s;
}
.subj-tab:hover { border-color: var(--ink-2); }
.subj-tab.active {
  background: var(--ink);
  color: var(--bg);
  border-color: var(--ink);
}
.subj-list {
  display: flex; flex-wrap: wrap; gap: 8px;
}
.subj-chip {
  padding: 8px 14px;
  border-radius: 10px;
  background: var(--bg);
  border: 1px solid var(--line);
  font-size: 14px;
  color: var(--ink);
}

/* ----- International ----- */
.intl { background: var(--bg-2); }
.intl-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
/* A card cannot shrink below ~293px (the heading keeps its longest word and the
   pill is nowrap), so three columns need 907px of container — only available
   from about 986px up. Collapsing at 900px left the page 62px wide in between. */
@media (max-width: 1000px) { .intl-cards { grid-template-columns: 1fr; } }
/* 230px suits a narrow three-column card; once they go full width the content
   is far shorter than that and the floor just leaves dead space. */
.intl-cards .svc-row { min-height: 230px; }
@media (max-width: 1000px) { .intl-cards .svc-row { min-height: 0; } }
/* Lets the pill drop below the heading instead of forcing the grid wide again
   if the copy ever gets longer. */
.intl-cards .svc-row .svc-head { align-items: flex-start; flex-wrap: wrap; }
.intl-cards .svc-row h4 { font-size: 21px; line-height: 1.15; }
.intl-cards .svc-mode {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-family: var(--font-mono);
  padding: 4px 10px;
  border-radius: 999px;
  background: var(--blue-2);
  color: #2A4D80;
  white-space: nowrap;
}

.intl-trust {
  margin-top: 14px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
@media (max-width: 720px) { .intl-trust { grid-template-columns: 1fr; } }
.intl-trust-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 44px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: transform .25s, box-shadow .25s;
}
.intl-trust-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.intl-trust-icon {
  width: 44px; height: 44px;
  border-radius: 12px;
  background: var(--sage);
  color: var(--ink);
  display: grid; place-items: center;
}
.intl-trust-card h5 {
  font-family: var(--font-display);
  font-size: 21px;
  font-weight: 400;
  letter-spacing: -0.015em;
}
.intl-trust-card p { color: var(--ink-2); font-size: 15px; line-height: 1.6; }

.intl-cta {
  margin-top: 28px;
  background: var(--ink);
  color: var(--bg);
  border-radius: var(--radius-xl);
  padding: clamp(34px, 5vw, 56px);
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: clamp(28px, 4vw, 50px);
  align-items: end;
}
@media (max-width: 760px) { .intl-cta { grid-template-columns: 1fr; align-items: start; } }
.intl-cta .cta-title { font-size: clamp(30px, 4vw, 46px); }
.intl-cta-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
@media (max-width: 760px) { .intl-cta-actions { justify-content: flex-start; } }
.intl-cta .btn-primary { background: var(--coral); color: #fff; }
.intl-cta .btn-primary:hover { background: var(--bg); color: var(--ink); }
.intl-cta .btn-ghost { color: var(--bg); border-color: color-mix(in oklab, var(--bg) 25%, transparent); }
.intl-cta .btn-ghost:hover { background: var(--bg); color: var(--ink); border-color: var(--bg); }

/* ----- Psychology ----- */
.psy {
  background: var(--coral-3);
}
.psy-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 44px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-height: 240px;
  transition: transform .25s, box-shadow .25s;
}
.psy-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.psy-card h4 { font-size: 22px; font-weight: 400; letter-spacing: -0.015em; }
.psy-card p { color: var(--ink-2); font-size: 15px; }
.psy-card .psy-icon {
  width: 44px; height: 44px;
  border-radius: 12px;
  background: var(--coral);
  color: #fff;
  display: grid; place-items: center;
}
.psy-card .psy-bullets {
  list-style: none; padding: 0; margin: auto 0 0;
  display: flex; flex-direction: column; gap: 4px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}
.psy-card .psy-bullets li { font-size: 13px; color: var(--ink-2); }
.psy-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width: 820px) { .psy-grid { grid-template-columns: 1fr; } }

/* ----- Mission ----- */
.mission {
  background: var(--bg-2);
}
.mission-card {
  /* Named because .mission-body's optical nudge below is derived from it. */
  --mq-size: clamp(26px, 3.4vw, 40px);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-xl);
  padding: clamp(48px, 6.6vw, 78px);
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  column-gap: clamp(30px, 5vw, 60px);
  row-gap: clamp(28px, 3.4vw, 40px);
  align-items: start;
}
@media (max-width: 820px) { .mission-card { grid-template-columns: 1fr; } }
.mission-quote {
  font-family: var(--font-display);
  font-size: var(--mq-size);
  letter-spacing: -0.02em;
  line-height: 1.15;
  font-weight: 300;
}
.mission-quote em { color: var(--coral); font-style: italic; }
.mission-body {
  display: flex; flex-direction: column; gap: 14px;
  /* Optical top alignment. Both columns share a box top (align-items:start),
     but their first line of type does not start at the same depth inside it:
     each line box adds half-leading, then the font adds its own gap between
     the ascender and the cap. Measured from the two font files —
       Fraunces  ascender .978em, cap .700em, line-height 1.15
       Inter     ascender .969em, cap .728em, line-height 1.6
     — the quote's cap sits .2365 x its font-size below the box top and the
     body's 6.76px below, so the body is pushed down by the difference and the
     two blocks read as starting on the same line. max() because at the small
     end of the clamp the quote is the shallower of the two. */
  padding-top: max(0px, calc(0.2365 * var(--mq-size) - 6.76px));
}
.mission-body p {
  color: var(--ink-2);
  font-size: 15.5px;
}

/* Values — nested in the mission card, under a hairline. They are a footnote
   to the statement above, not six cards competing with it, so they carry no
   surface of their own: number, name, one line. */
.mission-values {
  grid-column: 1 / -1;
  list-style: none;
  margin: 0;
  padding: clamp(30px, 3vw, 40px) 0 0;
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px clamp(28px, 4vw, 54px);
}
@media (max-width: 640px) {
  .mission-values { grid-template-columns: repeat(2, 1fr); gap: 22px 26px; }
}
.mission-values li { display: grid; gap: 3px; }
.mission-values .mv-num {
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: .08em;
  color: var(--ink-3);
}
.mission-values h5 {
  font-family: var(--font-display);
  font-size: 17px;
  font-weight: 400;
  letter-spacing: -0.01em;
}
.mission-values p {
  font-size: 12.5px;
  color: var(--ink-2);
  line-height: 1.5;
}

/* ----- Recruitment ----- */
.recruit { background: var(--blue-3); }
.recruit-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 28px;
}
@media (max-width: 900px) { .recruit-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 540px) { .recruit-grid { grid-template-columns: 1fr; } }

/* ----- Space ----- */
.space-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 20px;
}
@media (max-width: 820px) { .space-grid { grid-template-columns: 1fr; } }
.space-photo {
  background: var(--bg-2);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  aspect-ratio: 4 / 3;
  position: relative;
  overflow: hidden;
}
.space-photo .ph-inner {
  position: absolute; inset: 0;
  background-image:
    radial-gradient(circle at 30% 30%, var(--butter) 0%, transparent 40%),
    radial-gradient(circle at 75% 65%, var(--blue) 0%, transparent 50%);
  display: grid; place-items: center;
}
.space-photo .ph-tag {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-3);
  background: rgba(255,255,255,0.85);
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid var(--line);
}
.locations-list {
  display: flex; flex-direction: column; gap: 14px;
}
.location-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 36px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: transform .25s, box-shadow .25s, border-color .25s, background .25s;
  text-align: left;
  font: inherit;
  cursor: pointer;
  width: 100%;
}
.location-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.location-card.active {
  border-color: var(--ink);
  box-shadow: var(--shadow-md);
}
.location-card.active::after {
  content: '';
  position: absolute;
}
.location-card { position: relative; }
.location-card.active::before {
  content: '';
  position: absolute;
  left: 0; top: 22px; bottom: 22px;
  width: 3px;
  background: var(--coral);
  border-radius: 0 3px 3px 0;
}
.space-photo { position: relative; }
.location-card .loc-head { display: flex; justify-content: space-between; align-items: center; }
.location-card .loc-num {
  font-family: var(--font-mono);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--ink-3);
}
.location-card .loc-pin {
  width: 32px; height: 32px; border-radius: 50%;
  background: var(--blue);
  display: grid; place-items: center;
}
.location-card h4 {
  font-family: var(--font-display);
  font-size: 20px;
  font-weight: 400;
}
.location-card p {
  font-size: 14px;
  color: var(--ink-2);
  line-height: 1.5;
}
.location-card .loc-link {
  margin-top: 4px;
  font-size: 13px;
  font-weight: 500;
  color: var(--coral);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

/* ----- FAQ ----- */
.faq-list {
  display: flex; flex-direction: column;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.faq-item {
  border-bottom: 1px solid var(--line);
}
.faq-item:last-child { border-bottom: none; }
.faq-q {
  position: relative;
  width: 100%;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  padding: 26px 30px;
  display: flex; justify-content: space-between; align-items: center; gap: 20px;
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 400;
  color: var(--ink);
  letter-spacing: -0.01em;
}
/* Hovering a question underlines it in pencil, drawn left to right, the way
   you would mark the one you had picked out. Slow on purpose - the drawing is
   the point, not the state it ends in - and it lets go again in a fraction of
   the time, so sweeping down the list never feels sticky.

   The stroke is an SVG of three passes over one wobbly path: a firm line, a
   lighter second pass a hair below it, and a broken dashed pass over both,
   all pushed around by a turbulence displacement. That is what gives it
   uneven weight and a ragged edge instead of the flat 2px bar it replaces.
   Three seeds, cycled down the list, so no two questions near each other
   carry the same stroke - a single one repeated seven times reads as a stamp,
   not as a hand.
   The coral is baked into the SVG because a data URI cannot see custom
   properties; every other hand-drawn stroke on the page does the same.

   Revealed with clip-path rather than scaleX: scaling would squeeze the
   texture in from the right as it grew, which looks like a rubber band
   stretching, where a clip genuinely uncovers a line already sitting there.
   It sits on top of the row's own hairline (bottom offset by half its height)
   so it reads as that line being gone over in pencil rather than as a second
   border. Inset to the text, not the row. An open question keeps its line for
   as long as it stays open. */
.faq-q::after {
  content: "";
  position: absolute;
  left: 30px; right: 30px; bottom: -5px;
  height: 10px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 12' preserveAspectRatio='none'%3E%3Cfilter id='g' x='-2%' y='-30%' width='104%' height='160%'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.05 0.7' numOctaves='3' seed='11' result='n'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='n' scale='1.6' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3Cg fill='none' stroke='%23E8623C' stroke-linecap='round' filter='url(%23g)'%3E%3Cpath d='M2.0,5.8 C7.9,5.9 25.3,5.9 37.5,6.2 C49.7,6.5 62.5,7.7 75.0,7.6 C87.5,7.6 100.0,6.1 112.5,5.9 C125.0,5.6 137.5,6.0 150.0,6.0 C162.5,6.1 175.0,6.5 187.5,6.3 C200.0,6.1 212.5,4.8 225.0,4.8 C237.5,4.8 250.3,5.8 262.5,6.0 C274.7,6.3 292.1,6.4 298.0,6.5' stroke-width='2.6' opacity='0.85'/%3E%3Cpath d='M2.0,9.0 C6.7,8.3 20.3,4.8 30.0,4.7 C39.7,4.5 50.0,7.9 60.0,8.0 C70.0,8.1 80.0,5.1 90.0,5.3 C100.0,5.5 110.0,9.2 120.0,9.1 C130.0,9.0 140.0,4.8 150.0,4.7 C160.0,4.6 170.0,8.1 180.0,8.6 C190.0,9.2 200.0,7.8 210.0,7.7 C220.0,7.7 230.0,8.3 240.0,8.5 C250.0,8.8 260.3,9.7 270.0,9.2 C279.7,8.7 293.3,6.3 298.0,5.7' stroke-width='1.3' opacity='0.5'/%3E%3Cpath d='M2.0,5.8 C7.9,5.9 25.3,5.9 37.5,6.2 C49.7,6.5 62.5,7.7 75.0,7.6 C87.5,7.6 100.0,6.1 112.5,5.9 C125.0,5.6 137.5,6.0 150.0,6.0 C162.5,6.1 175.0,6.5 187.5,6.3 C200.0,6.1 212.5,4.8 225.0,4.8 C237.5,4.8 250.3,5.8 262.5,6.0 C274.7,6.3 292.1,6.4 298.0,6.5' stroke-width='3.4' opacity='0.22' stroke-dasharray='8.3 3.7 7.2 4.6 3.4 3.5 8.3 4.5 5.8 1.7 4.6 5.0 2.3 2.3 8.6 2.8 3.1 2.3 8.3 2.3 4.7 3.5 7.5 3.0 2.1 3.3 1.8 1.4 2.9 3.8 3.6 3.8 2.7 1.5 1.7 3.8 7.9 1.9 3.3 1.1 6.3 2.2 2.5 3.6 6.0 2.8 2.6 3.6 5.7 2.7 2.7 4.7'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  clip-path: inset(0 100% 0 0);
  /* Retracting: quick, and back the way it came. */
  transition: clip-path .3s ease;
}
.faq-item:nth-child(3n+2) .faq-q::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 12' preserveAspectRatio='none'%3E%3Cfilter id='g' x='-2%' y='-30%' width='104%' height='160%'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.05 0.7' numOctaves='3' seed='27' result='n'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='n' scale='1.6' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3Cg fill='none' stroke='%23E8623C' stroke-linecap='round' filter='url(%23g)'%3E%3Cpath d='M2.0,6.6 C7.9,6.6 25.3,6.6 37.5,6.8 C49.7,7.0 62.5,8.1 75.0,7.7 C87.5,7.4 100.0,5.4 112.5,4.8 C125.0,4.3 137.5,4.0 150.0,4.3 C162.5,4.7 175.0,7.1 187.5,7.2 C200.0,7.4 212.5,5.7 225.0,5.4 C237.5,5.1 250.3,5.2 262.5,5.5 C274.7,5.8 292.1,6.9 298.0,7.2' stroke-width='2.6' opacity='0.85'/%3E%3Cpath d='M2.0,4.7 C6.7,4.7 20.3,4.8 30.0,5.1 C39.7,5.4 50.0,6.0 60.0,6.4 C70.0,6.8 80.0,7.9 90.0,7.7 C100.0,7.6 110.0,5.7 120.0,5.2 C130.0,4.8 140.0,5.0 150.0,5.1 C160.0,5.2 170.0,5.2 180.0,5.7 C190.0,6.2 200.0,8.1 210.0,8.1 C220.0,8.0 230.0,5.3 240.0,5.3 C250.0,5.3 260.3,7.6 270.0,8.0 C279.7,8.4 293.3,7.7 298.0,7.6' stroke-width='1.3' opacity='0.5'/%3E%3Cpath d='M2.0,6.6 C7.9,6.6 25.3,6.6 37.5,6.8 C49.7,7.0 62.5,8.1 75.0,7.7 C87.5,7.4 100.0,5.4 112.5,4.8 C125.0,4.3 137.5,4.0 150.0,4.3 C162.5,4.7 175.0,7.1 187.5,7.2 C200.0,7.4 212.5,5.7 225.0,5.4 C237.5,5.1 250.3,5.2 262.5,5.5 C274.7,5.8 292.1,6.9 298.0,7.2' stroke-width='3.4' opacity='0.22' stroke-dasharray='4.0 4.9 8.7 4.7 7.4 4.5 1.5 3.5 3.4 3.9 4.7 3.2 5.6 3.3 7.7 4.9 4.1 4.2 8.2 2.6 2.4 3.0 7.2 3.1 2.9 3.8 3.9 4.5 2.8 3.4 4.4 4.9 2.5 4.5 4.6 2.5 3.1 3.0 8.5 5.0 8.5 3.4 3.3 3.0 6.4 2.2 8.9 1.3 3.3 1.8 2.8 1.3'/%3E%3C/g%3E%3C/svg%3E"); }
.faq-item:nth-child(3n)   .faq-q::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 12' preserveAspectRatio='none'%3E%3Cfilter id='g' x='-2%' y='-30%' width='104%' height='160%'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.05 0.7' numOctaves='3' seed='43' result='n'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='n' scale='1.6' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3Cg fill='none' stroke='%23E8623C' stroke-linecap='round' filter='url(%23g)'%3E%3Cpath d='M2.0,4.2 C7.9,4.7 25.3,6.7 37.5,6.7 C49.7,6.8 62.5,4.8 75.0,4.6 C87.5,4.5 100.0,5.5 112.5,5.9 C125.0,6.2 137.5,6.4 150.0,6.7 C162.5,6.9 175.0,7.3 187.5,7.1 C200.0,7.0 212.5,6.0 225.0,5.8 C237.5,5.6 250.3,6.3 262.5,6.0 C274.7,5.7 292.1,4.5 298.0,4.2' stroke-width='2.6' opacity='0.85'/%3E%3Cpath d='M2.0,6.2 C6.7,6.3 20.3,6.5 30.0,6.6 C39.7,6.7 50.0,6.8 60.0,6.7 C70.0,6.6 80.0,6.1 90.0,6.2 C100.0,6.2 110.0,6.9 120.0,7.0 C130.0,7.0 140.0,6.8 150.0,6.4 C160.0,6.0 170.0,4.8 180.0,4.8 C190.0,4.8 200.0,6.5 210.0,6.5 C220.0,6.5 230.0,5.0 240.0,4.7 C250.0,4.5 260.3,4.9 270.0,5.1 C279.7,5.3 293.3,5.7 298.0,5.8' stroke-width='1.3' opacity='0.5'/%3E%3Cpath d='M2.0,4.2 C7.9,4.7 25.3,6.7 37.5,6.7 C49.7,6.8 62.5,4.8 75.0,4.6 C87.5,4.5 100.0,5.5 112.5,5.9 C125.0,6.2 137.5,6.4 150.0,6.7 C162.5,6.9 175.0,7.3 187.5,7.1 C200.0,7.0 212.5,6.0 225.0,5.8 C237.5,5.6 250.3,6.3 262.5,6.0 C274.7,5.7 292.1,4.5 298.0,4.2' stroke-width='3.4' opacity='0.22' stroke-dasharray='8.8 1.2 6.9 2.9 8.6 2.6 8.4 1.6 9.0 2.7 2.9 2.4 6.2 1.1 4.4 1.0 2.0 1.7 3.2 2.1 7.3 2.7 7.9 4.6 8.2 4.8 5.8 3.7 8.1 3.2 2.6 3.1 5.5 1.7 2.2 1.7 6.7 4.2 6.4 2.7 1.7 1.0 6.4 3.1 4.9 1.7 2.4 1.7 2.5 3.4 3.8 3.2'/%3E%3C/g%3E%3C/svg%3E"); }

.faq-q:hover::after,
.faq-q:focus-visible::after,
.faq-item.open .faq-q::after {
  clip-path: inset(0 0 0 0);
  /* Near-constant speed through the middle rather than a hard ease-out: over
     this long a stroke, a curve that front-loads the travel leaves the last
     centimetre creeping, which reads as stalled rather than unhurried. */
  transition: clip-path 2.2s cubic-bezier(.35,.22,.4,1);
}

@media (prefers-reduced-motion: reduce) {
  .faq-q::after { transition-duration: .01ms; }
  .faq-q:hover::after,
  .faq-q:focus-visible::after,
  .faq-item.open .faq-q::after { transition-duration: .01ms; }
}
.faq-q .plus {
  width: 28px; height: 28px;
  border-radius: 50%;
  background: var(--bg-2);
  display: grid; place-items: center;
  flex-shrink: 0;
  transition: background .2s, transform .25s;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--ink);
}
.faq-item.open .plus { background: var(--coral); color: #fff; transform: rotate(45deg); }
.faq-a {
  max-height: 0; overflow: hidden;
  transition: max-height .3s ease;
}
.faq-item.open .faq-a { max-height: 280px; }
.faq-a-inner {
  padding: 0 24px 22px;
  color: var(--ink-2);
  font-size: 15px;
  max-width: 65ch;
}

/* ----- CTA / Contact ----- */
.cta {
  background: var(--ink);
  color: var(--bg);
  margin: 0;
}
.cta .container {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 50px;
  align-items: end;
}
@media (max-width: 820px) { .cta .container { grid-template-columns: 1fr; } }
.cta-title {
  font-size: clamp(36px, 5vw, 64px);
  font-weight: 300;
  letter-spacing: -0.025em;
  color: var(--bg);
}
.cta-title em { color: var(--coral-2); font-style: italic; font-weight: 400; }
.cta-sub {
  color: color-mix(in oklab, var(--bg) 75%, transparent);
  font-size: 16px;
  margin-top: 16px;
  max-width: 50ch;
}
.cta-actions {
  display: flex; flex-direction: column; gap: 6px;
}
.cta-action {
  display: flex; flex-direction: column; gap: 4px;
  padding: 18px 0;
  border-bottom: 1px solid color-mix(in oklab, var(--bg) 18%, transparent);
  text-decoration: none;
  color: var(--bg);
  transition: padding .25s;
}
.cta-action:hover { padding-left: 12px; }
.cta-action .label {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: color-mix(in oklab, var(--bg) 60%, transparent);
}
.cta-action .value {
  font-family: var(--font-display);
  font-size: 18px;
  word-break: break-word;
}
.cta-cta-row {
  display: flex; gap: 10px; flex-wrap: wrap; margin-top: 30px;
}
.cta .btn-primary { background: var(--coral); color: #fff; }
.cta .btn-primary:hover { background: var(--bg); color: var(--ink); }
.cta .btn-ghost { color: var(--bg); border-color: color-mix(in oklab, var(--bg) 25%, transparent); }
.cta .btn-ghost:hover { background: var(--bg); color: var(--ink); border-color: var(--bg); }

/* ----- Footer ----- */
.footer {
  background: var(--bg);
  padding: 32px 0;
  border-top: 1px solid var(--line);
}
.footer-inner {
  display: flex; justify-content: space-between; align-items: center; gap: 16px;
  flex-wrap: wrap;
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--ink-3);
  letter-spacing: 0.04em;
}
.footer-link {
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.15s ease;
}
.footer-link:hover {
  color: var(--coral);
}

/* ----- Tweaks panel ----- */
.tweaks-panel {
  position: fixed;
  bottom: 24px; right: 24px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px 18px 14px;
  width: 250px;
  z-index: 100;
  box-shadow: var(--shadow-md);
  display: none;
}
.tweaks-panel.visible { display: block; }
.tweaks-panel h5 {
  font-family: var(--font-display);
  font-size: 16px;
  font-weight: 400;
  margin: 0 0 12px;
}
.tweak-row { display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; }
.tweak-row label {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-3);
}
.tweak-opts { display: flex; gap: 4px; flex-wrap: wrap; }
.tweak-opt {
  padding: 5px 10px;
  border: 1px solid var(--line);
  border-radius: 999px;
  font-size: 12px;
  cursor: pointer;
  background: var(--bg);
  color: var(--ink);
  font-family: var(--font-body);
}
.tweak-opt:hover { border-color: var(--ink-2); }
.tweak-opt.active { background: var(--ink); color: var(--bg); border-color: var(--ink); }

/* Palette variants */
body[data-palette="warm"] {
  --bg: #FBF7EF;
  --bg-2: #F4EDDF;
}
body[data-palette="cool"] {
  --bg: #F4F7FB;
  --bg-2: #E3ECF6;
  --line: #D7E0EC;
}
body[data-palette="cream"] {
  --bg: #F8F3E5;
  --bg-2: #EFE6CD;
  --line: #DDD0AF;
}

/* Type variant */
body[data-type="serif-heavy"] { --font-body: 'Fraunces', 'Fraunces Fallback', Georgia, serif; }
body[data-type="sans-only"] { --font-display: 'Inter', 'Inter Fallback', sans-serif; }

/* Density */
body[data-density="cozy"] section { padding: clamp(50px, 6vw, 80px) 0; }
body[data-density="cozy"] .hero { padding: clamp(40px, 6vw, 60px) 0 clamp(30px, 4vw, 50px); }

/* ==========================================================
   Static-rebuild additions — mobile menu + location photos
   (mechanical ports of behaviour that was inline/JSX-only;
   no new colors, radii, fonts or spacing scale introduced)
   ========================================================== */

/* ----- Mobile menu ----- */
.nav-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--surface);
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
}
.nav-toggle-bars { display: flex; flex-direction: column; gap: 4px; }
.nav-toggle-bars span {
  display: block;
  width: 16px;
  height: 2px;
  background: var(--ink);
  border-radius: 2px;
  transition: transform .2s ease, opacity .2s ease;
}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle-bars span:nth-child(2) { opacity: 0; }
.nav-toggle[aria-expanded="true"] .nav-toggle-bars span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

.mobile-menu {
  display: none;
  flex-direction: column;
  gap: 2px;
  padding: 8px var(--gutter) 18px;
  border-top: 1px solid color-mix(in oklab, var(--line) 60%, transparent);
  background: rgba(251, 247, 239, 0.96);
  backdrop-filter: blur(16px) saturate(140%);
}
.mobile-menu.open { display: flex; }
.mobile-menu a {
  padding: 12px 8px;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
  color: var(--ink-2);
  transition: background .2s, color .2s;
}
.mobile-menu a:hover { background: var(--bg-2); color: var(--ink); }

@media (max-width: 1060px) { .nav-toggle { display: inline-flex; } }
@media (min-width: 1061px) { .mobile-menu { display: none !important; } }

/* ----- Location photos (real <img> now, was CSS backgroundImage) ----- */
.ph-inner {
  opacity: 0;
  transition: opacity .45s ease;
}
.ph-inner.active { opacity: 1; }
.ph-inner picture {
  position: absolute;
  inset: 0;
  display: block;
}
.ph-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ----- [hidden] fix -----
   .subj-list{display:flex} is an author rule with the same specificity as
   the UA default [hidden]{display:none} — author origin always wins over
   UA origin regardless of specificity/order, so without this, panels marked
   hidden (both the static markup default and the JS tab-switch, which also
   just toggles the hidden property) stay visible. */
.subj-list[hidden] { display: none; }

/* ==========================================================
   Testimonials section (#testemunhos)
   Reuses existing card/badge/eyebrow patterns — no new colors,
   radii, fonts or spacing scale introduced.
   ========================================================== */
/* The widget + Fixando tile lives as a 4th grid cell (not a separate
   row) specifically so the item count divides evenly at every column
   count below (4/2/1) — three testimonial cards alone left a dead cell
   whenever the grid wrapped to 2 columns. */
.testi-trust {
  display: flex;
  flex-direction: column;
  gap: 10px;
  height: 100%;
}
.testi-trust-card, .review-widget_net {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex: 1;
  min-height: 110px;
  padding: 18px;
  border-radius: var(--radius-lg);
  background: var(--surface);
  border: 1px solid var(--line);
  text-align: center;
  text-decoration: none;
  color: var(--ink-2);
  transition: border-color .2s, transform .2s, box-shadow .2s;
}
a.testi-trust-card:hover { border-color: var(--ink); transform: translateY(-1px); box-shadow: var(--shadow-md); }
/* the fallback pill's own inner wrapper is unboxed — .review-widget_net
   is already the box, so the nested markup just needs to center-stack */
.review-widget_net .testi-trust-card {
  min-height: 0;
  padding: 0;
  border: 0;
  background: none;
  flex: none;
}
.testi-trust-card-label { font-size: 14px; font-weight: 500; color: var(--ink); }
.testi-trust-card-value { font-size: 12.5px; color: var(--ink-3); }
.testi-stars { display: inline-flex; gap: 1px; color: var(--coral); flex-shrink: 0; }

.testi-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  align-items: stretch;
}
@media (max-width: 900px) { .testi-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .testi-grid { grid-template-columns: 1fr; } }
/* Phones: the loaded Google widget is a fixed-width tile, so keeping the
   two trust cards on one row left the Fixando tile at ~50px and wrapped
   its label onto three lines. Stack them full-width instead. */
@media (max-width: 640px) {
  .testi-trust { flex-direction: column; }
  .testi-trust-card, .review-widget_net { min-height: 92px; padding: 16px; }
}

.testi-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 42px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  overflow-wrap: break-word;
  transition: transform .25s, box-shadow .25s;
}
.testi-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.testi-card p { color: var(--ink-2); font-size: 14.5px; line-height: 1.6; }
.testi-card cite {
  font-style: normal;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.04em;
  color: var(--ink-3);
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}
.testi-card cite span { color: var(--ink-3); }

.testi-translated {
  margin-top: 2px;
  padding-top: 12px;
  border-top: 1px dashed var(--line);
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.testi-translated-label {
  font-family: var(--font-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ink-3);
}
.testi-translated p { font-size: 13.5px; color: var(--ink-3); }

/* ----- Testimonials: featured card (Vera) ----- */
.testi-feature {
  margin-bottom: 14px;
  padding: clamp(30px, 4vw, 46px);
}
.testi-feature p {
  font-size: clamp(16.5px, 1.5vw, 18.5px);
  line-height: 1.65;
  max-width: 68ch;
}
.testi-feature cite { font-size: 12.5px; }

/* ----- Testimonials: wide card (Miguel) -----
   Its testimonial runs far longer than André/Carolina/Janete's; pairing
   it inside the 3-up grid left a tall dead gap under its short neighbour
   (grid rows share one height). Giving it its own full-width row keeps
   every card in the grid below close enough in length that align-items:
   start no longer leaves a visible hole. */
.testi-card-wide {
  margin-bottom: 14px;
  max-width: none;
}

/* ----- Testimonials: Google reviews widget container -----
   Ships with the static pill as fallback content. main.js fetches
   review-widget.net's public API directly (custom loader — their
   official script auto-injects a self-serving AggregateRating JSON-LD
   with no opt-out on our plan, so we bypass it and inject the markup
   ourselves, stripped of scripts) and replaces this container's content
   in place once it resolves. min-height matches the pill's own height
   to reduce shift on swap. It deliberately keeps the shared tile's flex
   centering: the swapped-in widget is shorter than the card and would
   otherwise hang off the top edge while the Fixando tile beside it
   stays centred. */
.review-widget_net { min-width: 0; }

/* The markup that lands here brings its own white bordered card locked
   to 250px (.grw-net-widget-four-type-3), which nests a second box
   inside our tile and, on phones, demands a width the row can't give.
   Strip its chrome and width floor so it renders as the *content* of
   our card, matching the Fixando tile beside it. Selectors are scoped
   under .review-widget_net to outrank the widget's own stylesheet,
   which main.js appends to <head> after this file loads. */
.review-widget_net .grw-net-widget {
  display: block !important;
  margin: 0;
  max-width: 100%;
  font-size: 15px;
}
.review-widget_net .grw-net-widget-four {
  min-width: 0;
  max-width: 100%;
  padding: 0;
  border: 0;
  background: none;
}
.review-widget_net .grw-net-widget-four-content { padding: 0; }

/* ----- Torn paper edges -----
   Every colour change on the page is a tear, not a ruled line: the sheet above
   rips down into the section below. Applied to all of them on purpose — four
   hand-picked boundaries read as decoration, the whole set reads as a material.

   Three contours, each usable mirrored, so no two boundaries share a shape.
   ::before is a hard offset shadow under the tear, so the upper sheet sits ON
   the lower one instead of merely meeting it. (A blurred filter is no good
   here: filters resolve before masks, so the blur would be sliced flat by the
   mask edge.) ::after paints over it in the colour torn from.

   Guarded, and that guard is load-bearing: with no mask support the strip would
   render as a solid band of the wrong colour — far worse than a straight edge —
   so where it cannot work it does not exist. */
:root {
  --tear-a: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2056'%20preserveAspectRatio='none'><path%20d='M0%2C0%20H1200%20V16.0%20L1198.5%2C14%20L1183%2C14.4%20L1172.4%2C11%20L1161%2C7.3%20L1143.8%2C10.6%20L1128.3%2C14.3%20L1114.9%2C15.3%20L1104.8%2C15.1%20L1090.2%2C17.1%20L1082.1%2C17.9%20L1067.9%2C18.1%20L1054%2C14%20L1040.5%2C12.8%20L1031.6%2C16.9%20L1020.1%2C7.7%20L1004.6%2C17.9%20L990.1%2C19.6%20L983.8%2C23.7%20L966%2C27.6%20L954.1%2C24.5%20L945.5%2C23.4%20L937.5%2C25.4%20L922.9%2C27.4%20L911%2C24.3%20L898%2C27.5%20L881%2C28.6%20L872.6%2C25.8%20L855.9%2C24.3%20L839%2C24.9%20L824.9%2C27.8%20L815.8%2C33.4%20L803.9%2C29.6%20L792.1%2C27.8%20L777.1%2C25%20L765.8%2C28.7%20L755.1%2C28%20L737.2%2C26%20L723.9%2C22.1%20L710.4%2C21.3%20L694.9%2C20.7%20L678.1%2C21.4%20L661.1%2C19.7%20L646.3%2C17.1%20L633.7%2C13.5%20L623.9%2C17.3%20L610.3%2C15.2%20L595.9%2C19.6%20L589.5%2C8.1%20L575.2%2C11.3%20L558.5%2C9.9%20L545.6%2C11.1%20L538.9%2C12.3%20L532.7%2C12.8%20L523.3%2C15.5%20L510.6%2C14.4%20L496%2C22%20L482.8%2C25%20L468.3%2C22.1%20L461.9%2C24.4%20L448.6%2C28%20L440.3%2C24.5%20L432%2C20.6%20L415.1%2C22.8%20L398.7%2C25.9%20L381.2%2C25.3%20L368%2C25.7%20L360.9%2C28%20L350.9%2C31.8%20L342.4%2C29.4%20L328.7%2C25%20L320.2%2C21.8%20L304.5%2C18.3%20L296%2C14.1%20L282.2%2C14.8%20L274%2C18.1%20L265.8%2C18.6%20L258.6%2C10.3%20L243.5%2C12.6%20L236.5%2C8.4%20L222.9%2C10.5%20L205.1%2C14.3%20L196.6%2C14.6%20L179.1%2C19.1%20L168.3%2C20.1%20L158.9%2C12.6%20L144.4%2C15.1%20L126.4%2C12%20L112.4%2C14%20L100.2%2C14%20L88.6%2C10.9%20L80.4%2C15.1%20L74.2%2C19.1%20L60.3%2C22.2%20L53.8%2C18%20L46.7%2C16.3%20L31.2%2C21.8%20L23%2C20.6%20L11.4%2C19.8%20L0%2C16%20Z'%20fill='%23fff'/></svg>");
  --tear-b: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2056'%20preserveAspectRatio='none'><path%20d='M0%2C0%20H1200%20V19.3%20L1190.4%2C16.4%20L1173.4%2C19.7%20L1167%2C22.2%20L1156.1%2C21.9%20L1144.1%2C23.6%20L1128.4%2C26.3%20L1110.8%2C22.3%20L1099.4%2C18%20L1086.5%2C20.3%20L1078.3%2C23.8%20L1069.4%2C24.8%20L1060.9%2C26.8%20L1050.9%2C24.1%20L1043.3%2C26.7%20L1030.9%2C25.3%20L1014.5%2C31.9%20L1007.4%2C35.6%20L992.6%2C34.3%20L982.8%2C32.3%20L967.4%2C30.8%20L953.2%2C28.4%20L945.3%2C14.5%20L927.8%2C14.2%20L919.9%2C17.7%20L904.5%2C19.3%20L891%2C22.3%20L884%2C25.8%20L873.2%2C29.7%20L858.3%2C28.4%20L847.2%2C30.5%20L831.9%2C26.9%20L818.4%2C28.7%20L802.5%2C31%20L793.9%2C27.6%20L784.1%2C24.3%20L768%2C22.3%20L755.6%2C26.3%20L747.1%2C26.8%20L729.5%2C24.9%20L721.4%2C32.4%20L711.3%2C29.7%20L694.4%2C27.9%20L684%2C29.1%20L669.5%2C26.9%20L660.1%2C24.1%20L649.7%2C22%20L640.4%2C19.7%20L625.3%2C23.1%20L616.2%2C20.4%20L601.1%2C24.2%20L591.5%2C22.1%20L582.4%2C23.1%20L573.7%2C21.9%20L567.6%2C19%20L560.3%2C15.2%20L545.9%2C13.2%20L536.3%2C16.7%20L524.7%2C20.2%20L518.1%2C16%20L510%2C12.1%20L502%2C10.7%20L493.3%2C6.9%20L476%2C7.4%20L462.3%2C9%20L454.5%2C9.3%20L437.7%2C10.3%20L426.5%2C10.3%20L409.9%2C8.7%20L403.2%2C10.6%20L393.4%2C8%20L380%2C7.4%20L370%2C5%20L356.4%2C5%20L341%2C6.2%20L333.6%2C10.4%20L325.3%2C13.8%20L313.9%2C18%20L301.7%2C27.1%20L288.2%2C23.1%20L273.1%2C27.5%20L255.6%2C25.5%20L247.9%2C21.8%20L241.7%2C18.1%20L233.2%2C13.8%20L215.6%2C9.6%20L205.7%2C7.8%20L194.1%2C6.4%20L183.4%2C5%20L175.6%2C6.9%20L158.3%2C10.2%20L144.9%2C13.8%20L131.9%2C14.7%20L119.7%2C12.4%20L111%2C9.8%20L96.9%2C9.7%20L81.4%2C12.4%20L73.4%2C13.3%20L62.3%2C13.7%20L44.4%2C12.8%20L33%2C14.1%20L22%2C17.7%20L12.6%2C19.1%20L0%2C16%20Z'%20fill='%23fff'/></svg>");
  --tear-c: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%2056'%20preserveAspectRatio='none'><path%20d='M0%2C0%20H1200%20V15.5%20L1199.8%2C15.1%20L1183.7%2C12.1%20L1177%2C15.7%20L1166.1%2C12.7%20L1153.3%2C11.1%20L1136.5%2C7.8%20L1122.4%2C7.7%20L1107.6%2C11.3%20L1101.2%2C14.3%20L1094.6%2C10.1%20L1079.4%2C9.3%20L1070.4%2C6.3%20L1057%2C5%20L1047.5%2C7.2%20L1030.8%2C6.2%20L1013.7%2C8.7%20L1003.7%2C12.8%20L991.3%2C16%20L973.6%2C12.3%20L967.1%2C13.4%20L955.9%2C10%20L945.9%2C11.2%20L928.3%2C14.2%20L921.4%2C9.8%20L907.2%2C5.9%20L893.6%2C6.1%20L883.1%2C5.7%20L872.4%2C9.2%20L858.3%2C5.4%20L846.5%2C6.3%20L838.9%2C9.4%20L823.1%2C13.5%20L816.3%2C15.5%20L810.2%2C13.9%20L796.8%2C16.8%20L786.2%2C18.1%20L779.3%2C15.2%20L766.2%2C13.8%20L755.9%2C15.5%20L738%2C14.6%20L724.3%2C11.9%20L707.9%2C12.8%20L698%2C12%20L686.2%2C10.8%20L673.6%2C9.1%20L660.7%2C9.3%20L645.7%2C10%20L632.1%2C7.1%20L617.3%2C9.7%20L606.4%2C5.2%20L594.7%2C7.6%20L587%2C9.3%20L571.4%2C11.2%20L554.4%2C10%20L539.1%2C10.8%20L523.7%2C15.3%20L511.5%2C18.8%20L497.7%2C19.1%20L485.4%2C16.2%20L478.8%2C11.8%20L471.9%2C11.1%20L458.6%2C12.6%20L449.5%2C16.9%20L440.9%2C20.9%20L426.9%2C19.5%20L415.7%2C19.7%20L404.6%2C17.4%20L394.4%2C16.5%20L386.5%2C12.8%20L369.4%2C11.9%20L360.3%2C7.8%20L349.8%2C6.1%20L337.1%2C5.7%20L329.9%2C8%20L312.5%2C8.8%20L299.8%2C11.7%20L287.9%2C8.7%20L279.6%2C7.5%20L268.1%2C9.2%20L260.6%2C11.7%20L249.5%2C15.5%20L241.1%2C13.3%20L228.8%2C16.3%20L215.1%2C16.5%20L198.1%2C16.2%20L189.3%2C19.4%20L177.5%2C20.9%20L163.5%2C25%20L154.7%2C29.2%20L145.9%2C25.1%20L130.8%2C22.2%20L119.6%2C19.7%20L112.5%2C20.4%20L94.7%2C26.7%20L80.9%2C25.2%20L72.2%2C25.1%20L64.2%2C25.7%20L49.2%2C23.5%20L42.7%2C19%20L27.9%2C15.8%20L13.4%2C15.6%20L0%2C16%20Z'%20fill='%23fff'/></svg>");
}
@supports ((mask-size: 100% 100%) or (-webkit-mask-size: 100% 100%)) {
  #explicacoes, .intl, .psy, .mission, #espaco, .recruit, #faq, .cta, .footer { position: relative; }
  #explicacoes::before, #explicacoes::after, .intl::before, .intl::after, .psy::before, .psy::after, .mission::before, .mission::after, #espaco::before, #espaco::after, .recruit::before, .recruit::after, #faq::before, #faq::after, .cta::before, .cta::after, .footer::before, .footer::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -1px;
    height: var(--tear-h, 46px);
    -webkit-mask-image: var(--tear);
    mask-image: var(--tear);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    transform: scaleX(var(--tear-flip, 1));
    pointer-events: none;
  }
  #explicacoes   { --torn-from: var(--bg-2); --tear: var(--tear-a); --tear-flip: 1; --tear-h: 46px; }
  .intl          { --torn-from: var(--bg); --tear: var(--tear-b); --tear-flip: -1; --tear-h: 46px; }
  .psy           { --torn-from: var(--bg-2); --tear: var(--tear-c); --tear-flip: 1; --tear-h: 46px; }
  #espaco        { --torn-from: var(--coral-3); --tear: var(--tear-a); --tear-flip: -1; --tear-h: 46px; }
  .mission       { --torn-from: var(--bg); --tear: var(--tear-b); --tear-flip: 1; --tear-h: 46px; }
  .recruit       { --torn-from: var(--bg-2); --tear: var(--tear-c); --tear-flip: -1; --tear-h: 46px; }
  #faq           { --torn-from: var(--blue-3); --tear: var(--tear-a); --tear-flip: 1; --tear-h: 46px; }
  .cta           { --torn-from: var(--bg-2); --tear: var(--tear-b); --tear-flip: -1; --tear-h: 62px; }
  .footer        { --torn-from: var(--ink); --tear: var(--tear-c); --tear-flip: 1; --tear-h: 62px; }

  /* the shadow the torn sheet casts on the one beneath */
  #explicacoes::before, .intl::before, .psy::before, .mission::before, #espaco::before, .recruit::before, #faq::before, .cta::before, .footer::before {
    background: rgba(26, 24, 20, .11);
    transform: translateY(6px) scaleX(var(--tear-flip, 1));
  }
  #explicacoes::after, .intl::after, .psy::after, .mission::after, #espaco::after, .recruit::after, #faq::after, .cta::after, .footer::after { background: var(--torn-from); }

  /* the footer's rule would cross the tear it sits under */
  .footer { border-top: 0; }

  /* The location photos read as prints cut out by hand rather than boxes.
     The border and the radius go with it — a scissor cut has neither. */
  .space-photo {
    border: 0;
    border-radius: 0;
    -webkit-mask-image: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20400%20300'%20preserveAspectRatio='none'><path%20d='M15.2%2C0%20L40.4%2C0%20L55.6%2C0%20L82.1%2C0%20L108.4%2C1.9%20L124%2C2.4%20L145%2C1.3%20L175.8%2C0%20L189.3%2C5.3%20L209.6%2C1.7%20L228.6%2C0%20L258.7%2C0%20L275.7%2C1%20L298.5%2C6.5%20L326.5%2C4.7%20L343.3%2C8.8%20L373.9%2C3.1%20L400%2C7.6%20L400%2C4.2%20L390.2%2C38.7%20L386.9%2C60.9%20L384.9%2C73.6%20L383.6%2C90.9%20L387.7%2C113.3%20L393.4%2C140.7%20L396.9%2C168.6%20L393%2C185.5%20L393.5%2C207.4%20L388.7%2C230.2%20L393.7%2C245.3%20L396.1%2C266.9%20L394.8%2C280.5%20L396.6%2C300%20L383.3%2C299.2%20L356%2C298.5%20L329%2C299.3%20L313.7%2C294.5%20L283.2%2C289.9%20L266.6%2C287.9%20L240.8%2C292.2%20L219.2%2C292.2%20L192.2%2C289.5%20L172.4%2C290.8%20L148%2C285.3%20L132.8%2C281%20L106.9%2C283.3%20L76.5%2C286.5%20L58.9%2C289.7%20L28.3%2C287.8%20L14.9%2C286.4%20L0%2C282.5%20L5.7%2C286%20L7.1%2C273.2%20L3.4%2C257.9%20L1%2C232.8%20L0.5%2C217.8%20L0.8%2C194.7%20L0%2C169%20L2.6%2C148.6%20L5.2%2C129.2%20L0.8%2C109.7%20L4.2%2C95.7%20L9.5%2C71.8%20L10.5%2C48.8%20L14.7%2C34.1%20L13.8%2C20.2%20L12.4%2C6%20L11.5%2C0%20Z'%20fill='%23fff'/></svg>");
    mask-image: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20400%20300'%20preserveAspectRatio='none'><path%20d='M15.2%2C0%20L40.4%2C0%20L55.6%2C0%20L82.1%2C0%20L108.4%2C1.9%20L124%2C2.4%20L145%2C1.3%20L175.8%2C0%20L189.3%2C5.3%20L209.6%2C1.7%20L228.6%2C0%20L258.7%2C0%20L275.7%2C1%20L298.5%2C6.5%20L326.5%2C4.7%20L343.3%2C8.8%20L373.9%2C3.1%20L400%2C7.6%20L400%2C4.2%20L390.2%2C38.7%20L386.9%2C60.9%20L384.9%2C73.6%20L383.6%2C90.9%20L387.7%2C113.3%20L393.4%2C140.7%20L396.9%2C168.6%20L393%2C185.5%20L393.5%2C207.4%20L388.7%2C230.2%20L393.7%2C245.3%20L396.1%2C266.9%20L394.8%2C280.5%20L396.6%2C300%20L383.3%2C299.2%20L356%2C298.5%20L329%2C299.3%20L313.7%2C294.5%20L283.2%2C289.9%20L266.6%2C287.9%20L240.8%2C292.2%20L219.2%2C292.2%20L192.2%2C289.5%20L172.4%2C290.8%20L148%2C285.3%20L132.8%2C281%20L106.9%2C283.3%20L76.5%2C286.5%20L58.9%2C289.7%20L28.3%2C287.8%20L14.9%2C286.4%20L0%2C282.5%20L5.7%2C286%20L7.1%2C273.2%20L3.4%2C257.9%20L1%2C232.8%20L0.5%2C217.8%20L0.8%2C194.7%20L0%2C169%20L2.6%2C148.6%20L5.2%2C129.2%20L0.8%2C109.7%20L4.2%2C95.7%20L9.5%2C71.8%20L10.5%2C48.8%20L14.7%2C34.1%20L13.8%2C20.2%20L12.4%2C6%20L11.5%2C0%20Z'%20fill='%23fff'/></svg>");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }
}

/* ----- Crumpled paper -----
   Every information card is a sheet that was screwed into a ball and smoothed
   back out: a jittered lattice of facets, each catching light or falling into
   shade, with creases along the folds.

   Applied as a second background layer blended against each card's own colour
   rather than as an overlay element — no extra nodes, no pseudo-element
   clashes, and it tints itself correctly whether the card underneath is white,
   coral, butter, sage or blue. `cover` keeps the facets from being stretched
   into stripes on wide cards. */
:root {
  --crumple-a: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20320%20240'><path%20d='M0,0%20L28.7,0%20L0,35%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M28.7,0%20L32,31.1%20L0,35%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M28.7,0%20L50.1,0%20L32,31.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M50.1,0%20L48.2,28.4%20L32,31.1%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M50.1,0%20L90.5,0%20L48.2,28.4%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M90.5,0%20L77.7,22.5%20L48.2,28.4%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M90.5,0%20L109,0%20L77.7,22.5%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M109,0%20L105.6,34.7%20L77.7,22.5%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M109,0%20L141.1,0%20L105.6,34.7%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M141.1,0%20L144.3,25.8%20L105.6,34.7%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M141.1,0%20L184.6,0%20L144.3,25.8%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M184.6,0%20L176.9,30.3%20L144.3,25.8%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M184.6,0%20L195.5,0%20L176.9,30.3%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M195.5,0%20L209.5,30.8%20L176.9,30.3%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M195.5,0%20L241.8,0%20L209.5,30.8%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M241.8,0%20L228.9,30.9%20L209.5,30.8%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M241.8,0%20L266.5,0%20L228.9,30.9%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M266.5,0%20L269.3,25.9%20L228.9,30.9%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M266.5,0%20L301.6,0%20L269.3,25.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M301.6,0%20L287,37.7%20L269.3,25.9%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M301.6,0%20L320,0%20L287,37.7%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M320,0%20L320,23.5%20L287,37.7%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M0,35%20L32,31.1%20L0,58.9%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M32,31.1%20L39,68.4%20L0,58.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M32,31.1%20L48.2,28.4%20L39,68.4%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M48.2,28.4%20L59.8,67.4%20L39,68.4%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M48.2,28.4%20L77.7,22.5%20L59.8,67.4%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M77.7,22.5%20L87.4,51.6%20L59.8,67.4%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M77.7,22.5%20L105.6,34.7%20L87.4,51.6%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M105.6,34.7%20L108.4,65.5%20L87.4,51.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M105.6,34.7%20L144.3,25.8%20L108.4,65.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M144.3,25.8%20L138.4,63.5%20L108.4,65.5%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M144.3,25.8%20L176.9,30.3%20L138.4,63.5%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M176.9,30.3%20L170.8,59.6%20L138.4,63.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M176.9,30.3%20L209.5,30.8%20L170.8,59.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M209.5,30.8%20L200.2,51.1%20L170.8,59.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M209.5,30.8%20L228.9,30.9%20L200.2,51.1%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M228.9,30.9%20L229.5,60%20L200.2,51.1%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M228.9,30.9%20L269.3,25.9%20L229.5,60%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M269.3,25.9%20L254,54%20L229.5,60%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M269.3,25.9%20L287,37.7%20L254,54%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M287,37.7%20L301.8,51.1%20L254,54%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M287,37.7%20L320,23.5%20L301.8,51.1%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M320,23.5%20L320,63.6%20L301.8,51.1%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M0,58.9%20L39,68.4%20L0,86.9%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M39,68.4%20L34.4,81.7%20L0,86.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M39,68.4%20L59.8,67.4%20L34.4,81.7%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M59.8,67.4%20L65.8,79.4%20L34.4,81.7%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M59.8,67.4%20L87.4,51.6%20L65.8,79.4%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M87.4,51.6%20L76.5,80.9%20L65.8,79.4%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M87.4,51.6%20L108.4,65.5%20L76.5,80.9%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M108.4,65.5%20L113.6,79.2%20L76.5,80.9%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M108.4,65.5%20L138.4,63.5%20L113.6,79.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M138.4,63.5%20L137.5,87.9%20L113.6,79.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M138.4,63.5%20L170.8,59.6%20L137.5,87.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M170.8,59.6%20L176.9,84.2%20L137.5,87.9%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M170.8,59.6%20L200.2,51.1%20L176.9,84.2%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M200.2,51.1%20L202.8,90.7%20L176.9,84.2%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M200.2,51.1%20L229.5,60%20L202.8,90.7%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M229.5,60%20L240.5,89.3%20L202.8,90.7%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M229.5,60%20L254,54%20L240.5,89.3%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M254,54%20L259.8,88.4%20L240.5,89.3%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M254,54%20L301.8,51.1%20L259.8,88.4%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M301.8,51.1%20L280.9,99.7%20L259.8,88.4%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M301.8,51.1%20L320,63.6%20L280.9,99.7%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M320,63.6%20L320,92.8%20L280.9,99.7%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M0,86.9%20L34.4,81.7%20L0,112.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M34.4,81.7%20L35.2,111.5%20L0,112.6%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M34.4,81.7%20L65.8,79.4%20L35.2,111.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M65.8,79.4%20L59,113.1%20L35.2,111.5%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M65.8,79.4%20L76.5,80.9%20L59,113.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M76.5,80.9%20L90.3,122.4%20L59,113.1%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M76.5,80.9%20L113.6,79.2%20L90.3,122.4%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M113.6,79.2%20L114.2,116.2%20L90.3,122.4%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M113.6,79.2%20L137.5,87.9%20L114.2,116.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M137.5,87.9%20L152,116.1%20L114.2,116.2%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M137.5,87.9%20L176.9,84.2%20L152,116.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M176.9,84.2%20L163.6,120.2%20L152,116.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M176.9,84.2%20L202.8,90.7%20L163.6,120.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M202.8,90.7%20L196.4,117.2%20L163.6,120.2%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M202.8,90.7%20L240.5,89.3%20L196.4,117.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M240.5,89.3%20L236.8,114.6%20L196.4,117.2%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M240.5,89.3%20L259.8,88.4%20L236.8,114.6%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M259.8,88.4%20L252.9,123.6%20L236.8,114.6%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M259.8,88.4%20L280.9,99.7%20L252.9,123.6%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M280.9,99.7%20L296.1,126.5%20L252.9,123.6%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M280.9,99.7%20L320,92.8%20L296.1,126.5%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M320,92.8%20L320,113.5%20L296.1,126.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M0,112.6%20L35.2,111.5%20L0,150.1%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M35.2,111.5%20L18.6,145.2%20L0,150.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M35.2,111.5%20L59,113.1%20L18.6,145.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M59,113.1%20L56.7,153.3%20L18.6,145.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M59,113.1%20L90.3,122.4%20L56.7,153.3%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M90.3,122.4%20L93.7,158.9%20L56.7,153.3%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M90.3,122.4%20L114.2,116.2%20L93.7,158.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M114.2,116.2%20L118,154.4%20L93.7,158.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M114.2,116.2%20L152,116.1%20L118,154.4%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M152,116.1%20L135.3,151%20L118,154.4%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M152,116.1%20L163.6,120.2%20L135.3,151%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M163.6,120.2%20L178.3,151.1%20L135.3,151%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M163.6,120.2%20L196.4,117.2%20L178.3,151.1%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M196.4,117.2%20L213.6,150.3%20L178.3,151.1%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M196.4,117.2%20L236.8,114.6%20L213.6,150.3%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M236.8,114.6%20L228,160.1%20L213.6,150.3%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M236.8,114.6%20L252.9,123.6%20L228,160.1%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M252.9,123.6%20L268.2,159.2%20L228,160.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M252.9,123.6%20L296.1,126.5%20L268.2,159.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M296.1,126.5%20L282.7,146.4%20L268.2,159.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M296.1,126.5%20L320,113.5%20L282.7,146.4%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M320,113.5%20L320,144.9%20L282.7,146.4%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M0,150.1%20L18.6,145.2%20L0,185.4%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M18.6,145.2%20L29.3,178.6%20L0,185.4%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M18.6,145.2%20L56.7,153.3%20L29.3,178.6%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M56.7,153.3%20L64.5,187.9%20L29.3,178.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M56.7,153.3%20L93.7,158.9%20L64.5,187.9%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M93.7,158.9%20L81.7,173.9%20L64.5,187.9%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M93.7,158.9%20L118,154.4%20L81.7,173.9%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M118,154.4%20L120.7,181.5%20L81.7,173.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M118,154.4%20L135.3,151%20L120.7,181.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M135.3,151%20L145.5,173.2%20L120.7,181.5%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M135.3,151%20L178.3,151.1%20L145.5,173.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M178.3,151.1%20L171.8,180.1%20L145.5,173.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M178.3,151.1%20L213.6,150.3%20L171.8,180.1%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M213.6,150.3%20L194.1,183.2%20L171.8,180.1%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M213.6,150.3%20L228,160.1%20L194.1,183.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M228,160.1%20L234.4,188.7%20L194.1,183.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M228,160.1%20L268.2,159.2%20L234.4,188.7%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M268.2,159.2%20L270,175.6%20L234.4,188.7%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M268.2,159.2%20L282.7,146.4%20L270,175.6%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M282.7,146.4%20L281.8,179.1%20L270,175.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M282.7,146.4%20L320,144.9%20L281.8,179.1%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M320,144.9%20L320,184%20L281.8,179.1%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M0,185.4%20L29.3,178.6%20L0,219.7%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M29.3,178.6%20L31.7,213.2%20L0,219.7%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M29.3,178.6%20L64.5,187.9%20L31.7,213.2%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M64.5,187.9%20L63.4,206.7%20L31.7,213.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M64.5,187.9%20L81.7,173.9%20L63.4,206.7%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M81.7,173.9%20L80.3,215.7%20L63.4,206.7%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M81.7,173.9%20L120.7,181.5%20L80.3,215.7%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M120.7,181.5%20L118,207.5%20L80.3,215.7%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M120.7,181.5%20L145.5,173.2%20L118,207.5%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M145.5,173.2%20L142.8,205.2%20L118,207.5%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M145.5,173.2%20L171.8,180.1%20L142.8,205.2%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M171.8,180.1%20L167,218.4%20L142.8,205.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M171.8,180.1%20L194.1,183.2%20L167,218.4%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M194.1,183.2%20L193.3,219.5%20L167,218.4%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M194.1,183.2%20L234.4,188.7%20L193.3,219.5%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M234.4,188.7%20L228.6,214%20L193.3,219.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M234.4,188.7%20L270,175.6%20L228.6,214%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M270,175.6%20L263,208.2%20L228.6,214%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M270,175.6%20L281.8,179.1%20L263,208.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M281.8,179.1%20L288.7,209.6%20L263,208.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M281.8,179.1%20L320,184%20L288.7,209.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M320,184%20L320,202.4%20L288.7,209.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M0,219.7%20L31.7,213.2%20L0,240%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M31.7,213.2%20L39.3,240%20L0,240%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M31.7,213.2%20L63.4,206.7%20L39.3,240%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M63.4,206.7%20L54.6,240%20L39.3,240%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M63.4,206.7%20L80.3,215.7%20L54.6,240%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M80.3,215.7%20L91.9,240%20L54.6,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M80.3,215.7%20L118,207.5%20L91.9,240%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M118,207.5%20L121.1,240%20L91.9,240%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M118,207.5%20L142.8,205.2%20L121.1,240%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M142.8,205.2%20L148.8,240%20L121.1,240%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M142.8,205.2%20L167,218.4%20L148.8,240%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M167,218.4%20L182.3,240%20L148.8,240%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M167,218.4%20L193.3,219.5%20L182.3,240%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M193.3,219.5%20L211.9,240%20L182.3,240%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M193.3,219.5%20L228.6,214%20L211.9,240%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M228.6,214%20L225,240%20L211.9,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M228.6,214%20L263,208.2%20L225,240%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M263,208.2%20L252.9,240%20L225,240%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M263,208.2%20L288.7,209.6%20L252.9,240%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M288.7,209.6%20L297.9,240%20L252.9,240%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M288.7,209.6%20L320,202.4%20L297.9,240%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M320,202.4%20L320,240%20L297.9,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M28.7,0%20L32,31.1'%20stroke='rgba%280,0,0,0.050%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M141.1,0%20L144.3,25.8'%20stroke='rgba%280,0,0,0.042%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M184.6,0%20L144.3,25.8'%20stroke='rgba%280,0,0,0.036%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M184.6,0%20L176.9,30.3'%20stroke='rgba%280,0,0,0.046%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M241.8,0%20L228.9,30.9'%20stroke='rgba%280,0,0,0.025%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M266.5,0%20L269.3,25.9'%20stroke='rgba%280,0,0,0.036%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M48.2,28.4%20L39,68.4'%20stroke='rgba%280,0,0,0.067%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M77.7,22.5%20L59.8,67.4'%20stroke='rgba%280,0,0,0.064%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M176.9,30.3%20L170.8,59.6'%20stroke='rgba%280,0,0,0.038%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M209.5,30.8%20L170.8,59.6'%20stroke='rgba%280,0,0,0.037%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M269.3,25.9%20L254,54'%20stroke='rgba%280,0,0,0.061%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M287,37.7%20L254,54'%20stroke='rgba%280,0,0,0.066%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M287,37.7%20L301.8,51.1'%20stroke='rgba%280,0,0,0.064%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M39,68.4%20L0,86.9'%20stroke='rgba%280,0,0,0.040%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M108.4,65.5%20L76.5,80.9'%20stroke='rgba%280,0,0,0.061%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M108.4,65.5%20L113.6,79.2'%20stroke='rgba%280,0,0,0.065%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M254,54%20L259.8,88.4'%20stroke='rgba%280,0,0,0.062%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M320,63.6%20L280.9,99.7'%20stroke='rgba%280,0,0,0.064%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M34.4,81.7%20L0,112.6'%20stroke='rgba%280,0,0,0.028%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M65.8,79.4%20L35.2,111.5'%20stroke='rgba%280,0,0,0.060%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M113.6,79.2%20L114.2,116.2'%20stroke='rgba%280,0,0,0.055%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M137.5,87.9%20L152,116.1'%20stroke='rgba%280,0,0,0.047%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M176.9,84.2%20L163.6,120.2'%20stroke='rgba%280,0,0,0.044%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M202.8,90.7%20L163.6,120.2'%20stroke='rgba%280,0,0,0.062%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M240.5,89.3%20L196.4,117.2'%20stroke='rgba%280,0,0,0.029%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M259.8,88.4%20L236.8,114.6'%20stroke='rgba%280,0,0,0.062%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M259.8,88.4%20L252.9,123.6'%20stroke='rgba%280,0,0,0.055%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M320,92.8%20L296.1,126.5'%20stroke='rgba%280,0,0,0.070%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M90.3,122.4%20L93.7,158.9'%20stroke='rgba%280,0,0,0.065%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M114.2,116.2%20L118,154.4'%20stroke='rgba%280,0,0,0.030%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M152,116.1%20L118,154.4'%20stroke='rgba%280,0,0,0.046%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M163.6,120.2%20L178.3,151.1'%20stroke='rgba%280,0,0,0.031%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M236.8,114.6%20L213.6,150.3'%20stroke='rgba%280,0,0,0.054%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M252.9,123.6%20L268.2,159.2'%20stroke='rgba%280,0,0,0.041%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M296.1,126.5%20L268.2,159.2'%20stroke='rgba%280,0,0,0.070%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M18.6,145.2%20L0,185.4'%20stroke='rgba%280,0,0,0.060%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M56.7,153.3%20L29.3,178.6'%20stroke='rgba%280,0,0,0.050%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M93.7,158.9%20L81.7,173.9'%20stroke='rgba%280,0,0,0.044%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M118,154.4%20L81.7,173.9'%20stroke='rgba%280,0,0,0.028%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M135.3,151%20L120.7,181.5'%20stroke='rgba%280,0,0,0.059%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M178.3,151.1%20L145.5,173.2'%20stroke='rgba%280,0,0,0.051%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M268.2,159.2%20L234.4,188.7'%20stroke='rgba%280,0,0,0.054%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M268.2,159.2%20L270,175.6'%20stroke='rgba%280,0,0,0.027%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M29.3,178.6%20L0,219.7'%20stroke='rgba%280,0,0,0.033%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M64.5,187.9%20L31.7,213.2'%20stroke='rgba%280,0,0,0.042%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M64.5,187.9%20L63.4,206.7'%20stroke='rgba%280,0,0,0.047%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M120.7,181.5%20L118,207.5'%20stroke='rgba%280,0,0,0.067%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M145.5,173.2%20L118,207.5'%20stroke='rgba%280,0,0,0.045%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M171.8,180.1%20L167,218.4'%20stroke='rgba%280,0,0,0.042%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M234.4,188.7%20L228.6,214'%20stroke='rgba%280,0,0,0.052%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M270,175.6%20L228.6,214'%20stroke='rgba%280,0,0,0.032%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M281.8,179.1%20L263,208.2'%20stroke='rgba%280,0,0,0.066%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M31.7,213.2%20L0,240'%20stroke='rgba%280,0,0,0.045%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M63.4,206.7%20L54.6,240'%20stroke='rgba%280,0,0,0.040%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M80.3,215.7%20L54.6,240'%20stroke='rgba%280,0,0,0.027%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M80.3,215.7%20L91.9,240'%20stroke='rgba%280,0,0,0.032%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M193.3,219.5%20L182.3,240'%20stroke='rgba%280,0,0,0.057%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M193.3,219.5%20L211.9,240'%20stroke='rgba%280,0,0,0.055%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M228.6,214%20L211.9,240'%20stroke='rgba%280,0,0,0.044%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M228.6,214%20L225,240'%20stroke='rgba%280,0,0,0.051%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M263,208.2%20L252.9,240'%20stroke='rgba%280,0,0,0.049%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M320,202.4%20L297.9,240'%20stroke='rgba%280,0,0,0.038%29'%20stroke-width='0.5'%20fill='none'/></svg>");
  --crumple-b: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20320%20240'><path%20d='M0,0%20L35.7,0%20L0,30%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M35.7,0%20L36.8,19.6%20L0,30%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M35.7,0%20L54.4,0%20L36.8,19.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M54.4,0%20L68.2,22.8%20L36.8,19.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M54.4,0%20L81.6,0%20L68.2,22.8%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M81.6,0%20L94.2,30.2%20L68.2,22.8%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M81.6,0%20L123.5,0%20L94.2,30.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M123.5,0%20L123.7,23%20L94.2,30.2%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M123.5,0%20L137,0%20L123.7,23%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M137,0%20L141.5,20.9%20L123.7,23%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M137,0%20L174,0%20L141.5,20.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M174,0%20L180.7,30.7%20L141.5,20.9%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M174,0%20L204.9,0%20L180.7,30.7%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M204.9,0%20L197.1,23.2%20L180.7,30.7%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M204.9,0%20L235.2,0%20L197.1,23.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M235.2,0%20L223.5,23.4%20L197.1,23.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M235.2,0%20L254,0%20L223.5,23.4%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M254,0%20L263.1,28.6%20L223.5,23.4%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M254,0%20L293.8,0%20L263.1,28.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M293.8,0%20L295.4,20.7%20L263.1,28.6%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M293.8,0%20L320,0%20L295.4,20.7%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M320,0%20L320,37.5%20L295.4,20.7%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M0,30%20L36.8,19.6%20L0,70.6%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M36.8,19.6%20L34.4,65.3%20L0,70.6%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M36.8,19.6%20L68.2,22.8%20L34.4,65.3%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M68.2,22.8%20L65.9,51.1%20L34.4,65.3%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M68.2,22.8%20L94.2,30.2%20L65.9,51.1%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M94.2,30.2%20L86.4,50.7%20L65.9,51.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M94.2,30.2%20L123.7,23%20L86.4,50.7%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M123.7,23%20L122.6,60.8%20L86.4,50.7%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M123.7,23%20L141.5,20.9%20L122.6,60.8%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M141.5,20.9%20L136.8,58.8%20L122.6,60.8%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M141.5,20.9%20L180.7,30.7%20L136.8,58.8%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M180.7,30.7%20L180.6,61.1%20L136.8,58.8%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M180.7,30.7%20L197.1,23.2%20L180.6,61.1%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M197.1,23.2%20L195.3,69.6%20L180.6,61.1%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M197.1,23.2%20L223.5,23.4%20L195.3,69.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M223.5,23.4%20L223,67.5%20L195.3,69.6%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M223.5,23.4%20L263.1,28.6%20L223,67.5%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M263.1,28.6%20L272.2,65.5%20L223,67.5%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M263.1,28.6%20L295.4,20.7%20L272.2,65.5%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M295.4,20.7%20L300.7,60.7%20L272.2,65.5%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M295.4,20.7%20L320,37.5%20L300.7,60.7%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M320,37.5%20L320,53.8%20L300.7,60.7%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M0,70.6%20L34.4,65.3%20L0,89.4%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M34.4,65.3%20L34.3,95.9%20L0,89.4%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M34.4,65.3%20L65.9,51.1%20L34.3,95.9%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M65.9,51.1%20L55.6,99.8%20L34.3,95.9%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M65.9,51.1%20L86.4,50.7%20L55.6,99.8%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M86.4,50.7%20L77,89.9%20L55.6,99.8%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M86.4,50.7%20L122.6,60.8%20L77,89.9%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M122.6,60.8%20L106.2,86.9%20L77,89.9%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M122.6,60.8%20L136.8,58.8%20L106.2,86.9%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M136.8,58.8%20L156.2,81.6%20L106.2,86.9%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M136.8,58.8%20L180.6,61.1%20L156.2,81.6%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M180.6,61.1%20L185.2,98.9%20L156.2,81.6%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M180.6,61.1%20L195.3,69.6%20L185.2,98.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M195.3,69.6%20L207.8,80.2%20L185.2,98.9%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M195.3,69.6%20L223,67.5%20L207.8,80.2%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M223,67.5%20L232.1,94.2%20L207.8,80.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M223,67.5%20L272.2,65.5%20L232.1,94.2%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M272.2,65.5%20L252.9,85.6%20L232.1,94.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M272.2,65.5%20L300.7,60.7%20L252.9,85.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M300.7,60.7%20L281.9,97.6%20L252.9,85.6%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M300.7,60.7%20L320,53.8%20L281.9,97.6%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M320,53.8%20L320,99.1%20L281.9,97.6%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M0,89.4%20L34.3,95.9%20L0,129.3%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M34.3,95.9%20L34.6,121.7%20L0,129.3%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M34.3,95.9%20L55.6,99.8%20L34.6,121.7%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M55.6,99.8%20L48.6,119.6%20L34.6,121.7%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M55.6,99.8%20L77,89.9%20L48.6,119.6%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M77,89.9%20L93,125.6%20L48.6,119.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M77,89.9%20L106.2,86.9%20L93,125.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M106.2,86.9%20L106,109.2%20L93,125.6%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M106.2,86.9%20L156.2,81.6%20L106,109.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M156.2,81.6%20L136.4,129.3%20L106,109.2%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M156.2,81.6%20L185.2,98.9%20L136.4,129.3%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M185.2,98.9%20L166,117.6%20L136.4,129.3%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M185.2,98.9%20L207.8,80.2%20L166,117.6%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M207.8,80.2%20L203.1,128.4%20L166,117.6%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M207.8,80.2%20L232.1,94.2%20L203.1,128.4%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M232.1,94.2%20L224.7,114.8%20L203.1,128.4%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M232.1,94.2%20L252.9,85.6%20L224.7,114.8%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M252.9,85.6%20L267.8,110.9%20L224.7,114.8%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M252.9,85.6%20L281.9,97.6%20L267.8,110.9%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M281.9,97.6%20L283.5,109.6%20L267.8,110.9%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M281.9,97.6%20L320,99.1%20L283.5,109.6%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M320,99.1%20L320,130.1%20L283.5,109.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M0,129.3%20L34.6,121.7%20L0,144.1%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M34.6,121.7%20L29.1,147.3%20L0,144.1%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M34.6,121.7%20L48.6,119.6%20L29.1,147.3%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M48.6,119.6%20L68.8,154.7%20L29.1,147.3%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M48.6,119.6%20L93,125.6%20L68.8,154.7%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M93,125.6%20L89.5,149.8%20L68.8,154.7%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M93,125.6%20L106,109.2%20L89.5,149.8%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M106,109.2%20L111.3,157.5%20L89.5,149.8%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M106,109.2%20L136.4,129.3%20L111.3,157.5%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M136.4,129.3%20L136.7,152.7%20L111.3,157.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M136.4,129.3%20L166,117.6%20L136.7,152.7%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M166,117.6%20L170,145.1%20L136.7,152.7%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M166,117.6%20L203.1,128.4%20L170,145.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M203.1,128.4%20L202.6,143.2%20L170,145.1%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M203.1,128.4%20L224.7,114.8%20L202.6,143.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M224.7,114.8%20L234.7,140.6%20L202.6,143.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M224.7,114.8%20L267.8,110.9%20L234.7,140.6%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M267.8,110.9%20L251.2,142.1%20L234.7,140.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M267.8,110.9%20L283.5,109.6%20L251.2,142.1%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M283.5,109.6%20L281.9,158.3%20L251.2,142.1%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M283.5,109.6%20L320,130.1%20L281.9,158.3%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M320,130.1%20L320,150.2%20L281.9,158.3%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M0,144.1%20L29.1,147.3%20L0,183.9%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M29.1,147.3%20L35.2,172.6%20L0,183.9%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M29.1,147.3%20L68.8,154.7%20L35.2,172.6%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M68.8,154.7%20L68.1,177.5%20L35.2,172.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M68.8,154.7%20L89.5,149.8%20L68.1,177.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M89.5,149.8%20L86.4,179.7%20L68.1,177.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M89.5,149.8%20L111.3,157.5%20L86.4,179.7%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M111.3,157.5%20L120.7,185.9%20L86.4,179.7%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M111.3,157.5%20L136.7,152.7%20L120.7,185.9%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M136.7,152.7%20L138.7,187.2%20L120.7,185.9%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M136.7,152.7%20L170,145.1%20L138.7,187.2%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M170,145.1%20L173,174.5%20L138.7,187.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M170,145.1%20L202.6,143.2%20L173,174.5%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M202.6,143.2%20L211.7,188.2%20L173,174.5%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M202.6,143.2%20L234.7,140.6%20L211.7,188.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M234.7,140.6%20L240.6,176.1%20L211.7,188.2%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M234.7,140.6%20L251.2,142.1%20L240.6,176.1%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M251.2,142.1%20L270.9,186.1%20L240.6,176.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M251.2,142.1%20L281.9,158.3%20L270.9,186.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M281.9,158.3%20L301.3,185.6%20L270.9,186.1%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M281.9,158.3%20L320,150.2%20L301.3,185.6%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M320,150.2%20L320,191%20L301.3,185.6%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M0,183.9%20L35.2,172.6%20L0,209.5%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M35.2,172.6%20L34.6,216.2%20L0,209.5%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M35.2,172.6%20L68.1,177.5%20L34.6,216.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M68.1,177.5%20L58.7,210.1%20L34.6,216.2%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M68.1,177.5%20L86.4,179.7%20L58.7,210.1%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M86.4,179.7%20L85.1,218.1%20L58.7,210.1%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M86.4,179.7%20L120.7,185.9%20L85.1,218.1%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M120.7,185.9%20L113.7,215.4%20L85.1,218.1%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M120.7,185.9%20L138.7,187.2%20L113.7,215.4%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M138.7,187.2%20L146.8,214.6%20L113.7,215.4%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M138.7,187.2%20L173,174.5%20L146.8,214.6%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M173,174.5%20L170.3,200.7%20L146.8,214.6%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M173,174.5%20L211.7,188.2%20L170.3,200.7%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M211.7,188.2%20L207.5,202.2%20L170.3,200.7%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M211.7,188.2%20L240.6,176.1%20L207.5,202.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M240.6,176.1%20L229.6,216.2%20L207.5,202.2%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M240.6,176.1%20L270.9,186.1%20L229.6,216.2%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M270.9,186.1%20L251.9,219%20L229.6,216.2%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M270.9,186.1%20L301.3,185.6%20L251.9,219%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M301.3,185.6%20L292.9,211.3%20L251.9,219%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M301.3,185.6%20L320,191%20L292.9,211.3%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M320,191%20L320,213.9%20L292.9,211.3%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M0,209.5%20L34.6,216.2%20L0,240%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M34.6,216.2%20L19.3,240%20L0,240%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M34.6,216.2%20L58.7,210.1%20L19.3,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M58.7,210.1%20L47.7,240%20L19.3,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M58.7,210.1%20L85.1,218.1%20L47.7,240%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M85.1,218.1%20L92.1,240%20L47.7,240%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M85.1,218.1%20L113.7,215.4%20L92.1,240%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M113.7,215.4%20L118.3,240%20L92.1,240%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M113.7,215.4%20L146.8,214.6%20L118.3,240%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M146.8,214.6%20L148.5,240%20L118.3,240%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M146.8,214.6%20L170.3,200.7%20L148.5,240%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M170.3,200.7%20L181.7,240%20L148.5,240%20Z'%20fill='rgba%280,0,0,0.015%29'/><path%20d='M170.3,200.7%20L207.5,202.2%20L181.7,240%20Z'%20fill='rgba%280,0,0,0.022%29'/><path%20d='M207.5,202.2%20L198.6,240%20L181.7,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M207.5,202.2%20L229.6,216.2%20L198.6,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M229.6,216.2%20L225.3,240%20L198.6,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M229.6,216.2%20L251.9,219%20L225.3,240%20Z'%20fill='rgba%280,0,0,0.003%29'/><path%20d='M251.9,219%20L272.1,240%20L225.3,240%20Z'%20fill='rgba%280,0,0,0.030%29'/><path%20d='M251.9,219%20L292.9,211.3%20L272.1,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M292.9,211.3%20L281.2,240%20L272.1,240%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M292.9,211.3%20L320,213.9%20L281.2,240%20Z'%20fill='rgba%280,0,0,0.006%29'/><path%20d='M320,213.9%20L320,240%20L281.2,240%20Z'%20fill='rgba%280,0,0,0.010%29'/><path%20d='M35.7,0%20L36.8,19.6'%20stroke='rgba%280,0,0,0.051%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M54.4,0%20L68.2,22.8'%20stroke='rgba%280,0,0,0.054%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M137,0%20L123.7,23'%20stroke='rgba%280,0,0,0.026%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M174,0%20L141.5,20.9'%20stroke='rgba%280,0,0,0.049%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M235.2,0%20L223.5,23.4'%20stroke='rgba%280,0,0,0.055%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M254,0%20L263.1,28.6'%20stroke='rgba%280,0,0,0.062%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M293.8,0%20L263.1,28.6'%20stroke='rgba%280,0,0,0.068%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M320,0%20L295.4,20.7'%20stroke='rgba%280,0,0,0.033%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M68.2,22.8%20L34.4,65.3'%20stroke='rgba%280,0,0,0.050%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M68.2,22.8%20L65.9,51.1'%20stroke='rgba%280,0,0,0.043%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M94.2,30.2%20L65.9,51.1'%20stroke='rgba%280,0,0,0.031%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M94.2,30.2%20L86.4,50.7'%20stroke='rgba%280,0,0,0.061%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M123.7,23%20L122.6,60.8'%20stroke='rgba%280,0,0,0.046%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M141.5,20.9%20L122.6,60.8'%20stroke='rgba%280,0,0,0.061%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M223.5,23.4%20L223,67.5'%20stroke='rgba%280,0,0,0.034%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M263.1,28.6%20L272.2,65.5'%20stroke='rgba%280,0,0,0.047%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M295.4,20.7%20L272.2,65.5'%20stroke='rgba%280,0,0,0.036%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M295.4,20.7%20L300.7,60.7'%20stroke='rgba%280,0,0,0.040%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M65.9,51.1%20L34.3,95.9'%20stroke='rgba%280,0,0,0.033%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M65.9,51.1%20L55.6,99.8'%20stroke='rgba%280,0,0,0.026%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M86.4,50.7%20L77,89.9'%20stroke='rgba%280,0,0,0.046%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M122.6,60.8%20L77,89.9'%20stroke='rgba%280,0,0,0.067%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M122.6,60.8%20L106.2,86.9'%20stroke='rgba%280,0,0,0.068%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M136.8,58.8%20L106.2,86.9'%20stroke='rgba%280,0,0,0.042%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M136.8,58.8%20L156.2,81.6'%20stroke='rgba%280,0,0,0.059%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M195.3,69.6%20L207.8,80.2'%20stroke='rgba%280,0,0,0.056%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M223,67.5%20L232.1,94.2'%20stroke='rgba%280,0,0,0.038%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M272.2,65.5%20L232.1,94.2'%20stroke='rgba%280,0,0,0.058%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M272.2,65.5%20L252.9,85.6'%20stroke='rgba%280,0,0,0.055%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M55.6,99.8%20L34.6,121.7'%20stroke='rgba%280,0,0,0.057%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M55.6,99.8%20L48.6,119.6'%20stroke='rgba%280,0,0,0.061%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M156.2,81.6%20L106,109.2'%20stroke='rgba%280,0,0,0.052%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M185.2,98.9%20L166,117.6'%20stroke='rgba%280,0,0,0.055%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M207.8,80.2%20L203.1,128.4'%20stroke='rgba%280,0,0,0.039%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M232.1,94.2%20L203.1,128.4'%20stroke='rgba%280,0,0,0.031%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M48.6,119.6%20L29.1,147.3'%20stroke='rgba%280,0,0,0.043%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M48.6,119.6%20L68.8,154.7'%20stroke='rgba%280,0,0,0.053%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M93,125.6%20L89.5,149.8'%20stroke='rgba%280,0,0,0.032%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M106,109.2%20L111.3,157.5'%20stroke='rgba%280,0,0,0.066%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M136.4,129.3%20L136.7,152.7'%20stroke='rgba%280,0,0,0.068%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M166,117.6%20L136.7,152.7'%20stroke='rgba%280,0,0,0.028%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M166,117.6%20L170,145.1'%20stroke='rgba%280,0,0,0.060%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M203.1,128.4%20L170,145.1'%20stroke='rgba%280,0,0,0.038%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M203.1,128.4%20L202.6,143.2'%20stroke='rgba%280,0,0,0.066%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M224.7,114.8%20L202.6,143.2'%20stroke='rgba%280,0,0,0.046%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M224.7,114.8%20L234.7,140.6'%20stroke='rgba%280,0,0,0.057%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M267.8,110.9%20L251.2,142.1'%20stroke='rgba%280,0,0,0.039%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M29.1,147.3%20L0,183.9'%20stroke='rgba%280,0,0,0.059%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M68.8,154.7%20L35.2,172.6'%20stroke='rgba%280,0,0,0.026%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M89.5,149.8%20L68.1,177.5'%20stroke='rgba%280,0,0,0.026%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M89.5,149.8%20L86.4,179.7'%20stroke='rgba%280,0,0,0.029%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M170,145.1%20L173,174.5'%20stroke='rgba%280,0,0,0.042%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M251.2,142.1%20L270.9,186.1'%20stroke='rgba%280,0,0,0.054%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M281.9,158.3%20L270.9,186.1'%20stroke='rgba%280,0,0,0.035%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M320,150.2%20L301.3,185.6'%20stroke='rgba%280,0,0,0.068%29'%20stroke-width='0.9'%20fill='none'/><path%20d='M35.2,172.6%20L0,209.5'%20stroke='rgba%280,0,0,0.053%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M35.2,172.6%20L34.6,216.2'%20stroke='rgba%280,0,0,0.026%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M68.1,177.5%20L34.6,216.2'%20stroke='rgba%280,0,0,0.048%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M68.1,177.5%20L58.7,210.1'%20stroke='rgba%280,0,0,0.043%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M120.7,185.9%20L113.7,215.4'%20stroke='rgba%280,0,0,0.063%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M138.7,187.2%20L113.7,215.4'%20stroke='rgba%280,0,0,0.066%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M173,174.5%20L170.3,200.7'%20stroke='rgba%280,0,0,0.064%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M211.7,188.2%20L170.3,200.7'%20stroke='rgba%280,0,0,0.060%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M211.7,188.2%20L207.5,202.2'%20stroke='rgba%280,0,0,0.037%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M240.6,176.1%20L229.6,216.2'%20stroke='rgba%280,0,0,0.031%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M270.9,186.1%20L229.6,216.2'%20stroke='rgba%280,0,0,0.065%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M270.9,186.1%20L251.9,219'%20stroke='rgba%280,0,0,0.044%29'%20stroke-width='0.8'%20fill='none'/><path%20d='M301.3,185.6%20L251.9,219'%20stroke='rgba%280,0,0,0.061%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M58.7,210.1%20L19.3,240'%20stroke='rgba%280,0,0,0.059%29'%20stroke-width='0.6'%20fill='none'/><path%20d='M85.1,218.1%20L47.7,240'%20stroke='rgba%280,0,0,0.068%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M146.8,214.6%20L118.3,240'%20stroke='rgba%280,0,0,0.060%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M251.9,219%20L272.1,240'%20stroke='rgba%280,0,0,0.039%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M292.9,211.3%20L272.1,240'%20stroke='rgba%280,0,0,0.029%29'%20stroke-width='0.7'%20fill='none'/><path%20d='M292.9,211.3%20L281.2,240'%20stroke='rgba%280,0,0,0.067%29'%20stroke-width='0.5'%20fill='none'/><path%20d='M320,213.9%20L281.2,240'%20stroke='rgba%280,0,0,0.029%29'%20stroke-width='0.7'%20fill='none'/></svg>");
}
@supports (background-blend-mode: overlay) {
  .feature-card,
  .approach-card,
  .svc-row,
  .subjects-block,
  .intl-trust-card,
  .psy-card,
  .mission-card,
  .location-card,
  .faq-list,
  .testi-trust-card,
  .testi-card {
    background-image: var(--crumple-a);
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
  }
  /* Two sheets, offset differently, so neighbouring cards are never creased
     identically — the same reason the torn edges use three contours. */
  .feature-card:nth-child(even),
  .approach-card:nth-child(even),
  .svc-row:nth-child(even),
  .intl-trust-card:nth-child(even),
  .psy-card:nth-child(even),
  .location-card:nth-child(even),
  .testi-card:nth-child(even),
  .psy-card:nth-child(3n),
  .svc-row:nth-child(3n) { background-position: 70% 20%; }
  /* `overlay` and `soft-light` are useless here: against a white base both
     return white, so the texture vanished entirely on the pale cards.
     `multiply` is the only mode that reads on paper of any colour. */
}

/* ----- Torn sheet outlines -----
   Rounded rectangles contradict the creased surface, so the cards lose their
   corners entirely: each is cut to the outline of a sheet that was screwed up
   and smoothed flat. Three outlines, cycled, so no two neighbours match.

   The border and radius go with it — torn paper has neither — and so does the
   hover shadow: box-shadow is painted from the element's rectangle and ignores
   the mask, so it would hang a crisp rounded shadow behind a ragged sheet. The
   lift alone carries the hover. */
:root {
  --sheet-a: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20400%20300'%20preserveAspectRatio='none'><path%20d='M0,5.2%20L12.1,5.8%20L24.2,3%20L36.4,3%20L48.5,5.6%20L60.6,7.3%20L72.7,8.1%20L84.8,8.8%20L97,8.9%20L109.1,9.8%20L121.2,13.9%20L133.3,12.9%20L145.5,15%20L157.6,15%20L169.7,15%20L181.8,14.5%20L193.9,14.2%20L206.1,15%20L218.2,9.2%20L230.3,11.6%20L242.4,12.3%20L254.5,12.3%20L266.7,11.5%20L278.8,12%20L290.9,12.9%20L303,14.8%20L315.2,15%20L327.3,15%20L339.4,15%20L351.5,15%20L363.6,15%20L375.8,13.9%20L387.9,15%20L400,12.9%20L389.2,0%20L387.8,12%20L390.2,24%20L392.5,36%20L393.4,48%20L390.9,60%20L388.3,72%20L390.5,84%20L393,96%20L393.5,108%20L395.2,120%20L389.4,132%20L387,144%20L387.6,156%20L387.5,168%20L387,180%20L386.4,192%20L386.3,204%20L385.2,216%20L386.2,228%20L386.1,240%20L388.7,252%20L388.2,264%20L386.4,276%20L388.7,288%20L388.9,300%20L400,287.8%20L387.9,290.3%20L375.8,287.4%20L363.6,288.7%20L351.5,288.3%20L339.4,289%20L327.3,289.6%20L315.2,290.7%20L303,289.3%20L290.9,288.2%20L278.8,289.1%20L266.7,287.6%20L254.5,289.2%20L242.4,288.2%20L230.3,291%20L218.2,289.3%20L206.1,287.4%20L193.9,288.3%20L181.8,286.3%20L169.7,287.7%20L157.6,287.2%20L145.5,285.6%20L133.3,287.3%20L121.2,285.7%20L109.1,285%20L97,286.9%20L84.8,285.4%20L72.7,286.2%20L60.6,286.6%20L48.5,285%20L36.4,287.6%20L24.2,285.6%20L12.1,285.9%20L0,285%20L7.4,300%20L7.5,288%20L6.7,276%20L4.4,264%20L3.3,252%20L3,240%20L4,228%20L6.1,216%20L6.5,204%20L10.4,192%20L9.4,180%20L9.5,168%20L11.8,156%20L10.9,144%20L12.8,132%20L14.3,120%20L12.7,108%20L14.4,96%20L15,84%20L15,72%20L12.4,60%20L14.3,48%20L10.7,36%20L10.8,24%20L10.7,12%20L8.1,0%20Z'%20fill='%23fff'/></svg>");
  --sheet-b: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20400%20300'%20preserveAspectRatio='none'><path%20d='M0,5.8%20L12.1,6.2%20L24.2,6.5%20L36.4,7.7%20L48.5,9.2%20L60.6,10.9%20L72.7,9.2%20L84.8,10.3%20L97,11.1%20L109.1,8.8%20L121.2,6.4%20L133.3,8.2%20L145.5,9.3%20L157.6,7.4%20L169.7,5.4%20L181.8,6.4%20L193.9,4.1%20L206.1,4.7%20L218.2,3.1%20L230.3,4.9%20L242.4,3%20L254.5,3%20L266.7,3%20L278.8,3%20L290.9,3%20L303,3%20L315.2,3.2%20L327.3,4%20L339.4,3%20L351.5,3%20L363.6,4.9%20L375.8,3%20L387.9,3%20L400,3.8%20L388.4,0%20L386,12%20L386.4,24%20L385.4,36%20L385.7,48%20L386.8,60%20L385.9,72%20L385,84%20L385,96%20L385,108%20L385,120%20L386.7,132%20L391.9,144%20L394.1,156%20L393.8,168%20L394.7,180%20L393.7,192%20L385.8,204%20L385,216%20L385,228%20L385,240%20L387.4,252%20L385.1,264%20L385.1,276%20L386.8,288%20L385.3,300%20L400,295.6%20L387.9,294.7%20L375.8,292.6%20L363.6,294.4%20L351.5,293.8%20L339.4,291.9%20L327.3,291.4%20L315.2,289.9%20L303,291.3%20L290.9,290.8%20L278.8,292.4%20L266.7,294.6%20L254.5,292.4%20L242.4,294.7%20L230.3,293.5%20L218.2,296%20L206.1,297%20L193.9,297%20L181.8,297%20L169.7,297%20L157.6,296.9%20L145.5,296.1%20L133.3,297%20L121.2,297%20L109.1,292.7%20L97,293.3%20L84.8,293.2%20L72.7,292.2%20L60.6,291.9%20L48.5,293.5%20L36.4,293.5%20L24.2,292%20L12.1,292.3%20L0,294.3%20L13,300%20L13.9,288%20L13.2,276%20L11.1,264%20L10.3,252%20L8.6,240%20L6.5,228%20L5.5,216%20L4.5,204%20L3,192%20L5.5,180%20L6.5,168%20L8.6,156%20L7.4,144%20L8.9,132%20L7.2,120%20L7,108%20L9,96%20L7.8,84%20L7.9,72%20L8.9,60%20L7.6,48%20L8.9,36%20L7.3,24%20L6.2,12%20L8,0%20Z'%20fill='%23fff'/></svg>");
  /* Proportioned for full-width cards: a 400-unit outline stretched across
     1120px bites 56px, which chews through content. At 1200 units it bites
     ~19px there, matching what the narrow cards get. */
  --sheet-wide-a: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%20300'%20preserveAspectRatio='none'><path%20d='M0,11.7%20L20.3,13%20L40.7,13.9%20L61,6.3%20L81.4,7.6%20L101.7,7.6%20L122,9.4%20L142.4,8.9%20L162.7,6.6%20L183.1,8.6%20L203.4,9.6%20L223.7,12%20L244.1,12.2%20L264.4,12.9%20L284.7,10.8%20L305.1,10.6%20L325.4,8.8%20L345.8,10.4%20L366.1,7.9%20L386.4,5.5%20L406.8,4.8%20L427.1,4.1%20L447.5,6.1%20L467.8,6.4%20L488.1,6.5%20L508.5,5.3%20L528.8,3.7%20L549.2,4%20L569.5,3%20L589.8,5.2%20L610.2,4.3%20L630.5,4.7%20L650.8,3%20L671.2,3%20L691.5,3%20L711.9,4.2%20L732.2,3%20L752.5,5.1%20L772.9,6.2%20L793.2,5.7%20L813.6,8%20L833.9,7.5%20L854.2,6.2%20L874.6,4.2%20L894.9,5.9%20L915.3,7.5%20L935.6,9.1%20L955.9,15%20L976.3,15%20L996.6,15%20L1016.9,12.8%20L1037.3,15%20L1057.6,15%20L1078,13.2%20L1098.3,14.4%20L1118.6,13.9%20L1139,14.1%20L1159.3,13.9%20L1179.7,15%20L1200,14.1%20L1197,0%20L1196.6,12%20L1194.6,24%20L1194.2,36%20L1193.9,48%20L1194.6,60%20L1193.3,72%20L1194,84%20L1193.9,96%20L1195.5,108%20L1194.5,120%20L1194.7,132%20L1194.7,144%20L1194.8,156%20L1197,168%20L1195.3,180%20L1194,192%20L1195.2,204%20L1194.2,216%20L1194.6,228%20L1194,240%20L1196.1,252%20L1194.4,264%20L1193.8,276%20L1195.2,288%20L1193.4,300%20L1200,289.8%20L1179.7,291.4%20L1159.3,292.6%20L1139,292.4%20L1118.6,289.9%20L1098.3,292.5%20L1078,293.3%20L1057.6,291.6%20L1037.3,287.9%20L1016.9,288.8%20L996.6,288.6%20L976.3,288.6%20L955.9,290.6%20L935.6,289.6%20L915.3,291.2%20L894.9,292.7%20L874.6,291.2%20L854.2,292.3%20L833.9,292.1%20L813.6,292%20L793.2,293.8%20L772.9,295.5%20L752.5,296.5%20L732.2,294.5%20L711.9,295%20L691.5,296.7%20L671.2,295.3%20L650.8,296.2%20L630.5,294.9%20L610.2,296%20L589.8,297%20L569.5,297%20L549.2,297%20L528.8,295%20L508.5,296.7%20L488.1,297%20L467.8,295.6%20L447.5,293.2%20L427.1,294.2%20L406.8,292%20L386.4,293.9%20L366.1,288.8%20L345.8,288%20L325.4,286.5%20L305.1,288%20L284.7,286.2%20L264.4,287.4%20L244.1,288.9%20L223.7,290.5%20L203.4,292.9%20L183.1,295.2%20L162.7,295.2%20L142.4,296.5%20L122,294.4%20L101.7,293.1%20L81.4,294.6%20L61,292.7%20L40.7,294.1%20L20.3,294.7%20L0,296.3%20L13.9,300%20L13.6,288%20L11.7,276%20L13.1,264%20L12.6,252%20L14.4,240%20L13.1,228%20L15,216%20L15,204%20L14.5,192%20L14.4,180%20L12.7,168%20L12.3,156%20L11,144%20L5,132%20L3,120%20L3.6,108%20L3,96%20L3,84%20L4.4,72%20L5,60%20L7.2,48%20L6,36%20L8.1,24%20L9.5,12%20L7.5,0%20Z'%20fill='%23fff'/></svg>");
  --sheet-wide-b: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%20300'%20preserveAspectRatio='none'><path%20d='M0,8.2%20L20.3,5.7%20L40.7,6.8%20L61,8.3%20L81.4,10%20L101.7,8.2%20L122,7.9%20L142.4,5.7%20L162.7,3.1%20L183.1,3%20L203.4,4.4%20L223.7,3%20L244.1,4.4%20L264.4,3%20L284.7,3.3%20L305.1,3%20L325.4,3%20L345.8,3%20L366.1,3%20L386.4,3%20L406.8,4.7%20L427.1,9.6%20L447.5,11.5%20L467.8,10.4%20L488.1,10.8%20L508.5,13.2%20L528.8,15%20L549.2,13.7%20L569.5,12.7%20L589.8,11.5%20L610.2,10.5%20L630.5,4.3%20L650.8,3%20L671.2,3%20L691.5,4.7%20L711.9,4.6%20L732.2,3.6%20L752.5,3%20L772.9,3.2%20L793.2,5%20L813.6,7.5%20L833.9,5.4%20L854.2,6.1%20L874.6,4.3%20L894.9,3%20L915.3,3.9%20L935.6,4.8%20L955.9,3.1%20L976.3,4.4%20L996.6,4.3%20L1016.9,3%20L1037.3,3%20L1057.6,3%20L1078,4.3%20L1098.3,6.8%20L1118.6,6.7%20L1139,11.3%20L1159.3,8.8%20L1179.7,9.3%20L1200,9.9%20L1197,0%20L1195.3,12%20L1194.9,24%20L1197,36%20L1197,48%20L1197,60%20L1197,72%20L1197,84%20L1195.7,96%20L1193.5,108%20L1194.7,120%20L1194.1,132%20L1192.4,144%20L1193.9,156%20L1195.2,168%20L1193.5,180%20L1196,192%20L1197,204%20L1197,216%20L1197,228%20L1195.7,240%20L1193.2,252%20L1190.6,264%20L1188.5,276%20L1186.9,288%20L1187.7,300%20L1200,289.1%20L1179.7,288%20L1159.3,290.2%20L1139,292.6%20L1118.6,292.3%20L1098.3,292.5%20L1078,295%20L1057.6,293.7%20L1037.3,296.3%20L1016.9,297%20L996.6,297%20L976.3,297%20L955.9,294.6%20L935.6,296.4%20L915.3,294.2%20L894.9,295.6%20L874.6,296.9%20L854.2,294.8%20L833.9,294.7%20L813.6,296.5%20L793.2,297%20L772.9,297%20L752.5,297%20L732.2,297%20L711.9,296.8%20L691.5,297%20L671.2,296.4%20L650.8,296.6%20L630.5,297%20L610.2,296.5%20L589.8,297%20L569.5,297%20L549.2,296.6%20L528.8,296.6%20L508.5,297%20L488.1,297%20L467.8,297%20L447.5,294.6%20L427.1,293%20L406.8,290.7%20L386.4,288.7%20L366.1,288%20L345.8,289.5%20L325.4,289.9%20L305.1,292.1%20L284.7,292.7%20L264.4,292.2%20L244.1,292.3%20L223.7,292.5%20L203.4,293%20L183.1,295.3%20L162.7,295.5%20L142.4,297%20L122,297%20L101.7,297%20L81.4,297%20L61,296.3%20L40.7,296.3%20L20.3,293.9%20L0,294.2%20L10.5,300%20L11.3,288%20L9.3,276%20L8,264%20L6.5,252%20L5.7,240%20L8.1,228%20L10.5,216%20L13.1,204%20L14.4,192%20L15,180%20L12.6,168%20L10.3,156%20L10.5,144%20L10.8,132%20L12.4,120%20L12.3,108%20L11.5,96%20L9.6,84%20L9,72%20L6.9,60%20L4.9,48%20L5.2,36%20L7.5,24%20L9.2,12%20L14.2,0%20Z'%20fill='%23fff'/></svg>");
  --sheet-c: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20400%20300'%20preserveAspectRatio='none'><path%20d='M0,9.9%20L12.1,10%20L24.2,11.8%20L36.4,9.9%20L48.5,8%20L60.6,6.3%20L72.7,7.2%20L84.8,3%20L97,4.9%20L109.1,11.3%20L121.2,13.3%20L133.3,15%20L145.5,15%20L157.6,15%20L169.7,12.5%20L181.8,11.9%20L193.9,11.9%20L206.1,11.3%20L218.2,10.1%20L230.3,12%20L242.4,6.1%20L254.5,3.9%20L266.7,5%20L278.8,4.3%20L290.9,3.8%20L303,3%20L315.2,3%20L327.3,4%20L339.4,4.3%20L351.5,4.2%20L363.6,6.6%20L375.8,8.8%20L387.9,6.4%20L400,5.1%20L390.5,0%20L397,12%20L397,24%20L397,36%20L396.2,48%20L396.5,60%20L397,72%20L394.5,84%20L393.3,96%20L395.2,108%20L393.2,120%20L392.6,132%20L390.6,144%20L388.6,156%20L390.2,168%20L392.6,180%20L394.2,192%20L393.6,204%20L393.5,216%20L392.5,228%20L393.8,240%20L396.2,252%20L396.9,264%20L394.9,276%20L395.2,288%20L395.7,300%20L400,287.8%20L387.9,288.5%20L375.8,289.5%20L363.6,287.1%20L351.5,285.7%20L339.4,287.2%20L327.3,289.1%20L315.2,291.2%20L303,291.5%20L290.9,293%20L278.8,293.3%20L266.7,291%20L254.5,289.5%20L242.4,290.5%20L230.3,289.6%20L218.2,291.6%20L206.1,289.5%20L193.9,289.2%20L181.8,290.5%20L169.7,288.5%20L157.6,289.1%20L145.5,291.7%20L133.3,290.3%20L121.2,290.8%20L109.1,289.1%20L97,290.1%20L84.8,288.6%20L72.7,287.3%20L60.6,287.6%20L48.5,289%20L36.4,287.7%20L24.2,289%20L12.1,287.4%20L0,288.6%20L5.2,300%20L5,288%20L4.1,276%20L3.4,264%20L4.5,252%20L3,240%20L3,228%20L3,216%20L3,204%20L3.2,192%20L3,180%20L3,168%20L3,156%20L3,144%20L4.5,132%20L3.7,120%20L4.1,108%20L5.7,96%20L6.8,84%20L5.6,72%20L7.8,60%20L8.8,48%20L9.1,36%20L11.2,24%20L9.5,12%20L10.4,0%20Z'%20fill='%23fff'/></svg>");
}
@supports ((mask-size: 100% 100%) or (-webkit-mask-size: 100% 100%)) {
  .feature-card,
  .approach-card,
  .svc-row,
  .subjects-block,
  .intl-trust-card,
  .psy-card,
  .mission-card,
  .location-card,
  .testi-card,
  .testi-trust-card,
  .review-widget_net,
  .faq-list,
  .intl-cta {
    border: 0;
    border-radius: 0;
    -webkit-mask-image: var(--sheet, var(--sheet-a));
    mask-image: var(--sheet, var(--sheet-a));
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }
  .feature-card:nth-child(even),
  .approach-card:nth-child(even),
  .svc-row:nth-child(even),
  .subjects-block:nth-child(even),
  .intl-trust-card:nth-child(even),
  .psy-card:nth-child(even),
  .mission-card:nth-child(even),
  .location-card:nth-child(even),
  .testi-card:nth-child(even) { --sheet: var(--sheet-b); }
  .feature-card:nth-child(3n),
  .approach-card:nth-child(3n),
  .svc-row:nth-child(3n),
  .subjects-block:nth-child(3n),
  .intl-trust-card:nth-child(3n),
  .psy-card:nth-child(3n),
  .mission-card:nth-child(3n),
  .location-card:nth-child(3n),
  .testi-card:nth-child(3n) { --sheet: var(--sheet-c); }

  /* Full-width cards take the proportioned outline instead. */
  .mission-card:nth-child(n),
  .subjects-block:nth-child(n),
  .testi-feature:nth-child(n),
  .testi-card-wide:nth-child(n),
  .faq-list:nth-child(n),
  .team-more:nth-child(n),
  .intl-cta:nth-child(n),
  .recruit .svc-row {
    --sheet: var(--sheet-wide-a);
  }
  .subjects-block:nth-child(n),
  .testi-card-wide:nth-child(n) { --sheet: var(--sheet-wide-b); }

  /* Room for the bite: the FAQ rows ran edge to edge, and the rating tiles had
     only 18px to give. */
  .faq-list { padding: 24px 30px; }
  .testi-trust-card, .review-widget_net { padding: 32px; }
  /* The widget nests its own .testi-trust-card, stripped of padding so it reads
     as the tile's content. Tearing that inner one would cut straight through
     the text — the tile around it is the sheet. */
  .review-widget_net .testi-trust-card {
    -webkit-mask-image: none;
    mask-image: none;
    padding: 0;
  }

  /* The team cards cannot be masked directly: a mask clips to the element's
     box, and these have a person breaking out over the top edge. So the sheet
     is a masked ::before carrying the colour and the crease, while the card
     itself stays unmasked and the photo escapes freely. */
  .team-card {
    background: none;
    border: 0;
    border-radius: 0;
  }
  .team-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: var(--card-bg);
    background-image: var(--crumple-a);
    background-size: cover;
    background-blend-mode: multiply;
    -webkit-mask-image: var(--sheet, var(--sheet-a));
    mask-image: var(--sheet, var(--sheet-a));
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    pointer-events: none;
  }
  .team-card:nth-child(even)::before { --sheet: var(--sheet-b); background-image: var(--crumple-b); }
  .team-card:nth-child(3n)::before   { --sheet: var(--sheet-c); }

  /* Susana's giraffe, back from her original card, hiding behind the sheet and
     peeking out past the bottom-right corner. z-index -2 puts it under the
     ::before that carries the torn paper, so only what clears the ragged edge
     is visible — which is what makes it read as peeking rather than pasted on.
     Decorative, so it is a background on a pseudo-element and announces
     nothing to a screen reader. */
  .team-card.t-butter::after {
    content: "";
    position: absolute;
    right: -6px;
    top: -20px;
    width: 76px;
    height: 54px;
    z-index: -2;
    background-image: url("/assets/team/girafa.webp");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center top;
    transform: rotate(9deg);
    pointer-events: none;
  }
  @media (max-width: 560px) {
    .team-card.t-butter::after { right: 12px; top: -17px; width: 66px; height: 48px; }
  }

  .feature-card:hover,
  .approach-card:hover,
  .svc-row:hover,
  .intl-trust-card:hover,
  .psy-card:hover,
  .location-card:hover,
  .testi-card:hover { box-shadow: none; transform: translateY(-4px); }
}

/* The hero's underline is the first thing a visitor sees, so it draws itself
   on load rather than on scroll — by the time the page is painted the heading
   is already well inside the viewport, where a view() timeline would report
   the animation as long finished. */
@media not (prefers-reduced-motion: reduce) {
  .hero-title em {
    animation: draw-underline 2.2s cubic-bezier(.28,.35,.35,1) .45s both;
  }
}

/* The contact panel closes the page, and its underline is the one gesture a
   visitor is guaranteed to scroll all the way to — so it has to be finished
   when they get there. A view() range cannot promise that: it measures the
   heading's whole trip across the viewport, and this heading sits 417px above
   the end of the document, so however hard you scroll it only ever completes
   about 40% of that trip on a 900px screen and less on a taller one. `cover
   80%` was simply never reached, and the stroke under "conversar" stopped
   short of the word for good.
   So this one runs on a clock instead, started by the same IntersectionObserver
   reveal the rest of the page uses — it cannot be cut off by running out of
   page. The hidden start state is under .js-reveal, which main.js adds only
   when it is going to animate, so no JS and reduced motion both land on the
   underline already drawn. */
.js-reveal .cta .cta-title em { background-size: 0 .17em; }
.js-reveal .cta.is-visible .cta-title em {
  animation: draw-underline-timed 1.4s cubic-bezier(.28,.35,.35,1) .2s both;
  /* Undoes the view() timeline the rule further down would otherwise hand it. */
  animation-timeline: auto;
}
@keyframes draw-underline-timed {
  from { background-size: 0 .17em; }
  to   { background-size: 100% .17em; }
}

/* ----- Scroll-driven flourishes -----
   Everything here is a bonus layer. The resting state of each element is
   already correct in the rules above, so a browser without scroll-driven
   animation support, or a visitor who asked for reduced motion, simply sees
   the finished version instead of watching it arrive. */
@supports (animation-timeline: view()) {
  @media not (prefers-reduced-motion: reduce) {

    /* The coral underline draws itself left to right as the heading enters.
       The contact panel's heading is deliberately not in this list — see the
       timed version above it; a view() range is unreachable that close to the
       end of the document. */
    .section-title em,
    .mission-quote em,
    .intl-cta .cta-title em {
      animation: draw-underline linear both;
      animation-timeline: view();
      animation-range: cover 0% cover 80%;
    }
    @keyframes draw-underline { from { background-size: 0 .17em; } }

    /* The arrows between the three Approach steps used to draw here, off a
       view() timeline. They are now chained to each card's own reveal in the
       Approach block above, which every browser runs. */

    /* The team photos rise into place as the card enters.
       This animates the <img>, not .team-figure: the figure carries the
       clip-path that cuts the feet off at the card's bottom edge, and moving
       the figure dragged that clip along with it, letting legs hang below the
       card. The hover uses the independent scale/translate properties so the
       two never contend for transform. Ends at translateY(0) because the
       person sits flush with the bottom edge. */
    .team-figure img {
      animation: team-rise linear both;
      animation-timeline: view();
      animation-range: cover 0% cover 38%;
    }
    @keyframes team-rise {
      from { transform: translateY(16px); }
      to   { transform: translateY(0); }
    }
  }
}
