.cms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:25px}.cms-card{display:block;background:#f8f7f2;color:#1e2522;padding:24px;border:1px solid #ddd8cb;border-radius:8px;text-decoration:none}.cms-card h3{font-size:1.35rem;margin:10px 0}.cms-card p{line-height:1.65}.cms-card img{width:100%;height:200px;object-fit:cover}.cms-links{display:flex;flex-wrap:wrap;gap:14px}.cms-links a{color:#725d32}.cms-video{aspect-ratio:16/9}.cms-video iframe{width:100%;height:100%;border:0}.cms-controls{display:flex;flex-wrap:wrap;gap:12px}.cms-controls input,.cms-controls select{padding:12px;border:1px solid #bcb5a4;border-radius:5px;min-width:220px}.cms-article{line-height:1.85;margin:35px 0}.cms-article h2,.cms-article h3{margin:25px 0 10px}
.cms-pro-card .pro-main-photo{width:100%;max-height:260px;object-fit:contain;display:block;margin:12px 0;border-radius:6px}
.pro-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}
.pro-gallery figure{margin:0;min-width:0}
.pro-gallery a{display:block;overflow:hidden;border-radius:7px}
.pro-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.pro-gallery figcaption{font-size:.8rem;margin-top:4px}
.pro-gallery small{display:block;font-size:.72rem;opacity:.75}

/* Expandable project gallery for Trusted Local Pros */
.pro-gallery-panel{margin:18px 0;border-top:1px solid #d8d0bd;border-bottom:1px solid #d8d0bd}
.pro-gallery-panel summary{cursor:pointer;list-style:none;padding:15px 0;font-size:.78rem;font-weight:700;letter-spacing:.1em;color:#725d32;display:flex;justify-content:space-between;gap:12px;align-items:center}
.pro-gallery-panel summary::-webkit-details-marker{display:none}
.pro-gallery-panel summary span{font-size:.72rem;font-weight:500;letter-spacing:.03em}
.pro-gallery-panel summary:hover,.pro-gallery-panel summary:focus-visible{text-decoration:underline}
.pro-gallery-panel[open] summary{border-bottom:1px solid #e5dfd1}
.pro-gallery-panel .pro-gallery{margin:15px 0}

.noco-lightbox[hidden],.noco-lightbox button[hidden]{display:none!important}
.noco-lightbox{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:rgba(12,17,16,.94);color:white;padding:55px 76px}
.noco-lightbox figure{margin:0;max-width:100%;text-align:center}
.noco-lightbox img{display:block;max-width:100%;max-height:78vh;width:auto;height:auto;object-fit:contain;margin:auto}
.noco-lightbox figcaption{font-size:.85rem;margin-top:12px}
.noco-lightbox button{border:1px solid rgba(255,255,255,.45);background:rgba(23,27,25,.75);color:#fff;border-radius:50%;font-size:2.1rem;width:48px;height:48px;cursor:pointer}
.noco-lightbox button:focus-visible{outline:3px solid #d5b876}
.noco-lightbox-close{position:absolute;right:20px;top:20px}
.noco-lightbox-prev{position:absolute;left:16px;top:50%;transform:translateY(-50%)}
.noco-lightbox-next{position:absolute;right:16px;top:50%;transform:translateY(-50%)}
.noco-lightbox-counter{position:absolute;bottom:19px;text-align:center;font-size:.85rem;letter-spacing:.12em}
body.noco-lightbox-open{overflow:hidden}
@media(max-width:600px){.noco-lightbox{padding:55px 48px}.noco-lightbox button{width:38px;height:38px}.noco-lightbox-prev{left:4px}.noco-lightbox-next{right:4px}}
