/* FOGOOSE B2B layout. Loaded after site.css; every rule is opt-in. */
.layout-v2 {
  --ink: #18352d;
  --green: #153f35;
  --muted: #5c6c65;
  --paper: #fff;
  --sage: #edf2ee;
  --lime: #e8efdb;
  --line: #dce4de;
  --radius: 8px;
  background: #fff;
  font-size: 16px;
  line-height: 1.7;
}
.layout-v2 .wrap { width: min(1200px, calc(100% - 72px)); }
.layout-v2 :is(main, section, article, figure, nav, div) { min-width: 0; }
.layout-v2 figure { margin: 0; }
.layout-v2 h1 { font-size: clamp(48px, 4.5vw, 58px); font-weight: 700; line-height: 1.08; letter-spacing: -1.6px; }
.layout-v2 h2 { font-size: clamp(34px, 3.1vw, 40px); font-weight: 700; line-height: 1.16; letter-spacing: -.8px; }
.layout-v2 h3 { font-size: 22px; font-weight: 700; line-height: 1.28; letter-spacing: -.3px; }
.layout-v2 h4 { font-weight: 700; letter-spacing: -.2px; }
.layout-v2 em { font-family: inherit; font-style: normal; font-weight: inherit; color: inherit; }
.layout-v2 p { overflow-wrap: break-word; }
.layout-v2 .eyebrow { font-size: 11px; line-height: 1.5; font-weight: 700; letter-spacing: 1.5px; color: #567265; margin-bottom: 15px; }
.layout-v2 .section { padding-block: 72px; }
.layout-v2 .section-head { gap: 36px; align-items: flex-end; margin-bottom: 32px; }
.layout-v2 .section-intro { font-size: 16px; line-height: 1.7; max-width: 410px; }
.layout-v2 .button { min-height: 46px; border-radius: 5px; padding: 14px 21px; gap: 20px; font-size: 14px; font-weight: 700; line-height: 1.4; text-align: center; }
.layout-v2 .button:hover { background: #0d3027; }
.layout-v2 .button.light { color: #173e32; background: #f2f6e9; border-color: #f2f6e9; }
.layout-v2 .button.light:hover { background: #e6eed6; }
.layout-v2 .button.outline { color: var(--green); background: transparent; border-color: #809e8f; }
.layout-v2 .button.outline:hover { background: #edf3ed; }
.layout-v2 .text-link { font-size: 14px; font-weight: 700; color: var(--green); line-height: 1.55; white-space: normal; border-bottom-color: #90a697; }
.layout-v2 :is(a, button, summary):focus-visible { outline: 3px solid #8dac5e; outline-offset: 4px; }
.layout-v2 :is(input, textarea, select):focus-visible { outline: 2px solid var(--green); outline-offset: 2px; }
.layout-v2 [hidden] { display: none !important; }

/* Navigation */
.layout-v2 .topbar { padding: 7px max(36px, calc((100% - 1200px) / 2)); font-size: 11px; }
.layout-v2 .site-header { background: #fff; border-bottom: 1px solid var(--line); box-shadow: 0 1px 8px #12372908; position: sticky; top: 0; z-index: 50; }
.layout-v2 .header-inner { min-height: 78px; gap: 26px; position: relative; }
.layout-v2 .wordmark { color: var(--green); font-size: 29px; letter-spacing: -.9px; flex-shrink: 0; }
.layout-v2 .main-nav { gap: 24px; font-size: 13px; font-weight: 600; align-items: center; }
.layout-v2 .main-nav a:not(.nav-project):hover,
.layout-v2 .main-nav a[aria-current="page"] { color: #397254; }
.layout-v2 .v2-nav-group { border: 0; position: relative; }
.layout-v2 .v2-nav-group summary { padding: 25px 0; min-height: 76px; gap: 7px; font-size: 13px; font-weight: 600; line-height: 1.4; }
.layout-v2 .v2-nav-group summary::after { content: ''; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); margin: -3px 2px 0 2px; }
.layout-v2 .v2-nav-group[open] summary::after { transform: rotate(225deg); margin-top: 3px; }
.layout-v2 .v2-nav-group summary span { display: none; }
.layout-v2 .v2-dropdown { position: absolute; top: calc(100% - 3px); left: -20px; width: 250px; padding: 10px; background: #fff; border: 1px solid var(--line); border-radius: 7px; box-shadow: 0 14px 36px #153f3518; z-index: 60; }
.layout-v2 .v2-dropdown a { display: block; padding: 12px; border-radius: 4px; font-size: 14px; line-height: 1.5; }
.layout-v2 .v2-dropdown a:hover { background: #f1f5f0; }
.layout-v2 .nav-project { margin-left: 0; background: var(--green); border-radius: 5px; padding: 13px 17px; color: white; }
.layout-v2 .menu-toggle { border: 1px solid var(--line); background: #fff; color: var(--green); border-radius: 5px; min-width: 68px; min-height: 44px; font-weight: 700; }

/* Hero carousel: one image and one readable copy layer per slide. */
.layout-v2 .v2-hero { position: relative; min-height: 600px; background: #153f35; color: #fff; overflow: hidden; }
.layout-v2 .v2-slide { position: relative; min-height: 600px; display: flex; align-items: center; isolation: isolate; }
.layout-v2 .v2-slide::after { content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, #0b302aed 0%, #103d32ce 30%, #143b306e 54%, #173c3014 82%); pointer-events: none; }
.layout-v2 .v2-hero-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 75% center; z-index: 0; }
.layout-v2 .v2-hero-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 75% center; z-index: 0; background: #153f35; }
.layout-v2 .v2-slide.is-active .v2-hero-media { animation: v2HeroMediaIn 1.1s ease-out both; }
@keyframes v2HeroMediaIn { from { opacity: .35; transform: scale(1.035); } to { opacity: 1; transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .layout-v2 .v2-slide.is-active .v2-hero-media { animation: none; } }
.layout-v2 .v2-hero-copy { position: relative; z-index: 2; padding-block: 65px 110px; }
.layout-v2 .v2-hero-copy .eyebrow { color: #d9e8cf; margin-bottom: 18px; font-size: 12px; letter-spacing: 1.4px; }
.layout-v2 .v2-hero-copy :is(h1, h2) { max-width: 650px; font-size: clamp(48px, 4.5vw, 58px); line-height: 1.08; letter-spacing: -1.5px; text-wrap: balance; color: #fff; }
.layout-v2 .v2-hero-copy > p:not(.eyebrow) { max-width: 540px; color: #edf3ef; font-size: 17px; line-height: 1.7; margin-top: 23px; }
.layout-v2 .v2-hero-copy .hero-actions { margin-top: 28px; flex-wrap: wrap; gap: 14px; }
.layout-v2 .v2-hero-copy .button { background: #eef4e3; border-color: #eef4e3; color: #153f35; }
.layout-v2 .v2-hero-copy .button:hover { background: #dfeccc; }
.layout-v2 .v2-hero-copy .button.outline { color: #fff; border-color: #ffffffa6; background: #103b302b; }
.layout-v2 .v2-hero-copy .button.outline:hover { background: #ffffff18; }
.layout-v2 .v2-hero-copy .text-link { color: #fff; border-color: #ffffff9c; }
.layout-v2 .v2-hero-copy > small { display: block; font-size: 11px; color: #dae8df; margin-top: 17px; max-width: 540px; }
.layout-v2 .v2-hero-controls { position: absolute; z-index: 3; bottom: 24px; left: 0; right: 0; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.layout-v2 .v2-hero-controls button { min-width: 36px; min-height: 36px; border: 1px solid #ffffff80; color: #fff; background: #103c3259; border-radius: 50%; font-size: 16px; display: inline-flex; align-items: center; justify-content: center; }
.layout-v2 .v2-hero-controls button:hover { background: #ffffff26; }
.layout-v2 .v2-hero-dots { display: flex; gap: 9px; align-items: center; padding-inline: 8px; }
.layout-v2 .v2-hero-dots .v2-dot { width: 10px; min-width: 10px; height: 10px; min-height: 10px; padding: 0; border: 1px solid #fff; background: #ffffff33; }
.layout-v2 .v2-hero-dots .v2-dot[aria-current="true"],
.layout-v2 .v2-hero-dots .v2-dot[aria-pressed="true"],
.layout-v2 .v2-hero-dots .v2-dot.active { background: #fff; }
.layout-v2 .v2-hero-controls [data-v2-pause] { border-radius: 4px; font-size: 12px; padding: 5px 12px; }
.layout-v2 .v2-hero-controls :is(.v2-hero-status, [data-v2-status]) { margin-right: auto; color: #edf3ef; font-size: 12px; }

/* Procurement facts */
.layout-v2 .v2-facts { background: #f4f6f3; padding-block: 32px 25px; border-bottom: 1px solid var(--line); }
.layout-v2 .v2-facts-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; }
.layout-v2 .v2-facts-grid > div { padding: 9px 24px; border-right: 1px solid #d5dfd7; }
.layout-v2 .v2-facts-grid > div:first-child { padding-left: 0; }
.layout-v2 .v2-facts-grid > div:last-child { border-right: 0; }
.layout-v2 .v2-facts-grid strong { display: block; font-size: clamp(26px, 2.5vw, 34px); line-height: 1.2; letter-spacing: -.7px; color: var(--green); overflow-wrap: anywhere; }
.layout-v2 .v2-facts-grid span { display: block; color: var(--muted); font-size: 13px; line-height: 1.5; margin-top: 8px; }
.layout-v2 .v2-fact-note { font-size: 11px; line-height: 1.65; color: var(--muted); margin-top: 22px; }
.layout-v2 .factory-profile .v2-facts.wrap { width: 100%; padding-inline: 22px; border-radius: 7px; }

/* Home modules */
.layout-v2 .v2-section { padding-block: 74px; }
.layout-v2 .v2-section + .v2-section { border-top: 1px solid var(--line); }
.layout-v2 .v2-section .section-head h2 { font-size: clamp(34px, 3.1vw, 40px); }
.layout-v2 .v2-solutions-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.layout-v2 .v2-solutions-grid > article { border: 1px solid #e3e9e2; border-radius: 8px; background: #f4f6f3; overflow: hidden; display: flex; flex-direction: column; }
.layout-v2 .v2-solutions-grid img { width: 100%; height: auto; aspect-ratio: 1.65; object-fit: cover; }
.layout-v2 .v2-solutions-grid article > div { padding: 27px; display: flex; flex-direction: column; flex: 1; align-items: flex-start; }
.layout-v2 .v2-solutions-grid h3 { font-size: 23px; margin-bottom: 13px; }
.layout-v2 .v2-solutions-grid p:not(.eyebrow) { font-size: 15px; color: var(--muted); }
.layout-v2 .v2-solutions-grid ul { font-size: 14px; padding-left: 19px; margin: 18px 0 22px; color: #476053; line-height: 1.8; }
.layout-v2 .v2-solutions-grid .text-link { margin-top: auto; }
.layout-v2 .v2-family-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.layout-v2 .v2-family-grid > a { border: 1px solid var(--line); border-radius: 8px; overflow: hidden; background: white; display: block; transition: box-shadow .18s, border-color .18s; }
.layout-v2 .v2-family-grid > a:hover { border-color: #9fb4a5; box-shadow: 0 8px 24px #173c300a; }
.layout-v2 .v2-family-grid img { width: 100%; height: auto; aspect-ratio: 1.5; object-fit: contain; padding: 20px; background: #f7f9f5; }
.layout-v2 .v2-family-grid a > div { padding: 21px 23px; }
.layout-v2 .v2-family-grid h3 { font-size: 21px; margin-bottom: 6px; }
.layout-v2 .v2-family-grid p { color: var(--muted); font-size: 14px; }
.layout-v2 .v2-custom-split { display: grid; grid-template-columns: 1fr 1fr; gap: 54px; align-items: center; }
.layout-v2 .v2-custom-split h2 { margin-bottom: 22px; }
.layout-v2 .v2-custom-split > div > p:not(.eyebrow) { font-size: 16px; color: var(--muted); }
.layout-v2 .v2-services-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-block: 26px; }
.layout-v2 .v2-services-grid a { padding: 15px 16px; border: 1px solid var(--line); border-radius: 5px; display: flex; justify-content: space-between; gap: 12px; background: #f4f6f3; font-size: 14px; font-weight: 700; line-height: 1.5; }
.layout-v2 .v2-services-grid a:hover { border-color: #829e8d; background: #ecf2e9; }
.layout-v2 .v2-services-grid a > span { flex: 0 0 auto; color: #648470; font-size: 12px; }
.layout-v2 .v2-services-grid a > div { flex: 1; }
.layout-v2 .v2-services-grid a strong { display: block; font-size: 14px; }
.layout-v2 .v2-services-grid a p { font-size: 12px; line-height: 1.55; font-weight: 400; color: var(--muted); margin-top: 5px; }
.layout-v2 .v2-services-grid a > b { flex: 0 0 auto; font-weight: 400; }
.layout-v2 .v2-custom-split > figure { background: #f4f6f3; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.layout-v2 .v2-custom-split > figure > img { width: 100%; height: auto; aspect-ratio: 2; object-fit: contain; }
.layout-v2 .v2-custom-split figcaption { padding: 13px 18px; font-size: 12px; line-height: 1.65; color: var(--muted); }
.layout-v2 .v2-custom-visual { display: grid; gap: 18px; }
.layout-v2 .v2-custom-visual > figure { background: #f4f6f3; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.layout-v2 .v2-custom-visual > figure > img { width: 100%; height: auto; aspect-ratio: 2; object-fit: contain; }
.layout-v2 .v2-custom-visual figcaption { padding: 13px 18px; font-size: 12px; line-height: 1.65; color: var(--muted); }
.layout-v2 .v2-factory-split { display: grid; grid-template-columns: 1.15fr 1fr; gap: 45px; align-items: center; }
.layout-v2 .v2-factory-split h2 { margin-bottom: 22px; }
.layout-v2 .v2-factory-split p:not(.eyebrow) { font-size: 16px; line-height: 1.75; color: var(--muted); }
.layout-v2 .v2-factory-split ul { color: #425d4f; font-size: 15px; padding-left: 20px; margin-block: 22px; }
.layout-v2 .v2-factory-split .film-player { border-radius: 7px; }
.layout-v2 .v2-factory-split > div:last-child > .button { margin: 24px 0 15px; }
.layout-v2 .v2-factory-split > div:last-child > .text-link { display: table; }
.layout-v2 .v2-proof-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 32px; }
.layout-v2 .v2-proof-grid figure { border: 1px solid var(--line); border-radius: 7px; overflow: hidden; background: #f4f6f3; }
.layout-v2 .v2-proof-grid img { width: 100%; height: auto; aspect-ratio: 1.6; object-fit: cover; }
.layout-v2 .v2-proof-grid figcaption { padding: 17px 20px; font-size: 14px; font-weight: 600; }
.layout-v2 .v2-advantages { border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.layout-v2 .v2-section.v2-advantages { padding: 34px; margin-block: 20px; }
.layout-v2 .v2-tablist { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); background: #f4f6f3; border-bottom: 1px solid var(--line); }
.layout-v2 .v2-tablist button { border: 0; border-right: 1px solid var(--line); padding: 20px 16px; font-size: 14px; line-height: 1.5; color: var(--green); font-weight: 700; background: transparent; }
.layout-v2 .v2-tablist button:last-child { border-right: 0; }
.layout-v2 .v2-tablist button[aria-selected="true"],
.layout-v2 .v2-tablist button[aria-pressed="true"],
.layout-v2 .v2-tablist button.active { background: var(--green); color: #fff; }
.layout-v2 .v2-tab-panel { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 36px; padding: 30px; }
.layout-v2 .v2-tab-panel img { width: 100%; height: auto; aspect-ratio: 1.45; object-fit: cover; border-radius: 5px; }
.layout-v2 .v2-tab-panel h3 { font-size: 27px; margin-bottom: 17px; }
.layout-v2 .v2-tab-panel p { font-size: 16px; color: var(--muted); }
.layout-v2 .v2-tab-panel ul { font-size: 15px; color: #486153; line-height: 1.8; padding-left: 20px; margin-block: 20px; }
.layout-v2 .v2-process-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.layout-v2 .v2-process-grid article { border-top: 3px solid #b0c3b7; padding-top: 21px; }
.layout-v2 .v2-process-grid article > :is(span, b, strong) { display: block; color: #527464; font-size: 13px; font-weight: 700; letter-spacing: 1px; margin-bottom: 19px; }
.layout-v2 .v2-process-grid h3 { font-size: 21px; margin-bottom: 13px; }
.layout-v2 .v2-process-grid p { font-size: 15px; color: var(--muted); }
.layout-v2 .v2-doc-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.layout-v2 .v2-doc-grid a { padding: 26px; border: 1px solid var(--line); border-radius: 7px; background: #f4f6f3; }
.layout-v2 .v2-doc-grid a:hover { border-color: #91a894; background: #eef3eb; }
.layout-v2 .v2-doc-grid strong { display: block; font-size: 21px; line-height: 1.3; margin-bottom: 13px; }
.layout-v2 .v2-doc-grid span { display: block; font-size: 14px; line-height: 1.75; color: var(--muted); }
.layout-v2 .v2-faq details { border-bottom: 1px solid var(--line); }
.layout-v2 .v2-faq summary { font-size: 17px; font-weight: 600; padding-block: 21px; gap: 18px; }
.layout-v2 .v2-faq summary::after { content: '+'; font-size: 23px; font-weight: 400; flex-shrink: 0; }
.layout-v2 .v2-faq summary > span { display: none; }
.layout-v2 .v2-faq details[open] summary::after { content: '−'; }
.layout-v2 .v2-faq details p { font-size: 16px; max-width: 920px; line-height: 1.75; padding-bottom: 24px; }
.layout-v2 .v2-inquiry { display: grid; grid-template-columns: .85fr 1.15fr; gap: 60px; align-items: start; padding-block: 68px; }
.layout-v2 .v2-inquiry > div:first-child > p:not(.eyebrow) { font-size: 16px; color: var(--muted); margin-top: 22px; }
.layout-v2 .v2-inquiry .contact-method { margin-top: 24px; }
.layout-v2 .v2-inquiry > div:first-child > .text-link { display: table; margin-top: 18px; }
.layout-v2 .v2-inquiry .contact-form-panel { background: #f4f6f3; }
.layout-v2 .v2-band { background: #f4f6f3; }
.layout-v2 .v2-dark { background: var(--green); color: #fff; }
.layout-v2 .v2-dark .eyebrow { color: #d2e4ca; }

/* Inner-page introduction and shared purchasing components. */
.layout-v2 .page-heading.v2-page-hero { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; padding-block: 48px 56px; }
.layout-v2 .v2-page-copy h1 { font-size: clamp(42px, 4vw, 54px); line-height: 1.12; letter-spacing: -1.3px; }
.layout-v2 .v2-page-copy .heading-copy { margin-top: 22px; font-size: 16px; max-width: 560px; line-height: 1.75; }
.layout-v2 .v2-page-copy .button { margin-top: 25px; }
.layout-v2 .v2-page-copy .hero-actions { margin-top: 25px; flex-wrap: wrap; gap: 15px 24px; }
.layout-v2 .v2-page-copy .hero-actions .button { margin-top: 0; }
.layout-v2 .v2-page-compact { padding-block: 38px 36px; }
.layout-v2 .v2-page-hero > figure { border: 1px solid var(--line); background: #f4f6f3; border-radius: 8px; overflow: hidden; }
.layout-v2 .v2-page-hero > figure img { width: 100%; height: auto; aspect-ratio: 1.6; object-fit: cover; }
.layout-v2 .route-products .v2-page-hero > figure img { object-fit: contain; }
.layout-v2.route-products .v2-page-hero > figure img,
.layout-v2.route-customization .v2-page-hero > figure img { object-fit: contain; }
.layout-v2 .v2-page-hero > figure figcaption { padding: 12px 18px; font-size: 11px; line-height: 1.65; color: var(--muted); }
.layout-v2.route-contact .page-heading.v2-page-hero { display: block; padding-block: 38px 30px; }
.layout-v2.route-contact .v2-page-copy h1 { font-size: 46px; }
.layout-v2.route-contact .heading-copy { max-width: 760px; }
.layout-v2 :is(.brand-options, .collection-families, .brand-film-library) { padding-block: 55px; }
.layout-v2 :is(.custom-copy, .custom-banner, .quality-section, .about-story, .product-info, .catalog-resource, .approval-pack, .sample-path, .factory-reference-section, .product-brand-panel, .cta) h2 { font-size: clamp(34px, 3.1vw, 40px); letter-spacing: -.8px; font-weight: 700; }
.layout-v2 :is(.brand-option-grid, .buyer-route-grid, .route-grid, .factory-proof-grid) { gap: 22px; }
.layout-v2 :is(.brand-option-grid > a, .buyer-route-grid article, .route-grid article, .factory-proof-grid a) { border: 1px solid var(--line); border-radius: 7px; overflow: hidden; background: #f4f6f3; }
.layout-v2 :is(.brand-option-grid, .buyer-route-grid, .factory-proof-grid) h3 { font-size: 23px; font-weight: 700; }
.layout-v2 :is(.brand-option-grid, .buyer-route-grid, .factory-proof-grid) p { font-size: 15px; line-height: 1.75; }
.layout-v2 :is(.brand-option-grid, .buyer-route-grid, .factory-proof-grid) a > div { padding: 25px; }
.layout-v2 .brand-option-grid img { height: 235px; object-fit: cover; }
.layout-v2 .brand-option-grid img.logo-branding-visual { object-fit: contain; }
.layout-v2 .brand-option-grid .logo-concept-note { font-size: 11px; }
.layout-v2 .route-grid article { padding: 27px; }
.layout-v2 .route-grid article h3 { font-size: 25px; }
.layout-v2 .route-grid article p { font-size: 15px; line-height: 1.75; }
.layout-v2 :is(.product-description, .detail-description, .heading-copy, .custom-copy > p, .quality-section > div > p, .about-story p, .prose p) { font-size: 16px; }
.layout-v2 .product-grid { gap: 30px 22px; }
.layout-v2 .home-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.layout-v2 .product-image { border: 1px solid var(--line); border-radius: 7px; background: #f7f9f5; }
.layout-v2 .product-card h3 { font-size: 16px; font-weight: 600; }
.layout-v2 .product-meta { font-size: 11px; }
.layout-v2 .shortlist-button { font-size: 12px; min-height: 38px; }
.layout-v2 .filters button { border-radius: 5px; font-size: 13px; min-height: 44px; }
.layout-v2 .catalog-refinements { gap: 20px; }
.layout-v2 .catalog-refinements :is(select, label) { font-size: 13px; }
.layout-v2 .search-label input { font-size: 15px; }
.layout-v2 .custom-jump { top: 78px; background: #fff; border-bottom: 1px solid var(--line); }
.layout-v2 .custom-jump a { font-size: 13px; }
.layout-v2 .decoration-cards > article { border: 1px solid var(--line); border-radius: 7px; overflow: hidden; background: #f4f6f3; }
.layout-v2 .decoration-copy { padding: 28px; }
.layout-v2 .decoration-copy h3 { font-size: 26px; font-weight: 700; }
.layout-v2 .decoration-copy :is(p, dd) { font-size: 15px; line-height: 1.75; }
.layout-v2 .decoration-copy dt { font-size: 12px; }
.layout-v2 .method-switcher button { border-radius: 5px; font-size: 14px; padding: 11px 16px; }
.layout-v2 :is(.packaging-grid, .finish-gallery-grid) h3 { font-size: 22px; font-weight: 700; }
.layout-v2 :is(.packaging-grid, .finish-gallery-grid) p { font-size: 15px; }
.layout-v2 :is(.artwork-prep, .packaging-brief, .sublimation-guide, .quality-section, .product-video) { background: #f4f6f3; border-radius: 7px; }
.layout-v2 :is(.artwork-prep, .packaging-brief, .sublimation-guide) h3 { font-size: 27px; font-weight: 700; }
.layout-v2 :is(.factory-metrics, .factory-document-grid, .factory-report-grid) { color: var(--ink); }
.layout-v2 .factory-document-grid article { background: #f4f6f3; border: 1px solid var(--line); border-radius: 7px; }
.layout-v2 .factory-report-grid article { border-radius: 7px; background: #fff; }
.layout-v2 .factory-report-grid h4 { font-weight: 700; }
.layout-v2 .factory-metrics strong { color: var(--green); font-size: 27px; }
.layout-v2 .factory-process-grid h3 { font-size: 20px; }
.layout-v2 .factory-process-grid p { font-size: 14px; }
.layout-v2 .factory-process-grid img { border-radius: 5px; }
.layout-v2 .process-line h3 { font-size: 20px; font-weight: 700; }
.layout-v2 .process-line p { font-size: 15px; }
.layout-v2 .factory-profile-note { font-size: 12px; }
.layout-v2 .product-detail { gap: 48px; }
.layout-v2 .detail-copy h1 { font-size: 40px; letter-spacing: -1px; }
.layout-v2 .detail-image { background: #f6f8f4; border: 1px solid var(--line); border-radius: 7px; }
.layout-v2 .product-specs > div { font-size: 14px; }
.layout-v2 .detail-actions .button { font-size: 13px; }
.layout-v2 .detail-note { font-size: 12px; }
.layout-v2 .contact-layout { gap: 55px; }
.layout-v2 .contact-form-panel { padding: 30px; border-radius: 8px; border-color: var(--line); }
.layout-v2 .form-grid { gap: 20px; }
.layout-v2 :is(.form-grid label, .message-label) { font-size: 14px; font-weight: 600; }
.layout-v2 :is(.form-grid input, .form-grid select, .message-label textarea) { font-size: 16px; background: #fff; border-color: #ccd8cf; border-radius: 5px; }
.layout-v2 .consent { font-size: 12px; }
.layout-v2 .consent input { width: 17px; height: 17px; flex-shrink: 0; }
.layout-v2 .contact-method > span { font-size: 12px; }
.layout-v2 .contact-method > a { font-size: 18px; }
.layout-v2 .shortlist-panel { background: #eaf0e8; }
.layout-v2 .optional-contact summary { font-size: 14px; }
.layout-v2 .prose { max-width: 860px; }
.layout-v2 .prose h2 { font-size: 27px; font-weight: 700; letter-spacing: -.4px; }
.layout-v2 .faq-section summary { font-size: 18px; font-weight: 600; }
.layout-v2 .faq-section details p { font-size: 16px; }
.layout-v2 .cta { border-radius: 8px; padding: 40px 45px; margin-bottom: 65px; }
.layout-v2 .cta h2 { font-size: 36px; }

/* Footer and persistent tools */
.layout-v2 .site-footer { background: #123b31; color: #fff; padding-block: 60px 26px; }
.layout-v2 .footer-main { grid-template-columns: 1.4fr 1fr 1fr 1fr 1.2fr; gap: 27px; }
.layout-v2 .footer-main .wordmark { color: #fff; }
.layout-v2 .footer-brand p { font-size: 20px; }
.layout-v2 .footer-brand > span { font-size: 12px; color: #c1d2c7; }
.layout-v2 .footer-main h3 { color: #e3eddf; font-size: 12px; letter-spacing: 1.2px; }
.layout-v2 .footer-main > div:not(.footer-brand) > a { color: #d4e2d8; font-size: 14px; line-height: 1.65; margin-block: 10px; }
.layout-v2 .footer-main a:hover { color: #fff; }
.layout-v2 .footer-bottom { border-top-color: #ffffff29; color: #c0d3c7; font-size: 12px; gap: 16px 30px; flex-wrap: wrap; }
.layout-v2 .footer-bottom a:hover { color: #fff; }
.layout-v2 .floating-contact { background: var(--green); min-height: 44px; font-size: 13px; box-shadow: 0 4px 15px #132e2920; }
.layout-v2 .back-to-top { background: #fff; color: var(--green); border-color: #aec2b3; }
.layout-v2 .project-dock { border-color: #aec3b4; border-radius: 7px; }
.layout-v2 .project-dock .button { min-height: 44px; }

@media (max-width: 1159px) {
  .layout-v2 .header-inner { min-height: 74px; }
  .layout-v2 .menu-toggle { display: inline-flex; align-items: center; justify-content: center; margin-left: auto; }
  .layout-v2 .main-nav { display: none; position: absolute; left: -36px; right: -36px; top: 74px; padding: 18px 36px 24px; background: #fff; border-bottom: 1px solid var(--line); box-shadow: 0 14px 24px #153f3512; max-height: calc(100dvh - 90px); overflow-y: auto; align-items: stretch; gap: 0; font-size: 15px; }
  .layout-v2 .main-nav.open { display: flex; flex-direction: column; }
  .layout-v2 .main-nav > a:not(.nav-project) { display: block; padding: 15px 0; border-bottom: 1px solid var(--line); }
  .layout-v2 .v2-nav-group { border-bottom: 1px solid var(--line); }
  .layout-v2 .v2-nav-group summary { min-height: 0; padding: 16px 0; font-size: 15px; }
  .layout-v2 .v2-dropdown { position: static; width: 100%; box-shadow: none; border: 0; background: #f4f6f3; padding: 6px; margin-bottom: 14px; }
  .layout-v2 .v2-dropdown a { font-size: 14px; padding: 11px 12px; }
  .layout-v2 .nav-project { margin-top: 18px; align-self: flex-start; }
  .layout-v2 .custom-jump { top: 74px; }
  .layout-v2 .v2-custom-split { gap: 32px; }
  .layout-v2 .v2-factory-split { gap: 32px; }
  .layout-v2 .v2-facts-grid > div { padding-inline: 18px; }
}

@media (max-width: 899px) {
  .layout-v2 .section-head { align-items: flex-start; flex-direction: column; gap: 18px; margin-bottom: 28px; }
  .layout-v2 .section-intro { max-width: 690px; }
  .layout-v2 .v2-hero-copy :is(h1, h2) { max-width: 540px; font-size: 48px; }
  .layout-v2 .v2-hero-copy > p:not(.eyebrow) { max-width: 480px; }
  .layout-v2 .v2-slide::after { background: linear-gradient(90deg, #0b302aec, #133d32b3 58%, #153f3526); }
  .layout-v2 .v2-solutions-grid { gap: 16px; }
  .layout-v2 .v2-solutions-grid article > div { padding: 20px; }
  .layout-v2 .v2-solutions-grid h3 { font-size: 21px; }
  .layout-v2 .v2-facts-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 0; }
  .layout-v2 .v2-facts-grid > div { padding: 3px 20px; }
  .layout-v2 .v2-facts-grid > div:nth-child(3) { border-right: 0; }
  .layout-v2 .v2-facts-grid > div:nth-child(4) { padding-left: 0; }
  .layout-v2 .v2-custom-split, .layout-v2 .v2-factory-split { grid-template-columns: 1fr; gap: 30px; }
  .layout-v2 .v2-custom-split figure { max-width: 680px; width: 100%; }
  .layout-v2 .v2-process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
  .layout-v2 .v2-tab-panel { gap: 25px; padding: 24px; }
  .layout-v2 .v2-tab-panel h3 { font-size: 24px; }
  .layout-v2 .v2-inquiry { grid-template-columns: 1fr; gap: 32px; }
  .layout-v2 .page-heading.v2-page-hero { gap: 30px; }
  .layout-v2 .v2-page-copy h1 { font-size: 41px; }
  .layout-v2 .footer-main { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }
  .layout-v2 .footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 699px) {
  .layout-v2 .wrap { width: calc(100% - 40px); }
  .layout-v2 h1, .layout-v2 .v2-page-copy h1 { font-size: 32px; line-height: 1.15; letter-spacing: -.7px; }
  .layout-v2 h2, .layout-v2 .v2-section .section-head h2 { font-size: 28px; line-height: 1.18; letter-spacing: -.4px; }
  .layout-v2 h3 { font-size: 21px; }
  .layout-v2 .eyebrow { font-size: 10px; letter-spacing: 1.2px; }
  .layout-v2 .section, .layout-v2 .v2-section { padding-block: 48px; }
  .layout-v2 .section-intro { font-size: 15px; }
  .layout-v2 .topbar { padding: 6px 20px; flex-wrap: wrap; gap: 4px 12px; }
  .layout-v2 .header-inner { min-height: 70px; gap: 15px; }
  .layout-v2 .wordmark { font-size: 27px; }
  .layout-v2 .main-nav { top: 70px; left: -20px; right: -20px; padding-inline: 20px; }
  .layout-v2 .custom-jump { top: 70px; }
  .layout-v2 .v2-hero, .layout-v2 .v2-slide { min-height: 520px; }
  .layout-v2 .v2-hero-photo { object-position: 72% center; }
  .layout-v2 .v2-hero-media { object-position: 72% center; }
  .layout-v2 .v2-slide::after { background: linear-gradient(90deg, #092f28ee 0%, #0d372dc4 65%, #173d3180 100%); }
  .layout-v2 .v2-hero-copy { padding-block: 45px 94px; }
  .layout-v2 .v2-hero-copy :is(h1, h2) { font-size: 32px; max-width: 500px; letter-spacing: -.7px; line-height: 1.15; }
  .layout-v2 .v2-hero-copy .eyebrow { font-size: 10px; margin-bottom: 16px; }
  .layout-v2 .v2-hero-copy > p:not(.eyebrow) { font-size: 15px; line-height: 1.75; margin-top: 20px; }
  .layout-v2 .v2-hero-copy .hero-actions { gap: 10px; margin-top: 23px; }
  .layout-v2 .v2-hero-copy .button { min-height: 44px; font-size: 13px; padding: 12px 16px; gap: 12px; }
  .layout-v2 .v2-hero-controls { bottom: 18px; gap: 8px; }
  .layout-v2 .v2-hero-controls :is(.v2-hero-status, [data-v2-status]) { font-size: 10px; margin-right: 0; flex-basis: 100%; }
  .layout-v2 .v2-hero-dots { gap: 8px; padding-inline: 5px; }
  .layout-v2 .v2-facts { padding-block: 26px 22px; }
  .layout-v2 .v2-facts-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 0; }
  .layout-v2 .v2-facts-grid > div { padding: 0 14px; border-right: 1px solid #d5dfd7; }
  .layout-v2 .v2-facts-grid > div:nth-child(odd) { padding-left: 0; }
  .layout-v2 .v2-facts-grid > div:nth-child(even) { border-right: 0; }
  .layout-v2 .v2-facts-grid > div:nth-child(3) { border-right: 1px solid #d5dfd7; }
  .layout-v2 .v2-facts-grid > div:last-child { grid-column: 1 / -1; border-right: 0; }
  .layout-v2 .v2-facts-grid strong { font-size: 28px; }
  .layout-v2 .v2-facts-grid span { font-size: 12px; }
  .layout-v2 .v2-fact-note { font-size: 10px; margin-top: 18px; }
  .layout-v2 .v2-solutions-grid { grid-template-columns: 1fr; gap: 20px; }
  .layout-v2 .v2-solutions-grid article > div { padding: 23px; }
  .layout-v2 .v2-solutions-grid h3 { font-size: 23px; }
  .layout-v2 .v2-solutions-grid img { aspect-ratio: 1.65; }
  .layout-v2 .v2-family-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
  .layout-v2 .v2-family-grid img { aspect-ratio: 1.12; padding: 13px; }
  .layout-v2 .v2-family-grid a > div { padding: 15px 13px; }
  .layout-v2 .v2-family-grid h3 { font-size: 17px; }
  .layout-v2 .v2-family-grid p { font-size: 12px; }
  .layout-v2 .v2-custom-split h2, .layout-v2 .v2-factory-split h2 { font-size: 28px; }
  .layout-v2 .v2-services-grid { gap: 10px; }
  .layout-v2 .v2-services-grid a { padding: 13px 12px; font-size: 13px; }
  .layout-v2 .v2-custom-split figcaption { font-size: 11px; }
  .layout-v2 .v2-factory-split p:not(.eyebrow) { font-size: 15px; }
  .layout-v2 .v2-proof-grid { grid-template-columns: 1fr; gap: 18px; margin-top: 25px; }
  .layout-v2 .v2-proof-grid figcaption { padding: 15px 18px; }
  .layout-v2 .v2-tablist { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .layout-v2 .v2-tablist button { padding: 15px 11px; font-size: 13px; border-bottom: 1px solid var(--line); }
  .layout-v2 .v2-tablist button:nth-child(even) { border-right: 0; }
  .layout-v2 .v2-tablist button:nth-last-child(-n+2) { border-bottom: 0; }
  .layout-v2 .v2-tab-panel { grid-template-columns: 1fr; gap: 24px; padding: 22px; }
  .layout-v2 .v2-section.v2-advantages { padding: 24px 18px; }
  .layout-v2 .v2-tab-panel h3 { font-size: 24px; }
  .layout-v2 .v2-tab-panel p, .layout-v2 .v2-tab-panel ul { font-size: 15px; }
  .layout-v2 .v2-process-grid { gap: 25px 18px; }
  .layout-v2 .v2-process-grid h3 { font-size: 19px; }
  .layout-v2 .v2-process-grid p { font-size: 14px; }
  .layout-v2 .v2-doc-grid { grid-template-columns: 1fr; gap: 14px; }
  .layout-v2 .v2-doc-grid a { padding: 22px; }
  .layout-v2 .v2-faq summary { font-size: 16px; }
  .layout-v2 .v2-faq details p { font-size: 15px; }
  .layout-v2 .v2-inquiry { padding-block: 48px; gap: 28px; }
  .layout-v2 .page-heading.v2-page-hero { grid-template-columns: 1fr; padding-block: 32px 38px; gap: 27px; }
  .layout-v2 .v2-page-copy .heading-copy { font-size: 15px; margin-top: 18px; }
  .layout-v2.route-contact .v2-page-copy h1 { font-size: 32px; }
  .layout-v2.route-contact .page-heading.v2-page-hero { padding-block: 30px 24px; }
  .layout-v2 :is(.custom-copy, .custom-banner, .quality-section, .about-story, .product-info, .catalog-resource, .approval-pack, .sample-path, .factory-reference-section, .product-brand-panel, .cta) h2 { font-size: 28px; }
  .layout-v2 :is(.brand-options, .collection-families, .brand-film-library) { padding-block: 38px; }
  .layout-v2 .brand-option-grid > a { display: block; }
  .layout-v2 .brand-option-grid img { height: auto; min-height: 0; aspect-ratio: 1.6; width: 100%; }
  .layout-v2 .route-grid article { padding: 23px; }
  .layout-v2 .route-grid article h3 { font-size: 23px; }
  .layout-v2 .product-grid { gap: 26px 14px; }
  .layout-v2 .product-card h3 { font-size: 15px; }
  .layout-v2 .product-image img { padding: 9px; }
  .layout-v2 .product-meta { gap: 5px; flex-wrap: wrap; }
  .layout-v2 .filters button { padding: 9px 12px; font-size: 12px; }
  .layout-v2 .decoration-copy { padding: 22px; }
  .layout-v2 .decoration-copy h3 { font-size: 24px; }
  .layout-v2 .decoration-copy :is(p, dd) { font-size: 14px; }
  .layout-v2 .method-switcher button { padding: 10px 12px; font-size: 13px; }
  .layout-v2 .quality-section { padding: 26px; }
  .layout-v2 .product-detail { grid-template-columns: 1fr; gap: 28px; padding-bottom: 40px; }
  .layout-v2 .detail-copy h1 { font-size: 30px; line-height: 1.2; letter-spacing: -.5px; }
  .layout-v2 .product-specs > div { font-size: 13px; }
  .layout-v2 .product-specs dt { min-width: 100px; }
  .layout-v2 .contact-layout { grid-template-columns: 1fr; gap: 35px; padding-bottom: 50px; }
  .layout-v2 .contact-form-panel { padding: 23px; }
  .layout-v2 .form-grid { grid-template-columns: 1fr; gap: 18px; }
  .layout-v2 .form-grid input, .layout-v2 .form-grid select, .layout-v2 .message-label textarea { font-size: 16px; }
  .layout-v2 .cta { flex-direction: column; align-items: flex-start; padding: 30px 25px; gap: 25px; margin-bottom: 48px; }
  .layout-v2 .footer-main { grid-template-columns: 1fr 1fr; gap: 36px 24px; }
  .layout-v2 .footer-brand { grid-column: 1 / -1; }
  .layout-v2 .site-footer { padding-block: 45px 26px; }
  .layout-v2 .footer-bottom { flex-direction: column; align-items: flex-start; font-size: 11px; margin-top: 35px; gap: 12px; }
  .layout-v2 .footer-main > div:not(.footer-brand) > a { font-size: 13px; }
  .layout-v2 .floating-contact { right: 14px; padding: 11px 15px; }
}

@media (max-width: 359px) {
  .layout-v2 .v2-hero-controls :is(.v2-hero-status, [data-v2-status]) { flex-basis: 100%; }
  .layout-v2 .v2-hero-copy .hero-actions { align-items: flex-start; }
  .layout-v2 .v2-family-grid { gap: 10px; }
  .layout-v2 .v2-family-grid h3 { font-size: 16px; }
  .layout-v2 .v2-family-grid a > div { padding: 13px 11px; }
  .layout-v2 .v2-services-grid { grid-template-columns: 1fr; }
  .layout-v2 .v2-process-grid { grid-template-columns: 1fr; }
  .layout-v2 .v2-facts-grid strong { font-size: 25px; }
  .layout-v2 .contact-form-panel { padding: 19px; }
  .layout-v2 .footer-main { grid-template-columns: 1fr; }
  .layout-v2 .footer-brand { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .layout-v2 *, .layout-v2 *::before, .layout-v2 *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

@media print {
  .layout-v2 .v2-hero-controls, .layout-v2 .menu-toggle { display: none !important; }
  .layout-v2 .site-header { position: static; }
  .layout-v2 .v2-hero { min-height: 0; }
  .layout-v2 .v2-slide { min-height: 0; color: #153f35; }
  .layout-v2 .v2-slide::after { display: none; }
  .layout-v2 .v2-hero-photo { display: none; }
  .layout-v2 .v2-hero-copy { padding-block: 30px; }
  .layout-v2 .v2-hero-copy :is(h1, h2), .layout-v2 .v2-hero-copy p { color: #153f35; }
  .layout-v2 .v2-section { padding-block: 30px; }
}

/* Keep carousel controls clear of the persistent contact button. */
.layout-v2 .v2-hero-controls :is(.v2-hero-status, [data-v2-status]) { margin-right: 24px; }
.layout-v2 .v2-hero-dots { flex-wrap: wrap; max-width: 100%; padding-inline: 0; gap: 6px; }
.layout-v2 .v2-hero-dots .v2-dot,
.layout-v2 .v2-hero-dots .v2-dot[aria-current="true"],
.layout-v2 .v2-hero-dots .v2-dot[aria-pressed="true"],
.layout-v2 .v2-hero-dots .v2-dot.active { width: 30px; min-width: 30px; height: 36px; min-height: 36px; padding: 0; border: 0; background: transparent; }
.layout-v2 .v2-hero-dots .v2-dot::before { content: ''; width: 10px; height: 10px; border: 1px solid #fff; border-radius: 50%; background: #ffffff33; }
.layout-v2 .v2-hero-dots .v2-dot[aria-current="true"]::before,
.layout-v2 .v2-hero-dots .v2-dot[aria-pressed="true"]::before,
.layout-v2 .v2-hero-dots .v2-dot.active::before { background: #fff; }
@media (max-width: 699px) {
  .layout-v2 .v2-hero-controls :is(.v2-hero-status, [data-v2-status]) { margin-right: 0; }
}

/* Customer case study section (customization page) */
.layout-v2 .case-study .case-study-film { max-width: 920px; margin: 0 auto 60px; }
.layout-v2 .case-study .case-journey { margin-bottom: 50px; }
.layout-v2 .case-study-cta { text-align: center; }
.layout-v2 .case-study-cta .visual-note { margin: 0 auto 24px; max-width: 620px; }

/* Company strength section (home) */
.layout-v2 .v2-company { display: grid; grid-template-columns: 1.05fr 1fr; gap: 60px; align-items: center; }
.layout-v2 .v2-company-intro h2 { margin-bottom: 18px; }
.layout-v2 .v2-company-intro > p:not(.eyebrow) { font-size: 16px; color: var(--muted); }
.layout-v2 .v2-company-intro .hero-actions { display: flex; gap: 14px 24px; margin-top: 26px; flex-wrap: wrap; align-items: center; }
.layout-v2 .v2-company-stats { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.layout-v2 .v2-company-stats > div { padding: 30px 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #f7f9f6; }
.layout-v2 .v2-company-stats strong { display: block; font-size: clamp(32px, 3vw, 42px); line-height: 1.1; letter-spacing: -1px; color: var(--green); }
.layout-v2 .v2-company-stats span { display: block; margin-top: 10px; font-size: 13px; line-height: 1.5; color: var(--muted); }
.layout-v2 .v2-company .v2-fact-note { grid-column: 1 / -1; margin: 0; }

/* Customer case-study banner (home) */
.layout-v2 .v2-case-banner { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; background: #f7f9f6; color: inherit; text-decoration: none; transition: box-shadow .25s ease, transform .25s ease; }
.layout-v2 .v2-case-banner:hover { box-shadow: 0 18px 40px -18px rgba(21, 63, 53, .35); transform: translateY(-2px); }
.layout-v2 .v2-case-banner figure { position: relative; background: #0e2a36; display: flex; align-items: center; }
.layout-v2 .v2-case-banner img { display: block; width: 100%; height: 100%; object-fit: contain; }
.layout-v2 .v2-case-play { position: absolute; inset: 0; margin: auto; width: 64px; height: 64px; border-radius: 50%; background: rgba(21, 63, 53, .88); color: #fff; display: flex; align-items: center; justify-content: center; transition: transform .25s ease, background .25s ease; }
.layout-v2 .v2-case-banner:hover .v2-case-play { transform: scale(1.1); background: var(--green); }
.layout-v2 .v2-case-banner > div { padding: clamp(28px, 4vw, 52px); align-self: center; }
.layout-v2 .v2-case-banner h2 { margin-bottom: 16px; font-size: clamp(28px, 2.6vw, 36px); }
.layout-v2 .v2-case-banner p:not(.eyebrow) { color: var(--muted); }
.layout-v2 .v2-case-banner .text-link { display: inline-block; margin-top: 20px; }

/* Trust badge strip (home, before inquiry) */
.layout-v2 .v2-trust { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 20px 40px; padding-block: 42px; }
.layout-v2 .v2-trust .eyebrow { margin: 0; }
.layout-v2 .v2-trust ul { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
.layout-v2 .v2-trust li { padding: 6px 28px; border-right: 1px solid var(--line); }
.layout-v2 .v2-trust li:first-child { padding-left: 0; }
.layout-v2 .v2-trust li:last-child { border-right: 0; }
.layout-v2 .v2-trust strong { display: block; font-size: 19px; line-height: 1.3; letter-spacing: -.3px; color: var(--green); }
.layout-v2 .v2-trust li span { font-size: 12.5px; color: var(--muted); }
.layout-v2 .v2-trust > .text-link { justify-self: end; }

@media (max-width: 1159px) {
  .layout-v2 .v2-company { gap: 42px; }
  .layout-v2 .v2-company-stats > div { padding: 24px 22px; }
}
@media (max-width: 899px) {
  .layout-v2 .v2-company { grid-template-columns: 1fr; gap: 36px; }
  .layout-v2 .v2-case-banner { grid-template-columns: 1fr; }
  .layout-v2 .v2-case-banner img { aspect-ratio: 16 / 9; height: auto; }
  .layout-v2 .v2-trust li { padding: 6px 20px; }
}
@media (max-width: 699px) {
  .layout-v2 .v2-company-stats strong { font-size: 30px; }
  .layout-v2 .v2-case-play { width: 54px; height: 54px; }
  .layout-v2 .v2-trust { padding-block: 32px; grid-template-columns: 1fr; }
  .layout-v2 .v2-trust > .text-link { justify-self: start; }
  .layout-v2 .v2-trust ul { grid-template-columns: 1fr 1fr; gap: 18px 0; }
  .layout-v2 .v2-trust li { padding: 0 16px; }
  .layout-v2 .v2-trust li:nth-child(even) { border-right: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .layout-v2 .v2-case-banner, .layout-v2 .v2-case-play { transition: none; }
  .layout-v2 .v2-case-banner:hover { transform: none; }
  .layout-v2 .v2-case-banner:hover .v2-case-play { transform: none; }
}
