.custom-section {
  position: relative;
  overflow: hidden;
  background-color: rgb(var(--color-background));
}

.custom-section:has(.sticky-element),
.custom-section.allow-overflow,
.custom-section.allow-sticky {
  overflow: visible;
}

.custom-section__background-image,
.custom-section__background-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  pointer-events: none;
}

.custom-section__background-image img,
.custom-section__background-image svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.custom-section__background-video theme-video-media,
.custom-section__background-video .theme-video-media,
.custom-section__background-video .theme-video-media__media,
.custom-section__background-video video,
.custom-section__background-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
}

.custom-section__background-video .theme-video-media__play-button {
  display: none !important;
}

.custom-section> :not(.custom-section__background-image):not(.custom-section__background-video) {
  position: relative;
  z-index: 2;
}

.custom-section .block-heading,
.custom-section .subheading {
  width: 100%;
  text-box-trim: trim-end;
}

.custom-section .subheading,
.custom-section .rte {
  word-break: break-word;
}

.brand-golf img {
  filter: url(#brand-proof-alpha-boost) grayscale(1) brightness(1.2) !important;
}

.brand-proof__logo:hover,
.brand-proof__logo:focus-visible {
  background: #272725 !important;
}

.brand-proof__logo:hover::after,
.brand-proof__logo:focus-visible::after {
  color: #fff;
  transform: translate(2px, -2px);
}

.brand-proof__logo::after {
  position: absolute;
  right: 1vw;
  bottom: 0.8vw;
  color: rgb(255 255 255 / 28%);
  content: "↗";
  transition: color 240ms ease, transform 240ms ease;
  font-size: 16px;
}

.brand-proof__logo img {
  display: block;
  width: auto;
  max-width: 68%;
  max-height: 4.5vw;
  object-fit: contain;
  filter: grayscale(1) invert(1) brightness(1.2);
  opacity: 0.76;
  transition: opacity 240ms ease, transform 360ms cubic-bezier(0.2, 0.8, 0.2, 1);
  margin: auto;
}

/* Keep the mobile homepage header stack and hero within one visible screen. */
@media (max-width: 959px) {
  #shopline-section-template--index__1784911919590b47193d {
    --uswing-first-screen: 100vh;
  }
  @supports (height: 100svh) {
    #shopline-section-template--index__1784911919590b47193d { --uswing-first-screen: 100svh; }
  }
  /* svh stays stable while mobile browser chrome expands or collapses. */
  #shopline-section-template--index__1784911919590b47193d .custom-section {
    box-sizing: border-box;
    height: max(0px, calc(var(--uswing-first-screen) - var(--header-group-exact-height, var(--header-group-height, 106px))));
    min-height: 0 !important;
    /* The content group supplies stable clearance; dynamic safe-area insets shift text on scroll. */
    padding-block-end: 10px;
  }
  #block-group-template--index__1784911919590b47193d___1784912268008c6860f7 {
    flex-shrink: 0;
  }
}

/* Leave all four shopping links visible on short phones and in landscape. */
@media (max-width: 959px) and (max-height: 600px) {
  #block-group-template--index__1784911919590b47193d___1784912268008c6860f7 {
    padding-block-end: 24px;
  }
  #block-heading-template--index__1784911919590b47193d___1784912268008c6860f7___178491227621189dec9f {
    padding-block-end: 6px;
  }
  #block-heading-template--index__1784911919590b47193d___1784912268008c6860f7___1784912314874ee69f9d {
    padding-block-end: 8px;
  }
  #block-group-template--index__1784911919590b47193d___1784912268008c6860f7___178491242253254f550e {
    padding-block-start: 12px;
  }
}


/* Keep the mobile Best Sellers View All outline inside its clipped heading group. */
@media (max-width: 959px) {
  #block-group-template--index__17849627963094ee7ce3___1784962807550feba6df > .button::after {
    box-shadow:
      inset 0 0 0 var(--button-border-thickness, 1px) rgba(var(--color-button-text), var(--border-opacity)),
      inset 0 0 0 var(--button-border-thickness, 1px) rgba(var(--color-button-background), var(--alpha-button-background));
  }

  #block-group-template--index__17849627963094ee7ce3___1784962807550feba6df > .button:not([disabled]):hover::after {
    box-shadow:
      inset 0 0 0 calc(var(--button-border-thickness, 1px) + 1px) rgba(var(--color-button-text), var(--border-opacity)),
      inset 0 0 0 calc(var(--button-border-thickness, 1px) + 1px) rgba(var(--color-button-background), var(--alpha-button-background));
  }
}


