/* Scoped portfolio components use the existing DriveLink design tokens. */
.dls-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.dls-project{display:flex;flex-direction:column;gap:0;min-width:0;overflow:hidden;background:var(--white);border-radius:var(--r);border:1px solid rgba(28,43,58,.06)}
.dls-project-preview{position:relative;display:block;flex-shrink:0;aspect-ratio:1440/1000;margin:0;padding:0;border:0;border-radius:0;overflow:hidden;background:var(--white)}
.dls-project-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .3s ease}
.dls-project-open{position:absolute;right:16px;bottom:16px;padding:8px 14px;border-radius:999px;background:var(--white);color:var(--navy);font-size:13px;font-weight:600;border:1px solid var(--border)}
.dls-project-preview:hover img{transform:scale(1.015)}
.dls-project-copy{display:flex;flex-direction:column;align-items:flex-start;flex:1;width:100%;margin:0;padding:28px 30px 26px;background:var(--white);border-radius:0}
.dls-project-copy .dls-project-link{margin-top:auto;padding-top:16px}
.dls-project-copy p{margin-bottom:16px}
.dls-project-category{font-size:12px;font-weight:600;color:var(--red);letter-spacing:.07em;text-transform:uppercase}
.dls-project-copy h2,.dls-project-copy h3{font-size:26px;line-height:1.15;font-weight:750;margin:10px 0 14px;letter-spacing:-.025em}
.dls-project-copy p{font-size:16px;line-height:1.6;color:var(--muted);max-width:56ch}
.dls-project-features{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:18px 0 0;padding:0}
.dls-project-features li{font-size:12px;line-height:1.4;border:1px solid var(--border);padding:6px 11px;border-radius:999px;color:var(--navy)}
.dls-project-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;margin-top:16px;color:var(--navy);font-weight:650;text-decoration:none;border-bottom:1px solid var(--border)}
.dls-project-link:hover{color:var(--red);border-bottom-color:var(--red)}
.dls-project-preview:focus-visible{outline-offset:-5px;outline:3px solid var(--red)}
.dls-project-grid--featured{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.dls-project-grid--featured .dls-project-copy{padding:23px}
.dls-project-grid--featured .dls-project-copy h3{font-size:23px}
.dls-project-grid--featured .dls-project-copy p{font-size:15px}
.dls-portfolio-home{scroll-margin-top:100px}
.dls-portfolio-more{display:flex;justify-content:center;margin-top:32px}
.dls-portfolio-more .btn-red,.dls-portfolio-contact .btn-red{gap:18px}
.dls-portfolio-intro{padding-top:58px;padding-bottom:36px}
.dls-portfolio-intro h1{font-size:clamp(36px,4.4vw,64px);font-weight:800;line-height:1.05;letter-spacing:-.035em;margin:16px 0 22px}
.dls-portfolio-lead{max-width:660px;color:var(--muted);font-size:19px;line-height:1.5}
.dls-portfolio-notice{max-width:920px;color:var(--muted);font-size:14px;line-height:1.6;margin-top:24px;padding-left:18px;border-left:2px solid var(--red)}
.dls-portfolio-works{padding-top:4px;padding-bottom:36px}
.dls-portfolio-contact-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--white);border-radius:var(--r);padding:42px}
.dls-portfolio-contact-inner .sec-title{margin:12px 0 14px}
.dls-portfolio-contact-inner .btn-red{flex-shrink:0}
@media(max-width:1000px){.dls-project-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr))}.dls-project-grid--featured .dls-project:last-child{grid-column:1/-1;max-width:calc(50% - 10px)}.dls-project-copy{padding:24px}.dls-portfolio-contact-inner{padding:30px}}
@media(max-width:700px){.dls-project-grid,.dls-project-grid--featured{grid-template-columns:minmax(0,1fr);gap:26px}.dls-project-grid--featured .dls-project:last-child{grid-column:auto;max-width:none}.dls-portfolio-intro{padding-top:36px;padding-bottom:30px}.dls-portfolio-lead{font-size:17px}.dls-project-copy h2,.dls-project-copy h3{font-size:25px}.dls-project-copy{padding:24px}.dls-portfolio-contact-inner{display:block;padding:26px}.dls-portfolio-contact-inner .btn-red{margin-top:24px}.dls-portfolio-notice{font-size:13px}.dls-portfolio-more{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.dls-project-preview img{transition:none}.dls-project-preview:hover img{transform:none}}
