@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--pine:#102f29;--pine2:#173c34;--ink:#20332f;--body:#52615b;--line:#dfded6;--sand:#f5f3ec;--warm:#e9e7dd;--white:#fffdf9;--cobalt:#2d5f7d;--serif:'Libre Caslon Display',Georgia,'Times New Roman',serif;--sans:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);font:15px/1.7 var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:3px solid #5c9fac;outline-offset:3px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.07;letter-spacing:-.027em}h1{font-size:clamp(3.4rem,6.4vw,7.1rem)}h2{font-size:clamp(2.7rem,4vw,4.6rem)}h3{font-size:clamp(1.5rem,2vw,2.1rem)}p{color:var(--body)}h2 em,h1 em{font-weight:400;color:#8a9c8b;font-style:italic}strong,b{font-weight:700}.container{width:min(1290px,calc(100% - 88px));margin-inline:auto}.narrow{max-width:770px!important}.muted{color:#748079}.fine,small.fine{font-size:12px;color:#84908a;line-height:1.6}.small{font-size:13px}.sr-only{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.honeypot{position:absolute;left:-9000px;opacity:0;pointer-events:none}.eyebrow{display:block;color:#65766b;font:700 10px/1.6 var(--sans);letter-spacing:.22em;text-transform:uppercase;margin-bottom:19px}.eyebrow.light{color:#c7d8cf}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:47px;padding:12px 22px;background:var(--pine2);border:1px solid var(--pine2);color:white;font:600 12px/1.4 var(--sans);letter-spacing:.025em;border-radius:2px;transition:background .2s,color .2s,transform .2s;white-space:normal;text-align:center}.btn:hover{background:#2e5f53;border-color:#2e5f53;transform:translateY(-1px)}.btn:active{transform:none}.btn-cream{background:#f7f3e9;color:var(--pine);border-color:#f7f3e9}.btn-cream:hover{background:white;border-color:white}.btn-outline{color:#fff;background:transparent;border-color:#97a89d}.btn-outline:hover{background:white;color:var(--pine)}.btn-light{background:white;border-color:#cad2ce;color:var(--pine)}.btn.full{width:100%}.text-arrow{font-size:12px;color:#255e58;font-weight:700;letter-spacing:.015em;white-space:nowrap;border-bottom:1px solid transparent}.text-arrow:hover,.footer a:hover{border-bottom-color:currentColor}.light-link{color:#f4f0e8}.site-nav{height:89px;padding:0 max(36px,calc((100vw - 1400px)/2));display:flex;align-items:center;gap:25px;background:var(--white);position:relative;z-index:50;border-bottom:1px solid var(--line)}.wordmark{font:400 25px/1 var(--serif);letter-spacing:.065em;white-space:nowrap;display:inline-flex;flex-direction:column}.wordmark span{font:700 8px/1.7 var(--sans);letter-spacing:.38em;color:#738178;text-align:center;margin-top:8px}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:clamp(12px,1.7vw,26px);flex:1}.desktop-nav a{font-size:11px;font-weight:600;color:#344c43;padding:9px 0;white-space:nowrap;border-bottom:1px solid transparent}.desktop-nav a:hover,.desktop-nav a.active{border-color:#314c44}.nav-actions{display:flex;align-items:center;gap:20px}.nav-search{display:flex;color:var(--pine)}.nav-join{display:inline-flex;gap:10px;align-items:center;font-size:11px;border:1px solid #bcc8c1;padding:9px 15px;font-weight:700;white-space:nowrap}.nav-join:hover{background:var(--sand)}.menu-toggle{display:none;background:none;border:0;width:35px;min-height:35px;align-items:center;flex-direction:column;justify-content:center;gap:6px}.menu-toggle span{height:1.5px;width:24px;background:#16372f}.mobile-nav{display:none}.toast{position:fixed;top:105px;right:24px;z-index:120;background:#e3f1e8;border:1px solid #b6d1c2;color:#163b2b;box-shadow:0 15px 45px #122c261a;padding:14px 21px;max-width:500px;font-size:14px}.toast.error{background:#fff0e8;color:#6b302d;border-color:#ecc8bb}
/* Homepage */
.hero{position:relative;min-height:580px;background:var(--pine);color:white;isolation:isolate;overflow:hidden}.hero-photo{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center 46%}.hero-grain{z-index:-1;position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0px,transparent 2px,rgba(255,255,255,.01) 3px);pointer-events:none}.hero-inner{min-height:580px;display:flex;align-items:center;justify-content:space-between;position:relative}.hero-copy{max-width:720px;padding:78px 0 76px}.hero h1{max-width:780px;font-size:clamp(4rem,6.9vw,7.1rem);color:#faf8f0;margin:0 0 27px;line-height:1.04}.hero p{font:400 clamp(15px,1.5vw,19px)/1.65 var(--sans);max-width:510px;color:#e5e8df;margin:0 0 32px}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.hero-overline{position:absolute;bottom:44px;right:0;display:flex;align-items:center;gap:12px;color:#d6ded6;font-size:10px;letter-spacing:.21em}.hero-overline i{height:1px;width:38px;background:#c4d2c7;display:inline-block}.pillars{background:#f1f0e9;border-bottom:1px solid var(--line)}.pillars-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:23px 0}.pillars-grid>div{display:flex;align-items:center;gap:18px;padding:4px 25px;border-right:1px solid #d3d5cc}.pillars-grid>div:first-child{padding-left:0}.pillars-grid>div:last-child{border-right:0}.pillar-icon{font:italic 28px/1 var(--serif);color:#7b927b}.pillars-grid span:not(.pillar-icon){font:400 18px/1.25 var(--serif)}.pillars-grid small{display:block;font:600 9px/1.5 var(--sans);letter-spacing:.06em;color:#8a938c;margin-top:5px;text-transform:uppercase}.intro-band{padding:100px 0 78px;border-bottom:1px solid var(--line)}.intro-flex{display:flex;justify-content:space-between;gap:75px}.intro-flex h2{flex:1;margin:0}.intro-flex p{width:370px;max-width:45%;margin:8px 0 0;font-size:16px;line-height:1.85}.focus-section{padding:73px 0 100px}.street-feature{display:grid;grid-template-columns:40% 60%;min-height:390px;background:#f2f3ed;overflow:hidden}.street-graphic{min-height:395px;background:#c2d0bf;position:relative;isolation:isolate;overflow:hidden}.street-graphic:before{content:'';position:absolute;inset:0;background:linear-gradient(165deg,transparent 10%,#739887 75%),url('/assets/img/palm-street.jpg') center/cover;mix-blend-mode:multiply;opacity:.8}.street-graphic:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(14,39,32,.73) 100%)}.street-sun{position:absolute;width:150px;height:150px;top:40px;right:38px;border-radius:100%;background:rgba(246,237,203,.55);filter:blur(30px)}.street-road{position:absolute;left:0;right:0;bottom:0;height:20%;background:linear-gradient(120deg,rgba(16,47,41,.3),transparent)}.street-label{position:absolute;left:35px;bottom:31px;z-index:2;color:white;font-size:10px;letter-spacing:.17em;font-weight:700}.street-label span{color:#b9d2c3}.street-info{padding:47px clamp(28px,5vw,82px)}.street-info h2{font-size:clamp(2.9rem,4.2vw,4.8rem);margin-bottom:16px}.street-info>p{max-width:560px;font-size:14px;line-height:1.9;margin-bottom:23px}.street-form{display:grid;grid-template-columns:1fr 1.1fr auto;gap:7px;margin:0 0 12px}.street-form input,.street-form select{min-width:0;border:1px solid #d3dad3;background:white;min-height:47px;padding:11px 10px;font-size:12px;color:#2c3d35;border-radius:2px}.street-form .btn{padding:10px 15px}.section-tint{background:var(--sand)}.section-space{padding:93px 0 108px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:33px}.section-heading .eyebrow{margin-bottom:8px}.section-heading h2{margin:0}.section-heading .text-arrow{margin-bottom:11px}.card-grid{display:grid;gap:25px}.card-grid.three{grid-template-columns:repeat(3,1fr)}.card-grid.four{grid-template-columns:repeat(4,1fr);gap:18px}.editorial-card,.place-card{display:block}.card-image{aspect-ratio:1.64;background:#cbd9ca;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.editorial-card:hover .card-image img,.place-card:hover .card-image img{transform:scale(1.04)}.card-meta{display:block;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#728478;margin:22px 0 8px}.editorial-card h3{font-size:clamp(1.5rem,2.3vw,2.2rem);margin-bottom:12px}.editorial-card p{line-height:1.8;font-size:13px;max-width:365px}.editorial-link{display:inline-block;font-size:12px;font-weight:700;color:var(--cobalt);margin-top:4px}.news-layout{display:grid;grid-template-columns:1.55fr .7fr;gap:56px}.notice-list{border-top:1px solid var(--line)}.notice-row{display:grid;grid-template-columns:67px 1fr 28px;gap:23px;padding:24px 6px 23px 0;border-bottom:1px solid var(--line);transition:background .2s}.notice-row:hover{background:#f8f9f6}.notice-date{font:400 23px/1.15 var(--serif);color:#81988a;padding-top:2px}.notice-row .card-meta{margin:0 0 5px}.notice-row h3{font-size:clamp(1.4rem,1.9vw,1.9rem);margin:0 0 5px}.notice-row p{font-size:13px;margin:0;line-height:1.65}.notice-arrow{color:#507b6b;font-size:22px}.right-panel{background:#ebede7;padding:38px 31px;align-self:start;min-height:410px}.label-ribbon{font-size:9px;font-weight:700;letter-spacing:.17em;color:#637b6c}.right-panel>h3{font-size:33px;margin:18px 0 18px}.right-panel>p{font-size:13px}.event-small{display:flex;gap:15px;padding:14px 0;border-bottom:1px solid #d6dbd2;font:600 14px/1.35 var(--sans)}.event-small small{display:block;font-size:11px;color:#809187;font-weight:400;margin-top:6px}.event-day{display:block;min-width:45px;flex:0 0 45px;text-transform:uppercase;font-size:10px;color:#667f71}.event-day strong{display:block;color:var(--pine);font:400 31px var(--serif)}.panel-foot{margin-top:26px;font-size:12px;font-weight:700}.panel-foot a{color:#31564a}.empty{background:#f3f5f0;border:1px dashed #cbd5ce;padding:32px}.empty h3{margin-bottom:12px}.empty p{font-size:13px}.empty a:not(.btn){font-size:12px;font-weight:700;text-decoration:underline}.empty.large{text-align:center;padding:85px 25px;margin:30px 0 70px}.empty.large h2{max-width:700px;margin:18px auto}.empty.large p{max-width:580px;margin:20px auto 30px}.section-dark{background:#123a32;color:white;padding:88px 0}.dark-layout{display:grid;grid-template-columns:43% 1fr;gap:70px;align-items:center}.dark-layout h2{font-size:clamp(2.9rem,4.8vw,5.7rem);color:#faf8ef;max-width:470px}.dark-layout p{color:#bdcfc5;max-width:410px;line-height:1.9}.dark-layout .btn{margin-top:18px}.dark-card{border:1px solid #577668;background:#1a463b;display:grid;grid-template-columns:48% 52%;min-height:350px}.dark-card-image{background:url('/assets/img/architecture.jpg') center/cover}.dark-card-detail{padding:50px 34px}.dark-card-detail h3{color:white;margin:20px 0}.dark-card-detail p{font-size:13px}.status-dot{font-size:11px;color:#c9deca}.status-dot:before{content:'';display:inline-block;background:#aedb92;height:7px;width:7px;border-radius:100%;margin-right:8px}.place-card .card-image{aspect-ratio:1.35}.place-card .card-meta{margin:19px 0 7px}.place-card h3{font-size:clamp(1.45rem,2vw,2rem);margin-bottom:8px}.place-card p{font-size:13px}.image-disclosure{margin-top:23px}.directory-feature{background:#e6e8dc;padding:87px 0}.directory-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.directory-layout h2{margin-bottom:20px}.directory-layout p{max-width:460px}.directory-layout .btn{margin-top:14px}.directory-icons{display:grid;grid-template-columns:1fr 1fr;gap:18px}.directory-icons>div{background:#f9f8f4;min-height:126px;padding:22px 20px;display:flex;flex-direction:column;justify-content:space-between;border-bottom:2px solid #9daea0}.directory-icons span{font:italic 25px var(--serif);color:#8da48f}.directory-icons b{font:400 20px/1.2 var(--serif)}.community-cta{padding:120px 0;text-align:center}.community-cta h2{max-width:800px;margin:0 auto 19px}.community-cta p{max-width:520px;margin:auto auto 26px}.community-cta .btn-cream{background:var(--pine);color:white;border-color:var(--pine)}
/* Common inner pages */
.page-banner{background:#e8eae1;padding:94px 0 78px;border-bottom:1px solid var(--line)}.page-banner h1{max-width:920px;font-size:clamp(3.5rem,5.2vw,6.5rem);margin-bottom:19px}.page-banner p{max-width:620px;font-size:17px;line-height:1.8}.page-content{padding-top:55px;padding-bottom:120px}.listing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.listing-item{border:1px solid #e4e5dc;display:grid;grid-template-columns:38% 62%;min-height:230px;background:#fff;transition:box-shadow .2s;overflow:hidden}.listing-item:hover{box-shadow:0 10px 30px #20332f10}.listing-thumb{height:100%;min-height:220px;overflow:hidden}.listing-thumb img{width:100%;height:100%;object-fit:cover}.listing-details{padding:26px}.listing-details .card-meta{margin:0 0 8px}.listing-details h2{font-size:clamp(1.5rem,2.2vw,2rem);margin-bottom:10px}.listing-details p{font-size:12px;line-height:1.75;margin-bottom:9px}.listing-foot{font-size:11px;color:#54766a;font-weight:700}.page-tail{text-align:center;background:var(--sand);padding:60px 30px;margin-top:78px}.page-tail h2{font-size:38px}.page-tail p{max-width:570px;margin:12px auto 25px}.notice-info{background:#f3f5f0;border:1px solid #dce2d9;padding:23px 30px;margin-bottom:35px}.notice-info .eyebrow{margin-bottom:6px}.notice-info p{margin:0;font-size:13px}.notice-info a,.prose-block a{color:#266d62;text-decoration:underline}.place-map{height:400px;background:#e3e8df;margin-bottom:38px;z-index:0}.map-fallback{padding:60px 50px;color:#456354}.map-fallback h3{font-size:30px}.place-map:has(.leaflet-container) .map-fallback{display:none}.story-header{padding:65px 0 39px;border-bottom:1px solid var(--line)}.story-header h1{font-size:clamp(3.2rem,6vw,6.3rem);margin:15px 0 19px}.story-header .eyebrow{margin-top:24px;margin-bottom:5px}.story-lead{font-size:19px;line-height:1.8}.breadcrumb{font-size:12px;font-weight:700;color:#5b7a69}.story-byline{display:flex;gap:18px;font-size:11px;font-weight:600;color:#84948b;letter-spacing:.05em}.story-body{padding-top:45px;padding-bottom:100px}.story-cover{width:100%;max-height:430px;object-fit:cover}.story-body>.fine{display:block;margin-top:8px}.story-body>p{font:17px/1.95 Georgia,serif;color:#36483c;margin:28px 0}.story-location{background:#f1f3ef;padding:16px}.source-box{background:#eef1eb;padding:27px;margin-top:38px;border-left:3px solid #648e7b}.source-box .eyebrow{margin:0}.source-box p{font-size:13px!important;margin:11px 0!important}.source-box>a{font-size:12px;color:#235f52;font-weight:700}.story-signoff{border-top:1px solid var(--line);margin-top:70px;padding-top:25px}.story-signoff a{font-size:12px;font-weight:700;color:#235f52}.sub-page{background:#f3f3ed;min-height:74vh;padding:90px 0}.split-page{display:grid;grid-template-columns:1fr 1fr;gap:90px}.split-page h1{font-size:clamp(3.5rem,5.6vw,6.5rem)}.split-page>div:first-child>p{max-width:540px;font-size:16px}.fine-details{margin-top:38px;border-top:1px solid #cfd6cf}.fine-details>div{border-bottom:1px solid #cfd6cf;padding:14px 0;color:#8aa59a;font-family:var(--serif);font-size:25px;display:flex;gap:25px}.fine-details span{font:13px/2 var(--sans);color:#51675b}.white-panel{background:white;padding:clamp(25px,3.5vw,52px);box-shadow:0 18px 60px #173c340e}.white-panel h2{font-size:40px;margin-bottom:16px}.white-panel p{font-size:14px}.white-panel label,.wizard-pane label{font-size:12px;font-weight:700;color:#43584a;margin-top:18px;margin-bottom:8px;display:block}.white-panel input:not([type=hidden]),.white-panel textarea,.white-panel select,.wizard-pane input:not([type=hidden]){width:100%;border:1px solid #d4dad2;border-radius:1px;min-height:48px;margin-top:7px;padding:12px 13px;background:white;color:#254136;font-size:14px}.white-panel small{font-size:11px;color:#849187;display:block;margin-top:14px}.prose-block{padding-top:73px;padding-bottom:100px}.prose-block h2{font-size:40px}.prose-block p{font:17px/2 Georgia,serif}.search-form{display:flex;gap:7px;max-width:720px;margin-top:28px}.search-form input{padding:14px 17px;border:1px solid #cad3cb;background:white;flex:1;min-width:0}.mini-thumb{width:160px;height:130px;object-fit:cover;align-self:stretch}.listing-item:has(.mini-thumb){grid-template-columns:160px auto;padding:12px}.listing-item:has(.mini-thumb)>div{padding:14px}.listing-item:has(.mini-thumb) h2{font-size:25px;margin:8px 0}.listing-item:has(.mini-thumb) .card-meta{margin:0}.listing-item:has(.mini-thumb) p{font-size:12px}.installer-body{background:#f5f6f3}.message{padding:13px 18px;background:#e4efea;margin:22px 0}.message.error{background:#fdebe8;color:#742d23}
/* Footer */
.footer{background:#102d27;color:#f3f5ef}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:35px;padding:67px 0 59px}.footer-brand{display:block;font:35px var(--serif);letter-spacing:.07em;margin-bottom:15px}.footer-top>div:first-child>span{display:block;color:#b2c8ba;font-size:12px;line-height:1.9}.footer-links{display:flex;flex-direction:column;gap:11px;font-size:12px}.footer-signup h3{font-size:33px;color:white}.footer-signup>a{font-size:12px;font-weight:700;color:#c4dfc9}.footer-bottom{border-top:1px solid #466357;padding:22px 0 28px;display:flex;justify-content:space-between;gap:25px;color:#a9bfb3;font-size:10px}
/* Responsive */
@media(max-width:1170px){.desktop-nav{gap:13px}.desktop-nav a{font-size:10px}.site-nav{padding:0 24px}.wordmark{font-size:23px}.nav-actions{gap:13px}.street-form{grid-template-columns:1fr 1fr}.street-form .btn{grid-column:1/-1}.street-info{padding:38px}}
@media(max-width:940px){.desktop-nav,.nav-join{display:none}.site-nav{justify-content:space-between;height:75px;padding:0 24px}.nav-actions{margin-left:auto;gap:21px}.menu-toggle{display:flex}.mobile-nav:not([hidden]){display:flex;flex-direction:column;position:absolute;top:75px;left:0;right:0;background:var(--white);z-index:55;box-shadow:0 13px 18px #122c261c;padding:15px 28px}.mobile-nav a{padding:10px 0;border-bottom:1px solid #e2e6df;font-weight:600;font-size:14px}.container{width:min(100% - 44px,1290px)}.hero,.hero-inner{min-height:575px}.hero-copy{max-width:620px}.hero h1{font-size:clamp(4rem,8vw,6rem)}.pillars-grid{grid-template-columns:repeat(2,1fr);row-gap:17px}.pillars-grid>div:nth-child(2){border-right:0}.pillars-grid>div:nth-child(3){padding-left:0}.intro-flex{gap:30px}.street-feature{grid-template-columns:38% 62%}.street-info h2{font-size:3.2rem}.news-layout{gap:22px}.dark-layout{gap:30px}.dark-card{display:block}.dark-card-image{height:170px}.dark-card-detail{padding:20px}.directory-layout{gap:30px}.listing-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1.5fr 1fr 1fr}.footer-signup{display:none}}
@media(max-width:640px){.container{width:calc(100% - 34px)}.site-nav{height:68px;padding:0 17px}.mobile-nav:not([hidden]){top:68px}.wordmark{font-size:23px}.hero,.hero-inner{min-height:590px}.hero-photo{background-position:57% center!important}.hero-inner{align-items:center}.hero-copy{padding:60px 0}.hero-copy .eyebrow{font-size:9px}.hero h1{font-size:clamp(3.85rem,14vw,5.5rem);margin-bottom:18px}.hero p{font-size:14px;max-width:350px}.hero-actions{gap:15px;align-items:flex-start;flex-direction:column}.hero-overline{display:none}.pillars-grid{grid-template-columns:repeat(2,1fr);gap:0;padding:13px 0}.pillars-grid>div{padding:15px 8px!important;border-right:0;border-bottom:1px solid #daddd3;gap:9px}.pillars-grid>div:nth-last-child(-n+2){border-bottom:0}.pillar-icon{font-size:22px}.pillars-grid span:not(.pillar-icon){font-size:15px}.pillars-grid small{font-size:8px}.intro-band{padding:70px 0 52px}.intro-flex{display:block}.intro-flex h2{font-size:3.55rem}.intro-flex p{width:100%;max-width:none;margin-top:20px;font-size:15px}.focus-section{padding:40px 0 67px}.street-feature{display:flex;flex-direction:column}.street-graphic{min-height:190px}.street-info{padding:30px 21px 35px}.street-info h2{font-size:3.4rem}.street-form{grid-template-columns:1fr}.street-form .btn{grid-column:auto}.section-space{padding:67px 0 78px}.section-heading{align-items:start}.section-heading h2{font-size:3rem}.section-heading .text-arrow{font-size:11px;margin:11px 0 0;white-space:normal;text-align:right;max-width:110px}.card-grid.three,.card-grid.four{grid-template-columns:1fr 1fr;gap:20px 13px}.editorial-card:last-child:nth-child(odd){grid-column:1/-1}.card-image{aspect-ratio:1.4}.editorial-card h3,.place-card h3{font-size:1.65rem}.editorial-card .card-meta,.place-card .card-meta{font-size:9px}.editorial-card p,.place-card p{font-size:12px}.news-layout{grid-template-columns:1fr}.notice-row{grid-template-columns:52px 1fr 16px;gap:10px}.notice-row h3{font-size:1.55rem}.notice-row p{font-size:12px}.right-panel{padding:27px}.section-dark{padding:65px 0}.dark-layout{grid-template-columns:1fr}.dark-layout h2{font-size:3.5rem}.dark-card{display:grid;grid-template-columns:42% 58%;min-height:240px}.dark-card-image{height:auto}.dark-card-detail{padding:23px}.dark-card-detail h3{font-size:24px}.dark-card-detail p{font-size:11px}.directory-feature{padding:65px 0}.directory-layout{grid-template-columns:1fr}.directory-layout h2{font-size:3.6rem}.directory-icons{gap:10px}.directory-icons>div{min-height:90px;padding:12px}.directory-icons b{font-size:17px}.community-cta{padding:80px 0}.community-cta h2{font-size:3.5rem}.page-banner{padding:65px 0 55px}.page-banner h1{font-size:clamp(3.3rem,11vw,5rem)}.page-banner p{font-size:14px}.page-content{padding:35px 0 75px}.listing-item{display:flex;flex-direction:column;min-height:auto}.listing-thumb{height:190px;min-height:190px}.listing-details{padding:20px}.listing-details h2{font-size:2rem}.place-map{height:280px}.story-header{padding:35px 0}.story-header h1{font-size:3.6rem}.story-lead{font-size:15px}.story-body>p{font-size:16px}.sub-page{padding:50px 0}.split-page{grid-template-columns:1fr;gap:32px}.split-page h1{font-size:4.2rem}.prose-block{padding:55px 0}.prose-block p{font-size:16px}.search-form{flex-direction:column}.footer-top{grid-template-columns:1fr 1fr;gap:35px 14px;padding:50px 0}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:7px}.toast{left:15px;right:15px;top:75px}.listing-item:has(.mini-thumb){display:grid;grid-template-columns:100px auto;padding:8px}.mini-thumb{width:100px;height:110px}.listing-item:has(.mini-thumb)>div{padding:9px}.listing-item:has(.mini-thumb) h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* v1.1: Golden Triangle community, private board, neighbor perks and seasonal accents. */
.seasonal-ribbon{display:flex;align-items:center;justify-content:center;gap:20px;padding:12px 20px;background:#eef2ed;border-bottom:1px solid #dbe1d9;color:#254b41;font-size:12px;line-height:1.4;letter-spacing:.01em}.seasonal-ribbon strong{font:21px/1.2 var(--serif)}.seasonal-ribbon b{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.seasonal-glyph{font-size:15px}.season-halloween .seasonal-ribbon{background:#f3ece4;color:#624b36;border-color:#e8d9c4}.season-halloween .seasonal-ribbon:before{content:'';width:6px;height:6px;border-radius:50%;background:#bc7547;box-shadow:13px 0 #bc7547,-13px 0 #9e623f}.season-thanksgiving .seasonal-ribbon{background:#f5eee4;color:#655039;border-color:#e8dccb}.season-winter .seasonal-ribbon{background:#e9f1ee;color:#1d493c;border-color:#bfcfc8}.season-winter .seasonal-glyph{color:#976d55}.season-patriotic .seasonal-ribbon{background:#f0f1f5;color:#243f64;border-bottom:3px solid #b55b5b}.season-patriotic .seasonal-glyph{color:#b55b5b}.season-spring .seasonal-ribbon{background:#eff5eb;color:#436341;border-color:#d7e4d0}.season-feature{background:#e7ece6;border-block:1px solid #dce5da}.season-feature-inner{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:50px 0}.season-feature h2{font-size:clamp(32px,3.9vw,57px);margin:8px 0 10px}.season-feature p{max-width:670px;margin:0;color:#55675e}.season-feature .btn{white-space:nowrap}.home-community{padding-top:85px;padding-bottom:85px}.community-showcase{display:grid;grid-template-columns:1.7fr 1fr;gap:35px;padding:34px;border:1px solid #e1e5de;background:#f8f8f4}.community-showcase h3{font:clamp(26px,3vw,40px)/1.2 var(--serif);margin:0 0 10px}.community-showcase p{color:#53665c;max-width:650px}.community-topics{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:13px}.community-topics span{font-size:11px;font-weight:700;letter-spacing:.15em;color:#2c5747;background:white;border:1px solid #e1e6dd;padding:11px 16px;width:100%}.community-showcase .action-row{display:flex;align-items:center;flex-wrap:wrap;gap:19px;margin-top:20px}.member-panel{border:1px solid #e0e7df;background:#f7f9f5;padding:26px;margin-bottom:26px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.member-panel p{margin:0;flex:1;min-width:200px}.board-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.board-card{display:block;border:1px solid #e3e7df;padding:27px;background:white;transition:box-shadow .15s,transform .15s}.board-card:hover{box-shadow:0 10px 28px #0e2e2718;transform:translateY(-2px)}.board-card h2{font:clamp(25px,2.5vw,36px)/1.1 var(--serif);margin:9px 0}.board-card p{font-size:14px;color:#53685d}.board-card small{display:block;color:#6d8074;margin-top:16px}.board-thumb{max-height:230px;object-fit:cover;border-radius:3px}.board-large-photo{max-height:660px;width:100%;object-fit:contain;background:#e8eee6}.board-full{border-bottom:1px solid #e2e8df;padding-bottom:26px;margin-bottom:36px;font-size:18px;line-height:1.7;overflow-wrap:anywhere}.neighbor-reply{padding:25px 0;border-bottom:1px solid #e1e6df}.neighbor-reply small{color:#778579;margin-left:12px}.neighbor-reply p{margin-bottom:0;overflow-wrap:anywhere}.report-disclosure{margin-top:35px;border-top:1px solid #e2e7df;padding-top:20px}.report-disclosure summary{cursor:pointer;color:#63756c}.report-disclosure form{margin-top:18px}.check-line{display:flex!important;align-items:flex-start;gap:12px!important;font-weight:400!important;font-size:13px!important}.check-line input[type=checkbox]{width:auto!important;min-width:17px;margin-top:6px}.neighbor-join .fine-details{margin:32px 0}.neighbor-join .white-panel{align-self:start}.form-split{border-top:1px solid #dfe8df;margin-top:32px;padding-top:19px}.form-split h3{font:28px var(--serif)}.offer-card{border:1px solid #e0e6df;padding:29px}.offer-card h2{font-size:clamp(24px,2.6vw,37px)}.offer-code{background:#eff5eb;color:#183f33;padding:13px;margin-top:20px;letter-spacing:.05em}.offer-code strong{font-family:monospace;font-size:19px;letter-spacing:.12em}.season-gallery-title{margin-top:60px}.photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;margin:25px 0}.photo-gallery figure{margin:0}.photo-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.photo-gallery figcaption{font-size:12px;color:#59695f;margin-top:10px}.plain-submit{background:none;border:0;text-decoration:underline;font:inherit;cursor:pointer;color:#466c5d;padding:8px}.seasonal-ribbon:focus-visible,.board-card:focus-visible{outline:3px solid #4776a2;outline-offset:2px}
@media(max-width:940px){.season-feature-inner{display:block}.season-feature .btn{margin-top:23px}.seasonal-ribbon{flex-wrap:wrap;gap:8px 13px}.community-showcase{grid-template-columns:1fr}.community-topics{display:grid;grid-template-columns:repeat(2,1fr)}.photo-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.seasonal-ribbon{justify-content:space-between;font-size:11px}.seasonal-ribbon strong{font-size:16px}.seasonal-ribbon span:not(.seasonal-glyph){display:none}.home-community{padding-top:50px;padding-bottom:50px}.community-showcase{padding:21px;gap:22px}.community-topics{gap:7px}.community-topics span{font-size:9px;padding:11px 8px}.member-panel{padding:18px}.board-list{grid-template-columns:1fr}.board-card{padding:20px}.photo-gallery{gap:10px}.photo-gallery figcaption{font-size:10px}.neighbor-join{padding-block:40px}.season-feature-inner{padding:36px 0}}

/* Additional low-key annual neighborhood themes. */
.season-valentine .seasonal-ribbon{background:#f6eeee;color:#734d59;border-color:#eadcdf}
.season-easter .seasonal-ribbon{background:#f1f3e7;color:#59684a;border-color:#dbe4d1}
.season-mothers .seasonal-ribbon{background:#f7f0ee;color:#6b545d;border-color:#e8dadb}
.season-fathers .seasonal-ribbon{background:#eaf1f2;color:#3d5962;border-color:#d0dfe0}
.season-school .seasonal-ribbon{background:#f5f3e9;color:#495e4d;border-color:#e5dfcd}

/* 1.2: resident-first homepage, deliberate mobile hierarchy */
.resident-shortcuts{background:#f7f6f0;border-bottom:1px solid #e0e5de}.shortcut-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.shortcut-grid a{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:24px 22px;border-right:1px solid #dedfd6;transition:background .18s}.shortcut-grid a:first-child{border-left:1px solid #dedfd6}.shortcut-grid a:hover,.shortcut-grid a:focus-visible{background:#eaf0e8}.shortcut-icon{font:normal 29px/1 var(--serif);color:#9d8658;margin-bottom:4px}.shortcut-grid strong{font:500 21px/1.2 var(--serif);color:#153c35}.shortcut-grid small{font:400 12px/1.45 var(--sans);color:#65776c}.hero{min-height:450px}.hero-inner{min-height:450px}.hero-copy{padding:62px 0}.hero h1{font-size:clamp(3rem,5vw,5.6rem);max-width:650px}.hero p{max-width:500px}.home-community{padding-top:55px;padding-bottom:65px}.home-community .community-showcase{min-height:0}.supporting-intro{padding:48px 0}.focus-section{padding-top:56px;padding-bottom:64px}.section-space{padding-top:65px;padding-bottom:72px}.section-heading{margin-bottom:24px}.card-grid.four{gap:15px}.editorial-card h3{font-size:clamp(1.35rem,2vw,1.9rem)}
@media(max-width:900px){.shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shortcut-grid a:nth-child(odd){border-left:1px solid #dedfd6}.shortcut-grid a{border-bottom:1px solid #dedfd6}}
@media(max-width:650px){.hero,.hero-inner{min-height:0}.hero-copy{padding:58px 0 48px}.hero h1{font-size:clamp(2.7rem,10vw,4rem);line-height:1.07}.hero p{font-size:15px;line-height:1.55}.hero-actions{align-items:stretch;gap:15px}.hero-actions .btn{width:100%;text-align:center;justify-content:center;min-height:48px}.hero-actions .text-arrow{padding:12px 3px}.shortcut-grid{gap:0}.shortcut-grid a{padding:18px 13px;min-height:124px}.shortcut-icon{font-size:25px}.shortcut-grid strong{font-size:19px}.shortcut-grid small{font-size:12px}.section-space{padding:43px 0 48px}.section-heading{align-items:baseline;gap:10px}.section-heading h2{font-size:clamp(2rem,8vw,2.8rem)}.section-heading .text-arrow{font-size:12px;white-space:normal;text-align:right}.card-grid.three,.card-grid.four{grid-template-columns:1fr;gap:25px}.editorial-card .card-image,.place-card .card-image{aspect-ratio:1.95}.editorial-card .card-meta,.place-card .card-meta{margin-top:11px}.editorial-card h3{font-size:25px}.editorial-card p{font-size:14px}.news-layout{display:block}.right-panel{margin-top:24px;min-height:0}.notice-row{grid-template-columns:51px 1fr 15px;gap:12px;padding:18px 0}.notice-row h3{font-size:22px}.notice-date{font-size:18px}.supporting-intro{padding:34px 0}.intro-flex{display:block}.intro-flex p{max-width:100%;width:auto}.street-feature{display:block}.street-graphic{min-height:160px}.street-info{padding:28px 19px}.street-info h2{font-size:36px}.street-form{display:grid;grid-template-columns:1fr}.street-form select,.street-form input,.street-form button{min-height:48px}.community-showcase-copy h3{font-size:30px}.directory-layout{display:block}.hero-photo{background-position:55% center}}

/* Boca Villas WIP: approved Boca Atlantic / South Beach-inspired coastal hero. */
.hero-photo{position:absolute;inset:0;z-index:-2;overflow:hidden;background:#a8c5c9}
.hero-photo picture,.hero-photo img{display:block;width:100%;height:100%}
.hero-photo img{object-fit:cover;object-position:center 53%;}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,36,35,.86) 0%,rgba(9,36,35,.70) 34%,rgba(9,36,35,.13) 78%,rgba(9,36,35,.03) 100%)}
.hero .hero-grain{display:none}
@media(max-width:650px){
  .hero{display:flex;flex-direction:column;background:#f5f4ed;color:#173b33}
  .hero-inner{order:1;min-height:0}
  .hero-copy{padding:36px 0 34px}
  .hero .hero-copy .eyebrow.light{color:#537266}
  .hero h1{color:#143c34;font-size:clamp(2.55rem,10vw,3.85rem);max-width:600px}
  .hero p{color:#4b5d56;font-size:15px;max-width:520px}
  .hero .btn-cream{color:#fff;background:#163f36;border-color:#163f36}
  .hero .light-link{color:#163f36}
  .hero-photo{position:relative;order:2;z-index:0;height:clamp(225px,66vw,360px);min-height:0;background:#bfd4cb}
  .hero-photo img{object-position:42% center}
  .hero-photo::after{display:none}
  .hero-actions{gap:11px}
  .hero-actions .btn{width:100%;min-height:48px}
  .hero .hero-overline{display:none}
}
/* Mobile-first density: useful resident shortcuts appear earlier in the first scroll. */
@media(max-width:650px){
  .hero-copy{padding:25px 0 23px}
  .hero h1{font-size:clamp(2.35rem,9.6vw,3.65rem);margin-bottom:12px}
  .hero p{font-size:14px;margin-bottom:17px;line-height:1.55}
  .hero-photo{height:clamp(195px,52vw,260px)}
  .hero-actions{gap:8px}
  .hero-actions .btn{min-height:46px}
  .shortcut-grid a{padding:16px 14px;min-height:104px}
  .shortcut-grid a strong{font-size:18px}
  .shortcut-grid a small{font-size:11px}
  .shortcut-grid .shortcut-icon{font-size:20px}
}
@media(max-width:360px){
  .site-nav{padding:0 12px;gap:6px}
  .wordmark{font-size:17px;letter-spacing:.025em}
  .wordmark span{font-size:6px;letter-spacing:.12em;margin-top:5px}
  .nav-actions{gap:10px;margin-left:auto;flex-shrink:0}
  .menu-toggle{width:32px}
}

/* 1.4: Consistent image-backed sections with legible editorial typography */
.visual-banner{background:#e4e9e4 url('/assets/img/hero-beach.webp') 50% 50%/cover no-repeat;position:relative;isolation:isolate;min-height:350px;display:flex;align-items:center}
.visual-banner:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,248,243,.96) 0%,rgba(247,248,243,.91) 42%,rgba(247,248,243,.46) 70%,rgba(247,248,243,.22) 100%);z-index:-1}
.visual-banner .container{position:relative}.visual-banner h1{line-height:1.06}.visual-banner p{font-weight:500;color:#29453d}
.seasonal-page-banner{min-height:430px;background-position:50% 58%;border-bottom:5px solid #b97743}
.season-halloween .seasonal-page-banner:before{background:linear-gradient(95deg,rgba(35,43,40,.94) 0%,rgba(46,48,43,.86) 44%,rgba(49,51,43,.16) 100%)}
.season-halloween .seasonal-page-banner h1,.season-halloween .seasonal-page-banner p,.season-halloween .seasonal-page-banner .eyebrow,.season-halloween .seasonal-page-banner .season-mark{color:#fff7eb}
.seasonal-page-banner h1{max-width:900px}.seasonal-page-banner .season-mark{display:block;margin-top:23px;color:#996e4b;font-size:22px;letter-spacing:.5em}
.season-halloween .seasonal-page-banner{border-color:#d78d4b}
.season-winter .seasonal-page-banner{border-color:#688d87}.season-thanksgiving .seasonal-page-banner{border-color:#ad7850}.season-patriotic .seasonal-page-banner{border-color:#9b656b}.season-spring .seasonal-page-banner{border-color:#95ad7d}
.listing-item.no-art{display:block;min-height:185px}.listing-item.no-art .listing-details{padding:28px 32px}.listing-item.no-art h2{max-width:760px}.listing-item.no-art .card-meta{color:#517260}
@media(max-width:650px){.visual-banner{min-height:285px;background-position:60% center}.visual-banner:before{background:linear-gradient(90deg,rgba(247,248,243,.95),rgba(247,248,243,.83))}.seasonal-page-banner{min-height:330px}.season-halloween .seasonal-page-banner:before{background:rgba(29,39,35,.82)}.listing-item.no-art .listing-details{padding:24px 20px}.visual-banner h1{font-size:clamp(2.6rem,10vw,4rem)}}

/* v1.5 resident-first, production-safe presentation refinements */
.hero h1{font-size:clamp(2.65rem,3.85vw,4.05rem);line-height:1.09;max-width:800px;text-wrap:balance}
.hero-copy{max-width:820px}.hero p{max-width:560px}.hero-actions{gap:20px}.hero-actions .text-arrow{font-size:13px;display:inline-flex;min-height:44px;align-items:center}
.nav-join{white-space:nowrap}.news-layout{align-items:start}.right-panel{min-height:0}.right-panel h3{font-size:clamp(1.75rem,2.2vw,2.3rem);line-height:1.12}.event-small{padding:13px 0}.notice-date small{display:block;letter-spacing:.1em;font:700 9px/1.2 var(--sans);color:#7a8a80;margin-bottom:7px}.notice-list{min-height:0}
/* Deliberately do not scale old illustrative photographs into premium UI surfaces. */
.street-graphic,.dark-card-image{background-image:none!important;background-color:#dbe7dd!important;position:relative}.street-graphic:before{content:'BOCA VILLAS  /  KINGS COURT  /  WHISEM';position:absolute;top:22%;left:9%;right:9%;font:600 11px/1.8 var(--sans);letter-spacing:.22em;color:#316054}.dark-card-image:before{content:'LOCAL DEVELOPMENT';position:absolute;top:50%;left:10%;right:10%;text-align:center;transform:translateY(-50%);color:#153c35;font:600 12px/1.5 var(--sans);letter-spacing:.24em}.street-sun,.street-road{display:none!important}
.place-card:not(:has(.card-image)),.editorial-card:not(:has(.card-image)){background:#f0f3ed;padding:24px;border:1px solid #e0e8df;min-height:225px;display:flex;flex-direction:column;justify-content:center}.place-card:not(:has(.card-image)) h3,.editorial-card:not(:has(.card-image)) h3{margin-top:8px}.place-card:not(:has(.card-image)) p,.editorial-card:not(:has(.card-image)) p{margin-bottom:0}
@media(max-width:940px){.nav-join{display:inline-flex!important;font-size:11px!important;padding:9px 11px!important}.nav-search{display:none!important}.hero h1{max-width:680px}}
@media(max-width:650px){.hero h1{font-size:clamp(2rem,8vw,3rem);line-height:1.12;max-width:100%}.hero-copy{padding:34px 0 32px}.hero-actions .text-arrow{justify-content:center;border:1px solid #d7e2dc;border-radius:2px;padding:10px}.hero-actions{width:100%}.nav-join{font-size:10px!important;padding:7px 9px!important}.shortcut-grid strong{font-size:17px}.right-panel h3{font-size:27px}.street-graphic{min-height:105px!important}.dark-card-image{min-height:125px!important}.place-card:not(:has(.card-image)),.editorial-card:not(:has(.card-image)){min-height:0}}
@media(max-width:360px){.nav-join{font-size:9px!important;padding:6px!important}.nav-join span{display:none}.site-nav{gap:3px}.wordmark{font-size:16px}}

/* v1.6: consistent, readable editorial type sizes across public templates */
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.018em;line-height:1.18;overflow-wrap:break-word}
h1{font-size:clamp(2.25rem,3.6vw,3.85rem)}
h2{font-size:clamp(1.7rem,2.55vw,2.7rem)}
h3{font-size:clamp(1.2rem,1.65vw,1.75rem)}
.hero h1{font-size:clamp(2.35rem,4vw,4.2rem);line-height:1.13;max-width:800px}
.section-heading h2,.directory-layout h2,.intro-flex h2,.community-cta h2,.dark-layout h2{font-size:clamp(1.75rem,2.8vw,2.95rem);line-height:1.2}
.right-panel h3{font:400 clamp(1.35rem,1.9vw,1.75rem)/1.25 Georgia,'Times New Roman',serif;max-width:none;margin:12px 0 14px}
.story-header h1{font-size:clamp(2rem,3.6vw,3.7rem);line-height:1.17}
.page-banner h1,.seasonal-page-banner h1,.split-page h1{font-size:clamp(2rem,3.5vw,3.7rem);line-height:1.18;max-width:100%}
.street-info h2,.dark-card-detail h3,.community-showcase h3{font-size:clamp(1.55rem,2.4vw,2.45rem);line-height:1.22}
.listing-details h2,.listing-item h2,.offer-card h2{font-size:clamp(1.4rem,2.1vw,2.1rem);line-height:1.24}
.notice-row h3{font-size:clamp(1.2rem,1.75vw,1.65rem);line-height:1.25}
@media(max-width:650px){
 .hero h1{font-size:clamp(2.15rem,8.5vw,3.15rem)}
 .section-heading h2,.directory-layout h2,.intro-flex h2,.community-cta h2,.dark-layout h2{font-size:clamp(1.7rem,7vw,2.2rem)}
 .right-panel h3{font-size:1.55rem}
 .page-banner h1,.seasonal-page-banner h1,.story-header h1,.split-page h1{font-size:clamp(2rem,7.7vw,2.8rem)}
 .street-info h2,.community-showcase h3{font-size:1.75rem}
 .listing-item h2{font-size:1.45rem}
}

/* v1.7: contained maps, readable nearby pages and verified project presentation */
.map-section{margin:0 0 38px;clear:both;position:relative;isolation:isolate;max-width:100%;}
.map-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:14px}.map-head h2{font-size:clamp(1.55rem,2.3vw,2.35rem);line-height:1.16;margin:6px 0 0}
.place-map{height:360px!important;min-height:360px;max-height:360px;width:100%;position:relative!important;display:block;overflow:hidden!important;contain:layout paint;z-index:0!important;background:#e3e8df;margin:0!important;}
.place-map .leaflet-container{position:relative!important;width:100%!important;height:100%!important;z-index:0!important;overflow:hidden!important}
.place-map .leaflet-pane,.place-map .leaflet-map-pane,.place-map .leaflet-tile-pane{max-width:none}
.place-map .map-fallback{padding:22px;font-size:14px}
.map-section+.listing-grid{position:relative;z-index:1;clear:both}
.tracker-intro{border:1px solid #dce3dc;background:#f3f6f0;padding:28px 31px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin:0 0 24px}
.tracker-intro h2{font-size:clamp(1.8rem,2.4vw,2.5rem);line-height:1.18;margin:8px 0}.tracker-intro p{max-width:740px;margin:0;font-size:14px;line-height:1.7}.tracker-intro a{white-space:nowrap}.tracker-count{margin-bottom:20px;font-size:14px;color:#476456}.tracker-count strong{font-size:22px}.tracker-count span{font-size:12px}
.page-banner h1{font-size:clamp(2.3rem,3.6vw,3.5rem);line-height:1.12}.listing-details h2{font-size:clamp(1.3rem,1.8vw,1.7rem)}
@media(max-width:700px){.place-map{height:290px!important;min-height:290px;max-height:290px}.tracker-intro{display:block;padding:20px}.tracker-intro a{margin-top:16px;white-space:normal}.map-head{align-items:start;flex-direction:column}.page-banner h1{font-size:clamp(2rem,7.2vw,2.8rem)}}

/* v1.8: honest, readable seasonal presentation and standalone launch screens */
.seasonal-page-banner{background-image:var(--season-hero,url('/assets/img/hero-beach.webp'));background-size:cover;background-repeat:no-repeat;background-position:center 52%;min-height:375px}
.seasonal-page-banner h1{max-width:740px;font-size:clamp(2rem,3.4vw,3.45rem)!important;line-height:1.18;letter-spacing:-.01em}
.seasonal-page-banner:before{z-index:0;background:linear-gradient(90deg,rgba(15,38,33,.88),rgba(15,38,33,.64) 50%,rgba(15,38,33,.15))!important}
.seasonal-page-banner .container{position:relative;z-index:1}
.seasonal-page-banner h1,.seasonal-page-banner p,.seasonal-page-banner .eyebrow,.seasonal-page-banner .season-mark{color:#fffdf7!important}
.season-halloween .seasonal-page-banner{border-color:#be8158}
.season-halloween .seasonal-page-banner:after{content:'OCTOBER IN THE NEIGHBORHOOD';position:absolute;right:4%;bottom:24px;z-index:1;color:#fff8e5;font:700 10px var(--sans);letter-spacing:.18em;background:#142e27bd;padding:12px 15px}
.season-winter .seasonal-page-banner{border-color:#bdab83}
.season-winter .seasonal-page-banner:after{content:'CHRISTMAS  ·  HANUKKAH  ·  NEW YEAR';position:absolute;right:4%;bottom:20px;z-index:1;color:#f8f2d5;font:700 11px var(--sans);letter-spacing:.13em;padding:12px 17px;background:#183c34df;border-top:2px solid #c4a76c}
.season-winter .seasonal-ribbon{border-top:2px solid #bfad83}
.season-thanksgiving .seasonal-page-banner{border-color:#a67b53}
.season-thanksgiving .seasonal-page-banner:after{content:'A SEASON FOR GOOD NEIGHBORS';position:absolute;right:4%;bottom:20px;color:#fff9e8;background:#4d4136d9;padding:12px 16px;font:700 11px var(--sans);letter-spacing:.1em}
.season-patriotic .seasonal-page-banner{border-color:#9a6271}
.season-patriotic .seasonal-page-banner:after{content:'REMEMBER  ·  CELEBRATE  ·  CONNECT';position:absolute;right:4%;bottom:20px;color:white;background:#244058d9;padding:12px 16px;font:700 11px var(--sans);letter-spacing:.1em}
.season-spring .seasonal-page-banner{border-color:#96ae84}
.season-feature{position:relative;isolation:isolate;overflow:hidden}
.season-halloween .season-feature{background:#e4e9df}
.season-halloween .season-feature:after{content:'OCTOBER';position:absolute;right:-18px;bottom:-30px;color:#bb987b27;font:100px Georgia,serif;z-index:-1}
.season-winter .season-feature{background:#e3efeb;border-color:#bad3c9}
.season-thanksgiving .season-feature{background:#f2e9de}
.season-patriotic .season-feature{background:#e9edf2}
.season-spring .season-feature{background:#edf3e7}
@media(max-width:650px){.seasonal-page-banner{min-height:310px;padding:45px 0}.seasonal-page-banner h1{font-size:clamp(1.95rem,7.1vw,2.6rem)!important;max-width:98%}.seasonal-page-banner:before{background:linear-gradient(90deg,rgba(13,39,33,.84),rgba(13,39,33,.5))!important}.seasonal-page-banner:after{display:none}.seasonal-page-banner p{font-size:13px;line-height:1.55}}

.launch-gate{background:#f3f2ed;color:#183d34;margin:0;min-height:100vh;font-family:var(--sans),Arial,sans-serif}
.launch-gate *{box-sizing:border-box}
.launch-shell{width:min(1210px,calc(100% - 48px));margin:0 auto;padding:clamp(20px,4vw,52px) 0 25px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}
.launch-card{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);background:#fcfaf6;box-shadow:0 24px 90px rgba(24,56,44,.10);min-height:590px}
.launch-visual{background-image:linear-gradient(180deg,rgba(9,39,31,.53) 0%,transparent 35%,rgba(9,39,31,.24) 100%),var(--launch-image);background-position:center center;background-size:cover;padding:37px;position:relative;min-height:575px;display:flex;flex-direction:column;justify-content:space-between}
.launch-wordmark{font:clamp(20px,2.5vw,32px)/1.1 Georgia,serif;color:white;text-decoration:none;letter-spacing:.04em;text-shadow:0 1px 12px rgba(0,0,0,.3)}
.launch-wordmark small{display:block;font:700 9px/1.5 var(--sans);letter-spacing:.25em;margin-top:12px;color:#f2f2e9}
.launch-visual-credit{color:#fff9ed;font:700 10px/1.4 var(--sans);letter-spacing:.15em;max-width:330px;text-shadow:0 1px 10px #102d22}
.launch-copy{padding:clamp(30px,5vw,80px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.launch-copy h1{font:400 clamp(2.25rem,3.5vw,3.7rem)/1.14 Georgia,serif;max-width:570px;letter-spacing:-.01em;margin:14px 0 18px;color:#18392f;overflow-wrap:normal}
.launch-copy>p{font:15px/1.75 var(--sans);color:#526e61;max-width:540px;margin:0 0 18px}
.launch-benefits{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 24px}
.launch-benefits span{font-size:11px;border:1px solid #cbd9cd;background:#eef3ea;padding:7px 9px;color:#36594b}
.launch-form{display:grid;grid-template-columns:1fr;gap:8px;width:100%}
.launch-form label{display:block;font:700 12px/1.4 var(--sans);color:#3f5b4b;margin:6px 0 0}
.launch-form small{font-weight:400;color:#718879}
.launch-form input:not([type=checkbox]),.launch-form select{height:43px;padding:9px 12px;width:100%;min-width:0;border:1px solid #cdd8ce;background:#fff;color:#193e34;border-radius:2px;outline-offset:2px;font:14px var(--sans)}
.launch-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.launch-form-row label{display:grid;gap:7px}
.launch-form label.launch-check{display:flex;gap:10px;align-items:start;font-weight:400;font-size:12px;margin:7px 0 8px;cursor:pointer;line-height:1.5}
.launch-check input{margin-top:3px;flex:none}
.launch-form .btn{justify-self:start;min-height:45px}
.launch-honey{position:absolute!important;left:-9999px;opacity:0;height:1px!important;width:1px!important;pointer-events:none}
.launch-message{background:#e8f1e9;border-left:3px solid #6f9878;padding:13px 15px;font-size:13px;line-height:1.5;margin:8px 0 13px}
.launch-contact{font:12px/1.6 var(--sans);margin-top:21px;color:#62766b}.launch-contact a,.launch-admin a{color:#1c5542;text-decoration:underline}
.launch-admin{margin-top:14px;padding:10px;background:#e5e8dc;font-size:12px}
.launch-privacy{color:#577063;font:12px/1.55 var(--sans);margin:2px 0 0}.launch-privacy summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.launch-privacy p{margin:8px 0 3px}
@media(max-width:900px){.launch-shell{width:min(680px,calc(100% - 32px));padding-top:16px}.launch-card{grid-template-columns:1fr}.launch-visual{min-height:270px;padding:25px;background-position:center 47%}.launch-copy{padding:32px}.launch-copy h1{font-size:clamp(2rem,6vw,3.2rem)}}
@media(max-width:440px){.launch-shell{width:100%;padding:0}.launch-visual{min-height:235px;padding:21px}.launch-wordmark{font-size:20px}.launch-copy{padding:27px 21px}.launch-copy h1{font-size:2.1rem}.launch-form-row{grid-template-columns:1fr;gap:0}.launch-benefits{gap:5px}}
/* Seasonal feature on the homepage is truly seasonal, not only a tiny ribbon. */
.season-halloween .season-feature{background:#eaeae0;background-image:linear-gradient(90deg,#edece5 0%,#edece5 62%,rgba(237,236,229,.16) 92%),url('/assets/img/season-halloween.webp');background-position:center,right center;background-size:cover,auto 100%;background-repeat:no-repeat}
.season-winter .season-feature{background:radial-gradient(circle at 93% 27%,#e6d5a5 0 4px,transparent 5px),radial-gradient(circle at 88% 62%,#f2ecc6 0 3px,transparent 4px),radial-gradient(circle at 82% 15%,#d4e5dc 0 5px,transparent 6px),linear-gradient(120deg,#e5eeea,#ebf0e6);border-top:3px solid #bfa67a}
.season-patriotic .season-feature{background:linear-gradient(110deg,#f0f3f3 0%,#eff2f7 65%,#dfecf0 100%);border-top:3px solid #b57072}
.season-thanksgiving .season-feature{background:linear-gradient(110deg,#f3efe6,#e8dfd1);border-top:3px solid #bd9677}
@media(max-width:690px){.season-halloween .season-feature{background-image:linear-gradient(90deg,#edece5ed,#edece5f5),url('/assets/img/season-halloween.webp');background-size:cover,cover}}
.season-art-note{display:block;color:#f7f6ec;font:10px/1.5 var(--sans);letter-spacing:.01em;margin-top:13px;opacity:.88}

/* Per-section photographic headers use an approved local image or a safe coastal fallback. */
.visual-banner:not(.seasonal-page-banner){background-image:var(--page-hero,url('/assets/img/hero-beach.webp'))}

/* Homepage v2.1: event-first, neighborhood-only news, and useful empty states. */
.home-events .section-heading,.home-desk .section-heading{align-items:end}.section-intro{font:400 14px/1.55 var(--sans);color:#63766c;margin:8px 0 0;max-width:630px}
.home-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.home-event-card{min-width:0;min-height:154px;display:grid;grid-template-columns:70px minmax(0,1fr);gap:13px;padding:21px 17px;border:1px solid #dfe5dc;background:#fff;color:#153c35;text-decoration:none;transition:background .2s,border-color .2s}.home-event-card:hover,.home-event-card:focus-visible{background:#f4f7f1;border-color:#a8bcaa}.home-event-date{border-right:1px solid #e1e6de;padding-right:12px;display:flex;flex-direction:column;text-align:center;align-self:start}.home-event-date strong{font:400 36px/1 var(--serif);color:#194639}.home-event-date small{font:700 10px/1.6 var(--sans);text-transform:uppercase;letter-spacing:.14em;color:#798d7c}.home-event-copy{min-width:0;display:flex;flex-direction:column;gap:6px}.home-event-copy .card-meta{margin:0;font-size:10px}.home-event-copy>strong{font:400 24px/1.15 Georgia,'Times New Roman',serif;overflow-wrap:anywhere}.home-event-copy>small{font:400 12px/1.4 var(--sans);color:#607268}.home-event-details{font:700 11px/1.4 var(--sans);color:#23634f;margin-top:auto;padding-top:6px}.home-events-empty{background:#f2f5ef;padding:25px}.home-events-empty p{margin-top:0}.home-events-empty a{color:#194e3f}
.home-desk{background:#f6f7f2}.home-desk-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.9fr);gap:24px;align-items:start}.home-desk-news{min-width:0;background:white;border:1px solid #e2e9e0;padding:0 22px}.home-desk-news .notice-row:last-child{border-bottom:0}.home-desk-news .notice-row{padding:22px 0}.home-desk-news .notice-row h3{font-size:clamp(1.2rem,1.7vw,1.65rem);line-height:1.22}.home-desk-intro{padding:28px 3px}.home-desk-intro h3{font:400 clamp(1.5rem,2.3vw,2rem)/1.15 Georgia,'Times New Roman',serif;margin:12px 0}.home-desk-intro p{font:400 14px/1.6 var(--sans);color:#5a6d61;max-width:630px}.home-desk-intro a{font:700 12px/1.5 var(--sans);color:#2b6956}.home-essentials{background:#e9efe8;padding:27px;min-width:0}.home-essentials h3{font:400 clamp(1.4rem,2vw,1.85rem)/1.2 Georgia,'Times New Roman',serif;margin:12px 0 18px}.home-essentials a{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:#1c4236;border-top:1px solid #d4dfd4;padding:13px 0}.home-essentials a strong{font:600 14px/1.35 var(--sans)}.home-essentials a small{font:400 12px/1.4 var(--sans);color:#66796c}.home-essentials a:hover strong{text-decoration:underline}.home-projects{padding:40px 0}.home-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.home-project-card{border:1px solid #dce6dc;background:#fff;display:flex;flex-direction:column;gap:9px;padding:23px;text-decoration:none;color:#164135}.home-project-card>strong{font:400 23px/1.2 Georgia,'Times New Roman',serif}.home-project-card>small{font:400 13px/1.5 var(--sans);color:#617466}.home-project-card .text-arrow{margin-top:auto;font-size:11px}
@media(max-width:1020px){.home-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-desk-grid{grid-template-columns:minmax(0,1.2fr) minmax(250px,.9fr)}}
@media(max-width:680px){.home-events .section-heading,.home-desk .section-heading{align-items:start;flex-wrap:wrap}.home-event-grid{grid-template-columns:1fr;gap:9px}.home-event-card{min-height:0;grid-template-columns:52px minmax(0,1fr);padding:15px;gap:14px}.home-event-date strong{font-size:29px}.home-event-copy>strong{font-size:21px}.home-desk-grid{grid-template-columns:1fr;gap:13px}.home-desk-news{padding:0 15px}.home-essentials{padding:22px}.home-project-grid{grid-template-columns:1fr}.home-projects{padding:20px 0}.section-intro{font-size:13px}}

/* BocaVillas v2.2 visual editorial spread. Real local reports remain source-first. */
.home-feature-strip{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px;margin-top:0;margin-bottom:clamp(28px,4vw,55px)}
.home-visual-card{position:relative;display:block;overflow:hidden;isolation:isolate;min-height:250px;background:linear-gradient(125deg,#254a40,#799b86);text-decoration:none;color:#fff;border-radius:2px}
.home-visual-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;transition:transform .35s ease}
.home-visual-card.home-coast>img{object-position:center 59%}
.home-visual-card.home-season>img{object-position:center 58%}
.home-visual-card:hover>img{transform:scale(1.03)}
.home-visual-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(10,38,31,.80),rgba(12,42,34,.38) 62%,rgba(14,41,34,.14))}
.home-visual-card.home-season .home-visual-shade{background:linear-gradient(90deg,rgba(26,42,28,.81),rgba(23,42,30,.43) 72%,rgba(20,39,30,.16))}
.home-visual-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;gap:7px;min-height:250px;padding:clamp(23px,3vw,39px);max-width:560px}
.home-visual-copy .eyebrow{font-size:10px;letter-spacing:.19em;color:#e3eee0}
.home-visual-copy strong{font:400 clamp(1.6rem,2.25vw,2.3rem)/1.13 Georgia,'Times New Roman',serif;color:#fff;max-width:18ch}
.home-visual-copy small{font:600 12px/1.5 var(--sans);color:#f7f9f3;letter-spacing:.01em;margin-top:3px}
@media(max-width:760px){.home-feature-strip{grid-template-columns:1fr;gap:10px;margin-bottom:32px}.home-visual-card,.home-visual-copy{min-height:208px}.home-visual-copy{padding:22px}.home-visual-copy strong{font-size:clamp(1.5rem,5vw,2rem)}}
@media(prefers-reduced-motion:reduce){.home-visual-card>img{transition:none}}
