/*
 * WoofConnect child of Enfold: tokens, base type, the child's header and footer, and the restyle of Enfold's builder
 * output (sections, columns, text blocks, icons, buttons, toggles, images, forms) for the ~860 builder pages.
 * Loaded after Enfold's merged stylesheet. Tokens are the app's WoofTokens.modern (lib/config/woof_tokens.dart).
 */

@font-face { font-family: "Poppins"; font-style: normal; font-weight: 400; font-display: swap; src: url("https://www.woofconnect.com/wp-content/themes/woofconnect/assets/fonts/poppins-400.woff2") format("woff2"); }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 500; font-display: swap; src: url("https://www.woofconnect.com/wp-content/themes/woofconnect/assets/fonts/poppins-500.woff2") format("woff2"); }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 600; font-display: swap; src: url("https://www.woofconnect.com/wp-content/themes/woofconnect/assets/fonts/poppins-600.woff2") format("woff2"); }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 700; font-display: swap; src: url("https://www.woofconnect.com/wp-content/themes/woofconnect/assets/fonts/poppins-700.woff2") format("woff2"); }
/* Metric-matched fallback so the swap does not shift the layout. */
@font-face { font-family: "Poppins Fallback"; src: local("Arial"); size-adjust: 112%; ascent-override: 93%; descent-override: 31%; line-gap-override: 9%; }

:root {
  --wine: #A51E36;
  --wine-pressed: #8A1A2E;
  --wine-tint: #F6E7EA;
  --canvas: #F9F5EF;
  --surface: #FFFFFF;
  --surface-low: #F1E9DF;
  --subtle: #F4EDE3;
  --line: #E7DDD1;
  --control-line: #9B8785;
  --ink: #2B181C;
  /* Secondary text: the app's muted ink, used for captions and supporting lines, never for body copy. */
  --muted: #6F5E60;
  --ink-soft: #4A3539;
  --sage: #4F7A5B;
  --sage-fill: #E7EFE8;
  --danger: #8B2A3A;

  /* Builder band colours (inc/enfold.php maps the editors' section colours onto these). */
  --band-light: var(--subtle);
  --band-action: var(--wine-tint);

  --font: "Poppins", "Poppins Fallback", system-ui, sans-serif;
  /* Type scale: the app's 30/26/22/20/17/16/14, with a web display step for the hero. */
  --fs-display: clamp(2.5rem, 1.6rem + 3.4vw, 4rem);
  --fs-h1: clamp(2rem, 1.6rem + 1.4vw, 2.75rem);
  --fs-h2: clamp(1.625rem, 1.4rem + 0.9vw, 2.125rem);
  --fs-h3: 1.375rem;
  --fs-lede: clamp(1.1875rem, 1.1rem + 0.35vw, 1.375rem);
  --fs-body: clamp(1.0625rem, 1.03rem + 0.15vw, 1.125rem);
  --fs-small: 1rem;
  --fs-caption: 0.875rem;

  --r-card: 24px;
  --r-input: 16px;
  --r-pill: 999px;
  --wrap: 1200px;
  --measure: 46rem;
  --gutter: clamp(16px, 4vw, 40px);
  --band-pad: clamp(64px, 8vw, 120px);

  /* Enfold's colour sets, read by its dynamic stylesheet (uploads/dynamic_avia/enfold*.css). */
  --enfold-main-color-bg: var(--canvas);
  --enfold-main-color-bg2: var(--subtle);
  --enfold-main-color-primary: var(--wine);
  --enfold-main-color-secondary: var(--wine-pressed);
  --enfold-main-color-color: var(--ink);
  --enfold-main-color-meta: var(--muted);
  --enfold-main-color-heading: var(--ink);
  --enfold-main-color-border: var(--line);
  --enfold-main-color-button-border: var(--wine-pressed);
  --enfold-main-color-button-border2: var(--wine-pressed);
  --enfold-main-color-iconlist: var(--line);
  --enfold-alternate-color-bg: var(--surface);
  --enfold-alternate-color-bg2: var(--subtle);
  --enfold-alternate-color-primary: var(--wine);
  --enfold-alternate-color-secondary: var(--wine-pressed);
  --enfold-alternate-color-color: var(--ink);
  --enfold-alternate-color-meta: var(--muted);
  --enfold-alternate-color-heading: var(--ink);
  --enfold-alternate-color-border: var(--line);
  --enfold-font-family-body: var(--font);
  --enfold-font-family-heading: var(--font);
  --enfold-font-size-content-font: var(--fs-body);
}

