.home-v2 { background: #f8f7f5; color: #17181c; }
.home-v2 .container { max-width: 1360px; }
.nh-topline { background: #202124; color: #f8f8f7; font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.nh-topline .container { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.nh-topline span:last-child { color: #cccdd1; font-weight: 600; }
.nh-header { z-index: 20; background: #f8f7f5; position: relative; border-bottom: 1px solid #e7e5e2; }
.nh-header-inner { min-height: 108px; display: flex; align-items: center; gap: 25px; }
.nh-brand { flex: 0 0 207px; }
.nh-brand img { width: 207px; height: auto; }
.nh-nav { flex: 1; display: flex; align-items: center; justify-content: center; gap: clamp(7px,.93vw,16px); }
.nh-nav a { font-weight: 800; font-size: 11.5px; white-space: nowrap; color: #4b4d51; transition: color .2s; }
.nh-nav a:hover,.nh-nav .nh-nav-strong { color: #cc2634; }
.nh-nav .nh-nav-strong span { font-size: 10px; }
.nh-more { position: relative; font-size: 11.5px; color: #4b4d51; font-weight: 800; white-space: nowrap; }
.nh-more summary { cursor: pointer; list-style: none; padding: 12px 0; }
.nh-more summary::-webkit-details-marker { display: none; }
.nh-more summary span { color: #ca2738; margin-left: 3px; }
.nh-more-menu { position: absolute; top: 100%; left: -18px; min-width: 205px; padding: 10px 17px; display: flex; flex-direction: column; gap: 0; z-index: 40; background: #fff; border-top: 3px solid #ce2739; box-shadow: 0 16px 30px #12131c25; }
.nh-more-menu a { display: block; font-size: 12px; padding: 12px 0; border-bottom: 1px solid #eeecea; }
.nh-more-menu a:last-child { border-bottom: 0; }
.nh-tennis-menu { min-width: 225px; max-height: min(70vh,580px); overflow-y: auto; }
.nh-tennis-menu .nh-menu-major { color: #c52b3b; font-size: 13px; background: #faf4f3; padding-left: 9px; margin: 0 -9px 4px; }
.nh-more:not([open]) .nh-more-menu { display: none; }
.nh-call { white-space: nowrap; border: 1px solid #d5d3d1; min-height: 45px; padding: 13px 16px; font-size: 12px; font-weight: 800; }
.nh-call span { margin-left: 16px; color: #cc2634; }
.nh-toggle { display: none; }
.nh-hero { background: #f8f7f5; }
.nh-hero-main { display: flex; justify-content: space-between; align-items: end; gap: 65px; padding-top: 90px; padding-bottom: 62px; }
.nh-hero-title { min-width: 54%; }
.nh-kicker { color: #75777c; font-size: 10px; font-weight: 800; letter-spacing: .16em; display: flex; align-items: center; gap: 12px; }
.nh-kicker span { width: 29px; height: 3px; background: #d92336; }
.nh-hero h1 { font-family: 'Manrope',Arial,sans-serif; font-size: clamp(64px,7.1vw,112px); line-height: 1.05; margin: 26px 0 0; letter-spacing: -.07em; font-weight: 800; }
.nh-hero h1 em { font-style: normal; color: #cf2536; }
.nh-hero-intro { max-width: 355px; padding-bottom: 11px; }
.nh-hero-intro p { font-size: 16px; line-height: 1.95; margin: 0 0 31px; color: #65676a; }
.nh-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; }
.nh-button { display: inline-flex; align-items: center; gap: 28px; justify-content: space-between; padding: 15px 23px; min-height: 53px; border: 1px solid transparent; font-size: 12px; font-weight: 800; transition: transform .2s,background .2s; }
.nh-button:hover { transform: translateY(-2px); }
.nh-button-dark { color: #fff; background: #202124; }
.nh-button-dark:hover { background: #33343a; }
.nh-button-red { background: #d82639; color: #fff; }
.nh-button-red:hover { background: #ec3446; }
.nh-button-link { font-size: 12px; font-weight: 800; border-bottom: 1px solid #333; padding-bottom: 5px; }
.nh-button-link span { margin-left: 8px; }
.nh-panorama { height: clamp(390px,31vw,520px); position: relative; background: #38383c url('sport-home.webp') center 47% / cover no-repeat; }
.nh-panorama-overlay { position: absolute; inset: 0; background: linear-gradient(to bottom,transparent 44%,#0c101ca8 100%); }
.nh-panorama-labels { position: absolute; bottom: 33px; left: 50%; transform: translateX(-50%); display: grid; grid-template-columns: repeat(3,1fr); color: #fff; gap: 22px; }
.nh-panorama-labels span { border-top: 1px solid #ffffff7d; padding-top: 12px; font-size: 10px; letter-spacing: .14em; font-weight: 600; }
.nh-panorama-labels strong { font-weight: 800; font-size: 17px; letter-spacing: -.015em; margin-left: 13px; }
.nh-marquee { background: #202124; color: #fff; }
.nh-marquee .container { min-height: 60px; display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.nh-asterisk { font-size: 16px; color: #e3394b; }
.nh-disciplines { padding-top: 110px; padding-bottom: 97px; }
.nh-section-head { display: flex; justify-content: space-between; align-items: end; gap: 38px; margin-bottom: 41px; }
.nh-mini { font-size: 10px; font-weight: 800; letter-spacing: .17em; color: #ac2937; margin: 0; }
.nh-section-head h2 { font-family: 'Manrope',Arial,sans-serif; font-size: clamp(44px,5.1vw,70px); letter-spacing: -.06em; line-height: 1.14; margin: 19px 0 0; }
.nh-section-head h2 span { color: #d1283a; }
.nh-section-head>p { max-width: 335px; color: #75777c; font-size: 14px; line-height: 1.8; margin: 0 0 3px; }
.nh-sport-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.nh-sport-card { background: #fff; display: flex; flex-direction: column; min-width: 0; border: 1px solid #e5e3e0; transition: box-shadow .2s,transform .2s; }
.nh-sport-card:hover { transform: translateY(-3px); box-shadow: 0 15px 26px #00000014; }
.nh-sport-image { display: block; height: clamp(230px,24vw,335px); background-image: url('sport-home.webp'); background-size: 300% auto; background-repeat: no-repeat; }
.nh-sport-sci .nh-sport-image { background-position: 0% 47%; }
.nh-sport-tennis .nh-sport-image { background-position: 50% 47%; }
.nh-sport-padel .nh-sport-image { background-position: 100% 47%; }
.nh-sport-index { color: #99999f; font-weight: 800; letter-spacing: .14em; font-size: 9px; padding: 20px 22px 0; }
.nh-sport-bottom { padding: 6px 22px 24px; min-height: 108px; display: flex; flex-direction: column; align-items: stretch; justify-content: space-between; gap: 14px; }
.nh-sport-bottom strong { font-size: clamp(25px,2.2vw,35px); line-height: 1.3; letter-spacing: -.045em; font-family: 'Manrope',Arial,sans-serif; }
.nh-sport-bottom>span { font-size: 11px; color: #77797d; display: flex; align-items: center; justify-content: space-between; }
.nh-sport-bottom b { color: #c72637; font-size: 17px; }
.nh-more-disciplines { padding-top: 65px; }
.nh-more-heading { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 25px; }
.nh-more-heading h3 { font-family: 'Manrope',Arial,sans-serif; margin: 0; font-size: 32px; letter-spacing: -.05em; }
.nh-category-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 13px; }
.nh-category-tile { display: flex; flex-direction: column; gap: 0; background: #fff; min-height: 305px; padding: 0; border: 1px solid #e4e2df; transition: border-color .2s, transform .2s; scroll-margin-top: 30px; overflow: hidden; }
.nh-category-tile::before { content: ''; display: block; flex: 0 0 clamp(135px,12.6vw,180px); width: 100%; background-image: url('discipline-extra.webp'); background-repeat: no-repeat; background-size: 300% auto; }
.nh-category-tile:nth-child(1)::before { background-position: 0% 0%; }
.nh-category-tile:nth-child(2)::before { background-position: 50% 0%; }
.nh-category-tile:nth-child(3)::before { background-position: 100% 0%; }
.nh-category-tile:nth-child(4)::before { background-position: 0% 100%; }
.nh-category-tile:nth-child(5)::before { background-position: 50% 100%; }
.nh-category-tile:hover { border-color: #d3293b; transform: translateY(-2px); }
.nh-category-tile>span { color: #a2a2a6; font-size: 9px; font-weight: 800; letter-spacing: .12em; padding: 16px 15px 8px; }
.nh-category-tile strong { font-family: 'Manrope',Arial,sans-serif; font-size: clamp(18px,1.7vw,25px); letter-spacing: -.045em; padding: 0 15px 15px; }
.nh-category-tile small { display: flex; justify-content: space-between; align-items: center; color: #717379; font-size: 10px; padding: 0 15px 17px; margin-top: auto; }
.nh-category-tile small b { color: #ce283a; font-size: 16px; }
.nh-various { margin-top: 18px; background: #25262a; color: #fff; padding: 30px 33px 31px; }
.nh-various-head { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; margin-bottom: 20px; }
.nh-various h3 { font-family: 'Manrope',Arial,sans-serif; margin: 0; font-size: 29px; letter-spacing: -.05em; }
.nh-various-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.nh-various-grid a { position: relative; isolation: isolate; overflow: hidden; color: #fff; min-height: 190px; padding: 18px 14px; border: 1px solid #57585c; font-size: 14px; display: flex; gap: 10px; align-items: end; justify-content: space-between; scroll-margin-top: 20px; }
.nh-various-grid a::before { content: ''; position: absolute; z-index: -2; inset: 0; background-image: url('sport-vari.webp'); background-repeat: no-repeat; background-size: 200% auto; transition: transform .3s; }
.nh-various-grid a:nth-child(1)::before { background-position: 0% 0%; }
.nh-various-grid a:nth-child(2)::before { background-position: 100% 0%; }
.nh-various-grid a:nth-child(3)::before { background-position: 0% 100%; }
.nh-various-grid a:nth-child(4)::before { background-position: 100% 100%; }
.nh-various-grid a::after { content: ''; position: absolute; z-index: -1; inset: 0; background: linear-gradient(to bottom,transparent 25%,#070910c7 100%); }
.nh-various-grid a:hover::before { transform: scale(1.06); }
.nh-various-grid a:hover { border-color: #e04756; }
.nh-various-grid span { color: #f26171; font-size: 17px; }
.nh-photo-note { margin: 17px 0 0; color: #88898c; font-size: 11px; text-align: right; }
.nh-feature { background: #202126; overflow: hidden; }
.nh-feature-inner { min-height: 615px; display: grid; grid-template-columns: .91fr 1.09fr; gap: 42px; align-items: stretch; }
.nh-feature-copy { padding: 80px 0 82px; position: relative; z-index: 2; }
.nh-mini-light { color: #f46c77; }
.nh-feature h2 { color: #fff; font-family: 'Manrope',Arial,sans-serif; font-weight: 800; font-size: clamp(61px,6.5vw,95px); line-height: 1.08; letter-spacing: -.07em; margin: 23px 0 23px; }
.nh-feature h2 span { color: #e83549; }
.nh-feature-copy>p:not(.nh-mini) { color: #c4c4c8; font-size: 15px; line-height: 1.9; max-width: 450px; margin: 0 0 27px; }
.nh-brand-list { display: flex; flex-wrap: wrap; gap: 10px 19px; max-width: 450px; color: #e9e8e9; margin-bottom: 37px; }
.nh-brand-list span { font-size: 10px; font-weight: 800; letter-spacing: .07em; }
.nh-feature-products { position: relative; min-height: 540px; align-self: center; background: #e9e8e5; overflow: hidden; }
.nh-feature-products::before { content: ''; position: absolute; width: 640px; height: 640px; top: -14px; left: 2%; background: #ffffff80; border-radius: 50%; }
.nh-boot { position: absolute; z-index: 2; }
.nh-boot img { height: 100%; width: 100%; object-fit: contain; mix-blend-mode: multiply; }
.nh-boot-one { width: 52%; height: 78%; left: -5%; bottom: 5%; transform: rotate(-8deg); }
.nh-boot-two { width: 46%; height: 70%; right: 2%; top: 3%; transform: rotate(9deg); }
.nh-boot-one img,.nh-boot-two img { mix-blend-mode: multiply; filter: saturate(.86) contrast(1.02); }
.nh-feature-big { position: absolute; right: 0; bottom: -54px; color: #d5d4d1; font-size: clamp(170px,21vw,335px); font-weight: 800; letter-spacing: -.13em; }
.nh-marks { padding-top: 93px; padding-bottom: 100px; }
.nh-marks-heading { display: flex; gap: 35px; align-items: center; justify-content: space-between; margin-bottom: 32px; }
.nh-marks h2 { margin: 0; font-size: 27px; font-family: 'Manrope',Arial,sans-serif; letter-spacing: -.04em; }
.nh-marks-row { border-block: 1px solid #dedcda; display: flex; flex-wrap: wrap; gap: 20px 44px; align-items: center; padding: 35px 0; }
.nh-marks-row span { font-size: clamp(17px,1.6vw,22px); font-weight: 800; letter-spacing: -.035em; color: #6e7074; }
.nh-contact { background: #eeece9; }
.nh-contact-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; padding-top: 88px; padding-bottom: 91px; }
.nh-contact h2 { font-family: 'Manrope',Arial,sans-serif; font-size: clamp(41px,4.4vw,64px); letter-spacing: -.06em; margin: 18px 0 23px; }
.nh-contact-inner>div:first-child>p:nth-child(3) { color: #65676b; font-size: 15px; line-height: 1.9; }
.nh-contact-hours { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 18px; margin-top: 34px; }
.nh-contact-hours span { color: #a12936; font-size: 10px; font-weight: 800; letter-spacing: .12em; margin-right: 8px; }
.nh-contact-hours strong { font-size: 15px; }
.nh-contact-right { align-self: center; }
.nh-contact-link { border-bottom: 1px solid #cfcdcb; min-height: 86px; display: grid; grid-template-columns: 120px 1fr auto; gap: 16px; align-items: center; }
.nh-contact-link:first-child { border-top: 1px solid #cfcdcb; }
.nh-contact-link span { font-size: 12px; color: #808086; }
.nh-contact-link strong { font-size: clamp(16px,1.6vw,22px); letter-spacing: -.035em; }
.nh-contact-link b { font-size: 20px; color: #c82c3d; }
.nh-footer { background: #f8f7f5; }
.nh-footer-main { min-height: 192px; display: flex; align-items: center; gap: 42px; justify-content: space-between; }
.nh-footer-main img { width: 182px; height: auto; }
.nh-footer-main p { color: #717378; font-size: 13px; line-height: 1.85; }
.nh-footer-main>a:last-child { font-size: 12px; font-weight: 800; }
.nh-footer-bottom { padding: 18px 0 23px; border-top: 1px solid #e4e2de; display: flex; justify-content: space-between; font-size: 10px; color: #8a8b8e; }

@media(max-width:1100px) {
 .nh-header-inner { gap: 22px; }
 .nh-brand { flex-basis: 170px; }.nh-brand img { width: 170px; }
 .nh-nav { gap: 10px; }.nh-call { display: none; }
 .nh-hero-main { padding-top: 70px; }
 .nh-hero h1 { font-size: clamp(57px,6.6vw,82px); }
 .nh-feature-inner { gap: 10px; }
 .nh-feature-products::before { width: 520px; height: 520px; }
}
@media(max-width:760px) {
 .nh-topline .container { min-height: 30px; justify-content: center; font-size: 9px; }
 .nh-topline span:last-child { display: none; }
 .nh-header-inner { min-height: 79px; justify-content: space-between; }
 .nh-brand { flex-basis: 158px; }.nh-brand img { width: 158px; }
 .nh-toggle { display: inline-flex; align-items: center; gap: 9px; min-height: 39px; border: 1px solid #dddbd8; background: transparent; font-size: 12px; font-weight: 800; padding: 8px 11px; }
 .nh-toggle span { font-size: 18px; }
 .nh-nav { display: none; position: absolute; top: 79px; left: 0; right: 0; padding: 13px 22px 23px; background: #f8f7f5; box-shadow: 0 21px 26px #22222222; border-top: 1px solid #eceae7; flex-direction: column; align-items: stretch; }
 .nh-nav.open { display: flex; max-height: calc(100dvh - 110px); overflow-y: auto; }.nh-nav a { padding: 11px 2px; font-size: 14px; }
 .nh-more { font-size: 14px; }.nh-more summary { padding: 11px 2px; }
 .nh-more-menu { position: static; min-width: 0; padding: 6px 13px 12px; background: #f1efec; border-top: 1px solid #d5d2cd; box-shadow: none; }
 .nh-more-menu a { font-size: 13px; padding: 9px 0; }
 .nh-hero-main { display: block; padding-top: 53px; padding-bottom: 37px; }
 .nh-kicker { font-size: 9px; letter-spacing: .11em; }
 .nh-hero h1 { font-size: clamp(49px,10vw,76px); margin: 23px 0 20px; }
 .nh-hero-intro { max-width: 480px; }
 .nh-hero-intro p { font-size: 13px; line-height: 1.75; margin-bottom: 23px; }
 .nh-button { min-height: 49px; padding: 13px 18px; }
 .nh-panorama { height: 335px; background-position: 49% center; }
 .nh-panorama-labels { bottom: 18px; gap: 13px; }
 .nh-panorama-labels span { font-size: 9px; }
 .nh-panorama-labels strong { font-size: 13px; margin-left: 5px; }
 .nh-marquee .container { justify-content: center; gap: 15px; padding: 14px 0; min-height: 57px; text-align: center; font-size: 9px; }
 .nh-marquee .container span:nth-child(3),.nh-marquee .container span:nth-child(4) { display: none; }
 .nh-disciplines { padding-top: 70px; padding-bottom: 69px; }
 .nh-section-head { display: block; margin-bottom: 24px; }.nh-section-head h2 { font-size: 47px; margin-top: 13px; }.nh-section-head>p { margin-top: 14px; font-size: 12px; }
 .nh-sport-grid { grid-template-columns: 1fr; gap: 17px; }
 .nh-sport-image { height: 260px; }
 .nh-sport-bottom { padding: 6px 18px 20px; min-height: 100px; }
 .nh-sport-bottom strong { font-size: 30px; }
 .nh-more-disciplines { padding-top: 46px; }
 .nh-more-heading { display: block; }.nh-more-heading h3 { font-size: 27px; margin-top: 13px; }
 .nh-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
 .nh-category-tile { min-height: 270px; padding: 0; }
 .nh-category-tile::before { flex-basis: 148px; }
 .nh-category-tile strong { font-size: 19px; }
 .nh-category-tile small { font-size: 9px; }
 .nh-category-tile:last-child { grid-column: span 2; min-height: 270px; }
 .nh-category-tile:last-child::before { flex-basis: 160px; }
 .nh-various { padding: 24px 18px; }.nh-various-head { display: block; }.nh-various h3 { font-size: 26px; margin-top: 11px; }
 .nh-various-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
 .nh-various-grid a { min-height: 175px; padding: 14px 10px; font-size: 12px; }
 .nh-feature-inner { grid-template-columns: 1fr; gap: 0; }
 .nh-feature-copy { padding: 60px 0 0; }.nh-feature h2 { font-size: 66px; margin: 17px 0; }.nh-feature-copy>p:not(.nh-mini) { font-size: 13px; }
 .nh-brand-list { margin-bottom: 28px; }
 .nh-feature-products { min-height: 355px; }.nh-feature-products::before { width: 360px; height: 360px; left: 15%; top: 0; }
 .nh-boot-one { height: 88%; width: 53%; left: 0; }.nh-boot-two { height: 82%; width: 48%; right: 0; }
 .nh-feature-big { font-size: 195px; bottom: -20px; }
 .nh-marks { padding-top: 67px; padding-bottom: 61px; }.nh-marks-heading { display: block; }.nh-marks h2 { font-size: 24px; margin-top: 13px; }
 .nh-marks-row { gap: 17px 27px; padding: 29px 0; }
 .nh-marks-row span { font-size: 16px; }
 .nh-contact-inner { display: block; padding-top: 65px; padding-bottom: 69px; }.nh-contact h2 { font-size: 45px; }
 .nh-contact-hours { margin-top: 25px; }.nh-contact-right { margin-top: 36px; }
 .nh-contact-link { min-height: 79px; grid-template-columns: 84px 1fr auto; gap: 10px; }.nh-contact-link strong { font-size: 17px; }
 .nh-footer-main { padding-top: 32px; padding-bottom: 28px; gap: 15px; flex-wrap: wrap; min-height: 0; }.nh-footer-main img { width: 153px; }.nh-footer-main p { font-size: 11px; }
 .nh-footer-bottom { gap: 10px; line-height: 1.7; }
}
@media(max-width:410px) {
 .nh-hero h1 { font-size: 48px; }.nh-hero-actions { gap: 14px; }
 .nh-panorama { height: 267px; }
 .nh-panorama-labels strong { font-size: 10px; }.nh-panorama-labels span { font-size: 8px; }
 .nh-sport-image { height: 222px; }
 .nh-feature-products { min-height: 325px; }
}

/* New Stöckli feature on the homepage. */
.nh-stockli-feature { background: #eae8e5; overflow: hidden; }
.nh-stockli-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 42px; align-items: center; min-height: 485px; }
.nh-stockli-copy { padding: 65px 0; }
.nh-stockli-copy h2 { font: 800 clamp(52px,5.6vw,83px)/1.12 Manrope,Arial,sans-serif; letter-spacing: -.065em; margin: 18px 0 22px; }
.nh-stockli-copy h2 em { color: #cd2739; font-style: normal; }
.nh-stockli-copy>p:not(.nh-mini) { font-size: 15px; color: #66686d; line-height: 1.8; max-width: 460px; margin: 0 0 30px; }
.nh-stockli-pair { display: flex; justify-content: center; align-items: center; height: 445px; gap: 15px; background: radial-gradient(circle at 50% 52%,#fff 0,#f3f1ed 55%,transparent 61%); }
.nh-stockli-pair img { width: 28%; max-width: 180px; height: 91%; object-fit: contain; filter: drop-shadow(10px 12px 8px #0000001e); }
.nh-stockli-pair img:nth-child(2) { height: 82%; transform: translateY(25px) rotate(5deg); }
@media(max-width:760px) {
 .nh-stockli-inner { display: flex; flex-direction: column; gap: 0; align-items: stretch; }
 .nh-stockli-copy { padding: 57px 0 0; }
 .nh-stockli-copy h2 { font-size: clamp(49px,10vw,68px); }
 .nh-stockli-copy>p:not(.nh-mini) { font-size: 13px; }
 .nh-stockli-pair { height: 280px; }
}
