*{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;
  }
}
