
/* ================================================================
   WP FIX — template fullscreen + fonte Relicta no hero
   ================================================================ */
@font-face{
  font-family:'Relicta';
  src:url('../fonts/Relicta-Light.otf') format('opentype');
  font-weight:300;
  font-style:normal;
  font-display:swap;
}

body.carine-home-template{
  margin:0;
  padding:0;
  overflow-x:hidden;
  background:var(--ink);
}

body.carine-home-template .site-header,
body.carine-home-template .page-header,
body.carine-home-template .entry-header,
body.carine-home-template .elementor-location-header,
body.carine-home-template .elementor-page-title,
body.carine-home-template h1.entry-title{
  display:none !important;
}

.hero__name,
.hero__name .split-word{
  font-family:'Relicta', serif !important;
  text-transform:none !important;
  font-style:normal !important;
  letter-spacing:.02em;
}

.hero__headline,
.hero__headline em,
.h-section em,
.h-display em,
.lead em,
.chapter__body em,
.footer__brand em,
.interlude__quote em,
.finale__title em,
.cta-banner__title em,
.nav__mobile a em{
  font-style:normal !important;
}

/* CARINE MÈTLER — style.css */
/* ===========================================================
   CARINE MÈTLER — Editorial Cinematic Landing
   Palette: deep wines, aged gold, champagne
   =========================================================== */

:root{
  --wine-darkest:#1a0608;
  --wine-deep:#370b0b;
  --wine:#490a13;
  --wine-mid:#630909;
  --wine-bright:#800015;
  --blood:#970607;
  --gold:#c9a55c;
  --gold-aged:#a8884a;
  --gold-dim:#7a623a;
  --champagne:#e8d5a8;
  --ivory:#f3e8d2;
  --ink:#0a0506;
  --shadow-deep: 0 30px 80px -20px rgba(0,0,0,.7);
  --vignette: radial-gradient(ellipse at center, transparent 40%, rgba(10,5,6,.85) 100%);

  --f-display: "Italiana", "Cormorant Garamond", serif;
  --f-deco:    "Cinzel", "Trajan Pro", serif;
  --f-serif:   "Cormorant Garamond", "EB Garamond", Georgia, serif;
  --f-mono:    "JetBrains Mono", ui-monospace, monospace;
}

*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  background: var(--ink);
  color: var(--ivory);
  font-family: var(--f-serif);
  font-size: 18px;
  line-height: 1.6;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  position: relative;
}

/* ---------- ROSE VELVET BACKGROUND (full-page fixed) ---------- */
.velvet{
  position: fixed; inset: 0;
  z-index: -50;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(73,10,19,.55) 0%, transparent 55%),
    radial-gradient(ellipse at 0% 100%, rgba(55,11,11,.45) 0%, transparent 55%),
    radial-gradient(ellipse at 100% 50%, rgba(151,6,7,.18) 0%, transparent 55%),
    url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iNjAwIiB2aWV3Qm94PSIwIDAgNjAwIDYwMCI+CiAgPGRlZnM+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9ImJnIiBjeD0iNTAlIiBjeT0iNTAlIiByPSI3MCUiPgogICAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMmEwNjA4Ij48L3N0b3A+CiAgICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzBhMDIwNCI+PC9zdG9wPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICA8L2RlZnM+CiAgPHJlY3Qgd2lkdGg9IjYwMCIgaGVpZ2h0PSI2MDAiIGZpbGw9InVybCgjYmcpIj48L3JlY3Q+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMwMCAzMDApIiBvcGFjaXR5PSIwLjU1Ij4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8cGF0aCBkPSJNMCAtMTEwIEMgLTQwIC0xMDAgLTcwIC03MCAtNzAgLTMwIEMgLTcwIDEwIC00MCA0MCAwIDQwIEMgNDAgNDAgNzAgMTAgNzAgLTMwIEMgNzAgLTcwIDQwIC0xMDAgMCAtMTEwIFoiIG9wYWNpdHk9Ii41Ij48L3BhdGg+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSI2MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItNDAiIGN5PSItMTUiIHJ4PSIyMiIgcnk9IjM2IiB0cmFuc2Zvcm09InJvdGF0ZSgtMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjQwIiBjeT0iLTE1IiByeD0iMjIiIHJ5PSIzNiIgdHJhbnNmb3JtPSJyb3RhdGUoMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIzMCIgcng9IjM2IiByeT0iMjIiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMyIiBjeT0iMjIiIHJ4PSIyMCIgcnk9IjMwIiB0cmFuc2Zvcm09InJvdGF0ZSgtNTUpIiBvcGFjaXR5PSIuNyI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMzIiIGN5PSIyMiIgcng9IjIwIiByeT0iMzAiIHRyYW5zZm9ybT0icm90YXRlKDU1KSIgb3BhY2l0eT0iLjciPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjM4Ij48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSItMTIiIHJ4PSIxNCIgcnk9IjIyIiBvcGFjaXR5PSIuOSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTE0IiBjeT0iNiIgcng9IjE0IiByeT0iMjAiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNCIgY3k9IjYiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSgzMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSIxOCI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSIwIiBjeT0iLTYiIHJ4PSI2IiByeT0iMTAiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8Y2lyY2xlIHI9IjYiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj4KICAgICAgPGNpcmNsZSByPSI0MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItMTYiIGN5PSI4IiByeD0iMTQiIHJ5PSIyMCIgdHJhbnNmb3JtPSJyb3RhdGUoLTQwKSIgb3BhY2l0eT0iLjg1Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNiIgY3k9IjgiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSg0MCkiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgPC9nPgogICAgPGNpcmNsZSByPSIxNCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjUiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAwIDApIiBvcGFjaXR5PSIwLjUiPgogICAgPGcgZmlsbD0iIzJhMDYwOCI+CiAgICAgIDxjaXJjbGUgcj0iODAiPjwvY2lyY2xlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoLTMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoMzApIiBvcGFjaXR5PSIuNyIgZmlsbD0iIzFhMDMwNiI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMCIgY3k9IjI4IiByeD0iMzIiIHJ5PSIyMiIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT4KICAgIDwvZz4KICAgIDxjaXJjbGUgcj0iMTQiIGZpbGw9IiMxYTAzMDYiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSI1IiBmaWxsPSIjNGEwZDEwIj48L2NpcmNsZT4KICA8L2c+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNTAgNDUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NTAgMTUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgc3Ryb2tlPSIjMWEwMzA2IiBzdHJva2Utd2lkdGg9IjEuNSIgZmlsbD0ibm9uZSIgb3BhY2l0eT0iMC40NSI+CiAgICA8cGF0aCBkPSJNMTUwIDAgUSAyMDAgODAgMTUwIDE1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTQ1MCAwIFEgNDAwIDgwIDQ1MCAxNTAiPjwvcGF0aD4KICAgIDxwYXRoIGQ9Ik0xNTAgNjAwIFEgMjAwIDUyMCAxNTAgNDUwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNDUwIDYwMCBRIDQwMCA1MjAgNDUwIDQ1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTAgMzAwIFEgMTAwIDI1MCAyMDAgMzAwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNjAwIDMwMCBRIDUwMCAyNTAgNDAwIDMwMCI+PC9wYXRoPgogIDwvZz4KPC9zdmc+") repeat,
    linear-gradient(180deg, #0a0204 0%, #160407 50%, #0a0204 100%);
  background-size: auto, auto, auto, 600px 600px, auto;
}
.velvet::before{
  content:"";
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at center, transparent 30%, rgba(5,2,3,.6) 90%);
}
.velvet::after{
  /* velvet texture sheen */
  content:"";
  position: absolute; inset: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.2 0 0 0 0 0.05 0 0 0 0 0.06 0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  opacity: .22;
  mix-blend-mode: overlay;
}

img{ display:block; max-width:100%; }
a{ color: inherit; text-decoration:none; }
button{ font: inherit; color:inherit; background:none; border:none; cursor:pointer; }

/* Page-wide grain overlay */
body::before{
  content:"";
  position: fixed; inset: 0;
  pointer-events: none;
  z-index: 200;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.1 0 0 0 0 0.05 0 0 0 0 0.05 0 0 0 0.18 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  opacity: .35;
  mix-blend-mode: overlay;
}

/* ---------- NAV ---------- */
.nav{
  position: fixed; top:0; left:0; right:0;
  z-index: 100;
  padding: 22px 48px;
  display:flex; align-items:center; justify-content:space-between;
  transition: background .5s ease, padding .4s ease, border-color .5s ease;
  border-bottom: 1px solid transparent;
}
.nav.scrolled{
  background: rgba(15,6,8,.55);
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  padding: 14px 48px;
  border-bottom-color: rgba(201,165,92,.18);
}
.nav__brand{
  font-family: var(--f-deco);
  font-weight: 500;
  letter-spacing: .35em;
  font-size: 14px;
  color: var(--gold);
  display:flex; align-items:center; gap:14px;
}
.nav__brand-mark{
  width: 28px; height: 28px;
  display:grid; place-items:center;
  color: var(--gold);
}
.nav__links{
  display:flex; gap: 42px;
  list-style:none;
}
.nav__links a{
  font-family: var(--f-deco);
  font-size: 11px;
  letter-spacing: .32em;
  text-transform: uppercase;
  color: rgba(243,232,210,.78);
  position: relative;
  padding: 6px 0;
  transition: color .3s ease;
}
.nav__links a::after{
  content:""; position:absolute;
  left:0; right:100%; bottom:0;
  height:1px; background: var(--gold);
  transition: right .4s ease;
}
.nav__links a:hover{ color: var(--gold); }
.nav__links a:hover::after{ right:0; }

.nav__cta{
  font-family: var(--f-deco);
  font-size: 11px;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--ivory);
  padding: 12px 26px;
  border: 1px solid var(--gold-aged);
  background: linear-gradient(180deg, rgba(151,6,7,.22), rgba(73,10,19,.55));
  position: relative;
  transition: background .4s ease, color .4s ease, transform .3s ease;
}
.nav__cta:hover{
  background: linear-gradient(180deg, rgba(201,165,92,.95), rgba(168,136,74,.9));
  color: var(--wine-darkest);
}

.nav__burger{ display:none; }
.nav__mobile{ display: none; }

/* ---------- HERO ---------- */
.hero{
  position: relative;
  min-height: 100vh;
  display:flex; align-items:center; justify-content:center;
  text-align:center;
  overflow:hidden;
  isolation:isolate;
}
.hero__bg{
  position:absolute; inset:-5%;
  background: url("https://milleniumon.com/wp-content/uploads/2026/05/b2f0f4c7-cbbf-4de9-91da-cf546a375b13.png") center/cover no-repeat;
  filter: contrast(1.05) saturate(.95) brightness(.65);
  z-index: -3;
  will-change: transform;
}
.hero__overlay{
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse at 50% 35%, rgba(151,6,7,.35) 0%, transparent 55%),
    linear-gradient(180deg, rgba(15,4,6,.55) 0%, rgba(15,4,6,.25) 40%, rgba(10,3,5,.92) 100%),
    var(--vignette);
  z-index:-2;
}
.hero__smoke{
  position:absolute; inset:0;
  background-image:
    radial-gradient(ellipse 40% 30% at 20% 70%, rgba(151,6,7,.18), transparent 70%),
    radial-gradient(ellipse 50% 35% at 80% 30%, rgba(73,10,19,.25), transparent 70%);
  filter: blur(40px);
  animation: smokeDrift 18s ease-in-out infinite alternate;
  z-index:-2;
}
@keyframes smokeDrift{
  0%   { transform: translate3d(0,0,0) scale(1); opacity:.7; }
  50%  { transform: translate3d(-2%,1%,0) scale(1.05); opacity:.9; }
  100% { transform: translate3d(2%,-1%,0) scale(1.02); opacity:.75; }
}
#particles{
  position:absolute; inset:0;
  z-index:-1; pointer-events:none;
}

.hero__inner{
  position: relative;
  max-width: 900px;
  padding: 140px 32px 80px;
}
.hero__eyebrow{
  font-family: var(--f-deco);
  font-size: 11px;
  letter-spacing: .55em;
  text-transform: uppercase;
  color: var(--gold);
  display:inline-flex; align-items:center; gap: 22px;
  margin-bottom: 36px;
}
.hero__eyebrow::before, .hero__eyebrow::after{
  content:""; display:block;
  width: 60px; height:1px;
  background: linear-gradient(90deg, transparent, var(--gold-aged), transparent);
}
.hero__name{
  font-family: var(--f-display);
  font-size: clamp(56px, 11vw, 156px);
  font-weight: 400;
  letter-spacing: .04em;
  line-height: .95;
  color: var(--ivory);
  text-shadow: 0 0 50px rgba(151,6,7,.45), 0 8px 30px rgba(0,0,0,.6);
  margin-bottom: 18px;
}
.hero__name .ampersand{
  font-style: italic;
  color: var(--gold);
}
.hero__rule{
  width: 1px; height: 60px;
  margin: 28px auto 28px;
  background: linear-gradient(180deg, transparent, var(--gold-aged), transparent);
}
.hero__headline{
  font-family: var(--f-serif);
  font-style: italic;
  font-size: clamp(20px, 2.4vw, 30px);
  font-weight: 300;
  line-height: 1.4;
  color: var(--champagne);
  max-width: 720px;
  margin: 0 auto 18px;
}
.hero__subtitle{
  font-family: var(--f-deco);
  font-size: 12px;
  letter-spacing: .4em;
  text-transform: uppercase;
  color: rgba(232,213,168,.7);
  margin-bottom: 50px;
}
.hero__cta-row{
  display:flex; gap: 28px; justify-content:center; flex-wrap:wrap;
  margin-top: 14px;
}
.btn{
  font-family: var(--f-deco);
  font-size: 12px;
  letter-spacing: .35em;
  text-transform: uppercase;
  padding: 18px 42px;
  position: relative;
  cursor: pointer;
  transition: transform .3s ease, background .5s ease, color .5s ease, box-shadow .5s ease;
  display:inline-flex; align-items:center; gap: 14px;
}
.btn--primary{
  background: linear-gradient(180deg, var(--blood) 0%, var(--wine-mid) 100%);
  color: var(--champagne);
  border: 1px solid var(--gold-aged);
  box-shadow: 0 20px 50px -15px rgba(151,6,7,.6), inset 0 1px 0 rgba(232,213,168,.15);
}
.btn--primary:hover{
  background: linear-gradient(180deg, var(--gold) 0%, var(--gold-aged) 100%);
  color: var(--wine-darkest);
  box-shadow: 0 30px 60px -15px rgba(201,165,92,.5);
  transform: translateY(-2px);
}
.btn--ghost{
  background: transparent;
  color: var(--ivory);
  border: 1px solid rgba(201,165,92,.45);
}
.btn--ghost:hover{
  border-color: var(--gold);
  background: rgba(201,165,92,.08);
}
.btn .arrow{ transition: transform .4s ease; }
.btn:hover .arrow{ transform: translateX(6px); }

.hero__scroll{
  position:absolute; bottom: 38px; left:50%;
  transform: translateX(-50%);
  font-family: var(--f-deco);
  font-size: 10px;
  letter-spacing: .5em;
  text-transform: uppercase;
  color: rgba(232,213,168,.55);
  display:flex; flex-direction:column; align-items:center; gap:10px;
}
.hero__scroll-line{
  width: 1px; height: 50px;
  background: linear-gradient(180deg, var(--gold-aged), transparent);
  animation: scrollPulse 2.4s ease-in-out infinite;
  transform-origin: top;
}
@keyframes scrollPulse{
  0%,100%{ transform: scaleY(.4); opacity:.4; }
  50%   { transform: scaleY(1); opacity:1; }
}

/* Hero ornamental corners */
.hero__corner{
  position:absolute;
  width: 140px; height: 140px;
  color: var(--gold-aged);
  opacity: .85;
}
.hero__corner--tl{ top: 100px; left: 36px; }
.hero__corner--tr{ top: 100px; right: 36px; transform: scaleX(-1); }
.hero__corner--bl{ bottom: 36px; left: 36px; transform: scaleY(-1); }
.hero__corner--br{ bottom: 36px; right: 36px; transform: scale(-1,-1); }

.hero__rose{
  position:absolute;
  width: 220px;
  opacity: .45;
  pointer-events:none;
  filter: drop-shadow(0 0 30px rgba(151,6,7,.5));
}
.hero__rose--l{ left: -40px; bottom: 12vh; transform: rotate(-22deg); }
.hero__rose--r{ right: -40px; top: 18vh; transform: rotate(28deg); }

/* ---------- SECTION BASICS ---------- */
section{ position: relative; }
.section{
  padding: 130px 48px;
  position: relative;
  overflow:hidden;
}
.container{
  max-width: 1240px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.eyebrow{
  font-family: var(--f-deco);
  font-size: 11px;
  letter-spacing: .5em;
  text-transform: uppercase;
  color: var(--gold);
  display:inline-flex; align-items:center; gap: 18px;
  margin-bottom: 32px;
}
.eyebrow::before{
  content:""; width: 50px; height:1px;
  background: linear-gradient(90deg, transparent, var(--gold-aged));
}
.eyebrow.center{ display:flex; justify-content:center; }
.eyebrow.center::before{ background: linear-gradient(90deg, transparent, var(--gold-aged)); }
.eyebrow.center::after{
  content:""; width: 50px; height:1px;
  background: linear-gradient(90deg, var(--gold-aged), transparent);
}
.h-display{
  font-family: var(--f-display);
  font-size: clamp(40px, 6vw, 88px);
  line-height: 1.05;
  font-weight: 400;
  letter-spacing: .01em;
  color: var(--ivory);
}
.h-display em{
  font-style: italic;
  color: var(--gold);
  font-family: var(--f-serif);
  font-weight: 300;
}
.h-section{
  font-family: var(--f-display);
  font-size: clamp(36px, 4.5vw, 64px);
  line-height: 1.1;
  letter-spacing: .01em;
  color: var(--ivory);
  margin-bottom: 28px;
}
.lead{
  font-family: var(--f-serif);
  font-size: 22px;
  line-height: 1.65;
  color: rgba(243,232,210,.85);
  font-weight: 300;
}

/* ---------- STORYTELLING — QUEM SOU ---------- */
.story{
  background:
    radial-gradient(ellipse at 80% 0%, rgba(73,10,19,.4) 0%, transparent 55%),
    radial-gradient(ellipse at 10% 80%, rgba(55,11,11,.45) 0%, transparent 60%),
    linear-gradient(180deg, rgba(13,4,5,.6) 0%, rgba(22,5,8,.7) 50%, rgba(13,4,5,.6) 100%);
}
.story__intro{
  text-align:center;
  max-width: 880px;
  margin: 0 auto 140px;
}
.story__intro .h-display{
  margin-top: 18px;
  margin-bottom: 22px;
}

.story__chapters{
  display:flex;
  flex-direction:column;
  gap: 140px;
}
.chapter{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 100px;
  align-items: center;
  position: relative;
}
.chapter--reverse{ direction: rtl; }
.chapter--reverse > *{ direction: ltr; }

.chapter__index{
  font-family: var(--f-deco);
  font-size: 11px;
  letter-spacing: .5em;
  color: var(--gold-aged);
  margin-bottom: 22px;
  display:flex; align-items:center; gap:14px;
}
.chapter__index span{
  display:inline-block; width: 30px; height:1px; background: var(--gold-aged);
}
.chapter__quote{
  font-family: var(--f-display);
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.25;
  color: var(--ivory);
  font-weight: 400;
}
.chapter__quote em{
  font-family: var(--f-serif);
  font-style: italic;
  color: var(--gold);
}
.chapter__body{
  font-family: var(--f-serif);
  font-size: 19px;
  line-height: 1.75;
  color: rgba(243,232,210,.78);
  margin-top: 22px;
}
.chapter__body p + p{ margin-top: 12px; }

/* Decorative panel (placeholder for imagery / glyph composition) */
.chapter__visual{
  position: relative;
  aspect-ratio: 4 / 5;
  background:
    linear-gradient(135deg, rgba(151,6,7,.15) 0%, rgba(55,11,11,.5) 100%);
  border: 1px solid rgba(201,165,92,.25);
  overflow: hidden;
  display:grid; place-items:center;
  isolation: isolate;
}
.chapter__visual::before{
  content:"";
  position: absolute; inset: 14px;
  border: 1px solid rgba(201,165,92,.18);
  pointer-events:none;
  z-index: 2;
}
.chapter__visual-stripes{
  position:absolute; inset:0;
  background-image:
    repeating-linear-gradient(45deg, rgba(201,165,92,.05) 0 2px, transparent 2px 22px);
  z-index: 0;
}
.chapter__visual-glow{
  position:absolute; inset:0;
  background: radial-gradient(circle at 50% 50%, rgba(151,6,7,.5), transparent 60%);
  filter: blur(40px);
  z-index: 0;
}
.chapter__visual-glyph{
  position: relative;
  z-index: 3;
  color: var(--gold);
  width: 60%; height:auto;
  opacity: .85;
  filter: drop-shadow(0 0 24px rgba(201,165,92,.45));
}
.chapter__visual-caption{
  position:absolute; bottom: 22px; left: 22px;
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: .25em;
  text-transform: uppercase;
  color: rgba(232,213,168,.5);
  z-index: 4;
}

/* Full-bleed pull-quote interlude */
.interlude{
  text-align:center;
  padding: 140px 48px;
  background:
    radial-gradient(ellipse at center, rgba(151,6,7,.45) 0%, transparent 60%),
    linear-gradient(180deg, rgba(10,3,4,.55) 0%, rgba(26,5,7,.6) 50%, rgba(10,3,4,.55) 100%);
  position: relative;
  overflow:hidden;
}
.interlude::before, .interlude::after{
  content:"";
  position: absolute;
  left:50%; transform: translateX(-50%);
  width: 60%;
  max-width: 700px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold-aged), transparent);
}
.interlude::before{ top: 80px; }
.interlude::after{ bottom: 80px; }
.interlude__mark{
  font-family: var(--f-display);
  color: var(--gold);
  font-size: 80px;
  line-height: 1;
  margin-bottom: 30px;
  font-style: italic;
}
.interlude__quote{
  font-family: var(--f-display);
  font-size: clamp(34px, 4.5vw, 62px);
  line-height: 1.2;
  max-width: 1000px;
  margin: 0 auto;
  color: var(--ivory);
  letter-spacing: .005em;
}
.interlude__quote em{
  font-family: var(--f-serif);
  font-style: italic;
  color: var(--gold);
  font-weight: 300;
}
.interlude__attr{
  margin-top: 50px;
  font-family: var(--f-deco);
  letter-spacing: .5em;
  font-size: 11px;
  color: var(--gold-aged);
  text-transform: uppercase;
}

/* ---------- MÉTODO ALTHEA ---------- */
.method{
  background:
    radial-gradient(ellipse at 30% 0%, rgba(73,10,19,.4), transparent 55%),
    linear-gradient(180deg, rgba(10,3,4,.65) 0%, rgba(32,6,8,.55) 30%, rgba(22,5,6,.65) 100%);
  padding-top: 160px;
}
.method__header{
  display:grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 80px;
  align-items: end;
  margin-bottom: 90px;
}
.method__sigil{
  position: relative;
  aspect-ratio: 1/1;
  display:grid; place-items:center;
}
.method__sigil svg{ width: 100%; height:auto; color: var(--gold); }
.method__sigil-name{
  position:absolute;
  font-family: var(--f-display);
  font-size: 64px;
  color: var(--ivory);
  letter-spacing: .04em;
}

.method__body{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  margin-top: 40px;
}
.method__body p{
  font-family: var(--f-serif);
  font-size: 20px;
  line-height: 1.7;
  color: rgba(243,232,210,.82);
  font-weight: 300;
}
.method__body p + p{ margin-top: 22px; }
.method__highlight{
  font-family: var(--f-display) !important;
  font-size: 32px !important;
  font-style: italic;
  color: var(--gold) !important;
  line-height: 1.3 !important;
}

