/* Public editorial refinement; the publishing workspace retains its layout. */
body[data-page="home"],body[data-page="blog"]{--section-space:clamp(56px,6vw,88px);--column-gap:clamp(32px,5vw,72px)}
body[data-page="home"] main,body[data-page="blog"] main{min-width:0}
body[data-page="home"] h1,body[data-page="home"] h2,body[data-page="home"] h3,body[data-page="blog"] h1,body[data-page="blog"] h2{text-wrap:balance}
body[data-page="home"] .header,body[data-page="blog"] .header{min-height:120px;height:auto;padding-block:24px;gap:32px}
body[data-page="home"] .header nav,body[data-page="blog"] .header nav{gap:28px}
body[data-page="home"] nav a,body[data-page="blog"] nav a{display:inline-flex;align-items:center;min-height:44px}
body[data-page="blog"] nav a[aria-current="page"]{color:var(--wine);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
body[data-page="home"] .hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--column-gap);padding-block:56px var(--section-space)}
body[data-page="home"] .hero h1{font-size:clamp(38px,4.25vw,56px);line-height:1.16;margin-bottom:26px}
body[data-page="home"] .hero-copy>p{max-width:46ch;line-height:1.75;margin-bottom:28px}
body[data-page="home"] .hero-copy>p.hero-areas{max-width:44ch;line-height:1.75;margin-bottom:18px;color:var(--wine)}
body[data-page="home"] .hero-note{display:grid;grid-template-columns:1fr;gap:8px;border-top:1px solid var(--line);padding-top:18px;margin-top:28px;max-width:46ch;font-size:13px}
body[data-page="home"] .hero-note span+span{border:0;padding:0;max-width:none}
body[data-page="home"] .portrait{max-width:520px;justify-self:end}
body[data-page="home"] .services{padding-block:42px var(--section-space)}
body[data-page="home"] .section-intro{padding-bottom:32px;gap:32px}
body[data-page="home"] .services .section-intro p{max-width:38ch;line-height:1.7}
body[data-page="home"] .service-list article,body[data-page="home"] .service-list article+article{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:var(--column-gap);padding-block:44px}
body[data-page="home"] .service-list article:last-child{padding-bottom:0}
body[data-page="home"] .service-list h3{font-size:clamp(27px,2.5vw,32px);line-height:1.25;max-width:20ch;margin-bottom:16px}
body[data-page="home"] .service-list p{line-height:1.8;margin-bottom:20px}
body[data-page="home"] .service-list p.service-lead{line-height:1.65;max-width:30ch;color:var(--muted)}
body[data-page="home"] .investment-method{font-size:clamp(25px,2.4vw,30px);line-height:1.3;max-width:29ch;margin-bottom:24px}
body[data-page="home"] .service-list .investment-summary{font-weight:400;color:var(--wine);font-size:18px;line-height:1.65;margin-block:28px 20px}
body[data-page="home"] .service-cta{margin-top:12px;vertical-align:top;line-height:1.5;max-width:100%}
body[data-page="home"] .about{padding-block:var(--section-space)}
body[data-page="home"] .about-inner{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:var(--column-gap)}
body[data-page="home"] .about h2{font-size:clamp(34px,3.3vw,44px);line-height:1.2;max-width:17ch}
body[data-page="home"] .about-copy p{line-height:1.8;margin-bottom:24px}
body[data-page="home"] .collaborations{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:var(--column-gap);padding-block:var(--section-space) 36px}
body[data-page="home"] .collaborations h2{font-size:clamp(30px,3vw,40px);margin:0}
body[data-page="home"] .collaborations>p{line-height:1.8}
body[data-page="home"] .career-gallery{padding-block:28px var(--section-space)}
body[data-page="home"] .career-gallery>h2{font-size:30px;margin-bottom:28px}
body[data-page="home"] .career-photo-grid{gap:16px}
body[data-page="home"] .blog-section{border-top:1px solid var(--line);padding-block:var(--section-space)}
body[data-page="home"] .contact-with-form{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:var(--column-gap);padding-block:var(--section-space)}
body[data-page="home"] .contact h2{font-size:clamp(36px,3.6vw,46px);line-height:1.2}
body[data-page="home"] .contact-intro>p{max-width:38ch;line-height:1.8}
body[data-page="home"] .contact-field label{font-size:14px;margin-bottom:9px}
body[data-page="home"] .contact-fields{gap:24px 20px}
body[data-page="home"] .contact-field input:disabled,body[data-page="home"] .contact-field select:disabled,body[data-page="home"] .contact-field textarea:disabled{background:#f5f3ee;color:var(--muted)}
body[data-page="home"] footer,body[data-page="blog"] footer{gap:24px;padding-block:24px;font-size:13px}
body[data-page="home"] .text-link,body[data-page="blog"] .text-link{display:inline-flex;align-items:center;min-height:44px;line-height:1.5}
body[data-page="blog"] .blog-page{padding-block:48px var(--section-space)}
body[data-page="blog"] .cava-masthead{grid-template-columns:280px minmax(0,1fr);gap:var(--column-gap);padding-bottom:44px}
body[data-page="blog"] .cava-logo{max-width:280px}
body[data-page="blog"] .cava-heading h1{font:clamp(34px,3.6vw,46px)/1.2 Playfair,Georgia,serif;color:var(--wine);margin-bottom:16px}
body[data-page="blog"] .cava-tagline{font-size:clamp(26px,2.7vw,34px);line-height:1.3;margin-bottom:20px;max-width:none}
body[data-page="blog"] .cava-subtitle{font-size:17px;line-height:1.75;max-width:47ch}
body[data-page="blog"] .cava-browse{margin-top:20px;color:var(--wine)}
body[data-page="blog"] .cava-introduction{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:var(--column-gap);padding-block:48px}
body[data-page="blog"] .cava-introduction h2{font-size:clamp(27px,2.7vw,34px);max-width:24ch}
body[data-page="blog"] .cava-copy{line-height:1.8}
body[data-page="blog"] .cava-copy p{margin-bottom:22px}
body[data-page="blog"] .cava-copy p:last-child{margin:0}
body[data-page="blog"] .cava-articles{padding-top:48px}
body[data-page="home"] .post-grid,body[data-page="blog"] .post-grid{gap:32px}
body[data-page="home"] .post-card,body[data-page="blog"] .post-card{display:flex;flex-direction:column;min-width:0;padding-top:22px}
body[data-page="home"] .post-card h3,body[data-page="blog"] .post-card h3{font:27px/1.3 Playfair,Georgia,serif;color:var(--wine);margin:12px 0 16px;overflow-wrap:anywhere}
body[data-page="blog"] .post-card h3 a{text-decoration:none}
body[data-page="blog"] .post-card h3 a:hover{text-decoration:underline;text-underline-offset:5px}
body[data-page="home"] .post-cover,body[data-page="blog"] .post-cover{border-radius:8px;margin-bottom:22px}
body[data-page="home"] .post-card .article-date,body[data-page="blog"] .post-card .article-date{display:block;font-size:13px;line-height:1.5;margin:0}
body[data-page="home"] .post-excerpt,body[data-page="blog"] .post-excerpt{color:var(--muted);line-height:1.75;margin:0 0 16px;overflow-wrap:anywhere}
body[data-page="home"] .post-read,body[data-page="blog"] .post-read{align-self:start;margin-top:auto;color:var(--wine)}
.reading-state{grid-column:1/-1;padding:28px 0;border-top:1px solid var(--line);color:var(--muted)}
.reading-state p{margin:0;line-height:1.7}
.reading-retry{font:inherit;font-size:14px;min-height:44px;background:transparent;border:0;padding:8px 0;color:var(--wine);text-decoration:underline;text-underline-offset:5px;cursor:pointer;margin-top:12px}
.reading-retry:hover{color:var(--red)}
body[data-page="blog"] #article-view{max-width:800px;margin-inline:auto}
body[data-page="blog"] .article{max-width:760px;margin-block:32px 40px}
body[data-page="blog"] .article h1{font-size:clamp(34px,4vw,50px);line-height:1.2;letter-spacing:-.025em;margin-block:18px 26px}
body[data-page="blog"] .article-lead{font-size:clamp(19px,2vw,22px);line-height:1.65;margin-block:26px 32px}
body[data-page="blog"] .article-body{line-height:1.85}
body[data-page="blog"] .article-body p{margin-block:0 24px}
body[data-page="blog"] .article-body h2,body[data-page="blog"] .article-body h3{margin-block:40px 16px}
body[data-page="blog"] .article-body ul,body[data-page="blog"] .article-body ol{padding-left:24px;margin-block:16px 28px}
body[data-page="blog"] .article-body table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin-block:28px;font-size:16px}
body[data-page="blog"] .article-body td,body[data-page="blog"] .article-body th{padding:12px 16px;border-bottom:1px solid var(--line);text-align:left}
body[data-page="blog"] .article-body blockquote{margin-block:28px;padding-left:22px}
@media(max-width:1000px){
  body[data-page="home"] .header nav,body[data-page="blog"] .header nav{gap:18px}
  body[data-page="home"] .hero h1 em br{display:none}
  body[data-page="home"] .service-list article,body[data-page="home"] .service-list article+article{grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr)}
  body[data-page="home"] .post-grid,body[data-page="blog"] .post-grid{gap:24px}
  body[data-page="blog"] .cava-masthead{grid-template-columns:220px minmax(0,1fr)}
  body[data-page="blog"] .cava-logo{max-width:220px}
}
@media(min-width:641px) and (max-width:800px){
  body[data-page="home"] .hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px}
  body[data-page="home"] .hero h1{font-size:36px}
  body[data-page="home"] .hero-copy>p{font-size:16px}
  body[data-page="home"] .hero-copy>p.hero-areas{font-size:14px}
  body[data-page="home"] .post-grid,body[data-page="blog"] .post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-page="home"] .contact-with-form{grid-template-columns:1fr;gap:32px}
  body[data-page="home"] .contact-intro>p{max-width:65ch}
}
@media(max-width:640px){
  body[data-page="home"] .header,body[data-page="blog"] .header{gap:16px;padding-block:20px;min-height:0;align-items:center}
  body[data-page="home"] .brand,body[data-page="blog"] .brand{width:125px}
  body[data-page="home"] .brand img,body[data-page="blog"] .brand img{width:125px}
  body[data-page="home"] .header nav,body[data-page="blog"] .header nav{width:100%;justify-content:space-between;gap:4px 12px;flex-wrap:wrap}
  body[data-page="home"] .header nav a,body[data-page="blog"] .header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:13px}
  body[data-page="home"] .nav-contact,body[data-page="blog"] .nav-contact{padding:8px 12px}
  body[data-page="home"] .hero{grid-template-columns:1fr;gap:32px;padding-block:36px 56px}
  body[data-page="home"] .hero h1{font-size:clamp(35px,9.5vw,44px);max-width:17ch;margin-bottom:24px}
  body[data-page="home"] .hero-copy>p.hero-areas{font-size:15px;max-width:36ch}
  body[data-page="home"] .hero-areas span{margin-inline:2px}
  body[data-page="home"] .portrait{width:100%;max-width:480px;justify-self:center}
  body[data-page="home"] .services{padding-block:32px 56px}
  body[data-page="home"] .section-intro{padding-bottom:28px}
  body[data-page="home"] .service-list article,body[data-page="home"] .service-list article+article{grid-template-columns:1fr;gap:18px;padding-block:32px}
  body[data-page="home"] .service-list h3{max-width:24ch}
  body[data-page="home"] .service-list p.service-lead{max-width:40ch;margin-bottom:0}
  body[data-page="home"] .service-cta{display:flex;width:fit-content;margin-right:0}
  body[data-page="home"] .about-inner,body[data-page="home"] .collaborations,body[data-page="home"] .contact-with-form{grid-template-columns:1fr;gap:28px}
  body[data-page="home"] .about h2{max-width:20ch}
  body[data-page="home"] .collaborations{padding-bottom:24px;gap:20px}
  body[data-page="home"] .career-gallery{padding-top:24px}
  body[data-page="home"] .career-photo-grid{gap:12px}
  body[data-page="home"] .contact-intro>p{max-width:45ch}
  body[data-page="home"] .post-grid,body[data-page="blog"] .post-grid{grid-template-columns:1fr;gap:32px}
  body[data-page="blog"] .blog-page{padding-top:32px}
  body[data-page="blog"] .cava-masthead{grid-template-columns:1fr;gap:24px;padding-bottom:32px}
  body[data-page="blog"] .cava-logo{max-width:200px}
  body[data-page="blog"] .cava-heading h1{font-size:34px;margin-bottom:12px}
  body[data-page="blog"] .cava-tagline{font-size:28px;margin-bottom:16px}
  body[data-page="blog"] .cava-subtitle{font-size:16px}
  body[data-page="blog"] .cava-browse{margin-top:16px}
  body[data-page="blog"] .cava-introduction{grid-template-columns:1fr;gap:24px;padding-block:36px}
  body[data-page="blog"] .cava-introduction h2{font-size:29px;max-width:none}
  body[data-page="blog"] .cava-articles{padding-top:36px}
  body[data-page="blog"] .article{margin-block:24px 32px}
  body[data-page="blog"] .article-body{font-size:17px}
  body[data-page="home"] footer,body[data-page="blog"] footer{gap:12px 20px}
}

