.jorge-v2 {
  --bg: #f4efe3;
  --soft: #e8deca;
  --paper: #fffaf0;
  --ink: #362d1d;
  --muted: #645742;
  --line: #cabba1;
  --dark: #32291b;
  --dark-text: #fff5de;
  --accent: #f8c66f;
  --accent-text: #2c2417;
  --tonal: #71502a;
  --hero-text: #fff9ed;
  --hero-accent: #ffcf7f;
}

.jorge-v2 .hero {
  min-height: clamp(575px, calc(100svh - 109px), 855px);
  align-items: center;
}
.jorge-v2 .hero-content { padding-block: 62px 74px; }
.jorge-v2 .hero-copy { width: min(69%, 760px); }
.jorge-v2 .hero h1 { font-size: clamp(5.9rem, 11.6vw, 11rem); line-height: .8; }
.jorge-v2 .hero .kicker { letter-spacing: .16em; }
.jorge-v2 .hero-intro { max-width: 40ch; }
.jorge-v2 .hero-media::after {
  background: linear-gradient(90deg, #211c14f1 0%, #2a2319bd 32%, #2d251b49 67%, #2d251b0a 96%),
    linear-gradient(0deg, #2e271b60, transparent 33%);
}
.jorge-v2 .media-layer img,
.jorge-v2 .hero-video { object-position: 67% center; }
.hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity .4s ease;
}
.show-video .hero-video { opacity: 1; }
.video-toggle {
  min-height: 44px;
  margin-top: 12px;
  padding: 4px 10px 4px 0;
  border: 0;
  background: transparent;
  color: #fff4dc;
  font-size: .78rem;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.video-toggle::before {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border: 1px solid #ffdf9e;
  border-radius: 50%;
  content: "";
}
.show-video .video-toggle::before { background: #ffdf9e; }

.jorge-v2 .explorer { display: block; }
.jorge-v2 .switches {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  margin-bottom: 10px;
}
.jorge-v2 .switches button {
  min-height: 48px;
  grid-template-columns: minmax(0, 1fr) 18px;
  border-radius: 5px;
}
.jorge-v2 .offer-panel {
  min-height: 315px;
  grid-template-columns: minmax(0, .91fr) minmax(0, 1.09fr);
  gap: 0;
  padding: 0;
  background: var(--paper);
}
.jorge-v2 .offer-body { padding: clamp(18px, 4.4vw, 56px); }
.jorge-v2 .offer-panel:not([hidden]) { animation: reveal-offer .32s ease both; }
@keyframes reveal-offer {
  from { opacity: .72; transform: translateY(7px); }
  to { opacity: 1; transform: none; }
}
.offer-visual {
  position: relative;
  grid-column: 2;
  grid-row: 1;
  align-self: stretch;
  overflow: hidden;
  background: var(--soft);
}
.offer-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.offer-visual figcaption {
  position: absolute;
  right: 10px;
  bottom: 10px;
  padding: 5px 7px;
  border: 1px solid #fff7e680;
  border-radius: 4px;
  background: #281f15dc;
  color: #fff7e6;
  font-size: .66rem;
  font-weight: 800;
}
.offer-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px 15px;
  margin-top: 18px;
}
.offer-actions .text-link { margin: 0; }

.project-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .82fr);
  align-items: center;
  gap: clamp(18px, 5vw, 70px);
}
.jorge-v2 .project-section h2 { margin-bottom: 14px; }
.project-layout > div > p:not(.kicker) { max-width: 43ch; color: var(--muted); }
.project-layout > div > .text-link { margin-top: 5px; }
.example-card {
  padding: clamp(17px, 3.3vw, 38px);
  border: 1px solid #917450;
  border-top: 5px solid var(--accent);
  border-radius: 4px;
  background: var(--dark);
  color: var(--dark-text);
}
.example-card .kicker { color: var(--accent); }
.example-card h3 {
  margin-block: 8px 16px;
  font: 400 clamp(1.7rem, 3.25vw, 2.7rem)/1.06 var(--display);
}
.example-card dl { margin-bottom: 16px; }
.example-card dl > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 4px 10px;
  padding-block: 7px;
  border-bottom: 1px solid #fff4df3e;
  font-size: .86rem;
}
.example-card dd { color: #ffe1a6; font-weight: 800; }
.field-access { grid-column: 1 / -1; }
.jorge-v2 #sample { padding: 15px 16px; line-height: 1.75; }
.activation-price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0 10px;
  margin-bottom: 5px;
  color: #ffcf7f;
}
.activation-price strong { font: 400 clamp(2.9rem, 6vw, 4.8rem)/.9 var(--display); }
.activation-price span { font-size: .89rem; font-weight: 800; }

@media (max-width: 830px) {
  .jorge-v2 .hero { min-height: clamp(545px, 76svh, 750px); }
  .jorge-v2 .hero h1 { font-size: clamp(5.2rem, 13vw, 8.4rem); }
}
@media (max-width: 640px) {
  .jorge-v2 .hero {
    min-height: clamp(510px, 74svh, 700px);
    align-items: end;
  }
  .jorge-v2 .hero-content { padding-block: 112px 51px; }
  .jorge-v2 .hero-copy { width: 100%; }
  .jorge-v2 .hero h1 { font-size: clamp(4.5rem, 17.5vw, 6.6rem); }
  .jorge-v2 .hero-media::after {
    background: linear-gradient(0deg, #211b13fa, #292015ba 53%, #2b211913 92%);
  }
  .jorge-v2 .media-layer img,
  .jorge-v2 .hero-video { object-position: 64% center; }
  .jorge-v2 .switches button { grid-template-columns: minmax(0, 1fr); }
  .jorge-v2 .offer-panel { grid-template-columns: minmax(0, 1fr); }
  .offer-visual {
    grid-column: 1;
    grid-row: 2;
    min-height: clamp(175px, 57vw, 270px);
  }
  .project-layout { grid-template-columns: minmax(0, 1fr); }
  .jorge-v2 .contact-grid { grid-template-columns: minmax(0, 1fr); }
  .video-toggle { margin-top: 6px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-video, .show-video .hero-video { opacity: 0; }
}
