.banner-header.bcore-project-hero { height: auto; min-height: 78svh; padding: 180px 0 105px; display: flex; align-items: center; }
.bcore-project-hero .v-middle { position: relative; inset: auto; transform: none; width: 100%; }
.banner-header.bcore-project-hero h1 { max-width: 1080px; margin-bottom: 26px; font-size: clamp(54px,6.25vw,120px); line-height: 1.05; }
html[data-theme] .banner-header.bcore-project-hero h1 .bcore-project-site-name { color: #D66A3C; }
.bcore-project-hero-description { max-width: 850px; margin: 0; color: #fff; font-size: 20px; line-height: 1.75; }
.portfolio-details.bcore-project-case .sidebar-car { margin-top: 0; }
.bcore-project-copy h2 { color: var(--bcore-text); font-size: 36px; line-height: 1.2; text-transform: uppercase; letter-spacing: .5px; margin-bottom: 24px; }
.bcore-project-copy-section { margin-top: 42px; }
.bcore-project-copy p { color: var(--bcore-muted); }
.bcore-project-html { overflow-wrap: anywhere; }
.bcore-project-html :is(h3,h4,h5,h6) { color: var(--bcore-text); margin-top: 28px; }
.bcore-project-html :is(ul,ol):not(.list) { color: var(--bcore-muted); padding-left: 24px; margin-bottom: 24px; }
.bcore-project-html ul:not(.list) { list-style: disc; }
.bcore-project-html ol { list-style: decimal; }
.bcore-project-html :is(ul,ol):not(.list)>li { display: list-item; margin: 0 0 14px; padding-left: 4px; }
.bcore-project-html ul:not(.list)>li { list-style: disc; }
.bcore-project-html ol>li { list-style: decimal; }
.bcore-project-html li::marker { color: #D66A3C; }
.bcore-related-projects .bcore-project-carousel-single { width: 100%; max-width: 640px; margin-inline: auto; }
.bcore-related-projects .item .img>img { width: 100%; aspect-ratio: 8/5; height: auto; object-fit: cover; }
.bcore-project-gallery--wide>.bcore-detail-gallery>div { flex: 0 0 100%; max-width: 100%; }
.bcore-project-case .bcore-detail-gallery .gallery-img img { width: 100%; height: auto; object-fit: contain; }
.bcore-project-plain-images { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.27fr); gap: 24px; align-items: start; }
.bcore-project-plain-images a { display: block; }
.bcore-project-plain-images img { display: block; width: 100%; height: auto; border-radius: 12px; }
.bcore-project-html img { max-width: 100%; height: auto; border-radius: 12px; }
.bcore-project-html figure { margin: 24px 0; }
.bcore-project-html figcaption { color: var(--bcore-muted); font-size: 15px; }
.bcore-project-html a { color: #D66A3C; text-decoration: underline; text-underline-offset: 3px; }
.bcore-project-html table { width: 100%; display: block; overflow-x: auto; margin-bottom: 24px; }
.bcore-project-html :is(td,th) { padding: 12px; border: 1px solid var(--bcore-line); }
.bcore-project-html pre { overflow-x: auto; padding: 18px; color: var(--bcore-text); background: var(--bcore-panel); border-radius: 12px; }
.bcore-project-device-stage { margin: 0 0 60px; padding: 0; }
.bcore-project-device-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.27fr); gap: clamp(14px,2.8vw,32px); align-items: end; }
.bcore-project-device-column { min-width: 0; }
.bcore-project-device-label { display: flex; align-items: center; justify-content: space-between; margin: 0 0 10px; color: var(--bcore-muted); text-align: left; font-size: 13px; letter-spacing: .03em; }
.bcore-project-device-label a { display: inline-grid; place-items: center; width: 32px; height: 32px; color: var(--bcore-text); }
.bcore-project-device-label a:focus-visible { outline: 2px solid #D66A3C; outline-offset: 2px; }
.bcore-project-device { position: relative; display: block; width: 100%; overflow: hidden; border: 1px solid rgba(135,140,150,.32); background: #171b20; box-shadow: 0 20px 48px rgba(0,0,0,.18); }
.bcore-project-device:focus-within { outline: 3px solid #D66A3C; outline-offset: 5px; }
.bcore-project-device--desktop { border-radius: 13px; }
.bcore-project-device--mobile { padding: clamp(3px,.7vw,8px); border-radius: clamp(12px,2.8vw,30px); }
.bcore-project-browser-top { display: flex; justify-content: space-between; align-items: center; gap: 8px; height: clamp(18px,2.6vw,31px); padding: 0 clamp(8px,1vw,14px); color: #a8b1bc; font: 400 clamp(6px,.8vw,11px)/1 Arial,sans-serif; }
.bcore-project-browser-dots { display: flex; gap: clamp(2px,.35vw,5px); }
.bcore-project-browser-dots i { width: clamp(3px,.5vw,7px); height: clamp(3px,.5vw,7px); border-radius: 50%; background: #72808f; }
.bcore-project-browser-dots i:first-child { background: #d77767; }
.bcore-project-browser-dots i:nth-child(2) { background: #d8b66b; }
.bcore-project-browser-dots i:last-child { background: #8caf88; }
.bcore-project-phone-top { display: flex; align-items: center; justify-content: center; height: clamp(8px,1.4vw,17px); }
.bcore-project-phone-top span { width: 30%; height: 4px; border-radius: 10px; background: #454e59; }
.bcore-project-screen { position: relative; width: 100%; overflow: hidden; background: #faf8f2; }
.bcore-project-screen--desktop { aspect-ratio: 1440/900; }
.bcore-project-screen--mobile { aspect-ratio: 393/852; border-radius: clamp(8px,1.6vw,20px); }
.bcore-project-screen-image { position: absolute; inset: 0; display: block; cursor: zoom-in; }
.bcore-project-screen-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.bcore-project-screen-image:focus-visible { outline: 3px solid #D66A3C; outline-offset: -3px; }
.bcore-project-screen iframe { position: absolute; top: 0; left: 0; max-width: none; border: 0; transform-origin: top left; pointer-events: auto; opacity: 0; transition: opacity .25s; }
.bcore-project-screen--desktop iframe { width: 1440px; height: 900px; }
.bcore-project-screen--mobile iframe { width: 393px; height: 852px; }
.bcore-project-screen.is-ready iframe { opacity: 1; }
.bcore-project-screen-fallback { position: absolute; inset: 0; display: grid; place-items: center; }
.bcore-project-screen-fallback img { width: 48%; height: auto; max-height: 70%; object-fit: contain; }
.bcore-project-device-stage figcaption { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 24px; color: var(--bcore-muted); font-size: 14px; line-height: 1.5; }
.bcore-project-live-dot { flex: 0 0 6px; width: 6px; height: 6px; border-radius: 50%; background: #91bd65; }
@media(max-width:767px) {
  .banner-header.bcore-project-hero { min-height: 0; padding: 145px 0 75px; }
  .banner-header.bcore-project-hero h1 { font-size: 52px; }
  .bcore-project-hero-description { font-size: 18px; line-height: 1.7; }
  .bcore-project-copy h2 { font-size: 30px; }
  .bcore-project-copy-section { margin-top: 32px; }
  .bcore-project-device-stage { margin-bottom: 42px; }
  .bcore-project-device-label { font-size: 11px; margin-bottom: 7px; }
  .bcore-project-device-stage figcaption { margin-top: 17px; font-size: 12px; }
}
@media(prefers-reduced-motion:reduce) { .bcore-project-screen iframe { transition: none; } }
