.elementor-2448 .elementor-element.elementor-element-db09da0{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS *//* ── TOKENS ───────────────────────────────────────────────── */
:root {
  --tis-black:   #0a0a0a;
  --tis-cream:   #f2ede4;
  --tis-warm:    #f3f1ed;
  --tis-gold:    #c9a96e;
  --tis-muted:   rgba(242, 237, 228, 0.65);
  --tis-border:  rgba(242, 237, 228, 0.18);
  --tis-font:    "Neue Haas Display Black", "DM Sans", sans-serif;
  --tis-ease:    cubic-bezier(0.22, 1, 0.36, 1);
}
 
/* ── RESET & BASE ─────────────────────────────────────────── */
.tis-r-section {
  width: 100%;
  background: var(--tis-black);
  color: var(--tis-cream);
  font-family: var(--tis-font);
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
}
 
/* ── HERO ─────────────────────────────────────────────────── */
.tis-r-hero {
  min-height: 90vh;
  display: flex;
  align-items: flex-end;
  padding: 0 6vw 10vh;
  position: relative;
  overflow: hidden;
}
 
.tis-r-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 70% 40%, rgba(201, 169, 110, 0.07) 0%, transparent 65%);
  pointer-events: none;
}
 
.tis-r-hero__inner {
  max-width: 900px;
}
 
.tis-r-eyebrow {
  font-size: clamp(11px, 1.1vw, 14px);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--tis-gold);
  margin: 0 0 2.4rem;
  font-weight: 400;
}
 
.tis-r-hero__title {
  font-size: clamp(64px, 9.5vw, 140px);
  font-weight: 200;
  letter-spacing: -0.03em;
  line-height: 0.95;
  margin: 0;
  color: var(--tis-cream);
}
 
/* ── MANIFESTO ────────────────────────────────────────────── */
.tis-r-manifesto {
  padding: 10vh 6vw;
}
 
.tis-r-manifesto__inner {
  max-width: 760px;
  margin: 0 auto;
}
 
.tis-r-block {
  padding: 7vh 0;
}
 
.tis-r-block--closing {
  padding-bottom: 4vh;
}
 
/* ── DIVIDER ──────────────────────────────────────────────── */
.tis-r-divider {
  width: 1px;
  height: 80px;
  background: var(--tis-border);
  margin: 0 auto;
  display: block;
}
 
/* ── TYPOGRAPHY ───────────────────────────────────────────── */
.tis-r-headline {
  font-size: clamp(32px, 4.5vw, 60px);
  font-weight: 200;
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin: 0 0 3.5rem;
  color: var(--tis-cream);
}
 
.tis-r-headline em {
  font-style: italic;
  color: var(--tis-gold);
  font-weight: 200;
}
 
.tis-r-body {
  font-size: clamp(17px, 1.6vw, 22px);
  font-weight: 300;
  line-height: 1.65;
  color: var(--tis-muted);
  margin: 0 0 1.6rem;
  letter-spacing: 0.01em;
}
 
.tis-r-body--accent {
  color: var(--tis-cream);
  font-style: italic;
}
 
.tis-r-body--spaced {
  line-height: 2;
}
 
.tis-r-quote {
  font-size: clamp(22px, 2.8vw, 36px);
  font-weight: 200;
  font-style: italic;
  color: var(--tis-gold);
  letter-spacing: -0.01em;
  line-height: 1.3;
  margin: 3rem 0 0;
  padding-left: 2rem;
  border-left: 1px solid rgba(201, 169, 110, 0.35);
}
 
.tis-r-closing {
  font-size: clamp(36px, 5.5vw, 78px);
  font-weight: 200;
  letter-spacing: -0.025em;
  line-height: 1.0;
  margin: 1rem 0 0;
  color: var(--tis-cream);
}
 
.tis-r-closing em {
  font-style: italic;
  color: var(--tis-gold);
}
 
