/* The home cover is the visual reference for every interior page. */
:root {
  --cover-ink: #241711;
  --cover-light: #fff9f2;
  --cover-accent: #f4a54d;
  --cover-photo: url('/assets/human-workflow.webp');
}

:is(.v2-page, .law-page, .garage-page, .product-page, .support-page) .site-header {
  position: absolute !important;
  inset: 0 0 auto;
  z-index: 50;
  background: transparent !important;
  border: 0;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
:is(.v2-page, .law-page, .garage-page, .product-page, .support-page) .nav-wrap {
  width: 90%;
  max-width: none;
  min-height: 84px;
  height: auto;
  border: 0;
}
:is(.v2-page, .law-page, .garage-page, .support-page) .brand .brand-full,
.product-page .brand img {
  width: clamp(210px, 17vw, 250px);
  height: auto;
  filter: none;
}
.product-page .brand { width: clamp(210px, 17vw, 250px); }
:is(.v2-page, .law-page, .garage-page, .support-page) .main-nav,
.product-page .desktop-nav {
  display: flex;
  align-items: center;
  gap: clamp(14px, 1.55vw, 28px);
  margin-left: auto;
  padding: 14px 21px;
  border: 1px solid rgba(255, 249, 242, .27);
  border-radius: 999px;
  background: rgba(36, 23, 17, .82) !important;
  box-shadow: 0 8px 28px rgba(18, 10, 6, .17);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
:is(.v2-page, .law-page, .garage-page, .support-page) .main-nav > a,
.product-page .desktop-nav > a {
  color: var(--cover-light);
  font-size: 15px !important;
  font-weight: 700;
  white-space: nowrap;
}
:is(.v2-page, .law-page, .garage-page, .support-page) .main-nav > a:hover,
.product-page .desktop-nav > a:hover { color: var(--cover-accent) !important; }

/* Service pages retain their own copy and full-bleed photos. */
:is(.v2-integrated-cover .v2-hero, .law-page .law-hero) {
  min-height: clamp(720px, 54vw, 860px);
  background: var(--cover-ink);
}
:is(.v2-integrated-cover .v2-hero-grid, .law-page .law-hero-grid) {
  min-height: clamp(720px, 54vw, 860px);
}
:is(.v2-integrated-cover .v2-hero-copy, .law-page .law-hero-copy) {
  padding-top: 150px;
  padding-bottom: 120px;
}
:is(.v2-integrated-cover .v2-hero-art img, .law-page .law-hero-visual img) {
  filter: none;
  object-position: center 48%;
}
.v2-integrated-cover .v2-hero-art:after,
.law-page .law-hero-visual:before {
  background:
    linear-gradient(90deg, rgba(19, 13, 10, .72), rgba(28, 17, 11, .33) 42%, transparent 75%),
    linear-gradient(0deg, rgba(28, 17, 11, .55), transparent 30%);
}
:is(.v2-integrated-cover .v2-hero h1, .law-page .law-hero h1) {
  max-width: 740px;
  color: var(--cover-light);
  line-height: .95;
  letter-spacing: -.055em;
}
:is(.v2-integrated-cover .v2-hero h1 em, .law-page .law-hero h1 em) {
  color: var(--cover-accent);
}
:is(.v2-integrated-cover .v2-hero-copy > p, .law-page .law-hero-copy > p) {
  max-width: 560px;
  color: var(--cover-light) !important;
  font-weight: 600;
}
.v2-integrated-cover .v2-kicker,
.law-page .law-eyebrow { color: var(--cover-light); }
.v2-integrated-cover .v2-action,
.law-page .law-hero .law-button-primary {
  min-height: 56px;
  padding-inline: 23px;
  border-radius: 2px;
  background: var(--cover-accent) !important;
  color: var(--cover-ink) !important;
}
.v2-integrated-cover .v2-action:hover,
.law-page .law-hero .law-button-primary:hover { background: #ffbd70 !important; }
.v2-integrated-cover .v2-hero-foot,
.law-page .law-hero-visual figcaption { border-color: rgba(255, 249, 242, .52); }

/* Earth-IA Lab uses the same cover proportions, contrast and navigation. */
.garage-page .garage-hero {
  min-height: clamp(720px, 54vw, 860px);
  background: var(--cover-ink);
}
.garage-page .garage-hero-art img { object-position: center 48%; filter: none; }
.garage-page .garage-hero-art:after {
  background:
    linear-gradient(90deg, rgba(19, 13, 10, .72), rgba(28, 17, 11, .33) 42%, transparent 75%),
    linear-gradient(0deg, rgba(28, 17, 11, .55), transparent 30%);
}
.garage-page .garage-hero-copy { max-width: 740px; padding: 150px 0 75px; }
.garage-page .garage-hero h1 { color: var(--cover-light); line-height: .95; letter-spacing: -.055em; }
.garage-page .garage-hero h1 em { color: var(--cover-accent); }
.garage-page .garage-hero-statement { color: #ffc589 !important; text-shadow: 0 2px 16px rgba(19, 13, 10, .8); }
.garage-page .garage-hero-copy > p { color: var(--cover-light); font-weight: 600; }
.garage-page .garage-hero-foot { color: var(--cover-light); border-color: rgba(255, 249, 242, .52); }
.garage-page .garage-hero .section-index { color: var(--cover-light); }
.garage-page .garage-hero .button-dark { border-radius: 2px !important; background: var(--cover-accent) !important; color: var(--cover-ink) !important; }

/* Product previews remain visible on top of a warm photographic canvas. */
.product-page { --cover-photo: url('/assets/human-hero.webp'); }
.product-page[data-product="custo-ia"],
.product-page[data-product="mykonos-crm"],
.product-page[data-product="clinic"] { --cover-photo: url('/assets/human-workflow.webp'); }
.product-page .hero {
  isolation: isolate;
  min-height: clamp(720px, 54vw, 860px);
  padding: 0 0 24px;
  background: var(--cover-ink) !important;
  color: var(--cover-light) !important;
}
.product-page .hero:before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image:
    linear-gradient(90deg, rgba(19, 13, 10, .85), rgba(28, 17, 11, .48) 48%, rgba(28, 17, 11, .26)),
    linear-gradient(0deg, rgba(28, 17, 11, .65), transparent 33%),
    var(--cover-photo);
  background-size: cover;
  background-position: center;
}
.product-page .hero-grid { display: none; }
.product-page .hero-layout { min-height: clamp(670px, 51vw, 810px); padding-top: 120px; }
.product-page .hero h1 {
  color: var(--cover-light);
  text-transform: none;
  font-weight: 500;
  letter-spacing: -.055em;
  line-height: .95;
}
.product-page .hero h1 em { color: var(--cover-accent); }
.product-page .hero .eyebrow,
.product-page .hero .product-back,
.product-page .hero .product-back span { color: var(--cover-light); }
.product-page .hero .hero-lead,
.product-page .hero .hero-note { color: var(--cover-light) !important; }
.product-page .hero .button-primary {
  border-radius: 2px !important;
  background: var(--cover-accent) !important;
  color: var(--cover-ink) !important;
}
.product-page .hero .button-outline { border-radius: 2px !important; border-color: var(--cover-light); color: var(--cover-light); }
.product-page .hero-foot { color: var(--cover-light); border-color: rgba(255, 249, 242, .52); }
.product-page .hero-rule { background: rgba(255, 249, 242, .52); }
.product-page .screen-frame { box-shadow: 0 28px 80px rgba(17, 9, 5, .38); }
.product-page .brand-divider { background: rgba(255, 249, 242, .38); }
.product-page .product-brand { color: var(--cover-light); }
.product-page .product-brand span { color: var(--cover-accent); }
.product-page .nav-cta { background: var(--cover-accent) !important; color: var(--cover-ink) !important; }

/* Legal pages use a quieter crop so long titles remain easy to read. */
.support-page .legal-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: clamp(720px, 54vw, 860px);
  padding: 150px 0 70px;
  overflow: hidden;
  border: 0;
  background: var(--cover-ink);
  color: var(--cover-light);
}
.support-page .legal-hero:before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image:
    linear-gradient(90deg, rgba(19, 13, 10, .87), rgba(28, 17, 11, .49) 52%, rgba(28, 17, 11, .22)),
    var(--cover-photo);
  background-size: cover;
  background-position: center 44%;
}
.support-page .legal-hero:after {
  content: 'EARTH-IA · INFORMACIÓN LEGAL';
  position: absolute;
  left: 5%;
  right: 5%;
  bottom: 24px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 249, 242, .52);
  color: var(--cover-light);
  font: 700 14px/1.5 var(--type-body);
  letter-spacing: .1em;
  text-align: right;
}
.support-page .legal-hero .eyebrow,
.support-page .legal-hero .updated { color: var(--cover-light); }
.support-page .legal-hero h1 { color: var(--cover-light); max-width: 1000px; line-height: .95; letter-spacing: -.055em; }

