/* V5.7 — visual refinement; opt-in pattern styles with minimal global overrides */
:root{--vn57-focus:#f1a34d;--vn57-card-border:rgba(255,255,255,.13)}
:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--vn57-focus);outline-offset:3px}
.site-header a:focus-visible,.vn56-hero a:focus-visible{outline-color:#f6c98d}
.vn57-section{padding-block:clamp(48px,7vw,104px)}
.vn57-section-intro{padding-block:clamp(36px,6vw,80px);max-width:1000px}
.vn57-eyebrow{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent,#f1a34d);font-weight:700}
.vn57-card-grid{gap:clamp(14px,2vw,28px)!important;align-items:stretch}
.vn57-card-grid>.wp-block-column{display:flex;min-width:0}
.vn57-card{width:100%;height:100%;background:rgba(21,27,33,.86);border:1px solid var(--vn57-card-border);border-radius:18px;padding:clamp(20px,3vw,36px);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.vn57-card:hover{transform:translateY(-4px);border-color:rgba(241,163,77,.55);box-shadow:0 16px 40px rgba(0,0,0,.25)}
.vn57-card h3{font-size:clamp(20px,2vw,27px);line-height:1.22}
.vn57-cta-surface{background:linear-gradient(120deg,rgba(43,49,59,.98),rgba(16,24,33,.94));border:1px solid rgba(241,163,77,.28);border-radius:24px;padding:clamp(32px,6vw,80px);margin-block:clamp(48px,6vw,90px);box-shadow:0 22px 75px rgba(0,0,0,.22)}
.vn57-cta-surface .wp-block-buttons{margin-top:24px}
/* Ensure actionable text retains contrast in the header in both hover and keyboard states. */
.site-header .btn-primary:hover,.site-header .btn-primary:focus-visible,.site-header .header-cta:hover,.site-header .header-cta:focus-visible{color:var(--vn-cta-hover-text,#101418)!important}
.vn56-hero .wp-block-button__link:focus-visible{box-shadow:0 0 0 3px rgba(241,163,77,.45)}
:where(.vn57-section,.vn57-section-intro,.vn57-cta-surface) img{max-width:100%;height:auto}
@media(max-width:780px){.vn57-card-grid{flex-direction:column}.vn57-section{padding-block:52px}.vn57-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.vn57-card{transition:none}.vn57-card:hover{transform:none}}

.vn57-project-main{padding:clamp(130px,15vw,175px) 0 95px}.vn57-breadcrumb{display:flex;gap:12px;font-size:13px;color:#aab6bf;margin-bottom:38px}.vn57-breadcrumb a{color:inherit}.vn57-project-heading{max-width:920px}.vn57-project-heading h1{font-size:clamp(42px,5.3vw,82px);line-height:1.07;letter-spacing:-.035em}.vn57-project-lead{font-size:clamp(17px,1.6vw,23px);line-height:1.58;color:#b9c4cb}.vn57-project-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:25px}.vn57-project-tags a{display:inline-flex;border:1px solid #ffffff30;border-radius:100px;padding:8px 14px;color:#d6dbe0;font-size:13px}.vn57-project-cover{margin:36px 0 0}.vn57-project-cover img{display:block;width:100%;height:auto;max-height:690px;object-fit:cover;border-radius:20px}.vn57-project-content{max-width:900px;margin:55px auto;font-size:17px;line-height:1.8}.vn57-project-content :where(img,iframe,video){max-width:100%}.vn57-project-content :where(h2,h3){margin-top:1.5em}.vn57-project-actions{max-width:900px;margin:40px auto 0;padding:30px;border:1px solid #ffffff2d;border-radius:19px;background:rgba(21,27,33,.75)}.vn57-project-actions h2{font-size:clamp(24px,3vw,38px)}.vn57-project-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
