/* Anthos only: preserve SPMS typography, imagery and inquiry routes.
   Products stay in full-width rows; longer copy uses native disclosures. */
body.anthos-page { margin:0; color:#102b2d; background:#fff; }
.anthos-main { --anthos-muted:#52696c; --anthos-line:#d9e5e5; --anthos-accent:#087980; --type-body:1.0625rem; }
.anthos-main *, .anthos-main *::before, .anthos-main *::after { box-sizing:border-box; }
.anthos-wrap { width:min(100% - 3rem,76rem); margin-inline:auto; }
.anthos-main figure, .anthos-main p, .anthos-main h1, .anthos-main h2, .anthos-main h3 { margin:0; }
.anthos-main p { color:var(--anthos-muted); font-size:1.0625rem; line-height:1.7; }
.anthos-hero { padding-block:3rem 4rem; background:#f5f9f9; }
.anthos-hero-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:3.5rem; align-items:center; }
.anthos-hero-copy { min-width:0; }
:root body.anthos-page main .anthos-hero-copy > p { font-size:.8125rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--anthos-accent); }
:root body.anthos-page main h1 { max-width:none; font-size:clamp(2.25rem,3.5vw,3.125rem); line-height:1.12; letter-spacing:-.025em; margin-top:1.25rem; text-wrap:balance; }
.anthos-hero-photo { position:relative; width:100%; aspect-ratio:1; overflow:hidden; border-radius:1rem; background:#fff; }
.anthos-hero-photo img { display:block; position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
.anthos-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.75rem; }
.anthos-actions :is(a,button) { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:.8rem 1.4rem; border:1px solid transparent; border-radius:999px; font-size:1rem; font-weight:600; line-height:1.25; text-decoration:none; white-space:nowrap; color:#fff; background:#c92e35; cursor:pointer; transition:background-color 160ms ease,transform 160ms ease; }
.anthos-actions :is(a,button):hover { background:#b0262c; }
.anthos-actions :is(a,button):active { transform:translateY(1px); }
.anthos-actions :is(a,button):focus-visible, .anthos-disclosure > summary:focus-visible { outline:3px solid var(--anthos-accent); outline-offset:4px; }
.anthos-hero .anthos-actions a + a { background:transparent; color:#102b2d; border-color:#b8cece; }
.anthos-hero .anthos-actions a + a:hover { background:#e5eeee; }
.anthos-disclosure { border-top:1px solid var(--anthos-line); border-bottom:1px solid var(--anthos-line); margin-top:1.75rem; }
.anthos-disclosure > summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:52px; padding:.8rem 0; list-style:none; color:var(--anthos-accent); font-size:1rem; font-weight:600; cursor:pointer; }
.anthos-disclosure > summary::-webkit-details-marker { display:none; }
.anthos-disclosure-arrow { display:block; flex:0 0 .55rem; width:.55rem; height:.55rem; margin-right:.25rem; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg); transition:transform 160ms ease; }
.anthos-disclosure[open] > summary .anthos-disclosure-arrow { transform:rotate(225deg); }
.anthos-disclosure-body { padding:.25rem 0 1.5rem; }
.anthos-main .anthos-disclosure-body > * + * { margin-top:1rem; }
.anthos-disclosure-body ul { list-style:disc outside; padding-left:1.2rem; margin-bottom:0; color:var(--anthos-muted); font-size:1.0625rem; line-height:1.7; }
.anthos-disclosure-body li + li { margin-top:.5rem; }
.anthos-about { max-width:36rem; margin-top:1.5rem; }
:root body.anthos-page main .anthos-about-label { color:var(--anthos-accent); font-weight:600; font-size:1rem; }
.anthos-main .anthos-about > p + p { margin-top:.75rem; }
.anthos-products { padding-block:4.5rem; }
.anthos-section-heading { max-width:45rem; }
.anthos-section-heading > p:first-child { color:var(--anthos-accent); font-size:1rem; font-weight:600; }
:root body.anthos-page main .anthos-section-heading h2 { font-size:clamp(1.75rem,2.7vw,2.5rem); line-height:1.18; letter-spacing:-.02em; margin-top:.8rem; max-width:30ch; text-wrap:balance; }
.anthos-section-heading > h2 + p { margin-top:1rem; max-width:60ch; }
.anthos-product-list { display:grid; gap:3.5rem; margin-top:3rem; }
.anthos-product-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:3.5rem; align-items:center; scroll-margin-top:8rem; min-width:0; padding-bottom:3.5rem; border-bottom:1px solid var(--anthos-line); }
.anthos-product-row:last-child { padding-bottom:0; border-bottom:0; }
.anthos-product-photo { display:grid; place-items:center; width:100%; aspect-ratio:1; overflow:hidden; padding:1.5rem; border-radius:1rem; background:#f3f7f7; }
.anthos-product-photo img { display:block; width:100%; height:100%; min-height:0; object-fit:contain; }
.anthos-product-copy { min-width:0; padding-block:.5rem; }
:root body.anthos-page main .anthos-product-copy h2 { font-size:clamp(1.8rem,2.5vw,2.4rem); line-height:1.16; letter-spacing:-.02em; max-width:22ch; text-wrap:balance; }
:root body.anthos-page main .anthos-product-copy h3 { margin-top:1.1rem; font-size:1.25rem; font-weight:400; line-height:1.5; letter-spacing:0; color:var(--anthos-accent); max-width:36ch; }
.anthos-product-copy .anthos-disclosure-body > p:first-child { color:#102b2d; font-weight:600; }
.anthos-workflow { padding-block:4rem; background:#f2f7f7; }
.anthos-workflow-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:3.5rem; margin-top:2.25rem; }
:root body.anthos-page main .anthos-workflow-item h3 { font-size:1.4rem; line-height:1.3; }
.anthos-workflow-copy { border-top:1px solid var(--anthos-line); margin-top:1rem; padding-top:1rem; }
:root body.anthos-page main .anthos-workflow-label { color:var(--anthos-accent); font-weight:600; font-size:1rem; }
.anthos-workflow-track { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem 1.25rem; margin-top:2rem; color:#102b2d; font-size:1rem; font-weight:600; }
.anthos-workflow-track > span:nth-child(even) { color:var(--anthos-accent); }
.anthos-contact { padding-block:4rem; }
.anthos-contact-layout { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:3rem; align-items:center; }
.anthos-contact-layout > div:first-child > p:first-child { color:var(--anthos-accent); font-size:1rem; font-weight:600; }
:root body.anthos-page main .anthos-contact h2 { max-width:27ch; font-size:clamp(1.75rem,2.7vw,2.5rem); line-height:1.18; margin-top:.75rem; text-wrap:balance; }
.anthos-contact h2 + p { max-width:60ch; margin-top:1rem; }
.anthos-contact .anthos-actions { margin-top:0; }
@media(max-width:1023px) {
  .anthos-hero-layout { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:2rem; }
  .anthos-product-row { gap:2rem; }
  .anthos-contact-layout { grid-template-columns:1fr; gap:1.75rem; }
}
@media(max-width:767px) {
  .anthos-wrap { width:calc(100% - 2.5rem); }
  .anthos-hero { padding-block:2rem 3rem; }
  .anthos-hero-layout, .anthos-product-row, .anthos-workflow-grid { grid-template-columns:minmax(0,1fr); gap:1.75rem; }
  .anthos-hero-photo { max-width:34rem; justify-self:center; }
  :root body.anthos-page main h1 { font-size:clamp(2rem,6.5vw,2.75rem); }
  .anthos-products, .anthos-workflow, .anthos-contact { padding-block:3rem; }
  .anthos-product-list { gap:2.5rem; margin-top:2rem; }
  .anthos-product-row { padding-bottom:2.5rem; }
  .anthos-product-photo { padding:1.25rem; max-width:34rem; justify-self:center; }
  .anthos-product-copy { padding:0; }
  .anthos-product-copy .anthos-actions { margin-top:1.5rem; }
  .anthos-workflow-track { gap:.6rem .9rem; }
}
@media(max-width:479px) {
  .anthos-hero .anthos-actions { display:grid; grid-template-columns:1fr; }
  .anthos-contact .anthos-actions :is(a,button) { white-space:normal; width:100%; }
}
@media(prefers-reduced-motion:reduce) {
  .anthos-actions :is(a,button), .anthos-disclosure-arrow { transition:none; }
}
