/* Homepage reference: 731 x 2151 source, scaled to a readable desktop canvas. */
@font-face { font-family: 'CJ Caveat'; src: url('../fonts/caveat-variable.ttf') format('truetype'); font-style: normal; font-weight: 400 700; font-display: swap; }
body.home { --cj-display: Arial, Helvetica, sans-serif; --cj-sans: Arial, Helvetica, sans-serif; --home-gold: #a16b27; --home-ink: #272f2d; --home-muted: #6a6c68; background: #fff; }
body.home .cj-new-home { color: var(--home-ink); background: #fff; font-family: var(--cj-sans); }
body.home .cj-new-home * { letter-spacing: 0; box-sizing: border-box; }
body.home .cj-new-home__wrap { width: min(1280px, calc(100% - 80px)); margin-inline: auto; }
body.home .cj-new-section { padding: 22px 0; background: #fff; color: var(--home-ink); }
body.home .cj-new-section:nth-of-type(even) { background-color: #faf9f6; }
body.home .cj-new-home__head { display: block; position: relative; margin: 0 0 14px; }
body.home .cj-section-link { color: var(--home-gold); text-decoration: none; font: 600 13px/1.4 var(--cj-sans); }
body.home .cj-new-product-strips .cj-section-link,body.home .cj-new-links .cj-section-link,body.home .cj-new-cases .cj-section-link { position: absolute; top: 8px; right: 0; }
body.home .cj-new-links .cj-new-home__head p { position: absolute; right: 155px; top: 8px; max-width: none; font-size: 12px; }
body.home .cj-new-home__head h2,body.home .cj-new-company h2,body.home .cj-new-feedback h2 { max-width: none; margin: 0 0 8px; font: 600 34px/1.08 var(--cj-sans); color: var(--home-ink); }
body.home .cj-new-home__head p { max-width: 30ch; margin: 0; font: 400 15px/1.35 var(--cj-sans); color: var(--home-muted); }
body.home .cj-new-home a:focus-visible,body.home .cj-new-home button:focus-visible { outline: 3px solid #8f5d20; outline-offset: 4px; }
body.home .cj-global-header { position: absolute; inset: 0 0 auto; background: transparent; border: 0; color: #242c29; backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none; }
body.home .cj-global-header__inner { width: min(1140px,calc(100% - 100px)); height: 64px; gap: 28px; }
body.home .cj-global-brand { font: 600 22px/1 var(--cj-sans); }
body.home .cj-global-brand .cj-reference-seal { display: grid; place-items: center; width: 44px; height: 44px; flex: 0 0 44px; border: 0; border-radius: 50%; background: transparent; }
body.home .cj-reference-seal img { display: block; width: 100%; height: 100%; object-fit: contain; filter: none; }
body.home .cj-global-brand small { font-size: 8px; margin-top: 6px; }
body.home .cj-language-menu { position: relative; padding: 0; border: 0; color: var(--home-ink); }
body.home .cj-global-header__actions > .cj-language-menu { display: block; padding: 0; border: 0; }
body.home .cj-language-menu summary { display: flex; align-items: center; gap: 7px; min-height: 44px; cursor: pointer; list-style: none; font: 600 13px/1 var(--cj-sans); }
body.home .cj-language-menu summary::-webkit-details-marker { display: none; }
body.home .cj-language-menu > div { position: absolute; top: 100%; right: 0; z-index: 40; min-width: 110px; display: grid; padding: 6px; border: 1px solid #d7d9d4; background: #fff; box-shadow: 0 8px 18px #0002; }
body.home .cj-language-menu a { padding: 10px 12px; color: var(--home-ink); text-decoration: none; }
body.home .cj-language-menu a:hover,body.home .cj-language-menu a[aria-current] { background: #f4eee4; }
body.home .cj-global-nav { position: static; transform: none; margin-left: auto; gap: 28px; }
body.home .cj-global-nav > a,body.home .cj-nav-products > a { font-size: 14px; }
@media (min-width: 861px) { body.home .cj-global-header__actions > .cj-button { display: inline-flex; } }
@media (max-width: 1100px) {
 body.home .cj-global-nav,body.home .cj-global-header__actions > .cj-button { display: none; }
 body.home .cj-global-header__actions > .cj-menu-toggle { display: block; min-width: 44px; min-height: 44px; }
 body.home .cj-mobile-nav:not([hidden]) { display: block; background: #fff; color: #272f2d; }
}
body.home .cj-global-header .cj-button--primary { background: #272f2d; color: #fff; border-radius: 3px; font-size: 13px; padding: 13px 22px; }
body.home .cj-global-header .cj-button--primary { border-radius: 3px !important; }
body.home .cj-global-header .cj-button--primary,body.home .cj-new-hero__content a,body.home .cj-new-company__copy > a,body.home .cj-new-home-inquiry > button { align-items: center; justify-content: center; gap: 14px; }
body.home .cj-new-hero__content a,body.home .cj-new-company__copy > a,body.home .cj-new-home-inquiry > button { display: inline-flex; }
body.home .cj-global-header .cj-button--primary::after,body.home .cj-new-hero__content a::after,body.home .cj-new-company__copy > a::after,body.home .cj-new-home-inquiry > button::after { content: ''; flex: 0 0 18px; width: 18px; height: 18px; background: currentColor; mask: url('../icons/lucide/arrow-right.svg') center / contain no-repeat; -webkit-mask: url('../icons/lucide/arrow-right.svg') center / contain no-repeat; }
body.home .cj-new-hero,body.home .cj-new-hero__slides,body.home .cj-new-hero__slide { min-height: 580px; }
body.home .cj-new-hero__content { width: min(1140px,calc(100% - 100px)); padding: 142px 0 60px; align-self: center; }
body.home .cj-new-hero__content h1 { max-width: 12ch; margin: 0 0 12px; font: 700 76px/.98 var(--cj-sans); color: #fff; }
body.home .cj-new-hero__content > p { margin: 0 0 12px; color: #fff; font-size: 12px; }
body.home .cj-new-hero__content > div { max-width: 36ch; font: 400 18px/1.35 var(--cj-sans); }
body.home .cj-new-hero__content a,body.home .cj-new-company a,body.home .cj-new-feedback button { margin-top: 18px; padding: 12px 24px; border: 0; border-radius: 2px; background: var(--home-gold); color: #fff; font-size: 15px; font-weight: 600; }
body.home .cj-new-hero__slide > img,body.home .cj-new-hero__slide > video { animation: none; object-position: center; }
body.home .cj-new-hero__shade { background: linear-gradient(90deg,rgba(14,31,25,.36),transparent 65%); }
body.home .cj-new-hero__controls { inset: auto max(40px,calc((100% - 1280px)/2)) 18px; justify-content: space-between; }
body.home .cj-new-hero__controls > button { border-radius: 50%; width: 44px; height: 44px; padding: 0; font-size: 24px; }
body.home .cj-new-hero__controls > [data-home-next] { display: grid; place-items: center; width: 56px; height: 56px; border: 2px solid #fff; border-radius: 50% !important; background: transparent; color: #fff; font-size: 0; }
body.home .cj-new-hero__controls > [data-home-next]::after { content: ''; width: 28px; height: 28px; background: currentColor; mask: url('../icons/lucide/arrow-right.svg') center / contain no-repeat; -webkit-mask: url('../icons/lucide/arrow-right.svg') center / contain no-repeat; }
body.home .cj-new-hero__controls > div { margin-right: auto; margin-left: 20px; gap: 0; }
body.home .cj-new-hero__controls > div button { width: 76px; height: 4px; border-radius: 0; }
body.home .cj-new-hero__controls > .cj-hero-previous { display: none; }
body.home .cj-hero-count { font: 600 12px/1 var(--cj-sans); color: #fff; white-space: nowrap; }
body.home .cj-new-hero__controls > div { margin-left: 12px; }
body.home .cj-hero-caption { position: absolute; right: max(80px,calc((100% - 1200px)/2)); bottom: 112px; z-index: 2; max-width: 18ch; color: #fff; font: 400 17px/1.35 var(--cj-sans); }
body.home .cj-new-standards > .cj-new-home__wrap,body.home .cj-new-advantages > .cj-new-home__wrap { display: grid; grid-template-columns: 29% minmax(0,1fr); gap: 28px; }
body.home .cj-new-standards,body.home .cj-new-advantages { padding: 30px 0; background-image: url('../images/reference-ink-20260909.webp'); background-repeat: no-repeat; background-position: left bottom; background-size: 29% auto; }
body.home .cj-new-standards,body.home .cj-new-advantages,body.home .cj-new-feedback--inquiry { background-blend-mode: multiply; }
body.home .cj-new-standards__grid,body.home .cj-new-advantages__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: repeat(3,auto); grid-auto-flow: column; border: 0; gap: 0 24px; }
body.home .cj-new-standards__grid article,body.home .cj-new-advantages__grid article { display: grid; grid-template-columns: 78px minmax(0,1fr); grid-template-rows: auto 1fr; position: relative; min-height: 94px; padding: 14px 0; border: 0; border-bottom: 1px solid #ece9e3; }
body.home .cj-new-standards__grid article:nth-child(3n),body.home .cj-new-advantages__grid article:nth-child(3n) { border-bottom: 0; }
body.home .cj-new-standards__grid .dashicons,body.home .cj-new-advantages__grid .dashicons { grid-column: 1; grid-row: 1 / 3; align-self: start; margin: 0 0 0 30px; width: 36px; height: 40px; font-size: 36px; color: var(--home-gold); }
body.home .cj-new-standards__grid b { position: absolute; top: 16px; left: 0; right: auto; color: var(--home-gold); font-size: 18px; }
body.home .cj-new-standards__grid h3,body.home .cj-new-advantages__grid h3 { grid-column: 2; margin: 0 0 4px; font: 600 15px/1.2 var(--cj-sans); }
body.home .cj-new-standards__grid p,body.home .cj-new-advantages__grid p { grid-column: 2; max-width: 30ch; margin: 0; color: var(--home-muted); font: 400 14px/1.35 var(--cj-sans); }
body.home .cj-new-standards__grid article { padding-block: 8px; }
body.home .cj-new-standards__grid .dashicons,body.home .cj-new-advantages__grid .dashicons { border: 0; background: none; border-radius: 0; box-shadow: none; }
body.home :is(.cj-new-standards__grid,.cj-new-advantages__grid) .dashicons:is(.dashicons-admin-users,.dashicons-format-chat,.dashicons-calendar-alt,.dashicons-tag,.dashicons-shield-alt,.dashicons-heart,.dashicons-car,.dashicons-businessperson,.dashicons-tickets-alt,.dashicons-admin-home,.dashicons-randomize,.dashicons-train,.dashicons-camera)::before { content: ''; display: block; width: 100%; height: 100%; background: currentColor; mask: var(--ref-icon) center / contain no-repeat; -webkit-mask: var(--ref-icon) center / contain no-repeat; }
body.home .dashicons-admin-users { --ref-icon: url('../icons/lucide/user-round-check.svg'); }
body.home .dashicons-format-chat { --ref-icon: url('../icons/lucide/users-round.svg'); }
body.home .dashicons-calendar-alt { --ref-icon: url('../icons/lucide/map.svg'); }
body.home .dashicons-tag { --ref-icon: url('../icons/lucide/tag.svg'); }
body.home .dashicons-shield-alt { --ref-icon: url('../icons/lucide/landmark.svg'); }
body.home .dashicons-heart { --ref-icon: url('../icons/lucide/shopping-bag.svg'); }
body.home .dashicons-car { --ref-icon: url('../icons/lucide/car-front.svg'); }
body.home .dashicons-businessperson { --ref-icon: url('../icons/lucide/user-round.svg'); }
body.home .dashicons-tickets-alt { --ref-icon: url('../icons/lucide/ticket.svg'); }
body.home .dashicons-admin-home { --ref-icon: url('../icons/lucide/bed-double.svg'); }
body.home .dashicons-randomize,body.home .dashicons-train { --ref-icon: url('../icons/lucide/train-front.svg'); }
body.home .dashicons-camera { --ref-icon: url('../icons/lucide/camera.svg'); }
body.home .cj-new-product-strips > .cj-new-home__wrap > div:last-child { display: grid; grid-template-columns: 1.65fr .7fr .8fr; gap: 3px; align-items: end; }
body.home .cj-new-product-strips a,body.home .cj-new-product-strips a:nth-child(n) { position: relative; display: block; min-height: 270px; height: 270px; margin: 0; border: 0; overflow: hidden; background: #25332c; }
body.home .cj-new-product-strips a:first-child { height: 230px; min-height: 230px; }
body.home .cj-new-product-strips img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
body.home .cj-new-product-strips picture { position: absolute; inset: 0; width: 100%; height: 100%; }
body.home .cj-new-product-strips a:nth-child(n)::after { background: linear-gradient(0deg,rgba(0,0,0,.72),transparent 80%); }
body.home .cj-new-product-strips span { position: absolute; inset: auto 0 0; min-height: 0; max-width: none; padding: 20px 26px; z-index: 1; }
body.home .cj-new-product-strips span { text-align: left; justify-content: start; }
body.home .cj-new-product-strips i { width: fit-content; }
body.home .cj-new-product-strips strong { display: block; margin: 7px 0; font: 600 28px/1.15 var(--cj-sans); color: #fff; }
body.home .cj-new-product-strips em { display: block; max-width: 34ch; font: 400 16px/1.3 var(--cj-sans); color: #fff; }
body.home .cj-new-product-strips small { color: #fff; font-size: 10px; }
body.home .cj-new-product-strips i { position: static; transform: none; display: inline-flex; width: fit-content; height: auto; margin-top: 12px; padding: 7px 22px; border: 0; border-radius: 2px; background: var(--home-gold); font: 600 14px/1.2 var(--cj-sans); }
body.home .cj-new-product-strips i::after { content: none; }
body.home .cj-new-product-strips a:not(:first-child) small,body.home .cj-new-product-strips a:not(:first-child) em { display: none; }
body.home .cj-new-product-strips a:not(:first-child) strong { font-size: 21px; }
body.home .cj-new-product-strips a:not(:first-child) i { background: transparent; padding: 0; margin-top: 4px; }
body.home .cj-new-product-strips a:not(:first-child) > span { padding-right: 76px; }
body.home .cj-new-product-strips a:not(:first-child) i { position: absolute; top: auto; right: 16px; bottom: 20px; transform: none; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid #fff; border-radius: 50%; margin: 0; font-size: 0; }
body.home .cj-new-product-strips a:not(:first-child) i::after { content: ''; width: 24px; height: 24px; background: #fff; mask: url('../icons/lucide/arrow-right.svg') center / contain no-repeat; -webkit-mask: url('../icons/lucide/arrow-right.svg') center / contain no-repeat; }
body.home .cj-new-product-strips .cj-new-home__head > .cj-section-link { display: inline; position: absolute; inset: 8px 0 auto auto; width: auto; height: auto; min-height: 0; padding: 0; margin: 0; border: 0; background: transparent; color: var(--home-gold); font-size: 13px; overflow: visible; }
body.home .cj-new-product-strips .cj-new-home__head > .cj-section-link::after { display: none; }
body.home .cj-new-product-strips .cj-new-home__head > .cj-section-link > span { display: inline; position: static; min-height: 0; padding: 0; margin: 0; color: inherit; }
body.home .cj-new-links__grid,body.home .cj-new-cases__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px 24px; }
body.home .cj-new-links__grid a,body.home .cj-new-cases__grid a { display: flex; flex-direction: column; position: relative; width: 100%; min-width: 0; min-height: 0; aspect-ratio: auto; border: 0; border-radius: 0; background: transparent; color: var(--home-ink); overflow: visible; text-decoration: none; }
body.home .cj-new-links__grid a::after,body.home .cj-new-cases__grid a::after { display: none; }
body.home .cj-new-links__grid img,body.home .cj-new-cases__grid img { display: block; position: static; width: 100%; height: auto; aspect-ratio: 2.3; object-fit: cover; border-radius: 2px; }
body.home .cj-new-links__grid picture,body.home .cj-new-cases__grid picture { display: block; position: static; width: 100%; height: auto; aspect-ratio: 2.3; }
body.home .cj-new-links__grid span,body.home .cj-new-cases__grid span { display: block; position: static; padding: 6px 0 0; margin: 0; background: transparent; color: var(--home-ink); }
body.home .cj-new-links__grid small,body.home .cj-new-links__grid i,body.home .cj-new-cases__grid small { display: none; }
body.home .cj-journey-media { position: relative; width: 100%; }
body.home .cj-new-links__grid .cj-journey-media i { position: absolute; inset: auto auto 14px 16px; display: inline-flex; align-items: center; gap: 10px; margin: 0; padding: 7px 12px; border: 1px solid #ffffff99; border-radius: 2px; background: #272f2d; color: #fff; font: 600 14px/1.3 var(--cj-sans); opacity: 0; transition: opacity 150ms ease; pointer-events: none; }
body.home .cj-journey-media i::after { content: ''; width: 16px; height: 16px; background: currentColor; mask: url('../icons/lucide/arrow-right.svg') center / contain no-repeat; -webkit-mask: url('../icons/lucide/arrow-right.svg') center / contain no-repeat; }
body.home .cj-new-links__grid a:hover .cj-journey-media i,body.home .cj-new-links__grid a:focus-visible .cj-journey-media i { opacity: 1; }
body.home:lang(en) .cj-new-advantages .cj-new-home__head h2 { max-width: 12ch; }
body.home .cj-new-links__grid h3,body.home .cj-new-cases__grid h3 { min-height: 0; margin: 0 0 4px; font: 600 21px/1.12 var(--cj-sans); color: var(--home-ink); }
body.home .cj-new-links__grid p,body.home .cj-new-cases__grid p { margin: 0 0 5px; color: var(--home-muted); font: 400 15px/1.3 var(--cj-sans); }
body.home .cj-new-links__grid p { min-height: 0; }
body.home .cj-new-links__grid em,body.home .cj-new-cases__grid em { display: block; margin: 0; font: 600 14px/1.3 var(--cj-sans); color: var(--home-gold); }
body.home .cj-new-cases__grid ul { display: flex; flex-wrap: wrap; gap: 8px; min-height: 0; margin: 0 0 4px; padding: 0; color: var(--home-muted); font: 400 12px/1.2 var(--cj-sans); list-style: none; }
body.home .cj-new-cases__grid ul li { color: var(--home-muted); font: inherit; }
body.home .cj-new-cases .cj-new-cases__grid h3,body.home .cj-new-cases .cj-new-cases__grid ul { min-height: 0; }
body.home .cj-new-cases__grid a { padding-bottom: 0; }
body.home .cj-new-cases__grid p { padding-bottom: 0; }
body.home .cj-new-cases__grid img,body.home .cj-new-links__grid img { margin: 0; }
body.home .cj-new-cases__grid a:hover h3,body.home .cj-new-cases__grid a:focus-visible h3 { color: #986223; }
body.home .cj-new-steps > .cj-new-home__wrap { display: grid; grid-template-columns: 21% minmax(0,1fr); gap: 20px; }
body.home .cj-new-steps__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; }
body.home .cj-new-steps__grid article { padding: 0; text-align: center; }
body.home .cj-new-steps__grid .dashicons { display: none; }
body.home .cj-new-steps__grid > article > span { display: grid; place-items: center; position: relative; z-index: 1; width: 42px; height: 42px; margin: 0 auto 18px; border: 1px solid #adb1ae; border-radius: 50%; background: #fff; color: var(--home-ink); font-size: 16px; }
body.home .cj-new-steps__grid > article:first-child > span { border-color: var(--home-gold); background: var(--home-gold); color: #fff; }
body.home .cj-new-steps__grid article:not(:last-child)::after { top: 21px; left: 50%; right: auto; width: calc(100% + 20px); border-color: #dec9ae; }
body.home .cj-new-steps__grid h3 { margin: 0 0 8px; font: 600 14px/1.3 var(--cj-sans); }
body.home .cj-new-steps__grid p { margin: 0; color: var(--home-muted); font: 400 14px/1.3 var(--cj-sans); }
body.home .cj-new-company > .cj-new-home__wrap { display: grid; grid-template-columns: 41% 1fr; gap: 28px; align-items: center; }
body.home .cj-new-company { padding-block: 6px; }
body.home .cj-new-company__copy > p { display: none; }
body.home .cj-new-company__intro { max-width: 36ch; font: 400 17px/1.35 var(--cj-sans); color: var(--home-muted); }
body.home .cj-new-company ul { margin: 20px 0 0; gap: 10px; }
body.home .cj-new-company li { color: var(--home-muted); font-size: 14px; line-height: 1.4; padding-left: 26px; }
body.home .cj-new-company li::before { width: 16px; height: 16px; top: 1px; background: var(--home-gold); }
body.home .cj-new-company li::after { content: ''; position: absolute; left: 2px; top: 3px; width: 12px; height: 12px; background: #fff; mask: url('../icons/lucide/check.svg') center / contain no-repeat; -webkit-mask: url('../icons/lucide/check.svg') center / contain no-repeat; }
body.home .cj-new-company img { width: 100%; height: auto; aspect-ratio: 2.05; object-fit: cover; }
body.home .cj-new-company picture { display: block; width: 100%; height: auto; aspect-ratio: 2.05; }
body.home .cj-new-company__media { position: relative; }
body.home .cj-company-caption { position: absolute; right: 18px; bottom: 24px; max-width: 10ch; margin: 0; color: #fff; font: italic 24px/1.2 Georgia, serif; text-transform: none; letter-spacing: 0; text-shadow: 0 2px 4px #000; white-space: pre-line; transform: rotate(-7deg); }
body.home:lang(en) .cj-company-caption { font-family: 'CJ Caveat', cursive; font-style: normal; font-weight: 600; font-size: 32px; line-height: 1.05; max-width: 11ch; }
@media (max-width: 768px) { body.home:lang(en) .cj-company-caption { font-size: 26px; right: 14px; bottom: 18px; } }
body.home .cj-new-advantages__grid article { grid-template-columns: 70px minmax(0,1fr); }
body.home .cj-new-advantages__grid .dashicons { margin-left: 10px; color: #303734; }
body.home .cj-new-advantages__grid .dashicons { padding: 0; width: 42px; height: 42px; }
body.home .cj-new-guides > .cj-new-home__wrap { display: grid; grid-template-columns: 17% minmax(0,1fr); gap: 28px; }
body.home .cj-new-guides__grid { display: grid; grid-template-columns: 1.4fr 1fr; grid-template-rows: repeat(2,108px); gap: 12px 16px; }
body.home .cj-new-guides__grid a.is-featured { grid-row: 1 / 3; }
body.home .cj-new-guides__grid span { inset: auto 18px 12px; gap: 4px; }
body.home .cj-new-guides__grid h3 { margin: 0; font: 600 23px/1.15 var(--cj-sans); }
body.home .cj-new-guides__grid p { margin: 0; font: 400 14px/1.3 var(--cj-sans); }
body.home .cj-new-guides__grid em { font-size: 13px; }
body.home .cj-new-guides__grid small { color: #c98b42; font-size: 10px; }
body.home .cj-new-guides__grid a:not(.is-featured) { display: grid; grid-template-columns: 40% minmax(0,1fr); background: #fff; color: var(--home-ink); }
body.home .cj-new-guides__grid a:not(.is-featured) img { width: 100%; height: 100%; margin: 0; }
body.home .cj-new-guides__grid picture { display: block; width: 100%; height: 100%; min-width: 0; }
body.home .cj-new-guides__grid a:not(.is-featured)::after { display: none; }
body.home .cj-new-guides__grid a:not(.is-featured) span { position: static; padding: 8px 12px; }
body.home .cj-new-guides__grid a:not(.is-featured) h3 { font-size: 16px; }
body.home .cj-new-guides__grid a:not(.is-featured) p { display: none; }
body.home .cj-new-guides__grid a:not(.is-featured) em { color: var(--home-gold); }
body.home .cj-new-feedback { display: block; padding: 20px max(40px,calc((100% - 1280px)/2)); background: #faf9f6; }
body.home .cj-new-feedback__suggestion,body.home .cj-new-feedback__contact { position: relative; display: grid; grid-template-columns: 30% minmax(0,1fr); column-gap: 28px; padding: 0; min-height: 0; background: transparent; color: var(--home-ink); }
body.home .cj-new-feedback p { grid-column: 1; margin: 0 0 6px; font-size: 11px; color: var(--home-gold); }
body.home .cj-new-feedback h2 { grid-column: 1; margin-bottom: 0; font-size: 28px; }
body.home .cj-new-feedback form { grid-column: 2; grid-row: 1 / 3; }
body.home .cj-new-feedback__suggestion form { display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: center; }
body.home .cj-new-feedback__suggestion textarea { min-height: 44px; height: 44px; padding: 12px 16px; border: 1px solid #e2e3e0; border-radius: 2px; background: #fff; color: var(--home-ink); font: 400 14px/1.3 var(--cj-sans); }
body.home .cj-new-feedback__suggestion button { margin: 0; min-height: 44px; }
body.home .cj-new-feedback--inquiry { padding-top: 28px; padding-bottom: 24px; background: #fff var(--cj-inquiry-art,url('../images/reference-pagoda-20260909.webp')) no-repeat left bottom / 30% auto; }
body.home .cj-new-feedback__contact { align-items: start; }
body.home .cj-new-feedback__contact > p,body.home .cj-new-feedback__suggestion > p { align-self: start; }
body.home .cj-new-feedback__contact h2 { position: absolute; top: 26px; left: 0; width: 28%; }
body.home .cj-new-feedback__suggestion h2 { position: absolute; top: 23px; left: 0; width: 28%; }
body.home .cj-new-feedback__contact h2 { max-width: 16ch; font-size: 34px; }
body.home .cj-inquiry-intro { grid-column: 1; min-width: 0; }
body.home .cj-inquiry-intro h2 { position: static; width: auto; margin: 12px 0 10px; }
body.home .cj-inquiry-intro .cj-inquiry-copy { max-width: 28ch; font: 400 15px/1.4 var(--cj-sans); color: var(--home-muted); text-transform: none; }
body.home .cj-new-home-inquiry { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 24px; margin: 0; }
body.home .cj-new-home-inquiry label { display: grid; gap: 4px; margin: 0; color: var(--home-muted); font: 400 12px/1.3 var(--cj-sans); }
body.home .cj-new-home-inquiry input,body.home .cj-new-home-inquiry select,body.home .cj-new-home-inquiry textarea { width: 100%; min-width: 0; min-height: 34px; height: 34px; padding: 6px 10px; border: 1px solid #e2e3e0; background: #fff; color: var(--home-ink); font: 400 14px/1.3 var(--cj-sans); border-radius: 2px; }
body.home .cj-new-home-inquiry textarea { height: 68px; resize: vertical; }
body.home .cj-new-home-inquiry__wide { grid-column: 1 / -1; }
body.home .cj-new-home-inquiry button { grid-column: 1 / -1; justify-self: center; margin: 0; min-height: 42px; }
body.home .cj-footer-expanded { padding-top: 24px; padding-bottom: 16px; background: #252c29; }
body.home .cj-footer-expanded .cj-global-footer__grid { grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 32px; }
body.home .cj-footer-expanded nav { gap: 4px; }
body.home .cj-footer-expanded nav a,body.home .cj-footer-expanded p,body.home .cj-footer-expanded__contacts { font-size: 12px; line-height: 1.4; }
body.home .cj-footer-expanded strong,body.home .cj-footer-expanded h2 { font-size: 14px; margin-bottom: 8px; }
body.home .cj-footer-expanded__service { margin-top: 18px; padding-top: 14px; }
body.home .cj-footer-services { margin-top: 18px; padding-top: 16px; gap: 20px; }
body.home .cj-footer-services img { width: 24px; height: 24px; flex-basis: 24px; }
body.home .cj-footer-services a { font-size: 12px; gap: 8px; }
body.home .cj-footer-icon,body.home .cj-footer-icon img { width: 28px; height: 28px; flex-basis: 28px; }
body.home .cj-footer-icon--member { background-size: 91px 28px; }
body.home .cj-footer-icon--visa img,body.home .cj-footer-icon--mastercard img,body.home .cj-footer-icon--paypal img { width: 22px; height: 22px; }
body.home .cj-footer-icon-groups { margin-top: 16px; }
body.home .cj-footer-expanded .cj-global-footer__bar { margin-top: 16px; padding-top: 12px; font-size: 11px; }
@media (min-width: 769px) {
 body.home .cj-footer-expanded { display: grid; grid-template-columns: 1.4fr .9fr 1.2fr 1fr .9fr; gap: 12px 24px; padding-inline: max(40px,calc((100% - 1280px)/2)); }
 body.home .cj-footer-expanded .cj-global-footer__grid,body.home .cj-footer-expanded__service { display: contents; }
 body.home .cj-footer-expanded__brand { grid-column: 1; grid-row: 1; }
 body.home .cj-footer-expanded .cj-global-footer__grid > nav:nth-child(2) { grid-column: 2; grid-row: 1; }
 body.home .cj-footer-expanded .cj-global-footer__grid > nav:nth-child(3) { grid-column: 3; grid-row: 1; }
 body.home .cj-footer-expanded .cj-global-footer__grid > nav:nth-child(4) { grid-column: 4; grid-row: 1; }
 body.home .cj-footer-expanded .cj-global-footer__grid > nav { gap: 4px; align-content: start; }
 body.home .cj-footer-expanded__destinations { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 3px 12px; }
 body.home .cj-footer-expanded__destinations > a:last-child { grid-column: 1 / -1; }
 body.home .cj-footer-services { grid-column: 5; grid-row: 1; display: flex; flex-direction: column; gap: 5px; margin: 0; padding: 0 0 0 16px; border-top: 0; border-left: 1px solid #4c5650; }
 body.home .cj-footer-services img { display: none; }
 body.home .cj-footer-services span { font-weight: 400; }
 body.home .cj-footer-expanded__service > section:first-child { grid-column: 1; grid-row: 2; }
 body.home .cj-footer-expanded__service > section:last-child:not(:first-child) { grid-column: 2 / 4; grid-row: 2; }
 body.home .cj-footer-expanded__service p { margin-top: 6px; font-size: 11px; }
 body.home .cj-footer-icon-groups { grid-column: 4 / 6; grid-row: 2; margin: 0; }
 body.home .cj-footer-expanded .cj-global-footer__bar { grid-column: 1 / -1; grid-row: 3; margin: 0; padding-top: 10px; }
}
@media (min-width: 1101px) {
 body.home .cj-new-hero,body.home .cj-new-hero__slides,body.home .cj-new-hero__slide { min-height: 602px; }
 body.home .cj-new-company img,body.home .cj-new-company picture { aspect-ratio: 2.18; }
}
@media (min-width: 769px) and (max-width: 1100px) {
 body.home .cj-new-home__wrap { width: calc(100% - 64px); }
 body.home .cj-new-hero__content h1 { font-size: 60px; }
 body.home .cj-new-home__head h2,body.home .cj-new-company h2 { font-size: 28px; }
 body.home .cj-new-standards__grid article { grid-template-columns: 64px minmax(0,1fr); }
 body.home .cj-new-standards__grid .dashicons { margin-left: 24px; font-size: 28px; width: 28px; }
 body.home .cj-new-product-strips strong { font-size: 24px; }
 body.home .cj-new-product-strips a:not(:first-child) strong { font-size: 18px; }
 body.home .cj-new-product-strips span { padding: 16px; }
 body.home .cj-new-links__grid h3,body.home .cj-new-cases__grid h3 { font-size: 18px; }
 body.home .cj-new-guides > .cj-new-home__wrap { grid-template-columns: 20% minmax(0,1fr); gap: 20px; }
}
@media (max-width: 768px) {
 body.home .cj-hero-caption { display: none; }
 body.home .cj-new-product-strips .cj-section-link,body.home .cj-new-links .cj-section-link,body.home .cj-new-cases .cj-section-link,body.home .cj-new-links .cj-new-home__head p { position: static; display: block; margin-top: 8px; }
 body.home .cj-new-product-strips .cj-new-home__head > .cj-section-link { position: static; display: block; margin-top: 8px; }
 body.home .cj-new-home__wrap { width: calc(100% - 40px); }
 body.home .cj-new-section { padding: 28px 0; }
 body.home .cj-global-header { position: relative; background: #fff; }
 body.home .cj-global-header__inner { width: calc(100% - 32px); height: 64px; gap: 12px; }
 body.home .cj-new-hero,body.home .cj-new-hero__slides,body.home .cj-new-hero__slide { min-height: 500px; }
 body.home .cj-new-hero__content { width: calc(100% - 40px); padding: 80px 0 92px; }
 body.home .cj-new-hero__content h1 { font-size: 48px; max-width: 12ch; }
 body.home .cj-new-hero__content > div { font-size: 16px; max-width: 30ch; }
 body.home .cj-new-home__head h2,body.home .cj-new-company h2 { font-size: 28px; }
 body.home .cj-new-standards > .cj-new-home__wrap,body.home .cj-new-advantages > .cj-new-home__wrap,body.home .cj-new-steps > .cj-new-home__wrap,body.home .cj-new-company > .cj-new-home__wrap,body.home .cj-new-guides > .cj-new-home__wrap { grid-template-columns: minmax(0,1fr); gap: 20px; }
 body.home .cj-new-standards,body.home .cj-new-advantages { background-image: none; }
 body.home .cj-new-standards__grid,body.home .cj-new-advantages__grid { grid-template-columns: 1fr; grid-template-rows: none; grid-auto-flow: row; }
 body.home .cj-new-product-strips > .cj-new-home__wrap > div:last-child { grid-template-columns: 1fr 1fr; gap: 8px; }
 body.home .cj-new-product-strips a:first-child { grid-column: 1 / -1; min-height: 240px; height: 240px; }
 body.home .cj-new-product-strips a:nth-child(n+2) { height: 230px; min-height: 230px; }
 body.home .cj-new-product-strips span { padding: 16px; }
 body.home .cj-new-product-strips a:not(:first-child) strong { font-size: 19px; }
 body.home .cj-new-links__grid,body.home .cj-new-cases__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 16px; }
 body.home .cj-new-links__grid img,body.home .cj-new-cases__grid img { aspect-ratio: 1.6; }
 body.home .cj-new-links__grid h3,body.home .cj-new-cases__grid h3 { font-size: 18px; }
 body.home .cj-new-steps__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
 body.home .cj-new-steps__grid article:nth-child(2)::after { display: none; }
 body.home .cj-new-feedback { padding: 24px 20px; }
 body.home .cj-new-feedback__suggestion,body.home .cj-new-feedback__contact { grid-template-columns: minmax(0,1fr); }
 body.home .cj-new-feedback h2 { margin-bottom: 20px; }
 body.home .cj-new-feedback__contact h2,body.home .cj-new-feedback__suggestion h2 { position: static; width: auto; }
 body.home .cj-new-feedback form { grid-column: 1; grid-row: auto; }
 body.home .cj-new-feedback__suggestion form { grid-template-columns: minmax(0,1fr); gap: 10px; }
 body.home .cj-new-feedback__suggestion button { justify-self: start; }
 body.home .cj-new-feedback--inquiry { background-image: none; }
 body.home .cj-new-home-inquiry { gap: 14px; }
 body.home .cj-new-home-inquiry input,body.home .cj-new-home-inquiry select { height: 44px; }
 body.home .cj-new-guides__grid { grid-template-columns: 1fr; grid-template-rows: 230px 100px 100px; }
 body.home .cj-new-guides__grid a.is-featured { grid-row: 1; }
 body.home .cj-footer-expanded .cj-global-footer__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 420px) {
 body.home .cj-new-links__grid,body.home .cj-new-cases__grid,body.home .cj-new-home-inquiry { grid-template-columns: minmax(0,1fr); }
 body.home .cj-new-hero__content h1 { font-size: 42px; }
 body.home .cj-new-hero__controls { inset-inline: 20px; }
 body.home .cj-new-hero__controls > div button { width: 42px; }
}

/* Feedback is a full section; keep its controls clear of the service dock. */
body.home #feedback-contact {
 padding: 48px max(112px,calc((100% - 1280px)/2));
}
body.home #feedback-contact .cj-new-feedback__suggestion {
 display: block;
 max-width: 1280px;
 margin-inline: auto;
 padding: 0;
}
body.home #feedback-contact .cj-new-feedback__suggestion > p {
 margin: 0 0 12px;
 font-size: 14px;
 letter-spacing: 0;
}
body.home #feedback-contact h2 {
 position: static;
 width: auto;
 max-width: none;
 margin: 0 0 32px;
 font-size: 40px;
 line-height: 1.25;
 letter-spacing: 0;
}
body.home #feedback-contact form {
 display: flex;
 flex-direction: column;
 align-items: stretch;
 gap: 12px;
 margin: 0;
}
body.home #feedback-contact textarea {
 box-sizing: border-box;
 width: 100%;
 height: 180px;
 min-height: 180px;
 padding: 20px 24px;
 font-size: 17px;
 line-height: 1.65;
 resize: vertical;
}
body.home #feedback-contact textarea::placeholder { color: #686e6a; opacity: 1; }
body.home #feedback-contact button {
 align-self: flex-start;
 min-width: 160px;
 min-height: 52px;
 margin: 8px 0 0;
 padding: 14px 28px;
 font-size: 16px;
}
body.home #feedback-contact .cj-submit-status { margin: 0; }
@media (max-width: 767px) {
 body.home #feedback-contact { padding: 48px 64px 48px 24px; }
 body.home #feedback-contact h2 { margin-bottom: 24px; font-size: 30px; }
 body.home #feedback-contact textarea { height: 200px; min-height: 200px; padding: 16px; font-size: 16px; }
 body.home #feedback-contact button { min-width: 0; max-width: 100%; }
}

/* Shared rhythm for the three closing homepage sections. */
body.home .cj-new-guides,
body.home #plan-my-trip {
 padding: 48px max(112px,calc((100% - 1280px)/2));
}
body.home .cj-new-guides > .cj-new-home__wrap {
 display: block;
 width: 100%;
 max-width: 1280px;
 margin-inline: auto;
}
body.home .cj-new-guides .cj-new-home__head { display: block; margin: 0 0 28px; }
body.home .cj-new-guides .cj-new-home__head h2 { font-size: 36px; line-height: 1.25; margin: 0 0 12px; }
body.home .cj-new-guides .cj-new-home__head p { max-width: 60ch; font-size: 16px; line-height: 1.6; margin: 0; }
body.home .cj-new-guides__grid {
 grid-template-columns: 1.35fr 1fr;
 grid-template-rows: repeat(2,180px);
 gap: 20px 24px;
}
body.home .cj-new-guides__grid a { min-width: 0; }
body.home .cj-new-guides__grid a.is-featured { grid-column: 1; grid-row: 1 / 3; }
body.home .cj-new-guides__grid a.is-featured span { inset: auto 28px 28px; gap: 10px; }
body.home .cj-new-guides__grid a.is-featured h3 { font-size: 28px; line-height: 1.3; }
body.home .cj-new-guides__grid a:not(.is-featured) span { padding: 16px; gap: 12px; }
body.home .cj-new-guides__grid a:not(.is-featured) h3 { font-size: 20px; line-height: 1.4; }
body.home .cj-new-guides__grid em { font-size: 15px; }
body.home .cj-new-guides__grid small { font-size: 12px; }
body.home #plan-my-trip .cj-new-feedback__contact {
 max-width: 1280px;
 margin-inline: auto;
 grid-template-columns: minmax(0,1fr) minmax(0,2fr);
 gap: 40px;
}
body.home #plan-my-trip .cj-inquiry-intro h2 { font-size: 36px; line-height: 1.3; max-width: none; }
body.home #plan-my-trip .cj-inquiry-copy { font-size: 16px; line-height: 1.7; }
body.home #plan-my-trip form { grid-row: auto; gap: 20px 24px; }
body.home #plan-my-trip label { font-size: 14px; gap: 8px; }
body.home #plan-my-trip :is(input:not([type="hidden"]),select,textarea) { min-height: 48px; height: 48px; font-size: 16px; padding: 12px; }
body.home #plan-my-trip form textarea { height: 120px; min-height: 120px; }
body.home #plan-my-trip button { justify-self: start; min-height: 52px; margin: 0; }
@media (max-width: 1023px) {
 body.home .cj-new-guides__grid { grid-template-columns: 1fr 1fr; grid-template-rows: 300px auto; }
 body.home .cj-new-guides__grid a.is-featured { grid-column: 1 / -1; grid-row: 1; }
 body.home .cj-new-guides__grid a:not(.is-featured) { grid-template-columns: 1fr; grid-template-rows: 140px auto; }
 body.home #plan-my-trip .cj-new-feedback__contact { grid-template-columns: 1fr; gap: 28px; }
 body.home #plan-my-trip form { grid-column: 1; }
}
@media (max-width: 767px) {
 body.home .cj-new-guides,body.home #feedback-contact,body.home #plan-my-trip { padding: 36px 64px 36px 24px; }
 body.home .cj-new-guides .cj-new-home__head h2,body.home #feedback-contact h2,body.home #plan-my-trip .cj-inquiry-intro h2 { font-size: 28px; }
 body.home .cj-new-guides__grid { grid-template-columns: 1fr; grid-template-rows: 280px auto auto; gap: 20px; }
 body.home .cj-new-guides__grid a.is-featured { grid-column: 1; }
 body.home .cj-new-guides__grid a.is-featured span { inset: auto 20px 20px; }
 body.home .cj-new-guides__grid a.is-featured h3 { font-size: 24px; }
 body.home .cj-new-guides__grid a:not(.is-featured) { grid-template-columns: 38% minmax(0,1fr); grid-template-rows: auto; min-height: 140px; }
 body.home .cj-new-guides__grid a:not(.is-featured) h3 { font-size: 18px; }
 body.home .cj-new-guides__grid a:not(.is-featured) span { padding: 12px; }
 body.home #feedback-contact textarea { min-height: 160px; height: 160px; }
 body.home #plan-my-trip form { grid-template-columns: 1fr; }
}
