/* Approved photo and responsive shell only. Real controls, content and card logic remain shared. */
html.approved-coastal-page{scroll-padding-top:130px}
.approved-coastal-design{--coastal-gradient:linear-gradient(115deg,#153c54,#286578);--search-panel-accent:#7495a1;background:#f8fafb}
.approved-coastal-design :is(a,button,input,select,summary){scroll-margin-top:130px}
.approved-coastal-design>header.site-navigation-header{position:sticky;top:0;z-index:100;background:var(--coastal-gradient);border-bottom-color:#7495a1}
/* Owner amendment: white navigation accents, with an unmistakable active page. */
.approved-coastal-design .site-section-nav>a{background:#ffffff14;border-color:#ffffff40;color:#fff;box-shadow:none}
.approved-coastal-design .site-section-nav>a:not([aria-current="page"]):hover{background:#ffffff24;border-color:#ffffff65;color:#fff}
.approved-coastal-design .site-section-nav>a[aria-current="page"]{background:#fff;border-color:#fff;color:#153c54;box-shadow:inset 0 -2px 0 #dce5ed}
.approved-coastal-design .site-section-nav>a:focus-visible,
.approved-coastal-design .site-section-nav>.site-menu>summary:focus-visible{outline:3px solid #fff;outline-offset:3px}
.approved-coastal-design .intro-search-surface{--search-panel-bg:var(--coastal-gradient);--search-help:#d8e6ed;background:var(--coastal-gradient)}
.approved-coastal-design .intro-search-surface>.intro{color:#fff}
/* Transparent inverse wave exposes the one continuous finder gradient. */
.approved-coastal-design .intro-search-surface>.intro{--wave-height:32px;mask-image:linear-gradient(#000,#000),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 70' preserveAspectRatio='none'%3E%3Cpath fill='white' fill-rule='evenodd' d='M0 0H1200V70H0Z M0 45Q240 8 600 45T1200 33V70H0Z'/%3E%3C/svg%3E");mask-size:100% calc(100% - var(--wave-height) + 1px),100% var(--wave-height);mask-position:top,bottom;mask-repeat:no-repeat}
/* A shared photo canvas prevents route-specific hero heights from changing crop or scale. */
.approved-coastal-design .intro-search-surface>.intro::before{top:0;bottom:auto;height:215px;background-image:linear-gradient(rgba(21,60,84,.40),rgba(21,60,84,.40)),url('/assets/coastal-approved-hero.jpg?v=cc606827');background-size:cover,cover;background-position:center,center 57%;background-repeat:no-repeat;-webkit-mask-image:none;mask-image:none;filter:none}
.approved-coastal-design .intro-search-surface>.intro::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:32px;z-index:-1;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 70' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='a'%3E%3Cstop stop-color='%23153c54'/%3E%3Cstop offset='1' stop-color='%23286578'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='%2332788c' d='M0 20Q250 -20 560 30T1200 20V70H0Z'/%3E%3Cpath fill='url(%23a)' d='M0 45Q240 8 600 45T1200 33V70H0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.approved-coastal-design .intro-search-surface>.intro::after{bottom:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 70' preserveAspectRatio='none'%3E%3Cpath fill='%2332788c' d='M0 20Q250 -20 560 30T1200 20V70H0Z'/%3E%3C/svg%3E")}
.approved-coastal-design .intro-search-surface>.intro h1{color:#fff;text-shadow:0 1px 8px #153c5488}
.approved-coastal-design .intro-search-surface>.intro .eyebrow{color:#fff;text-shadow:0 1px 4px #153c54}
.approved-coastal-design .intro-search-surface>.intro .lede{color:#fff}
.approved-coastal-design .intro-search-surface>.intro .restaurant-total{background:#17465bdf;border-color:#7495a1;color:#f6eedf}
.approved-coastal-design .approved-mobile-tagline{display:none}
/* Higher-specificity color overrides do not alter the desktop finder geometry. */
.approved-coastal-design .search-date-layout .search-field>label,
.approved-coastal-design .search-date-layout .filters>label,
.approved-coastal-design .intro-search-surface .location-day-label,
.approved-coastal-design .events-page .event-search>label,
.approved-coastal-design .events-page .location-field,
.approved-coastal-design .events-page .event-category-filter>#event-category-label{color:#f3f7fa!important}
.approved-coastal-design .search-date-layout .location-status,
.approved-coastal-design .events-page .event-search-calendar-layout .event-location-status{color:#d8e6ed}
.approved-coastal-design .search-date-layout .nearby .reset,
.approved-coastal-design .events-page .event-nearby .reset{color:#e6eef4}
.approved-coastal-design .intro-search-surface :is(.location-picker-toggle,input[type=search],.shared-date-controls),
.approved-coastal-design .events-page .event-type-picker>summary{border-color:#7f9098}
/* Popup copy stays dark on its light surface; the outer dark finder never leaks into it. */
.approved-coastal-design .shared-calendar-panel{--search-label:#18344b;--search-help:#486173}
@media(max-width:700px){
 html.approved-coastal-page{scroll-padding-top:86px}
 .approved-coastal-design :is(a,button,input,select,summary){scroll-margin-top:86px}
 .approved-coastal-design>header.site-navigation-header{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;height:76px;min-height:76px;padding:10px 14px;gap:8px}
 .approved-coastal-design .site-navigation-header>.site-section-nav{order:0;flex:1 1 auto;min-width:0;width:auto;gap:7px}
 .approved-coastal-design .site-section-nav>a{flex:1 1 auto;min-width:0;height:46px;min-height:46px;padding:10px;font-size:14px;gap:5px;white-space:nowrap}
 .approved-coastal-design .site-section-nav>a>svg{width:16px;height:16px}
 .approved-coastal-design .site-section-nav>.site-menu>summary{width:44px;min-width:44px;height:46px;min-height:46px;padding:10px;justify-content:center}
 .approved-coastal-design .site-navigation-header>.brand{order:1;flex:0 0 90px;width:90px;max-width:90px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;margin:0;letter-spacing:-.2px}
 .approved-coastal-design .site-navigation-header .brand-logo-tile{display:flex;align-items:center;justify-content:center;width:54px;height:26px;flex:none;background:transparent;border:0;box-shadow:none;padding:0}
 .approved-coastal-design .site-navigation-header .brand-logo{width:54px;height:26px;max-width:none;object-fit:contain}
 .approved-coastal-design .site-navigation-header .brand-wordmark{display:block;width:90px;max-width:90px;flex:none}
 .approved-coastal-design .site-navigation-header .brand-wordmark img{display:block;width:100%;height:auto;object-fit:contain}
 .approved-coastal-design .site-navigation-header .site-menu-items{max-height:calc(100dvh - 86px)}
 .approved-coastal-design>main{padding:0 0 24px}
 .approved-coastal-design .intro-search-surface{border:0;border-radius:0;box-shadow:none}
 .approved-coastal-design .intro-search-surface>.intro{--wave-height:26px;height:162px;min-height:162px;margin:0;padding:18px 20px 0;border-radius:0;display:block}
 .approved-coastal-design .events-page .intro-search-surface>.intro{height:162px;min-height:162px}
 .approved-coastal-design .intro-search-surface>.intro::before{height:188px;background-position:center,center 65%}
 .approved-coastal-design .intro-search-surface>.intro::after{height:26px}
 .approved-coastal-design .approved-desktop-tagline{display:none}
 .approved-coastal-design .approved-mobile-tagline{display:inline}
 .approved-coastal-design .intro-search-surface>.intro .eyebrow{font-size:clamp(10px,2.9vw,12px);letter-spacing:0;margin:0 0 7px}
 .approved-coastal-design .intro-search-surface>.intro h1{font-size:clamp(26px,7vw,34px);line-height:1.1;margin:0 0 7px;letter-spacing:-.03em}
 .approved-coastal-design .events-page .intro-search-surface>.intro h1{font-size:28px}
 .approved-coastal-design .intro-search-surface>.intro .lede{display:none}
 .approved-coastal-design .intro-search-surface>.intro .restaurant-total{font-size:11px;padding:6px 10px;margin:0;gap:7px}
 .approved-coastal-design .intro-search-surface>.intro .restaurant-total strong{font-size:16px}
 .approved-coastal-design .intro-search-surface>.intro .restaurant-total svg{width:26px;height:16px}
 .approved-coastal-design .intro-search-surface .search-date-layout,
 .approved-coastal-design .events-page .intro-search-surface .event-search-calendar-layout{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding:0 20px 10px;border-radius:0;align-items:end}
 .approved-coastal-design .search-date-layout .filter-panel-polished.main-date-panel .search-field,
 .approved-coastal-design .events-page .event-search-calendar-layout .event-search{grid-column:1/-1;grid-row:1}
 .approved-coastal-design .search-date-layout .filter-panel-polished.main-date-panel .filters,
 .approved-coastal-design .events-page .event-search-calendar-layout .event-filters>.location-field{grid-column:1;grid-row:2;min-width:0;margin:0}
 .approved-coastal-design .intro-search-surface .search-date-layout>.menu-date-bar,
 .approved-coastal-design .events-page .event-search-calendar-layout .event-mini-calendar.shared-date-picker{grid-column:2;grid-row:2;min-width:0;width:100%;margin:0;padding:0}
 .approved-coastal-design .search-date-layout .filter-panel-polished.main-date-panel .nearby{grid-column:1/-1;grid-row:3;min-height:30px;gap:8px;margin:0!important}
 .approved-coastal-design .events-page .event-search-calendar-layout .event-category-filter{grid-column:1/-1;grid-row:3}
 .approved-coastal-design .events-page .event-search-calendar-layout .event-location-status{grid-column:1;grid-row:4}
 .approved-coastal-design .events-page .event-search-calendar-layout .event-nearby{grid-column:2;grid-row:4}
 .approved-coastal-design .events-page .event-search-calendar-layout .halloween-feature{grid-column:1/-1;grid-row:5;margin:0;min-height:44px;padding:7px 12px}
 .approved-coastal-design .search-date-layout .search-field>label,
 .approved-coastal-design .search-date-layout .filters>label,
 .approved-coastal-design .intro-search-surface .location-day-label,
 .approved-coastal-design .events-page .event-search>label,
 .approved-coastal-design .events-page .event-category-filter>#event-category-label{font-size:13px!important;margin-bottom:6px!important}
 .approved-coastal-design .search-date-layout .filters>label{margin-bottom:0!important}
 .approved-coastal-design .events-page .location-field{font-size:13px!important;line-height:1.4}
 .approved-coastal-design .search-date-layout .filters>label>.location-picker,
 .approved-coastal-design .events-page .location-picker-toggle,
 .approved-coastal-design .events-page .event-type-picker{margin-top:6px}
 .approved-coastal-design .intro-search-surface input[type=search],
 .approved-coastal-design .intro-search-surface .location-picker-toggle,
 .approved-coastal-design .intro-search-surface .shared-date-picker .shared-date-controls,
 .approved-coastal-design .events-page .event-type-picker>summary{height:44px;min-height:44px;border-radius:9px}
 .approved-coastal-design .intro-search-surface .location-picker-toggle,
 .approved-coastal-design .events-page .event-type-picker>summary{font-size:14px}
 /* Keep the existing16px input size to prevent iOS focus zoom. */
 .approved-coastal-design .intro-search-surface input[type=search],
 .approved-coastal-design .intro-search-surface input[type=search]::placeholder{font-size:16px}
 .approved-coastal-design .intro-search-surface .filter-panel-polished .search-input-wrap>svg{top:13px}
 .approved-coastal-design .intro-search-surface .shared-date-picker .shared-date-controls{grid-template-columns:29px minmax(0,1fr) 29px}
 .approved-coastal-design .intro-search-surface .shared-date-picker .shared-date-controls>button{height:42px;min-height:42px;padding:0}
 .approved-coastal-design .intro-search-surface .shared-date-picker #menu-calendar-toggle,
 .approved-coastal-design .events-page .shared-date-picker #event-calendar-toggle{font-size:11px;white-space:nowrap}
 .approved-coastal-design .search-date-layout .location-status,
 .approved-coastal-design .events-page .event-search-calendar-layout .event-location-status{font-size:10px}
 .approved-coastal-design .search-date-layout .nearby .reset,
 .approved-coastal-design .events-page .event-nearby .reset{font-size:11px;min-height:30px}
 .approved-coastal-design .intro-search-surface .search-date-layout>.menu-date-bar.shared-date-picker .shared-calendar-panel,
 .approved-coastal-design .events-page .event-search-calendar-layout .shared-date-picker .shared-calendar-panel{left:auto;right:0;top:calc(100% + 8px);width:min(300px,calc(100vw - 28px));max-width:none;margin:0}
 .approved-coastal-design .location-picker-menu{max-height:230px}
 /* The finder is full bleed; real results and other content retain a reading gutter. */
 .approved-coastal-design>main>:not(.intro-search-surface){margin-left:20px;margin-right:20px}
 /* Preserve the original public-card gutters and owner/public width parity at every mobile width. */
 .approved-coastal-design>main>.cards,
 .approved-coastal-design>main>#event-list{margin-left:16px;margin-right:16px}
 .approved-coastal-design .results-bar{margin-top:10px;margin-bottom:6px;gap:8px}
 .approved-coastal-design .search-sort{margin-top:0;margin-bottom:10px;font-size:11px}
 .approved-coastal-design .events-page .event-legend{margin-top:7px;margin-bottom:7px;gap:5px 10px;font-size:10px}
}
@media(max-width:360px){
 .approved-coastal-design>header.site-navigation-header{padding-left:10px;padding-right:10px}
 .approved-coastal-design .site-navigation-header>.site-section-nav{gap:5px}
 .approved-coastal-design .site-section-nav>a{font-size:12px;padding:10px 7px}
 .approved-coastal-design .site-navigation-header>.brand{width:74px;max-width:74px;flex-basis:74px}
 .approved-coastal-design .site-navigation-header .brand-wordmark{width:74px;max-width:74px}
 .approved-coastal-design .site-navigation-header .brand-logo-tile,
 .approved-coastal-design .site-navigation-header .brand-logo{width:46px}
 .approved-coastal-design .intro-search-surface>.intro{padding-left:14px;padding-right:14px}
 .approved-coastal-design .intro-search-surface .search-date-layout,
 .approved-coastal-design .events-page .intro-search-surface .event-search-calendar-layout{padding-left:14px;padding-right:14px}
 .approved-coastal-design .intro-search-surface .shared-date-picker .shared-date-controls{grid-template-columns:24px minmax(0,1fr) 24px}
 .approved-coastal-design .intro-search-surface .shared-date-picker #menu-calendar-toggle,
 .approved-coastal-design .events-page .shared-date-picker #event-calendar-toggle{font-size:10px}
}
/* Style the existing one-click custom calendar; native controls and disclosure logic stay untouched. */
.approved-coastal-design .shared-date-picker .shared-calendar-panel{--search-label:#153c54;--search-help:#fff;--search-control-bg:#fff;--search-control-edge:#dce5ed;background:var(--coastal-gradient);border-color:#7495a1;color:#fff}
.approved-coastal-design .shared-calendar-panel :is(.shared-calendar-heading,.event-calendar-heading) h2,
.approved-coastal-design .shared-calendar-panel :is(.shared-calendar-weekdays,.event-calendar-weekdays){color:#fff}
.approved-coastal-design .shared-calendar-panel button{background:#fff;color:#153c54;border-color:#dce5ed}
.approved-coastal-design .shared-calendar-panel button:not(:disabled):hover{background:#eaf3f5;border-color:#7495a1}
.approved-coastal-design .shared-calendar-panel :is(.shared-calendar-days,.event-calendar-days) button[aria-current=date]{border-color:#153c54;box-shadow:inset 0 0 0 1px #153c54}
.approved-coastal-design .shared-calendar-panel :is(.shared-calendar-days,.event-calendar-days) button[aria-pressed=true]{background:#286578;color:#fff;border-color:#fff;box-shadow:inset 0 0 0 1px #fff}
.approved-coastal-design .shared-calendar-panel .event-calendar-days button small{color:#486173}
.approved-coastal-design .shared-calendar-panel .event-calendar-days button[aria-pressed=true] small{color:#fff}
.approved-coastal-design .shared-calendar-panel button:focus-visible,
.approved-coastal-design .shared-calendar-panel :is(.shared-calendar-days,.event-calendar-days) button:focus-visible{outline:3px solid #153c54;outline-offset:1px;box-shadow:0 0 0 5px #fff}
@media print{
 .approved-coastal-design .intro-search-surface>.intro{mask-image:none}
 /* Match screen label specificity exactly, including the Events label ID. */
 .approved-coastal-design .search-date-layout .search-field>label,
 .approved-coastal-design .search-date-layout .filters>label,
 .approved-coastal-design .intro-search-surface .location-day-label,
 .approved-coastal-design .events-page .event-search>label,
 .approved-coastal-design .events-page .location-field,
 .approved-coastal-design .events-page .event-category-filter>#event-category-label{color:#143d56!important}
 .approved-coastal-design>header.site-navigation-header{position:static}
 .approved-coastal-design .intro-search-surface{background:none;box-shadow:none}
 .approved-coastal-design .intro-search-surface>.intro :is(h1,.eyebrow,.lede,.restaurant-total,.restaurant-total-growth),
 .approved-coastal-design .intro-search-surface :is(label,.location-day-label,#event-category-label,.location-field,.location-status,.event-location-status,.reset){color:#143d56!important;text-shadow:none}
 .approved-coastal-design .intro-search-surface>.intro .restaurant-total{background:none;border-color:#143d56;box-shadow:none}
 .approved-coastal-design .intro-search-surface>.intro::before,
 .approved-coastal-design .intro-search-surface>.intro::after{display:none}
}
/* Popup keyboard navigation scrolls its own list, not a header-sized blank area. */
.approved-coastal-design .location-scroll-options>button,
.approved-coastal-design .event-type-menu :is(button,input),
.approved-coastal-design .shared-calendar-panel button,
.approved-coastal-design .site-menu-items a{scroll-margin-block:7px}

/* Future-search guidance belongs to the results, with breathing room below the finder. */
.approved-coastal-design .events-page>.event-search-help{margin:16px 0 10px;padding:10px 12px;border:1px solid #bdd0da;border-radius:8px;background:#edf4fa;line-height:1.5}
.approved-coastal-design .events-page>.event-count{margin:0 0 16px;line-height:1.5}
.approved-coastal-design .events-page>.event-search-help[hidden]+.event-count{margin-top:16px}
@media(max-width:700px){
 .approved-coastal-design>main.events-page>:is(#event-search-help,#event-count){margin-left:16px;margin-right:16px}
}

/* Approved sharper-corner treatment: shape only, scoped to the public finder pages. */
.approved-coastal-design .site-section-nav>a,
.approved-coastal-design .site-section-nav>.site-menu>summary,
.approved-coastal-design .site-navigation-header .site-menu-items,
.approved-coastal-design .intro-search-surface input[type=search],
.approved-coastal-design .intro-search-surface select,
.approved-coastal-design .intro-search-surface .location-picker-toggle,
.approved-coastal-design .intro-search-surface .shared-date-picker .shared-date-controls,
.approved-coastal-design .events-page .event-type-picker>summary,
.approved-coastal-design .event-type-menu,
.approved-coastal-design .location-picker-menu,
.approved-coastal-design .shared-date-picker .shared-calendar-panel,
.approved-coastal-design .shared-calendar-panel button,
.approved-coastal-design .phone-calendar,
.approved-coastal-design .phone-calendar :is(.shared-calendar-days,.event-calendar-days) button,
.approved-coastal-design .phone-calendar-cancel,
.approved-coastal-design .expand-all,
.approved-coastal-design .event-nearby-toggle,
.approved-coastal-design .empty,
.approved-coastal-design .restaurant-total:not(.halloween-feature),
.approved-coastal-design #count,
.approved-coastal-design #event-count,
.approved-coastal-design .card,
.approved-coastal-design .event-detail-card[data-event-category],
.approved-coastal-design .card button,
.approved-coastal-design .menu-note-help .menu-note-text{border-radius:6px}
.approved-coastal-design .intro-search-surface{border-radius:6px}
.approved-coastal-design .intro-search-surface>.intro{border-radius:5px 5px 0 0}
/* Borderless modal interior and genuine circular controls retain their shapes. */
.approved-coastal-design .phone-calendar .shared-calendar-panel{border-radius:0}
.approved-coastal-design .phone-calendar-close{border-radius:50%}
@media(max-width:700px){
 .approved-coastal-design .intro-search-surface,
 .approved-coastal-design .intro-search-surface>.intro{border-radius:0}
}
