/* ==========================================================================
   overrides.css — loaded AFTER the page bundle. Small, intentional corrections
   for behaviour the dropped WordPress/Elementor JS used to handle.
   ========================================================================== */

/* Elementor scroll "motion effects" (rotate/translate/scale on scroll) are
   re-implemented in site.js (motion-fx engine), which sets the inline transform
   per element + device. It must not be clobbered, so no neutralization here. */

/* Elementor popup modals default to display:flex in the dialog CSS; Elementor's
   JS (dropped) kept them hidden until triggered. Drive visibility by .is-open. */
.tcel-popup-modal:not(.is-open) { display: none !important; }

/* Popup exit animation. The entrance fades the .dialog-widget-content in; on
   close, site.js adds .is-closing and keeps .is-open until this fade-out ends,
   so the popup (overlay + content) fades out instead of vanishing instantly. */
@keyframes tcel-popup-fade-out { from { opacity: 1; } to { opacity: 0; } }
.tcel-popup-modal.is-closing { animation: tcel-popup-fade-out .3s ease both !important; }

/* About page: the moon must never be clipped and should sit above the sections
   below it. Its section (.moonhead) clipped the moon's lower half via
   overflow:hidden; make it visible and give the section a stacking context so
   the moon renders on top of the following (dark-blue) section. */
.moonhead { overflow: visible !important; z-index: 5 !important; }

/* Prevent horizontal scroll from the About astronaut, whose scroll motion-fx
   translates it sideways past a narrow (tablet/phone) viewport. Clip it at the
   page-content wrapper — NOT on html/body: any overflow on the root element makes
   it a scroll container, which breaks mouse-wheel scrolling in some browsers (only
   the keyboard still scrolls). overflow:clip on a normal wrapper contains the
   overflow without creating a scroll container, so document scrolling is untouched. */
.page-content { overflow-x: clip; }

/* ==========================================================================
   Modern file uploader (WPForms Dropzone). The base layout came from WPForms'
   dropzone.min.css (not carried into the clean bundle), so the "attach any
   relevant documents" box rendered as bare inline text. Reproduce the
   original's appearance: a dashed, rounded box with the message centered.
   Global (the contact popup is included on every page via both footers).
   ========================================================================== */
.tcform-uploader {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 20px;
  border: 1px dashed rgba(0, 0, 0, .2);
  border-radius: 20px;
  margin-top: 15px;
  background: transparent;
  cursor: pointer;
  position: relative;
}
.tcform-uploader .dz-message {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 0;
}
.tcform-uploader .dz-message svg { display: none; }
.tcform-uploader .modern-title {
  display: block;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
  color: rgba(0, 0, 0, .7);
  text-align: center;
}
.tcform-uploader .modern-title span { text-decoration: underline; color: rgba(0, 0, 0, .7); cursor: pointer; }
.tcform-uploader .modern-hint {
  display: block;
  font-size: 15px;
  color: rgba(0, 0, 0, .4);
  text-align: center;
}
