
.service-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:1.25rem; }
.features .feature-box { grid-column:span 2; grid-template-columns:1fr; gap:0; padding:1.8rem; background:#fff; border:1px solid #e2e8ee; border-radius:14px; box-shadow:0 5px 20px rgba(24,42,49,.035); align-content:start; }
.features .feature-box:nth-child(4) { grid-column:2 / span 2; }
.features .feature-box:nth-child(5) { grid-column:4 / span 2; }
.features .service-icon { grid-row:auto; margin-bottom:1.25rem; color:#3b99e0; }
.process-section { background:#f6f6f6; }
.process-section .block-heading h2 { color:#3b99e0; font-weight:400; }
.section-eyebrow { display:block; margin-bottom:1rem; color:#2879b4; font-size:.75rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.process-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:2rem; padding:0; margin:0; list-style:none; }
.step-number { display:block; font-size:2.4rem; font-weight:600; color:#94b6ce; margin-bottom:.8rem; }
.process-grid h3 { font-size:1.1rem; font-weight:600; }
.process-grid p { font-size:.9rem; line-height:1.8; color:#455460; }
.process-cta { text-align:center; margin-top:2rem; }
.lexi-button { display:inline-flex; padding:.9rem 1.25rem; border-radius:8px; background:#2879b4; color:white; text-decoration:none; font-weight:600; font-size:.9rem; }
.lexi-button:hover { color:white; background:#216491; }
.lexi-footer { padding:3rem 0 0; background:#fff; border-top:1px solid #e2e8ee; }
.footer-layout { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:3rem; }
.footer-brand { font-size:2rem; font-weight:400; }
.footer-brand span { color:#3b99e0; }
.lexi-footer a { color:#334553; text-decoration:none; }
.lexi-footer a:hover { color:#2879b4; }
.footer-layout p { font-size:.85rem; line-height:1.8; color:#455460; max-width:330px; margin-top:.8rem; }
.footer-layout nav,.footer-contact { display:flex; flex-direction:column; gap:.85rem; align-items:flex-start; font-size:.9rem; }
.footer-contact .language-switch { order:0; margin:0; }
.footer-bottom { margin-top:2.5rem; border-top:1px solid #e2e8ee; padding-top:1.2rem; padding-bottom:1.2rem; font-size:.75rem; color:#455460; }
@media(max-width:991px) { .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .features .feature-box,.features .feature-box:nth-child(4),.features .feature-box:nth-child(5) { grid-column:auto; } .process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) { .service-grid { grid-template-columns:1fr; } .features .feature-box { padding:1.5rem; } .footer-layout { grid-template-columns:1fr; gap:2rem; } .process-grid { gap:1.2rem; } .step-number { font-size:2rem; } }
.hero-links a { display:inline-flex; align-items:center; justify-content:center; padding:.85rem 1.25rem; border:1px solid rgba(255,255,255,.8); border-radius:8px; text-decoration:none; font-size:.9rem; }
.hero-links a:first-child { background:#2879b4; border-color:#2879b4; }
.hero-links a:hover { background:rgba(255,255,255,.12); text-decoration:none; }
.hero-links a:first-child:hover { background:#216491; }
.privacy-copy { max-width:800px; margin:auto; line-height:1.85; }
.privacy-copy h2 { font-size:1.25rem; font-weight:600; margin:2rem 0 .7rem; }
.privacy-copy a,.form-privacy a { color:#075bb5; }
.privacy-draft { padding:1rem 1.25rem; background:#fff4d8; border-left:3px solid #d7a241; }
.form-privacy { font-size:.8rem; line-height:1.7; color:#455460; }

/* v36: consistent primary actions and navigation links. */
.hero-links a:first-child,.lexi-button,.contact-submit {
 display:inline-flex; align-items:center; justify-content:center;
 min-height:46px; padding:.85rem 1.25rem; border:1px solid #2879b4;
 border-radius:8px; background:#2879b4; color:#fff;
 font-family:inherit; font-size:.9rem; font-weight:600; line-height:1.4;
 text-decoration:none; cursor:pointer;
 transition:background-color .2s ease,border-color .2s ease,color .2s ease;
}
.hero-links a:first-child:hover,.lexi-button:hover,.contact-submit:hover {
 background:#216491; border-color:#216491; color:#fff; text-decoration:none;
}
.hero-links a:first-child:focus-visible,.lexi-button:focus-visible,.contact-submit:focus-visible {
 outline:2px solid #2879b4; outline-offset:4px;
}
.hero-links a:first-child:focus-visible { outline-color:#fff; }
.project-link,.work-link { color:#075bb5; font-weight:600; text-decoration:none; text-underline-offset:.2em; }
.project-link:hover,.work-link:hover { color:#064584; text-decoration:underline; }
/* Keep text links readable on the translucent project caption. */
.gallery-slide .project-link { color:#253c46; text-decoration:underline; }
.gallery-slide .project-link:hover { color:#101e25; }
.clean-navbar .nav-link,.lexi-footer a { transition:color .2s ease; }
.clean-navbar .nav-link:hover,.lexi-footer a:hover { color:#2879b4; }
@media(prefers-reduced-motion:reduce) {
 .hero-links a:first-child,.lexi-button,.contact-submit,.clean-navbar .nav-link,.lexi-footer a { transition:none; }
}

/* v37: match primary buttons to the existing text-link blue. */
.hero-links a:first-child,.lexi-button,.contact-submit { background:#075bb5; border-color:#075bb5; }
.hero-links a:first-child:hover,.lexi-button:hover,.contact-submit:hover { background:#064584; border-color:#064584; }
.lexi-button:focus-visible,.contact-submit:focus-visible { outline-color:#075bb5; }

/* v38: primary buttons use the original heading's light blue. */
.hero-links a:first-child,.lexi-button,.contact-submit { background:#3b99e0; border-color:#3b99e0; color:#102f43; }
.hero-links a:first-child:hover,.lexi-button:hover,.contact-submit:hover { background:#64afe7; border-color:#64afe7; color:#102f43; }
.lexi-button:focus-visible,.contact-submit:focus-visible { outline-color:#3b99e0; }

/* v39: white text in all primary buttons. */
.hero-links a:first-child,.lexi-button,.contact-submit,
.hero-links a:first-child:hover,.lexi-button:hover,.contact-submit:hover { color:#fff; }

/* v40: compact primary buttons with subtle depth and darker hover. */
.hero-links a:first-child,.lexi-button,.contact-submit { min-height:44px; padding:.7rem 1.1rem; box-shadow:0 3px 9px rgba(35,92,134,.14); transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease; }
.hero-links a:first-child:hover,.lexi-button:hover,.contact-submit:hover { background:#2879b4; border-color:#2879b4; box-shadow:0 4px 12px rgba(35,92,134,.2); color:#fff; }
@media(prefers-reduced-motion:reduce) { .hero-links a:first-child,.lexi-button,.contact-submit { transition:none; } }

/* v41: gentle contact form guidance. */
.form-hint,.contact-phone-note { font-size:.85rem; line-height:1.7; color:#455460; }
.form-hint { margin-bottom:1.5rem; }
.contact-phone-note { margin-top:.5rem; margin-bottom:0; }

/* v42: restrained, consistent secondary links. */
.project-link,.work-link { display:inline-block; color:#2879b4; font-size:.9rem; font-weight:600; line-height:1.6; text-decoration:underline; text-decoration-color:rgba(40,121,180,.3); text-decoration-thickness:1px; text-underline-offset:.3em; transition:color .2s ease,text-decoration-color .2s ease; }
.project-link:hover,.work-link:hover { color:#205f8d; text-decoration-color:currentColor; }
.project-link:focus-visible,.work-link:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
.gallery-slide .project-link { font-size:14px; color:#253c46; text-decoration-color:rgba(37,60,70,.45); }
.gallery-slide .project-link:hover { color:#101e25; text-decoration-color:currentColor; }
@media(prefers-reduced-motion:reduce) { .project-link,.work-link { transition:none; } }

/* v44: plain text links using the same light-blue palette. */
.project-link,.work-link,.gallery-slide .project-link { background:transparent; border:0; border-radius:0; box-shadow:none; min-height:0; padding:0; color:#3b99e0; text-decoration:underline; text-decoration-color:rgba(59,153,224,.35); text-underline-offset:.3em; }
.project-link:hover,.work-link:hover,.gallery-slide .project-link:hover { background:transparent; color:#2879b4; box-shadow:none; text-decoration-color:currentColor; }

/* v45: restore the darker link only inside the gallery caption. */
.gallery-slide .project-link { color:#253c46; text-decoration-color:rgba(37,60,70,.45); }
.gallery-slide .project-link:hover { color:#101e25; text-decoration-color:currentColor; }