/* ---------- PHASES ---------- */
.phases{
  background:
    radial-gradient(ellipse at 50% 0%, rgba(151,6,7,.35) 0%, transparent 50%),
    linear-gradient(180deg, rgba(22,5,6,.65) 0%, rgba(10,3,4,.55) 50%, rgba(22,5,6,.65) 100%);
  padding: 150px 48px 170px;
}
.phases__intro{
  text-align:center;
  max-width: 800px;
  margin: 0 auto 90px;
}
.phases__grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  position: relative;
}
.phases__grid::before{
  content:"";
  position:absolute;
  top: 110px; left: 8%; right: 8%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold-aged) 20%, var(--gold-aged) 80%, transparent);
  opacity: .4;
  z-index: 0;
}
.phase{
  text-align:center;
  position: relative;
  padding: 0 20px;
  z-index: 1;
}
.phase__portal{
  width: 220px; height: 220px;
  margin: 0 auto 50px;
  position: relative;
  display:grid; place-items:center;
}
.phase__portal-ring{
  position:absolute; inset:0;
  border: 1px solid rgba(201,165,92,.45);
  border-radius: 50%;
}
.phase__portal-ring--outer{
  inset: -18px;
  border: 1px solid rgba(201,165,92,.2);
  border-radius: 50%;
  animation: rotateSlow 60s linear infinite;
}
.phase__portal-ring--outer::before,
.phase__portal-ring--outer::after{
  content:"";
  position:absolute; top: 50%; left: 50%;
  width: 6px; height: 6px;
  background: var(--gold);
  border-radius: 50%;
  transform: translate(-50%,-50%);
  box-shadow: 0 0 10px var(--gold);
}
.phase__portal-ring--outer::before{ top: 0; }
.phase__portal-ring--outer::after{ top: 100%; }
@keyframes rotateSlow{
  to{ transform: rotate(360deg); }
}
.phase__portal-inner{
  width: 75%; height: 75%;
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 35%, rgba(151,6,7,.85), rgba(55,11,11,.95) 70%);
  display:grid; place-items:center;
  position: relative;
  box-shadow:
    inset 0 0 40px rgba(0,0,0,.6),
    0 0 60px rgba(151,6,7,.3);
}
.phase__portal-glow{
  position:absolute; inset:-20%;
  border-radius:50%;
  background: radial-gradient(circle, rgba(151,6,7,.55), transparent 60%);
  filter: blur(30px);
  z-index:-1;
}
.phase__numeral{
  font-family: var(--f-display);
  font-size: 60px;
  color: var(--champagne);
  font-style: italic;
  text-shadow: 0 0 20px rgba(201,165,92,.5);
}
.phase__step{
  font-family: var(--f-deco);
  font-size: 11px;
  letter-spacing: .45em;
  color: var(--gold);
  margin-bottom: 16px;
  text-transform: uppercase;
}
.phase__name{
  font-family: var(--f-display);
  font-size: 42px;
  color: var(--ivory);
  margin-bottom: 22px;
}
.phase__desc{
  font-family: var(--f-serif);
  font-style: italic;
  font-size: 17px;
  line-height: 1.6;
  color: rgba(243,232,210,.7);
  max-width: 280px;
  margin: 0 auto;
}

/* ---------- FINAL CTA ---------- */
.finale{
  position: relative;
  padding: 180px 48px 200px;
  text-align:center;
  background:
    radial-gradient(ellipse at center, rgba(151,6,7,.5) 0%, transparent 55%),
    linear-gradient(180deg, rgba(22,5,6,.55) 0%, rgba(42,7,9,.7) 100%);
  overflow:hidden;
}
.finale__ring{
  position:absolute; left:50%; top:50%;
  transform: translate(-50%,-50%);
  width: 720px; height: 720px;
  border: 1px solid rgba(201,165,92,.18);
  border-radius: 50%;
  pointer-events:none;
}
.finale__ring--2{ width:520px; height:520px; border-color: rgba(201,165,92,.25); }
.finale__ring--3{ width:920px; height:920px; border-color: rgba(201,165,92,.1); }
.finale__inner{
  position: relative;
  z-index: 2;
  max-width: 900px;
  margin: 0 auto;
}
.finale__title{
  font-family: var(--f-display);
  font-size: clamp(44px, 6vw, 86px);
  line-height: 1.1;
  margin: 22px 0 36px;
}
.finale__title em{
  font-family: var(--f-serif);
  font-style: italic;
  color: var(--gold);
  font-weight: 300;
}
.finale__sub{
  font-family: var(--f-serif);
  font-size: 22px;
  font-style: italic;
  color: rgba(243,232,210,.78);
  max-width: 640px;
  margin: 0 auto 60px;
  line-height: 1.55;
}

/* ---------- FOOTER ---------- */
.footer{
  background: #050203;
  padding: 80px 48px 40px;
  border-top: 1px solid rgba(201,165,92,.15);
  position: relative;
}
.footer__top{
  display:flex; justify-content:space-between; align-items:center;
  max-width: 1240px; margin: 0 auto 50px;
  flex-wrap: wrap; gap: 40px;
}
.footer__brand{
  font-family: var(--f-display);
  font-size: 36px;
  letter-spacing: .04em;
  color: var(--ivory);
}
.footer__meta{
  font-family: var(--f-deco);
  font-size: 10px;
  letter-spacing: .4em;
  color: rgba(232,213,168,.5);
  text-transform: uppercase;
}
.footer__bottom{
  max-width:1240px; margin: 0 auto;
  display:flex; justify-content:space-between;
  font-family: var(--f-deco); font-size: 10px;
  letter-spacing: .35em; text-transform:uppercase;
  color: rgba(232,213,168,.4);
  flex-wrap: wrap; gap: 20px;
  padding-top: 30px;
  border-top: 1px solid rgba(201,165,92,.1);
}

/* ---------- REVEAL ANIMATIONS ---------- */
.reveal{
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 1.2s cubic-bezier(.16,.84,.3,1), transform 1.2s cubic-bezier(.16,.84,.3,1);
}
.reveal.is-visible{
  opacity: 1;
  transform: translateY(0);
}
.reveal--delay-1{ transition-delay: .15s; }
.reveal--delay-2{ transition-delay: .3s; }
.reveal--delay-3{ transition-delay: .45s; }
.reveal--delay-4{ transition-delay: .6s; }

.reveal-left{
  opacity: 0;
  transform: translateX(-40px);
  transition: opacity 1.2s cubic-bezier(.16,.84,.3,1), transform 1.2s cubic-bezier(.16,.84,.3,1);
}
.reveal-left.is-visible{ opacity:1; transform: translateX(0); }
.reveal-right{
  opacity: 0;
  transform: translateX(40px);
  transition: opacity 1.2s cubic-bezier(.16,.84,.3,1), transform 1.2s cubic-bezier(.16,.84,.3,1);
}
.reveal-right.is-visible{ opacity:1; transform: translateX(0); }

.reveal-scale{
  opacity:0;
  transform: scale(.95);
  transition: opacity 1.4s ease, transform 1.4s cubic-bezier(.16,.84,.3,1);
}
.reveal-scale.is-visible{ opacity:1; transform: scale(1); }

/* Letter reveal for hero name */
.split-line{ display:block; overflow:hidden; }
.split-word{
  display:inline-block;
  transform: translateY(110%);
  opacity:0;
  transition: transform 1.4s cubic-bezier(.16,.84,.3,1), opacity 1.6s ease;
}
.hero.is-loaded .split-word{
  transform: translateY(0); opacity: 1;
}
.hero.is-loaded .split-word:nth-child(1){ transition-delay: .2s; }
.hero.is-loaded .split-word:nth-child(2){ transition-delay: .35s; }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 960px){
  .nav{ padding: 18px 22px; }
  .nav__links{ display:none; }
  .nav__cta{ display:none; }
  .nav__burger{
    display:flex; flex-direction:column; gap:6px;
    width:32px; padding: 6px;
  }
  .nav__burger span{
    display:block; height:1px; width:100%; background: var(--gold);
    transition: transform .4s ease, opacity .3s ease;
  }
  .nav.is-open .nav__burger span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
  .nav.is-open .nav__burger span:nth-child(2){ opacity:0; }
  .nav.is-open .nav__burger span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }

  .nav__mobile{
    position: fixed; inset:0;
    background: rgba(10,3,5,.96);
    backdrop-filter: blur(20px);
    display:flex; flex-direction:column;
    align-items:center; justify-content:center;
    gap: 36px;
    opacity: 0; pointer-events:none;
    transition: opacity .5s ease;
    z-index: 95;
  }
  .nav.is-open .nav__mobile{ opacity:1; pointer-events:auto; }
  .nav__mobile a{
    font-family: var(--f-display);
    font-size: 32px;
    color: var(--champagne);
    letter-spacing: .04em;
  }
  .nav__mobile a em{
    font-family: var(--f-serif);
    font-style: italic;
    color: var(--gold);
  }

  .hero__corner{ width: 80px; height:80px; }
  .hero__corner--tl,.hero__corner--tr{ top: 80px; }
  .hero__corner--bl,.hero__corner--br{ bottom: 26px; }
  .hero__rose{ display:none; }

  .section{ padding: 100px 22px; }
  .chapter{
    grid-template-columns: 1fr;
    gap: 50px;
  }
  .story__chapters{ gap: 130px; }
  .chapter__visual{ max-width: 360px; margin: 0 auto; }

  .method{ padding-top: 140px; }
  .method__header{
    grid-template-columns: 1fr;
    gap: 50px;
  }
  .method__sigil{ max-width: 280px; margin: 0 auto; }
  .method__sigil-name{ font-size: 40px; }
  .method__body{
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .method__body p{ font-size: 18px; }
  .method__highlight{ font-size: 26px !important; }

  .phases__grid{
    grid-template-columns: 1fr;
    gap: 90px;
  }
  .phases__grid::before{ display:none; }

  .finale__ring--3{ width: 600px; height: 600px; }
  .finale__ring{ width: 480px; height: 480px; }
  .finale__ring--2{ width: 340px; height: 340px; }

  .interlude{ padding: 100px 22px; }
  .footer{ padding: 50px 22px 30px; }
  .footer__bottom{ flex-direction:column; align-items:flex-start; }
}

@media (max-width: 520px){
  .hero__cta-row{ flex-direction:column; gap: 16px; }
  .btn{ width: 100%; justify-content:center; }
  .hero__corner{ display:none; }
  .interlude__mark{ font-size: 56px; }
}

/* =====================================================================
   PILL CTA VARIANT — premium diagnostic button
   ===================================================================== */
.btn--pill{
  border-radius: 999px;
  padding: 20px 36px;
  font-size: 13px;
  letter-spacing: .3em;
  background: linear-gradient(180deg, var(--gold) 0%, var(--gold-aged) 100%);
  color: var(--wine-darkest);
  border: 1px solid var(--gold);
  box-shadow:
    0 0 24px rgba(201,165,92,.35),
    0 18px 40px -12px rgba(151,6,7,.55),
    inset 0 1px 0 rgba(255,235,170,.45);
  transition: transform .4s ease, box-shadow .5s ease, background .5s ease, color .5s ease;
}
.btn--pill:hover{
  background: linear-gradient(180deg, var(--champagne) 0%, var(--gold) 100%);
  color: var(--wine-darkest);
  transform: translateY(-3px) scale(1.02);
  box-shadow:
    0 0 50px rgba(201,165,92,.65),
    0 24px 50px -10px rgba(151,6,7,.7),
    inset 0 1px 0 rgba(255,235,170,.7);
}
.btn--pill .arrow{
  font-size: 16px;
  transition: transform .4s ease;
}
.btn--pill:hover .arrow{
  transform: translate(4px, -4px);
}

/* =====================================================================
   REAL ROSE DECORATIONS (PNG)
   ===================================================================== */
/* Hero — real rose flanking */
.hero__rose-real{
  position: absolute;
  width: 580px;
  opacity: .6;
  pointer-events: none;
  z-index: -1;
  filter:
    drop-shadow(0 0 60px rgba(151,6,7,.7))
    drop-shadow(0 40px 80px rgba(0,0,0,.65))
    saturate(.95) contrast(1.05);
}
.hero__rose-real--l{
  left: -140px;
  bottom: -120px;
  transform: rotate(-15deg);
}
.hero__rose-real--r{
  right: -160px;
  top: 0vh;
  transform: rotate(20deg);
  width: 520px;
  opacity: .5;
}

/* Universal rose decoration */
.rose-deco{
  position: absolute;
  pointer-events: none;
  z-index: 1;
  opacity: .35;
  filter:
    drop-shadow(0 0 30px rgba(151,6,7,.55))
    saturate(.9) contrast(1.05);
}
.rose-deco--top-left{
  top: 60px; left: -80px;
  width: 220px;
  transform: rotate(-10deg);
}
.rose-deco--top-right{
  top: 80px; right: -100px;
  width: 260px;
  transform: rotate(20deg);
}
.rose-deco--bottom-right{
  bottom: 60px; right: -80px;
  width: 200px;
  transform: rotate(15deg);
  opacity: .3;
}
.rose-deco--side-left{
  top: 30%;
  left: -120px;
  width: 240px;
  transform: rotate(-25deg);
  opacity: .25;
}
.rose-deco--finale-left{
  bottom: 60px;
  left: 4vw;
  width: 200px;
  transform: rotate(-18deg);
  opacity: .45;
  z-index: 1;
}
.rose-deco--finale-right{
  top: 100px;
  right: 4vw;
  width: 220px;
  transform: rotate(22deg);
  opacity: .45;
  z-index: 1;
}

/* Hide hero/large roses on mobile to avoid clutter */
@media (max-width: 960px){
  .hero__rose-real,
  .rose-deco--side-left,
  .rose-deco--top-right,
  .rose-deco--finale-left,
  .rose-deco--finale-right{
    display: none;
  }
  .rose-deco--top-left{
    width: 140px;
    top: 30px; left: -50px;
    opacity: .25;
  }
  .rose-deco--bottom-right{
    width: 140px;
    bottom: 30px; right: -50px;
  }
  .btn--pill{ padding: 16px 30px; font-size: 12px; }
}

/* =====================================================================
   APOMETRIA — explainer section
   ===================================================================== */
.apometry{
  background:
    radial-gradient(ellipse at 70% 50%, rgba(73,10,19,.45), transparent 60%),
    linear-gradient(180deg, rgba(10,3,4,.6), rgba(22,5,7,.5));
  position: relative;
}
.apometry__grid{
  display:grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 80px;
  align-items: center;
}
.apometry__visual{
  position: relative;
  aspect-ratio: 4/5;
  background:
    radial-gradient(ellipse at 50% 40%, rgba(151,6,7,.35), transparent 60%),
    linear-gradient(180deg, rgba(26,6,8,.7), rgba(10,3,4,.9));
  border: 1px solid rgba(201,165,92,.3);
  display:grid; place-items:center;
  overflow:hidden;
  isolation: isolate;
}
.apometry__visual::before{
  content:"";
  position: absolute; inset:0;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iNjAwIiB2aWV3Qm94PSIwIDAgNjAwIDYwMCI+CiAgPGRlZnM+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9ImJnIiBjeD0iNTAlIiBjeT0iNTAlIiByPSI3MCUiPgogICAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMmEwNjA4Ij48L3N0b3A+CiAgICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzBhMDIwNCI+PC9zdG9wPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICA8L2RlZnM+CiAgPHJlY3Qgd2lkdGg9IjYwMCIgaGVpZ2h0PSI2MDAiIGZpbGw9InVybCgjYmcpIj48L3JlY3Q+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMwMCAzMDApIiBvcGFjaXR5PSIwLjU1Ij4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8cGF0aCBkPSJNMCAtMTEwIEMgLTQwIC0xMDAgLTcwIC03MCAtNzAgLTMwIEMgLTcwIDEwIC00MCA0MCAwIDQwIEMgNDAgNDAgNzAgMTAgNzAgLTMwIEMgNzAgLTcwIDQwIC0xMDAgMCAtMTEwIFoiIG9wYWNpdHk9Ii41Ij48L3BhdGg+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSI2MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItNDAiIGN5PSItMTUiIHJ4PSIyMiIgcnk9IjM2IiB0cmFuc2Zvcm09InJvdGF0ZSgtMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjQwIiBjeT0iLTE1IiByeD0iMjIiIHJ5PSIzNiIgdHJhbnNmb3JtPSJyb3RhdGUoMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIzMCIgcng9IjM2IiByeT0iMjIiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMyIiBjeT0iMjIiIHJ4PSIyMCIgcnk9IjMwIiB0cmFuc2Zvcm09InJvdGF0ZSgtNTUpIiBvcGFjaXR5PSIuNyI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMzIiIGN5PSIyMiIgcng9IjIwIiByeT0iMzAiIHRyYW5zZm9ybT0icm90YXRlKDU1KSIgb3BhY2l0eT0iLjciPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjM4Ij48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSItMTIiIHJ4PSIxNCIgcnk9IjIyIiBvcGFjaXR5PSIuOSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTE0IiBjeT0iNiIgcng9IjE0IiByeT0iMjAiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNCIgY3k9IjYiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSgzMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSIxOCI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSIwIiBjeT0iLTYiIHJ4PSI2IiByeT0iMTAiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8Y2lyY2xlIHI9IjYiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj4KICAgICAgPGNpcmNsZSByPSI0MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItMTYiIGN5PSI4IiByeD0iMTQiIHJ5PSIyMCIgdHJhbnNmb3JtPSJyb3RhdGUoLTQwKSIgb3BhY2l0eT0iLjg1Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNiIgY3k9IjgiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSg0MCkiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgPC9nPgogICAgPGNpcmNsZSByPSIxNCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjUiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAwIDApIiBvcGFjaXR5PSIwLjUiPgogICAgPGcgZmlsbD0iIzJhMDYwOCI+CiAgICAgIDxjaXJjbGUgcj0iODAiPjwvY2lyY2xlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoLTMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoMzApIiBvcGFjaXR5PSIuNyIgZmlsbD0iIzFhMDMwNiI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMCIgY3k9IjI4IiByeD0iMzIiIHJ5PSIyMiIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT4KICAgIDwvZz4KICAgIDxjaXJjbGUgcj0iMTQiIGZpbGw9IiMxYTAzMDYiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSI1IiBmaWxsPSIjNGEwZDEwIj48L2NpcmNsZT4KICA8L2c+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNTAgNDUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NTAgMTUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgc3Ryb2tlPSIjMWEwMzA2IiBzdHJva2Utd2lkdGg9IjEuNSIgZmlsbD0ibm9uZSIgb3BhY2l0eT0iMC40NSI+CiAgICA8cGF0aCBkPSJNMTUwIDAgUSAyMDAgODAgMTUwIDE1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTQ1MCAwIFEgNDAwIDgwIDQ1MCAxNTAiPjwvcGF0aD4KICAgIDxwYXRoIGQ9Ik0xNTAgNjAwIFEgMjAwIDUyMCAxNTAgNDUwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNDUwIDYwMCBRIDQwMCA1MjAgNDUwIDQ1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTAgMzAwIFEgMTAwIDI1MCAyMDAgMzAwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNjAwIDMwMCBRIDUwMCAyNTAgNDAwIDMwMCI+PC9wYXRoPgogIDwvZz4KPC9zdmc+") center/110% no-repeat;
  opacity: .55;
  z-index: 0;
}
.apometry__sigil{
  position: relative;
  z-index: 2;
  width: 70%;
  color: var(--gold);
  filter: drop-shadow(0 0 30px rgba(201,165,92,.4));
}
.apometry__visual-caption{
  position:absolute;
  bottom: 24px; left: 24px;
  font-family: var(--f-mono);
  font-size: 10px;
  letter-spacing: .35em;
  text-transform: uppercase;
  color: rgba(232,213,168,.55);
  z-index: 3;
}
.apometry__text .h-section{
  margin-bottom: 36px;
}
.apometry__text .lead + .lead{ margin-top: 22px; }
.apometry__quote{
  margin-top: 50px;
  padding: 28px 32px;
  border-left: 1px solid var(--gold-aged);
  background: linear-gradient(90deg, rgba(151,6,7,.18), transparent);
  font-family: var(--f-display);
  font-style: italic;
  font-size: 24px;
  color: var(--champagne);
  line-height: 1.4;
}

/* =====================================================================
   BENEFITS GRID
   ===================================================================== */
.benefits{
  background:
    radial-gradient(ellipse at 20% 0%, rgba(151,6,7,.3), transparent 50%),
    linear-gradient(180deg, rgba(13,4,5,.5), rgba(22,5,7,.55));
}
.benefits__intro{
  text-align:center;
  max-width: 760px;
  margin: 0 auto 70px;
}
.benefits__grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}
.benefit{
  background: linear-gradient(180deg, rgba(26,6,8,.65), rgba(10,3,4,.5));
  border: 1px solid rgba(201,165,92,.18);
  padding: 50px 38px;
  position: relative;
  transition: border-color .5s ease, transform .5s ease, background .5s ease;
  isolation: isolate;
}
.benefit:hover{
  border-color: rgba(201,165,92,.5);
  transform: translateY(-4px);
  background: linear-gradient(180deg, rgba(43,10,13,.8), rgba(15,4,6,.7));
}
.benefit::before{
  content:"";
  position: absolute; inset: 0;
  background: radial-gradient(circle at 50% 0%, rgba(151,6,7,.35), transparent 60%);
  opacity: 0;
  transition: opacity .5s ease;
  z-index: -1;
}
.benefit:hover::before{ opacity: 1; }

.benefit__icon{
  width: 54px; height: 54px;
  color: var(--gold);
  margin-bottom: 28px;
  display:block;
}
.benefit__title{
  font-family: var(--f-display);
  font-size: 26px;
  line-height: 1.2;
  color: var(--ivory);
  margin-bottom: 16px;
}
.benefit__title em{
  font-family: var(--f-serif);
  font-style: italic;
  color: var(--gold);
}
.benefit__body{
  font-family: var(--f-serif);
  font-size: 16px;
  line-height: 1.65;
  color: rgba(243,232,210,.75);
  font-weight: 300;
}

/* =====================================================================
   PRÉ-DIAGNÓSTICO
   ===================================================================== */
.diagnostic{
  background:
    radial-gradient(ellipse at 50% 0%, rgba(151,6,7,.4), transparent 55%),
    linear-gradient(180deg, rgba(22,5,7,.65), rgba(10,3,4,.7));
  position: relative;
  overflow: hidden;
}
.diagnostic__panel{
  max-width: 880px;
  margin: 0 auto;
  background:
    linear-gradient(180deg, rgba(26,6,8,.85), rgba(10,3,4,.85));
  border: 1px solid rgba(201,165,92,.35);
  padding: 80px 70px;
  position: relative;
  isolation:isolate;
}
.diagnostic__panel::before{
  content:"";
  position: absolute; inset: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iNjAwIiB2aWV3Qm94PSIwIDAgNjAwIDYwMCI+CiAgPGRlZnM+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9ImJnIiBjeD0iNTAlIiBjeT0iNTAlIiByPSI3MCUiPgogICAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMmEwNjA4Ij48L3N0b3A+CiAgICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzBhMDIwNCI+PC9zdG9wPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICA8L2RlZnM+CiAgPHJlY3Qgd2lkdGg9IjYwMCIgaGVpZ2h0PSI2MDAiIGZpbGw9InVybCgjYmcpIj48L3JlY3Q+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMwMCAzMDApIiBvcGFjaXR5PSIwLjU1Ij4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8cGF0aCBkPSJNMCAtMTEwIEMgLTQwIC0xMDAgLTcwIC03MCAtNzAgLTMwIEMgLTcwIDEwIC00MCA0MCAwIDQwIEMgNDAgNDAgNzAgMTAgNzAgLTMwIEMgNzAgLTcwIDQwIC0xMDAgMCAtMTEwIFoiIG9wYWNpdHk9Ii41Ij48L3BhdGg+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSI2MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItNDAiIGN5PSItMTUiIHJ4PSIyMiIgcnk9IjM2IiB0cmFuc2Zvcm09InJvdGF0ZSgtMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjQwIiBjeT0iLTE1IiByeD0iMjIiIHJ5PSIzNiIgdHJhbnNmb3JtPSJyb3RhdGUoMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIzMCIgcng9IjM2IiByeT0iMjIiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMyIiBjeT0iMjIiIHJ4PSIyMCIgcnk9IjMwIiB0cmFuc2Zvcm09InJvdGF0ZSgtNTUpIiBvcGFjaXR5PSIuNyI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMzIiIGN5PSIyMiIgcng9IjIwIiByeT0iMzAiIHRyYW5zZm9ybT0icm90YXRlKDU1KSIgb3BhY2l0eT0iLjciPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjM4Ij48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSItMTIiIHJ4PSIxNCIgcnk9IjIyIiBvcGFjaXR5PSIuOSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTE0IiBjeT0iNiIgcng9IjE0IiByeT0iMjAiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNCIgY3k9IjYiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSgzMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSIxOCI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSIwIiBjeT0iLTYiIHJ4PSI2IiByeT0iMTAiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8Y2lyY2xlIHI9IjYiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj4KICAgICAgPGNpcmNsZSByPSI0MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItMTYiIGN5PSI4IiByeD0iMTQiIHJ5PSIyMCIgdHJhbnNmb3JtPSJyb3RhdGUoLTQwKSIgb3BhY2l0eT0iLjg1Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNiIgY3k9IjgiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSg0MCkiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgPC9nPgogICAgPGNpcmNsZSByPSIxNCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjUiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAwIDApIiBvcGFjaXR5PSIwLjUiPgogICAgPGcgZmlsbD0iIzJhMDYwOCI+CiAgICAgIDxjaXJjbGUgcj0iODAiPjwvY2lyY2xlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoLTMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoMzApIiBvcGFjaXR5PSIuNyIgZmlsbD0iIzFhMDMwNiI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMCIgY3k9IjI4IiByeD0iMzIiIHJ5PSIyMiIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT4KICAgIDwvZz4KICAgIDxjaXJjbGUgcj0iMTQiIGZpbGw9IiMxYTAzMDYiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSI1IiBmaWxsPSIjNGEwZDEwIj48L2NpcmNsZT4KICA8L2c+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNTAgNDUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NTAgMTUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgc3Ryb2tlPSIjMWEwMzA2IiBzdHJva2Utd2lkdGg9IjEuNSIgZmlsbD0ibm9uZSIgb3BhY2l0eT0iMC40NSI+CiAgICA8cGF0aCBkPSJNMTUwIDAgUSAyMDAgODAgMTUwIDE1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTQ1MCAwIFEgNDAwIDgwIDQ1MCAxNTAiPjwvcGF0aD4KICAgIDxwYXRoIGQ9Ik0xNTAgNjAwIFEgMjAwIDUyMCAxNTAgNDUwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNDUwIDYwMCBRIDQwMCA1MjAgNDUwIDQ1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTAgMzAwIFEgMTAwIDI1MCAyMDAgMzAwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNjAwIDMwMCBRIDUwMCAyNTAgNDAwIDMwMCI+PC9wYXRoPgogIDwvZz4KPC9zdmc+") center/cover;
  opacity: .15;
  z-index: -1;
}
.diagnostic__panel::after{
  content:"";
  position: absolute; inset: 14px;
  border: 1px solid rgba(201,165,92,.2);
  pointer-events:none;
}
.diagnostic__header{
  text-align:center;
  margin-bottom: 50px;
}
.diagnostic__list{
  list-style:none;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 28px;
  margin-bottom: 50px;
}
.diagnostic__item{
  display:flex; align-items:flex-start; gap: 16px;
  padding: 16px 18px;
  background: rgba(73,10,19,.18);
  border: 1px solid rgba(201,165,92,.18);
  cursor: pointer;
  transition: background .3s ease, border-color .3s ease;
  user-select:none;
}
.diagnostic__item:hover{
  background: rgba(73,10,19,.35);
  border-color: rgba(201,165,92,.45);
}
.diagnostic__item.is-checked{
  background: linear-gradient(90deg, rgba(151,6,7,.35), rgba(73,10,19,.5));
  border-color: var(--gold-aged);
}
.diagnostic__check{
  flex-shrink:0;
  width: 22px; height: 22px;
  border: 1px solid rgba(201,165,92,.5);
  display:grid; place-items:center;
  margin-top: 1px;
  transition: background .3s ease, border-color .3s ease;
}
.diagnostic__check svg{
  width: 14px; height: 14px;
  color: var(--gold);
  opacity: 0;
  transition: opacity .25s ease;
}
.diagnostic__item.is-checked .diagnostic__check{
  background: var(--gold);
  border-color: var(--gold);
}
.diagnostic__item.is-checked .diagnostic__check svg{
  opacity: 1;
  color: var(--wine-darkest);
}
.diagnostic__label{
  font-family: var(--f-serif);
  font-size: 17px;
  line-height: 1.4;
  color: rgba(243,232,210,.85);
}
.diagnostic__result{
  text-align:center;
  padding: 30px;
  margin: 0 0 40px;
  border-top: 1px solid rgba(201,165,92,.25);
  border-bottom: 1px solid rgba(201,165,92,.25);
  min-height: 80px;
  display:flex; flex-direction:column; justify-content:center;
}
.diagnostic__result-eyebrow{
  font-family: var(--f-deco);
  font-size: 11px;
  letter-spacing: .5em;
  color: var(--gold);
  margin-bottom: 14px;
}
.diagnostic__result-text{
  font-family: var(--f-display);
  font-style: italic;
  font-size: 24px;
  color: var(--ivory);
  line-height: 1.4;
  transition: opacity .4s ease;
}
.diagnostic__result-text em{ color: var(--gold); }
.diagnostic__cta{
  text-align:center;
}

