.afpm{font-size:16px;line-height:1.65}.afpm *{box-sizing:border-box}.afpm p{line-height:1.65}.afpm-section{padding:56px 0;scroll-margin-top:100px}.afpm .title-h2{margin-bottom:22px}.afpm-lead{max-width:900px;margin:0 0 30px}.afpm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.afpm-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.afpm-figure{margin:0;min-width:0}.afpm-figure img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#171614}.afpm-figure figcaption{font-size:15px;line-height:1.5;margin-top:12px;color:inherit}.afpm-process{min-width:0;border-top:1px solid #a98e64;padding-top:18px}.afpm-video-trigger,.afpm-text-link{color:#c6a46c;text-decoration:underline;text-underline-offset:4px}.afpm-video-trigger{display:inline-flex;align-items:center;gap:12px;margin-top:18px;padding:10px 16px;border:1px solid #a98e64;text-decoration:none;transition:background .2s,color .2s}.afpm-video-trigger:hover{background:#c6a46c;color:#17130d}.afpm a:focus-visible,.afpm button:focus-visible{outline:3px solid #c6a46c;outline-offset:4px}.afpm-home .afpm-lead{margin-top:24px}.afpm-home-grid{margin:28px 0}.afpm-home-grid img{max-height:240px}.afpm-link-button{display:inline-flex;width:auto;align-items:center;gap:20px;padding:14px 24px;margin-top:12px}.afpm-summary{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:32px;align-items:center;padding-top:32px;padding-bottom:32px;border-top:1px solid #a98e64}.afpm-summary p{margin:0 0 16px}.afpm-summary figcaption{font-size:14px}.afpm-summary-corporate{margin-top:32px;text-align:left}.afpm-summary-corporate p,.afpm-summary-corporate figcaption{color:inherit!important}.afpm-summary-corporate .afpm-text-link{color:#c6a46c}.afpm-history{margin:0;width:100%}.afpm-history img{display:block;width:100%;height:auto!important;object-fit:contain!important}.afpm-history figcaption{font-size:14px;line-height:1.5;margin-top:10px}.afpm-history.afpm{font-family:inherit}.afpm-full-cycle-image{object-fit:contain!important;background:#171614}.afpm-manufacturer-link{display:inline-block;margin-top:12px;color:#c6a46c;text-decoration:underline;text-underline-offset:4px}.afpm-dialog{position:fixed;inset:0;margin:auto;padding:20px;border:1px solid #a98e64;background:#151310;color:#f4eadc;width:min(620px,calc(100vw - 28px));max-width:calc(100vw - 28px);max-height:calc(100svh - 28px);overflow:auto}.afpm-dialog::backdrop{background:rgba(0,0,0,.82)}.afpm-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.afpm-dialog-head h3{font-family:var(--second-family,Georgia,serif);font-size:25px;line-height:1.2;margin:0}.afpm-dialog-close{flex:0 0 44px;width:44px;height:44px;border:1px solid #c6a46c;background:#c6a46c;color:#17130d;font:32px/1 Arial;cursor:pointer}.afpm-player{display:block;margin:auto;width:auto;height:auto;max-width:100%;max-height:calc(100svh - 150px);object-fit:contain;background:#000}.afpm-sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.afpm-scroll-locked{overflow:hidden!important}@media(max-width:900px){.afpm-grid{gap:18px}.afpm-section{padding:44px 0}}@media(max-width:700px){.afpm-grid,.afpm-grid-two,.afpm-summary{grid-template-columns:1fr}.afpm-grid{gap:28px}.afpm-summary{gap:22px}.afpm-summary .afpm-figure{max-width:400px;width:100%;justify-self:start}.afpm-summary figcaption{text-align:left}.afpm-home-grid img{max-height:none}.afpm h2,.afpm p,.afpm figcaption{text-align:left}.afpm-dialog{padding:14px}.afpm-dialog-head h3{font-size:22px}.afpm-player{max-height:calc(100svh - 160px)}}@media(prefers-reduced-motion:reduce){.afpm-video-trigger{transition:none}}

.afpm-history-layout .art-school__body{display:block}.afpm-history-layout .art-school__content{width:100%}.afpm-history-layout .art-school__wrapper{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:48px;align-items:center}.afpm-history-layout .art-school__block{min-width:0;width:auto}.afpm-history-layout .art-school__img{min-width:0;width:100%;height:auto}.afpm-history-layout .afpm-history{max-width:480px;margin:0 auto}.afpm-history-layout .art-school__text{max-width:none}.afpm-history-layout .art-school__link{width:auto;max-width:100%;align-self:flex-start}.afpm-history-layout .art-school__title{margin-bottom:32px}@media(max-width:700px){.afpm-history-layout .art-school__wrapper{grid-template-columns:1fr;gap:28px}.afpm-history-layout .art-school__title{text-align:left}.afpm-history-layout .afpm-history{max-width:460px}.afpm-history-layout .art-school__img{display:block}}

/* Homepage production captions and action centered at every width. */
.afpm-home .container{text-align:center}.afpm-home .afpm-lead{margin-left:auto;margin-right:auto}.afpm-home .title-h2,.afpm-home p,.afpm-home figcaption{text-align:center}

/* Keep video actions on one baseline when captions wrap. */
.afpm-process{display:flex;flex-direction:column;align-self:stretch}.afpm-process .afpm-figure{flex:1}.afpm-process .afpm-video-trigger{align-self:flex-start}

/* All production photo captions, including summaries and history, centered. */
.afpm .afpm-figure figcaption,.afpm-history figcaption{text-align:center}

/* Animate the native dialog and its backdrop before removing the top layer. */
.afpm-dialog[open]{opacity:0;transform:translateY(12px) scale(.985);transition:opacity .24s ease,transform .24s ease}
.afpm-dialog[open].is-visible{opacity:1;transform:translateY(0) scale(1)}
.afpm-dialog::backdrop{opacity:0;transition:opacity .24s ease}
.afpm-dialog.is-visible::backdrop{opacity:1}
@media(prefers-reduced-motion:reduce){.afpm-dialog[open],.afpm-dialog::backdrop{transition:none}}

/* Captions above left-aligned video buttons share the same left edge. */
#production .afpm-process .afpm-figure figcaption{text-align:left}

/* Captions next to video actions share their left edge. */
.afpm .afpm-process .afpm-figure figcaption{text-align:left}
#workshop .afpm-figure img{aspect-ratio:3/4}
/* Only these two headings move left; their introductory paragraphs stay unchanged. */


/* Native inline players in the workshop gallery, without popup triggers. */
.afpm-inline-video{display:block;width:100%;min-width:0;height:auto;aspect-ratio:3/4;object-fit:contain;background:#171614;border:1px solid #6d6251}

/* Align the introductory body text; heading alignment remains as before. */
.main [aria-labelledby="quality-title"] .full-cycle__sub-title,.main .artistry__sub-title{text-align:left}
