/* September review: dark-green direction, without altering the approved anchor geometry. */
body.marini-site { --m-ink: #eff4ee; --m-muted: #c3d4ca; --m-line: rgba(216,231,224,.25); --m-card: #34756a; --m-card-light: #eaf3ed; color: var(--m-ink); background: #073b37; }
.marini-header { border-color: var(--m-line); }
.marini-wordmark img, .marini-footer > img { filter: brightness(0) invert(1); }
.marini-nav a { color: #eff4ee; }
.marini-nav a::after, .marini-menu-button span { background: #eff4ee; }
.marini-nav .corporate-link { border-color: var(--m-line); }
.marini-hero-shade { background: linear-gradient(90deg,rgba(7,59,55,.97) 0%,rgba(7,59,55,.88) 26%,rgba(7,59,55,.72) 38%,rgba(7,59,55,.16) 56%,transparent 72%); }
.marini-hero h1 { max-width: 46%; }
.marini-hero-copy > p:not(.section-tag) { max-width: min(34rem,38vw); }
.story-image { background-image: linear-gradient(90deg,rgba(251,252,250,.94),rgba(251,252,250,.7) 40%,transparent 80%),url("./assets/images/feature-c-esta-cleansing-brochure-v1.jpg"); }
.marini-hero-media { background-image:none; background-color:#eaf4ed; }
.value-explore { background-image:url("./assets/images/feature-retinol-plus-brochure-v1.jpg"); }
.value-integrity { background-image:url("./assets/images/feature-c-esta-serum-brochure-v1.jpg"); }
.value-coexistence { background-image:url("./assets/images/feature-c-esta-cleansing-brochure-v1.jpg"); }
.technology-image { background-image:url("./assets/images/feature-hyla-serum-brochure-v1.jpg"); background-size:contain; background-repeat:no-repeat; background-color:#f5f5f5; }
.product-image { background-image:none; background-color:#fff; }
.systems-image { background-image:none; background-color:#fff; }
.copy-block, .value-card, .commitment-card { background: var(--m-card); }
.feature-copy-dark { background: var(--m-card); }
.copy-block, .value-card, .commitment-card, .technology-card, .care-steps li { --m-muted: #eff4ee; }
.copy-block h2, .section-heading h2, .products-intro h2, .value-copy h3, .commitment-card h3, .message-signature, .product-list a { color: #eff4ee; }
.copy-block > p:not(.section-tag), .feature-copy-dark > p:not(.section-tag) { color: var(--m-muted); }
.commitment-icon { display: block; width: 5rem; height: 5rem; margin-bottom: 2rem; color: #e4f1e7; overflow: visible; }
.commitment-card .commitment-icon { display: none; }
.commitment-card::before { content: ""; display: block; width: 10rem; height: 10rem; margin-bottom: -3rem; background: center / contain no-repeat; filter: url("#commitment-white-ink"); transform: scale(.5); transform-origin: left top; }
.commitment-card:nth-child(1)::before { background-image: url("./assets/images/commitment-cruelty-free-white.png"); }
.commitment-card:nth-child(2)::before { background-image: url("./assets/images/commitment-formulated-with-care-white.png"); }
.commitment-card:nth-child(3)::before { background-image: url("./assets/images/commitment-recyclable-packaging-white.png"); }
.commitment-card:nth-child(4)::before { background-image: url("./assets/images/commitment-made-in-usa-white.png"); }
.commitments-section { scroll-margin-top: 3rem; }
@media (max-width:700px) { .commitment-icon { width: 4.5rem; height: 4.5rem; margin-bottom: 1.5rem; } .commitment-card::before { width: 9rem; height: 9rem; margin-bottom: -3rem; } .commitments-section { scroll-margin-top: 2rem; } }
.products-intro { align-items: start; }
.product-list a { background: var(--m-card); }
.product-list a:hover, .product-list a:focus-visible { background: #2b6b60; }
a:focus-visible, button:focus-visible, summary:focus-visible, .product-list a:focus-visible, .product-page a:focus-visible, .product-page summary:focus-visible { outline: 2px solid #c5e7cf; outline-offset: 4px; }
.marini-footer > div { flex-wrap: wrap; }
.marini-contact { background: #042c29; }
.product-page h2, .product-section-nav a, .product-text-link, .product-usage dd, .product-disclosure summary { color: #eff4ee; }
.product-hero { --m-ink: #163432; --m-muted: #526563; --m-line: rgba(11,70,68,.22); color: var(--m-ink); }
.product-summary { background: var(--m-card-light); }
.product-hero a:focus-visible { outline-color: #0b4644; }
.product-preview-note { --m-muted: #526563; color: #163432; }
.product-detail h1, .product-detail .marini-button { color: #eff4ee; }
.product-detail .marini-button:hover, .product-detail .marini-button:focus-visible { color: #0b4644; }
.editorial-main { padding-bottom: 1rem; }
.editorial-hero { padding-block: clamp(3.5rem,7vw,7rem); max-width: 62rem; }
.editorial-hero h1 { font-size: clamp(28px,3vw,32px); line-height: 1.5; margin-bottom: 1.5rem; }
.editorial-hero > p { max-width: 44rem; color: var(--m-muted); }
.editorial-section { padding-block: clamp(2.5rem,5vw,5rem); border-top: 1px solid var(--m-line); scroll-margin-top: 3rem; }
.editorial-section h2 { font-size: clamp(24px,2vw,32px); line-height: 1.5; }
.editorial-section > p { max-width: 48rem; color: var(--m-muted); }
.inline-link { display: inline-flex; align-items: center; gap: 2rem; width: fit-content; border-bottom: 1px solid currentColor; padding-block: .75rem; font-size: 14px; color: inherit; }
.inline-link:hover { opacity: .75; }
.copy-block .inline-link { margin-top: 1rem; }
.review-switch { display: flex; justify-content: flex-end; gap: 1.5rem; padding-block: .7rem; font-size: 12px; color: var(--m-muted); }
.review-switch a { text-decoration: underline; text-underline-offset: .3em; }
.review-note { border-left: 2px solid #afcdbb; background: rgba(216,231,224,.08); padding: 1rem 1.5rem; font-size: 13px; color: var(--m-muted); margin-block: 2rem; }
.system-grid, .technology-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem; }
.system-card { background: var(--m-card-light); color: #163432; display: flex; flex-direction: column; }
.system-card img { width: 100%; height: auto; aspect-ratio: 3/2; object-fit: contain; background: #f3f4f2; display: block; }
.system-card-copy { padding: clamp(1.5rem,3vw,3rem); display: flex; flex-direction: column; flex: 1; }
.system-card h3 { font-size: clamp(22px,2vw,28px); line-height: 1.5; }
.system-card p { font-size: 15px; color: #526563; }
.system-card .inline-link { margin-top: auto; }
.care-steps { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); list-style: none; padding: 0; border: 1px solid var(--m-line); }
.care-steps.care-steps-visual { --flow-gap: clamp(2rem,3vw,3rem); gap: var(--flow-gap); border: 0; margin-block: 1.75rem 1.25rem; }
.care-steps.care-steps-visual li { position: relative; padding: 0; border: 0; min-width: 0; display: flex; flex-direction: column; }
.care-step-number { display: flex; align-items: baseline; gap: .65rem; padding: 1.25rem 1.25rem .25rem; background: #eaf3ed; color: #0b4644; }
.care-step-number span { font-size: 10px; font-weight: 500; letter-spacing: .16em; }
.care-step-number b { font-size: clamp(32px,2.6vw,42px); font-weight: 400; line-height: 1; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.care-step-number::after { content: ""; flex: 1; align-self: center; height: 1px; margin-left: .3rem; background: #9dbbb0; }
.care-step-images { position: relative; display: flex; aspect-ratio: 1; background: #eaf3ed; }
.care-steps-visual li:not(:last-child) .care-step-images::after { content: ""; position: absolute; top: 50%; right: calc(6px - var(--flow-gap)); width: calc(var(--flow-gap) - 12px); height: 14px; transform: translateY(-50%); background: #c5e7cf; clip-path: polygon(0 43%,72% 43%,72% 0,100% 50%,72% 100%,72% 57%,0 57%); pointer-events: none; }
.care-step-images a { min-width: 0; flex: 1; display: flex; align-items: center; }
.care-step-images img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; mix-blend-mode: multiply; transition: transform .2s ease; }
/* Crop only the generous side margins of the paired source photos, retaining both packages. */
.care-step-options a { overflow: hidden; }
.care-step-options img { width: 190%; max-width: none; flex-shrink: 0; margin-left: -45%; }
.care-step-options a:focus-visible { outline-offset: -3px; }
.care-step-images a:hover img { transform: translateY(-4px); }
.care-step-copy { padding: clamp(1rem,1.4vw,1.5rem); display: flex; flex-direction: column; flex: 1; }
.care-step-products { display: grid; gap: .6rem; margin-top: auto; padding-top: 1.5rem; }
.care-step-products a { display: flex; align-items: center; justify-content: space-between; gap: .5rem; font-size: 12px; line-height: 1.7; color: #eff4ee; text-decoration: underline; text-decoration-color: rgba(239,244,238,.35); text-underline-offset: .3em; }
.care-step-products a:hover { text-decoration-color: currentColor; }
.care-step-products a span { flex-shrink: 0; }
@media (prefers-reduced-motion: reduce) { .care-step-images img { transition: none; } }
@media (max-width:1000px) {
  .care-steps.care-steps-visual { --flow-gap: 2.5rem; grid-template-columns: 1fr; }
  .care-steps.care-steps-visual li { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); }
  .care-step-number { grid-column: 1 / -1; padding: 1rem 1rem .75rem; }
  .care-step-number b { font-size: 32px; }
  .care-steps-visual li:not(:last-child) .care-step-images::after { display: none; }
  .care-steps-visual li:not(:last-child)::after { content: ""; position: absolute; bottom: calc(6px - var(--flow-gap)); left: 50%; width: 14px; height: calc(var(--flow-gap) - 12px); transform: translateX(-50%); background: #c5e7cf; clip-path: polygon(43% 0,57% 0,57% 72%,100% 72%,50% 100%,0 72%,43% 72%); pointer-events: none; }
  .care-step-images { aspect-ratio: auto; min-height: 10rem; }
  .care-step-copy { padding: 1rem; }
  .care-step-products { padding-top: 1rem; }
}
.care-steps li { padding: 1.5rem; border-right: 1px solid var(--m-line); background: var(--m-card); }
.care-steps li:last-child { border-right: 0; }
.care-steps strong { display: block; font-size: 18px; font-weight: 500; }
.care-steps p { font-size: 13px; color: var(--m-muted); margin: .75rem 0 0; }
.technology-card { padding: clamp(1.5rem,3vw,3rem); background: var(--m-card); }
.technology-card h3 { font-size: 24px; }
.technology-card p { color: var(--m-muted); font-size: 15px; }
.technology-card .inline-link { display: flex; }
.finder-filters { display: flex; flex-wrap: wrap; gap: .75rem; margin-block: 2rem; }
.finder-filters[hidden] { display: none; }
.finder-filters button:has(img) { display: inline-flex; align-items: center; gap: .5rem; }
.finder-filters button img { width: 32px; height: 32px; padding: 5px; border-radius: 50%; background: #e7f1ec; }
.finder-filters button:focus-visible { outline: 2px solid #e7f1ec; outline-offset: 3px; }
.finder-filters button { border: 1px solid var(--m-line); background: transparent; padding: .85rem 1.25rem; cursor: pointer; font-size: 14px; min-height: 48px; }
.finder-filters button[aria-pressed=true] { background: #d8e7e0; color: #073b37; border-color: #d8e7e0; }
.finder-results { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; }
.finder-card { background: var(--m-card-light); color: #163432; display: flex; flex-direction: column; }
.finder-card[hidden] { display: none; }
.finder-card img { width: 100%; aspect-ratio: 1; object-fit: contain; background: #fff; }
.finder-card h3 { font-size: 18px; line-height: 1.6; }
.finder-card > div { padding: 1.5rem; }
.finder-card p { color: #526563; font-size: 14px; }
.finder-card a:focus-visible, .system-card a:focus-visible { outline-color: #0b4644; }
.company-facts { margin: 2rem 0 0; }
.company-facts > div { display: grid; grid-template-columns: 12rem 1fr; gap: 2rem; padding-block: 1.5rem; border-bottom: 1px solid var(--m-line); }
.company-facts dt { color: var(--m-muted); }
.company-facts dd { margin: 0; }
.company-message { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2rem,5vw,5rem); align-items: center; }
.company-message img { width: 100%; height: auto; }
.company-message p { font-size: 15px; line-height: 2.1; color: var(--m-muted); }
.product-information:has(.product-set-grid) { grid-template-columns: 1fr; }
.product-set-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 1rem; padding: 0; margin: 0 0 1.5rem; list-style: none; }
.product-set-grid a { height: 100%; display: flex; flex-direction: column; background: var(--m-card-light); color: #163432; }
.product-set-grid img { display: block; width: 100%; height: auto; min-height: 0; aspect-ratio: 8 / 7; object-fit: cover; object-position: center; background: white; }
.product-hero-set .set-hero-concerns { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .35rem; margin: 1rem 0 1.4rem; max-width: 38rem; padding: .9rem .45rem; border-top: 1px solid #bfd0c9; border-bottom: 1px solid #bfd0c9; color: #163432; }
.product-hero-set .set-hero-concerns li { min-width: 0; text-align: center; }
.product-hero-set .set-hero-concerns span { overflow-wrap: anywhere; }
.product-set-grid .set-step { display: block; padding: 1rem 1rem 0; font-size: 12px; color: #526563; }
.product-set-grid .set-name { display: flex; flex: 1; justify-content: space-between; gap: 1rem; padding: .5rem 1rem 1.5rem; font-size: 14px; }
.product-set-grid a:hover { background: #d8e7e0; }
.product-set-grid a:focus-visible { outline-color: #c5e7cf; }
.product-set-body { max-width: none; }
/* Agreed scope: explanations on the brand page, comparisons on set pages. */
.brand-detail { grid-column: 1 / -1; padding-top: 2rem; scroll-margin-top: 3rem; min-width: 0; }
.brand-detail > h3 { font-size: clamp(24px,2vw,28px); font-weight: 500; line-height: 1.6; margin: 0 0 1.5rem; }
.brand-detail > p { font-size: 15px; max-width: 60rem; line-height: 2; }
.brand-detail .technology-card h4 { font-size: 24px; line-height: 1.6; font-weight: 500; margin: 0 0 1rem; }
/* Three ingredient-led stories, with diagrams that remain readable without images. */
.technology-editorial { display: grid; grid-template-columns: minmax(0,1fr); gap: 1.5rem; color: #0b4644; }
.technology-editorial .science-story { min-width: 0; display: grid; grid-template-columns: minmax(220px,.32fr) minmax(0,.68fr); gap: clamp(1.5rem,3.5vw,4rem); padding: clamp(1.5rem,3.2vw,3.25rem); background: #edf5ef; }
.technology-editorial .science-story:nth-child(1) { background: #eef5ef; --science-accent: #c08352; --science-soft: #f4e7dc; --science-border: #d6ab87; }
.technology-editorial .science-story:nth-child(2) { background: #f5eeea; --science-accent: #9d655e; --science-soft: #eeddda; --science-border: #cda29d; }
.technology-editorial .science-story:nth-child(3) { background: #eaf2f4; --science-accent: #4f8492; --science-soft: #dbeaed; --science-border: #94b9c2; }
.science-story-heading { border-right: 1px solid #b8d0c5; padding-right: clamp(1rem,2vw,2.5rem); }
.science-story-number { display: inline-block; margin-bottom: 2.1rem; color: #53766b; font-size: 12px; font-weight: 700; letter-spacing: .18em; }
.technology-editorial h4 { font-size: clamp(23px,2vw,32px); font-weight: 500; line-height: 1.55; margin: 0 0 1.5rem; }
.technology-editorial h5 { margin: .4rem 0 .5rem; font-size: clamp(16px,1.25vw,20px); font-weight: 600; line-height: 1.6; }
.technology-editorial p { font-size: 15px; font-weight: 400; line-height: 1.9; color: #355c53; margin: 0 0 1.25rem; }
.science-story-content > p { margin: 1.25rem 0; }
.technology-editorial a { color: #0b4644; transition: background-color .2s; }
.technology-editorial a:hover { background: #dce9df; }
.technology-editorial a:focus-visible { outline: 2px solid #0b4644; outline-offset: 3px; }
.science-ingredient-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.science-ingredient-card { min-width: 0; padding: clamp(1rem,2vw,1.65rem); background: #fff; border-top: 3px solid var(--science-accent,#83ae9c); }
.science-ingredient-en { display: block; font-size: 11px; font-weight: 700; letter-spacing: .13em; color: var(--science-accent,#527c6d); overflow-wrap: anywhere; }
.technology-editorial .science-ingredient-card p { margin: 0; font-size: 14px; line-height: 1.75; }
.pointcare-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; margin-top: 1.25rem; }
.pointcare-links a { display: grid; grid-template-columns: 68px minmax(0,1fr) auto; align-items: center; gap: .65rem; min-height: 88px; padding: .35rem .6rem .35rem .2rem; border: 1px solid #b8d0c5; font-size: 14px; line-height: 1.6; text-decoration: none; }
.pointcare-links img { display: block; width: 68px; height: 72px; object-fit: contain; mix-blend-mode: multiply; }
.retinol-diagram,.hyla-diagram { margin: 1.25rem 0 0; padding: clamp(1rem,2vw,1.6rem); background: #fff; border: 1px solid var(--science-border,#bed3c7); }
.retinol-diagram figcaption,.hyla-diagram figcaption { margin-bottom: 1.25rem; font-size: 16px; font-weight: 600; line-height: 1.6; }
.retinol-diagram ol { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.6rem; margin: 0; padding: 0; list-style: none; }
.retinol-diagram li { position: relative; min-height: 106px; display: flex; flex-direction: column; justify-content: center; gap: .4rem; padding: .9rem; background: var(--science-soft,#e3f0e9); text-align: center; }
.retinol-diagram li:not(:last-child)::after { content: "→"; position: absolute; right: -1.3rem; top: 50%; transform: translateY(-50%); color: var(--science-accent,#277766); font-size: 22px; }
.retinol-diagram li span { font-size: 11px; letter-spacing: .15em; color: var(--science-accent,#4d7b6b); }
.retinol-diagram li strong { font-size: 14px; line-height: 1.5; }
.technology-editorial .retinol-diagram p,.technology-editorial .hyla-diagram p { margin: .85rem 0 0; font-size: 12px; line-height: 1.7; }
.hyla-types { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .55rem; margin: 0; padding: 0; list-style: none; }
.hyla-types li { min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; padding: .7rem .35rem 1rem; border: 1px solid var(--science-border,#c9ddd1); text-align: center; background:#f8fbfc; }
.hyla-orb { flex: none; display: block; width: var(--orb-size); height: var(--orb-size); margin: auto 0 1rem; border-radius: 50%; background: radial-gradient(circle at 35% 30%,#fff 0%,#dbecef 39%,#75a9b5 100%); border: 1px solid #6f9faa; box-shadow: inset -.45rem -.45rem 1rem #315e6833; }
.hyla-orb-1 { --orb-size: 90px; }
.hyla-orb-2 { --orb-size: 76px; }
.hyla-orb-3 { --orb-size: 62px; }
.hyla-orb-4 { --orb-size: 48px; }
.hyla-types strong { font-size: 13px; line-height: 1.5; }
.hyla-types small { display: block; margin-top: .4rem; color: #4d7165; font-size: 11px; line-height: 1.5; }
.hyla-peptide { display: flex; align-items: center; flex-wrap: wrap; gap: .35rem .8rem; margin-top: .75rem; padding: .8rem 1rem; background: var(--science-soft,#e2eee7); }
.hyla-peptide > span { font-size: 22px; color: var(--science-accent,#318370); }
.hyla-peptide strong { font-size: 14px; }
.hyla-peptide small { font-size: 12px; color: #4d7165; }
#technology-details > .review-note { max-width: none; background: transparent; border: 0; padding: 0; margin: 1.25rem 0 0; font-size: 13px; line-height: 1.9; color: #c3d4ca; }
@media(max-width:1050px) {
  .technology-editorial .science-story { grid-template-columns: minmax(0,1fr); gap: 1.5rem; }
  .science-story-heading { border-right: 0; border-bottom: 1px solid #b8d0c5; padding: 0 0 1rem; }
  .science-story-number { margin-bottom: .75rem; }
}
@media(max-width:500px) {
  .technology-editorial h4 { font-size: 24px; }
  .science-ingredient-grid,.pointcare-links { grid-template-columns: minmax(0,1fr); }
  .pointcare-links a { grid-template-columns: 64px minmax(0,1fr) auto; }
  .pointcare-links img { width: 64px; height: 70px; }
  .retinol-diagram ol { grid-template-columns: minmax(0,1fr); gap: 1.25rem; }
  .retinol-diagram li { min-height: 70px; }
  .retinol-diagram li:not(:last-child)::after { content: "↓"; right: 50%; top: auto; bottom: -1.35rem; transform: translateX(50%); }
  .hyla-types { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
.system-links { display: flex; flex-wrap: wrap; gap: 1rem 3rem; margin-top: 1rem; }
.message-section { display: block; }
.message-panel { --message-paper: #e5eee5; display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); grid-template-rows: auto 1fr; column-gap: clamp(1.5rem,3vw,3rem); padding: clamp(1.5rem,3.5vw,4rem); background: var(--message-paper); color: #0b4644; }
.message-section .message-photo { grid-column: 1; grid-row: 1 / 3; align-self: start; position: sticky; top: 3rem; min-height: 0; aspect-ratio: 1; transform: none; background-image: url("./assets/images/marini-message-portrait-v1.png"); background-position: center; mask-image: linear-gradient(to right,transparent,#000 5%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 4%,#000 88%,transparent); mask-composite: intersect; }
.message-heading { grid-column: 2; grid-row: 1; position: relative; display: block; margin: 0; padding: 1rem 0 2rem; }
.message-heading h2 { color: #0b4644; font-size: clamp(24px,2.3vw,32px); font-weight: 500; line-height: 1.65; letter-spacing: .02em; margin: 0; }
.message-copy { grid-column: 2; grid-row: 2; padding: 0; min-width: 0; }
.message-original { columns: 1; }
.message-original p { break-inside: avoid; font-size: 15px; font-weight: 400; line-height: 2.1; color: #214b45; margin: 0 0 1.5rem; }
.message-copy .message-signature { margin-top: 1rem; padding-top: 1rem; border: 0; color: #0b4644; align-items: flex-end; }
.brand-operator { padding-block: 4rem 1rem; }
.brand-operator h2 { font-size: clamp(24px,2vw,28px); font-weight: 500; }
.brand-operator a { text-decoration: underline; text-underline-offset: .25em; }
.product-information.system-comparison { display: block; scroll-margin-top: 3rem; }
.system-comparison > p { color: var(--m-muted); font-size: 15px; margin-block: 1rem 2rem; }
.system-comparison .system-card h3 { color: #163432; }
.system-comparison .system-card p { color: #526563; }

/* Five independently supplied packshots replace group photos with the old SPF tint. */
.set-montage { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); align-items: end; gap: .15rem; width: 100%; aspect-ratio: 3 / 2; padding: clamp(.5rem,2vw,1.5rem); background: #fff; overflow: hidden; }
.set-montage img,
.product-packshot .set-montage img,
.system-card .set-montage img,
.finder-card .set-montage img { display: block; width: 100%; height: 100%; max-height: none; aspect-ratio: auto; object-fit: cover; object-position: center 54%; background: transparent; }
.product-packshot .set-montage { aspect-ratio: 3 / 2; padding: clamp(.5rem,2vw,1.4rem); }
.finder-card > .set-montage { flex: none; padding: .6rem; }
.system-card > .set-montage { padding: clamp(.7rem,1.4vw,1.25rem); }
.system-comparison dl { margin: 1rem 0 2rem; }
.system-comparison dt { font-size: 13px; color: #526563; margin-top: 1rem; }
.system-comparison dd { font-size: 15px; margin: .25rem 0 0; }
@media(max-width:700px) {
  .brand-detail { padding-top: 1rem; scroll-margin-top: 2rem; }
  .technology-section .brand-detail { order: 3; }
  .message-section .message-photo { grid-column: 1; grid-row: auto; position: static; aspect-ratio: 1; transform: none; background-position: center; }
  .message-panel { grid-template-columns: 1fr; grid-template-rows: auto; padding: 1.25rem; }
  .message-heading { grid-column: 1; grid-row: auto; margin: 0; padding: 1rem 0 1.5rem; }
  .message-copy { grid-column: 1; grid-row: auto; }
  .message-heading h2 { font-size: clamp(24px,6.7vw,28px); text-wrap: balance; }
  .message-original { columns: 1; }
  .message-copy .message-signature { align-items: flex-start; }
  .system-links { display: grid; gap: 1rem; }
  .brand-operator { padding-top: 2.5rem; }
  .product-information.system-comparison { scroll-margin-top: 2rem; }
}
@media(max-width:960px) {
  .care-steps li { padding: 1rem; }
  .product-set-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .finder-results { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .marini-nav { background: #073b37; }
  /* Keep the copy readable above a naturally lit, uncropped product photograph. */
  .marini-hero { display: flex; flex-direction: column; min-height: 0; background: #073b37; }
  .marini-hero-copy { order: 0; min-height: 0; padding-block: 2.75rem 2.25rem; }
  .marini-hero h1, .marini-hero-copy > p:not(.section-tag) { max-width: none; }
  .marini-hero-media { position: relative; inset: auto; order: 1; z-index: 0; width: 100%; aspect-ratio: 5 / 4; background-position: center; }
  .marini-hero-media::after { content: ""; position: absolute; inset: 0 0 auto; height: 18%; background: linear-gradient(#073b37,transparent); }
  .marini-hero-shade { display: none; }
  .message-copy h2 { font-size: clamp(24px,6.7vw,28px); text-wrap: balance; }
  .system-grid, .technology-grid, .company-message, .finder-results { grid-template-columns: 1fr; }
  .care-steps { grid-template-columns: 1fr; }
  .care-steps li { border-right: 0; border-bottom: 1px solid var(--m-line); }
  .care-steps li:last-child { border-bottom: 0; }
  .company-facts > div { grid-template-columns: 1fr; gap: .5rem; }
  .product-set-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .review-switch { justify-content: flex-start; flex-wrap: wrap; gap: .5rem 1rem; }
  .editorial-section { scroll-margin-top: 2rem; }
}
/* Approved company and care finder navigation, 2026-09-10. */
.marini-header .marini-nav{flex-wrap:nowrap;justify-content:flex-end;gap:24px;max-width:none;padding-block:14px;}
.marini-primary-links,.marini-utility-links{display:flex;align-items:center;gap:clamp(14px,1.6vw,28px);}
.marini-header .marini-primary-links a{font-size:13px;letter-spacing:.04em;}
.marini-utility-links{border-left:1px solid var(--m-line);padding-left:24px;gap:16px;}
.marini-header .marini-utility-links a{font-size:11px;letter-spacing:.02em;color:var(--m-muted);}
.marini-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:8px;}
@media(min-width:701px) and (max-width:1100px){
 .marini-header{flex-wrap:wrap;gap:0;padding-block:16px;}
 .marini-header .marini-nav{width:100%;justify-content:space-between;padding-top:12px;}
}
.marini-support{--line:var(--m-line);--muted:var(--m-muted);--paper:#34756a;--blue:#b8ded0;--ink:#eff4ee;--jp:var(--m-sans);}
.marini-support .support-hero{padding-block:40px 28px;border-bottom:1px solid var(--m-line);}
.marini-support .support-hero h1{font-size:32px;line-height:1.5;}
.marini-support .support-main{padding-bottom:56px;}
.marini-support .support-layout{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-block:36px;}
.marini-support .support-panel{background:#34756a;padding:32px;}
.marini-support .support-review{border-left:2px solid #b8ded0;padding:16px;font-size:13px;color:var(--m-muted);}
.marini-support .support-index,.marini-support .support-bottom{display:flex;flex-wrap:wrap;gap:24px;margin-block:24px;}
.marini-support .faq-section{padding-block:24px;scroll-margin-top:32px;}
.marini-support .faq-section h2,.marini-support .support-layout h2{font-size:24px;}
.marini-support details{border-bottom:1px solid var(--m-line);}
.marini-support summary{cursor:pointer;padding:22px 0;font-size:16px;}
.marini-support .faq-answer{padding:0 24px 24px;max-width:900px;color:var(--m-muted);}
.marini-support .faq-answer ol{margin:1rem 0;padding-left:1.5rem;line-height:2;}
.marini-support .faq-answer p{margin:.75rem 0;line-height:1.9;}
.product-disclosure ul{margin:.5rem 0 1rem;padding-left:1.5rem;line-height:1.9;}
.product-disclosure li+li{margin-top:.55rem;}
.marini-support .faq-answer a,.marini-support .text-link,.marini-support .support-index a{text-decoration:underline;text-underline-offset:5px;}
.marini-nav .nav-row-break{flex-basis:100%;height:0;}
.marini-header .marini-nav a{white-space:nowrap;}
.marini-footer>div{display:flex;flex-wrap:wrap;gap:16px 24px;}
.company-business-list{display:grid;grid-template-columns:1fr 1fr;gap:0 48px;}
.company-business-list article{padding:28px 0;border-top:1px solid rgba(234,243,237,.3);}
.company-business-list h3{font-size:20px;font-weight:500;margin:0 0 14px;}
.company-business-list p{margin:0;}
.company-greeting-link{background:#eaf3ed;color:#074849;padding:clamp(24px,4vw,56px);}
.company-greeting-link p{color:#345c54;}
.finder-search{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:32px 0 24px;}
.finder-search input{font:inherit;min-height:48px;padding:10px 16px;flex:1;min-width:180px;color:#074849;background:#eaf3ed;border:1px solid #8ab6a7;border-radius:0;}
.finder-search button{font:inherit;min-height:48px;padding:10px 16px;background:transparent;color:inherit;border:1px solid #8ab6a7;cursor:pointer;}
.finder-search[hidden],#care-empty[hidden]{display:none;}
.finder-card>div{display:flex;flex-direction:column;flex:1;}
.finder-card{display:flex;flex-direction:column;}
.finder-card .inline-link{margin-top:auto;padding-top:20px;}
.care-finder-page .product-breadcrumb{padding-block:12px 8px;}
.care-finder-page .editorial-hero{padding-block:0 20px;max-width:none;}
.care-finder-page .editorial-hero h1{margin:0 0 12px;}
.care-finder-page .editorial-hero>p{margin:0;max-width:none;}
.care-finder-page .finder-heading p{margin:0;color:var(--m-muted);}
.care-finder-page .finder-heading{min-width:0;}
@media(min-width:1101px){
 .care-finder-page .editorial-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1fr);align-items:center;gap:40px;}
 .care-finder-page .editorial-hero .finder-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;margin:0;}
 .care-finder-page .editorial-hero .finder-search[hidden]{display:none;}
 .care-finder-page .finder-search label{grid-column:1/-1;font-size:13px;}
 .care-finder-page .finder-search input{width:100%;min-width:0;}
}
@media(max-width:1100px){.care-finder-page .finder-heading{margin-bottom:20px;}}
.care-finder-page .editorial-section{padding-top:0;border-top:0;}
.care-finder-page .finder-search{margin:0 0 16px;}
.care-finder-page .finder-filters{margin:0 0 20px;gap:8px;}
.care-finder-page #care-status{margin:0 0 16px;}
@media(max-width:700px){
 .care-finder-page .editorial-hero{padding-block:0 20px;}
 .care-finder-page .editorial-hero h1{font-size:24px;}
 .care-finder-page .finder-search{gap:8px;}
 .care-finder-page .finder-filters button{padding:10px 12px;font-size:13px;}
}
@media(max-width:700px){
 .marini-header .marini-nav{max-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:4px;padding:90px 24px 32px;overflow-y:auto;}
 .marini-nav .nav-row-break{display:none;}
 .marini-header .marini-nav a{min-height:42px;display:flex;align-items:center;}
 .marini-primary-links,.marini-utility-links{flex-direction:column;gap:12px;width:100%;}
 .marini-utility-links{border-left:0;border-top:1px solid var(--m-line);padding:20px 0 0;margin-top:20px;}
 .marini-header .marini-primary-links a{font-size:16px;}
 .marini-header .marini-utility-links a{font-size:14px;}
 .marini-support .support-layout{grid-template-columns:1fr;gap:16px;}
 .marini-support .support-panel{padding:24px;}
 .company-business-list{grid-template-columns:1fr;}
 .finder-search label{flex-basis:100%;}
}
/* Questionnaire: client chart, September 2026. */
.care-mode{display:flex;gap:12px;margin:12px 0 24px}.care-mode button{padding:18px 24px;border:1px solid #8aafa7;background:transparent;color:#e9f3ed;font:inherit;cursor:pointer;display:flex;justify-content:space-between;gap:36px}.care-mode button[aria-pressed=true]{background:#e9f3ed;color:#073b37}.care-chart{background:#e9f3ed;color:#073b37;padding:clamp(24px,4vw,64px);margin-bottom:56px}.care-chart[hidden],.care-finder-page .editorial-section[hidden],.care-finder-page .finder-search[hidden]{display:none!important}.chart-eyebrow{font-size:12px;letter-spacing:.16em;display:flex;justify-content:space-between;border-bottom:1px solid #b6ccc4;padding-bottom:20px;margin:0 0 32px}.care-chart h2{font-size:clamp(22px,2.2vw,32px);line-height:1.7;max-width:900px;margin:0 0 16px}.chart-help{line-height:1.9;color:#42645d}.chart-answers{display:flex;gap:20px;margin:32px 0 40px;max-width:780px}.chart-answers button{flex:1;text-align:left;display:flex;justify-content:space-between;align-items:center;background:#14544c;color:#fff;border:0;padding:24px;font:inherit;font-size:20px;cursor:pointer}.chart-answers button:last-child{background:#d4e5dd;color:#073b37}.chart-answers span{font-size:12px;letter-spacing:.1em}.chart-actions{display:flex;gap:24px;justify-content:space-between;border-top:1px solid #b6ccc4;padding-top:20px}.chart-actions button{font:inherit;border:0;background:none;color:#073b37;cursor:pointer;padding:8px 0}.chart-actions button:disabled{opacity:.4;cursor:default}.chart-disclaimer,.chart-detail{font-size:12px;line-height:1.9;color:#42645d}.chart-disclaimer{margin:24px 0 0}.chart-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0}.chart-options article{border-top:3px solid #34756a;padding-top:16px;min-width:0}.chart-tier{font-size:28px;margin:0 0 20px}.chart-tier span{display:block;font-size:13px;margin-top:6px}.chart-product{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #b6ccc4;text-decoration:none;color:#073b37;font-size:14px}.chart-product img{width:76px;height:90px;object-fit:contain;mix-blend-mode:multiply}.chart-product>span:last-child{margin-left:auto}.care-chart button:focus-visible,.care-mode button:focus-visible,.chart-product:focus-visible{outline:3px solid #a96a30;outline-offset:4px}@media(max-width:650px){.care-mode{gap:8px}.care-mode button{flex:1;padding:14px 10px;gap:8px;font-size:13px}.chart-options{grid-template-columns:1fr}.chart-answers{gap:12px}.chart-answers button{padding:18px 14px;font-size:18px}.chart-actions{gap:12px;font-size:13px}.chart-eyebrow{font-size:10px;letter-spacing:.08em}}
.chart-choice{padding:14px;border:1px solid #b6ccc4;border-radius:4px;background:#f3f8f4}
.chart-choice-label{font-size:12px;letter-spacing:.04em;font-weight:600;margin:0 0 8px}
.chart-choice .chart-product:last-child{border-bottom:0}
.chart-connector{margin:2px 0;text-align:center;font-size:20px;color:#34756a}
.chart-alternative{display:flex;align-items:center;gap:12px;margin:16px 0;font-size:13px;font-weight:600}
.chart-alternative::before,.chart-alternative::after{content:"";height:1px;flex:1;background:#b6ccc4}
.brand-detail > .system-choice:first-child{margin-top:0;margin-bottom:48px}
