.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 only the Tour Pick copy area; the fade follows the title when it wraps. */
@media (max-width: 959px) {
  #block-group-template--index__1784970797085c15f003___17849707987552259a9b___17849714363494b6efe4___1784971821010c272f4b > .block-heading::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -88px;
    inset-inline: -32px;
    /* The image group's overflow clips the fade at its edges, below all copy. */
    height: 100vmax;
    pointer-events: none;
    background: linear-gradient(to bottom,
      rgb(0 0 0 / 0) 0,
      rgb(0 0 0 / 0.12) 28px,
      rgb(0 0 0 / 0.42) 72px,
      rgb(0 0 0 / 0.54) 120px,
      rgb(0 0 0 / 0.60) 210px);
  }

  #block-group-template--index__1784970797085c15f003___17849707987552259a9b___17849714363494b6efe4___1784971821010c272f4b > .block-heading,
  #block-group-template--index__1784970797085c15f003___17849707987552259a9b___17849714363494b6efe4___1784971821010c272f4b > .block-description {
    text-shadow: 0 1px 2px rgb(0 0 0 / 0.2);
  }
}

/* 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;
}
#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;
  }
}
