.coastal-home .site-header,.whats-on-page .site-header{background:var(--cream);color:var(--green);border-bottom:1px solid var(--line)}
.coast-hero{padding-top:104px}
.coast-media{position:relative;height:clamp(520px,60svh,700px);isolation:isolate;color:var(--cream);background:var(--green)}
.coast-image{position:absolute;inset:0;z-index:-2;object-position:center 54%}
.coast-media::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,35,29,.68),rgba(9,35,29,.12) 76%),linear-gradient(0deg,rgba(9,35,29,.32),transparent 75%)}
.coast-copy{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding-block:55px}
.coast-copy h1{font-size:clamp(66px,6.6vw,94px);line-height:1.02;letter-spacing:-.055em}
.coast-location{font-size:17px;margin-top:21px;color:var(--cream)}
.coast-hero-actions{display:flex;gap:15px;margin-top:23px}
.next-show-shell{background:#eae3d3;border-bottom:1px solid var(--line)}
.next-show{display:grid;grid-template-columns:220px minmax(0,1fr) auto;gap:36px;align-items:center;min-height:136px;padding-block:24px}
.next-date{font-size:15px;line-height:1.7}
.next-date span{font-weight:600;font-size:20px}
.next-artist{padding-left:36px;border-left:1px solid var(--line)}
.next-artist strong{display:block;font-family:var(--serif);font-weight:400;font-size:32px;line-height:1.2;letter-spacing:-.035em}
.next-artist p{font-size:14px;margin-top:8px;color:var(--muted)}
.next-link{display:flex;gap:28px;align-items:center;font-size:14px;font-weight:600;padding-block:12px;border-bottom:1px solid currentColor}
.next-link span{font-family:Arial,sans-serif;font-size:24px}
.shows-section{padding-block:86px 80px}
.section-heading{display:grid;grid-template-columns:1fr .8fr;gap:13%;align-items:end;margin-bottom:46px}
.section-heading h2{font-size:70px}
.section-heading p{color:var(--muted);font-size:17px;line-height:1.75;max-width:34ch}
.section-heading .text-link{margin-top:23px}
.show-list{border-top:1px solid var(--line)}
.show-row{display:grid;grid-template-columns:160px minmax(0,1fr) auto;gap:35px;align-items:center;padding-block:27px;border-bottom:1px solid var(--line);scroll-margin-top:125px}
.show-date{display:flex;gap:16px;align-items:baseline;line-height:1}
.show-day{font-family:var(--serif);font-size:76px;font-weight:400;letter-spacing:-.06em}
.show-month{font-size:16px}
.show-year{display:block;font-size:12px;margin-top:9px;color:var(--muted)}
.show-artist h3{font-family:var(--serif);font-size:33px;font-weight:400;line-height:1.2;letter-spacing:-.035em;max-width:25ch}
.show-artist p{font-size:14px;color:var(--muted);margin-top:10px}
.show-action{display:flex;align-items:center;gap:42px;font-size:14px}
.show-arrow{width:46px;height:46px;display:grid;place-items:center;font-family:Arial,sans-serif;font-size:28px;border:1px solid var(--line);border-radius:50%;transition:background .2s,color .2s}
.show-arrow:hover{background:var(--green);color:var(--cream)}
.coast-dining{padding-block:45px 112px;display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center}
.dining-photo{height:570px;overflow:hidden}
.dining-copy h2{font-size:60px}
.dining-copy>p{margin-top:28px;color:var(--muted);font-size:17px;line-height:1.75;max-width:34ch}
.dining-menu-links{margin-top:30px}
.dining-menu-links a{display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:350px;padding-block:18px;font-size:16px;border-bottom:1px solid var(--line)}
.dining-menu-links a span{font-size:24px;font-family:Arial,sans-serif}
.dining-menu-links a:hover{color:#a64d2e}
.coast-functions{background:var(--green);color:var(--cream);padding-block:85px}
.coast-functions>.section-shell{display:grid;grid-template-columns:1fr .8fr;gap:13%;align-items:center}
.coast-functions h2{font-size:68px}
.coast-functions p{font-size:17px;line-height:1.75;color:#e8e9df;max-width:34ch}
.coast-functions .button{margin-top:28px}
.coastal-home .visit-section{background:var(--cream);padding-block:100px;border-bottom:1px solid var(--line)}
.programme-intro{padding-block:175px 65px;display:grid;grid-template-columns:1.1fr 1fr;gap:12%;align-items:end}
.programme-intro h1{font-size:clamp(66px,7vw,100px)}
.programme-intro p{font-size:18px;line-height:1.75;max-width:33ch;color:var(--muted)}
.programme-intro .text-link{margin-top:25px}
.programme-section{padding-block:18px 65px}
.programme-title{display:flex;align-items:baseline;justify-content:space-between;gap:25px;padding-bottom:25px}
.programme-title h2{font-size:34px}
.programme-title p{font-size:14px;color:var(--muted)}
.whats-on-page .show-row{padding-block:35px;grid-template-columns:160px minmax(0,1fr) 180px}
.whats-on-page .show-action{flex-direction:column;align-items:flex-end;gap:14px}
.calendar-link{font-size:13px;gap:18px;padding-bottom:4px;min-height:44px;align-items:center}
.music-visit{padding-block:38px 95px;display:grid;grid-template-columns:1.15fr 1fr;gap:9%;align-items:center;border-bottom:1px solid var(--line)}
.music-visit>img{height:440px}
.music-visit h2{font-size:60px}
.music-visit p{margin-top:24px;font-size:16px;color:var(--muted);max-width:35ch}
.music-visit-actions{display:flex;flex-wrap:wrap;align-items:center;gap:25px;margin-top:28px}
.programme-empty{padding-block:40px}
.programme-empty h3{font-family:var(--serif);font-size:35px}
.programme-empty p{margin-top:15px;color:var(--muted)}
.programme-empty .text-link{margin-top:24px}
@media(max-width:1100px) and (min-width:761px){
 .next-show{grid-template-columns:165px minmax(0,1fr) auto;gap:22px}
 .next-artist{padding-left:22px}
 .next-artist strong{font-size:28px}
 .next-link{gap:16px;font-size:13px}
 .show-row,.whats-on-page .show-row{grid-template-columns:125px minmax(0,1fr) auto;gap:25px}
 .show-day{font-size:65px}
 .show-date{gap:10px}
 .show-artist h3{font-size:29px}
 .show-action{gap:22px}
 .section-heading,.coast-functions>.section-shell{gap:8%;grid-template-columns:1fr 1fr}
 .section-heading h2,.coast-functions h2{font-size:59px}
 .dining-copy h2,.music-visit h2{font-size:48px}
 .coast-dining,.music-visit{gap:7%}
 .dining-photo{height:510px}
 .calendar-link{gap:12px;font-size:12px}
}
@media(max-width:760px){
 .coast-hero{padding-top:84px}
 .coast-media{height:430px}
 .coast-image{object-position:57% center}
 .coast-media::after{background:linear-gradient(0deg,rgba(9,35,29,.76),rgba(9,35,29,.04) 96%)}
 .coast-copy{padding-block:29px}
 .coast-copy h1{font-size:clamp(45px,12.2vw,67px);line-height:1.04}
 .coast-location{font-size:15px;margin-top:17px}
 .coast-hero-actions{gap:12px;margin-top:20px}
 .coast-hero-actions .button{font-size:13px;gap:20px;padding:13px 16px;min-height:49px}
 .next-show{grid-template-columns:94px minmax(0,1fr);gap:12px 18px;padding-block:22px;min-height:0}
 .next-date{font-size:13px}
 .next-date span{font-size:16px;display:block;line-height:1.4}
 .next-artist{padding-left:18px}
 .next-artist strong{font-size:25px;line-height:1.15}
 .next-artist p{font-size:14px;margin-top:8px}
 .next-link{grid-column:2;font-size:12px;justify-self:start;padding-block:0 5px;gap:22px}
 .next-link span{font-size:20px}
 .shows-section{padding-block:53px 35px}
 .section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:31px}
 .section-heading h2{font-size:53px}
 .section-heading p{font-size:16px;max-width:37ch}
 .section-heading .text-link{margin-top:19px}
 .show-row,.whats-on-page .show-row{grid-template-columns:75px minmax(0,1fr);gap:16px 19px;padding-block:24px;position:relative;scroll-margin-top:105px}
 .show-date{display:flex;flex-direction:column;align-items:flex-start;gap:4px;align-self:start}
 .show-day{font-size:62px;line-height:.9}
 .show-month{font-size:14px;padding-left:3px;margin-top:5px}
 .show-artist h3{font-size:27px;line-height:1.2}
 .show-artist p{font-size:14px;margin-top:9px}
 .show-action{grid-column:2;justify-content:space-between;gap:15px;font-size:13px;margin-top:-3px}
 .show-arrow{width:44px;height:44px;font-size:23px;border-color:transparent}
 .coast-dining{grid-template-columns:1fr;gap:31px;padding-block:30px 61px}
 .dining-photo{height:350px}
 .dining-copy h2{font-size:48px}
 .dining-copy h2 br:last-child{display:none}
 .dining-copy>p{font-size:16px;margin-top:23px;max-width:37ch}
 .dining-menu-links{margin-top:20px}
 .dining-menu-links a{font-size:15px;max-width:none;padding-block:16px}
 .coast-functions{padding-block:57px}
 .coast-functions>.section-shell{grid-template-columns:1fr;gap:27px}
 .coast-functions h2{font-size:52px}
 .coast-functions p{font-size:16px}
 .coast-functions .button{margin-top:24px}
 .coastal-home .visit-section{padding-block:62px}
 .programme-intro{padding-block:125px 39px;grid-template-columns:1fr;gap:25px}
 .programme-intro h1{font-size:56px}
 .programme-intro p{font-size:16px;max-width:36ch}
 .programme-intro .text-link{margin-top:21px}
 .programme-section{padding-block:13px 31px}
 .programme-title{display:block;padding-bottom:21px}
 .programme-title h2{font-size:30px}
 .programme-title p{font-size:13px;margin-top:11px}
 .whats-on-page .show-action{flex-direction:row;align-items:center;gap:15px}
 .calendar-link{font-size:12px;gap:13px}
 .music-visit{grid-template-columns:1fr;gap:30px;padding-block:27px 56px}
 .music-visit>img{height:285px}
 .music-visit h2{font-size:48px}
 .music-visit p{font-size:16px;max-width:36ch}
 .music-visit-actions{gap:24px;margin-top:25px}
 .music-visit-actions .button{font-size:13px;padding-inline:17px;gap:24px}
}
@media(max-width:360px){
 .coast-copy h1{font-size:42px}
 .coast-media{height:410px}
 .next-show{grid-template-columns:84px minmax(0,1fr);gap:12px}
 .next-artist{padding-left:12px}
 .next-artist strong{font-size:23px}
 .show-row,.whats-on-page .show-row{grid-template-columns:64px minmax(0,1fr);column-gap:16px}
 .show-day{font-size:55px}
 .show-artist h3{font-size:25px}
 .show-action{gap:10px}
 .calendar-link{gap:8px;font-size:11px}
}
