:root { --detail-green:#0b3d2e; --detail-deep:#062a1e; --detail-gold:#b48a36; --detail-cream:#fbfaf6; --detail-ink:#17231d; --detail-muted:#66736c; --detail-line:#e3e2da; }
html { scroll-padding-top:112px; }
.course-details-page { background:var(--detail-cream); color:var(--detail-ink); }
.details-container { width:min(calc(100% - 48px),1420px); margin:0 auto; }
.details-breadcrumb { min-height:70px; display:flex; align-items:center; gap:12px; overflow:hidden; color:#66736c; font-size:13px; white-space:nowrap; }
.details-breadcrumb a { color:#345448; text-decoration:none; }
.details-breadcrumb strong { overflow:hidden; color:#1e3028; text-overflow:ellipsis; }

.course-visual-hero { position:relative; min-height:575px; overflow:hidden; background:#1c4e39; }
.course-visual-hero::after { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,25,17,.34),rgba(4,25,17,.04) 58%,rgba(4,25,17,.16)); content:""; }
.course-hero-image { position:absolute; width:100%; height:100%; object-fit:cover; }
.representative-image-placeholder { position:absolute; inset:0; display:grid; place-content:center; justify-items:center; gap:10px; background:radial-gradient(circle at 70% 30%,#78926c,transparent 26%),linear-gradient(135deg,#193e30,#66845a 55%,#b19a59); color:#fff; text-align:center; }
.representative-image-placeholder::before { font-size:62px; content:"⚑"; }
.representative-image-placeholder strong { font:500 clamp(28px,4vw,50px)/1.1 Georgia,serif; }
.representative-image-placeholder small { font-size:14px; }
.placeholder-mark { position:absolute; bottom:26px; left:28px; padding:8px 12px; border:1px solid rgba(255,255,255,.45); background:rgba(4,25,17,.6); font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.generic-image-watermark { position:absolute; z-index:2; padding:8px 11px; border-radius:3px; background:rgba(4,25,17,.68); color:#fff; font-size:12px; letter-spacing:.05em; }
.generic-image-watermark.lowerleft,.generic-image-watermark:not(.upperleft,.upperright,.lowerright) { bottom:22px; left:24px; }
.generic-image-watermark.upperleft { top:22px; left:24px; }.generic-image-watermark.upperright { top:22px; right:24px; }.generic-image-watermark.lowerright { right:24px; bottom:22px; }
.generic-image-disclosure { position:absolute; right:24px; bottom:22px; z-index:2; padding:7px 10px; border-radius:3px; background:rgba(255,255,255,.9); color:#263c32; font-size:12px; }
.hero-content-layer { position:relative; z-index:3; min-height:575px; display:flex; align-items:center; justify-content:space-between; gap:34px; padding-top:34px; padding-bottom:34px; }
.course-summary-card { width:min(455px,100%); padding:32px; border:1px solid rgba(255,255,255,.7); border-radius:12px; background:rgba(255,255,255,.96); box-shadow:0 22px 60px rgba(5,35,24,.25); backdrop-filter:blur(8px); }
.tier-badge { display:inline-flex; padding:7px 11px; border-radius:999px; background:#eef2ef; color:#496158; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tier-badge.featured { background:#f7edd2; color:#8a6220; }.tier-badge.claimed { background:#e4f2e8; color:#28603d; }.tier-badge.platinum { background:#1b4b39; color:#fff; box-shadow:inset 0 0 0 1px #c7a857; }
.course-summary-card h1 { margin:14px 0 6px; color:#153a2c; font:500 clamp(31px,3.4vw,47px)/1.05 Georgia,serif; }
.course-address { margin:0; color:#5d6963; }.tier-summary { margin:15px 0 0; color:#68746e; font-size:14px; line-height:1.55; }
.summary-facts { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin:24px 0; padding:20px 0; border-top:1px solid var(--detail-line); border-bottom:1px solid var(--detail-line); }
.summary-facts div { min-width:0; text-align:center; }.summary-facts span,.summary-facts strong,.summary-facts small { display:block; }.summary-facts span { margin-bottom:5px; color:var(--detail-green); }.summary-facts strong { overflow:hidden; color:#20372d; font-size:14px; text-overflow:ellipsis; }.summary-facts small { margin-top:3px; color:#77827d; font-size:10px; text-transform:uppercase; }
.summary-actions { display:grid; gap:10px; }.primary-detail-button,.secondary-detail-button { min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:10px 17px; border-radius:5px; font-family:Georgia,serif; text-decoration:none; }.primary-detail-button { background:var(--detail-green); color:#fff; }.primary-detail-button:hover { background:var(--detail-deep); }.secondary-detail-button { border:1px solid #9eaaa4; color:#27463a; }
.course-thumbnails { align-self:flex-end; display:flex; gap:10px; margin-bottom:8px; }.course-thumbnails button,.course-thumbnails a { position:relative; width:126px; height:88px; overflow:hidden; padding:0; border:2px solid #fff; border-radius:5px; background:rgba(5,30,20,.72); box-shadow:0 5px 20px rgba(0,0,0,.22); color:#fff; cursor:pointer; font-size:12px; text-align:center; text-decoration:none; }.course-thumbnails img { width:100%; height:100%; object-fit:cover; }.course-thumbnails button span { position:absolute; right:3px; bottom:3px; padding:3px 5px; background:rgba(4,25,17,.75); font-size:9px; text-transform:uppercase; }.course-thumbnails a { display:grid; place-content:center; }

.detail-shell { position:relative; z-index:5; margin-top:-1px; margin-bottom:70px; border:1px solid var(--detail-line); border-radius:0 0 12px 12px; background:#fff; box-shadow:0 18px 48px rgba(16,45,33,.08); }
.module-navigation { position:sticky; top:0; z-index:10; display:flex; overflow-x:auto; border-bottom:1px solid var(--detail-line); background:rgba(255,255,255,.97); scrollbar-width:thin; }.module-navigation a { min-width:145px; flex:1 0 auto; display:flex; align-items:center; justify-content:center; gap:8px; padding:19px 18px 16px; border-bottom:3px solid transparent; color:#4d6158; font:14px Georgia,serif; text-decoration:none; white-space:nowrap; }.module-navigation a:hover,.module-navigation a.active { border-bottom-color:var(--detail-green); color:var(--detail-green); }
.detail-content-grid { display:grid; grid-template-columns:minmax(0,1fr) 350px; padding:34px; }.detail-main-column { min-width:0; padding-right:34px; }.detail-sidebar { display:grid; align-content:start; gap:22px; padding-left:34px; border-left:1px solid var(--detail-line); }
.detail-module { padding:32px 0; border-bottom:1px solid var(--detail-line); scroll-margin-top:80px; }.detail-module:first-child { padding-top:4px; }.detail-module:last-child { border-bottom:0; }.overview-module { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr); gap:34px; }
.module-eyebrow { margin:0 0 7px; color:#9b762b; font-size:11px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }.detail-module h2,.detail-sidebar h2 { margin:0 0 13px; color:#143a2c; font:500 27px Georgia,serif; }.detail-module p,.detail-sidebar p { color:var(--detail-muted); line-height:1.7; }
.profile-status-panel { align-self:start; padding:22px; border:1px solid #e4e3db; border-radius:8px; background:#faf9f5; }.profile-status-panel>span { color:#92702b; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.profile-status-panel strong { display:block; margin-top:7px; color:#17392c; }.profile-status-panel p { margin-bottom:0; font-size:13px; }.profile-status-panel.platinum { border-color:#c8a956; background:#f9f5e8; }
.module-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:20px; }.module-heading a { color:var(--detail-green); font-size:13px; font-weight:700; }
.golf-detail-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }.golf-detail-grid div { padding:18px; border:1px solid #e8e9e3; border-radius:7px; background:#fafbf8; }.golf-detail-grid span,.golf-detail-grid strong { display:block; }.golf-detail-grid span { margin-bottom:8px; color:#78827d; font-size:10px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }.golf-detail-grid strong { color:#214136; font-size:14px; }
.profile-gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.profile-gallery-item { position:relative; margin:0; overflow:hidden; border-radius:7px; background:#e9eee9; }.profile-gallery-item img { width:100%; aspect-ratio:4/3; display:block; object-fit:cover; }.profile-gallery-item figcaption { position:absolute; right:0; bottom:0; left:0; padding:8px 10px; background:rgba(5,30,20,.78); color:#fff; font-size:10px; }.profile-gallery-item.generic { outline:2px solid #c5a251; outline-offset:-2px; }
.centered-module-heading { margin-bottom:23px; text-align:center; }.centered-module-heading p:last-child { margin:-4px 0 0; }.experience-module-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; }.experience-module-grid article { min-height:132px; padding:18px 14px; border:1px solid #e7e6df; border-radius:7px; background:#f8f8f5; color:#839089; text-align:center; }.experience-module-grid article.available { background:#fff; color:#173d2f; box-shadow:0 7px 20px rgba(12,51,36,.06); }.experience-module-grid span,.experience-module-grid strong,.experience-module-grid small { display:block; }.experience-module-grid span { margin-bottom:9px; font-size:23px; }.experience-module-grid strong { font-family:Georgia,serif; }.experience-module-grid small { margin-top:7px; color:#758079; font-size:11px; line-height:1.35; }
.partner-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.partner-card { min-height:155px; display:grid; grid-template-columns:105px 1fr; align-items:center; gap:18px; padding:22px; border:1px solid #e3e2da; border-radius:8px; background:#fff; color:#243b31; text-decoration:none; }.partner-card:hover { border-color:#bda35f; box-shadow:0 12px 30px rgba(20,55,40,.09); }.partner-card img { max-width:100%; max-height:92px; object-fit:contain; }.partner-card strong,.partner-card small,.partner-card b { display:block; }.partner-card strong { color:#143b2c; font:18px Georgia,serif; }.partner-card small { margin:8px 0; color:#68746e; line-height:1.45; }.partner-card b { color:#8d6a26; font-size:12px; }.partner-wordmark { min-height:74px; display:grid; place-items:center; border-radius:8px; background:#0b3d2e; color:#fff; font:21px Georgia,serif; }
.connection-card,.claim-profile-card,.contact-map-card { padding:24px; border:1px solid #e5e4dc; border-radius:8px; background:#faf9f5; scroll-margin-top:90px; }.connection-card { display:grid; gap:17px; }.connection-shield { width:50px; height:56px; display:grid; place-items:center; border:2px solid var(--detail-green); border-radius:45% 45% 55% 55%; color:var(--detail-green); font-size:24px; }.connection-card ul { display:grid; gap:15px; margin:0; padding:0; list-style:none; }.connection-card li { display:grid; gap:3px; padding-left:19px; border-left:3px solid #c9ad63; }.connection-card li strong { color:#1b3a2e; font:14px Georgia,serif; }.connection-card li span { color:#6c7771; font-size:12px; line-height:1.45; }.claim-profile-card { background:#eef5f0; }.claim-profile-card a { display:inline-flex; margin-top:4px; color:var(--detail-green); font-weight:800; }
.contact-map-card dl { margin:0; }.contact-map-card dt { margin-top:16px; color:#8a918d; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.contact-map-card dt:first-child { margin-top:0; }.contact-map-card dd { margin:4px 0 0; color:#233c31; line-height:1.5; }.contact-map-card a { color:var(--detail-green); font-weight:700; }.contact-map-card iframe { width:100%; height:230px; margin-top:20px; border:0; border-radius:6px; }.contact-map-card .map-directions { display:inline-flex; margin-top:10px; font-size:12px; }.home-footer .stay-connected>a { display:block; margin:8px 0; color:#dbe5df; text-decoration:none; }

@media (max-width:1180px) { .course-thumbnails{display:none}.hero-content-layer{justify-content:flex-start}.detail-content-grid{grid-template-columns:minmax(0,1fr) 310px}.golf-detail-grid,.experience-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-grid{grid-template-columns:1fr} }
@media (max-width:900px) { .details-container{width:min(calc(100% - 30px),1420px)}.course-visual-hero,.hero-content-layer{min-height:620px}.hero-content-layer{align-items:flex-end}.course-summary-card{width:100%}.detail-content-grid{grid-template-columns:1fr;padding:24px}.detail-main-column{padding-right:0}.detail-sidebar{padding:28px 0 0;border-top:1px solid var(--detail-line);border-left:0}.overview-module{grid-template-columns:1fr} }
@media (max-width:600px) { .details-breadcrumb{min-height:55px;font-size:11px}.course-summary-card{padding:24px 20px}.summary-facts{grid-template-columns:repeat(2,1fr)}.generic-image-disclosure{right:14px;bottom:14px;left:14px;text-align:center}.generic-image-watermark{display:none}.module-navigation a{min-width:118px;padding-right:12px;padding-left:12px}.detail-content-grid{padding:20px}.detail-module{padding:27px 0}.golf-detail-grid,.experience-module-grid,.profile-gallery-grid{grid-template-columns:1fr}.partner-card{grid-template-columns:1fr;text-align:center} }
