/* Round 3: home-only selected work. Shared design files remain unchanged. */
.featured-work .section-heading{margin-bottom:42px}
.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.featured-card{min-width:0;display:flex;flex-direction:column;opacity:1;transform:none}
.featured-image{aspect-ratio:3/4;width:100%;overflow:hidden;margin-bottom:26px}
.featured-image img{display:block;width:100%;height:100%;object-fit:cover}
.featured-image .image-placeholder{min-height:0;height:100%;font-size:12px}
.featured-card h3{font-size:28px;font-weight:400;letter-spacing:-.7px;line-height:1.35;margin:0 0 12px}
.featured-card>p{font-size:13px;line-height:1.9;color:var(--muted);margin:0 0 17px;max-width:31ch;min-height:3.8em}
.featured-card .featured-link{align-self:flex-start;margin-top:auto;gap:8px;min-height:44px;font-size:12px}
.featured-link .arrow{transition:translate .27s cubic-bezier(.2,.8,.3,1.2)}
.featured-link:is(:hover,:focus-visible)>span>.arrow-left{translate:-5px 0}
.featured-link:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.featured-card.is-entering{animation:featured-enter .65s cubic-bezier(.22,.61,.36,1) backwards;animation-delay:var(--entry-delay,0ms)}
@keyframes featured-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.featured-grid{gap:24px}.featured-card h3{font-size:25px}.featured-card>p{font-size:12px}.featured-card .featured-link{font-size:11px}}
@media(max-width:760px){.featured-grid{grid-template-columns:1fr;gap:42px}.featured-work .section-heading{margin-bottom:30px}.featured-image{aspect-ratio:3/4;margin-bottom:21px}.featured-card h3{font-size:27px}.featured-card>p{font-size:14px;max-width:34ch;min-height:0}.featured-card .featured-link{font-size:13px}.featured-card.is-entering{animation-delay:0ms}}
@media(prefers-reduced-motion:reduce){.featured-card.is-entering{opacity:1;transform:none;animation:none}.featured-link .arrow{transition:none;translate:none!important}}


/* Round 5: only the selected-work heading, graphic description and about copy. */
.featured-work .section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px}
.featured-work .featured-label{font-size:12px;letter-spacing:1.1px;font-weight:300;flex-shrink:0}
.featured-work .featured-card:last-child>p{max-width:100%;text-wrap:balance}
.about .about-copy p{max-width:520px;text-wrap:pretty}
@media(max-width:760px){.featured-work .section-heading{flex-wrap:wrap;gap:12px}.featured-work .featured-label{font-size:9px;letter-spacing:.5px;margin-inline-start:auto}.about .about-copy p{max-width:100%}}

/* Round 6: vertical process on every viewport; all other sections unchanged. */
#process .process-route{max-width:620px;margin-inline:auto}
#process .process-steps{display:flex;flex-direction:column;gap:44px}
#process .process-steps li{display:grid;grid-template-columns:39px minmax(0,1fr);grid-template-rows:auto auto;align-content:start;gap:10px 28px;text-align:right;padding:0;min-height:120px}
#process .step-number{grid-row:1/3;margin:0}
#process .process-route h3{margin:3px 0 0}
#process .process-route p{margin:0;max-width:360px;font-size:14px;text-wrap:balance}
#process .route-track{right:19px;left:auto;top:19.5px;bottom:calc(120px - 19.5px);width:1px;height:auto}
#process .route-fill{transform:scaleY(var(--route-progress));transform-origin:top}
@media(max-width:760px){#process .process-steps{gap:35px}#process .process-steps li{gap:10px 22px;min-height:130px}#process .process-route p{font-size:13px;max-width:360px}#process .route-track{bottom:calc(130px - 19.5px)}}
@media(prefers-reduced-motion:reduce){#process .route-fill{transform:none}}

/* Round 7: package details only. Existing type sizes and card grid retained. */
#pricing .price-number{white-space:nowrap}
#pricing .features-heading{font-size:12px;line-height:1.6;margin:0 0 16px}
#pricing .plan li:before{content:'';width:5px;height:5px;top:.55em;background:var(--white);border:1px solid #b9bfa9;box-sizing:border-box}
#pricing .pricing-bottom{margin-top:50px}
@media(max-width:760px){#pricing .pricing-bottom{margin-top:38px}}

/* Final homepage portrait: fill its existing frame; keep the head in view. */
img.about-photo{width:100%;object-position:center top}

/* 15D: only the existing images are links; preserve card entrance motion. */
.featured-image-link{display:block;transition:opacity .2s ease}
.featured-image-link:hover{opacity:.9}
.featured-image-link:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
@media(min-width:761px){#process .process-route p{max-width:29ch;text-wrap:balance}}
@media(prefers-reduced-motion:reduce){.featured-image-link{transition:none}}

/* 15E: desktop card text and mobile section-label alignment only. */
@media(min-width:761px){
 .featured-work .featured-card h3{text-align:center}
 .featured-work .featured-card>p{width:min(100%,42ch);max-width:42ch;min-height:2lh;margin-inline:auto;text-align:center;text-wrap:balance}
}
@media(max-width:760px){
 .featured-work .section-heading{direction:rtl;flex-wrap:nowrap;justify-content:space-between;gap:12px}
 .featured-work .section-heading #work-title{min-width:0}
 .featured-work .featured-label{margin:0;flex:0 0 auto}
 #pricing .pricing-bottom{align-items:center;text-align:center;gap:20px}
 #pricing .pricing-bottom p{max-width:28ch;margin-inline:auto}
 #pricing .pricing-bottom .text-link{align-self:center}
}
