
/* Portfolio polish · real client work, no stock imagery */
.profile-portfolio-intro{max-width:650px;font-size:13px;line-height:1.75;color:var(--muted);margin:16px 0 0}
.profile-portfolio-tag{display:block;margin-top:14px;color:#427f81;font:700 10px var(--sans);letter-spacing:.15em;text-transform:uppercase}
.profile-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:33px}
.profile-work-card{display:block;position:relative;overflow:hidden;margin:0;border:1px solid #d9e3e2;background:#dbe6e3;aspect-ratio:4/5;text-decoration:none;color:white}
.profile-work-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.profile-work-card:hover img,.profile-work-card:focus-visible img{transform:scale(1.055)}
.profile-work-card:focus-visible{outline:3px solid #38aab3;outline-offset:3px}
.profile-work-card:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(14,20,22,.76));pointer-events:none}
.profile-work-card figcaption{position:absolute;z-index:1;bottom:16px;left:18px;right:20px;display:flex;align-items:end;justify-content:space-between;gap:8px;color:#fff;font-size:12px;line-height:1.4}
.profile-work-card figcaption .work-zoom{display:grid;place-items:center;width:30px;height:30px;border:1px solid #f0ffffa0;border-radius:50%;flex-shrink:0;font-size:17px}
.profile-work-note{font-size:11px;line-height:1.7;color:#737e7e;margin:18px 0 0}
.profile-portrait.profile-work-feature img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.profile-portrait.profile-work-feature:before{display:none}
.profile-portrait.profile-work-feature .profile-portrait-label{background:#131a1cd9;color:#e8ffff;padding:10px 12px;left:14px;bottom:14px;max-width:calc(100% - 28px);line-height:1.5}
.profile-words .profile-intro-prompt{font-family:var(--serif);font-style:italic;font-size:19px;color:#467f80;margin:20px 0 5px}
.profile-lightbox{border:none;padding:0;background:#101414f7;color:#fff;max-width:none;max-height:none;width:100vw;height:100dvh;overscroll-behavior:contain}
.profile-lightbox::backdrop{background:#0b1111ee}
.profile-lightbox-inner{display:grid;grid-template-rows:auto 1fr auto;width:100%;height:100%;max-height:100dvh;align-items:center;justify-items:center;padding:max(14px,env(safe-area-inset-top)) 16px max(20px,env(safe-area-inset-bottom));gap:10px}
.profile-lightbox-head{width:min(100%,960px);display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.12em}
.profile-lightbox-close{color:white;background:transparent;border:1px solid #ffffff88;border-radius:50%;width:43px;height:43px;font-size:23px;cursor:pointer}
.profile-lightbox-view{display:flex;align-items:center;justify-content:center;max-height:100%;min-height:0;width:100%;gap:8px}
.profile-lightbox-view img{display:block;max-width:min(100%,900px);max-height:100%;width:auto;height:auto;object-fit:contain;min-width:0}
.profile-lightbox-arrow{border:1px solid #ffffff70;border-radius:50%;background:#192425b8;color:white;font-size:27px;line-height:1;width:43px;height:43px;flex-shrink:0;cursor:pointer}
.profile-lightbox-caption{font-size:12px;max-width:90%;text-align:center;line-height:1.4}
@media(max-width:750px){.profile-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.profile-work-card figcaption{font-size:10px;left:11px;bottom:12px;right:9px}.profile-work-card figcaption .work-zoom{width:24px;height:24px}.profile-lightbox-view{gap:3px}.profile-lightbox-arrow{width:34px;height:34px;flex-shrink:0;font-size:21px}.profile-lightbox-inner{padding-left:6px;padding-right:6px}}
@media(max-width:350px){.profile-work-grid{grid-template-columns:1fr 1fr}.profile-work-card figcaption span:first-child{font-size:9px}}
@media(prefers-reduced-motion:reduce){.profile-work-card img{transition:none}}
/* Keep copy and action links readable on the approved charcoal service band. */
.profile-services .profile-section-grid p{color:#e0e6e7!important}
.profile-services .profile-section-grid h3{color:#f7fbfb}
.profile-services .profile-section-grid .dark-link{color:#bff1f1;border-color:#91c8c8}
.profile-services .profile-section-grid .dark-link:hover{color:#fff}
@media(max-width:750px){.profile-words>p{font-size:14px;line-height:1.8}.profile-portfolio-intro{font-size:13px}}

/* v28: grounded editorial biographies and concise visual credentials. */
.profile-bio-paragraph{margin:0 0 13px;max-width:670px;color:#4f5759;font-size:14px;line-height:1.85}
.profile-words>.profile-bio-paragraph:first-of-type{font-size:15px;color:#343b3e}
.profile-facts{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 26px;max-width:660px}
.profile-fact{display:flex;flex-direction:column;gap:6px;min-width:132px;flex:1 1 135px;padding:14px 15px;border:1px solid #dbe6e5;background:#f5fbfa}
.profile-fact strong{font:500 clamp(16px,1.75vw,22px)/1.2 var(--serif);letter-spacing:-.025em;color:#1d393b}
.profile-fact span{font:700 9px/1.5 var(--sans);color:#587479;letter-spacing:.065em;text-transform:uppercase}
.profile-words .profile-actions{margin-top:0;gap:14px 21px}
.profile-work-grid{scroll-margin-top:24px}
@media(max-width:620px){.profile-bio-paragraph{font-size:13px;line-height:1.8}.profile-words>.profile-bio-paragraph:first-of-type{font-size:14px}.profile-facts{gap:8px;margin:17px 0 21px}.profile-fact{flex-basis:calc(50% - 8px);min-width:0;padding:12px 11px}.profile-fact strong{font-size:18px}.profile-fact span{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.profile-studio-nudge{margin:19px 0 0;padding:16px 19px;border-left:2px solid #6bbac0;background:#f3f9f8;color:#3d5558;font-size:13px;line-height:1.7}
.profile-studio-nudge a{color:#236d75;font-weight:700;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#78b0b3}
.profile-studio-nudge a:hover{color:#142f33}
@media(max-width:620px){.profile-studio-nudge{font-size:12px;padding:14px 13px}}

/* Dev's wink on Tara's page: separate from Tara's own professional biography. */
.profile-developer-note{margin:0 0 23px;padding:15px 18px 15px 19px;border-left:3px solid #7bbdc0;background:#f2f8f7;color:#365256;max-width:660px}
.profile-developer-note-title{display:block;margin:0 0 6px;font:700 9px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.13em;color:#427c81}
.profile-developer-note p{font:400 13px/1.72 var(--sans);margin:0;color:#365256}
.profile-developer-note strong{font-weight:700;color:#1d464b}
@media(max-width:620px){.profile-developer-note{margin-bottom:19px;padding:12px 14px}.profile-developer-note p{font-size:12px}}