/* Shade the Tour Pick text area on every device, leaving the upper portrait clear. */
#block-group-template--index__1784970797085c15f003___17849707987552259a9b___17849714363494b6efe4___1784971821010c272f4b > .block-heading { position: relative; }
#block-group-template--index__1784970797085c15f003___17849707987552259a9b___17849714363494b6efe4___1784971821010c272f4b > .block-heading::before {
  content: ""; position: absolute; z-index: -1; top: -84px; inset-inline: -64px;
  height: 100vmax; pointer-events: none;
  background: linear-gradient(to bottom, rgb(0 0 0 / 0) 0, rgb(0 0 0 / .32) 34px, rgb(0 0 0 / .62) 72px, rgb(0 0 0 / .70) 160px, rgb(0 0 0 / .76) 300px);
}
#block-group-template--index__1784970797085c15f003___17849707987552259a9b___17849714363494b6efe4___1784971821010c272f4b > .block-heading,
#block-group-template--index__1784970797085c15f003___17849707987552259a9b___17849714363494b6efe4___1784971821010c272f4b > .block-description {
  text-shadow: 0 1px 3px rgb(0 0 0 / .4);
}

/* Contact Us: one continuous mobile layout, with a landscape hero. */
@media (max-width: 959px) {
  #shopline-section-template--page--contact__1786507983747d717ead .custom-section {
    min-height: 0 !important;
    height: auto;
    max-height: 420px;
    aspect-ratio: 4 / 3;
    justify-content: flex-end;
    align-items: stretch;
    padding: 0;
  }
  #shopline-section-template--page--contact__1786507983747d717ead .custom-section__background-image img {
    object-position: right center;
  }
  #shopline-section-template--page--contact__1786507983747d717ead .custom-section::after {
    content: "";
    position: absolute;
    inset: 48% 0 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(transparent, rgb(0 0 0 / 42%));
  }
  #shopline-section-template--page--contact__1786507983747d717ead .block-group {
    width: 100%; max-width: none; padding: 24px 20px;
  }
  #shopline-section-template--page--contact__1786507983747d717ead .block-heading {
    padding: 0; margin: 0; text-align: left;
    font-size: 30px; font-weight: 600; line-height: 1.15; letter-spacing: -.025em;
    color: #fff;
  }

  #shopline-section-template--page--contact__1786508501671acda3b4 .custom-section {
    padding: 36px 20px 48px;
    background: #f5f5f3;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .custom-section::after,
  #shopline-section-template--page--contact__1786508501671acda3b4 .custom-section__background-image { display: none; }
  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___1786508507263894b077"],
  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___1786508565130f1445d8"] {
    width: 100%; max-width: none; padding: 0; gap: 0; align-items: stretch;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___1786509488423fd9f21b"] {
    padding: 0 0 20px; border-bottom: 1px solid #d8d8d4;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___1786509494344c9b3a60"],
  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___1786509408970ad2ac64"] {
    font-size: 24px; line-height: 1.2; font-weight: 600; letter-spacing: -.02em;
    margin: 0; padding: 0; text-align: left; color: #111;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .icon-list-with-text {
    padding: 24px 0 8px;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .icon-list-with-text__item {
    font-size: 16px; line-height: 1.4; font-weight: 600;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 h5.block-heading {
    font-size: 16px; line-height: 1.55; font-weight: 400; color: #3e413c;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___178651157537598e2d3f"] {
    width: 100%; max-width: none; padding: 24px 0 0; align-items: flex-start;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___1786511588824790bb86"] {
    font-size: 16px; font-weight: 600; line-height: 1.4; padding: 0 0 12px;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .block-social-media__list { gap: 10px; }
  #shopline-section-template--page--contact__1786508501671acda3b4 .block-social-media__link {
    width: 44px; height: 44px; background: transparent; border: 1px solid #bfc2bb;
    color: #111 !important; border-radius: 50%; transform: none;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .block-social-media__link svg { width: 20px; height: 20px; }
  #shopline-section-template--page--contact__1786508501671acda3b4 .block-social-media__link:focus-visible { outline: 2px solid #111; outline-offset: 3px; }

  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___17865085690427bed75c"] {
    width: 100%; max-width: none; margin-top: 32px; padding: 32px 0 0;
    border-top: 1px solid #d8d8d4;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___1786508931656ab2469f"] {
    width: 100%; max-width: none; padding: 0; border-radius: 0;
    overflow: visible; background: transparent; box-shadow: none;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 [id$="___178650940240203358dc"] {
    width: 100%; padding: 0; background: transparent; color: #111; align-items: flex-start;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .rte {
    width: 100%; padding: 12px 0 24px; text-align: left;
    font-size: 16px; line-height: 1.55; color: #50534d;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .rte p {
    margin: 0; font-size: 16px !important; line-height: 1.55;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .rte a { font-size: inherit !important; color: #111; }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form {
    padding: 0; background: transparent;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form .field {
    display: flex; flex-direction: column-reverse; align-items: stretch;
    height: auto; margin: 0 0 18px; padding: 0; border: 0; border-radius: 0;
    background: transparent; box-shadow: none;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form .field::after,
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form .field::before { display: none; }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form .field__inner {
    display: flex; flex-direction: column-reverse; align-items: stretch;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form .field__label {
    position: static; display: block; transform: none !important; margin: 0;
    color: #242622; opacity: 1; font-size: 14px !important; font-weight: 600; line-height: 1.4;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form .field__input {
    position: relative; width: 100%; height: 52px; min-height: 0; margin: 8px 0 0;
    padding: 12px 14px; border: 1px solid #c8cbc3; border-radius: 8px;
    background: #fff; color: #111; font-size: 16px !important; line-height: 1.5; box-sizing: border-box;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form .field__input::placeholder { opacity: 0; }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form .field__input:focus {
    outline: 2px solid #585f4f; outline-offset: 2px; border-color: #585f4f;
  }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form .textarea { height: 140px; resize: vertical; }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form__button { margin: 6px 0 0; }
  #shopline-section-template--page--contact__1786508501671acda3b4 .contact-form__button .button {
    width: 100%; min-height: 50px; padding: 12px 24px; border-radius: 999px;
    font-size: 16px; line-height: 1.4; font-weight: 600; background: #000; color: #fff;
  }
}

/* USWING Explore: give the mobile heading its full width and a clear CTA row. */
@media (max-width: 767px) {
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section {
    padding: 32px 20px 24px;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section > .block-group {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 16px;
    width: 100%;
    height: auto;
    padding: 0;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section > .block-group > .block-group {
    align-items: flex-start;
    gap: 8px;
    width: 100%;
    max-width: none;
    height: auto;
    padding: 0;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .block-heading {
    --sort-title-size: clamp(32px, 9.2vw, 36px);
    font-size: clamp(32px, 9.2vw, 36px);
    line-height: 1.08;
    width: 100%;
    max-width: 100%;
    margin: 0;
    text-wrap: balance;
    word-break: normal;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .block-subheading {
    margin: 0;
    line-height: 1.4;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .button {
    align-self: flex-start;
    flex-shrink: 0;
  }
}

/* USWING Tour Pick: fixed media rows and consistent copy alignment within each product row. */
#shopline-section-template--index__1784970797085c15f003 theme-product-card {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  border-width: var(--product-card-border-thickness, 1px) !important;
  border-style: solid !important;
  border-color: rgba(var(--color-entry-line), var(--product-card-border-opacity)) !important;
}
#shopline-section-template--index__1784970797085c15f003 .block-product-image__layer-image-wrapper {
  flex: 0 0 auto;
}
#shopline-section-template--index__1784970797085c15f003 .block-product-card-info {
  display: flex;
  flex-direction: column;
  flex: 1 0 auto;
  width: 100%;
}
#shopline-section-template--index__1784970797085c15f003 .block-product-card-info > .block-product-title {
  flex-grow: 1;
}

/* Keep mobile copy and the CTA comfortably inside the lifestyle image. */
@media (max-width: 959px) {
  #shopline-section-template--index__1784970797085c15f003 .sticky-element {
    padding: 28px 20px;
  }
}
/* Preserve the original photograph and keep the cap and face inside the tablet crop. */
@media (min-width: 768px) and (max-width: 959px) {
  #shopline-section-template--index__1784970797085c15f003 .sticky-element {
    min-height: clamp(560px, 72vw, 680px);
    padding: 32px;
  }
  #shopline-section-template--index__1784970797085c15f003 .sticky-element .block-group__background-image img {
    object-position: 50% 0%;
  }
  #shopline-section-template--index__1784970797085c15f003 .sticky-element > .block-description {
    max-width: 600px;
  }
}

/* Explore heading and athlete gallery share one desktop viewport. */
@media (min-width: 960px) {
  body[data-page-type="index"] { --uswing-explore-heading-height: calc(var(--sort-title2-size, 74px) * 1.2 + 83px); }
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section {
    height: var(--uswing-explore-heading-height); min-height: 0; padding: 0;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section > .block-group {
    width: 100%; height: 100%; padding: 24px var(--page-padding); align-items: center; gap: 24px;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section > .block-group > .block-group {
    max-width: calc(100% - 160px); min-width: 0; align-items: flex-start; gap: 8px;
  }
  #shopline-section-template--index__1784954136774a51ef5c .image-accordion { padding-block: 0; }
  #shopline-section-template--index__1784954136774a51ef5c .image-accordion__container {
    height: calc(100svh - var(--uswing-explore-heading-height));
  }
}
@media (min-width: 960px) and (max-width: 1279px) {
  body[data-page-type="index"] { --uswing-explore-heading-height: calc(var(--sort-title2-size, 74px) * 2.4 + 83px); }
}

/* Homepage section rhythm: match the visible Trusted People → Latest News gap.
   Keep the desktop viewport-sized media blocks intact; their spacing is external. */
body[data-page-type="index"] {
  --uswing-home-section-gap: 132px;
  --uswing-trusted-heading-inset: 92px;
  --uswing-footer-feature-inset: 24px;
}
@media (min-width: 901px) and (max-width: 959px) {
  body[data-page-type="index"] {
    --uswing-home-section-gap: 136px;
    --uswing-trusted-heading-inset: 96px;
  }
}
@media (min-width: 960px) {
  body[data-page-type="index"] {
    --uswing-home-section-gap: 120px;
    --uswing-trusted-heading-inset: 24px;
    --uswing-footer-feature-inset: 28px;
  }
  #shopline-section-template--index__17849627963094ee7ce3 {
    position: relative;
    margin-block-start: calc(var(--uswing-home-section-gap) - 24px);
  }
  #shopline-section-template--index__17849627963094ee7ce3::before {
    content: ""; position: absolute; inset-inline: 0; bottom: 100%;
    height: calc(var(--uswing-home-section-gap) - 24px); background: #000; pointer-events: none;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section > .block-group {
    align-items: flex-start;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section > .block-group > .block-group {
    height: auto;
  }
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section > .block-group > .button {
    align-self: center;
  }
}
@media (min-width: 960px) and (min-height: 801px) {
  body[data-page-type="index"] { --uswing-trusted-heading-inset: clamp(40px, 4svh, 64px); }
}
@media (max-width: 959px) {
  #shopline-section-template--index__17849627963094ee7ce3 .custom-section {
    padding-block-start: var(--uswing-home-section-gap);
  }
}
#shopline-section-template--index__1784954136774a51ef5c .image-accordion {
  padding-block-end: 0;
}
#shopline-section-template--index__image-banner {
  position: relative;
  margin-block-start: var(--uswing-home-section-gap);
}
#shopline-section-template--index__image-banner::before {
  content: ""; position: absolute; inset-inline: 0; bottom: 100%;
  height: var(--uswing-home-section-gap); background: #000; pointer-events: none;
}
#shopline-section-template--index__17850396738031c351f6 .text-columns-with-image-section > .page-width > div {
  padding-block: var(--uswing-home-section-gap);
}
#shopline-section-template--index__178505068725312a1124 {
  margin-block-start: calc(var(--uswing-home-section-gap) - var(--uswing-trusted-heading-inset));
}
#shopline-section-template--index__178513566031289a7fcf .custom-section {
  padding-block-end: calc(var(--uswing-home-section-gap) - var(--uswing-footer-feature-inset));
}

