:root {
  --navy-950: #071d45;
  --navy-900: #0a275d;
  --navy-800: #123b7a;
  --blue: #087ac1;
  --aqua: #31b8cf;
  --gold: #f6c945;
  --gold-strong: #f6c945;
  --seafoam: #e9f8f8;
  --cream: #fffaf0;
  --text: #10233f;
  --muted: #63728a;
  --line: #dbe5ee;
  --bg: #f5f9fc;
  --white: #fff;
  --shadow: 0 22px 58px rgba(7, 29, 69, .12);
  --site-content-width: 1320px;
  --site-shell-width: 1368px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
  background: var(--white);
  -webkit-font-smoothing: antialiased;
}
body::selection { color: var(--navy-950); background: var(--gold); }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; }
button, input, textarea { font: inherit; }

.site-topbar { color: #dceeff; background: var(--navy-950); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.site-topbar__inner { display: flex; min-height: 36px; max-width: var(--site-shell-width); margin: 0 auto; padding: 0 24px; align-items: center; justify-content: space-between; gap: 20px; }
.site-topbar__contact { display: flex; gap: 20px; color: var(--white); letter-spacing: 0; text-transform: none; }
.site-topbar a:hover, .site-topbar a:focus-visible { color: var(--gold); }

.site-header { position: sticky; top: 0; z-index: 50; display: flex; min-height: 92px; max-width: none; margin: 0; padding: 10px max(24px, calc((100vw - var(--site-content-width)) / 2)); align-items: center; justify-content: space-between; gap: 28px; border-bottom: 1px solid rgba(219,229,238,.8); background: rgba(255,255,255,.97); box-shadow: 0 8px 28px rgba(7,29,69,.06); backdrop-filter: blur(14px); }
.brand { display: inline-flex; min-width: 210px; align-items: center; gap: 12px; color: var(--navy-900); font-weight: 800; }
.brand__logo { display: block; width: auto; max-width: 220px; height: 70px; object-fit: contain; }
.brand__name { max-width: 150px; font-size: 18px; line-height: 1.15; }
.site-nav { color: #31445f; font-size: 14px; font-weight: 700; }
.site-nav--mobile, .site-nav-toggle { display: none; }
.site-nav__list { display: flex; margin: 0; padding: 0; align-items: center; gap: 28px; list-style: none; }
.site-nav__item { position: relative; }
.site-nav__link-row { display: flex; align-items: center; }
.site-nav__link { position: relative; display: inline-flex; min-height: 38px; align-items: center; }
.site-nav--desktop > .site-nav__list > .site-nav__item > .site-nav__link-row > .site-nav__link::before { position: absolute; right: 0; bottom: 2px; left: 0; height: 2px; background: var(--gold-strong); content: ''; transform: scaleX(0); transform-origin: right; transition: transform .2s ease; }
.site-nav--desktop > .site-nav__list > .site-nav__item:hover > .site-nav__link-row > .site-nav__link::before,
.site-nav--desktop > .site-nav__list > .site-nav__item:focus-within > .site-nav__link-row > .site-nav__link::before { transform: scaleX(1); transform-origin: left; }
.site-nav__item--has-children > .site-nav__link-row > .site-nav__link::after { width: 6px; height: 6px; margin: -3px 0 0 9px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; content: ''; transform: rotate(45deg); }
.site-nav__panel { position: absolute; top: 100%; left: -16px; z-index: 20; visibility: hidden; opacity: 0; transform: translateY(10px); transition: opacity .18s ease, transform .18s ease, visibility .18s; }
.site-nav__panel--dropdown { min-width: 210px; padding: 10px; border: 1px solid var(--line); border-radius: 14px; background: var(--white); box-shadow: var(--shadow); }
.site-nav__list--submenu { display: grid; gap: 2px; }
.site-nav__list--submenu .site-nav__item { min-width: 186px; }
.site-nav__list--submenu .site-nav__link-row { justify-content: space-between; }
.site-nav__list--submenu .site-nav__link { flex: 1; padding: 9px 11px; border-radius: 9px; white-space: nowrap; }
.site-nav__list--submenu .site-nav__item--has-children > .site-nav__link-row > .site-nav__link::after { transform: rotate(-45deg); }
.site-nav__list--submenu .site-nav__panel--dropdown { top: -11px; left: calc(100% + 10px); }
.site-nav__link:hover, .site-nav__link:focus, .site-nav__mega-title:hover, .site-nav__mega-link:hover { color: var(--blue); }
.site-nav__list--submenu .site-nav__link:hover, .site-nav__list--submenu .site-nav__link:focus { background: var(--bg); }
.site-nav__item:hover > .site-nav__panel, .site-nav__item:focus-within > .site-nav__panel { visibility: visible; opacity: 1; transform: translateY(0); }
.site-nav__panel--mega { right: -150px; left: auto; width: min(880px, calc(100vw - 48px)); padding: 26px; border: 1px solid var(--line); border-radius: 16px; background: var(--white); box-shadow: var(--shadow); }
.site-nav__mega-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 26px; }
.site-nav__mega-title { display: block; padding-bottom: 9px; border-bottom: 1px solid var(--line); color: var(--navy-900); font-weight: 800; }
.site-nav__mega-links, .site-nav__mega-links ul { margin: 9px 0 0; padding: 0; list-style: none; }
.site-nav__mega-links ul { margin-left: 12px; }
.site-nav__mega-link { display: block; padding: 4px 0; }
.site-nav__submenu-toggle { display: none; }
.header-cta { display: inline-flex; min-height: 44px; padding: 0 18px; align-items: center; justify-content: center; border-radius: 999px; color: var(--navy-950); background: var(--gold); font-size: 13px; font-weight: 800; white-space: nowrap; transition: transform .2s ease, box-shadow .2s ease; }
.header-cta:hover, .header-cta:focus-visible { box-shadow: 0 10px 24px rgba(239, 169, 29, .3); transform: translateY(-2px); }

.hero { position: relative; display: flex; min-height: 650px; align-items: center; overflow: hidden; color: var(--white); background: linear-gradient(135deg, var(--navy-950), var(--navy-800)); }
.hero__media, .hero__media img, .hero__overlay { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero__media img { object-fit: cover; }
.hero__overlay { background: linear-gradient(90deg, rgba(7, 29, 69, .96) 0%, rgba(10, 39, 93, .84) 42%, rgba(3, 49, 89, .28) 78%, rgba(3, 49, 89, .14) 100%); }
.hero__overlay::after { position: absolute; inset: 0; background: radial-gradient(circle at 75% 22%, rgba(49, 184, 207, .24), transparent 34%); content: ''; }
.hero__wave { position: absolute; right: -9%; bottom: -170px; z-index: 1; width: 62%; aspect-ratio: 1.8; border: 2px solid rgba(255,255,255,.15); border-radius: 50%; transform: rotate(-8deg); }
.hero__wave::before, .hero__wave::after { position: absolute; inset: 28px; border: 2px solid rgba(255,255,255,.1); border-radius: inherit; content: ''; }
.hero__wave::after { inset: 56px; }
.hero__content { position: relative; z-index: 2; width: 100%; max-width: var(--site-shell-width); margin: 0 auto; padding: 96px 24px 88px; }
.eyebrow, .section-kicker { margin: 0 0 14px; color: var(--gold); font-size: 12px; font-weight: 900; letter-spacing: .17em; text-transform: uppercase; }
h1, h2, h3 { color: var(--navy-950); font-family: Georgia, "Times New Roman", serif; }
.hero h1 { max-width: 760px; margin: 0 0 24px; color: var(--white); font-size: clamp(46px, 5.5vw, 76px); line-height: 1.04; letter-spacing: -.035em; }
.hero__content > p:not(.eyebrow) { max-width: 650px; margin: 0; color: #e5f3ff; font-size: 18px; line-height: 1.75; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 32px; }
.button { display: inline-flex; min-height: 48px; padding: 0 22px; align-items: center; justify-content: center; border: 1px solid var(--line); border-radius: 999px; background: var(--white); color: var(--navy-950); font-weight: 800; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.button:hover, .button:focus-visible { transform: translateY(-2px); }
.button--primary, .button--gold { border-color: var(--gold); background: var(--gold); color: var(--navy-950); box-shadow: 0 12px 30px rgba(239, 169, 29, .22); }
.button--primary:hover, .button--gold:hover { background: #ffd75f; }
.button--light { border-color: rgba(255,255,255,.46); color: var(--white); background: rgba(255,255,255,.08); backdrop-filter: blur(8px); }
.button--light:hover { background: rgba(255,255,255,.18); }
.button--navy { border-color: var(--navy-900); color: var(--white); background: var(--navy-900); }
.hero__assurance { display: flex; flex-wrap: wrap; gap: 22px; margin-top: 45px; color: #dceeff; font-size: 13px; font-weight: 700; }
.hero__assurance span { display: inline-flex; align-items: center; gap: 9px; }
.hero__assurance span::before { display: grid; width: 20px; height: 20px; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; color: var(--gold); content: '✓'; font-size: 11px; }

.ocean-benefits { position: relative; z-index: 4; max-width: var(--site-shell-width); margin: -38px auto 0; padding: 0 24px; }
.ocean-benefits__inner { display: grid; grid-template-columns: repeat(3, 1fr); overflow: hidden; border-radius: 18px; background: var(--white); box-shadow: var(--shadow); }
.ocean-benefits article { display: grid; grid-template-columns: 54px 1fr; gap: 16px; padding: 28px; align-items: start; border-right: 1px solid var(--line); }
.ocean-benefits article:last-child { border-right: 0; }
.ocean-benefits__icon { display: grid; width: 50px; height: 50px; place-items: center; border-radius: 50%; color: var(--white); background: linear-gradient(145deg, var(--blue), var(--aqua)); font-family: Georgia, serif; font-weight: 700; }
.ocean-benefits strong { display: block; color: var(--navy-900); font-family: Georgia, serif; font-size: 18px; }
.ocean-benefits p { margin: 3px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }

.section, .content-page { max-width: var(--site-shell-width); margin: 0 auto; padding: 92px 24px; }
.section--alt { max-width: none; background: var(--bg); }
.section--alt > * { max-width: var(--site-content-width); margin-right: auto; margin-left: auto; }
.section__header { display: flex; margin-bottom: 34px; align-items: end; justify-content: space-between; gap: 24px; }
.section__header h2, .brand-story h2, .home-cta h2 { margin: 0; font-size: clamp(34px, 4vw, 50px); line-height: 1.12; letter-spacing: -.025em; }
.section__header--center { justify-content: center; text-align: center; }
.section-link, .card__link { display: inline-flex; align-items: center; gap: 8px; color: var(--blue); font-size: 13px; font-weight: 900; text-transform: uppercase; letter-spacing: .07em; }
.section-link span, .card__link span { transition: transform .2s ease; }
.section-link:hover span, .card__link:hover span { transform: translateX(4px); }
.grid { display: grid; gap: 24px; }
.grid--products, .grid--articles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.product-range-layout:has(.grid--products > .card:only-child) { display: grid; grid-template-columns: minmax(0, 3fr) minmax(240px, .82fr); gap: 30px; align-items: stretch; }
.product-range-aside { display: none; }
.product-range-layout:has(.grid--products > .card:only-child) .product-range-aside { display: grid; padding: 34px 30px; align-content: center; border-radius: 4px; color: #c7dced; background: var(--navy-950); }
.product-range-aside h3 { margin: 0; color: var(--white); font-size: 26px; line-height: 1.2; }
.product-range-aside > p:not(.section-kicker) { margin: 14px 0 20px; font-size: 14px; }
.product-range-aside ul { display: grid; margin: 0 0 26px; padding: 0; gap: 12px; list-style: none; }
.product-range-aside li { position: relative; padding-left: 18px; font-size: 13px; line-height: 1.5; }
.product-range-aside li::before { position: absolute; top: .65em; left: 0; width: 6px; height: 6px; border-radius: 50%; background: var(--gold); content: ''; }
.product-range-aside .button { width: fit-content; min-height: 44px; padding: 0 18px; font-size: 13px; }
.card { position: relative; overflow: hidden; border: 1px solid #e1eaf1; border-radius: 18px; background: var(--white); box-shadow: 0 12px 32px rgba(7,29,69,.06); transition: transform .25s ease, box-shadow .25s ease; }
.card:hover { box-shadow: var(--shadow); transform: translateY(-6px); }
.card__body { padding: 24px 24px 26px; }
.card__label { margin: 0 0 8px !important; color: #0d5877 !important; font-size: 11px !important; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.card h3 { margin: 0 0 10px; font-size: 23px; line-height: 1.25; }
.card h3 a::after { position: absolute; inset: 0; content: ''; }
.card p { margin: 0 0 18px; color: var(--muted); font-size: 14px; }
.card__link { position: relative; z-index: 2; }
.card__media, .page-cover, .article-cover, .product-media, .brand-story__media { display: block; overflow: hidden; background: #eaf2f6; }
.card__media { aspect-ratio: 4 / 3; }
.card__media img, .page-cover img, .article-cover img, .product-media img, .brand-story__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.card:hover .card__media img { transform: scale(1.045); }

.seafood-showcase { padding: 96px 24px; background: #edf4f7; }
.seafood-showcase__inner { max-width: var(--site-content-width); margin: 0 auto; }
.seafood-showcase__header { display: grid; margin-bottom: 34px; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); gap: 70px; align-items: end; }
.seafood-showcase__header h2 { max-width: 720px; margin: 0; font-size: clamp(34px, 4vw, 50px); line-height: 1.1; letter-spacing: -.025em; }
.seafood-showcase__header > p { margin: 0 0 4px; color: var(--muted); }
.seafood-showcase__grid { display: grid; min-height: 610px; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 14px; }
.seafood-showcase__item { position: relative; min-width: 0; min-height: 0; margin: 0; overflow: hidden; border-radius: 4px; background: var(--navy-950); }
.seafood-showcase__item:first-child { grid-row: 1 / span 2; }
.seafood-showcase__media, .seafood-showcase__media img { display: block; width: 100%; height: 100%; }
.seafood-showcase__media { position: absolute; inset: 0; }
.seafood-showcase__media img { object-fit: cover; transition: transform .55s ease; }
.seafood-showcase__item:hover .seafood-showcase__media img { transform: scale(1.035); }
.seafood-showcase__item::after { position: absolute; inset: 34% 0 0; background: linear-gradient(transparent, rgba(7,29,69,.86)); content: ''; pointer-events: none; }
.seafood-showcase__item figcaption { position: absolute; right: 0; bottom: 0; left: 0; z-index: 1; display: grid; gap: 4px; padding: 26px; color: var(--white); }
.seafood-showcase__item figcaption strong { font-family: Georgia, serif; font-size: 23px; line-height: 1.2; }
.seafood-showcase__item figcaption span { max-width: 520px; color: #d5e5f1; font-size: 13px; }

.brand-story { padding: 96px 24px; color: var(--white); background: var(--navy-950); }
.brand-story__inner { display: grid; max-width: var(--site-content-width); margin: 0 auto; grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr); gap: 72px; align-items: center; }
.brand-story__visual { position: relative; min-height: 510px; }
.brand-story__media { position: absolute; inset: 0; border-radius: 160px 18px 18px 18px; }
.brand-story__media img { filter: saturate(.88) contrast(1.05); }
.brand-story__seal { position: absolute; right: -28px; bottom: 36px; display: grid; width: 146px; height: 146px; padding: 18px; place-content: center; border: 7px solid var(--navy-950); border-radius: 50%; color: var(--navy-950); background: var(--gold); text-align: center; transform: rotate(-6deg); }
.brand-story__seal strong { font-family: Georgia, serif; font-size: 27px; line-height: 1; }
.brand-story__seal span { margin-top: 5px; font-size: 9px; font-weight: 900; line-height: 1.3; letter-spacing: .05em; text-transform: uppercase; }
.brand-story h2 { max-width: 560px; color: var(--white); }
.brand-story__lead { margin: 22px 0; color: #cfe2f5; font-size: 17px; }
.prose--compact { color: #aebfd5; }
.prose--compact > :first-child { margin-top: 0; }
.brand-story .button { margin-top: 20px; border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.1); }

.section--process { overflow: hidden; }
.process-grid { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.process-grid::before { position: absolute; top: 32px; right: 9%; left: 9%; height: 1px; background: linear-gradient(90deg, transparent, var(--aqua), var(--aqua), transparent); content: ''; }
.process-grid article { position: relative; z-index: 1; padding: 0 20px; text-align: center; }
.process-grid article > span { display: grid; width: 64px; height: 64px; margin: 0 auto 22px; place-items: center; border: 7px solid var(--white); border-radius: 50%; color: var(--white); background: var(--blue); box-shadow: 0 0 0 1px var(--aqua); font-family: Georgia, serif; font-weight: 700; }
.process-grid h3 { margin: 0 0 8px; font-size: 20px; }
.process-grid p { margin: 0; color: var(--muted); font-size: 14px; }
.buyer-support { padding: 92px 24px; color: var(--white); background: linear-gradient(120deg, var(--navy-950), #0a4e7d); }
.buyer-support__inner { display: grid; max-width: var(--site-content-width); margin: 0 auto; grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr); gap: 64px; align-items: start; }
.buyer-support__header h2 { margin: 0; color: var(--white); font-size: clamp(34px, 4vw, 48px); line-height: 1.12; }
.buyer-support__header > p:last-child { margin: 20px 0 0; color: #c7dced; }
.buyer-support__grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.22); }
.buyer-support__grid article { padding: 26px 22px 0; border-left: 1px solid rgba(255,255,255,.16); }
.buyer-support__grid article:first-child { border-left: 0; }
.buyer-support__grid article > span { color: var(--gold); font-size: 12px; font-weight: 900; letter-spacing: .12em; }
.buyer-support__grid h3 { margin: 20px 0 10px; color: var(--white); font-size: 21px; line-height: 1.25; }
.buyer-support__grid p { margin: 0; color: #bfd2e4; font-size: 14px; }
.section--articles .card { box-shadow: none; }
.home-cta { display: flex; max-width: var(--site-content-width); margin: 96px auto; padding: 54px 58px; align-items: center; justify-content: space-between; gap: 60px; border-radius: 24px; color: var(--white); background: linear-gradient(125deg, var(--navy-900), #075f94); box-shadow: var(--shadow); }
.home-cta h2 { max-width: 750px; color: var(--white); }
.home-cta p:not(.section-kicker) { max-width: 760px; margin: 16px 0 0; color: #d7eaf7; }
.home-cta .button { flex: 0 0 auto; }
.home-faq { display: grid; max-width: var(--site-shell-width); margin: 0 auto; padding: 96px 24px 16px; grid-template-columns: minmax(260px, .65fr) minmax(0, 1.35fr); gap: 72px; }
.home-faq__intro h2 { margin: 0; font-size: clamp(34px, 4vw, 48px); line-height: 1.12; }
.home-faq__intro > p:last-child { margin: 18px 0 0; color: var(--muted); }
.home-faq__list { border-top: 1px solid var(--line); }
.home-faq details { border-bottom: 1px solid var(--line); }
.home-faq summary { position: relative; padding: 22px 48px 22px 0; color: var(--navy-900); font-family: Georgia, serif; font-size: 19px; font-weight: 700; line-height: 1.35; list-style: none; cursor: pointer; }
.home-faq summary::-webkit-details-marker { display: none; }
.home-faq summary::after { position: absolute; top: 19px; right: 4px; display: grid; width: 30px; height: 30px; place-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--blue); content: '+'; font-family: sans-serif; }
.home-faq details[open] summary::after { content: '−'; }
.home-faq details p { margin: -4px 48px 22px 0; color: var(--muted); }

.content-page { min-height: 62vh; }
.content-page > .breadcrumb:first-child { margin-top: -26px; }
.content-page--inner { padding-top: 72px; }
.page-hero { position: relative; display: flex; min-height: 430px; align-items: flex-end; overflow: hidden; color: var(--white); background: var(--navy-950); }
.page-hero__media, .page-hero__media img, .page-hero__overlay { position: absolute; inset: 0; width: 100%; height: 100%; }
.page-hero__media img { object-fit: cover; }
.page-hero__overlay { background: linear-gradient(90deg, rgba(7,29,69,.96), rgba(7,29,69,.68) 55%, rgba(7,29,69,.22)); }
.page-hero--plain { min-height: 340px; background: radial-gradient(circle at 85% 20%, #1468a0 0, transparent 28%), var(--navy-950); }
.page-hero__content { position: relative; z-index: 1; width: 100%; max-width: var(--site-shell-width); margin: 0 auto; padding: 70px 24px 62px; }
.page-hero .breadcrumb { color: #c6daed; }
.page-hero .breadcrumb a { color: var(--gold); }
.page-hero h1 { max-width: 900px; margin: 0; color: var(--white); font-size: clamp(45px, 5vw, 68px); line-height: 1.06; letter-spacing: -.03em; }
.page-hero .lead { max-width: 720px; margin: 18px 0 0; color: #d8e8f5; }
.page-prose { max-width: 900px; }
.content-page--about { max-width: none; padding-right: 0; padding-bottom: 0; padding-left: 0; }
.content-page--about .page-prose { max-width: none; }
.about-feature-media { max-width: var(--site-shell-width); margin: 0 auto 78px; padding: 0 24px; }
.about-feature-media__picture { display: block; overflow: hidden; width: 100%; aspect-ratio: 16 / 7; border-radius: 4px; background: var(--bg); box-shadow: var(--shadow); }
.about-feature-media__picture img { display: block; width: 100%; height: 100%; object-fit: cover; }
.about-intro, .about-principles, .about-focus { max-width: var(--site-shell-width); margin-right: auto; margin-left: auto; }
.about-workflow__inner, .about-cta { max-width: var(--site-content-width); margin-right: auto; margin-left: auto; }
.about-intro { display: grid; padding: 0 24px 88px; grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr); gap: 84px; align-items: center; }
.about-intro h2, .about-principles h2, .about-workflow h2, .about-focus h2, .about-cta h2 { margin: 0; font-size: clamp(34px, 4vw, 50px); line-height: 1.12; }
.about-intro__lead { margin: 20px 0 0; color: #31445f !important; font-size: 18px; line-height: 1.8; }
.about-intro__copy > p:last-child { margin: 16px 0 0; }
.about-intro__aside { padding: 36px; border-top: 4px solid var(--gold); color: #c7dced; background: var(--navy-950); }
.about-intro__aside strong { display: block; margin-bottom: 18px; color: var(--white); font-family: Georgia, serif; font-size: 22px; line-height: 1.3; }
.about-intro__aside ul { display: grid; margin: 0; padding: 0; gap: 13px; list-style: none; }
.about-intro__aside li { position: relative; padding-left: 20px; color: #c7dced; }
.about-intro__aside li::before { position: absolute; top: .68em; left: 0; width: 6px; height: 6px; border-radius: 50%; background: var(--gold); content: ''; }
.about-principles { padding: 0 24px 96px; }
.about-section-heading { display: grid; margin-bottom: 38px; grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr); gap: 72px; align-items: end; }
.about-section-heading > p { margin: 0; }
.about-principles__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.about-principles__grid article { padding: 30px 34px 0 0; }
.about-principles__grid article + article { padding-left: 34px; border-left: 1px solid var(--line); }
.about-principles__grid span, .about-workflow__steps span { color: #0d5877; font-size: 12px; font-weight: 900; letter-spacing: .12em; }
.about-principles__grid h3 { margin: 16px 0 10px; font-size: 23px; }
.about-principles__grid p { margin: 0; }
.about-workflow { padding: 92px 24px; background: var(--bg); }
.about-workflow__inner > p { max-width: 760px; margin: 18px 0 42px; }
.about-workflow__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: var(--line); }
.about-workflow__steps article { min-height: 230px; padding: 30px 26px; background: var(--white); }
.about-workflow__steps h3 { margin: 16px 0 10px; font-size: 21px; }
.about-workflow__steps p { margin: 0; font-size: 14px; }
.about-focus { display: grid; padding: 96px 24px; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 84px; }
.about-focus article { padding-top: 28px; border-top: 3px solid var(--aqua); }
.about-focus article:last-child { border-top-color: var(--gold); }
.about-focus h2 { font-size: 36px; }
.about-focus p { margin: 18px 0 0; }
.about-focus ul { margin: 20px 0 0; padding-left: 20px; }
.about-cta { display: flex; padding: 54px 58px; align-items: center; justify-content: space-between; gap: 60px; color: var(--white); background: var(--navy-900); }
.about-cta h2 { max-width: 720px; color: var(--white); }
.about-cta p { max-width: 760px; margin: 16px 0 0; color: #d7eaf7; }
.about-cta .button { flex: 0 0 auto; }
.content-page--contact { max-width: none; padding-right: 0; padding-bottom: 0; padding-left: 0; }
.content-page--contact .page-prose { max-width: none; }
.contact-intro, .contact-preparation, .content-page--contact .contact-layout { max-width: var(--site-shell-width); margin-right: auto; margin-left: auto; }
.contact-process { max-width: var(--site-content-width); margin-right: auto; margin-left: auto; }
.contact-intro { display: grid; padding: 0 24px 74px; grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr); gap: 88px; align-items: start; }
.contact-intro h2, .contact-process h2 { margin: 0; font-size: clamp(36px, 4vw, 50px); line-height: 1.12; }
.contact-intro > div:last-child p { margin: 0; font-size: 17px; line-height: 1.8; }
.contact-intro > div:last-child p + p { margin-top: 14px; }
.contact-preparation { padding: 0 24px 92px; }
.contact-preparation__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.contact-preparation__grid article { padding: 28px 32px 0 0; }
.contact-preparation__grid article + article { padding-left: 32px; border-left: 1px solid var(--line); }
.contact-preparation__grid span, .contact-process li > span { color: #0d5877; font-size: 12px; font-weight: 900; letter-spacing: .12em; }
.contact-process li > span { color: var(--gold); }
.contact-preparation__grid h3 { margin: 15px 0 9px; font-size: 23px; }
.contact-preparation__grid p { margin: 0; }
.contact-process { display: grid; margin-bottom: 96px; padding: 52px 58px; grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr); gap: 72px; color: var(--white); background: var(--navy-950); }
.contact-process h2 { color: var(--white); }
.contact-process ol { display: grid; margin: 0; padding: 0; gap: 0; list-style: none; }
.contact-process li { display: grid; padding: 18px 0; grid-template-columns: 42px 1fr; gap: 14px; border-bottom: 1px solid rgba(255,255,255,.16); }
.contact-process li:first-child { padding-top: 0; }
.contact-process li:last-child { padding-bottom: 0; border-bottom: 0; }
.contact-process strong { display: block; color: var(--white); font-family: Georgia, serif; font-size: 19px; }
.contact-process li p { margin: 4px 0 0; color: #bdd2e5; font-size: 14px; }
.content-page--contact .contact-layout { padding: 0 24px 84px; grid-template-columns: 1fr; }
.content-page--contact .contact-company { display: grid; max-width: none; margin-bottom: 24px; padding: 34px 40px; grid-template-columns: minmax(220px, .55fr) minmax(0, 1.45fr); gap: 44px; align-items: start; border-radius: 4px; background: var(--bg); }
.content-page--contact .contact-company h2 { margin: 0; font-size: 30px; }
.contact-company__details { display: grid; gap: 15px; }
.contact-company__details .company-contact { min-width: 0; max-width: none; }
.contact-company__details .company-contact > strong { margin-bottom: 9px; font-family: Georgia, serif; font-size: 21px; }
.contact-company__details .company-contact address { gap: 7px; }
.contact-company__details > p { max-width: 650px; margin: 0; color: var(--muted); }
.contact-company__details .section-link { width: fit-content; }
.content-page--contact .inquiry-box { display: grid; padding: 46px; grid-template-columns: minmax(230px, .62fr) minmax(0, 1.38fr); gap: 20px 56px; color: var(--white); background: var(--navy-900); }
.content-page--contact .inquiry-box > div:first-child { align-self: start; }
.content-page--contact .inquiry-box h2 { color: var(--white); font-size: 38px; }
.content-page--contact .inquiry-box > div:first-child > p:last-child { color: #c9dced; }
.content-page--contact .inquiry-box .inquiry-form { grid-column: 2; grid-row: 1 / span 2; }
.content-page--contact .inquiry-box .inquiry-form label { color: var(--white); }
.content-page--contact .inquiry-box .site-notice { grid-column: 1; }
.page-cover, .article-cover { width: 100%; aspect-ratio: 16 / 7; margin-bottom: 38px; border-radius: 20px; box-shadow: var(--shadow); }
.breadcrumb { display: flex; flex-wrap: wrap; margin-bottom: 22px; align-items: center; gap: 9px; color: var(--muted); font-size: 13px; }
.breadcrumb a { color: var(--blue); font-weight: 700; }
.prose { max-width: 850px; }
.prose h1 { max-width: 900px; margin: 0 0 18px; font-size: clamp(40px, 5vw, 60px); line-height: 1.08; letter-spacing: -.03em; }
.prose h2 { margin-top: 38px; font-size: 30px; }
.prose h3 { margin-top: 28px; font-size: 23px; }
.prose p, .prose li { color: #465873; }
.prose img { height: auto; border-radius: 14px; }
.lead { color: var(--muted); font-size: 18px; }
.muted { color: var(--muted); }
.listing-section, .search-section { margin-top: 46px; padding-top: 38px; border-top: 1px solid var(--line); }
.listing-section--primary { margin-top: 56px; }
.grid--products > .card:only-child { display: grid; max-width: none; grid-template-columns: minmax(0, 1.12fr) minmax(280px, .88fr); }
.grid--products:has(> .card:only-child) { grid-template-columns: minmax(0, 1fr); }
.grid--products > .card:only-child .card__media { height: 100%; aspect-ratio: auto; }
.grid--products > .card:only-child .card__body { display: flex; padding: 38px; align-items: flex-start; justify-content: center; flex-direction: column; }
.category-pills { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 26px; }
.category-pills span, .category-pills a { display: inline-flex; min-height: 38px; padding: 0 15px; align-items: center; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: var(--white); font-size: 13px; font-weight: 800; }
.category-pills a:hover { border-color: var(--blue); color: var(--blue); }
.content-page--split { display: grid; grid-template-columns: minmax(300px, 520px) minmax(0, 1fr); gap: 64px; }
.product-page { background: linear-gradient(180deg, var(--bg), var(--white) 38%); }
.product-detail { padding-top: 78px; }
.product-gallery-stack { position: sticky; top: 118px; align-self: start; }
.product-gallery { position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--white); box-shadow: var(--shadow); }
.product-media { aspect-ratio: 1 / 1; }
.product-gallery-thumbs { display: grid; margin-top: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.product-gallery-thumb { display: block; overflow: hidden; aspect-ratio: 4 / 3; border: 1px solid var(--line); border-radius: 8px; background: var(--white); }
.product-gallery-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.product-gallery__badge { position: absolute; right: 18px; bottom: 18px; padding: 9px 14px; border-radius: 999px; color: var(--navy-950); background: var(--gold); font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; box-shadow: 0 8px 22px rgba(7,29,69,.18); }
.product-summary { max-width: none; }
.product-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 28px 0 24px; }
.button--outline { border-color: #b7c8d7; color: var(--navy-900); background: transparent; }
.button--outline:hover { border-color: var(--blue); color: var(--blue); }
.product-assurance { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0 0 30px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.product-assurance span { position: relative; padding: 15px 10px 15px 24px; color: var(--navy-900); font-size: 11px; font-weight: 800; line-height: 1.4; }
.product-assurance span::before { position: absolute; top: 16px; left: 6px; color: var(--blue); content: '✓'; }
.product-rich-content { max-width: none; }
.product-rich-content > :first-child { margin-top: 0; }
.product-rich-content > :last-child { margin-bottom: 0; }
.product-rich-content p, .product-rich-content li { line-height: 1.85; }
.product-rich-content img { display: block; max-width: 100%; height: auto; margin: 34px auto; border-radius: 12px; }
.product-rich-content .ql-align-center { text-align: center; }
.product-rich-content .ql-align-right { text-align: right; }
.product-rich-content .ql-align-justify { text-align: justify; }
.product-rich-content .ql-align-center img { margin-right: auto; margin-left: auto; }
.product-rich-content .ql-align-right img { margin-right: 0; margin-left: auto; }
.product-inquiry-wrap { max-width: var(--site-shell-width); margin: 0 auto; padding: 0 24px 96px; }
.product-inquiry-wrap .inquiry-box { display: grid; padding: 42px; grid-template-columns: minmax(230px, .65fr) minmax(0, 1.35fr); gap: 18px 52px; background: linear-gradient(135deg, var(--navy-950), #075f94); }
.product-inquiry-wrap .inquiry-box > div:first-child { align-self: start; }
.product-inquiry-wrap .inquiry-box .eyebrow { color: var(--gold); }
.product-inquiry-wrap .inquiry-box h2 { color: var(--white); font-size: 36px; }
.product-inquiry-wrap .inquiry-box > div:first-child > p:last-child { color: #c9dced; }
.product-inquiry-wrap .inquiry-form { grid-column: 2; grid-row: 1 / span 2; }
.product-inquiry-wrap .inquiry-form label { color: var(--white); }
.product-inquiry-wrap .site-notice { grid-column: 1; }
.product-facts, .product-specifications dl { margin: 30px 0; border-top: 1px solid var(--line); }
.product-facts div, .product-specifications dl div { display: grid; grid-template-columns: minmax(130px, .38fr) minmax(0, 1fr); gap: 20px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.product-facts dt, .product-specifications dt { color: var(--navy-900); font-weight: 800; }
.product-facts dd, .product-specifications dd { margin: 0; color: var(--muted); }
.product-specifications { margin-top: 38px; }
.product-specifications h2 { margin-bottom: 12px; font-size: 27px; }
.product-story { max-width: var(--site-shell-width); margin: 0 auto; padding: 18px 24px 96px; }
.search-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; margin-bottom: 30px; align-items: end; gap: 12px; }
.search-form label { color: var(--navy-900); font-weight: 800; }
.search-form input { width: 100%; height: 48px; margin-top: 7px; padding: 0 15px; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: var(--white); }
.search-links { display: grid; border-top: 1px solid var(--line); }
.search-links a { display: grid; gap: 4px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.search-links a:hover strong { color: var(--blue); }
.search-links span { color: var(--muted); }
.not-found-actions { margin-top: 30px; }
.contact-layout { display: grid; grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr); gap: 34px; align-items: start; }
.contact-layout .contact-company, .contact-layout .inquiry-box { margin-top: 0; }
.article-page { background: linear-gradient(180deg, var(--bg) 0, var(--white) 48%); }
.article-heading { max-width: 980px; margin: 0 auto; padding: 86px 24px 34px; text-align: center; }
.article-heading .breadcrumb { justify-content: center; }
.article-heading h1 { margin: 0; color: var(--navy-950); font-size: clamp(46px, 6vw, 72px); line-height: 1.06; letter-spacing: -.035em; }
.article-heading .lead { max-width: 760px; margin: 20px auto 0; }
.article-content { max-width: 1000px; padding-top: 30px; }
.article-content .article-cover { aspect-ratio: 16 / 9; }
.article-body { max-width: 760px; margin: 0 auto; font-size: 17px; }

.inquiry-box { margin-top: 38px; padding: 30px; border: 1px solid #cfe3ed; border-radius: 18px; background: linear-gradient(145deg, var(--seafoam), #f8fcff); }
.inquiry-box h2 { margin: 0 0 8px; font-size: 30px; line-height: 1.2; }
.inquiry-box p { margin: 0 0 20px; color: var(--muted); }
.inquiry-form { display: grid; gap: 15px; }
.inquiry-form label { display: block; color: var(--navy-900); font-size: 13px; font-weight: 800; }
.inquiry-form input, .inquiry-form textarea { width: 100%; margin-top: 6px; padding: 11px 13px; border: 1px solid #cddce6; border-radius: 9px; color: var(--text); background: var(--white); outline: none; transition: border-color .2s, box-shadow .2s; }
.inquiry-form input:focus, .inquiry-form textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(8,122,193,.12); }
.inquiry-form textarea { min-height: 132px; resize: vertical; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.contact-company { max-width: 760px; margin: 30px 0; padding: 26px; border: 1px solid var(--line); border-radius: 16px; background: var(--bg); }
.contact-company h2 { margin-top: 0; }
.company-contact { min-width: 220px; max-width: 350px; }
.company-contact > strong { display: block; margin-bottom: 7px; color: var(--white); }
.company-contact address { display: grid; gap: 4px; color: #b8c9dc; font-style: normal; }
.contact-company .company-contact > strong { color: var(--navy-900); }
.contact-company .company-contact address { color: var(--muted); }
.company-contact a:hover { color: var(--gold); text-decoration: underline; }

.floating-inquiry-button { position: fixed; right: 24px; bottom: 24px; z-index: 40; display: grid; width: 60px; height: 60px; padding: 0; place-items: center; border: 3px solid var(--white); border-radius: 50%; color: var(--navy-950); background: var(--gold); box-shadow: 0 14px 34px rgba(7,29,69,.28); cursor: pointer; }
.floating-inquiry-button:hover { background: #ffda63; transform: translateY(-2px); }
.floating-inquiry-button span { font-size: 27px; line-height: 1; }
.floating-inquiry-dialog { width: min(640px, calc(100vw - 32px)); max-height: min(780px, calc(100vh - 32px)); padding: 24px; border: 0; border-radius: 20px; color: var(--text); background: var(--white); box-shadow: 0 30px 90px rgba(7,29,69,.32); }
.floating-inquiry-dialog::backdrop { background: rgba(7,29,69,.68); backdrop-filter: blur(4px); }
.floating-inquiry-dialog__header { display: flex; margin-bottom: 16px; padding-bottom: 16px; align-items: flex-start; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--line); }
.floating-inquiry-dialog__header h2 { margin: 0; font-size: 26px; line-height: 1.3; }
.floating-inquiry-dialog__header p { margin: 5px 0 0; color: var(--muted); font-size: 14px; }
.floating-inquiry-dialog__close { flex: 0 0 38px; width: 38px; height: 38px; padding: 0; border: 1px solid var(--line); border-radius: 50%; color: var(--muted); background: var(--white); font-size: 25px; cursor: pointer; }
.site-notice { margin-bottom: 16px; padding: 11px 13px; border: 1px solid #a7e0bf; border-radius: 9px; color: #14643b; background: #edfff4; }
.hidden-field { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.site-footer { display: grid; max-width: none; margin: 0; padding: 68px max(24px, calc((100vw - var(--site-content-width)) / 2)); grid-template-columns: minmax(260px, 1.2fr) repeat(3, minmax(160px, .72fr)); gap: 42px; align-items: start; color: #b8c9dc; background: var(--navy-950); }
.site-footer:has(> .company-contact) { grid-template-columns: minmax(240px, 1.05fr) minmax(190px, .8fr) minmax(145px, .58fr) minmax(185px, .72fr) minmax(175px, .68fr); gap: 30px; }
.site-footer__brand { max-width: 390px; }
.footer-brand { display: flex; align-items: center; gap: 14px; color: var(--white); }
.footer-brand img { width: auto; height: 44px; object-fit: contain; }
.site-footer__brand p { margin: 16px 0 0; font-size: 14px; }
.site-footer .company-contact > strong { color: var(--white); }
.footer-nav, .footer-support, .footer-inquiry { display: grid; align-content: start; justify-content: start; gap: 9px; }
.footer-nav strong, .footer-support strong, .footer-inquiry strong, .footer-social > strong { margin-bottom: 6px; color: var(--white); font-family: Georgia, serif; font-size: 18px; }
.footer-nav a, .footer-support a { width: fit-content; }
.footer-nav a:hover, .footer-support a:hover, .footer-social a:hover { color: var(--gold); }
.footer-inquiry p { max-width: 250px; margin: 0 0 10px; font-size: 14px; line-height: 1.7; }
.footer-inquiry__action { display: inline-flex; width: fit-content; min-height: 42px; padding: 0 17px; align-items: center; justify-content: center; border: 1px solid var(--gold); color: var(--navy-950); background: var(--gold); font-size: 13px; font-weight: 800; transition: background .2s, transform .2s; }
.footer-inquiry__action:hover, .footer-inquiry__action:focus-visible { background: #ffda63; transform: translateY(-2px); }
.footer-social { min-width: 180px; }
.footer-social__links { display: flex; flex-wrap: wrap; gap: 7px 14px; }
.footer-social__wechat { display: grid; gap: 7px; margin-top: 12px; }
.footer-social__wechat img { width: 96px; height: 96px; border: 1px solid rgba(255,255,255,.2); object-fit: contain; }
.site-footer__bottom { display: flex; padding: 17px max(24px, calc((100vw - var(--site-content-width)) / 2)); align-items: center; justify-content: space-between; gap: 18px; color: #8ea4be; background: #041530; font-size: 12px; }
.site-footer__bottom a:hover { color: var(--gold); }
.mobile-action-bar { display: none; }

.cookie-consent { position: fixed; right: 20px; bottom: 20px; z-index: 80; display: flex; width: min(560px, calc(100vw - 40px)); padding: 17px; align-items: center; justify-content: space-between; gap: 22px; border: 1px solid var(--line); border-radius: 15px; background: var(--white); box-shadow: var(--shadow); }
.cookie-consent[hidden] { display: none; }
.cookie-consent p { margin: 0; color: var(--muted); font-size: 13px; }
.cookie-consent__actions { display: flex; flex-shrink: 0; align-items: center; gap: 8px; }
.cookie-consent__actions a { color: var(--blue); font-size: 12px; font-weight: 800; }
.cookie-consent__actions button { min-height: 36px; padding: 0 13px; border: 1px solid var(--blue); border-radius: 999px; color: var(--white); background: var(--blue); font-weight: 800; cursor: pointer; }
.cookie-consent__actions .cookie-consent__reject { border-color: var(--line); color: var(--text); background: var(--white); }

@media (max-width: 1040px) {
  .site-nav__list { gap: 18px; }
  .header-cta { display: none; }
  .site-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .site-footer:has(> .company-contact) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .brand-story__inner { gap: 46px; }
  .process-grid { grid-template-columns: repeat(2, 1fr); row-gap: 42px; }
  .process-grid::before { display: none; }
}

@media (max-width: 820px) {
  .site-topbar { display: none; }
  .site-topbar__inner { min-height: 32px; justify-content: center; padding: 0 16px; text-align: center; }
  .site-topbar__contact { display: none; }
  .site-header { min-height: 76px; padding: 7px 18px; flex-wrap: wrap; gap: 12px; }
  .brand { min-width: 0; }
  .brand__logo { max-width: 170px; height: 56px; }
  .brand__name { max-width: 125px; font-size: 15px; }
  .site-nav--desktop { display: none; }
  .site-nav-toggle { display: inline-grid; width: 44px; height: 44px; margin-left: auto; padding: 10px; place-content: center; border: 1px solid var(--line); border-radius: 50%; background: var(--white); cursor: pointer; }
  .site-nav-toggle span { display: block; width: 20px; height: 2px; margin: 2px 0; background: var(--navy-900); transition: transform .2s, opacity .2s; }
  .site-nav-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .site-nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .site-nav-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  .site-nav--mobile { display: none; width: calc(100% + 36px); margin: 0 -18px -7px; padding: 12px 18px 20px; border-top: 1px solid var(--line); background: var(--white); box-shadow: 0 16px 30px rgba(7,29,69,.1); }
  .site-nav--mobile.is-open { display: block; }
  .site-nav--mobile .site-nav__list { display: grid; gap: 0; }
  .site-nav--mobile .site-nav__item { border-bottom: 1px solid var(--line); }
  .site-nav--mobile .site-nav__link-row { min-height: 48px; justify-content: space-between; }
  .site-nav--mobile .site-nav__link { flex: 1; }
  .site-nav--mobile .site-nav__link::after { display: none; }
  .site-nav--mobile .site-nav__submenu-toggle { display: grid; width: 36px; height: 36px; place-items: center; border: 0; color: var(--navy-900); background: transparent; }
  .site-nav--mobile .site-nav__panel { position: static; display: none; visibility: visible; width: 100%; padding: 0 0 10px 12px; border: 0; opacity: 1; background: transparent; box-shadow: none; transform: none; }
  .site-nav--mobile .site-nav__item.is-open > .site-nav__panel { display: block; }
  .site-nav--mobile .site-nav__list--submenu .site-nav__item { min-width: 0; }
  .header-cta--mobile { display: inline-flex; width: 100%; margin-top: 16px; }
  .hero { min-height: 620px; }
  .hero__overlay { background: linear-gradient(90deg, rgba(7,29,69,.94), rgba(7,29,69,.7)); }
  .hero__content { padding: 76px 20px 74px; }
  .hero h1 { font-size: clamp(42px, 13vw, 59px); }
  .hero__content > p:not(.eyebrow) { font-size: 16px; }
  .hero__assurance { gap: 12px 18px; margin-top: 34px; }
  .ocean-benefits { margin-top: -24px; padding: 0 18px; }
  .ocean-benefits__inner { grid-template-columns: 1fr; }
  .ocean-benefits article { padding: 21px; border-right: 0; border-bottom: 1px solid var(--line); }
  .ocean-benefits article:last-child { border-bottom: 0; }
  .section, .content-page { padding: 68px 20px; }
  .page-hero { min-height: 360px; }
  .page-hero--plain { min-height: 300px; }
  .page-hero__content { padding: 62px 20px 48px; }
  .page-hero h1 { font-size: 43px; }
  .content-page--inner { padding-top: 52px; }
  .content-page--about { padding-top: 58px; }
  .about-feature-media { margin-bottom: 52px; padding: 0 20px; }
  .about-feature-media__picture { aspect-ratio: 4 / 3; }
  .about-intro { padding: 0 20px 68px; grid-template-columns: 1fr; gap: 30px; }
  .about-intro__aside { padding: 28px 24px; }
  .about-principles { padding: 0 20px 68px; }
  .about-section-heading { margin-bottom: 30px; grid-template-columns: 1fr; gap: 16px; }
  .about-principles__grid { grid-template-columns: 1fr; }
  .about-principles__grid article { padding: 24px 0; border-bottom: 1px solid var(--line); }
  .about-principles__grid article + article { padding-left: 0; border-left: 0; }
  .about-principles__grid article:last-child { border-bottom: 0; }
  .about-workflow { padding: 68px 20px; }
  .about-workflow__steps { grid-template-columns: 1fr; }
  .about-workflow__steps article { min-height: 0; padding: 26px 24px; }
  .about-focus { padding: 68px 20px; grid-template-columns: 1fr; gap: 48px; }
  .about-focus h2 { font-size: 32px; }
  .about-cta { margin: 0 20px; padding: 38px 28px; align-items: flex-start; flex-direction: column; gap: 28px; }
  .content-page--contact { padding: 58px 0 0; }
  .contact-intro { padding: 0 20px 56px; grid-template-columns: 1fr; gap: 18px; }
  .contact-preparation { padding: 0 20px 68px; }
  .contact-preparation__grid { grid-template-columns: 1fr; }
  .contact-preparation__grid article { padding: 24px 0; border-bottom: 1px solid var(--line); }
  .contact-preparation__grid article + article { padding-left: 0; border-left: 0; }
  .contact-preparation__grid article:last-child { border-bottom: 0; }
  .contact-process { margin: 0 20px 68px; padding: 36px 26px; grid-template-columns: 1fr; gap: 30px; }
  .content-page--contact .contact-layout { padding: 0 20px 68px; }
  .content-page--contact .contact-company { padding: 28px 24px; grid-template-columns: 1fr; gap: 18px; }
  .content-page--contact .inquiry-box { display: block; padding: 30px 24px; }
  .content-page--contact .inquiry-box .inquiry-form { margin-top: 24px; }
  .section__header { align-items: flex-start; flex-direction: column; }
  .product-range-layout:has(.grid--products > .card:only-child) { grid-template-columns: 1fr; }
  .product-range-layout:has(.grid--products > .card:only-child) .product-range-aside { padding: 30px 24px; }
  .grid--products, .grid--articles { grid-template-columns: 1fr; }
  .grid--products > .card:only-child { display: block; max-width: none; }
  .grid--products:has(> .card:only-child) { grid-template-columns: 1fr; }
  .grid--products > .card:only-child .card__media { height: auto; aspect-ratio: 4 / 3; }
  .grid--products > .card:only-child .card__body { display: block; padding: 24px; }
  .seafood-showcase { padding: 68px 20px; }
  .seafood-showcase__header { grid-template-columns: 1fr; gap: 16px; }
  .seafood-showcase__grid { min-height: 0; grid-template-columns: 1fr; grid-template-rows: none; }
  .seafood-showcase__item { min-height: 330px; grid-row: auto; }
  .seafood-showcase__item:first-child { width: 100%; min-height: 0; aspect-ratio: 4 / 3; }
  .seafood-showcase__item figcaption { padding: 22px; }
  .brand-story { padding: 72px 20px; }
  .brand-story__inner { grid-template-columns: 1fr; gap: 52px; }
  .brand-story__visual { min-height: 390px; }
  .brand-story__media { border-radius: 100px 16px 16px 16px; }
  .brand-story__seal { right: -8px; bottom: -24px; width: 122px; height: 122px; }
  .process-grid { grid-template-columns: 1fr; gap: 38px; }
  .buyer-support { padding: 68px 20px; }
  .buyer-support__inner { grid-template-columns: 1fr; gap: 36px; }
  .buyer-support__grid { grid-template-columns: 1fr; }
  .buyer-support__grid article { padding: 22px 0; border-bottom: 1px solid rgba(255,255,255,.16); border-left: 0; }
  .buyer-support__grid article:last-child { border-bottom: 0; }
  .buyer-support__grid h3 { margin-top: 10px; }
  .home-cta { margin: 68px 20px; padding: 38px 28px; align-items: flex-start; flex-direction: column; gap: 28px; }
  .home-faq { padding: 68px 20px 0; grid-template-columns: 1fr; gap: 28px; }
  .content-page--split { grid-template-columns: 1fr; gap: 38px; }
  .product-gallery-stack { position: static; }
  .product-detail { padding-top: 42px; }
  .product-summary .breadcrumb { margin-top: 4px; }
  .product-assurance { grid-template-columns: 1fr; }
  .product-assurance span { border-bottom: 1px solid var(--line); }
  .product-assurance span:last-child { border-bottom: 0; }
  .product-actions .button { flex: 1 1 145px; }
  .product-story { padding: 10px 20px 68px; }
  .product-rich-content img { margin: 26px auto; border-radius: 9px; }
  .product-inquiry-wrap { padding: 0 20px 68px; }
  .product-inquiry-wrap .inquiry-box { display: block; padding: 26px 22px; }
  .product-inquiry-wrap .inquiry-form { margin-top: 22px; }
  .contact-layout { grid-template-columns: 1fr; }
  .article-heading { padding: 62px 20px 24px; text-align: left; }
  .article-heading .breadcrumb { justify-content: flex-start; }
  .article-heading h1 { font-size: 42px; }
  .article-heading .lead { margin-left: 0; }
  .article-content { padding-top: 22px; }
  .article-content .article-cover { aspect-ratio: 4 / 3; }
  .page-cover, .article-cover { aspect-ratio: 4 / 3; border-radius: 15px; }
  .prose h1 { font-size: 40px; }
  .form-grid, .search-form { grid-template-columns: 1fr; }
  .product-facts div, .product-specifications dl div { grid-template-columns: 1fr; gap: 3px; }
  .site-footer { padding: 52px 20px; grid-template-columns: 1fr; gap: 34px; }
  .site-footer:has(> .company-contact) { grid-template-columns: 1fr; }
  .site-footer__bottom { padding: 16px 20px; align-items: flex-start; flex-direction: column; }
  body { padding-bottom: 66px; }
  .cookie-consent { right: 12px; bottom: 78px; width: calc(100vw - 24px); align-items: stretch; flex-direction: column; gap: 12px; }
  .cookie-consent__actions { flex-wrap: wrap; }
  .floating-inquiry-button { display: none; }
  .mobile-action-bar { position: fixed; right: 0; bottom: 0; left: 0; z-index: 70; display: grid; min-height: 66px; padding: 8px 12px max(8px, env(safe-area-inset-bottom)); grid-template-columns: .8fr 1.2fr; gap: 8px; border-top: 1px solid var(--line); background: rgba(255,255,255,.97); box-shadow: 0 -10px 30px rgba(7,29,69,.12); backdrop-filter: blur(14px); }
  .mobile-action-bar a, .mobile-action-bar button { display: inline-flex; min-width: 0; min-height: 48px; padding: 0 12px; align-items: center; justify-content: center; border: 1px solid var(--line); border-radius: 999px; color: var(--navy-900); background: var(--white); font-size: 13px; font-weight: 900; }
  .mobile-action-bar button, .mobile-action-bar__primary { border-color: var(--gold) !important; color: var(--navy-950) !important; background: var(--gold) !important; }
  .floating-inquiry-dialog { max-height: calc(100vh - 90px); overflow-y: auto; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .ricatun-trust-hero__slides figure { transform: none !important; transition: opacity .18s ease !important; }
  .ricatun-trust-hero__slides figure.is-active.is-entering, .ricatun-trust-hero__slides figure.is-leaving { opacity: 0 !important; }
  .ricatun-trust-hero__copy { transform: none !important; transition: opacity .18s ease !important; }
  .ricatun-trust-hero__copy.is-active.is-entering, .ricatun-trust-hero__copy.is-leaving { opacity: 0 !important; }
  .ricatun-trust-hero__slides figure.is-active img { animation: none !important; }
  .ricatun-trust-hero__progress { visibility: hidden; }
}

/* Simplified-Chinese domestic-site typography and visual tuning. */
html[lang^="zh"] body {
  font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", "Noto Sans SC", system-ui, sans-serif;
  line-height: 1.75;
}
html[lang^="zh"] :is(h1, h2, h3, .ocean-benefits__icon, .ocean-benefits strong, .seafood-showcase__item figcaption strong, .brand-story__seal strong, .process-grid article > span, .home-faq summary, .about-intro__aside strong, .contact-process strong, .contact-company__details .company-contact > strong, .footer-nav strong, .footer-support strong, .footer-inquiry strong, .footer-social > strong) {
  font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", "Noto Sans SC", system-ui, sans-serif;
}
html[lang^="zh"] h1,
html[lang^="zh"] h2,
html[lang^="zh"] h3 { font-weight: 700; letter-spacing: 0; }
html[lang^="zh"] .site-topbar { letter-spacing: .02em; text-transform: none; }
html[lang^="zh"] .site-nav { font-size: 15px; font-weight: 600; }
html[lang^="zh"] .eyebrow,
html[lang^="zh"] .section-kicker { margin-bottom: 12px; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: none; }
html[lang^="zh"] .hero { min-height: 570px; }
html[lang^="zh"] .hero__overlay { background: linear-gradient(90deg, rgba(7, 38, 72, .9) 0%, rgba(10, 66, 102, .74) 48%, rgba(7, 64, 91, .2) 82%, rgba(7, 64, 91, .08) 100%); }
html[lang^="zh"] .hero__content { padding-top: 78px; padding-bottom: 76px; }
html[lang^="zh"] .hero h1 { max-width: 700px; font-size: clamp(44px, 4.6vw, 62px); line-height: 1.16; letter-spacing: .01em; }
html[lang^="zh"] .hero__content > p:not(.eyebrow) { max-width: 720px; font-size: 17px; line-height: 1.9; }
html[lang^="zh"] .hero__assurance { margin-top: 34px; }
html[lang^="zh"] .section,
html[lang^="zh"] .content-page { padding-top: 78px; padding-bottom: 78px; }
html[lang^="zh"] :is(.section__header h2, .brand-story h2, .home-cta h2, .seafood-showcase__header h2, .buyer-support__header h2, .home-faq__intro h2, .about-intro h2, .about-principles h2, .about-workflow h2, .about-focus h2, .about-cta h2, .contact-intro h2, .contact-process h2) {
  font-size: clamp(32px, 3.2vw, 44px);
  line-height: 1.3;
  letter-spacing: 0;
}
html[lang^="zh"] .page-hero h1 { font-size: clamp(40px, 4vw, 54px); line-height: 1.2; letter-spacing: 0; }
html[lang^="zh"] .article-heading h1 { font-size: clamp(40px, 4.6vw, 58px); line-height: 1.2; letter-spacing: 0; }
html[lang^="zh"] .prose h1 { font-size: clamp(36px, 4vw, 50px); line-height: 1.25; letter-spacing: 0; }
html[lang^="zh"] .prose h2 { font-size: 28px; line-height: 1.45; }
html[lang^="zh"] .prose h3 { font-size: 21px; line-height: 1.5; }
html[lang^="zh"] .section-link,
html[lang^="zh"] .card__link { font-weight: 700; letter-spacing: .02em; text-transform: none; }
html[lang^="zh"] .button,
html[lang^="zh"] .header-cta,
html[lang^="zh"] .category-pills span,
html[lang^="zh"] .category-pills a,
html[lang^="zh"] .footer-inquiry__action,
html[lang^="zh"] .cookie-consent__actions button { border-radius: 9px; }
html[lang^="zh"] .card { border-radius: 12px; box-shadow: 0 10px 28px rgba(7, 54, 90, .07); }
html[lang^="zh"] .card h3 { font-size: 21px; line-height: 1.45; }
html[lang^="zh"] .card__label { letter-spacing: .05em; text-transform: none; }
html[lang^="zh"] .seafood-showcase { background: #f2f7f8; }
html[lang^="zh"] .seafood-showcase__item { border-radius: 12px; }
html[lang^="zh"] .brand-story { background: linear-gradient(135deg, #0a3762, #0d5c83); }
html[lang^="zh"] .brand-story__media { border-radius: 18px; }
html[lang^="zh"] .brand-story__seal span { letter-spacing: .02em; text-transform: none; }
html[lang^="zh"] .buyer-support { background: linear-gradient(120deg, #0b456d, #117da3); }
html[lang^="zh"] .home-cta { border-radius: 16px; background: linear-gradient(125deg, #0b456d, #087aa5); }
html[lang^="zh"] .home-faq summary { font-size: 18px; font-weight: 600; line-height: 1.55; }
html[lang^="zh"] .site-footer { background: #082f50; }
html[lang^="zh"] .site-footer__bottom { background: #06243e; }

@media (max-width: 820px) {
  html[lang^="zh"] .site-nav-toggle { border-radius: 10px; }
  html[lang^="zh"] .hero { min-height: 540px; }
  html[lang^="zh"] .hero__content { padding-top: 62px; padding-bottom: 68px; }
  html[lang^="zh"] .hero h1 { font-size: clamp(34px, 10.4vw, 43px); line-height: 1.22; }
  html[lang^="zh"] .hero__content > p:not(.eyebrow) { font-size: 15px; line-height: 1.8; }
  html[lang^="zh"] .section,
  html[lang^="zh"] .content-page { padding-top: 58px; padding-bottom: 58px; }
  html[lang^="zh"] :is(.section__header h2, .brand-story h2, .home-cta h2, .seafood-showcase__header h2, .buyer-support__header h2, .home-faq__intro h2, .about-intro h2, .about-principles h2, .about-workflow h2, .about-focus h2, .about-cta h2, .contact-intro h2, .contact-process h2) { font-size: 30px; line-height: 1.35; }
  html[lang^="zh"] .page-hero h1,
  html[lang^="zh"] .article-heading h1 { font-size: 34px; line-height: 1.28; }
  html[lang^="zh"] .mobile-action-bar a,
  html[lang^="zh"] .mobile-action-bar button { border-radius: 9px; }
}

/* Domestic Chinese visual layer: warmer surfaces, brand-blue/yellow accents, and clear dark-section text. */
html[lang^="zh"] body { background: #fbfaf6; }
html[lang^="zh"] .site-header { border-bottom-color: #eadfcd; background: rgba(255, 254, 249, .98); }
html[lang^="zh"] .header-cta,
html[lang^="zh"] .button--primary,
html[lang^="zh"] .button--gold,
html[lang^="zh"] .footer-inquiry__action,
html[lang^="zh"] .mobile-action-bar button,
html[lang^="zh"] .mobile-action-bar__primary { border-color: #e8b832 !important; color: #082f50 !important; background: #f6c945 !important; box-shadow: 0 8px 18px rgba(181, 137, 21, .18); }
html[lang^="zh"] .header-cta:hover,
html[lang^="zh"] .button--primary:hover,
html[lang^="zh"] .button--gold:hover,
html[lang^="zh"] .footer-inquiry__action:hover { background: #ffda63 !important; }
html[lang^="zh"] .eyebrow,
html[lang^="zh"] .section-kicker { position: relative; display: inline-flex; align-items: center; gap: 8px; color: #0d5877; }
html[lang^="zh"] .eyebrow::before,
html[lang^="zh"] .section-kicker::before { display: inline-block; width: 6px; height: 6px; background: #f6c945; content: ''; }
html[lang^="zh"] .hero .eyebrow,
html[lang^="zh"] .brand-story .section-kicker,
html[lang^="zh"] .buyer-support .section-kicker,
html[lang^="zh"] .home-cta .section-kicker { color: #f6c945; }
html[lang^="zh"] .hero .eyebrow::before,
html[lang^="zh"] .brand-story .section-kicker::before,
html[lang^="zh"] .buyer-support .section-kicker::before,
html[lang^="zh"] .home-cta .section-kicker::before { background: #f6c945; }
html[lang^="zh"] .section--alt,
html[lang^="zh"] .seafood-showcase { background: #f7f4ec; }
html[lang^="zh"] .ocean-benefits__inner { border-top: 3px solid #f6c945; border-radius: 8px; }
html[lang^="zh"] .ocean-benefits__icon { border-radius: 6px; background: #0d5877; font-family: "PingFang SC", "Microsoft YaHei", sans-serif; }
html[lang^="zh"] .card { border-radius: 6px; border-color: #e6dfd2; box-shadow: 0 8px 22px rgba(56, 47, 32, .06); }
html[lang^="zh"] .seafood-showcase__item { border-radius: 6px; }
html[lang^="zh"] .process-grid article > span { width: 54px; height: 54px; border: 0; border-radius: 6px; color: #f6c945; background: #0d5877; box-shadow: none; font-family: "PingFang SC", "Microsoft YaHei", sans-serif; }
html[lang^="zh"] .brand-story { position: relative; isolation: isolate; overflow: hidden; background: #164967; background-image: repeating-linear-gradient(135deg, rgba(255, 255, 255, .035) 0, rgba(255, 255, 255, .035) 1px, transparent 1px, transparent 24px); }
html[lang^="zh"] .brand-story::before { position: absolute; top: -90px; right: -80px; z-index: -1; width: 340px; height: 340px; border: 1px solid rgba(246, 201, 69, .2); outline: 1px solid rgba(246, 201, 69, .12); outline-offset: 12px; content: ''; transform: rotate(45deg); }
html[lang^="zh"] .brand-story__inner { position: relative; z-index: 1; }
html[lang^="zh"] .brand-story__media { border-radius: 10px; }
html[lang^="zh"] .brand-story__seal { right: -18px; bottom: 32px; width: 118px; height: 118px; padding: 12px; border: 3px double #0d5877; border-radius: 6px; color: #082f50; background: #f6c945; box-shadow: 0 0 0 7px rgba(8, 42, 62, .64); transform: rotate(-4deg); }
html[lang^="zh"] .brand-story__seal strong { color: #082f50; font-family: "STKaiti", "KaiTi", "Kaiti SC", serif; font-size: 31px; }
html[lang^="zh"] .brand-story__seal span { color: #164967; font-size: 10px; letter-spacing: 0; text-transform: none; }
html[lang^="zh"] .brand-story__lead { color: #f5fbfc; }
html[lang^="zh"] .brand-story .prose,
html[lang^="zh"] .brand-story .prose p,
html[lang^="zh"] .brand-story .prose li { color: #e7f1f3; }
html[lang^="zh"] .brand-story .prose--compact { color: #e7f1f3; }
html[lang^="zh"] .brand-story .button { border-color: rgba(246, 229, 188, .55); color: #193d53; background: #f6e5bc; }
html[lang^="zh"] .buyer-support { background: #123f5a; background-image: repeating-linear-gradient(0deg, rgba(255, 255, 255, .035) 0, rgba(255, 255, 255, .035) 1px, transparent 1px, transparent 32px); }
html[lang^="zh"] .home-cta { border-radius: 8px; background: #164967; }
html[lang^="zh"] .floating-inquiry-button { border-radius: 8px; color: #082f50; background: #f6c945; }

@media (max-width: 820px) {
html[lang^="zh"] .brand-story__seal { right: -4px; bottom: -20px; width: 108px; height: 108px; }
}

/* Food brand homepage integration */
:root { --food-paper: #f2f4ef; --food-cream: #f5eadc; --food-ink: #171219; --food-muted: #675f62; --food-line: rgba(23, 18, 25, .18); --food-turquoise: #00a9b4; --food-mango: #e9a227; --food-coral: #f05242; --food-forest: #173b32; --food-shell: min(1480px, calc(100vw - 96px)); }
body { color: var(--food-ink); background: var(--food-paper); font-family: "Noto Sans SC", "Source Han Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif; }
body::selection { color: var(--food-paper); background: var(--food-ink); }
.site-topbar { color: rgba(242,244,239,.78); background: var(--food-ink); font-size: 11px; letter-spacing: .14em; text-transform: none; }
.site-topbar__inner { width: var(--food-shell); max-width: none; min-height: 34px; padding: 0; }
.site-topbar__contact { color: var(--food-paper); font-size: 11px; }
.site-topbar a:hover, .site-topbar a:focus-visible { color: var(--food-turquoise); }
.site-header { min-height: 78px; padding: 12px max(32px, calc((100vw - 1280px) / 2)); gap: 30px; border-bottom-color: var(--food-line); background: rgba(242,244,239,.94); box-shadow: none; }
.brand { min-width: 205px; color: var(--food-ink); }
.brand__logo { max-width: 200px; height: 50px; }
.site-nav { color: #3b3539; font-size: 13px; font-weight: 700; }
.site-nav__list { gap: 26px; }
.site-nav--desktop > .site-nav__list > .site-nav__item > .site-nav__link-row > .site-nav__link::before { background: var(--food-turquoise); }
.site-nav__link:hover, .site-nav__link:focus, .site-nav__mega-title:hover, .site-nav__mega-link:hover { color: var(--food-turquoise); }
.site-nav__panel--dropdown, .site-nav__panel--mega { border-color: var(--food-line); border-radius: 0; background: var(--food-paper); box-shadow: 0 14px 34px rgba(23,18,25,.12); }
.site-nav__list--submenu .site-nav__link:hover, .site-nav__list--submenu .site-nav__link:focus { background: var(--food-cream); }
.header-cta { min-height: 40px; padding: 0 17px; border-radius: 0; color: var(--food-paper); background: var(--food-ink); font-size: 12px; }
.header-cta:hover, .header-cta:focus-visible { background: var(--food-turquoise); box-shadow: none; transform: none; }
.site-footer { grid-template-columns: minmax(260px, 1.15fr) repeat(3, minmax(180px, .72fr)); gap: clamp(30px, 5vw, 82px); padding: 58px max(32px, calc((100vw - 1480px) / 2)); color: rgba(242,244,239,.7); background: var(--food-ink); }
.site-footer strong { color: var(--food-paper); font-family: inherit; }
.site-footer a:hover, .site-footer a:focus-visible { color: var(--food-turquoise); }
.site-footer__bottom { padding: 17px max(32px, calc((100vw - 1480px) / 2)); color: rgba(242,244,239,.54); background: #101211; }
.site-footer__filings { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px 18px; }
.site-footer__filings span + span::before, .site-footer__filings span + a::before { margin-right: 18px; color: rgba(242,244,239,.22); content: '|'; }
.footer-inquiry__action { border-radius: 0; background: var(--food-turquoise); }
.mobile-action-bar { background: var(--food-paper); border-top-color: var(--food-line); }

.food-home { color: var(--food-ink); background: var(--food-paper); overflow: hidden; }
.food-home h1, .food-home h2, .food-home h3 { color: inherit; font-family: inherit; letter-spacing: 0; }
.food-shell { width: var(--food-shell); margin: 0 auto; }
.food-kicker { margin: 0 0 14px; color: var(--food-turquoise); font-size: 11px; font-weight: 900; letter-spacing: .18em; }
.food-button { display: inline-flex; min-height: 46px; padding: 0 20px; align-items: center; justify-content: center; border: 1px solid var(--food-ink); border-radius: 0; color: var(--food-ink); background: transparent; font-size: 13px; font-weight: 800; transition: transform .2s ease, background .2s ease; }
.food-button:hover, .food-button:focus-visible { transform: translateY(-3px); }
.food-button--dark { color: var(--food-paper); background: var(--food-ink); }
.food-button--dark:hover, .food-button--dark:focus-visible { border-color: var(--food-turquoise); background: var(--food-turquoise); }
.food-button--quiet { border-color: rgba(23,18,25,.24); }
.food-button--quiet:hover, .food-button--quiet:focus-visible { background: var(--food-cream); }
.food-button--light { border-color: rgba(242,244,239,.48); color: var(--food-paper); }
.food-button--light:hover, .food-button--light:focus-visible { border-color: var(--food-turquoise); background: var(--food-turquoise); }
.food-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.food-section-heading { display: grid; margin-bottom: 56px; grid-template-columns: minmax(0, 1.2fr) minmax(260px, .55fr); gap: clamp(44px, 8vw, 128px); align-items: end; }
.food-section-heading h2 { max-width: 760px; margin: 0; font-size: clamp(38px, 3.7vw, 60px); font-weight: 900; line-height: 1.06; }
.food-section-heading > p { max-width: 380px; margin: 0 0 5px; padding-left: 20px; border-left: 2px solid var(--food-turquoise); color: var(--food-muted); font-size: 15px; }
.food-empty { margin: 0; color: var(--food-muted); }

.food-hero { position: relative; display: grid; min-height: 790px; grid-template-columns: minmax(0, 1fr) minmax(420px, 1fr); overflow: hidden; background: var(--food-paper); }
.food-hero__slides, .food-hero__slide, .food-hero__media, .food-hero__media img { position: absolute; inset: 0; width: 100%; height: 100%; }
.food-hero__slide { visibility: hidden; opacity: 0; transition: opacity .65s ease, visibility .65s ease; }
.food-hero__slide.is-active { visibility: visible; opacity: 1; }
.food-hero__media { z-index: 0; }
.food-hero__media img { object-fit: cover; object-position: center; }
.food-hero__media::after { position: absolute; inset: 0; background: linear-gradient(90deg, var(--food-paper) 0%, rgba(242,244,239,.55) 18%, transparent 52%); content: ''; }
.food-hero__copy { position: relative; z-index: 2; display: flex; width: min(600px, 100%); margin-left: max(32px, calc((100vw - var(--food-shell)) / 2)); padding: 104px 58px 86px 0; flex-direction: column; justify-content: center; }
.food-hero__copy { grid-column: 1; grid-row: 1; visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .5s ease, visibility .5s ease; }
.food-hero__copy.is-active { visibility: visible; opacity: 1; pointer-events: auto; }
.food-hero h1, .food-hero h2 { max-width: 580px; margin: 0; font-size: clamp(46px, 4.7vw, 70px); font-weight: 900; line-height: 1.02; }
.food-hero__lead { max-width: 500px; margin: 24px 0 0; color: var(--food-muted); font-size: 16px; }
.food-hero__facts { display: flex; flex-wrap: wrap; gap: 15px 24px; margin-top: 44px; color: var(--food-muted); font-size: 12px; }
.food-hero__facts span { display: inline-flex; align-items: center; gap: 8px; }
.food-hero__facts span::before { width: 7px; height: 7px; background: var(--food-turquoise); content: ''; }
.food-hero__frame { position: absolute; right: max(8%, calc((100vw - 1280px) / 2)); bottom: 8%; z-index: 1; width: min(28vw, 430px); height: 24%; border: 1px solid rgba(242,244,239,.75); }
.food-hero__controls { position: absolute; right: max(32px, calc((100vw - var(--food-shell)) / 2)); bottom: 48px; z-index: 4; display: flex; align-items: center; gap: 12px; }
.food-hero__control, .food-hero__dots button { display: grid; width: 36px; height: 36px; padding: 0; place-items: center; border: 1px solid rgba(242,244,239,.55); border-radius: 0; color: var(--food-paper); background: rgba(23,18,25,.55); cursor: pointer; }
.food-hero__control:hover, .food-hero__control:focus-visible, .food-hero__dots button:hover, .food-hero__dots button:focus-visible { border-color: var(--food-turquoise); background: var(--food-turquoise); }
.food-hero__dots { display: flex; gap: 7px; }
.food-hero__dots button { width: 38px; border-color: transparent; background: transparent; font-size: 10px; }
.food-hero__dots button[aria-selected="true"] { border-color: var(--food-paper); background: rgba(23,18,25,.4); }
.food-hero__dots button span { opacity: .7; }

.food-inner-page { background: var(--food-paper); }
.food-inner-page .page-hero { min-height: 390px; background: var(--food-ink); }
.food-inner-page .page-hero__overlay { background: linear-gradient(90deg, rgba(23,18,25,.94), rgba(23,18,25,.66) 58%, rgba(23,18,25,.18)); }
.food-inner-page .page-hero__content { max-width: var(--food-shell); padding: 70px 0 58px; }
.food-inner-page .page-hero .breadcrumb { color: rgba(242,244,239,.62); }
.food-inner-page .page-hero .breadcrumb a { color: var(--food-mango); }
.food-inner-page .page-hero .section-kicker { color: var(--food-mango); }
.food-inner-page .page-hero h1 { max-width: 760px; font-size: clamp(44px, 5vw, 70px); font-weight: 900; }
.food-inner-page .page-hero .lead { max-width: 700px; color: rgba(242,244,239,.72); font-size: 16px; }
.food-inner-page .content-page--inner { max-width: none; padding: 0; }
.food-brand-story { padding: 108px 32px 116px; background: var(--food-paper); }
.food-inner-heading { display: grid; max-width: var(--food-shell); margin: 0 auto 58px; grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr); gap: 64px; align-items: end; }
.food-inner-heading h2 { max-width: 720px; margin: 0; font-size: clamp(38px, 4.4vw, 66px); font-weight: 900; line-height: 1.04; }
.food-inner-heading > p:last-child { max-width: 420px; margin: 0 0 4px; padding-left: 20px; border-left: 2px solid var(--food-turquoise); color: var(--food-muted); font-size: 16px; }
.food-brand-story__grid { display: grid; max-width: var(--food-shell); margin: 0 auto; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.food-brand-story__card { display: grid; min-height: 650px; grid-template-rows: minmax(300px, 1fr) auto; color: var(--food-paper); background: var(--food-ink); }
.food-brand-story__card--house { color: var(--food-ink); background: var(--food-cream); }
.food-brand-story__card figure { min-height: 0; margin: 0; overflow: hidden; }
.food-brand-story__card figure img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.food-brand-story__card:hover figure img { transform: scale(1.035); }
.food-brand-story__card > div { padding: 34px 36px 38px; }
.food-brand-story__card .food-kicker { color: var(--food-mango); }
.food-brand-story__card--house .food-kicker { color: var(--food-turquoise); }
.food-brand-story__card h3 { max-width: 500px; margin: 0; color: inherit; font-size: clamp(28px, 3vw, 44px); font-weight: 900; line-height: 1.08; }
.food-brand-story__card > div > p:not(.food-kicker) { max-width: 540px; margin: 18px 0 26px; color: rgba(242,244,239,.74); font-size: 15px; }
.food-brand-story__card--house > div > p:not(.food-kicker) { color: var(--food-muted); }
.food-company-capabilities { display: grid; max-width: var(--food-shell); margin: 0 auto; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--food-line); border-bottom: 1px solid var(--food-line); }
.food-company-capabilities article { min-width: 0; padding: 34px 30px 38px 0; }
.food-company-capabilities article + article { padding-left: 30px; border-left: 1px solid var(--food-line); }
.food-company-capabilities span { display: grid; width: 50px; height: 50px; margin-bottom: 28px; place-items: center; border: 1.5px solid var(--food-turquoise); border-radius: 50%; color: var(--food-turquoise); }
.food-company-capabilities span svg { width: 24px; height: 24px; }
.food-company-capabilities h3 { max-width: 260px; margin: 0 0 11px; color: var(--food-ink); font-size: 25px; font-weight: 900; line-height: 1.18; }
.food-company-capabilities p { max-width: 310px; margin: 0; color: var(--food-muted); font-size: 15px; line-height: 1.72; }
.food-brand-principles { padding: 106px 32px 116px; color: var(--food-paper); background: var(--food-forest); }
.food-brand-principles > .food-shell > h2 { max-width: 760px; margin: 0 0 58px; color: var(--food-paper); font-size: clamp(38px, 4vw, 58px); font-weight: 900; line-height: 1.06; }
.food-brand-principles .food-kicker { color: var(--food-mango); }
.food-brand-principles__grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(242,244,239,.28); }
.food-brand-principles__grid article { padding: 26px 28px 0 0; }
.food-brand-principles__grid article + article { padding-left: 28px; border-left: 1px solid rgba(242,244,239,.2); }
.food-brand-principles__grid span { color: var(--food-mango); font-size: 12px; font-weight: 900; letter-spacing: .14em; }
.food-brand-principles__grid h3 { margin: 18px 0 9px; color: var(--food-paper); font-size: 24px; font-weight: 900; }
.food-brand-principles__grid p { max-width: 300px; margin: 0; color: rgba(242,244,239,.7); font-size: 14px; }

.food-company-detail { padding: 108px 32px 116px; color: var(--food-ink); background: var(--food-cream); }
.food-company-detail__prose { max-width: 840px; padding-left: clamp(24px, 5vw, 72px); border-left: 4px solid var(--food-turquoise); }
.food-company-detail__prose h2 { max-width: 760px; margin: 0 0 30px; font-size: clamp(36px, 3.4vw, 54px); font-weight: 900; line-height: 1.08; }
.food-company-detail__prose h3 { margin: 42px 0 12px; font-size: 24px; font-weight: 900; line-height: 1.3; }
.food-company-detail__prose p { max-width: 760px; margin: 0; color: var(--food-muted); font-size: 17px; line-height: 1.82; }
.food-company-detail__prose p + p { margin-top: 18px; }

.food-brand-detail { padding: 108px 32px 116px; background: var(--food-paper); }
.food-brand-detail--ricatun { background: var(--food-cream); }
.food-brand-detail__hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, .84fr); gap: clamp(52px, 8vw, 128px); align-items: center; }
.food-brand-detail__visual { aspect-ratio: 10 / 7; overflow: hidden; background: var(--food-ink); }
.food-brand-detail--ricatun .food-brand-detail__visual { aspect-ratio: 4 / 3; }
.food-brand-detail__visual img { display: block; width: 100%; height: 100%; object-fit: cover; }
.food-brand-detail__copy { padding-left: 28px; border-left: 2px solid var(--food-turquoise); }
.food-brand-detail--ricatun .food-brand-detail__copy { border-left-color: var(--food-mango); }
.food-brand-detail__copy h2 { max-width: 560px; margin: 0; color: var(--food-ink); font-size: clamp(38px, 3.7vw, 58px); font-weight: 900; line-height: 1.06; }
.food-brand-detail__copy > p:not(.food-kicker) { max-width: 540px; margin: 24px 0 30px; color: var(--food-muted); font-size: 16px; }
.food-brand-detail__facts { display: grid; margin-top: 74px; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--food-line); border-bottom: 1px solid var(--food-line); }
.food-brand-detail__facts article { padding: 22px 0; }
.food-brand-detail__facts article + article { padding-left: 26px; border-left: 1px solid var(--food-line); }
.food-brand-detail__facts strong { display: block; color: var(--food-ink); font-size: 30px; font-weight: 900; line-height: 1; }
.food-brand-detail__facts span { display: block; margin-top: 8px; color: var(--food-muted); font-size: 13px; }

.food-inner-page .content-page--inner:not(.content-page--about):not(.content-page--contact) { max-width: var(--food-shell); padding: 88px 24px; }
.food-inner-page .content-page--inner:not(.content-page--about):not(.content-page--contact) .page-prose { max-width: 820px; }
.food-inner-page .page-prose h2 { color: var(--food-ink); font-size: 30px; font-weight: 900; }
.food-inner-page .page-prose p, .food-inner-page .page-prose li { color: var(--food-muted); }
.food-inner-page .listing-section { padding: 0; }
.food-inner-page .card { border-color: var(--food-line); border-radius: 0; background: transparent; box-shadow: none; }
.food-inner-page .card:hover { box-shadow: none; transform: translateY(-4px); }
.food-inner-page .card__body { padding: 20px 0 4px; }
.food-inner-page .card h3 { color: var(--food-ink); font-family: inherit; font-size: 23px; font-weight: 900; }
.food-inner-page .card p { color: var(--food-muted); }
.food-inner-page .card__link { color: var(--food-turquoise); }
.food-inner-page .card__media { border-radius: 0; background: var(--food-cream); }
.food-inner-page .content-page--contact { max-width: none; padding: 88px 0 0; }
.food-inner-page .content-page--contact .contact-layout { max-width: var(--food-shell); padding: 0 0 88px; }
.food-inner-page .content-page--contact .contact-company { padding: 34px 0; border-top: 1px solid var(--food-line); border-bottom: 1px solid var(--food-line); border-radius: 0; background: transparent; }
.food-inner-page .content-page--contact .contact-company h2 { color: var(--food-ink); font-weight: 900; }
.food-inner-page .content-page--contact .inquiry-box { border-radius: 0; background: var(--food-forest); }
.food-inner-page .content-page--contact .inquiry-box .button--primary { border-color: var(--food-turquoise); background: var(--food-turquoise); }

.food-product-page { background: var(--food-paper); }
.food-product-page .product-detail { width: var(--food-shell); max-width: none; padding: 92px 24px; grid-template-columns: minmax(320px, .92fr) minmax(360px, 1.08fr); gap: clamp(52px, 8vw, 128px); }
.food-product-page .product-gallery { border-radius: 0; background: var(--food-cream); box-shadow: none; }
.food-product-page .product-media { aspect-ratio: 4 / 5; }
.food-product-page .product-gallery__badge { border-radius: 0; color: var(--food-ink); background: var(--food-mango); }
.food-product-page .product-gallery-thumbs { gap: 10px; }
.food-product-page .product-gallery-thumb { border-radius: 0; }
.food-product-page .product-summary { max-width: 660px; align-self: center; }
.food-product-page .product-summary h1 { color: var(--food-ink); font-family: inherit; font-size: clamp(38px, 4.2vw, 62px); font-weight: 900; line-height: 1.08; }
.food-product-page .product-summary .lead, .food-product-page .product-summary p, .food-product-page .product-summary li { color: var(--food-muted); }
.food-product-page .product-summary .section-kicker, .food-product-page .breadcrumb a { color: var(--food-turquoise); }
.food-product-page .button { border-radius: 0; }
.food-product-page .button--primary { border-color: var(--food-ink); color: var(--food-paper); background: var(--food-ink); box-shadow: none; }
.food-product-page .button--outline { border-color: var(--food-line); color: var(--food-ink); background: transparent; }
.food-product-page .product-assurance { color: var(--food-muted); }
.food-product-page .product-assurance span::before { border-radius: 0; color: var(--food-turquoise); }
.food-product-page .product-facts, .food-product-page .product-specifications dl { border-color: var(--food-line); }
.food-product-page .product-facts div, .food-product-page .product-specifications dl div { border-color: var(--food-line); }
.food-product-page .product-facts dt, .food-product-page .product-specifications dt { color: var(--food-muted); }
.food-product-page .product-facts dd, .food-product-page .product-specifications dd { color: var(--food-ink); }
.food-product-page .product-specifications h2 { color: var(--food-ink); font-family: inherit; font-weight: 900; }
.food-product-page .product-story { background: var(--food-cream); }
.food-product-page .product-rich-content { color: var(--food-muted); }
.food-product-page .product-rich-content h2, .food-product-page .product-rich-content h3 { color: var(--food-ink); font-family: inherit; font-weight: 900; }
.food-product-page .product-inquiry-wrap { background: var(--food-forest); }

.food-article-page { background: var(--food-paper); }
.food-article-page .article-heading { max-width: var(--food-shell); padding: 86px 24px 44px; text-align: left; }
.food-article-page .article-heading .breadcrumb { justify-content: flex-start; }
.food-article-page .article-heading h1 { color: var(--food-ink); font-family: inherit; font-size: clamp(42px, 5vw, 68px); font-weight: 900; }
.food-article-page .article-heading .lead { margin-left: 0; color: var(--food-muted); }
.food-article-page .article-heading .section-kicker { color: var(--food-turquoise); }
.food-article-page .article-content { max-width: 960px; padding: 0 0 100px; }
.food-article-page .article-cover { border-radius: 0; background: var(--food-cream); }
.food-article-page .article-body { color: var(--food-muted); }
.food-article-page .article-body h2, .food-article-page .article-body h3 { color: var(--food-ink); font-family: inherit; font-weight: 900; }

.food-portfolio { padding: 112px 32px; background: var(--food-paper); }
.food-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.food-product-card { position: relative; display: flex; min-height: 490px; overflow: hidden; align-items: end; color: var(--food-paper); background: var(--food-ink); }
.food-product-card::after { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(23,18,25,0) 25%, rgba(23,18,25,.18) 48%, rgba(23,18,25,.92) 100%); content: ''; }
.food-product-card__media, .food-product-card__media img { position: absolute; inset: 0; width: 100%; height: 100%; }
.food-product-card__media img { object-fit: cover; transition: transform .5s ease; }
.food-product-card > img.food-product-card__media { object-fit: cover; transition: transform .5s ease; }
.food-product-card:hover .food-product-card__media img { transform: scale(1.05); }
.food-product-card:hover > img.food-product-card__media { transform: scale(1.05); }
.food-product-card > div { position: relative; z-index: 1; padding: 28px; }
.food-product-card p { margin: 0; color: rgba(242,244,239,.7); font-size: 10px; font-weight: 900; letter-spacing: .14em; }
.food-product-card h3 { margin: 10px 0; font-size: clamp(25px, 2.1vw, 34px); font-weight: 900; line-height: 1.08; }
.food-product-card span { display: block; max-width: 290px; color: rgba(242,244,239,.84); font-size: 13px; }
.food-product-card div > a { display: inline-flex; margin-top: 20px; color: var(--food-paper); font-size: 12px; font-weight: 900; }
.food-product-card b, .food-insights b { margin-left: 7px; transition: transform .2s ease; }
.food-product-card a:hover b, .food-insights a:hover b { transform: translateX(4px); }

.food-routes { padding: 112px 32px; color: var(--food-paper); background: var(--food-forest); }
.food-routes .food-section-heading h2 { color: var(--food-paper); }
.food-routes .food-section-heading > p { color: rgba(242,244,239,.72); }
.food-routes__grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(242,244,239,.25); }
.food-routes__grid article { min-height: 238px; padding: 30px 34px 0 0; }
.food-routes__grid article + article { padding-left: 34px; border-left: 1px solid rgba(242,244,239,.18); }
.food-routes__grid span { color: var(--food-mango); font-size: 11px; font-weight: 900; letter-spacing: .15em; }
.food-routes__grid h3 { margin: 18px 0 12px; color: var(--food-paper); font-size: 28px; font-weight: 900; line-height: 1.08; }
.food-routes__grid p { max-width: 310px; margin: 0; color: rgba(242,244,239,.7); font-size: 14px; }

.food-story { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); color: var(--food-paper); background: var(--food-ink); }
.food-story__copy { padding: 100px 64px 100px max(32px, calc((100vw - 1180px) / 2)); }
.food-story h2 { max-width: 570px; margin: 0; font-size: clamp(38px, 4.4vw, 68px); font-weight: 900; line-height: 1.03; }
.food-story .food-kicker { color: var(--food-mango); }
.food-prose { max-width: 500px; margin: 28px 0 32px; color: rgba(242,244,239,.75); font-size: 16px; }
.food-prose :first-child { margin-top: 0; }
.food-prose p, .food-prose li { color: inherit; }
.food-story__visual { position: relative; min-height: 570px; overflow: hidden; background: var(--food-mango); }
.food-story__media, .food-story__media img { width: 100%; height: 100%; }
.food-story__media img { object-fit: cover; }

.food-notes { padding: 112px 32px; background: var(--food-paper); }
.food-notes__grid { display: grid; grid-template-columns: minmax(0, .94fr) minmax(360px, 1.06fr); gap: clamp(52px, 8vw, 128px); align-items: center; }
.food-notes__visual { position: relative; overflow: hidden; aspect-ratio: 4 / 3; border: 1px solid var(--food-line); background: var(--food-cream); }
.food-notes__media, .food-notes__media img { width: 100%; height: 100%; }
.food-notes__media img { object-fit: cover; }
.food-notes__copy { padding-left: 30px; border-left: 2px solid var(--food-turquoise); }
.food-notes h2 { max-width: 640px; margin: 0; font-size: clamp(38px, 3.7vw, 60px); font-weight: 900; line-height: 1.06; }
.food-notes__copy > p:not(.food-kicker) { max-width: 570px; margin: 24px 0 0; color: var(--food-muted); font-size: 16px; }
.food-notes dl { margin: 34px 0 0; border-top: 1px solid var(--food-line); }
.food-notes dl div { display: grid; padding: 15px 0; grid-template-columns: 126px 1fr; gap: 22px; border-bottom: 1px solid var(--food-line); }
.food-notes dt { font-size: 14px; font-weight: 900; }
.food-notes dd { margin: 0; color: var(--food-muted); font-size: 14px; }

.food-insights { padding: 112px 32px; background: #e2e7df; }
.food-insights .food-section-heading > a { margin-bottom: 5px; color: var(--food-ink); font-size: 13px; font-weight: 900; }
.food-insights__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.food-insights article { min-width: 0; }
.food-insights__media, .food-insights__media img { display: block; width: 100%; height: 250px; }
.food-insights__media img { object-fit: cover; }
.food-insights h3 { margin: 18px 0 8px; font-size: 22px; font-weight: 900; line-height: 1.2; }
.food-insights article > p { margin: 0; color: var(--food-muted); font-size: 14px; }
.food-cta { padding: 108px 32px; background: var(--food-turquoise); }
.food-cta__inner { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); gap: clamp(52px, 8vw, 128px); align-items: end; }
.food-cta h2 { max-width: 760px; margin: 0; font-size: clamp(38px, 3.7vw, 60px); font-weight: 900; line-height: 1.05; }
.food-cta__inner > div:last-child { max-width: 430px; margin-left: auto; padding-left: 28px; border-left: 2px solid var(--food-ink); }
.food-cta__inner > div:last-child p { margin: 0 0 30px; color: rgba(23,18,25,.74); font-size: 16px; }

@media (prefers-reduced-motion: no-preference) {
  [data-reveal].food-reveal-pending { opacity: 0; transform: translateY(22px); transition: opacity .62s ease, transform .62s cubic-bezier(.22,.61,.36,1); }
  [data-reveal].food-reveal-pending.is-revealed { opacity: 1; transform: translateY(0); }
  [data-reveal].food-reveal-pending[data-reveal-delay="1"] { transition-delay: .1s; }
  /* Whole-page capture, print or a viewport jump: show immediately, never mid-fade. */
  [data-reveal].food-reveal-pending.is-revealed-instant { transition: none; opacity: 1; transform: none; }
}
@media print {
  [data-reveal].food-reveal-pending { opacity: 1 !important; transform: none !important; }
}
@media (max-width: 860px) {
  :root { --food-shell: min(100% - 40px, 620px); }
  .site-topbar { display: none; }
  .site-header { min-height: 78px; padding: 13px 20px; gap: 16px; }
  .brand { min-width: 0; }
  .brand__logo { max-width: 190px; height: 48px; }
  .site-nav--mobile { background: var(--food-paper); border-bottom-color: var(--food-line); }
  .site-nav-toggle { border-color: var(--food-ink); border-radius: 0; color: var(--food-ink); }
  .header-cta { border-radius: 0; }
  .food-hero { display: block; min-height: 0; }
  .food-hero__media { position: relative; display: block; height: 480px; }
  .food-hero__media, .food-hero__media img { width: 100%; }
  .food-hero__media img { position: absolute; }
  .food-hero__media::after { background: linear-gradient(180deg, var(--food-paper), transparent 26%, transparent 72%, rgba(23,18,25,.22)); }
  .food-hero__copy { width: auto; min-height: 690px; margin: 0; padding: 62px 20px 54px; }
  .food-hero h1 { font-size: clamp(42px, 11.5vw, 58px); }
  .food-hero__lead { font-size: 15px; }
  .food-hero__facts { gap: 12px 18px; margin-top: 32px; }
  .food-hero__frame { right: 20px; bottom: 28px; width: 42%; height: 13%; }.food-portfolio, .food-routes, .food-notes, .food-insights, .food-cta{ padding: 78px 20px; }.food-section-heading, .food-notes__grid, .food-cta__inner{ display: block; }
  .food-section-heading { margin-bottom: 36px; }
  .food-section-heading h2 { font-size: 32px; }
  .food-section-heading > p { margin-top: 18px; padding-left: 14px; }
  .food-product-grid, .food-insights__grid { grid-template-columns: 1fr; }
  .food-product-card { min-height: 410px; }
  .food-routes__grid { grid-template-columns: 1fr; }
  .food-routes__grid article { min-height: 0; padding: 26px 0; border-bottom: 1px solid rgba(242,244,239,.18); }
  .food-routes__grid article + article { padding-left: 0; border-left: 0; }
  .food-routes__grid article:last-child { border-bottom: 0; }
  .food-story { display: block; }
  .food-story__copy { padding: 78px 20px; }
  .food-story h2 { font-size: 40px; }
  .food-story__visual { min-height: 430px; }
  .food-notes__visual { margin-bottom: 38px; }
  .food-notes__copy { padding-left: 20px; }
  .food-notes h2 { font-size: 34px; }
  .food-notes dl div { grid-template-columns: 1fr; gap: 4px; }
  .food-insights__media, .food-insights__media img { height: 240px; }
  .food-cta__inner > div:last-child { margin: 34px 0 0; padding-left: 18px; }
  .site-footer { grid-template-columns: 1fr; padding: 46px 20px 38px; gap: 32px; }
  .site-footer__bottom { padding: 18px 20px 82px; }
  .site-footer__bottom { display: block; }
  .site-footer__filings { margin-top: 10px; justify-content: flex-start; }
  .site-footer__filings span + span::before, .site-footer__filings span + a::before { margin-right: 8px; }
}

/* Keep the homepage action controls pill-shaped after the legacy language theme overrides. */
.site-body--ricatun .site-header .header-cta,
.site-body--ricatun .site-footer .footer-inquiry__action,
.site-body--ricatun .mobile-action-bar a,
.site-body--ricatun .mobile-action-bar button { border-radius: 999px; }

/* RICATUN homepage: bright, product-first seafood presentation. */
.site-body--ricatun {
  --ricatun-ink: #123253;
  --ricatun-muted: #557087;
  --ricatun-blue: #1769c2;
  --ricatun-cyan: #29b8d1;
  --ricatun-yellow: #ffd24a;
  --ricatun-coral: #ff7c66;
  --ricatun-mint: #e5faf4;
  --ricatun-sky: #e8f6ff;
  --ricatun-cream: #fff7dc;
  --ricatun-dark: #102b49;
  --ricatun-shell: min(1240px, calc(100vw - 64px));
  color: var(--ricatun-ink);
  background: var(--ricatun-sky);
}
.site-body--ricatun .site-topbar { color: #eaf7ff; background: var(--ricatun-dark); }
.site-body--ricatun .site-topbar a:hover, .site-body--ricatun .site-topbar a:focus-visible { color: var(--ricatun-yellow); }
.site-body--ricatun .site-header { min-height: 82px; border-bottom-color: rgba(23,105,194,.16); background: rgba(255,255,255,.96); box-shadow: 0 8px 28px rgba(17,71,116,.08); }
.site-body--ricatun .brand { color: var(--ricatun-ink); }
.site-body--ricatun .site-nav__link:hover, .site-body--ricatun .site-nav__link:focus, .site-body--ricatun .site-nav__mega-title:hover, .site-body--ricatun .site-nav__mega-link:hover { color: var(--ricatun-blue); }
.site-body--ricatun .site-nav--desktop > .site-nav__list > .site-nav__item > .site-nav__link-row > .site-nav__link::before { background: var(--ricatun-cyan); }
.site-body--ricatun .site-nav__panel--dropdown, .site-body--ricatun .site-nav__panel--mega { border-radius: 16px; border-color: rgba(23,105,194,.16); background: #fff; }
.site-body--ricatun .header-cta, .site-body--ricatun .footer-inquiry__action { border-radius: 999px; color: #fff; background: var(--ricatun-blue); }
.site-body--ricatun .header-cta:hover, .site-body--ricatun .header-cta:focus-visible, .site-body--ricatun .footer-inquiry__action:hover, .site-body--ricatun .footer-inquiry__action:focus-visible { background: #0f53a3; transform: translateY(-2px); }
.site-body--ricatun .site-footer { color: rgba(232,246,255,.78); background: var(--ricatun-dark); }
.site-body--ricatun .site-footer__bottom { color: rgba(232,246,255,.58); background: #0b223a; }
.site-body--ricatun .site-footer a:hover, .site-body--ricatun .site-footer a:focus-visible { color: var(--ricatun-yellow); }
.site-body--ricatun .mobile-action-bar { background: #fff; border-top-color: rgba(23,105,194,.16); }
.site-body--ricatun .mobile-action-bar a, .site-body--ricatun .mobile-action-bar button { border-radius: 999px; }

.ricatun-home { overflow: hidden; color: var(--ricatun-ink); background: var(--ricatun-sky); }
.ricatun-home h1, .ricatun-home h2, .ricatun-home h3 { color: inherit; font-family: inherit; letter-spacing: 0; }
.ricatun-shell { width: var(--ricatun-shell); margin: 0 auto; }
.ricatun-section--light { background: var(--ricatun-mint); }
.ricatun-section--dark { color: #fff; background: var(--ricatun-dark); }
.ricatun-eyebrow { margin: 0 0 16px; color: var(--ricatun-blue); font-size: 12px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.ricatun-section--dark .ricatun-eyebrow { color: var(--ricatun-yellow); }
.ricatun-button { display: inline-flex; min-height: 50px; padding: 0 22px; align-items: center; justify-content: center; gap: 10px; border: 1px solid transparent; border-radius: 999px; font-size: 14px; font-weight: 900; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.ricatun-button:hover, .ricatun-button:focus-visible { transform: translateY(-3px); box-shadow: 0 12px 24px rgba(17,71,116,.16); }
.ricatun-button--primary { color: #fff; background: var(--ricatun-blue); box-shadow: 0 10px 24px rgba(23,105,194,.2); }
.ricatun-button--primary:hover, .ricatun-button--primary:focus-visible { background: #0f53a3; }
.ricatun-button--outline { border-color: rgba(18,50,83,.22); color: var(--ricatun-ink); background: rgba(255,255,255,.55); }
.ricatun-button--outline:hover, .ricatun-button--outline:focus-visible { border-color: var(--ricatun-blue); background: #fff; }
.ricatun-button--dark { color: #fff; background: var(--ricatun-dark); }
.ricatun-button--dark:hover, .ricatun-button--dark:focus-visible { background: var(--ricatun-blue); }
.ricatun-button--accent { color: var(--ricatun-dark); background: var(--ricatun-yellow); }
.ricatun-button--accent:hover, .ricatun-button--accent:focus-visible { background: #ffe27a; }

.ricatun-hero { position: relative; background: var(--ricatun-mint); }
.ricatun-hero::after { display: none; }
.ricatun-hero__inner { position: relative; z-index: 1; display: grid; min-height: 650px; grid-template-columns: minmax(0, .88fr) minmax(420px, 1.12fr); gap: clamp(44px, 7vw, 108px); align-items: center; padding-top: 52px; padding-bottom: 52px; }
.ricatun-hero__copy { max-width: 600px; }
.ricatun-hero h1 { max-width: 560px; margin: 0; color: var(--ricatun-ink); font-size: clamp(46px, 5.2vw, 76px); font-weight: 950; line-height: 1.05; }
.ricatun-hero__lead { max-width: 520px; margin: 24px 0 0; color: var(--ricatun-muted); font-size: 18px; line-height: 1.72; }
.ricatun-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.ricatun-hero__facts { display: grid; max-width: 540px; margin-top: 48px; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(18,50,83,.18); }
.ricatun-hero__facts span { display: grid; padding: 16px 14px 0 0; color: var(--ricatun-muted); font-size: 12px; line-height: 1.4; }
.ricatun-hero__facts strong { display: block; margin-bottom: 6px; color: var(--ricatun-ink); font-size: 17px; }
.ricatun-hero__visual { position: relative; min-width: 0; overflow: hidden; border: 10px solid #fff; border-radius: 28px; background: #f5e9bc; box-shadow: 0 24px 56px rgba(17,71,116,.18); transform: rotate(2deg); }
.ricatun-hero__visual img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.ricatun-hero__stamp { position: absolute; right: 22px; bottom: 22px; display: grid; width: 86px; height: 86px; place-items: center; border: 4px solid #fff; border-radius: 50%; color: var(--ricatun-dark); background: var(--ricatun-yellow); font-size: 10px; font-weight: 900; line-height: 1.05; text-align: center; transform: rotate(-10deg); }
.ricatun-hero__stamp b { font-size: 12px; }

.ricatun-proof { padding: 30px 0; }
.ricatun-proof__grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.ricatun-proof article { display: grid; grid-template-columns: 40px 1fr; gap: 15px; padding: 18px 28px; align-items: start; }
.ricatun-proof article + article { border-left: 1px solid rgba(18,50,83,.16); }
.ricatun-proof article > span { color: var(--ricatun-coral); font-size: 12px; font-weight: 950; }
.ricatun-proof h2 { margin: 0; color: var(--ricatun-ink); font-size: 19px; font-weight: 950; }
.ricatun-proof p { margin: 7px 0 0; color: var(--ricatun-muted); font-size: 13px; line-height: 1.55; }

.ricatun-products { padding: 104px 0 116px; }
.ricatun-section-heading { display: grid; margin-bottom: 50px; grid-template-columns: minmax(0, 1.15fr) minmax(260px, .65fr); gap: 72px; align-items: end; }
.ricatun-section-heading h2 { max-width: 700px; margin: 0; font-size: clamp(38px, 4.4vw, 62px); font-weight: 950; line-height: 1.06; }
.ricatun-section-heading > p { max-width: 360px; margin: 0 0 4px; color: rgba(255,255,255,.72); font-size: 15px; line-height: 1.7; }
.ricatun-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ricatun-product-card { display: grid; overflow: hidden; min-width: 0; border-radius: 8px; background: #fff; box-shadow: 0 14px 30px rgba(0,0,0,.14); transition: transform .25s ease, box-shadow .25s ease; }
.ricatun-product-card:hover { transform: translateY(-7px); box-shadow: 0 22px 44px rgba(0,0,0,.2); }
.ricatun-product-card__image { position: relative; overflow: hidden; aspect-ratio: 1.08 / 1; background: var(--ricatun-cream); }
.ricatun-product-card__image::after { position: absolute; inset: 0; border: 1px solid rgba(18,50,83,.12); border-radius: 8px 8px 0 0; content: ''; pointer-events: none; }
.ricatun-product-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 62%; transition: transform .5s ease; }
.ricatun-product-card:hover .ricatun-product-card__image img { transform: scale(1.04); }
.ricatun-product-card--sunflower .ricatun-product-card__image { background: #f7d6a1; }
.ricatun-product-card--olive .ricatun-product-card__image { background: #d7ebd7; }
.ricatun-product-card--water .ricatun-product-card__image { background: #b9d9fa; }
.ricatun-product-card__body { display: flex; min-height: 218px; padding: 24px 24px 26px; color: var(--ricatun-ink); flex-direction: column; }
.ricatun-product-card__number { margin: 0 0 12px; color: var(--ricatun-blue); font-size: 11px; font-weight: 950; letter-spacing: .12em; }
.ricatun-product-card h3 { margin: 0; color: var(--ricatun-ink); font-size: 23px; font-weight: 950; line-height: 1.22; }
.ricatun-product-card__body > p:not(.ricatun-product-card__number) { margin: 13px 0 0; color: var(--ricatun-muted); font-size: 14px; line-height: 1.65; }
.ricatun-text-link { display: inline-flex; width: fit-content; margin-top: auto; padding-top: 20px; align-items: center; gap: 10px; color: var(--ricatun-blue); font-size: 13px; font-weight: 950; }
.ricatun-text-link span { transition: transform .2s ease; }
.ricatun-text-link:hover span, .ricatun-text-link:focus-visible span { transform: translateX(4px); }

.ricatun-specs { padding: 108px 0; }
.ricatun-specs__inner { display: grid; grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr); gap: clamp(48px, 9vw, 140px); align-items: center; }
.ricatun-specs__copy { max-width: 570px; }
.ricatun-specs__copy h2 { margin: 0; color: var(--ricatun-ink); font-size: clamp(36px, 4vw, 58px); font-weight: 950; line-height: 1.07; }
.ricatun-specs__copy > p:not(.ricatun-eyebrow) { margin: 24px 0 30px; color: var(--ricatun-muted); font-size: 16px; line-height: 1.8; }
.ricatun-specs__list { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 2px solid var(--ricatun-blue); border-bottom: 2px solid var(--ricatun-blue); }
.ricatun-specs__list > div { min-width: 0; padding: 25px 18px 28px; }
.ricatun-specs__list > div + div { border-left: 1px solid rgba(18,50,83,.18); }
.ricatun-specs__list span { color: var(--ricatun-coral); font-size: 11px; font-weight: 950; }
.ricatun-specs__list strong { display: block; margin-top: 34px; color: var(--ricatun-ink); font-size: clamp(23px, 2.2vw, 34px); font-weight: 950; line-height: 1; }
.ricatun-specs__list p { margin: 10px 0 0; color: var(--ricatun-muted); font-size: 12px; line-height: 1.4; }

.ricatun-contact { padding: 86px 0; }
.ricatun-contact__inner { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(300px, .7fr); gap: 72px; align-items: end; }
.ricatun-contact h2 { max-width: 700px; margin: 0; color: #fff; font-size: clamp(38px, 4.4vw, 62px); font-weight: 950; line-height: 1.06; }
.ricatun-contact__inner > div:last-child { max-width: 380px; }
.ricatun-contact__inner > div:last-child p { margin: 0 0 24px; color: rgba(255,255,255,.72); font-size: 15px; line-height: 1.75; }

@media (max-width: 860px) {
  .site-body--ricatun { --ricatun-shell: calc(100vw - 40px); }
  .site-body--ricatun .site-header { background: rgba(255,255,255,.98); }
  .ricatun-hero__inner { display: flex; min-height: 0; padding-top: 56px; padding-bottom: 58px; flex-direction: column; align-items: stretch; gap: 40px; }
  .ricatun-hero__copy { max-width: none; }
  .ricatun-hero h1 { font-size: clamp(42px, 11vw, 58px); }
  .ricatun-hero__lead { font-size: 16px; }
  .ricatun-hero__facts { margin-top: 36px; }
  .ricatun-hero__visual { width: min(100%, 580px); margin: 0 auto; transform: rotate(1deg); }
  .ricatun-hero__stamp { right: 14px; bottom: 14px; width: 70px; height: 70px; font-size: 8px; }
  .ricatun-hero__stamp b { font-size: 10px; }
  .ricatun-proof { padding: 20px 0; }
  .ricatun-proof__grid { grid-template-columns: 1fr; }
  .ricatun-proof article { padding: 16px 0; }
  .ricatun-proof article + article { border-top: 1px solid rgba(18,50,83,.16); border-left: 0; }
  .ricatun-products, .ricatun-specs { padding: 72px 0; }
  .ricatun-section-heading, .ricatun-specs__inner, .ricatun-contact__inner { display: block; }
  .ricatun-section-heading { margin-bottom: 36px; }
  .ricatun-section-heading h2, .ricatun-specs__copy h2, .ricatun-contact h2 { font-size: 36px; }
  .ricatun-section-heading > p { margin-top: 18px; }
  .ricatun-product-grid { grid-template-columns: 1fr; gap: 18px; }
  .ricatun-product-card { grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); }
  .ricatun-product-card__image { aspect-ratio: 1 / 1; }
  .ricatun-product-card__body { min-height: 0; padding: 20px; }
  .ricatun-product-card h3 { font-size: 20px; }
  .ricatun-product-card__body > p:not(.ricatun-product-card__number) { font-size: 13px; }
  .ricatun-specs__copy > p:not(.ricatun-eyebrow) { font-size: 15px; }
  .ricatun-specs__list { margin-top: 38px; }
  .ricatun-specs__list > div { padding: 20px 12px 22px; }
  .ricatun-specs__list strong { margin-top: 24px; font-size: 22px; }
  .ricatun-contact { padding: 72px 0; }
  .ricatun-contact__inner > div:last-child { margin-top: 26px; }
}

@media (max-width: 520px) {
  .ricatun-hero__facts { gap: 10px; }
  .ricatun-hero__facts strong { font-size: 15px; }
  .ricatun-hero__facts span { font-size: 11px; }
  .ricatun-product-card { display: block; }
  .ricatun-product-card__image { aspect-ratio: 1.25 / 1; }
  .ricatun-product-card__body { min-height: 204px; }
  .ricatun-specs__list > div { padding-right: 8px; padding-left: 8px; }
  .ricatun-specs__list strong { font-size: 18px; }
}

/* Shared food-brand navigation and story media sizing. Keep inner pages aligned with home. */
.site-header {
  min-height: 78px;
  padding: 12px max(32px, calc((100vw - 1480px) / 2));
  border-bottom: 1px solid var(--food-line);
  background: rgba(255, 254, 249, .98);
  box-shadow: none;
}
.brand { min-width: 205px; color: var(--food-ink); }
.brand__logo { max-width: 200px; height: 50px; }
.site-nav { color: #3b3539; font-size: 14px; font-weight: 800; }
html[lang^="zh"] .site-nav { font-size: 14px; font-weight: 800; }
.site-nav__list { gap: 26px; }
.site-nav__link { min-height: 38px; }
.site-nav__link:hover, .site-nav__link:focus,
.site-nav__mega-title:hover, .site-nav__mega-link:hover { color: var(--food-turquoise); }
.site-nav--desktop > .site-nav__list > .site-nav__item > .site-nav__link-row > .site-nav__link::before { background: var(--food-turquoise); }
.site-nav__panel--dropdown, .site-nav__panel--mega { border-color: var(--food-line); border-radius: 0; background: var(--food-paper); box-shadow: 0 16px 36px rgba(23, 18, 25, .12); }
.site-nav__list--submenu .site-nav__link:hover, .site-nav__list--submenu .site-nav__link:focus { background: var(--food-cream); }
.header-cta { min-height: 40px; padding: 0 17px; border-radius: 0; color: #082f50; background: var(--food-mango); font-size: 12px; }
html[lang^="zh"] .header-cta { border-radius: 0; }
.header-cta:hover, .header-cta:focus-visible { box-shadow: 0 8px 20px rgba(239, 169, 29, .24); }

.food-story { align-items: start; }
.food-story__visual { align-self: start; height: clamp(420px, 34vw, 560px); min-height: 0; }

@media (max-width: 860px) {
  .site-header { min-height: 78px; padding: 13px 20px; }
  .site-nav { font-size: 14px; }
  html[lang^="zh"] .site-nav-toggle { border-radius: 0; }
  .food-story__visual { height: 430px; min-height: 0; }
  .food-inner-page .page-hero { min-height: 340px; }
  .food-inner-page .page-hero__content { padding: 56px 20px 44px; }
  .food-inner-page .page-hero h1 { font-size: 40px; }
  .food-brand-story, .food-brand-principles { padding: 76px 20px; }
  .food-inner-heading { display: block; margin-bottom: 38px; }
  .food-inner-heading h2 { font-size: 34px; }
  .food-inner-heading > p:last-child { margin-top: 22px; padding-left: 16px; font-size: 15px; }
  .food-brand-story__grid, .food-brand-principles__grid, .food-company-capabilities { grid-template-columns: 1fr; }
  .food-brand-story__card { min-height: 0; grid-template-rows: 340px auto; }
  .food-brand-story__card > div { padding: 28px 24px 30px; }
  .food-brand-story__card h3 { font-size: 30px; }
  .food-company-capabilities article { padding: 25px 0; border-bottom: 1px solid var(--food-line); }
  .food-company-capabilities article + article { padding-left: 0; border-left: 0; }
  .food-company-capabilities article:last-child { border-bottom: 0; }
  .food-company-capabilities span { margin-bottom: 18px; }
  .food-brand-detail { padding: 76px 20px; }
  .food-brand-detail__hero { grid-template-columns: 1fr; gap: 34px; }
  .food-brand-detail__visual, .food-brand-detail--ricatun .food-brand-detail__visual { aspect-ratio: 4 / 3; }
  .food-brand-detail__copy { padding-left: 20px; }
  .food-brand-detail__copy h2 { font-size: 34px; }
  .food-brand-detail__facts { margin-top: 46px; grid-template-columns: 1fr; }
  .food-brand-detail__facts article { padding: 18px 0; border-bottom: 1px solid var(--food-line); }
  .food-brand-detail__facts article + article { padding-left: 0; border-left: 0; }
  .food-brand-detail__facts article:last-child { border-bottom: 0; }
  .food-brand-principles > .food-shell > h2 { margin-bottom: 38px; font-size: 34px; }
  .food-brand-principles__grid article { padding: 24px 0; border-bottom: 1px solid rgba(242,244,239,.2); }
  .food-brand-principles__grid article + article { padding-left: 0; border-left: 0; }
  .food-brand-principles__grid article:last-child { border-bottom: 0; }
  .food-company-detail { padding: 76px 20px; }
  .food-company-detail__prose { padding-left: 20px; }
  .food-company-detail__prose h2 { margin-bottom: 24px; font-size: 32px; }
  .food-company-detail__prose h3 { margin-top: 34px; font-size: 22px; }
  .food-company-detail__prose p { font-size: 16px; }
  .food-inner-page .content-page--inner:not(.content-page--about):not(.content-page--contact) { width: auto; padding: 64px 20px; }
  .food-inner-page .content-page--contact { padding-top: 64px; }
  .food-inner-page .content-page--contact .contact-layout { padding: 0 20px 64px; }
  .food-inner-page .content-page--contact .contact-company { padding: 28px 0; }
  .food-product-page .product-detail { width: auto; padding: 64px 20px; grid-template-columns: 1fr; }
  .food-product-page .product-summary h1 { font-size: 38px; }
  .food-article-page .article-heading { padding: 62px 20px 30px; }
  .food-article-page .article-content { padding: 0 20px 72px; }
}

/* Brand pages intentionally use a separate visual system for seafood. */
.food-inner-page .content-page--inner.content-page--brand:not(.content-page--about):not(.content-page--contact) { width: auto; max-width: none; padding: 0; }
.brand-hero { display: grid; height: min(720px, calc(100vh - 78px)); min-height: 580px; overflow: hidden; }
.brand-hero__media { display: block; min-height: 0; height: 100%; }
.brand-hero__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.brand-hero__veil { display: none; }
.brand-hero__content { display: flex; width: auto; max-width: none; margin: 0; box-sizing: border-box; flex-direction: column; justify-content: end; padding-top: 90px; padding-bottom: 80px; }
.brand-hero .breadcrumb { margin-bottom: auto; font-size: 13px; }
.brand-hero .food-kicker { margin: 0 0 18px; font-size: 11px; font-weight: 900; letter-spacing: .16em; }
.brand-hero h1 { max-width: 680px; margin: 0; font-size: clamp(48px, 5.2vw, 76px); font-weight: 900; line-height: 1; }
.brand-hero__lead { max-width: 540px; margin: 22px 0 0; font-size: 17px; line-height: 1.65; }

.brand-hero--ricatun { grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr); color: #f7fbff; background: #075b9f; }
.brand-hero--ricatun .brand-hero__media { grid-column: 1; grid-row: 1; background: #00a6bd; }
.brand-hero--ricatun .brand-hero__content { grid-column: 2; grid-row: 1; padding-right: max(32px, calc((100vw - 1480px) / 2)); padding-left: clamp(34px, 5vw, 90px); }
.brand-hero--ricatun .breadcrumb, .brand-hero--ricatun .breadcrumb a { color: #d6f5fa; }
.brand-hero--ricatun .food-kicker { color: #f8cf45; }
.brand-hero--ricatun h1 { max-width: 530px; }

.brand-story-page { padding: 112px 32px 96px; }
.brand-story-page__grid { display: grid; gap: clamp(42px, 8vw, 126px); align-items: center; }
.brand-story-page__copy { min-width: 0; }
.brand-story-page__copy h2 { max-width: 610px; margin: 0; font-size: clamp(38px, 4.1vw, 62px); font-weight: 900; line-height: 1.06; }
.brand-story-page__copy > p:not(.food-kicker) { max-width: 560px; margin: 25px 0 0; font-size: 17px; line-height: 1.75; }
.brand-story-page__copy .food-button { width: fit-content; min-height: 48px; margin-top: 34px; }
.brand-story-page__visual { position: relative; min-width: 0; margin: 0; overflow: hidden; }
.brand-story-page__media, .brand-story-page__media img { display: block; width: 100%; height: 100%; }
.brand-story-page__media img { object-fit: cover; }
.brand-story-page__facts { display: grid; margin-top: 90px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.brand-story-page__facts article { min-width: 0; padding: 0 28px; }
.brand-story-page__facts article:first-child { padding-left: 0; }
.brand-story-page__facts article + article { border-left: 1px solid currentColor; }
.brand-story-page__facts strong { display: block; overflow-wrap: anywhere; font-size: clamp(28px, 3.1vw, 46px); font-weight: 900; line-height: 1; }
.brand-story-page__facts span { display: block; margin-top: 10px; font-size: 13px; font-weight: 800; line-height: 1.4; }

.brand-story-page--ricatun { color: #073c70; background: #edf9fb; }
.brand-story-page--ricatun .brand-story-page__grid { grid-template-columns: minmax(0, 1.02fr) minmax(360px, .98fr); }
.brand-story-page--ricatun .brand-story-page__copy { padding-left: 32px; border-left: 4px solid #00a6bd; }
.brand-story-page--ricatun .brand-story-page__visual { aspect-ratio: 4 / 3; background: #00a6bd; }
.brand-story-page--ricatun .brand-story-page__media img { object-position: center; }
.brand-story-page--ricatun .food-kicker { color: #08728d; }
.brand-story-page--ricatun .food-button { color: #fff; border-color: #075b9f; background: #075b9f; }
.brand-story-page--ricatun .food-button:hover, .brand-story-page--ricatun .food-button:focus-visible { background: #df4d43; }
.brand-story-page--ricatun .brand-story-page__facts { padding-top: 28px; border-top: 2px solid #00a6bd; color: #075b9f; }

.brand-chapter { padding: 112px 32px; }
.brand-chapter__heading { display: grid; max-width: var(--food-shell); margin: 0 auto 62px; grid-template-columns: minmax(0, 1fr) minmax(320px, .78fr); gap: clamp(52px, 8vw, 132px); align-items: end; }
.brand-chapter__heading .food-kicker { margin: 0 0 14px; font-size: 11px; font-weight: 900; letter-spacing: .16em; }
.brand-chapter__heading h2 { max-width: 720px; margin: 0; font-size: clamp(38px, 4vw, 62px); font-weight: 900; line-height: 1.06; }
.brand-chapter__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.brand-chapter__steps article { min-width: 0; padding: 0 34px; }
.brand-chapter__steps article:first-child { padding-left: 0; }
.brand-chapter__steps article + article { border-left: 1px solid currentColor; }
.brand-chapter__steps span { display: block; margin-bottom: 42px; font-size: 12px; font-weight: 900; letter-spacing: .16em; }
.brand-chapter__steps h3 { max-width: 320px; margin: 0; font-size: 27px; font-weight: 900; line-height: 1.15; }
.brand-chapter__steps p { max-width: 340px; margin: 17px 0 0; font-size: 15px; line-height: 1.75; }

.brand-chapter--ricatun { color: #073c70; background: #fff; }
.brand-chapter--ricatun .food-kicker, .brand-chapter--ricatun .brand-chapter__steps span { color: #00899f; }
.brand-chapter--ricatun .brand-chapter__steps article + article { border-left-color: #b8e1e8; }
.brand-chapter--ricatun .brand-chapter__steps p { color: #416985; }

.brand-editorial { padding: 112px 32px; }
.brand-editorial__prose { max-width: 840px; }
.brand-editorial__prose h2 { max-width: 760px; margin: 0 0 32px; font-size: clamp(36px, 3.4vw, 54px); font-weight: 900; line-height: 1.08; }
.brand-editorial__prose h3 { margin: 44px 0 12px; font-size: 23px; font-weight: 900; line-height: 1.25; }
.brand-editorial__prose p { max-width: 760px; margin: 0; font-size: 17px; line-height: 1.82; }
.brand-editorial__prose p + p { margin-top: 18px; }
.brand-editorial--ricatun { color: #073c70; background: #e8f7fa; }
.brand-editorial--ricatun .brand-editorial__prose { padding-left: clamp(24px, 5vw, 72px); border-left: 5px solid #00a6bd; }
.brand-editorial--ricatun .brand-editorial__prose p { color: #416985; }

@media (max-width: 860px) {
  .food-inner-page .content-page--inner.content-page--brand { padding: 0; }
  .brand-hero { display: flex; min-height: 0; flex-direction: column; }
  .brand-hero__media { order: 1; min-height: 0; height: min(84vw, 460px); }
  .brand-hero__content { order: 2; min-height: 460px; padding: 34px 20px 52px; }
  .brand-hero--ricatun .brand-hero__content { padding-right: 20px; padding-left: 20px; }
  .brand-hero .breadcrumb { margin-bottom: 52px; }
  .brand-hero h1 { font-size: clamp(40px, 11vw, 56px); }
  .brand-hero__lead { font-size: 15px; }
  .brand-story-page { padding: 76px 20px; }.brand-story-page__grid, .brand-story-page--ricatun .brand-story-page__grid{ display: flex; flex-direction: column; gap: 38px; }
  .brand-story-page--ricatun .brand-story-page__copy { padding-left: 20px; }.brand-story-page__visual{ width: 100%; aspect-ratio: 4 / 3; }
  .brand-story-page__copy h2 { font-size: 34px; }
  .brand-story-page__copy > p:not(.food-kicker) { font-size: 16px; }
  .brand-story-page__facts { margin-top: 54px; grid-template-columns: 1fr; }
  .brand-story-page__facts article { padding: 18px 0; border-bottom: 1px solid currentColor; }
  .brand-story-page__facts article:first-child { padding-left: 0; }
  .brand-story-page__facts article + article { border-left: 0; }
  .brand-story-page__facts article:last-child { border-bottom: 0; }
  .brand-chapter, .brand-editorial { padding: 76px 20px; }
  .brand-chapter__heading { display: block; margin-bottom: 40px; }
  .brand-chapter__heading h2 { font-size: 34px; }
  .brand-chapter__steps { grid-template-columns: 1fr; }
  .brand-chapter__steps article { padding: 28px 0; border-bottom: 1px solid currentColor; }
  .brand-chapter__steps article:first-child { padding-top: 0; }
  .brand-chapter__steps article + article { border-left: 0; }
  .brand-chapter__steps article:last-child { padding-bottom: 0; border-bottom: 0; }
  .brand-chapter--ricatun .brand-chapter__steps article { border-bottom-color: #b8e1e8; }
  .brand-chapter__steps span { margin-bottom: 18px; }
  .brand-chapter__steps h3 { font-size: 24px; }
  .brand-chapter__steps p { font-size: 15px; }
  .brand-editorial__prose { padding-left: 20px; }
  .brand-editorial__prose h2 { margin-bottom: 24px; font-size: 32px; }
  .brand-editorial__prose h3 { margin-top: 34px; font-size: 22px; }
  .brand-editorial__prose p { font-size: 16px; }
}

/* Product-forward RICATUN homepage. */
.ricatun-next {
  --rn-ink: #123353;
  --rn-blue: #0968cb;
  --rn-navy: #093962;
  --rn-green: #185848;
  --rn-mint: #dff7ef;
  --rn-yellow: #ffd247;
  --rn-coral: #ff7d63;
  --rn-paper: #fffdf7;
  --rn-muted: #557088;
  --rn-shell: min(1320px, calc(100vw - 64px));
  color: var(--rn-ink);
  background: var(--rn-paper);
}
.site-body--ricatun .site-header { border-bottom-color: rgba(9,104,203,.16); background: rgba(255,255,255,.98); box-shadow: 0 6px 24px rgba(18,51,83,.07); }
.site-body--ricatun .site-nav__link:hover, .site-body--ricatun .site-nav__link:focus, .site-body--ricatun .site-nav__mega-title:hover, .site-body--ricatun .site-nav__mega-link:hover { color: var(--rn-blue); }
.site-body--ricatun .site-nav--desktop > .site-nav__list > .site-nav__item > .site-nav__link-row > .site-nav__link::before { background: var(--rn-blue); }
.site-body--ricatun .site-header .header-cta, .site-body--ricatun .site-footer .footer-inquiry__action { border-radius: 999px; color: #fff; background: var(--rn-blue); }
.site-body--ricatun .site-header .header-cta:hover, .site-body--ricatun .site-header .header-cta:focus-visible, .site-body--ricatun .site-footer .footer-inquiry__action:hover, .site-body--ricatun .site-footer .footer-inquiry__action:focus-visible { background: #0754aa; }
.site-body--ricatun .mobile-action-bar a, .site-body--ricatun .mobile-action-bar button { border-radius: 999px; }

.ricatun-next h1, .ricatun-next h2, .ricatun-next h3 { color: inherit; font-family: inherit; letter-spacing: 0; }
.ricatun-next-shell { width: var(--rn-shell); margin: 0 auto; }
.ricatun-next-kicker { margin: 0 0 16px; color: var(--rn-blue); font-size: 11px; font-weight: 950; letter-spacing: .16em; line-height: 1.4; }
.ricatun-next-button { display: inline-flex; min-height: 50px; padding: 0 23px; align-items: center; justify-content: center; gap: 11px; border: 1px solid transparent; border-radius: 999px; font-size: 14px; font-weight: 900; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.ricatun-next-button:hover, .ricatun-next-button:focus-visible { transform: translateY(-3px); box-shadow: 0 12px 24px rgba(8,57,98,.18); }
.ricatun-next-button--blue { color: #fff; background: var(--rn-blue); }
.ricatun-next-button--light { border-color: rgba(18,51,83,.18); color: var(--rn-ink); background: #fff; }
.ricatun-next-button--ink { color: #fff; background: var(--rn-ink); }
.ricatun-next-button--yellow { color: var(--rn-ink); background: var(--rn-yellow); }

.ricatun-next-hero { position: relative; overflow: hidden; background: var(--rn-mint); }
.ricatun-next-hero::before { position: absolute; top: 0; bottom: 0; left: 57%; width: 43%; background: #bcebe1; content: ''; }
.ricatun-next-hero__inner { position: relative; display: grid; min-height: 690px; grid-template-columns: minmax(0, .86fr) minmax(440px, 1.14fr); gap: clamp(48px, 8vw, 128px); align-items: center; padding: 76px 0; }
.ricatun-next-hero__copy { position: relative; z-index: 1; max-width: 570px; }
.ricatun-next-hero h1 { max-width: 560px; margin: 0; font-size: clamp(48px, 5.2vw, 78px); font-weight: 950; line-height: 1.02; }
.ricatun-next-hero__copy > p:not(.ricatun-next-kicker) { max-width: 520px; margin: 24px 0 0; color: var(--rn-muted); font-size: 17px; line-height: 1.8; }
.ricatun-next-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.ricatun-next-hero__notes { display: grid; max-width: 510px; margin-top: 48px; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(18,51,83,.2); }
.ricatun-next-hero__notes span { display: block; padding: 17px 12px 0 0; color: var(--rn-muted); font-size: 12px; line-height: 1.4; }
.ricatun-next-hero__notes b { display: block; margin-bottom: 6px; color: var(--rn-ink); font-size: 17px; font-weight: 950; }
.ricatun-next-hero__art { position: relative; min-width: 0; min-height: 460px; }
.ricatun-next-hero__pack { position: absolute; inset: 16px 0 24px 42px; margin: 0; overflow: hidden; background: var(--rn-yellow); box-shadow: 20px 20px 0 var(--rn-blue); }
.ricatun-next-hero__pack img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ricatun-next-hero__flavours { position: absolute; bottom: 0; left: 0; display: flex; overflow: hidden; width: min(84%, 530px); border: 1px solid rgba(18,51,83,.17); border-radius: 8px; background: #fff; box-shadow: 0 14px 30px rgba(18,51,83,.12); }
.ricatun-next-hero__flavours span { flex: 1 1 0; padding: 14px 10px; color: var(--rn-ink); font-size: 10px; font-weight: 950; letter-spacing: .04em; text-align: center; white-space: nowrap; }
.ricatun-next-hero__flavours span + span { border-left: 1px solid rgba(18,51,83,.13); }
.ricatun-next-hero__flavours span:nth-child(1) { background: #f6d59e; }
.ricatun-next-hero__flavours span:nth-child(2) { background: #cce4bd; }
.ricatun-next-hero__flavours span:nth-child(3) { background: #b8dcf7; }
.ricatun-next-hero__seal { position: absolute; top: 0; right: 18px; display: grid; width: 94px; height: 94px; place-items: center; border: 5px solid var(--rn-yellow); border-radius: 50%; color: #fff; background: var(--rn-blue); font-size: 11px; font-weight: 950; line-height: 1.1; text-align: center; transform: rotate(9deg); }

.ricatun-next-intro { padding: 78px 0; background: var(--rn-yellow); }
.ricatun-next-intro__inner { display: grid; grid-template-columns: minmax(290px, .74fr) minmax(390px, 1.26fr); column-gap: clamp(56px, 10vw, 160px); align-items: end; }
.ricatun-next-intro .ricatun-next-kicker { grid-column: 1; color: var(--rn-ink); }
.ricatun-next-intro h2 { grid-column: 1; margin: 0; font-size: clamp(42px, 4.6vw, 68px); font-weight: 950; line-height: 1.03; }
.ricatun-next-intro > p { max-width: 520px; margin: 0 0 7px; color: #3b536b; font-size: 16px; line-height: 1.75; }
.ricatun-next-intro__marks { display: flex; grid-column: 1 / -1; margin-top: 62px; border-top: 1px solid rgba(18,51,83,.25); }
.ricatun-next-intro__marks span { flex: 1 1 0; padding-top: 16px; color: var(--rn-ink); font-size: 11px; font-weight: 900; letter-spacing: .08em; }

.ricatun-next-range { padding: 108px 0 118px; color: #fff; background: var(--rn-navy); }
.ricatun-next-range .ricatun-next-kicker { color: var(--rn-yellow); }
.ricatun-next-heading { display: grid; margin-bottom: 52px; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .55fr); gap: 72px; align-items: end; }
.ricatun-next-heading h2 { max-width: 720px; margin: 0; font-size: clamp(42px, 4.4vw, 66px); font-weight: 950; line-height: 1.04; }
.ricatun-next-heading > p { max-width: 380px; margin: 0 0 7px; color: rgba(255,255,255,.72); font-size: 15px; line-height: 1.75; }
.ricatun-next-products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.ricatun-next-product { display: grid; overflow: hidden; min-width: 0; border-radius: 8px; color: var(--rn-ink); background: var(--rn-paper); box-shadow: 0 18px 34px rgba(0,0,0,.16); transition: transform .25s ease, box-shadow .25s ease; }
.ricatun-next-product:hover { transform: translateY(-7px); box-shadow: 0 26px 48px rgba(0,0,0,.22); }
.ricatun-next-product__media { position: relative; overflow: hidden; aspect-ratio: .98 / 1; background: #f6d59e; }
.ricatun-next-product__media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 64%; transition: transform .45s ease; }
.ricatun-next-product:hover .ricatun-next-product__media img { transform: scale(1.045); }
.ricatun-next-product__media > span { position: absolute; top: 16px; left: 16px; display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; color: var(--rn-ink); background: #fff; font-size: 12px; font-weight: 950; }
.ricatun-next-product--olive .ricatun-next-product__media { background: #cfebd1; }
.ricatun-next-product--water .ricatun-next-product__media { background: #bee0fa; }
.ricatun-next-product__body { min-height: 236px; padding: 25px 26px 28px; }
.ricatun-next-product--sunflower .ricatun-next-product__body { background: #f6d59e; }
.ricatun-next-product--olive .ricatun-next-product__body { background: #cce4bd; }
.ricatun-next-product--water .ricatun-next-product__body { background: #b8dcf7; }
.ricatun-next-product__body > p { margin: 0 0 13px; color: rgba(18,51,83,.72); font-size: 11px; font-weight: 950; letter-spacing: .13em; }
.ricatun-next-product h3 { margin: 0; font-size: 28px; font-weight: 950; line-height: 1.14; }
.ricatun-next-product small { display: block; margin-top: 14px; color: rgba(18,51,83,.76); font-size: 13px; line-height: 1.55; }
.ricatun-next-product a { display: inline-flex; margin-top: 21px; align-items: center; gap: 9px; color: var(--rn-ink); font-size: 13px; font-weight: 950; }
.ricatun-next-product a b { font-size: 17px; transition: transform .2s ease; }
.ricatun-next-product a:hover b, .ricatun-next-product a:focus-visible b { transform: translateX(4px); }

.ricatun-next-detail { padding: 116px 0; background: var(--rn-paper); }
.ricatun-next-detail__inner { display: grid; grid-template-columns: minmax(300px, .86fr) minmax(460px, 1.14fr); gap: clamp(56px, 10vw, 148px); align-items: center; }
.ricatun-next-detail__copy { max-width: 540px; }
.ricatun-next-detail h2 { margin: 0; font-size: clamp(40px, 4vw, 62px); font-weight: 950; line-height: 1.05; }
.ricatun-next-detail__copy > p:not(.ricatun-next-kicker) { margin: 24px 0 0; color: var(--rn-muted); font-size: 16px; line-height: 1.8; }
.ricatun-next-detail dl { display: grid; margin: 34px 0; grid-template-columns: repeat(3, 1fr); border-top: 2px solid var(--rn-blue); border-bottom: 2px solid var(--rn-blue); }
.ricatun-next-detail dl div { min-width: 0; padding: 19px 12px 21px 0; }
.ricatun-next-detail dl div + div { padding-left: 14px; border-left: 1px solid rgba(18,51,83,.18); }
.ricatun-next-detail dt { color: var(--rn-ink); font-size: 17px; font-weight: 950; line-height: 1.15; }
.ricatun-next-detail dd { margin: 8px 0 0; color: var(--rn-muted); font-size: 11px; line-height: 1.45; }
.ricatun-next-detail__visual { position: relative; min-width: 0; height: clamp(420px, 39vw, 590px); }
.ricatun-next-detail__main, .ricatun-next-detail__side { position: absolute; margin: 0; overflow: hidden; }
.ricatun-next-detail__main { top: 0; right: 0; width: 67%; height: 92%; background: #efddb4; box-shadow: 18px 18px 0 var(--rn-yellow); }
.ricatun-next-detail__side { bottom: 0; left: 0; width: 56%; height: 48%; border: 8px solid var(--rn-paper); background: #d8ebcb; box-shadow: 0 18px 32px rgba(18,51,83,.18); }
.ricatun-next-detail__main img, .ricatun-next-detail__side img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ricatun-next-detail__main img { object-position: center; }
.ricatun-next-detail__side img { object-position: center; }

.ricatun-next-pack { padding: 108px 0; color: #fff; background: var(--rn-green); }
.ricatun-next-pack__inner { display: grid; grid-template-columns: minmax(420px, 1fr) minmax(320px, .78fr); gap: clamp(56px, 9vw, 136px); align-items: center; }
.ricatun-next-pack__visual { min-width: 0; margin: 0; overflow: hidden; aspect-ratio: 1 / 1; background: #0f3d32; }
.ricatun-next-pack__visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.ricatun-next-pack__copy { max-width: 490px; }
.ricatun-next-pack .ricatun-next-kicker { color: var(--rn-yellow); }
.ricatun-next-pack h2 { margin: 0; font-size: clamp(40px, 4vw, 62px); font-weight: 950; line-height: 1.06; }
.ricatun-next-pack__copy > p:not(.ricatun-next-kicker) { margin: 24px 0 0; color: rgba(255,255,255,.75); font-size: 16px; line-height: 1.8; }
.ricatun-next-pack ul { display: grid; margin: 34px 0 0; padding: 0; grid-template-columns: 1fr 1fr; gap: 12px 18px; list-style: none; }
.ricatun-next-pack li { padding: 12px 0; border-top: 1px solid rgba(255,255,255,.35); color: #fff; font-size: 13px; font-weight: 900; }

.ricatun-next-contact { padding: 92px 0; background: var(--rn-yellow); }
.ricatun-next-contact__inner { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(300px, .72fr); gap: 84px; align-items: end; }
.ricatun-next-contact .ricatun-next-kicker { color: var(--rn-ink); }
.ricatun-next-contact h2 { max-width: 720px; margin: 0; font-size: clamp(42px, 4.5vw, 66px); font-weight: 950; line-height: 1.05; }
.ricatun-next-contact__inner > div:last-child { max-width: 390px; }
.ricatun-next-contact__inner > div:last-child p { margin: 0 0 24px; color: #3d5268; font-size: 16px; line-height: 1.75; }

@media (max-width: 860px) {
  .ricatun-next { --rn-shell: calc(100vw - 40px); }
  .ricatun-next-hero::before { top: auto; right: 0; bottom: 0; left: 0; width: 100%; height: 40%; }
  .ricatun-next-hero__inner { display: flex; min-height: 0; padding: 58px 0 64px; flex-direction: column; align-items: stretch; gap: 42px; }
  .ricatun-next-hero h1 { font-size: clamp(43px, 11vw, 58px); }
  .ricatun-next-hero__copy > p:not(.ricatun-next-kicker) { font-size: 16px; }
  .ricatun-next-hero__notes { margin-top: 36px; }
  .ricatun-next-hero__art { min-height: min(104vw, 490px); }
  .ricatun-next-hero__pack { inset: 16px 10px 26px 20px; box-shadow: 12px 12px 0 var(--rn-blue); }
  .ricatun-next-hero__seal { top: 0; right: 3px; width: 76px; height: 76px; border-width: 4px; font-size: 9px; }
  .ricatun-next-hero__flavours { width: calc(100% - 20px); }
  .ricatun-next-hero__flavours span { padding: 12px 5px; font-size: 8px; }
  .ricatun-next-intro, .ricatun-next-range, .ricatun-next-detail, .ricatun-next-pack, .ricatun-next-contact { padding: 72px 0; }
  .ricatun-next-intro__inner, .ricatun-next-heading, .ricatun-next-detail__inner, .ricatun-next-pack__inner, .ricatun-next-contact__inner { display: block; }
  .ricatun-next-intro h2, .ricatun-next-heading h2, .ricatun-next-detail h2, .ricatun-next-pack h2, .ricatun-next-contact h2 { font-size: 36px; }
  .ricatun-next-intro > p { margin-top: 20px; font-size: 15px; }
  .ricatun-next-intro__marks { display: grid; margin-top: 40px; grid-template-columns: 1fr; }
  .ricatun-next-intro__marks span { padding: 13px 0; border-bottom: 1px solid rgba(18,51,83,.18); }
  .ricatun-next-range { padding-bottom: 82px; }
  .ricatun-next-heading { margin-bottom: 36px; }
  .ricatun-next-heading > p { margin-top: 18px; }
  .ricatun-next-products { grid-template-columns: 1fr; gap: 18px; }
  .ricatun-next-product { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); }
  .ricatun-next-product__media { aspect-ratio: 1 / 1; }
  .ricatun-next-product__body { min-height: 0; padding: 20px; }
  .ricatun-next-product h3 { font-size: 23px; }
  .ricatun-next-product small { font-size: 12px; }
  .ricatun-next-detail__copy { max-width: none; }
  .ricatun-next-detail__visual { height: min(112vw, 500px); margin-top: 50px; }
  .ricatun-next-detail dl { margin: 28px 0; }
  .ricatun-next-detail dt { font-size: 14px; }
  .ricatun-next-detail dd { font-size: 10px; }
  .ricatun-next-pack__visual { width: 100%; aspect-ratio: 4 / 3; margin-bottom: 42px; }
  .ricatun-next-pack__copy > p:not(.ricatun-next-kicker) { font-size: 15px; }
  .ricatun-next-contact__inner > div:last-child { margin-top: 26px; }
}

@media (max-width: 520px) {
  .ricatun-next-hero__notes { gap: 8px; }
  .ricatun-next-hero__notes b { font-size: 14px; }
  .ricatun-next-hero__notes span { font-size: 10px; }
  .ricatun-next-product { display: block; }
  .ricatun-next-product__media { aspect-ratio: 1.25 / 1; }
  .ricatun-next-product__body { min-height: 208px; }
  .ricatun-next-detail__visual { height: 108vw; }
  .ricatun-next-detail__main { width: 72%; }
  .ricatun-next-detail__side { width: 62%; height: 46%; }
  .ricatun-next-pack ul { grid-template-columns: 1fr; }
}

/* RICATUN trust-story homepage. */
.ricatun-trust-home {
  --rt-ink: #123862;
  --rt-blue: #0b4e8d;
  --rt-ocean: #082d55;
  --rt-cyan: #a9d9f5;
  --rt-sky: #eaf6ff;
  --rt-paper: #fff;
  --rt-yellow: #ffd24a;
  --rt-green: #d9ebda;
  --rt-muted: #56708b;
  color: var(--rt-ink);
  background: var(--rt-paper);
  overflow: hidden;
}
.ricatun-trust-home h1, .ricatun-trust-home h2, .ricatun-trust-home h3 { color: inherit; font-family: inherit; letter-spacing: 0; }
.ricatun-trust-shell { width: min(1360px, calc(100vw - 72px)); margin: 0 auto; }
.ricatun-trust-kicker { margin: 0 0 15px; color: var(--rt-blue); font-size: 11px; font-weight: 950; letter-spacing: .14em; line-height: 1.4; }
.ricatun-trust-kicker--icon { display: inline-flex; gap: 8px; align-items: center; }
.ricatun-trust-kicker--icon svg { width: 15px; height: 15px; }
.ricatun-trust-button { display: inline-flex; min-height: 50px; padding: 0 23px; align-items: center; justify-content: center; gap: 11px; border-radius: 999px; font-size: 14px; font-weight: 950; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.ricatun-trust-button:hover, .ricatun-trust-button:focus-visible { transform: translateY(-3px); box-shadow: 0 12px 24px rgba(8,45,85,.2); }
.ricatun-trust-button--yellow { color: var(--rt-ink); background: var(--rt-yellow); }
.ricatun-trust-button--outline { border: 1px solid var(--rt-blue); border-radius: 0; color: var(--rt-blue); background: transparent; }
.ricatun-trust-button--outline:hover, .ricatun-trust-button--outline:focus-visible { color: #fff; background: var(--rt-blue); }
.ricatun-trust-heading { margin-bottom: 46px; }
.ricatun-trust-heading h2 { max-width: 780px; margin: 0; font-size: clamp(40px, 4.4vw, 68px); font-weight: 950; line-height: 1.05; }
.ricatun-trust-heading--split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .58fr); gap: clamp(45px, 8vw, 124px); align-items: end; }
.ricatun-trust-heading--split > p { max-width: 430px; margin: 0 0 5px; padding-left: 20px; border-left: 2px solid var(--rt-yellow); color: var(--rt-muted); font-size: 16px; line-height: 1.8; }

.ricatun-trust-hero { --ricatun-hero-duration: 8s; --ricatun-hero-transition-duration: 1.6s; --ricatun-hero-copy-exit-duration: .3s; --ricatun-hero-copy-enter-duration: 1.1s; --ricatun-hero-copy-enter-delay: .15s; position: relative; color: #fff; background-color: var(--rt-ocean); background-image: linear-gradient(90deg, rgba(4,34,58,.95) 0%, rgba(4,34,58,.87) 32%, rgba(4,34,58,.52) 56%, rgba(4,34,58,.16) 78%, rgba(4,34,58,.06) 100%), linear-gradient(180deg, rgba(3,26,46,.6) 0%, rgba(3,26,46,0) 32%, rgba(3,26,46,.04) 64%, rgba(3,26,46,.74) 100%), var(--ricatun-hero-image, url('/static/site/brand/ricatun/ocean-tuna-scene.webp')); background-position: center center, center center, 62% center; background-size: cover, cover, cover; background-repeat: no-repeat; }
.ricatun-trust-hero::before { position: absolute; right: 0; bottom: -72px; left: 0; z-index: 2; height: 73px; background: url('/static/site/brand/ricatun/hero-wave.svg') center bottom / 100% 100% no-repeat; content: ''; pointer-events: none; }
.ricatun-trust-hero::after { display: none; }
.ricatun-trust-hero__inner { position: relative; z-index: 1; display: grid; min-height: 660px; grid-template-columns: minmax(0, 1.02fr) minmax(340px, .76fr); gap: clamp(44px, 6vw, 110px); align-items: center; padding-top: 88px; padding-bottom: 108px; }
.ricatun-trust-hero__copies { position: relative; min-height: 390px; }
.ricatun-trust-hero__copy { position: absolute; inset: 0; display: grid; max-width: 630px; align-content: center; opacity: 0; pointer-events: none; transform: translate3d(0,28px,0); transition: opacity var(--ricatun-hero-copy-enter-duration) cubic-bezier(.33,0,.67,1), transform var(--ricatun-hero-copy-enter-duration) cubic-bezier(.33,0,.67,1); }
.ricatun-trust-hero__copy.is-active { opacity: 1; pointer-events: auto; transform: translate3d(0,0,0); }
.ricatun-trust-hero__copy.is-active.is-entering { opacity: 0; transform: translate3d(0,44px,0); }
.ricatun-trust-hero__copy.is-leaving { opacity: 0; transform: translate3d(0,-24px,0); transition-duration: var(--ricatun-hero-copy-exit-duration); }
.ricatun-trust-hero__copy .ricatun-trust-kicker { color: var(--rt-yellow); }
.ricatun-trust-hero h1, .ricatun-trust-hero h2 { max-width: 620px; margin: 0; color: #fff; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(47px, 5.3vw, 82px); font-weight: 700; line-height: 1.02; }
.ricatun-trust-hero__copy > p:not(.ricatun-trust-kicker) { max-width: 520px; margin: 26px 0 34px; color: rgba(255,255,255,.82); font-size: 19px; line-height: 1.65; }
.ricatun-trust-hero__visual { position: relative; z-index: 3; min-width: 0; align-self: end; padding: 0; }
.ricatun-trust-hero__visual::before { display: none; }
.ricatun-trust-hero__slides { position: relative; aspect-ratio: 1.3 / 1; overflow: hidden; border: 6px solid rgba(255,255,255,.18); box-shadow: 0 28px 62px rgba(3,22,40,.5); }
.ricatun-trust-hero__slides figure { position: absolute; inset: 0; z-index: 0; margin: 0; opacity: 0; transform: translate3d(100%,0,0) scale(1); transition: transform var(--ricatun-hero-transition-duration) cubic-bezier(.33,0,.67,1); }
.ricatun-trust-hero__slides figure.is-active { z-index: 2; opacity: 1; transform: translate3d(0,0,0) scale(1); }
.ricatun-trust-hero__slides figure.is-active.is-entering { opacity: 1; transform: translate3d(100%,0,0) scale(1); }
.ricatun-trust-hero__slides figure.is-leaving { z-index: 1; opacity: 1; transform: translate3d(-100%,0,0) scale(1); }
.ricatun-trust-hero.is-moving-backward .ricatun-trust-hero__slides figure.is-active.is-entering { transform: translate3d(-100%,0,0) scale(1); }
.ricatun-trust-hero.is-moving-backward .ricatun-trust-hero__slides figure.is-leaving { transform: translate3d(100%,0,0) scale(1); }
.ricatun-trust-hero__slides figure:not(.is-active):not(.is-leaving) { transition: none; }
.ricatun-trust-hero__slides img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1.025); }
.ricatun-trust-hero__slides figure.is-active img { animation: ricatun-trust-hero-ken-burns var(--ricatun-hero-duration) ease-out both; }
@keyframes ricatun-trust-hero-ken-burns { from { transform: scale(1.025); } to { transform: scale(1.075); } }
.ricatun-trust-hero__label { position: absolute; right: -16px; bottom: 0; z-index: 4; display: grid; width: 108px; height: 108px; place-items: center; border: 5px solid var(--rt-yellow); border-radius: 50%; color: var(--rt-ocean); background: #fff; font-size: 12px; font-weight: 950; line-height: 1.15; text-align: center; transform: rotate(8deg); }
.ricatun-trust-hero__controls { position: absolute; right: 112px; bottom: 19px; z-index: 3; display: flex; align-items: center; gap: 10px; }
.ricatun-trust-hero__controls button { display: grid; width: 32px; height: 32px; padding: 0; place-items: center; border: 1px solid rgba(255,255,255,.68); border-radius: 50%; color: #fff; background: rgba(8,45,85,.72); font-size: 16px; line-height: 1; transition: color .2s ease, background .2s ease, border-color .2s ease; }
.ricatun-trust-hero__controls button:hover, .ricatun-trust-hero__controls button:focus-visible { border-color: var(--rt-yellow); color: var(--rt-ocean); background: var(--rt-yellow); outline: none; }
.ricatun-trust-hero__controls [role='tablist'] { display: flex; gap: 6px; }
.ricatun-trust-hero__controls [role='tablist'] button { width: 8px; height: 8px; border: 0; background: rgba(255,255,255,.5); font-size: 0; }
.ricatun-trust-hero__controls [role='tablist'] button[aria-selected='true'] { width: 24px; border-radius: 8px; background: var(--rt-yellow); }
.ricatun-trust-hero__progress { width: 42px; height: 2px; overflow: hidden; background: rgba(255,255,255,.36); }
.ricatun-trust-hero__progress::after { display: block; width: 100%; height: 100%; background: var(--rt-yellow); content: ''; transform: translateX(-100%); }
.ricatun-trust-hero.is-playing .ricatun-trust-hero__progress::after { animation: ricatun-trust-hero-progress var(--ricatun-hero-duration) linear both; }
.ricatun-trust-hero.is-paused .ricatun-trust-hero__progress::after { animation-play-state: paused; }
@keyframes ricatun-trust-hero-progress { from { transform: translateX(-100%); } to { transform: translateX(0); } }
.ricatun-trust-hero__bottom { position: absolute; right: 0; bottom: 27px; left: 0; z-index: 3; display: flex; width: min(1360px, calc(100vw - 72px)); margin: auto; padding: 12px 0; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.3); color: rgba(255,255,255,.8); font-size: 10px; font-weight: 900; letter-spacing: .14em; }

.ricatun-trust-origin { padding: 110px 0 118px; background: #edf7fd; }
.ricatun-trust-origin__inner { display: grid; grid-template-columns: minmax(0, .98fr) minmax(380px, 1.02fr); gap: clamp(56px, 9vw, 132px); align-items: center; }
.ricatun-trust-origin h2 { max-width: 600px; margin: 0; font-size: clamp(38px, 4.2vw, 64px); font-weight: 950; line-height: 1.06; }
.ricatun-trust-origin__copy > p:not(.ricatun-trust-kicker) { max-width: 570px; margin: 24px 0 0; color: var(--rt-muted); font-size: 16px; line-height: 1.8; }
.ricatun-trust-origin__facts { display: grid; margin-top: 45px; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid rgba(18,56,98,.2); }
.ricatun-trust-origin__facts article { padding: 20px 20px 18px 0; border-bottom: 1px solid rgba(18,56,98,.2); }
.ricatun-trust-origin__facts article:nth-child(odd) { padding-right: 22px; }
.ricatun-trust-origin__facts article:nth-child(even) { padding-left: 22px; border-left: 1px solid rgba(18,56,98,.2); }
.ricatun-trust-origin__facts i { display: grid; width: 22px; height: 22px; margin-bottom: 10px; place-items: center; color: var(--rt-blue); font-style: normal; }
.ricatun-trust-origin__facts i svg { width: 19px; height: 19px; }
.ricatun-trust-origin__facts h3 { margin: 0 0 4px; font-size: 17px; font-weight: 950; }
.ricatun-trust-origin__facts p { margin: 0; color: var(--rt-muted); font-size: 12px; line-height: 1.5; }
.ricatun-trust-origin__map { position: relative; min-height: 520px; margin: 0; overflow: hidden; border: 1px solid rgba(11,78,141,.2); background: #234e68; isolation: isolate; }
.ricatun-trust-origin__map-image { position: absolute; inset: 0; z-index: 0; width: 100%; min-height: 100%; height: 100%; object-fit: cover; object-position: center; }
.ricatun-trust-origin__map::before { position: absolute; inset: 30px; z-index: 1; border: 1px solid rgba(255,255,255,.52); content: ''; pointer-events: none; }
.ricatun-trust-origin__map::after { position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(4,40,70,.28) 0%, rgba(4,40,70,.02) 43%, rgba(4,40,70,.72) 100%); content: ''; pointer-events: none; }
.ricatun-trust-origin__map-water { position: absolute; top: 50px; left: 50px; z-index: 2; color: #fff; font-size: 10px; font-weight: 950; letter-spacing: .13em; text-shadow: 0 1px 8px rgba(4,40,70,.72); }
.ricatun-trust-origin__map-marker { position: absolute; bottom: 45px; left: 47px; z-index: 2; display: flex; width: min(244px, 56%); gap: 11px; align-items: center; padding: 12px 15px 12px 12px; border-left: 4px solid var(--rt-yellow); background: rgba(255,255,255,.91); box-shadow: 0 10px 22px rgba(11,78,141,.1); }
.ricatun-trust-origin__map-marker svg { width: 25px; height: 25px; flex: 0 0 auto; color: var(--rt-blue); }
.ricatun-trust-origin__map-marker div { min-width: 0; }
.ricatun-trust-origin__map-marker strong, .ricatun-trust-origin__map-marker small { display: block; }
.ricatun-trust-origin__map-marker strong { color: var(--rt-blue); font-size: 15px; font-weight: 950; letter-spacing: .07em; }
.ricatun-trust-origin__map-marker small { margin-top: 3px; color: var(--rt-muted); font-size: 9px; font-weight: 900; line-height: 1.35; letter-spacing: .04em; }
.ricatun-trust-origin__map-caption { position: absolute; top: 50px; right: 46px; z-index: 2; margin: 0; color: #fff; font-size: 10px; font-weight: 950; line-height: 1.45; letter-spacing: .1em; text-align: right; text-shadow: 0 1px 8px rgba(4,40,70,.72); }
.ricatun-trust-origin__map-credit { position: absolute; right: 46px; bottom: 47px; z-index: 2; max-width: 34%; color: rgba(255,255,255,.88); font-size: 8px; font-weight: 800; line-height: 1.45; letter-spacing: .02em; text-align: right; text-shadow: 0 1px 8px rgba(4,40,70,.9); }
.ricatun-trust-origin__map-credit:hover { color: var(--rt-yellow); }

.ricatun-trust-reasons { position: relative; padding: 116px 0 122px; background: #fff9ea; }
.ricatun-trust-reasons::before { display: none; }
.ricatun-trust-reasons__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.ricatun-trust-reasons__grid article { min-width: 0; min-height: 245px; padding: 30px 27px; border-top: 3px solid var(--rt-blue); background: #fff; box-shadow: 0 14px 32px rgba(18,56,98,.08); }
.ricatun-trust-reasons__grid article:nth-child(2) { border-color: #14a9b8; }
.ricatun-trust-reasons__grid article:nth-child(3) { border-color: #e3a90a; }
.ricatun-trust-reasons__grid article:nth-child(4) { border-color: #e76f51; }
.ricatun-trust-reasons__grid article + article { padding-left: 27px; border-left: 0; }
.ricatun-trust-icon { display: grid; width: 54px; height: 54px; margin-bottom: 29px; place-items: center; border: 1.5px solid currentColor; border-radius: 50%; color: var(--rt-blue); background: #eef9ff; }
.ricatun-trust-reasons__grid article:nth-child(2) .ricatun-trust-icon { color: #088c99; background: #e8fbfb; }
.ricatun-trust-reasons__grid article:nth-child(3) .ricatun-trust-icon { color: #b47b00; background: #fff8de; }
.ricatun-trust-reasons__grid article:nth-child(4) .ricatun-trust-icon { color: #c75136; background: #fff0ea; }
.ricatun-trust-icon svg { width: 24px; height: 24px; }
.ricatun-trust-reasons__grid h3 { margin: 0 0 9px; font-size: 20px; font-weight: 950; line-height: 1.2; }
.ricatun-trust-reasons__grid p { max-width: 230px; margin: 0; color: var(--rt-muted); font-size: 13px; line-height: 1.6; }

.ricatun-trust-journey { position: relative; overflow: hidden; padding: 112px 0 138px; color: #fff; background-color: #073f5a; background-image: url('/static/site/brand/ricatun/journey-bubbles.svg?v=20260823b'); background-position: center bottom; background-size: 100% auto; background-repeat: no-repeat; }
.ricatun-trust-journey::before { display: none; }
.ricatun-trust-journey > .ricatun-trust-shell { position: relative; z-index: 1; }
.ricatun-trust-journey .ricatun-trust-kicker { color: #7fe4e8; }
.ricatun-trust-journey .ricatun-trust-heading h2 { max-width: 860px; color: #fff; }
.ricatun-trust-journey__steps { display: grid; margin: 0; padding: 35px 24px; grid-template-columns: repeat(6, 1fr); list-style: none; border: 1px solid rgba(171,229,232,.28); background: rgba(255,255,255,.04); }
.ricatun-trust-journey__steps li { position: relative; min-width: 0; padding: 0 12px; text-align: center; }
.ricatun-trust-journey__steps li::before { position: absolute; top: 121px; right: -50%; left: 50%; border-top: 1px solid rgba(222,255,255,.42); content: ''; }
.ricatun-trust-journey__steps li:last-child::before { display: none; }
.ricatun-trust-journey__steps span { position: relative; z-index: 1; display: grid; width: 30px; height: 30px; margin: 0 auto 21px; place-items: center; border: 1px solid rgba(222,255,255,.7); border-radius: 50%; color: var(--rt-ocean); background: var(--rt-yellow); font-size: 10px; font-weight: 950; }
.ricatun-trust-journey__steps i { display: grid; width: 64px; height: 64px; margin: 0 auto 18px; place-items: center; border: 1px solid rgba(222,255,255,.52); border-radius: 50%; color: #fff; background: rgba(255,255,255,.08); font-style: normal; }
.ricatun-trust-journey__steps i svg { width: 29px; height: 29px; }
.ricatun-trust-journey__steps i.ricatun-trust-journey__photo { position: relative; z-index: 1; width: min(140px, 100%); height: auto; aspect-ratio: 1; overflow: hidden; border: 2px solid var(--rt-yellow); background: #fff; }
.ricatun-trust-journey__photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ricatun-trust-journey__steps strong { display: block; color: #fff; font-size: 16px; font-weight: 950; }
.ricatun-trust-journey__steps small { display: block; margin-top: 8px; color: #a9d9e5; font-size: 10px; letter-spacing: .04em; }

.ricatun-trust-trace { position: relative; overflow: hidden; padding: 120px 0 132px; color: var(--rt-ink); background-color: #f2fafb; }
.ricatun-trust-trace::before, .ricatun-trust-trace::after { display: none; }
.ricatun-trust-trace > .ricatun-trust-shell { position: relative; z-index: 1; }
.ricatun-trust-trace__heading { display: grid; max-width: 930px; margin: 0 auto 68px; text-align: center; }
.ricatun-trust-trace .ricatun-trust-kicker { color: #0b7d89; }
.ricatun-trust-trace__heading .ricatun-trust-kicker { justify-content: center; }
.ricatun-trust-trace h2 { max-width: 980px; margin: 0 auto; color: var(--rt-ink); font-size: clamp(42px, 4.7vw, 70px); font-weight: 950; line-height: 1.04; }
.ricatun-trust-trace__heading > p:last-child { max-width: 630px; margin: 23px auto 0; color: var(--rt-muted); font-size: 16px; line-height: 1.8; }
.ricatun-trust-trace__promises { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(28px, 4vw, 62px); align-items: stretch; }
.ricatun-trust-trace__promise { position: relative; min-width: 0; overflow: hidden; }
.ricatun-trust-trace__promise--certificate { display: grid; min-height: 496px; padding: 40px; grid-template-columns: minmax(210px, .72fr) minmax(240px, 1fr); gap: clamp(26px, 4vw, 54px); align-items: center; border: 1px solid rgba(10,89,119,.18); border-radius: 54% 46% 44% 56% / 10% 12% 16% 14%; background: #fff; box-shadow: 0 20px 48px rgba(13,77,97,.12); }
.ricatun-trust-trace__promise--certificate::before { position: absolute; top: 0; right: 0; width: 170px; height: 13px; background: var(--rt-yellow); content: ''; }
.ricatun-trust-trace__promise--nutrition { display: grid; min-height: 496px; padding: 40px 42px 58px; align-content: end; border-radius: 48% 52% 48% 52% / 12% 16% 12% 16%; color: #fff; background-color: #087582; background-image: url('/static/site/brand/ricatun/nutrition-bubbles.svg'); background-position: right -16px bottom -8px; background-size: 310px auto; background-repeat: no-repeat; box-shadow: 0 20px 48px rgba(13,77,97,.18); }
.ricatun-trust-trace__promise--nutrition::before { position: absolute; inset: 18px; border: 1px solid rgba(255,255,255,.28); border-radius: inherit; content: ''; pointer-events: none; }
.ricatun-trust-trace__visual { position: relative; display: grid; width: min(100%, 290px); aspect-ratio: 1 / 1; place-items: center; border-radius: 50% 50% 46% 54% / 45% 52% 48% 55%; background: #eaf8fb; }
.ricatun-trust-trace__visual::before { position: absolute; inset: 9px; border: 1px solid rgba(11,78,141,.16); border-radius: inherit; content: ''; }
.ricatun-trust-trace__visual img { position: relative; z-index: 1; display: block; width: 84%; height: auto; object-fit: contain; }
.ricatun-trust-trace__promise .ricatun-trust-kicker { margin-bottom: 19px; }
.ricatun-trust-trace__promise h3 { max-width: 350px; margin: 0; color: var(--rt-ink); font-size: clamp(24px, 2.1vw, 33px); font-weight: 950; line-height: 1.32; }
.ricatun-trust-trace__list { display: grid; margin-top: 30px; grid-template-columns: repeat(2, 1fr); border-top: 1px solid rgba(18,56,98,.19); }
.ricatun-trust-trace__list span { padding: 13px 8px 13px 0; border-bottom: 1px solid rgba(18,56,98,.19); color: var(--rt-ink); font-size: 12px; font-weight: 900; }
.ricatun-trust-trace__list span:nth-child(even) { padding-left: 14px; border-left: 1px solid rgba(18,56,98,.19); }
.ricatun-trust-trace__nutrition-visual { position: absolute; top: -52px; right: -18px; width: min(68%, 300px); aspect-ratio: 1 / 1; overflow: hidden; border: 10px solid rgba(255,255,255,.16); border-radius: 50%; background: #f3dd9b; transform: rotate(7deg); }
.ricatun-trust-trace__nutrition-visual img { display: block; width: 100%; height: 100%; object-fit: cover; transform: rotate(-7deg) scale(1.1); }
.ricatun-trust-trace__promise--nutrition > div:last-child { position: absolute; top: 50%; left: clamp(56px, 4.5vw, 68px); z-index: 1; width: min(54%, 360px); margin: 0; transform: translateY(-50%); }
.ricatun-trust-trace__promise--nutrition .ricatun-trust-kicker { color: #ffe18b; }
.ricatun-trust-trace__promise--nutrition h3 { max-width: 490px; color: #fff; font-size: clamp(24px, 1.9vw, 30px); text-wrap: balance; }

@media (max-width: 1100px) {
  .ricatun-trust-trace__promises { gap: 28px; }
  .ricatun-trust-trace__promise--certificate { padding: 30px; grid-template-columns: minmax(130px, .58fr) minmax(0, 1fr); gap: 22px; }
  .ricatun-trust-trace__visual { width: min(100%, 150px); }
  .ricatun-trust-trace__promise--nutrition { padding: 30px 30px 48px; }
  .ricatun-trust-trace__nutrition-visual { top: -50px; right: 2px; width: min(74%, 290px); }
  .ricatun-trust-trace__promise--nutrition > div:last-child { left: 30px; width: min(54%, 290px); }
}

.ricatun-trust-products { padding: 112px 0 120px; background: #eaf6fb; }
.ricatun-trust-products__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ricatun-trust-product { overflow: hidden; min-width: 0; padding-bottom: 25px; border-radius: 8px; box-shadow: 0 12px 24px rgba(18,56,98,.08); }
.ricatun-trust-product > div { overflow: hidden; margin: 16px; aspect-ratio: 1.35 / 1; background: #f8fbfd; }
.ricatun-trust-product > div img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .4s ease; }
.ricatun-trust-product:hover > div img { transform: scale(1.025); }
.ricatun-trust-product--water, .ricatun-trust-product--sunflower, .ricatun-trust-product--olive { background: #fff; }
.ricatun-trust-product > p, .ricatun-trust-product > h3, .ricatun-trust-product > span, .ricatun-trust-product > a { margin-left: 23px; }
.ricatun-trust-product > p { margin-top: 21px; margin-bottom: 9px; color: var(--rt-blue); font-size: 10px; font-weight: 950; letter-spacing: .12em; }
.ricatun-trust-product h3 { margin-top: 0; margin-bottom: 8px; font-size: 22px; font-weight: 950; }
.ricatun-trust-product > span { display: block; color: var(--rt-muted); font-size: 12px; }
.ricatun-trust-product > a { display: inline-flex; margin-top: 20px; align-items: center; gap: 8px; color: var(--rt-blue); font-size: 12px; font-weight: 950; }
.ricatun-trust-product > a b { font-size: 17px; }

.ricatun-trust-articles { padding: 118px 0 122px; color: #fff; background: var(--rt-ocean); }
.ricatun-trust-articles .ricatun-trust-kicker, .ricatun-trust-articles .ricatun-trust-heading h2 { color: #fff; }
.ricatun-trust-articles .ricatun-trust-heading--split > p { border-left-color: var(--rt-yellow); color: #b9d9e8; }
.ricatun-trust-articles__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ricatun-trust-articles__grid article { min-width: 0; padding: 12px; border-top: 3px solid var(--rt-yellow); background: #fff; box-shadow: 0 18px 34px rgba(0,0,0,.18); }
.ricatun-trust-articles__media { display: block; overflow: hidden; aspect-ratio: 4 / 3; background: #eaf6ff; }
.ricatun-trust-articles__picture, .ricatun-trust-articles__picture img { display: block; width: 100%; height: 100%; }
.ricatun-trust-articles__picture img { object-fit: cover; transition: transform .35s ease; }
.ricatun-trust-articles__grid article:hover .ricatun-trust-articles__picture img { transform: scale(1.035); }
.ricatun-trust-articles__grid article > div { padding: 23px 11px 12px; }
.ricatun-trust-articles__grid h3 { margin: 0; color: var(--rt-ink); font-size: 23px; font-weight: 950; line-height: 1.25; }
.ricatun-trust-articles__grid h3 a { color: inherit; }
.ricatun-trust-articles__grid p { min-height: 3.2em; margin: 12px 0 18px; color: var(--rt-muted); font-size: 14px; line-height: 1.65; }
.ricatun-trust-articles__grid article > div > a { color: var(--rt-blue); font-size: 12px; font-weight: 950; }
.ricatun-trust-articles__grid article > div > a span { margin-left: 7px; font-size: 17px; }
.ricatun-trust-articles__empty { grid-column: 1 / -1; margin: 0; padding: 32px 0; border-top: 1px solid rgba(255,255,255,.3); color: #b9d9e8; }
.ricatun-trust-articles > .ricatun-trust-shell > .ricatun-trust-button { margin-top: 42px; border-color: #fff; color: #fff; }
.ricatun-trust-articles > .ricatun-trust-shell > .ricatun-trust-button:hover, .ricatun-trust-articles > .ricatun-trust-shell > .ricatun-trust-button:focus-visible { color: var(--rt-ocean); background: #fff; }

.ricatun-trust-story { padding: 122px 0; color: #fff; background: #0a6670; }
.ricatun-trust-story__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(380px, .82fr); gap: clamp(60px, 10vw, 150px); align-items: center; }
.ricatun-trust-story .ricatun-trust-kicker { color: var(--rt-yellow); }
.ricatun-trust-story h2 { max-width: 630px; margin: 0; color: #fff; font-size: clamp(39px, 4.2vw, 64px); font-weight: 950; line-height: 1.05; }
.ricatun-trust-story__copy > p:not(.ricatun-trust-kicker) { max-width: 620px; margin: 24px 0 0; color: #dbf2ec; font-size: 16px; line-height: 1.85; }
.ricatun-trust-story__media { position: relative; min-width: 0; overflow: hidden; aspect-ratio: 1 / 1; border: 14px solid rgba(255,255,255,.14); background: #f1ddb0; }
.ricatun-trust-story__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ricatun-trust-story__media span { position: absolute; right: 17px; bottom: 17px; padding: 10px 12px; color: var(--rt-ocean); background: var(--rt-yellow); font-size: 11px; font-weight: 950; line-height: 1.2; }
.ricatun-trust-story .ricatun-trust-button { margin-top: 32px; border-color: #fff; color: #fff; }
.ricatun-trust-story .ricatun-trust-button:hover, .ricatun-trust-story .ricatun-trust-button:focus-visible { color: var(--rt-ocean); background: #fff; }

.ricatun-trust-company { padding: 89px 0 0; background: var(--rt-yellow); }
.ricatun-trust-company__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, .68fr); gap: clamp(58px, 10vw, 150px); align-items: end; }
.ricatun-trust-company h2 { max-width: 680px; margin: 0; font-size: clamp(38px, 4.2vw, 64px); font-weight: 950; line-height: 1.05; }
.ricatun-trust-company__inner > p { max-width: 450px; margin: 0 0 4px; color: #3d556c; font-size: 16px; line-height: 1.85; }
.ricatun-trust-company__capabilities { display: grid; margin-top: 76px; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid rgba(18,56,98,.28); }
.ricatun-trust-company__capabilities article { min-height: 202px; padding: 28px 32px 34px 0; border-bottom: 1px solid rgba(18,56,98,.28); }
.ricatun-trust-company__capabilities article + article { padding-left: 32px; border-left: 1px solid rgba(18,56,98,.28); }
.ricatun-trust-company__capabilities h3 { margin: 0 0 8px; color: var(--rt-ink); font-size: 22px; font-weight: 950; }
.ricatun-trust-company__capabilities p { max-width: 270px; margin: 0; color: #3d556c; font-size: 13px; line-height: 1.7; }
.ricatun-trust-company__footer { display: flex; padding-bottom: 80px; justify-content: flex-end; }
.ricatun-trust-company__action { margin-top: 38px; }

.ricatun-trust-contact { padding: 93px 0; color: var(--rt-ink); background: #fff; }
.ricatun-trust-contact__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 60px; align-items: end; }
.ricatun-trust-contact .ricatun-trust-kicker { color: var(--rt-blue); }
.ricatun-trust-contact h2 { max-width: 850px; margin: 0; color: var(--rt-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(38px, 4.5vw, 68px); line-height: 1.05; }
.ricatun-trust-contact .ricatun-trust-button--yellow { color: #fff; background: var(--rt-blue); }
.ricatun-trust-contact .ricatun-trust-button--yellow:hover, .ricatun-trust-contact .ricatun-trust-button--yellow:focus-visible { box-shadow: 0 12px 24px rgba(11,78,141,.24); }

@media (max-width: 860px) {
  .ricatun-trust-shell { width: calc(100vw - 40px); }
  .ricatun-trust-hero { background-image: linear-gradient(180deg, rgba(4,34,58,.94) 0%, rgba(4,34,58,.76) 36%, rgba(4,34,58,.58) 58%, rgba(4,34,58,.88) 100%), var(--ricatun-hero-image, url('/static/site/brand/ricatun/ocean-tuna-scene.webp')); background-position: center center, 68% center; }
  .ricatun-trust-hero::before { bottom: -58px; height: 59px; }
  .ricatun-trust-hero__inner { display: flex; min-height: 0; padding: 58px 0 88px; flex-direction: column; align-items: stretch; gap: 47px; }
  .ricatun-trust-hero__copies { min-height: 344px; }
  .ricatun-trust-hero h1, .ricatun-trust-hero h2 { font-size: clamp(45px, 11vw, 60px); }
  .ricatun-trust-hero__copy > p:not(.ricatun-trust-kicker) { font-size: 16px; }
  .ricatun-trust-hero__visual { align-self: stretch; padding: 0; }
  .ricatun-trust-hero__visual::before { right: -13px; }
  .ricatun-trust-hero__label { right: -8px; width: 78px; height: 78px; border-width: 4px; font-size: 9px; }
  .ricatun-trust-hero__controls { right: 80px; bottom: 18px; gap: 7px; }
  .ricatun-trust-hero__controls button { width: 29px; height: 29px; font-size: 14px; }
  .ricatun-trust-hero__progress { width: 28px; }
  .ricatun-trust-hero__bottom { bottom: 19px; width: calc(100vw - 40px); font-size: 8px; }
  .ricatun-trust-origin, .ricatun-trust-reasons, .ricatun-trust-journey, .ricatun-trust-trace, .ricatun-trust-products, .ricatun-trust-articles, .ricatun-trust-story, .ricatun-trust-contact { padding: 75px 0; }
  .ricatun-trust-company { padding: 75px 0 0; }
  .ricatun-trust-origin__inner, .ricatun-trust-story__inner, .ricatun-trust-company__inner, .ricatun-trust-contact__inner { display: block; }
  .ricatun-trust-heading--split { display: block; }
  .ricatun-trust-heading--split > p { margin-top: 22px; }
  .ricatun-trust-heading h2, .ricatun-trust-origin h2, .ricatun-trust-story h2, .ricatun-trust-company h2, .ricatun-trust-contact h2 { font-size: 36px; }
  .ricatun-trust-origin__map { min-height: 390px; margin-top: 45px; }
  .ricatun-trust-origin__map-image { min-height: 390px; }
  .ricatun-trust-origin__facts { margin-top: 34px; }
  .ricatun-trust-reasons__grid, .ricatun-trust-products__grid, .ricatun-trust-articles__grid { grid-template-columns: 1fr; }
  .ricatun-trust-reasons__grid { gap: 12px; }
  .ricatun-trust-reasons__grid article { min-height: 0; padding: 24px; border-bottom: 0; }
  .ricatun-trust-reasons__grid article + article { padding-left: 0; border-left: 0; }
  .ricatun-trust-reasons__grid article:last-child { border-bottom: 0; }
  .ricatun-trust-journey__steps { grid-template-columns: repeat(2, 1fr); gap: 36px 0; }
  .ricatun-trust-journey__steps li::before { display: none; }
  .ricatun-trust-trace__heading { margin-bottom: 43px; text-align: left; }
  .ricatun-trust-trace__heading .ricatun-trust-kicker { justify-content: flex-start; }
  .ricatun-trust-trace h2 { font-size: 36px; }
  .ricatun-trust-trace__heading > p:last-child { margin-left: 0; }
  .ricatun-trust-trace__promises { grid-template-columns: 1fr; gap: 20px; }
  .ricatun-trust-trace__promise--certificate { min-height: 0; padding: 32px 28px 34px; grid-template-columns: 155px minmax(0, 1fr); gap: 26px; border-radius: 48% 52% 44% 56% / 8% 10% 12% 14%; }
  .ricatun-trust-trace__visual { width: 155px; min-height: 0; margin: 0; }
  .ricatun-trust-trace__promise--nutrition { min-height: 430px; padding: 30px 30px 44px; }
  .ricatun-trust-trace__nutrition-visual { top: -55px; right: -8px; width: min(76%, 300px); }
  .ricatun-trust-trace__promise--nutrition > div:last-child { top: auto; right: 30px; bottom: 44px; left: 30px; width: auto; transform: none; }
  .ricatun-trust-product > div { aspect-ratio: 1.5 / 1; }
  .ricatun-trust-story__media { width: min(100%, 540px); margin: 42px auto 0; }
  .ricatun-trust-company__inner > p { margin-top: 25px; }
  .ricatun-trust-company__capabilities { margin-top: 45px; }
  .ricatun-trust-company__footer { padding-bottom: 56px; justify-content: flex-start; }
  .ricatun-trust-company__action { margin: 30px 0 0; }
  .ricatun-trust-contact__inner > a { margin-top: 27px; }
}

@media (max-width: 520px) {
  .ricatun-trust-hero__bottom span { max-width: 30%; line-height: 1.25; }
  .ricatun-trust-origin__facts { grid-template-columns: 1fr; }
  .ricatun-trust-origin__facts article:nth-child(even) { padding-left: 0; border-left: 0; }
  .ricatun-trust-origin__facts article:nth-child(odd) { padding-right: 0; }
  .ricatun-trust-origin__map { min-height: 360px; }
  .ricatun-trust-origin__map::before { inset: 18px; }
  .ricatun-trust-origin__map::after { background: linear-gradient(180deg, rgba(4,40,70,.28) 0%, rgba(4,40,70,.02) 43%, rgba(4,40,70,.72) 100%); }
  .ricatun-trust-origin__map-water { top: 31px; left: 30px; font-size: 7px; }
  .ricatun-trust-origin__map-image { min-height: 360px; }
  .ricatun-trust-origin__map-marker { bottom: 28px; left: 29px; width: min(188px, 58%); padding: 9px 10px 9px 9px; gap: 7px; }
  .ricatun-trust-origin__map-marker svg { width: 24px; height: 24px; }
  .ricatun-trust-origin__map-marker strong { font-size: 11px; }
  .ricatun-trust-origin__map-marker small { font-size: 7px; }
  .ricatun-trust-origin__map-caption { top: 31px; right: 28px; font-size: 7px; }
  .ricatun-trust-origin__map-credit { right: 28px; bottom: 28px; max-width: 30%; font-size: 6px; }
  .ricatun-trust-articles__grid h3 { font-size: 21px; }
  .ricatun-trust-articles__grid p { min-height: 0; }
  .ricatun-trust-journey__steps strong { font-size: 14px; }
  .ricatun-trust-journey__steps small { font-size: 12px; }
  .ricatun-trust-trace__list { grid-template-columns: 1fr; }
  .ricatun-trust-trace__list span:nth-child(even) { padding-left: 0; border-left: 0; }
  .ricatun-trust-trace__promise--certificate { display: block; padding: 30px 24px; }
  .ricatun-trust-trace__visual { width: 185px; margin: 0 auto 26px; }
  .ricatun-trust-trace__promise h3 { font-size: 24px; }
  .ricatun-trust-trace__promise--nutrition { min-height: 410px; padding: 26px 26px 42px; }
  .ricatun-trust-trace__promise--nutrition > div:last-child { right: 26px; bottom: 42px; left: 26px; }
  .ricatun-trust-product > div { aspect-ratio: 1.3 / 1; }
  .ricatun-trust-product > p, .ricatun-trust-product > h3, .ricatun-trust-product > span, .ricatun-trust-product > a { margin-left: 18px; }
  .ricatun-trust-company__capabilities { grid-template-columns: 1fr; }
  .ricatun-trust-company__capabilities article { min-height: 0; padding: 24px; }
  .ricatun-trust-company__capabilities article + article { padding-left: 0; border-left: 0; }
}

/* Home navigation positioning is defined in the final overlay layer below. */
.site-body--ricatun .site-header {
  position: relative;
  top: auto;
}

/* Give the RICATUN homepage a clear sequence of sea, sunlight and shoreline. */
.ricatun-trust-origin {
  position: relative;
  overflow: hidden;
  background-color: #eaf4fb;
}
.ricatun-trust-origin > .ricatun-trust-shell { position: relative; z-index: 1; }
.ricatun-trust-trace {
  padding-bottom: 155px;
  background-color: #d9f2ef;
  background-image: url('/static/site/brand/ricatun/trace-bubbles.svg?v=20260823b');
  background-position: center bottom;
  background-size: 100% auto;
  background-repeat: no-repeat;
}

.ricatun-trust-products {
  position: relative;
  overflow: hidden;
  background-color: #fff8e9;
  background-image: url('/static/site/brand/ricatun/products-bubbles.svg');
  background-position: right -18px top 24px;
  background-size: 290px auto;
  background-repeat: no-repeat;
}
.ricatun-trust-products::after { display: none; }
.ricatun-trust-products > .ricatun-trust-shell { position: relative; z-index: 1; }

.ricatun-trust-articles {
  position: relative;
  overflow: hidden;
  background-color: #174b70;
  background-image: url('/static/site/brand/ricatun/article-bubbles.svg');
  background-position: right -8px bottom -12px;
  background-size: 350px auto;
  background-repeat: no-repeat;
}
.ricatun-trust-articles::before { display: none; }
.ricatun-trust-articles > .ricatun-trust-shell { position: relative; z-index: 1; }

.ricatun-trust-story {
  position: relative;
  overflow: hidden;
  background-color: #08736e;
  background-image: url('/static/site/brand/ricatun/story-bubbles.svg?v=20260823b');
  background-position: center bottom;
  background-size: 100% auto;
  background-repeat: no-repeat;
}
.ricatun-trust-story::before { display: none; }
.ricatun-trust-story > .ricatun-trust-shell { position: relative; z-index: 1; }

.ricatun-trust-company {
  position: relative;
  overflow: hidden;
  background-color: #ffd24a;
  background-image: url('/static/site/brand/ricatun/company-bubbles.svg');
  background-position: left -22px top -8px;
  background-size: 285px auto;
  background-repeat: no-repeat;
}
.ricatun-trust-company::before { display: none; }
.ricatun-trust-company > .ricatun-trust-shell { position: relative; z-index: 1; }

.site-body--ricatun .site-footer {
  position: relative;
  margin-top: 0;
  padding-top: 76px;
  overflow: visible;
  background-color: #0b3554;
}
.site-body--ricatun .site-footer::before {
  position: absolute;
  top: -76px;
  right: 0;
  left: 0;
  height: 77px;
  background: url('/static/site/brand/ricatun/footer-wave.svg') center bottom / 100% 100% no-repeat;
  content: '';
  pointer-events: none;
}
.site-body--ricatun .site-footer__bottom {
  background-color: #062942;
}

@media (max-width: 860px) {
  .ricatun-trust-journey { padding-bottom: 112px; background-size: auto 128px; background-position: 45% bottom; }
  .ricatun-trust-trace { padding-bottom: 112px; background-size: auto 128px; background-position: 42% bottom; }
  .ricatun-trust-products { background-position: right -52px top 14px; background-size: 220px auto; }
  .ricatun-trust-articles { background-position: right -36px bottom -2px; background-size: 245px auto; }
  .ricatun-trust-story { background-size: auto 116px; background-position: 44% bottom; }
  .ricatun-trust-company { background-position: left -50px top -12px; background-size: 235px auto; }
  .site-body--ricatun .site-footer { padding-top: 60px; }
  .site-body--ricatun .site-footer::before { top: -60px; height: 61px; }
}

/* ============================================================
   RICATUN home — structure rebuild (matches client design deck)
   hero → origin → why → journey → trace → products → story → contact
   ============================================================ */

/* --- 1. Hero: single static panel (carousel removed) --- */
.ricatun-trust-hero--single .ricatun-trust-hero__inner { display: flex; min-height: 620px; flex-direction: column; justify-content: center; padding-top: 96px; padding-bottom: 120px; }
.ricatun-trust-hero--single .ricatun-trust-hero__copy { position: static; inset: auto; display: block; max-width: 660px; opacity: 1; pointer-events: auto; transform: none; transition: none; }

/* Full-width Banner crossfade; shared copy remains stable and preserves one H1. */
.ricatun-trust-hero--banners { background-image: none; isolation: isolate; }
.ricatun-trust-hero__banners { position: absolute; inset: 0; overflow: hidden; }
.ricatun-trust-hero__banners figure { position: absolute; inset: 0; margin: 0; opacity: 0; z-index: 0; transition: opacity var(--ricatun-hero-transition-duration) ease-in-out; }
.ricatun-trust-hero__banners figure.is-active { opacity: 1; z-index: 2; }
.ricatun-trust-hero__banners figure.is-active.is-entering { opacity: 0; }
.ricatun-trust-hero__banners figure.is-leaving { opacity: 1; z-index: 1; }
.ricatun-trust-hero__banner-image, .ricatun-trust-hero__banner-image img { display: block; width: 100%; height: 100%; }
.ricatun-trust-hero__banner-image img { object-fit: cover; object-position: 62% center; }
.ricatun-trust-hero__banner--ocean-blue .ricatun-trust-hero__banner-image img { filter: saturate(1.4) hue-rotate(-10deg) brightness(1.08) contrast(1.03); }
.ricatun-trust-hero__banner--ocean-blue::after { position: absolute; inset: 0; z-index: 1; pointer-events: none; content: ''; background: linear-gradient(120deg, rgba(0, 165, 210, .5), rgba(0, 196, 220, .28)); }
.ricatun-trust-hero__banners::after { position: absolute; inset: 0; z-index: 3; pointer-events: none; content: ''; background: linear-gradient(90deg, rgba(4,34,58,.94) 0%, rgba(4,34,58,.83) 32%, rgba(4,34,58,.48) 56%, rgba(4,34,58,.08) 100%); }
.ricatun-trust-hero--banners .ricatun-trust-hero__inner { z-index: 4; align-items: flex-start; }
@media (prefers-reduced-motion: no-preference) {
  .ricatun-trust-hero--banners .ricatun-trust-hero__copy { animation: ricatun-copy-arrive .85s ease-out both; }
}
@keyframes ricatun-copy-arrive {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}
.ricatun-trust-hero--banners .ricatun-trust-hero__controls { z-index: 5; right: max(36px, calc((100vw - 1360px) / 2)); bottom: 32px; }
@media (max-width: 860px) {
  .ricatun-trust-hero--banners { background-image: none; }
  .ricatun-trust-hero--banners .ricatun-trust-hero__controls { right: 20px; bottom: 24px; }
  .ricatun-trust-hero__banners::after { background: linear-gradient(180deg, rgba(4,34,58,.87), rgba(4,34,58,.72)); }
}
@media (prefers-reduced-motion: reduce) {
  .ricatun-trust-hero__banners figure { transition: none; }
}

/* --- 2. Origin: left title+facts / middle map / right coast+slogan --- */
.ricatun-trust-origin__inner { grid-template-columns: minmax(0, 1.05fr) minmax(300px, .85fr) minmax(250px, .62fr); gap: clamp(26px, 3vw, 48px); align-items: stretch; }
.ricatun-trust-origin__copy { align-self: center; }
.ricatun-trust-origin__facts { display: grid; grid-template-columns: 1fr; margin-top: 34px; }
.ricatun-trust-origin__facts article { display: grid; grid-template-columns: 40px 1fr; gap: 4px 14px; align-items: start; padding: 15px 0; border-bottom: 1px solid rgba(18,56,98,.2); border-left: 0 !important; }
.ricatun-trust-origin__facts article:nth-child(odd), .ricatun-trust-origin__facts article:nth-child(even) { padding-left: 0; padding-right: 0; border-left: 0; }
.ricatun-trust-origin__facts article:last-child { border-bottom: 0; }
.ricatun-trust-origin__facts i { grid-row: 1 / 3; width: 40px; height: 40px; margin: 0; border-radius: 50%; background: #dbeefe; }
.ricatun-trust-origin__facts i svg { width: 20px; height: 20px; }
.ricatun-trust-origin__facts h3 { margin: 0; font-size: 16px; }
.ricatun-trust-origin__facts p { margin: 0; font-size: 12px; }
.ricatun-trust-origin__coast { position: relative; margin: 0; min-height: 520px; overflow: hidden; border-radius: 10px; background: #0b4e8d; }
.ricatun-trust-origin__coast img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ricatun-trust-origin__coast figcaption { position: absolute; right: 0; bottom: 0; left: 0; margin: 0; padding: 58px 20px 20px; background: linear-gradient(180deg, rgba(8,45,85,0) 0%, rgba(8,45,85,.9) 62%); color: #fff; font-size: 14px; font-weight: 800; line-height: 1.55; }

/* --- 3. Why Ricatun: left four points / right three flavour cards --- */
.ricatun-trust-why { padding: 112px 0 120px; background: #fff9ea; }
.ricatun-trust-why .ricatun-trust-heading { margin-bottom: 44px; }
.ricatun-trust-why__layout { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(380px, .88fr); gap: clamp(40px, 5vw, 84px); align-items: stretch; }
.ricatun-trust-why__points { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.ricatun-trust-why__points article { min-width: 0; padding: 28px 24px; border-top: 3px solid var(--rt-blue); background: #fff; box-shadow: 0 14px 32px rgba(18,56,98,.08); }
.ricatun-trust-why__points article:nth-child(2) { border-color: #14a9b8; }
.ricatun-trust-why__points article:nth-child(3) { border-color: #e3a90a; }
.ricatun-trust-why__points article:nth-child(4) { border-color: #e76f51; }
.ricatun-trust-why__points .ricatun-trust-icon { margin-bottom: 20px; }
.ricatun-trust-why__points h3 { margin: 0 0 9px; font-size: 19px; font-weight: 950; line-height: 1.25; }
.ricatun-trust-why__points p { margin: 0; color: var(--rt-muted); font-size: 13px; line-height: 1.6; }
.ricatun-trust-why__flavours { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.ricatun-trust-flavour { position: relative; display: flex; min-height: 320px; padding: 26px 22px; flex-direction: column; justify-content: flex-end; overflow: hidden; border-radius: 12px; }
.ricatun-trust-flavour--water { color: #fff; background: var(--rt-blue); }
.ricatun-trust-flavour--sunflower { color: var(--rt-ink); background: var(--rt-yellow); }
.ricatun-trust-flavour--olive { color: var(--rt-ink); background: var(--rt-green); }
.ricatun-trust-flavour h3 { margin: 0 0 8px; font-size: 21px; font-weight: 950; }
.ricatun-trust-flavour p { margin: 0; font-size: 12px; line-height: 1.5; opacity: .82; }
.ricatun-trust-flavour a { position: absolute; top: 20px; right: 20px; display: grid; width: 40px; height: 40px; place-items: center; border-radius: 50%; background: rgba(255,255,255,.28); }
.ricatun-trust-flavour a svg { width: 20px; height: 20px; }

/* --- 4. Journey: three-line step (title / subtitle / note) --- */
.ricatun-trust-journey__steps em { display: block; margin-top: 7px; color: #eaf6ff; font-size: 12px; font-style: normal; font-weight: 800; }
.ricatun-trust-journey__steps small { margin-top: 7px; }

/* --- 5. Trace: left visual / middle title+body / right three items --- */
.ricatun-trust-trace__layout { display: grid; grid-template-columns: minmax(220px, .72fr) minmax(320px, 1.05fr) minmax(260px, .85fr); gap: clamp(28px, 4vw, 60px); align-items: center; }
.ricatun-trust-trace__visual { width: 100%; max-width: 320px; margin: 0; aspect-ratio: auto; border-radius: 16px; background: transparent; }
.ricatun-trust-trace__visual::before { display: none; }
.ricatun-trust-trace__visual img { position: relative; z-index: 1; width: 100%; height: auto; object-fit: contain; border-radius: 16px; box-shadow: 0 22px 50px rgba(13,77,97,.16); }
.ricatun-trust-trace__body h2 { margin: 0; font-size: clamp(32px, 3.2vw, 50px); font-weight: 950; line-height: 1.08; }
.ricatun-trust-trace__body > p:not(.ricatun-trust-kicker) { max-width: 460px; margin: 22px 0 0; color: var(--rt-muted); font-size: 15px; line-height: 1.8; }
.ricatun-trust-trace__promise { margin: 20px 0 0; color: var(--rt-blue); font-size: 17px; font-weight: 950; }
.ricatun-trust-trace__items { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.ricatun-trust-trace__items li { display: flex; gap: 16px; align-items: flex-start; padding: 22px 20px; border-radius: 12px; background: #fff; box-shadow: 0 14px 32px rgba(18,56,98,.08); }
.ricatun-trust-trace__items .ricatun-trust-icon { flex: 0 0 auto; margin-bottom: 0; }
.ricatun-trust-trace__items h3 { margin: 0 0 6px; font-size: 17px; font-weight: 950; }
.ricatun-trust-trace__items p { margin: 0; color: var(--rt-muted); font-size: 12px; line-height: 1.55; }

/* --- 7. Story: left navy copy / right four-photo strip --- */
.ricatun-trust-story { background-color: var(--rt-ocean); background-image: none; }
.ricatun-trust-story__inner { display: grid; grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr); gap: clamp(40px, 5vw, 84px); align-items: center; }
.ricatun-trust-story__copy { align-self: center; }
.ricatun-trust-story__strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.ricatun-trust-story__strip figure { position: relative; margin: 0; overflow: hidden; aspect-ratio: 3 / 4; border-radius: 8px; background: #123862; }
.ricatun-trust-story__strip img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ricatun-trust-story__strip figcaption { position: absolute; right: 0; bottom: 0; left: 0; padding: 24px 10px 10px; background: linear-gradient(180deg, rgba(5,30,55,0) 0%, rgba(5,30,55,.86) 100%); color: #fff; font-size: 11px; font-weight: 800; text-align: center; }

/* --- 8. Contact: left copy / right wordmark + tagline --- */
.ricatun-trust-contact { padding: 96px 0 104px; color: #fff; background: var(--rt-ocean); background-image: none; }
.ricatun-trust-contact__inner { grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr); align-items: center; gap: clamp(40px, 6vw, 90px); }
.ricatun-trust-contact .ricatun-trust-kicker { color: var(--rt-yellow); }
.ricatun-trust-contact h2 { color: #fff; }
.ricatun-trust-contact__copy > p:not(.ricatun-trust-kicker) { max-width: 680px; margin: 22px 0 0; color: #bcd6ea; font-size: 16px; line-height: 1.85; }
.ricatun-trust-contact__brand { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.ricatun-trust-contact__wordmark { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(46px, 5vw, 74px); font-weight: 700; letter-spacing: .02em; color: #fff; }
.ricatun-trust-contact__brand p { margin: 0; color: var(--rt-yellow); font-size: 11px; font-weight: 950; letter-spacing: .16em; }
.ricatun-trust-contact .ricatun-trust-button--yellow { color: var(--rt-ink); background: var(--rt-yellow); }
.ricatun-trust-contact .ricatun-trust-button--yellow:hover, .ricatun-trust-contact .ricatun-trust-button--yellow:focus-visible { box-shadow: 0 12px 24px rgba(0,0,0,.24); }

/* --- Responsive --- */
@media (max-width: 1080px) {
  .ricatun-trust-origin__inner { grid-template-columns: 1fr; }
  .ricatun-trust-origin__map { min-height: 420px; }
  .ricatun-trust-origin__coast { min-height: 320px; }
  .ricatun-trust-why__layout { grid-template-columns: 1fr; }
  .ricatun-trust-trace__layout { grid-template-columns: 1fr; gap: 34px; }
  .ricatun-trust-trace__visual { margin: 0 auto; }
  .ricatun-trust-trace__items { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ricatun-trust-story__inner { grid-template-columns: 1fr; }
}

@media (max-width: 860px) {
  .ricatun-trust-hero--single .ricatun-trust-hero__inner { min-height: 560px; padding-top: 70px; padding-bottom: 100px; }
  .ricatun-trust-hero--single .ricatun-trust-hero__copy { max-width: 100%; }
  .ricatun-trust-why__points { grid-template-columns: 1fr; }
  .ricatun-trust-why__flavours { grid-template-columns: 1fr; }
  .ricatun-trust-flavour { min-height: 0; padding: 24px 20px 22px; }
  .ricatun-trust-flavour a { top: 14px; right: 14px; }
  .ricatun-trust-trace__items { grid-template-columns: 1fr; }
  .ricatun-trust-story__strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ricatun-trust-contact__inner { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .ricatun-trust-hero--single .ricatun-trust-hero__inner { min-height: 520px; }
}

/* --- 6. Products: left intro / right three packaging cards --- */
.ricatun-trust-products__layout { display: grid; grid-template-columns: minmax(250px, .58fr) minmax(0, 1.42fr); gap: clamp(40px, 5vw, 84px); align-items: center; }
.ricatun-trust-products__copy { align-self: center; }
.ricatun-trust-products__copy h2 { margin: 0 0 20px; }
.ricatun-trust-products__copy > p:not(.ricatun-trust-kicker) { max-width: 340px; margin: 0; color: var(--rt-muted); font-size: 15px; line-height: 1.8; }
@media (max-width: 1080px) {
  .ricatun-trust-products__layout { grid-template-columns: 1fr; gap: 34px; }
  .ricatun-trust-products__copy > p:not(.ricatun-trust-kicker) { max-width: none; }
}
@media (max-width: 860px) {
  .ricatun-trust-products__grid { grid-template-columns: 1fr; }
}

/* Client reference: continuous map banner and illustrated flavour panels. */
.ricatun-trust-hero--single::before { display: none; }
.ricatun-trust-origin { padding: 0; background: #e7f6fd; }
.ricatun-trust-origin__inner { display: grid; grid-template-columns: minmax(0, .32fr) minmax(0, .68fr); gap: 0; align-items: stretch; }
.ricatun-trust-origin__copy { padding: 24px 12px 22px 0; align-self: center; }
.ricatun-trust-origin h2, .ricatun-trust-why .ricatun-trust-heading h2 { margin: 0; color: #075798; font-family: Georgia, 'Times New Roman', 'Nimbus Roman', serif; font-size: clamp(26px, 2.8vw, 42px); font-weight: 700; line-height: 1.08; letter-spacing: 0; }
#ricatun-origin-title, #ricatun-why-title { font-family: Georgia, 'Times New Roman', 'Nimbus Roman', serif; }
.ricatun-trust-origin h2 small, .ricatun-trust-why h2 small { display: block; margin-top: 7px; font-family: Arial, 'Microsoft YaHei', sans-serif; font-size: 20px; font-weight: 700; line-height: 1.3; }
.ricatun-trust-origin__facts { margin-top: 20px; border: 0; gap: 15px; }
.ricatun-trust-origin__facts article { padding: 0; border: 0; grid-template-columns: 44px minmax(0, 1fr); gap: 4px 13px; }
.ricatun-trust-origin__facts i { width: 42px; height: 42px; color: #075798; border: 1px solid currentColor; background: transparent; }
.ricatun-trust-origin__facts i svg { width: 29px; height: 29px; }
.ricatun-trust-origin__facts h3 { font-size: 15px; color: #075798; }
.ricatun-trust-origin__facts p { font-size: 12px; line-height: 1.5; color: #075798; }
.ricatun-trust-origin__map { margin: 0; min-height: 365px; border: 0; background: transparent; overflow: visible; }
.ricatun-trust-origin__map-image { min-height: 0; object-fit: fill; display: block; }
.ricatun-trust-origin__map-image img { width: 100%; height: 100%; object-fit: fill; }
.ricatun-trust-journey__photo picture, .ricatun-trust-product > div picture, .ricatun-trust-story__strip picture { display: block; width: 100%; height: 100%; }
.ricatun-trust-origin__map::before { inset: 0 auto 0 0; width: 12%; border: 0; background: linear-gradient(90deg, #e7f6fd, transparent); }
.ricatun-trust-origin__map::after { display: none; }
.ricatun-trust-origin__map-marker { top: 45%; bottom: auto; left: 16%; width: auto; display: block; padding: 0; border: 0; background: none; box-shadow: none; }
.ricatun-trust-origin__map-marker strong { font-size: 15px; letter-spacing: 0; }
.ricatun-trust-origin__map-marker small { margin-top: 2px; font-size: 14px; color: #075798; }
.ricatun-trust-origin__route { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.ricatun-trust-origin__route path { fill: none; stroke: #ef5b3c; stroke-width: .75; stroke-linecap: round; stroke-dasharray: .018 .012; vector-effect: non-scaling-stroke; }
.ricatun-trust-origin__route-dot { position: absolute; top: 34%; left: 69%; z-index: 3; width: 14px; height: 14px; border: 2px solid #fff; border-radius: 50%; background: #ef5b3c; box-shadow: 0 1px 5px rgba(4,40,70,.28); transform: translate(-50%, -50%); }
.ricatun-trust-origin__route-label { position: absolute; top: 30%; left: 69%; z-index: 3; padding: 3px 6px; color: #075798; background: rgba(255,255,255,.86); font-size: 11px; font-weight: 800; line-height: 1.2; white-space: nowrap; transform: translate(-20%, -100%); }
.ricatun-trust-origin__slogan { position: absolute; right: 3%; bottom: 9%; z-index: 2; max-width: 31%; color: #fff; font-size: clamp(20px, 2vw, 29px); font-weight: 700; line-height: 1.4; text-shadow: 0 2px 8px #075798; }
.ricatun-trust-why { padding: 16px 0; background: #fffefa; }
.ricatun-trust-why__layout { grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr); gap: 22px; align-items: stretch; }
.ricatun-trust-why .ricatun-trust-heading { margin: 0 0 18px; text-align: left; }
.ricatun-trust-why__points { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; }
.ricatun-trust-why__points article { padding: 0 10px; border: 0; border-right: 1px solid #cddce8; background: transparent; box-shadow: none; text-align: center; }
.ricatun-trust-why__points article:nth-child(n) { border-color: #cddce8; }
.ricatun-trust-why__points article:last-child { border: 0; }
.ricatun-trust-why__points .ricatun-trust-icon { width: 72px; height: 72px; margin: 0 auto 14px; border: 2px solid #d4aa50; background: #fff; color: #075798; }
.ricatun-trust-why__points .ricatun-trust-icon svg { width: 38px; height: 38px; }
.ricatun-trust-why__points h3 { min-height: 40px; margin: 0 0 10px; font-size: 15px; line-height: 1.4; color: #075798; }
.ricatun-trust-why__points p { font-size: 11px; line-height: 1.6; color: #075798; }
.ricatun-trust-why__flavours { gap: 10px; }
.ricatun-trust-flavour { display: flex; min-height: 0; padding: 0 0 10px; justify-content: flex-start; border-radius: 5px; text-align: center; text-decoration: none; }
.ricatun-trust-flavour--water { background: #73cbf2; color: #075798; }
.ricatun-trust-flavour--sunflower { background: #f7cf4e; color: #075798; }
.ricatun-trust-flavour--olive { background: #98b866; color: #fff; }
.ricatun-trust-flavour img { display: block; width: 100%; height: auto; aspect-ratio: 143 / 155; object-fit: cover; }
.ricatun-trust-flavour h3 { margin: 6px 4px 2px; font-size: 17px; line-height: 1.3; }
.ricatun-trust-flavour p { margin: 0 3px; font-size: 13px; line-height: 1.4; opacity: 1; }
.ricatun-trust-flavour:focus-visible { outline: 3px solid #075798; outline-offset: 3px; }
@media (max-width: 1080px) {
  .ricatun-trust-origin__inner { grid-template-columns: minmax(0, .4fr) minmax(0, .6fr); }
  .ricatun-trust-origin__map { min-height: 360px; }
  .ricatun-trust-origin h2 { font-size: 28px; }
  .ricatun-trust-origin__slogan { font-size: 20px; max-width: 36%; }
  .ricatun-trust-why__layout { grid-template-columns: 1fr; gap: 22px; }
  .ricatun-trust-why__flavours { max-width: 650px; width: 100%; margin: 0 auto; }
}
@media (max-width: 600px) {
  .ricatun-trust-origin__inner { grid-template-columns: 1fr; }
  .ricatun-trust-origin__copy { padding: 24px 0; }
  .ricatun-trust-origin__map { min-height: 240px; margin: 0 -20px; }
  .ricatun-trust-origin__slogan { font-size: 16px; max-width: 44%; }
  .ricatun-trust-origin__map-marker { left: 9%; top: 40%; }
  .ricatun-trust-origin__map-marker strong, .ricatun-trust-origin__map-marker small { font-size: 12px; }
  .ricatun-trust-origin__route-label { font-size: 9px; }
  .ricatun-trust-why { padding: 24px 0; }
  .ricatun-trust-why__points { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 0; }
  .ricatun-trust-why__points article:nth-child(2) { border-right: 0; }
  .ricatun-trust-why__flavours { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
  .ricatun-trust-flavour h3 { font-size: 14px; }
  .ricatun-trust-flavour p { font-size: 10px; }
}

/* ============================================================
   RICATUN inner pages — shared trust-theme layer
   Scope: .site-body--ricatun.site-body--inner (page/product/article)
   Reuses the trust palette. Does NOT touch .ricatun-trust-home tokens.
   ============================================================ */

/* --- 1. Tokens: independent duplicate so var() never resolves empty --- */
.site-body--ricatun.site-body--inner {
  --rt-ink: #123862;
  --rt-blue: #0b4e8d;
  --rt-ocean: #082d55;
  --rt-cyan: #a9d9f5;
  --rt-sky: #eaf6ff;
  --rt-paper: #fff;
  --rt-yellow: #ffd24a;
  --rt-green: #d9ebda;
  --rt-muted: #56708b;
  --rn-blue: #0b4e8d;
  --rn-yellow: #ffd24a;
  --rn-ink: #123862;
  --rn-muted: #56708b;
  --food-shell: min(1360px, calc(100vw - 72px));
  color: var(--rt-ink);
  background: var(--rt-paper);
}
/* Inner pages retain their own sticky header. */
.site-body--ricatun.site-body--inner .site-header { position: sticky; top: 0; z-index: 50; }

/* --- 2. Shared typography --- */
.site-body--inner .ricatun-trust-inner h1,
.site-body--inner .ricatun-trust-inner h2 {
  font-family: Georgia, 'Times New Roman', 'Nimbus Roman', serif;
  font-weight: 700;
  letter-spacing: 0;
}
.site-body--inner .ricatun-trust-inner .breadcrumb { color: var(--rt-muted); }
.site-body--inner .ricatun-trust-inner .breadcrumb a { color: var(--rt-blue); }
.site-body--inner .ricatun-trust-inner .section-link,
.site-body--inner .ricatun-trust-inner .card__link { color: var(--rt-blue); }

/* --- 3. Hero bands (generic pages) --- */
.site-body--inner .page-hero { background: var(--rt-ocean); min-height: 400px; }
/* hero headings sit on the dark band, so they must stay light (not --rt-blue) */
.site-body--inner .page-hero h1,
.site-body--inner .page-hero h2,
.site-body--inner .brand-hero h1,
.site-body--inner .brand-hero h2 { color: #fff; }
.site-body--inner .page-hero__overlay {
  background: linear-gradient(90deg, rgba(8,45,85,.96), rgba(8,45,85,.72) 58%, rgba(8,45,85,.34));
}
.site-body--inner .page-hero--plain {
  min-height: 320px;
  background: radial-gradient(circle at 85% 18%, #12557f 0, transparent 30%), var(--rt-ocean);
}
.site-body--inner .page-hero__content { padding: 64px 24px 56px; }
.site-body--inner .page-hero h1 { font-size: clamp(38px, 4.4vw, 60px); }
.site-body--inner .ricatun-trust-inner .page-hero .breadcrumb { color: var(--rt-cyan); }
.site-body--inner .ricatun-trust-inner .page-hero .breadcrumb a { color: var(--rt-yellow); }
.site-body--inner .page-hero .lead { color: #cfe6f6; }

/* --- 4. Brand hero (ricatun) --- */
.site-body--inner .brand-hero h1 {
  font-family: Georgia, 'Times New Roman', 'Nimbus Roman', serif;
  font-weight: 700;
}
.site-body--inner .brand-hero--ricatun { color: #f2f9ff; background: var(--rt-ocean); }
.site-body--inner .brand-hero--ricatun .brand-hero__media { background: #0b4e8d; }
.site-body--inner .brand-hero--ricatun .food-kicker { color: var(--rt-yellow); }
.site-body--inner .ricatun-trust-inner .brand-hero--ricatun .breadcrumb,
.site-body--inner .ricatun-trust-inner .brand-hero--ricatun .breadcrumb a { color: var(--rt-cyan); }

/* --- 5. Content page + prose --- */
.site-body--inner .content-page--inner { background: var(--rt-paper); }
.site-body--inner .prose a { color: var(--rt-blue); }
.site-body--inner .prose img { border-radius: 12px; }

/* --- 5b. Kicker + legacy dark-section readability on inner pages --- */
.site-body--inner .ricatun-trust-inner .section-kicker,
.site-body--inner .ricatun-trust-inner .food-kicker { color: var(--rt-blue); }
/* restore light text where the kicker sits on a dark band */
.site-body--inner .ricatun-trust-inner .page-hero .section-kicker { color: var(--rt-cyan); }
.site-body--inner .ricatun-trust-inner .brand-hero .food-kicker { color: var(--rt-yellow); }
.site-body--inner .ricatun-trust-inner .contact-process .section-kicker { color: var(--rt-yellow); }
/* legacy dark contact-process block: keep its text light */
.site-body--inner .contact-process h2,
.site-body--inner .contact-process strong { color: #fff; }
.site-body--inner .contact-process li p { color: #bdd2e5; }

/* --- 6. Listing cards --- */
.site-body--inner .grid--products > .card,
.site-body--inner .grid--articles > .card {
  border: 1px solid rgba(11,78,141,.14);
  border-radius: 8px;
  background: var(--rt-paper);
  box-shadow: 0 14px 34px rgba(11,78,141,.08);
}
.site-body--inner .card h3 { color: var(--rt-blue); }
.site-body--inner .card p { color: var(--rt-muted); }
.site-body--inner .card__label { color: var(--rt-blue) !important; }
.site-body--inner .card__media { background: var(--rt-sky); }
.site-body--inner .grid--products .card__media { aspect-ratio: 1 / 1; }
.site-body--inner .grid--products .card__media img { object-fit: contain; padding: 6%; }
.site-body--inner .grid--articles .card__media { aspect-ratio: 16 / 9; }
/* a single product no longer forces a full-width split hero */
.site-body--inner .grid--products:has(> .card:only-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.site-body--inner .grid--products > .card:only-child { display: block; grid-template-columns: none; }
.site-body--inner .grid--products > .card:only-child .card__media { height: auto; aspect-ratio: 1 / 1; }
.site-body--inner .grid--products > .card:only-child .card__body { display: block; padding: 24px 24px 26px; }

/* --- 7. Category pills --- */
.site-body--inner .category-pills span,
.site-body--inner .category-pills a { border-color: rgba(11,78,141,.22); color: var(--rt-muted); }
.site-body--inner .category-pills a:hover { border-color: var(--rt-blue); color: var(--rt-blue); background: var(--rt-sky); }

/* --- 8. Buttons --- */
.site-body--inner .button { border-radius: 999px; }
.site-body--inner .button--primary,
.site-body--inner .button--gold {
  border-color: var(--rt-yellow);
  color: var(--rt-ocean);
  background: var(--rt-yellow);
  box-shadow: 0 12px 28px rgba(255,210,74,.34);
}
.site-body--inner .button--primary:hover,
.site-body--inner .button--gold:hover { background: #ffdd6d; }
.site-body--inner .button--outline { border-color: var(--rt-blue); color: var(--rt-blue); background: transparent; }
.site-body--inner .button--outline:hover { color: #fff; background: var(--rt-blue); }

/* --- 9. Contact page --- */
.site-body--inner .contact-layout { grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr); gap: 30px; }
.site-body--inner .content-page--contact .contact-company,
.site-body--inner .contact-company {
  border: 1px solid rgba(11,78,141,.16);
  border-radius: 16px;
  background: var(--rt-sky);
  padding: 28px;
}
.site-body--inner .content-page--contact .contact-company h2 { color: var(--rt-blue); }
.site-body--inner .contact-company .company-contact > strong { color: var(--rt-blue); }
.site-body--inner .contact-company .company-contact address { color: var(--rt-muted); }
.site-body--inner .inquiry-box {
  border: 1px solid rgba(11,78,141,.16);
  border-radius: 18px;
  background: linear-gradient(150deg, var(--rt-sky), #f7fcff);
}
.site-body--inner .inquiry-box h2 { color: var(--rt-blue); }
.site-body--inner .inquiry-box p { color: var(--rt-muted); }
.site-body--inner .inquiry-form label { color: var(--rt-ink); }
.site-body--inner .inquiry-form input:focus,
.site-body--inner .inquiry-form textarea:focus { border-color: var(--rt-blue); box-shadow: 0 0 0 3px rgba(11,78,141,.14); }
.site-body--inner .content-page--contact .inquiry-box {
  color: var(--rt-ink);
  border-radius: 18px;
  background: linear-gradient(150deg, var(--rt-sky), #f7fcff);
}
.site-body--inner .content-page--contact .inquiry-box h2 { color: var(--rt-blue); }
.site-body--inner .content-page--contact .inquiry-box > div:first-child > p:last-child { color: var(--rt-muted); }
.site-body--inner .content-page--contact .inquiry-box .inquiry-form label { color: var(--rt-ink); }

/* --- 10. Product detail --- */
.site-body--inner .product-page { background: linear-gradient(180deg, var(--rt-sky), var(--rt-paper) 42%); }
.site-body--inner .product-gallery {
  border: 1px solid rgba(11,78,141,.16);
  border-radius: 18px;
  box-shadow: 0 18px 44px rgba(11,78,141,.1);
}
.site-body--inner .product-gallery__badge { color: var(--rt-ocean); background: var(--rt-yellow); }
.site-body--inner .product-summary h1 { color: var(--rt-blue); }
.site-body--inner .product-summary .lead { color: var(--rt-muted); }
.site-body--inner .product-assurance { border-color: rgba(11,78,141,.18); }
.site-body--inner .product-assurance span { color: var(--rt-blue); }
.site-body--inner .product-assurance span::before { color: var(--rt-blue); }
.site-body--inner .product-facts, .site-body--inner .product-specifications dl { border-color: rgba(11,78,141,.16); }
.site-body--inner .product-facts div, .site-body--inner .product-specifications dl div { border-color: rgba(11,78,141,.14); }
.site-body--inner .product-facts dt, .site-body--inner .product-specifications dt { color: var(--rt-blue); }
.site-body--inner .product-facts dd, .site-body--inner .product-specifications dd { color: var(--rt-muted); }
.site-body--inner .product-specifications h2 { color: var(--rt-blue); }
.site-body--inner .product-story { background: var(--rt-paper); }
.site-body--inner .product-inquiry-wrap { background: var(--rt-sky); }
.site-body--inner .product-media img { object-fit: contain; }
.site-body--inner .product-gallery-thumb img { object-fit: contain; }
.site-body--inner .product-inquiry-wrap .inquiry-box { background: linear-gradient(140deg, var(--rt-ocean), #0b4e8d); }
.site-body--inner .product-inquiry-wrap .inquiry-box h2 { color: #fff; }
.site-body--inner .product-inquiry-wrap .inquiry-box .eyebrow { color: var(--rt-yellow); }
.site-body--inner .product-inquiry-wrap .inquiry-box > div:first-child > p:last-child { color: #cfe6f6; }
.site-body--inner .product-inquiry-wrap .inquiry-form label { color: #fff; }

/* --- 11. Article detail --- */
.site-body--inner .article-page { background: linear-gradient(180deg, var(--rt-sky) 0, var(--rt-paper) 460px); }
.site-body--inner .article-heading { text-align: left; }
.site-body--inner .article-heading .breadcrumb { justify-content: flex-start; }
.site-body--inner .article-heading h1 { color: var(--rt-blue); }
.site-body--inner .article-heading .lead { margin-left: 0; color: var(--rt-muted); }
.site-body--inner .article-body { color: var(--rt-muted); font-size: 17px; line-height: 1.85; }
.site-body--inner .article-body h2, .site-body--inner .article-body h3 { color: var(--rt-blue); }
.site-body--inner .article-content .article-cover { border-radius: 14px; }

/* --- 12. Search / 404 / success --- */
.site-body--inner .search-form label { color: var(--rt-blue); }
.site-body--inner .search-form input { border-color: rgba(11,78,141,.2); border-radius: 12px; }
.site-body--inner .search-form input:focus { border-color: var(--rt-blue); box-shadow: 0 0 0 3px rgba(11,78,141,.14); outline: none; }
.site-body--inner .search-links { border-color: rgba(11,78,141,.16); }
.site-body--inner .search-links a { border-color: rgba(11,78,141,.14); }
.site-body--inner .search-links a:hover strong { color: var(--rt-blue); }

/* --- 13. Brand story pages / chapters --- */
.site-body--inner .brand-story-page--ricatun { color: var(--rt-ink); background: var(--rt-sky); }
.site-body--inner .brand-story-page--ricatun .brand-story-page__copy { border-left-color: var(--rt-blue); }
.site-body--inner .brand-story-page--ricatun .food-kicker { color: var(--rt-blue); }
.site-body--inner .brand-story-page--ricatun .food-button { border-color: var(--rt-blue); background: var(--rt-blue); }
.site-body--inner .brand-story-page--ricatun .brand-story-page__facts { border-top-color: var(--rt-blue); color: var(--rt-blue); }
.site-body--inner .brand-chapter--ricatun { color: var(--rt-ink); background: var(--rt-paper); }
.site-body--inner .brand-chapter--ricatun .food-kicker,
.site-body--inner .brand-chapter--ricatun .brand-chapter__steps span { color: var(--rt-blue); }
.site-body--inner .brand-chapter--ricatun .brand-chapter__steps article + article { border-left-color: var(--rt-cyan); }
.site-body--inner .brand-chapter--ricatun .brand-chapter__steps p { color: var(--rt-muted); }
.site-body--inner .brand-editorial--ricatun { color: var(--rt-ink); background: var(--rt-sky); }
.site-body--inner .brand-editorial--ricatun .brand-editorial__prose { border-left-color: var(--rt-blue); }
.site-body--inner .brand-editorial--ricatun .brand-editorial__prose p { color: var(--rt-muted); }
.site-body--inner .food-button { border-radius: 999px; }

/* --- 14. About page blocks --- */
.site-body--inner .food-company-detail { background: var(--rt-sky); }
.site-body--inner .food-brand-story { background: var(--rt-paper); }
.site-body--inner .food-brand-principles { background: var(--rt-ocean); }
.site-body--inner .food-brand-principles h2,
.site-body--inner .food-brand-principles .food-kicker { color: var(--rt-yellow); }
.site-body--inner .food-company-capabilities article span { color: var(--rt-blue); }

/* --- 15. Footer wave clearance on inner pages --- */
.site-body--inner .ricatun-trust-inner { padding-bottom: 0; }
.site-body--inner .content-page,
.site-body--inner .product-inquiry-wrap,
.site-body--inner .product-story,
.site-body--inner .article-content { padding-bottom: 104px; }

/* --- 16. Responsive --- */
@media (max-width: 1080px) {
  .site-body--inner .contact-layout { grid-template-columns: 1fr; }
  .site-body--inner .content-page--contact .contact-company { grid-template-columns: 1fr; gap: 18px; }
  .site-body--inner .brand-story-page--ricatun .brand-story-page__grid { grid-template-columns: 1fr; }
  .site-body--inner .grid--products:has(> .card:only-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .site-body--inner .page-hero { min-height: 320px; }
  .site-body--inner .page-hero__content { padding: 48px 20px 40px; }
  .site-body--inner .page-hero h1 { font-size: 32px; }
  .site-body--inner .grid--products:has(> .card:only-child) { grid-template-columns: 1fr; }
  .site-body--inner .content-page,
  .site-body--inner .product-inquiry-wrap,
  .site-body--inner .product-story,
  .site-body--inner .article-content { padding-bottom: 88px; }
}

/* ============================================================
   RICATUN home — client design deck pass (2026-10-12)
   The client's homepage deck puts the journey, trace and contact bands on
   deep-water photography instead of a flat fill. These rules are declared last
   so they win over the earlier "structure rebuild" block (same specificity,
   later source order). background-color stays as the no-photo fallback.
   ============================================================ */
.ricatun-trust-journey {
  background-color: #073f5a;
  background-image:
    linear-gradient(180deg, rgba(3, 39, 64, .58) 0%, rgba(3, 39, 64, .74) 100%),
    url('/static/site/brand/ricatun/ocean-tuna-scene.webp');
  background-position: center center;
  background-size: cover, cover;
  background-repeat: no-repeat, no-repeat;
}
.ricatun-trust-journey__steps { background: rgba(3, 32, 53, .34); }

@media (max-width: 860px) {
  .ricatun-trust-journey {
    background-image:
      linear-gradient(180deg, rgba(3, 39, 64, .5) 0%, rgba(3, 39, 64, .78) 100%),
      url('/static/site/brand/ricatun/journey-mobile-ocean.png');
    background-position: center center;
    background-size: cover, cover;
  }
}

.ricatun-trust-trace {
  color: #fff;
  background-color: #06466d;
  background-image:
    linear-gradient(180deg, rgba(4, 36, 60, .72) 0%, rgba(4, 36, 60, .86) 100%),
    url('/static/site/brand/ricatun/pexels-pacific-horizon.jpg');
  background-position: center center;
  background-size: cover, cover;
  background-repeat: no-repeat, no-repeat;
}
.ricatun-trust-trace .ricatun-trust-kicker { color: var(--rt-yellow); }
.ricatun-trust-trace h2 { color: #fff; }
.ricatun-trust-trace__body > p:not(.ricatun-trust-kicker) { color: #d3e6f6; }
.ricatun-trust-trace__promise { color: var(--rt-yellow); }
.ricatun-trust-trace__items li { background: rgba(255, 255, 255, .96); }
.ricatun-trust-trace__items h3 { color: var(--rt-ink); }
.ricatun-trust-trace__items p { color: var(--rt-muted); }

.ricatun-trust-contact {
  background-color: var(--rt-ocean);
  background-image:
    linear-gradient(180deg, rgba(4, 26, 47, .86) 0%, rgba(4, 26, 47, .92) 100%),
    url('/static/site/brand/ricatun/pexels-pacific-surface.jpg');
  background-position: center 70%;
  background-size: cover, cover;
  background-repeat: no-repeat, no-repeat;
}
/* Homepage navigation overlays the banner and remains reachable on scroll. */
.site-body--ricatun:not(.site-body--inner) .site-topbar { display: none; }
.site-body--ricatun:not(.site-body--inner) .site-header {
  position: fixed; inset: 0 0 auto; z-index: 50;
  background: transparent; border-bottom-color: transparent;
  box-shadow: none; backdrop-filter: none;
  transition: background-color .2s ease;
}
.site-body--ricatun:not(.site-body--inner) .site-header.is-past-banner { background: #041a2f; }
/* The home header is transparent over the banner and dark navy afterwards, so it swaps to
   the white wordmark variant; inner pages keep the navy wordmark on the white sticky header.
   Both files share one canvas and aspect ratio, so the swap cannot shift the layout or
   change the header's measured height. */
.brand__logo--mono { display: none; }
.site-body--ricatun:not(.site-body--inner) .site-header .brand__logo--color { display: none; }
.site-body--ricatun:not(.site-body--inner) .site-header .brand__logo--mono { display: block; }
/* The horizontal lockup is 3.46:1, so its size is bound to height. Declared here with theme
   scope to override the earlier .brand__logo rules. */
.site-body--ricatun .brand__logo { width: auto; max-width: none; height: 56px; }
.site-body--ricatun .footer-brand img { height: 52px; }
@media (max-width: 1100px) {
  .site-body--ricatun .brand__logo { height: 48px; }
  .site-body--ricatun .footer-brand img { height: 46px; }
}
@media (max-width: 820px) {
  .site-body--ricatun .brand__logo { height: 42px; }
  .site-body--ricatun .footer-brand img { height: 40px; }
}
.site-body--ricatun:not(.site-body--inner) .site-nav--desktop > .site-nav__list > .site-nav__item > .site-nav__link-row > .site-nav__link { color: #fff; }
.site-body--ricatun:not(.site-body--inner) .site-nav--desktop > .site-nav__list > .site-nav__item > .site-nav__link-row > .site-nav__link:hover,
.site-body--ricatun:not(.site-body--inner) .site-nav--desktop > .site-nav__list > .site-nav__item > .site-nav__link-row > .site-nav__link:focus-visible { color: #ffd24a; }
.site-body--ricatun:not(.site-body--inner) .site-nav--desktop > .site-nav__list > .site-nav__item > .site-nav__link-row > .site-nav__link::before { display: none; }
.site-body--ricatun:not(.site-body--inner) .site-nav-toggle { background: transparent; border-color: rgba(255,255,255,.6); }
.site-body--ricatun:not(.site-body--inner) .site-nav-toggle span { background: #fff; }
.site-body--ricatun:not(.site-body--inner) .site-nav--mobile { background: #041a2f; color: #fff; max-height: calc(100dvh - 100px); overflow-y: auto; }
.site-body--ricatun:not(.site-body--inner) .site-nav--mobile .site-nav__link { color: #fff; }
.site-body--ricatun:not(.site-body--inner) .site-nav--mobile .site-nav__submenu-toggle { color: #fff; }
.site-body--ricatun:not(.site-body--inner) .site-nav--mobile .site-nav__link:hover,
.site-body--ricatun:not(.site-body--inner) .site-nav--mobile .site-nav__link:focus-visible { color: #ffd24a; background: transparent; }
.site-body--ricatun:not(.site-body--inner) .ricatun-trust-hero--single .ricatun-trust-hero__inner { padding-top: calc(var(--home-header-height, 100px) + 48px); }
html { scroll-padding-top: 110px; }

/* Inner-page rhythm follows the homepage, while managed content stays intact. */
.site-body--inner .page-hero__overlay { background: linear-gradient(90deg, rgba(4,26,47,.92), rgba(4,26,47,.35)); }
.site-body--inner .page-hero .section-kicker { color: #ffd24a; }
.site-body--inner .food-brand-principles,
.site-body--inner .brand-chapter--ricatun {
  background: linear-gradient(100deg, rgba(4,26,47,.94), rgba(4,26,47,.86)), url('/static/site/brand/ricatun/pexels-pacific-horizon.jpg') center / cover;
  background-color: #041a2f;
}
.site-body--inner .brand-chapter--ricatun h2,
.site-body--inner .brand-chapter--ricatun h3 { color: #fff; }
.site-body--inner .brand-chapter--ricatun .food-kicker,
.site-body--inner .brand-chapter--ricatun .brand-chapter__steps span { color: #ffd24a; }
.site-body--inner .brand-chapter--ricatun .brand-chapter__steps p { color: #e4eef6; }
.site-body--inner .food-company-capabilities article { border-top: 3px solid #ffd24a; }
/* Align the About body sections and feature photo with the page header (70px), not the shell edge (46px). */
.site-body--inner .food-inner-page--about-us .food-brand-story .food-shell,
.site-body--inner .food-inner-page--about-us .food-brand-principles .food-shell { padding-right: 24px; padding-left: 24px; }
.site-body--inner .food-inner-page--about-us .about-feature-media { max-width: var(--food-shell); }
.site-body--inner .food-inner-page--contact-us .content-page--contact .contact-layout { padding-right: 24px; padding-left: 24px; }
.site-body--inner .food-inner-page--contact-us .contact-intro,
.site-body--inner .food-inner-page--contact-us .contact-preparation { max-width: var(--food-shell); }
@media (max-width: 860px) {
  .site-body--inner .food-inner-page--about-us .food-brand-story .food-shell,
  .site-body--inner .food-inner-page--about-us .food-brand-principles .food-shell,
  .site-body--inner .food-inner-page--contact-us .content-page--contact .contact-layout { padding-right: 20px; padding-left: 20px; }
}
.site-body--inner .food-inner-page--cooperation .content-page.content-page--inner .page-prose,
.site-body--inner .food-inner-page--purchase-channels .content-page.content-page--inner .page-prose {
  position: relative; width: 100%; max-width: none; min-height: 520px; padding: 0 52% 0 0;
}
.site-body--inner .food-inner-page--cooperation .page-prose::after,
.site-body--inner .food-inner-page--purchase-channels .page-prose::after {
  content: ''; position: absolute; inset: 0 0 0 54%; border-radius: 12px;
  background: url('/static/site/brand/ricatun/pexels-pacific-surface.jpg') center / cover;
}
.site-body--inner .food-inner-page--purchase-channels .page-prose::after { background-image: url('/static/site/brand/ricatun/pexels-pacific-horizon.jpg'); }
.site-body--inner .listing-section .card { border-radius: 12px; border-color: rgba(11,78,141,.12); box-shadow: 0 12px 30px rgba(4,26,47,.07); }
.site-body--inner .listing-section .card__body { border-top: 3px solid #ffd24a; }
.site-body--inner .article-heading { border-bottom: 3px solid #ffd24a; padding-bottom: 28px; }
@media (max-width: 860px) {
  .site-body--inner .food-article-page .article-heading { max-width: 800px; }
  .site-body--inner .food-inner-page--cooperation .content-page.content-page--inner .page-prose,
  .site-body--inner .food-inner-page--purchase-channels .content-page.content-page--inner .page-prose { padding: 0 0 300px; min-height: 0; }
  .site-body--inner .food-inner-page--cooperation .page-prose::after,
  .site-body--inner .food-inner-page--purchase-channels .page-prose::after { inset: auto 24px 24px; height: 260px; }
}

.ricatun-trust-contact__copy > p:not(.ricatun-trust-kicker) { color: #d7e6f4; }

/* Contact page: homepage ocean photography, with the shared inquiry contract. */
.site-body--inner .food-inner-page--contact-us .content-page--contact { padding: 0; }
.site-body--inner .food-inner-page--contact-us .contact-photo-band {
  padding: 88px 24px;
  background: linear-gradient(110deg, rgba(4,26,47,.92), rgba(4,26,47,.76)), url('/static/site/brand/ricatun/pexels-pacific-surface.jpg') center 65% / cover;
  background-color: #041a2f;
}
.site-body--inner .food-inner-page--contact-us .contact-layout { padding: 0; gap: 72px; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); align-items: start; }
.site-body--inner .food-inner-page--contact-us .contact-company { display: block; padding: 28px 0; margin: 0; border: 0; border-radius: 0; background: transparent; }
.site-body--inner .food-inner-page--contact-us .contact-company h2 { margin-bottom: 32px; color: #fff; font-size: clamp(30px,3vw,44px); }
.site-body--inner .food-inner-page--contact-us .contact-company .company-contact > strong { color: #ffd24a; font-size: 24px; }
.site-body--inner .food-inner-page--contact-us .contact-company .company-contact address,
.site-body--inner .food-inner-page--contact-us .contact-company__details > p { color: #e4eef6; overflow-wrap: anywhere; }
.site-body--inner .food-inner-page--contact-us .contact-company .section-link { color: #ffd24a; }
.site-body--inner .food-inner-page--contact-us .inquiry-box { display: block; padding: 40px; background: #fff; border: 0; border-radius: 12px; box-shadow: 0 24px 60px rgba(0,0,0,.18); }
.site-body--inner .food-inner-page--contact-us .inquiry-box h2 { font-size: clamp(28px,3vw,38px); }
.site-body--inner .food-inner-page--contact-us .inquiry-form { margin-top: 28px; }
.site-body--inner .food-inner-page--contact-us .inquiry-box .button--primary { border-color: #ffd24a; background: #ffd24a; color: #041a2f; box-shadow: none; }
.site-body--inner .food-inner-page--contact-us .page-prose { margin: 0; }
.site-body--inner .food-inner-page--contact-us .contact-intro { padding: 88px 24px 64px; gap: 64px; }
.site-body--inner .food-inner-page--contact-us .contact-preparation { padding: 0 24px 88px; }
.site-body--inner .food-inner-page--contact-us .contact-preparation__grid { gap: 32px; }
.site-body--inner .food-inner-page--contact-us .contact-preparation__grid article { padding: 28px 0 0; border-left: 0; }
.site-body--inner .food-inner-page--contact-us .contact-preparation__grid span { color: #0b4e8d; font-size: 24px; }
.site-body--inner .food-inner-page--contact-us .contact-process {
  max-width: none; margin: 0; padding: 88px max(24px, calc((100% - var(--food-shell)) / 2 + 24px)); gap: 64px;
  background: linear-gradient(110deg, rgba(4,26,47,.94), rgba(4,26,47,.84)), url('/static/site/brand/ricatun/pexels-pacific-horizon.jpg') center / cover;
  background-color: #041a2f;
}
.site-body--inner .food-inner-page--contact-us .contact-process h2,
.site-body--inner .food-inner-page--contact-us .contact-process strong { color: #fff; }
.site-body--inner .food-inner-page--contact-us .contact-process p { color: #e4eef6; }
.site-body--inner .food-inner-page--contact-us .contact-process .section-kicker { color: #ffd24a; }
@media (max-width: 1080px) {
  .site-body--inner .food-inner-page--contact-us .contact-layout { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 860px) {
  .site-body--inner .food-inner-page--contact-us .contact-photo-band { padding: 48px 20px; }
  .site-body--inner .food-inner-page--contact-us .inquiry-box { padding: 28px 24px; }
  .site-body--inner .food-inner-page--contact-us .contact-intro { grid-template-columns: 1fr; gap: 24px; padding: 56px 20px 40px; }
  .site-body--inner .food-inner-page--contact-us .contact-preparation { padding: 0 20px 56px; }
  .site-body--inner .food-inner-page--contact-us .contact-preparation__grid { grid-template-columns: 1fr; gap: 24px; }
  .site-body--inner .food-inner-page--contact-us .contact-process { grid-template-columns: 1fr; gap: 32px; padding: 56px 20px 88px; }
}

@media (max-width: 860px) {
  .ricatun-trust-journey {
    background-position: center center;
    background-size: cover, cover;
  }
  .ricatun-trust-trace {
    background-position: center center;
    background-size: cover, cover;
  }
  .ricatun-trust-contact {
    background-position: center 62%;
    background-size: cover, cover;
  }
}
