:root{--green:#076652;--ivory:#f4f2e9;--gold:#de9d15}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--green);font:16px/1.7 Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #de9d15;outline-offset:5px}header{height:100px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;background:var(--green);color:white}header img,footer img{height:auto}nav{display:flex;gap:34px;align-items:center;font-size:14px}.outline{border:1px solid #ffffff70;padding:10px 24px}.hero{min-height:680px;position:relative;color:white;background:linear-gradient(90deg,#082d24ed,#082d2470 65%,#082d2420),url('../images/plymouth-golf-course.webp') center/cover}.hero-content{padding:80px 7% 120px}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:bold;margin:0 0 25px}.hero .eyebrow{color:var(--gold)}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-weight:400;line-height:1.08;letter-spacing:-2px;margin:0 0 30px}h1{font-size:clamp(55px,6.5vw,94px)}h1 em{color:var(--gold)}.intro{max-width:490px;color:#e3e9e1;font-size:17px}.actions{display:flex;gap:32px;align-items:center;margin-top:34px;font-size:14px}.button{display:inline-block;background:var(--gold);color:var(--green);padding:17px 26px;font-weight:bold;font-size:14px}.button:hover{background:#edb53d}.hero-bottom{position:absolute;bottom:0;left:7%;right:7%;display:flex;justify-content:space-between;border-top:1px solid #ffffff50;padding:22px 0;font-size:10px;letter-spacing:1.5px}.strip{display:flex;justify-content:space-between;padding:25px 7%;border-bottom:1px solid #07665230;font-size:13px}.strip span:first-child{color:#66746b}.section{padding:100px 7%}h2{font-size:clamp(38px,4vw,59px)}.about{display:grid;grid-template-columns:1fr 2.2fr;gap:60px}.about>.eyebrow{padding-top:10px}.about div>p{max-width:650px;color:#5a6961}.link{display:inline-block;border-bottom:1px solid;padding-bottom:8px;margin-top:15px;font-size:14px}.services{background:#e9ece2}.grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:45px;border-top:1px solid #07665240;border-left:1px solid #07665240}.grid>a{padding:35px;border-right:1px solid #07665240;border-bottom:1px solid #07665240;display:flex;flex-direction:column}.grid>a:hover{background:#f4f5ed}.grid small{font-size:10px;letter-spacing:1.8px;color:#637267;margin-bottom:35px}h3{font-size:29px;letter-spacing:-.6px;margin-bottom:15px}.grid p{font-size:14px;color:#5a6961;margin:0 0 30px;max-width:290px}.grid b{font-size:12px;margin-top:auto}.approach{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:var(--ivory)}.approach>img{width:100%;height:100%;min-height:510px;object-fit:cover}.approach>div{padding:80px 12%}.approach .eyebrow{color:var(--gold)}.approach p:not(.eyebrow){color:#c8d2cb}.contact{text-align:center}.contact h2{font-size:clamp(46px,5vw,74px)}.contact .button{background:var(--green);color:white}footer{padding:50px 7% 20px;border-top:1px solid #07665230}footer>div{display:flex;justify-content:space-between;gap:30px;align-items:center}footer p{font-size:14px;color:#65746b}footer a{font-size:13px}.legal{border-top:1px solid #07665230;padding-top:20px;margin-top:40px;font-size:11px;color:#65746b}.legal a{font-size:11px}@media(max-width:850px){header{height:auto;min-height:100px;flex-wrap:wrap;gap:15px;padding:20px 6%}nav{gap:20px;flex-wrap:wrap;font-size:12px}header img{width:175px}.about{grid-template-columns:1fr;gap:10px}.section{padding:65px 7%}.grid{grid-template-columns:repeat(2,1fr)}.approach{grid-template-columns:1fr}.approach>img{height:320px;min-height:0}.approach>div{padding:55px 7%}}@media(max-width:520px){h1{font-size:55px}.hero-content{padding-top:55px}.hero{min-height:710px}.actions{flex-direction:column;align-items:flex-start;gap:22px}.hero-bottom span:last-child{display:none}.strip{flex-wrap:wrap;gap:15px}.strip span:first-child{width:100%}.grid{grid-template-columns:1fr}.grid>a{padding:28px}footer>div{flex-wrap:wrap}nav{gap:15px}.outline{padding:6px 12px}.intro{font-size:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Brand colours and native, keyboard-accessible service navigation. */
nav{color:var(--gold)}
h2,h3{color:var(--gold)}
.outline{border-color:var(--gold)}
nav>a:hover,nav>a:focus-visible{color:white}
.services-menu{position:relative}
.services-menu summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:9px;padding:12px 0}
.services-menu summary::-webkit-details-marker{display:none}
.services-menu summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.services-menu[open] summary>span{transform:rotate(180deg)}
.services-dropdown{position:absolute;top:100%;left:-20px;z-index:20;min-width:245px;padding:10px;background:var(--green);border:1px solid var(--gold);box-shadow:0 15px 35px #0003}
.services-dropdown a{display:block;padding:11px 13px;color:var(--gold);font-size:14px}
.services-dropdown a:hover,.services-dropdown a:focus-visible{background:var(--gold);color:#16392e}
.button{color:#16392e}
@media(max-width:520px){.services-dropdown{left:0;min-width:220px;max-width:85vw}}

/* Dark navigation background; the main brand green stays unchanged. */
header{position:relative;z-index:30;background:#103e32}
.services-dropdown{background:#103e32}
.nav-toggle{display:none}
@media(max-width:850px){
  header{min-height:85px;padding:16px 6%;flex-wrap:nowrap}
  .nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;padding:11px;background:transparent;border:1px solid var(--gold);color:var(--gold);cursor:pointer;flex-shrink:0}
  .nav-toggle span{display:block;width:22px;height:2px;background:currentColor}
  .nav-toggle:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
  .nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
  .nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  #primary-navigation{display:none;position:absolute;left:0;right:0;top:100%;background:#103e32;padding:14px 6% 25px;flex-direction:column;align-items:stretch;gap:0;font-size:15px;box-shadow:0 18px 24px #0003;max-height:calc(100dvh - 85px);overflow-y:auto}
  .nav-toggle[aria-expanded=true]+#primary-navigation{display:flex}
  #primary-navigation>a{padding:14px 0;border-top:1px solid #ffffff20}
  #primary-navigation>.outline{padding:12px 18px;margin-top:12px;border:1px solid var(--gold);text-align:center}
  .services-menu summary{padding:14px 0;justify-content:space-between}
  .services-dropdown{position:static;min-width:0;max-width:none;box-shadow:none;border:0;border-left:1px solid var(--gold);margin:0 0 14px 5px;padding:0 0 0 12px}
}

/* Draw a consistent chevron without relying on a font glyph. */
.services-menu summary>.services-chevron{display:inline-block;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);flex-shrink:0;margin-left:3px}
.services-menu[open] summary>.services-chevron{transform:translateY(2px) rotate(225deg)}

/* Use Arial consistently across the shared layout and page content. */
body,body h1,body h2,body h3,body h4,body h5,body h6,body p,body a,body li,body span,body label,body input,body select,body textarea,body button,body summary{font-family:Arial,Helvetica,sans-serif}

.homepage-enquiry{max-width:850px;margin:40px auto 0;text-align:left}
.homepage-enquiry .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.homepage-enquiry .full-width{grid-column:1/-1}
.homepage-enquiry label{display:block;font-size:13px;font-weight:bold;margin-bottom:8px}
.homepage-enquiry input,.homepage-enquiry select,.homepage-enquiry textarea{width:100%;padding:13px;border:1px solid #07665250;background:#fffdf8;color:#254c40;font:16px/1.5 Arial,sans-serif;border-radius:0}
.homepage-enquiry textarea{min-height:140px}
.homepage-enquiry .form-submit{margin-top:25px}
.homepage-enquiry button[type=submit]{border:0;background:var(--gold);color:#16392e;padding:15px 25px;font:700 14px/1.5 Arial,sans-serif;cursor:pointer}
@media(max-width:520px){.homepage-enquiry .form-grid{grid-template-columns:1fr}}

#enquiryForm[hidden] {
  display: none !important;
}

.enquiry-confirmation {
  color: var(--green);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 1.3;
}
