@font-face { font-family: Onest; font-style: normal; font-weight: 100 900; font-display: swap; src: url('/wp-content/plugins/proremontrf-design/assets/photos/onest-variable.ttf') format('truetype'); }
.company-socials { display: flex; flex-wrap: wrap; gap: 10px; margin-block: 24px 12px; }
body.prf-production-design .company-socials a { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; padding: 7px 13px 7px 8px; border: 1px solid #70777b; border-radius: 999px; background: #1d2327; color: #fff !important; font: 600 13px/1.4 Onest,Arial,sans-serif; text-decoration: none; }
.company-social-mark { display: block; flex: 0 0 28px; width: 28px; height: 28px; object-fit: contain; background: transparent; border-radius: 0; }
.company-socials--compact { flex-wrap: nowrap; gap: 4px; margin: 0; flex-shrink: 0; }
body.prf-production-design .company-socials--compact a { position: relative; justify-content: center; min-height: 40px; width: 36px; padding: 4px; border: 0; border-radius: 8px; background: transparent; }
.company-socials--compact a > span { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.footer-service-directory { width: 100%; margin-top: 36px; padding-top: 30px; border-top: 1px solid #ffffff24; }
.footer-service-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px 40px; }
.footer-service-group { min-width: 0; }
.footer-service-group > summary { list-style: none; font: 700 16px/1.5 Onest,Arial,sans-serif; color: #fff; margin-bottom: 12px; }
.footer-service-group > summary::-webkit-details-marker { display: none; }
.footer-service-group ul { list-style: none; margin: 0; padding: 0; }
body.prf-production-design .footer-service-group li a { display: inline-flex; align-items: center; min-height: 36px; padding: 5px 0; color: #d9dcde !important; font: 400 14px/1.5 Onest,Arial,sans-serif; text-decoration: none; overflow-wrap: anywhere; }
body.prf-production-design .footer-service-group li a:hover { color: #ff9b43 !important; }
body.prf-production-design .footer-all-services { display: inline-flex; align-items: center; gap: 18px; margin-top: 18px; min-height: 44px; color: #ff9b43 !important; font-weight: 700; text-decoration: none; }
@media(max-width:767px) {
  .footer-service-grid { grid-template-columns: 1fr; gap: 0; }
  .footer-service-group { border-bottom: 1px solid #ffffff24; }
  .footer-service-group > summary { display: flex; justify-content: space-between; align-items: center; margin: 0; min-height: 54px; cursor: pointer; }
  .footer-service-group > summary::after { content: '+'; color: #ff9b43; font-size: 22px; font-weight: 400; }
  .footer-service-group[open] > summary::after { content: '−'; }
  .footer-service-group ul { padding-bottom: 14px; }
  body.prf-production-design .footer-service-group li a { min-height: 44px; }
}
@media (max-width: 767px) {
  #page-header .company-socials--compact { position: fixed; right: 16px; top: 53px; gap: 4px; }
  body.prf-production-design #page-header .company-socials--compact a { width: 32px; min-height: 36px; padding: 4px; }
  #page-header .company-socials--compact .company-social-mark { width: 24px; height: 24px; flex-basis: 24px; }
}
@media (hover: hover) { body.prf-production-design .company-socials a:hover { border-color: #ff7900; background: #2a3034; } }
:root { --brand-orange: #ff7900; --brand-dark: #16191b; --brand-ink: #171a1d; --brand-muted: #68707a; --prf-header-height: 86px; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body.prf-production-design { color: var(--brand-ink); background: white; font-family: Onest, Arial, sans-serif; }
body.prf-production-design :is(h1,.prf-h1-copy),body.prf-production-design h2,body.prf-production-design h3,body.prf-production-design h4,body.prf-production-design h5,body.prf-production-design h6,body.prf-production-design .w-btn { font-family: Onest, Arial, sans-serif; }
body.prf-production-design h2 { font-weight: 700; letter-spacing: -.025em; line-height: 1.2; }
body.prf-production-design h3 { font-weight: 700; letter-spacing: -.02em; }
body.prf-production-design a:focus-visible,body.prf-production-design button:focus-visible,body.prf-production-design input:focus-visible { outline: 3px solid var(--brand-orange); outline-offset: 5px; }
body.prf-production-design #page-header { background: var(--brand-dark) !important; height: var(--prf-header-height) !important; box-shadow: none !important; color: white !important; position: fixed; inset: 0 0 auto; }
body.prf-production-design #page-header .at_top,body.prf-production-design #page-header .at_bottom { display: none !important; }
body.prf-production-design #page-header .at_middle { height: var(--prf-header-height) !important; background: var(--brand-dark) !important; padding: 0 !important; }
body.prf-production-design #page-header .l-subheader-h { max-width: 1440px; width: 100%; padding: 0 58px !important; }
body.prf-production-design #page-header .at_left { flex-grow: 0; min-width: 255px; }
body.prf-production-design #page-header .at_center { justify-content: center; }
body.prf-production-design #page-header .at_right { gap: 22px; }
body.prf-production-design #page-header .ush_image_1 { display: flex; align-items: center; line-height: 1; width: auto; height: auto; margin: 0 !important; }
body.prf-production-design #page-header .ush_image_1 > .w-image-h,body.prf-production-design #page-header .ush_text_1 { display: none !important; }
.preview-wordmark { font-size: 23px; font-weight: 800; letter-spacing: -.045em; line-height: 1; white-space: nowrap; display: inline-flex; text-decoration: none !important; gap: 0; }
.preview-wordmark .orange { color: var(--brand-orange); }.preview-wordmark .white { color: white; }
body.prf-production-design #page-header .w-nav-anchor.level_1,body.prf-production-design #page-header .w-text-value,body.prf-production-design #page-header .w-text-h,body.prf-production-design #page-header .w-nav-control { color: white !important; }
body.prf-production-design #page-header .w-nav-anchor.level_1 { padding: 0 17px; font-size: 15px; font-weight: 700; background: transparent !important; }
body.prf-production-design #page-header .w-nav-item.current-menu-item > .w-nav-anchor.level_1,body.prf-production-design #page-header .w-nav-anchor.level_1:hover { color: var(--brand-orange) !important; }
body.prf-production-design #page-header .w-nav-list.level_2 { background: white; color: var(--brand-ink); }
body.prf-production-design #page-header .w-nav-list.level_2 a { color: var(--brand-ink) !important; }
body.prf-production-design #page-header #event-subdomain { display: none; }
.redesign-hero #event-subdomain { display: block; color: #c6c8c8; font-size: 14px; margin: 52px 0 0; }
body.prf-production-design #page-header .w-btn { background: var(--brand-orange) !important; color: white !important; border: 0; border-radius: 5px; font-size: 15px; font-weight: 700; padding: 16px 25px; }
body.prf-production-design main { padding-top: var(--prf-header-height) !important; }
body.prf-production-design .l-section-h { max-width: 1324px; }
body.prf-production-design .redesign-hero { background: #171a1c var(--hero-image, url('/wp-content/plugins/proremontrf-design/assets/photos/hero-interior.webp')) center 52% / cover no-repeat !important; color: white !important; position: relative; isolation: isolate; padding: 0 !important; min-height: 660px; }
body.prf-production-design .redesign-hero:before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(8,11,12,.88) 0%,rgba(8,11,12,.56) 39%,rgba(8,11,12,.04) 78%); z-index: -1; }
body.prf-production-design .redesign-hero .l-section-overlay { display: none; }
body.prf-production-design .redesign-hero .l-section-img { display: none !important; }
body.prf-production-design .redesign-hero > .l-section-h { padding: 120px 0 72px !important; max-width: 1324px; width: calc(100% - 116px); position: relative; }
body.prf-production-design .redesign-hero .redesign-eyebrow { display: block !important; position: static !important; width: auto !important; height: auto !important; max-height: none !important; overflow: visible !important; visibility: visible !important; opacity: 1 !important; line-height: 1.4 !important; margin: 0 0 24px !important; text-transform: uppercase; letter-spacing: .15em; font-size: 12px; font-weight: 600; }
body.prf-production-design .redesign-hero .redesign-eyebrow .w-text-h { display: block !important; position: static !important; visibility: visible !important; opacity: 1 !important; }
body.prf-production-design .redesign-hero .redesign-eyebrow a { color: #c6c8c8; }
body.prf-production-design .redesign-hero .redesign-eyebrow .w-text-value { color: #c6c8c8 !important; font-size: 12px !important; line-height: 1.4 !important; font-weight: 600 !important; letter-spacing: .15em !important; }
body.prf-production-design .redesign-hero .g-cols { grid-template-columns: 1fr !important; }
body.prf-production-design .redesign-hero .g-cols > .wpb_column:first-child { max-width: 765px; }
body.prf-production-design .redesign-hero .g-cols > .wpb_column:nth-child(2) { display: none; }
body.prf-production-design .redesign-contact-hero .g-cols > .wpb_column:first-child { max-width: none; }
body.prf-production-design .redesign-contact-hero .g-cols.cols_2 { grid-template-columns: 1.15fr .85fr !important; gap: 40px; }
body.prf-production-design .redesign-contact-hero .g-cols.cols_2 > .wpb_column:nth-child(2) { display: flex !important; }
body.prf-production-design .redesign-contact-hero :is(h1,.prf-h1-copy) { text-align: left !important; }
body.prf-production-design .redesign-contact-hero h2,body.prf-production-design .redesign-contact-hero h6 { color: white !important; }
body.prf-production-design .redesign-contact-hero h2 { font-size: clamp(26px,3vw,40px) !important; }
body.prf-production-design .redesign-contact-hero a[href^="tel:"],body.prf-production-design .redesign-contact-hero a[href^="mailto:"] { color: white !important; font-size: 20px; font-weight: 700; }
body.prf-production-design .redesign-contact-hero h6 { font-size: 20px; font-weight: 700; line-height: 1.6; }
body.prf-production-design .redesign-contact-hero h2 .w-text-value,body.prf-production-design .redesign-contact-hero h6 .w-text-value { font-size: inherit !important; font-weight: inherit !important; line-height: inherit !important; letter-spacing: normal !important; }
body.prf-production-design .redesign-contact-hero .wpcf7 form { color: var(--brand-ink) !important; background: white !important; }
body.prf-production-design .redesign-contact-hero .wpcf7 h2,body.prf-production-design .redesign-contact-hero .wpcf7 p,body.prf-production-design .redesign-contact-hero .wpcf7 label { color: var(--brand-ink) !important; }
body.prf-production-design .contacts-leadership { width: 100%; max-width: 460px; margin: 28px 0 0; }
body.prf-production-design .contacts-leadership img { display: block; width: 100%; height: auto; border-radius: 10px; }
body.prf-production-design .contacts-leadership figcaption { margin-top: 10px; font: 600 13px/1.5 Onest,Arial,sans-serif; color: #d8dadb; letter-spacing: .03em; }
body.prf-production-design .redesign-hero :is(h1,.prf-h1-copy) { font-size: clamp(40px,4.8vw,70px) !important; line-height: 1.09 !important; font-weight: 700 !important; color: white !important; letter-spacing: -.025em; margin: 0 0 24px; max-width: 780px; }
body.prf-production-design .redesign-hero :is(h1,.prf-h1-copy) span { color: var(--brand-orange) !important; }
body.prf-production-design .redesign-hero .wpb_text_column { color: white !important; }
body.prf-production-design .redesign-hero .wpb_text_column:not(:first-child) { max-width: 735px; font-size: 17px !important; line-height: 1.7; }
body.prf-production-design .redesign-hero .wpb_text_column.redesign-original-caption { display: block !important; font-size: 12px !important; line-height: 1.6; color: #c6c8c8 !important; max-width: 580px; margin: 22px 0 0; }
body.prf-production-design .redesign-hero .redesign-original-caption * { color: #d8dadb !important; font-size: inherit !important; line-height: inherit !important; }
body.prf-production-design .redesign-hero .w-separator { height: 16px !important; }
body.prf-production-design .redesign-hero .w-separator.size_small { height: 0 !important; }
body.prf-production-design .redesign-hero .w-popup { display: inline-block; margin: 22px 18px 0 0; vertical-align: middle; }
body.prf-production-design .redesign-hero .w-popup-trigger { font-size: 16px; font-weight: 700; border-radius: 5px; padding: 18px 25px; }
body.prf-production-design .redesign-hero .w-popup:first-of-type .w-popup-trigger,body.prf-production-design .redesign-hero .us-btn-style_1 { background: var(--brand-orange) !important; color: white !important; border-color: var(--brand-orange) !important; }
body.prf-production-design .redesign-hero .us-btn-style_11 { background: transparent !important; color: white !important; border-color: rgba(255,255,255,.65) !important; opacity: 1 !important; }
body.prf-production-design .redesign-hero .us-btn-style_11:before { opacity: 0 !important; }
body.prf-production-design .redesign-hero .us-btn-style_11 { box-shadow: none !important; padding-left: 0; padding-right: 0; }
body.prf-production-design .redesign-hero .us-btn-style_11 .w-btn-label { border-bottom: 1px solid rgba(255,255,255,.7); padding-bottom: 5px; }
body.prf-production-design main > section:not(.redesign-hero) { padding-top: 68px; padding-bottom: 68px; }
body.prf-production-design .color_alternate:not(.redesign-hero) { background: #f6f5f2 !important; color: var(--brand-ink) !important; }
body.prf-production-design .w-iconbox-title { font-size: 24px !important; line-height: 1.25; }
body.prf-production-design .w-iconbox-text { font-size: 15px; line-height: 1.75; }
body.prf-production-design .w-iconbox-icon { color: var(--brand-orange); }
body.prf-production-design .w-btn { border-radius: 5px; }
body.prf-production-design .w-btn:not(.us-btn-style_11),body.prf-production-design .wpcf7 input[type="submit"] { background: var(--brand-orange) !important; color: white !important; border-color: var(--brand-orange) !important; }
body.prf-production-design .wpcf7 input[type="text"],body.prf-production-design .wpcf7 input[type="tel"],body.prf-production-design .wpcf7 input[type="email"],body.prf-production-design .wpcf7 textarea { box-sizing: border-box; width: 100%; padding: 14px 16px !important; height: 52px !important; border: 1px solid #d9d6d0 !important; border-radius: 6px !important; background: white !important; color: var(--brand-ink) !important; font: 16px/1.4 Onest,Arial,sans-serif !important; }
body.prf-production-design .wpcf7 textarea { height: 140px !important; resize: vertical; }
body.prf-production-design .wpcf7 input[type="submit"] { min-height: 52px; border: 0 !important; border-radius: 6px !important; font: 700 16px/1.4 Onest,Arial,sans-serif !important; cursor: pointer; }
body.prf-production-design .w-image img { border-radius: 12px; }
body.prf-production-design #features { background: white !important; }
body.prf-production-design #features .w-text,body.prf-production-design #features h2 { text-align: left !important; }
body.prf-production-design #features .w-iconbox { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; padding: 0 !important; text-align: left !important; }
body.prf-production-design #features .w-iconbox-icon { margin-left: 0 !important; margin-right: auto !important; }
body.prf-production-design #features .w-iconbox-icon:has(.prf-feature-icon) { display: flex; align-items: center; justify-content: center; width: 72px; height: 72px; margin-bottom: 22px; border: 1px solid #e7e5df; border-radius: 18px; background: #f4f3ef; line-height: 1; }
body.prf-production-design #features img.prf-feature-icon { display: block; width: 46px !important; height: 46px !important; max-width: none; border-radius: 0; object-fit: contain; }
body.prf-production-design #features .w-iconbox-title { font-size: 21px !important; font-weight: 700; text-align: left; }
body.prf-production-design #features .wpb_column.has_bg_color { background: transparent !important; padding: 0 !important; border-radius: 0 !important; }
body.prf-production-design #features .g-cols.cols_4 { column-gap: 36px; }
body.prf-production-design #page-header .w-nav.type_mobile .w-nav-list.level_1 { position: fixed; top: var(--prf-header-height); left: 0 !important; right: 0; width: 100vw !important; padding: 14px 0; max-height: calc(100dvh - var(--prf-header-height)); overflow-y: auto; background: var(--brand-dark); }
body.prf-production-design #page-header .w-nav.type_mobile .w-nav-anchor.level_1 { padding: 12px 20px !important; min-height: 48px; font-size: 17px; line-height: 24px; }
body.prf-production-design .w-popup-box { color: var(--brand-ink); }
body.prf-production-design .w-popup-box .wpb_text_column { color: var(--brand-ink) !important; }
body.prf-production-design .w-popup-box h2 { font-size: 29px; }
body.prf-production-design .animation_fadein,body.prf-production-design [class*="animation_"] { opacity: 1 !important; animation: none !important; transform: none !important; }
.preview-form-status { margin-top: 18px; padding: 12px; background: #fff2e7; color: #252525; font-size: 14px; border-left: 3px solid var(--brand-orange); }
/* Reading refinements: keep original content, structure and form behavior. */
body.prf-production-design main > section:not(.redesign-hero) .wpb_text_column p,
body.prf-production-design main > section:not(.redesign-hero) .wpb_text_column li {
  line-height: 1.8;
  overflow-wrap: anywhere;
}
body.prf-production-design main > section:not(.redesign-hero) .g-cols.cols_1 .wpb_text_column p {
  max-width: 72ch;
  margin-inline: auto;
}
body.prf-production-design .wpb_text_column p + p { margin-top: 1em; }
body.prf-production-design .wpb_text_column table { font-variant-numeric: tabular-nums; }
body.prf-production-design .wpb_text_column th,
body.prf-production-design .wpb_text_column td { padding: 14px 16px; line-height: 1.6; }
body.prf-production-design .wpcf7 textarea:focus-visible,
body.prf-production-design summary:focus-visible,
body.prf-production-design select:focus-visible { outline: 3px solid var(--brand-orange); outline-offset: 4px; }
body.prf-production-design .catalog-card { transition: box-shadow .2s ease; }
@media (hover: hover) {
  body.prf-production-design .catalog-card:hover { box-shadow: 0 12px 32px #16191b12; }
}
@media (max-width: 767px) {
  body.prf-production-design main > section:not(.redesign-hero) .wpb_text_column { font-size: 16px; }
  body.prf-production-design .redesign-hero :is(h1,.prf-h1-copy) { font-size: clamp(30px, 9.5vw, 38px) !important; overflow-wrap: anywhere; }
  body.prf-production-design .redesign-hero .w-text-value { overflow-wrap: anywhere; }
  body.prf-production-design .wpcf7 input[type="submit"] { max-width: 100%; white-space: normal; }
  body.prf-production-design .wpcf7 label { line-height: 1.6; }
  body.prf-production-design .catalog-shortcuts a { min-height: 44px; align-items: center; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  body.prf-production-design .catalog-card { transition: none; }
}
/* Additional navigation is isolated from Impreza's original menu and page copy. */
.service-navigation-ready { --prf-header-height: 124px; scroll-padding-top: calc(var(--prf-header-height) + 20px); }
.service-navigation-ready #page-header .original-navigation-preserved { display: none !important; }
body.prf-production-design .service-navigation-ready #page-header { height: var(--prf-header-height) !important; }
.service-navigation-ready body.prf-production-design #page-header .at_middle { height: 76px !important; }
.service-navigation-ready .service-navigation { position: absolute; top: 76px; left: 0; right: 0; border-top: 1px solid #ffffff18; color: white; }
.service-navigation-inner { max-width: 1324px; margin: auto; display: flex; align-items: center; justify-content: space-between; min-height: 48px; }
.service-navigation-inner > a,.service-toplink { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 14px; font: 650 14px/1.5 Onest,Arial,sans-serif; color: white !important; text-decoration: none; cursor: pointer; list-style: none; }
.service-toplink::-webkit-details-marker,.service-group > summary::-webkit-details-marker { display: none; }
.service-toplink:after { content: '+'; color: var(--brand-orange); font-size: 18px; }
.service-mega[open] > .service-toplink:after { content: '−'; }
.service-navigation-inner > a:hover,.service-toplink:hover,.service-mega[open] > summary { color: var(--brand-orange) !important; }
.service-mega-panel { position: absolute; top: 100%; left: max(24px,calc((100% - 1324px)/2)); right: max(24px,calc((100% - 1324px)/2)); padding: 26px 32px 32px; background: #fbfaf7; color: var(--brand-ink); border-top: 3px solid var(--brand-orange); border-radius: 0 0 14px 14px; box-shadow: 0 30px 60px #0005; max-height: calc(100dvh - 148px); overflow-y: auto; }
.service-mega-lead { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-bottom: 20px; margin-bottom: 22px; border-bottom: 1px solid #dedbd5; }
.service-mega-lead > span { font-size: 24px; font-weight: 800; letter-spacing: -.03em; }
.service-mega-lead > a { font-size: 13px; font-weight: 700; color: #ad4900 !important; }
.service-mega-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px 30px; }
.service-group > summary { list-style: none; font-size: 13px; line-height: 1.5; font-weight: 800; text-transform: uppercase; letter-spacing: .035em; color: #ad4900; margin-bottom: 10px; }
.service-group ul,.catalog-card ul { list-style: none; padding: 0; margin: 0; }
.service-group li a { display: block; font-size: 14px; line-height: 1.5; padding: 8px 0; color: #24282b !important; }
.service-group a:hover,.service-group a[aria-current] { color: #ad4900 !important; text-decoration: underline; }
.service-menu-toggle { display: none; }
body.prf-production-design .service-catalog { background: #f5f3ee; padding: 76px 0 !important; }
.service-catalog .l-section-h,.service-related .l-section-h { width: calc(100% - 116px); }
.catalog-heading { max-width: 760px; margin-bottom: 26px; }
.catalog-eyebrow { display: block; font-size: 11px; font-weight: 800; letter-spacing: .16em; color: #ad4900; margin-bottom: 16px; }
body.prf-production-design .catalog-heading h2 { font-size: clamp(30px,3.4vw,48px); margin: 0 0 20px; }
.catalog-heading p { color: #60676c; font-size: 16px; line-height: 1.75; }
.catalog-shortcuts { display: flex; flex-wrap: wrap; gap: 10px; }
.catalog-shortcuts a { border: 1px solid #d9d5cd; border-radius: 100px; padding: 12px 20px; min-height: 46px; font-size: 13px; font-weight: 700; color: #252a2e !important; background: transparent; }
.catalog-shortcuts a:hover { border-color: var(--brand-orange); background: #fff4e9; }
.catalog-directions { display: grid; gap: 32px; margin-top: 34px; }
.direction-group { min-width: 0; }
.direction-group-heading { display: flex; align-items: center; gap: 20px; margin-bottom: 16px; }
body.prf-production-design .direction-group-heading h3 { flex-shrink: 0; margin: 0; color: #252a2e; font-size: 19px; line-height: 1.4; font-weight: 700; letter-spacing: -.02em; }
.direction-group-heading > span { height: 1px; flex: 1; background: linear-gradient(90deg,#ff790066,#d9d5cd55); }
.direction-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.direction-group--design .direction-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
body.prf-production-design .direction-card { position: relative; isolation: isolate; display: flex; align-items: flex-end; min-width: 0; min-height: 235px; padding: 26px 62px 25px 24px; overflow: hidden; border: 1px solid #ffffff26; border-radius: 14px; background: #24282b; color: #fff !important; text-decoration: none; box-shadow: 0 6px 20px #16191b0a; }
.direction-card > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.direction-card::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,#11181c22 0%,#11181c0d 22%,#11181c88 55%,#11181ced 100%); }
.direction-card-number { position: absolute; top: 18px; left: 20px; display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid #ffffff66; border-radius: 50%; background: #11181c40; color: white; font: 600 11px/1 Onest,Arial,sans-serif; }
.direction-card-title { max-width: 230px; color: #fff; font: 700 clamp(18px,1.7vw,24px)/1.25 Onest,Arial,sans-serif; letter-spacing: -.025em; text-wrap: balance; }
.direction-card-arrow { position: absolute; right: 18px; bottom: 22px; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #ff7900; color: #16191b; font: 500 22px/1 Arial,sans-serif; transition: transform .25s ease; }
@media (hover: hover) {
  body.prf-production-design .direction-card:hover { border-color: #ff7900; }
  .direction-card:hover > img { transform: scale(1.05); }
  .direction-card:hover .direction-card-arrow { transform: rotate(45deg); }
}
@media (max-width: 1023px) {
  .direction-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.prf-production-design .direction-card { min-height: 215px; padding-left: 20px; }
}
@media (max-width: 767px) {
  .catalog-directions { gap: 26px; margin-top: 26px; }
  .direction-grid,.direction-group--design .direction-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .direction-group--design .direction-card:last-child { grid-column: 1 / -1; }
  body.prf-production-design .direction-card { min-height: 195px; padding: 54px 16px 55px; border-radius: 12px; }
  .direction-card-number { top: 14px; left: 14px; width: 28px; height: 28px; }
  .direction-card-title { font-size: 18px; }
  .direction-card-arrow { bottom: 14px; right: 14px; width: 28px; height: 28px; font-size: 19px; }
}
@media (max-width: 359px) {
  .direction-grid,.direction-group--design .direction-grid { grid-template-columns: 1fr; }
  body.prf-production-design .direction-card { min-height: 185px; padding: 50px 60px 22px 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .direction-card > img,.direction-card-arrow { transition: none; }
  .direction-card:hover > img,.direction-card:hover .direction-card-arrow { transform: none; }
}
body.prf-production-design .catalog-works-title { font-size: 25px; margin: 42px 0 24px; }
.catalog-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 22px; }
.catalog-card { background: white; border: 1px solid #e5e1d9; border-radius: 12px; overflow: hidden; }
.catalog-card > img { display: block; width: 100%; height: 170px; object-fit: cover; }
body.prf-production-design .catalog-card h3 { font-size: 17px; line-height: 1.4; margin: 22px 20px 12px; }
.catalog-card ul { margin: 0 20px 20px; }
.catalog-card a { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 0; font-size: 13px; line-height: 1.5; color: #50585e !important; border-top: 1px solid #eeebe5; }
.catalog-card a:after { content: '↗'; color: #ad4900; flex-shrink: 0; }
.catalog-card a:hover { color: #ad4900 !important; }
.service-related { background: #f5f3ee !important; }
.company-team { background: #16191b !important; color: white !important; }
.company-team-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 60px; align-items: center; width: calc(100% - 116px); }
.company-team-grid > img { width: 100%; height: auto; display: block; border-radius: 12px; }
.company-team .catalog-eyebrow { color: #ff9b43; }
body.prf-production-design .company-team h2 { color: white !important; font-size: clamp(30px,3.4vw,46px); margin: 0 0 24px; }
.company-team-copy p { color: #cbd0d2; font-size: 15px; line-height: 1.8; }
.company-team-copy .company-team-name { color: white; font-size: 17px; font-weight: 700; }
.company-team-copy > a { display: inline-flex; min-height: 48px; align-items: center; padding: 12px 20px; border-radius: 6px; background: var(--brand-orange); color: #16191b !important; font-size: 14px; font-weight: 800; margin-top: 16px; }
@media(max-width:1400px) and (min-width:1024px) { .service-navigation-inner { padding: 0 28px; }.service-navigation-inner > a,.service-toplink { padding: 0 10px; font-size: 13px; } }
@media(max-width:1023px) {
  .service-navigation-ready { --prf-header-height: 94px; }
  .service-navigation-ready body.prf-production-design #page-header .at_middle { height: 94px !important; }
  .service-navigation-ready .service-navigation { position: fixed; top: 94px; bottom: 0; background: #16191b; overflow-y: auto; display: none; padding: 16px 20px 40px; }
  .service-navigation-ready .service-navigation.mobile-open { display: block; }
  .service-navigation-inner { display: block; min-height: 0; }
  .service-navigation-inner > a,.service-toplink { min-height: 52px; padding: 12px 0; font-size: 16px; justify-content: space-between; border-bottom: 1px solid #ffffff20; }
  .service-mega-panel { position: static; padding: 18px; border-radius: 8px; max-height: none; overflow: visible; margin: 8px 0 14px; }
  .service-mega-lead > span { display: none; }.service-mega-lead { padding-bottom: 12px; margin-bottom: 12px; }
  .service-mega-grid { display: block; }
  .service-group > summary { cursor: pointer; display: flex; justify-content: space-between; padding: 12px 0; margin: 0; font-size: 12px; border-bottom: 1px solid #dedbd5; }
  .service-group > summary:after { content: '+'; }.service-group[open] > summary:after { content: '−'; }
  .service-group li a { padding: 12px 0; min-height: 44px; }
  .service-menu-toggle { display: block; position: absolute; top: 22px; right: 24px; border: 1px solid #ffffff40; border-radius: 6px; background: transparent; color: white; min-height: 44px; padding: 8px 14px; font: 700 14px/1.5 Onest,Arial,sans-serif; cursor: pointer; }
  .catalog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .service-catalog .l-section-h,.service-related .l-section-h { width: calc(100% - 56px); }
  .company-team-grid { width: calc(100% - 56px); gap: 30px; }
}
@media(max-width:767px) {
  .service-navigation-ready { --prf-header-height: 94px; }
  .service-catalog .l-section-h,.service-related .l-section-h { width: calc(100% - 40px); }
  .catalog-grid { grid-template-columns: 1fr; }.catalog-card > img { height: 200px; }
  body.prf-production-design .service-catalog { padding: 44px 0 !important; }
  .catalog-shortcuts a { padding: 10px 14px; font-size: 12px; }
  .service-menu-toggle { right: 20px; }
  .company-team-grid { width: calc(100% - 40px); grid-template-columns: 1fr; gap: 30px; }
}
@media (max-width: 1200px) {
  body.prf-production-design #page-header .l-subheader-h { padding: 0 28px !important; }
  body.prf-production-design #page-header .at_left { min-width: 220px; }
  body.prf-production-design #page-header .w-nav-anchor.level_1 { padding: 0 10px; }
  body.prf-production-design #page-header .at_right { gap: 14px; }
  body.prf-production-design .redesign-hero > .l-section-h { width: calc(100% - 64px); }
}
@media (max-width: 1023px) {
  body.prf-production-design #page-header .at_right .w-btn { display: none; }
  body.prf-production-design #page-header .at_left { min-width: 190px; }
  .preview-wordmark { font-size: 20px; }
  body.prf-production-design .redesign-hero > .l-section-h { padding-top: 80px !important; }
}
@media (max-width: 767px) {
  body.prf-production-design .redesign-contact-hero .g-cols.cols_2 { grid-template-columns: 1fr !important; gap: 32px; }
  :root { --prf-header-height: 94px; }
  body.prf-production-design #page-header .l-subheader-h { padding: 0 20px !important; }
  body.prf-production-design #page-header .at_left { min-width: 0; }
  body.prf-production-design #page-header .at_center { margin-left: auto; flex: 0; }
  body.prf-production-design #page-header .at_right { gap: 10px; }
  body.prf-production-design #page-header .at_right .w-text { display: none; }
  body.prf-production-design #page-header .preview-wordmark { position: fixed; left: 20px; top: 23px; }
  body.prf-production-design #page-header .w-text.ush_text_3 { display: block !important; position: fixed; left: 20px; top: 59px; margin: 0 !important; font-size: 14px; line-height: 24px; }
  body.prf-production-design #page-header .w-nav-control { position: fixed; right: 20px; top: 22px; }
  body.prf-production-design #page-header .w-nav-list.level_1 { background: var(--brand-dark); }
  body.prf-production-design #page-header .w-nav-list.level_1 { padding: 14px 0; width: 100vw !important; max-height: calc(100dvh - 94px); overflow-y: auto; }
  body.prf-production-design #page-header .w-nav-anchor.level_1 { padding: 12px 20px !important; min-height: 48px; font-size: 17px; line-height: 24px; }
  body.prf-production-design #page-header .w-nav-list.level_2 { background: #232629; }
  body.prf-production-design #page-header .w-nav-list.level_2 a { color: white !important; padding: 12px 28px; }
  body.prf-production-design .redesign-hero { min-height: 675px; background-position: 61% center !important; }
  body.prf-production-design .redesign-hero:before { background: rgba(8,11,12,.64); }
  body.prf-production-design .redesign-hero > .l-section-h { width: calc(100% - 40px); padding: 44px 0 48px !important; }
  body.prf-production-design .redesign-hero .w-text-value { font-size: 38px !important; line-height: 1.12 !important; font-weight: 700 !important; letter-spacing: -.025em; color: white !important; }
  body.prf-production-design .redesign-hero .wpb_text_column { font-size: 16px !important; line-height: 1.7; }
  body.prf-production-design .redesign-hero :is(h1,.prf-h1-copy) { font-size: clamp(30px, 9.5vw, 38px) !important; }
  body.prf-production-design .redesign-hero .w-popup { display: block; margin: 24px 0 0; }
  body.prf-production-design .redesign-hero .w-popup-trigger { width: 100%; }
  body.prf-production-design main > section:not(.redesign-hero) { padding-top: 42px; padding-bottom: 42px; }
  body.prf-production-design h2 { font-size: 29px !important; }
  body.prf-production-design .w-iconbox-title { font-size: 23px !important; }
}

/* Separate mobile contact row: original phone and social links are moved,
   not duplicated. Desktop positions are restored at the breakpoint. */
.mobile-contact-row { display: none; }
@media (max-width:1023px) {
  .service-navigation-ready { --prf-header-height: 118px; }
  .service-navigation-ready body.prf-production-design #page-header .at_middle { height: 118px !important; }
  .service-navigation-ready .service-navigation { top: 118px; }
  body.prf-production-design #page-header .preview-wordmark { position: fixed; left: 20px; top: 24px; font-size: clamp(17px,5vw,20px); }
  .service-menu-toggle { top: 14px; }
  body.prf-production-design #page-header .mobile-contact-row { display: flex; position: absolute; top: 66px; left: 0; right: 0; box-sizing: border-box; min-height: 44px; padding: 0 20px; align-items: center; justify-content: space-between; gap: 8px; }
  body.prf-production-design #page-header .mobile-contact-row .w-text.ush_text_3,
  body.prf-production-design #page-header .mobile-contact-row .w-text { display: block !important; position: static !important; margin: 0 !important; min-width: 0; font-size: 14px; line-height: 24px; white-space: nowrap; }
  body.prf-production-design #page-header .mobile-contact-row .w-text-h,
  body.prf-production-design #page-header .mobile-contact-row .w-text-value { font-size: inherit !important; }
  body.prf-production-design #page-header .mobile-contact-row .company-socials--compact { position: static; margin: 0; gap: 4px; }
  body.prf-production-design #page-header .mobile-contact-row .company-socials--compact a { width: 28px; min-height: 36px; padding: 2px; }
  #page-header .mobile-contact-row .company-social-mark { width: 22px; height: 22px; flex-basis: 22px; }
}

body.prf-production-design #page-header { top: var(--prf-admin-offset,0px) !important; }
@media(max-width:1023px){.service-navigation-ready .service-navigation { top: calc(118px + var(--prf-admin-offset,0px)); }}
@media(max-width:1023px){body.prf-production-design #page-header .preview-wordmark { top: calc(24px + var(--prf-admin-offset,0px)); }}
