
:root{--coastal-sand:#f7f3e9;--coastal-ink:#163b3b;--coastal-teal:#086f75;--coastal-coral:#d77b56;--coastal-white:#fffdf7;--coastal-serif:Georgia,'Times New Roman',serif}
html{scroll-behavior:smooth}body{background:var(--coastal-sand);color:var(--coastal-ink)}.coastal-main{overflow:hidden}.coastal-header{position:relative;z-index:20;background:var(--coastal-white);border-bottom:1px solid rgba(22,59,59,.12)}.header-inner{max-width:1440px!important;padding:19px clamp(20px,5vw,80px);margin:auto;gap:24px}.coastal-logo a{font-family:var(--coastal-serif);font-size:1.65rem;font-weight:600;text-decoration:none;color:var(--coastal-ink)}.coastal-header nav a{text-decoration:none;font-size:.82rem;font-weight:650;letter-spacing:.035em}.header-cta .wp-block-button__link{border-radius:100px;background:var(--coastal-teal);color:white;padding:13px 23px;font-size:.83rem}.coastal-home section,.interior-page section{box-sizing:border-box}.coastal-hero{min-height:710px!important;background:radial-gradient(ellipse at 70% 30%,#2c9b9a 0,transparent 43%),linear-gradient(135deg,#07474f,#0f747b 65%,#149094);color:white;display:grid!important;grid-template-columns:1fr 1fr;align-items:center;padding:70px clamp(24px,7vw,130px);gap:5vw;position:relative}.coastal-hero::before{content:'✳';font-size:15rem;color:rgba(255,255,255,.09);position:absolute;right:10%;top:0;pointer-events:none}.coastal-hero>.wp-block-group{max-width:none!important;width:100%}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.24em;text-transform:uppercase}.hero-title,.display,.interior-title{font-family:var(--coastal-serif)!important;font-weight:400;letter-spacing:-.055em;line-height:1.05}.hero-title{font-size:clamp(3.7rem,7vw,8rem);max-width:860px}.hero-lead{font-size:clamp(1.1rem,1.6vw,1.5rem);max-width:580px;line-height:1.6}.hero-copy{position:relative;z-index:2}.hero-photo{position:relative;transform:rotate(3deg)}.hero-photo figure{margin:0}.hero-image img{width:100%;height:min(590px,65vw);min-height:370px;object-fit:cover;border-radius:48% 48% 12px 12px;box-shadow:26px 28px 0 rgba(255,255,255,.12)}.hero-caption{font-family:var(--coastal-serif);font-style:italic;text-align:center;font-size:1.3rem}.scroll-cue{font-size:.67rem;letter-spacing:.24em;margin-top:50px}.wp-block-button__link{transition:transform .25s,background-color .25s;white-space:normal}.wp-block-button__link:hover{transform:translateY(-3px)}.btn-light .wp-block-button__link{background:#fffdf7;color:#134b50;border-radius:100px;padding:18px 32px}.btn-outline .wp-block-button__link{border-radius:100px;background:transparent;color:inherit;border:1.5px solid currentColor;padding:17px 28px}.btn-dark .wp-block-button__link{border-radius:100px;background:var(--coastal-ink);color:white;padding:17px 30px}.coastal-intro{display:grid!important;grid-template-columns:1.8fr .7fr;align-items:center;gap:7vw;padding:135px clamp(24px,10vw,180px);background:var(--coastal-sand)}.coastal-intro>.wp-block-group{max-width:none!important}.display{font-size:clamp(2.9rem,5.2vw,6.3rem);max-width:960px}.large-copy,.section-lede{font-size:1.12rem;line-height:1.75;max-width:730px}.intro-art{display:flex;flex-direction:column;align-items:center;justify-content:center}.sun-doodle{font-size:clamp(8rem,16vw,18rem);line-height:1;color:var(--coastal-coral);animation:coastal-spin 40s linear infinite}.small-label{font-weight:700;font-size:.73rem;letter-spacing:.22em}.coastal-menu{padding:105px clamp(24px,7vw,130px) 130px;background:#e6eee9}.coastal-menu>.eyebrow,.coastal-menu>.display,.coastal-menu>.section-lede,.coastal-menu>.wp-block-buttons{text-align:center;justify-content:center;margin-inline:auto}.menu-grid{max-width:1420px!important;display:grid!important;grid-template-columns:repeat(3,1fr);gap:24px;margin:60px auto}.menu-card{background:#fffdf7;border-radius:6px;overflow:hidden;max-width:none!important;padding-bottom:32px;box-shadow:0 7px 24px rgba(11,55,58,.045);transition:transform .35s,box-shadow .35s}.menu-card:hover{transform:translateY(-9px);box-shadow:0 17px 40px rgba(11,55,58,.14)}.menu-photo{margin:0}.menu-photo img{width:100%;height:330px;object-fit:cover}.menu-card h3,.menu-card p{padding:0 30px}.menu-card h3{font-family:var(--coastal-serif);font-size:2rem;font-weight:400;margin:28px 0 12px}.menu-card p{color:#57706c;line-height:1.7}.coastal-story{display:grid!important;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;background:#f9e7d7}.coastal-story>.wp-block-group{max-width:none!important;width:100%}.story-image-wrap{min-height:650px}.story-image-wrap figure{height:100%;margin:0}.story-image img{height:100%;width:100%;object-fit:cover}.story-copy{padding:110px clamp(30px,7vw,110px);align-self:center}.coastal-reserve{background:#db8669;color:#fffdf7;text-align:center;padding:120px 24px}.coastal-reserve>.wp-block-buttons{justify-content:center;display:inline-flex;margin:10px}.coastal-reserve .section-lede{margin-inline:auto}.coastal-end{text-align:center;background:var(--coastal-sand);padding:115px 24px}.coastal-end>.wp-block-buttons{justify-content:center}.coastal-end .section-lede{margin-inline:auto}.coastal-footer{background:#14393a;color:#f7f3e9;padding:80px clamp(24px,7vw,130px) 25px}.coastal-footer a{color:inherit}.coastal-footer h3{font-family:var(--coastal-serif);font-weight:400}.footer-columns{max-width:1440px;margin:0 auto 70px}.footer-note{font-size:.75rem;opacity:.7;border-top:1px solid rgba(255,255,255,.2);padding-top:26px}.interior-hero{text-align:center;background:linear-gradient(135deg,#0a4f54,#1a8a89);color:white;padding:130px 24px}.interior-title{font-size:clamp(3.5rem,7vw,7rem)}.interior-hero .hero-lead{margin:0 auto}.interior-section{padding:90px clamp(24px,9vw,150px);max-width:1300px;margin:auto}.interior-feature img{max-height:520px;width:100%;object-fit:cover}.gallery-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-grid img{height:430px;width:100%;object-fit:cover}.coastal-main .wp-block-post-content{margin:0}.coastal-main .wp-block-group{box-sizing:border-box}.coastal-home{max-width:none!important}.coastal-home>.wp-block-group{max-width:none!important}.coastal-home .wp-block-group{box-sizing:border-box}.coastal-home .wp-block-group .wp-block-group{max-width:none}.coastal-home>.wp-block-group{margin-top:0!important}.coastal-header .wp-block-navigation__responsive-container.is-menu-open{background:var(--coastal-white);color:var(--coastal-ink)}
@keyframes coastal-spin{to{transform:rotate(360deg)}}
@media(min-width:901px){.coastal-hero .hero-photo{animation:coastal-enter 900ms ease-out both}.coastal-hero .hero-copy{animation:coastal-enter 700ms ease-out both}@keyframes coastal-enter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:1000px){.header-cta{display:none}.coastal-hero{min-height:auto!important;grid-template-columns:1fr;padding:80px 28px 100px}.hero-photo{max-width:680px;margin:auto}.hero-image img{height:460px}.coastal-intro{grid-template-columns:1fr;padding:85px 30px}.intro-art{display:none}.menu-grid{grid-template-columns:repeat(2,1fr)}.coastal-story{grid-template-columns:1fr}.story-image-wrap{min-height:440px}.story-copy{padding:75px 30px}}
@media(max-width:640px){.header-inner{padding:14px 18px}.coastal-hero{padding:60px 22px 80px;gap:45px}.hero-title{font-size:clamp(3.5rem,14vw,5.2rem)}.hero-image img{height:360px;min-height:0}.hero-caption{font-size:1.1rem}.coastal-intro,.coastal-menu,.coastal-reserve,.coastal-end{padding:75px 22px}.menu-grid,.gallery-grid{grid-template-columns:1fr}.menu-grid{margin:35px 0}.menu-photo img{height:330px}.display{font-size:clamp(2.8rem,11vw,4.4rem)}.story-image-wrap{min-height:320px}.coastal-reserve>.wp-block-buttons{display:flex}.interior-hero{padding:95px 22px}.interior-section{padding:60px 22px}.gallery-grid img{height:350px}.coastal-footer{padding:65px 22px 20px}.coastal-navigation{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* v0.2.0: accessible burger menu on all screens, richer complete-page layout */
.coastal-header{position:sticky;top:0;z-index:999}.admin-bar .coastal-header{top:32px}
.coastal-header .wp-block-navigation__responsive-container-open{display:flex!important;align-items:center;justify-content:center;padding:12px;border:1px solid currentColor;border-radius:100px}
.coastal-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
.coastal-header .wp-block-navigation__responsive-container.is-menu-open{position:fixed;inset:0;padding:clamp(32px,7vw,92px);z-index:10000;background:var(--coastal-ink)!important;color:var(--coastal-white)!important}
.coastal-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:22px!important;align-items:flex-start!important}
.coastal-header .wp-block-navigation__responsive-container.is-menu-open a{font-family:var(--coastal-serif);font-weight:400;font-size:clamp(1.6rem,4vw,3rem);color:inherit!important}
.coastal-header .wp-block-navigation__responsive-container-close{color:inherit!important}
.coastal-footer .footer-columns{gap:clamp(25px,4vw,75px);align-items:start}.coastal-footer .wp-block-column{min-width:0}.coastal-footer h3{font-size:1.5rem;margin:0 0 24px}.coastal-footer p{line-height:1.7;margin:0 0 13px}.coastal-footer a{text-underline-offset:4px}
.coastal-home-feature{padding:clamp(80px,9vw,140px) clamp(24px,10vw,160px);text-align:center}.coastal-home-feature h2{font-family:var(--coastal-serif);font-weight:400;font-size:clamp(3rem,6vw,6rem);line-height:1.08;margin:.3em auto;max-width:1100px}.coastal-home-feature p{max-width:700px;margin-inline:auto;line-height:1.7}.coastal-home-feature .wp-block-buttons{justify-content:center}.coastal-gallery-feature{background:#f5e5d1}.coastal-events-feature{background:#0c6063;color:#fffdf7}.coastal-events-feature .wp-block-button__link{background:#fffdf7;color:#0c6063}
@media(max-width:782px){.admin-bar .coastal-header{top:46px}}@media(max-width:650px){.coastal-footer .footer-columns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 18px}.coastal-header .header-cta{display:flex}.coastal-header .header-cta .wp-block-button__link{font-size:.7rem;padding:11px 14px}.coastal-header .header-inner{gap:10px}}
@media(prefers-reduced-motion:reduce){.coastal-header *{scroll-behavior:auto!important}}
