.commercial-card{grid-column:1/-1;background:linear-gradient(120deg,#f0fdff,#edfffb)}
.areas{margin:78px clamp(24px,8vw,130px) 0;padding:54px clamp(24px,5vw,70px);border:1px solid var(--line);border-radius:30px;background:linear-gradient(135deg,#f7fdff,#effffb)}
.areas h2{font-family:Georgia,"Times New Roman",serif;color:var(--navy);font-size:clamp(32px,3vw,46px);line-height:1.15;letter-spacing:-1.2px;max-width:760px;margin:0 0 30px}
.area-list{display:flex;flex-wrap:wrap;gap:10px}
.area-list span{padding:9px 14px;border-radius:999px;background:white;border:1px solid var(--line);color:#315767;font-weight:700;font-size:14px}
.email-line{margin-top:18px;padding-top:18px}
.email-line strong{font-size:18px;overflow-wrap:anywhere}
.footer-contact{display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}
.brand-logo{display:block;width:210px;height:58px;object-fit:contain;object-position:left center}
.topbar .brand-logo{width:188px;height:58px}
.footer-brand .brand-logo{filter:drop-shadow(0 4px 12px rgba(0,0,0,.18))}
.hero-visual .logo-card{width:min(500px,95%);padding:28px;transform:rotate(1deg)}
.hero-visual .logo-card>img{aspect-ratio:auto;object-fit:contain;border-radius:10px}
.work-photo{position:relative;margin:0;min-height:300px;border-radius:28px;overflow:hidden;background:var(--navy);box-shadow:0 16px 42px rgba(8,47,73,.12)}
.work-photo.tall{min-height:390px}
.work-photo img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}
.work-photo::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(6,31,46,.88))}
.work-photo figcaption{position:absolute;z-index:2;left:25px;right:25px;bottom:23px;display:flex;flex-direction:column;color:white}
.work-photo figcaption span{font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:24px}
.work-photo figcaption small{font-size:13px;color:#d6edf3}
.facebook-link{display:inline-flex;margin-top:28px;color:var(--blue);font-weight:850;text-decoration:none}
.reviews{padding-bottom:36px}
.review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.review-card{position:relative;display:flex;flex-direction:column;min-height:270px;padding:34px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 16px 44px rgba(8,47,73,.07)}
.review-card:nth-child(even){background:linear-gradient(145deg,#f2fdff,#f2fffc)}
.quote-mark{font-family:Georgia,serif;color:var(--aqua);font-size:64px;line-height:.7}
.review-card blockquote{margin:18px 0 28px;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.5}
.review-card a{margin-top:auto;display:flex;justify-content:space-between;align-items:end;gap:18px;color:var(--navy);text-decoration:none}
.review-card a strong{font-size:15px}
.review-card a span{color:var(--blue);font-size:13px;font-weight:800;text-align:right}
@media(max-width:900px){.commercial-card{grid-column:auto}.areas{margin:60px 24px 0}}
@media(max-width:700px){.review-grid{grid-template-columns:1fr}}
@media(max-width:560px){.areas{margin:46px 12px 0;padding:42px 24px}.areas h2{font-size:34px}.review-card{min-height:0;padding:28px}.review-card blockquote{font-size:19px}.topbar .brand-logo{width:160px;height:48px}.work-photo,.work-photo.tall{min-height:300px}}
.service-link{display:inline-flex;align-items:center;gap:8px;margin-top:22px;color:var(--blue);font-size:14px;font-weight:850;text-decoration:none}.service-link span,.areas-link span{transition:transform .2s}.service-link:hover span,.areas-link:hover span{transform:translateX(4px)}.featured .service-link{color:var(--aqua)}
.areas-link{display:inline-flex;align-items:center;gap:8px;margin-top:28px;color:var(--blue);font-weight:850;text-decoration:none}
.footer-links{grid-column:1/-1;margin:0;display:flex;flex-wrap:wrap;gap:12px 24px}.footer-links a{font-size:13px;color:#d6edf3}.footer-links a:hover{color:white}
.submit-options{grid-column:1/-1;margin-top:4px}.submit-options>p{margin:0 0 12px;color:var(--navy);font-size:14px;font-weight:750}.submit-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.submit-channel{width:100%;padding:13px 16px;font-size:14px}.whatsapp-submit{background:#168642;box-shadow:0 12px 26px rgba(22,134,66,.22)}.email-submit{background:linear-gradient(135deg,var(--blue),#087b9b)}.sms-submit{background:var(--navy);box-shadow:0 12px 26px rgba(8,47,73,.2)}
@media(max-width:760px){.submit-buttons{grid-template-columns:1fr}.submit-channel{min-height:50px}}

/* Real-project photography */
.hero-project{min-height:500px;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);background:var(--navy)}
.hero-project>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.project-badge{position:absolute;left:22px;right:22px;bottom:22px;padding:17px 19px;border-radius:18px;background:rgba(6,31,46,.88);backdrop-filter:blur(8px);color:#fff}
.project-badge strong,.project-badge span{display:block}.project-badge span{color:#c6f5ed;font-size:14px}
.photo-grid{grid-template-columns:repeat(3,1fr);align-items:stretch}.work-photo,.work-photo.tall{min-height:360px}.work-photo img{transition:transform .35s ease}.work-photo:hover img{transform:scale(1.035)}.work-photo figcaption{padding-top:55px}.work-photo figcaption span{font-size:20px}
@media(max-width:900px){.hero-project{min-height:420px}.photo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.hero-project{min-height:420px;border-radius:25px}.project-badge{left:14px;right:14px;bottom:14px;padding:14px 16px}.photo-grid{grid-template-columns:1fr}.work-photo,.work-photo.tall{min-height:320px}}

/* Keep service details legible on the dark featured card. */
.service-card.featured li{color:#fff;background:#23516b}

.review-summary{display:flex;align-items:center;gap:12px;margin:18px 0 0}.review-summary strong{color:var(--navy);font-size:18px}.review-summary span{color:var(--muted);font-size:14px;font-weight:700}.quote-form .optional{display:inline;color:var(--muted);font-size:12px;font-weight:600}.quote-form label:nth-of-type(5){grid-column:auto}.quote-form label:nth-of-type(6),.quote-form label:nth-of-type(7){grid-column:1/-1}

/* Leave room for the sticky navigation when a section link is opened. */
html{scroll-padding-top:105px}
