/* ===== Chen Digital — "צור קשר" page polish layer ===== */
/* Same exact system as the homepage: self-hosted Talent FS, prototype tokens. */

@font-face { font-family: "Talent FS"; src: url("fonts/TalentFS-Light.woff") format("woff"); font-weight: 300; font-display: swap; }
@font-face { font-family: "Talent FS"; src: url("fonts/TalentFS-Regular.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Talent FS"; src: url("fonts/TalentFS-Medium.ttf") format("truetype"); font-weight: 500; font-display: swap; }
@font-face { font-family: "Talent FS"; src: url("fonts/TalentFS-Demibold.woff2") format("woff2"); font-weight: 600; font-display: swap; }
@font-face { font-family: "Talent FS"; src: url("fonts/TalentFS-Bold.woff2") format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Talent FS"; src: url("fonts/TalentFS-Black.woff2") format("woff2"); font-weight: 900; font-display: swap; }

body.page-id-107 {
  --cd-gold-dark: #a7855a;
  --cd-gold: #c9ae7b;
  --cd-gold-light: #d7c4a3;
  --cd-cream: #f6f2ea;
  --cd-paper: #fbf9f5;
  --cd-ink: #1b1815;
  --cd-ink-soft: #4a443c;
  --cd-line: #e6dfd2;
  --cd-shadow: 0 30px 60px -30px rgba(27,24,21,.25);
  --cd-ease: cubic-bezier(.22,1,.36,1);
  font-family: "Talent FS", "Segoe UI", Arial, sans-serif;
  color: var(--cd-ink);
}

body.page-id-107 h1, body.page-id-107 h2, body.page-id-107 h3,
body.page-id-107 .elementor-heading-title,
body.page-id-107 .elementor-icon-box-title {
  font-family: "Talent FS", "Segoe UI", Arial, sans-serif !important;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--cd-ink) !important;
}
body.page-id-107 .elementor-widget-text-editor, body.page-id-107 p {
  font-family: "Talent FS", "Segoe UI", Arial, sans-serif !important;
  color: var(--cd-ink-soft);
  line-height: 1.75;
}
body.page-id-107 .cd-about-h1 { font-size: clamp(34px,4.4vw,52px); text-align: center; }
body.page-id-107 .sec-contact-hero { text-align: center; background: var(--cd-paper) !important; padding-top: 40px; }
body.page-id-107 .sec-contact-hero .elementor-widget-text-editor { max-width: 560px; margin: 0 auto; text-align: center; }

/* ---------- Buttons ---------- */
body.page-id-107 .elementor-button,
body.page-id-107 .elementor-field-type-submit button {
  border-radius: 100px !important;
  padding: 16px 30px !important;
  font-family: "Talent FS", sans-serif !important;
  font-weight: 700 !important;
  background: var(--cd-ink) !important;
  color: var(--cd-paper) !important;
  box-shadow: none !important;
  transition: transform .35s var(--cd-ease), box-shadow .35s;
}
body.page-id-107 .elementor-button:hover,
body.page-id-107 .elementor-field-type-submit button:hover { box-shadow: 0 16px 30px -12px rgba(27,24,21,.4) !important; }

/* ---------- Form + image section ---------- */
body.page-id-107 .sec-contact-form { background-color: var(--cd-cream) !important; border-radius: 28px; overflow: hidden; padding: 50px !important; }
body.page-id-107 .contact-form-visual-wrap { position: relative; }
body.page-id-107 .contact-form-visual-wrap img { border-radius: 24px; box-shadow: var(--cd-shadow); object-fit: cover; width: 100%; }
body.page-id-107 .cd-tag {
  position: absolute; top: 24px; right: -18px; z-index: 3;
  background: var(--cd-paper); border: 1px solid var(--cd-line); border-radius: 100px;
  padding: 10px 18px; font-size: 13px; font-weight: 700; box-shadow: var(--cd-shadow); white-space: nowrap;
}
body.page-id-107 .sec-contact-form .elementor-widget-form { flex: 1 1 0; }

/* ---------- Form fields ---------- */
body.page-id-107 .elementor-field-group input,
body.page-id-107 .elementor-field-group select,
body.page-id-107 .elementor-field-group textarea {
  border-radius: 12px !important;
  border: 1.5px solid var(--cd-line) !important;
  background: var(--cd-paper) !important;
  padding: 14px 16px !important;
  font-family: "Talent FS", sans-serif !important;
  font-size: 15px !important;
  color: var(--cd-ink) !important;
}
body.page-id-107 .elementor-field-group > label {
  font-family: "Talent FS", sans-serif !important;
  font-size: 13px !important;
  color: var(--cd-ink-soft) !important;
  font-weight: 600;
}
body.page-id-107 .elementor-field-type-acceptance .elementor-field-subgroup label {
  font-family: "Talent FS", sans-serif !important;
  font-size: 13px !important;
  color: var(--cd-ink-soft) !important;
}
body.page-id-107 .elementor-field-type-acceptance a { color: var(--cd-gold-dark) !important; }

/* ---------- Contact methods ---------- */
body.page-id-107 .sec-contact-methods { background: var(--cd-paper) !important; }
body.page-id-107 .sec-contact-methods .elementor-widget-icon-box {
  flex: 1 1 0;
  background: var(--cd-cream) !important;
  border-radius: 20px !important;
  padding: 30px 22px !important;
  text-align: center;
  transition: transform .4s var(--cd-ease), box-shadow .4s;
}
body.page-id-107 .sec-contact-methods .elementor-widget-icon-box:hover {
  transform: translateY(-8px);
  box-shadow: var(--cd-shadow);
}
body.page-id-107 .sec-contact-methods .elementor-icon-box-icon { color: var(--cd-gold-dark) !important; }
body.page-id-107 .sec-contact-methods .elementor-icon-box-title { color: var(--cd-ink) !important; font-size: 18px !important; }
body.page-id-107 .sec-contact-methods .elementor-icon-box-description { color: var(--cd-ink-soft) !important; }

/* ---------- Instagram section ---------- */
body.page-id-107 .sec-contact-instagram { background: var(--cd-cream) !important; text-align: center; }
body.page-id-107 .sec-contact-instagram .elementor-heading-title { margin-bottom: 30px; }

/* ---------- Curtain text reveal ---------- */
body.page-id-107 .cd-curtain { display: block; overflow: hidden; }
body.page-id-107 .cd-curtain-inner { display: block; transform: translateY(112%); }

/* ---------- Custom cursor ---------- */
body.page-id-107.has-cursor, body.page-id-107.has-cursor a, body.page-id-107.has-cursor button { cursor: none; }
.cd-cursor-dot, .cd-cursor-ring { position: fixed; top: 0; left: 0; border-radius: 50%; pointer-events: none; z-index: 9998; }
.cd-cursor-dot { width: 6px; height: 6px; margin: -3px 0 0 -3px; background: var(--cd-ink, #1b1815); }
.cd-cursor-ring {
  width: 36px; height: 36px; margin: -18px 0 0 -18px; border: 1px solid var(--cd-ink, #1b1815); opacity: .55;
  transition: width .35s, height .35s, margin .35s, opacity .35s, background .35s;
}
.cd-cursor-ring.hover { width: 60px; height: 60px; margin: -30px 0 0 -30px; background: rgba(27,24,21,.06); opacity: 1; }

/* ---------- Reveal (generic) ---------- */
body.page-id-107 .cd-reveal { opacity: 0; transform: translateY(28px); }

@media (prefers-reduced-motion: reduce) {
  body.page-id-107 .cd-curtain-inner { transform: none !important; }
  body.page-id-107 .cd-reveal { opacity: 1 !important; transform: none !important; }
}

@media (max-width: 1024px) {
  body.page-id-107 .sec-contact-form { flex-wrap: wrap; padding: 30px !important; }
  body.page-id-107 .sec-contact-methods { flex-wrap: wrap; }
  body.page-id-107 .cd-tag { right: 12px; }
}

@media (max-width: 700px) {
  /* flex:1 1 0 cards with wrap still don't reliably drop to their own row —
     they just shrink until content (like "וואטסאפ") overflows the card
     edge. Force a real single-column stack on narrow screens instead. */
  body.page-id-107 .sec-contact-methods { flex-direction: column !important; }
  body.page-id-107 .sec-contact-methods .elementor-widget-icon-box {
    flex: none !important;
    width: 100% !important;
  }
}