/* =====================================================================
   MENTORIA section
   ===================================================================== */
.mentoria{
  background:
    radial-gradient(ellipse at 80% 50%, rgba(73,10,19,.4), transparent 60%),
    linear-gradient(180deg, rgba(10,3,4,.55), rgba(22,5,7,.65));
  position: relative;
}
.mentoria__head{
  text-align:center;
  max-width: 820px;
  margin: 0 auto 70px;
}
.mentoria__pillars{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-bottom: 70px;
}
.pillar{
  text-align:center;
  padding: 50px 36px;
  background: linear-gradient(180deg, rgba(26,6,8,.5), transparent);
  border-top: 1px solid rgba(201,165,92,.3);
  position: relative;
}
.pillar__num{
  font-family: var(--f-display);
  font-style: italic;
  font-size: 64px;
  color: var(--gold);
  line-height: 1;
  margin-bottom: 24px;
  display:block;
}
.pillar__title{
  font-family: var(--f-display);
  font-size: 30px;
  color: var(--ivory);
  margin-bottom: 18px;
}
.pillar__body{
  font-family: var(--f-serif);
  font-size: 16px;
  line-height: 1.6;
  color: rgba(243,232,210,.72);
}

.mentoria__includes{
  max-width: 760px;
  margin: 0 auto;
  text-align:center;
}
.mentoria__list{
  list-style:none;
  margin: 40px 0 50px;
  display:flex; flex-direction:column;
  gap: 18px;
  text-align:left;
}
.mentoria__list li{
  display:flex; align-items:flex-start; gap: 18px;
  font-family: var(--f-serif);
  font-size: 18px;
  color: rgba(243,232,210,.85);
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(201,165,92,.15);
}
.mentoria__list li::before{
  content:"";
  flex-shrink:0;
  width: 8px; height: 8px;
  background: var(--gold);
  margin-top: 12px;
  transform: rotate(45deg);
  box-shadow: 0 0 8px rgba(201,165,92,.6);
}
.mentoria__list em{
  font-style: italic;
  color: var(--gold);
  font-family: var(--f-serif);
}

.mentoria__cta{
  text-align:center;
  margin-top: 50px;
}

/* Inline CTA banner — appears between sections */
.cta-banner{
  padding: 80px 48px;
  text-align:center;
  background:
    radial-gradient(ellipse at center, rgba(151,6,7,.45), transparent 55%),
    linear-gradient(180deg, rgba(22,5,7,.65), rgba(10,3,4,.6));
  position: relative;
  overflow:hidden;
}
.cta-banner__inner{
  max-width: 820px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.cta-banner__title{
  font-family: var(--f-display);
  font-size: clamp(28px, 3.4vw, 44px);
  line-height: 1.25;
  color: var(--ivory);
  margin-bottom: 16px;
}
.cta-banner__title em{
  font-family: var(--f-serif);
  font-style: italic;
  color: var(--gold);
}
.cta-banner__sub{
  font-family: var(--f-serif);
  font-style: italic;
  font-size: 18px;
  color: rgba(243,232,210,.75);
  margin-bottom: 36px;
}

/* =====================================================================
   PHASE — Rose icon on top
   ===================================================================== */
.phase__rose{
  width: 70px;
  height: 70px;
  margin: 0 auto 30px;
  color: var(--gold);
  display:block;
  filter: drop-shadow(0 0 18px rgba(201,165,92,.4));
}

/* =====================================================================
   ALTAR MEDALLION (replaces candles)
   ===================================================================== */
.altar-medallion{
  position: relative;
  width: 280px;
  height: 280px;
  margin: 80px auto 0;
  z-index: 3;
}
.altar-medallion svg{
  width: 100%; height:100%;
  color: var(--gold);
  filter: drop-shadow(0 0 40px rgba(201,165,92,.45));
  animation: rotateSlow 80s linear infinite;
}
.altar-medallion::before{
  content:"";
  position: absolute; inset: -15%;
  background: radial-gradient(circle, rgba(151,6,7,.4), transparent 70%);
  filter: blur(30px);
  z-index: -1;
}

/* =====================================================================
   TRANSMUTE — restructured layout (no overlap)
   ===================================================================== */
.transmute__pin{
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto 1fr auto;
  padding: 60px 0 50px;
  gap: 30px;
}
.transmute__header{
  position: relative;
  top: auto; left: auto;
  transform: none;
  text-align: center;
  z-index: 5;
  max-width: 760px;
  padding: 0 24px;
  margin: 0 auto;
}
.transmute__viewport{
  overflow: hidden;
  display:flex; align-items:center;
  position: relative;
}
.transmute__track{
  padding: 0 12vw;
}
.transmute__progress{
  position: relative;
  bottom: auto; left: auto;
  transform: none;
  margin: 0 auto;
  padding-top: 30px;
}
.portrait{
  position: relative;
  width: 100%;
  display: block;
  aspect-ratio: 3/4;
  background:
    linear-gradient(160deg, rgba(151,6,7,.18), rgba(26,6,8,.6));
  border: 1px solid rgba(201,165,92,.35);
  overflow: hidden;
  isolation: isolate;
}
.portrait__img{
  position: absolute;
  inset: 24px;
  background-size: cover;
  background-position: center 18%;
  filter: contrast(1.05) saturate(.9) brightness(.92) sepia(.18);
  z-index: 1;
}
.portrait__img::after{
  content:"";
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at 50% 30%, transparent 30%, rgba(15,4,6,.7) 95%),
    linear-gradient(180deg, transparent 50%, rgba(73,10,19,.55) 100%);
  pointer-events:none;
}
.portrait__frame{
  position: absolute; inset: 0;
  z-index: 2;
  pointer-events:none;
  color: var(--gold);
}
.portrait__frame svg{ width: 100%; height:100%; display:block; }
.portrait__plate{
  position: absolute;
  bottom: 26px; left: 50%;
  transform: translateX(-50%);
  font-family: var(--f-deco);
  font-size: 10px;
  letter-spacing: .55em;
  text-transform: uppercase;
  color: var(--gold);
  background: rgba(10,3,5,.7);
  padding: 8px 18px;
  border: 1px solid rgba(201,165,92,.4);
  z-index: 3;
}

/* =====================================================================
   GOLD ORNAMENT CORNERS (art nouveau / filigree)
   ===================================================================== */
.ornament-frame{
  position: absolute;
  inset: 28px;
  pointer-events:none;
  z-index: 4;
  color: var(--gold);
}
.ornament-frame__corner{
  position: absolute;
  width: 160px;
  height: 160px;
  opacity: .85;
  filter: drop-shadow(0 0 14px rgba(201,165,92,.25));
}
.ornament-frame__corner--tl{ top: 0; left: 0; }
.ornament-frame__corner--tr{ top: 0; right: 0; transform: scaleX(-1); }
.ornament-frame__corner--bl{ bottom: 0; left: 0; transform: scaleY(-1); }
.ornament-frame__corner--br{ bottom: 0; right: 0; transform: scale(-1,-1); }

/* Decorative single rose accents (drift in margins) */
.rose-accent{
  position: absolute;
  color: var(--blood);
  pointer-events:none;
  opacity: .35;
  filter: drop-shadow(0 0 24px rgba(151,6,7,.7));
  z-index: 1;
}

/* =====================================================================
   CANDLES (animated flame)
   ===================================================================== */
.candle-group{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap: 28px;
  margin-top: 60px;
  position: relative;
  z-index: 3;
}
.candle{
  position: relative;
  display:flex; flex-direction:column; align-items:center;
}
.candle--tall   { --h: 130px; --w: 26px; }
.candle--medium { --h:  95px; --w: 30px; }
.candle--short  { --h:  70px; --w: 34px; }

.candle__flame{
  position: relative;
  width: 14px;
  height: 30px;
  margin-bottom: -4px;
  background: radial-gradient(ellipse at 50% 80%,
    rgba(255,235,170,1) 0%,
    rgba(255,180,80,.95) 28%,
    rgba(255,90,30,.85) 55%,
    rgba(151,6,7,.6) 80%,
    transparent 100%);
  border-radius: 50% 50% 35% 35% / 70% 70% 40% 40%;
  filter: blur(.4px);
  transform-origin: 50% 100%;
  animation: flameDance 1.4s ease-in-out infinite alternate;
  z-index: 2;
}
.candle__flame::before{
  content:"";
  position:absolute;
  inset: 30% 30% 5% 30%;
  background: radial-gradient(ellipse at 50% 70%,
    rgba(80,40,140,.6) 0%, transparent 70%);
  border-radius: 50%;
}
.candle__glow{
  position: absolute;
  bottom: calc(var(--h) - 10px);
  left: 50%;
  transform: translateX(-50%);
  width: 130px; height: 130px;
  background: radial-gradient(circle, rgba(255,170,80,.45) 0%, rgba(151,6,7,.18) 35%, transparent 70%);
  border-radius: 50%;
  filter: blur(20px);
  pointer-events:none;
  animation: flameGlow 1.8s ease-in-out infinite alternate;
  z-index: 0;
}
.candle__wick{
  width: 1.5px; height: 8px;
  background: #1a0306;
  margin-bottom: -2px;
}
.candle__body{
  width: var(--w);
  height: var(--h);
  background:
    linear-gradient(180deg, #f3e8d2 0%, #e8d5a8 30%, #c9a55c 100%);
  border-radius: 2px 2px 4px 4px;
  position: relative;
  box-shadow:
    inset -4px 0 8px rgba(73,10,19,.35),
    inset 4px 0 8px rgba(255,235,170,.2),
    0 8px 18px rgba(0,0,0,.55);
}
.candle__body::before{
  /* wax drip on side */
  content:"";
  position: absolute;
  top: 8px; left: -2px;
  width: 6px; height: 30%;
  background: linear-gradient(180deg, #e8d5a8, transparent);
  border-radius: 4px;
  opacity: .7;
}
.candle__body::after{
  /* top wax pool */
  content:"";
  position: absolute;
  top: -3px; left: 0; right: 0;
  height: 6px;
  background: radial-gradient(ellipse at center, #f3e8d2 0%, #c9a55c 100%);
  border-radius: 50%;
}
@keyframes flameDance{
  0%   { transform: scale(1,1) skewX(-2deg); opacity: .98; }
  25%  { transform: scale(1.08, 1.12) skewX(3deg); opacity: 1; }
  50%  { transform: scale(.94, .96) skewX(-3deg); opacity: .92; }
  75%  { transform: scale(1.04, 1.08) skewX(2deg); opacity: 1; }
  100% { transform: scale(1, 1.02) skewX(-1deg); opacity: .97; }
}
@keyframes flameGlow{
  from { opacity: .6; transform: translateX(-50%) scale(.95); }
  to   { opacity: 1;  transform: translateX(-50%) scale(1.06); }
}

/* =====================================================================
   PINNED CARDS — horizontal scroll-locked section
   ===================================================================== */
.transmute{
  position: relative;
  height: 600vh; /* spacer — must equal cards * 100vh-ish */
  background: linear-gradient(180deg, rgba(13,3,5,.4) 0%, rgba(22,5,7,.7) 50%, rgba(13,3,5,.4) 100%);
}
.transmute__progress-dot{
  width: 10px; height:10px;
  border-radius:50%;
  border: 1px solid rgba(201,165,92,.5);
  transition: background .4s ease, transform .4s ease;
  background: transparent;
}
.transmute__progress-dot.is-active{
  background: var(--gold);
  transform: scale(1.4);
  box-shadow: 0 0 12px rgba(201,165,92,.7);
}
.transmute__progress-label{
  font-family: var(--f-deco);
  font-size: 10px;
  letter-spacing: .4em;
  color: var(--gold);
  text-transform: uppercase;
  margin-right: 22px;
}
.transmute__track{
  display: flex;
  height: 100%;
  align-items: center;
  padding: 0 12vw;
  gap: 60px;
  will-change: transform;
  transition: transform .15s linear;
}
.tcard{
  flex: 0 0 auto;
  width: 380px;
  height: min(540px, 70vh);
  background:
    linear-gradient(180deg, rgba(151,6,7,.18) 0%, rgba(26,6,8,.7) 100%);
  border: 1px solid rgba(201,165,92,.3);
  padding: 44px 36px;
  position: relative;
  display:flex; flex-direction:column;
  justify-content:space-between;
  isolation: isolate;
  overflow: hidden;

  /* Scroll-driven reveal */
  opacity: 0;
  transform: translateY(40px) scale(.96);
  transition: opacity .8s cubic-bezier(.16,.84,.3,1), transform .8s cubic-bezier(.16,.84,.3,1);
}
.tcard.is-revealed{
  opacity: 1;
  transform: translateY(0) scale(1);
}
.tcard::before{
  content:"";
  position: absolute; inset: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iNjAwIiB2aWV3Qm94PSIwIDAgNjAwIDYwMCI+CiAgPGRlZnM+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9ImJnIiBjeD0iNTAlIiBjeT0iNTAlIiByPSI3MCUiPgogICAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMmEwNjA4Ij48L3N0b3A+CiAgICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzBhMDIwNCI+PC9zdG9wPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICA8L2RlZnM+CiAgPHJlY3Qgd2lkdGg9IjYwMCIgaGVpZ2h0PSI2MDAiIGZpbGw9InVybCgjYmcpIj48L3JlY3Q+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMwMCAzMDApIiBvcGFjaXR5PSIwLjU1Ij4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8cGF0aCBkPSJNMCAtMTEwIEMgLTQwIC0xMDAgLTcwIC03MCAtNzAgLTMwIEMgLTcwIDEwIC00MCA0MCAwIDQwIEMgNDAgNDAgNzAgMTAgNzAgLTMwIEMgNzAgLTcwIDQwIC0xMDAgMCAtMTEwIFoiIG9wYWNpdHk9Ii41Ij48L3BhdGg+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSI2MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItNDAiIGN5PSItMTUiIHJ4PSIyMiIgcnk9IjM2IiB0cmFuc2Zvcm09InJvdGF0ZSgtMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjQwIiBjeT0iLTE1IiByeD0iMjIiIHJ5PSIzNiIgdHJhbnNmb3JtPSJyb3RhdGUoMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIzMCIgcng9IjM2IiByeT0iMjIiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMyIiBjeT0iMjIiIHJ4PSIyMCIgcnk9IjMwIiB0cmFuc2Zvcm09InJvdGF0ZSgtNTUpIiBvcGFjaXR5PSIuNyI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMzIiIGN5PSIyMiIgcng9IjIwIiByeT0iMzAiIHRyYW5zZm9ybT0icm90YXRlKDU1KSIgb3BhY2l0eT0iLjciPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjM4Ij48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSItMTIiIHJ4PSIxNCIgcnk9IjIyIiBvcGFjaXR5PSIuOSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTE0IiBjeT0iNiIgcng9IjE0IiByeT0iMjAiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNCIgY3k9IjYiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSgzMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSIxOCI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSIwIiBjeT0iLTYiIHJ4PSI2IiByeT0iMTAiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8Y2lyY2xlIHI9IjYiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj4KICAgICAgPGNpcmNsZSByPSI0MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItMTYiIGN5PSI4IiByeD0iMTQiIHJ5PSIyMCIgdHJhbnNmb3JtPSJyb3RhdGUoLTQwKSIgb3BhY2l0eT0iLjg1Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNiIgY3k9IjgiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSg0MCkiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgPC9nPgogICAgPGNpcmNsZSByPSIxNCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjUiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAwIDApIiBvcGFjaXR5PSIwLjUiPgogICAgPGcgZmlsbD0iIzJhMDYwOCI+CiAgICAgIDxjaXJjbGUgcj0iODAiPjwvY2lyY2xlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoLTMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoMzApIiBvcGFjaXR5PSIuNyIgZmlsbD0iIzFhMDMwNiI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMCIgY3k9IjI4IiByeD0iMzIiIHJ5PSIyMiIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT4KICAgIDwvZz4KICAgIDxjaXJjbGUgcj0iMTQiIGZpbGw9IiMxYTAzMDYiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSI1IiBmaWxsPSIjNGEwZDEwIj48L2NpcmNsZT4KICA8L2c+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNTAgNDUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NTAgMTUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgc3Ryb2tlPSIjMWEwMzA2IiBzdHJva2Utd2lkdGg9IjEuNSIgZmlsbD0ibm9uZSIgb3BhY2l0eT0iMC40NSI+CiAgICA8cGF0aCBkPSJNMTUwIDAgUSAyMDAgODAgMTUwIDE1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTQ1MCAwIFEgNDAwIDgwIDQ1MCAxNTAiPjwvcGF0aD4KICAgIDxwYXRoIGQ9Ik0xNTAgNjAwIFEgMjAwIDUyMCAxNTAgNDUwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNDUwIDYwMCBRIDQwMCA1MjAgNDUwIDQ1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTAgMzAwIFEgMTAwIDI1MCAyMDAgMzAwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNjAwIDMwMCBRIDUwMCAyNTAgNDAwIDMwMCI+PC9wYXRoPgogIDwvZz4KPC9zdmc+") center/cover;
  opacity: .25;
  z-index: -1;
}
.tcard::after{
  content:"";
  position: absolute; inset: 12px;
  border: 1px solid rgba(201,165,92,.22);
  pointer-events:none;
}
.tcard__num{
  font-family: var(--f-display);
  font-size: 86px;
  line-height: 1;
  color: var(--gold);
  opacity: .55;
  font-style: italic;
}
.tcard__from{
  font-family: var(--f-deco);
  font-size: 11px;
  letter-spacing: .4em;
  text-transform: uppercase;
  color: rgba(232,213,168,.55);
  margin-bottom: 8px;
}
.tcard__from-label{
  font-family: var(--f-display);
  font-size: 22px;
  color: rgba(243,232,210,.7);
  font-style: italic;
  line-height: 1.2;
  margin-bottom: 28px;
}
.tcard__divider{
  display:flex; align-items:center; gap: 14px;
  margin: 22px 0;
  color: var(--gold-aged);
}
.tcard__divider::before, .tcard__divider::after{
  content:""; flex:1; height:1px;
  background: linear-gradient(90deg, transparent, var(--gold-aged), transparent);
}
.tcard__divider span{
  font-family: var(--f-deco);
  font-size: 10px;
  letter-spacing: .5em;
}
.tcard__to{
  font-family: var(--f-deco);
  font-size: 11px;
  letter-spacing: .4em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 8px;
}
.tcard__to-label{
  font-family: var(--f-display);
  font-size: 32px;
  color: var(--ivory);
  line-height: 1.15;
}
.tcard__to-label em{
  font-family: var(--f-serif);
  font-style: italic;
  color: var(--gold);
}
.tcard__sigil{
  position: absolute;
  top: 22px; right: 22px;
  width: 36px; height: 36px;
  color: var(--gold);
  opacity: .8;
}

/* =====================================================================
   SMOKE CANVAS (finale)
   ===================================================================== */
.smoke-canvas{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
  mix-blend-mode: screen;
  opacity: .85;
}

/* =====================================================================
   FALLING ROSE PETALS (page-wide, very subtle)
   ===================================================================== */
.petals-canvas{
  position: fixed;
  inset: 0;
  z-index: -5;
  pointer-events: none;
}

/* =====================================================================
   ALTAR (finale base)
   ===================================================================== */
.altar{
  position: relative;
  z-index: 3;
  margin-top: 80px;
  padding-bottom: 40px;
}
.altar__plate{
  position: relative;
  width: 320px;
  margin: -10px auto 0;
  height: 14px;
  background: radial-gradient(ellipse at center, rgba(201,165,92,.6) 0%, rgba(73,10,19,.4) 50%, transparent 80%);
  border-radius: 50%;
  filter: blur(4px);
}

/* =====================================================================
   HERO additions — rose accents
   ===================================================================== */
.hero__rose{
  position:absolute;
  width: 280px;
  opacity: .35;
  pointer-events:none;
  filter: drop-shadow(0 0 40px rgba(151,6,7,.7));
  z-index: -1;
}
.hero__rose--l{ left: -60px; bottom: 8vh; transform: rotate(-22deg); display:block; }
.hero__rose--r{ right: -60px; top: 14vh; transform: rotate(28deg); display:block; }

/* Responsive: pinned cards */
@media (max-width: 960px){
  .transmute{ height: auto; }
  .transmute__pin{
    position: relative;
    height: auto;
    padding: 80px 0;
  }
  .transmute__header{
    position: relative;
    top: auto; left: auto; transform: none;
    margin-bottom: 40px;
  }
  .transmute__progress{ display:none; }
  .transmute__track{
    flex-direction:column;
    align-items:center;
    gap: 40px;
    padding: 0 22px;
    transform: none !important;
    transition: none;
  }
  .tcard{
    width: 100%;
    max-width: 360px;
    height: auto;
    padding: 40px 30px;
  }
  .tcard__num{ font-size: 80px; }
  .tcard__from-label{ font-size: 22px; margin-bottom: 22px; }
  .tcard__to-label{ font-size: 30px; }

  .candle-group{ gap: 14px; transform: scale(.85); transform-origin: center bottom; }
  .ornament-frame__corner{ width: 90px; height: 90px; }
  .hero__rose{ display:none; }
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    transition-duration:.2s !important;
  }
}

/* ================================================================
   METHOD CARDS
   ================================================================ */
.method__header,.method__body{display:none!important;}
.method__section-eyebrow{text-align:center;margin-bottom:50px;}
.method__intro-card{display:grid;grid-template-columns:1fr 1.65fr;gap:64px;align-items:center;background:linear-gradient(150deg,rgba(151,6,7,.14),rgba(26,6,8,.82));border:1px solid rgba(201,165,92,.28);padding:60px 56px;position:relative;isolation:isolate;margin-bottom:32px;overflow:hidden;}
.method__intro-card::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iNjAwIiB2aWV3Qm94PSIwIDAgNjAwIDYwMCI+CiAgPGRlZnM+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9ImJnIiBjeD0iNTAlIiBjeT0iNTAlIiByPSI3MCUiPgogICAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMmEwNjA4Ij48L3N0b3A+CiAgICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzBhMDIwNCI+PC9zdG9wPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICA8L2RlZnM+CiAgPHJlY3Qgd2lkdGg9IjYwMCIgaGVpZ2h0PSI2MDAiIGZpbGw9InVybCgjYmcpIj48L3JlY3Q+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMwMCAzMDApIiBvcGFjaXR5PSIwLjU1Ij4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8cGF0aCBkPSJNMCAtMTEwIEMgLTQwIC0xMDAgLTcwIC03MCAtNzAgLTMwIEMgLTcwIDEwIC00MCA0MCAwIDQwIEMgNDAgNDAgNzAgMTAgNzAgLTMwIEMgNzAgLTcwIDQwIC0xMDAgMCAtMTEwIFoiIG9wYWNpdHk9Ii41Ij48L3BhdGg+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSI2MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItNDAiIGN5PSItMTUiIHJ4PSIyMiIgcnk9IjM2IiB0cmFuc2Zvcm09InJvdGF0ZSgtMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjQwIiBjeT0iLTE1IiByeD0iMjIiIHJ5PSIzNiIgdHJhbnNmb3JtPSJyb3RhdGUoMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIzMCIgcng9IjM2IiByeT0iMjIiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMyIiBjeT0iMjIiIHJ4PSIyMCIgcnk9IjMwIiB0cmFuc2Zvcm09InJvdGF0ZSgtNTUpIiBvcGFjaXR5PSIuNyI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMzIiIGN5PSIyMiIgcng9IjIwIiByeT0iMzAiIHRyYW5zZm9ybT0icm90YXRlKDU1KSIgb3BhY2l0eT0iLjciPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjM4Ij48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSItMTIiIHJ4PSIxNCIgcnk9IjIyIiBvcGFjaXR5PSIuOSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTE0IiBjeT0iNiIgcng9IjE0IiByeT0iMjAiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNCIgY3k9IjYiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSgzMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSIxOCI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSIwIiBjeT0iLTYiIHJ4PSI2IiByeT0iMTAiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8Y2lyY2xlIHI9IjYiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj4KICAgICAgPGNpcmNsZSByPSI0MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItMTYiIGN5PSI4IiByeD0iMTQiIHJ5PSIyMCIgdHJhbnNmb3JtPSJyb3RhdGUoLTQwKSIgb3BhY2l0eT0iLjg1Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNiIgY3k9IjgiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSg0MCkiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgPC9nPgogICAgPGNpcmNsZSByPSIxNCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjUiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAwIDApIiBvcGFjaXR5PSIwLjUiPgogICAgPGcgZmlsbD0iIzJhMDYwOCI+CiAgICAgIDxjaXJjbGUgcj0iODAiPjwvY2lyY2xlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoLTMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoMzApIiBvcGFjaXR5PSIuNyIgZmlsbD0iIzFhMDMwNiI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMCIgY3k9IjI4IiByeD0iMzIiIHJ5PSIyMiIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT4KICAgIDwvZz4KICAgIDxjaXJjbGUgcj0iMTQiIGZpbGw9IiMxYTAzMDYiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSI1IiBmaWxsPSIjNGEwZDEwIj48L2NpcmNsZT4KICA8L2c+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNTAgNDUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NTAgMTUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgc3Ryb2tlPSIjMWEwMzA2IiBzdHJva2Utd2lkdGg9IjEuNSIgZmlsbD0ibm9uZSIgb3BhY2l0eT0iMC40NSI+CiAgICA8cGF0aCBkPSJNMTUwIDAgUSAyMDAgODAgMTUwIDE1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTQ1MCAwIFEgNDAwIDgwIDQ1MCAxNTAiPjwvcGF0aD4KICAgIDxwYXRoIGQ9Ik0xNTAgNjAwIFEgMjAwIDUyMCAxNTAgNDUwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNDUwIDYwMCBRIDQwMCA1MjAgNDUwIDQ1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTAgMzAwIFEgMTAwIDI1MCAyMDAgMzAwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNjAwIDMwMCBRIDUwMCAyNTAgNDAwIDMwMCI+PC9wYXRoPgogIDwvZz4KPC9zdmc+") center/110% no-repeat;opacity:.18;z-index:-1;}
.method__intro-card::after{content:"";position:absolute;inset:12px;border:1px solid rgba(201,165,92,.14);pointer-events:none;}
.method__intro-visual{display:flex;align-items:center;justify-content:center;}
.method__intro-sigil{position:relative;width:100%;max-width:300px;aspect-ratio:1/1;display:grid;place-items:center;}
.method__intro-sigil svg{width:100%;height:auto;color:var(--gold);filter:drop-shadow(0 0 24px rgba(201,165,92,.35));animation:rotateSlow 70s linear infinite;}
.method__intro-sigil-name{position:absolute;font-family:var(--f-display);font-size:clamp(48px,5vw,72px);color:var(--ivory);letter-spacing:.05em;text-shadow:0 0 30px rgba(201,165,92,.3),0 0 60px rgba(151,6,7,.4);pointer-events:none;}
.method__intro-content .h-section{margin-bottom:22px;}
.method__intro-content .lead{margin-bottom:28px;}
.method__intro-body p{font-family:var(--f-serif);font-size:18px;line-height:1.72;color:rgba(243,232,210,.75);font-weight:300;}
.method__intro-body p+p{margin-top:14px;}
.method__cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.mcard{background:linear-gradient(165deg,rgba(151,6,7,.13),rgba(26,6,8,.78));border:1px solid rgba(201,165,92,.24);padding:42px 30px 34px;position:relative;display:flex;flex-direction:column;gap:16px;isolation:isolate;overflow:hidden;transition:border-color .42s,transform .42s,box-shadow .42s;}
.mcard::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(151,6,7,.3),transparent 65%);opacity:0;transition:opacity .42s;z-index:-1;}
.mcard::after{content:"";position:absolute;inset:10px;border:1px solid rgba(201,165,92,.11);pointer-events:none;}
.mcard:hover{border-color:rgba(201,165,92,.5);transform:translateY(-4px);box-shadow:0 0 40px rgba(201,165,92,.1),0 20px 50px rgba(0,0,0,.5);}
.mcard:hover::before{opacity:1;}
.mcard__num{font-family:var(--f-display);font-size:50px;color:var(--gold);opacity:.3;line-height:1;font-style:italic;}
.mcard__icon{width:44px;height:44px;color:var(--gold);display:block;filter:drop-shadow(0 0 10px rgba(201,165,92,.35));}
.mcard__title{font-family:var(--f-display);font-size:24px;color:var(--ivory);line-height:1.2;}
.mcard__body{font-family:var(--f-serif);font-size:14.5px;line-height:1.68;color:rgba(243,232,210,.66);font-weight:300;}

