/* SMC Pro — shared tokens and base */
:root {
  color-scheme:dark;
  --bg:#070d13;
  --surface:#0b131c;
  --gold:#d9b767;
  --gold-light:#f2dda0;
  --text:#f4f1e9;
  --muted:#aeb5bd;
  --line:rgba(213,177,99,.24);
  --serif:Georgia,'Times New Roman',serif;
  --sans:'Segoe UI',Arial,sans-serif;
  --width:1180px
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth;
  scroll-padding-top:100px
}

body {
  margin:0;
  background:var(--bg);
  color:var(--text);
  font:16px/1.7 var(--sans);
  -webkit-font-smoothing:antialiased
}

img {
  display:block;
  max-width:100%;
  height:auto
}

a {
  color:inherit;
  text-decoration:none
}

button {
  font:inherit;
  cursor:pointer
}

button,a {
  -webkit-tap-highlight-color:transparent
}

button:focus-visible,a:focus-visible,summary:focus-visible {
  outline:2px solid var(--gold-light);
  outline-offset:6px
}

::selection {
  background:var(--gold);
  color:var(--bg)
}

h1,h2,h3,p {
  margin:0
}

h1,h2,h3 {
  font-weight:400
}

h1,h2 {
  font-family:var(--serif);
  line-height:1.13;
  letter-spacing:-.035em
}

h2 {
  font-size:clamp(2rem,3.5vw,3.25rem)
}

h2 em {
  color:var(--gold-light);
  font-style:normal
}

h3 {
  line-height:1.35
}

p {
  color:var(--muted)
}

p+p {
  margin-top:18px
}

strong {
  font-weight:600;
  color:var(--text)
}

.container {
  width:min(var(--width),calc(100% - 96px));
  margin-inline:auto
}

.narrow {
  max-width:930px
}

.center {
  text-align:center
}

.section {
  padding:110px 0
}

.eyebrow {
  color:var(--gold);
  font-size:.75rem;
  letter-spacing:.19em;
  text-transform:uppercase;
  font-weight:600;
  margin-bottom:22px
}

.intro {
  max-width:650px;
  margin:24px auto 32px
}

.micro {
  font-size:.75rem;
  color:#aab0b7;
  line-height:1.7
}

.micro span {
  margin:0 7px;
  color:var(--gold)
}

.split {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:90px;
  align-items:start
}

.split h2 {
  margin-bottom:26px
}

.grid {
  display:grid;
  gap:24px
}

.four {
  grid-template-columns:repeat(4,1fr)
}

.three {
  grid-template-columns:repeat(3,1fr)
}

.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:36px;
  min-height:56px;
  padding:15px 28px;
  border:1px solid #f0d190;
  border-radius:3px;
  background:linear-gradient(110deg,#f0d69a,#c89b45);
  box-shadow:inset 0 0 0 3px #f4d99824,0 6px 30px #d4ad5910;
  color:#17150e;
  font-size:.8rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.055em;
  transition:box-shadow .2s,transform .2s
}

.button:hover {
  transform:translateY(-2px);
  box-shadow:0 7px 30px #d4ad5933
}

.button span {
  font-size:1.35rem;
  font-weight:400
}

.skip-link {
  position:fixed;
  top:10px;
  left:12px;
  transform:translateY(-160%);
  background:var(--gold);
  color:var(--bg);
  padding:12px;
  z-index:100
}

.skip-link:focus {
  transform:none
}

/* Header and cinematic first fold */
.header {
  position:absolute;
  inset:0 0 auto;
  z-index:5;
  border-bottom:1px solid #ffffff10
}

.header-inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:106px;
  gap:30px
}

.brand {
  width:148px;
  height:70px;
  object-fit:contain
}



.header-cta {
  font-size:.75rem;
  letter-spacing:.04em;
  border-bottom:1px solid var(--gold);
  padding:9px 0;
  color:var(--gold-light)
}

.header-cta span {
  margin-left:15px
}


.hero {
  position:relative;
  min-height:850px;
  padding-top:164px;
  background:linear-gradient(90deg,rgba(5,11,17,.8) 0%,rgba(5,11,17,.58) 39%,rgba(5,11,17,.02) 78%),linear-gradient(0deg,var(--bg),transparent 35%),url('../assets/optimized/mountains.webp') center/cover no-repeat
}

.hero-content {
  position:relative
}

.hero .eyebrow {
  font-size:.68rem;
  margin-bottom:20px
}

.product-name {
  font-family:var(--serif);
  font-size:clamp(3.4rem,6.6vw,6rem);
  letter-spacing:.055em;
  line-height:1;
  color:var(--gold-light);
  margin-bottom:25px
}

.product-name span {
  color:var(--gold)
}

.hero h1 {
  font-size:clamp(2.6rem,4.15vw,3.85rem);
  max-width:710px
}

.hero-promise {
  font-family:var(--serif);
  font-size:clamp(1.35rem,2.1vw,1.9rem);
  line-height:1.35;
  color:var(--gold-light);
  margin-top:18px
}

.hero-description {
  max-width:505px;
  font-size:.94rem;
  margin:23px 0 28px;
  color:#bec4cb
}

.hero .micro {
  margin-top:16px
}

.hero-bottom {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  padding-top:38px;
  padding-bottom:26px;
  margin-top:48px;
  border-top:1px solid var(--line);
  font-size:.78rem;
  color:var(--muted)
}

