*{box-sizing:border-box}
:root{
  --navy:#0D1B3D;
  --gold:#C9942E;
  --petrol:#0B6F73;
  --border:#DFE3E9;
  --text:#1F2A44;
}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#fff;
  color:var(--navy);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
}
main{
  width:min(1120px,calc(100% - 48px));
  margin:0 auto;
  padding:70px 0 54px;
}
.hero{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:10px 0 64px;
}
.peixe-logo{
  width:280px;
  max-width:62vw;
  height:auto;
  display:block;
  margin:0 auto 50px;
}
.manifesto{
  font-size:clamp(24px,2.35vw,34px);
  line-height:1.55;
  font-weight:400;
  letter-spacing:-.02em;
}
.manifesto p{margin:4px 0}

.products{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
  margin:0 auto 72px;
}
.product-card{
  text-decoration:none;
  color:var(--navy);
  min-height:560px;
  border:1.5px solid var(--border);
  border-radius:24px;
  padding:46px 46px 34px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  background:#fff;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.product-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 55px rgba(13,27,61,.08);
}
.product-card.qver{border-color:rgba(11,111,115,.58)}
.product-card.backermap{border-color:rgba(201,148,46,.68)}
.product-card h2{
  margin:0;
  font-size:clamp(24px,2.5vw,34px);
  letter-spacing:.12em;
  font-weight:650;
}
.rule{
  width:52px;
  height:2px;
  margin:22px 0 25px;
  background:var(--gold);
}
.qver .rule{background:var(--petrol)}
.tagline{
  color:var(--gold);
  font-size:clamp(21px,2vw,28px);
  margin:0 0 28px;
}
.description{
  margin:0 auto;
  max-width:39ch;
  color:var(--text);
  font-size:17px;
  line-height:1.75;
}
.logo-wrap{
  margin-top:auto;
  width:100%;
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.logo-wrap img{
  display:block;
  max-width:100%;
  height:auto;
}
.qver-logo-wrap img{
  width:310px;
}
.backermap-logo-wrap img{
  width:360px;
  max-height:160px;
  object-fit:contain;
}
.closing{
  display:flex;
  justify-content:center;
  padding:6px 0 46px;
}
.closing>div{
  width:min(560px,100%);
  text-align:right;
  font-size:clamp(28px,3vw,42px);
  line-height:1.45;
  letter-spacing:-.025em;
}
.closing p{margin:0}
.closing .peixe{color:var(--gold)}

.social{
  display:flex;
  justify-content:center;
  padding:8px 0 24px;
}
.social a{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:var(--navy);
  color:#fff;
  transition:transform .18s ease,background .18s ease;
}
.social a:hover{transform:translateY(-2px);background:var(--petrol)}
.social svg{
  width:27px;
  height:27px;
  fill:currentColor;
}

@media(max-width:760px){
  main{
    width:min(100% - 32px,620px);
    padding-top:42px;
  }
  .hero{padding-bottom:48px}
  .peixe-logo{
    width:230px;
    margin-bottom:35px;
  }
  .manifesto{
    font-size:22px;
    line-height:1.55;
  }
  .products{
    grid-template-columns:1fr;
    gap:20px;
    margin-bottom:54px;
  }
  .product-card{
    min-height:500px;
    padding:36px 26px 28px;
  }
  .description{font-size:16px}
  .qver-logo-wrap img{width:270px}
  .backermap-logo-wrap img{width:320px}
  .closing{
    padding-bottom:36px;
  }
  .closing>div{
    font-size:30px;
    width:100%;
  }
}
@media(max-width:420px){
  main{width:calc(100% - 24px)}
  .manifesto{font-size:19px}
  .product-card{border-radius:20px}
  .closing>div{font-size:26px}
}

/* V3 defensive asset sizing */
.product-card { overflow: hidden; }
.qver-logo-wrap img {
  width: min(310px, 82%) !important;
  max-width: 82% !important;
  height: auto !important;
}
.backermap-logo-wrap img {
  width: min(360px, 90%) !important;
  max-width: 90% !important;
  max-height: 150px !important;
  height: auto !important;
  object-fit: contain !important;
}
.social a {
  flex: 0 0 46px !important;
  width: 46px !important;
  height: 46px !important;
  overflow: hidden !important;
}
.social svg {
  display: block !important;
  width: 27px !important;
  height: 27px !important;
  max-width: 27px !important;
  max-height: 27px !important;
}


/* V4 refinements */
.manifesto{
  width:min(540px, 100%);
  margin:0 auto;
  text-align:left;
}
.manifesto p{
  margin:0 0 6px;
}

.closing>div{
  width:min(560px,100%);
  text-align:right;
}

.closing .peixe{
  color:var(--gold);
  letter-spacing:.28em;
  text-transform:uppercase;
  font-weight:500;
  font-size:0.92em;
}

@media(max-width:760px){
  .manifesto{
    width:min(420px, 100%);
  }
  .closing .peixe{
    letter-spacing:.18em;
  }
}


/* V5 visual refinement */
.hero{
  padding-top:4px;
  padding-bottom:58px;
}

.peixe-logo{
  margin-bottom:34px;
}

.manifesto{
  width:min(430px,100%);
  margin:0 auto;
  text-align:left;
  padding-left:18px;
  font-size:clamp(23px,2.1vw,31px);
  line-height:1.5;
}

.manifesto p{
  margin:0 0 4px;
}

.closing .peixe{
  font-size:.78em;
  letter-spacing:.20em;
  font-weight:500;
}

@media(max-width:760px){
  .hero{
    padding-bottom:46px;
  }
  .peixe-logo{
    margin-bottom:28px;
  }
  .manifesto{
    width:min(360px,100%);
    padding-left:10px;
    font-size:21px;
  }
  .closing .peixe{
    font-size:.76em;
    letter-spacing:.16em;
  }
}


/* V6 — center text blocks by their longest line */
.manifesto{
  width:fit-content !important;
  max-width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
  text-align:left !important;
}

.manifesto p{
  width:auto !important;
  white-space:nowrap;
}

.closing{
  display:flex !important;
  justify-content:center !important;
}

.closing>div{
  width:fit-content !important;
  max-width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:right !important;
}

.closing>div p{
  width:auto !important;
  white-space:nowrap;
}

@media(max-width:760px){
  .manifesto,
  .closing>div{
    max-width:100% !important;
  }

  .manifesto p,
  .closing>div p{
    white-space:normal;
  }
}


/* V7 — final polish & public asset deterrence */
.peixe-home{
  display:inline-block;
  text-decoration:none;
  line-height:0;
  border-radius:8px;
}

.peixe-home:focus-visible{
  outline:2px solid rgba(201,148,46,.65);
  outline-offset:8px;
}

.protected-image{
  -webkit-user-drag:none;
  user-drag:none;
  -webkit-touch-callout:none;
  user-select:none;
}

img{
  -webkit-user-select:none;
  user-select:none;
}


/* V8 — final sign-off refinement */
.closing .peixe{
  font-size: 0.58em !important;
  letter-spacing: 0.14em !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
}

@media(max-width:760px){
  .closing .peixe{
    font-size: 0.60em !important;
    letter-spacing: 0.12em !important;
  }
}


/* V9 — tab title + final sign-off spacing */
.closing .peixe{
  letter-spacing: 0.24em !important;
}

@media(max-width:760px){
  .closing .peixe{
    letter-spacing: 0.20em !important;
  }
}


/* V10 — favicon refresh + PEIXE sign-off refinement */
.closing .peixe{
  margin-top: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0.26em !important;
}

@media(max-width:760px){
  .closing .peixe{
    margin-top: 12px !important;
    letter-spacing: 0.22em !important;
  }
}


/* V18 — compact / subtler presentation */
main{
  width:min(760px, calc(100% - 44px)) !important;
  padding:46px 0 38px !important;
}
.hero{
  padding:4px 0 40px !important;
}
.peixe-logo{
  width:190px !important;
  max-width:55vw !important;
  margin-bottom:24px !important;
}
.manifesto{
  font-size:clamp(17px,1.45vw,21px) !important;
  line-height:1.46 !important;
}
.manifesto p{
  margin:0 0 3px !important;
}
.peixe-intro{
  width:min(430px,100%);
  margin:20px auto 0;
  color:#687187;
  text-align:center;
  font-size:13px;
  line-height:1.6;
  font-weight:400;
}
.products{
  gap:20px !important;
  margin-bottom:50px !important;
}
.product-card{
  min-height:375px !important;
  border-radius:18px !important;
  padding:30px 30px 22px !important;
}
.product-card h2{
  font-size:clamp(17px,1.65vw,22px) !important;
}
.rule{
  width:36px !important;
  margin:15px 0 17px !important;
}
.tagline{
  font-size:clamp(15px,1.45vw,19px) !important;
  margin-bottom:18px !important;
}
.description{
  max-width:36ch !important;
  font-size:12px !important;
  line-height:1.65 !important;
}
.logo-wrap{
  min-height:100px !important;
}
.qver-logo-wrap img{
  width:205px !important;
  max-width:80% !important;
}
.backermap-logo-wrap img{
  width:240px !important;
  max-width:86% !important;
  max-height:105px !important;
}
.closing{
  padding:4px 0 32px !important;
}
.closing>div{
  font-size:clamp(19px,2vw,28px) !important;
}
.closing .peixe{
  margin-top:10px !important;
  font-size:.56em !important;
}
.social{
  padding:4px 0 16px !important;
}
.social a{
  width:34px !important;
  height:34px !important;
  border-radius:6px !important;
}
.social svg{
  width:20px !important;
  height:20px !important;
}

@media(max-width:760px){
  main{
    width:min(100% - 28px,520px) !important;
    padding-top:34px !important;
  }
  .hero{
    padding-bottom:36px !important;
  }
  .peixe-logo{
    width:185px !important;
    margin-bottom:24px !important;
  }
  .manifesto{
    font-size:18px !important;
  }
  .peixe-intro{
    width:min(380px,100%);
    margin-top:17px;
    font-size:12.5px;
  }
  .products{
    gap:16px !important;
    margin-bottom:42px !important;
  }
  .product-card{
    min-height:360px !important;
    padding:27px 22px 20px !important;
  }
  .description{
    font-size:12.5px !important;
  }
  .closing>div{
    font-size:24px !important;
  }
}


/* V19 — final hierarchy refinement */
.peixe-intro-after-products{
  margin:26px auto 0 !important;
  width:min(470px,100%) !important;
  color:#687187 !important;
  text-align:center !important;
  font-size:12.5px !important;
  line-height:1.62 !important;
  font-weight:400 !important;
}

.closing{
  padding-top:34px !important;
}

.social a{
  width:30px !important;
  height:30px !important;
}

.social svg{
  width:17px !important;
  height:17px !important;
}

@media(max-width:760px){
  .peixe-intro-after-products{
    margin-top:22px !important;
    width:min(390px,100%) !important;
    font-size:12px !important;
  }

  .closing{
    padding-top:30px !important;
  }

  .social a{
    width:29px !important;
    height:29px !important;
  }

  .social svg{
    width:16px !important;
    height:16px !important;
  }
}


/* V20 — mobile restored to a more readable scale.
   Desktop remains exactly as V19. */
@media(max-width:760px){
  main{
    width:min(calc(100% - 20px),560px) !important;
    padding-top:38px !important;
    padding-bottom:32px !important;
  }

  .hero{
    padding-bottom:44px !important;
  }

  .peixe-logo{
    width:225px !important;
    max-width:64vw !important;
    margin-bottom:30px !important;
  }

  .manifesto{
    font-size:21px !important;
    line-height:1.48 !important;
  }

  .manifesto p{
    margin-bottom:5px !important;
  }

  .products{
    gap:22px !important;
    margin-bottom:46px !important;
  }

  .product-card{
    min-height:445px !important;
    padding:34px 24px 26px !important;
    border-radius:20px !important;
  }

  .product-card h2{
    font-size:22px !important;
    letter-spacing:.09em !important;
  }

  .rule{
    width:42px !important;
    margin:17px 0 20px !important;
  }

  .tagline{
    font-size:18px !important;
    line-height:1.45 !important;
    margin-bottom:22px !important;
  }

  .description{
    max-width:31ch !important;
    font-size:15px !important;
    line-height:1.62 !important;
  }

  .logo-wrap{
    min-height:125px !important;
  }

  .qver-logo-wrap img{
    width:245px !important;
    max-width:82% !important;
  }

  .backermap-logo-wrap img{
    width:285px !important;
    max-width:88% !important;
    max-height:125px !important;
  }

  .peixe-intro-after-products{
    width:min(430px,92%) !important;
    margin-top:28px !important;
    font-size:14px !important;
    line-height:1.62 !important;
  }

  .closing{
    padding-top:32px !important;
    padding-bottom:34px !important;
  }

  .closing>div{
    font-size:27px !important;
    line-height:1.42 !important;
  }

  .closing .peixe{
    margin-top:12px !important;
  }

  .social a{
    width:31px !important;
    height:31px !important;
  }

  .social svg{
    width:17px !important;
    height:17px !important;
  }
}

/* Slightly smaller phones: keep comfortable, not tiny */
@media(max-width:390px){
  .peixe-logo{
    width:205px !important;
  }

  .manifesto{
    font-size:19px !important;
  }

  .product-card{
    padding-left:20px !important;
    padding-right:20px !important;
  }

  .description{
    font-size:14.5px !important;
  }

  .closing>div{
    font-size:25px !important;
  }
}


/* V21 — Peixe uitlegzin even groot als de 3 kernzinnen */
.peixe-intro,
.peixe-intro-after-products{
  color:#687187 !important;
  text-align:center !important;
  font-size:clamp(17px,1.45vw,21px) !important;
  line-height:1.46 !important;
  font-weight:400 !important;
  width:min(100%, 32ch) !important;
  max-width:32ch !important;
}

.peixe-intro-after-products{
  margin:26px auto 0 !important;
}

@media(max-width:760px){
  .peixe-intro,
  .peixe-intro-after-products{
    font-size:21px !important;
    line-height:1.48 !important;
    width:min(100%, 32ch) !important;
    max-width:32ch !important;
  }

  .peixe-intro-after-products{
    margin-top:28px !important;
  }
}

@media(max-width:390px){
  .peixe-intro,
  .peixe-intro-after-products{
    font-size:19px !important;
    max-width:31ch !important;
  }
}


/* V22 — intro zin bewust op 2 regels en breder dan de quote */
.peixe-intro,
.peixe-intro-after-products{
  width:min(100%, 46ch) !important;
  max-width:46ch !important;
}

.peixe-intro .intro-line,
.peixe-intro-after-products .intro-line{
  display:block !important;
}

@media(max-width:760px){
  .peixe-intro,
  .peixe-intro-after-products{
    width:min(100%, 34ch) !important;
    max-width:34ch !important;
    font-size:17px !important;
    line-height:1.48 !important;
  }
}

@media(max-width:390px){
  .peixe-intro,
  .peixe-intro-after-products{
    width:min(100%, 32ch) !important;
    max-width:32ch !important;
    font-size:16px !important;
  }
}


/* V23 — bredere 2-regelige Peixe-zin + grotere kaartteksten */
.peixe-intro,
.peixe-intro-after-products{
  width:min(100%, 72ch) !important;
  max-width:72ch !important;
  font-size:clamp(18px, 1.55vw, 24px) !important;
  line-height:1.42 !important;
}

.peixe-intro .intro-line,
.peixe-intro-after-products .intro-line{
  display:block !important;
}

.peixe-intro-after-products{
  margin-top:28px !important;
}

.description{
  max-width:29ch !important;
  font-size:18px !important;
  line-height:1.55 !important;
}

.product-card{
  min-height:430px !important;
}

.logo-wrap{
  min-height:120px !important;
}

@media(min-width:761px){
  .peixe-intro .intro-line,
  .peixe-intro-after-products .intro-line{
    white-space:nowrap !important;
  }
}

@media(max-width:760px){
  .peixe-intro,
  .peixe-intro-after-products{
    width:min(100%, 38ch) !important;
    max-width:38ch !important;
    font-size:18px !important;
    line-height:1.46 !important;
  }

  .description{
    max-width:30ch !important;
    font-size:18px !important;
    line-height:1.58 !important;
  }

  .product-card{
    min-height:470px !important;
  }

  .logo-wrap{
    min-height:132px !important;
  }
}

@media(max-width:390px){
  .peixe-intro,
  .peixe-intro-after-products{
    width:min(100%, 34ch) !important;
    max-width:34ch !important;
    font-size:17px !important;
  }

  .description{
    font-size:17px !important;
  }
}


/* V25 — simpler hierarchy:
   intro moved to top, smaller than main manifesto, no separate text block below cards */

.manifesto-sub{
  margin:18px auto 0 !important;
  width:min(100%, 660px) !important;
  text-align:center !important;
}

.peixe-intro-top{
  margin:0 auto !important;
  width:min(100%, 34ch) !important;
  max-width:34ch !important;
  color:#6f778c !important;
  font-size:clamp(14px, 1.08vw, 17px) !important;
  line-height:1.58 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

.peixe-intro-after-products{
  display:none !important;
}

.hero{
  padding-bottom:44px !important;
}

.products{
  margin-top:4px !important;
}

.closing{
  padding-top:14px !important;
}

.description{
  color:#1c2540 !important;
}

@media(max-width:760px){
  .manifesto-sub{
    margin-top:18px !important;
    width:min(100%, 92vw) !important;
  }

  .peixe-intro-top{
    width:min(100%, 31ch) !important;
    max-width:31ch !important;
    font-size:15px !important;
    line-height:1.56 !important;
  }

  .hero{
    padding-bottom:38px !important;
  }

  .closing{
    padding-top:8px !important;
  }
}

@media(max-width:390px){
  .peixe-intro-top{
    width:min(100%, 30ch) !important;
    max-width:30ch !important;
    font-size:14px !important;
  }
}


/* V26 — A/C refined: one family, three clear text roles */

/* ROLE 1 — primary statements */
.manifesto,
.closing>div{
  color:#0D1B3D !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}

/* Main intro: same family/character, a touch quieter, deliberately wider */
.manifesto-sub{
  width:min(100%, 760px) !important;
  margin:20px auto 0 !important;
}

.peixe-intro-top{
  width:min(100%, 48ch) !important;
  max-width:48ch !important;
  margin:0 auto !important;
  color:#59657a !important;
  font-size:clamp(16px,1.28vw,19px) !important;
  line-height:1.52 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  text-align:center !important;
}

.peixe-intro-top span{
  display:block !important;
  white-space:nowrap !important;
}

/* ROLE 2 — section headings */
.product-card h2,
.closing .peixe{
  font-family:inherit !important;
  font-weight:600 !important;
  letter-spacing:.10em !important;
}

/* ROLE 3 — supporting copy */
.description,
.peixe-intro-top{
  font-family:inherit !important;
}

.description{
  color:#1f2940 !important;
  font-size:16px !important;
  line-height:1.56 !important;
  max-width:31ch !important;
  font-weight:400 !important;
}

/* Keep taglines as accent, but reduce their 'separate style' feeling */
.tagline{
  font-family:inherit !important;
  font-weight:400 !important;
  font-size:16px !important;
  line-height:1.45 !important;
  letter-spacing:0 !important;
}

/* Cards: enough breathing room without looking oversized */
.product-card{
  min-height:410px !important;
}

.logo-wrap{
  min-height:112px !important;
}

/* Closing stays calm, not a new typographic system */
.closing>div{
  font-size:clamp(20px,1.8vw,26px) !important;
  line-height:1.4 !important;
}

.closing .peixe{
  font-size:.52em !important;
  margin-top:11px !important;
}

@media(max-width:760px){
  .manifesto-sub{
    width:min(100%, 94vw) !important;
    margin-top:20px !important;
  }

  .peixe-intro-top{
    width:min(100%, 36ch) !important;
    max-width:36ch !important;
    font-size:18px !important;
    line-height:1.5 !important;
  }

  .peixe-intro-top span{
    white-space:normal !important;
  }

  .description{
    font-size:17px !important;
    line-height:1.58 !important;
    max-width:30ch !important;
  }

  .tagline{
    font-size:18px !important;
  }

  .product-card{
    min-height:465px !important;
  }

  .closing>div{
    font-size:26px !important;
  }
}

@media(max-width:390px){
  .peixe-intro-top{
    max-width:34ch !important;
    font-size:17px !important;
  }

  .description{
    font-size:16px !important;
  }

  .closing>div{
    font-size:24px !important;
  }
}


/* V27 — option B:
   top Peixe sentence uses the same supporting-text language as the card descriptions,
   with broader measure and equal vertical spacing above/below. */

.manifesto{
  margin-bottom:0 !important;
}

.manifesto-sub{
  width:min(100%, 820px) !important;
  margin:34px auto !important;   /* equal space above and below */
  text-align:center !important;
}

.peixe-intro-top{
  width:min(100%, 58ch) !important;   /* broader */
  max-width:58ch !important;
  margin:0 auto !important;
  color:#1f2940 !important;           /* same family/feel as supporting block text */
  font-size:16px !important;
  line-height:1.56 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  text-align:center !important;
}

.peixe-intro-top span{
  display:block !important;
  white-space:nowrap !important;
}

.products{
  margin-top:0 !important;
}

.description{
  color:#1f2940 !important;
  font-size:16px !important;
  line-height:1.56 !important;
  font-weight:400 !important;
}

/* keep rhythm calm and even */
.hero{
  padding-bottom:34px !important;
}

@media(max-width:760px){
  .manifesto-sub{
    width:min(100%, 94vw) !important;
    margin:28px auto !important;   /* equal mobile spacing */
  }

  .peixe-intro-top{
    width:min(100%, 40ch) !important;
    max-width:40ch !important;
    font-size:17px !important;     /* same as supporting copy on mobile */
    line-height:1.58 !important;
  }

  .peixe-intro-top span{
    white-space:normal !important;
  }

  .description{
    font-size:17px !important;
    line-height:1.58 !important;
  }

  .hero{
    padding-bottom:30px !important;
  }
}

@media(max-width:390px){
  .manifesto-sub{
    margin:24px auto !important;
  }

  .peixe-intro-top{
    width:min(100%, 35ch) !important;
    max-width:35ch !important;
    font-size:16px !important;
  }

  .description{
    font-size:16px !important;
  }
}


/* V28 — top sentence slightly wider + updated card taglines */

.manifesto-sub{
  width:min(100%, 900px) !important;
}

.peixe-intro-top{
  width:min(100%, 64ch) !important;
  max-width:64ch !important;
}

@media(max-width:760px){
  .peixe-intro-top{
    width:min(100%, 42ch) !important;
    max-width:42ch !important;
  }
}

@media(max-width:390px){
  .peixe-intro-top{
    width:min(100%, 36ch) !important;
    max-width:36ch !important;
  }
}


/* V29 — equal spacing around intro, broader two-line split, logo-like PEIXE spacing */

.manifesto{
  margin-bottom:0 !important;
}

.manifesto-sub{
  width:min(100%, 920px) !important;
  margin:32px auto 32px !important; /* equal space above and below */
  text-align:center !important;
}

.peixe-intro-top{
  width:min(100%, 72ch) !important;
  max-width:72ch !important;
  margin:0 auto !important;
  text-align:center !important;
}

.peixe-intro-top span{
  display:block !important;
  white-space:nowrap !important;
}

.hero{
  padding-bottom:0 !important; /* prevent extra space below intro */
}

.products{
  margin-top:0 !important;
}

.closing .peixe{
  letter-spacing:.34em !important; /* more like the logo */
  font-weight:500 !important;
  margin-top:14px !important;
}

@media(max-width:760px){
  .manifesto-sub{
    width:min(100%, 94vw) !important;
    margin:28px auto 28px !important;
  }

  .peixe-intro-top{
    width:min(100%, 46ch) !important;
    max-width:46ch !important;
  }

  .peixe-intro-top span{
    white-space:normal !important;
  }

  .hero{
    padding-bottom:0 !important;
  }

  .closing .peixe{
    letter-spacing:.30em !important;
    margin-top:13px !important;
  }
}

@media(max-width:390px){
  .manifesto-sub{
    margin:24px auto 24px !important;
  }

  .peixe-intro-top{
    width:min(100%, 38ch) !important;
    max-width:38ch !important;
  }

  .closing .peixe{
    letter-spacing:.27em !important;
  }
}


/* V30 — force-fix for actual width, equal spacing, and spaced PEIXE */

.manifesto{
  margin:0 !important;
}

.manifesto-sub{
  width:100% !important;
  max-width:none !important;
  margin:26px auto 26px !important;   /* equal spacing above and below */
  padding:0 !important;
  text-align:center !important;
}

.peixe-intro-top{
  display:block !important;
  width:min(76vw, 760px) !important;  /* actually wider */
  max-width:min(76vw, 760px) !important;
  margin:0 auto !important;
  padding:0 !important;
  color:#1f2940 !important;
  font-size:16px !important;
  line-height:1.56 !important;
  font-weight:400 !important;
  text-align:center !important;
}

.peixe-intro-top span{
  display:block !important;
  white-space:nowrap !important;
}

/* force the visual spacing relationship */
.hero{
  padding-bottom:0 !important;
}

.products{
  margin-top:26px !important; /* same as above intro */
}

/* guaranteed bottom PEIXE spacing, matching the logo feel */
.closing .peixe{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.34em !important;
  letter-spacing:0 !important;
  font-weight:500 !important;
  margin-top:14px !important;
}

.closing .peixe span{
  display:inline-block !important;
}

/* slightly tighter default closing block so PEIXE sits well */
.closing > div{
  text-align:center !important;
}

@media(max-width:760px){
  .manifesto-sub{
    margin:24px auto 24px !important;
  }

  .peixe-intro-top{
    width:min(88vw, 640px) !important;
    max-width:min(88vw, 640px) !important;
    font-size:17px !important;
    line-height:1.58 !important;
  }

  .peixe-intro-top span{
    white-space:normal !important;
  }

  .products{
    margin-top:24px !important;
  }

  .closing .peixe{
    gap:.28em !important;
  }
}

@media(max-width:390px){
  .manifesto-sub{
    margin:22px auto 22px !important;
  }

  .peixe-intro-top{
    width:90vw !important;
    max-width:90vw !important;
    font-size:16px !important;
  }

  .products{
    margin-top:22px !important;
  }

  .closing .peixe{
    gap:.24em !important;
  }
}


/* V31 — micro-finetune: lighter intro, slightly larger closing PEIXE, and Umami-friendly final polish */

.manifesto-sub{
  margin:30px auto 34px !important;
}

.peixe-intro-top{
  width:min(78vw, 800px) !important;
  max-width:min(78vw, 800px) !important;
  color:rgba(31, 42, 68, .72) !important;
  font-size:17px !important;
  line-height:1.6 !important;
  font-weight:400 !important;
}

.products{
  margin-top:34px !important;
}

.closing .peixe{
  gap:.38em !important;
  font-size:.36em !important;
  font-weight:550 !important;
  margin-top:18px !important;
}

@media(max-width:760px){
  .manifesto-sub{
    margin:26px auto 30px !important;
  }

  .peixe-intro-top{
    width:min(90vw, 700px) !important;
    max-width:min(90vw, 700px) !important;
    color:rgba(31, 42, 68, .72) !important;
    font-size:16px !important;
    line-height:1.62 !important;
  }

  .products{
    margin-top:30px !important;
  }

  .closing .peixe{
    gap:.32em !important;
    font-size:.38em !important;
    margin-top:16px !important;
  }
}

@media(max-width:390px){
  .manifesto-sub{
    margin:22px auto 26px !important;
  }

  .peixe-intro-top{
    width:min(92vw, 92vw) !important;
    max-width:92vw !important;
    font-size:15px !important;
  }

  .products{
    margin-top:26px !important;
  }

  .closing .peixe{
    gap:.28em !important;
    font-size:.4em !important;
  }
}


/* V32 — restore closing quote layout and top manifesto as 3 equal columns */

.manifesto{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:22px !important;
  width:min(760px, 100%) !important;
  max-width:760px !important;
  margin:0 auto !important;
  align-items:start !important;
}

.manifesto p{
  margin:0 !important;
  text-align:center !important;
}

.manifesto-sub{
  margin:30px auto 34px !important;
}

.peixe-intro-top{
  width:min(74vw, 780px) !important;
  max-width:min(74vw, 780px) !important;
}

.closing{
  display:flex !important;
  justify-content:center !important;
  padding:8px 0 46px !important;
}

.closing > div{
  width:min(560px, 100%) !important;
  text-align:right !important;
  font-size:clamp(28px,3vw,42px) !important;
  line-height:1.45 !important;
  letter-spacing:-.025em !important;
}

.closing p{
  margin:0 !important;
}

.closing .peixe{
  display:inline-flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:.36em !important;
  color:var(--gold) !important;
  font-size:.34em !important;
  font-weight:550 !important;
  margin-top:18px !important;
  letter-spacing:0 !important;
}

.closing .peixe span{
  display:inline-block !important;
}

@media(max-width:760px){
  .manifesto{
    grid-template-columns:1fr !important;
    gap:8px !important;
    width:min(100%, 520px) !important;
    max-width:520px !important;
  }

  .manifesto p{
    text-align:center !important;
  }

  .manifesto-sub{
    margin:26px auto 30px !important;
  }

  .peixe-intro-top{
    width:min(88vw, 650px) !important;
    max-width:min(88vw, 650px) !important;
  }

  .closing{
    padding:8px 0 38px !important;
  }

  .closing > div{
    width:min(420px, 100%) !important;
    text-align:right !important;
    font-size:clamp(24px, 7vw, 38px) !important;
    line-height:1.42 !important;
  }

  .closing .peixe{
    gap:.32em !important;
    font-size:.36em !important;
    margin-top:14px !important;
  }
}

@media(max-width:390px){
  .manifesto{
    gap:6px !important;
  }

  .manifesto-sub{
    margin:22px auto 26px !important;
  }

  .peixe-intro-top{
    width:90vw !important;
    max-width:90vw !important;
  }

  .closing > div{
    width:min(340px, 100%) !important;
  }

  .closing .peixe{
    gap:.29em !important;
    font-size:.35em !important;
  }
}


/* V33 — final polish */

/* Intro copy: keep light supporting role */
.peixe-intro-top{
  color:rgba(31,42,68,.72) !important;
}

/* Closing block: more optical centering */
.closing > div{
  width:min(600px,100%) !important;
  margin:0 auto !important;
  text-align:center !important;
}

.closing .peixe{
  display:inline-flex !important;
  justify-content:center !important;
  gap:.38em !important;
  font-size:.40em !important;   /* slightly larger */
  margin-top:9px !important;    /* closer to quote */
  font-weight:550 !important;
}

/* LinkedIn slightly larger */
.social a{
  width:38px !important;
  height:38px !important;
  border-radius:7px !important;
}

.social svg{
  width:22px !important;
  height:22px !important;
}

@media(max-width:760px){
  .closing > div{
    width:min(460px,100%) !important;
    text-align:center !important;
  }

  .closing .peixe{
    font-size:.42em !important;
    margin-top:8px !important;
    gap:.34em !important;
  }

  .social a{
    width:40px !important;
    height:40px !important;
  }

  .social svg{
    width:23px !important;
    height:23px !important;
  }
}

@media(max-width:390px){
  .closing .peixe{
    font-size:.44em !important;
    gap:.31em !important;
  }
}


/* V34 — final quote alignment + final intro copy */

/* Intro stays subtle and centered */
.peixe-intro-top{
  width:min(100%, 58ch) !important;
  max-width:58ch !important;
  margin:0 auto !important;
  text-align:center !important;
  color:rgba(31,42,68,.72) !important;
  font-weight:400 !important;
}

/* Closing block: centered as a whole, right-aligned inside */
.closing{
  display:flex !important;
  justify-content:center !important;
  padding:12px 0 38px !important;
}

.closing > div{
  width:max-content !important;
  max-width:100% !important;
  text-align:right !important;
  font-size:18px !important;
  line-height:1.42 !important;
  letter-spacing:0 !important;
}

.closing p{
  margin:0 !important;
  white-space:nowrap !important;
}

.closing .peixe{
  display:block !important;
  margin-top:7px !important;
  color:var(--gold) !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:500 !important;
  letter-spacing:.38em !important;
  text-align:right !important;
}

.closing .peixe span{
  display:inline !important;
}

@media(max-width:760px){
  .peixe-intro-top{
    width:min(100%, 36ch) !important;
    max-width:36ch !important;
  }

  .closing{
    padding:10px 0 32px !important;
  }

  .closing > div{
    font-size:18px !important;
    line-height:1.42 !important;
  }

  .closing .peixe{
    font-size:10px !important;
    margin-top:7px !important;
    letter-spacing:.34em !important;
  }
}

@media(max-width:390px){
  .closing > div{
    font-size:16px !important;
  }

  .closing .peixe{
    font-size:9px !important;
    letter-spacing:.32em !important;
  }
}


/* V35 — restore calmer hierarchy, bigger closing quote, equal intro spacing, left-aligned card copy */

/* Equal, slightly roomier spacing around the supporting intro sentence */
.hero{
  padding-bottom:0 !important;
}
.manifesto-sub{
  width:100% !important;
  max-width:none !important;
  margin:38px auto 38px !important;
  text-align:center !important;
}
.peixe-intro-top{
  width:min(100%, 58ch) !important;
  max-width:58ch !important;
  margin:0 auto !important;
  color:rgba(31,42,68,.72) !important;
  font-size:16px !important;
  line-height:1.56 !important;
  text-align:center !important;
}
.products{
  margin-top:38px !important;
}

/* Keep headings calm, but restore left-aligned supporting copy inside the cards */
.product-card{
  align-items:center !important;
  text-align:center !important;
}
.product-card .tagline,
.product-card .description{
  width:min(100%, 31ch) !important;
  max-width:31ch !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:left !important;
}
.product-card .tagline{
  font-size:16px !important;
  line-height:1.45 !important;
  margin-bottom:18px !important;
}
.product-card .description{
  font-size:16px !important;
  line-height:1.58 !important;
}

/* Restore the larger closing quote while keeping the block centered and the text aligned neatly */
.closing{
  display:flex !important;
  justify-content:center !important;
  padding:12px 0 38px !important;
}
.closing > div{
  width:min(560px, 100%) !important;
  max-width:100% !important;
  margin:0 auto !important;
  text-align:right !important;
  font-size:clamp(31px, 3.05vw, 43px) !important;
  line-height:1.42 !important;
  letter-spacing:-.02em !important;
}
.closing p{
  margin:0 !important;
  white-space:nowrap !important;
}
.closing .peixe{
  display:block !important;
  margin-top:10px !important;
  color:var(--gold) !important;
  font-size:.34em !important;
  line-height:1 !important;
  font-weight:550 !important;
  letter-spacing:.38em !important;
  text-align:right !important;
}
.closing .peixe span{
  display:inline !important;
}

@media(max-width:760px){
  .manifesto-sub{
    margin:32px auto 32px !important;
  }
  .peixe-intro-top{
    width:min(100%, 36ch) !important;
    max-width:36ch !important;
    font-size:16px !important;
    line-height:1.58 !important;
  }
  .products{
    margin-top:32px !important;
  }
  .product-card .tagline,
  .product-card .description{
    width:min(100%, 30ch) !important;
    max-width:30ch !important;
  }
  .product-card .tagline{
    font-size:17px !important;
  }
  .product-card .description{
    font-size:17px !important;
    line-height:1.6 !important;
  }
  .closing{
    padding:10px 0 34px !important;
  }
  .closing > div{
    width:min(420px, 100%) !important;
    font-size:clamp(25px, 7vw, 38px) !important;
    line-height:1.42 !important;
  }
  .closing .peixe{
    font-size:.36em !important;
    margin-top:9px !important;
    letter-spacing:.34em !important;
  }
}

@media(max-width:390px){
  .manifesto-sub{
    margin:28px auto 28px !important;
  }
  .peixe-intro-top{
    width:min(100%, 34ch) !important;
    max-width:34ch !important;
    font-size:15px !important;
  }
  .product-card .tagline,
  .product-card .description{
    width:min(100%, 28ch) !important;
    max-width:28ch !important;
  }
  .product-card .description{
    font-size:16px !important;
  }
  .closing > div{
    width:min(340px, 100%) !important;
    font-size:clamp(22px, 8.2vw, 34px) !important;
  }
  .closing .peixe{
    font-size:.38em !important;
    letter-spacing:.31em !important;
  }
}


/* V36 final refinement */
.hero{
  padding-bottom:44px !important;
}
.manifesto{
  width:min(760px, 100%) !important;
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:24px !important;
  text-align:center !important;
  align-items:start !important;
}
.manifesto p{
  margin:0 !important;
}
.manifesto-sub{
  width:min(760px,100%) !important;
  margin:44px auto 0 !important;
  display:flex !important;
  justify-content:center !important;
}
.peixe-intro-top{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  font-size:17px !important;
  line-height:1.55 !important;
  font-weight:400 !important;
  color:#6E7892 !important;
  text-align:center !important;
}
.products{
  margin-top:0 !important;
  margin-bottom:64px !important;
}
.product-card,
.product-card .description,
.product-card .tagline{
  text-align:center !important;
}
.closing{
  padding:2px 0 38px !important;
}
.closing > div{
  display:inline-block !important;
  width:max-content !important;
  max-width:100% !important;
  margin:0 auto !important;
  text-align:right !important;
  font-size:clamp(21px, 2.35vw, 31px) !important;
  line-height:1.42 !important;
  letter-spacing:-0.02em !important;
}
.closing .peixe{
  margin-top:10px !important;
  font-size:0.56em !important;
  letter-spacing:0.34em !important;
  font-weight:500 !important;
}
@media (max-width: 760px){
  .hero{
    padding-bottom:34px !important;
  }
  .manifesto{
    width:min(100%, 520px) !important;
    gap:14px !important;
    font-size:19px !important;
  }
  .manifesto-sub{
    width:min(100%, 520px) !important;
    margin-top:34px !important;
  }
  .peixe-intro-top{
    font-size:16px !important;
  }
  .products{
    margin-bottom:52px !important;
  }
  .closing > div{
    font-size:clamp(19px, 5.2vw, 26px) !important;
  }
  .closing .peixe{
    margin-top:8px !important;
    letter-spacing:0.28em !important;
  }
}
@media (max-width: 520px){
  .manifesto{
    grid-template-columns:1fr !important;
    gap:8px !important;
    text-align:center !important;
    font-size:18px !important;
  }
  .manifesto-sub{
    margin-top:24px !important;
  }
  .peixe-intro-top{
    font-size:15px !important;
    line-height:1.5 !important;
  }
  .closing > div{
    width:auto !important;
    font-size:clamp(18px, 6vw, 24px) !important;
  }
}


/* V37 — final micro-finetune */
.manifesto-sub{
  margin-top:40px !important;
  margin-bottom:0 !important;
}

.peixe-intro-top{
  width:min(100%, 68ch) !important;
  max-width:68ch !important;
  margin:0 auto !important;
}

.products{
  margin-top:28px !important;
}

.closing > div{
  position:relative !important;
  left:6px !important;
}

@media(max-width:760px){
  .manifesto-sub{
    margin-top:30px !important;
    margin-bottom:0 !important;
  }

  .peixe-intro-top{
    width:min(100%, 38ch) !important;
    max-width:38ch !important;
  }

  .products{
    margin-top:24px !important;
  }

  .closing > div{
    left:3px !important;
  }
}

@media(max-width:520px){
  .peixe-intro-top{
    width:min(100%, 34ch) !important;
    max-width:34ch !important;
  }
}


/* V38 — remove the perceived double gap between intro and cards */
.hero{
  padding-bottom:18px !important;
}

.products{
  margin-top:14px !important;
}

@media(max-width:760px){
  .hero{
    padding-bottom:14px !important;
  }

  .products{
    margin-top:12px !important;
  }
}

@media(max-width:520px){
  .hero{
    padding-bottom:12px !important;
  }

  .products{
    margin-top:10px !important;
  }
}


/* V39 — spacing halfway between V37 and V38 + wider LinkedIn only */
.hero{
  padding-bottom:31px !important;
}
.products{
  margin-top:21px !important;
}

/* Wider, not taller */
.social a{
  width:46px !important;
  height:38px !important;
  flex-basis:46px !important;
}

@media(max-width:760px){
  .hero{
    padding-bottom:24px !important;
  }
  .products{
    margin-top:18px !important;
  }
  .social a{
    width:48px !important;
    height:40px !important;
    flex-basis:48px !important;
  }
}

@media(max-width:520px){
  .hero{
    padding-bottom:23px !important;
  }
  .products{
    margin-top:17px !important;
  }
}


/* V41 — desktop dot separators, clean stacked mobile */
@media(min-width:521px){
  .manifesto{
    display:flex !important;
    grid-template-columns:none !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
    width:min(760px,100%) !important;
    max-width:760px !important;
    white-space:nowrap !important;
  }

  .manifesto p{
    display:flex !important;
    align-items:center !important;
    margin:0 !important;
    text-align:center !important;
    white-space:nowrap !important;
  }

  .manifesto p:not(:last-child)::after{
    content:"·";
    display:inline-block;
    margin:0 .62em;
    color:inherit;
    font-weight:400;
  }
}

@media(max-width:520px){
  .manifesto{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    width:min(100%,520px) !important;
    max-width:520px !important;
    white-space:normal !important;
  }

  .manifesto p{
    display:block !important;
    margin:0 !important;
    text-align:center !important;
    white-space:normal !important;
  }

  .manifesto p::after{
    content:none !important;
  }
}


/* V49 — visible labels without changing the original logo position */
.peixe-logo-visible-labels{
  position:relative;
  display:inline-block !important;
  line-height:0;
  margin:0;
  text-decoration:none;
}

.peixe-logo-visible-labels .peixe-logo{
  /* Preserve the exact pre-easter-egg logo sizing and spacing */
  margin-left:auto !important;
  margin-right:auto !important;
}

.peixe-label{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:max-content;
  white-space:nowrap;
  color:rgba(31,42,68,.66);
  font-size:11px;
  line-height:1.2;
  font-weight:400;
  letter-spacing:.01em;
  text-align:center;
  pointer-events:none;
}

.peixe-label-top{
  top:-20px;
}

.peixe-label-bottom{
  bottom:29px;
  transform:translate(-50%, 100%);
}

@media(max-width:760px){
  .peixe-label{
    font-size:10.5px;
  }
  .peixe-label-top{
    top:-19px;
  }
  .peixe-label-bottom{
    bottom:28px;
  }
}


/* V50 — restore real lion/PEIXE hover while keeping labels visible and logo clickable */
.peixe-label{
  opacity:.62;
  transition:opacity .16s ease, color .16s ease, transform .16s ease, font-weight .16s ease;
}

.peixe-logo-visible-labels.is-lion-hover .peixe-label-top,
.peixe-logo-visible-labels.is-word-hover .peixe-label-bottom{
  opacity:1;
  color:#0D1B3D;
  font-weight:500;
}

.peixe-logo-visible-labels.is-lion-hover .peixe-label-top{
  transform:translate(-50%,-1px);
}

.peixe-logo-visible-labels.is-word-hover .peixe-label-bottom{
  transform:translate(-50%,calc(100% + 1px));
}

.peixe-logo-visible-labels{
  cursor:pointer;
}


/* V51 — darker default label state, hover remains stronger */
.peixe-label{
  color: rgba(31,42,68,.78);
  opacity: 1;
}

.peixe-logo-visible-labels.is-lion-hover .peixe-label-top,
.peixe-logo-visible-labels.is-word-hover .peixe-label-bottom{
  color:#0D1B3D;
  font-weight:500;
}


/* V52 — hide logo easter-egg labels on mobile where hover is unavailable */
@media (max-width: 768px){
  .peixe-label{ display:none !important; }
  .peixe-logo-visible-labels{ padding-top:0; padding-bottom:0; }
}


/* V53 — labels hidden at rest, visible only on actual desktop hover */
@media (hover:hover) and (pointer:fine){
  .peixe-label{
    opacity:0 !important;
    color:#0D1B3D !important;
    transition:opacity .16s ease, transform .16s ease !important;
  }

  .peixe-logo-visible-labels.is-lion-hover .peixe-label-top,
  .peixe-logo-visible-labels.is-word-hover .peixe-label-bottom{
    opacity:1 !important;
    color:#0D1B3D !important;
    font-weight:500 !important;
  }
}

/* Touch/mobile: no easter-egg labels at all */
@media (hover:none), (pointer:coarse), (max-width:768px){
  .peixe-label{
    display:none !important;
    opacity:0 !important;
  }
}


/* V54 — final subtle hover typography */
@media (hover:hover) and (pointer:fine){
  .peixe-label{
    font-style:italic !important;
    font-weight:400 !important;
    color:rgba(31,42,68,.55) !important;
  }

  .peixe-logo-visible-labels.is-lion-hover .peixe-label-top,
  .peixe-logo-visible-labels.is-word-hover .peixe-label-bottom{
    opacity:1 !important;
    color:rgba(31,42,68,.55) !important;
    font-style:italic !important;
    font-weight:400 !important;
  }
}


/* V56 — slightly smaller Qver logo for better balance */
.qver-logo-wrap img{
  width:min(280px, 76%) !important;
  max-width:76% !important;
  height:auto !important;
}

@media (max-width: 1024px){
  .qver-logo-wrap img{
    width:min(235px, 78%) !important;
    max-width:78% !important;
  }
}

@media (max-width: 768px){
  .qver-logo-wrap img{
    width:min(220px, 74%) !important;
    max-width:74% !important;
  }
}

@media (max-width: 420px){
  .qver-logo-wrap img{
    width:min(200px, 72%) !important;
    max-width:72% !important;
  }
}


/* V57 — corrected Qver logo balance.
   Previous V56 accidentally enlarged it relative to an older 205px override. */
.qver-logo-wrap img{
  width:180px !important;
  max-width:68% !important;
  height:auto !important;
}

@media (max-width:768px){
  .qver-logo-wrap img{
    width:205px !important;
    max-width:70% !important;
  }
}

@media (max-width:420px){
  .qver-logo-wrap img{
    width:190px !important;
    max-width:68% !important;
  }
}


/* V58 — BackerMap logo larger for better balance */
.backermap-logo-wrap img{
  width:300px !important;
  max-width:88% !important;
  max-height:132px !important;
  height:auto !important;
  object-fit:contain !important;
}

@media (max-width:768px){
  .backermap-logo-wrap img{
    width:320px !important;
    max-width:90% !important;
    max-height:140px !important;
  }
}

@media (max-width:420px){
  .backermap-logo-wrap img{
    width:295px !important;
    max-width:88% !important;
    max-height:132px !important;
  }
}

/* V59 — QVER color update to #1677A8 */
:root{
  --petrol:#1677A8;
}
.product-card.qver{
  border-color:rgba(22,119,168,.58) !important;
}
.qver .rule{
  background:#1677A8 !important;
}
.social a:hover{
  background:#1677A8 !important;
}


/* V61 — even subtler emphasis on the middle manifesto item */
.manifesto .manifesto-accent{
  font-weight:450 !important;
  color:#142751 !important;
}
