@charset "utf-8";

/* Text wordmark: the project name in the site's own type instead of the brand's script logo. */
.wordmark {
    display: inline-flex;
    flex-direction: column;
    gap: 5px;
    color: var(--color-primary);
    line-height: 1;
    white-space: nowrap;
}
.wordmark_kicker {
    font-family: var(--font-heading);
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .3em;
    margin-right: -.3em; /* cancel trailing tracking so centred lockups stay centred */
    text-transform: uppercase;
}
.wordmark_name {
    font-family: var(--font-display);
    font-size: 2.8rem;
    font-weight: 400;
    letter-spacing: .01em;
    text-transform: uppercase;
}
.gear_section {
    position: relative;
    padding: 94px 4.2vw 100px;
    background: #f1f2f2;
    color: #191b1d;
    scroll-margin-top: 0;
}
.gear_intro, .gear_feature, .gear_pair { max-width: 1560px; margin-inline: auto; }
.gear_intro { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 50px; }
.gear_kicker {
    font-family: var(--font-heading);
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.gear_intro h2 {
    margin-top: 20px;
    color: #16181a;
    font-family: var(--font-display);
    font-size: clamp(7rem, 8.6vw, 14rem);
    font-weight: 400;
    letter-spacing: -.035em;
    line-height: 1;
    text-transform: uppercase;
}
.gear_intro_side { padding-bottom: 3px; }
.gear_intro_side > p { color: #55595c; font-size: 1.4rem; }
.gear_shortcuts { display: flex; flex-wrap: wrap; gap: 6px 24px; margin-top: 16px; }
.gear_shortcuts a { display: inline-flex; align-items: center; min-height: 44px; font-size: 1.4rem; font-weight: 700; border-bottom: 1px solid #6f7477; }
.gear_shortcuts a:hover { border-bottom-color: #16181a; }
.gear_feature { display: grid; grid-template-columns: 1.14fr 1fr; align-items: stretch; background: #fff; }
.gear_feature, .gear_item { scroll-margin-top: 14px; }
.gear_photo { display: block; overflow: hidden; background: #404142; }
.gear_photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.gear_photo:hover img { transform: scale(1.025); }
.gear_photo:focus-visible { outline-offset: -5px; }
.gear_photo_amp { min-height: 540px; }
.gear_photo_amp img { aspect-ratio: 1; object-position: center; }
.gear_feature_copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(34px, 4.6vw, 76px); }
.gear_feature h3 {
    margin-top: 30px;
    color: #151719;
    font-family: var(--font-display);
    font-size: clamp(5.8rem, 6.5vw, 10rem);
    font-weight: 400;
    letter-spacing: -.025em;
    line-height: .99;
    text-transform: uppercase;
}
.gear_description { margin-top: 24px; max-width: 39rem; color: #55595c; font-size: 1.5rem; line-height: 1.9; }
.gear_specs { display: flex; flex-wrap: wrap; gap: 40px; width: 100%; margin: 32px 0; border-top: 1px solid #d7d9da; padding-top: 22px; }
.gear_specs dt { color: #64696c; font-size: 1.3rem; }
.gear_specs dd { margin-top: 7px; font-family: var(--font-heading); font-size: 2.6rem; font-weight: 700; letter-spacing: -.055em; }
.gear_specs dd span { margin-left: 5px; font-family: var(--font-body); font-size: 1.4rem; letter-spacing: 0; }
.gear_link { display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; min-height: 48px; color: #17191b; font-size: 1.4rem; font-weight: 700; }
.gear_link > span { font-size: 2.2rem; font-weight: 400; }
.gear_link:hover { text-decoration: underline; text-underline-offset: 5px; }
.gear_link_solid { padding: 0 22px; background: #17191b; color: #fff; }
.gear_link_solid:hover { background: #34383a; }
.gear_pair { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 26px; margin-top: 26px; }
.gear_item { display: flex; flex-direction: column; min-width: 0; background: #fff; container-type: inline-size; }
.gear_item .gear_photo { aspect-ratio: 1.28; }
.gear_item .gear_photo img { object-position: center 65%; }
.gear_item_copy { display: flex; flex-direction: column; align-items: flex-start; flex: 1; padding: 34px 38px 26px; }
.gear_item h3 { margin-top: 18px; color: #17191b; font-family: var(--font-heading); font-size: clamp(2.7rem, 3vw, 4.6rem); line-height: 1.12; font-weight: 800; letter-spacing: -.055em; }
.gear_item .gear_description { max-width: none; margin-top: 18px; }
.gear_detail { margin-top: 20px; color: #6b7073; font-size: 1.4rem; }
.gear_item .gear_link { width: 100%; margin-top: auto; padding-top: 20px; }
@container (min-width: 600px) { .gear_item_copy { padding: 42px 50px 30px; } }
.stories_section { max-width: 1800px; display: grid; grid-template-columns: 1fr 1.5fr; gap: 9vw; margin-inline: auto; padding: 104px 4.2vw 116px; scroll-margin-top: 0; }
.stories_intro h2 { margin-top: 22px; font-size: clamp(3.8rem,4.1vw,6.6rem); line-height: 1.15; letter-spacing: -.055em; }
.stories_intro > p:last-child { margin-top: 26px; color: #b4b8ba; font-size: 1.4rem; line-height: 1.85; }
.stories_list { border-top: 1px solid #686c6e; }
.story_link { display: grid; grid-template-columns: 36px 1fr 30px; align-items: start; gap: 18px; padding: 30px 0; border-bottom: 1px solid #3d4144; }
.story_category { padding-top: 4px; color: #9da4a8; font-size: 1.3rem; }
.story_link h3 { font-size: clamp(1.8rem, 1.8vw, 2.7rem); line-height: 1.5; letter-spacing: -.04em; }
.story_link p { margin-top: 9px; color: #abb1b5; font-size: 1.4rem; line-height: 1.7; }
.story_arrow { font-size: 2.5rem; line-height: 1.4; }
.story_link:hover h3 { text-decoration: underline; text-underline-offset: 7px; }
.story_link:hover .story_arrow { transform: translate(2px,-2px); }
footer { border-top: 1px solid #363a3d; }
.footer_top_text { font-size: 1.3rem; letter-spacing: .08em; }
.copyright { font-size: 1.2rem; }

@media (max-width: 899px) {
    .gear_section { padding-top: 70px; }
    .gear_intro { display: block; }
    .gear_intro_side { margin-top: 24px; }
    .gear_feature { grid-template-columns: 1fr; }
    .gear_photo_amp { min-height: 0; }
    .gear_photo_amp img { aspect-ratio: 1.28; object-position: center 68%; }
    .gear_feature_copy { padding: 36px; }
    .gear_feature h3 { font-size: 7rem; }
    .gear_item_copy { padding: 28px 25px 24px; }
    .stories_section { gap: 5vw; grid-template-columns: .8fr 1.2fr; }
    .story_link { grid-template-columns: 1fr 24px; gap: 8px 16px; }
    .story_category { grid-column: 1; }
    .story_link > div { grid-column: 1; }
    .story_arrow { grid-column: 2; grid-row: 1 / 3; }
}
@media (max-width: 767px) {
    .gear_section { padding: 56px 22px 62px; }
    .gear_intro { margin-bottom: 28px; }
    .gear_intro h2 { font-size: 7.4rem; margin-top: 14px; }
    .gear_intro_side > p { font-size: 1.4rem; }
    .gear_shortcuts { margin-top: 10px; gap: 22px; }
    .gear_feature_copy { padding: 28px 24px; }
    .gear_feature h3 { font-size: clamp(5.2rem, 12vw, 7rem); margin-top: 20px; }
    .gear_feature h3 br { display: block; }
    .gear_description { font-size: 1.45rem; margin-top: 20px; }
    .gear_specs { margin: 24px 0; gap: 32px; }
    .gear_pair { grid-template-columns: 1fr; gap: 22px; margin-top: 22px; }
    .gear_item h3 { font-size: clamp(2.7rem, 7vw, 4rem); }
    .gear_item .gear_photo { aspect-ratio: 1.15; }
    .gear_item_copy { padding: 28px 24px 22px; }
    .gear_detail { font-size: 1.3rem; }
    .gear_link { font-size: 1.4rem; gap: 20px; }
    .stories_section { grid-template-columns: 1fr; padding: 62px 22px 70px; gap: 36px; }
    .stories_intro h2 { font-size: 4.6rem; }
    .stories_intro > p:last-child { margin-top: 18px; }
    .story_link { padding: 24px 0; }
}
@media (prefers-reduced-motion: reduce) {
    .gear_photo img { transition: none; }
    .gear_photo:hover img, .story_link:hover .story_arrow { transform: none; }
}
