/* VisaCoach CSS_16 — revision 16.1 — 2026-11-09
   Complete replacement for earlier CSS_16 and CSS_15; load only this version.
   Page root: :is(.vc-page, .entry-content .vc-page) plus ONE .vc-page-home / -hub / -article / -watch / -resources.
   Theme header/footer opt in with .vc-site-header / .vc-site-footer.
   Rules and markup contract: VDS_16.md. No external font or JavaScript dependency. */
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) {
  --vc-navy: #14344B;
  --vc-blue: #12618A;
  --vc-orange: #B94B0B;
  --vc-orange-hover: #963B08;
  --vc-white: #FFFFFF;
  --vc-ivory: #FAF7F2;
  --vc-soft-blue: #EDF5FA;
  --vc-soft-orange: #FFF3E8;
  --vc-text: #253746;
  --vc-muted: #526574;
  --vc-border: #D6E1E8;
  --vc-control-border: #718391;
  --vc-font-body: Arial, Helvetica, sans-serif;
  --vc-font-heading: Georgia, 'Times New Roman', serif;
  --vc-body-size: 18px;
  --vc-small-size: 14px;
  --vc-h1: clamp(2rem, 4vw, 3.25rem);
  --vc-h2: clamp(1.75rem, 3.2vw, 2.5rem);
  --vc-h3: clamp(1.25rem, 2vw, 1.5rem);
  --vc-space-1: 4px;
  --vc-space-2: 8px;
  --vc-space-3: 12px;
  --vc-space-4: 16px;
  --vc-space-5: 24px;
  --vc-space-6: 32px;
  --vc-space-7: 48px;
  --vc-space-8: 64px;
  --vc-space-9: 80px;
  --vc-section-space: 40px;
  --vc-card-pad: 24px;
  --vc-gap: 24px;
  --vc-gutter: clamp(18px, 3vw, 32px);
  --vc-max: 1200px;
  --vc-reading: 70ch;
  --vc-radius-sm: 8px;
  --vc-radius: 16px;
  --vc-radius-lg: 24px;
  --vc-shadow: 0 6px 20px rgb(20 52 75 / 6%);
  --vc-shadow-hover: 0 10px 26px rgb(20 52 75 / 12%);
  --vc-motion: 160ms;
  font-family: var(--vc-font-body);
  font-size: var(--vc-body-size);
  line-height: 1.6;
  color: var(--vc-text);
  background: var(--vc-white);
}
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer),
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) *,
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) *::before,
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) *::after { box-sizing: border-box; }
.vc-page { overflow-wrap: break-word; container: visacoach / inline-size; font-family: var(--vc-font-body); font-size: var(--vc-body-size); line-height: 1.6; }
:is(.vc-page, .entry-content .vc-page) :is(h1,h2,h3,h4) { color: var(--vc-navy); font-family: var(--vc-font-heading); font-weight: 700; line-height: 1.18; margin: 0 0 var(--vc-space-4); text-wrap: balance; }
:is(.vc-page, .entry-content .vc-page) h1 { font-size: var(--vc-h1); }
:is(.vc-page, .entry-content .vc-page) h2 { font-size: var(--vc-h2); }
:is(.vc-page, .entry-content .vc-page) h3 { font-size: var(--vc-h3); }
:is(.vc-page, .entry-content .vc-page) h4 { font-size: 1.125rem; }
:is(.vc-page, .entry-content .vc-page) p { margin: 0 0 var(--vc-space-4); }
:is(.vc-page, .entry-content .vc-page) :is(ul,ol) { margin: var(--vc-space-4) 0; padding-left: 1.4em; }
:is(.vc-page, .entry-content .vc-page) li + li { margin-top: var(--vc-space-2); }
:is(.vc-page, .entry-content .vc-page) :is(img,video) { display: block; max-width: 100%; height: auto; }
:is(.vc-page, .entry-content .vc-page) figure { margin: 0; }
:is(.vc-page, .entry-content .vc-page) figcaption { font-size: var(--vc-small-size); color: var(--vc-muted); margin-top: var(--vc-space-2); }
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) a { color: var(--vc-blue); text-decoration: underline; text-underline-offset: .18em; }
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) a:hover { text-decoration-thickness: 2px; }
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) :focus-visible { outline: 3px solid var(--vc-blue); outline-offset: 4px; }
:is(.vc-page, .entry-content .vc-page) [id] { scroll-margin-top: 24px; }
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) .vc-wrap { width: 100%; max-width: var(--vc-max); margin-inline: auto; padding-inline: var(--vc-gutter); }
:is(.vc-page, .entry-content .vc-page) .vc-reading { width: 100%; max-width: var(--vc-reading); margin-inline: auto; }
.vc-page-article .vc-wrap { max-width: calc(var(--vc-reading) + 2 * var(--vc-gutter)); }
:is(.vc-page, .entry-content .vc-page) .vc-wrap-wide { max-width: var(--vc-max); }
.vc-page-watch { --vc-max: 1040px; }
:is(.vc-page, .entry-content .vc-page) .vc-breadcrumbs { max-width: var(--vc-max); margin: var(--vc-space-4) auto; padding-inline: var(--vc-gutter); display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--vc-space-2); font-size: var(--vc-small-size); color: var(--vc-muted); }
:is(.vc-page, .entry-content .vc-page) .vc-wrap .vc-breadcrumbs { padding-inline: 0; }
:is(.vc-page, .entry-content .vc-page) .vc-hero { background: var(--vc-ivory); padding-block: var(--vc-section-space); }
:is(.vc-page, .entry-content .vc-page) .vc-hero-grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(0,1fr); gap: var(--vc-space-6); align-items: center; }
:is(.vc-page, .entry-content .vc-page) .vc-hero-grid > * { min-width: 0; }
:is(.vc-page, .entry-content .vc-page) .vc-hero-content > p { max-width: 58ch; }
:is(.vc-page, .entry-content .vc-page) .vc-hero-media img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; border-radius: var(--vc-radius-lg); }
:is(.vc-page-hub, .entry-content .vc-page-hub) .vc-hero { padding-block: var(--vc-space-6); }
:is(.vc-page-hub, .entry-content .vc-page-hub) .vc-hero h1 { font-size: clamp(2rem,4vw,3rem); }
:is(.vc-page-hub, .entry-content .vc-page-hub) .vc-hero-media img { aspect-ratio: 3 / 2; }
.vc-page:is(.vc-page-article,.vc-page-watch,.vc-page-resources) .vc-hero { padding-block: var(--vc-space-6); background: var(--vc-white); border-bottom: 1px solid var(--vc-border); }
.vc-page:is(.vc-page-article,.vc-page-watch,.vc-page-resources) h1 { font-size: clamp(2rem,3.5vw,2.75rem); }
:is(.vc-page, .entry-content .vc-page) .vc-section { padding-block: var(--vc-section-space); }
.vc-page:is(.vc-page-article,.vc-page-watch) .vc-section { padding-block: var(--vc-space-6); }
:is(.vc-page, .entry-content .vc-page) .vc-section-header { max-width: var(--vc-reading); margin-bottom: var(--vc-space-5); }
:is(.vc-page, .entry-content .vc-page) .vc-section-soft { background: var(--vc-soft-blue); }
:is(.vc-page, .entry-content .vc-page) .vc-section-ivory { background: var(--vc-ivory); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-eyebrow,.vc-kicker) { display: block; color: var(--vc-blue); font-family: var(--vc-font-body); font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; margin-bottom: var(--vc-space-3); }
:is(.vc-page, .entry-content .vc-page) .vc-lede { font-size: 20px; }
:is(.vc-page, .entry-content .vc-page) .vc-grid { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: var(--vc-gap) !important; margin-top: var(--vc-space-5) !important; align-items: stretch; }
:is(.vc-page, .entry-content .vc-page) .vc-grid.vc-grid-two { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
:is(.vc-page, .entry-content .vc-page) .vc-two-col { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--vc-gap); }
:is(.vc-page, .entry-content .vc-page) .vc-grid > * { min-width: 0; }
:is(.vc-page, .entry-content .vc-page) :is(.vc-card,.vc-hero-card,.vc-video-card,.vc-box,.vc-highlight,.vc-cta-panel) { padding: var(--vc-card-pad); background: var(--vc-white); color: var(--vc-text); border: 1px solid var(--vc-border); border-radius: var(--vc-radius); box-shadow: var(--vc-shadow); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-card,.vc-hero-card,.vc-video-card,.vc-box,.vc-highlight,.vc-cta-panel) > :last-child { margin-bottom: 0; }
:is(.vc-page, .entry-content .vc-page) .vc-hero-card strong { display: block; color: var(--vc-navy); }
:is(.vc-page, .entry-content .vc-page) .vc-highlight { background: var(--vc-soft-blue); margin-top: var(--vc-space-5); box-shadow: none; }
:is(.vc-page, .entry-content .vc-page) :is(.vc-highlight.vc-orange,.vc-highlight-orange) { background: var(--vc-soft-orange); }
:is(.vc-page, .entry-content .vc-page) .vc-cta-panel { background: var(--vc-ivory); margin-top: var(--vc-space-6); }
:is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card { position: relative; display: flex !important; flex-direction: column; height: 100%; isolation: isolate; transition: transform var(--vc-motion) ease, box-shadow var(--vc-motion) ease; }
:is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card h3 a { color: var(--vc-navy); text-decoration: none; }
:is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card h3 a::after { content: ''; position: absolute; inset: 0; z-index: 1; border-radius: var(--vc-radius); }
:is(.vc-page, .entry-content .vc-page) .vc-text-link { color: var(--vc-blue); font-weight: 700; text-decoration: underline; text-underline-offset: .18em; }
:is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card span.vc-text-link { margin-top: auto; padding-top: var(--vc-space-3); pointer-events: none; }
:is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card:focus-within { outline: 3px solid var(--vc-blue); outline-offset: 4px; }
:is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card h3 a:focus-visible { outline: none; }
@media (hover: hover) {
  :is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card:hover { transform: translateY(-2px); box-shadow: var(--vc-shadow-hover); }
  :is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card:hover h3 a { color: var(--vc-blue); text-decoration: underline; }
}
:is(.vc-page, .entry-content .vc-page) .vc-card-media { margin-bottom: var(--vc-space-5); }
:is(.vc-page, .entry-content .vc-page) .vc-card-media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: var(--vc-radius-sm); }
:is(.vc-page, .entry-content .vc-page) .vc-profile { display: grid; grid-template-columns: minmax(0,1fr) minmax(220px,.65fr); gap: var(--vc-space-6); align-items: center; }
:is(.vc-page, .entry-content .vc-page) .vc-portrait { width: 100%; max-width: 380px; border-radius: var(--vc-radius-lg); margin-inline: auto; }
:is(.vc-page, .entry-content .vc-page) .vc-testimonial { margin: 0; padding: var(--vc-card-pad); background: var(--vc-white); border: 1px solid var(--vc-border); border-radius: var(--vc-radius); box-shadow: var(--vc-shadow); color: var(--vc-text); }
:is(.vc-page, .entry-content .vc-page) .vc-testimonial blockquote { margin: 0 0 var(--vc-space-4); padding: 0; border: 0; font-family: var(--vc-font-heading); font-size: 1.25rem; color: var(--vc-navy); }
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) .vc-btn-row { display: flex; flex-wrap: wrap; gap: var(--vc-space-3); margin-top: var(--vc-space-5); }
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) .vc-btn { display: inline-flex; justify-content: center; align-items: center; gap: var(--vc-space-2); min-height: 48px; max-width: 100%; padding: 12px 22px; border: 2px solid var(--vc-orange); border-radius: var(--vc-radius-sm); background: var(--vc-orange); color: var(--vc-white); font: 700 16px/1.35 var(--vc-font-body); text-align: center; text-decoration: none; cursor: pointer; transition: background-color var(--vc-motion) ease; }
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) .vc-btn:hover { background: var(--vc-orange-hover); border-color: var(--vc-orange-hover); color: var(--vc-white); text-decoration: none; }
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) .vc-btn.vc-btn-secondary { background: var(--vc-white); border-color: var(--vc-blue); color: var(--vc-navy); }
:is(.vc-page, .entry-content .vc-page, .vc-site-header, .vc-site-footer) .vc-btn.vc-btn-secondary:hover { background: var(--vc-soft-blue); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) { background: var(--vc-navy); color: var(--vc-white); padding-block: var(--vc-section-space); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) :is(h2,h3,p,li,.vc-eyebrow,a) { color: var(--vc-white); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) .vc-btn { color: var(--vc-white); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) .vc-btn-secondary { background: transparent; border-color: var(--vc-white); color: var(--vc-white); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) .vc-btn-secondary:hover { background: var(--vc-white); color: var(--vc-navy); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) :focus-visible { outline-color: var(--vc-white); }
/* White surfaces inside navy sections retain their own readable colors. */
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) :is(.vc-card,.vc-box,.vc-highlight,.vc-cta-panel,.vc-video-card,.vc-hero-card,.vc-testimonial) :is(p,li) { color: var(--vc-text); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) :is(.vc-card,.vc-box,.vc-highlight,.vc-cta-panel,.vc-video-card,.vc-hero-card,.vc-testimonial) :is(h2,h3,blockquote) { color: var(--vc-navy); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) :is(.vc-card,.vc-box,.vc-highlight,.vc-cta-panel,.vc-video-card,.vc-hero-card,.vc-testimonial) a:not(.vc-btn) { color: var(--vc-blue); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) :is(.vc-card,.vc-box,.vc-highlight,.vc-cta-panel,.vc-video-card,.vc-hero-card,.vc-testimonial) .vc-btn-secondary { color: var(--vc-navy); border-color: var(--vc-blue); background: var(--vc-white); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-final,.vc-section-blue) :is(.vc-card,.vc-box,.vc-highlight,.vc-cta-panel,.vc-video-card,.vc-hero-card,.vc-testimonial) :focus-visible { outline-color: var(--vc-blue); }
:is(.vc-page, .entry-content .vc-page) .vc-final-grid { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--vc-space-6); align-items: center; }
:is(.vc-page, .entry-content .vc-page) .vc-process { counter-reset: vc-step; }
:is(.vc-page, .entry-content .vc-page) ol.vc-process { list-style: none; padding: 0; }
:is(.vc-page, .entry-content .vc-page) .vc-step { position: relative; padding-left: 60px; min-height: 44px; }
:is(.vc-page, .entry-content .vc-page) .vc-step::before { counter-increment: vc-step; content: counter(vc-step); position: absolute; inset: 0 auto auto 0; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: var(--vc-navy); color: var(--vc-white); font-weight: 700; }
:is(.vc-page, .entry-content .vc-page) .vc-process .vc-step { margin-top: 0; }
:is(.vc-page, .entry-content .vc-page) .vc-icon { display: inline-block; width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; vertical-align: middle; flex-shrink: 0; }
:is(.vc-page, .entry-content .vc-page) .vc-table-wrap { overflow-x: auto; margin-block: var(--vc-space-5); border: 1px solid var(--vc-border); border-radius: var(--vc-radius-sm); }
:is(.vc-page, .entry-content .vc-page) .vc-table { width: 100%; min-width: 680px; border-collapse: collapse; background: var(--vc-white); color: var(--vc-text); }
:is(.vc-page, .entry-content .vc-page) .vc-table :is(th,td) { padding: var(--vc-space-4); border-bottom: 1px solid var(--vc-border); text-align: left; vertical-align: top; }
:is(.vc-page, .entry-content .vc-page) .vc-table th { background: var(--vc-soft-blue); color: var(--vc-navy); font-weight: 700; }
:is(.vc-page, .entry-content .vc-page) .vc-table caption { text-align: left; padding: var(--vc-space-4); color: var(--vc-navy); }
:is(.vc-page, .entry-content .vc-page) .vc-table tr:last-child td { border-bottom: 0; }
:is(.vc-page, .entry-content .vc-page) :is(.vc-video-wrap,.vc-video-embed) { position: relative; width: 100%; aspect-ratio: 16/9; overflow: hidden; border-radius: var(--vc-radius); background: #000; margin-block: var(--vc-space-5); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-video-wrap,.vc-video-embed) :is(iframe,video) { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
:is(.vc-page, .entry-content .vc-page) :is(.vc-video-meta,.vc-note,.vc-disclaimer) { font-size: var(--vc-small-size); color: var(--vc-muted); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-transcript,.vc-faq details) { margin-block: var(--vc-space-4); padding: var(--vc-space-4) var(--vc-space-5); border: 1px solid var(--vc-border); border-radius: var(--vc-radius-sm); background: var(--vc-white); color: var(--vc-text); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-transcript,.vc-faq) summary { min-height: 44px; padding-block: 8px; cursor: pointer; color: var(--vc-navy); font-weight: 700; }
:is(.vc-page, .entry-content .vc-page) :is(.vc-transcript,.vc-faq) summary::marker { color: var(--vc-blue); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-transcript[open],.vc-faq details[open]) { border-color: var(--vc-blue); }
:is(.vc-page, .entry-content .vc-page) :is(.vc-transcript[open],.vc-faq details[open]) > summary { margin-bottom: var(--vc-space-4); border-bottom: 1px solid var(--vc-border); }
:is(.vc-page, .entry-content .vc-page) .vc-pill-row { display: flex; flex-wrap: wrap; gap: var(--vc-space-2); margin-top: var(--vc-space-4); }
:is(.vc-page, .entry-content .vc-page) .vc-pill { padding: 6px 12px; background: var(--vc-soft-blue); color: var(--vc-navy); border: 1px solid var(--vc-border); border-radius: 999px; font-size: var(--vc-small-size); font-weight: 700; }
:is(.vc-page, .entry-content .vc-page) .vc-price { font-size: 28px; font-weight: 700; color: var(--vc-navy); }
:is(.vc-page, .entry-content .vc-page) .vc-spacer { height: var(--vc-space-5); }
:is(.vc-page, .entry-content .vc-page) :is(input,select,textarea,button) { font-family: var(--vc-font-body); font-size: 1rem; }
:is(.vc-page, .entry-content .vc-page) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]),select,textarea) { width: 100%; min-height: 48px; padding: 12px; border: 1px solid var(--vc-control-border); border-radius: var(--vc-radius-sm); background: var(--vc-white); color: var(--vc-text); }
:is(.vc-page, .entry-content .vc-page) label { display: block; margin-bottom: var(--vc-space-2); font-weight: 700; }
:is(.vc-page, .entry-content .vc-page) :is(input,textarea)::placeholder { color: var(--vc-muted); opacity: 1; }
/* Theme integration hooks; never duplicate the theme header in a page body. */
.vc-site-header { border-bottom: 1px solid var(--vc-border); }
.vc-site-header .vc-header-row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--vc-space-5); padding-block: var(--vc-space-4); }
.vc-site-header .vc-nav-links { display: flex; flex-wrap: wrap; align-items: center; gap: var(--vc-space-5); }
.vc-site-header .vc-nav-links a { font-size: 16px; font-weight: 700; color: var(--vc-navy); }
.vc-site-header .vc-brand img { display: block; max-width: 210px; height: auto; }
.vc-site-header .vc-menu summary { min-height: 44px; cursor: pointer; padding: 10px; }
.vc-site-header .vc-menu[open] > summary { background: var(--vc-soft-blue); }
.vc-site-header .vc-menu-panel { display: grid; gap: var(--vc-space-3); padding: var(--vc-space-4); background: var(--vc-white); border: 1px solid var(--vc-border); border-radius: var(--vc-radius-sm); }
.vc-site-footer { background: var(--vc-navy); color: var(--vc-white); padding-block: var(--vc-space-7); }
.vc-site-footer a { color: var(--vc-white); }
.vc-site-footer :focus-visible { outline-color: var(--vc-white); }
/* Layout follows available content width, including when a theme retains a sidebar. */
:is(.vc-page, .entry-content .vc-page).vc-page-home .vc-hero h1 { font-size: 52px; }
:is(.vc-page, .entry-content .vc-page) .vc-section-compact { padding-block: 24px; }
:is(.vc-page, .entry-content .vc-page) .vc-section-header > :last-child,
:is(.vc-page, .entry-content .vc-page) .vc-step > :last-child,
:is(.vc-page, .entry-content .vc-page) .vc-final-grid > div > :last-child { margin-bottom: 0; }
:is(.vc-page, .entry-content .vc-page) :is(.vc-eyebrow,.vc-kicker) { margin: 0 0 12px; }
:is(.vc-page, .entry-content .vc-page) .vc-card h3 { margin: 0 0 12px; }
:is(.vc-page, .entry-content .vc-page) .vc-section-header + .vc-grid { margin-top: 0 !important; }
/* Only genuinely empty paragraphs (including comment-only paragraphs) disappear. */
:is(.vc-page, .entry-content .vc-page) p:empty { display: none; }
:is(.vc-page, .entry-content .vc-page) .vc-profile > * { min-width: 0; }
@container visacoach (max-width: 959px) {
  :is(.vc-page, .entry-content .vc-page) .vc-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  :is(.vc-page, .entry-content .vc-page) :is(.vc-hero-grid,.vc-profile,.vc-final-grid) { grid-template-columns: 1fr; gap: 24px; }
  :is(.vc-page, .entry-content .vc-page) .vc-section,
  :is(.vc-page, .entry-content .vc-page) .vc-hero,
  :is(.vc-page, .entry-content .vc-page) .vc-final { padding-block: 32px; }
  :is(.vc-page, .entry-content .vc-page).vc-page-home .vc-hero h1 { font-size: 44px; }
  :is(.vc-page, .entry-content .vc-page) .vc-hero-media img { max-height: 420px; }
  :is(.vc-page, .entry-content .vc-page) .vc-final-grid > .vc-btn { justify-self: start; }
}
@container visacoach (max-width: 639px) {
  :is(.vc-page, .entry-content .vc-page) .vc-grid,
  :is(.vc-page, .entry-content .vc-page) .vc-grid.vc-grid-two { grid-template-columns: 1fr !important; }
  :is(.vc-page, .entry-content .vc-page) .vc-two-col { grid-template-columns: 1fr; }
  :is(.vc-page, .entry-content .vc-page) .vc-wrap { padding-inline: 18px; }
  :is(.vc-page, .entry-content .vc-page) .vc-hero h1,
  :is(.vc-page, .entry-content .vc-page).vc-page-home .vc-hero h1,
  :is(.vc-page, .entry-content .vc-page) h1 { font-size: clamp(32px, 6cqi, 38px); }
  :is(.vc-page, .entry-content .vc-page) h2 { font-size: 28px; }
  :is(.vc-page, .entry-content .vc-page) :is(.vc-card,.vc-box,.vc-highlight,.vc-cta-panel,.vc-testimonial) { padding: 20px; }
  :is(.vc-page, .entry-content .vc-page) .vc-btn-row .vc-btn,
  :is(.vc-page, .entry-content .vc-page) .vc-final-grid > .vc-btn { width: 100%; }
}
:is(.vc-page, .entry-content .vc-page) .vc-section.vc-section-compact { padding-block: 24px; }
/* Conservative fallback for browsers without container queries. */
@supports not (container-type: inline-size) {
  @media (max-width: 959px) {
    :is(.vc-page, .entry-content .vc-page) .vc-grid,
    :is(.vc-page, .entry-content .vc-page) .vc-grid.vc-grid-two { grid-template-columns: 1fr !important; }
    :is(.vc-page, .entry-content .vc-page) :is(.vc-hero-grid,.vc-profile,.vc-final-grid,.vc-two-col) { grid-template-columns: 1fr; gap: 24px; }
    :is(.vc-page, .entry-content .vc-page) h1,
    :is(.vc-page, .entry-content .vc-page).vc-page-home .vc-hero h1 { font-size: 36px; }
  }
}
/* This template repair is ONLY for /xxxtest/ (WordPress page 7914).
   Keep other pages' sidebars. Change the ID only after verifying the new target. */
body.page-id-7914 #secondary { display: none !important; }
body.page-id-7914 #primary { float: none !important; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
body.page-id-7914 .site-main > article > .entry-content { float: none !important; width: 100% !important; max-width: none !important; margin-inline: 0 !important; }
@media (prefers-reduced-motion: reduce) {
  :is(.vc-page, .entry-content .vc-page) *, :is(.vc-page, .entry-content .vc-page) *::before, :is(.vc-page, .entry-content .vc-page) *::after, .vc-site-header *, .vc-site-footer * { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
  :is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card:hover { transform: none; }
}
@media (forced-colors: active) {
  :is(.vc-page, .entry-content .vc-page) article.vc-card.vc-link-card:focus-within { outline-color: Highlight; }
}