/* ================================================================
   TCARD FLIP 3D
   ================================================================ */
.tcard{perspective:1300px;background:none!important;border:none!important;padding:0!important;overflow:visible!important;opacity:1!important;transform:none!important;transition:none!important;box-shadow:none!important;display:block!important;}
.tcard::before,.tcard::after{content:none!important;}
.tcard.is-revealed{border-color:transparent!important;box-shadow:none!important;transform:none!important;opacity:1!important;}
.tcard__inner{position:relative;width:100%;height:min(540px,70vh);transform-style:preserve-3d;transform:rotateY(180deg);transition:transform .95s cubic-bezier(.4,.2,.2,1);}
.tcard.is-revealed .tcard__inner{transform:rotateY(0deg);}
.tcard__front,.tcard__back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid rgba(201,165,92,.3);overflow:hidden;isolation:isolate;}
.tcard__front{background:linear-gradient(180deg,rgba(151,6,7,.18),rgba(26,6,8,.7));padding:44px 36px;display:flex;flex-direction:column;justify-content:space-between;position:relative;}
.tcard__front::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iNjAwIiB2aWV3Qm94PSIwIDAgNjAwIDYwMCI+CiAgPGRlZnM+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9ImJnIiBjeD0iNTAlIiBjeT0iNTAlIiByPSI3MCUiPgogICAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMmEwNjA4Ij48L3N0b3A+CiAgICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzBhMDIwNCI+PC9zdG9wPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICA8L2RlZnM+CiAgPHJlY3Qgd2lkdGg9IjYwMCIgaGVpZ2h0PSI2MDAiIGZpbGw9InVybCgjYmcpIj48L3JlY3Q+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMwMCAzMDApIiBvcGFjaXR5PSIwLjU1Ij4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8cGF0aCBkPSJNMCAtMTEwIEMgLTQwIC0xMDAgLTcwIC03MCAtNzAgLTMwIEMgLTcwIDEwIC00MCA0MCAwIDQwIEMgNDAgNDAgNzAgMTAgNzAgLTMwIEMgNzAgLTcwIDQwIC0xMDAgMCAtMTEwIFoiIG9wYWNpdHk9Ii41Ij48L3BhdGg+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSI2MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItNDAiIGN5PSItMTUiIHJ4PSIyMiIgcnk9IjM2IiB0cmFuc2Zvcm09InJvdGF0ZSgtMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjQwIiBjeT0iLTE1IiByeD0iMjIiIHJ5PSIzNiIgdHJhbnNmb3JtPSJyb3RhdGUoMjUpIiBvcGFjaXR5PSIuODUiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIzMCIgcng9IjM2IiByeT0iMjIiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMyIiBjeT0iMjIiIHJ4PSIyMCIgcnk9IjMwIiB0cmFuc2Zvcm09InJvdGF0ZSgtNTUpIiBvcGFjaXR5PSIuNyI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMzIiIGN5PSIyMiIgcng9IjIwIiByeT0iMzAiIHRyYW5zZm9ybT0icm90YXRlKDU1KSIgb3BhY2l0eT0iLjciPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjM4Ij48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSItMTIiIHJ4PSIxNCIgcnk9IjIyIiBvcGFjaXR5PSIuOSI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iLTE0IiBjeT0iNiIgcng9IjE0IiByeT0iMjAiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNCIgY3k9IjYiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSgzMCkiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjMWEwMzA2Ij4KICAgICAgPGNpcmNsZSByPSIxOCI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSIwIiBjeT0iLTYiIHJ4PSI2IiByeT0iMTAiIG9wYWNpdHk9Ii45Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8Y2lyY2xlIHI9IjYiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj4KICAgICAgPGNpcmNsZSByPSI0MiI+PC9jaXJjbGU+CiAgICAgIDxlbGxpcHNlIGN4PSItMTYiIGN5PSI4IiByeD0iMTQiIHJ5PSIyMCIgdHJhbnNmb3JtPSJyb3RhdGUoLTQwKSIgb3BhY2l0eT0iLjg1Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIxNiIgY3k9IjgiIHJ4PSIxNCIgcnk9IjIwIiB0cmFuc2Zvcm09InJvdGF0ZSg0MCkiIG9wYWNpdHk9Ii44NSI+PC9lbGxpcHNlPgogICAgPC9nPgogICAgPGNpcmNsZSByPSIxNCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjUiIGZpbGw9IiM0YTBkMTAiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNjAwIDApIiBvcGFjaXR5PSIwLjUiPgogICAgPGcgZmlsbD0iIzJhMDYwOCI+CiAgICAgIDxjaXJjbGUgcj0iODAiPjwvY2lyY2xlPgogICAgICA8ZWxsaXBzZSBjeD0iLTMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoLTMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjMwIiBjeT0iLTEwIiByeD0iMjIiIHJ5PSIzMiIgdHJhbnNmb3JtPSJyb3RhdGUoMzApIiBvcGFjaXR5PSIuNyIgZmlsbD0iIzFhMDMwNiI+PC9lbGxpcHNlPgogICAgICA8ZWxsaXBzZSBjeD0iMCIgY3k9IjI4IiByeD0iMzIiIHJ5PSIyMiIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgIDwvZz4KICAgIDxnIGZpbGw9IiMzYTBhMGMiPgogICAgICA8Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT4KICAgIDwvZz4KICAgIDxjaXJjbGUgcj0iMTQiIGZpbGw9IiMxYTAzMDYiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSI1IiBmaWxsPSIjNGEwZDEwIj48L2NpcmNsZT4KICA8L2c+CgogIAogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MDAgNjAwKSIgb3BhY2l0eT0iMC41Ij4KICAgIDxnIGZpbGw9IiMyYTA2MDgiPgogICAgICA8Y2lyY2xlIHI9IjgwIj48L2NpcmNsZT4KICAgICAgPGVsbGlwc2UgY3g9Ii0zMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKC0zMCkiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICAgIDxlbGxpcHNlIGN4PSIzMCIgY3k9Ii0xMCIgcng9IjIyIiByeT0iMzIiIHRyYW5zZm9ybT0icm90YXRlKDMwKSIgb3BhY2l0eT0iLjciIGZpbGw9IiMxYTAzMDYiPjwvZWxsaXBzZT4KICAgICAgPGVsbGlwc2UgY3g9IjAiIGN5PSIyOCIgcng9IjMyIiByeT0iMjIiIG9wYWNpdHk9Ii43IiBmaWxsPSIjMWEwMzA2Ij48L2VsbGlwc2U+CiAgICA8L2c+CiAgICA8ZyBmaWxsPSIjM2EwYTBjIj48Y2lyY2xlIHI9IjQyIj48L2NpcmNsZT48L2c+CiAgICA8Y2lyY2xlIHI9IjE0IiBmaWxsPSIjMWEwMzA2Ij48L2NpcmNsZT4KICAgIDxjaXJjbGUgcj0iNSIgZmlsbD0iIzRhMGQxMCI+PC9jaXJjbGU+CiAgPC9nPgoKICAKICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNTAgNDUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NTAgMTUwKSIgb3BhY2l0eT0iMC40Ij4KICAgIDxjaXJjbGUgcj0iMzAiIGZpbGw9IiMyYTA2MDgiPjwvY2lyY2xlPgogICAgPGNpcmNsZSByPSIxOCIgZmlsbD0iIzFhMDMwNiI+PC9jaXJjbGU+CiAgICA8Y2lyY2xlIHI9IjgiIGZpbGw9IiMzYTBhMGMiPjwvY2lyY2xlPgogIDwvZz4KCiAgCiAgPGcgc3Ryb2tlPSIjMWEwMzA2IiBzdHJva2Utd2lkdGg9IjEuNSIgZmlsbD0ibm9uZSIgb3BhY2l0eT0iMC40NSI+CiAgICA8cGF0aCBkPSJNMTUwIDAgUSAyMDAgODAgMTUwIDE1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTQ1MCAwIFEgNDAwIDgwIDQ1MCAxNTAiPjwvcGF0aD4KICAgIDxwYXRoIGQ9Ik0xNTAgNjAwIFEgMjAwIDUyMCAxNTAgNDUwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNDUwIDYwMCBRIDQwMCA1MjAgNDUwIDQ1MCI+PC9wYXRoPgogICAgPHBhdGggZD0iTTAgMzAwIFEgMTAwIDI1MCAyMDAgMzAwIj48L3BhdGg+CiAgICA8cGF0aCBkPSJNNjAwIDMwMCBRIDUwMCAyNTAgNDAwIDMwMCI+PC9wYXRoPgogIDwvZz4KPC9zdmc+") center/cover;opacity:.25;z-index:-1;}
.tcard__front::after{content:"";position:absolute;inset:12px;border:1px solid rgba(201,165,92,.22);pointer-events:none;}
.tcard__content{display:flex;flex-direction:column;}
.tcard__back{transform:rotateY(180deg);background:linear-gradient(150deg,rgba(55,11,11,.97),rgba(12,3,5,.98));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;border-color:rgba(201,165,92,.38);}
.tcard__back::before{content:"";position:absolute;inset:12px;border:1px solid rgba(201,165,92,.2);pointer-events:none;}
.tcard__back-ornament{width:128px;height:128px;color:var(--gold);filter:drop-shadow(0 0 16px rgba(201,165,92,.4));animation:rotateSlow 28s linear infinite;}
.tcard__back-brand{font-family:var(--f-deco);font-size:11px;letter-spacing:.55em;color:var(--gold);text-transform:uppercase;text-align:center;}
.tcard__back-sub{font-family:var(--f-serif);font-style:italic;font-size:13px;letter-spacing:.28em;color:rgba(232,213,168,.45);text-align:center;}
.tcard .tcard__sigil{opacity:0;transform:scale(.3) rotate(-90deg);transition:opacity .5s ease,transform .7s cubic-bezier(.16,.84,.3,1);}
.tcard .tcard__num{opacity:0;transform:translateY(26px);transition:opacity .5s,transform .5s cubic-bezier(.16,.84,.3,1);}
.tcard .tcard__from{opacity:0;transform:translateX(-16px);transition:opacity .45s,transform .45s cubic-bezier(.16,.84,.3,1);}
.tcard .tcard__from-label{opacity:0;transform:translateX(-16px);transition:opacity .45s,transform .45s cubic-bezier(.16,.84,.3,1);}
.tcard .tcard__divider{opacity:0;transition:opacity .4s;}
.tcard .tcard__divider::before,.tcard .tcard__divider::after{transform:scaleX(0);transform-origin:center;transition:transform .55s cubic-bezier(.16,.84,.3,1);}
.tcard .tcard__to{opacity:0;transform:translateX(16px);transition:opacity .45s,transform .45s cubic-bezier(.16,.84,.3,1);}
.tcard .tcard__to-label{opacity:0;transform:translateX(16px);transition:opacity .5s,transform .5s cubic-bezier(.16,.84,.3,1);}
.tcard .tcard__desc{opacity:0;transform:translateY(10px);font-family:var(--f-serif);font-style:italic;font-size:13px;line-height:1.55;color:rgba(243,232,210,.52);margin-top:14px;padding-top:12px;border-top:1px solid rgba(201,165,92,.14);transition:opacity .45s,transform .45s;}
.tcard.is-revealed .tcard__sigil{opacity:.8;transform:scale(1) rotate(0deg);transition-delay:1.0s;}
.tcard.is-revealed .tcard__num{opacity:.55;transform:translateY(0);transition-delay:1.1s;}
.tcard.is-revealed .tcard__from{opacity:1;transform:translateX(0);transition-delay:1.22s;}
.tcard.is-revealed .tcard__from-label{opacity:1;transform:translateX(0);transition-delay:1.32s;}
.tcard.is-revealed .tcard__divider{opacity:1;transition-delay:1.42s;}
.tcard.is-revealed .tcard__divider::before{transform:scaleX(1);transition-delay:1.46s;}
.tcard.is-revealed .tcard__divider::after{transform:scaleX(1);transition-delay:1.51s;}
.tcard.is-revealed .tcard__to{opacity:1;transform:translateX(0);transition-delay:1.58s;}
.tcard.is-revealed .tcard__to-label{opacity:1;transform:translateX(0);transition-delay:1.68s;}
.tcard.is-revealed .tcard__desc{opacity:1;transform:translateY(0);transition-delay:1.78s;}

/* ================================================================
   SECTION ENTRY ANIMATIONS
   ================================================================ */
.story::before,.apometry::before,.benefits::before,.method::before,.phases::before,
.mentoria::before,.transmute::before,.cta-banner::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(201,165,92,.6),transparent);transform:scaleX(0);transform-origin:center;transition:transform 1.6s cubic-bezier(.16,.84,.3,1);z-index:10;pointer-events:none;}
section[data-entered]::before,.cta-banner[data-entered]::before{transform:scaleX(1);}
@keyframes eyebrowIn{from{letter-spacing:.12em;opacity:0;}to{letter-spacing:.5em;opacity:1;}}
section[data-entered] .eyebrow,.cta-banner[data-entered] .eyebrow,.interlude[data-entered] .eyebrow{animation:eyebrowIn .9s cubic-bezier(.16,.84,.3,1) .3s both;}
@keyframes headingWipe{from{clip-path:inset(0 100% 0 0);}to{clip-path:inset(0 0% 0 0);}}
section[data-entered] .h-section,.interlude[data-entered] .interlude__quote,.cta-banner[data-entered] .cta-banner__title,section[data-entered] .h-display{animation:headingWipe 1.3s cubic-bezier(.16,.84,.3,1) .5s both;}
@keyframes sectionGlowIn{0%{box-shadow:inset 0 0 0 rgba(151,6,7,0);}35%{box-shadow:inset 0 60px 120px rgba(151,6,7,.1);}100%{box-shadow:inset 0 0 0 rgba(151,6,7,0);}}
section[data-entered],.cta-banner[data-entered]{animation:sectionGlowIn 2.4s ease forwards;}

/* ================================================================
   HERO — VIDEO SCROLL SCRUB
   ================================================================ */

