/* Draper Valley Golf Club: original visual layout, Bootstrap 5 grid, no CMS. */
@font-face{font-family:"Draper Serif";src:url('../fonts/merriweather-italic.woff') format('woff');font-style:italic;font-weight:900;font-display:swap}
@font-face{font-family:'Draper Sans';src:url('../fonts/pt-sans.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
:root{--olive:#849b0d;--olive-dark:#647509;--link:#596b07;--ink:#383938;--copy:#5c5d5c}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--copy);background:#fff;font-family:'Times New Roman',serif;font-size:15px;line-height:26px}img{max-width:100%;height:auto;vertical-align:middle}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline;color:#3c4d00}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #1a6390;outline-offset:4px}h1,h2,h3,h4{font-family:'Times New Roman',serif;font-weight:700;line-height:1.25;margin:0 0 24px;color:var(--ink)}h2{font-size:28px;color:var(--link)}h3{font-size:20px}p{margin:0 0 20px}address{font-style:normal;margin-bottom:20px}.container{--bs-gutter-x:30px}.row{--bs-gutter-x:30px}[hidden]{display:none!important}.skip-link{position:absolute;left:15px;top:-100px;z-index:1000;background:white;padding:10px}.skip-link:focus{top:10px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.topbar{background:var(--olive-dark);color:white;min-height:42px}.topbar .container{display:flex;justify-content:space-between;gap:20px}.topbar a{display:inline-block;color:#fff;font-size:14px;line-height:42px}.top-contact,.top-actions{display:flex;gap:60px}.top-actions{gap:0}.top-actions a{border-left:1px solid #778821;padding:0 30px}.navigation{display:flex;align-items:center;gap:30px;min-height:159px;padding-top:26px;padding-bottom:26px}.brand{flex:0 0 188px}.brand img{display:block;width:188px;height:109px}.menu{display:flex;align-items:center;gap:22px;list-style:none;padding:0;margin:40px 0 0}.menu>li{position:relative;white-space:nowrap}.menu>li>a,.menu>li>button{color:var(--ink);text-transform:uppercase;font-size:15px;font-weight:bold;line-height:26px}.menu button{border:0;background:transparent;padding:0}.menu button span{padding-left:7px}.menu a:hover,.menu button:hover,.menu a[aria-current=page]{color:var(--link)}.sub-menu{position:absolute;top:100%;left:0;min-width:220px;background:var(--ink);list-style:none;padding:8px 0;z-index:40;display:none;box-shadow:0 8px 14px #0002}.sub-menu a{display:block;color:#fff;padding:9px 18px;font-size:15px;white-space:normal}.sub-menu a:hover{background:var(--olive-dark);color:white;text-decoration:none}.has-sub.open>.sub-menu{display:block}.menu-toggle{display:none}
.hero{position:relative;background:#384326;aspect-ratio:1366/606;overflow:hidden}.hero-slide{position:absolute;inset:0}.hero-image{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:#0008}.hero-copy{position:absolute;left:15.1%;top:23%;color:#fff;max-width:68%}.hero-copy h1,.hero-copy h2{font-family:"Draper Serif",Georgia,serif;font-style:italic;font-size:clamp(30px,4.25vw,58px);font-weight:900;color:#fff;line-height:1.08;text-shadow:2px 2px 3px #000;margin:0 0 20px}.hero-copy .eyebrow{font-size:clamp(15px,1.76vw,24px);margin:0 0 8px;text-shadow:1px 1px 2px #000}.hero-description{font-family:'Draper Sans',Arial,sans-serif;font-size:16px;line-height:27px;margin-bottom:22px;text-shadow:1px 1px 3px #000}.hero-link{display:inline-block;border:1px solid #a6bb6d;border-radius:5px;background:var(--olive-dark);color:white;font-family:'Draper Sans',Arial,sans-serif;padding:10px 65px;min-height:50px}.hero-link:hover{color:#fff;background:#4b5d04}.booking-badge{position:absolute;left:52%;top:46.3%;width:230px;height:230px;border:2px solid #a0b963;border-radius:50%;padding:12px}.booking-badge>div{height:100%;border-radius:50%;background:#708629;text-align:center;padding-top:31px;color:white;font-size:24px;font-weight:bold}.booking-badge p{line-height:27px;margin:0 0 10px}.booking-badge strong{font-size:18px;color:#000}.booking-badge a{display:inline-block;padding:3px 26px;line-height:30px;background:white;color:var(--ink);border-radius:5px;font-family:'Draper Sans',Arial,sans-serif;font-size:15px;font-weight:400}.hero-controls{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);display:flex;gap:8px}.hero-controls button{background:#1b261ae6;border:1px solid #fff8;color:white;width:44px;height:44px;border-radius:50%;font-size:28px;line-height:32px}
.welcome{background:#f5f5f5;padding:80px 0 70px}.welcome h2{font-size:44px;line-height:1.2;color:var(--link);margin-bottom:30px}.welcome p{text-align:justify}.welcome p:first-of-type{font-size:17px}.video-preview{position:relative;border:0;background:#151515;display:block;width:100%;aspect-ratio:465/260;padding:0;margin-bottom:26px;color:white;overflow:hidden}.video-preview img{width:100%;height:100%;object-fit:cover;filter:brightness(.65)}.video-preview>span{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:44px}.video-preview>span span{font-size:17px;margin-top:10px}.video-player{display:block;width:100%;aspect-ratio:16/9;border:0;margin-bottom:26px}.photo-strip{display:flex;overflow-x:auto;gap:0;margin-top:25px;scroll-snap-type:x mandatory}.photo-strip a{flex:0 0 20%;scroll-snap-align:start}.photo-strip img{width:100%;aspect-ratio:238/114;object-fit:cover}.home-course{padding:80px 0 60px}.home-course h2{font-size:28px}.home-course h3{margin:28px 0 15px}.home-course .home-events img{width:100%;border:4px solid white;box-shadow:0 0 2px #777}.home-course .events-title{font-size:24px;color:var(--ink);margin-top:30px}.button{display:inline-block;background:var(--olive-dark);color:white;border:1px solid var(--olive-dark);border-radius:5px;font-family:'Draper Sans',Arial,sans-serif;padding:12px 26px;text-transform:uppercase;font-size:14px}.button:hover{background:#4c5c06;color:white}
.inner-banner>img{width:100%;height:auto;aspect-ratio:1920/290;object-fit:cover}.title-band{background:var(--olive-dark);color:white}.title-band h1{color:white;font-size:28px;line-height:36px;padding:21px 0;margin:0}.page-content{padding:80px 0 60px}.main-column{padding-right:40px}.content-photo{display:block;width:100%;margin-bottom:28px}.main-column h2{margin-bottom:28px}.sidebar h2{font-size:22px}.book-panel{padding:32px 25px;text-align:center;background:var(--olive-dark);color:#fff;margin-bottom:35px}.book-panel h2{font-size:27px;color:#fff}.book-panel p{margin-bottom:7px}.book-panel a{display:inline-block;color:#fff;margin-top:20px;border:1px solid #fff;padding:9px 18px;border-radius:4px}.contact-panel{background:#f5f5f5;padding:25px 20px;margin-bottom:35px}.contact-panel h2{font-size:18px;color:var(--ink)}.machform{display:block;width:100%;border:0;background:#fff;max-width:100%}.form-link{font-size:14px;line-height:1.4;margin-top:14px;overflow-wrap:anywhere}.quick-links{background:#f5f5f5;padding:30px}.quick-links ul{padding:0;list-style:none}.quick-links li{padding:16px 0;border-bottom:1px solid #d5d5d5}.quick-links span{float:right}.facility{display:flow-root;margin-bottom:55px;scroll-margin-top:20px}.facility img{width:55%;float:left;margin:0 25px 18px 0}.facility:nth-of-type(even) img{float:right;margin:0 0 18px 25px}.facility h3{font-size:24px;color:var(--link)}.lesson-prices{background:#f5f5f5;padding:25px;margin-top:30px}.lesson-prices h3{color:var(--link)}.rates-table{width:100%;border-collapse:collapse;margin:0 0 35px}.rates-table caption{caption-side:top;background:var(--olive-dark);color:white;padding:16px;text-align:left;font-size:20px;font-weight:bold}.rates-table th,.rates-table td{padding:14px 12px;border-bottom:1px solid #dedede}.rates-table thead{background:#f0f1e9}.rates-table tbody th{font-weight:400}.rates-table tbody tr:nth-child(even){background:#f8f8f8}.table-responsive{width:100%;overflow-x:auto}.gift-panel{background:var(--olive-dark);color:white;text-align:center;padding:25px;margin-bottom:40px}.gift-panel h3{color:#fff;font-size:24px}.contact-details{display:flex;gap:20px}.contact-details>img{width:42%;align-self:flex-start}.contact-details h2{font-size:25px}.directions{background:#f5f5f5;text-align:center;padding:45px 20px;min-height:280px}.gallery-viewer{background:#eee;max-width:100%;text-align:center;margin-top:35px}.gallery-main{width:auto;max-width:100%;height:330px;object-fit:contain}.gallery-thumbs{display:flex;overflow-x:auto;gap:18px;margin-top:24px}.gallery-thumbs button{flex:0 0 214px;border:3px solid transparent;padding:0;background:none}.gallery-thumbs button[aria-pressed=true]{border-color:var(--olive-dark)}.gallery-thumbs img{width:100%;height:130px;object-fit:cover}.text-center{text-align:center}.hole-section{padding:0 0 70px}.rating-panel{background:#f8f8f8;padding:40px 30px;margin-bottom:40px}.rating-panel h2{font-size:24px;color:var(--ink)}.hole-tabs{display:flex;flex-wrap:wrap;margin-bottom:30px;border-bottom:1px solid #ddd}.hole-tabs button{flex:1 0 45px;border:1px solid #ddd;padding:10px;background:#fff;color:var(--ink)}.hole-tabs button[aria-selected=true]{background:var(--olive-dark);color:#fff}.hole-layout{align-items:start}.hole-layout img{display:block;max-height:350px;width:auto;margin:0 auto}.hole-data{width:100%;font-size:14px;line-height:20px}.hole-data th{font-weight:400}.hole-data td,.hole-data th{padding:6px 4px}.hole-data tr:nth-child(odd){background:#eef1dd}.hole-data td{text-align:right}
.cta-band{background:var(--olive-dark);padding:50px 0;color:white}.cta{text-align:center}.cta h2{font-size:24px;margin:20px 0 12px}.cta a{color:white}.cta p{margin:0 auto;max-width:310px}.cta-icon{display:inline-flex;border:2px solid #fff8;border-radius:50%;width:70px;height:70px;align-items:center;justify-content:center;font-size:32px;color:white}.footer-main{background:var(--ink);color:#fff;padding:55px 0 35px}.footer-main h2{color:white;font-size:18px;margin:0 0 25px}.footer-main ul{padding:0;list-style:none}.footer-main li{margin:0 0 9px}.footer-main a{color:#f3f3f3}.footer-main address,.footer-main p{font-size:15px;line-height:26px}.copyright{background:#303130;color:#e3e3e3;text-align:center;padding:22px 15px;font-size:14px}
@media(min-width:1200px){.container{max-width:1200px}}
@media(max-width:1199px){.navigation{justify-content:space-between;position:relative}.menu-toggle{display:block;background:transparent;border:1px solid #ccd0bb;border-radius:4px;padding:8px 14px;color:var(--ink);font-size:20px}#primary-nav{display:none;position:absolute;top:100%;left:15px;right:15px;background:#fff;border:1px solid #ddd;z-index:60;max-height:70vh;overflow:auto}#primary-nav.open{display:block}.menu{display:block;margin:0;padding:10px 0}.menu>li>a,.menu>li>button{display:flex;width:100%;padding:12px 20px;justify-content:space-between;text-align:left}.sub-menu{position:static;box-shadow:none;margin:0 20px 10px}.top-contact,.top-actions{gap:20px}.top-actions a{padding:0 12px}.booking-badge{width:190px;height:190px;left:72%;top:43%}.booking-badge>div{padding-top:18px;font-size:20px}.booking-badge p{line-height:23px}.booking-badge a{line-height:25px}.hero-copy{left:10%;max-width:62%;top:17%}.hero-copy h1,.hero-copy h2{font-size:43px}.hero-description{font-size:15px;line-height:23px}.hero-link{padding:8px 35px;min-height:44px}.welcome h2{font-size:36px}}
@media(max-width:767px){body{font-size:16px;line-height:26px}.topbar .container{justify-content:center}.top-contact a:first-child,.top-actions a:last-child{display:none}.topbar a{font-size:13px}.top-actions a{border:0;padding:0}.topbar .container{gap:22px}.navigation{min-height:120px;padding-top:15px;padding-bottom:15px}.brand{flex-basis:150px}.brand img{width:150px;height:auto}.hero{aspect-ratio:auto;height:470px}.hero-copy{left:7%;top:64px;max-width:86%;right:7%}.hero-copy h1,.hero-copy h2{font-size:38px;line-height:1.16;margin-bottom:20px}.hero-copy .eyebrow{font-size:16px;margin-bottom:14px}.hero-description{font-size:16px;line-height:24px;max-width:95%}.hero-description br{display:none}.booking-badge{display:none}.hero-link{padding:10px 35px}.hero-controls{bottom:14px}.welcome,.home-course,.page-content{padding:45px 0}.welcome h2{font-size:34px}.welcome p{text-align:left}.video-preview{margin-top:18px}.photo-strip a{flex-basis:60%}.home-course .home-events{margin-top:40px}.main-column{padding-right:15px}.sidebar{margin-top:35px}.title-band h1{font-size:27px;padding:16px 0}.inner-banner>img{height:125px;aspect-ratio:auto}.facility img,.facility:nth-of-type(even) img{width:100%;float:none;margin:0 0 22px}.contact-details{margin-bottom:30px;flex-direction:column}.contact-details>img{width:160px}.gallery-main{height:250px}.gallery-thumbs button{flex-basis:150px}.gallery-thumbs img{height:100px}.hole-tabs button{flex-basis:11.111%}.hole-layout>div{margin-bottom:25px}.hole-data{max-width:330px;margin:auto}.rating-panel{padding:25px 20px}.cta+.cta{margin-top:35px}.footer-main .row>div{margin-bottom:20px}.rates-table td,.rates-table th{padding:10px 7px;font-size:14px}.rates-table caption{font-size:18px}.contact-panel{padding:22px 15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

@media(min-width:1200px){.topbar .container{gap:0}.top-contact,.top-actions{width:50%}.top-contact{padding-left:30px;gap:55px}}
.sub-menu a[aria-current=page]{background:var(--olive-dark);color:#fff}

main p a{text-decoration:underline;text-underline-offset:2px}