/* Finish the homepage rhythm through the shared footer, scoped to this page. */
body[data-page-type="index"] #shopline-section-sections--footer-group__footer .footer {
  padding-block-start: calc(var(--uswing-home-section-gap) - 44px);
}
@media (min-width: 960px) {
  body[data-page-type="index"] #shopline-section-sections--footer-group__footer .footer {
    padding-block-start: calc(var(--uswing-home-section-gap) - 110px);
  }
}

/* Tablet Tour Pick: show two products and a preview of the next swipe target. */
@media (min-width: 768px) and (max-width: 959px) {
  #shopline-section-template--index__1784970797085c15f003 .block-product-list.grid {
    --mobile-columns: 2.35 !important;
    --mobile-gap-columns: 3 !important;
  }
}

/* Match Explore's compact heading-to-card spacing without changing section gaps. */
body[data-page-type="index"] { --uswing-home-heading-gap: 32px; }
@media (max-width: 959px) { body[data-page-type="index"] { --uswing-home-heading-gap: 24px; } }
#shopline-section-template--index__17850396738031c351f6 .text-columns-with-image-section > .page-width > div > .block-heading {
  padding-block-end: var(--uswing-home-heading-gap);
}
#shopline-section-template--index__178513566031289a7fcf > .custom-section { row-gap: 0; }
#block-group-template--index__178513566031289a7fcf___1785135660313996b235 {
  padding-block-end: var(--uswing-home-heading-gap);
}

/* A tighter, consistent rhythm for the mobile homepage. */
@media (max-width: 767px) {
  body[data-page-type="index"] {
    --uswing-home-section-gap: 80px;
    --uswing-trusted-heading-inset: 52px;
  }
  #shopline-section-template--index__178505068725312a1124 .trusted-people { padding-block: 20px; }
  #shopline-section-template--index__178505068725312a1124 .trusted-people__inner { padding-block: 32px; }
  #block-group-template--index__178513566031289a7fcf___1785135660313996b235 { padding-block-start: 28px; }
}

/* Keep the brand hero's punctuation with its word as the wider title reflows. */
.block-heading[id$="17865010186259f20359"] {
  word-break: normal;
  overflow-wrap: normal;
  text-wrap: balance;
}
