/* Positioning uses the existing Acosta editorial grid and typography. */
.ac-position-tabs {display:flex;flex-wrap:wrap;gap:12px;margin:0 0 38px;}
.ac-position-tabs .ac-text-link {margin:0;}
.ac-position-tabs .ac-text-link a {border:1px solid var(--line);border-radius:5px;background:var(--paper);padding:13px 20px;min-height:52px;color:var(--blue);}
.ac-position-tabs .ac-text-link a:hover {background:var(--sky);border-color:var(--blue);}
.ac-position-tabs .ac-text-link a[aria-selected="true"] {background:var(--blue);color:#fff;border-color:var(--blue);}
.ac-position-panel {padding-top:16px;scroll-margin-top:120px;}
.ac-position-panel[hidden] {display:none!important;}
.ac-position-panel>h3 {font-size:clamp(32px,3.7vw,49px);margin:0 0 19px;}
.ac-position-panel>h4 {font-size:27px;margin:35px 0 17px;}
.ac-position-panel>p:not(.ac-lead):not(.ac-text-link) {max-width:78ch;color:var(--muted);font-size:17px;line-height:1.75;margin:0 0 26px;}
.ac-position-products {margin:34px 0 40px;}
.ac-position-products h4 {font-size:29px;margin:0 0 14px;}
.ac-position-ranges .ac-position-panel+.ac-position-panel {margin-top:70px;}
.ac-position-ranges:has(.is-enhanced) .ac-position-panel {margin-top:0;}
.ac-position-panel>.ac-grid-3 {margin-block:36px;}
@media(max-width:620px) {
  .ac-position-tabs {gap:9px;margin-bottom:28px;}
  .ac-position-tabs .ac-text-link a {padding:12px 14px;font-size:14px;gap:12px;}
  .ac-position-panel>p:not(.ac-lead):not(.ac-text-link) {font-size:16px;}
}

/* Approved three-photo selector. The old text-link layout remains supported above. */
.ac-position-tabs:has(>.ac-position-choice) {
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;
  gap:22px;margin:0 0 38px;
}
.ac-position-tabs>.ac-position-choice {
  position:relative;display:flex;flex-direction:column;min-width:0;margin:0;
  border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);
}
.ac-position-tabs>.ac-position-choice:hover {border-color:var(--blue);}
.ac-position-tabs>.ac-position-choice:focus-within {outline:3px solid #8a6412;outline-offset:4px;}
.ac-position-choice>.ac-card-media {
  display:block;flex-shrink:0;width:100%;aspect-ratio:2/1;min-height:170px;
  margin:0!important;overflow:hidden;background:var(--cream);border-radius:6px 6px 0 0;
}
.ac-position-choice>.ac-card-media img {
  display:block;width:100%;height:100%;max-width:none;object-fit:contain;
  padding:12px;mix-blend-mode:normal;
}
.ac-position-choice>h3 {
  position:static;font-size:clamp(24px,2.25vw,30px);line-height:1.2;letter-spacing:-.025em;
  margin:0;padding:22px 22px 0;color:inherit;
}
.ac-position-choice>h3 a {color:inherit;text-decoration:none;}
.ac-position-choice>h3 a::after {content:'';position:absolute;inset:0;z-index:1;border-radius:7px;}
.ac-position-choice>h3 a:focus-visible {outline:0;}
.ac-position-choice>p {
  margin:0;padding:12px 22px 0;font-size:16px;line-height:1.55;color:var(--muted);
}
.ac-position-choice>p.action,.ac-position-choice>p.ac-position-choice-action {
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  margin-top:auto;padding:25px 22px 23px;color:var(--blue);font-size:15px;line-height:1.5;
}
.ac-position-choice>p.action::after,.ac-position-choice>p.ac-position-choice-action::after {
  content:'→';font-size:25px;line-height:1;
}
.ac-position-tabs>.ac-position-choice.is-selected {background:var(--blue);border-color:var(--blue);color:#fff;}
.ac-position-choice.is-selected>h3,.ac-position-choice.is-selected>h3 a,.ac-position-choice.is-selected>p {color:#fff;}

/* Native, static image galleries inside this positioning batch only. */
.ac-position-gallery {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-block:34px;}
.ac-position-gallery>.wp-block-image {
  display:block;min-width:0;aspect-ratio:4/3;margin:0;overflow:hidden;border-radius:5px;background:var(--cream);
}
.ac-position-gallery>.wp-block-image img {
  display:block;width:100%;height:100%;object-fit:contain;padding:18px;mix-blend-mode:normal;cursor:default;
}

/* Product and family compositions in this approved positioning catalogue. */
.ac-position-model .ac-page-hero h1 {max-width:20ch;font-size:clamp(42px,4.5vw,66px);}
.ac-position-feature {display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(30px,5vw,70px);}
.ac-position-product-photo,.ac-position-detail-photo {display:flex;align-items:center;justify-content:center;margin:0;min-width:0;aspect-ratio:4/3;padding:24px;border:1px solid var(--line);border-radius:6px;background:#fff;}
.ac-position-product-photo img,.ac-position-detail-photo img {display:block;width:100%;height:100%;object-fit:contain;cursor:default;}
.ac-position-feature .ac-section-head {margin-bottom:28px;}
.ac-position-feature h2 {font-size:clamp(32px,3vw,46px);max-width:23ch;}
.ac-position-benefit {padding-block:17px;border-top:1px solid var(--line);}
.ac-position-benefit h3,.ac-position-option h3 {font-size:23px;line-height:1.25;margin:0 0 10px;}
.ac-position-benefit p,.ac-position-option p,.ac-position-story-copy p {font-size:17px;line-height:1.7;color:var(--muted);margin:0;max-width:67ch;}
.ac-position-story.has-photo {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(30px,5vw,70px);}
.ac-position-story-copy h2 {font-size:clamp(32px,3.4vw,47px);line-height:1.15;letter-spacing:-.035em;margin:0 0 24px;max-width:26ch;}
.ac-position-option {padding:25px;background:var(--sky);border-top:2px solid var(--blue);border-radius:5px;min-width:0;}
.ac-position-family-catalogue>.ac-position-model-grid+ h3 {margin-top:64px;font-size:30px;}
.ac-position-model-grid .ac-product-card>.ac-position-card-action {margin-top:auto!important;color:var(--blue)!important;font-size:15px!important;}
.ac-position-audience {padding-block:12px;}
.ac-position-audience p {font-size:16px;padding:20px 24px;background:var(--sky);border-left:3px solid var(--blue);}
.ac-position-choice:where(.editor-styles-wrapper *)>h3 a::after {display:none;}
@media(max-width:860px) {
  .ac-position-feature,.ac-position-story.has-photo {grid-template-columns:1fr;}
  .ac-position-product-photo,.ac-position-detail-photo {width:100%;max-width:620px;margin-inline:auto;}
}
@media(max-width:760px) {
  .ac-position-tabs:has(>.ac-position-choice) {grid-template-columns:1fr;gap:22px;max-width:500px;margin-inline:auto;}
  .ac-position-choice>.ac-card-media {aspect-ratio:2/1;min-height:180px;}
  .ac-position-choice>h3 {font-size:29px;}
  .ac-position-gallery {grid-template-columns:1fr;max-width:560px;margin-inline:auto;}
}
