*{box-sizing:border-box} :root{--ink:#17353d;--green:#527354;--paper:#fbfaf6;--line:rgba(23,53,61,.18)} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;font-size:17px;line-height:1.58} img{display:block;max-width:100%} a{text-decoration:none;color:inherit}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:10}.header-inner{width:min(calc(100% - 64px),1380px);min-height:88px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{display:flex;align-items:center;gap:14px;min-width:330px}.brand-mark{width:58px;height:68px;object-fit:contain}.brand-copy{display:flex;flex-direction:column}.brand-name{font-family:"Libre Baskerville",Georgia,serif;font-size:1.62rem;font-weight:700;line-height:1.08;letter-spacing:-.03em}.brand-tagline{font-family:"Libre Baskerville",Georgia,serif;font-style:italic;font-size:.77rem;margin-top:5px}.primary-nav{display:flex;align-items:center;gap:28px;font-size:.91rem;font-weight:500}.primary-nav a{padding:8px 0;white-space:nowrap}.primary-nav a.active{border-bottom:3px solid var(--green)}.primary-nav .contact{padding:9px 20px;border-radius:999px;background:var(--green);color:#fff}.menu-toggle{display:none;border:0;background:none}.menu-toggle span:not(.sr-only){display:block;width:24px;height:2px;margin:5px;background:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.hero{position:relative;min-height:650px;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,25,28,.68),rgba(7,25,28,.2) 65%,rgba(7,25,28,.03))}.hero-copy{position:relative;width:min(calc(100% - 64px),1380px);min-height:650px;margin:auto;color:#fff;display:flex;align-items:center}.hero-text{width:min(650px,52%);padding-top:32px}.hero-text h1{font-family:"Libre Baskerville",Georgia,serif;font-size:clamp(2.7rem,5vw,5.25rem);line-height:1.06;letter-spacing:-.045em;margin:0 0 18px}.hero-subtitle{font-family:"Libre Baskerville",Georgia,serif;font-style:italic;font-size:1.05rem;margin:0 0 26px}.hero-text p{font-size:1.08rem;margin:0 0 14px}
.cards-section{width:min(calc(100% - 64px),1380px);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);padding:30px 0 28px;background:var(--paper)}.card{padding:8px 34px 12px;text-align:center;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center}.card:last-child{border-right:0}.card-image{height:130px;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.card-image img{max-height:125px;width:auto;max-width:175px;object-fit:contain}.card h2{font-family:"Libre Baskerville",Georgia,serif;font-size:1.45rem;line-height:1.2;margin:0 0 14px}.card p{margin:0 auto 18px;max-width:290px;font-size:.94rem;line-height:1.5}.card a{margin-top:auto;color:var(--green);font-weight:600}.card a span{font-size:1.25rem;margin-left:7px}
.footer-landscape{width:100%;height:255px;overflow:hidden}.footer-landscape img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.site-footer{display:none}
@media(max-width:1100px){.primary-nav{gap:18px}.brand{min-width:290px}.script-callout{font-size:clamp(3.5rem,6vw,5.8rem);left:4%}.hero-text{width:58%;margin-left:auto}.cards-section{grid-template-columns:repeat(2,1fr)}.card:nth-child(2){border-right:0}.card:nth-child(-n+2){border-bottom:1px solid var(--line);padding-bottom:28px}.card:nth-child(n+3){padding-top:28px}}
@media(max-width:800px){.header-inner{width:min(calc(100% - 32px),1380px);min-height:76px}.brand{min-width:0}.brand-mark{width:48px;height:58px}.brand-name{font-size:1.2rem}.brand-tagline{font-size:.63rem}.menu-toggle{display:block}.primary-nav{position:absolute;top:76px;left:16px;right:16px;display:none;flex-direction:column;align-items:stretch;gap:0;padding:14px 18px;background:#fff;border:1px solid var(--line);box-shadow:0 15px 30px rgba(0,0,0,.08)}.primary-nav.open{display:flex}.primary-nav a{padding:10px 0;border-bottom:1px solid var(--line)}.primary-nav .contact{text-align:center;margin-top:10px;border:0}.hero{min-height:690px}.hero-copy{width:min(calc(100% - 32px),1380px);min-height:690px;align-items:flex-end;padding-bottom:50px}.script-callout{left:2%;top:10%;transform:rotate(-6deg);font-size:clamp(3.6rem,15vw,6rem)}.hero-text{width:100%;margin:0;padding:0}.hero-text h1{font-size:clamp(2.45rem,9vw,4rem)}.cards-section{width:min(calc(100% - 32px),1380px);grid-template-columns:1fr;padding-top:22px}.card{border-right:0!important;border-bottom:1px solid var(--line)!important;padding:34px 18px!important}.card:last-child{border-bottom:0!important}.footer-landscape{height:210px}}
/* Tai Chi Pickleball dropdown — preserves canonical top-level nav sizing. */
.primary-nav .nav-item{position:relative;display:flex;align-items:center}
.primary-nav .nav-submenu{position:absolute;top:100%;left:-18px;min-width:210px;padding:8px 0;background:#fff;border:1px solid var(--line);box-shadow:0 12px 28px rgba(0,0,0,.12);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease;z-index:2000}
.primary-nav .nav-submenu a{display:block;padding:10px 18px!important;white-space:nowrap;border:0!important;font-size:.91rem!important;font-weight:500!important;line-height:1.3!important}
.primary-nav .nav-submenu a:hover,.primary-nav .nav-submenu a:focus{background:rgba(82,115,84,.09)}
.primary-nav .nav-dropdown:hover>.nav-submenu,.primary-nav .nav-dropdown:focus-within>.nav-submenu{opacity:1;visibility:visible;transform:translateY(0)}
@media(max-width:800px){.primary-nav .nav-item{display:block}.primary-nav .nav-submenu{position:static;min-width:0;padding:0 0 0 16px;border:0;box-shadow:none;opacity:1;visibility:visible;transform:none;display:none}.primary-nav .nav-dropdown:focus-within>.nav-submenu,.primary-nav .nav-dropdown:hover>.nav-submenu{display:block}.primary-nav .nav-submenu a{padding:9px 0!important;font-size:inherit!important}}

.primary-nav .nav-submenu .submenu-parent{position:relative}
.primary-nav .nav-submenu .submenu-parent>a{position:relative;padding-right:34px}
.primary-nav .nav-submenu .submenu-parent>a::after{content:"›";position:absolute;right:14px;top:50%;transform:translateY(-52%);font-size:19px;color:var(--navy)}
.primary-nav .nav-submenu .nav-submenu-child{position:absolute;top:-9px;left:100%;min-width:245px;padding:8px 0;background:#fff;border:1px solid var(--line);box-shadow:0 12px 28px rgba(0,0,0,.12);opacity:0;visibility:hidden;transform:translateX(4px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease}
.primary-nav .nav-submenu .submenu-parent:hover>.nav-submenu-child,.primary-nav .nav-submenu .submenu-parent:focus-within>.nav-submenu-child{opacity:1;visibility:visible;transform:translateX(0)}
@media(max-width:800px){.primary-nav .nav-submenu .submenu-parent>a::after{display:none}.primary-nav .nav-submenu .nav-submenu-child{position:static;min-width:0;padding:0 0 0 16px;border:0;box-shadow:none;opacity:1;visibility:visible;transform:none;display:block}}
