/* Multilingual business homepage. Everything is scoped to reviewed home pages. */
body.otl-business-home {
  --otl-home-ivory: #fbf7f0;
  --otl-home-paper: #fffdfa;
  --otl-home-navy: #0b1d37;
  --otl-home-text: #2e3b4e;
  --otl-home-red: #961720;
  --otl-home-red-dark: #741018;
  --otl-home-line: #e3d5c4;
  --otl-home-sand: #f3e8dc;
  --otl-home-muted: #616a75;
  color: var(--otl-home-navy);
  background: var(--otl-home-ivory);
  font-family: Manrope, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.otl-business-home #masthead,
body.otl-business-home #colophon { display: none; }
body.otl-business-home .site-content > .ast-container { width: 100%; max-width: none; margin: 0; padding: 0; }
body.otl-business-home #primary { width: 100%; margin: 0; padding: 0; }
body.otl-business-home article.page { margin: 0; padding: 0; }
body.otl-business-home .entry-content { margin: 0; }
body.otl-business-home .entry-content > .otl-home { margin: 0; }
body.otl-business-home :where(a, button, summary):focus-visible { outline: 3px solid #0b63ce; outline-offset: 3px; }
body.otl-business-home img { display: block; max-width: 100%; }
.otl-home a { color: inherit; text-decoration: none; }

.otl-home { min-height: 100vh; overflow: clip; background: var(--otl-home-ivory); }
.otl-home-header { position: relative; z-index: 50; border-bottom: 1px solid var(--otl-home-line); background: rgba(255, 253, 250, 0.98); }
.otl-home-header__inner { width: min(100% - 3rem, 1400px); min-height: 88px; margin: 0 auto; display: flex; align-items: center; gap: clamp(1rem, 2.3vw, 2.5rem); }
.otl-home-brand { display: inline-flex; align-items: center; gap: 0.75rem; margin-right: auto; font-size: clamp(1.02rem, 1.45vw, 1.42rem); font-weight: 700; white-space: nowrap; }
.otl-home-brand img { width: 62px; height: 62px; object-fit: contain; }
.otl-home-nav { display: flex; align-items: center; gap: clamp(1rem, 2vw, 2.35rem); font-size: 0.84rem; font-weight: 600; }
.otl-home-nav a,
.otl-home-languages a { transition: color 160ms ease; }
.otl-home-nav a:hover,
.otl-home-languages a:hover { color: var(--otl-home-red); }
.otl-home-header__cta,
.otl-home a.otl-home-header__cta { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 0.65rem 1.25rem; border-radius: 7px; color: #fff; background: var(--otl-home-red); font-size: 0.83rem; font-weight: 700; box-shadow: 0 8px 20px rgba(83, 18, 23, 0.15); }
.otl-home-header__cta:hover { color: #fff; background: var(--otl-home-red-dark); }
.otl-home-languages { display: flex; align-items: center; gap: 0.7rem; font-size: 0.74rem; font-weight: 700; }
.otl-home-languages span { min-width: 32px; padding: 0.3rem 0.4rem; border-radius: 4px; color: #fff; background: var(--otl-home-red); text-align: center; }
.otl-home-mobile { display: none; }

.otl-home-main { color: var(--otl-home-text); font-size: clamp(0.98rem, 0.95rem + 0.12vw, 1.05rem); line-height: 1.68; }
.otl-home-main :where(h1, h2) { margin: 0; color: var(--otl-home-navy); font-family: Manrope, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-weight: 700; letter-spacing: -0.045em; text-wrap: balance; }
.otl-home-main h1 { max-width: 780px; font-size: clamp(2.9rem, 4.15vw, 4.45rem); line-height: 1; }
.otl-home-main h2 { font-size: clamp(2.1rem, 3.25vw, 3.35rem); line-height: 1.06; }
.otl-home-main h3 { margin: 0; color: var(--otl-home-navy); font-size: 1.02rem; line-height: 1.3; }
.otl-home-main p { margin: 0; }
.otl-home-kicker { margin-bottom: 0.8rem !important; color: var(--otl-home-red); font-size: 0.73rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; }
.otl-home-button,
.otl-home a.otl-home-button { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; padding: 0.75rem 1.25rem; border: 2px solid var(--otl-home-red); border-radius: 7px; color: #fff; background: var(--otl-home-red); font-size: 0.88rem; font-weight: 700; line-height: 1.25; text-align: center; box-shadow: 0 8px 18px rgba(83, 18, 23, 0.13); }
.otl-home-button:hover,
.otl-home a.otl-home-button:hover { color: #fff; border-color: var(--otl-home-red-dark); background: var(--otl-home-red-dark); }

.otl-home-hero { min-height: 510px; display: grid; grid-template-columns: minmax(0, 0.96fr) minmax(520px, 1.04fr); border-bottom: 8px solid var(--otl-home-red); background: var(--otl-home-paper); }
.otl-home-hero__copy { padding: clamp(3rem, 5vw, 5.2rem) clamp(2rem, 4vw, 4rem) clamp(3rem, 5vw, 4.5rem) max(2rem, calc((100vw - 1380px) / 2)); display: flex; flex-direction: column; justify-content: center; }
.otl-home-hero__lead { max-width: 650px; margin-top: 1.2rem !important; color: var(--otl-home-text); font-size: clamp(1.02rem, 1.2vw, 1.22rem); line-height: 1.62; }
.otl-home-actions { margin-top: 1.5rem; display: flex; flex-wrap: wrap; align-items: center; gap: 0.9rem 1.3rem; }
.otl-home-text-link { color: var(--otl-home-red) !important; font-size: 0.84rem; font-weight: 700; }
.otl-home-notice { max-width: 680px; margin-top: 1.5rem; padding: 0.85rem 1rem; border: 1px solid var(--otl-home-line); border-left: 4px solid var(--otl-home-red); border-radius: 6px; background: rgba(255, 255, 255, 0.78); }
.otl-home-notice strong { display: block; margin-bottom: 0.2rem; color: var(--otl-home-navy); font-size: 0.78rem; }
.otl-home-notice p { color: var(--otl-home-muted); font-size: 0.74rem; line-height: 1.5; }
.otl-home-hero__media { min-width: 0; display: grid; grid-template-columns: 42% 58%; overflow: hidden; background: #d4c8b8; }
.otl-home-hero__media figure { min-width: 0; height: 100%; margin: 0; overflow: hidden; }
.otl-home-hero__media figure + figure { border-left: 5px solid var(--otl-home-paper); }
.otl-home-hero__media img { width: 100%; height: 100%; object-fit: cover; }
.otl-home-hero__media figure:first-child img { object-position: 55% center; }
.otl-home-hero__media figure:last-child img { object-position: 54% center; }

.otl-home-services,
.otl-home-trust,
.otl-home-news,
.otl-home-official { width: min(100% - 3rem, 1320px); margin: 0 auto; padding: clamp(4rem, 7vw, 6.5rem) 0; }
.otl-home-section-heading { max-width: 760px; margin-bottom: 2rem; }
.otl-home-section-heading > p:last-child { max-width: 680px; margin-top: 1rem; color: var(--otl-home-muted); }
.otl-home-service-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--otl-home-line); border-radius: 9px; overflow: hidden; background: var(--otl-home-paper); }
.otl-home-service-grid article { min-height: 190px; padding: 1.8rem; border-top: 4px solid var(--otl-home-red); }
.otl-home-service-grid article + article { border-left: 1px solid var(--otl-home-line); }
.otl-home-service-grid p { margin-top: 0.75rem; color: var(--otl-home-muted); font-size: 0.84rem; line-height: 1.55; }
.otl-home-policy { margin-top: 1.25rem !important; color: var(--otl-home-muted); font-size: 0.78rem; line-height: 1.55; }

.otl-home-remote { width: min(100% - 3rem, 1320px); margin: 0 auto clamp(4rem, 7vw, 6.5rem); padding: clamp(2rem, 4vw, 3rem); display: grid; grid-template-columns: 0.95fr 1.45fr 0.65fr; gap: clamp(1.5rem, 3vw, 3.2rem); align-items: center; border: 1px solid var(--otl-home-line); border-radius: 10px; background: var(--otl-home-paper); }
.otl-home-remote__copy h2 { font-size: clamp(2rem, 3vw, 3.15rem); }
.otl-home-remote__copy > p:not(.otl-home-kicker) { margin-top: 1rem; color: var(--otl-home-muted); font-size: 0.86rem; }
.otl-home-remote__copy .otl-home-button { margin-top: 1.2rem; }
.otl-home-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.otl-home-steps article { min-width: 0; }
.otl-home-steps span { width: 38px; height: 38px; margin-bottom: 0.8rem; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--otl-home-red); font-size: 0.72rem; font-weight: 700; }
.otl-home-steps p { margin-top: 0.55rem; color: var(--otl-home-muted); font-size: 0.76rem; line-height: 1.52; }
.otl-home-remote__note { padding-left: 1.35rem; border-left: 1px solid var(--otl-home-line); }
.otl-home-remote__note strong { color: var(--otl-home-red); font-size: 0.83rem; }
.otl-home-remote__note p { margin-top: 0.45rem; color: var(--otl-home-muted); font-size: 0.72rem; line-height: 1.56; }

.otl-home-trust { display: grid; grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr); gap: clamp(2rem, 5vw, 5rem); border-top: 1px solid var(--otl-home-line); }
.otl-home-trust__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.otl-home-trust__grid article { padding: 1.5rem; border: 1px solid var(--otl-home-line); border-radius: 8px; background: var(--otl-home-paper); }
.otl-home-trust__grid p { margin-top: 0.65rem; color: var(--otl-home-muted); font-size: 0.82rem; line-height: 1.56; }

.otl-home-news { border-top: 1px solid var(--otl-home-line); }
.otl-home-news__heading { margin-bottom: 1.75rem; display: flex; align-items: end; justify-content: space-between; gap: 1.5rem; }
.otl-home-news__heading > a { color: var(--otl-home-red); font-size: 0.84rem; font-weight: 700; }
.otl-home-news .otl-news-card { border-color: var(--otl-home-line); border-top: 4px solid var(--otl-home-red); border-radius: 8px; background: var(--otl-home-paper); transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease; }
.otl-home-news .otl-news-card:hover { border-color: #cbb7a5; box-shadow: 0 14px 28px rgba(11, 29, 55, 0.08); transform: translateY(-2px); }
.otl-home-news .otl-news-card__body { min-height: 205px; display: flex; flex-direction: column; }
.otl-home-news .otl-news-card .otl-news-card__meta { margin-bottom: 0.55rem; color: var(--otl-home-red); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.08em; }
.otl-home-news .otl-news-card :is(h2, h3) { font-family: Manrope, sans-serif; font-size: 1.05rem; line-height: 1.35; letter-spacing: 0; }
.otl-home-news .otl-news-card :is(h2, h3) a { color: var(--otl-home-navy); text-decoration: none; }
.otl-home-news .otl-news-card :is(h2, h3) a:hover { color: var(--otl-home-red); }
.otl-home-news .otl-news-card p { color: var(--otl-home-muted); font-size: 0.8rem; }
.otl-home-news .otl-news-card__body > p:last-child { margin-top: 0.8rem; line-height: 1.55; }

.otl-home-official { display: grid; grid-template-columns: 0.7fr 1.3fr; gap: clamp(2rem, 5vw, 5rem); border-top: 1px solid var(--otl-home-line); }
.otl-home-official__links { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.otl-home-official__links a { padding: 1.35rem; display: grid; gap: 0.35rem; border: 1px solid var(--otl-home-line); border-radius: 8px; background: var(--otl-home-paper); }
.otl-home-official__links a:hover { border-color: var(--otl-home-red); }
.otl-home-official__links strong { color: var(--otl-home-navy); font-size: 0.9rem; }
.otl-home-official__links span { color: var(--otl-home-red); font-size: 0.76rem; font-weight: 700; }
.otl-home-official > .otl-home-policy { grid-column: 2; }

.otl-home-contact { padding: clamp(3rem, 5vw, 4.5rem) max(1.5rem, calc((100vw - 1250px) / 2)); display: grid; grid-template-columns: 1.15fr 0.85fr 0.55fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; color: #fff; background: var(--otl-home-red); }
.otl-home-contact h2 { max-width: 680px; color: #fff; font-size: clamp(2.3rem, 3.5vw, 3.65rem); }
.otl-home-contact .otl-home-kicker { color: #f5d9dc; }
.otl-home-contact > div > p:not(.otl-home-kicker) { max-width: 650px; margin-top: 0.8rem; color: rgba(255, 255, 255, 0.82); }
.otl-home-button--light,
.otl-home a.otl-home-button--light { margin-top: 1.25rem; color: var(--otl-home-red); border-color: #fff; background: #fff; box-shadow: none; }
.otl-home-button--light:hover,
.otl-home a.otl-home-button--light:hover { color: var(--otl-home-red); border-color: var(--otl-home-sand); background: var(--otl-home-sand); }
.otl-home-contact address { display: grid; gap: 0.7rem; padding-left: 2rem; border-left: 1px solid rgba(255, 255, 255, 0.35); color: rgba(255, 255, 255, 0.88); font-style: normal; font-size: 0.86rem; }
.otl-home-contact address a { color: #fff; font-weight: 700; }
.otl-home-social { display: grid; gap: 0.45rem; padding-left: 2rem; border-left: 1px solid rgba(255, 255, 255, 0.35); font-size: 0.86rem; font-weight: 700; }
.otl-home-social a:hover { text-decoration: underline; text-underline-offset: 0.22em; }

.otl-home-footer { color: rgba(255, 255, 255, 0.76); background: var(--otl-home-navy); }
.otl-home-footer > div { width: min(100% - 3rem, 1250px); min-height: 58px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; font-size: 0.72rem; }
.otl-home-footer nav { display: flex; flex-wrap: wrap; gap: 1.5rem; }

@media (max-width: 1280px) {
  .otl-home-nav { display: none; }
  .otl-home-mobile { position: relative; display: block; }
  .otl-home-mobile summary { min-height: 44px; display: grid; place-items: center; padding: 0 0.8rem; border: 1px solid var(--otl-home-line); border-radius: 6px; color: var(--otl-home-navy); font-size: 0.78rem; font-weight: 700; cursor: pointer; list-style-position: inside; }
  .otl-home-mobile nav { position: absolute; top: calc(100% + 0.4rem); right: 0; width: 230px; display: grid; padding: 0.65rem; border: 1px solid var(--otl-home-line); border-radius: 7px; background: var(--otl-home-paper); box-shadow: 0 18px 38px rgba(11, 29, 55, 0.16); }
  .otl-home-mobile nav > * { padding: 0.65rem; }
  .otl-home-hero { grid-template-columns: minmax(0, 1fr) minmax(430px, 0.9fr); }
  .otl-home-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .otl-home-service-grid article:nth-child(3) { border-left: 0; }
  .otl-home-service-grid article:nth-child(n + 3) { border-top-color: var(--otl-home-red); }
  .otl-home-remote { grid-template-columns: 1fr; }
  .otl-home-remote__note { padding: 1.2rem 0 0; border-left: 0; border-top: 1px solid var(--otl-home-line); }
}

@media (min-width: 1201px) and (max-width: 1280px) {
  .otl-home-header__inner { width: min(100% - 2rem, 1400px); gap: 1.15rem; }
  .otl-home-nav { display: flex; gap: 1.1rem; }
  .otl-home-mobile { display: none; }
  .otl-home-header__cta,
  .otl-home a.otl-home-header__cta { padding-inline: 1rem; }
}

@media (max-width: 900px) {
  .otl-home-header { position: sticky; top: 0; }
  .admin-bar .otl-home-header { top: 32px; }
  .otl-home-header__inner { width: min(100% - 1.5rem, 1400px); min-height: 72px; }
  .otl-home-brand img { width: 50px; height: 50px; }
  .otl-home-brand span { max-width: 180px; white-space: normal; font-size: 0.96rem; line-height: 1.1; }
  .otl-home-header__cta,
  .otl-home-languages { display: none !important; }
  .otl-home-mobile { position: relative; display: block; }
  .otl-home-mobile summary { min-height: 44px; display: grid; place-items: center; padding: 0 0.8rem; border: 1px solid var(--otl-home-line); border-radius: 6px; color: var(--otl-home-navy); font-size: 0.78rem; font-weight: 700; cursor: pointer; list-style-position: inside; }
  .otl-home-mobile nav { position: absolute; top: calc(100% + 0.4rem); right: 0; width: 230px; display: grid; padding: 0.65rem; border: 1px solid var(--otl-home-line); border-radius: 7px; background: var(--otl-home-paper); box-shadow: 0 18px 38px rgba(11, 29, 55, 0.16); }
  .otl-home-mobile nav > * { padding: 0.65rem; }
  .otl-home-hero { min-height: 0; grid-template-columns: 1fr; }
  .otl-home-hero__copy { padding: 3.25rem 1.25rem 2.5rem; }
  .otl-home-main h1 { font-size: clamp(2.8rem, 13vw, 4.2rem); }
  .otl-home-actions { align-items: stretch; flex-direction: column; }
  .otl-home-button { width: 100%; }
  .otl-home-hero__media { height: 310px; }
  .otl-home-services,
  .otl-home-trust,
  .otl-home-news,
  .otl-home-official { width: min(100% - 2rem, 1320px); padding: 4rem 0; }
  .otl-home-service-grid { grid-template-columns: 1fr; }
  .otl-home-service-grid article + article { border-left: 0; }
  .otl-home-service-grid article { min-height: 0; }
  .otl-home-remote { width: min(100% - 2rem, 1320px); margin-bottom: 4rem; padding: 1.5rem; }
  .otl-home-steps { grid-template-columns: 1fr; }
  .otl-home-steps article { min-height: 58px; padding-left: 54px; position: relative; }
  .otl-home-steps span { position: absolute; top: 0; left: 0; }
  .otl-home-trust,
  .otl-home-official { grid-template-columns: 1fr; }
  .otl-home-trust__grid { grid-template-columns: 1fr; }
  .otl-home-official__links { grid-template-columns: 1fr; }
  .otl-home-official > .otl-home-policy { grid-column: auto; }
  .otl-home-news__heading { align-items: flex-start; flex-direction: column; }
  .otl-home-contact { padding: 3.25rem 1.25rem; grid-template-columns: 1fr; }
  .otl-home-contact address,
  .otl-home-social { padding: 1.25rem 0 0; border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.35); }
  .otl-home-footer > div { min-height: 0; padding: 1.25rem 0; align-items: flex-start; flex-direction: column; }
}

@media (max-width: 430px) {
  .admin-bar .otl-home-header { top: 46px; }
  .otl-home-hero__media { height: 240px; }
  .otl-home-main h1 { font-size: clamp(2.35rem, 10.4vw, 2.95rem); line-height: 1.04; }
  .otl-home-main h2 { font-size: 2.15rem; }
  .otl-home-brand span { max-width: 140px; }
}

@media (prefers-reduced-motion: reduce) {
  .otl-home *,
  .otl-home *::before,
  .otl-home *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
}
