body.public-layout #services{padding-top:60px;padding-bottom:60px}
body.public-layout .service-grid{gap:24px;align-items:stretch}
body.public-layout .project-tile{background:#fff;color:#17283e;border:1px solid #dce5e9;border-radius:16px;min-height:0;padding:0;display:flex;justify-content:start;box-shadow:0 8px 28px #17283e0a;transition:transform .2s,box-shadow .2s}
body.public-layout .project-tile:hover{transform:translateY(-5px);box-shadow:0 14px 32px #17283e1c}
body.public-layout .project-tile>img{width:100%;height:235px;object-fit:cover;display:block;position:static}
body.public-layout .landscape-project>img{object-position:center 60%}
body.public-layout .project-copy{padding:26px;display:flex;flex-direction:column;flex:1;border-top:4px solid #07838e}
body.public-layout .landscape-project .project-copy{border-top-color:#b3576e}
body.public-layout .seasonal-project .project-copy{border-top-color:#c69839}
body.public-layout .project-copy>.eyebrow{color:#096d79}
body.public-layout .project-copy h3{font-size:29px;line-height:1.13;margin:13px 0}
body.public-layout .project-copy p{color:#536677;min-height:0;max-width:none;margin:0 0 24px}
body.public-layout .project-cta{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:18px;border-top:1px solid #e4ebee;font-size:13px;font-weight:700;color:#096d79}
body.public-layout .project-cta>span{font-size:22px}
body.public-layout .reviews-section{background:#edf5f6;border-block:1px solid #d8e7e8;max-width:none}
.reviews-section .section-heading,.reviews-grid,.review-empty{max-width:1260px;margin-left:auto;margin-right:auto}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.review-card{padding:26px;border:1px solid #d9e5e8;background:white;border-radius:14px;margin:0;overflow-wrap:anywhere}
.review-card p{white-space:pre-line;color:#425767;font-size:15px}.review-card small{display:block;color:#607381;margin-top:8px;font-size:12px}.review-stars{color:#946719;font-size:24px;letter-spacing:2px}.review-score strong{font-size:32px;color:#17283e}.review-empty{padding:28px;border:1px dashed #a6c1c4;border-radius:14px;background:#ffffff80}.review-empty h3{margin-top:0}.review-empty p{margin-bottom:0}.review-pagination{display:flex;justify-content:space-between;padding-top:24px;padding-bottom:24px}
.rating-picker{display:flex;gap:8px;flex-wrap:wrap;border:0;padding:15px 0;margin:10px 0}.rating-picker legend{font-size:14px;font-weight:650}.rating-picker label{display:flex;align-items:center;gap:7px;border:1px solid #bbccd1;border-radius:8px;padding:10px;margin:0;cursor:pointer}.rating-picker input{width:16px;height:16px;margin:0}.rating-picker label:has(input:checked){background:#e1f2f3;border-color:#087d89}.review-form h1{font-size:42px}
@media(max-width:950px){body.public-layout .project-copy{padding:20px}.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.public-layout nav{gap:16px}}
@media(max-width:760px){body.public-layout .project-tile>img{height:230px}body.public-layout #services{padding:40px 6%}body.public-layout nav{flex-wrap:wrap;justify-content:flex-start;column-gap:20px;row-gap:4px}.reviews-grid{grid-template-columns:1fr}.review-form h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){body.public-layout .project-tile{transition:none}body.public-layout .project-tile:hover{transform:none}}

/* Public website: continuous navy background with readable white copy. */
body.public-layout{background:#17283e;color:#fff;color-scheme:dark}
body.public-layout :is(.section,.about-band,.contact-band,.reviews-section,.form-card,.project-tile,.review-card,.review-empty){background:#17283e;color:#fff;border-color:#405670}
body.public-layout :is(h1,h2,h3,.review-score strong){color:#fff}
body.public-layout :is(.section-heading p,.project-copy p,.about-band p:not(.eyebrow),.contact-band p:not(.eyebrow),.service-note,figcaption,.review-card p,.review-card small,.muted,.service-picker>p,.service-hint){color:#dce6f2}
body.public-layout :is(.project-copy>.eyebrow,.project-cta,.text-link,.service-count){color:#a5e8e6}
body.public-layout .project-cta{border-top-color:#405670}
body.public-layout .project-tile{box-shadow:0 8px 28px #0002}
body.public-layout .project-tile:hover{box-shadow:0 14px 32px #0004;border-color:#7792b0}
body.public-layout .review-stars{color:#ffd378}
body.public-layout :is(input,select,textarea){background:#102036;color:#fff;border-color:#71869f}
body.public-layout :is(input,textarea)::placeholder{color:#b8c7d9;opacity:1}
body.public-layout :is(.service-group,.service-group[open],.service-selection,.notice){background:#20374f;color:#fff;border-color:#71869f}
body.public-layout .rating-picker label{border-color:#71869f}
body.public-layout .rating-picker label:has(input:checked){background:#145e68;border-color:#a5e8e6}
body.public-layout :is(a,button,summary,input,select,textarea):focus-visible{outline:3px solid #a5e8e6;outline-offset:3px}