/* ---------------------------------------------------------------- base */

html,
html.responsive { background: var(--canvas); min-width: 0; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 88px; }
#top,
body#top {
  background: var(--canvas);
  color: var(--ink);
  font-family: var(--font);
  font-size: var(--fs-body);
  line-height: 1.65;
  font-weight: 400;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
}
#top #wrap_all { background: var(--canvas); overflow: visible; }
#top #main { padding-top: 0; background: var(--canvas); border: 0; }

#top h1, #top h2, #top h3, #top h4, #top h5, #top h6 {
  font-family: var(--font);
  color: var(--ink);
  text-transform: none;
  letter-spacing: -0.01em;
}
#top a { color: var(--wine); text-underline-offset: 0.18em; text-decoration-thickness: 1px; }
#top a:hover { color: var(--wine-pressed); }
#top :focus-visible { outline: 3px solid var(--wine); outline-offset: 3px; border-radius: 6px; }
#top img { max-width: 100%; }
#top .avia_textblock img, #top .avia-image-container img { height: auto; }

.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.skip-link {
  position: absolute; left: 16px; top: -100px; z-index: 1000;
  background: var(--surface); color: var(--ink); padding: 12px 20px; border-radius: var(--r-pill);
  border: 1px solid var(--line); font-weight: 600;
}
.skip-link:focus { top: 12px; }

.wc-wrap {
  width: 100%;
  max-width: calc(var(--wrap) + 2 * var(--gutter));
  margin: 0 auto;
  padding: 0 var(--gutter);
  box-sizing: border-box;
}

/* ---------------------------------------------------------------- buttons */

#top .btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 54px; padding: 0 28px;
  border-radius: var(--r-pill); border: 0;
  font: 600 1.0625rem/1.2 var(--font);
  text-decoration: none; cursor: pointer;
  transition: background-color 0.15s ease;
}
#top .btn-primary { background: var(--wine); color: #fff; }
#top .btn-primary:hover { background: var(--wine-pressed); color: #fff; }
#top .btn-secondary { background: var(--surface-low); color: var(--ink); }
#top .btn-secondary:hover { background: var(--line); color: var(--ink); }
#top .btn-tonal { background: var(--wine-tint); color: var(--wine); }
#top .btn-tonal:hover { background: color-mix(in srgb, var(--wine) 8%, var(--wine-tint)); color: var(--wine-pressed); }
#top .btn-small { min-height: 48px; padding: 0 22px; font-size: 1rem; }
#top .text-link { font-weight: 600; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; min-height: 48px; }
#top .text-link::after { content: ""; width: 7px; height: 7px; border: solid currentColor; border-width: 2px 2px 0 0; transform: rotate(45deg); margin-left: 2px; }
#top .text-link:hover { text-decoration: underline; }

.store-badges { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; padding: 0; }
.store-badges a { display: block; line-height: 0; border-radius: 9px; }
.store-badges img { height: 48px; width: auto; display: block; }

/* ---------------------------------------------------------------- header */

.site-header {
  position: sticky; top: 0; z-index: 100;
  background: rgba(249, 245, 239, 0.94);
  -webkit-backdrop-filter: saturate(1.2) blur(10px);
  backdrop-filter: saturate(1.2) blur(10px);
  border-bottom: 1px solid var(--line);
}
.admin-bar .site-header { top: 32px; }
.site-header-inner { display: flex; align-items: center; gap: 28px; min-height: 76px; }
.site-header .brand { display: block; flex: none; line-height: 0; margin-right: auto; }
.brand-logo { width: 150px; height: auto; }
.site-nav { display: flex; align-items: center; gap: 8px; }
.site-nav-list { display: flex; gap: 4px; list-style: none; margin: 0; padding: 0; }
#top .site-nav-list a {
  display: flex; align-items: center; min-height: 48px; padding: 0 14px;
  color: var(--ink); font-weight: 500; font-size: 1rem; text-decoration: none; border-radius: var(--r-pill);
}
#top .site-nav-list a:hover { background: var(--surface-low); color: var(--ink); }
#top .site-nav-list a[aria-current="page"] { background: var(--wine-tint); color: var(--wine); }

