/* =========================================================
   WRITE COMPANY CHILD THEME – twc.css
   ========================================================= */

/* ---------- HEADER ---------- */
.twc-header {
  background:#fff;
  border-bottom:1px solid #eee;
}
.twc-header__inner {
  max-width:1200px;
  margin:0 auto;
  padding:12px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

/* Logo: never exceed half the header width on desktop */
.twc-logo { display:block; flex:1 1 auto; }
.twc-logo img { max-width:50%; height:auto; display:block; }

/* Burger button */
.twc-burger {
  font:inherit;
  background:#fff;
  color:#000;
  border:1px solid #ddd;
  border-radius:6px;
  padding:10px 14px;
  line-height:1;
  cursor:pointer;
}
.twc-burger__label { margin-right:8px; font-weight:600; }
.twc-burger__icon { font-size:24px; }

/* Navigation */
.twc-nav { display:none; border-top:1px solid #eee; }
.twc-nav.is-open { display:block; }
.twc-nav__list { list-style:none; margin:0; padding:8px 16px; }
.twc-nav__list > li { margin:0; }
.twc-nav__list a { display:block; padding:10px 8px; text-decoration:none; color:#000; }

@media (min-width:900px){
  .twc-nav__list { display:flex; gap:16px; padding:12px 16px; }
}

/* ---------- FRONT (WELCOME) AREA ---------- */
.twc-front .twc-hero { background:#165D91; min-height:calc(100vh - 64px); }
.twc-hero__inner {
  max-width:1000px;
  margin:0 auto;
  padding:48px 16px 64px;
  color:#fff;
}

/* Force all text and headings to white in hero */
.twc-hero__inner,
.twc-hero__inner p,
.twc-hero__inner li,
.twc-hero__inner h1,
.twc-hero__inner h2,
.twc-hero__inner h3,
.twc-hero__inner h4,
.twc-hero__inner h5,
.twc-hero__inner h6 {
  color:#fff !important;
}

/* Keep ALL links white in this region */
.twc-hero__inner a,
.twc-hero__inner a:visited,
.twc-hero__inner a:hover,
.twc-hero__inner a:active,
.twc-hero__inner a:focus {
  color:#fff !important;
  text-decoration:underline;
  outline:none;
}

/* Type scale */
.twc-hero__inner h1 { font-size:clamp(28px, 3.6vw, 44px); margin:0 0 12px; font-weight:800; }
.twc-hero__inner h2 { font-size:clamp(22px, 2.6vw, 30px); margin:24px 0 12px; font-weight:700; }
.twc-hero__inner p  { font-size:18px; line-height:1.6; margin:0 0 14px; }

.twc-cta { margin:28px 0; }
.twc-cta a { display:inline-block; padding:12px 18px; border:2px solid #fff; border-radius:8px; text-decoration:none; }
.twc-cta a:hover { transform:translateY(-1px); }

/* ---------- FORCE-HIDE ALL THEME TITLES SITE-WIDE ---------- */
.ast-single-post .entry-title,
.page .entry-title,
.single .entry-title,
h1.entry-title,
.entry-header,
.entry-header .entry-title,
.ast-archive-title,
.ast-archive-description,
.ast-search-title,
.ast-author-title,
.ast-related-post-title,
.ast-404-title,
.wp-site-blocks .wp-block-post-title,
.wp-block-post-title,
.ast-page-title,
.ast-page-title-wrap,
.ast-archive-title-wrap {
  display:none !important;
}

/* ---------- GENERAL TIDY ---------- */
body { margin:0; padding:0; }
* { box-sizing:border-box; }

/* ---------- FORMIDABLE: CONSTRAIN WIDTH ON CONTACT PAGE ---------- */
/* Core wrapper */
.page-id-42 .entry-content .frm_forms {
  max-width: 800px;              /* try 800–1000px; 800 looks tighter/pro */
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 16px;
  padding-right: 16px;
  width: 100% !important;
  box-sizing: border-box;
}

/* Inner containers Formidable uses */
.page-id-42 .entry-content .frm_forms .frm_form_fields,
.page-id-42 .entry-content .frm_forms .frm_fields_container {
  max-width: 800px;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  box-sizing: border-box;
}

/* If the form sits inside a Gutenberg 'wide' or 'full' block, still constrain it */
.page-id-42 .entry-content .alignwide .frm_forms,
.page-id-42 .entry-content .alignfull .frm_forms,
.page-id-42 .entry-content .wp-block-group.alignfull .frm_forms,
.page-id-42 .entry-content .wp-block-group.alignwide .frm_forms {
  max-width: 800px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  padding-left: 16px;
  padding-right: 16px;
}

/* Keep fields fluid inside the constrained wrapper */
.page-id-42 .entry-content .frm_forms .frm_form_field,
.page-id-42 .entry-content .frm_forms input[type="text"],
.page-id-42 .entry-content .frm_forms input[type="email"],
.page-id-42 .entry-content .frm_forms input[type="tel"],
.page-id-42 .entry-content .frm_forms textarea,
.page-id-42 .entry-content .frm_forms select {
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
}


