/* Shared brand colors and typography. Existing page geometry stays in each page. */
@font-face {
  font-family: Inter;
  src: url('/offer-assets/brand/inter.woff2') format('woff2');
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family: 'Schibsted Grotesk';
  src: url('/vsl049/fonts/schibsted-grotesk-latin-wght-normal.woff2') format('woff2');
  font-weight: 400 900;
  font-display: swap;
}
:root {
  --bg: #fff;
  --text: #111;
  --text-secondary: #3d3d3d;
  --text-muted: #6b6b6b;
  --divider: #d9d9d6;
  --accent: #8f5000;
  --brand-card: #f7f7f5;
  --brand-highlight: #ffe83d;
  --brand-highlight-soft: #fff9cf;
  --brand-orange: #ff9900;
  --brand-orange-hover: #f08804;
  --brand-display: 'Schibsted Grotesk', system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;
}
body.brand-home,
body.brand-page {
  background: var(--bg);
  color: var(--text);
  font-family: Inter, system-ui, sans-serif;
}
:is(.brand-home, .brand-page) :is(h1, h2, h3, h4) {
  font-family: var(--brand-display);
  font-weight: 800;
}
:is(.brand-home, .brand-page) :is(a, button):focus-visible {
  outline: 3px solid var(--text);
  outline-offset: 4px;
}

/* Main website */
.brand-home .gradient-text,
.brand-home .result-block .big-number,
.brand-home .deliverables-intro .big-count {
  background: none;
  -webkit-text-fill-color: currentColor;
  color: var(--text);
}
.brand-home :is(.big-number, .big-count, .problem-number) {
  font-family: var(--brand-display);
  font-weight: 800;
}
.brand-home .navbar {
  background: rgb(255 255 255 / 95%);
}
.brand-home :is(.btn-cta, .btn-outline) {
  background: var(--brand-orange);
  color: var(--text);
  border-color: var(--brand-orange);
  font-family: var(--brand-display);
  font-weight: 800;
}
.brand-home :is(.btn-cta, .btn-outline):hover {
  background: var(--brand-orange-hover);
  border-color: var(--brand-orange-hover);
}
.brand-home .btn-cta:hover {
  box-shadow: 0 8px 32px rgb(255 153 0 / 20%);
}
.brand-home :is(.navbar-logo img, .footer-logo img, .btn-cta .arrow, .rocket-icon, .card-icon),
.brand-page .logo img {
  filter: grayscale(1) invert(1);
}
.brand-home .marquee-track img {
  filter: grayscale(1) invert(1);
}
.brand-home :is(.hero-ellipse, .decorative-bg, .benefits-ellipse, .decorative-ellipse, .footer-decorative) {
  filter: grayscale(1);
  opacity: .06;
}
.brand-home .hero-tag {
  background: var(--brand-highlight);
  color: var(--text);
  border-color: var(--brand-highlight);
}
.brand-home :is(.proof-stat .stat-number, .problem-number, .card-step, .panel-sub, .phase-tag) {
  color: var(--text);
}
.brand-home :is(.proof-bar-inner, .client-quote) {
  border-color: var(--divider);
}
.brand-home :is(.result-block, .problem-card, .testimonial-card, .approach-card, .approach-card-wide, .phase-card, .comparison-card, .benefit-panel, .calendly-wrapper) {
  background: var(--brand-card);
  border-color: var(--divider);
}
.brand-home .approach-card:hover {
  background: var(--bg);
  border-color: var(--text);
}
.brand-home .testimonial-card .result-highlight {
  color: var(--text);
  background: var(--brand-highlight-soft);
  border-color: var(--brand-highlight);
}
.brand-home .testimonial-card .video-thumb {
  background: #e7e7e3;
}
.brand-home .testimonial-card .video-thumb:hover {
  background: #d9d9d6;
}
.brand-home .play-btn {
  background: var(--brand-orange);
}
.brand-home .play-btn:hover {
  background: var(--brand-orange-hover);
}
.brand-home .play-btn::after {
  border-left-color: var(--text);
}
.brand-home .testimonial-card .quote-icon {
  filter: grayscale(1) invert(1);
}
.brand-home :is(.testimonial-divider, .footer-divider) {
  background: var(--divider);
}
.brand-home :is(.approach-card, .approach-card-wide) .card-highlight {
  background: var(--bg);
}
.brand-home .approach-card-wide .card-highlight h4 {
  color: var(--text);
}
.brand-home :is(.bullet-list li, .phase-card ul li)::before {
  background: var(--brand-orange);
}
.brand-home .comparison-card.highlighted,
.brand-home .benefit-panel.active {
  background: var(--brand-highlight-soft);
  border-color: var(--text);
}
.brand-home .comparison-card.highlighted .comp-label,
.brand-home .benefit-panel.active .panel-category {
  color: var(--text);
}
.brand-home .benefit-panel .panel-bullets li::before {
  background: var(--text-muted);
}
.brand-home .booking-section .booking-guarantee .check {
  color: var(--accent);
}
.brand-home .footer-social a {
  border-color: var(--divider);
}
.brand-home .footer-social a:hover {
  background: var(--brand-highlight-soft);
  border-color: var(--brand-orange);
}
.brand-home .footer-social svg {
  fill: var(--text);
}
/* Solid text colors replace low-opacity lettering from the former dark theme. */
.brand-home :is(.hero-sub, .hero-risk, .trusted-label, .section-sub, .result-label, .problem-card p, .testimonial-card .quote-text, .author-company, .mid-cta-sub, .approach-intro p, .card-body, .card-highlight, .bullet-list li, .phase-timing, .phase-card ul li, .comp-label, .comparison-card .comp-list .con, .panel-category, .panel-body, .panel-bullets li, .booking-sub, .booking-guarantee, .footer-menu span, .copyright, .created-by) {
  color: var(--text-secondary);
  opacity: 1;
}
.brand-home :is(.hero-risk, .trusted-label, .client-quote, .author-company, .phase-timing, .comp-label, .panel-category, .footer-menu span, .copyright, .created-by) {
  color: var(--text-muted);
}
.brand-home .problem-card .client-quote {
  opacity: 1;
}

/* Booking and policy pages */
.brand-page .back-btn {
  font-family: var(--brand-display);
  color: var(--text);
  border-color: var(--divider);
}
.brand-page .back-btn:hover {
  color: var(--text);
  border-color: var(--text);
  background: var(--brand-card);
}
.brand-page .footer {
  color: var(--text-muted);
  opacity: 1;
}
.brand-page .footer a {
  opacity: 1;
}
@media (max-width: 360px) {
  .brand-home .navbar .btn-outline { font-size: 12px; line-height: 1; }
}
