
/* Additive only: the original PERPETVM stylesheet remains authoritative. */
.pv-header{backdrop-filter:blur(12px)}
.pv-nav-link{position:relative;padding-bottom:6px}
.pv-nav-link::after,.pv-cta::after{content:"";position:absolute;left:0;bottom:0;height:1px;background:#c9c2b4;transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.22,.61,.36,1),opacity .3s;opacity:.75}
.pv-nav-link::after{width:100%}.pv-cta{position:relative;padding-bottom:7px;transition:color .3s,text-shadow .3s}.pv-cta::after{width:100%;transform:scaleX(.32)}
.pv-nav-link:hover::after,.pv-nav-link:focus-visible::after,.pv-nav-link[aria-current="page"]::after,.pv-cta:hover::after,.pv-cta:focus-visible::after{transform:scaleX(1);opacity:1}
.pv-nav-link:hover,.pv-nav-link:focus-visible,.pv-cta:hover,.pv-cta:focus-visible{color:#c9c2b4;text-shadow:0 0 14px rgba(243,238,230,.14)}
.pv-signature-line{transform-origin:left;animation:pv-signature .9s cubic-bezier(.22,.61,.36,1) both}.pv-brand:hover .pv-signature-line,.pv-brand:focus-visible .pv-signature-line{width:4rem}
.pv-mobile-nav{background:rgba(20,22,26,.98);border-top:1px solid rgba(201,194,180,.12);border-bottom:1px solid rgba(201,194,180,.15);padding:18px 20px 26px}.pv-mobile-nav nav{display:flex;flex-direction:column;gap:18px}.pv-mobile-nav[hidden]{display:none}
.pv-work-card{display:block;transition:background-color .35s;padding-block:clamp(1.8rem,2.5vw,2.8rem)}.pv-work-card:hover{background:rgba(201,194,180,.025)}
.pv-work-card-grid{align-items:center}
.pv-detail,button[aria-expanded]{display:block}
.pv-detail summary,button[aria-expanded]{cursor:pointer;list-style:none;user-select:none;outline:none;transition:color .25s ease,opacity .25s ease}
.pv-detail summary::-webkit-details-marker{display:none}
.pv-detail summary:hover,.pv-detail summary:focus-visible,button[aria-expanded]:hover,button[aria-expanded]:focus-visible{color:#f3eee6}
.pv-detail summary:focus-visible,button[aria-expanded]:focus-visible{outline:1px solid rgba(201,194,180,.58);outline-offset:6px}
.pv-plus{display:inline-flex;min-width:1.1em;justify-content:center;font-size:0;line-height:1;color:#c9c2b4;transition:color .25s ease,transform .25s ease}.pv-plus::before{content:"+";font-size:24px;transition:opacity .25s}.pv-detail[open] .pv-plus::before,button[aria-expanded="true"] .pv-plus::before{content:"−"}.pv-detail[open] .pv-plus,button[aria-expanded="true"] .pv-plus{color:#f3eee6}
.pv-footer-link{position:relative;display:inline-block;transition:color .3s,text-shadow .3s}.pv-footer-link::after{content:"";position:absolute;left:0;bottom:-5px;width:100%;height:1px;background:#c9c2b4;transform:scaleX(0);transform-origin:left;opacity:.72;transition:transform .45s cubic-bezier(.22,.61,.36,1),opacity .3s}.pv-footer-link:hover,.pv-footer-link:focus-visible{color:#c9c2b4;text-shadow:0 0 14px rgba(243,238,230,.12)}.pv-footer-link:hover::after,.pv-footer-link:focus-visible::after{transform:scaleX(1);opacity:1}
.editorial-grid figure::after{content:"";position:absolute;right:0;bottom:0;width:min(310px,28%);height:54px;pointer-events:none;background:linear-gradient(90deg,transparent 0%,rgba(7,8,10,.94) 38%,#08090b 60%)}
@keyframes pv-signature{from{transform:scaleX(.35);opacity:.45}to{transform:scaleX(1);opacity:1}}
@media(hover:none){.pv-nav-link::after{opacity:.35}.pv-cta::after{transform:scaleX(.45)}.pv-cta:active::after{transform:scaleX(1)}}
@media(max-width:767px){.editorial-grid figure::after{display:none}.pv-work-card .grid{row-gap:1.2rem}.pv-work-card h2{font-size:clamp(26px,7vw,32px)}}
@media(max-width:390px){.pv-work-card{padding-block:1.7rem}.pv-work-card .grid{gap:1rem}.pv-work-card .pv-cta{margin-top:.9rem}.pv-detail summary,button[aria-expanded]{gap:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pv-signature-line{animation:none}.pv-nav-link,.pv-nav-link::after,.pv-cta,.pv-cta::after,.pv-plus::before,.pv-work-card,.pv-footer-link,.pv-footer-link::after{transition:none!important}}

.pv-detail-copy p{max-width:48rem}

/* FINAL CONSOLIDATED CORRECTION PASS — 2026-09-23 */
.pv-detail-copy{font-size:14px;line-height:1.9;color:rgba(224,220,211,.82)}
.pv-detail-copy p{max-width:52rem}
.pv-work-card .pv-cta{display:inline-block;width:max-content;max-width:100%}
@media(max-width:767px){
  .pv-detail-copy{font-size:14px;line-height:1.8}
}

/* FINAL QA PASS — header, readability, work-card consistency */
.pv-menu-button{display:flex}
@media(min-width:768px){
  .pv-mobile-nav{position:absolute;right:max(2.5rem,calc((100vw - 1480px)/2 + 3.5rem));top:76px;width:min(420px,calc(100vw - 5rem));border:1px solid rgba(201,194,180,.15);border-top:0;padding:28px 30px 32px}
  .pv-mobile-nav nav{gap:20px}
}
/* Important reading copy must remain elegant but effortless to read. */
main p.text-\[11px\].font-light{font-size:13px;line-height:1.85}
main p.text-\[12px\].font-light{font-size:13px;line-height:1.85}


/* MASTER BUILD — interaction and readability */
.pv-mobile-nav{z-index:60}
.pv-menu-button[aria-expanded="true"] + *{}
main p.text-\[13px\].font-light{font-size:14px;line-height:1.9}
@media(min-width:768px){main p.text-\[13px\].font-light{font-size:14px}}
@media(max-width:767px){main p.text-\[13px\].font-light{font-size:14px;line-height:1.85}}

/* SURGICAL BUG FIX — 2026-09-24: Contact FAQ + mobile hero signature */
.pv-faq-button{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;align-items:center;width:100%}
.pv-faq-icon{display:inline-flex;min-width:1.25rem;justify-content:center;align-items:center;justify-self:end;line-height:1}
.pv-faq-panel[hidden]{display:none!important}
@media(max-width:767px){
  .pv-hero-image{object-position:82% center!important}
  .pv-faq-button{grid-template-columns:30px minmax(0,1fr) 24px!important;column-gap:.75rem!important}
  .pv-faq-icon{justify-self:end}
}

/* BUGFIX V2 — cache-safe FAQ state + control alignment */
.pv-faq-button{display:grid!important;grid-template-columns:38px minmax(0,1fr) 28px!important;column-gap:14px!important;align-items:center!important;width:100%!important}
.pv-faq-button .pv-faq-icon{font-size:0!important;width:28px!important;min-width:28px!important;justify-self:end!important;text-align:center!important}
.pv-faq-button .pv-faq-icon::before{content:"+";font-size:20px;line-height:1;color:#c9c2b4}
.pv-faq-button[aria-expanded="true"] .pv-faq-icon::before{content:"−"}
@media(max-width:767px){
  .pv-faq-button{grid-template-columns:30px minmax(0,1fr) 28px!important;column-gap:12px!important}
  .pv-hero-image{object-position:84% center!important}
}