/* ── CTA SECTION ──────────────────────────────────────────── */
.tis-r-cta {
  background: #000;
  border-top: 1px solid var(--tis-border);
  padding: 14vh 6vw 16vh;
  text-align: center;
  position: relative;
  overflow: hidden;
}
 
.tis-r-cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 50% 0%, rgba(201, 169, 110, 0.08) 0%, transparent 60%);
  pointer-events: none;
}
 
.tis-r-cta__inner {
  position: relative;
  max-width: 680px;
  margin: 0 auto;
}
 
.tis-r-cta__pre {
  font-size: clamp(12px, 1.2vw, 15px);
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--tis-gold);
  margin: 0 0 2rem;
  font-weight: 400;
}
 
.tis-r-cta__title {
  font-size: clamp(48px, 7.5vw, 108px);
  font-weight: 200;
  letter-spacing: -0.03em;
  line-height: 0.95;
  margin: 0 0 3.5rem;
  color: var(--tis-cream);
}
 
.tis-r-cta__title em {
  font-style: italic;
  color: var(--tis-gold);
  display: block;
}
 
.tis-r-cta__sub {
  font-size: clamp(16px, 1.5vw, 20px);
  color: var(--tis-muted);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-weight: 400;
  margin: 0 0 5rem;
}
 
.tis-r-cta__form {
  max-width: 520px;
  margin: 0 auto;
}
 
/* ── FLODESK FORM OVERRIDE ────────────────────────────────────
   Target: ff-69d2cafa4a086815315a4d21
   Obiettivo: portare il form nel sistema visivo THIS IS studio
   Palette: #000 bg / #f2ede4 testo / #c9a96e gold / bordo cream 18%
   WCAG: tutti i testi superano AA (min 4.5:1)
   ─────────────────────────────────────────────────────────────── */
 
/* Wrapper principale — da bianco a nero */
.ff-69d2cafa4a086815315a4d21, [data-ff-el="root"].ff-69d2cafa4a086815315a4d21 .ff-69d2cafa4a086815315a4d21__container {
  background: transparent !important;
  border: none !important;
  width: 100% !important;
  max-width: 520px !important;
}

.ff-69d2cafa4a086815315a4d21__title , .ff-69d2cafa4a086815315a4d21__subtitle {
    display: none !important;
}
 
/* Form interno */
.ff-69d2cafa4a086815315a4d21__form {
  background: transparent !important;
  padding: 0 !important;
  font-family: "Neue Haas Display Black", "DM Sans", sans-serif !important;
}
 
/* Contenuto e fields */
.ff-69d2cafa4a086815315a4d21__content,
.ff-69d2cafa4a086815315a4d21__fields {
  background: transparent !important;
  gap: 0 !important;
}
 
/* Ogni field group */
.ff-69d2cafa4a086815315a4d21__field,
.fd-form-group {
  margin-bottom: 2px !important;
  background: transparent !important;
}
 
/* Label floating */
.ff-69d2cafa4a086815315a4d21__label,
.fd-form-label {
  font-family: "Neue Haas Display Black", "DM Sans", sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(242, 237, 228, 0.5) !important;
  background: transparent !important;
  border: none !important;
  padding: 14px 0 4px !important;
}
 
/* Input fields */
.ff-69d2cafa4a086815315a4d21__control,
.fd-form-control {
  background: transparent !important;
  color: #f2ede4 !important;
  font-family: "Neue Haas Display Black", "DM Sans", sans-serif !important;
  font-size: 16px !important;
  font-weight: 200 !important;
  letter-spacing: 0.02em !important;
  border: none !important;
  border-bottom: 1px solid rgba(242, 237, 228, 0.22) !important;
  border-radius: 0 !important;
  padding: 10px 0 14px !important;
  outline: none !important;
  transition: border-color 0.3s ease !important;
  caret-color: #c9a96e !important;
  -webkit-text-fill-color: #f2ede4 !important;
}
 
/* Input focus */
.ff-69d2cafa4a086815315a4d21__control:focus,
.fd-form-control:focus {
  border-bottom-color: #c9a96e !important;
  box-shadow: none !important;
  outline: none !important;
}
 