/* Outer wrapper: tall section = scrollable distance */
.hero--scrub {
  height: 100vh;
  position: relative;
  /* Remove default hero centering from the outer element */
  display: block !important;
  min-height: unset !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

/* Inner sticky pin */
.hero__sticky {
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  isolation: isolate;
}

/* Video fills sticky panel */
.hero__video {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover; object-position: center;
  z-index: 0;
  display: block;
}

/* Remove old hero__bg, flowers, scroll hint */
.hero--scrub .hero__bg,
.hero__rose-real,
.hero__scroll { display: none !important; }

/* ── Content hidden until 50 % scroll ── */
.hero--scrub .hero__inner {
  position: relative;
  z-index: 5;
  opacity: 0 !important;
  transform: translateY(22px);
  transition: opacity 1.8s cubic-bezier(.16,.84,.3,1),
              transform 1.8s cubic-bezier(.16,.84,.3,1);
  pointer-events: none !important;
  will-change: opacity, transform;
}
/* freeze split-word animations */
.hero--scrub .hero__inner:not(.content-visible) .split-word {
  transform: translateY(110%) !important;
  opacity: 0 !important;
  transition: none !important;
}
/* reveal */
.hero--scrub .hero__inner.content-visible {
  opacity: 1 !important;
  transform: translateY(0);
  pointer-events: auto !important;
}
.hero--scrub .hero__inner.content-visible .split-word {
  transform: translateY(0) !important;
  opacity: 1 !important;
  transition: transform 1.4s cubic-bezier(.16,.84,.3,1) .3s !important,
              opacity 1.6s ease .3s !important;
}
.hero--scrub .hero__inner.content-visible .split-word:nth-child(2) {
  transition-delay: .5s !important;
}

/* ── Red text glow / backdrop ── */
.hero__text-glow {
  position: absolute; inset: 0;
  /* Radial red haze centred on text */
  background:
    radial-gradient(ellipse 100% 80% at 50% 55%,
      rgba(38,5,12,.84) 0%,
      rgba(28,4,9,.70)  30%,
      rgba(16,2,6,.48)  58%,
      rgba(8,1,3,.22)   76%,
      transparent       100%);
  z-index: 3;          /* above video overlays, below text */
  opacity: 0;
  pointer-events: none;
  transition: opacity 1.4s ease;
}
.hero__text-glow.glow-on { opacity: 1; }

/* ── Video progress bar ── */
.hero__video-progress {
  position: absolute; bottom: 0; left: 0;
  height: 2px; width: 0%;
  background: linear-gradient(90deg,
    rgba(201,165,92,.2), rgba(201,165,92,1), rgba(201,165,92,.2));
  z-index: 20; pointer-events: none;
  box-shadow: 0 0 10px rgba(201,165,92,.55);
}

/* ── Red transition veil (fades in at end of video) ── */
.hero__red-veil {
  position: absolute; inset: 0;
  z-index: 40;
  /* Exact wine-red matching story section top */
  background: linear-gradient(180deg,
    #490a13 0%,
    #370b0b 60%,
    #1a0608 100%);
  opacity: 0;
  pointer-events: none;
}

/* ── Story section: starts with matching wine color → fades normally ── */
.story {
  background:
    linear-gradient(180deg, #490a13 0%, rgba(73,10,19,.3) 6%, transparent 14%),
    radial-gradient(ellipse at 80% 0%, rgba(73,10,19,.4) 0%, transparent 55%),
    radial-gradient(ellipse at 10% 80%, rgba(55,11,11,.45) 0%, transparent 60%),
    linear-gradient(180deg, rgba(13,4,5,.6) 0%, rgba(22,5,8,.7) 50%, rgba(13,4,5,.6) 100%) !important;
}

/* ================================================================
   MOBILE
   ================================================================ */
@media (max-width: 960px) {
  .hero--scrub { height: 100vh; }
  .hero__video { object-position: center top; }
  .section { text-align:center; }
  .chapter,.chapter__text { text-align:center; }
  .chapter__body { text-align:left; max-width:480px; margin:0 auto; }
  .hero__cta-row { justify-content:center!important; }
  .apometry__grid { grid-template-columns:1fr; gap:46px; text-align:center; }
  .apometry__visual { max-width:250px; margin:0 auto; aspect-ratio:1/1; }
  .benefits__grid { grid-template-columns:1fr 1fr; gap:16px; }
  .benefit { text-align:left; padding:32px 20px; }
  .method__intro-card { grid-template-columns:1fr; gap:40px; padding:44px 32px; text-align:center; }
  .method__intro-sigil { max-width:220px; margin:0 auto; }
  .method__intro-sigil-name { font-size:44px; }
  .method__intro-content { text-align:center; }
  .method__intro-body p { text-align:left; }
  .method__cards { grid-template-columns:1fr 1fr; gap:14px; }
  .mcard { text-align:left; }
  .mentoria__pillars { grid-template-columns:1fr; gap:16px; }
  .pillar { padding:34px 26px; }
  .mentoria__list { text-align:left; }
  .diagnostic__list { grid-template-columns:1fr; }
  .diagnostic__panel { padding:50px 26px; }
  .transmute__viewport { overflow:visible; }
  .transmute__track { flex-direction:column; align-items:center; gap:32px; padding:0 16px; transform:none!important; }
  .tcard { width:100%; max-width:520px; margin:0 auto; }
  .tcard__inner { height:min(520px,72vh); }
  .tcard__front { padding:36px 28px; }
  .portrait { max-width:310px; }
  .phases__intro,.phase,.transmute__header { text-align:center; }
  .finale__inner { text-align:center; }
  .eyebrow:not(.center) { display:flex; justify-content:center; }
  .eyebrow:not(.center)::after { content:""; width:50px; height:1px; background:linear-gradient(90deg,var(--gold-aged),transparent); }
}
@media (max-width: 640px) {
  .hero--scrub { height: 100vh; }
  .benefits__grid { grid-template-columns:1fr; gap:12px; }
  .method__cards { grid-template-columns:1fr; }
  .mcard { padding:34px 22px 26px; }
  .mcard__num { font-size:42px; }
  .mcard__title { font-size:21px; }
  .section { padding:80px 16px; }
  .phases { padding:88px 16px 108px; }
  .finale { padding:108px 20px 128px; }
  .interlude { padding:78px 16px; }
  .cta-banner { padding:58px 16px; }
  .tcard { max-width:100%; }
  .tcard__inner { height:500px; }
  .tcard__front { padding:32px 20px; }
  .tcard__num { font-size:54px; }
  .tcard__from-label { font-size:18px; margin-bottom:16px; }
  .tcard__to-label { font-size:24px; }
  .phase__portal { width:155px; height:155px; margin-bottom:32px; }
  .phase__numeral { font-size:40px; }
  .phase__name { font-size:28px; }
  .finale__title { font-size:clamp(26px,9vw,50px); }
  .footer__top { flex-direction:column; align-items:flex-start; gap:12px; }
  .footer__brand { font-size:22px; }
  .footer__bottom { flex-direction:column; gap:8px; }
  .interlude__quote { font-size:clamp(19px,6vw,34px); }
  .story__chapters { gap:74px; }
  .chapter__quote { font-size:clamp(19px,5.5vw,32px); }
  .chapter__body { font-size:16px; }
  .lead { font-size:17px; }
}
@media (max-width: 380px) {
  .hero__eyebrow { font-size:8px; letter-spacing:.26em; gap:8px; }
  .hero__eyebrow::before,.hero__eyebrow::after { width:18px; }
  .hero__headline { font-size:15px; }
  .nav__brand { font-size:10px; letter-spacing:.15em; gap:7px; }
  .btn--pill { padding:13px 16px; font-size:10px; letter-spacing:.15em; }
  .btn--ghost { padding:13px 18px; font-size:10px; }
  .h-section { font-size:clamp(22px,8vw,40px); }
  .transmute__track { padding:0 8px; gap:24px; }
}

/* ================================================================
   AJUSTES TIPOGRAFIA E ESPAÇAMENTO — seções abaixo do hero
   ================================================================ */
body { line-height: 1.45; }
.lead { line-height: 1.45; font-size: 20px; }
.chapter__body { line-height: 1.55; font-size: 18px; }
.chapter__body p + p { margin-top: 10px; }
.benefit__body { line-height: 1.45; font-size: 17px; }
.method__intro-body p { line-height: 1.52; font-size: 17px; }
.mcard__body { line-height: 1.48; font-size: 15.5px; }
.pillar__body { line-height: 1.42; font-size: 17px; }
.phase__desc { line-height: 1.42; font-size: 18px; }
.mentoria__list li { line-height: 1.4; font-size: 18px; }
.diagnostic__label { line-height: 1.32; font-size: 17px; }
.apometry__quote { line-height: 1.35; font-size: 22px; }
.tcard__desc { line-height: 1.45; font-size: 14px; }
.interlude__quote { line-height: 1.12; }
.finale__sub { line-height: 1.38; font-size: 21px; }
.cta-banner__sub { line-height: 1.38; font-size: 18px; }
.footer__meta { font-size: 11px; }
.footer__bottom { font-size: 11px; }
.section { padding: 110px 48px; }
.story__chapters { gap: 110px; }
.story__intro { margin-bottom: 110px; }
@media (max-width: 960px) {
  .section { padding: 80px 22px; }
  .story__chapters { gap: 80px; }
  .lead { font-size: 18px; }
  .chapter__body { font-size: 17px; }
}
@media (max-width: 640px) {
  .section { padding: 70px 16px; }
  .lead { font-size: 16px; }
  .benefit__body { font-size: 16px; }
  .mcard__body { font-size: 15px; }
}

/* CTA arrows as SVG icons, preventing emoji rendering */
.btn .arrow,
.nav__cta .arrow{
  display:inline-flex;
  width:14px;
  height:14px;
  align-items:center;
  justify-content:center;
  line-height:0;
  font-size:0;
  flex:0 0 auto;
}
.btn .arrow svg,
.nav__cta .arrow svg{
  width:14px;
  height:14px;
  display:block;
  stroke:currentColor;
}

/* ================================================================
   WORDPRESS / ELEMENTOR CHROME FIX — preserve admin bar
   Corrige o título/header nativo do WordPress/Elementor sem ocultar a barra admin.
   ================================================================ */
body.carine-home-template{
  margin:0;
  padding:0;
  overflow-x:hidden;
  background:var(--ink);
}

/* Mantém a barra de admin visível e posiciona o menu premium abaixo dela */
body.carine-home-template.admin-bar .nav{
  top:32px !important;
}
@media (max-width:782px){
  body.carine-home-template.admin-bar .nav{
    top:46px !important;
  }
}

/* Oculta apenas cabeçalho/título nativo do tema/Elementor, não a barra wpadminbar */
body.carine-home-template .site-header,
body.carine-home-template header.site-header,
body.carine-home-template .page-header,
body.carine-home-template .entry-header,
body.carine-home-template .site-branding,
body.carine-home-template .site-title,
body.carine-home-template .site-description,
body.carine-home-template .custom-logo-link,
body.carine-home-template .elementor-location-header,
body.carine-home-template .elementor-page-title,
body.carine-home-template h1.entry-title,
body.carine-home-template .entry-title{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

/* Evita que o conteúdo nativo do tema crie faixa/título antes do hero */
body.carine-home-template .site-main,
body.carine-home-template main.site-main,
body.carine-home-template .content-area{
  padding-top:0 !important;
  margin-top:0 !important;
}

/* ================================================================
   A JORNADA — ícones dourados centralizados dentro dos círculos
   ================================================================ */
.phases .phase__portal{
  display:grid;
  place-items:center;
}
.phases .phase__portal-inner{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  border-radius:50%;
  background:transparent !important;
  box-shadow:none !important;
  display:grid !important;
  place-items:center !important;
  z-index:3;
}
.phases .phase__icon{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
  width:94px;
  height:94px;
  display:grid;
  place-items:center;
  color:var(--gold);
  z-index:5;
  filter:drop-shadow(0 0 16px rgba(201,165,92,.45));
}
.phases .phase__icon svg{
  width:100%;
  height:100%;
  display:block;
  stroke:currentColor;
  fill:none;
  stroke-width:2.15;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.phases .phase__numeral{
  display:none !important;
}

/* Setas SVG — impede renderização como emoji */
.btn .arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:0;
  font-size:0;
}
.btn .arrow svg{
  width:16px;
  height:16px;
  display:block;
  stroke:currentColor;
  fill:none;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}


/* ================================================================
   AJUSTES 2026-05 — Layout, SEO visual, responsividade e conversão
   Base: versão correta com admin bar + flores douradas centralizadas
   ================================================================ */

/* Mantém a barra admin visível e posiciona o menu premium abaixo dela */
body.carine-home-template.admin-bar .nav{ top:32px !important; }
@media (max-width:782px){ body.carine-home-template.admin-bar .nav{ top:46px !important; } }

/* HERO — menor peso visual para não parecer “zoomado” em notebook */
.hero--scrub .hero__inner{
  max-width:min(860px, 88vw);
  padding:118px 28px 52px;
}
.hero__name{
  font-size:clamp(54px, 8.2vw, 126px);
  line-height:.91;
  letter-spacing:.012em;
  margin-bottom:14px;
}
.hero__eyebrow{ margin-bottom:26px; }
.hero__rule{ height:46px; margin:22px auto; }
.hero__headline{ font-size:clamp(19px, 1.75vw, 26px); line-height:1.34; }
.hero__subtitle{ margin-bottom:36px; font-size:11px; }
.hero__cta-row{ gap:20px; }
.hero--scrub .btn{ padding:16px 34px; }

@media (max-width:1440px){
  .nav{ padding-left:36px; padding-right:36px; }
  .nav__links{ gap:32px; }
  .hero--scrub .hero__inner{ max-width:800px; padding-top:108px; }
  .hero__name{ font-size:clamp(52px, 7.7vw, 112px); }
}

@media (max-width:1280px){
  body{ font-size:17px; }
  .nav{ padding:16px 32px; }
  .nav.scrolled{ padding:12px 32px; }
  .nav__brand{ font-size:12px; letter-spacing:.28em; }
  .nav__links{ gap:24px; }
  .nav__links a{ font-size:10px; letter-spacing:.26em; }
  .nav__cta{ padding:10px 20px; font-size:10px; }
  .hero--scrub .hero__inner{ max-width:740px; padding-top:96px; }
  .hero__name{ font-size:clamp(48px, 7.3vw, 96px); }
  .hero__headline{ font-size:clamp(18px, 1.65vw, 23px); }
  .hero__subtitle{ letter-spacing:.32em; }
  .btn{ letter-spacing:.26em; }
}

@media (max-height:780px) and (min-width:961px){
  .hero--scrub .hero__inner{ padding-top:84px; padding-bottom:34px; }
  .hero__eyebrow{ margin-bottom:18px; }
  .hero__name{ font-size:clamp(48px, 7vw, 88px); }
  .hero__rule{ height:34px; margin:16px auto; }
  .hero__headline{ font-size:21px; line-height:1.28; }
  .hero__subtitle{ margin-bottom:24px; }
  .hero--scrub .btn{ padding:14px 28px; }
}

@media (max-width:960px){
  .hero--scrub .hero__inner{ max-width:92vw; padding:96px 22px 44px; }
  .hero__name{ font-size:clamp(52px, 15vw, 92px); line-height:.95; }
  .hero__eyebrow{ font-size:9px; letter-spacing:.34em; gap:12px; }
  .hero__eyebrow::before,.hero__eyebrow::after{ width:30px; }
  .hero__headline{ font-size:20px; }
  .section{ padding-left:28px; padding-right:28px; }
  .h-section{ font-size:clamp(34px, 7vw, 54px); }
  .lead{ font-size:20px; line-height:1.48; }
}

@media (max-width:640px){
  .hero--scrub .hero__inner{ padding-top:86px; }
  .hero__name{ font-size:clamp(50px, 18vw, 76px); }
  .hero__subtitle{ letter-spacing:.22em; line-height:1.6; }
  .section{ padding-left:20px; padding-right:20px; }
}

/* AS TRANSFORMAÇÕES — foco uma carta por faixa de rolagem */
.transmute{
  height:620vh;
}
.transmute__pin{
  grid-template-rows:auto minmax(0, 1fr) auto;
  padding-top:54px;
  padding-bottom:44px;
}
.transmute__viewport{
  overflow:hidden;
  align-items:center;
}
.transmute__track{
  gap:clamp(34px, 4vw, 72px);
  transition:transform .72s cubic-bezier(.16,.84,.3,1);
  will-change:transform;
}
.tcard{
  width:clamp(320px, 28vw, 410px);
  opacity:.42 !important;
  transform:scale(.88) !important;
  transition:opacity .55s ease, transform .72s cubic-bezier(.16,.84,.3,1), filter .55s ease !important;
  filter:blur(.4px) saturate(.82);
}
.tcard.is-focused{
  opacity:1 !important;
  transform:scale(1) !important;
  filter:none;
  z-index:3;
}
.tcard__inner{
  transform:rotateY(180deg);
}
.tcard.is-revealed .tcard__inner,
.tcard.is-focused .tcard__inner{
  transform:rotateY(0deg);
}
.tcard:not(.is-focused) .tcard__inner{
  transform:rotateY(180deg);
}
.transmute__progress-label{
  opacity:.72;
}

@media (max-width:960px){
  .transmute{ height:auto; }
  .tcard{
    width:100%;
    max-width:380px;
    opacity:1 !important;
    transform:none !important;
    filter:none;
  }
  .tcard__inner{ transform:rotateY(0deg) !important; height:auto; min-height:500px; }
}

/* O CONVITE — medalhão/círculo como borda ao redor da frase */
.finale{
  padding-top:150px;
  padding-bottom:170px;
}
.finale__inner{
  position:relative;
  z-index:2;
  isolation:isolate;
}
.finale__title,
.finale__sub,
.finale .eyebrow,
.finale .hero__cta-row{
  position:relative;
  z-index:2;
}
.finale__title{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
}
.finale .altar-medallion{
  position:absolute;
  left:50%;
  top:43%;
  transform:translate(-50%, -50%);
  width:min(820px, 82vw);
  height:min(820px, 82vw);
  margin:0;
  opacity:.42;
  z-index:0;
  pointer-events:none;
}
.finale .altar-medallion svg{
  width:100%;
  height:100%;
  animation:rotateSlow 96s linear infinite;
  filter:drop-shadow(0 0 30px rgba(201,165,92,.22));
}
.finale .altar-medallion::before{
  inset:8%;
  opacity:.55;
}
.finale__ring{
  opacity:.18;
}
.finale__ring--2{ opacity:.12; }
.finale__ring--3{ opacity:.08; }

@media (max-width:960px){
  .finale{ padding-top:120px; padding-bottom:130px; }
  .finale .altar-medallion{ width:104vw; height:104vw; top:42%; opacity:.28; }
}

/* Hierarquia visual complementar para subtítulos H2 menores */
.h-section--minor{
  line-height:1.15;
}

/* ================================================================
   AJUSTES PONTUAIS — método, transições notebook/mobile e menu suspenso
   ================================================================ */

/* O MÉTODO — descrição em parágrafo contínuo */
.method__intro-body p:not(.method__highlight){
  max-width: 100%;
  text-align: left;
  line-height: 1.58;
}
.method__intro-body p + .method__highlight{
  margin-top: 18px;
}

/* Notebook/tablet landscape: reduz zoom visual e evita corte das cartas */
@media (min-width: 961px) and (max-width: 1366px){
  .section{ padding-top: 92px; padding-bottom: 92px; }
  .h-section{ font-size: clamp(32px, 4vw, 54px); }
  .lead{ font-size: 18px; line-height: 1.45; }

  .method__intro-card{
    gap: 42px;
    padding: 46px 42px;
  }
  .method__intro-sigil{ max-width: 230px; }
  .method__intro-sigil-name{ font-size: clamp(42px, 4vw, 58px); }
  .method__intro-body p{ font-size: 16.5px; line-height: 1.5; }

  .transmute{ height: 600vh; }
  .transmute__pin{
    padding-top: 38px;
    padding-bottom: 26px;
    gap: 18px;
  }
  .transmute__header .h-section{
    font-size: clamp(26px, 3vw, 40px) !important;
    margin-bottom: 8px !important;
  }
  .transmute__header .lead{
    font-size: 15px !important;
    line-height: 1.35;
  }
  .tcard{
    width: clamp(300px, 27vw, 360px);
  }
  .tcard__inner{
    height: min(430px, 58vh);
  }
  .tcard__front{
    padding: 30px 28px;
  }
  .tcard__num{ font-size: 64px; }
  .tcard__from,
  .tcard__to{ font-size: 10px; letter-spacing: .32em; }
  .tcard__from-label{ font-size: 20px; margin-bottom: 18px; }
  .tcard__to-label{ font-size: 27px; }
  .tcard__divider{ margin: 14px 0; }
  .tcard__desc{ font-size: 13.5px; line-height: 1.38; }
  .tcard__back-ornament{ width: 104px; height: 104px; }
}

@media (min-width: 961px) and (max-height: 760px){
  .transmute__pin{ padding-top: 28px; padding-bottom: 20px; }
  .transmute__header{ max-width: 680px; }
  .tcard__inner{ height: min(390px, 55vh); }
  .tcard__front{ padding: 26px 24px; }
  .tcard__num{ font-size: 56px; }
  .tcard__to-label{ font-size: 24px; }
  .tcard__from-label{ font-size: 18px; }
  .tcard__desc{ font-size: 13px; }
}

/* Mobile/tablet: menu suspenso, não tela cheia */
@media (max-width: 960px){
  .nav__mobile{
    position: fixed !important;
    inset: auto 16px auto 16px !important;
    top: calc(100% + 10px) !important;
    max-height: calc(100vh - 120px);
    overflow-y: auto;
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    padding: 16px 18px;
    background: linear-gradient(180deg, rgba(26,6,8,.96), rgba(10,3,5,.96));
    border: 1px solid rgba(201,165,92,.32);
    box-shadow: 0 24px 70px rgba(0,0,0,.62), inset 0 1px 0 rgba(232,213,168,.08);
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity .32s ease, transform .32s cubic-bezier(.16,.84,.3,1);
    z-index: 96;
  }
  .nav.is-open .nav__mobile{
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }
  .nav__mobile a{
    font-family: var(--f-deco) !important;
    font-size: 12px !important;
    line-height: 1.3;
    letter-spacing: .26em !important;
    text-transform: uppercase;
    color: var(--champagne) !important;
    padding: 15px 6px;
    border-bottom: 1px solid rgba(201,165,92,.14);
  }
  .nav__mobile a:last-child{ border-bottom: 0; }
  .nav__mobile a em{ font-style: normal !important; color: var(--gold); }

  body.carine-home-template.admin-bar .nav__mobile{
    top: calc(100% + 10px) !important;
  }
}

/* Mobile: cartas empilhadas, revelam no scroll, com menos altura e menos respiro */
@media (max-width: 960px){
  .transmute{
    height: auto !important;
    padding-bottom: 20px;
  }
  .transmute__pin{
    position: relative !important;
    height: auto !important;
    padding: 72px 0 48px !important;
    gap: 24px !important;
  }
  .transmute__viewport{ overflow: visible !important; }
  .transmute__track{
    flex-direction: column !important;
    align-items: center !important;
    gap: 18px !important;
    padding: 0 16px !important;
    transform: none !important;
    transition: none !important;
  }
  .tcard{
    width: 100% !important;
    max-width: 360px !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
  .tcard__inner{
    height: 430px !important;
    min-height: 0 !important;
    transform: rotateY(180deg) !important;
  }
  .tcard.is-revealed .tcard__inner{
    transform: rotateY(0deg) !important;
  }
  .tcard__front{ padding: 30px 26px !important; }
  .tcard__num{ font-size: 58px; }
  .tcard__from-label{ font-size: 19px; margin-bottom: 16px; }
  .tcard__to-label{ font-size: 27px; }
  .tcard__divider{ margin: 14px 0; }
  .tcard__desc{ font-size: 13.5px; line-height: 1.42; }
  .transmute__progress{ display: none !important; }
}

@media (max-width: 420px){
  .transmute__track{ gap: 14px !important; padding: 0 12px !important; }
  .tcard__inner{ height: 405px !important; }
  .tcard__front{ padding: 26px 22px !important; }
  .tcard__to-label{ font-size: 24px; }
  .tcard__from-label{ font-size: 18px; }
}

/* O CONVITE — círculo/medalhão como borda atrás da frase, não baixo no botão */
.finale .altar-medallion{
  top: 42% !important;
  width: min(780px, 78vw) !important;
  height: min(780px, 78vw) !important;
  opacity: .34 !important;
}
.finale__title,
.finale__sub{
  position: relative;
  z-index: 2;
}
@media (max-width: 960px){
  .finale .altar-medallion{
    top: 40% !important;
    width: 112vw !important;
    height: 112vw !important;
    opacity: .22 !important;
  }
}


/* ================================================================
   AJUSTES SOLICITADOS — romanos, método, transformações mobile/tablet
   ================================================================ */

/* Remove itálico de todos os números romanos e marcadores numéricos do site */
.phase__numeral,
.pillar__num,
.tcard__num,
.mcard__num,
.chapter__index,
.interlude__mark{
  font-style: normal !important;
}

/* O MÉTODO — parágrafo mais compacto + CTA para diagnóstico */
.method__intro-body p:not(.method__highlight){
  line-height: 1.42 !important;
  margin-bottom: 0;
}
.method__intro-body p + .method__highlight{
  margin-top: 14px !important;
  line-height: 1.22 !important;
}
.method__cta{
  margin-top: 28px;
  display:flex;
  justify-content:flex-start;
}
.method__cta .btn svg,
.mentoria__cta .btn svg{
  width: 16px;
  height: 16px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Tablet e mobile: cartas centralizadas, empilhamento vertical e menos altura total */
@media (max-width: 1100px){
  .transmute{
    height:auto !important;
    padding-bottom: 10px !important;
  }
  .transmute__pin{
    position:relative !important;
    height:auto !important;
    min-height:0 !important;
    padding: 76px 0 42px !important;
    gap: 22px !important;
  }
  .transmute__viewport{
    width:100%;
    overflow:visible !important;
    display:block !important;
  }
  .transmute__track{
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap: 16px !important;
    padding: 0 18px !important;
    transform:none !important;
    transition:none !important;
  }
  .tcard{
    width:min(100%, 420px) !important;
    max-width:420px !important;
    margin:0 auto !important;
    opacity:1 !important;
    transform:none !important;
  }
  .tcard__inner{
    height: 420px !important;
    min-height:0 !important;
    transform: rotateY(180deg) !important;
  }
  .tcard.is-revealed .tcard__inner{
    transform: rotateY(0deg) !important;
  }
  .tcard__front{
    padding: 30px 28px !important;
  }
  .tcard__num{
    font-size: 64px !important;
    line-height: .9 !important;
  }
  .tcard__from,
  .tcard__to{
    font-size: 11px !important;
    letter-spacing: .34em !important;
  }
  .tcard__from-label{
    font-size: 22px !important;
    line-height:1.12 !important;
    margin-bottom: 16px !important;
  }
  .tcard__to-label{
    font-size: 30px !important;
    line-height:1.08 !important;
  }
  .tcard__desc{
    font-size: 15px !important;
    line-height: 1.42 !important;
    margin-top: 12px !important;
  }
  .tcard__divider{ margin: 13px 0 !important; }
  .transmute__progress{ display:none !important; }
}

@media (max-width: 960px){
  .method__intro-body,
  .method__intro-body p,
  .method__intro-content .lead{
    text-align:center !important;
  }
  .method__cta{
    justify-content:center !important;
  }
  .footer__top,
  .footer__bottom{
    justify-content:center !important;
    align-items:center !important;
    text-align:center !important;
  }
  .footer__bottom{
    gap: 12px !important;
  }
}

@media (max-width: 520px){
  .transmute__track{
    gap: 12px !important;
    padding: 0 14px !important;
  }
  .tcard{
    width:min(100%, 350px) !important;
  }
  .tcard__inner{
    height: 398px !important;
  }
  .tcard__front{
    padding: 26px 22px !important;
  }
  .tcard__num{
    font-size: 58px !important;
  }
  .tcard__from-label{
    font-size: 20px !important;
  }
  .tcard__to-label{
    font-size: 27px !important;
  }
  .tcard__desc{
    font-size: 14px !important;
    line-height:1.38 !important;
  }
}

/* ================================================================
   AJUSTES SOLICITADOS — mobile/tablet + CTA técnica + cards
   ================================================================ */

/* CTA movido para a seção A TÉCNICA */
.apometry__cta{
  margin-top: 34px;
  display:flex;
  justify-content:flex-start;
}
.apometry__cta .btn svg{
  width:16px;
  height:16px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Garante que nenhum número romano fique itálico */
.phase__numeral,
.tcard__num,
.pillar__num,
.chapter__index,
.interlude__mark{
  font-style:normal !important;
}

/* Tablet/mobile — Quem conduz: imagem antes do conteúdo */
@media (max-width: 960px){
  #story .chapter{
    display:flex !important;
    flex-direction:column !important;
  }
  #story .chapter__visual{
    order:1 !important;
    width:100%;
  }
  #story .chapter__text{
    order:2 !important;
  }
  .apometry__cta{
    justify-content:center;
  }
}

/* Tablet/mobile — menu suspenso funcional logo no início da página */
@media (max-width: 960px){
  .nav{
    z-index:9998 !important;
    overflow:visible !important;
  }
  .nav__burger{
    display:flex !important;
    position:relative;
    z-index:10000 !important;
    pointer-events:auto !important;
    touch-action:manipulation;
  }
  .nav__mobile{
    z-index:9999 !important;
  }
  .nav.is-open .nav__mobile{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }
}

/* Mobile/tablet — frase do hero em linha única controlada */
@media (max-width: 960px){
  .hero__headline{
    white-space:nowrap !important;
    font-size:clamp(15px, 3.4vw, 21px) !important;
    line-height:1.45 !important;
    max-width:96vw !important;
  }
}
@media (max-width: 420px){
  .hero__headline{
    font-size:clamp(12.5px, 3.25vw, 15px) !important;
    letter-spacing:-.01em;
  }
}

/* AS TRANSFORMAÇÕES — texto mais rápido e legível em tablet/mobile */
@media (max-width: 1100px){
  .transmute__track{
    gap:8px !important;
  }
  .tcard__inner{
    transition:transform .62s cubic-bezier(.4,.2,.2,1) !important;
  }
  .tcard__from-label{
    font-style:normal !important;
    font-size:clamp(24px, 3.1vw, 30px) !important;
    line-height:1.08 !important;
    margin-bottom:14px !important;
  }
  .tcard__desc{
    font-style:normal !important;
    font-size:clamp(16px, 2.05vw, 18px) !important;
    line-height:1.42 !important;
  }
  .tcard.is-revealed .tcard__sigil{transition-delay:.28s !important;}
  .tcard.is-revealed .tcard__num{transition-delay:.32s !important;}
  .tcard.is-revealed .tcard__from{transition-delay:.38s !important;}
  .tcard.is-revealed .tcard__from-label{transition-delay:.44s !important;}
  .tcard.is-revealed .tcard__divider{transition-delay:.50s !important;}
  .tcard.is-revealed .tcard__divider::before{transition-delay:.52s !important;}
  .tcard.is-revealed .tcard__divider::after{transition-delay:.55s !important;}
  .tcard.is-revealed .tcard__to{transition-delay:.60s !important;}
  .tcard.is-revealed .tcard__to-label{transition-delay:.66s !important;}
  .tcard.is-revealed .tcard__desc{transition-delay:.74s !important;}
}

@media (max-width: 520px){
  .transmute__pin{
    padding-top:58px !important;
    padding-bottom:30px !important;
  }
  .transmute__track{
    gap:6px !important;
  }
  .tcard{
    max-width:356px !important;
  }
  .tcard__inner{
    height:408px !important;
  }
  .tcard__from-label{
    font-size:26px !important;
  }
  .tcard__desc{
    font-size:16px !important;
    line-height:1.38 !important;
  }
}


/* ================================================================
   AJUSTES — Convite, WhatsApp flutuante, topo mobile e Transformações
   ================================================================ */
.finale__cta-row{
  gap:22px;
  align-items:center;
}
.finale__cta-row .btn svg,
.floating-actions svg{
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.floating-actions{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:9997;
  display:flex;
  flex-direction:column;
  gap:12px;
  pointer-events:none;
}
.floating-whatsapp,
.floating-top{
  width:58px;
  height:58px;
  border:1px solid rgba(201,165,92,.82);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
  background:rgba(10,3,5,.48);
  backdrop-filter:blur(12px) saturate(140%);
  -webkit-backdrop-filter:blur(12px) saturate(140%);
  box-shadow:0 0 22px rgba(201,165,92,.18), 0 16px 38px rgba(0,0,0,.42);
  pointer-events:auto;
  transition:transform .35s ease, border-color .35s ease, background .35s ease;
}
.floating-whatsapp:hover,
.floating-top:hover{
  transform:translateY(-3px);
  border-color:var(--gold);
  background:rgba(73,10,19,.58);
}
.floating-whatsapp svg{width:30px;height:30px;stroke-width:1.45;}
.floating-top svg{width:25px;height:25px;}
.floating-whatsapp{
  animation:whatsappFloatJump 3.8s ease-in-out infinite;
}
@keyframes whatsappFloatJump{
  0%,100%{transform:translateY(0);}
  8%{transform:translateY(-8px);}
  14%{transform:translateY(0);}
  20%{transform:translateY(-4px);}
  26%{transform:translateY(0);}
}
.floating-top{display:none;}

/* Tablet: Transformações em 2 cartas por linha, sem trilho horizontal */
@media (min-width: 768px) and (max-width: 1100px){
  .transmute{
    height:auto !important;
  }
  .transmute__pin{
    position:relative !important;
    height:auto !important;
    padding:72px 0 72px !important;
    overflow:visible !important;
  }
  .transmute__viewport{
    overflow:visible !important;
    display:block !important;
  }
  .transmute__track{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:22px !important;
    max-width:860px !important;
    margin:0 auto !important;
    padding:0 24px !important;
    transform:none !important;
    transition:none !important;
    align-items:stretch !important;
  }
  .tcard{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }
  .tcard__inner{
    height:430px !important;
  }
  .tcard__front{
    padding:30px 26px !important;
  }
  .tcard__num{font-size:62px !important;}
  .tcard__from-label{font-size:25px !important;line-height:1.08 !important;}
  .tcard__to-label{font-size:30px !important;line-height:1.08 !important;}
  .tcard__desc{font-size:16.5px !important;line-height:1.4 !important;}
  .transmute__progress{display:none !important;}
}

/* Mobile: cards empilhados com espaço mais curto */
@media (max-width: 767px){
  .transmute__pin{
    padding-top:52px !important;
    padding-bottom:26px !important;
  }
  .transmute__header{
    margin-bottom:26px !important;
  }
  .transmute__track{
    gap:0 !important;
    row-gap:0 !important;
    padding:0 14px !important;
  }
  .tcard{
    margin:0 auto -18px !important;
  }
  .tcard:last-child{
    margin-bottom:0 !important;
  }
  .floating-actions{
    right:16px;
    bottom:16px;
    gap:10px;
  }
  .floating-whatsapp,
  .floating-top{
    width:52px;
    height:52px;
  }
  .floating-whatsapp svg{width:28px;height:28px;}
  .floating-top{display:grid;}
}

@media (max-width: 390px){
  .tcard{
    margin-bottom:-22px !important;
  }
  .tcard__inner{
    height:396px !important;
  }
}

/* ================================================================
   AJUSTES FINAIS — Transformações desktop, WhatsApp constante,
   Mentoria sem flor lateral e crédito do rodapé
   ================================================================ */
@media (min-width: 961px){
  .tcard__from-label{
    font-style: normal !important;
    font-size: 30px !important;
    line-height: 1.08 !important;
    margin-bottom: 22px !important;
  }

  .tcard__desc{
    font-size: 16.5px !important;
    line-height: 1.42 !important;
  }

  .tcard .tcard__sigil{transition-duration:.38s !important;}
  .tcard .tcard__num,
  .tcard .tcard__from,
  .tcard .tcard__from-label,
  .tcard .tcard__to,
  .tcard .tcard__to-label,
  .tcard .tcard__desc{transition-duration:.32s !important;}
  .tcard .tcard__divider{transition-duration:.28s !important;}
  .tcard .tcard__divider::before,
  .tcard .tcard__divider::after{transition-duration:.36s !important;}

  .tcard.is-revealed .tcard__sigil{transition-delay:.38s !important;}
  .tcard.is-revealed .tcard__num{transition-delay:.44s !important;}
  .tcard.is-revealed .tcard__from{transition-delay:.50s !important;}
  .tcard.is-revealed .tcard__from-label{transition-delay:.56s !important;}
  .tcard.is-revealed .tcard__divider{transition-delay:.62s !important;}
  .tcard.is-revealed .tcard__divider::before{transition-delay:.66s !important;}
  .tcard.is-revealed .tcard__divider::after{transition-delay:.70s !important;}
  .tcard.is-revealed .tcard__to{transition-delay:.76s !important;}
  .tcard.is-revealed .tcard__to-label{transition-delay:.82s !important;}
  .tcard.is-revealed .tcard__desc{transition-delay:.90s !important;}
}

.floating-whatsapp{
  animation: whatsappConstantJump 1.9s ease-in-out infinite !important;
  will-change: transform;
}
@keyframes whatsappConstantJump{
  0%,100%{ transform: translateY(0) scale(1); }
  35%{ transform: translateY(-9px) scale(1.035); }
  55%{ transform: translateY(0) scale(1); }
  72%{ transform: translateY(-4px) scale(1.015); }
}

.footer__credit{
  font-family: var(--f-deco);
  font-size: 9px;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--gold);
  transition: color .3s ease;
}
.footer__credit:hover{ color: var(--champagne); }

/* ================================================================
   UPDATE — Mobile/Tablet readability for descriptions
   Escopo: apenas telas menores, sem alterar desktop/layout
   ================================================================ */
@media (max-width: 960px){
  /* O MÉTODO — cards iniciando em “Consciência” */
  .method__cards{
    gap: 18px;
  }

  .mcard__body{
    font-size: 17.5px !important;
    line-height: 1.48 !important;
    color: rgba(243,232,210,.82) !important;
  }

  .mcard__title{
    font-size: 27px !important;
    line-height: 1.14 !important;
  }

  /* Descrições gerais que ficavam pequenas em mobile/tablet */
  .lead,
  .apometry__text .lead{
    font-size: 20px !important;
    line-height: 1.46 !important;
  }

  .chapter__body,
  .method__intro-body p,
  .benefit__body,
  .pillar__body,
  .mentoria__list li,
  .diagnostic__label,
  .phase__desc,
  .finale__sub,
  .cta-banner__sub{
    font-size: 18px !important;
    line-height: 1.46 !important;
  }

  .tcard__desc{
    font-size: 17px !important;
    line-height: 1.42 !important;
    color: rgba(243,232,210,.74) !important;
  }
}

@media (max-width: 520px){
  .mcard__body{
    font-size: 17px !important;
    line-height: 1.46 !important;
  }

  .mcard__title{
    font-size: 26px !important;
  }

  .lead,
  .apometry__text .lead{
    font-size: 19px !important;
  }

  .chapter__body,
  .method__intro-body p,
  .benefit__body,
  .pillar__body,
  .mentoria__list li,
  .diagnostic__label,
  .phase__desc,
  .finale__sub,
  .cta-banner__sub{
    font-size: 17px !important;
  }

  .tcard__desc{
    font-size: 16.5px !important;
  }
}


/* ================================================================
   UPDATE — Footer credit + hide extra Elementor/Theme footer
   Mantém a barra admin do WordPress visível.
   ================================================================ */
.footer__credit{
  color: var(--gold) !important;
}
.footer__credit:hover{
  color: var(--champagne) !important;
}

/* Oculta apenas rodapés externos do tema/Elementor renderizados após o template. */
body.carine-home-template .site-footer,
body.carine-home-template #site-footer,
body.carine-home-template #colophon,
body.carine-home-template .elementor-location-footer,
body.carine-home-template .page-footer,
body.carine-home-template footer:not(.footer):not(.nav){
  display:none !important;
  height:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  overflow:hidden !important;
}

/* ================================================================
   AJUSTE FINAL — O CONVITE tipografia refinada
   Frase menor, line-height compacto e palavras-chave em dourado.
   ================================================================ */
.finale__title{
  font-family: "Relicta", var(--f-display) !important;
  font-weight: 300 !important;
  font-size: clamp(38px, 5.2vw, 74px) !important;
  line-height: 1.02 !important;
  letter-spacing: .012em !important;
  text-transform: none !important;
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}
.finale__title em{
  font-family: inherit !important;
  font-style: normal !important;
  color: var(--gold) !important;
}
@media (max-width: 960px){
  .finale__title{
    font-size: clamp(34px, 8vw, 54px) !important;
    line-height: 1.04 !important;
    max-width: 680px;
  }
}
@media (max-width: 520px){
  .finale__title{
    font-size: clamp(30px, 9.4vw, 44px) !important;
    line-height: 1.05 !important;
  }
}

/* ================================================================
   AJUSTES PONTUAIS — 2026-05-25
   Mobile hero/hamburger + desktop WhatsApp/A Técnica
   ================================================================ */

/* Desktop: hover do botão flutuante do WhatsApp sem roxo */
@media (hover:hover) and (pointer:fine){
  .floating-whatsapp:hover{
    color:#fff !important;
    border-color:#fff !important;
    background:rgba(255,255,255,.08) !important;
    box-shadow:0 0 26px rgba(255,255,255,.18), 0 16px 38px rgba(0,0,0,.42) !important;
  }
}

/* Desktop: seção A TÉCNICA mais compacta */
@media (min-width:961px){
  .apometry{
    padding-top:118px !important;
    padding-bottom:118px !important;
  }
  .apometry__text .h-section{
    font-size:clamp(32px, 3.55vw, 54px) !important;
    line-height:1.02 !important;
    margin-bottom:24px !important;
  }
  .apometry__text .lead{
    line-height:1.42 !important;
  }
  .apometry__text .lead + .lead{
    margin-top:14px !important;
  }
}

/* Mobile/tablet: hero mais centralizado e frase com mais presença */
@media (max-width:960px){
  .hero--scrub .hero__inner{
    padding-top:56px !important;
    padding-bottom:34px !important;
    transform:translateY(-4vh);
  }
  .hero--scrub .hero__inner.content-visible{
    transform:translateY(-4vh) !important;
  }
  .hero__headline{
    font-size:clamp(21px, 5.25vw, 26px) !important;
    line-height:1.22 !important;
    white-space:nowrap;
    max-width:100vw;
  }
  .hero__headline br{
    display:block;
  }

  /* Hamburger ativo em dourado */
  .nav.is-open .nav__burger span{
    background:var(--gold) !important;
    box-shadow:0 0 10px rgba(201,165,92,.42);
  }
}

@media (max-width:420px){
  .hero__headline{
    font-size:clamp(19px, 5vw, 22px) !important;
    letter-spacing:-.01em;
  }
}

/* ================================================================
   AJUSTE FINAL — botões "Quero conhecer a Mentoria"
   ================================================================ */
a.btn.btn--primary.btn--pill[href="#mentoria"]{
  font-weight: 600;
}
a.btn.btn--primary.btn--pill[href="#mentoria"] .arrow{
  font-weight: 600;
}


/* ================================================================
   AJUSTES — Hero mobile, títulos dourados, hovers brancos e anti-flash
   ================================================================ */

/* Uniformiza palavras douradas dentro de títulos: mesma fonte do restante da frase */
.h-display em,
.h-section em,
.benefit__title em,
.interlude__quote em,
.cta-banner__title em,
.finale__title em,
.tcard__to-label em,
.method__highlight em,
.apometry__quote em,
.mentoria__list em,
.nav__mobile a em{
  font-family: inherit !important;
  font-style: normal !important;
  font-weight: inherit !important;
  color: var(--gold) !important;
}

/* Hovers de botões sem tom roxo */
@media (hover:hover) and (pointer:fine){
  .btn--primary:hover,
  .btn--pill:hover,
  .nav__cta:hover,
  .diagnostic__cta .btn:hover,
  .mentoria__cta .btn:hover,
  .finale__cta-row .btn:hover,
  .cta-banner .btn:hover{
    background: linear-gradient(180deg, #ffffff 0%, var(--champagne) 100%) !important;
    color: var(--wine-darkest) !important;
    border-color: #ffffff !important;
    box-shadow:
      0 0 34px rgba(255,255,255,.22),
      0 24px 52px -16px rgba(201,165,92,.42),
      inset 0 1px 0 rgba(255,255,255,.75) !important;
  }
  .btn--ghost:hover{
    background: rgba(255,255,255,.08) !important;
    color: #ffffff !important;
    border-color: #ffffff !important;
  }
}

/* Mobile: frase do hero sem cortar nas laterais */
@media (max-width: 960px){
  .hero__headline{
    width: min(100%, calc(100vw - 32px)) !important;
    max-width: calc(100vw - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    white-space: normal !important;
    overflow: visible !important;
    text-wrap: balance;
    font-size: clamp(19px, 4.85vw, 24px) !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
  }
  .hero__headline br{
    display:none !important;
  }
}
@media (max-width: 390px){
  .hero__headline{
    font-size: clamp(18px, 4.6vw, 21px) !important;
    max-width: calc(100vw - 26px) !important;
  }
}

/* Anti-flash visual no carregamento do WordPress/Elementor */
body.carine-home-template,
html body.carine-home-template{
  background: var(--ink, #0a0506) !important;
}
body.carine-home-template .entry-title,
body.carine-home-template h1.entry-title,
body.carine-home-template .page-header,
body.carine-home-template .entry-header,
body.carine-home-template .elementor-page-title,
body.carine-home-template .elementor-heading-title.elementor-size-default:first-child{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

/* ================================================================
   FINAL FIX — menu transparente no carregamento + crédito correto
   ================================================================ */
body.carine-home-template .nav:not(.scrolled):not(.is-open){
  background: transparent !important;
  border-bottom-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.carine-home-template .nav.scrolled{
  background: rgba(15,6,8,.55) !important;
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
}
.footer__credit{ color: var(--gold) !important; }

/* ================================================================
   FIX MOBILE — hamburger ativo dourado, sem rosa
   ================================================================ */
@media (max-width: 960px){
  .nav__burger,
  .nav__burger:hover,
  .nav__burger:focus,
  .nav__burger:active,
  .nav.is-open .nav__burger,
  .nav.is-open .nav__burger:hover,
  .nav.is-open .nav__burger:focus,
  .nav.is-open .nav__burger:active{
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    -webkit-tap-highlight-color: transparent;
  }

  .nav.is-open .nav__burger span,
  .nav__burger:active span,
  .nav__burger:focus span{
    background: var(--gold) !important;
    box-shadow: 0 0 10px rgba(201,165,92,.42) !important;
  }
}


/* ================================================================
   FIX — preserva animação desktop das cartas em AS TRANSFORMAÇÕES
   Mantém anti-flash no template sem interferir no sticky/track/cards.
   ================================================================ */
@media (min-width:1101px){
  body.carine-home-template .transmute{
    display:block !important;
    height:620vh !important;
    overflow:visible !important;
    contain:none !important;
  }
  body.carine-home-template .transmute__pin{
    position:sticky !important;
    top:0 !important;
    height:100vh !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) auto !important;
  }
  body.carine-home-template.admin-bar .transmute__pin{
    top:32px !important;
    height:calc(100vh - 32px) !important;
  }
  body.carine-home-template .transmute__viewport{
    overflow:hidden !important;
  }
  body.carine-home-template .transmute__track{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    will-change:transform !important;
  }
  body.carine-home-template .tcard{
    flex:0 0 auto !important;
    display:block !important;
    perspective:1300px !important;
  }
  body.carine-home-template .tcard__inner{
    transform-style:preserve-3d !important;
    transition:transform .82s cubic-bezier(.4,.2,.2,1) !important;
  }
  body.carine-home-template .tcard:not(.is-focused):not(.is-revealed) .tcard__inner{
    transform:rotateY(180deg) !important;
  }
  body.carine-home-template .tcard.is-focused .tcard__inner,
  body.carine-home-template .tcard.is-revealed .tcard__inner{
    transform:rotateY(0deg) !important;
  }
}


/* ================================================================
   GLOBAL FALLING PETALS — camada cinematográfica leve
   ================================================================ */
.petals-canvas{
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  z-index: 1;
  pointer-events: none;
  opacity: .52;
  mix-blend-mode: screen;
}

/* Conteúdo sempre acima das pétalas, sem alterar layout */
.hero__inner,
section .container,
.interlude > *,
.cta-banner__inner,
.footer > *,
.whatsapp-float,
.back-to-top{
  position: relative;
  z-index: 3;
}

.hero__sticky .hero__inner{ z-index: 60; }

@media (max-width: 960px){
  .petals-canvas{ opacity: .42; }
}

@media (prefers-reduced-motion: reduce){
  .petals-canvas{ display:none; }
}


/* ================================================================
   AJUSTE FINAL — menu transparente no topo + pétalas só abaixo do hero
   ================================================================ */
body.carine-home-template .nav{
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
}
body.carine-home-template .nav:not(.scrolled):not(.is-open){
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-bottom-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.carine-home-template .nav.scrolled{
  background: rgba(15,6,8,.55) !important;
  backdrop-filter: blur(18px) saturate(140%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(140%) !important;
}
body.carine-home-template.admin-bar .nav{ top:32px !important; }
@media (max-width:782px){ body.carine-home-template.admin-bar .nav{ top:46px !important; } }

.petals-canvas{
  z-index: 1 !important;
  opacity: 0 !important;
  transition: opacity .7s ease !important;
  mix-blend-mode: screen;
}
 .petals-canvas.is-active{ opacity: .44 !important; }
@media (max-width:960px){ .petals-canvas.is-active{ opacity: .34 !important; } }


/* ================================================================
   AJUSTE — remover rosa lateral da seção benefícios
   ================================================================ */
.benefits .rose-deco--side-left{
  display:none !important;
}

/* ================================================================
   AJUSTE — reforço WordPress para animação AS TRANSFORMAÇÕES
   ================================================================ */
@media (min-width:1101px){
  body.carine-home-template .transmute{
    height:620vh !important;
    min-height:620vh !important;
    overflow:visible !important;
  }
  body.carine-home-template .transmute__pin{
    position:sticky !important;
    top:0 !important;
    height:100vh !important;
    min-height:100vh !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) auto !important;
    contain:none !important;
  }
  body.carine-home-template.admin-bar .transmute__pin{
    top:32px !important;
    height:calc(100vh - 32px) !important;
    min-height:calc(100vh - 32px) !important;
  }
  body.carine-home-template .transmute__viewport{
    overflow:hidden !important;
    min-width:0 !important;
  }
  body.carine-home-template .transmute__track{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:60px !important;
    will-change:transform !important;
    transition:transform .18s linear !important;
  }
  body.carine-home-template .tcard{
    flex:0 0 auto !important;
    width:clamp(330px,31vw,390px) !important;
    display:block !important;
    perspective:1300px !important;
    opacity:1 !important;
    transform:none !important;
  }
  body.carine-home-template .tcard__inner{
    height:min(500px,68vh) !important;
    transform-style:preserve-3d !important;
    transition:transform .72s cubic-bezier(.4,.2,.2,1) !important;
  }
  body.carine-home-template .tcard:not(.is-focused):not(.is-revealed) .tcard__inner{
    transform:rotateY(180deg) !important;
  }
  body.carine-home-template .tcard.is-focused .tcard__inner,
  body.carine-home-template .tcard.is-revealed .tcard__inner{
    transform:rotateY(0deg) !important;
  }
}

/* ================================================================
   CORREÇÃO DEFINITIVA WORDPRESS — AS TRANSFORMAÇÕES
   Problema: em WP/Elementor a altura fixa 600vh/620vh criava um
   espaçador gigante quando o JS de foco não sincronizava no load.
   Solução: seção só vira pinned quando o JS inicializa corretamente.
   Sem JS, fallback fica compacto e sem buraco vertical.
   ================================================================ */
.transmute{
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
}
.transmute .transmute__pin{
  position:relative !important;
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
}

@media (min-width:1101px){
  .transmute.transmute--pinned{
    height:var(--transmute-scroll-height, 520vh) !important;
    overflow:visible !important;
  }
  .transmute.transmute--pinned .transmute__pin{
    position:sticky !important;
    top:0 !important;
    height:100vh !important;
    min-height:100vh !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-rows:auto minmax(0, 1fr) auto !important;
  }
  body.admin-bar .transmute.transmute--pinned .transmute__pin{
    top:32px !important;
    height:calc(100vh - 32px) !important;
    min-height:calc(100vh - 32px) !important;
  }
  .transmute.transmute--pinned .transmute__viewport{
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
  }
  .transmute.transmute--pinned .transmute__track{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:clamp(34px,4vw,72px) !important;
    padding:0 12vw !important;
    width:max-content !important;
    max-width:none !important;
    margin:0 !important;
    will-change:transform !important;
    transition:transform .72s cubic-bezier(.16,.84,.3,1) !important;
  }
  .transmute.transmute--pinned .tcard{
    flex:0 0 auto !important;
    width:clamp(320px,28vw,410px) !important;
    max-width:none !important;
    margin:0 !important;
  }
  .transmute:not(.transmute--pinned) .transmute__track{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:24px !important;
    max-width:1180px !important;
    margin:0 auto !important;
    padding:0 32px !important;
    transform:none !important;
  }
  .transmute:not(.transmute--pinned) .tcard{
    width:100% !important;
    max-width:none !important;
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
  }
  .transmute:not(.transmute--pinned) .tcard__inner{
    transform:rotateY(0deg) !important;
  }
}

/* ================================================================
   CORREÇÃO REAL WORDPRESS — AS TRANSFORMAÇÕES SEM STICKY NATIVO
   Elementor/WordPress pode quebrar position:sticky quando há wrappers
   com overflow/transform. Aqui o pin é controlado por JS com fixed,
   mantendo o scroll por carta e sem criar espaço gigante abaixo.
   ================================================================ */
@media (min-width:1101px){
  body.carine-home-template .transmute{
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }

  body.carine-home-template .transmute.transmute--js{
    height:var(--transmute-scroll-height, 560vh) !important;
    min-height:var(--transmute-scroll-height, 560vh) !important;
  }

  body.carine-home-template .transmute .transmute__pin{
    position:relative !important;
    top:auto !important;
    height:auto !important;
    min-height:100vh !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) auto !important;
    width:100% !important;
    z-index:2 !important;
  }

  body.carine-home-template .transmute.transmute--fixed .transmute__pin{
    position:fixed !important;
    top:var(--transmute-pin-top, 0px) !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    height:calc(100vh - var(--transmute-pin-top, 0px)) !important;
    min-height:calc(100vh - var(--transmute-pin-top, 0px)) !important;
    z-index:5 !important;
  }

  body.carine-home-template .transmute.transmute--after .transmute__pin{
    position:absolute !important;
    top:auto !important;
    bottom:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:calc(100vh - var(--transmute-pin-top, 0px)) !important;
    min-height:calc(100vh - var(--transmute-pin-top, 0px)) !important;
  }

  body.carine-home-template .transmute .transmute__viewport{
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
    min-width:0 !important;
    width:100% !important;
  }

  body.carine-home-template .transmute .transmute__track{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:clamp(34px,4vw,64px) !important;
    padding:0 12vw !important;
    width:max-content !important;
    max-width:none !important;
    margin:0 !important;
    transform:translate3d(0,0,0);
    will-change:transform !important;
    transition:transform .68s cubic-bezier(.16,.84,.3,1) !important;
  }

  body.carine-home-template .transmute .tcard{
    flex:0 0 auto !important;
    width:clamp(330px,28vw,410px) !important;
    max-width:none !important;
    display:block !important;
    margin:0 !important;
    perspective:1300px !important;
    opacity:1 !important;
    transform:none !important;
  }

  body.carine-home-template .transmute .tcard__inner{
    height:min(500px,68vh) !important;
    transform-style:preserve-3d !important;
    transform:rotateY(180deg) !important;
    transition:transform .72s cubic-bezier(.4,.2,.2,1) !important;
  }

  body.carine-home-template .transmute .tcard.is-focused .tcard__inner,
  body.carine-home-template .transmute .tcard.is-revealed .tcard__inner{
    transform:rotateY(0deg) !important;
  }

  body.carine-home-template .transmute .tcard:not(.is-focused):not(.is-revealed) .tcard__inner{
    transform:rotateY(180deg) !important;
  }

  body.carine-home-template .transmute .tcard__from-label,
  body.carine-home-template .transmute .tcard__desc{
    font-style:normal !important;
  }

  body.carine-home-template .transmute .tcard__from-label{
    font-size:clamp(24px,2vw,30px) !important;
  }

  body.carine-home-template .transmute .tcard__desc{
    font-size:clamp(15px,1.05vw,17px) !important;
  }
}


/* ================================================================
   FIX FINAL — AS TRANSFORMAÇÕES horizontal scrub no WordPress
   Mantém o pin, mas o deslocamento lateral é controlado por JS com base
   no scroll real da página, evitando corte das cartas à direita.
   ================================================================ */
@media (min-width:1101px){
  body.carine-home-template .transmute.transmute--js{
    position:relative !important;
    overflow:visible !important;
  }
  body.carine-home-template .transmute .transmute__pin{
    overflow:hidden !important;
  }
  body.carine-home-template .transmute .transmute__viewport{
    width:100vw !important;
    max-width:100vw !important;
    overflow:hidden !important;
  }
  body.carine-home-template .transmute .transmute__track{
    display:flex !important;
    flex-wrap:nowrap !important;
    width:max-content !important;
    max-width:none !important;
    padding-left:12vw !important;
    padding-right:12vw !important;
    transform:translate3d(0,0,0);
    transition:transform .28s linear !important;
    will-change:transform !important;
  }
  body.carine-home-template .transmute .tcard{
    flex:0 0 clamp(330px,28vw,410px) !important;
    min-width:clamp(330px,28vw,410px) !important;
    max-width:clamp(330px,28vw,410px) !important;
  }
}


/* ================================================================
   FIX DEFINITIVO — AS TRANSFORMAÇÕES horizontal no WordPress/Elementor
   Motivo: no WP/Elementor o track pode ser medido dentro de containers,
   resultando em corte lateral. Esta camada força viewport full-width,
   track em max-content e deslocamento por CSS variable controlada via JS.
   ================================================================ */
@media (min-width: 1101px){
  .transmute{
    position: relative !important;
    height: var(--transmute-scroll-height, 640vh) !important;
    overflow: visible !important;
    contain: none !important;
  }

  .transmute__pin{
    position: sticky !important;
    top: var(--transmute-pin-top, 0px) !important;
    height: calc(100vh - var(--transmute-pin-top, 0px)) !important;
    overflow: hidden !important;
    z-index: 2 !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
  }

  .transmute__viewport{
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    min-height: 0 !important;
  }

  .transmute__track{
    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;
    flex-wrap: nowrap !important;
    display: flex !important;
    align-items: center !important;
    gap: clamp(34px, 4vw, 72px) !important;
    padding-left: max(8vw, calc((100vw - 1240px) / 2 + 48px)) !important;
    padding-right: max(8vw, calc((100vw - 1240px) / 2 + 48px)) !important;
    transform: translate3d(var(--transmute-x, 0px), 0, 0) !important;
    transition: transform .36s cubic-bezier(.16,.84,.3,1) !important;
    will-change: transform !important;
  }

  .transmute .tcard{
    flex: 0 0 auto !important;
    width: clamp(320px, 28vw, 410px) !important;
  }
}

@media (min-width: 1101px) and (max-width: 1366px){
  .transmute__track{
    padding-left: 8vw !important;
    padding-right: 8vw !important;
    gap: 42px !important;
  }
  .transmute .tcard{
    width: clamp(300px, 27vw, 360px) !important;
  }
}

/* ================================================================
   FIX REAL — AS TRANSFORMAÇÕES: slide horizontal pinado no WordPress
   Mantém o scroll vertical travado durante a sequência e desloca o
   track horizontalmente via CSS variable controlada pelo JS.
   ================================================================ */
@media (min-width:1101px){
  html body.carine-home-template .transmute.transmute--althea-js{
    position:relative !important;
    height:var(--althea-transmute-height, 620vh) !important;
    min-height:var(--althea-transmute-height, 620vh) !important;
    overflow:visible !important;
    contain:none !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__pin{
    position:absolute !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    bottom:auto !important;
    width:100vw !important;
    max-width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    height:calc(100vh - var(--althea-admin-offset, 0px)) !important;
    min-height:calc(100vh - var(--althea-admin-offset, 0px)) !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-rows:auto minmax(0, 1fr) auto !important;
    z-index:5 !important;
    transform:none !important;
  }

  html body.carine-home-template .transmute.transmute--althea-fixed .transmute__pin{
    position:fixed !important;
    top:var(--althea-admin-offset, 0px) !important;
    left:0 !important;
    right:0 !important;
    bottom:auto !important;
    margin-left:0 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-after .transmute__pin{
    position:absolute !important;
    top:auto !important;
    bottom:0 !important;
    left:0 !important;
    right:0 !important;
    margin-left:calc(50% - 50vw) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__viewport{
    width:100vw !important;
    max-width:100vw !important;
    min-width:100vw !important;
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    min-height:0 !important;
    height:100% !important;
    margin:0 !important;
    padding:0 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__track{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:clamp(36px, 4vw, 72px) !important;
    width:max-content !important;
    min-width:max-content !important;
    max-width:none !important;
    margin:0 !important;
    padding-left:max(8vw, calc((100vw - 1240px) / 2 + 48px)) !important;
    padding-right:max(8vw, calc((100vw - 1240px) / 2 + 48px)) !important;
    transform:translate3d(var(--althea-transmute-x, 0px), 0, 0) !important;
    transition:transform .26s cubic-bezier(.16,.84,.3,1) !important;
    will-change:transform !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard{
    flex:0 0 auto !important;
    width:clamp(320px, 28vw, 410px) !important;
    min-width:clamp(320px, 28vw, 410px) !important;
    max-width:clamp(320px, 28vw, 410px) !important;
    margin:0 !important;
    display:block !important;
    perspective:1300px !important;
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__inner{
    height:min(500px, 68vh) !important;
    transform-style:preserve-3d !important;
    transition:transform .58s cubic-bezier(.4,.2,.2,1) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard:not(.is-revealed) .tcard__inner{
    transform:rotateY(180deg) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard.is-revealed .tcard__inner,
  html body.carine-home-template .transmute.transmute--althea-js .tcard.is-focused .tcard__inner{
    transform:rotateY(0deg) !important;
  }
}

@media (min-width:1101px) and (max-width:1366px){
  html body.carine-home-template .transmute.transmute--althea-js .transmute__track{
    gap:38px !important;
    padding-left:7vw !important;
    padding-right:7vw !important;
  }
  html body.carine-home-template .transmute.transmute--althea-js .tcard{
    width:clamp(295px, 27vw, 355px) !important;
    min-width:clamp(295px, 27vw, 355px) !important;
    max-width:clamp(295px, 27vw, 355px) !important;
  }
}

@media (max-width:1100px){
  html body.carine-home-template .transmute.transmute--althea-js{
    height:auto !important;
    min-height:0 !important;
  }
  html body.carine-home-template .transmute.transmute--althea-js .transmute__pin{
    position:relative !important;
    top:auto !important;
    height:auto !important;
    min-height:0 !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
  }
  html body.carine-home-template .transmute.transmute--althea-js .transmute__track{
    transform:none !important;
  }
}

/* ================================================================
   AJUSTE RESPONSIVO — AS TRANSFORMAÇÕES
   Corrige corte dos cards em notebooks 1366x768 e mantém mobile em reveal vertical.
   ================================================================ */
@media (min-width:1101px) and (max-height:820px){
  html body.carine-home-template .transmute.transmute--althea-js .transmute__pin{
    grid-template-rows:auto minmax(0, 1fr) !important;
    padding-top:clamp(28px, 4.2vh, 44px) !important;
    padding-bottom:clamp(22px, 3.2vh, 34px) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header,
  html body.carine-home-template .transmute.transmute--althea-js .transmute__header .phases__intro{
    margin-bottom:clamp(18px, 2.8vh, 28px) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header .h-section,
  html body.carine-home-template .transmute.transmute--althea-js .h-section{
    font-size:clamp(34px, 4.4vw, 58px) !important;
    line-height:1.03 !important;
    margin-bottom:12px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header .lead,
  html body.carine-home-template .transmute.transmute--althea-js .lead{
    font-size:clamp(16px, 1.5vw, 18px) !important;
    line-height:1.32 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__viewport{
    align-items:center !important;
    height:auto !important;
    min-height:0 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard{
    width:clamp(288px, 25.5vw, 338px) !important;
    min-width:clamp(288px, 25.5vw, 338px) !important;
    max-width:clamp(288px, 25.5vw, 338px) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__inner{
    height:clamp(390px, 55vh, 430px) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__front{
    padding:30px 26px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__num{
    font-size:clamp(54px, 6.4vh, 70px) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__from-label{
    font-size:clamp(22px, 3.2vh, 28px) !important;
    line-height:1.12 !important;
    margin-bottom:18px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__to-label{
    font-size:clamp(25px, 3.8vh, 32px) !important;
    line-height:1.12 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__desc{
    font-size:clamp(13.5px, 1.65vh, 15px) !important;
    line-height:1.42 !important;
    margin-top:10px !important;
    padding-top:10px !important;
  }
}

@media (min-width:1101px) and (max-width:1366px) and (max-height:820px){
  html body.carine-home-template .transmute.transmute--althea-js .transmute__track{
    gap:32px !important;
    padding-left:6vw !important;
    padding-right:6vw !important;
  }
}

@media (max-width:1100px){
  html body.carine-home-template .transmute.transmute--althea-js .tcard{
    opacity:0 !important;
    transform:translateY(42px) scale(.965) !important;
    transition:opacity .75s cubic-bezier(.16,.84,.3,1), transform .75s cubic-bezier(.16,.84,.3,1) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard.is-revealed{
    opacity:1 !important;
    transform:translateY(0) scale(1) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard:not(.is-revealed) .tcard__inner{
    transform:rotateY(180deg) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard.is-revealed .tcard__inner{
    transform:rotateY(0deg) !important;
  }
}

/* ================================================================
   HOTFIX — AS TRANSFORMAÇÕES responsivo real
   Corrige corte dos cards em notebooks 1366x768 e força reveal mobile.
   ================================================================ */
@media (min-width:1101px) and (max-height:820px){
  html body .transmute.transmute--althea-js .transmute__pin{
    padding-top:clamp(18px, 2.6vh, 28px) !important;
    padding-bottom:clamp(14px, 2.2vh, 24px) !important;
    grid-template-rows:auto minmax(0, 1fr) !important;
  }
  html body .transmute.transmute--althea-js .transmute__header,
  html body .transmute.transmute--althea-js .transmute__header .phases__intro{
    margin-bottom:clamp(10px, 1.8vh, 18px) !important;
  }
  html body .transmute.transmute--althea-js .transmute__header .eyebrow{
    margin-bottom:clamp(10px, 1.5vh, 16px) !important;
  }
  html body .transmute.transmute--althea-js .transmute__header .h-section,
  html body .transmute.transmute--althea-js .h-section{
    font-size:clamp(30px, 3.8vw, 48px) !important;
    line-height:1.02 !important;
    margin-bottom:8px !important;
  }
  html body .transmute.transmute--althea-js .transmute__header .lead,
  html body .transmute.transmute--althea-js .lead{
    font-size:15.5px !important;
    line-height:1.25 !important;
  }
  html body .transmute.transmute--althea-js .transmute__viewport{
    align-items:center !important;
    overflow:hidden !important;
  }
  html body .transmute.transmute--althea-js .transmute__track{
    gap:28px !important;
    padding-left:5vw !important;
    padding-right:5vw !important;
  }
  html body .transmute.transmute--althea-js .tcard{
    width:clamp(270px, 24vw, 320px) !important;
    min-width:clamp(270px, 24vw, 320px) !important;
    max-width:clamp(270px, 24vw, 320px) !important;
  }
  html body .transmute.transmute--althea-js .tcard__inner{
    height:clamp(330px, 47vh, 370px) !important;
    max-height:calc(100vh - var(--althea-admin-offset, 0px) - 210px) !important;
  }
  html body .transmute.transmute--althea-js .tcard__front{
    padding:22px 22px !important;
  }
  html body .transmute.transmute--althea-js .tcard__num{
    font-size:clamp(46px, 5.7vh, 58px) !important;
  }
  html body .transmute.transmute--althea-js .tcard__from,
  html body .transmute.transmute--althea-js .tcard__to{
    font-size:9px !important;
    letter-spacing:.34em !important;
  }
  html body .transmute.transmute--althea-js .tcard__from-label{
    font-size:clamp(20px, 2.8vh, 24px) !important;
    line-height:1.08 !important;
    margin-bottom:12px !important;
  }
  html body .transmute.transmute--althea-js .tcard__divider{
    margin:12px 0 !important;
  }
  html body .transmute.transmute--althea-js .tcard__to-label{
    font-size:clamp(22px, 3.1vh, 27px) !important;
    line-height:1.08 !important;
  }
  html body .transmute.transmute--althea-js .tcard__desc{
    font-size:13px !important;
    line-height:1.32 !important;
    margin-top:8px !important;
    padding-top:8px !important;
  }
}

@media (max-width:1100px){
  html body .transmute .transmute__track,
  html body .transmute.transmute--althea-js .transmute__track{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:26px !important;
    transform:none !important;
    padding:0 18px !important;
  }
  html body .transmute .tcard,
  html body .transmute.transmute--althea-js .tcard{
    width:min(92vw, 380px) !important;
    max-width:min(92vw, 380px) !important;
    min-width:0 !important;
    opacity:0 !important;
    transform:translateY(44px) scale(.96) !important;
    transition:opacity .72s cubic-bezier(.16,.84,.3,1), transform .72s cubic-bezier(.16,.84,.3,1) !important;
  }
  html body .transmute .tcard.is-revealed,
  html body .transmute.transmute--althea-js .tcard.is-revealed,
  html body .transmute .tcard.mobile-revealed,
  html body .transmute.transmute--althea-js .tcard.mobile-revealed{
    opacity:1 !important;
    transform:translateY(0) scale(1) !important;
  }
  html body .transmute .tcard:not(.is-revealed):not(.mobile-revealed) .tcard__inner,
  html body .transmute.transmute--althea-js .tcard:not(.is-revealed):not(.mobile-revealed) .tcard__inner{
    transform:rotateY(180deg) !important;
  }
  html body .transmute .tcard.is-revealed .tcard__inner,
  html body .transmute .tcard.mobile-revealed .tcard__inner,
  html body .transmute.transmute--althea-js .tcard.is-revealed .tcard__inner,
  html body .transmute.transmute--althea-js .tcard.mobile-revealed .tcard__inner{
    transform:rotateY(0deg) !important;
  }
}

/* ================================================================
   HOTFIX FINAL — AS TRANSFORMAÇÕES
   1) Notebooks baixos 1366x768: cards cabem sem corte vertical.
   2) Mobile/tablet: cards começam fechados e revelam um a um.
   ================================================================ */
@media (min-width:1101px) and (max-height:820px){
  html body.carine-home-template .transmute.transmute--althea-js .transmute__pin,
  html body .transmute.transmute--althea-js .transmute__pin{
    height:calc(100vh - var(--althea-admin-offset, 0px)) !important;
    min-height:calc(100vh - var(--althea-admin-offset, 0px)) !important;
    padding-top:10px !important;
    padding-bottom:12px !important;
    grid-template-rows:auto minmax(0, 1fr) auto !important;
    row-gap:8px !important;
    overflow:hidden !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header,
  html body .transmute.transmute--althea-js .transmute__header{
    max-height:150px !important;
    margin-bottom:4px !important;
    padding-bottom:0 !important;
    overflow:visible !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header .eyebrow,
  html body .transmute.transmute--althea-js .transmute__header .eyebrow{
    font-size:9px !important;
    letter-spacing:.42em !important;
    margin-bottom:8px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header .h-section,
  html body.carine-home-template .transmute.transmute--althea-js .h-section,
  html body .transmute.transmute--althea-js .transmute__header .h-section,
  html body .transmute.transmute--althea-js .h-section{
    font-size:clamp(34px, 3.7vw, 48px) !important;
    line-height:1 !important;
    margin:0 0 8px !important;
    padding:0 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header .lead,
  html body.carine-home-template .transmute.transmute--althea-js .lead,
  html body .transmute.transmute--althea-js .transmute__header .lead,
  html body .transmute.transmute--althea-js .lead{
    font-size:14px !important;
    line-height:1.22 !important;
    margin:0 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__viewport,
  html body .transmute.transmute--althea-js .transmute__viewport{
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100vh - var(--althea-admin-offset, 0px) - 178px) !important;
    align-items:center !important;
    overflow:hidden !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__track,
  html body .transmute.transmute--althea-js .transmute__track{
    gap:28px !important;
    padding-left:7vw !important;
    padding-right:7vw !important;
    align-items:center !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard,
  html body .transmute.transmute--althea-js .tcard{
    width:clamp(280px, 24.5vw, 330px) !important;
    min-width:clamp(280px, 24.5vw, 330px) !important;
    max-width:clamp(280px, 24.5vw, 330px) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__inner,
  html body .transmute.transmute--althea-js .tcard__inner{
    height:clamp(340px, 48vh, 380px) !important;
    max-height:calc(100vh - var(--althea-admin-offset, 0px) - 195px) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__front,
  html body .transmute.transmute--althea-js .tcard__front{
    padding:24px 22px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__num,
  html body .transmute.transmute--althea-js .tcard__num{
    font-size:50px !important;
    margin-bottom:2px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__from,
  html body.carine-home-template .transmute.transmute--althea-js .tcard__to,
  html body .transmute.transmute--althea-js .tcard__from,
  html body .transmute.transmute--althea-js .tcard__to{
    font-size:8.5px !important;
    letter-spacing:.32em !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__from-label,
  html body .transmute.transmute--althea-js .tcard__from-label{
    font-size:22px !important;
    line-height:1.08 !important;
    margin-bottom:10px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__divider,
  html body .transmute.transmute--althea-js .tcard__divider{
    margin:10px 0 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__to-label,
  html body .transmute.transmute--althea-js .tcard__to-label{
    font-size:25px !important;
    line-height:1.08 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__desc,
  html body .transmute.transmute--althea-js .tcard__desc{
    font-size:12.5px !important;
    line-height:1.28 !important;
    margin-top:7px !important;
    padding-top:7px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__progress,
  html body .transmute.transmute--althea-js .transmute__progress{
    padding-top:0 !important;
    margin-top:0 !important;
    transform:scale(.86) !important;
    transform-origin:center bottom !important;
  }
}

@media (max-width:1100px){
  html body .transmute.transmute--althea-js .tcard,
  html body.carine-home-template .transmute.transmute--althea-js .tcard{
    opacity:0 !important;
    transform:translateY(44px) scale(.96) !important;
    transition:opacity .75s cubic-bezier(.16,.84,.3,1), transform .75s cubic-bezier(.16,.84,.3,1) !important;
  }

  html body .transmute.transmute--althea-js .tcard.is-revealed,
  html body .transmute.transmute--althea-js .tcard.mobile-revealed,
  html body.carine-home-template .transmute.transmute--althea-js .tcard.is-revealed,
  html body.carine-home-template .transmute.transmute--althea-js .tcard.mobile-revealed{
    opacity:1 !important;
    transform:translateY(0) scale(1) !important;
  }

  html body .transmute.transmute--althea-js .tcard:not(.is-revealed):not(.mobile-revealed) .tcard__inner,
  html body.carine-home-template .transmute.transmute--althea-js .tcard:not(.is-revealed):not(.mobile-revealed) .tcard__inner{
    transform:rotateY(180deg) !important;
  }

  html body .transmute.transmute--althea-js .tcard.is-revealed .tcard__inner,
  html body .transmute.transmute--althea-js .tcard.mobile-revealed .tcard__inner,
  html body.carine-home-template .transmute.transmute--althea-js .tcard.is-revealed .tcard__inner,
  html body.carine-home-template .transmute.transmute--althea-js .tcard.mobile-revealed .tcard__inner{
    transform:rotateY(0deg) !important;
  }
}

/* ================================================================
   HOTFIX — AS TRANSFORMAÇÕES centralização vertical em notebooks
   Ajuste específico para telas tipo 1366x768: mantém o carrossel
   funcional e reposiciona título + cards no centro visual da seção.
   ================================================================ */
@media (min-width:1101px) and (max-width:1366px) and (max-height:820px){
  html body.carine-home-template .transmute.transmute--althea-js .transmute__pin,
  html body .transmute.transmute--althea-js .transmute__pin{
    display:grid !important;
    grid-template-rows:auto auto auto !important;
    align-content:center !important;
    justify-content:stretch !important;
    row-gap:clamp(16px, 2.4vh, 24px) !important;
    padding-top:calc(var(--althea-admin-offset, 0px) + 34px) !important;
    padding-bottom:clamp(30px, 5vh, 48px) !important;
    min-height:calc(100vh - var(--althea-admin-offset, 0px)) !important;
    height:calc(100vh - var(--althea-admin-offset, 0px)) !important;
    overflow:hidden !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header,
  html body .transmute.transmute--althea-js .transmute__header{
    align-self:end !important;
    margin:0 auto !important;
    max-height:none !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__viewport,
  html body .transmute.transmute--althea-js .transmute__viewport{
    align-self:center !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    display:flex !important;
    align-items:center !important;
    overflow:hidden !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__progress,
  html body .transmute.transmute--althea-js .transmute__progress{
    align-self:start !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__inner,
  html body .transmute.transmute--althea-js .tcard__inner{
    height:clamp(360px, 50vh, 410px) !important;
    max-height:410px !important;
  }
}


/* ================================================================
   HOTFIX REAL — NOTEBOOK 1366x768 / AS TRANSFORMAÇÕES
   Corrige sobreposição definitiva entre título/subtítulo e cards.
   Escopo limitado a notebooks/telas baixas desktop.
   ================================================================ */
@media (min-width:1101px) and (max-width:1440px) and (max-height:820px){

  html body.carine-home-template .transmute.transmute--althea-js .transmute__pin,
  html body .transmute.transmute--althea-js .transmute__pin{
    display:grid !important;
    grid-template-rows: 205px minmax(0, 1fr) 44px !important;
    row-gap: 14px !important;
    align-content: stretch !important;
    padding-top: calc(var(--althea-admin-offset, 0px) + 14px) !important;
    padding-bottom: 16px !important;
    height: calc(100vh - var(--althea-admin-offset, 0px)) !important;
    min-height: calc(100vh - var(--althea-admin-offset, 0px)) !important;
    overflow: hidden !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header,
  html body .transmute.transmute--althea-js .transmute__header{
    grid-row: 1 !important;
    align-self: start !important;
    justify-self: center !important;
    width: min(760px, 82vw) !important;
    max-width: min(760px, 82vw) !important;
    min-height: 185px !important;
    margin: 0 auto !important;
    padding: 0 20px 18px !important;
    overflow: visible !important;
    text-align: center !important;
    z-index: 8 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header .eyebrow,
  html body .transmute.transmute--althea-js .transmute__header .eyebrow{
    margin-bottom: 10px !important;
    justify-content: center !important;
    text-align: center !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header .h-section,
  html body .transmute.transmute--althea-js .transmute__header .h-section{
    display: block !important;
    max-width: 680px !important;
    margin: 0 auto 14px !important;
    font-size: clamp(38px, 4vw, 52px) !important;
    line-height: 1.02 !important;
    text-align: center !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__header .lead,
  html body .transmute.transmute--althea-js .transmute__header .lead{
    display:block !important;
    max-width: 560px !important;
    margin: 0 auto !important;
    text-align: center !important;
    font-size: 14.5px !important;
    line-height: 1.25 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__viewport,
  html body .transmute.transmute--althea-js .transmute__viewport{
    grid-row: 2 !important;
    align-self: start !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    display:flex !important;
    align-items: flex-start !important;
    overflow: hidden !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
    z-index: 4 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__track,
  html body .transmute.transmute--althea-js .transmute__track{
    align-items: flex-start !important;
    padding-top: 0 !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard,
  html body .transmute.transmute--althea-js .tcard{
    width: clamp(285px, 25vw, 330px) !important;
    min-width: clamp(285px, 25vw, 330px) !important;
    max-width: clamp(285px, 25vw, 330px) !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__inner,
  html body .transmute.transmute--althea-js .tcard__inner{
    height: clamp(330px, 45vh, 365px) !important;
    max-height: 365px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .tcard__front,
  html body .transmute.transmute--althea-js .tcard__front{
    padding: 22px 22px !important;
  }

  html body.carine-home-template .transmute.transmute--althea-js .transmute__progress,
  html body .transmute.transmute--althea-js .transmute__progress{
    grid-row: 3 !important;
    align-self: end !important;
    margin: 0 auto !important;
    padding-top: 0 !important;
    transform: scale(.86) !important;
    transform-origin: center bottom !important;
  }
}

@media (min-width:1101px) and (max-width:1440px) and (max-height:820px){
html body .transmute.transmute--althea-js .transmute__pin{
grid-template-rows:205px minmax(0,1fr) 70px !important;
padding-bottom:70px !important;
}
html body .transmute.transmute--althea-js .transmute__viewport{
padding-bottom:60px !important;
}
html body .transmute.transmute--althea-js .tcard__inner{
height:clamp(380px,52vh,430px)!important;
max-height:430px!important;
}
html body .transmute.transmute--althea-js .transmute__progress{
margin-top:18px!important;
}
}

@media (min-width:1101px) and (max-width:1440px) and (max-height:820px){.transmute__viewport{padding-bottom:24px!important}.tcard__inner{height:clamp(340px,47vh,380px)!important;}}

/* desktop cards top cut fix */
@media (min-width:1441px){.transmute__viewport{padding-top:20px!important}.transmute__track{padding-top:10px!important}.tcard__inner{margin-top:10px!important}}


/* =====================================================================
   SESSÕES DE APOMETRIA — planos premium
   ===================================================================== */
.packages{
  position:relative;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(151,6,7,.26), transparent 56%),
    radial-gradient(ellipse at 15% 85%, rgba(73,10,19,.34), transparent 58%),
    linear-gradient(180deg, rgba(10,3,4,.62) 0%, rgba(22,5,7,.74) 55%, rgba(10,3,4,.72) 100%);
  padding-top:150px;
  padding-bottom:160px;
}
.packages::before{
  content:"";
  position:absolute;
  top:0; left:0; right:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(201,165,92,.48), transparent);
}
.packages__head{
  max-width:850px;
  margin:0 auto 78px;
  text-align:center;
}
.packages__grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:28px;
  align-items:stretch;
}
.package-card{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:100%;
  padding:42px 30px 34px;
  border:1px solid rgba(201,165,92,.24);
  background:
    linear-gradient(165deg, rgba(151,6,7,.13), rgba(26,6,8,.82)),
    radial-gradient(circle at 50% 0%, rgba(201,165,92,.08), transparent 58%);
  box-shadow:0 26px 70px -42px rgba(0,0,0,.86);
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  transition:border-color .42s ease, transform .42s ease, box-shadow .42s ease;
}
.package-card::before{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid rgba(201,165,92,.11);
  pointer-events:none;
  z-index:-1;
}
.package-card::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  top:-120px;
  left:50%;
  transform:translateX(-50%);
  border-radius:999px;
  background:radial-gradient(circle, rgba(201,165,92,.14), transparent 67%);
  filter:blur(4px);
  z-index:-2;
}
.package-card:hover{
  border-color:rgba(201,165,92,.52);
  transform:translateY(-5px);
  box-shadow:0 0 42px rgba(201,165,92,.10), 0 28px 70px -36px rgba(0,0,0,.9);
}
.package-card--featured{
  transform:translateY(-12px);
  border-color:rgba(201,165,92,.48);
  background:
    linear-gradient(165deg, rgba(151,6,7,.20), rgba(26,6,8,.88)),
    radial-gradient(circle at 50% 0%, rgba(201,165,92,.16), transparent 60%);
  box-shadow:0 0 44px rgba(201,165,92,.10), 0 34px 86px -42px rgba(0,0,0,.92);
}
.package-card--featured:hover{
  transform:translateY(-17px);
}
.package-card__tag{
  font-family:var(--f-deco);
  font-size:10px;
  letter-spacing:.42em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:22px;
}
.package-card__title{
  font-family:var(--f-display);
  font-size:clamp(34px,3.5vw,50px);
  line-height:1;
  font-weight:400;
  color:var(--ivory);
  margin-bottom:18px;
}
.package-card__price{
  font-family:var(--f-deco);
  font-size:clamp(22px,2.4vw,32px);
  letter-spacing:.08em;
  color:var(--gold);
  margin-bottom:24px;
  text-shadow:0 0 22px rgba(201,165,92,.18);
}
.package-card__desc{
  font-family:var(--f-serif);
  font-size:17px;
  line-height:1.38;
  color:rgba(243,232,210,.74);
  max-width:290px;
  margin:0 auto 32px;
  flex:1;
}
.package-card__btn{
  width:100%;
  max-width:280px;
  justify-content:center;
  padding-left:24px;
  padding-right:24px;
  letter-spacing:.22em;
}
@media (max-width:1100px){
  .packages__grid{ grid-template-columns:1fr; max-width:620px; margin:0 auto; gap:22px; }
  .package-card,
  .package-card--featured,
  .package-card--featured:hover{ transform:none; }
}
@media (max-width:640px){
  .packages{ padding:108px 20px 118px; }
  .packages__head{ margin-bottom:48px; }
  .package-card{ padding:34px 20px 28px; }
  .package-card__desc{ font-size:16px; }
  .package-card__btn{ max-width:100%; letter-spacing:.16em; }
}


/* =====================================================================
   AJUSTE — divisão elegante entre "Sessões de Apometria" e "O Convite"
   Linha dourada, menor respiro vertical e fundo do convite mais suave.
   ===================================================================== */
.packages{
  isolation:isolate;
  overflow:hidden;
  z-index:1;
  padding-bottom:118px;
}
.packages > .container{
  position:relative;
  z-index:2;
}
.packages::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  pointer-events:none;
  z-index:5;
  background:linear-gradient(90deg, transparent, rgba(201,165,92,.68), transparent);
  box-shadow:0 0 22px rgba(201,165,92,.16);
}
.finale{
  position:relative;
  z-index:2;
  margin-top:0;
  padding-top:164px;
  background:
    radial-gradient(ellipse at center, rgba(151,6,7,.18) 0%, transparent 62%),
    linear-gradient(180deg, rgba(10,3,4,.90) 0%, rgba(22,5,7,.48) 42%, rgba(42,7,9,.54) 100%);
}
.finale::before{
  display:none;
}
.finale .finale__ring{
  top:54%;
  opacity:.12;
}
.finale .finale__ring--2{
  opacity:.09;
}
.finale .finale__ring--3{
  opacity:.06;
}
.finale .altar-medallion{
  top:52% !important;
  width:min(720px, 72vw) !important;
  height:min(720px, 72vw) !important;
  opacity:.22 !important;
}

@media (max-width:960px){
  .packages{
    padding-bottom:96px;
  }
  .finale{
    padding-top:128px;
  }
  .finale .finale__ring{
    top:55%;
  }
  .finale .altar-medallion{
    top:50% !important;
    width:92vw !important;
    height:92vw !important;
    opacity:.18 !important;
  }
}

@media (max-width:640px){
  .packages{
    padding-bottom:84px;
  }
  .finale{
    padding-top:112px;
  }
}


/* =====================================================================
   AJUSTE — O Convite mais centralizado + fundos mais transparentes
   Mantém a divisão dourada e reduz a camada escura para as pétalas aparecerem.
   ===================================================================== */
.packages{
  background:
    radial-gradient(ellipse at 50% 0%, rgba(151,6,7,.12), transparent 58%),
    radial-gradient(ellipse at 15% 85%, rgba(73,10,19,.16), transparent 60%),
    linear-gradient(180deg, rgba(10,3,4,.34) 0%, rgba(22,5,7,.42) 55%, rgba(10,3,4,.36) 100%);
}

.finale{
  min-height: clamp(760px, 88vh, 940px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-top:180px;
  padding-bottom:220px;
  background:
    radial-gradient(ellipse at center, rgba(151,6,7,.10) 0%, transparent 64%),
    linear-gradient(180deg, rgba(10,3,4,.34) 0%, rgba(22,5,7,.30) 46%, rgba(42,7,9,.34) 100%);
}

.finale .finale__inner{
  margin-top:0;
  margin-bottom:0;
}

.finale .finale__ring{
  opacity:.09;
}

.finale .finale__ring--2{
  opacity:.07;
}

.finale .finale__ring--3{
  opacity:.045;
}

.finale .altar-medallion{
  opacity:.16 !important;
}

@media (max-width:960px){
  .packages{
    background:
      radial-gradient(ellipse at 50% 0%, rgba(151,6,7,.12), transparent 60%),
      linear-gradient(180deg, rgba(10,3,4,.32), rgba(22,5,7,.38));
  }

  .finale{
    min-height: 720px;
    padding-top:150px;
    padding-bottom:170px;
    background:
      radial-gradient(ellipse at center, rgba(151,6,7,.09) 0%, transparent 66%),
      linear-gradient(180deg, rgba(10,3,4,.32), rgba(22,5,7,.28) 48%, rgba(42,7,9,.32));
  }

  .finale .altar-medallion{
    opacity:.13 !important;
  }
}

@media (max-width:640px){
  .finale{
    min-height: 680px;
    padding-top:130px;
    padding-bottom:150px;
  }
}

/* =====================================================================
   AJUSTE — O Convite: brilho vermelho central + mais respiro superior
   Mantém o glow no centro sem escurecer as bordas, preservando pétalas.
   ===================================================================== */
.finale{
  min-height: clamp(820px, 94vh, 980px);
  padding-top: clamp(220px, 20vh, 260px);
  padding-bottom: clamp(210px, 18vh, 240px);
  background:
    radial-gradient(ellipse at center, rgba(151,6,7,.24) 0%, rgba(151,6,7,.12) 28%, rgba(151,6,7,.045) 46%, transparent 68%),
    linear-gradient(180deg, rgba(10,3,4,.28) 0%, rgba(22,5,7,.24) 48%, rgba(42,7,9,.28) 100%);
}

.finale .finale__inner{
  position:relative;
  z-index:3;
}

.finale .finale__ring{
  opacity:.13;
}

.finale .finale__ring--2{
  opacity:.10;
}

.finale .finale__ring--3{
  opacity:.065;
}

.finale .altar-medallion{
  opacity:.20 !important;
}

@media (max-width:960px){
  .finale{
    min-height: 760px;
    padding-top:155px;
    padding-bottom:175px;
    background:
      radial-gradient(ellipse at center, rgba(151,6,7,.20) 0%, rgba(151,6,7,.09) 34%, transparent 68%),
      linear-gradient(180deg, rgba(10,3,4,.28), rgba(22,5,7,.22) 50%, rgba(42,7,9,.28));
  }

  .finale .altar-medallion{
    opacity:.16 !important;
  }
}

@media (max-width:640px){
  .finale{
    min-height: 720px;
    padding-top:140px;
    padding-bottom:155px;
  }
}

/* =====================================================================
   HOTFIX — menu/voltar ao topo + cards de pacotes no mobile
   Ajuste escopado para evitar hover roxo herdado do Elementor/navegador.
   ===================================================================== */
html body.carine-home-template .nav a.nav__brand,
html body.carine-home-template .nav a.nav__brand:visited,
html body.carine-home-template .nav a.nav__brand:link{
  color:var(--gold) !important;
  text-decoration:none !important;
  -webkit-tap-highlight-color:rgba(201,165,92,.18);
}

html body.carine-home-template .nav a.nav__brand:hover,
html body.carine-home-template .nav a.nav__brand:focus,
html body.carine-home-template .nav a.nav__brand:focus-visible,
html body.carine-home-template .nav a.nav__brand:active{
  color:var(--champagne) !important;
  text-decoration:none !important;
  outline:0 !important;
  box-shadow:none !important;
}

html body.carine-home-template .nav a.nav__brand:hover .nav__brand-mark,
html body.carine-home-template .nav a.nav__brand:focus .nav__brand-mark,
html body.carine-home-template .nav a.nav__brand:active .nav__brand-mark{
  color:var(--gold) !important;
  filter:drop-shadow(0 0 12px rgba(201,165,92,.32));
}

html body.carine-home-template .floating-top,
html body.carine-home-template .floating-top:visited,
html body.carine-home-template .floating-top:link{
  color:var(--gold) !important;
  border-color:rgba(201,165,92,.82) !important;
  background:rgba(10,3,5,.48) !important;
  text-decoration:none !important;
  -webkit-tap-highlight-color:rgba(201,165,92,.18);
}

html body.carine-home-template .floating-top:hover,
html body.carine-home-template .floating-top:focus,
html body.carine-home-template .floating-top:focus-visible,
html body.carine-home-template .floating-top:active{
  color:var(--wine-darkest) !important;
  border-color:var(--gold) !important;
  background:linear-gradient(180deg, var(--gold) 0%, var(--gold-aged) 100%) !important;
  box-shadow:0 0 28px rgba(201,165,92,.34), 0 16px 38px rgba(0,0,0,.42) !important;
  outline:0 !important;
}

@media (max-width:960px){
  html body.carine-home-template .packages .package-card.reveal{
    opacity:0 !important;
    transform:translate3d(0, 42px, 0) scale(.965) !important;
    filter:blur(2px) saturate(.88) !important;
    transition:
      opacity .82s cubic-bezier(.16,.84,.3,1),
      transform .86s cubic-bezier(.16,.84,.3,1),
      filter .86s cubic-bezier(.16,.84,.3,1),
      border-color .42s ease,
      box-shadow .42s ease !important;
    will-change:opacity, transform, filter;
  }

  html body.carine-home-template .packages .package-card.reveal.is-visible{
    opacity:1 !important;
    transform:translate3d(0, 0, 0) scale(1) !important;
    filter:none !important;
  }

  html body.carine-home-template .packages .package-card.reveal:nth-child(2){
    transition-delay:.08s !important;
  }

  html body.carine-home-template .packages .package-card.reveal:nth-child(3){
    transition-delay:.12s !important;
  }

  html body.carine-home-template .btn--pill,
  html body.carine-home-template .btn--primary.btn--pill,
  html body.carine-home-template .package-card__btn.btn--primary,
  html body.carine-home-template .package-card__btn.btn--pill{
    font-weight:600 !important;
    text-shadow:none !important;
  }
}



/* ================================================================
   AJUSTE — Mentoria em breve + seção de pacotes reposicionada
   ================================================================ */
.btn[title="Em breve"]{
  white-space:nowrap;
}

/* ================================================================
   AJUSTE — Hero: peso do botão "O que é Apometria"
   ================================================================ */
html body.carine-home-template .hero .hero__btn-apometria,
html body.carine-home-template .hero a.hero__btn-apometria,
html body.carine-home-template .hero .hero__btn-apometria:visited,
html body.carine-home-template .hero .hero__btn-apometria:hover,
html body.carine-home-template .hero .hero__btn-apometria:focus,
html body.carine-home-template .hero .hero__btn-apometria:active{
  font-weight:700 !important;
  text-shadow:none !important;
}


/* ================================================================
   CURSOR TRAIL — pétalas vinho com brilho controlado e rastro longo
   Desktop only / performance-safe
   ================================================================ */
.cursor-petal-layer{
  position:fixed;
  inset:0;
  z-index:260;
  pointer-events:none;
  overflow:hidden;
  contain:layout paint style;
}

.cursor-rose-glow{
  position:fixed;
  left:0;
  top:0;
  width:var(--cursor-glow-size, 96px);
  height:var(--cursor-glow-size, 96px);
  pointer-events:none;
  border-radius:999px;
  opacity:0;
  transform:translate3d(-50%, -50%, 0) scale(.42);
  background:
    radial-gradient(circle,
      rgba(126, 10, 22, .34) 0%,
      rgba(97, 7, 18, .24) 26%,
      rgba(73, 10, 19, .18) 48%,
      rgba(201, 165, 92, .035) 62%,
      transparent 80%);
  filter:blur(9px) saturate(1.08) brightness(.92);
  mix-blend-mode:screen;
  will-change:transform, opacity, filter;
  animation:cursorRoseGlowTrail var(--cursor-glow-life, 760ms) cubic-bezier(.16,.84,.3,1) forwards;
}

.cursor-rose-glow::after{
  content:"";
  position:absolute;
  inset:22%;
  border-radius:inherit;
  background:radial-gradient(circle, rgba(128,24,34,.18), rgba(73,10,19,.12) 48%, transparent 74%);
  filter:blur(6px);
}

.cursor-rose-petal{
  position:fixed;
  left:0;
  top:0;
  width:var(--cursor-petal-size, 76px);
  height:calc(var(--cursor-petal-size, 76px) * .82);
  pointer-events:none;
  background-image:url('../img/rose-petal-cursor.png');
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  opacity:0;
  transform:
    translate3d(-50%, -50%, 0)
    rotate(var(--cursor-petal-rot, 0deg))
    scale(var(--cursor-petal-scale, 1));
  filter:
    drop-shadow(0 0 5px rgba(151, 6, 7, .60))
    drop-shadow(0 0 13px rgba(97, 7, 18, .46))
    drop-shadow(0 0 22px rgba(73, 10, 19, .38))
    saturate(1.12)
    contrast(1.18)
    brightness(.84);
  mix-blend-mode:screen;
  will-change:transform, opacity, filter;
  animation:cursorRosePetalTrail var(--cursor-petal-life, 2200ms) cubic-bezier(.18,.74,.24,1) forwards;
}

.cursor-rose-petal::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:180%;
  height:180%;
  transform:translate(-50%, -50%);
  border-radius:999px;
  background:
    radial-gradient(circle, rgba(126,10,22,.18) 0%, rgba(73,10,19,.14) 42%, rgba(201,165,92,.04) 56%, transparent 76%);
  filter:blur(7px);
  opacity:.62;
  z-index:-1;
}

@keyframes cursorRoseGlowTrail{
  0%{
    opacity:0;
    transform:translate3d(-50%, -50%, 0) scale(.28);
  }
  18%{ opacity:.42; }
  100%{
    opacity:0;
    transform:translate3d(calc(-50% + var(--cursor-glow-dx, -18px)), calc(-50% + var(--cursor-glow-dy, -12px)), 0) scale(1.44);
    filter:blur(16px) saturate(1.02) brightness(.82);
  }
}

@keyframes cursorRosePetalTrail{
  0%{
    opacity:0;
    transform:
      translate3d(-50%, -50%, 0)
      rotate(var(--cursor-petal-rot, 0deg))
      scale(.20);
  }
  26%{ opacity:.78; }
  82%{ opacity:.50; }
  100%{
    opacity:0;
    transform:
      translate3d(calc(-50% + var(--cursor-petal-dx, 36px)), calc(-50% + var(--cursor-petal-dy, -58px)), 0)
      rotate(calc(var(--cursor-petal-rot, 0deg) + var(--cursor-petal-spin, 80deg)))
      scale(.14);
    filter:
      drop-shadow(0 0 7px rgba(126, 10, 22, .22))
      drop-shadow(0 0 18px rgba(73, 10, 19, .18))
      saturate(1.02)
      contrast(1.08)
      brightness(.82);
  }
}

@media (hover:none), (pointer:coarse), (max-width:960px){
  .cursor-petal-layer,
  .cursor-rose-glow,
  .cursor-rose-petal{display:none !important;}
}

@media (prefers-reduced-motion:reduce){
  .cursor-petal-layer,
  .cursor-rose-glow,
  .cursor-rose-petal{display:none !important;}
}

/* ================================================================
   AJUSTE CTA — Convite WhatsApp Group
   ================================================================ */
.finale__cta-row .btn--whatsapp-group{
  gap:12px;
}
.finale__cta-row .btn--whatsapp-group .whatsapp-icon{
  width:17px;
  height:17px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 17px;
}
.finale__cta-row .btn--whatsapp-group .whatsapp-icon svg{
  width:17px;
  height:17px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@media (max-width: 520px){
  .finale__cta-row .btn--whatsapp-group .whatsapp-icon,
  .finale__cta-row .btn--whatsapp-group .whatsapp-icon svg{
    width:18px;
    height:18px;
  }
}

/* ================================================================
   AJUSTE — vídeos em looping nos cards de Sessões de Apometria
   ================================================================ */
html body.carine-home-template .package-card{
  background:rgba(10,3,5,.74) !important;
}
html body.carine-home-template .package-card__video{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  z-index:0 !important;
  opacity:.58 !important;
  filter:sepia(.68) hue-rotate(318deg) saturate(1.45) brightness(.42) contrast(1.24) !important;
  mix-blend-mode:screen !important;
  pointer-events:none !important;
}
html body.carine-home-template .package-card__video-tint{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    radial-gradient(ellipse at 50% 16%, rgba(201,165,92,.16) 0%, rgba(201,165,92,.055) 28%, transparent 60%),
    radial-gradient(ellipse at 50% 80%, rgba(151,6,7,.18) 0%, transparent 62%),
    linear-gradient(180deg, rgba(10,3,5,.44) 0%, rgba(73,10,19,.42) 48%, rgba(10,3,5,.64) 100%),
    linear-gradient(90deg, rgba(10,3,5,.38) 0%, transparent 38%, transparent 62%, rgba(10,3,5,.38) 100%) !important;
}
html body.carine-home-template .package-card::before{
  z-index:2 !important;
  border-color:rgba(201,165,92,.18) !important;
}
html body.carine-home-template .package-card::after{
  z-index:1 !important;
  opacity:.9 !important;
}
html body.carine-home-template .package-card > :not(.package-card__video):not(.package-card__video-tint){
  position:relative !important;
  z-index:3 !important;
}
html body.carine-home-template .package-card__title,
html body.carine-home-template .package-card__price,
html body.carine-home-template .package-card__tag,
html body.carine-home-template .package-card__desc,
html body.carine-home-template .package-card__duration{
  text-shadow:0 2px 18px rgba(0,0,0,.86), 0 0 24px rgba(73,10,19,.38) !important;
}
html body.carine-home-template .package-card__duration{
  display:block !important;
  margin-top:14px !important;
  font-family:var(--f-deco,"Cinzel",serif) !important;
  font-size:10px !important;
  line-height:1.45 !important;
  letter-spacing:.26em !important;
  text-transform:uppercase !important;
  color:rgba(232,213,168,.86) !important;
}
html body.carine-home-template .package-card__desc{
  line-height:1.38 !important;
  color:rgba(243,232,210,.76) !important;
}
html body.carine-home-template .package-card__desc-main{
  display:block !important;
}
html body.carine-home-template .package-card__btn{
  backdrop-filter:blur(6px) saturate(130%) !important;
  -webkit-backdrop-filter:blur(6px) saturate(130%) !important;
}
@media (max-width:640px){
  html body.carine-home-template .package-card__video{opacity:.52 !important;}
}