@media (max-width: 1250px) {
  .product-page .desktop-nav { display: none; }
  .product-page .menu-toggle { display: flex; }
  .product-page .mobile-nav:not([hidden]) {
    display: flex;
    flex-direction: column;
    padding: 12px 5% 22px;
  }
}
@media (max-width: 900px) {
  :is(.v2-page, .law-page, .garage-page, .support-page) .main-nav { display: none; }
  :is(.v2-page, .law-page, .garage-page, .support-page) .main-nav.is-open {
    display: flex;
    border-radius: 18px;
    padding: 18px 24px;
  }
  :is(.v2-page, .law-page, .garage-page, .support-page) .main-nav.is-open > a { white-space: normal; }
  .product-page .mobile-nav:not([hidden]) {
    background: rgba(36, 23, 17, .97) !important;
    border-color: rgba(255, 249, 242, .27);
  }
}
@media (max-width: 700px) {
  :is(.v2-page, .law-page, .garage-page, .product-page, .support-page) .nav-wrap { width: calc(100% - 40px); min-height: 78px; }
  :is(.v2-page, .law-page, .garage-page, .support-page) .brand .brand-full,
  .product-page .brand img { width: 190px; }
  .product-page .brand { width: 190px; }
  :is(.v2-integrated-cover .v2-hero, .law-page .law-hero, .garage-page .garage-hero, .product-page .hero) { min-height: 100svh; }
  :is(.v2-integrated-cover .v2-hero-grid, .law-page .law-hero-grid) { min-height: 100svh; }
  :is(.v2-integrated-cover .v2-hero-copy, .law-page .law-hero-copy) { padding: 125px 0 125px; }
  .v2-integrated-cover .v2-hero-art:after,
  .law-page .law-hero-visual:before,
  .garage-page .garage-hero-art:after {
    background:
      linear-gradient(90deg, rgba(19, 13, 10, .9), rgba(28, 17, 11, .7)),
      linear-gradient(0deg, rgba(28, 17, 11, .7), transparent 40%);
  }
  .garage-page .garage-hero-copy { padding: 125px 0 55px; }
  .product-page .hero-layout { display: flex; flex-direction: column; align-items: stretch; gap: 20px; min-height: 0; padding-top: 125px; }
  .product-page .hero-copy { padding-bottom: 0; }
  .product-page .hero-visual { margin: 0; padding: 12px 0 25px; }
  .product-page .hero:before {
    background-image:
      linear-gradient(90deg, rgba(19, 13, 10, .91), rgba(28, 17, 11, .51)),
      linear-gradient(0deg, rgba(28, 17, 11, .76), transparent 45%),
      var(--cover-photo);
    background-position: 61% center;
  }
  .product-page .hero-foot { padding-bottom: 25px; }
  .support-page .legal-hero { min-height: 100svh; padding: 130px 0 55px; }
}
