.entry-content::after { display: table; clear: both; content: ""; }
.entry-thumbnail { width: 100%; }
.error-404 { text-align: center; }

/* HOME: Elementor document 30. */
.home-main { overflow: hidden; }
.home-hero { position: relative; min-height: 100dvh; }
.js .home-hero { animation: home-legacy-fade-in 2s ease .5s both; }
.home-hero__track { position: relative; min-height: 80vh; overflow: hidden; touch-action: pan-y; cursor: grab; }
.home-hero__track.is-dragging { cursor: grabbing; }
.home-hero__slide { position: absolute; top: 0; bottom: 0; left: 50%; display: flex; align-items: center; visibility: visible; opacity: 1; transition: transform 1s ease; will-change: transform; }
.home-hero__slide.is-active { z-index: 1; }
.home-hero__slide picture, .home-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; }
.home-hero__image { object-fit: cover; }
.home-hero__message { position: relative; z-index: 1; margin: 0; padding-left: 200px; color: #fff; font-size: 60px; font-weight: 700; line-height: 80px; }
.home-scroll-indicator { position: relative; z-index: 1; width: 50px; height: 50px; margin: 25px auto 0; border: 1px solid #000; border-radius: 50%; }
.home-scroll-indicator span { position: absolute; top: 33%; right: 0; left: 0; width: 10px; height: 10px; margin: auto; border-bottom: 1px solid #000; border-left: 1px solid #000; transform: rotate(-45deg); }
.home-scroll-indicator::before { position: absolute; inset: 0; border-radius: 50%; box-shadow: 0 0 0 0 rgba(211, 211, 211, .5); content: ""; animation: home-scroll-pulse 2s infinite; }
.home-about { position: relative; z-index: 20; display: flex; max-width: 1140px; margin-inline: auto; align-items: center; justify-content: space-between; gap: 0; padding: 50px 0 130px; }
.home-about__title-column, .home-about__copy-column { width: 50%; }
.home-about__title-column { align-self: flex-start; padding-left: 50px; }
.home-about__copy-column { display: flex; flex-direction: column; align-items: flex-end; padding-right: 50px; }
.home-about__title { margin: 0; padding: 0 0 5px; font-size: 65px; font-weight: 600; line-height: 78px; }
.home-about__copy { width: auto; margin: 0; writing-mode: vertical-rl; font-size: 18px; font-weight: 500; line-height: 36px; }
.home-image-strip { --marquee-gap: 50px; overflow: hidden; }
.home-image-strip__track { display: flex; gap: var(--marquee-gap); width: max-content; animation: home-marquee 50s linear infinite; }
.home-image-strip__item { width: var(--strip-item-width, calc((100vw - 200px) / 5)); flex: none; }
.home-image-strip__item img { width: 100%; height: auto; }
.home-wordmark-track { --marquee-gap: 120px; display: flex; gap: var(--marquee-gap); width: max-content; margin-top: 10px; animation: home-marquee 20s linear infinite; }
.home-wordmark-track > div { width: var(--wordmark-item-width, 100vw); flex: none; }
.home-wordmark-track img { width: 100%; }
.home-section { width: 100%; max-width: var(--home-wide-container-width); margin-inline: auto; }
.home-section__header { width: 100%; padding-bottom: 50px; }
.home-section__header h2 { margin: 0; font-size: 80px; font-weight: 700; line-height: 1; }
.home-section__header p { margin: -7px 0 0; padding-left: 5px; font-size: 16px; font-weight: 500; }
.home-service { padding: 150px 0; }
.home-split { display: flex; align-items: center; justify-content: space-between; }
.home-split > * { width: 50%; }
.home-split__copy { padding: 20px 100px 20px 0; }
.home-split__copy h3 { margin: 0; padding-bottom: 20px; font-size: 22px; font-weight: 500; }
.home-split__copy p { margin: 0; font-size: 16px; line-height: 22px; }
.home-pill { display: table; margin-top: 50px; padding: 20px 70px; border: 1px solid var(--color-primary); border-radius: 50px; background: var(--color-primary); color: #fff; font-size: 16px; font-weight: 500; text-decoration: none; transition: background-color .3s ease, color .3s ease; }
.home-pill:hover, .home-pill:focus-visible { background: transparent; color: var(--color-primary); }
.home-service-slider { position: relative; min-height: 450px; overflow: hidden; }
.home-service-slider__slide { position: absolute; inset: 0; visibility: visible; opacity: 1; transform: translateX(100%); transition: transform 1s ease; }
.home-service-slider__slide.is-active { transform: translateX(0); }
.home-service-slider__slide img { width: 100%; height: 100%; object-fit: contain; }
.home-news { display: flex; padding: 50px 0 200px; }
.home-news__heading, .home-news__list { width: 50%; }
.home-view-more { display: inline-block; padding: 0 0 0 7px; color: var(--color-primary); font-size: 18px; font-weight: 500; text-decoration: none; transition: color .1s ease; }
.home-view-more:hover, .home-view-more:focus-visible { color: var(--color-accent); }
.home-news__list { --home-news-card-edge-space: 35px; display: flex; flex-direction: column; gap: var(--home-news-card-edge-space); }
.home-news-card { position: relative; display: flex; flex-direction: column; align-items: flex-start; padding: 0 0 var(--home-news-card-edge-space); margin: 0; border-bottom: 1px solid currentColor; }
.home-news-card time { margin-bottom: 13px; color: #adadad; font-size: 12px; font-weight: 500; line-height: 1.3em; }
.home-news-card h3 { margin: 0; font-size: 18px; font-weight: 600; }
.home-news-card a { color: inherit; text-decoration: none; }
.home-news-card__more { color: var(--color-secondary); font-size: 12px; font-weight: 500; }
.home-recruit { padding: 150px 0 200px; border-radius: 150px 150px 0 0; background: #eee; }
.home-section.home-recruit { max-width: none; }
.home-recruit__inner { width: 100%; max-width: var(--home-wide-container-width); margin-inline: auto; }
.home-image-strip .home-wordmark-track { animation-direction: reverse; }
.home-recruit__body { display: flex; }
.home-recruit__body > .home-split__copy { width: 40%; }
.home-recruit__images { display: flex; width: 60%; justify-content: space-between; }
.home-recruit__images figure { width: 30%; min-height: 500px; margin: 0; overflow: hidden; border-radius: 15px; }
.home-recruit__images img { width: 100%; height: 100%; object-fit: cover; }
.home-wide-image > img { width: 100%; }
.home-company { padding: 150px 0; }
.home-company .home-split__copy { padding-right: 40px; }
.home-map iframe { display: block; width: 100%; height: 400px; border: 0; border-radius: 8px; }
.home-owner { display: flex; gap: 50px; padding-bottom: 200px; }
.home-owner article { width: 50%; }
.home-owner h2 { margin: 0; font-size: 56px; font-weight: 600; }
.home-owner p { margin: 0; padding: 15px 0 5px; font-size: 16px; line-height: 22px; }
[data-home-reveal] { opacity: 1; transform: none; }
.js [data-home-reveal] { opacity: 0; transition: opacity var(--home-duration, 1.25s) ease var(--home-delay, 0ms), transform var(--home-duration, 1.25s) ease var(--home-delay, 0ms); }
.js [data-home-reveal="fade-up"] { transform: translate3d(0, 100%, 0); }
.js [data-home-reveal="fade-right"] { transform: translate3d(100%, 0, 0); }
.js [data-home-reveal].is-visible { opacity: 1; transform: none; }
.is-paused { animation-play-state: paused; }
@keyframes home-marquee { to { transform: translateX(calc(-50% - var(--marquee-gap, 0px) / 2)); } }
@keyframes home-scroll-pulse { 0%, 100% { opacity: 0; } 30% { opacity: 1; } 60% { box-shadow: 0 0 0 20px rgba(220, 220, 220, .5); opacity: 0; } }
@keyframes home-legacy-fade-in { from { opacity: 0; } to { opacity: 1; } }

@media (max-width: 1024px) {
  .home-hero { min-height: 50vh; }
  .home-hero__track { min-height: 50vh; }
  .home-hero__message { padding-left: 50px; font-size: 30px; line-height: 38px; }
  .home-about, .home-section { max-width: calc(var(--home-tablet-content-width) + 40px); }
  .home-recruit__inner { max-width: var(--home-tablet-content-width); }
  .home-about { padding: 50px 20px; }
  .home-about__title-column { padding: 20px 20px 20px 70px; }
  .home-about__copy-column { padding: 20px; align-items: center; }
  .home-about__title { padding: 0 0 3px; font-size: 30px; line-height: 1.2em; }
  .home-about__copy { font-size: 14px; line-height: 24px; }
  .home-image-strip { --marquee-gap: 20px; }
  .home-image-strip__item { width: var(--strip-item-width, calc((100vw - 60px) / 4)); }
  .home-wordmark-track { --marquee-gap: 50px; margin-top: 5px; }
  .home-service { padding: 100px 20px 50px; }
  .home-section__header { padding-bottom: 50px; }
  .home-section__header h2 { font-size: 36px; }
  .home-section__header p { margin-top: 0; padding-left: 3px; font-size: 13px; }
  .home-split__copy { padding: 0; }
  .home-split__copy h3 { padding-bottom: 10px; font-size: 18px; }
  .home-split__copy p { padding-right: 10px; font-size: 13px; line-height: 16px; }
  .home-pill { padding: 15px 50px; font-size: 14px; }
  .home-service-slider { min-height: 200px; }
  .home-news { padding: 50px 20px; }
  .home-view-more { padding: 20px 0 0 5px; font-size: 14px; }
  .home-news-card time { font-size: 12px; }
  .home-news__list { --home-news-card-edge-space: 15px; }
  .home-news-card__more { font-size: 11px; }
  .home-news-card h3 { font-size: 16px; }
  .home-recruit { padding: 50px 20px 100px; border-radius: 50px 50px 0 0; }
  .home-recruit__images figure { min-height: 300px; }
  .home-company { padding: 75px 20px 50px; }
  .home-company .home-split__copy { padding-right: 0; }
  .home-map iframe { height: 200px; }
  .home-owner { gap: 25px; padding: 70px 20px 100px; }
  .home-owner h2 { padding-bottom: 10px; font-size: 24px; }
  .home-owner p { padding-top: 0; font-size: 13px; line-height: 18px; }
}
@media (max-width: 767px) {
  .home-hero { min-height: 65vh; }
  .home-hero__track { min-height: 65vh; }
  .home-hero__message { align-self: flex-start; padding: 200px 0 0 30px; font-size: 24px; line-height: 28px; }
  .home-about { display: block; padding: 0 20px 20px; }
  .home-about__title-column, .home-about__copy-column { width: 100%; }
  .home-about__title-column { padding: 50px 20px 20px 40px; }
  .home-about__title { padding: 0 0 3px; font-size: 24px; line-height: 28px; letter-spacing: 0; }
  .home-about__copy { font-size: 14px; line-height: 22px; }
  .home-image-strip { --marquee-gap: 15px; }
  .home-image-strip__item { width: var(--strip-item-width, calc((100vw - 30px) / 3)); }
  .home-wordmark-track { --marquee-gap: 20px; margin-top: 0; }
  .home-recruit { padding: 50px 20px 50px; }
  .home-service { padding: 100px 20px 50px; }
  .home-section__header { padding-bottom: 30px; }
  .home-section__header h2 { font-size: 28px; }
  .home-split { flex-direction: column; }
  .home-split > * { width: 100%; }
  .home-split__copy { order: 2; padding-top: 20px; }
  .home-split__copy h3 { font-size: 20px; line-height: 24px; }
  .home-split__copy p { padding-right: 0; }
  .home-pill { margin: 30px auto 0; padding: 15px 50px; }
  .home-service-slider { order: 1; }
  .home-news { display: block; padding: 50px 20px 100px; }
  .home-news-card time { font-size: 11px; }
  .home-news__heading, .home-news__list { width: 100%; }
  .home-news__heading { display: flex; justify-content: space-between; align-items: flex-end; }
  .home-news__heading .home-section__header { width: auto; padding-bottom: 20px; }
  .home-view-more { padding: 20px 0; }
  .home-news-card { grid-template-columns: auto 1fr; }
  .home-news-card__more { grid-column: 2; }
  .home-recruit__body { flex-direction: column; }
  .home-recruit__body > .home-split__copy, .home-recruit__images { width: 100%; }
  .home-recruit__images { order: 1; }
  .home-recruit__body > .home-split__copy { order: 2; padding-bottom: 50px; }
  .home-recruit__images figure { width: 30%; min-height: 300px; }
  .home-company { padding: 70px 20px 100px; }
  .home-company .home-split__copy { order: 2; }
  .home-map { order: 1; }
  .home-owner { flex-direction: column; gap: 50px; padding: 20px 20px 100px; }
  .home-owner article { width: 100%; }
  .home-owner h2 { font-size: 22px; }
}

/* RECRUIT: preserved document 146. */
.recruit-intro, .recruit-features, .recruit-guideline-heading { max-width: 1260px; }
.recruit-intro__lead { margin: 0; padding: 75px 0 20px; font-size: 60px; font-weight: 600; line-height: 70px; }
.recruit-intro__copy { margin: 0; font-size: 16px; line-height: 22px; }
.recruit-wide-image { width: 100%; max-width: 1260px; margin: 0 auto; }
.recruit-wide-image img { width: 100%; }
.recruit-features { display: flex; gap: 50px; justify-content: space-between; margin: 0 auto; padding: 200px 0 100px; overflow: hidden; }
.recruit-feature { width: 30%; }
.recruit-feature__card { padding: 50px 20px 20px; border-radius: 25px; background: #f2f2f2; }
.recruit-feature__image { width: 250px; height: 250px; margin: 0 auto; overflow: hidden; border-radius: 25px; }
.recruit-feature__image img { width: 100%; height: 100%; object-fit: cover; }
.recruit-feature__heading { padding-top: 20px; }
.recruit-feature__number-row { display: flex; align-items: center; }
.recruit-feature__number { margin: 0; font-family: "Times New Roman", serif; font-size: 45px; font-weight: 400; }
.recruit-feature__number-row span { flex: 1; margin-left: 5px; border-top: 1px solid var(--color-primary); }
.recruit-feature__heading h2 { margin: 0; padding-bottom: 20px; font-size: 24px; font-weight: 500; }
.recruit-feature__body { margin: 0; font-size: 14px; font-weight: 400; }
.recruit-guideline-heading { margin: 0 auto; padding: 100px 0; }
.recruit-guideline-heading h2 { margin: 0; font-size: 70px; font-weight: 700; }
.recruit-guideline-heading h3 { margin: 0; font-size: 16px; font-weight: 500; }
.recruit-guideline { width: 100%; max-width: 800px; margin: 0 auto; border-top: 1px solid var(--color-accent); }
.recruit-guideline__row { display: grid; grid-template-columns: 40% 60%; border-bottom: 1px solid var(--color-accent); }
.recruit-guideline__row > h3, .recruit-guideline__row > div { margin: 0; padding-block: 1em; font-size: 16px; font-weight: 400; }
.recruit-guideline__schedule { display: grid; grid-template-columns: 20% 80%; }
.recruit-contact { width: 100%; max-width: 800px; margin: 0 auto; padding: 50px 20px 150px; text-align: center; }
.recruit-contact h2 { margin: 0; font-size: 32px; font-weight: 500; }
.recruit-contact p { margin: 0; padding: 20px 20px 40px; font-size: 16px; }
.recruit-contact a { display: inline-block; padding: 20px 100px; border: 1px solid #252525; border-radius: 50px; background: #252525; color: #fff; font-size: 16px; font-weight: 500; text-decoration: none; transition: color .3s ease, background-color .3s ease; }
.recruit-contact a:hover, .recruit-contact a:focus-visible { background: #fff; color: #252525; }

@media (max-width: 1024px) {
  .recruit-intro, .recruit-features, .recruit-guideline-heading { max-width: 600px; }
  .recruit-intro__lead { padding: 50px 0 20px; font-size: 30px; line-height: 34px; }
  .recruit-intro__copy { font-size: 14px; line-height: 18px; }
  .recruit-wide-image { max-width: 1260px; }
  .recruit-features { display: block; padding: 70px 20px; }
  .recruit-feature { width: 100%; margin-bottom: 50px; }
  .recruit-feature__card { display: grid; grid-template-columns: 200px 1fr; padding: 20px; }
  .recruit-feature__image { width: 200px; height: 200px; }
  .recruit-feature__heading { padding: 0 0 0 20px; }
  .recruit-feature__number { font-size: 35px; letter-spacing: 1px; }
  .recruit-feature__heading h2 { font-size: 22px; }
  .recruit-feature__body { grid-column: 1 / -1; padding-top: 20px; font-size: 14px; line-height: 20px; }
  .recruit-guideline-heading { padding: 20px; }
  .recruit-guideline-heading h2 { font-size: 36px; }
  .recruit-guideline-heading h3 { padding-left: 3px; font-size: 13px; }
  .recruit-guideline { max-width: 500px; padding: 20px; border-top: 0; }
  .recruit-guideline__row:first-child { border-top: 1px solid var(--color-accent); }
  .recruit-guideline__row > h3, .recruit-guideline__row > div { font-size: 14px; line-height: 20px; }
  .recruit-contact { max-width: 500px; }
  .recruit-contact h2 { font-size: 24px; }
  .recruit-contact p { font-size: 14px; line-height: 20px; }
  .recruit-contact a { padding: 15px 100px; }
}

@media (max-width: 767px) {
  .recruit-intro .subpage-intro__title { font-size: 32px; }
  .recruit-intro__lead { padding: 50px 0 20px; font-size: 24px; line-height: 28px; }
  .recruit-intro__copy { font-size: 14px; line-height: normal; }
  .recruit-features { padding: 70px 20px 20px; }
  .recruit-feature { margin: 0; padding-bottom: 50px; }
  .recruit-feature__card { display: block; padding: 50px 20px 20px; }
  .recruit-feature__heading { padding: 0; }
  .recruit-feature__number-row { padding-top: 10px; }
  .recruit-feature__heading h2 { font-size: 20px; }
  .recruit-feature__body { padding-top: 0; font-size: 13px; line-height: normal; }
  .recruit-guideline-heading { padding: 0 20px 20px; }
  .recruit-guideline-heading h2 { font-size: 32px; }
  .recruit-guideline-heading h3 { font-size: 12px; }
  .recruit-guideline { padding: 20px; }
  .recruit-guideline__row { grid-template-columns: 30% 70%; }
  .recruit-guideline__row > h3, .recruit-guideline__row > div { font-size: 12px; line-height: normal; }
  .recruit-guideline__schedule { grid-template-columns: 31% 69%; }
  .recruit-contact h2 { font-size: 22px; }
  .recruit-contact p { padding: 20px 0 40px; font-size: 14px; line-height: normal; letter-spacing: .3px; text-align: left; }
  .recruit-contact a { padding: 15px 70px; }
}
@media (prefers-reduced-motion: reduce) {
  .js .home-hero, .home-image-strip__track, .home-wordmark-track, .home-scroll-indicator::before { animation: none; }
  .home-hero__slide { transition: none; }
}

/* SERVICE: Elementor document 103. */
.service-page { overflow: hidden; }
.subpage-intro, .service-store, .service-video__inner { width: 100%; max-width: 1140px; margin-inline: auto; }
.subpage-intro { padding: 150px 0 100px; }
.subpage-intro__title { margin: 0; font-size: 80px; font-weight: 700; line-height: normal; }
.subpage-intro__label { margin: -7px 0 0; padding-left: 7px; font-size: 16px; font-weight: 500; line-height: normal; }
.service-intro__lead { margin: 0; padding: 75px 0 20px; font-size: 60px; font-weight: 600; line-height: 70px; }
.service-intro__copy { margin: 0; font-size: 16px; font-weight: 400; line-height: 22px; }
.service-store { display: flex; align-items: center; padding: 0 0 100px; }
.service-store--0bcb92c { padding-bottom: 250px; }
.service-store__image, .service-store__content { width: 50%; }
.service-store__image img { width: 100%; height: auto; }
.service-store__content { padding-left: 100px; }
.service-store__name { margin: 0; font-size: 18px; font-weight: 500; line-height: normal; }
.service-store__details { margin: 0; padding: 20px 0; font-size: 14px; font-weight: 400; line-height: 18px; }
.service-store__map { margin: 0; font-size: 16px; font-weight: 500; line-height: normal; }
.service-store__map a { text-decoration: none; transition: color .4s ease; }
.service-store__map a:hover, .service-store__map a:focus-visible { color: #ccc; }
.service-video { padding-bottom: 200px; }
.service-video__inner { max-width: 800px; }
.service-video h2 { margin: 0; padding-bottom: 10px; font-size: 24px; font-weight: 500; line-height: normal; }
.service-video p { margin: 0; padding-bottom: 20px; font-size: 16px; font-weight: 500; line-height: normal; }
.service-video__media { width: 100%; height: auto; }
[data-partner-reveal] { opacity: 1; }
.js [data-partner-reveal] { opacity: 0; transform: none; transition: opacity var(--partner-reveal-duration, 1.25s) ease var(--partner-reveal-delay, 0ms), transform var(--partner-reveal-duration, 1.25s) ease var(--partner-reveal-delay, 0ms); }
.js [data-partner-reveal-direction="right"] { transform: translate3d(100%, 0, 0); }
.js [data-partner-reveal].is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .js [data-partner-reveal] { opacity: 1; transform: none; transition: none; }
}

@media (max-width: 1024px) {
  .subpage-intro, .service-store, .service-video__inner { max-width: 600px; }
  .subpage-intro { padding: 70px 20px 20px; }
  .subpage-intro__title { font-size: 36px; }
  .subpage-intro__label { margin-top: 0; padding-left: 3px; font-size: 13px; }
  .service-intro__lead { padding: 50px 0 20px; font-size: 30px; line-height: 34px; }
  .service-intro__copy { font-size: 14px; line-height: 17px; }
  .service-store { padding: 20px 20px 50px; }
  .service-store--0bcb92c { padding-bottom: 150px; }
  .service-store__content { padding-left: 30px; }
  .service-store__name { font-size: 18px; }
  .service-store__details { font-size: 13px; line-height: 16px; }
  .service-store__map { font-size: 14px; }
  .service-video { padding-bottom: 150px; }
  .service-video__inner { padding: 20px; }
  .service-video h2 { padding-bottom: 5px; font-size: 18px; }
  .service-video p { font-size: 14px; }
}

@media (max-width: 767px) {
  .subpage-intro { padding: 70px 20px 20px; }
  .subpage-intro__title { font-size: 28px; }
  .subpage-intro__label { padding-left: 3px; font-size: 12px; }
  .service-intro__lead { padding: 30px 0 10px; font-size: 22px; line-height: 28px; }
  .service-intro__copy { font-size: 14px; line-height: normal; }
  .service-store { display: block; padding: 20px; }
  .service-store--0bcb92c { padding-bottom: 50px; }
  .service-store__image, .service-store__content { width: 100%; }
  .service-store__content { padding: 20px 0; }
  .service-store__details { padding: 10px 0; font-size: 13px; line-height: 16px; }
  .service-store--815ed5b .service-store__details { letter-spacing: .3px; }
  .service-store__map { font-size: 14px; }
  .service-video { padding-bottom: 150px; }
  .service-video__inner { padding: 20px; }
  .service-video p { font-size: 12px; }
}

/* RECRUIT overrides follow the shared SERVICE-era subpage rules. */
.subpage-intro.recruit-intro { max-width: 1260px; }
@media (max-width: 1024px) { .subpage-intro.recruit-intro { max-width: 600px; } }
@media (max-width: 767px) { .recruit-intro .subpage-intro__title { font-size: 32px; } }

/* COMPANY — preserved Elementor document 187. */
.company-page { overflow: hidden; }
.subpage-intro.company-intro { max-width: 1260px; }
.company-intro__lead { margin: 0; padding: 75px 0 20px; font-size: 60px; font-weight: 600; line-height: 70px; }
.company-intro__copy { margin: 0; font-size: 16px; font-weight: 400; line-height: 22px; }
.company-marquee__photo { width: 100%; margin: 0; }
.company-marquee__photo img { display: block; width: 100%; height: auto; }
.company-marquee__viewport { width: 100%; margin-top: 10px; overflow: hidden; }
.company-marquee__track { display: flex; width: 200%; animation: company-marquee 20s linear infinite; }
.company-marquee__slide { flex: 0 0 50%; padding-right: 120px; }
.company-marquee__slide img { display: block; width: 100%; height: auto; }
@keyframes company-marquee { to { transform: translateX(-50%); } }
.company-profile { width: 100%; max-width: 800px; margin: 0 auto; padding: 150px 0 100px; }
.company-profile > h2 { margin: 0; font-size: 20px; font-weight: 500; }
.company-profile dl { margin: 0; border-top: 1px solid var(--color-accent); }
.company-profile__row { display: grid; grid-template-columns: 40% 60%; border-bottom: 1px solid var(--color-accent); }
.company-profile dt, .company-profile dd { margin: 0; padding-block: 1em; font-size: 16px; font-weight: 400; }
.company-makers { width: 100%; max-width: 800px; margin: 0 auto; padding: 0 0 150px; }
.company-makers > h2 { margin: 0; padding: 20px; border: 1px solid #252525; border-radius: 8px; font-size: 24px; font-weight: 500; text-align: center; }
.company-makers__list { display: flex; width: 100%; max-width: 900px; justify-content: space-between; }
.company-makers__list figure { width: 20%; margin: 0; }
.company-makers__list img { display: block; width: 100%; height: auto; }
.company-access { display: flex; min-height: 500px; padding: 0 0 200px; justify-content: flex-end; }
.company-access__details { display: flex; width: 30%; flex-direction: column; justify-content: flex-end; }
.company-access__details p { margin: 0; font-size: 16px; line-height: 19px; }
.company-access__details h3 { margin: 0; font-size: 18px; font-weight: 500; }
.company-access__details a { text-decoration: none; transition: color .1s ease; }
.company-access__details a:hover, .company-access__details a:focus-visible { color: #ccc; }
.company-access__map { width: 70%; }
.company-access__map iframe { display: block; width: 100%; height: 500px; border: 0; border-radius: 8px; }

@media (max-width: 1024px) {
  .subpage-intro.company-intro { max-width: 600px; }
  .company-intro .subpage-intro__label { font-size: 11px; }
  .company-intro__lead { padding: 50px 0 20px; font-size: 30px; line-height: 34px; }
  .company-intro__copy { font-size: 14px; line-height: 17px; }
  .company-marquee__viewport { margin-top: 5px; }
  .company-marquee__slide { padding-right: 50px; }
  .company-profile { max-width: 500px; padding: 70px 20px 50px; }
  .company-profile > h2 { font-size: 16px; }
  .company-profile dt, .company-profile dd { font-size: 14px; }
  .company-makers { max-width: 500px; padding: 0 0 50px; }
  .company-makers > h2 { padding: 20px; font-size: 18px; }
  .company-access { min-height: 300px; padding: 0 20px 100px; }
  .company-access__details p { font-size: 14px; line-height: 16px; }
  .company-access__details h3 { font-size: 14px; }
  .company-access__map iframe { height: 300px; }
}

@media (max-width: 767px) {
  .company-intro .subpage-intro__label { font-size: 12px; }
  .company-intro__lead { padding: 30px 0 20px; font-size: 22px; line-height: 28px; }
  .company-intro__copy { font-size: 14px; line-height: normal; }
  .company-marquee__viewport { margin-top: 0; }
  .company-marquee__slide { padding-right: 20px; }
  .company-profile { padding: 50px 20px 20px; }
  .company-profile > h2 { font-size: 16px; }
  .company-profile dt, .company-profile dd { font-size: 13px; overflow-wrap: anywhere; }
  .company-makers { padding: 20px 20px 50px; }
  .company-makers > h2 { padding: 10px; font-size: 16px; }
  .company-access { min-height: 300px; padding: 20px 20px 100px; flex-direction: row-reverse; align-items: flex-end; justify-content: flex-start; }
  .company-access__details { width: 30%; padding-top: 20px; }
  .company-access__details p, .company-access__details h3 { font-size: 13px; line-height: 16px; letter-spacing: .3px; }
  .company-access__map { width: 70%; }
}

@media (prefers-reduced-motion: reduce) {
  .company-marquee__track { animation: none; transform: none; }
}

/* PRIVACY POLICY — preserved Elementor document 3. */
.privacy-page__inner { width: 100%; max-width: 1260px; margin-inline: auto; padding: 150px 0; }
.privacy-header, .privacy-content { width: 100%; max-width: 1140px; margin-inline: auto; }
.privacy-header { padding-bottom: 100px; }
.privacy-content { font-size: 16px; font-weight: 400; overflow-wrap: break-word; }
.privacy-content p { margin-block: 1em; }
.privacy-content p:first-child { margin-top: 0; }
.privacy-content p:last-child { margin-bottom: 0; }

@media (max-width: 1024px) {
  .privacy-page__inner { max-width: 600px; padding: 100px 20px; }
  .privacy-header { padding-bottom: 50px; }
  .privacy-content { font-size: 14px; }
}

@media (max-width: 767px) {
  .privacy-content { font-size: 13px; overflow-wrap: anywhere; }
}

/* OWNER — preserved Elementor document 381. */
.owner-page { overflow: hidden; }
.owner-hero { display: flex; min-height: 700px; align-items: flex-end; background-position: center; background-size: cover; }
.owner-hero--rent { background-image: url("/wp-content/uploads/2025/07/owner_01-scaled.jpg"); }
.owner-hero--sell { background-image: url("/wp-content/uploads/2025/07/owner_04-scaled.jpg"); }
.owner-hero h1, .owner-hero h2 { margin: 0; padding: 0 0 50px 150px; color: #fff; font-size: 100px; font-weight: 600; line-height: normal; }
.owner-lead, .owner-sell-lead { width: 100%; max-width: 800px; margin: 0 auto; padding: 150px 0 100px; text-align: center; }
.owner-lead h2 { margin: 0; padding-bottom: 20px; font-size: 60px; font-weight: 600; line-height: 75px; }
.owner-lead p, .owner-sell-lead p { margin: 0; font-size: 16px; line-height: 24px; }
.owner-list, .owner-flow { width: 100%; max-width: 900px; margin: 0 auto; padding: 50px 0 100px; }
.owner-list > h3, .owner-flow > h3 { margin: 0; padding-bottom: 50px; font-size: 26px; font-weight: 500; }
.owner-list__item { border-top: 1px solid #252525; }
.owner-list__item:last-child { border-bottom: 1px solid #252525; }
.owner-list__item h3 { display: inline-block; margin: 5px 0 0; padding: 5px 20px; border: 1px solid #252525; border-radius: 8px; font-size: 18px; font-weight: 500; }
.owner-list__item p { margin: 0; padding: 5px 0; font-size: 16px; line-height: 22px; }
.owner-contact { width: 100%; max-width: 800px; margin: 0 auto; padding: 20px 20px 150px; text-align: center; }
.owner-contact h3 { margin: 0; padding-inline: 90px; font-size: 32px; font-weight: 500; }
.owner-contact p { margin: 0; padding: 20px 0 10px; font-size: 16px; }
.owner-contact a { display: inline-block; padding: 20px 100px; border: 1px solid #252525; border-radius: 50px; background: #252525; color: #fff; font-size: 16px; font-weight: 500; text-decoration: none; transition: color .3s ease, background-color .3s ease; }
.owner-contact a:hover, .owner-contact a:focus-visible { background: #fff; color: #252525; }
.owner-services { display: flex; width: 100%; max-width: 1260px; gap: 50px; margin: 0 auto; padding: 0 0 150px; overflow: hidden; }
.owner-services article { width: 50%; }
.owner-services figure { margin: 0; }
.owner-services img { display: block; width: 100%; height: auto; }
.owner-services h3 { margin: 0; padding: 20px 0; font-size: 24px; font-weight: 600; }
.owner-services p { margin: 0; font-size: 16px; line-height: 23px; }
.owner-services .owner-services__note { padding-top: 1em; font-size: 11px; line-height: normal; }
.owner-flow ol { margin: 0; padding: 0; list-style: none; }
.owner-flow li { border-top: 1px solid #252525; }
.owner-flow li:last-child { border-bottom: 1px solid #252525; }
.owner-flow__heading { display: flex; align-items: center; margin-top: 0; padding: 5px 20px; border-radius: 15px; background: #ededed; }
.owner-flow__heading span { padding-top: 10px; font-size: 35px; line-height: 1; }
.owner-flow__heading h3 { margin: 0; padding-left: 20px; font-size: 22px; font-weight: 500; }
.owner-flow li > p { margin: 0; padding: 10px; font-size: 16px; line-height: 22px; }
.owner-flow li > .owner-flow__note { font-size: 11px; line-height: normal; }
.owner-contact--sell { padding-bottom: 150px; }
.owner-contact--sell h3 { padding: 0 0 40px; }

@media (max-width: 1024px) {
  .owner-hero { min-height: 350px; }
  .owner-hero h1, .owner-hero h2 { padding: 0 0 25px 50px; font-size: 60px; }
  .owner-lead { max-width: 600px; padding: 75px 20px 50px; }
  .owner-sell-lead { max-width: 600px; padding: 50px 20px; }
  .owner-lead h2 { font-size: 34px; line-height: 42px; }
  .owner-lead p, .owner-sell-lead p { font-size: 14px; line-height: 20px; }
  .owner-list, .owner-flow { max-width: 600px; padding: 20px; }
  .owner-list > h3, .owner-flow > h3 { font-size: 22px; }
  .owner-list__item h3 { font-size: 18px; }
  .owner-list__item p, .owner-flow li > p { font-size: 14px; line-height: 18px; }
  .owner-contact { max-width: 600px; }
  .owner-contact h3 { font-size: 22px; }
  .owner-contact p { font-size: 14px; }
  .owner-contact a { padding: 15px 100px; }
  .owner-services { gap: 50px; padding: 20px; }
  .owner-services h3 { padding: 10px 0; font-size: 22px; }
  .owner-services p { font-size: 14px; line-height: 20px; }
  .owner-services .owner-services__note { font-size: 9px; }
  .owner-flow__heading span { font-size: 25px; }
  .owner-flow__heading h3 { font-size: 20px; }
}

@media (max-width: 767px) {
  .owner-hero { min-height: 160px; }
  .owner-hero h1, .owner-hero h2 { padding: 0 0 10px 20px; font-size: 30px; }
  .owner-lead { padding: 20px 20px 50px; }
  .owner-lead h2 { padding: 20px 0; font-size: 24px; line-height: 30px; }
  .owner-lead p, .owner-sell-lead p { font-size: 14px; line-height: normal; text-align: left; }
  .owner-list > h3, .owner-flow > h3 { font-size: 20px; text-align: center; }
  .owner-list__item h3 { display: block; margin-top: 0; padding: 10px; font-size: 16px; }
  .owner-list__item p, .owner-flow li > p { font-size: 13px; line-height: normal; }
  .owner-contact { padding: 50px 20px 100px; }
  .owner-contact h3 { padding: 0; font-size: 20px; text-align: left; }
  .owner-contact p { font-size: 14px; }
  .owner-contact a { padding: 15px 70px; }
  .owner-services { display: block; padding: 20px 20px 100px; }
  .owner-services article { width: 100%; }
  .owner-services article + article { margin-top: 50px; }
  .owner-services h3 { padding: 15px 0 10px; font-size: 20px; }
  .owner-services p { font-size: 13px; line-height: normal; }
  .owner-services .owner-services__note { font-size: 9px; }
  .owner-sell-lead { padding: 20px 20px 50px; }
  .owner-flow__heading { padding: 5px 20px; }
  .owner-flow__heading span { font-size: 20px; }
  .owner-flow__heading h3 { font-size: 16px; }
  .owner-contact--sell h3 { text-align: center; }
}