.hero-bottom a {
  color:var(--gold-light)
}

.hero-bottom a span {
  margin-left:20px
}

/* Presentation and ecosystem */
.vsl-section {
  padding-top:80px
}

.vsl {
  aspect-ratio:16/9;
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  border:1px solid #a9894d6b;
  outline:1px solid #d9b76710;
  outline-offset:7px;
  padding:24px 28px;
  margin:42px 0 35px;
  background:linear-gradient(90deg,#050b12ce,#050b125c),url('../assets/optimized/journey.webp') center/cover;
  box-shadow:0 24px 70px #0007
}

.vsl-top {
  display:flex;
  justify-content:space-between;
  font-size:.63rem;
  letter-spacing:.15em;
  color:#c5bcaa
}

.vsl-content {
  padding:22px 0
}

.play-symbol {
  width:65px;
  height:65px;
  border:1px solid var(--gold);
  border-radius:50%;
  display:grid;
  place-items:center;
  margin:0 auto 18px;
  font-size:2rem;
  color:var(--gold-light);
  background:#d9b7670a
}

.vsl .eyebrow {
  font-size:.65rem;
  margin-bottom:8px
}

.vsl h3 {
  font:2.4rem/1.15 var(--serif);
  color:var(--gold-light)
}

.soon {
  display:inline-block;
  margin-top:18px;
  border:1px solid #d9b76750;
  padding:2px 12px;
  font-size:.7rem;
  color:#d7c7a5;
  background:#070d1399
}

.vsl-caption {
  font-size:.75rem
}

.ecosystem {
  padding:40px 0;
  border-block:1px solid var(--line);
  background:#ffffff02
}

.ecosystem-heading {
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center
}

.ecosystem-heading .eyebrow {
  margin:0
}

.ecosystem-heading>p:last-child {
  font-size:.84rem
}

.logo-row {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  align-items:center;
  margin:35px 0
}

.logo-row>div {
  min-height:115px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:15px
}

.logo-row>div+div {
  border-left:1px solid var(--line)
}

.logo-row img {
  width:170px;
  height:64px;
  object-fit:contain
}

.logo-row>div:nth-child(2) img {
  width:230px
}

.logo-row img.b3 {
  width:60px;
  filter:grayscale(1) brightness(3)
}

.logo-row span {
  font-size:.7rem;
  color:var(--muted)
}

/* Narrative, mentor and cards */
.question-list {
  border-top:1px solid var(--line)
}

.question-list>div {
  display:flex;
  align-items:center;
  gap:24px;
  padding:23px 0;
  border-bottom:1px solid var(--line)
}

.question-list span {
  font:1.3rem var(--serif);
  color:var(--gold)
}

.question-list p {
  color:#d7d9dc;
  font-size:.94rem
}

.purpose {
  padding-top:110px;
  text-align:center
}

.purpose .intro {
  max-width:710px
}

.pillars {
  margin-top:54px
}

.pillars article {
  padding:5px 20px
}

.pillars article+article {
  border-left:1px solid var(--line)
}

.pillars img {
  margin:0 auto 20px
}

.pillars h3 {
  font:1.2rem var(--serif);
  color:var(--gold-light);
  margin-bottom:12px
}

.pillars p {
  font-size:.85rem
}

.mentor-section {
  background:radial-gradient(ellipse at 15% 65%,#30302855,transparent 50%),#0b121a;
  border-block:1px solid var(--line)
}

.mentor-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center
}

.portrait {
  align-self:stretch;
  position:relative;
  display:flex;
  align-items:end;
  min-height:700px;
  overflow:hidden
}

.portrait:after {
  content:'';
  position:absolute;
  inset:65% 0 0;
  background:linear-gradient(transparent,#0b121a)
}

.portrait>img {
  width:100%;
  height:100%;
  position:absolute;
  bottom:0;
  object-fit:contain;
  object-position:bottom
}

.portrait-caption {
  position:absolute;
  left:25px;
  bottom:40px;
  z-index:1;
  border-left:1px solid var(--gold);
  padding-left:20px
}

.portrait-caption span {
  display:block;
  font-size:.64rem;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:var(--gold)
}

.portrait-caption strong {
  font:1.8rem var(--serif)
}

.mentor-copy {
  padding:70px 0
}

.mentor-copy h2 {
  font-size:clamp(2.7rem,4.2vw,4rem);
  margin-bottom:20px
}

.label {
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.13em;
  color:var(--gold);
  line-height:1.9;
  margin-bottom:25px
}

.mentor-copy>p:not(.eyebrow):not(.label) {
  font-size:.94rem
}

.check-list {
  list-style:none;
  padding:0;
  margin:25px 0
}

.check-list li {
  position:relative;
  padding:7px 0 7px 28px;
  font-size:.88rem;
  color:#cbd0d5
}

.check-list li:before {
  content:'✓';
  position:absolute;
  left:0;
  color:var(--gold)
}

.text-link {
  display:inline-block;
  color:var(--gold-light);
  font-size:.82rem;
  border-bottom:1px solid var(--line);
  padding-bottom:6px
}

.text-link span {
  margin-left:20px
}

.section-heading {
  margin-bottom:46px
}

.cards {
  gap:18px
}

.card {
  border:1px solid #c59f5350;
  outline:1px solid #d9b7670c;
  outline-offset:-6px;
  border-radius:5px;
  background:linear-gradient(140deg,#101a24,#070c12);
  padding:33px 23px;
  transition:border-color .2s,transform .2s
}

.card:hover {
  border-color:var(--gold);
  transform:translateY(-4px)
}

.card img {
  margin-bottom:28px
}

.card h3 {
  font:1.4rem/1.25 var(--serif);
  color:var(--gold-light);
  min-height:3.5rem;
  margin-bottom:18px
}

.card p {
  font-size:.85rem
}

.footnote {
  font-size:.83rem;
  text-align:center;
  max-width:780px;
  margin:32px auto 0
}

.curriculum {
  border-block:1px solid var(--line);
  background:linear-gradient(130deg,#0e1722,#070d13)
}

.curriculum .split {
  grid-template-columns:.9fr 1.1fr
}

.curriculum .split>div>p:not(.eyebrow) {
  max-width:370px
}

.editorial-note {
  border-left:1px solid var(--gold);
  padding-left:24px;
  margin-top:46px;
  text-transform:uppercase;
  font-size:.7rem;
  letter-spacing:.12em;
  color:var(--gold-light);
  line-height:1.8
}

.editorial-note span {
  color:#867044
}

.curriculum-list article {
  display:flex;
  gap:23px;
  padding:22px 0;
  border-bottom:1px solid var(--line)
}

.curriculum-list article:first-child {
  padding-top:0
}

.curriculum-list article>span {
  display:grid;
  place-items:center;
  flex:none;
  align-self:start;
  width:42px;
  height:45px;
  border:1px solid #d9b76766;
  border-radius:3px;
  background:linear-gradient(130deg,#70552566,#d9b76708);
  font:1.2rem var(--serif);
  color:var(--gold-light)
}

.curriculum-list h3 {
  font-size:1rem;
  color:var(--text);
  margin-bottom:7px
}

.curriculum-list p {
  font-size:.86rem
}

.automation .split {
  align-items:center;
  gap:65px
}

.automation-image {
  position:relative;
  align-self:stretch;
  min-height:400px;
  border:1px solid var(--line);
  overflow:hidden
}

.automation-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  position:absolute
}

.image-label {
  position:absolute;
  bottom:25px;
  left:25px;
  right:25px;
  font-size:.65rem;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--gold-light)
}

.gold-note {
  border-left:1px solid var(--gold);
  padding-left:20px;
  color:var(--gold-light);
  font-size:.9rem
}

.format {
  padding-top:30px
}

.format-grid {
  gap:0;
  border-top:1px solid var(--line)
}

.format-grid article {
  padding:30px 28px 30px 0;
  border-bottom:1px solid var(--line)
}

.format-grid article:not(:nth-child(3n+1)) {
  padding-left:30px;
  border-left:1px solid var(--line)
}

.format-grid img {
  margin-bottom:18px
}

.format-grid h3 {
  font-size:.94rem;
  margin-bottom:10px
}

.format-grid p {
  font-size:.85rem
}

/* Timeline, offer and FAQ */
.journey {
  position:relative;
  background:linear-gradient(90deg,#070d13 0%,#070d13ed 35%,#070d1333 85%),linear-gradient(0deg,#070d13,transparent 25%),url('../assets/optimized/journey.webp') center/cover
}

.journey>.container {
  position:relative
}

.timeline {
  list-style:none;
  padding:0 0 0 30px;
  margin:50px 0 0 8px;
  max-width:500px;
  border-left:1px solid #be984b88
}

.timeline li {
  position:relative;
  padding-bottom:30px
}

.timeline li:last-child {
  padding-bottom:0
}

.timeline li:before {
  content:'';
  position:absolute;
  left:-36px;
  top:7px;
  width:11px;
  height:11px;
  background:var(--gold);
  border:3px solid var(--bg);
  border-radius:50%;
  box-shadow:0 0 0 1px var(--gold)
}

.timeline span {
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:var(--gold)
}

.timeline h3 {
  font:1.2rem var(--serif);
  margin:7px 0
}

.timeline p {
  font-size:.85rem
}

.journey-mantra {
  position:absolute;
  right:0;
  bottom:30px;
  border-left:1px solid var(--gold);
  padding-left:20px;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.75rem;
  color:var(--gold-light);
  line-height:2
}

.outcomes {
  border-bottom:1px solid var(--line)
}

.outcome-list {
  list-style:none;
  padding:0;
  margin:0
}

.outcome-list li {
  padding:17px 0 17px 34px;
  position:relative;
  border-bottom:1px solid var(--line);
  color:#dedfdc
}

.outcome-list li:before {
  content:'✓';
  position:absolute;
  left:0;
  color:var(--gold)
}

.offer-section {
  background:radial-gradient(ellipse at 80% 50%,#77582315,transparent 65%)
}

.offer {
  display:grid;
  grid-template-columns:1fr .85fr;
  gap:90px;
  align-items:center
}

.offer-details>p:not(.eyebrow) {
  margin-top:24px;
  max-width:470px
}

.price-card {
  text-align:center;
  padding:43px 34px;
  border:1px solid #b08a47;
  outline:1px solid #d9b76725;
  outline-offset:-7px;
  border-radius:5px;
  background:linear-gradient(145deg,#111b24,#080e15);
  box-shadow:0 25px 70px #0004
}

.price-card .eyebrow {
  font-size:.65rem
}

.price {
  font:clamp(3.5rem,5.6vw,5.2rem)/1.15 var(--serif);
  color:var(--gold-light);
  letter-spacing:-.05em;
  white-space:nowrap
}

.price>span {
  font-size:.48em;
  letter-spacing:-.04em
}

.price-rule {
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  margin:25px 0
}

.installments {
  font-size:.9rem;
  color:#d3c6a8
}

.installments strong {
  font-size:1.4rem;
  color:var(--gold-light);
  font-weight:400
}

.price-card .micro {
  margin-top:15px
}

.price-card .button {
  width:100%;
  margin-top:28px;
  padding-inline:14px;
  gap:16px
}

.price-disclaimer {
  font-size:.75rem;
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid var(--line)
}

.faq {
  padding-top:40px
}

.faq .split {
  grid-template-columns:.75fr 1.25fr
}

.faq-list {
  border-top:1px solid var(--line)
}

details {
  border-bottom:1px solid var(--line)
}

summary {
  cursor:pointer;
  position:relative;
  list-style:none;
  padding:22px 35px 22px 0;
  font-size:.94rem;
  line-height:1.5
}

summary::-webkit-details-marker {
  display:none
}

summary:after {
  content:'+';
  position:absolute;
  right:4px;
  top:20px;
  color:var(--gold);
  font-size:1.4rem;
  font-weight:300
}

details[open] summary:after {
  content:'−'
}

details[open] summary {
  color:var(--gold-light)
}

details p {
  padding:0 25px 23px 0;
  font-size:.88rem
}

.closing {
  background:linear-gradient(#070d13cc,#070d13d9),url('../assets/optimized/mountains.webp') center 45%/cover;
  border-top:1px solid var(--line);
  padding:105px 0
}

.closing .intro {
  max-width:620px
}

.closing .micro {
  margin-top:18px
}

/* Footer and shared feedback */
.footer {
  padding:50px 0 25px;
  background:#050a0f
}

.footer-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
  padding-bottom:35px;
  border-bottom:1px solid var(--line)
}

.footer-top>p {
  font-size:.85rem
}

.footer-top small {
  font-size:.7rem
}

.footer-top p span {
  color:var(--gold);
  margin:0 7px
}

.legal-links {
  display:flex;
  flex-direction:column;
  align-items:start;
  gap:7px
}

.legal-links a,.legal-links button {
  font-size:.75rem;
  color:var(--muted);
  border:0;
  background:none;
  padding:0;
  line-height:1.7
}

.legal-links a:hover,.legal-links button:hover {
  color:var(--gold-light)
}

.risk {
  padding:26px 0;
  scroll-margin-top:20px
}

.risk h2 {
  font:.75rem var(--sans);
  color:#bdc1c6;
  margin-bottom:10px;
  letter-spacing:0
}

.risk p {
  font-size:.75rem;
  color:#868f99
}

.risk p+p {
  margin-top:9px
}

.copyright {
  font-size:.7rem;
  color:#727d89;
  border-top:1px solid #ffffff09;
  padding-top:18px
}

dialog {
  background:var(--surface);
  color:var(--text);
  border:1px solid var(--gold);
  border-radius:5px;
  padding:40px;
  width:min(480px,calc(100% - 40px));
  box-shadow:0 25px 100px #0008
}

dialog::backdrop {
  background:#02070dd9;
  backdrop-filter:blur(5px)
}

dialog h2 {
  font-size:2rem;
  margin-bottom:20px
}

dialog p:not(.eyebrow) {
  font-size:.94rem
}

dialog .button {
  margin-top:26px
}

.dialog-close {
  position:absolute;
  right:12px;
  top:8px;
  font-size:1.6rem;
  background:transparent;
  border:0;
  color:var(--muted);
  padding:5px 10px
}

.noscript-note {
  padding:15px;
  text-align:center;
  color:var(--gold-light)
}

@media(min-width:1600px) {
  .hero {
    background-position:center 43%;
    min-height:920px;
    padding-top:190px
  }

  .hero-bottom {
    margin-top:75px
  }

}

@media(max-width:1100px) {
  .container {
    width:calc(100% - 64px)
  }


  .header-cta { display: inline-flex; }

  .split,.mentor-grid,.offer {
    gap:45px
  }

  .four {
    grid-template-columns:repeat(2,1fr)
  }

  .pillars article {
    padding:24px
  }

  .pillars article:nth-child(3) {
    border-left:0
  }

  .hero {
    min-height:830px
  }

  .mentor-copy {
    padding:50px 0
  }

  .portrait {
    min-height:760px
  }

  .card h3 {
    min-height:auto
  }

  .automation .split {
    gap:35px
  }

  .price-card {
    padding:38px 25px
  }

  .ecosystem-heading {
    display:block
  }

  .ecosystem-heading .eyebrow {
    margin-bottom:8px
  }

}

@media(max-width:760px) {
  html {
    scroll-padding-top:25px
  }

  .container {
    width:calc(100% - 40px)
  }

  .section {
    padding:72px 0
  }

  .header-inner {
    min-height:86px;
    gap:15px;
    flex-wrap:nowrap;
    padding-block:10px
  }

  .brand {
    width:125px;
    height:58px
  }





  .hero {
    padding-top:178px;
    min-height:auto;
    background-position:62% center;
    background-image:linear-gradient(90deg,#050b13e0,#050b1370),linear-gradient(0deg,var(--bg),transparent 75%),url('../assets/optimized/mountains.webp')
  }

  .hero .eyebrow {
    font-size:.6rem;
    letter-spacing:.11em;
    max-width:280px
  }

  .product-name {
    font-size:4rem;
    margin-bottom:24px
  }

  .hero h1 {
    font-size:2.65rem;
    line-height:1.13
  }

  .hero-promise {
    font-size:1.5rem;
    max-width:360px
  }

  .hero-description {
    font-size:.9rem;
    max-width:430px
  }

  .hero .button {
    width:100%;
    max-width:400px;
    gap:20px
  }

  .hero .micro {
    font-size:.65rem
  }

  .hero-bottom {
    margin-top:50px;
    display:block;
    padding-top:24px;
    padding-bottom:30px;
    font-size:.75rem
  }

  .hero-bottom a {
    display:block;
    margin-top:12px
  }

  .hero-bottom strong {
    display:block
  }

  .eyebrow {
    font-size:.65rem;
    letter-spacing:.15em;
    margin-bottom:17px
  }

  h2 {
    font-size:2.15rem
  }

  .intro {
    font-size:.92rem
  }

  .vsl-section {
    padding-top:58px
  }

  .vsl {
    padding:15px;
    aspect-ratio:auto;
    min-height:310px;
    margin-top:30px
  }

  .vsl-top {
    font-size:.5rem;
    letter-spacing:.06em
  }

  .vsl h3 {
    font-size:2rem
  }

  .vsl-content {
    padding:20px 0 10px
  }

  .play-symbol {
    width:48px;
    height:48px;
    font-size:1.5rem;
    margin-bottom:15px
  }

  .vsl-caption {
    font-size:.63rem
  }

  .vsl-section>.container>.button {
    width:100%
  }

  .ecosystem {
    padding:30px 0
  }

  .logo-row {
    gap:15px;
    grid-template-columns:1fr 1.3fr .65fr;
    margin:25px 0
  }

  .logo-row>div {
    min-height:90px;
    gap:12px
  }

  .logo-row>div+div {
    border:0
  }

  .logo-row img {
    width:110px;
    height:47px
  }

  .logo-row>div:nth-child(2) img {
    width:140px
  }

  .logo-row img.b3 {
    width:39px
  }

  .logo-row span {
    font-size:.6rem;
    text-align:center;
    line-height:1.4
  }

  .ecosystem .micro {
    font-size:.65rem
  }

  .split,.mentor-grid,.offer,.curriculum .split,.faq .split {
    grid-template-columns:1fr;
    gap:35px
  }

  .purpose {
    padding-top:72px
  }

  .pillars {
    gap:0;
    margin-top:25px
  }

  .pillars article {
    padding:22px 12px
  }

  .pillars h3 {
    font-size:1.13rem
  }

  .pillars p {
    font-size:.8rem
  }

  .mentor-grid {
    gap:0
  }

  .portrait {
    min-height:450px;
    max-width:400px;
    width:100%;
    margin:auto;
    order:2
  }

  .mentor-copy {
    padding:55px 0 15px;
    order:1
  }

  .mentor-copy h2 {
    font-size:3rem
  }

  .portrait-caption {
    bottom:24px;
    left:10px
  }

  .section-heading {
    margin-bottom:30px
  }

  .cards {
    gap:15px
  }

  .card {
    padding:24px 18px
  }

  .card h3 {
    font-size:1.25rem
  }

  .card p {
    font-size:.8rem
  }

  .card img {
    width:42px;
    height:42px;
    margin-bottom:20px
  }

  .editorial-note {
    display:none
  }

  .curriculum-list article {
    gap:17px
  }

  .automation .split {
    gap:30px
  }

  .automation-image {
    min-height:300px
  }

  .three {
    grid-template-columns:1fr 1fr
  }

  .format-grid article {
    padding:25px 15px 25px 0
  }

  .format-grid article:not(:nth-child(3n+1)) {
    padding-left:0;
    border-left:0
  }

  .format-grid article:nth-child(even) {
    border-left:1px solid var(--line);
    padding-left:20px;
    padding-right:0
  }

  .format-grid h3 {
    font-size:.86rem
  }

  .format-grid p {
    font-size:.8rem
  }

  .journey {
    background-position:66% center;
    background-image:linear-gradient(90deg,#070d13f5,#070d13aa),url('../assets/optimized/journey.webp')
  }

  .journey-mantra {
    display:none
  }

  .timeline {
    margin-top:35px
  }

  .outcome-list li {
    font-size:.9rem
  }

  .offer {
    gap:30px
  }

  .price-card {
    max-width:470px;
    width:100%;
    margin:auto;
    padding:38px 28px
  }

  .price {
    font-size:4.4rem
  }

  .price-card .eyebrow {
    font-size:.6rem
  }

  .faq {
    padding-top:25px
  }

  .closing h2 {
    font-size:2.15rem
  }

  .closing .button {
    width:100%;
    max-width:400px
  }

  .footer-top {
    align-items:start;
    flex-wrap:wrap;
    gap:25px
  }

  .footer-top>p {
    font-size:.75rem
  }

  .legal-links {
    flex-direction:row;
    flex-wrap:wrap;
    gap:10px 20px
  }

  .footer {
    padding-top:30px
  }

  .button {
    font-size:.73rem;
    padding-inline:20px
  }

  .desktop-break {
    display:none
  }

}

@media(max-width:380px) {
  .four {
    grid-template-columns:1fr
  }

  .pillars article+article {
    border-left:0;
    border-top:1px solid var(--line)
  }

  .hero h1 {
    font-size:2.25rem
  }

  .product-name {
    font-size:3.5rem
  }

  .three {
    grid-template-columns:1fr
  }

  .format-grid article:nth-child(even) {
    border-left:0;
    padding-left:0
  }

  .price {
    font-size:3.7rem
  }

  .button {
    gap:12px
  }

  .vsl-top span:last-child {
    display:none
  }

}

/* Cinematic finish — shared lighting, metallic actions and closing sequence. */
:root {
  --muted: #bbc2cb;
  --ui: 'Century Gothic', 'Avenir Next', 'Trebuchet MS', var(--sans);
}

h2 { line-height: 1.17; text-wrap: balance; }
.button {
  font-family: var(--ui);
  font-weight: 800;
  font-size: .8rem;
  letter-spacing: .095em;
  line-height: 1.45;
  min-height: 62px;
  padding: 18px 32px;
  border: 1px solid #f6dea1;
  border-radius: 4px;
  color: #211807;
  background: linear-gradient(115deg, #b9872d 0%, #eac578 19%, #f7dfa3 46%, #d3a34b 78%, #bc8b32 100%);
  background-size: 150% 100%;
  box-shadow: inset 0 1px 0 #fff3cb, inset 0 0 0 4px #fff1ba26, inset 0 -3px 7px #85540930, 0 9px 24px #0006, 0 0 28px #d7ae5a1a;
  text-shadow: 0 1px 0 #fff3cb55;
  transition: background-position .3s ease, box-shadow .3s ease, transform .3s ease;
}
.button:hover {
  background-position: 100% 50%;
  box-shadow: inset 0 1px 0 #fff7da, inset 0 0 0 4px #fff1ba35, 0 12px 30px #0006, 0 0 36px #d7ae5a38;
  transform: translateY(-2px);
}
.button:active { transform: translateY(0); }
.button span { font-weight: 600; }
.header-cta { font-family: var(--ui); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.curriculum {
  background: radial-gradient(ellipse at 5% 45%, #1c304266, transparent 65%), linear-gradient(130deg,#0e1722,#070d13);
}
.automation { background: radial-gradient(ellipse at 12% 50%,#34425238,transparent 65%); }
.automation-image { border: 0; overflow: visible; }
.automation-image img {
  mask-image: linear-gradient(to right,transparent,#000 12%,#000 85%,transparent), linear-gradient(to bottom,transparent,#000 15%,#000 80%,transparent);
  mask-composite: intersect;
}
.format { background: radial-gradient(ellipse at 85% 20%,#1f354530,transparent 60%); padding-bottom: 125px; }
.format-grid article { padding-top: 35px; padding-bottom: 35px; }
.format-grid p, .timeline p, .curriculum-list p { font-size: .94rem; line-height: 1.8; }

/* Existing photographs are layered behind content, fading at both edges. */
.outcomes, .offer-section, .faq, .closing, .footer {
  position: relative;
  isolation: isolate;
  border: 0;
}
.outcomes::before, .offer-section::before, .faq::before, .closing::before, .footer::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: cover;
  mask-image: linear-gradient(to bottom,transparent,#000 20%,#000 78%,transparent);
}
.outcomes { padding-block: 130px; background: #09111a; }
.outcomes::before {
  background-image: linear-gradient(90deg,#09111a66,#09111aeb 65%),url('../assets/optimized/mountains.webp');
  background-position: center, left 55%;
  opacity: .52;
}
.outcomes .split { align-items: center; }
.outcomes h2 { font-size: clamp(2.2rem,3.8vw,3.5rem); }
.outcomes .split>div>p:last-child { max-width: 445px; line-height: 1.9; }
.outcome-list { padding: 8px 28px; border-left: 1px solid #dbb66c38; background: linear-gradient(90deg,#12202c88,transparent); }
.outcome-list li { padding: 22px 0 22px 34px; border-color: #d9b76724; font-size: .98rem; }
.outcome-list li:last-child { border-bottom: 0; }
.outcome-list li:before { text-shadow: 0 0 12px #d9b76760; }

.offer-section {
  padding-block: 130px 145px;
  background: radial-gradient(ellipse at 76% 45%,#9f77372b,transparent 52%),linear-gradient(#09111a,#0a121c);
}
.offer-section::before {
  background-image: linear-gradient(90deg,#09111aaa,#09111a80),url('../assets/optimized/journey.webp');
  background-position: center, center 56%;
  opacity: .32;
}
.offer { grid-template-columns: 1fr 1fr; gap: 85px; }
.offer-details h2 { font-size: clamp(2.5rem,4.1vw,3.8rem); }
.offer-details>p:not(.eyebrow) { line-height: 1.85; }
.offer-details .check-list { margin-top: 30px; }
.offer-details .check-list li { padding-block: 10px; font-size: .94rem; }
.price-card {
  position: relative;
  padding: 48px 38px 35px;
  border: 1px solid #b99654b3;
  outline: 1px solid #e9c67a1c;
  outline-offset: -9px;
  border-radius: 8px;
  background: radial-gradient(ellipse at 50% 0%,#b9944621,transparent 56%),linear-gradient(145deg,#172331f5,#0b1420fa 55%,#101b27);
  box-shadow: 0 30px 70px #0006,0 0 65px #c8994610,inset 0 1px 0 #ffe7b040;
}
.price-card::before {
  content: '';
  position: absolute;
  height: 1px;
  top: -1px;
  left: 15%;
  right: 15%;
  background: linear-gradient(90deg,transparent,#f9dda0,transparent);
  box-shadow: 0 0 16px #eac17b70;
}
.price-card .eyebrow { font-size: .72rem; letter-spacing: .17em; margin-bottom: 28px; }
.price {
  font-size: clamp(4.2rem,6.4vw,6rem);
  line-height: 1.05;
  letter-spacing: -.045em;
  color: #f6dfa7;
  text-shadow: 0 2px 20px #edbd651c;
}
.price>span { font-size: .39em; vertical-align: .13em; }
.price-rule { margin: 27px auto 23px; width: 84%; opacity: .65; }
.installments { font-size: .94rem; line-height: 1.8; color: #c4c7cb; }
.installments strong { display: inline-block; margin-top: 4px; font-family: var(--ui); font-size: 1.55rem; color: #e6ca8e; }
.price-card .micro { font-size: .8rem; max-width: 330px; margin: 17px auto 0; line-height: 1.75; }
.price-card .button { min-height: 66px; margin-top: 31px; font-size: .83rem; }
.price-card .checkout-note { font-size: .76rem; color: #c9bb9d; }
.price-disclaimer { margin-top: 26px; padding-top: 22px; font-size: .79rem; line-height: 1.8; border-color: #d9b76720; }

.faq { padding-block: 85px 125px; background: #0a121c; }
.faq::before {
  background-image: linear-gradient(90deg,#0a121c70,#0a121cf5 68%),url('../assets/optimized/globe.webp');
  background-position: center, 25% center;
  opacity: .3;
}
.faq .split { gap: 72px; }
.faq .split>div:first-child { padding-top: 15px; }
.faq h2 { font-size: clamp(2.4rem,3.9vw,3.6rem); }
.faq .split>div:first-child::after {
  content: '';
  display: block;
  width: 110px;
  height: 1px;
  margin-top: 38px;
  background: linear-gradient(90deg,#dbb771,transparent);
  box-shadow: 0 0 18px #d9b76724;
}
.faq-list { border-top: 1px solid #d9b76738; }
.faq details { border-bottom-color: #d9b76725; transition: background .25s ease,box-shadow .25s ease; }
.faq details:hover { background: #b4c3d205; }
.faq details[open] { background: linear-gradient(105deg,#bd995713,#1b2a3b45); box-shadow: inset 2px 0 #ba965b80; }
.faq summary { padding: 26px 60px 26px 20px; font-size: 1rem; font-weight: 500; transition: color .2s ease; }
.faq summary:hover { color: var(--gold-light); }
.faq summary::after { display: grid; place-items: center; width: 27px; height: 27px; top: 25px; right: 16px; border: 1px solid #d9b76740; border-radius: 50%; font-size: 1.15rem; line-height: 1; }
.faq details[open] summary::after { background: #d9b76714; border-color: #d9b76780; }
.faq details p { padding: 0 48px 28px 20px; font-size: .95rem; line-height: 1.85; }
.faq details[open] p { animation: answer-in .25s ease-out; }
@keyframes answer-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }

.closing { padding: 135px 0 120px; background: linear-gradient(#0a121c,#09111a); }
.closing::before {
  background-image: linear-gradient(#09111a45,#09111a80),url('../assets/optimized/mountains.webp');
  background-position: center, center 46%;
  opacity: .7;
}
.closing h2 { font-size: clamp(2.3rem,4vw,3.7rem); text-shadow: 0 3px 25px #0009; }
.closing .intro { line-height: 1.85; color: #c4cbd2; margin-block: 28px 35px; }
.closing .micro { margin-top: 23px; font-size: .8rem; }
.footer { padding: 55px 0 32px; background: linear-gradient(#09111a,#080f17); }
.footer::before {
  background-image: linear-gradient(#09111ac9,#09111afa),url('../assets/optimized/mountains.webp');
  background-position: center bottom;
  opacity: .4;
}
.footer-top { position: relative; gap: 48px; padding: 35px 0 45px; border-bottom-color: #d9b76724; }
.footer-top::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: linear-gradient(90deg,transparent,#d9b76760,transparent); }
.footer .brand { width: 180px; height: 86px; }
.footer-top>p { font-size: .95rem; color: #d8d6d0; }
.footer-top small { display: inline-block; margin-top: 7px; font-size: .8rem; color: #aeb7c2; }
.legal-links { gap: 9px; }
.legal-links a,.legal-links button { font-size: .82rem; color: #c4c9ce; padding-block: 3px; }
.risk { padding: 35px 0 30px; max-width: 1040px; }
.risk h2 { font-size: .76rem; font-weight: 600; text-transform: uppercase; letter-spacing: .13em; color: #c6b185; margin-bottom: 17px; }
.risk p { font-size: .82rem; line-height: 1.9; color: #a4afbc; }
.risk p+p { margin-top: 13px; }
.copyright { border-color: #d9b76717; padding-top: 24px; color: #9ba6b3; font-size: .77rem; }

@media(max-width:1100px) {
  .offer { gap: 40px; }
  .price-card { padding: 40px 27px 30px; }
  .price { font-size: clamp(3.8rem,7vw,5rem); }
  .faq .split { gap: 40px; }
  .footer-top { gap: 28px; }
}
@media(max-width:760px) {
  .outcomes, .offer-section, .faq, .closing { padding-block: 80px; }
  .format { padding-bottom: 80px; }
  .offer, .faq .split { grid-template-columns: 1fr; gap: 38px; }
  .outcomes h2,.faq h2,.closing h2 { font-size: clamp(2.1rem,7.8vw,2.8rem); }
  .offer-details h2 { font-size: 2.7rem; }
  .outcome-list { padding: 0 18px; }
  .outcome-list li { font-size: .94rem; padding-block: 20px; }
  .offer-section::before { background-position: 65% center; opacity: .22; }
  .price-card { padding: 40px 25px 30px; }
  .price { font-size: clamp(3.7rem,16vw,5.3rem); }
  .price-card .eyebrow { font-size: .68rem; letter-spacing: .12em; }
  .button,.price-card .button { min-height: 62px; padding: 17px 20px; font-size: .74rem; letter-spacing: .06em; gap: 18px; }
  .price-card .button { min-height: 64px; }
  .faq .split>div:first-child { padding-top: 0; }
  .faq .split>div:first-child::after { margin-top: 25px; }
  .faq summary { padding: 23px 48px 23px 14px; font-size: .94rem; }
  .faq summary::after { right: 10px; top: 23px; width: 24px; height: 24px; }
  .faq details p { padding: 0 18px 25px 14px; font-size: .94rem; }
  .faq::before { opacity: .2; background-position: 30% center; }
  .closing { padding-bottom: 90px; }
  .closing::before { background-position: 63% center; opacity: .5; }
  .footer { padding-top: 0; }
  .footer-top { padding-block: 36px; gap: 24px; }
  .footer .brand { width: 160px; height: 76px; }
  .footer-top>p { font-size: .88rem; }
  .legal-links { width: 100%; gap: 10px 22px; }
  .legal-links a,.legal-links button { min-height: 36px; display: inline-flex; align-items: center; }
  .risk { padding-block: 30px; }
  .risk p { font-size: .81rem; line-height: 1.9; }
  .format-grid p,.curriculum-list p,.timeline p { font-size: .9rem; }
}

/* Additional original backgrounds: preserve all previously image-led sections.
   Original filenames and the repository's `backgrouds` spelling are intentional. */
.ecosystem, .curriculum {
  position: relative;
  isolation: isolate;
}

.ecosystem::before, .curriculum::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-size: cover;
  background-repeat: no-repeat;
  mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 78%, transparent);
}

/* Institutional architecture stays within the explicitly labelled ecosystem. */
.ecosystem::before {
  background-image:
    linear-gradient(90deg, #070d13e6 0%, #070d13cc 48%, #070d1366 100%),
    url('../assets/backgrouds/ChatGPT Image 9 de set. de 2026, 11_09_30.png');
  background-position: center, right 40%;
  opacity: .78;
}

/* Mountain progression supports the learning narrative; the syllabus remains
   over a stronger navy veil, with gold light visible between the columns. */
.curriculum::before {
  background-image:
    linear-gradient(90deg, #0b1421a6 0%, #0b142180 34%, #0b1421d9 58%, #0b1421ed 100%),
    url('../assets/backgrouds/ChatGPT Image 9 de set. de 2026, 10_34_01.png');
  background-position: center, 67% center;
  opacity: .7;
}

@media(max-width:760px) {
  .ecosystem::before {
    background-image:
      linear-gradient(90deg, #070d13e0, #070d13ad),
      url('../assets/backgrouds/ChatGPT Image 9 de set. de 2026, 11_09_30.png');
    background-position: center, 88% 45%;
    opacity: .68;
  }

  .curriculum::before {
    /* Restrict the scenic layer to the heading area instead of stretching a
       landscape over the tall mobile syllabus and losing the mountain subject. */
    bottom: auto;
    height: 480px;
    max-height: 100%;
    background-image:
      linear-gradient(90deg, #0b1421cc, #0b14218c),
      url('../assets/backgrouds/ChatGPT Image 9 de set. de 2026, 10_34_01.png');
    background-position: center, 69% center;
    opacity: .62;
    mask-image: linear-gradient(to bottom, transparent, #000 15%, #000 60%, transparent);
  }
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }

  *,*:before,*:after {
    transition:none!important;
    animation:none!important
  }

}


/* Keep the header action alongside the logo at every viewport width. */
/* Wide hero composition; the header shares only its horizontal alignment. */
@media (min-width: 1200px) {
  .hero > .container,
  .header > .header-inner {
    width: calc(100% - clamp(96px, 8vw, 160px));
  }

  .hero {
    background-size: cover;
    background-position: center, center, right top;
  }
}

.header-cta { display: inline-flex; align-items: center; margin-left: auto; }
.header-inner > a:first-child { flex-shrink: 0; }
@media(max-width:760px) {
  .header-cta { font-size: .65rem; letter-spacing: .035em; white-space: nowrap; }
  .header-cta span { margin-left: 8px; }
}
