/* Shared paragraph readability across services, shop and account pages. */
body p {
 color: #000 !important;
 font-size: 16px !important;
 line-height: 1.8 !important;
 opacity: 1 !important;
 overflow-wrap: break-word;
}
body p :where(span, strong, b, em, i, small) { color: inherit !important; }
body p a:not(.button) { color: #000 !important; text-decoration: underline; text-underline-offset: 3px; }
/* Light surfaces keep black copy readable in formerly dark sections. */
.dark, .portfolio { background: #eef3f8; color: #182f53; }
.dark .eyebrow, .portfolio .eyebrow { color: #8a3f0b; }
.portfolio h2 span { color: #a44709; }
.dark .step { border-color: #c5d1df; }
.dark .step:before { color: #a44709; }
.portfolio .project-card { background: #fff; color: #182f53; border-color: #c5d1df; }
.portfolio .project-card:hover { background: #e3ecf7; border-color: #59769b; }
.portfolio .project-category, .portfolio .project-domain strong { color: #8a3f0b; }
.portfolio .project-domain, .portfolio .project-arrow { border-color: #c5d1df; }
.screen p { background: #fff; padding: 4px 8px; border-radius: 4px; }
.footer { flex-wrap: wrap; }
.legal-links { display: flex; flex-wrap: wrap; gap: 12px 24px; width: 100%; padding-top: 16px; border-top: 1px solid #dfe6f0; font-size: 14px; color: #000; }
.legal-links a { text-underline-offset: 3px; }
body.page .prose h2 { margin-top: 32px; line-height: 1.35; }
/* Keep navigation available while the announcement scrolls away. */
.header {
 position: sticky;
 top: 0;
 z-index: 1000;
 background: #fff;
 box-shadow: 0 4px 16px #182f5310;
}
body.admin-bar .header { top: 32px; }
html { scroll-padding-top: 220px; }
.skip:focus { position: fixed; z-index: 1001; }
@media (max-width: 782px) and (min-width: 601px) {
 body.admin-bar .header { top: 46px; }
}
@media (max-width: 650px) {
 .header .brand-logo { width: 150px; }
 .header { gap: 10px; padding-block: 10px; }
 html { scroll-padding-top: 210px; }
}
@media (max-width: 600px) {
 body.admin-bar .header { top: 0; }
}
/* Match the Sample Works card interaction for the three services. */
.gt-store .gt-hero { padding-top: 80px; }
.gt-store .gt-hero .gt-kicker { margin-bottom: 28px; line-height: 1.6; }
.gt-store .gt-hero h1 { margin-top: 0; }
@media (max-width: 760px) {
 .gt-store .gt-hero { padding-top: 56px; }
 .gt-store .gt-hero .gt-kicker { margin-bottom: 24px; }
}
#services .card {
 transition: transform .18s, border-color .18s, background .18s;
}
#services .card:hover,
#services .card:focus-within {
 transform: translateY(-4px);
 border-color: #59769b;
 background: #e3ecf7;
}
@media (prefers-reduced-motion: reduce) {
 #services .card { transition: none; }
 #services .card:hover, #services .card:focus-within { transform: none; }
}
