.portfolio-section{margin:0 0 38px;padding:29px;background:#fff;border:1px solid #e0e7e9;border-radius:16px}.portfolio-section .eyebrow{font-size:10px;margin-top:0;color:#9f2d7e}.portfolio-section h2{font-size:27px;margin:8px 0 12px}.portfolio-section>p{max-width:760px;font-size:13px;line-height:1.8;color:#64727b}.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}.portfolio-card{color:#293e49;text-decoration:none;background:#f7f9fa;border:1px solid #e1e6e9;border-radius:11px;overflow:hidden;display:block;transition:border-color .15s,transform .15s}.portfolio-card:hover{border-color:#0092b5;transform:translateY(-2px)}.portfolio-media{position:relative;aspect-ratio:4/3;background:#f6f8f9;overflow:hidden;margin:0}.portfolio-media>.portfolio-photo{width:100%;height:100%;display:block;object-fit:contain;padding:14px 16px 43px}.portfolio-media>.portfolio-brand{position:absolute;width:99px;height:auto;right:10px;bottom:9px;opacity:.94;pointer-events:none}.portfolio-caption{display:block;padding:15px}.portfolio-caption strong{font-size:13px;line-height:1.5;display:block}.portfolio-caption small{display:block;font-size:11px;line-height:1.6;color:#67747b;margin-top:7px}.portfolio-caption em{display:block;font-size:11px;font-style:normal;color:#008daa;margin-top:12px}.portfolio-section>a{display:inline-block;margin-top:20px;color:#0088a8;font-size:13px}.portfolio-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:45px;padding:20px 0 42px;align-items:start}.portfolio-detail .portfolio-media{border:1px solid #e0e6e9;border-radius:16px}.portfolio-detail .portfolio-photo{padding:24px 24px 62px}.portfolio-detail .portfolio-brand{width:145px;right:18px;bottom:14px}.portfolio-detail h1{font-size:36px;line-height:1.15}.portfolio-detail p{font-size:14px;line-height:1.85;color:#5d6d76}.portfolio-source{font-size:11px!important;margin-top:18px}.portfolio-source a{color:#57808d}.portfolio-detail>figure>figcaption{font-size:12px;line-height:1.75;color:#63727b;padding:15px 4px}.portfolio-notice{padding:24px;background:#fff;border:1px solid #e0e6e9;border-radius:12px;margin-bottom:38px}.portfolio-notice h2{font-size:23px}.portfolio-notice p{font-size:13px;line-height:1.8;color:#63727b}.portfolio-card:focus-visible{outline:3px solid #a12f83;outline-offset:3px}@media(max-width:980px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-detail{gap:28px}.portfolio-detail h1{font-size:31px}}@media(max-width:700px){.portfolio-section{padding:20px}.portfolio-section h2{font-size:24px}.portfolio-grid{gap:10px}.portfolio-media{aspect-ratio:1}.portfolio-caption{padding:12px}.portfolio-caption strong{font-size:12px}.portfolio-caption small{font-size:10px}.portfolio-media>.portfolio-brand{width:80px;right:8px;bottom:9px}.portfolio-media>.portfolio-photo{padding:10px 10px 40px}.portfolio-detail{grid-template-columns:1fr;gap:20px;padding-top:5px}.portfolio-detail h1{font-size:30px}.portfolio-detail .portfolio-media{aspect-ratio:4/3}.portfolio-detail .portfolio-photo{padding:16px 16px 50px}.portfolio-detail .portfolio-brand{width:120px}.portfolio-section>a{font-size:12px}}
.portfolio-section>a.primary{color:#fff;margin-right:20px}.portfolio-section h1{font-size:40px;line-height:1.15}@media(max-width:700px){.portfolio-section h1{font-size:30px}}

/* Gallery text surfaces follow the selected theme; product photographs keep their light backing. */
html:not([data-theme="light"]) :is(.portfolio-section,.portfolio-notice){background:#142331;color:#e5f0f8;border-color:#344e61}
html:not([data-theme="light"]) :is(.portfolio-section,.portfolio-notice) :is(h1,h2){color:#e5f0f8}
html:not([data-theme="light"]) :is(.portfolio-section>p,.portfolio-notice p,.portfolio-detail p,.portfolio-detail>figure>figcaption){color:#b2c8d8}
html:not([data-theme="light"]) .portfolio-section .eyebrow{color:#c7e58a}
html:not([data-theme="light"]) :is(.portfolio-section>a,.portfolio-source a,.portfolio-detail>figure>figcaption a){color:#d8f598}
html:not([data-theme="light"]) .portfolio-section>a.primary{color:#182015}
html:not([data-theme="light"]) .portfolio-card:focus-visible{outline-color:#d8f598}