.lang { position: relative; }
.lang-toggle {
  display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 14px;
  background: transparent; border: 1px solid var(--line); border-radius: var(--r-pill);
  font: 500 1rem/1 var(--font); color: var(--ink); cursor: pointer;
}
.lang-toggle:hover { background: var(--surface-low); }
.lang-toggle .icon { width: 20px; height: 20px; color: var(--muted); }
.lang-toggle .icon-chevron { width: 16px; height: 16px; transition: transform 0.15s ease; }
.lang-toggle[aria-expanded="true"] .icon-chevron { transform: rotate(180deg); }
.lang-list {
  position: absolute; right: 0; top: calc(100% + 8px); z-index: 10;
  min-width: 220px; margin: 0; padding: 8px; list-style: none;
  background: var(--surface); border: 1px solid var(--line); border-radius: 20px;
}
.lang-list[hidden] { display: none; }
#top .lang-list a {
  display: flex; align-items: center; min-height: 48px; padding: 0 16px; border-radius: 14px;
  color: var(--ink); text-decoration: none; font-weight: 500;
}
#top .lang-list a:hover { background: var(--subtle); }
#top .lang-list a[aria-current="true"] { background: var(--wine-tint); color: var(--wine); }

.nav-download { display: none !important; }
.menu-toggle {
  display: none; align-items: center; justify-content: center;
  width: 48px; height: 48px; border-radius: var(--r-pill);
  background: var(--surface-low); border: 0; color: var(--ink); cursor: pointer;
}

@media (max-width: 899px) {
  .site-header-inner { gap: 12px; min-height: 68px; }
  .brand-logo { width: 128px; }
  .menu-toggle { display: inline-flex; }
  .header-download { display: none !important; }
  .site-nav {
    display: none; position: absolute; left: 0; right: 0; top: 100%;
    flex-direction: column; align-items: stretch; gap: 16px;
    padding: 16px var(--gutter) 24px; background: var(--canvas); border-bottom: 1px solid var(--line);
    max-height: calc(100vh - 68px); overflow-y: auto;
  }
  .site-header.is-open .site-nav { display: flex; }
  .site-nav-list { flex-direction: column; gap: 0; }
  #top .site-nav-list a { font-size: 1.125rem; padding: 0 12px; min-height: 52px; border-radius: 14px; }
  .lang-toggle { width: 100%; justify-content: flex-start; }
  .lang-toggle .icon-chevron { margin-left: auto; }
  .lang-list { position: static; margin-top: 8px; }
  .site-nav .nav-download { display: inline-flex !important; width: 100%; }
  .site-header.is-open .menu-toggle .icon-menu path { d: path("M6 6l12 12M18 6 6 18"); }
}
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .site-header { top: 0; } }

/* ---------------------------------------------------------------- language suggestion (inc/lang-routing.php)
   In the flow under the sticky header, never over the content. Hidden unless the head script put wc-suggest on
   <html> before the first paint, so it is laid out from the start (no layout shift); closing it is a click. */

.lang-suggest { display: none; background: var(--wine-tint); border-bottom: 1px solid color-mix(in srgb, var(--wine) 14%, var(--wine-tint)); }
html.wc-suggest .lang-suggest { display: block; }
.lang-suggest-inner { display: flex; align-items: center; gap: 12px; min-height: 60px; }
.lang-suggest-mark {
  display: inline-flex; align-items: center; justify-content: center; flex: none;
  width: 32px; height: 32px; border-radius: 50%; background: var(--surface); color: var(--wine);
}
.lang-suggest-mark .icon { width: 18px; height: 18px; }
/* Inline-block, so on a narrow phone the arrow stays on the last line of the text. 10 + 24 + 10 = 44 px target. */
#top .lang-suggest-link {
  display: none; margin-right: auto; padding: 10px 0;
  color: var(--ink); font-weight: 600; font-size: var(--fs-small); line-height: 1.5; text-decoration: none;
}
html.wc-suggest-nl #top .lang-suggest .for-nl,
html.wc-suggest-be #top .lang-suggest .for-be { display: inline-block; }
#top .lang-suggest-link::after {
  content: ""; display: inline-block; width: 7px; height: 7px; margin-left: 10px; vertical-align: 0.12em;
  border: solid var(--wine); border-width: 2px 2px 0 0; transform: rotate(45deg); transition: transform 0.15s ease;
}
#top .lang-suggest-link:hover { color: var(--wine-pressed); text-decoration: underline; }
#top .lang-suggest-link:hover::after { transform: translateX(3px) rotate(45deg); }
.lang-suggest-close {
  display: inline-flex; align-items: center; justify-content: center; flex: none;
  width: 44px; height: 44px; margin-right: -10px; padding: 0; border: 0; border-radius: 50%;
  background: transparent; color: var(--ink-soft); cursor: pointer;
}
.lang-suggest-close:hover { background: color-mix(in srgb, var(--wine) 9%, var(--wine-tint)); color: var(--ink); }
.lang-suggest-close .icon { width: 20px; height: 20px; }
#top .lang-suggest-close:focus-visible { border-radius: 50%; outline-offset: 0; }
@media (max-width: 399px) {
  .lang-suggest-mark { display: none; }
  .lang-suggest-inner { gap: 8px; }
  #top .lang-suggest-link { font-size: 0.9375rem; padding: 11px 0; }
}