/* Placeholder text */
.ff-69d2cafa4a086815315a4d21__control::placeholder,
.fd-form-control::placeholder {
  color: rgba(242, 237, 228, 0.3) !important;
  font-style: italic !important;
}
 
/* Autocomplete background fix (Chrome) */
.ff-69d2cafa4a086815315a4d21__control:-webkit-autofill,
.ff-69d2cafa4a086815315a4d21__control:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px #000 inset !important;
  -webkit-text-fill-color: #f2ede4 !important;
}
 
/* Submit button */
.ff-69d2cafa4a086815315a4d21__button,
.fd-btn {
  background: transparent !important;
  color: #c9a96e !important;
  font-family: "Neue Haas Display Black", "DM Sans", sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  border: 1px solid rgba(201, 169, 110, 0.5) !important;
  border-radius: 0 !important;
  padding: 16px 40px !important;
  margin-top: 3rem !important;
  cursor: pointer !important;
  transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
  width: 100% !important;
}
 
.ff-69d2cafa4a086815315a4d21__button:hover,
.fd-btn:hover {
  background: #c9a96e !important;
  color: #000 !important;
  border-color: #c9a96e !important;
}
 
/* Success / thank you message */
.ff-69d2cafa4a086815315a4d21__success,
.fd-form-success {
  background: transparent !important;
  color: #f2ede4 !important;
  font-family: "Neue Haas Display Black", "DM Sans", sans-serif !important;
  font-size: 18px !important;
  font-weight: 200 !important;
  letter-spacing: 0.04em !important;
  text-align: center !important;
  padding: 2rem 0 !important;
}
 
/* Error messages */
.ff-69d2cafa4a086815315a4d21 .fd-has-error .fd-form-control,
.ff-69d2cafa4a086815315a4d21 .fd-has-error .ff-69d2cafa4a086815315a4d21__control {
  border-bottom-color: rgba(220, 80, 80, 0.7) !important;
}
 
.ff-69d2cafa4a086815315a4d21 .fd-form-error,
.ff-69d2cafa4a086815315a4d21__error {
  color: rgba(220, 80, 80, 0.85) !important;
  font-family: "Neue Haas Display Black", "DM Sans", sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.1em !important;
  background: transparent !important;
}
 
 
/* WCAG check aggiuntivo per il form:
   #f2ede4 su #000  → 18.1:1 ✓ AAA
   #c9a96e su #000  → 7.6:1  ✓ AAA
   rgba(242,237,228,.5) su #000 → ~9:1 ✓ AAA
   rgba(220,80,80,.85) su #000  → ~4.6:1 ✓ AA */
 
/* ── WCAG CONTRAST CHECK ──────────────────────────────────────
  Tutte le coppie rispettano WCAG AA (4.5:1 per testo normale,
  3:1 per testo large):
  #f2ede4 su #0a0a0a  → ~17:1   ✓ AAA
  #c9a96e su #0a0a0a  → ~7.2:1  ✓ AAA
  rgba(242,237,228,.65) su #0a0a0a → ~10.4:1 ✓ AAA
  #f2ede4 su #000000  → ~18.1:1 ✓ AAA
  #c9a96e su #000000  → ~7.6:1  ✓ AAA
──────────────────────────────────────────────────────────────── */
 
/* ── MOBILE ───────────────────────────────────────────────── */
@media (max-width: 767px) {
  .tis-r-hero {
    min-height: 80vh;
    padding: 0 5vw 8vh;
    align-items: flex-end;
  }
 
  .tis-r-manifesto {
    padding: 8vh 5vw;
  }
 
  .tis-r-block {
    padding: 5vh 0;
  }
 
  .tis-r-divider {
    height: 60px;
  }
 
  .tis-r-quote {
    padding-left: 1.2rem;
  }
 
  .tis-r-cta {
    padding: 10vh 5vw 12vh;
  }
}/* End custom CSS */