.catalog-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}
.catalog-tabs a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border:1px solid var(--line-strong);font-size:12px;transition:background .18s,border-color .18s}
.catalog-tabs a:hover{border-color:var(--ember)}
.catalog-tabs a[aria-current=page]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 22px;margin-top:30px}
.catalog-grid>.card{min-width:0;width:auto}
.catalog-grid .card__frame{min-width:0}
.card__name a::after{content:none}
.catalog-grid .card__name{font-size:22px;line-height:1.2}
.product-identity{margin:25px 0 0;padding-top:5px;border-top:1px solid var(--line)}
.product-identity>div{display:flex;justify-content:space-between;gap:20px;font-size:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.product-identity dt{color:var(--ink-soft)}.product-identity dd{margin:0;text-align:right}
.launch-product-info h1{font-size:clamp(32px,3.4vw,51px)}
.product-intro .public-product{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:start}
.product-intro .carousel--gallery{position:sticky;top:125px;min-width:0}
.product-intro .launch-product-info{position:static;min-width:0}
@media(max-width:1000px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.product-intro .public-product{gap:28px}.product-intro .carousel--gallery{top:105px}}
@media(max-width:600px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.catalog-grid .card__name{font-size:19px}.catalog-grid .card__body .eyebrow{font-size:8px}.catalog-grid .card-launch,.catalog-grid .link-quiet{font-size:10px}.catalog-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-tabs a{padding:10px 8px}.product-intro .public-product{grid-template-columns:minmax(0,1fr);gap:25px}.product-intro .carousel--gallery{position:static}.launch-product-info h1{font-size:39px}}
@media(prefers-reduced-motion:reduce){.catalog-tabs a{transition:none}}

/* Readable supporting text across catalog and product pages. */
body{font-size:17px;line-height:1.65}
.eyebrow,.card__body .eyebrow,.catalog-grid .card__body .eyebrow{font-size:14px;line-height:1.5;letter-spacing:.055em}
.card__name,.catalog-grid .card__name{font-size:26px;line-height:1.25}
.card-launch,.catalog-grid .card-launch,.link-quiet,.catalog-grid .link-quiet{font-size:15px;line-height:1.5}
.catalog-tabs a,.header__nav a,.public-shop,.launch-header,.public-announcement{font-size:14px}
.catalog-tabs a{padding:12px 18px;min-height:48px}
.public-announcement{line-height:1.5}.public-announcement span{opacity:1}
.public-filters label,.public-filters input,.public-filters select,[data-results],[data-empty]{font-size:16px}
.public-filters input,.public-filters select{min-height:48px}
.product-breadcrumb{font-size:14px;line-height:1.6}
.product-form,.launch-kicker,.launch-inline,.product-launch-link,.product-section-nav{font-size:14px;line-height:1.6}
.product-section-nav{flex-wrap:wrap;gap:12px 24px}
.product-summary,.launch-product-info .product-summary,.product-story p,.product-specs>div>p:last-child,.product-launch-panel p:not(.eyebrow),.product-questions details p,.launch-step p,.launch-editorial p:not(.eyebrow){font-size:17px;line-height:1.75}
.product-story h3{font-size:17px;line-height:1.5}
.product-identity>div,.product-specs dl>div,.product-questions summary{font-size:16px;line-height:1.6}
.launch-status p{font-size:16px;line-height:1.65}
.launch-status .launch-small,.product-mini-facts,.product-mini-facts strong,.launch-step>span{font-size:14px;line-height:1.65}
.product-mini-facts strong{color:var(--ink-soft)}
.btn{font-size:14px;line-height:1.5;min-height:48px}
.footer__title,.footer__base{font-size:14px;line-height:1.6}
.footer__cols a,.footer__cols p{font-size:16px;line-height:1.7}
.footer__cols .footer__title{font-size:14px}
.footer__base{flex-wrap:wrap;gap:12px 25px}
@media(max-width:600px){
 .card__name,.catalog-grid .card__name{font-size:23px}
 .catalog-grid .card__body .eyebrow{font-size:14px}
 .catalog-grid .card-launch,.catalog-grid .link-quiet{font-size:14px}
 .catalog-grid{gap:35px 14px}
 .catalog-grid .card__body{gap:8px}
 .catalog-tabs a,.public-filters label{font-size:16px}
 .launch-header{font-size:14px}
 .product-breadcrumb{font-size:14px}
 .product-mini-facts{grid-template-columns:1fr;gap:15px}
 .product-section-nav{gap:10px 20px}
 .product-specs dl>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px}
}