/* ---------------------------------------------------------------- footer */

.site-footer { background: var(--surface-low); border-top: 1px solid var(--line); padding: 64px 0 28px; margin-top: 0; clear: both; }
.footer-top { display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: 40px; }
.footer-brand p { margin: 16px 0 20px; color: var(--muted); max-width: 22rem; }
.site-footer .brand-logo { width: 140px; }
.footer-title { font-weight: 600; margin: 0 0 12px; color: var(--ink); }
.footer-col ul { list-style: none; margin: 0; padding: 0; }
.footer-col li { margin: 0; }
#top .footer-col a { display: inline-flex; align-items: center; min-height: 40px; color: var(--ink); text-decoration: none; }
#top .footer-col a:hover { color: var(--wine); text-decoration: underline; }
.store-badges-footer img { height: 44px; }
.footer-base {
  display: flex; align-items: center; gap: 12px;
  margin-top: 48px; padding-top: 20px; border-top: 1px solid var(--line);
  color: var(--muted); font-size: var(--fs-caption);
}
.footer-base p { margin: 0; }
.footer-mark { color: var(--control-line); line-height: 0; }
.footer-mark .dog-mark { width: 28px; height: 28px; }

@media (max-width: 899px) {
  .footer-top { grid-template-columns: 1fr 1fr; gap: 32px 24px; }
  .footer-brand { grid-column: 1 / -1; }
}
@media (max-width: 479px) {
  .footer-top { grid-template-columns: 1fr; }
  .footer-base { align-items: flex-start; }
}

/* ---------------------------------------------------------------- plain templates (404, search, index) */

.wc-main { display: block; }
.page-head { padding: clamp(48px, 6vw, 88px) 0 clamp(24px, 3vw, 40px); }
#top #wrap_all h1.page-title { font-size: var(--fs-h1); line-height: 1.15; font-weight: 600; margin: 0 0 16px; letter-spacing: -0.02em; }
.wc-prose { max-width: calc(var(--measure) + 2 * var(--gutter)); padding-bottom: var(--band-pad); }
.empty-state { text-align: center; max-width: 36rem; padding-top: clamp(64px, 9vw, 120px); padding-bottom: clamp(64px, 9vw, 120px); }
.empty-state p { color: var(--muted); font-size: var(--fs-lede); }
.empty-mark, .closing-mark {
  display: inline-flex; align-items: center; justify-content: center;
  width: 112px; height: 112px; border-radius: 50%; background: var(--surface-low); color: var(--muted); margin-bottom: 24px;
}
.empty-mark .dog-mark, .closing-mark .dog-mark { width: 64px; height: 64px; }
.empty-state .search-form { margin: 32px auto 0; max-width: 28rem; }
.search-form { display: flex; gap: 8px; }
#top .search-form input[type="search"] {
  flex: 1; min-width: 0; min-height: 54px; margin: 0; padding: 0 20px;
  border: 1px solid var(--control-line); border-radius: var(--r-input); background: var(--surface);
  font: 400 1.0625rem var(--font); color: var(--ink);
}
.search-for { color: var(--muted); }
.result-list { list-style: none; margin: 0; padding: 0; }
.result-list li { padding: 20px 0; border-bottom: 1px solid var(--line); }
#top .result-list a { font-weight: 600; font-size: 1.1875rem; text-decoration: none; }
.result-list p { margin: 6px 0 0; color: var(--muted); }

/* ---------------------------------------------------------------- Enfold builder pages */

/* Enfold draws a 1px top border on every wrap and full-height column dividers; the design uses neither. */
#top .container_wrap,
#top #main .avia-section,
#top .content,
#top .sidebar { border: 0; }
#top #main .avia-section { min-height: 0; }
/* Untinted sections take --enfold-main-color-bg (the canvas); editor-tinted ones keep their mapped inline colour,
   so no background is set here: any id selector would outrank the inline .avia-section.av-* rule. */
#top .main_color, #top .alternate_color { color: var(--ink); }

