.elementor-2589 .elementor-element.elementor-element-a215640{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS *//* ── VARIABILI ── */
:root { --gold:#c4a882; --dark:#080808; --cream:#f2ede4; --warm:#ede8dc; --ink:#1a1a1a; }

/* ── BASE ── */
html { scroll-behavior:smooth; }
body {
  font-family:'DM Sans','Helvetica Neue',sans-serif !important;
  background:#080808 !important;
  color:#f2ede4 !important;
  font-weight:300 !important;
  overflow-x:hidden !important;
  -webkit-font-smoothing:antialiased !important;
  scrollbar-width:thin;
  scrollbar-color:rgba(196,168,130,.3) transparent;
}

/* ── GRAIN ── */
.grain {
  position:fixed; inset:0; pointer-events:none; z-index:10000; opacity:.55;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E");
}

/* ══ HERO HIW ══ */
.hiw-hero {
  min-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  background: #080808 !important;
  padding: 0 64px 100px !important;
  position: relative !important;
  overflow: hidden !important;
}
.hiw-hero::before {
  content: '';
  position: absolute; top: -10%; left: -8%;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(196,168,130,.07) 0%, rgba(196,168,130,.02) 40%, transparent 70%);
  pointer-events: none; z-index: 0;
}
.hiw-hero-inner { position: relative; z-index: 1; }

/* Tag */
.hiw-hero-tag {
  font-size: 11px; letter-spacing: .4em; text-transform: uppercase;
  color: #c4a882; margin-bottom: 48px;
  display: flex; align-items: center; gap: 18px;
}
.hiw-hero-tag::before { content: ''; width: 36px; height: 1px; background: #c4a882; }

/* H1 */
.hiw-hero-h1 {
  font-family: 'DM Sans', sans-serif !important;
  font-size: clamp(44px, 7vw, 100px) !important;
  font-weight: 300 !important;
  line-height: 1.04 !important;
  letter-spacing: -.03em !important;
  color: #f2ede4 !important;
  margin: 0 0 56px !important;
}
.hiw-hero-h1 em {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-weight: 300 !important;
  font-size: 1.06em !important;
  color: #c4a882 !important;
}

/* Body lines sotto H1 */
.hiw-hero-body { max-width: 680px; }

/* Scroll indicator */
.hiw-scroll-ind {
  position: absolute; bottom: 48px; right: 64px;
  display: flex; flex-direction: column; align-items: center; gap: 10px;
  font-size: 9px; letter-spacing: .2em; text-transform: uppercase;
  color: rgba(242,237,228,.18);
}
.hiw-scroll-ln {
  width: 1px; height: 44px;
  background: rgba(242,237,228,.1);
  position: relative; overflow: hidden;
}
.hiw-scroll-ln::after {
  content: '';
  position: absolute; top: -100%; left: 0;
  width: 100%; height: 100%;
  background: #c4a882;
  animation: hiw-sd 2s ease-in-out infinite;
}
@keyframes hiw-sd {
  0%  { top: -100% }
  50% { top: 100%  }
  100%{ top: 100%  }
}

/* ── SECTIONS ── */
.s-dark  { background:#080808 !important; padding:120px 64px !important; }
.s-light { background:#ede8dc !important; color:#1a1a1a !important; padding:120px 64px !important; }

/* ── GRIDS ── */
.g2     { display:grid !important; grid-template-columns:1fr 1fr !important; gap:80px !important; align-items:start !important; }
.g2-c   { display:grid !important; grid-template-columns:1fr 1fr !important; gap:80px !important; align-items:center !important; }
.g3     { display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:2px !important; }
.g2-faq { display:grid !important; grid-template-columns:repeat(2,1fr) !important; gap:2px !important; }
.g2-img { display:grid !important; grid-template-columns:1fr 1fr !important; gap:2px !important; }
.g3-img { display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:2px !important; }

/* ── SECTION LABEL ── */
.sn   { font-size:11px; font-weight:300; letter-spacing:.35em; text-transform:uppercase; color:rgba(242,237,228,.45); margin-bottom:56px; display:flex; align-items:center; gap:18px; }
.sn::after   { content:''; flex:1; height:1px; background:rgba(242,237,228,.12); max-width:100px; }
.sn-l { font-size:11px; font-weight:300; letter-spacing:.35em; text-transform:uppercase; color:rgba(26,26,26,.4); margin-bottom:56px; display:flex; align-items:center; gap:18px; }
.sn-l::after { content:''; flex:1; height:1px; background:rgba(26,26,26,.12); max-width:100px; }

/* ── MARQUEE ── */
.mq-w { overflow:hidden; padding:22px 0; border-top:1px solid rgba(242,237,228,.04); border-bottom:1px solid rgba(242,237,228,.04); }
.mq-t { display:flex; width:max-content; animation:hiw-mq 28s linear infinite; }
.mq-i { font-family:'Cormorant Garamond',Georgia,serif; font-size:14px; font-style:italic; font-weight:300; color:rgba(242,237,228,.1); letter-spacing:.08em; padding:0 44px; white-space:nowrap; }
.mq-s { color:#c4a882; opacity:.25; }
@keyframes hiw-mq { from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* ── P-LINE (ereditate dal BAS, ora in hero) ── */
.p-line {
  font-size:16px; font-weight:300; color:rgba(242,237,228,.48);
  line-height:1.75; padding:14px 0;
  border-bottom:1px solid rgba(242,237,228,.05);
  transition:color .4s, padding-left .4s; cursor:default;
}
.p-line:first-child { border-top:1px solid rgba(242,237,228,.05); }
.p-line:hover { color:rgba(242,237,228,.78); padding-left:6px; }

/* ── CL-ITEM (sezione conseguenze) ── */
.cl-item { padding:18px 0; font-size:16px; font-weight:300; color:rgba(242,237,228,.5); line-height:1.65; border-top:1px solid rgba(242,237,228,.06); transition:color .4s, padding-left .4s; cursor:default; }
.cl-item:last-child { border-bottom:1px solid rgba(242,237,228,.06); }
.cl-item:hover { color:rgba(242,237,228,.82); padding-left:6px; }

/* ── SOLUTION ── */
.pull   { font-family:'Cormorant Garamond',Georgia,serif !important; font-style:italic !important; font-size:clamp(22px,2.4vw,32px) !important; font-weight:300 !important; line-height:1.45 !important; color:rgba(26,26,26,.7) !important; border-left:2px solid #c4a882 !important; padding-left:28px !important; margin:0 0 40px !important; }
.body-l { font-size:16px; font-weight:300; color:rgba(26,26,26,.6); line-height:1.9; }
.body-l p { margin:0 0 14px; }
.body-l p:last-child { margin:0; }
.sol-img-cap { font-size:11px; letter-spacing:.25em; text-transform:uppercase; color:rgba(26,26,26,.35); margin-top:14px; }
.dark-box { background:#080808; color:#f2ede4; padding:40px 48px; position:relative; overflow:hidden; margin-top:40px; }
.dark-box::before { content:''; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg,#c4a882,transparent); }
.dark-box p { font-family:'Cormorant Garamond',Georgia,serif !important; font-style:italic !important; font-size:clamp(18px,1.8vw,24px) !important; font-weight:300 !important; color:rgba(242,237,228,.8) !important; line-height:1.55 !important; }

/* ── HOW CARDS ── */
.how-card { background:rgba(242,237,228,.025); padding:48px 40px; position:relative; overflow:hidden; transition:background .5s; }
.how-card:hover { background:rgba(242,237,228,.055); }
.how-card::before { content:''; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg,#c4a882,transparent); transform:scaleX(0); transform-origin:left; transition:transform .6s cubic-bezier(.4,0,.2,1); }
.how-card:hover::before { transform:scaleX(1); }
.how-sup   { font-size:11px; letter-spacing:.25em; text-transform:uppercase; color:rgba(242,237,228,.45); margin-bottom:28px; }
.how-title { font-family:'Cormorant Garamond',Georgia,serif !important; font-size:24px !important; font-style:italic !important; font-weight:400 !important; color:#f2ede4 !important; margin-bottom:18px !important; }
.how-body  { font-size:16px; font-weight:300; color:rgba(242,237,228,.48); line-height:1.85; }

/* ── MID CTA ── */
.mcta { background:#ede8dc !important; color:#1a1a1a !important; padding:140px 64px !important; text-align:center !important; position:relative !important; overflow:hidden !important; }
.mcta::before { content:''; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:600px; height:600px; background:radial-gradient(circle,rgba(196,168,130,.1) 0%,rgba(196,168,130,.03) 40%,transparent 70%); pointer-events:none; z-index:0; }
.mcta-in  { position:relative; z-index:1; }
.mcta-q   { font-family:'Cormorant Garamond',Georgia,serif !important; font-size:clamp(28px,3.8vw,56px) !important; font-weight:300 !important; font-style:italic !important; line-height:1.25 !important; color:#1a1a1a !important; margin:0 auto 14px !important; max-width:720px !important; }
.mcta-sub { font-size:16px; font-weight:300; color:rgba(26,26,26,.5); margin:0 0 44px; }

/* ── BUTTONS ── */
.btn     { display:inline-block !important; font-family:'DM Sans',sans-serif !important; font-size:11px !important; letter-spacing:.3em !important; text-transform:uppercase !important; font-weight:400 !important; padding:16px 44px !important; cursor:pointer !important; text-decoration:none !important; transition:all .4s cubic-bezier(.4,0,.2,1) !important; }
.btn-dk  { color:#1a1a1a !important; border:1px solid rgba(26,26,26,.3) !important; background:transparent !important; }
.btn-dk:hover { background:#1a1a1a !important; color:#ede8dc !important; border-color:#1a1a1a !important; }
.btn-lt  { color:#f2ede4 !important; border:1px solid rgba(242,237,228,.25) !important; background:transparent !important; }
.btn-lt:hover { background:#f2ede4 !important; color:#080808 !important; }

/* ── PROCESS ── */
.proc-sticky { font-family:'DM Sans',sans-serif !important; font-size:clamp(24px,2.6vw,38px) !important; font-weight:300 !important; letter-spacing:-.01em !important; line-height:1.3 !important; color:#f2ede4 !important; position:sticky !important; top:140px !important; }
.ps { display:flex; gap:24px; padding:32px 0; border-top:1px solid rgba(242,237,228,.06); transition:border-color .4s; }
.ps:hover { border-top-color:rgba(196,168,130,.25); }
.ps-n { font-family:'Cormorant Garamond',Georgia,serif; font-size:30px; font-weight:300; font-style:italic; color:rgba(196,168,130,.2); min-width:36px; padding-top:2px; }
.ps-t { font-size:16px; font-weight:400; color:#f2ede4; letter-spacing:.04em; margin-bottom:10px; }
.ps-b { font-size:16px; font-weight:300; color:rgba(242,237,228,.45); line-height:1.85; }

/* ── DELIVERABLES ── */
.del-intro { font-size:16px; font-weight:300; color:rgba(26,26,26,.6); line-height:1.8; margin-bottom:28px; }
.di { padding:20px 0; border-top:1px solid rgba(26,26,26,.08); font-size:16px; font-weight:300; color:rgba(26,26,26,.62); line-height:1.75; display:flex; align-items:baseline; gap:14px; transition:color .4s, transform .4s; cursor:default; }
.di:last-child { border-bottom:1px solid rgba(26,26,26,.08); }
.di:hover { color:rgba(26,26,26,.88); transform:translateX(6px); }
.di-dash { color:#c4a882; font-size:18px; flex-shrink:0; }
.id-box { background:#080808; color:#f2ede4; padding:48px; margin-top:36px; position:relative; overflow:hidden; }
.id-box::before { content:''; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg,#c4a882,transparent); }
.id-box p { font-family:'Cormorant Garamond',Georgia,serif !important; font-style:italic !important; font-size:clamp(20px,2.2vw,30px) !important; font-weight:300 !important; line-height:1.5 !important; color:rgba(242,237,228,.88) !important; }

/* ── SCARCITY + FAQ ── */
.sc-h   { font-family:'DM Sans',sans-serif !important; font-size:clamp(28px,3vw,48px) !important; font-weight:300 !important; letter-spacing:-.02em !important; line-height:1.2 !important; color:rgba(242,237,228,.92) !important; margin:0 0 14px !important; }
.sc-sub { font-size:16px; font-weight:300; color:rgba(242,237,228,.4); margin:0 0 32px; line-height:1.75; }
.faq-tag  { font-size:11px; letter-spacing:.35em; text-transform:uppercase; color:rgba(242,237,228,.4); margin-bottom:32px; }
.faq-card { background:rgba(242,237,228,.025); padding:44px 40px; transition:background .5s; }
.faq-card:hover { background:rgba(242,237,228,.045); }
.faq-q { font-family:'Cormorant Garamond',Georgia,serif !important; font-size:18px !important; font-weight:400 !important; color:rgba(242,237,228,.92) !important; font-style:italic !important; margin-bottom:16px !important; }
.faq-a { font-size:16px; font-weight:300; color:rgba(242,237,228,.45); line-height:1.85; }

/* ── LINE REVEAL ── */
.line-rv { height:1px; background:linear-gradient(90deg,#c4a882,rgba(196,168,130,.03)); transform:scaleX(0); transform-origin:left; will-change:transform; transition:transform 1.2s cubic-bezier(.16,1,.3,1); }
.line-rv.vis { transform:scaleX(1); }

/* ── CLOSING ── */
.closing { background:#080808 !important; padding:100px 64px !important; border-top:1px solid rgba(242,237,228,.06) !important; }
.closing-c { max-width:660px; margin:0 auto; text-align:center; }
.closing-c p { font-family:'Cormorant Garamond',Georgia,serif !important; font-style:italic !important; font-size:clamp(20px,2.2vw,28px) !important; font-weight:300 !important; line-height:1.55 !important; color:rgba(242,237,228,.55) !important; margin:0 0 12px !important; }
.closing-c p:last-child { margin:0 !important; color:rgba(242,237,228,.8) !important; }

/* ── FINAL CTA ── */
.fcta { background:#080808 !important; padding:160px 64px !important; text-align:center !important; position:relative !important; overflow:hidden !important; }
.fcta::before { content:''; position:absolute; top:35%; left:50%; transform:translate(-50%,-50%); width:800px; height:800px; background:radial-gradient(circle,rgba(196,168,130,.08) 0%,rgba(196,168,130,.02) 40%,transparent 60%); pointer-events:none; z-index:0; }
.fcta-in  { position:relative; z-index:1; }
.fcta-h   { font-family:'Cormorant Garamond',Georgia,serif !important; font-size:clamp(42px,6.5vw,100px) !important; font-weight:300 !important; font-style:italic !important; line-height:1.05 !important; color:#f2ede4 !important; margin:0 0 18px !important; }
.fcta-sub { font-size:16px; font-weight:300; color:rgba(242,237,228,.5); margin:0 0 48px; }
.fcta-price { font-size:11px; letter-spacing:.25em; text-transform:uppercase; color:rgba(242,237,228,.2); margin-top:32px; }

/* ── RESPONSIVE ── */
@media (max-width:1024px) {
  .g2,.g2-c,.g2-faq,.g2-img,.g3,.g3-img { grid-template-columns:1fr !important; }
  .s-dark,.s-light { padding:80px 32px !important; }
  .hiw-hero { padding:0 32px 80px !important; }
  .mcta,.fcta,.closing { padding:80px 32px !important; }
  .proc-sticky { position:static !important; }
}
@media (max-width:767px) {
  .hiw-scroll-ind { display:none !important; }
  .s-dark,.s-light { padding:72px 24px !important; }
  .hiw-hero { padding:0 24px 72px !important; }
  .mcta,.fcta,.closing { padding:72px 24px !important; }
}/* End custom CSS */