/* Page Create: forms, post-purchase and utility pages (setup, schedule, payment results, ...).
   Shared look for those pages only; site.css holds the base. Page-specific rules live in each page's \3c style>. */

/* Short pages: below the copyright bar the window shows the bar's colour, as on WordPress. */
html { background: #222; }

/* ---------------------------------------------------------------------------
   Default page template: content column + right sidebar (the theme's blog layout).
   Content 73% of the row with a 1px rule on its right; the sidebar is hidden on phones.
   --------------------------------------------------------------------------- */
.with-sidebar > .container { display: flex; align-items: stretch; }
.with-sidebar .page-content { flex: none; width: 73.05%; margin-right: -1px; padding: 50px 124px 50px 0; border-right: 1px solid var(--line); }
.with-sidebar .page-content > :first-child { margin-top: 0; }
.with-sidebar .page-content p:first-child { margin-top: 14.45px; }
.sidebar { flex: 1; min-width: 0; padding: 50px 0 50px 50px; border-left: 1px solid var(--line); }
.sidebar .widget { padding: 30px 0; }
.sidebar .widget:first-child { padding-top: 0; }
.sidebar h3 { margin: 0 0 8px; color: var(--ink); font-size: 16.5px; font-weight: 700; line-height: 18.15px; letter-spacing: 1px; text-transform: uppercase; }
.sidebar ul { margin: 0; padding: 0; list-style: none; }
.sidebar li { padding: 7px 0; font-size: 12.75px; line-height: 19.125px; }
.sidebar li a { color: #fff; text-decoration: none; }   /* white on white, as on WordPress */
.sidebar .banner img { display: block; width: 160px; }
.site-search { position: relative; display: block; }
.site-search input[type=search] { display: block; width: 100%; height: 41px; margin: 0; padding: 11px 47px 11px 5px; border: 1px solid var(--line); border-radius: 0; background: #f8f8f8; color: #000; font-size: 15px; -webkit-appearance: none; }
.site-search button { position: absolute; top: 0; right: 0; display: flex; align-items: center; justify-content: center; width: 40px; height: 41px; padding: 0; border: 0; background: var(--coral); cursor: pointer; }
.site-search button svg { width: 17px; height: 17px; fill: none; stroke: #fff; stroke-width: 2.6; stroke-linecap: round; }
@media (max-width: 989px) {
  .with-sidebar .page-content { width: 73.2%; padding-right: 50px; }
}
@media (max-width: 767px) {
  .with-sidebar > .container { display: block; }
  .with-sidebar .page-content { width: 100%; margin: 0 0 20px; padding: 50px 0; border-right: 0; }
  .sidebar { display: none; }
}

/* ---------------------------------------------------------------------------
   Grey title band (setup)
   --------------------------------------------------------------------------- */
.title-band { background: #5e5e5e; }
.title-band h2 { margin: 0; color: #fff; }
.title-band p { margin: 4px 0 10px; color: #fff; }

/* ---------------------------------------------------------------------------
   Lead forms in the WordPress Ninja Forms look: bold navy labels above grey fields.
   Built on site.css's .lead-form; contact-form.js posts them.
   --------------------------------------------------------------------------- */
.nf .form-title { margin: 0 0 8px; }
.nf .required-note { margin: 0; font-size: 15px; font-weight: 400; line-height: 24.75px; }
.nf .field { margin: 0 0 25px; padding-top: 4px; }
.nf label { margin: 0 0 6px; color: #223949; font-size: 13.8px; font-weight: 700; line-height: 24.75px; }
.nf .req { color: #e80000; }
.nf input[type=text], .nf input[type=email], .nf input[type=tel], .nf input[type=url], .nf select { height: 35px; padding: 8px 6px; border: 1px solid var(--line); background-color: #f8f8f8; color: #000; font-size: 15px; }
.nf select { border-radius: 2px; }
.nf textarea { height: 200px; padding: 8px 6px; border: 1px solid var(--line); background: #f8f8f8; color: #000; font-size: 15px; line-height: 22.5px; }
.nf button[type=submit] { height: 38px; margin-bottom: 25px; padding: 0 10px; border-radius: 3px; background: #f15f4c; font: 700 16px/38px Arial, sans-serif; }
.nf .file-note { margin: 0 0 25px; font-size: 15px; line-height: 1.5; }

/* "No Fields Found." placeholder where WordPress's form was deleted */
.no-fields { margin: 0; color: #666; font-size: 17px; }

/* ---------------------------------------------------------------------------
   Plain text pages (setup instructions)
   --------------------------------------------------------------------------- */
.prose ol { margin: 0 0 20px; padding-left: 30px; }
.prose li { margin-bottom: 0; }
.prose u { color: var(--coral); font-weight: 700; }
.prose em { font-size: 17px; }
.prose a { color: var(--coral); text-decoration: none; }

/* ---------------------------------------------------------------------------
   TurnKey Suite promo pieces (advertising-packages, schedule)
   --------------------------------------------------------------------------- */
.promo-box { padding: 25px; border-radius: 3px; background: rgba(19, 35, 47, .85); }
.promo-box h2 { margin-bottom: 10px; color: #fff; }
.promo-box h4 { margin: 0 0 4px; color: #d9d9d9; line-height: 19.8px; }
.promo-box ul { margin: 0 0 4px; padding-left: 15px; }
.promo-box li { margin-left: 15px; padding: 3px 0; color: #d9d9d9; }
.promo-box .call { margin-top: 20px; }
.promo-box .call b { color: #f15f4c; }
.promo-box .btn-wrap { margin: 32px 0 12px; text-align: center; }
.promo-box .btn-pill { padding: 15px 30px 13px; background: #f15f4c; }
/* "Schedule a Call" band: its Ninja form was deleted on WordPress */
.call-band { background: #5d9ed6; }
.call-band h1 { margin: 0; color: #13232f; text-align: center; }
.call-band .sub { margin: 4px 0 10px; color: #13232f; text-align: center; }
.call-band .no-fields { width: 57.6%; margin: 14.45px auto; }
@media (max-width: 767px) { .call-band .no-fields { width: 100%; } }
