@import url("https://fonts.googleapis.com/css2?family=Cormorant:ital,wght@0,500;0,600;1,500&family=Manrope:wght@400;500;600;700;800&display=swap");

:root {
  --ink: #142d28;
  --ink-deep: #0d211e;
  --ink-soft: #52655f;
  --paper: #f4f1e9;
  --paper-warm: #ebe6dc;
  --white: #fffdf8;
  --sage: #a9beb3;
  --sage-light: #dbe4de;
  --mist: #d8e5e5;
  --blue: #bfd5da;
  --line: rgba(20, 45, 40, 0.18);
  --line-light: rgba(255, 255, 255, 0.2);
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --shell: min(1480px, calc(100vw - 80px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--paper); }
body { margin: 0; overflow-x: hidden; color: var(--ink); background: var(--paper); font-family: "Manrope", Arial, sans-serif; font-size: 16px; line-height: 1.55; text-rendering: optimizeLegibility; }
body.menu-open, body.dialog-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
button { color: inherit; }
button:active, a:active { opacity: .76; }
img { display: block; max-width: 100%; height: auto; }
svg { display: block; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
::selection { color: var(--white); background: var(--ink); }
:focus-visible { outline: 3px solid #276e62; outline-offset: 4px; }
.shell { width: var(--shell); margin-inline: auto; }
.skip-link { position: fixed; z-index: 1000; top: 12px; left: 12px; padding: 12px 18px; color: #fff; background: var(--ink); transform: translateY(-150%); transition: transform 180ms ease; }
.skip-link:focus { transform: translateY(0); }
#collection, #contact { scroll-margin-top: 90px; }

@view-transition { navigation: auto; }
::view-transition-old(root), ::view-transition-new(root) { animation-duration: 260ms; animation-timing-function: ease; }

/* Shared typography and controls */
.eyebrow, .micro-label, .section-index, .page-hero__top, .partner-hero__top { font-size: 10px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.eyebrow { display: inline-flex; color: #5f7770; }
.text-link { display: inline-flex; align-items: center; gap: 24px; min-height: 44px; padding-block: 6px; border-bottom: 1px solid currentColor; font-size: 12px; font-weight: 700; transition: gap 240ms var(--ease), color 180ms ease; }
.text-link:hover { gap: 34px; color: #2b6c61; }
.button { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 56px; padding: 0 8px 0 22px; border: 1px solid transparent; border-radius: 2px; font-size: 12px; font-weight: 700; transition: color 220ms ease, background 220ms ease, transform 220ms var(--ease); }
.button > span { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid currentColor; border-radius: 50%; font-size: 15px; transition: transform 240ms var(--ease); }
.button:hover { transform: translateY(-2px); }
.button:hover > span { transform: rotate(45deg); }
.button--ink { color: var(--white); background: var(--ink); }
.button--ink:hover { background: #245348; }
.button--paper { color: var(--ink); background: var(--paper); }
.button--paper:hover { background: #fff; }
.round-link { display: inline-flex; align-items: center; justify-content: space-between; flex: 0 0 auto; width: 132px; height: 132px; padding: 18px; border: 1px solid var(--line); border-radius: 50%; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; transition: color 240ms ease, background 240ms ease, transform 300ms var(--ease); }
.round-link i { font-style: normal; font-size: 16px; }
.round-link:hover { color: #fff; background: var(--ink); transform: rotate(-7deg); }
.section-index { display: flex; justify-content: space-between; width: 100%; padding-top: 12px; border-top: 1px solid var(--line); color: #62756f; }
.section-index--light { color: #bcd0c9; border-color: var(--line-light); }
.display-copy { max-width: 1120px; margin: 0; font-family: "Cormorant", Georgia, serif; font-size: clamp(56px, 6.3vw, 104px); font-weight: 500; letter-spacing: -.045em; line-height: .96; }
.display-copy em { color: #6f8d84; font-weight: 500; }

/* Header */
.site-header { position: fixed; z-index: 200; top: 0; right: 0; left: 0; height: 88px; color: var(--ink); transition: height 240ms var(--ease), color 200ms ease, background 200ms ease, box-shadow 200ms ease; }
.site-header::before { position: absolute; inset: 0; background: rgba(244, 241, 233, .97); opacity: 0; content: ""; transition: opacity 220ms ease; }
.site-header.is-scrolled { height: 72px; box-shadow: 0 8px 28px rgba(20, 45, 40, .08); }
.site-header.is-scrolled::before { opacity: 1; }
.site-header__inner { position: relative; z-index: 3; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; height: 100%; border-bottom: 1px solid rgba(20, 45, 40, .18); }
.brand-mark { display: inline-flex; flex-direction: column; justify-self: start; min-height: 48px; font-family: "Manrope", sans-serif; font-weight: 800; line-height: .83; letter-spacing: -.055em; }
.brand-mark__top { font-size: 20px; }
.brand-mark__bottom { align-self: flex-end; margin-top: 8px; color: #397467; font-size: 8px; letter-spacing: .21em; }
.site-nav { display: flex; align-items: center; gap: 32px; }
.site-nav a { position: relative; display: inline-flex; align-items: center; min-height: 44px; color: #40534e; font-size: 11px; font-weight: 700; }
.site-nav a::after { position: absolute; right: 0; bottom: 5px; left: 0; height: 1px; background: currentColor; content: ""; transform: scaleX(0); transform-origin: right; transition: transform 240ms var(--ease); }
.site-nav a:hover::after, .site-nav a[aria-current="page"]::after { transform: scaleX(1); transform-origin: left; }
.header-contact { display: inline-flex; align-items: center; justify-self: end; gap: 18px; min-height: 46px; padding: 0 6px 0 17px; color: #fff; background: var(--ink); font-size: 11px; font-weight: 700; transition: background 200ms ease, transform 220ms var(--ease); }
.header-contact i { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; font-style: normal; }
.header-contact:hover { background: #2a5d52; transform: translateY(-2px); }
.menu-toggle { display: none; align-items: center; justify-content: center; flex-direction: column; justify-self: end; gap: 7px; width: 48px; height: 48px; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: transparent; cursor: pointer; }
.menu-toggle span { width: 19px; height: 1.5px; background: currentColor; transition: transform 220ms var(--ease); }
.menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(4.25px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-4.25px) rotate(-45deg); }
.site-progress { position: absolute; z-index: 4; top: 0; right: 0; left: 0; height: 2px; }
.site-progress span { display: block; width: 100%; height: 100%; background: #4f8a7d; transform: scaleX(var(--page-progress, 0)); transform-origin: left; }
.mobile-menu { position: fixed; z-index: 2; inset: 0; display: none; padding: 120px 24px 34px; color: #fff; background: var(--ink-deep); opacity: 0; pointer-events: none; transform: translateY(-16px); transition: opacity 240ms ease, transform 400ms var(--ease); }

/* Home hero */
.studio-hero { position: relative; min-height: 760px; height: 100svh; max-height: 980px; overflow: hidden; background: #d8e1de; isolation: isolate; }
.studio-hero__backdrop { position: absolute; z-index: -3; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; transform: scale(1.015); animation: backdrop-breathe 12s ease-in-out infinite alternate; }
.studio-hero__wash { position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg, rgba(244,241,233,.88) 0%, rgba(244,241,233,.65) 31%, rgba(244,241,233,.05) 55%, transparent 74%), linear-gradient(180deg, rgba(241,239,231,.05) 66%, rgba(11,42,37,.13)); }
.studio-hero__grid { display: grid; grid-template-columns: minmax(430px, .84fr) minmax(560px, 1.16fr); align-items: center; gap: 34px; height: 100%; padding: 108px 0 126px; }
.studio-hero__copy { position: relative; z-index: 3; max-width: 710px; }
.micro-label { display: flex; align-items: center; gap: 18px; margin-bottom: 27px; color: #5b716b; }
.micro-label span:first-child { display: inline-flex; align-items: center; gap: 11px; }
.micro-label span:first-child::before { width: 28px; height: 1px; background: currentColor; content: ""; }
.micro-label span + span { padding-left: 18px; border-left: 1px solid var(--line); }
.studio-hero h1 { margin: 0; font-size: clamp(66px, 6.1vw, 108px); font-weight: 600; letter-spacing: -.072em; line-height: .88; }
.studio-hero h1 em { display: inline-block; color: #557f74; font-family: "Cormorant", Georgia, serif; font-weight: 500; letter-spacing: -.045em; }
.studio-hero__copy > p { max-width: 600px; margin: 28px 0 0; color: #415b54; font-size: clamp(15px, 1.05vw, 18px); line-height: 1.7; }
.studio-hero__actions { display: flex; align-items: center; gap: 28px; margin-top: 34px; }
.hero-product { --tilt-x: 0; --tilt-y: 0; position: relative; align-self: stretch; perspective: 1300px; transform-style: preserve-3d; }
.hero-product > img { position: absolute; z-index: 3; top: 49%; left: 51%; width: min(52vw, 790px); max-width: none; transform: translate3d(-50%, -50%, 40px) rotateX(calc(var(--tilt-y) * -1.7deg)) rotateY(calc(var(--tilt-x) * 2.2deg)); filter: drop-shadow(0 34px 24px rgba(19, 54, 49, .23)); will-change: transform; }
.hero-product__edition { position: absolute; z-index: 0; top: 15%; right: -1%; color: rgba(255,255,255,.48); font-family: "Cormorant", Georgia, serif; font-size: clamp(170px, 18vw, 310px); font-weight: 500; letter-spacing: -.08em; line-height: .8; }
.hero-product__light { position: absolute; z-index: 1; top: 42%; left: 51%; width: 55%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(255,255,255,.55), rgba(255,255,255,0) 68%); transform: translate(-50%, -50%); }
.hero-product__shadow { position: absolute; z-index: 2; right: 3%; bottom: 24%; width: 76%; height: 8%; border-radius: 50%; background: rgba(19, 56, 50, .2); filter: blur(22px); transform: perspective(400px) rotateX(65deg); }
.hero-product__caption { position: absolute; z-index: 6; right: 4%; bottom: 19%; display: grid; grid-template-columns: 1fr 44px; min-width: 242px; padding: 16px 14px 16px 18px; border: 1px solid rgba(20,45,40,.16); color: var(--ink); background: rgba(249,247,240,.94); box-shadow: 0 20px 40px rgba(18,48,42,.08); transition: transform 240ms var(--ease), background 180ms ease; }
.hero-product__caption span { grid-column: 1; color: #697c76; font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hero-product__caption strong { grid-column: 1; margin-top: 4px; font-size: 14px; }
.hero-product__caption i { grid-column: 2; grid-row: 1 / 3; display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; color: #fff; background: var(--ink); font-style: normal; }
.hero-product__caption:hover { background: #fff; transform: translateY(-4px); }
.hero-ledger { position: absolute; z-index: 10; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(3, minmax(140px, 1fr)) minmax(200px, 1.25fr); min-height: 104px; border-top: 1px solid var(--line); border-right: 1px solid var(--line); border-left: 1px solid var(--line); background: rgba(247,244,236,.96); }
.hero-ledger > div, .hero-ledger > a { display: flex; align-items: center; gap: 20px; min-height: 104px; padding: 18px 28px; }
.hero-ledger > * + * { border-left: 1px solid var(--line); }
.hero-ledger small { color: #789088; font-size: 9px; font-weight: 800; }
.hero-ledger span { font-size: 11px; font-weight: 700; line-height: 1.45; }
.hero-ledger > a { justify-content: space-between; color: #fff; background: var(--ink); transition: background 200ms ease; }
.hero-ledger > a:hover { background: #2c5e53; }
.hero-ledger i { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border: 1px solid rgba(255,255,255,.38); border-radius: 50%; font-style: normal; }

/* Home content */
.editorial-intro { padding: 150px 0 170px; background: var(--paper); }
.editorial-intro__grid { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: clamp(55px, 7vw, 120px); }
.editorial-intro__note { display: grid; grid-template-columns: minmax(260px, 480px) 132px; justify-content: end; align-items: end; gap: 50px; margin-top: 58px; }
.editorial-intro__note p { margin: 0; color: var(--ink-soft); line-height: 1.75; }
.featured-collection { padding: 124px 0 110px; background: #f9f7f1; }
.collection-title { display: grid; grid-template-columns: 1.2fr .8fr; align-items: end; gap: 70px; margin-bottom: 56px; }
.collection-title h2 { margin: 12px 0 0; font-family: "Cormorant", Georgia, serif; font-size: clamp(58px, 5vw, 84px); font-weight: 500; letter-spacing: -.045em; line-height: .95; }
.collection-title > p { max-width: 520px; margin: 0 0 8px auto; color: var(--ink-soft); line-height: 1.75; }
.product-editorial-grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 20px; }
.editorial-product { position: relative; min-height: 720px; overflow: hidden; padding: 22px; background: #d8e4e4; }
.editorial-product--green { background: #d9dfcf; }
.editorial-product__top { position: relative; z-index: 4; display: grid; grid-template-columns: 1fr 1fr 1fr; padding-bottom: 16px; border-bottom: 1px solid rgba(20,45,40,.17); color: #516660; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.editorial-product__top span:nth-child(2) { text-align: center; }
.editorial-product__top span:last-child { text-align: right; }
.editorial-product__visual { position: relative; display: flex; align-items: center; justify-content: center; height: 510px; overflow: hidden; }
.editorial-product__ghost { position: absolute; top: 50%; left: 50%; color: rgba(255,255,255,.43); font-family: "Cormorant", Georgia, serif; font-size: clamp(110px, 12vw, 190px); font-weight: 600; letter-spacing: -.08em; line-height: .8; transform: translate(-50%, -50%); white-space: nowrap; }
.editorial-product__visual img { position: relative; z-index: 2; width: 90%; max-height: 86%; object-fit: contain; filter: drop-shadow(0 26px 22px rgba(20,45,40,.2)); transform: translateZ(0); transition: transform 600ms var(--ease); }
.editorial-product--green .editorial-product__visual img { width: auto; height: 88%; }
.editorial-product:hover .editorial-product__visual img { transform: translate3d(0,-10px,0) scale(1.025); }
.editorial-product__body { position: relative; z-index: 3; display: flex; align-items: end; justify-content: space-between; gap: 28px; padding: 12px 8px 2px; }
.editorial-product__body small { color: #586d66; font-size: 10px; font-weight: 600; }
.editorial-product__body h3 { margin: 5px 0 0; font-family: "Cormorant", Georgia, serif; font-size: clamp(40px, 3.2vw, 58px); font-weight: 600; letter-spacing: -.04em; line-height: 1; }
.product-arrow { display: inline-flex; align-items: center; gap: 16px; min-height: 50px; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.product-arrow i { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border: 1px solid rgba(20,45,40,.28); border-radius: 50%; font-style: normal; transition: color 200ms ease, background 200ms ease, transform 240ms var(--ease); }
.product-arrow:hover i { color: #fff; background: var(--ink); transform: rotate(45deg); }
.collection-foot { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 30px; padding-top: 20px; border-top: 1px solid var(--line); }
.collection-foot > span { color: #70817c; font-size: 10px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.category-atlas { padding: 138px 0 150px; color: #f3f1e9; background: var(--ink-deep); }
.category-atlas__head { display: grid; grid-template-columns: 1.2fr .65fr; align-items: end; gap: 80px; margin: 72px 0 80px; }
.category-atlas h2, .business-story h2, .final-invite h2, .geography-section h2, .company-next h2, .partner-process h2, .buyer-kit h2, .contact-stage h2, .product-information h2 { margin: 0; font-family: "Cormorant", Georgia, serif; font-size: clamp(60px, 6.2vw, 102px); font-weight: 500; letter-spacing: -.05em; line-height: .92; }
.category-atlas h2 em, .business-story h2 em, .final-invite h2 em, .geography-section h2 em, .company-next h2 em, .partner-process h2 em, .buyer-kit h2 em, .contact-stage h2 em, .product-information h2 em { color: #8cad9f; font-weight: 500; }
.category-atlas__head p { max-width: 470px; margin: 0 0 8px; color: #adc0ba; line-height: 1.75; }
.category-list { border-top: 1px solid var(--line-light); }
.category-list > * { display: grid; grid-template-columns: 100px 1fr 140px 52px; align-items: center; min-height: 104px; border-bottom: 1px solid var(--line-light); }
.category-list span { color: #76938a; font-size: 10px; font-weight: 800; }
.category-list strong { font-family: "Cormorant", Georgia, serif; font-size: clamp(30px, 2.8vw, 46px); font-weight: 500; letter-spacing: -.035em; }
.category-list small { color: #9bb0a9; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.category-list i { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border: 1px solid var(--line-light); border-radius: 50%; font-style: normal; transition: color 200ms ease, background 200ms ease, transform 240ms var(--ease); }
.category-list a { transition: padding 300ms var(--ease), color 180ms ease; }
.category-list a:hover { padding-inline: 18px; color: #b7dacf; }
.category-list a:hover i { color: var(--ink); background: #c7ddd5; transform: rotate(45deg); }
.category-list > div { opacity: .47; }
.business-story { padding: 140px 0; color: var(--ink); background: #cbd8d1; }
.business-story__grid { display: grid; grid-template-columns: 1.15fr .85fr; align-items: end; gap: 110px; }
.business-story__copy > p { max-width: 650px; margin: 34px 0; color: #465e57; line-height: 1.75; }
.business-story__facts { border-top: 1px solid var(--line); }
.business-story__facts article { display: grid; grid-template-columns: 180px 1fr; align-items: center; min-height: 132px; border-bottom: 1px solid var(--line); }
.business-story__facts strong { font-family: "Cormorant", Georgia, serif; font-size: 70px; font-weight: 500; letter-spacing: -.05em; line-height: .8; }
.business-story__facts span { color: #506860; font-size: 12px; font-weight: 600; }
.final-invite { padding: 138px 0 150px; background: var(--paper); }
.final-invite__inner { padding-top: 18px; border-top: 1px solid var(--line); }
.final-invite__inner h2 { max-width: 1150px; margin-top: 68px; }
.final-invite__inner > div { display: flex; align-items: end; justify-content: flex-end; gap: 60px; margin-top: 56px; }
.final-invite__inner p { max-width: 420px; margin: 0; color: var(--ink-soft); }

/* Footer */
.site-footer { padding: 88px 0 28px; overflow: hidden; color: #e7ece8; background: #0c211d; }
.site-footer__top { display: grid; grid-template-columns: 1.25fr .55fr 1fr; gap: 80px; padding-bottom: 76px; border-bottom: 1px solid var(--line-light); }
.brand-mark--footer { color: #fff; }
.brand-mark--footer .brand-mark__top { font-size: 27px; }
.brand-mark--footer .brand-mark__bottom { color: #9abdb1; font-size: 9px; }
.site-footer__brand p { margin: 28px 0 0; color: #93aaa3; font-size: 13px; }
.site-footer__nav, .site-footer__contact { display: flex; flex-direction: column; gap: 12px; }
.site-footer__nav > span, .site-footer__contact > span { margin-bottom: 9px; color: #6d8c82; font-size: 9px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.site-footer__nav a { display: inline-flex; align-items: center; width: fit-content; min-height: 44px; color: #ccd8d3; font-size: 12px; transition: color 180ms ease, transform 200ms var(--ease); }
.site-footer__nav a:hover { color: #fff; transform: translateX(5px); }
.site-footer__contact a { color: #fff; font-family: "Cormorant", Georgia, serif; font-size: clamp(24px, 2.2vw, 36px); font-weight: 500; letter-spacing: -.025em; overflow-wrap: anywhere; }
.site-footer__contact small { color: #718b83; font-size: 10px; }
.site-footer__word { margin-top: 44px; color: rgba(255,255,255,.055); font-size: clamp(130px, 20.3vw, 300px); font-weight: 800; letter-spacing: -.09em; line-height: .72; white-space: nowrap; }
.site-footer__bottom { display: flex; justify-content: space-between; gap: 30px; margin-top: 40px; padding-top: 22px; border-top: 1px solid var(--line-light); color: #759087; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }

/* Inner page common */
.page-hero { position: relative; min-height: 720px; overflow: hidden; padding: 140px 0 70px; background: #dbe5e1; isolation: isolate; }
.page-hero__top, .partner-hero__top { display: flex; justify-content: space-between; padding-top: 18px; border-top: 1px solid var(--line); color: #62776f; }
.page-hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.35fr .65fr; align-items: end; gap: 90px; min-height: 460px; }
.page-hero__grid--wide { grid-template-columns: 1.15fr .55fr; }
.page-hero h1 { margin: 0; font-size: clamp(100px, 14vw, 220px); font-weight: 700; letter-spacing: -.095em; line-height: .72; }
.page-hero h1 em { color: #617f76; font-family: "Cormorant", Georgia, serif; font-weight: 500; letter-spacing: -.065em; }
.page-hero__aside { position: relative; z-index: 2; max-width: 510px; padding-bottom: 25px; }
.page-hero__aside p { margin: 0 0 27px; color: #455d56; line-height: 1.75; }
.page-total { display: flex; align-items: end; gap: 16px; margin-bottom: 38px; padding-bottom: 25px; border-bottom: 1px solid var(--line); }
.page-total strong { font-family: "Cormorant", Georgia, serif; font-size: 78px; font-weight: 500; letter-spacing: -.07em; line-height: .72; }
.page-total span { color: #60756e; font-size: 10px; font-weight: 700; line-height: 1.4; }
.page-hero__word { position: absolute; z-index: -1; right: -2%; bottom: -2%; color: rgba(255,255,255,.36); font-size: clamp(120px, 22vw, 350px); font-weight: 800; letter-spacing: -.09em; line-height: .75; }
.page-hero--company { min-height: 780px; background: #ebe6dc; }
.page-hero--company h1 { font-size: clamp(78px, 9.5vw, 156px); line-height: .84; }
.company-seal { position: absolute; right: 4%; bottom: -6%; display: flex; align-items: center; justify-content: center; flex-direction: column; width: min(30vw, 420px); aspect-ratio: 1; border: 1px solid rgba(20,45,40,.14); border-radius: 50%; color: rgba(20,45,40,.14); font-weight: 800; letter-spacing: -.07em; transform: rotate(-11deg); }
.company-seal::before, .company-seal::after { position: absolute; border: 1px solid rgba(20,45,40,.1); border-radius: 50%; content: ""; }
.company-seal::before { inset: 24px; }
.company-seal::after { inset: 45px; }
.company-seal span { font-size: clamp(40px, 5vw, 72px); }
.company-seal small { font-size: 13px; letter-spacing: .25em; }

/* Catalog */
.catalog-section { min-height: 700px; padding: 62px 0 130px; background: #f8f6f0; }
.catalog-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 32px; margin-bottom: 36px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.catalog-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.catalog-filter { display: inline-flex; align-items: center; gap: 16px; min-height: 48px; padding: 0 17px; border: 1px solid var(--line); border-radius: 999px; background: transparent; font-size: 11px; font-weight: 700; cursor: pointer; transition: color 180ms ease, background 180ms ease, border-color 180ms ease; }
.catalog-filter small { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; border-radius: 50%; color: #60726d; background: rgba(20,45,40,.07); font-size: 8px; }
.catalog-filter:hover, .catalog-filter.is-active { color: #fff; border-color: var(--ink); background: var(--ink); }
.catalog-filter.is-active small { color: var(--ink); background: #c8d9d2; }
.catalog-result { color: #6d807a; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.catalog-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.catalog-card { min-width: 0; overflow: hidden; background: #dbe6e6; }
.catalog-card--green { background: #dde2d5; }
.catalog-card__top { display: grid; grid-template-columns: 1fr 1fr 1fr; margin: 20px 20px 0; padding-bottom: 15px; border-bottom: 1px solid var(--line); color: #5b6d68; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.catalog-card__top span:nth-child(2) { text-align: center; }
.catalog-card__top span:last-child { text-align: right; }
.catalog-card__visual { position: relative; display: flex; align-items: center; justify-content: center; height: 430px; overflow: hidden; }
.catalog-card__word { position: absolute; top: 50%; left: 50%; color: rgba(255,255,255,.46); font-family: "Cormorant", Georgia, serif; font-size: clamp(96px, 9vw, 150px); font-weight: 600; letter-spacing: -.08em; transform: translate(-50%,-50%); white-space: nowrap; }
.catalog-card__visual img { position: relative; z-index: 2; width: 83%; max-height: 84%; object-fit: contain; filter: drop-shadow(0 22px 20px rgba(20,45,40,.19)); transition: transform 560ms var(--ease); }
.catalog-card--green .catalog-card__visual img { width: auto; height: 88%; }
.catalog-card:hover .catalog-card__visual img { transform: translateY(-9px) scale(1.02); }
.catalog-card__content { display: grid; grid-template-columns: 1fr .8fr; align-items: end; gap: 35px; padding: 23px 28px 28px; border-top: 1px solid var(--line); }
.catalog-card__content small { color: #5d716a; font-size: 9px; font-weight: 700; }
.catalog-card__content h2 { margin: 5px 0 0; font-family: "Cormorant", Georgia, serif; font-size: clamp(38px, 3.4vw, 56px); font-weight: 600; letter-spacing: -.04em; line-height: .95; }
.catalog-card__content p { margin: 0; color: #53665f; font-size: 12px; line-height: 1.65; }
.catalog-card__specs { display: grid; grid-template-columns: repeat(3,1fr); margin: 0; padding: 0 20px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); list-style: none; }
.catalog-card__specs li { display: flex; flex-direction: column; gap: 4px; min-height: 88px; padding: 18px 12px; }
.catalog-card__specs li + li { border-left: 1px solid var(--line); }
.catalog-card__specs span { color: #6b7c77; font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.catalog-card__specs strong { font-size: 10px; line-height: 1.5; }
.catalog-card__actions { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 28px 24px; }
.catalog-card__actions button, .catalog-card__actions a { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; padding: 0; border: 0; border-bottom: 1px solid rgba(20,45,40,.5); background: transparent; font-size: 10px; font-weight: 800; cursor: pointer; }
.catalog-card__actions button span, .catalog-card__actions a span { font-size: 14px; }
.catalog-note { padding: 110px 0 120px; background: var(--paper-warm); }
.catalog-note__inner { display: grid; grid-template-columns: .8fr 1fr auto; align-items: center; gap: 70px; padding-top: 22px; border-top: 1px solid var(--line); }
.catalog-note__inner > span { font-family: "Cormorant", Georgia, serif; font-size: 38px; font-weight: 600; letter-spacing: -.035em; line-height: 1; }
.catalog-note__inner p { margin: 0; color: var(--ink-soft); }

/* Dialog */
.quick-dialog { width: min(1080px, calc(100vw - 30px)); max-width: none; max-height: calc(100svh - 30px); padding: 0; overflow: visible; border: 0; color: var(--ink); background: var(--paper); box-shadow: 0 35px 100px rgba(4,25,21,.35); }
.quick-dialog::backdrop { background: rgba(8,28,24,.68); }
.dialog-close { position: absolute; z-index: 5; top: 14px; right: 14px; display: flex; align-items: center; justify-content: center; flex-direction: column; width: 48px; height: 48px; border: 1px solid rgba(20,45,40,.18); border-radius: 50%; background: #f5f2e9; cursor: pointer; }
.dialog-close span { position: absolute; width: 18px; height: 1.5px; background: currentColor; transform: rotate(45deg); }
.dialog-close span:last-child { transform: rotate(-45deg); }
.quick-dialog__grid { display: grid; grid-template-columns: 1.08fr .92fr; min-height: 650px; }
.quick-dialog__media { position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; background: #d7e4e5; }
.quick-dialog__media--green { background: #dce1d3; }
.quick-dialog__media > span { position: absolute; top: 30px; left: 30px; color: rgba(20,45,40,.28); font-family: "Cormorant", Georgia, serif; font-size: 82px; font-weight: 500; }
.quick-dialog__media img { position: relative; z-index: 2; width: 88%; max-height: 74%; object-fit: contain; filter: drop-shadow(0 28px 22px rgba(20,45,40,.2)); }
.quick-dialog__media--green img { width: auto; height: 74%; }
.quick-dialog__copy { display: flex; align-items: flex-start; justify-content: center; flex-direction: column; padding: 70px 54px; }
.quick-dialog__copy h2 { margin: 12px 0 20px; font-family: "Cormorant", Georgia, serif; font-size: 62px; font-weight: 600; letter-spacing: -.05em; line-height: .92; }
.quick-dialog__copy > p { margin: 0; color: var(--ink-soft); line-height: 1.7; }
.quick-dialog__copy dl { width: 100%; margin: 35px 0; border-top: 1px solid var(--line); }
.quick-dialog__copy dl div { display: grid; grid-template-columns: 1fr 1.2fr; gap: 20px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.quick-dialog__copy dt { color: #6b7f78; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.quick-dialog__copy dd { margin: 0; font-size: 11px; font-weight: 700; }

/* Company */
.company-manifesto { padding: 150px 0 165px; }
.company-manifesto__grid { display: grid; grid-template-columns: 210px 1fr; gap: clamp(55px, 7vw, 120px); }
.company-manifesto__columns { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 50px; max-width: 820px; margin: 58px 0 0 auto; }
.company-manifesto__columns p { margin: 0; color: var(--ink-soft); line-height: 1.75; }
.company-numbers { padding: 0 0 150px; }
.company-numbers__grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.company-numbers article { min-height: 310px; padding: 25px 30px; }
.company-numbers article + article { border-left: 1px solid var(--line); }
.company-numbers article > span { color: #6b7e78; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.company-numbers strong { display: block; margin-top: 45px; font-family: "Cormorant", Georgia, serif; font-size: clamp(86px, 9vw, 145px); font-weight: 500; letter-spacing: -.07em; line-height: .7; }
.company-numbers p { max-width: 250px; margin: 55px 0 0; color: var(--ink-soft); font-size: 12px; }
.geography-section { padding: 140px 0 150px; color: #ecf1ed; background: var(--ink-deep); }
.geography-section__grid { display: grid; grid-template-columns: 1fr .75fr; align-items: end; gap: 120px; }
.geography-section h2 { margin-top: 50px; }
.geography-section p { max-width: 650px; margin: 35px 0 0; color: #9fb3ac; line-height: 1.75; }
.region-list { border-top: 1px solid var(--line-light); }
.region-list div { display: grid; grid-template-columns: 60px 1fr; align-items: center; min-height: 84px; border-bottom: 1px solid var(--line-light); }
.region-list span { color: #6d8b82; font-size: 9px; font-weight: 800; }
.region-list strong { font-family: "Cormorant", Georgia, serif; font-size: 28px; font-weight: 500; }
.company-next { padding: 135px 0 145px; background: #d8e1da; }
.company-next__inner { padding-top: 18px; border-top: 1px solid var(--line); }
.company-next h2 { max-width: 1150px; margin-top: 65px; }
.company-next__inner > div { display: flex; align-items: center; justify-content: flex-end; gap: 60px; margin-top: 55px; }
.company-next__inner p { max-width: 400px; margin: 0; color: var(--ink-soft); }

/* Partners */
.page-partners .site-header:not(.is-scrolled) { color: #f2f4f1; }
.page-partners .site-header:not(.is-scrolled) .site-header__inner { border-color: rgba(255,255,255,.18); }
.page-partners .site-header:not(.is-scrolled) .brand-mark__bottom, .page-partners .site-header:not(.is-scrolled) .site-nav a { color: #c3d2cc; }
.page-partners .site-header:not(.is-scrolled) .header-contact { color: var(--ink); background: var(--paper); }
.page-partners .site-header:not(.is-scrolled) .menu-toggle { border-color: rgba(255,255,255,.28); }
.partner-hero { position: relative; min-height: 850px; overflow: hidden; padding: 140px 0 58px; color: #f0f3ef; background: #102824; isolation: isolate; }
.partner-hero__orb { position: absolute; z-index: -1; top: -26%; right: -10%; width: min(75vw, 1000px); aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 38% 42%, rgba(155,201,187,.38), rgba(48,101,88,.18) 38%, transparent 69%); }
.partner-hero__orb::before, .partner-hero__orb::after { position: absolute; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; content: ""; }
.partner-hero__orb::before { inset: 10%; }
.partner-hero__orb::after { inset: 25%; }
.partner-hero__top { color: #9fb7af; border-color: rgba(255,255,255,.18); }
.partner-hero__grid { display: grid; grid-template-columns: 1.3fr .7fr; align-items: center; gap: 80px; min-height: 590px; }
.partner-hero h1 { margin: 0; font-size: clamp(76px, 8.6vw, 142px); font-weight: 600; letter-spacing: -.075em; line-height: .83; }
.partner-hero h1 em { color: #9ec2b6; font-family: "Cormorant", Georgia, serif; font-weight: 500; letter-spacing: -.045em; }
.partner-hero__grid > div:first-child > p { max-width: 600px; margin: 30px 0 35px; color: #a9bcb6; font-size: 17px; line-height: 1.75; }
.partner-hero__stamp { position: relative; display: flex; align-items: center; justify-content: center; flex-direction: column; width: min(30vw, 390px); aspect-ratio: 1; margin-left: auto; border: 1px solid rgba(255,255,255,.23); border-radius: 50%; transform: rotate(8deg); }
.partner-hero__stamp::before { position: absolute; inset: 20px; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; content: ""; }
.partner-hero__stamp span { font-size: clamp(30px, 3.2vw, 48px); font-weight: 800; letter-spacing: -.06em; }
.partner-hero__stamp strong { color: #9ec2b6; font-size: 10px; letter-spacing: .25em; }
.partner-hero__stamp small { position: absolute; bottom: 24%; color: #849c94; font-size: 8px; letter-spacing: .15em; text-transform: uppercase; }
.partner-hero__foot { display: grid; grid-template-columns: repeat(3,1fr); padding-top: 18px; border-top: 1px solid rgba(255,255,255,.18); color: #8fa59e; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.partner-hero__foot span:nth-child(2) { text-align: center; }
.partner-hero__foot span:last-child { text-align: right; }
.partner-process { padding: 145px 0 155px; background: var(--paper); }
.partner-process__head { display: grid; grid-template-columns: 1.15fr .55fr; align-items: end; gap: 90px; margin: 70px 0 80px; }
.partner-process__head p { margin: 0 0 8px; color: var(--ink-soft); line-height: 1.75; }
.process-steps { display: grid; grid-template-columns: repeat(4,1fr); margin: 0; padding: 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); list-style: none; }
.process-steps li { min-height: 300px; padding: 25px 26px; }
.process-steps li + li { border-left: 1px solid var(--line); }
.process-steps > li > span { color: #799087; font-size: 9px; font-weight: 800; }
.process-steps div { margin-top: 110px; }
.process-steps strong { font-family: "Cormorant", Georgia, serif; font-size: 27px; font-weight: 600; letter-spacing: -.025em; }
.process-steps p { margin: 14px 0 0; color: var(--ink-soft); font-size: 12px; line-height: 1.65; }
.buyer-kit { padding: 135px 0 145px; background: #cbd8d2; }
.buyer-kit__grid { display: grid; grid-template-columns: 1fr .8fr; align-items: end; gap: 120px; }
.buyer-kit h2 { margin-top: 50px; }
.buyer-kit__list { border-top: 1px solid var(--line); }
.buyer-kit__list div { display: grid; grid-template-columns: 60px 1fr; align-items: center; min-height: 82px; border-bottom: 1px solid var(--line); }
.buyer-kit__list span { color: #698078; font-size: 9px; font-weight: 800; }
.buyer-kit__list strong { font-size: 13px; }
.contact-stage { padding: 145px 0 155px; color: #f1f3ef; background: var(--ink-deep); }
.contact-stage__grid { display: grid; grid-template-columns: 1fr .76fr; align-items: end; gap: 120px; }
.contact-stage h2 { margin-top: 52px; }
.contact-stage > .shell > div > p { max-width: 620px; margin: 34px 0 0; color: #9eb2ab; line-height: 1.75; }
.contact-card { display: flex; align-items: flex-start; justify-content: space-between; flex-direction: column; min-height: 390px; padding: 34px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.045); transition: color 220ms ease, background 220ms ease, transform 300ms var(--ease); }
.contact-card:hover { color: var(--ink); background: #c5d9d1; transform: translateY(-6px); }
.contact-card small { color: #8ea59d; font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.contact-card strong { font-family: "Cormorant", Georgia, serif; font-size: clamp(40px, 4.2vw, 65px); font-weight: 500; letter-spacing: -.04em; line-height: .88; overflow-wrap: anywhere; }
.contact-card > span { display: flex; justify-content: space-between; width: 100%; padding-top: 15px; border-top: 1px solid currentColor; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.contact-card i { font-style: normal; font-size: 15px; }

/* Product page */
.product-stage { min-height: 850px; padding: 128px 0 70px; background: #dbe7e7; }
.product-stage--green { background: #dfe4d7; }
.product-stage__crumb { display: flex; align-items: center; gap: 10px; min-height: 44px; padding-bottom: 15px; border-bottom: 1px solid var(--line); color: #647770; font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.product-stage__crumb a { text-decoration: underline; text-underline-offset: 4px; }
.product-stage__crumb strong { color: var(--ink); }
.product-stage__grid { display: grid; grid-template-columns: 1.18fr .72fr; align-items: center; gap: 90px; min-height: 670px; }
.product-stage__visual { position: relative; display: flex; align-items: center; justify-content: center; align-self: stretch; overflow: hidden; }
.product-stage__ghost { position: absolute; top: 50%; left: 50%; color: rgba(255,255,255,.44); font-family: "Cormorant", Georgia, serif; font-size: clamp(150px, 15vw, 240px); font-weight: 600; letter-spacing: -.08em; transform: translate(-50%,-50%); white-space: nowrap; }
.product-stage__badge { position: absolute; z-index: 4; top: 10%; left: 5%; display: inline-flex; align-items: center; justify-content: center; width: 94px; height: 94px; border: 1px solid rgba(20,45,40,.22); border-radius: 50%; font-family: "Cormorant", Georgia, serif; font-size: 25px; font-weight: 600; }
.product-stage__visual img { position: relative; z-index: 2; width: 91%; max-height: 72%; object-fit: contain; filter: drop-shadow(0 32px 25px rgba(20,45,40,.2)); }
.product-stage--green .product-stage__visual img { width: auto; height: 76%; }
.product-stage__copy h1 { margin: 16px 0 8px; font-family: "Cormorant", Georgia, serif; font-size: clamp(72px, 7.3vw, 118px); font-weight: 600; letter-spacing: -.06em; line-height: .84; }
.product-stage__lead { margin: 0 0 28px !important; padding-bottom: 20px; border-bottom: 1px solid var(--line); color: var(--ink) !important; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.product-stage__copy > p { max-width: 520px; margin: 0 0 32px; color: var(--ink-soft); line-height: 1.75; }
.product-information { padding: 145px 0 155px; background: var(--paper); }
.product-information__grid { display: grid; grid-template-columns: 210px 1fr; gap: clamp(55px, 7vw, 120px); }
.product-information h2 { margin-top: -5px; }
.product-specs { margin: 70px 0 0; border-top: 1px solid var(--line); }
.product-specs > div { display: grid; grid-template-columns: 80px 1fr 1fr; align-items: center; min-height: 90px; border-bottom: 1px solid var(--line); }
.product-specs > div > span { color: #768a83; font-size: 9px; font-weight: 800; }
.product-specs dt { color: var(--ink-soft); font-size: 11px; font-weight: 600; }
.product-specs dd { margin: 0; font-family: "Cormorant", Georgia, serif; font-size: 27px; font-weight: 600; }
.product-information__note { max-width: 520px; margin: 35px 0 0 auto; color: var(--ink-soft); font-size: 12px; }
.related-section { padding: 120px 0 130px; background: #f8f6f0; }
.related-section__head { display: flex; align-items: end; justify-content: space-between; margin-bottom: 45px; }
.related-section__head h2 { margin: 0; font-family: "Cormorant", Georgia, serif; font-size: clamp(52px, 5vw, 78px); font-weight: 500; letter-spacing: -.045em; }
.related-card { display: grid; grid-template-columns: 1.05fr .75fr auto; align-items: center; gap: 70px; min-height: 360px; padding: 28px; background: #d9e5e5; }
.related-card--green { background: #dce1d3; }
.related-card__visual { position: relative; display: flex; align-items: center; justify-content: center; height: 300px; overflow: hidden; }
.related-card__visual img { width: 82%; max-height: 82%; object-fit: contain; filter: drop-shadow(0 20px 16px rgba(20,45,40,.18)); transition: transform 500ms var(--ease); }
.related-card--green .related-card__visual img { width: auto; height: 86%; }
.related-card:hover .related-card__visual img { transform: translateY(-7px) scale(1.02); }
.related-card > div > span { color: #667a73; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.related-card h3 { margin: 12px 0 8px; font-family: "Cormorant", Georgia, serif; font-size: 56px; font-weight: 600; letter-spacing: -.045em; line-height: .9; }
.related-card p { margin: 0; color: var(--ink-soft); }

/* Animation */
.hero-enter { opacity: 0; transform: translate3d(0, 20px, 0); }
.is-ready .hero-enter { opacity: 1; transform: translate3d(0,0,0); transition: opacity 700ms var(--ease), transform 820ms var(--ease); }
.is-ready .hero-enter:nth-child(2) { transition-delay: 70ms; }
.is-ready .hero-enter:nth-child(3) { transition-delay: 130ms; }
.is-ready .hero-enter:nth-child(4) { transition-delay: 190ms; }
.hero-product.hero-enter { transform: translate3d(0, 24px, 0); }
.is-ready .hero-product.hero-enter { transform: translate3d(calc(var(--tilt-x) * 7px), calc(var(--tilt-y) * 5px), 0); transition: opacity 850ms var(--ease), transform 120ms linear; }
.has-js [data-reveal] { opacity: 0; transform: translate3d(0, 20px, 0); }
.has-js [data-reveal].is-revealed { opacity: 1; transform: translate3d(0,0,0); transition: opacity 680ms var(--ease), transform 780ms var(--ease); }
@keyframes backdrop-breathe { from { transform: scale(1.015); } to { transform: scale(1.035); } }

/* Tablet */
@media (max-width: 1180px) {
  :root { --shell: min(100% - 48px, 1080px); }
  .site-nav { display: none; }
  .site-header__inner { grid-template-columns: 1fr auto; }
  .header-contact { display: none; }
  .menu-toggle { display: flex; }
  .mobile-menu { display: flex; flex-direction: column; }
  .mobile-menu.is-open { opacity: 1; pointer-events: auto; transform: translateY(0); }
  .mobile-menu nav { border-top: 1px solid rgba(255,255,255,.16); }
  .mobile-menu nav a { display: grid; grid-template-columns: 45px 1fr 44px; align-items: center; min-height: 82px; border-bottom: 1px solid rgba(255,255,255,.16); }
  .mobile-menu nav small { color: #77968c; font-size: 9px; }
  .mobile-menu nav span { font-family: "Cormorant", Georgia, serif; font-size: 38px; font-weight: 500; }
  .mobile-menu nav i { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; font-style: normal; }
  .mobile-menu__contact { display: flex; justify-content: space-between; margin-top: auto; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.16); color: #aac0b8; font-size: 12px; }
  .menu-open .site-header { color: #fff !important; }
  .menu-open .site-header::before { opacity: 0; }
  .menu-open .site-header__inner { border-color: rgba(255,255,255,.16); }
  .menu-open .brand-mark__bottom { color: #91b9ac !important; }
  .menu-open .menu-toggle { border-color: rgba(255,255,255,.28); }
  .studio-hero__grid { grid-template-columns: minmax(360px,.8fr) minmax(480px,1.2fr); }
  .studio-hero h1 { font-size: clamp(62px,7vw,82px); }
  .hero-product > img { width: 61vw; }
  .editorial-intro__grid, .company-manifesto__grid, .product-information__grid { grid-template-columns: 160px 1fr; gap: 60px; }
  .product-editorial-grid { grid-template-columns: 1fr 1fr; }
  .editorial-product { min-height: 650px; }
  .editorial-product__visual { height: 450px; }
  .business-story__grid, .geography-section__grid, .buyer-kit__grid, .contact-stage__grid { gap: 70px; }
  .page-hero__grid { gap: 55px; }
  .page-hero h1 { font-size: clamp(88px,13vw,150px); }
  .catalog-card__content { grid-template-columns: 1fr; gap: 18px; }
  .catalog-card__specs { grid-template-columns: 1fr; }
  .catalog-card__specs li { min-height: 64px; }
  .catalog-card__specs li + li { border-top: 1px solid var(--line); border-left: 0; }
  .process-steps { grid-template-columns: repeat(2,1fr); }
  .process-steps li:nth-child(3) { border-left: 0; border-top: 1px solid var(--line); }
  .process-steps li:nth-child(4) { border-top: 1px solid var(--line); }
  .product-stage__grid { gap: 50px; }
}

/* Mobile */
@media (max-width: 820px) {
  :root { --shell: calc(100vw - 30px); }
  body { font-size: 15px; }
  .site-header { height: 70px; }
  .site-header.is-scrolled { height: 64px; }
  .brand-mark__top { font-size: 17px; }
  .brand-mark__bottom { margin-top: 7px; font-size: 7px; }
  .menu-toggle { width: 44px; height: 44px; }
  .mobile-menu { padding: 100px 15px max(25px, env(safe-area-inset-bottom)); }
  .mobile-menu nav a { min-height: 76px; }
  .mobile-menu nav span { font-size: 34px; }
  .studio-hero { height: auto; min-height: 960px; max-height: none; }
  .studio-hero__backdrop { object-position: 61% center; animation: none; transform: none; }
  .studio-hero__wash { background: linear-gradient(180deg, rgba(244,241,233,.93) 0%, rgba(244,241,233,.76) 42%, rgba(244,241,233,.15) 67%, rgba(14,43,38,.2)); }
  .studio-hero__grid { display: flex; flex-direction: column; height: auto; padding: 108px 0 150px; }
  .studio-hero__copy { align-self: stretch; }
  .micro-label { margin-bottom: 19px; }
  .studio-hero h1 { max-width: 650px; font-size: clamp(53px,14.7vw,77px); line-height: .91; }
  .studio-hero__copy > p { max-width: 520px; margin-top: 21px; font-size: 14px; line-height: 1.6; }
  .studio-hero__actions { align-items: flex-start; flex-direction: column; gap: 8px; margin-top: 24px; }
  .studio-hero__actions .button { width: 100%; }
  .studio-hero__actions .text-link { align-self: center; }
  .hero-product { width: 100%; min-height: 370px; margin-top: -6px; }
  .hero-product > img { top: 49%; left: 53%; width: min(130vw, 690px); }
  .hero-product__edition { top: 12%; right: -4%; font-size: 180px; }
  .hero-product__shadow { right: -4%; bottom: 18%; width: 90%; }
  .hero-product__caption { right: 0; bottom: 5%; min-width: 220px; }
  .hero-ledger { right: 15px; left: 15px; grid-template-columns: 1fr 1fr 54px; width: auto; min-height: 82px; }
  .hero-ledger > div, .hero-ledger > a { min-height: 82px; padding: 12px 14px; }
  .hero-ledger > div:nth-child(3) { display: none; }
  .hero-ledger > a { min-width: 54px; padding: 5px; }
  .hero-ledger > a span { display: none; }
  .hero-ledger i { width: 44px; height: 44px; }
  .editorial-intro, .featured-collection, .category-atlas, .business-story, .final-invite, .company-manifesto, .geography-section, .company-next, .partner-process, .buyer-kit, .contact-stage, .product-information { padding: 92px 0 100px; }
  .editorial-intro__grid, .company-manifesto__grid, .product-information__grid { grid-template-columns: 1fr; gap: 45px; }
  .section-index { max-width: none; }
  .display-copy { font-size: clamp(48px, 13vw, 68px); }
  .editorial-intro__note { grid-template-columns: 1fr; gap: 35px; margin-top: 40px; }
  .round-link { width: 112px; height: 112px; }
  .collection-title { grid-template-columns: 1fr; gap: 25px; margin-bottom: 38px; }
  .collection-title h2 { font-size: 52px; }
  .collection-title > p { margin: 0; }
  .product-editorial-grid { grid-template-columns: 1fr; }
  .editorial-product { min-height: 570px; padding: 17px; }
  .editorial-product__visual { height: 395px; }
  .editorial-product__ghost { font-size: 110px; }
  .editorial-product__body { padding: 8px 2px 0; }
  .editorial-product__body h3 { font-size: 42px; }
  .product-arrow > span { display: none; }
  .collection-foot { align-items: flex-start; flex-direction: column; }
  .category-atlas__head, .business-story__grid, .geography-section__grid, .buyer-kit__grid, .contact-stage__grid, .partner-process__head { grid-template-columns: 1fr; gap: 40px; margin: 48px 0 50px; }
  .category-atlas h2, .business-story h2, .final-invite h2, .geography-section h2, .company-next h2, .partner-process h2, .buyer-kit h2, .contact-stage h2, .product-information h2 { font-size: clamp(51px,13vw,70px); }
  .category-list > * { grid-template-columns: 45px 1fr 54px; min-height: 88px; }
  .category-list small { display: none; }
  .category-list strong { font-size: 28px; }
  .category-list i { justify-self: end; width: 44px; height: 44px; }
  .business-story__facts { margin-top: 16px; }
  .business-story__facts article { grid-template-columns: 130px 1fr; }
  .business-story__facts strong { font-size: 58px; }
  .final-invite__inner h2, .company-next h2 { margin-top: 48px; }
  .final-invite__inner > div, .company-next__inner > div { align-items: flex-start; flex-direction: column; gap: 30px; margin-top: 40px; }
  .site-footer { padding-top: 70px; }
  .site-footer__top { grid-template-columns: 1fr; gap: 45px; padding-bottom: 52px; }
  .site-footer__word { margin-top: 35px; font-size: 31vw; }
  .site-footer__bottom { align-items: flex-start; flex-direction: column; gap: 10px; }
  .page-hero { min-height: 650px; padding: 112px 0 60px; }
  .page-hero__top { font-size: 8px; }
  .page-hero__grid, .page-hero__grid--wide { display: flex; align-items: stretch; flex-direction: column; justify-content: center; gap: 45px; min-height: 470px; }
  .page-hero h1, .page-hero--company h1 { font-size: clamp(68px,19vw,102px); line-height: .78; }
  .page-hero__aside { max-width: 520px; padding-bottom: 0; }
  .page-total { max-width: 240px; margin-bottom: 25px; }
  .page-hero__word { font-size: 35vw; }
  .company-seal { right: -17%; bottom: -5%; width: 60vw; }
  .catalog-section { padding: 42px 0 90px; }
  .catalog-toolbar { align-items: flex-start; flex-direction: column; gap: 18px; }
  .catalog-filters { width: 100%; }
  .catalog-filter { flex: 1 1 calc(50% - 8px); justify-content: space-between; }
  .catalog-grid { grid-template-columns: 1fr; }
  .catalog-card__visual { height: 350px; }
  .catalog-card__content { padding: 22px 20px; }
  .catalog-card__content h2 { font-size: 44px; }
  .catalog-card__actions { padding-inline: 20px; }
  .catalog-note { padding: 85px 0 95px; }
  .catalog-note__inner { grid-template-columns: 1fr; gap: 28px; }
  .catalog-note__inner > span { font-size: 34px; }
  .quick-dialog { max-height: calc(100svh - 18px); overflow-y: auto; }
  .quick-dialog__grid { grid-template-columns: 1fr; }
  .quick-dialog__media { min-height: 330px; }
  .quick-dialog__media img { max-height: 250px; }
  .quick-dialog__media--green img { height: 250px; }
  .quick-dialog__copy { padding: 44px 24px 35px; }
  .quick-dialog__copy h2 { font-size: 50px; }
  .company-manifesto__columns { grid-template-columns: 1fr; gap: 25px; margin-top: 40px; }
  .company-numbers { padding-bottom: 95px; }
  .company-numbers__grid { grid-template-columns: 1fr; }
  .company-numbers article { min-height: 230px; }
  .company-numbers article + article { border-top: 1px solid var(--line); border-left: 0; }
  .company-numbers strong { margin-top: 35px; font-size: 92px; }
  .company-numbers p { margin-top: 40px; }
  .region-list { margin-top: 10px; }
  .partner-hero { min-height: 850px; padding: 112px 0 40px; }
  .partner-hero__top { font-size: 8px; }
  .partner-hero__grid { grid-template-columns: 1fr; gap: 35px; min-height: 640px; padding: 50px 0; }
  .partner-hero h1 { font-size: clamp(59px,15vw,82px); }
  .partner-hero__grid > div:first-child > p { font-size: 14px; }
  .partner-hero__stamp { display: none; }
  .partner-hero__foot { grid-template-columns: 1fr 1fr; gap: 15px; }
  .partner-hero__foot span:nth-child(2) { text-align: right; }
  .partner-hero__foot span:last-child { display: none; }
  .process-steps { grid-template-columns: 1fr; }
  .process-steps li { min-height: 220px; }
  .process-steps li + li { border-top: 1px solid var(--line); border-left: 0; }
  .process-steps div { margin-top: 60px; }
  .buyer-kit__grid, .contact-stage__grid { margin: 0; }
  .contact-card { min-height: 310px; margin-top: 15px; padding: 24px; }
  .product-stage { min-height: 0; padding: 100px 0 70px; }
  .product-stage__crumb { overflow: hidden; white-space: nowrap; }
  .product-stage__grid { display: flex; flex-direction: column; gap: 10px; min-height: 0; }
  .product-stage__visual { width: 100%; min-height: 430px; }
  .product-stage__ghost { font-size: 34vw; }
  .product-stage__visual img { width: 112%; max-width: none; }
  .product-stage--green .product-stage__visual img { width: auto; height: 350px; }
  .product-stage__badge { top: 9%; left: 0; width: 76px; height: 76px; font-size: 21px; }
  .product-stage__copy { align-self: stretch; padding-top: 15px; }
  .product-stage__copy h1 { font-size: 68px; }
  .product-specs { margin-top: 45px; }
  .product-specs > div { grid-template-columns: 42px 1fr; gap: 10px; padding: 18px 0; }
  .product-specs dd { grid-column: 2; margin-top: 6px; font-size: 24px; }
  .product-information__note { margin-left: 0; }
  .related-section { padding: 85px 0 95px; }
  .related-section__head { align-items: flex-start; flex-direction: column; gap: 10px; }
  .related-section__head h2 { font-size: 48px; }
  .related-card { grid-template-columns: 1fr auto; gap: 20px; padding: 18px; }
  .related-card__visual { grid-column: 1 / -1; height: 280px; }
  .related-card h3 { font-size: 45px; }
}

@media (max-width: 450px) {
  .studio-hero { min-height: 930px; }
  .studio-hero__grid { padding-bottom: 138px; }
  .studio-hero h1 { font-size: 53px; }
  .micro-label { font-size: 8px; }
  .hero-product { min-height: 315px; }
  .hero-product > img { width: 138vw; }
  .hero-product__caption { min-width: 205px; padding: 12px; }
  .hero-ledger { grid-template-columns: 1fr 52px; }
  .hero-ledger > div:nth-child(2) { display: none; }
  .display-copy { font-size: 47px; }
  .editorial-product { min-height: 520px; }
  .editorial-product__visual { height: 350px; }
  .editorial-product__body h3 { font-size: 38px; }
  .category-atlas h2, .business-story h2, .final-invite h2, .geography-section h2, .company-next h2, .partner-process h2, .buyer-kit h2, .contact-stage h2, .product-information h2 { font-size: 49px; }
  .category-list strong { font-size: 25px; }
  .category-list > * { grid-template-columns: 36px 1fr 46px; }
  .business-story__facts article { grid-template-columns: 105px 1fr; }
  .catalog-filter { flex-basis: 100%; }
  .catalog-card__visual { height: 300px; }
  .catalog-card__actions { align-items: flex-start; flex-direction: column; gap: 7px; }
  .page-hero h1, .page-hero--company h1 { font-size: 68px; }
  .partner-hero h1 { font-size: 58px; }
  .contact-card strong { font-size: 39px; }
  .product-stage__visual { min-height: 350px; }
  .product-stage__copy h1 { font-size: 58px; }
}

/* V14 — the catalogue is a compact mobile product browser, not a desktop grid. */
.catalog-toolbar__bottom, .catalog-view { display: flex; align-items: center; }
.catalog-toolbar__bottom { justify-content: space-between; gap: 18px; }
.catalog-view { gap: 2px; padding: 3px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.45); }
.catalog-view button { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 38px; padding: 0; border: 0; border-radius: 9px; color: #526b63; background: transparent; cursor: pointer; }
.catalog-view button[aria-pressed="true"] { color: #fff; background: var(--ink); }
.catalog-view button > span { display: grid; gap: 3px; width: 17px; height: 17px; }
.catalog-view__one { grid-template-columns: 1fr; }
.catalog-view__two { grid-template-columns: repeat(2, 1fr); }
.catalog-view__three { grid-template-columns: repeat(3, 1fr); }
.catalog-view button > span::before, .catalog-view button > span::after { display: block; border: 1px solid currentColor; content: ""; }
.catalog-view__one::after { display: none !important; }
.catalog-view__two::after { content: ""; }

@media (max-width: 820px) {
  .page-catalog .catalog-hero {
    min-height: 0;
    padding: 76px 0 0;
  }

  .page-catalog .catalog-hero__top { display: none; }
  .page-catalog .catalog-hero__grid {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    align-items: end;
    gap: 8px;
    min-height: 0;
    padding: 26px 0 18px;
  }

  .page-catalog .catalog-hero__copy { padding: 0; }
  .page-catalog .catalog-hero__copy .eyebrow { display: none; }
  .page-catalog .catalog-hero h1 { margin: 0 0 12px; font-size: clamp(38px, 11.2vw, 52px); line-height: .84; }
  .page-catalog .catalog-hero__copy > p { margin: 0; font-size: 11px; line-height: 1.55; }
  .page-catalog .catalog-hero__facts { grid-template-columns: 1fr 1fr; gap: 0; margin-top: 17px; border: 0; }
  .page-catalog .catalog-hero__facts > div { display: block; min-height: 0; padding: 0; border: 0 !important; }
  .page-catalog .catalog-hero__facts strong { display: block; font-size: 33px; }
  .page-catalog .catalog-hero__facts span { display: block; margin-top: 5px; font-size: 8px; line-height: 1.25; }
  .page-catalog .catalog-hero__showcase { min-height: 242px; }
  .page-catalog .catalog-hero__wipes { top: 26%; left: -16%; width: 108%; transform: rotate(-3deg); }
  .page-catalog .catalog-hero__paper { right: -2%; bottom: 2%; height: 54%; transform: rotate(5deg); }
  .page-catalog .catalog-hero__badge, .page-catalog .catalog-hero__showcase small, .page-catalog .catalog-hero__categories { display: none; }

  .page-catalog .catalog-section { padding: 22px 0 54px; }
  .page-catalog .catalog-toolbar { display: block; margin-bottom: 18px; padding: 0; border: 0; }
  .page-catalog .catalog-filters { flex-wrap: nowrap; width: calc(100% + 40px); margin-inline: -20px; padding: 0 20px 13px; overflow-x: auto; scrollbar-width: none; }
  .page-catalog .catalog-filters::-webkit-scrollbar { display: none; }
  .page-catalog .catalog-filter { flex: 0 0 auto; min-height: 40px; padding: 0 14px; font-size: 10px; white-space: nowrap; }
  .page-catalog .catalog-filter small { display: none; }
  .page-catalog .catalog-toolbar__bottom { padding-top: 4px; border-top: 1px solid rgba(20,45,40,.1); }
  .page-catalog .catalog-result::before { content: "Вид каталога"; display: block; margin-bottom: 2px; color: #6d807a; font-size: 8px; letter-spacing: .12em; }
  .page-catalog .catalog-result { font-size: 9px; }

  .page-catalog .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .page-catalog .catalog-grid[data-columns="1"] { grid-template-columns: minmax(0, 1fr); }
  .page-catalog .catalog-grid[data-columns="3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
  .page-catalog .catalog-card { border: 1px solid rgba(20,45,40,.14); background: rgba(255,255,255,.54) !important; }
  .page-catalog .catalog-card__top { display: flex; justify-content: space-between; gap: 7px; margin: 10px 10px 0; padding-bottom: 8px; font-size: 7px; letter-spacing: .07em; }
  .page-catalog .catalog-card__top span:nth-child(2) { text-align: left; }
  .page-catalog .catalog-card__top span:last-child { display: none; }
  .page-catalog .catalog-card__visual { height: 158px; }
  .page-catalog .catalog-card__visual img { width: 91%; max-height: 83%; filter: drop-shadow(0 12px 10px rgba(20,45,40,.15)); }
  .page-catalog .catalog-card--green .catalog-card__visual img { width: auto; height: 78%; }
  .page-catalog .catalog-card__content { display: block; padding: 12px; border-top: 1px solid rgba(20,45,40,.11); }
  .page-catalog .catalog-card__content small { display: none; }
  .page-catalog .catalog-card__content h2 { margin: 0; font-size: clamp(23px, 6vw, 31px); line-height: .94; }
  .page-catalog .catalog-card__content p { display: none; }
  .page-catalog .catalog-card__specs { display: block; padding: 0 12px 10px; border: 0; list-style: none; }
  .page-catalog .catalog-card__specs li { position: relative; min-height: 0; padding: 2px 0 2px 11px; border: 0 !important; }
  .page-catalog .catalog-card__specs li::before { position: absolute; top: 8px; left: 0; width: 4px; height: 4px; border: 1px solid #638078; border-radius: 50%; content: ""; }
  .page-catalog .catalog-card__specs span { display: none; }
  .page-catalog .catalog-card__specs strong { display: block; font-size: 8px; font-weight: 600; line-height: 1.25; }
  .page-catalog .catalog-card__actions { align-items: center; flex-direction: row; gap: 6px; padding: 8px 12px 11px; border-top: 1px solid rgba(20,45,40,.11); }
  .page-catalog .catalog-card__actions button { flex: 1; justify-content: space-between; min-height: 32px; padding: 0 8px; border: 1px solid rgba(20,45,40,.14); border-radius: 7px; font-size: 8px; }
  .page-catalog .catalog-card__actions button span { display: inline-flex; align-items: center; justify-content: center; width: 21px; height: 21px; border: 1px solid rgba(20,45,40,.18); border-radius: 50%; }
  .page-catalog .catalog-card__actions button .icon-arrow { width: 11px; height: 11px; }
  .page-catalog .catalog-card__actions a { display: inline-flex; align-items: center; justify-content: center; width: 32px; min-height: 32px; border: 1px solid rgba(20,45,40,.18); border-radius: 50%; }
  .page-catalog .catalog-card__actions a .icon-arrow { width: 13px; height: 13px; }

  .page-catalog .catalog-grid[data-columns="1"] .catalog-card__visual { height: 235px; }
  .page-catalog .catalog-grid[data-columns="1"] .catalog-card__content h2 { font-size: 39px; }
  .page-catalog .catalog-grid[data-columns="1"] .catalog-card__specs strong { font-size: 10px; }
  .page-catalog .catalog-grid[data-columns="3"] .catalog-card__top { margin: 8px 7px 0; font-size: 6px; }
  .page-catalog .catalog-grid[data-columns="3"] .catalog-card__visual { height: 96px; }
  .page-catalog .catalog-grid[data-columns="3"] .catalog-card__content { padding: 8px; }
  .page-catalog .catalog-grid[data-columns="3"] .catalog-card__content h2 { font-size: 17px; }
  .page-catalog .catalog-grid[data-columns="3"] .catalog-card__specs, .page-catalog .catalog-grid[data-columns="3"] .catalog-card__actions button { display: none; }
  .page-catalog .catalog-grid[data-columns="3"] .catalog-card__actions { justify-content: flex-end; padding: 7px; }
}

/* Product shape presets shared by the catalog, quick view and product page. */
.editorial-product--rose .editorial-product__visual img,
.catalog-card--rose .catalog-card__visual img,
.related-card--rose .related-card__visual img {
  width: 88%;
  height: auto;
}

.quick-dialog__media--rose img {
  width: 82%;
  height: auto;
}

.editorial-product--violet .editorial-product__visual img,
.catalog-card--violet .catalog-card__visual img,
.related-card--violet .related-card__visual img {
  width: auto;
  height: 78%;
}

.quick-dialog__media--violet img {
  width: auto;
  height: 72%;
}

.product-stage--rose .product-stage__visual img {
  width: 86%;
  height: auto;
  max-height: 470px;
}

.product-stage--violet .product-stage__visual img {
  width: auto;
  height: 70%;
  max-height: 540px;
}

.editorial-product--rose,
.catalog-card--rose,
.related-card--rose,
.quick-dialog__media--rose {
  background: rgba(239, 226, 228, .56) !important;
}

.editorial-product--violet,
.catalog-card--violet,
.related-card--violet,
.quick-dialog__media--violet {
  background: rgba(224, 225, 237, .58) !important;
}

@media (max-width: 620px) {
  .product-stage--rose .product-stage__visual img { width: 92%; height: auto; }
  .product-stage--violet .product-stage__visual img { width: auto; height: 320px; }
}

/* V5 — denser editorial composition and ambient depth */
.studio-hero { --ambient-x: 0; --ambient-y: 0; }
.studio-hero__ambient { position: absolute; z-index: -1; inset: 0; overflow: hidden; pointer-events: none; transform: translate3d(calc(var(--ambient-x) * 9px), calc(var(--ambient-y) * 6px), 0); }
.studio-hero__ambient > span { position: absolute; display: block; will-change: transform, opacity; }
.ambient-caustics { right: -8%; bottom: -13%; width: 72%; height: 62%; opacity: .34; background: radial-gradient(ellipse at 15% 52%, transparent 0 17%, rgba(255,255,255,.58) 18% 20%, transparent 22% 100%), radial-gradient(ellipse at 45% 43%, transparent 0 20%, rgba(255,255,255,.42) 21% 23%, transparent 25% 100%), radial-gradient(ellipse at 75% 60%, transparent 0 16%, rgba(255,255,255,.48) 17% 19%, transparent 21% 100%); transform: rotate(-8deg) scale(1.12); animation: ambient-water 11s ease-in-out infinite alternate; }
.ambient-sweep { top: -25%; left: 43%; width: 18%; height: 150%; opacity: .15; background: linear-gradient(90deg, transparent, rgba(255,255,255,.86), transparent); transform: rotate(22deg); animation: ambient-sweep 9s ease-in-out infinite; }
.ambient-ring { right: 22%; bottom: 21%; width: 240px; height: 80px; border: 1px solid rgba(255,255,255,.62); border-radius: 50%; opacity: 0; transform: scale(.45); animation: ambient-ripple 7s ease-out infinite; }
.ambient-ring--two { right: 7%; bottom: 12%; width: 310px; height: 98px; animation-delay: 3.2s; }
.studio-hero.is-ambient-paused .studio-hero__ambient > span { animation-play-state: paused; }

.editorial-intro { padding: 122px 0 76px; }
.editorial-intro__grid { grid-template-columns: minmax(220px, .25fr) minmax(0, 1fr); gap: clamp(54px, 6vw, 105px); }
.intro-aside { display: flex; flex-direction: column; min-height: 570px; }
.intro-aside > p { margin: auto 0 0; color: #6b7f78; font-size: 9px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.material-study { position: relative; flex: 1; min-height: 390px; margin-top: 30px; overflow: hidden; border: 1px solid var(--line); background: linear-gradient(150deg, rgba(255,255,255,.68), rgba(188,211,202,.28)); isolation: isolate; }
.material-study::before { position: absolute; inset: 0; background: linear-gradient(115deg, transparent 20%, rgba(255,255,255,.78) 43%, transparent 62%); content: ""; transform: translateX(-80%); animation: material-glint 8s ease-in-out infinite; }
.material-study::after { position: absolute; right: -18%; bottom: -8%; width: 115%; height: 45%; border: 1px solid rgba(20,45,40,.16); border-radius: 50%; content: ""; transform: rotate(-8deg); }
.material-study__sheet { position: absolute; left: 50%; width: 72%; height: 46%; border: 1px solid rgba(20,45,40,.12); border-radius: 54% 46% 56% 44% / 42% 58% 45% 55%; background: rgba(255,255,255,.5); box-shadow: 0 18px 35px rgba(31,64,56,.06); transform-origin: center; }
.material-study__sheet--one { top: 20%; transform: translateX(-50%) rotate(-12deg); }
.material-study__sheet--two { top: 31%; transform: translateX(-42%) rotate(8deg); }
.material-study__sheet--three { top: 42%; background: rgba(213,229,223,.72); transform: translateX(-56%) rotate(-2deg); }
.material-study__seal { position: absolute; z-index: 4; right: 13%; bottom: 13%; display: flex; align-items: center; justify-content: center; flex-direction: column; width: 86px; height: 86px; border: 1px solid rgba(20,45,40,.3); border-radius: 50%; background: rgba(244,241,233,.87); transform: rotate(9deg); }
.material-study__seal strong { font-family: "Cormorant", Georgia, serif; font-size: 32px; line-height: .8; }
.material-study__seal small { margin-top: 7px; font-size: 7px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.material-study > i { position: absolute; top: 10%; left: 9%; width: 8px; height: 8px; border-radius: 50%; background: #5e8378; box-shadow: 0 18px 0 rgba(94,131,120,.55), 0 36px 0 rgba(94,131,120,.25); }
.intro-proof { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 72px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.intro-proof article { min-height: 154px; padding: 24px 24px 24px 0; }
.intro-proof article + article { padding-left: 24px; border-left: 1px solid var(--line); }
.intro-proof article > span { color: #779088; font-size: 9px; font-weight: 800; }
.intro-proof strong { display: block; margin-top: 22px; font-size: 12px; }
.intro-proof p { max-width: 250px; margin: 7px 0 0; color: var(--ink-soft); font-size: 11px; line-height: 1.6; }

.category-atlas { position: relative; overflow: hidden; padding: 130px 0 142px; color: var(--ink); background: linear-gradient(180deg, #f9f7f1 0, #dde8e2 18%, #cadbd3 100%); isolation: isolate; }
.category-atlas::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(120deg, transparent 0 55%, rgba(255,255,255,.32) 55% 56%, transparent 56% 100%); content: ""; }
.category-atlas::after { position: absolute; z-index: -1; top: 14px; right: 3%; color: rgba(255,255,255,.28); content: "CATEGORIES"; font-size: clamp(74px, 13vw, 198px); font-weight: 800; letter-spacing: -.085em; line-height: .78; }
.category-atlas__graphics { position: absolute; z-index: -1; inset: 0; pointer-events: none; }
.category-atlas__graphics span { position: absolute; display: block; border: 1px solid rgba(20,45,40,.1); border-radius: 50%; }
.category-atlas__graphics span:nth-child(1) { top: 4%; right: -9%; width: 42vw; aspect-ratio: 1; }
.category-atlas__graphics span:nth-child(2) { top: 18%; right: 2%; width: 24vw; aspect-ratio: 1; }
.category-atlas__graphics span:nth-child(3) { right: 18%; bottom: -28%; width: 33vw; aspect-ratio: 1; background: rgba(255,255,255,.11); }
.category-atlas .section-index--light { color: #607870; border-color: var(--line); }
.category-atlas__head { position: relative; z-index: 1; }
.category-atlas__head p { color: #506961; }
.category-atlas h2 em { color: #557f73; }
.category-list { position: relative; z-index: 1; border-color: var(--line); }
.category-list > * { border-color: var(--line); }
.category-list span { color: #638077; }
.category-list small { color: #60786f; }
.category-list i { border-color: rgba(20,45,40,.22); }
.category-list a:hover { color: #224f45; background: rgba(255,255,255,.3); }
.category-list a:hover i { color: #fff; background: var(--ink); }

.business-story { padding: 122px 0 132px; background: #b7cbc2; }
.business-story__grid { grid-template-columns: minmax(0, 1.08fr) minmax(250px, .62fr) minmax(250px, .64fr); align-items: stretch; gap: 28px; }
.business-story__copy { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; padding-right: 34px; }
.business-story__copy h2 { font-size: clamp(54px, 4.8vw, 82px); }
.business-story__copy .button { margin-top: 2px; }
.business-story__visual { position: relative; min-height: 500px; overflow: hidden; border: 1px solid rgba(20,45,40,.16); background: linear-gradient(145deg, rgba(244,241,233,.65), rgba(214,229,223,.32)); isolation: isolate; }
.business-story__word { position: absolute; top: 8%; left: -4%; color: rgba(255,255,255,.64); font-family: "Cormorant", Georgia, serif; font-size: 104px; font-weight: 600; letter-spacing: -.08em; line-height: .8; transform: rotate(-90deg) translateX(-100%); transform-origin: top left; }
.business-story__visual img { position: absolute; z-index: 2; max-width: none; filter: drop-shadow(0 23px 17px rgba(20,45,40,.17)); }
.business-story__wipes { top: 23%; left: -24%; width: 138%; transform: rotate(-6deg); }
.business-story__paper { right: -2%; bottom: -13%; height: 62%; width: auto; transform: rotate(5deg); }
.business-story__visual small { position: absolute; z-index: 4; top: 20px; right: 20px; color: #49625b; font-size: 8px; font-weight: 800; letter-spacing: .12em; text-align: right; text-transform: uppercase; }
.business-story__facts { align-self: stretch; border-color: rgba(20,45,40,.22); }
.business-story__facts article { min-height: 166px; padding-inline: 22px; border-color: rgba(20,45,40,.22); grid-template-columns: 1fr; align-content: center; }
.business-story__facts strong { font-size: 66px; }
.business-story__facts span { margin-top: 16px; }

.catalog-hero { position: relative; min-height: 790px; overflow: hidden; padding: 120px 0 0; background: linear-gradient(135deg, #eef1ea 0%, #d9e6e1 52%, #c9dcd4 100%); isolation: isolate; }
.catalog-hero__top { position: relative; z-index: 3; display: flex; justify-content: space-between; padding-top: 16px; border-top: 1px solid var(--line); color: #5c746c; font-size: 9px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.catalog-hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(460px, .92fr) minmax(520px, 1.08fr); align-items: center; gap: 60px; min-height: 570px; }
.catalog-hero__copy { padding: 42px 0 40px; }
.catalog-hero h1 { margin: 16px 0 26px; font-size: clamp(72px, 7.4vw, 118px); font-weight: 700; letter-spacing: -.075em; line-height: .82; }
.catalog-hero h1 em { color: #507a6e; font-family: "Cormorant", Georgia, serif; font-weight: 500; letter-spacing: -.045em; }
.catalog-hero__copy > p { max-width: 620px; margin: 0; color: #465f58; line-height: 1.75; }
.catalog-hero__facts { display: grid; grid-template-columns: repeat(2, minmax(150px, 220px)); margin-top: 38px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.catalog-hero__facts > div { display: flex; align-items: center; gap: 16px; min-height: 92px; }
.catalog-hero__facts > div + div { padding-left: 24px; border-left: 1px solid var(--line); }
.catalog-hero__facts strong { font-family: "Cormorant", Georgia, serif; font-size: 56px; font-weight: 600; letter-spacing: -.06em; line-height: .8; }
.catalog-hero__facts span { color: #5e736c; font-size: 9px; font-weight: 700; line-height: 1.45; }
.catalog-hero__showcase { position: relative; align-self: stretch; min-height: 560px; overflow: hidden; }
.catalog-hero__showcase::before { position: absolute; top: 9%; right: 1%; bottom: 8%; left: 6%; border: 1px solid rgba(20,45,40,.13); border-radius: 50% 50% 48% 52% / 45% 54% 46% 55%; background: radial-gradient(circle at 52% 40%, rgba(255,255,255,.62), rgba(255,255,255,.08) 58%, transparent 59%); content: ""; transform: rotate(-5deg); }
.catalog-hero__word { position: absolute; z-index: 0; top: 44%; left: 50%; color: rgba(255,255,255,.56); font-family: "Cormorant", Georgia, serif; font-size: clamp(130px, 13vw, 205px); font-weight: 600; letter-spacing: -.08em; line-height: .8; transform: translate(-50%,-50%); }
.catalog-hero__showcase img { position: absolute; z-index: 2; max-width: none; filter: drop-shadow(0 28px 21px rgba(20,45,40,.2)); }
.catalog-hero__wipes { top: 25%; left: -2%; width: 92%; transform: rotate(-4deg); }
.catalog-hero__paper { right: 2%; bottom: 1%; height: 68%; width: auto; transform: rotate(5deg); }
.catalog-hero__badge { position: absolute; z-index: 5; top: 10%; right: 5%; display: flex; align-items: center; justify-content: center; width: 112px; height: 112px; border: 1px solid rgba(20,45,40,.25); border-radius: 50%; color: #50675f; background: rgba(243,241,233,.7); font-size: 8px; font-weight: 800; letter-spacing: .1em; text-align: center; text-transform: uppercase; transform: rotate(7deg); }
.catalog-hero__showcase small { position: absolute; z-index: 5; right: 4%; bottom: 4%; color: #536a63; font-size: 8px; font-weight: 800; letter-spacing: .1em; text-align: right; text-transform: uppercase; }
.catalog-hero__categories { position: relative; z-index: 3; display: grid; grid-template-columns: repeat(3, 1fr); min-height: 96px; border-top: 1px solid var(--line); border-right: 1px solid var(--line); border-left: 1px solid var(--line); background: rgba(246,245,238,.65); backdrop-filter: blur(8px); }
.catalog-hero__categories span { display: flex; align-items: center; gap: 18px; padding: 18px 24px; font-size: 10px; font-weight: 700; }
.catalog-hero__categories span + span { border-left: 1px solid var(--line); }
.catalog-hero__categories i { color: #6f877f; font-size: 8px; font-style: normal; font-weight: 800; }
.catalog-hero__graphics { position: absolute; z-index: -1; inset: 0; pointer-events: none; }
.catalog-hero__orb { position: absolute; display: block; border: 1px solid rgba(20,45,40,.08); border-radius: 50%; }
.catalog-hero__orb--one { top: 16%; right: -10%; width: 46vw; aspect-ratio: 1; }
.catalog-hero__orb--two { right: 23%; bottom: -30%; width: 27vw; aspect-ratio: 1; background: rgba(255,255,255,.12); }
.catalog-hero__line { position: absolute; top: -15%; right: 35%; width: 1px; height: 135%; background: rgba(20,45,40,.07); transform: rotate(18deg); }
.catalog-section { padding-top: 100px; background: linear-gradient(180deg, #c9dcd4 0, #f8f6f0 100px, #f8f6f0 100%); }
.featured-collection { padding-top: 104px; }

.product-information { padding: 118px 0 138px; background: linear-gradient(155deg, #f5f2ea 0%, #e4ece7 100%); }
.product-information--green { background: linear-gradient(155deg, #f5f2ea 0%, #e4eadb 100%); }
.product-information__top { display: grid; grid-template-columns: minmax(300px, .88fr) minmax(0, 1.12fr); gap: 54px; align-items: start; margin-bottom: 38px; }
.product-information__top > span { padding-top: 12px; border-top: 1px solid var(--line); color: #61766f; font-size: 9px; font-weight: 800; letter-spacing: .14em; text-align: right; text-transform: uppercase; }
.product-information__layout { display: grid; grid-template-columns: minmax(360px, .88fr) minmax(0, 1.12fr); align-items: stretch; gap: 54px; }
.product-information__media { position: relative; min-height: 620px; overflow: hidden; border: 1px solid var(--line); background: linear-gradient(145deg, #d5e4e3, #bdd4d3); isolation: isolate; }
.product-information__media--green { background: linear-gradient(145deg, #e1e6d7, #c5d2bc); }
.product-information__media::after { position: absolute; right: -12%; bottom: -17%; width: 82%; aspect-ratio: 1; border: 1px solid rgba(20,45,40,.15); border-radius: 50%; content: ""; }
.product-information__word { position: absolute; top: 8%; left: -2%; color: rgba(255,255,255,.5); font-family: "Cormorant", Georgia, serif; font-size: clamp(100px, 10vw, 155px); font-weight: 600; letter-spacing: -.08em; line-height: .8; }
.product-information__number { position: absolute; z-index: 4; top: 22px; right: 22px; color: #567069; font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.product-information__media img { position: absolute; z-index: 2; top: 50%; left: 50%; width: 122%; max-width: none; filter: drop-shadow(0 28px 22px rgba(20,45,40,.22)); transform: translate3d(-55%,-42%,0) rotate(-5deg); }
.product-information__media--green img { width: auto; height: 88%; transform: translate3d(-43%,-43%,0) rotate(4deg); }
.product-information__media small { position: absolute; z-index: 4; right: 24px; bottom: 22px; color: #4b655d; font-size: 8px; font-weight: 800; letter-spacing: .12em; text-align: right; text-transform: uppercase; }
.product-information__content { display: flex; align-items: stretch; flex-direction: column; justify-content: center; padding: 26px 0; }
.product-information h2 { margin: 14px 0 0; font-size: clamp(58px, 5.4vw, 90px); }
.product-information__lead { max-width: 650px; margin: 28px 0 0; color: #496159; line-height: 1.75; }
.product-specs { margin-top: 42px; }
.product-specs > div { grid-template-columns: 58px minmax(120px,.72fr) 1fr; min-height: 84px; }
.product-information__footer { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 32px; margin-top: 30px; }
.product-information__footer p { max-width: 430px; margin: 0; color: var(--ink-soft); font-size: 11px; line-height: 1.65; }
.product-information__footer a { display: inline-flex; align-items: center; gap: 20px; min-height: 44px; border-bottom: 1px solid currentColor; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }

@keyframes ambient-water { from { opacity: .22; transform: translate3d(-2%,2%,0) rotate(-8deg) scale(1.08); } to { opacity: .43; transform: translate3d(3%,-2%,0) rotate(-4deg) scale(1.16); } }
@keyframes ambient-sweep { 0%, 15% { opacity: 0; transform: translate3d(-170%,0,0) rotate(22deg); } 45%, 65% { opacity: .18; } 85%, 100% { opacity: 0; transform: translate3d(240%,0,0) rotate(22deg); } }
@keyframes ambient-ripple { 0%, 15% { opacity: 0; transform: scale(.45); } 30% { opacity: .46; } 78%, 100% { opacity: 0; transform: scale(1.75); } }
@keyframes material-glint { 0%, 25% { transform: translateX(-90%); } 65%, 100% { transform: translateX(120%); } }

@media (max-width: 1180px) {
  .intro-aside { min-height: 520px; }
  .intro-proof { grid-template-columns: 1fr; }
  .intro-proof article { display: grid; grid-template-columns: 42px 1fr; min-height: 112px; padding: 20px 0; }
  .intro-proof article + article { padding-left: 0; border-top: 1px solid var(--line); border-left: 0; }
  .intro-proof strong { margin-top: 0; }
  .intro-proof p { max-width: 420px; }
  .business-story__grid { grid-template-columns: 1fr .82fr; gap: 42px; }
  .business-story__copy { grid-column: 1 / -1; padding-right: 0; }
  .business-story__visual { min-height: 430px; }
  .business-story__facts article { min-height: 143px; }
  .catalog-hero__grid { grid-template-columns: minmax(380px,.9fr) minmax(430px,1.1fr); gap: 24px; }
  .catalog-hero h1 { font-size: clamp(72px,9vw,96px); }
  .catalog-hero__wipes { left: -7%; width: 103%; }
  .product-information__top, .product-information__layout { grid-template-columns: minmax(320px,.82fr) minmax(0,1.18fr); gap: 38px; }
  .product-information__media { min-height: 570px; }
}

@media (max-width: 820px) {
  .studio-hero__ambient { transform: none; }
  .ambient-caustics { right: -35%; bottom: -1%; width: 135%; height: 46%; opacity: .26; }
  .ambient-sweep { display: none; }
  .ambient-ring { right: 6%; bottom: 15%; }
  .ambient-ring--two { right: -24%; bottom: 10%; }
  .editorial-intro { padding: 86px 0 58px; }
  .editorial-intro__grid { grid-template-columns: 1fr; gap: 42px; }
  .intro-aside { display: grid; grid-template-columns: 1fr; min-height: 0; }
  .material-study { min-height: 320px; margin-top: 24px; }
  .intro-aside > p { margin-top: 16px; }
  .intro-proof { margin-top: 52px; }
  .featured-collection { padding-top: 76px; }
  .category-atlas { padding: 76px 0 104px; background: linear-gradient(180deg, #f9f7f1 0, #dde8e2 11%, #cadbd3 100%); }
  .category-atlas::after { top: 24px; right: -3%; font-size: 23vw; }
  .category-atlas__graphics span:nth-child(1) { top: 13%; right: -35%; width: 100vw; }
  .category-atlas__graphics span:nth-child(2) { display: none; }
  .business-story { padding: 92px 0 100px; }
  .business-story__grid { grid-template-columns: 1fr; gap: 38px; margin: 0 auto; }
  .business-story__copy { grid-column: auto; }
  .business-story__visual { min-height: 390px; }
  .business-story__facts { margin-top: 0; }
  .business-story__facts article { grid-template-columns: 120px 1fr; min-height: 116px; padding-inline: 12px; }
  .business-story__facts strong { font-size: 56px; }
  .business-story__facts span { margin-top: 0; }
  .catalog-hero { min-height: 0; padding-top: 102px; }
  .catalog-hero__top { font-size: 8px; }
  .catalog-hero__grid { grid-template-columns: 1fr; gap: 6px; min-height: 0; }
  .catalog-hero__copy { padding: 60px 0 12px; }
  .catalog-hero h1 { font-size: clamp(60px,17vw,82px); line-height: .84; }
  .catalog-hero__copy > p { font-size: 14px; }
  .catalog-hero__facts { grid-template-columns: 1fr 1fr; }
  .catalog-hero__facts > div { min-height: 80px; }
  .catalog-hero__facts strong { font-size: 48px; }
  .catalog-hero__showcase { min-height: 430px; }
  .catalog-hero__showcase::before { top: 2%; right: -3%; bottom: 2%; left: -3%; }
  .catalog-hero__word { font-size: 32vw; }
  .catalog-hero__wipes { top: 28%; left: -17%; width: 119%; }
  .catalog-hero__paper { right: -2%; height: 65%; }
  .catalog-hero__badge { top: 4%; right: 1%; width: 88px; height: 88px; }
  .catalog-hero__showcase small { display: none; }
  .catalog-hero__categories { grid-template-columns: 1fr; }
  .catalog-hero__categories span { min-height: 62px; padding: 12px 18px; }
  .catalog-hero__categories span + span { border-top: 1px solid var(--line); border-left: 0; }
  .catalog-section { padding-top: 76px; background: linear-gradient(180deg, #c9dcd4 0, #f8f6f0 70px, #f8f6f0 100%); }
  .product-information { padding: 88px 0 100px; }
  .product-information__top { grid-template-columns: 1fr; gap: 18px; margin-bottom: 28px; }
  .product-information__top > span { text-align: left; }
  .product-information__layout { grid-template-columns: 1fr; gap: 48px; }
  .product-information__media { min-height: 390px; }
  .product-information__media img { width: 132%; }
  .product-information__media--green img { width: auto; height: 92%; }
  .product-information__content { padding: 0; }
  .product-information h2 { font-size: clamp(42px,12vw,62px); }
  .product-information__lead { margin-top: 22px; }
  .product-specs > div { grid-template-columns: 42px 1fr; }
  .product-specs dd { grid-column: 2; }
  .product-information__footer { grid-template-columns: 1fr; align-items: start; gap: 18px; }
  .product-information__footer a { justify-self: start; }
}

@media (max-width: 450px) {
  .material-study { min-height: 285px; }
  .business-story__visual { min-height: 340px; }
  .business-story__word { font-size: 82px; }
  .catalog-hero__copy { padding-top: 48px; }
  .catalog-hero__facts span { font-size: 8px; }
  .catalog-hero__showcase { min-height: 360px; }
  .catalog-hero__wipes { top: 30%; left: -20%; width: 126%; }
  .catalog-hero__paper { height: 62%; }
  .product-information__media { min-height: 330px; }
  .product-information__word { font-size: 92px; }
}

/* V6 — one continuous mineral-water atmosphere */
html { background: #d9e7e3; }
body { position: relative; background: transparent; }
.site-atmosphere { position: fixed; z-index: 0; inset: 0; overflow: hidden; pointer-events: none; background: linear-gradient(145deg, #edf3f0 0%, #cfdfda 44%, #9dbcb5 100%); }
.site-atmosphere::after { position: absolute; inset: 0; background: linear-gradient(105deg, rgba(255,255,255,.48), transparent 35%, rgba(55,101,92,.08) 74%, rgba(255,255,255,.18)); content: ""; }
.site-atmosphere__canvas { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; opacity: 0; transition: opacity 900ms ease; }
.site-atmosphere.is-rendered .site-atmosphere__canvas { opacity: 1; }
main, .site-footer { position: relative; z-index: 1; }

.studio-hero { background: rgba(238,245,242,.18); }
.studio-hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(246,247,242,.72) 0%, rgba(241,246,243,.47) 37%, rgba(233,242,239,.08) 65%, transparent 100%); content: ""; }
.studio-hero__backdrop, .studio-hero__wash, .studio-hero__ambient { display: none; }
.hero-product__light { display: none; }
.hero-product__edition { color: rgba(255,255,255,.33); }
.hero-ledger { background: rgba(247,249,245,.82); backdrop-filter: blur(12px); }

.editorial-intro { padding: 106px 0 84px; background: rgba(242,247,244,.6); border-top: 1px solid rgba(255,255,255,.38); }
.editorial-intro__statement { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(330px,.55fr); align-items: end; gap: clamp(55px,7vw,120px); margin-top: 66px; }
.editorial-intro__statement .display-copy { max-width: 1020px; }
.editorial-intro__note { grid-template-columns: minmax(240px,1fr) 112px; gap: 34px; margin: 0; }
.intro-proof { margin-top: 62px; }
.featured-collection { padding: 94px 0 104px; background: rgba(249,249,245,.68); }
.category-atlas { padding: 94px 0 108px; color: var(--ink); background: rgba(220,235,229,.5); isolation: auto; }
.category-atlas::before, .category-atlas::after, .category-atlas__graphics { display: none; }
.category-atlas__head { margin: 52px 0 58px; }
.business-story { padding: 104px 0 112px; background: rgba(201,222,214,.54); }
.business-story__visual { background: rgba(239,246,242,.54); }
.final-invite { padding: 104px 0 116px; background: rgba(245,248,244,.65); }

.page-hero, .page-hero--company, .catalog-hero, .product-stage, .product-stage--green { background: rgba(224,237,232,.4); }
.company-seal, .partner-hero__orb, .catalog-hero__graphics { display: none; }
.catalog-hero__showcase::before { display: none; }
.catalog-hero__badge { top: 14%; right: 3%; width: auto; height: auto; padding: 10px 13px; border-radius: 0; background: rgba(244,248,245,.7); text-align: left; transform: none; }
.catalog-hero__word { color: rgba(255,255,255,.38); }
.catalog-hero__categories { background: rgba(244,248,245,.68); backdrop-filter: blur(12px); }
.catalog-section { padding-top: 84px; background: rgba(247,249,246,.74); }
.catalog-note { padding: 88px 0 96px; background: rgba(232,241,236,.7); }

.product-stage { min-height: 800px; }
.product-information, .product-information--green { padding: 86px 0 98px; background: rgba(240,246,242,.66); }
.product-information__top { grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr); margin-bottom: 48px; }
.product-information__compact { display: grid; grid-template-columns: minmax(300px,.72fr) minmax(0,1.28fr); align-items: start; gap: clamp(50px,7vw,110px); }
.product-information__summary { padding-top: 8px; }
.product-information__summary h2 { margin-top: 14px; font-size: clamp(60px,5.2vw,86px); }
.product-information__details .product-specs { margin-top: 0; }
.product-information__details .product-specs > div { grid-template-columns: 54px minmax(120px,.65fr) 1fr; min-height: 86px; }
.product-information__details .product-specs dd { font-size: clamp(23px,2vw,31px); }
.product-information__footer { margin-top: 26px; }
.related-section { padding: 94px 0 104px; background: rgba(248,249,246,.72); }

.company-manifesto, .company-numbers { background: rgba(244,248,245,.7); }
.geography-section { color: var(--ink); background: rgba(207,226,219,.64); }
.geography-section h2 em { color: #557e73; }
.geography-section p { color: #49625b; }
.region-list { border-color: var(--line); }
.region-list div { border-color: var(--line); }
.region-list span { color: #6b817a; }
.company-next { background: rgba(237,244,240,.72); }
.partner-hero { color: var(--ink); background: rgba(215,231,225,.58); }
.page-partners .site-header:not(.is-scrolled) { color: var(--ink); }
.page-partners .site-header:not(.is-scrolled) .site-header__inner { border-color: var(--line); }
.page-partners .site-header:not(.is-scrolled) .brand-mark__bottom, .page-partners .site-header:not(.is-scrolled) .site-nav a { color: #526b63; }
.page-partners .site-header:not(.is-scrolled) .header-contact { color: #fff; background: var(--ink); }
.page-partners .site-header:not(.is-scrolled) .menu-toggle { border-color: var(--line); }
.partner-hero__top, .partner-hero__foot { color: #5f7770; border-color: var(--line); }
.partner-hero h1 em { color: #567f74; }
.partner-hero__grid > div:first-child > p { color: #465f57; }
.partner-hero__stamp { color: var(--ink); border-color: rgba(20,45,40,.2); }
.partner-hero__stamp small { color: #5e766f; }
.partner-process { background: rgba(245,248,245,.72); }
.buyer-kit { background: rgba(209,228,220,.62); }
.contact-stage { color: var(--ink); background: rgba(224,236,231,.7); }
.contact-stage > .shell > div > p { color: #4e665f; }
.contact-stage h2 em { color: #567f74; }
.contact-card { border-color: var(--line); background: rgba(248,250,246,.52); }
.contact-card small { color: #607970; }
.contact-card:hover { color: #fff; background: var(--ink); }
.site-footer { background: rgba(9,31,28,.94); backdrop-filter: blur(10px); }

@media (max-width: 1180px) {
  .editorial-intro__statement { grid-template-columns: minmax(0,1fr) minmax(280px,.62fr); gap: 48px; }
  .product-information__compact { grid-template-columns: minmax(270px,.72fr) minmax(0,1.28fr); gap: 46px; }
}

@media (max-width: 820px) {
  .site-atmosphere::after { background: linear-gradient(145deg, rgba(255,255,255,.42), transparent 48%, rgba(52,96,88,.08)); }
  .studio-hero { min-height: 940px; }
  .studio-hero::after { background: linear-gradient(180deg, rgba(246,248,244,.66) 0%, rgba(240,246,242,.4) 48%, rgba(225,237,232,.09) 78%, transparent); }
  .hero-ledger { backdrop-filter: blur(8px); }
  .editorial-intro { padding: 76px 0 64px; }
  .editorial-intro__statement { grid-template-columns: 1fr; gap: 34px; margin-top: 44px; }
  .editorial-intro__note { grid-template-columns: 1fr auto; gap: 24px; }
  .intro-proof { margin-top: 48px; }
  .featured-collection { padding: 74px 0 84px; }
  .category-atlas { padding: 68px 0 82px; }
  .category-atlas__head { margin: 38px 0 42px; }
  .business-story { padding: 78px 0 88px; }
  .final-invite { padding: 78px 0 90px; }
  .catalog-hero__badge { top: 5%; right: 1%; padding: 8px 10px; }
  .catalog-hero__categories { backdrop-filter: blur(8px); }
  .catalog-section { padding-top: 66px; background: rgba(247,249,246,.78); }
  .catalog-note { padding: 72px 0 80px; }
  .product-stage { min-height: 0; }
  .product-information, .product-information--green { padding: 72px 0 82px; }
  .product-information__top { grid-template-columns: 1fr; gap: 14px; margin-bottom: 28px; }
  .product-information__top > span { text-align: left; }
  .product-information__compact { grid-template-columns: 1fr; gap: 28px; }
  .product-information__summary h2 { font-size: clamp(49px,13vw,68px); }
  .product-information__details .product-specs > div { grid-template-columns: 42px 1fr; }
  .product-information__details .product-specs dd { grid-column: 2; }
  .related-section { padding: 76px 0 84px; }
  .geography-section, .partner-process, .buyer-kit, .contact-stage, .company-manifesto, .company-next { background-color: rgba(232,241,237,.74); }
  .contact-stage__grid, .buyer-kit__grid { margin-inline: auto; }
}

@media (max-width: 450px) {
  .editorial-intro__note { grid-template-columns: 1fr; }
  .editorial-intro__note .round-link { justify-self: start; }
  .product-information__summary h2 { font-size: 49px; }
}

/* V7 — one visible atmosphere, one surface language */
:root {
  --atmosphere-base: #d9e8e4;
  --atmosphere-panel: rgba(231, 241, 238, .72);
  --atmosphere-panel-strong: rgba(235, 244, 241, .84);
}

html { background: var(--atmosphere-base); }
.site-atmosphere { background: linear-gradient(145deg, #edf5f2 0%, #cfdfda 46%, #a8c6be 100%); }
.site-atmosphere::after {
  inset: -8%;
  background:
    linear-gradient(112deg, transparent 31%, rgba(255,255,255,.08) 41%, rgba(255,255,255,.42) 48%, rgba(255,255,255,.10) 55%, transparent 65%),
    linear-gradient(72deg, transparent 28%, rgba(78,132,121,.11) 49%, transparent 68%);
  transform: translate3d(-16%, -2%, 0) scale(1.08);
  animation: atmosphere-sheen 7s ease-in-out infinite alternate;
  will-change: transform;
}
.site-atmosphere__canvas { opacity: 0; }
.site-atmosphere.is-rendered .site-atmosphere__canvas { opacity: 1; }

.site-header::before,
.site-header.is-scrolled::before {
  background: rgba(219, 233, 228, .82);
  opacity: 1;
  backdrop-filter: blur(16px) saturate(115%);
}
.site-header.is-scrolled { box-shadow: 0 10px 30px rgba(20,45,40,.06); }

.studio-hero,
.editorial-intro,
.featured-collection,
.category-atlas,
.business-story,
.final-invite,
.page-hero,
.page-hero--company,
.catalog-hero,
.catalog-section,
.catalog-note,
.product-stage,
.product-stage--green,
.product-information,
.product-information--green,
.related-section,
.company-manifesto,
.company-numbers,
.geography-section,
.company-next,
.partner-hero,
.partner-process,
.buyer-kit,
.contact-stage {
  background: transparent !important;
}
main > section { border-top: 1px solid rgba(20,45,40,.12); }
.studio-hero { border-top: 0; }
.studio-hero::after {
  background: linear-gradient(90deg, rgba(237,246,242,.28) 0%, rgba(237,246,242,.12) 42%, transparent 72%);
}
.hero-ledger,
.catalog-hero__categories { background: var(--atmosphere-panel-strong); }
.hero-product__edition { display: none; }
.hero-product__caption,
.button--paper,
.quick-dialog,
.dialog-close { background: var(--atmosphere-panel-strong); }
.quick-dialog__media > span {
  top: 24px;
  left: 24px;
  padding: 8px 11px;
  border: 1px solid var(--line);
  color: #5b746c;
  background: rgba(239,247,244,.7);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.editorial-product,
.editorial-product--green,
.catalog-card,
.catalog-card--green,
.related-card,
.related-card--green,
.quick-dialog__media,
.quick-dialog__media--green,
.business-story__visual,
.contact-card {
  border: 1px solid rgba(20,45,40,.16);
  background: var(--atmosphere-panel) !important;
}
.editorial-product__ghost,
.catalog-card__word,
.catalog-hero__word,
.product-stage__ghost,
.site-footer__word { display: none !important; }

.editorial-product--green .editorial-product__visual img { height: 72%; }
.catalog-card--green .catalog-card__visual img { height: 70%; }
.quick-dialog__media--green img { height: 64%; }
.related-card--green .related-card__visual img { height: 72%; }

.business-story__visual {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-direction: column;
  min-height: 500px;
  padding: 30px;
}
.business-story__visual small {
  position: static;
  color: #617871;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.business-story__visual strong {
  margin-top: auto;
  font-family: "Cormorant", Georgia, serif;
  font-size: clamp(42px, 3.5vw, 60px);
  font-weight: 600;
  letter-spacing: -.045em;
  line-height: .9;
}
.business-story__visual strong em { color: #688c82; font-weight: 500; }
.business-story__visual > p { max-width: 360px; margin: 26px 0; color: #4f6861; font-size: 12px; line-height: 1.7; }
.business-story__route {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  width: 100%;
  min-height: 58px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.business-story__route span:last-child { text-align: right; }
.business-story__route i { color: #66857c; font-style: normal; font-size: 18px; }

.catalog-hero__paper { height: 54%; }
.catalog-hero__wipes { width: 86%; }

.product-stage__badge {
  width: auto;
  height: auto;
  padding: 10px 14px;
  border-radius: 0;
  background: var(--atmosphere-panel-strong);
  font-family: "Manrope", Arial, sans-serif;
  font-size: 9px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.product-stage--green .product-stage__visual img { height: 60%; max-height: 470px; }

.product-information { padding: 70px 0 78px; }
.product-information__top {
  display: flex;
  align-items: flex-start;
  gap: 32px;
  margin-bottom: 32px;
}
.product-information__top .section-index { flex: 1; }
.product-information__top > span {
  flex: 0 0 auto;
  padding-top: 12px;
  border-top: 0;
  white-space: nowrap;
}
.product-information__compact {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(280px,.52fr);
  align-items: end;
  gap: clamp(45px,7vw,110px);
}
.product-information__summary { padding: 0; }
.product-information__summary h2 {
  margin-top: 12px;
  font-size: clamp(52px,5.2vw,82px);
  line-height: .92;
}
.product-information__context { max-width: 470px; margin: 0 0 5px; color: var(--ink-soft); line-height: 1.7; }
.product-information__details { margin-top: 38px; }
.product-information__details .product-specs {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  margin: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.product-information__details .product-specs > div {
  display: grid;
  grid-template-columns: 36px 1fr;
  grid-template-rows: auto 1fr;
  align-content: start;
  min-height: 150px;
  padding: 22px 24px;
  border-bottom: 0;
}
.product-information__details .product-specs > div + div { border-left: 1px solid var(--line); }
.product-information__details .product-specs dt { grid-column: 2; }
.product-information__details .product-specs dd {
  grid-column: 2;
  margin-top: 28px;
  font-size: clamp(24px,2vw,31px);
  line-height: 1.05;
}
.product-information__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  margin-top: 24px;
}
.product-information__footer p { max-width: 620px; }

.site-footer {
  padding: 64px 0 26px;
  color: var(--ink);
  background: rgba(219,233,228,.68) !important;
  border-top: 1px solid var(--line);
  backdrop-filter: blur(14px) saturate(110%);
}
.site-footer__top {
  gap: 70px;
  padding-bottom: 44px;
  border-bottom-color: var(--line);
}
.brand-mark--footer { color: var(--ink); }
.brand-mark--footer .brand-mark__bottom { color: #4f796e; }
.site-footer__brand p { color: #526a63; }
.site-footer__nav > span,
.site-footer__contact > span { color: #627a72; }
.site-footer__nav a { color: #38544c; }
.site-footer__nav a:hover { color: var(--ink); }
.site-footer__contact a { color: var(--ink); }
.site-footer__contact small { color: #627a72; }
.site-footer__bottom {
  margin-top: 24px;
  border-top: 0;
  color: #637a73;
}

@keyframes atmosphere-sheen {
  from { transform: translate3d(-16%, -2%, 0) scale(1.08); }
  to { transform: translate3d(16%, 2%, 0) scale(1.12); }
}

@media (max-width: 820px) {
  .site-atmosphere::after {
    background: linear-gradient(122deg, transparent 12%, rgba(255,255,255,.25) 42%, transparent 70%);
  }
  .business-story__visual { min-height: 370px; }
  .catalog-hero__paper { height: 52%; }
  .catalog-hero__wipes { width: 108%; }
  .product-stage--green .product-stage__visual img { height: 330px; max-height: 58vh; }
  .product-information { padding: 58px 0 66px; }
  .product-information__top { display: grid; grid-template-columns: 1fr; gap: 8px; margin-bottom: 26px; }
  .product-information__top > span { padding-top: 0; white-space: normal; }
  .product-information__compact { grid-template-columns: 1fr; gap: 20px; }
  .product-information__summary h2 { font-size: clamp(46px,12.5vw,64px); }
  .product-information__details { margin-top: 30px; }
  .product-information__details .product-specs { grid-template-columns: 1fr; }
  .product-information__details .product-specs > div { min-height: 96px; padding: 18px 6px; }
  .product-information__details .product-specs > div + div { border-top: 1px solid var(--line); border-left: 0; }
  .product-information__details .product-specs dd { margin-top: 10px; }
  .product-information__footer { align-items: flex-start; flex-direction: column; gap: 18px; }
  .site-footer__top { gap: 36px; padding-bottom: 28px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .hero-enter, .has-js [data-reveal] { opacity: 1 !important; transform: none !important; }
  .studio-hero__backdrop { transform: none !important; }
  .studio-hero__ambient { transform: none !important; }
  .site-atmosphere__canvas { transition: none !important; }
  .site-atmosphere::after { animation: none !important; transform: none !important; }
}

/* V9 — pearl, mist and silver palette */
:root {
  --atmosphere-base: #e6eae8;
  --surface-mist: #d7e3e6;
  --surface-silver: #dfe3ea;
  --atmosphere-panel: rgba(255, 255, 255, .42);
  --atmosphere-panel-strong: rgba(255, 255, 255, .58);
  --ink: #172b2e;
  --ink-deep: #102225;
  --ink-soft: #475a5c;
  --accent-muted: #68838c;
  --line: rgba(23, 43, 46, .15);
}

html,
body {
  background: var(--atmosphere-base) !important;
}

.site-atmosphere { display: none !important; }

.site-header::before,
.site-header.is-scrolled::before {
  background: var(--atmosphere-base);
  backdrop-filter: none;
}

.site-header.is-scrolled {
  box-shadow: 0 8px 26px rgba(20, 45, 40, .055);
}

.studio-hero::after,
.studio-hero__wash,
.hero-product__light,
.catalog-hero__graphics,
.catalog-hero__showcase::before,
.category-atlas::before,
.category-atlas::after,
.category-atlas__graphics,
.partner-hero__orb {
  display: none !important;
}

.studio-hero,
.editorial-intro,
.featured-collection,
.category-atlas,
.business-story,
.final-invite,
.page-hero,
.page-hero--company,
.catalog-hero,
.catalog-section,
.catalog-note,
.product-stage,
.product-stage--green,
.product-information,
.product-information--green,
.related-section,
.company-manifesto,
.company-numbers,
.geography-section,
.company-next,
.partner-hero,
.partner-process,
.buyer-kit,
.contact-stage,
.site-footer {
  background: transparent !important;
}

.studio-hero,
.page-hero,
.page-hero--company,
.catalog-hero,
.product-stage,
.product-stage--green,
.partner-hero {
  background: var(--surface-mist) !important;
}

.product-information,
.product-information--green {
  border-top: 0;
  background: var(--surface-silver) !important;
}

.business-story,
.company-numbers,
.buyer-kit {
  background: rgba(215, 227, 230, .52) !important;
}

.hero-ledger {
  grid-template-columns: repeat(3, minmax(130px, 1fr)) minmax(185px, 1.1fr);
  min-height: 76px;
  border: 0;
  border-top: 1px solid var(--line);
  background: transparent;
  backdrop-filter: none;
}

.hero-ledger > div,
.hero-ledger > a {
  min-height: 76px;
  padding: 13px 22px;
  background: transparent;
}

.hero-ledger > * + * {
  border-left: 1px solid rgba(20, 45, 40, .11);
}

.hero-ledger > a {
  color: var(--ink);
}

.hero-ledger > a:hover {
  background: rgba(255, 255, 255, .14);
}

.hero-ledger i {
  width: 42px;
  height: 42px;
  border-color: rgba(20, 45, 40, .25);
}

.catalog-hero__categories {
  min-height: 68px;
  border: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: transparent;
  backdrop-filter: none;
}

.catalog-hero__categories span {
  min-height: 68px;
  padding: 13px 22px;
  transition: background 180ms ease;
}

.catalog-hero__categories span:hover {
  background: rgba(255, 255, 255, .12);
}

.catalog-hero__categories span + span {
  border-left-color: rgba(20, 45, 40, .11);
}

.category-list a:hover {
  color: var(--ink);
  background: rgba(255, 255, 255, .12);
}

.eyebrow,
.micro-label,
.section-index,
.page-hero__top,
.partner-hero__top,
.hero-ledger small,
.catalog-hero__top,
.catalog-hero__categories i,
.category-list span,
.category-list small,
.business-story__visual small,
.site-footer__brand p,
.site-footer__nav > span,
.site-footer__contact > span,
.site-footer__contact small,
.site-footer__bottom {
  color: #475a5c;
}

.product-stage__crumb {
  color: #4b6267;
}

.product-stage__crumb a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  text-decoration-thickness: 1px;
  transition: color 180ms ease;
}

.product-stage__crumb a:hover {
  color: var(--ink);
}

main h1 em,
main h2 em,
.display-copy em,
.business-story__visual strong em {
  color: var(--accent-muted) !important;
}

.product-stage__crumb strong {
  overflow: hidden;
  text-overflow: ellipsis;
}

.product-information__top .section-index {
  padding-top: 0;
  border-top: 0;
}

.product-information__details .product-specs {
  gap: 12px;
  border: 0;
}

.product-information__details .product-specs > div,
.product-information__details .product-specs > div + div {
  border: 0;
  background: rgba(255, 255, 255, .38);
}

.product-information__footer {
  padding-top: 4px;
}

.editorial-product,
.editorial-product--green,
.catalog-card,
.catalog-card--green,
.related-card,
.related-card--green,
.quick-dialog__media,
.quick-dialog__media--green,
.business-story__visual,
.contact-card,
.button--paper,
.quick-dialog,
.dialog-close,
.hero-product__caption,
.product-stage__badge {
  background: var(--atmosphere-panel) !important;
  backdrop-filter: none;
}

.editorial-product:hover,
.catalog-card:hover,
.related-card:hover,
.contact-card:hover {
  background: var(--atmosphere-panel-strong) !important;
}

.site-footer {
  border-top: 1px solid var(--line);
  backdrop-filter: none;
}

@media (max-width: 820px) {
  .hero-ledger {
    right: 15px;
    left: 15px;
    grid-template-columns: 1fr 1fr 52px;
    min-height: 70px;
  }

  .hero-ledger > div,
  .hero-ledger > a {
    min-height: 70px;
    padding: 10px 13px;
  }

  .hero-ledger > a {
    min-width: 52px;
    padding: 5px;
  }

  .catalog-hero__categories {
    grid-template-columns: 1fr;
  }

  .catalog-hero__categories span {
    min-height: 54px;
    padding: 10px 4px;
  }

  .catalog-hero__categories span + span {
    border-top: 1px solid rgba(20, 45, 40, .11);
    border-left: 0;
  }

  .product-information__details .product-specs {
    gap: 8px;
  }

  .product-information__details .product-specs > div,
  .product-information__details .product-specs > div + div {
    border: 0;
  }
}

/* V10 — framed navigation and a definite page ending */
.site-header {
  --header-surface: var(--surface-mist);
  height: 76px;
}

.site-header.is-scrolled {
  height: 66px;
  box-shadow: 0 9px 24px rgba(23, 43, 46, .07);
}

.site-header::before,
.site-header.is-scrolled::before {
  background: var(--header-surface);
  transition: background-color 320ms var(--ease), opacity 220ms ease;
}

.site-header__inner {
  border-bottom-color: rgba(23, 43, 46, .17);
}

.brand-mark {
  min-height: 48px;
}

.brand-mark__top {
  font-size: 21px;
}

.brand-mark__bottom {
  margin-top: 9px;
  font-size: 9px;
  letter-spacing: .19em;
}

.site-header.is-on-dark {
  color: #f4f8f7;
}

.site-header.is-on-dark .site-header__inner {
  border-bottom-color: rgba(255, 255, 255, .17);
}

.site-header.is-on-dark .brand-mark__bottom,
.site-header.is-on-dark .site-nav a {
  color: #c3d2d0;
}

.site-header.is-on-dark .header-contact {
  color: var(--ink);
  background: #edf1ef;
}

.site-header.is-on-dark .header-contact i {
  border-color: rgba(23, 43, 46, .3);
}

.site-footer {
  color: #e8efed;
  background: #14282b !important;
  border-top-color: rgba(255, 255, 255, .15);
}

.site-footer__top {
  border-bottom-color: rgba(255, 255, 255, .14);
}

.brand-mark--footer {
  color: #f7faf9;
}

.brand-mark--footer .brand-mark__bottom {
  color: #9dbec0;
}

.site-footer__brand p {
  color: #a9bab7;
}

.site-footer__nav > span,
.site-footer__contact > span {
  color: #83a09c;
}

.site-footer__nav a {
  color: #d4dfdc;
}

.site-footer__nav a:hover {
  color: #ffffff;
}

.site-footer__contact a {
  color: #f7faf9;
}

.site-footer__contact small,
.site-footer__bottom {
  color: #91a8a4;
}

.site-footer__bottom {
  border-top-color: rgba(255, 255, 255, .12);
}

@media (max-width: 820px) {
  .site-header {
    height: 68px;
  }

  .site-header.is-scrolled {
    height: 62px;
  }

  .brand-mark__top {
    font-size: 17px;
  }

  .brand-mark__bottom {
    margin-top: 8px;
    font-size: 8px;
  }
}

@media (max-width: 450px) {
  .hero-ledger {
    grid-template-columns: 1fr 48px;
  }

  .product-stage__crumb span:last-of-type,
  .product-stage__crumb strong {
    display: none;
  }
}

/* V11 — compact navigation that follows the reading direction */
.site-header {
  --header-surface: var(--surface-mist);
  height: 64px;
  background: var(--header-surface);
  transform: translate3d(0, 0, 0);
  transition:
    transform 380ms var(--ease),
    color 200ms ease,
    box-shadow 220ms ease;
  will-change: transform;
}

.site-header.is-scrolled {
  height: 64px;
}

.site-header.is-hidden {
  box-shadow: none;
  transform: translate3d(0, calc(-100% - 2px), 0);
}

.site-header::before,
.site-header.is-scrolled::before {
  background: var(--header-surface);
  opacity: 1;
}

.site-header__inner {
  border-bottom-color: rgba(23, 43, 46, .14);
}

.brand-mark {
  min-height: 40px;
  justify-content: center;
}

.brand-mark__top {
  font-size: 20px;
}

.brand-mark__bottom {
  margin-top: 7px;
  font-size: 8px;
}

.header-contact {
  min-height: 44px;
}

.menu-open .site-header {
  transform: translate3d(0, 0, 0);
}

@media (max-width: 820px) {
  .site-header,
  .site-header.is-scrolled {
    height: 60px;
  }

  .brand-mark {
    min-height: 38px;
  }

  .brand-mark__top {
    font-size: 17px;
  }

  .brand-mark__bottom {
    margin-top: 6px;
    font-size: 7px;
  }

  .menu-toggle {
    width: 44px;
    height: 44px;
  }
}

/* V12 — exact section colour and a lighter contact action */
.site-header,
.site-header::before,
.site-header.is-scrolled::before {
  background: var(--header-surface);
}

.site-header::before,
.site-header.is-scrolled::before {
  transition: background-color 180ms var(--ease), opacity 180ms ease;
}

.site-header .header-contact,
.page-partners .site-header:not(.is-scrolled) .header-contact {
  color: var(--ink);
  background: rgba(255, 255, 255, .24);
  border-color: rgba(23, 43, 46, .52);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12);
  transition:
    color 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    transform 220ms var(--ease);
}

.site-header .header-contact i,
.page-partners .site-header:not(.is-scrolled) .header-contact i {
  border-color: rgba(23, 43, 46, .52);
}

.site-header .header-contact:hover,
.page-partners .site-header:not(.is-scrolled) .header-contact:hover {
  color: var(--ink-deep);
  background: rgba(255, 255, 255, .52);
  border-color: rgba(23, 43, 46, .58);
}

.site-header.is-on-dark .header-contact {
  color: #f4f8f7;
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .36);
}

.site-header.is-on-dark .header-contact i {
  border-color: rgba(255, 255, 255, .42);
}

.site-header.is-on-dark .header-contact:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, .16);
  border-color: rgba(255, 255, 255, .5);
}

/* V13 — compact company and partner pages */
.page-company main > section,
.page-partners main > section {
  border-top: 0;
}

.company-compact-hero,
.partner-compact-hero {
  position: relative;
  min-height: 560px;
  padding: 108px 0 64px;
  color: var(--ink);
  background: var(--surface-mist) !important;
}

.company-compact-hero .page-hero__top,
.partner-compact-hero .partner-hero__top,
.company-compact-hero__grid,
.partner-compact-hero__grid {
  position: relative;
  z-index: 1;
}

.company-compact-hero__grid,
.partner-compact-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, .55fr);
  align-items: end;
  gap: clamp(48px, 6vw, 100px);
  min-height: 360px;
}

.company-compact-hero h1,
.partner-compact-hero h1 {
  margin: 0;
  font-size: clamp(72px, 7.2vw, 118px);
  font-weight: 600;
  letter-spacing: -.07em;
  line-height: .86;
}

.company-compact-hero h1 em,
.partner-compact-hero h1 em,
.company-essentials h2 em,
.company-coverage h2 em,
.company-catalog-cta h2 em,
.partner-steps-section h2 em,
.partner-contact h2 em {
  color: var(--accent-muted);
  font-family: "Cormorant", Georgia, serif;
  font-weight: 500;
  letter-spacing: -.045em;
}

.company-compact-hero__aside,
.partner-compact-hero__aside {
  max-width: 430px;
  padding-bottom: 10px;
}

.company-compact-hero__aside p,
.partner-compact-hero__aside p {
  margin: 0 0 26px;
  color: var(--ink-soft);
  font-size: 15px;
  line-height: 1.65;
}

.company-essentials,
.company-coverage,
.company-catalog-cta,
.partner-steps-section,
.partner-contact {
  background: var(--atmosphere-base);
}

.company-essentials {
  padding: 82px 0 88px;
}

.company-essentials__intro {
  display: grid;
  grid-template-columns: minmax(120px, .35fr) minmax(0, 1fr) minmax(220px, .55fr);
  align-items: end;
  gap: clamp(30px, 4vw, 72px);
}

.company-essentials h2,
.company-coverage h2,
.company-catalog-cta h2,
.partner-steps-section h2,
.partner-contact h2 {
  margin: 0;
  font-family: "Cormorant", Georgia, serif;
  font-size: clamp(54px, 5vw, 82px);
  font-weight: 500;
  letter-spacing: -.05em;
  line-height: .9;
}

.company-essentials__intro > p,
.company-coverage__grid > div > p {
  max-width: 470px;
  margin: 0;
  color: var(--ink-soft);
  line-height: 1.65;
}

.company-facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 56px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.company-facts article {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  min-height: 150px;
  padding: 24px 28px;
}

.company-facts article + article {
  border-left: 1px solid var(--line);
}

.company-facts strong {
  font-family: "Cormorant", Georgia, serif;
  font-size: clamp(58px, 5vw, 78px);
  font-weight: 500;
  letter-spacing: -.055em;
  line-height: .75;
}

.company-facts span {
  color: var(--ink-soft);
  font-size: 11px;
  font-weight: 700;
  text-align: right;
  text-transform: uppercase;
}

.company-coverage {
  padding: 78px 0 84px;
}

.company-coverage__grid {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(55px, 8vw, 130px);
}

.company-coverage h2 {
  margin: 24px 0 25px;
}

.company-regions {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.company-regions span {
  display: flex;
  align-items: center;
  min-height: 72px;
  padding: 18px 22px;
  border: 1px solid rgba(23, 43, 46, .13);
  background: rgba(255, 255, 255, .3);
  font-family: "Cormorant", Georgia, serif;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.05;
}

.company-catalog-cta {
  padding: 62px 0 72px;
}

.company-catalog-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding-top: 38px;
  border-top: 1px solid var(--line);
}

.company-catalog-cta h2 {
  font-size: clamp(46px, 4.2vw, 68px);
}

.partner-compact-hero__aside .button {
  min-width: 190px;
}

.partner-steps-section {
  padding: 84px 0 90px;
}

.partner-steps-section__head {
  display: grid;
  grid-template-columns: minmax(150px, .35fr) minmax(0, 1fr);
  align-items: end;
  gap: 40px;
}

.partner-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 52px 0 0;
  padding: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  list-style: none;
}

.partner-steps li {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  min-height: 190px;
  padding: 24px 28px 26px;
}

.partner-steps li + li {
  border-left: 1px solid var(--line);
}

.partner-steps li > span {
  color: #6c8184;
  font-size: 9px;
  font-weight: 800;
}

.partner-steps strong {
  margin-top: 40px;
  font-family: "Cormorant", Georgia, serif;
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
}

.partner-steps p {
  margin: 12px 0 0;
  color: var(--ink-soft);
  font-size: 12px;
}

.partner-kit {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-top: 18px;
}

.partner-kit span {
  display: flex;
  align-items: center;
  min-height: 56px;
  padding: 12px 16px;
  background: rgba(255, 255, 255, .3);
  color: var(--ink-soft);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.partner-contact {
  padding: 76px 0 84px;
}

.partner-contact__grid {
  display: grid;
  grid-template-columns: minmax(280px, .75fr) minmax(0, 1fr);
  align-items: stretch;
  gap: clamp(55px, 8vw, 130px);
}

.partner-contact h2 {
  margin-top: 24px;
}

.partner-contact__card {
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-height: 180px;
  padding: 24px 28px;
  border: 1px solid rgba(23, 43, 46, .16);
  background: rgba(255, 255, 255, .32);
  transition: color 200ms ease, background-color 200ms ease, transform 260ms var(--ease);
}

.partner-contact__card small {
  color: #607477;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.partner-contact__card strong {
  align-self: center;
  font-family: "Cormorant", Georgia, serif;
  font-size: clamp(28px, 2.4vw, 40px);
  font-weight: 600;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}

.partner-contact__card > span {
  display: flex;
  justify-content: space-between;
  padding-top: 13px;
  border-top: 1px solid currentColor;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.partner-contact__card i {
  font-style: normal;
}

.partner-contact__card:hover {
  color: #ffffff;
  background: var(--ink);
  transform: translateY(-3px);
}

@media (max-width: 1180px) {
  .company-compact-hero__grid,
  .partner-compact-hero__grid {
    grid-template-columns: minmax(0, 1.1fr) minmax(270px, .55fr);
    gap: 42px;
  }

  .company-essentials__intro {
    grid-template-columns: 120px minmax(0, 1fr) minmax(220px, .55fr);
    gap: 30px;
  }

  .company-coverage__grid,
  .partner-contact__grid {
    gap: 54px;
  }
}

@media (max-width: 820px) {
  .company-compact-hero,
  .partner-compact-hero {
    min-height: 0;
    padding: 88px 0 42px;
  }

  .company-compact-hero__grid,
  .partner-compact-hero__grid {
    grid-template-columns: 1fr;
    gap: 28px;
    min-height: 0;
    padding: 48px 0 44px;
  }

  .company-compact-hero h1,
  .partner-compact-hero h1 {
    font-size: clamp(56px, 15vw, 82px);
  }

  .company-compact-hero__aside,
  .partner-compact-hero__aside {
    max-width: 520px;
    padding-bottom: 0;
  }

  .company-essentials,
  .company-coverage,
  .partner-steps-section,
  .partner-contact {
    padding: 64px 0 68px;
  }

  .company-essentials__intro,
  .company-coverage__grid,
  .partner-steps-section__head,
  .partner-contact__grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .company-essentials h2,
  .company-coverage h2,
  .partner-steps-section h2,
  .partner-contact h2 {
    font-size: clamp(48px, 13vw, 66px);
  }

  .company-essentials__intro > p {
    margin-top: 2px;
  }

  .company-facts {
    grid-template-columns: 1fr 1fr;
    margin-top: 38px;
  }

  .company-facts article {
    min-height: 112px;
    padding: 20px;
  }

  .company-facts article:nth-child(3) {
    grid-column: 1 / -1;
    border-top: 1px solid var(--line);
    border-left: 0;
  }

  .company-facts strong {
    font-size: 58px;
  }

  .company-regions {
    grid-template-columns: 1fr;
  }

  .company-regions span {
    min-height: 58px;
    font-size: 22px;
  }

  .company-catalog-cta {
    padding: 46px 0 58px;
  }

  .company-catalog-cta__inner {
    align-items: flex-start;
    flex-direction: column;
    gap: 28px;
    padding-top: 30px;
  }

  .partner-steps {
    grid-template-columns: 1fr;
    margin-top: 36px;
  }

  .partner-steps li {
    min-height: 0;
    padding: 20px;
  }

  .partner-steps li + li {
    border-top: 1px solid var(--line);
    border-left: 0;
  }

  .partner-steps strong {
    margin-top: 20px;
  }

  .partner-kit {
    grid-template-columns: 1fr 1fr;
  }

  .partner-contact__card {
    min-height: 160px;
  }
}

@media (max-width: 450px) {
  .company-compact-hero h1,
  .partner-compact-hero h1 {
    font-size: 52px;
  }

  .company-facts {
    grid-template-columns: 1fr;
  }

  .company-facts article:nth-child(3) {
    grid-column: auto;
  }

  .company-facts article + article {
    border-top: 1px solid var(--line);
    border-left: 0;
  }

  .partner-kit {
    grid-template-columns: 1fr;
  }

  .partner-contact__card {
    padding: 22px 20px;
  }

  .partner-contact__card strong {
    font-size: 25px;
  }
}
/* Authenticated preview of an unpublished product. */
.preview-notice {
  position: fixed;
  z-index: 120;
  right: 22px;
  bottom: 22px;
  max-width: min(440px, calc(100vw - 32px));
  padding: 14px 18px;
  border: 1px solid rgba(255, 255, 255, .18);
  background: #182b28;
  color: #f7f8f4;
  font: 600 12px/1.5 "Manrope", sans-serif;
  letter-spacing: .04em;
  box-shadow: 0 18px 48px rgba(15, 35, 31, .2);
}

/* V13 — phone-first composition.  Desktop keeps the editorial artwork; a phone
   gets a deliberately smaller, readable layout instead of a squeezed desktop. */
.icon-arrow { width: 18px; height: 18px; }
.button > span .icon-arrow, .header-contact i .icon-arrow { width: 16px; height: 16px; }
.text-link .icon-arrow, .mobile-menu__contact .icon-arrow { width: 17px; height: 17px; }
.product-arrow i .icon-arrow, .mobile-menu nav i .icon-arrow { width: 18px; height: 18px; }

@media (max-width: 820px) {
  .site-header { z-index: 300; }
  .site-header__inner { padding-inline: 20px; }

  .mobile-menu {
    z-index: 250;
    display: flex;
    inset: 0;
    padding: calc(76px + env(safe-area-inset-top)) 20px max(26px, env(safe-area-inset-bottom));
    background: #102b2b;
    transform: translate3d(0, -12px, 0);
  }

  .mobile-menu.is-open { opacity: 1; pointer-events: auto; transform: translate3d(0, 0, 0); }
  .mobile-menu nav { margin-top: 18px; }
  .mobile-menu nav a { grid-template-columns: 34px minmax(0, 1fr) 44px; min-height: 68px; }
  .mobile-menu nav span { font-size: clamp(29px, 8vw, 35px); line-height: 1; }
  .mobile-menu nav i { width: 42px; height: 42px; }
  .mobile-menu__contact { min-height: 44px; overflow-wrap: anywhere; }

  .studio-hero {
    height: auto;
    min-height: 0;
    max-height: none;
    overflow: visible;
  }

  .studio-hero__grid {
    display: block;
    height: auto;
    padding: 100px 0 0;
  }

  .studio-hero__copy { max-width: none; }
  .studio-hero h1 { max-width: 345px; font-size: clamp(48px, 14vw, 58px); line-height: .92; }
  .studio-hero__copy > p { max-width: 350px; font-size: 15px; line-height: 1.58; }
  .studio-hero__actions { gap: 12px; margin-top: 26px; }
  .studio-hero__actions .button { width: 100%; min-height: 58px; }

  .hero-product {
    width: 100%;
    min-height: 290px;
    height: 290px;
    margin-top: 28px;
    perspective: none;
  }

  .hero-product > img {
    top: 50%;
    left: 50%;
    width: min(100%, 390px);
    max-width: none;
    transform: translate3d(-50%, -50%, 0);
    filter: drop-shadow(0 18px 16px rgba(19, 54, 49, .18));
  }

  .hero-product__shadow { right: 11%; bottom: 16%; width: 78%; height: 7%; filter: blur(15px); }
  .hero-product__caption, .hero-product__edition { display: none !important; }

  .hero-ledger {
    position: relative;
    right: auto;
    bottom: auto;
    left: auto;
    grid-template-columns: minmax(0, 1fr) 56px;
    width: 100%;
    min-height: 74px;
    margin-top: 4px;
    border: 1px solid rgba(20, 45, 40, .13);
    border-bottom: 0;
  }

  .hero-ledger > div, .hero-ledger > a { min-height: 74px; padding: 12px 16px; }
  .hero-ledger > div:nth-child(2), .hero-ledger > div:nth-child(3) { display: none; }
  .hero-ledger > a { min-width: 56px; padding: 6px; }
  .hero-ledger > a span { display: none; }
  .hero-ledger i { width: 42px; height: 42px; }

  .display-copy { font-size: clamp(45px, 12.8vw, 57px); line-height: .94; }
  .editorial-intro__statement { margin-top: 36px; }
}

@media (max-width: 450px) {
  .site-header__inner { padding-inline: 20px; }
  .studio-hero__grid { padding-top: 92px; }
  .studio-hero h1 { font-size: 50px; }
  .hero-product { min-height: 270px; height: 270px; margin-top: 24px; }
  .hero-product > img { width: 100%; }
  .hero-ledger { grid-template-columns: minmax(0, 1fr) 54px; }
}
