/* Clear, quiet controls: shape and color communicate the action. */
.btn,.polished .btn{border-radius:5px;min-height:52px;padding:14px 22px;font-size:14px;line-height:1.45;text-align:center;box-shadow:0 2px 6px #08170d14;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s;transform:none}
.links .btn{font-size:13px;min-height:46px;padding:12px 16px}
.forest-actions{gap:16px}
.forest-actions .btn,.contactbox .btn{font-size:14px!important}
.light-link{min-height:48px;padding:12px 18px;border:1px solid #f4efd98c;border-radius:5px;background:#10291d66;font-size:14px;font-weight:600;line-height:1.45;text-decoration:none;transition:background-color .18s,border-color .18s,box-shadow .18s}
.text-link{font-size:14px;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;transition:color .18s}
.forest-bottom>a{text-decoration:underline;text-underline-offset:5px;min-height:44px;display:inline-flex;align-items:center}
.service-more{display:inline-flex;min-height:44px;font-size:12px;text-decoration:underline;text-underline-offset:5px;letter-spacing:.6px}
.hero-project{transition:border-color .18s,box-shadow .18s;transform:none}
.hero-project:hover{transform:none}
.hero-project strong,.feature-projects strong{padding-right:0}
.feature-projects a>span{padding-right:0}
.photo-dialog .viewer-top{flex-wrap:wrap}
.photo-dialog .viewer-controls{gap:8px}
.photo-dialog button{min-height:44px;padding:10px 14px;border-radius:5px;font-family:ForestSans,Arial,sans-serif;transition:background-color .18s,box-shadow .18s}
.portfolio-jumps a{display:inline-flex;align-items:center;border-radius:5px;text-decoration:none;transition:background-color .18s,border-color .18s}
.photo-hint{font-family:ForestSans,Arial,sans-serif}
.mobile-actions a{transition:background-color .18s,color .18s}
.btn:hover,.polished .btn:hover{transform:none}
@media(hover:hover){
 .btn:hover,.polished .btn:hover{background:#173d2a;border-color:#173d2a;box-shadow:0 0 0 3px #9aaf7929,0 5px 16px #08170d24}
 .cream-btn:hover,.polished .cream-btn:hover,.page-head .btn:hover,.contactbox .btn:hover{background:#fffbe9;border-color:#fffbe9;color:#183827;box-shadow:0 0 0 3px #f4efd91f,0 5px 20px #08170d33}
 .light-link:hover{background:#f4efd920;border-color:#f4efd9;box-shadow:0 0 0 3px #f4efd912}
 .hero-project:hover{border-color:#f4efd9b3;box-shadow:0 10px 40px #08170d66}
 .forest-service:hover .service-more,.feature-projects a:hover strong{text-decoration:underline;text-underline-offset:5px}
 .portfolio-jumps a:hover{background:#f4efd918;border-color:#e3e7d3}
 .photo-dialog button:hover{background:#e0e5bd;box-shadow:0 0 0 3px #e0e5bd22}
 .mobile-actions a:hover{background:#dde5d5}
 .mobile-actions a:last-child:hover{background:#173d2a}
}
.btn:focus-visible,.polished .btn:focus-visible,.light-link:focus-visible{outline:3px solid #c59850;outline-offset:4px}
.btn:active,.light-link:active,.photo-dialog button:active{filter:brightness(.94);box-shadow:inset 0 2px 5px #08170d26}
.mobile-actions a:active{background:#dde5d5}.mobile-actions a:last-child:active{background:#173d2a}
.btn:disabled{box-shadow:none;filter:none}
@media(max-width:550px){.forest-actions{align-items:stretch;gap:12px}.forest-actions .btn{padding:14px 16px;min-height:52px}.forest-actions .light-link{align-self:flex-start;justify-content:center;min-height:48px}.hero-project strong{padding-right:0}.viewer-count{font-size:12px}.photo-dialog button{padding:10px 12px}.photo-dialog .viewer-top{gap:8px}}
@media(prefers-reduced-motion:reduce){.btn,.light-link,.hero-project,.text-link,.photo-dialog button,.portfolio-jumps a,.mobile-actions a{transition:none!important}}