/* One readable column: the builder sections become a centred page with a ~75-character measure; the two-column
   rows (benefits / how it works) still fit side by side. */
#top .avia-section .container,
#top .container_wrap_first .container,
#top #main > .container_wrap .container {
  max-width: calc(820px + 2 * var(--gutter));
  padding-left: var(--gutter);
  padding-right: var(--gutter);
  box-sizing: border-box;
}
#top .avia-section .content { padding-top: clamp(32px, 4vw, 56px); padding-bottom: clamp(32px, 4vw, 56px); }
#top .avia-section.avia-builder-el-first .content { padding-top: clamp(48px, 6vw, 88px); }
#top .avia-section.avia-builder-el-last .content { padding-bottom: clamp(56px, 7vw, 104px); }
/* Tinted bands keep their own padding so text never touches the colour edge. */
#top #main .avia-section[class*="av-"] + .avia-section[class*="av-"] .content { padding-top: clamp(32px, 4vw, 56px); }

#top .avia_textblock,
#top .av_textblock_section { font-size: var(--fs-body); line-height: 1.7; color: var(--ink); }
#top #wrap_all .avia_textblock p,
#top #wrap_all .avia_textblock li { font-size: var(--fs-body); line-height: 1.7; }
#top .avia_textblock p { margin: 0 0 1em; }
#top .avia_textblock ul, #top .avia_textblock ol { margin: 0 0 1.2em 1.4em; }
#top .avia_textblock li { margin-bottom: 0.4em; }

#top #wrap_all .all_colors h1,
#top .avia_textblock h1 {
  font-size: var(--fs-h1); line-height: 1.15; font-weight: 600; color: var(--ink);
  letter-spacing: -0.02em; margin: 0 0 0.6em; text-transform: none;
}
#top #wrap_all .all_colors h2,
#top .avia_textblock h2 {
  font-size: var(--fs-h2); line-height: 1.25; font-weight: 600; color: var(--ink);
  margin: 1.6em 0 0.5em; text-transform: none;
}
#top #wrap_all .all_colors h3,
#top .avia_textblock h3 { font-size: var(--fs-h3); line-height: 1.3; font-weight: 600; color: var(--ink); margin: 1.4em 0 0.4em; }
#top #wrap_all .all_colors h4,
#top .avia_textblock h4 { font-size: 1.1875rem; line-height: 1.35; font-weight: 600; color: var(--ink); margin: 1.2em 0 0.4em; }
#top #wrap_all .all_colors h5,
#top #wrap_all .all_colors h6 { font-size: 1.0625rem; font-weight: 600; color: var(--ink); }
#top #wrap_all .avia_textblock > :first-child,
#top #wrap_all .avia_textblock h2:first-child,
#top #wrap_all .avia_textblock h3:first-child { margin-top: 0; }
#top .avia_textblock strong, #top .avia_textblock b { color: inherit; font-weight: 600; }
/* Old legal pages shout their headings in capitals; the design is sentence case only. */
#top .avia_textblock h1, #top .avia_textblock h2 { text-transform: none; }

/* The 160px city photo floated at the start of each landing page: a soft thumbnail, as in the app's lists. */
#top .avia_textblock img.alignleft,
#top .avia_textblock img.alignright { border-radius: var(--r-input); margin-top: 0.3em; margin-bottom: 1em; }
#top .avia_textblock img.alignleft { float: left; margin-right: 24px; }
#top .avia_textblock img.alignright { float: right; margin-left: 24px; }
#top .avia_textblock::after { content: ""; display: table; clear: both; }

/* Columns. Bordered columns (inline CSS from the editor) become the app's flat cards. */
#top .flex_column { box-sizing: border-box; }
#top .flex_column[style], #top .flex_column.av-border-deactivate { border-radius: var(--r-card); }
#top #wrap_all .flex_column .avia_textblock h2:first-child { font-size: var(--fs-h3); }

/* Icon lists: [av_font_icon] + text + <br> lines. The content mixes about a dozen Entypo glyphs per page, hearts among
   them (no voting imagery in this design), so every inline icon becomes the same small marker. */
#top .av_font_icon.avia-icon-pos-left {
  float: none; display: inline-block; vertical-align: 0.12em;
  width: 8px; height: 8px; margin: 0 12px 0 2px; padding: 0;
  border-radius: 50%; background: var(--control-line); border: 0;
}
#top .av_font_icon .av-icon-char { display: none; }
#top .av_font_icon.avia_animate_when_visible { opacity: 1; transform: none; animation: none; }

