/* HappyHappyGolf V3.16 — readability, balance and useful desktop space */
:root{--hh-readable:16px;--hh-readable-lg:17px}

/* Shared readable text. Small caps remain compact, but never microscopic. */
.global-hub-header .watch-hub-nav small{font-size:14px!important}
.answer-card>p,.answer-card .structured-intro,.course-profile-copy p,.player-profile-copy p,
.travel-answer-copy p,.education-concepts article p{font-size:var(--hh-readable-lg)!important;line-height:1.62!important}
.answer-card .meta,.gear-rich-meta,.player-witb-rail>article>p,.player-witb-rail>article>span,
.course-review-summary aside span,.sources-section a,.demo-note{font-size:14px!important;line-height:1.5!important}
.eyebrow,.answer-kicker,.adaptive-section-head>span,.player-witb-rail>article>small,
.gear-rich-kicker,.education-concepts article>small{font-size:11px!important}
.answer-item strong{font-size:16px!important;line-height:1.42!important}
.learn-more,.gear-rich-link,.course-review-summary aside a{font-size:14px!important}
.adaptive-loading-row,.adaptive-loading-stack{grid-template-columns:1fr!important;max-width:100%!important}
.adaptive-loading-row article,.adaptive-loading-stack article{height:150px!important}

/* Gear: readable content, calmer headings and a properly padded decision area. */
.gear37-head h2{font-size:clamp(32px,3.1vw,43px)!important;line-height:1.04!important}
.gear37-head p,.gear37-intro>p{font-size:16px!important;line-height:1.6!important;color:#52645a!important}
.gear37-product p{font-size:14px!important;line-height:1.52!important;min-height:66px}
.gear37-product-actions button,.gear37-product-actions a{font-size:12px!important}
.gear37-brand-row small,.gear37-new,.gear37-swipe{font-size:10px!important}
.gear37-filter{max-width:100%;overflow-x:auto;scrollbar-width:none}.gear37-filter::-webkit-scrollbar{display:none}
.gear37-filter button{font-size:12px!important;padding:10px 14px!important}
.gear37-product-rail{box-sizing:border-box;width:100%;max-width:100%}
.gear-decision-grid .gear37-fit{margin:0!important;padding:0!important;background:#eff3eb;border-radius:25px;overflow:hidden}
.gear-decision-grid .gear37-fit-inner{box-sizing:border-box;padding:38px!important}
.gear-decision-grid .gear37-fit .gear37-kicker{display:block;margin:0 0 10px}
.gear-decision-grid .gear37-fit h2{font-size:clamp(35px,3vw,46px)!important;line-height:1.03!important}
.gear-decision-grid .gear37-fit p{font-size:15px!important;line-height:1.55!important}
.gear37-quiz{box-sizing:border-box;width:100%;margin-top:22px!important;padding:26px!important}
.gear37-question h3,.gear37-result h3{font-size:29px!important;line-height:1.08!important}
.gear37-choice-grid button{font-size:13px!important;line-height:1.3!important;padding:10px!important}
.gear-build-bag{box-sizing:border-box}.gear-decision-grid .gear-build-bag h3{font-size:clamp(35px,3vw,46px)!important}
.gear-build-bag p{font-size:16px!important;line-height:1.6!important}
.gear-explore-panel{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;padding:24px 28px;border-radius:22px;background:#edf3e9}
.gear-explore-panel>div>small{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--green)}
.gear-explore-panel h3{margin:8px 0 0;color:var(--green-dark);font:400 31px/1.05 "Libre Caslon Display",serif}
.gear-explore-links{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.gear-explore-links button{padding:11px 14px;border:1px solid #d5dfd3;border-radius:999px;background:#fff;color:var(--green-dark);font:700 13px/1.2 "DM Sans",sans-serif;text-align:left;cursor:pointer}

/* Play: balanced desktop grid, contained titles and stronger supporting copy. */
.playday-group-heading p,.playday-section-heading>p,.playday-section-heading.split>p{font-size:16px!important;line-height:1.5!important;color:#52645a!important}
.playday-course-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:280px}
.playday-course-card,.playday-course-card.featured{grid-row:auto!important;min-height:280px!important}
.playday-course-copy{top:auto!important;left:21px!important;right:42px!important;bottom:19px!important;max-height:calc(100% - 38px);overflow:hidden}
.playday-course-copy strong,.playday-course-card.featured .playday-course-copy strong{display:-webkit-box;margin:7px 0 5px;font-size:28px!important;line-height:1.02!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.playday-course-copy em,.playday-drive-card em{font-size:14px!important}
.playday-course-copy small,.playday-drive-card small,.playday-course-facts b,.playday-rating{font-size:11px!important}
.playday-course-copy q{font-size:14px!important}
.playday-group-heading h3{font-size:35px!important}
.playday-drive-card strong{font-size:25px!important}
.playday-practice-card small,.playday-learning-grid small,.play-section-kicker{font-size:11px!important}
.playday-practice-card em,.playday-learning-grid p,.playday-tools-grid small{font-size:15px!important;line-height:1.5!important}

/* Watch: useful hero navigation and stronger result/archive hierarchy. */
.watch-explore-panel{position:absolute;z-index:3;inset:auto 24px 24px 24px;padding:21px;border-radius:19px;background:rgba(250,250,245,.94);backdrop-filter:blur(9px);text-align:left;color:var(--green-dark)}
.watch-explore-panel small{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--green)}
.watch-explore-panel strong{display:block;margin:6px 0 13px;font:400 28px/1 "Libre Caslon Display",serif}
.watch-explore-links{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.watch-explore-links button{padding:9px 10px;border:1px solid #d6dfd4;border-radius:999px;background:#fff;color:var(--green-dark);font:700 12px/1.2 "DM Sans",sans-serif;cursor:pointer}
.watch-v32-section-head>span{font-size:14px!important;color:#607168!important}
.watch-v32-result-card{grid-template-columns:64px minmax(0,1fr) 150px 24px!important;padding:16px!important;gap:15px!important;border-radius:18px!important}
.watch-v32-result-mark{width:64px!important;height:64px!important;font-size:13px!important}
.watch-v32-result-copy>span,.watch-v35-result-topline span{font-size:10px!important}
.watch-v32-result-copy h3{font-size:24px!important}
.watch-v32-result-copy p{font-size:14px!important;line-height:1.45!important}
.watch-v32-winner small{font-size:10px!important}.watch-v32-winner strong{font-size:15px!important}
.watch-v32-major-card{grid-template-columns:64px minmax(0,1fr) 22px!important;padding:15px!important;border-radius:18px!important}
.watch-v32-major-mark{width:64px!important;height:64px!important;font-size:14px!important}
.watch-v32-major-copy strong{font-size:24px!important}.watch-v32-major-copy small{font-size:13px!important}
.watch-v32-upcoming-card span,.watch-v32-highlight-copy span{font-size:10px!important}
.watch-v32-upcoming-card p,.watch-v32-highlight-copy p{font-size:13px!important}
.watch-v32-highlight-copy h3{font-size:23px!important}
.major-history-heading>div>span{font-size:11px!important}.major-history-body>p{font-size:16px!important}
.major-winners b{font-size:13px!important}.major-winners strong{font-size:16px!important}.major-winners span{font-size:13px!important}
.golfers-watch-section{padding:58px 0;border-top:1px solid #dfe5de}
.golfers-watch-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:22px}
.golfers-watch-heading small{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--green)}
.golfers-watch-heading h2{margin:8px 0 0;color:var(--green-dark);font:400 43px/1 "Libre Caslon Display",serif}
.golfers-watch-heading p{max-width:430px;margin:0;color:#52645a;font-size:16px;line-height:1.55}
.golfers-watch-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,24%);gap:12px;overflow-x:auto;padding-bottom:9px;scroll-snap-type:x proximity}
.golfers-watch-rail button{min-height:170px;padding:22px;border:1px solid #dce4da;border-radius:20px;background:#fff;color:var(--green-dark);text-align:left;scroll-snap-align:start;cursor:pointer}
.golfers-watch-rail button small{font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--green)}
.golfers-watch-rail button strong{display:block;margin:27px 0 8px;font:400 27px/1.05 "Libre Caslon Display",serif}
.golfers-watch-rail button span{font-size:14px;line-height:1.45;color:#617168}

@media(max-width:900px){.gear-explore-panel{display:block}.gear-explore-links{margin-top:18px}.playday-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.golfers-watch-rail{grid-auto-columns:42%}}
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  .global-hub-header .watch-hub-nav small{font-size:12px!important}
  .answer-card>p,.answer-card .structured-intro,.course-profile-copy p,.player-profile-copy p,.travel-answer-copy p{font-size:17px!important}
  .gear37-head h2{font-size:31px!important}.gear37-product p{font-size:14px!important}.gear-decision-grid .gear37-fit-inner{padding:25px!important}.gear37-quiz{padding:21px!important}.gear-explore-links{grid-template-columns:1fr 1fr}
  .playday-course-grid{grid-template-columns:1fr!important;grid-auto-rows:auto}.playday-course-card,.playday-course-card.featured{min-height:270px!important}.playday-group-heading p{font-size:15px!important}.playday-group-heading h3{font-size:30px!important}
  .watch-explore-panel{inset:auto 15px 15px}.watch-explore-panel strong{font-size:24px}.watch-v32-result-card{grid-template-columns:52px minmax(0,1fr) 20px!important}.watch-v32-winner{grid-column:2;border-left:0!important;padding-left:0!important}.watch-v32-result-card>i{grid-column:3;grid-row:1/3}.watch-v32-results,.watch-v32-majors{grid-template-columns:1fr!important}.golfers-watch-heading{display:block}.golfers-watch-heading p{margin-top:12px}.golfers-watch-heading h2{font-size:36px}.golfers-watch-rail{grid-auto-columns:78%}
}

/* =========================================================
   V3.21 — FOCUSED MOBILE UTILITIES + STICKY NAV
   Desktop is intentionally untouched.
   ========================================================= */
.hh-mobile-utility-stack,
.hh-ios-install-sheet,
.hh-mobile-utility-toast{display:none}

@media(max-width:760px){
  .global-hub-header{
    position:sticky!important;
    top:0!important;
    z-index:1400!important;
    transition:min-height .22s ease,padding .22s ease,background-color .22s ease,box-shadow .22s ease!important;
    transform:translateZ(0);
  }
  .global-hub-header.hh-mobile-nav-scrolled{
    position:fixed!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    background:rgba(251,250,246,.88)!important;
    -webkit-backdrop-filter:blur(14px)!important;
    backdrop-filter:blur(14px)!important;
    border-bottom-color:rgba(7,86,47,.09)!important;
    box-shadow:0 4px 16px rgba(18,52,34,.055)!important;
  }
  .global-hub-header.hh-mobile-nav-scrolled:not(.home-minimal-header){
    min-height:78px!important;
    padding-top:6px!important;
    padding-bottom:6px!important;
  }

  .hh-mobile-utility-stack{
    position:fixed;
    right:max(14px,env(safe-area-inset-right));
    bottom:calc(18px + env(safe-area-inset-bottom));
    z-index:1310;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
    pointer-events:none;
  }
  body.hh-has-assistant .hh-mobile-utility-stack{
    bottom:calc(114px + env(safe-area-inset-bottom));
  }
  .hh-mobile-utility-button{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid rgba(7,86,47,.10);
    border-radius:50%;
    background:rgba(255,255,255,.72);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
    box-shadow:0 6px 20px rgba(0,0,0,.08);
    cursor:pointer;
    pointer-events:auto;
  }
  .hh-mobile-utility-button[hidden]{display:none!important}
  .hh-mobile-utility-button img{
    width:27px;
    height:27px;
    display:block;
  }
  .hh-mobile-utility-button:focus-visible{
    outline:2px solid var(--green,#07562f);
    outline-offset:3px;
  }

  .hh-ios-install-sheet{
    position:fixed;
    right:14px;
    bottom:calc(166px + env(safe-area-inset-bottom));
    z-index:1420;
    width:min(330px,calc(100vw - 28px));
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    gap:12px;
    padding:18px 42px 17px 17px;
    border:1px solid rgba(7,86,47,.12);
    border-radius:20px;
    background:rgba(255,255,255,.92);
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
    box-shadow:0 14px 34px rgba(15,48,31,.14);
    color:var(--ink,#163e2a);
  }
  .hh-ios-install-sheet>img{width:34px;height:34px;margin-top:2px}
  .hh-ios-install-sheet strong{display:block;font:600 16px/1.25 "DM Sans",sans-serif}
  .hh-ios-install-sheet ol{margin:8px 0 0;padding-left:20px;font:400 14px/1.65 "DM Sans",sans-serif}
  .hh-install-close{position:absolute;right:10px;top:8px;width:30px;height:30px;border:0;background:transparent;color:var(--green,#07562f);font:400 25px/1 sans-serif;cursor:pointer}

  .hh-mobile-utility-toast{
    position:fixed;
    left:50%;
    bottom:calc(104px + env(safe-area-inset-bottom));
    z-index:1450;
    display:block;
    padding:10px 15px;
    border-radius:999px;
    background:#07562f;
    color:#fff;
    font:600 13px/1 "DM Sans",sans-serif;
    opacity:0;
    pointer-events:none;
    transform:translate(-50%,8px);
    transition:opacity .18s ease,transform .18s ease;
  }
  .hh-mobile-utility-toast.is-visible{opacity:1;transform:translate(-50%,0)}
}

@media(max-width:390px){
  .hh-mobile-utility-button{width:46px;height:46px}
  .hh-mobile-utility-button img{width:26px;height:26px}
}

@media(prefers-reduced-motion:reduce){
  .global-hub-header,.hh-mobile-utility-toast{transition:none!important}
}

/* V3.20 — definitive navigation, Watch density, Travel flow and media fallbacks */
.watch-hub-nav a{display:grid!important;grid-template-rows:48px auto!important;align-items:center!important;justify-items:center!important;min-width:88px!important;gap:4px!important}
.watch-hub-nav .hub-nav-icon{display:grid!important;place-items:center!important;width:48px!important;height:48px!important;margin:0!important;border-radius:50%!important;background:transparent!important}
.watch-hub-nav a.active .hub-nav-icon{background:#e8f0e5!important}
.watch-hub-nav .hub-nav-icon .hh-nav-icon{display:block!important;width:30px!important;height:30px!important;margin:0!important;object-fit:contain!important}
.watch-hub-nav a.active:before,.watch-hub-nav a.active:after{display:none!important}
.gear37-avatar{overflow:hidden}.gear37-avatar img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 18%}
.watch-v32-result-mark.has-logo{padding:8px!important;background:#f6f8f4!important}.watch-v32-result-mark.has-logo img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}
.watch-v32-main{box-sizing:border-box!important;width:min(calc(100% - 48px),1230px)!important;max-width:1230px!important;margin-left:auto!important;margin-right:auto!important;overflow:hidden}
.watch-v312-opening{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:22px!important;align-items:stretch!important}
.watch-v312-opening>.watch-v32-section{min-width:0!important;padding:30px 0!important}
.watch-v312-opening .watch-v32-feature-card{display:grid!important;grid-template-rows:220px auto!important;height:100%!important;min-height:0!important;overflow:hidden!important}
.watch-v312-opening .watch-v32-feature-image{height:220px!important;min-height:220px!important}
.watch-v312-opening .watch-v32-feature-body{padding:22px!important}.watch-v312-opening .watch-v32-feature-body h3{font-size:31px!important}
.watch-v312-opening .watch-v32-list{height:100%!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.watch-v312-opening .watch-v32-row{height:auto!important;min-height:0!important;overflow:hidden!important}

/* A normal-flow Travel mosaic: no negative positioning and no overlapping cards. */
.travel-destination-grid{align-items:stretch!important}.travel-destination-card{box-sizing:border-box!important;overflow:hidden!important}
@media(max-width:760px){
 .watch-hub-nav a{min-width:64px!important;grid-template-rows:42px auto!important}.watch-hub-nav .hub-nav-icon{width:42px!important;height:42px!important}.watch-hub-nav .hub-nav-icon .hh-nav-icon{width:27px!important;height:27px!important}
 .watch-v32-main{width:100%!important;overflow:visible!important}.watch-v312-opening{display:block!important}.watch-v312-opening>.watch-v32-section{padding:24px 0!important}.watch-v312-opening .watch-v32-feature-card{display:block!important}.watch-v312-opening .watch-v32-feature-image{height:210px!important;min-height:210px!important}
 .travel-destination-grid{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-auto-flow:row!important;grid-auto-rows:210px!important;gap:12px!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important}
 .travel-destination-card,.travel-destination-card:nth-child(n){position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;grid-column:auto!important;grid-row:auto!important;width:100%!important;height:210px!important;min-height:210px!important;margin:0!important;transform:none!important}
 .travel-destination-card.wide,.travel-destination-card:first-child{grid-column:1/-1!important;width:100%!important;height:245px!important;min-height:245px!important}
 .travel-destination-card.mobile-extra{display:none!important}.travel-destination-grid.mobile-expanded .travel-destination-card.mobile-extra{display:block!important}
 .travel-destination-more{position:relative!important;z-index:1!important;clear:both!important;margin:20px auto 112px!important}
}

/* Known/category product art always occupies the media area; missing art stays compact. */
.gear-result-product-stage img,.gear37-media img{display:block;width:100%;height:100%;object-fit:contain}
.gear-result-product-stage.image-missing,.gear37-media.image-missing{min-height:72px!important;max-height:90px!important;height:auto!important}
.gear-result-product-stage.image-missing .gear-media-fallback,.gear37-media.image-missing .gear37-media-status{font-size:12px!important;padding:20px!important}

/* V3.18 — stable states, player library, Travel discovery and tour identity */
.playday-location-card.playday-location-hero.is-loading{display:block!important;grid-template-columns:none!important;min-height:0!important;padding:0!important;overflow:hidden}
.playday-location-card.is-loading .playday-locating{display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;width:100%!important;min-height:116px!important;margin:0!important;padding:24px!important}
.playday-location-card.is-loading .playday-locating>strong,.playday-location-card.is-loading .playday-locating>small{width:auto!important;max-width:none!important;word-break:normal!important;overflow-wrap:normal!important}
.playday-location-card.is-loading .playday-locating>strong{font-size:28px!important}.playday-location-card.is-loading .playday-locating>small{font-size:14px!important}
.playday-tee-form input[type="date"]{-webkit-appearance:auto!important;appearance:auto!important;box-sizing:border-box!important;width:100%!important;height:64px!important;min-height:64px!important;max-height:64px!important;margin:0!important;padding:0 18px!important;line-height:normal!important;text-align:left!important;background:#fff!important}
.playday-tee-form input[type="date"]::-webkit-date-and-time-value{display:flex!important;align-items:center!important;height:62px!important;margin:0!important;padding:0!important;text-align:left!important}
.playday-tee-form input[type="date"]::-webkit-calendar-picker-indicator{margin-left:auto!important}

.player-portrait.has-photo{min-height:0!important}.player-portrait.has-photo img{display:block;width:100%;height:100%;min-height:300px;object-fit:cover;object-position:center 20%}
.player-portrait:not(.has-photo){min-height:190px!important;max-height:220px!important}.player-portrait:not(.has-photo) svg{width:58px!important;height:58px!important}.player-portrait:not(.has-photo) small{font-size:11px!important}

.watch-v32-row-image.has-tour-mark{display:grid;place-items:center;background-image:none!important;background:#f5f7f3!important}
.watch-tour-logo{display:block;width:78%!important;height:72%!important;object-fit:contain!important;border-radius:0!important}

.travel-course-tabs{display:flex;gap:9px;overflow-x:auto;margin:0 0 20px;padding-bottom:3px;scrollbar-width:none}.travel-course-tabs::-webkit-scrollbar{display:none}.travel-course-tabs button{flex:0 0 auto;padding:12px 17px;border:1px solid #d7dfd5;border-radius:999px;background:#fff;color:var(--green-dark);font:700 13px/1 "DM Sans",sans-serif;cursor:pointer}.travel-course-tabs button.active{background:var(--green);border-color:var(--green);color:#fff}
.travel-course-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(310px,31%);gap:14px;overflow-x:auto;padding:2px 0 12px;scroll-snap-type:x proximity}
.travel-course-card{position:relative;min-height:390px;padding:0;border:0;border-radius:23px;overflow:hidden;background:#dfe8dc;color:#fff;text-align:left;scroll-snap-align:start;cursor:pointer}
.travel-course-photo,.travel-course-photo img,.travel-course-shade{position:absolute;inset:0;width:100%;height:100%}.travel-course-photo img{object-fit:cover}.travel-course-shade{background:linear-gradient(to top,rgba(5,38,23,.9),rgba(5,38,23,.02) 72%)}
.travel-course-copy{position:absolute;z-index:2;left:21px;right:38px;bottom:20px}.travel-course-copy small{font:700 10px/1.3 "DM Sans",sans-serif;letter-spacing:.09em;text-transform:uppercase}.travel-course-copy strong{display:block;margin:8px 0 4px;font:400 29px/1.02 "Libre Caslon Display",serif}.travel-course-copy em{display:block;font:500 13px/1.35 "DM Sans",sans-serif;font-style:normal}.travel-course-copy p{display:-webkit-box;margin:12px 0 0;color:rgba(255,255,255,.9);font:400 14px/1.45 "DM Sans",sans-serif;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.travel-course-card>i{position:absolute;z-index:3;right:17px;top:17px;width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.93);color:var(--green);font-style:normal}

/* Prevent every legacy Travel grid rule from creating mobile overlap. */
@media(max-width:760px){
 .playday-location-card.playday-location-hero.is-loading{padding:0!important}.playday-location-card.is-loading .playday-locating{grid-template-columns:40px minmax(0,1fr)!important;min-height:110px!important;padding:21px 19px!important;gap:4px 14px!important}.playday-location-card.is-loading .playday-locating>strong{font-size:25px!important}.playday-location-card.is-loading .playday-locating>small{font-size:13.5px!important;line-height:1.42!important}
 .player-profile-hero{display:block!important}.player-portrait.has-photo img{min-height:280px;max-height:340px}.player-portrait:not(.has-photo){min-height:150px!important;max-height:170px!important}
 .travel-now-grid{display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:none!important;gap:12px!important}.travel-now-card,.travel-now-card.feature,.travel-now-card:last-child{position:relative!important;inset:auto!important;grid-column:auto!important;grid-row:auto!important;width:100%!important;min-height:190px!important;margin:0!important;transform:none!important}.travel-now-card.feature{grid-column:1/-1!important;min-height:245px!important}.travel-now-card:last-child{grid-column:1/-1!important;min-height:220px!important}.travel-now-photo,.travel-now-photo img,.travel-now-shade{inset:0!important}
 .travel-course-rail{grid-auto-columns:84%;gap:12px}.travel-course-card{min-height:365px}.travel-course-copy strong{font-size:27px}
}
@media(max-width:420px){.travel-now-grid{grid-template-columns:1fr!important}.travel-now-card,.travel-now-card.feature,.travel-now-card:last-child{grid-column:auto!important;min-height:225px!important}}

/* =========================================================
   V3.22 — RELIABILITY, READABILITY + MOBILE REFINEMENT
   ========================================================= */
:root{
  --hh-body-copy:#4f6056;
  --hh-secondary-copy:#627168;
  --hh-placeholder:#66736b;
}
body,p,.lede,.answer-card>p,.player-profile-copy p,.course-profile-copy p,
.travel-answer-copy p,.gear37-head p,.playday-section-heading p,
.watch-v32-result-copy p{color:var(--hh-body-copy)}
.meta,small,.demo-note,.sources-section,.playday-course-copy em,
.watch-v32-section-head>span,.gear37-product p,.legal-section p{color:var(--hh-secondary-copy)}
input::placeholder,textarea::placeholder{color:var(--hh-placeholder)!important;opacity:1!important}

/* A deterministic Nearby state. This final rule intentionally defeats the
   accumulated legacy flex/width rules that caused the one-word column. */
.playday-location-card.playday-location-hero.is-loading{
  display:block!important;min-height:0!important;width:100%!important;
  padding:0!important;overflow:hidden!important;
}
.playday-location-card.is-loading .playday-locating{
  box-sizing:border-box!important;display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;align-items:center!important;
  gap:14px!important;width:100%!important;min-width:0!important;
  min-height:104px!important;padding:21px 23px!important;text-align:left!important;
}
.playday-location-card.is-loading .playday-locating>span{
  grid-row:auto!important;width:34px!important;height:34px!important;margin:0!important;
}
.playday-location-card.is-loading .playday-locating>div{display:block!important;min-width:0!important;width:auto!important}
.playday-location-card.is-loading .playday-locating strong,
.playday-location-card.is-loading .playday-locating small{
  display:block!important;width:auto!important;max-width:none!important;margin:0!important;
  white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;
}
.playday-location-card.is-loading .playday-locating strong{font-size:25px!important;line-height:1.08!important}
.playday-location-card.is-loading .playday-locating small{margin-top:5px!important;font-size:14px!important;line-height:1.42!important}
.playday-video-empty{box-sizing:border-box;width:100%;padding:28px;border:1px solid #d9e1d7;border-radius:22px;background:#fff;color:var(--hh-body-copy);font:500 15px/1.55 "DM Sans",sans-serif}

@media(max-width:760px){
  .global-hub-header.hh-mobile-nav-scrolled{
    background:rgba(250,249,245,.76)!important;
    -webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important;
    border-bottom:1px solid rgba(7,86,47,.07)!important;
    box-shadow:0 3px 14px rgba(0,0,0,.035)!important;
  }
  .global-hub-header.hh-mobile-nav-scrolled .watch-hub-nav,
  .global-hub-header.hh-mobile-nav-scrolled .watch-mini-brand,
  .global-hub-header.hh-mobile-nav-scrolled .watch-menu{background:transparent!important}
  .hh-ios-install-sheet{bottom:calc(160px + env(safe-area-inset-bottom));padding-top:17px;padding-bottom:15px}
  .hh-ios-install-sheet ol{margin-top:7px;line-height:1.5}
  .hh-ios-install-sheet .hh-install-scroll{color:var(--green,#07562f);font-weight:800}
  .hh-ios-install-sheet div>small{display:block;margin-top:8px;color:var(--hh-secondary-copy);font:500 11.5px/1.4 "DM Sans",sans-serif}
  .playday-location-card.is-loading .playday-locating{grid-template-columns:38px minmax(0,1fr)!important;min-height:96px!important;padding:19px!important;gap:12px!important}
  .playday-location-card.is-loading .playday-locating>span{width:31px!important;height:31px!important}
  .playday-location-card.is-loading .playday-locating strong{font-size:23px!important}
  .playday-location-card.is-loading .playday-locating small{font-size:14px!important}
}

/* V3.19 consolidated visual-density and identity pass */
.watch-hub-nav .hh-nav-icon{display:block!important;width:32px!important;height:32px!important;object-fit:contain!important}.pathway .icon-circle img{display:block;width:100%!important;height:100%!important;object-fit:contain}
.watch-tour-logo{width:72%!important;height:76%!important;padding:8px;box-sizing:border-box}
.watch-v32-major-mark.has-logo{padding:8px;background:#f7f8f5!important}.watch-v32-major-mark.has-logo img{display:block;width:100%;height:100%;object-fit:contain}
.golfers-watch-section{padding:42px 0}.golfers-watch-rail{grid-auto-columns:minmax(260px,27%)}.golfers-watch-rail button{display:grid;grid-template-columns:66px minmax(0,1fr);align-items:center;gap:15px;min-height:132px;padding:16px}.golfer-watch-photo{display:grid;place-items:center;width:66px;height:82px;overflow:hidden;border-radius:14px;background:#edf3ea}.golfer-watch-photo img{width:100%;height:100%;object-fit:cover;object-position:center 18%}.golfer-watch-photo.missing:after{content:"HH";font:400 21px/1 "Libre Caslon Display",serif;color:var(--green)}.golfer-watch-copy{min-width:0}.golfers-watch-rail button strong{margin:8px 0 6px;font-size:23px}.golfers-watch-rail button span span{display:block;font-size:13px}
.travel-builder-section{padding:42px 0!important}.travel-builder-intro{margin-bottom:19px!important}.travel-builder-intro h2{font-size:42px!important;margin:5px 0!important}.travel-builder-card{max-width:850px!important;min-height:0!important;padding:25px 30px!important}.travel-step{padding-top:19px!important}.travel-step h3{font-size:32px!important;margin:8px 0 19px!important}.travel-step input{min-height:58px!important}.travel-next{margin-top:14px!important}.travel-destination-more{display:none;margin:18px auto 0;padding:13px 22px;border:1px solid #d5ded3;border-radius:999px;background:#fff;color:var(--green);font:700 14px/1 "DM Sans",sans-serif}
@media(max-width:760px){.golfers-watch-rail{grid-auto-columns:84%}.golfers-watch-rail button{grid-template-columns:64px minmax(0,1fr)}.travel-destination-card.mobile-extra{display:none!important}.travel-destination-grid.mobile-expanded .travel-destination-card.mobile-extra{display:block!important}.travel-destination-more{display:block}.travel-builder-section{padding:28px 16px!important}.travel-builder-card{padding:22px!important}.travel-builder-intro h2{font-size:36px!important}}

/* V3.17 — repaired layout, navigation and progressive Play experiences */
.watch-hub-nav a>svg,.watch-hub-nav a>span>svg{width:31px!important;height:31px!important;display:block;color:currentColor}
.floating-assistant-logo,.answer-followup-logo,.playday-assistant-logo{border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important}
.floating-assistant-logo img,.answer-followup-logo img,.playday-assistant-logo img{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}

/* The Find My Gear block owns its padding at every breakpoint. */
.gear-decision-grid{gap:24px!important;align-items:stretch}
.gear-decision-grid>.gear37-fit{box-sizing:border-box!important;margin:0!important;padding:34px!important;overflow:visible!important}
.gear-decision-grid>.gear37-fit>.gear37-head{margin:0 0 20px!important;padding:0!important}
.gear-decision-grid>.gear37-fit>.gear37-head h2{max-width:620px;font-size:clamp(31px,2.45vw,40px)!important;line-height:1.05!important}
.gear-decision-grid>.gear37-fit>.gear37-head p{margin-top:11px!important}
.gear-decision-grid>.gear37-fit>.gear37-quiz{margin:0!important;padding:25px!important;border-radius:22px!important}
.gear-decision-grid .gear37-question h3,.gear-decision-grid .gear37-result h3{font-size:clamp(25px,2vw,31px)!important}

/* Play hero: never clip the headline or force the location card off canvas. */
.playday-hero{box-sizing:border-box!important;display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr)!important;gap:clamp(38px,6vw,90px)!important;align-items:center!important;overflow:visible!important}
.playday-hero-copy,.playday-hero-side{min-width:0!important;width:auto!important;max-width:none!important;transform:none!important}
.playday-hero h1{max-width:100%!important;font-size:clamp(55px,5.2vw,82px)!important;line-height:.96!important;white-space:normal!important}
.playday-location-card{box-sizing:border-box!important;width:100%!important;max-width:100%!important}
.playday-location-card>*{min-width:0}
.playday-locating{box-sizing:border-box!important;display:grid!important;grid-template-columns:52px minmax(0,1fr)!important;gap:4px 20px!important;align-items:center!important;width:100%!important;padding:27px!important;text-align:left!important}
.playday-locating>span{grid-row:1/3;width:43px!important;height:43px!important;align-self:center}
.playday-locating>strong{font-size:31px!important;line-height:1.05!important}
.playday-locating>small{font-size:15px!important;line-height:1.45!important}
.playday-location-error{display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:10px 20px!important;align-items:center!important;text-align:left!important;padding:28px!important}
.playday-location-error .playday-location-art{grid-row:1/3;width:58px!important;height:58px!important;margin:0!important}
.playday-location-error h3{margin:0!important;font-size:31px!important;line-height:1.05!important}
.playday-location-error p{margin:0!important;font-size:16px!important}.playday-location-error button,.playday-location-error>small{grid-column:1/-1!important;width:100%!important}
.playday-location-error>small{font-size:14px!important;line-height:1.45!important}
.playday-section-loading{box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;min-height:92px;padding:20px;border:1px solid #dbe4d9;border-radius:18px;background:#f7f9f5;color:var(--green-dark)}
.playday-section-loading span{width:21px;height:21px;border:2px solid #cbd9ca;border-top-color:var(--green);border-radius:50%;animation:hhspin .8s linear infinite}.playday-section-loading strong{font-size:14px}@keyframes hhspin{to{transform:rotate(360deg)}}

/* Mobile-safe native controls, especially Safari's date field. */
.playday-tee-form label,.tee-location-field{box-sizing:border-box!important;min-width:0!important;width:100%!important;max-width:100%!important}
.playday-tee-form input,.playday-tee-form select{box-sizing:border-box!important;display:block!important;min-width:0!important;width:100%!important;max-width:100%!important;-webkit-appearance:none!important;appearance:none!important}
.playday-tee-form input[type=date]{min-height:64px!important;text-align:left!important;padding:0 18px!important;font-size:18px!important}
.playday-tee-form input[type=date]::-webkit-date-and-time-value{text-align:left!important;margin:0!important}

/* A richer, consistent tutorial rail with enough room for useful labels. */
.playday-video-filters{overflow-x:auto!important;scrollbar-width:none!important;padding-bottom:4px}.playday-video-filters::-webkit-scrollbar{display:none}
.playday-video-filters button{flex:0 0 auto;font-size:14px!important;padding:12px 18px!important}
.playday-video-rail{grid-auto-columns:minmax(330px,40%)!important;gap:18px!important}
.playday-video-card{padding:15px!important;border:1px solid #d9e1d7!important;border-radius:24px!important;background:#fff!important}
.playday-video-thumb{aspect-ratio:16/9!important;border-radius:17px!important;overflow:hidden!important}.playday-video-thumb img{width:100%;height:100%;object-fit:cover}
.playday-video-thumb>b{position:absolute;right:12px;bottom:12px;padding:5px 8px;border-radius:999px;background:rgba(5,70,40,.82);color:#fff;font:700 10px/1 "DM Sans",sans-serif}
.playday-video-copy{padding:17px 6px 7px!important}.playday-video-copy>small{font-size:11px!important}.playday-video-copy h3{font-size:27px!important;line-height:1.04!important}.playday-video-copy p{font-size:15px!important;line-height:1.48!important}

@media(max-width:1120px){.playday-hero{grid-template-columns:1fr!important;gap:28px!important}.playday-hero h1{font-size:clamp(52px,8vw,72px)!important}.playday-hero-side{max-width:760px!important}}
@media(max-width:760px){
 .watch-hub-nav a>svg,.watch-hub-nav a>span>svg{width:27px!important;height:27px!important}
 .gear-decision-grid{display:block!important}.gear-decision-grid>.gear37-fit{padding:24px 20px!important;border-radius:24px!important}.gear-decision-grid>.gear37-fit>.gear37-head h2{font-size:31px!important}.gear-decision-grid>.gear37-fit>.gear37-quiz{padding:22px!important}.gear-decision-grid .gear37-question h3{font-size:27px!important}
 .playday-hero{display:block!important;padding-left:25px!important;padding-right:25px!important}.playday-hero h1{font-size:47px!important;line-height:.98!important}.playday-hero-side{margin-top:26px!important}
 .playday-locating{grid-template-columns:42px minmax(0,1fr)!important;padding:23px 20px!important;gap:4px 15px!important}.playday-locating>span{width:35px!important;height:35px!important}.playday-locating>strong{font-size:27px!important}.playday-locating>small{font-size:14px!important}
 .playday-location-error{grid-template-columns:52px minmax(0,1fr)!important;padding:23px 20px!important;gap:8px 15px!important}.playday-location-error h3{font-size:27px!important}.playday-location-error .playday-location-art{width:50px!important;height:50px!important}
 .playday-video-rail{grid-auto-columns:88%!important}.playday-video-copy h3{font-size:25px!important}
}

/* V3.22 final cascade guard: keep the Nearby loader compact at every size. */
.playday-location-card.playday-location-hero.is-loading{display:block!important;min-height:0!important;padding:0!important;overflow:hidden!important}
.playday-location-card.is-loading .playday-locating{box-sizing:border-box!important;display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;align-items:center!important;gap:14px!important;width:100%!important;min-width:0!important;min-height:104px!important;padding:21px 23px!important;text-align:left!important}
.playday-location-card.is-loading .playday-locating>span{grid-row:auto!important;width:34px!important;height:34px!important;margin:0!important}
.playday-location-card.is-loading .playday-locating>div{display:block!important;min-width:0!important;width:auto!important}
.playday-location-card.is-loading .playday-locating strong,.playday-location-card.is-loading .playday-locating small{display:block!important;width:auto!important;max-width:none!important;margin:0!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}
.playday-location-card.is-loading .playday-locating strong{font-size:25px!important;line-height:1.08!important}.playday-location-card.is-loading .playday-locating small{margin-top:5px!important;font-size:14px!important;line-height:1.42!important}
@media(max-width:760px){.playday-location-card.is-loading .playday-locating{grid-template-columns:38px minmax(0,1fr)!important;min-height:96px!important;padding:19px!important;gap:12px!important}.playday-location-card.is-loading .playday-locating>span{width:31px!important;height:31px!important}.playday-location-card.is-loading .playday-locating strong{font-size:23px!important}.playday-location-card.is-loading .playday-locating small{font-size:14px!important}}

/* Functional placeholders must remain readable on cream, white and glass surfaces. */
input::placeholder,textarea::placeholder,
.query-input::placeholder,.followup-input::placeholder,
.floating-ask-input::placeholder,.playday-tee-location::placeholder{
 color:#66736b!important;
 opacity:1!important;
}

/* Final tonal guard after legacy component layers. Headline greens are untouched. */
body{color:#4f6056}
p,.lede,.answer-card>p,.player-profile-copy p,.course-profile-copy p,
.travel-answer-copy p,.gear37-head p,.playday-section-heading p,
.watch-v32-result-copy p{color:#4f6056!important}
.meta,.demo-note,.playday-course-copy em,.watch-v32-section-head>span,
.gear37-product p,.legal-section p{color:#627168!important}