/* Cava identity also anchors the homepage article preview. */
body[data-page="home"] .home-cava-brand{display:flex;align-items:center;gap:24px;min-width:0}
body[data-page="home"] .home-cava-brand>div{min-width:0}
body[data-page="home"] .home-cava-logo{display:block;width:128px;height:128px;object-fit:contain;flex-shrink:0}
@media(max-width:900px){body[data-page="home"] .home-cava-logo{width:104px;height:104px}body[data-page="home"] .home-cava-brand{gap:20px}}
@media(max-width:640px){body[data-page="home"] .home-cava-logo{width:88px;height:88px}body[data-page="home"] .home-cava-brand{gap:18px}body[data-page="home"] .home-cava-brand .home-cava-tagline{font-size:19px;margin-top:10px}}

/* Complete career photographs; no portrait or group is cropped. */
body[data-page="home"] .career-photo{display:block;aspect-ratio:1;background:#f0eee8;overflow:hidden;cursor:zoom-in}
body[data-page="home"] .career-photo img{display:block;width:100%;height:100%;object-fit:contain}
body[data-page="home"] .career-photo:hover{background:#e8e5dc}

body[data-page="home"] button.career-photo{border:0;padding:0;width:100%;border-radius:0}
body[data-page="home"] button.career-photo:focus-visible{outline:3px solid #56110f;outline-offset:4px}
.career-viewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:64px 24px 24px;background:rgba(20,12,12,.95);color:#fff;box-sizing:border-box}
.career-viewer[open]{display:flex;align-items:center;justify-content:center}
.career-viewer::backdrop{background:rgba(20,12,12,.95)}
.career-viewer>img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.career-viewer-close{position:absolute;top:12px;right:16px;width:44px;height:44px;border:1px solid #ffffff80;border-radius:50%;background:#56110f;color:#fff;font-size:30px;line-height:1;cursor:pointer}
.career-viewer-close:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(max-width:640px){.career-viewer{padding:64px 12px 16px}}

.career-viewer{padding:64px 80px 56px}
.career-viewer-nav{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid #ffffff80;border-radius:50%;background:#56110f;color:#fff;cursor:pointer}
.career-viewer-prev{left:16px}
.career-viewer-next{right:16px}
.career-viewer-nav:hover{background:#7a231e}
.career-viewer-nav:focus-visible{outline:3px solid #fff;outline-offset:3px}
.career-viewer-position{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);font-size:14px;color:#fff}
@media(max-width:640px){.career-viewer{padding:64px 12px 88px}.career-viewer-nav{top:auto;bottom:16px;transform:none}.career-viewer-position{bottom:30px}}