/* Buttons from [av_button]: the app's 54px wine pill; the glyph from Enfold's icon font goes. */
#top .avia-button-wrap { display: block; margin: 8px 0; }
#top .avia-button-wrap.avia-button-center { text-align: center; }
#top #wrap_all .avia-button,
#top #wrap_all .avia-button.avia-size-large {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 54px; padding: 0 30px; margin: 0;
  border: 0; border-radius: var(--r-pill);
  background-color: var(--wine); color: #fff;
  font: 600 1.0625rem/1.2 var(--font) !important;
  text-decoration: none; opacity: 1; transition: background-color 0.15s ease;
}
#top #wrap_all .avia-button:hover { background-color: var(--wine-pressed); color: #fff; opacity: 1; }
#top .avia-button .avia_button_icon { display: none; }

/* Horizontal rules from [av_hr]. */
#top .hr { margin: 32px 0; }
#top .hr .hr-inner { border-color: var(--line); }

/* Images from [av_image]. */
#top .avia-image-container .avia-image-container-inner,
#top .avia-image-container img.avia_image { border-radius: var(--r-card); box-shadow: none; }

/* Toggles from [av_toggle_container] (help pages): white cards with a plus/minus, 54px rows. */
#top .togglecontainer { gap: 12px; margin: 24px 0; }
#top .js_active .toggler, #top .toggler {
  padding: 16px 56px 16px 24px; min-height: 54px; box-sizing: border-box;
  background: var(--surface); border: 1px solid var(--line); border-radius: 20px;
  font: 600 1.0625rem/1.45 var(--font); color: var(--ink); top: 0;
}
#top .toggler:hover { background: var(--subtle); }
#top .toggler.activeTitle { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
#top .toggle_icon { left: auto; right: 22px; border: 0; width: 16px; height: 16px; margin-top: -8px; color: var(--wine); }
#top .toggle_icon .vert_icon, #top .toggle_icon .hor_icon { border-color: var(--wine); }
#top .toggle_icon .vert_icon { left: 6.5px; top: 0; height: 16px; border-left-width: 3px; }
#top .toggle_icon .hor_icon { top: 6.5px; left: 0; width: 16px; border-top-width: 3px; }
#top .toggle_wrap .toggle_content {
  background: var(--surface); border: 1px solid var(--line); border-top: 0;
  border-radius: 0 0 20px 20px; padding: 4px 24px 20px; margin: 0;
}
#top .single_toggle { margin: 0; }

/* Tables in legal pages. */
#top .avia_textblock table { width: 100%; border-collapse: collapse; display: block; overflow-x: auto; }
#top .avia_textblock th, #top .avia_textblock td { border: 1px solid var(--line); padding: 10px 12px; text-align: left; }

/* Forms (Gravity Forms on support, feedback and tell-a-friend). */
#top .gform_wrapper input[type="text"],
#top .gform_wrapper input[type="email"],
#top .gform_wrapper input[type="tel"],
#top .gform_wrapper input[type="url"],
#top .gform_wrapper select,
#top .gform_wrapper textarea {
  min-height: 54px; padding: 12px 18px; box-sizing: border-box;
  border: 1px solid var(--control-line); border-radius: var(--r-input);
  background: var(--surface); color: var(--ink); font: 400 1.0625rem var(--font);
}
#top .gform_wrapper .gfield_label { font-weight: 500; font-size: 0.9375rem; color: var(--muted); }
#top .gform_wrapper .gform_footer input[type="submit"],
#top .gform_wrapper .gform_button {
  min-height: 54px; padding: 0 30px; border: 0; border-radius: var(--r-pill);
  background: var(--wine); color: #fff; font: 600 1.0625rem var(--font); cursor: pointer;
}

/* Enfold's scroll-to-top link and its old socket are not part of the design. */
#scroll-top-link, #socket, #footer { display: none !important; }

/* Phones: Enfold sets containers to 85% wide; use the 16px gutter instead. */
@media only screen and (max-width: 767px) {
  .responsive #top #wrap_all .container {
    width: 100%; max-width: 100%;
    padding-left: var(--gutter); padding-right: var(--gutter); box-sizing: border-box;
  }
  .responsive #top #wrap_all .flex_column { margin-bottom: 16px; }
  #top .avia_textblock img.alignleft, #top .avia_textblock img.alignright { width: 104px; margin-right: 16px; }
  #top .avia_textblock img.alignright { margin-left: 16px; margin-right: 0; }
  #top .flex_column[style] { padding: 20px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
