/* ============================================ */
/* ULTRACOMP PRODUCT DETAIL — OPTIMIZED         */
/* Loads on: PRODUCT PAGES ONLY                 */
/* Requires: ultracomp-core.css                 */
/* ============================================ */
/* REMOVED: @import (uses OrbitronCZ from core) */
/* REMOVED: duplicate mobile property blocks    */

/* --- Product Title (OrbitronCZ) --- */
.p-detail-inner-header .product-title,
.p-detail-inner-header h1.product-title {
    font-family: 'OrbitronCZ', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    font-size: clamp(2.8rem, 6vw, 4.5rem) !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    margin: 15px 0 !important;
    position: relative !important;
    display: inline-block !important;
    line-height: 0.9 !important;
}

.p-detail-inner-header-mobile .product-title,
.p-detail-inner-header-mobile .h1.product-title {
    font-family: 'OrbitronCZ', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    font-size: clamp(2.2rem, 7vw, 3.5rem) !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    margin: 20px 0 15px 0 !important;
    position: relative !important;
    display: inline-block !important;
    line-height: 0.9 !important;
}

.product-subtitle {
    font-family: 'Michroma', monospace !important;
    font-size: clamp(0.7rem, 1.8vw, 0.9rem) !important;
    font-weight: 400 !important;
    color: #a0a0a0 !important;
    letter-spacing: 4px !important;
    text-transform: uppercase !important;
    margin-left: 8px !important;
    opacity: 0.8 !important;
}

/* Remove h1:after underline from product titles */
.p-detail-inner-header h1:after,
.p-detail-inner-header-mobile h1:after {
    display: none;
}

/* --- Sticky Product Image (desktop) --- */
@media (min-width: 768px) {
    .p-image {
        position: sticky;
        top: 20px;
        align-self: flex-start;
        width: auto;
        max-width: 100%;
        z-index: 1;
    }
}

.p-image img {
    max-width: 100%;
    height: auto;
    display: block;
}

.p-image-fixed { position: fixed !important; }
.p-image-absolute { position: absolute !important; }

/* --- Variant Spacing --- */
.p-variants-block .surcharge-list {
    margin-bottom: 15px !important;
    padding-bottom: 0 !important;
}

.p-variants-block { padding: 10px 0 !important; }

.surcharge-parameter {
    margin-bottom: 8px !important;
    margin-top: 5px !important;
}

.color-selection-container {
    margin-top: 8px !important;
    margin-bottom: 0 !important;
}

.color-buttons {
    margin-top: 10px !important;
    gap: 8px !important;
}

.color-button { padding: 8px 12px !important; }

.surcharge-label {
    margin-bottom: 5px !important;
    display: block;
    line-height: 1.3 !important;
}

.surcharge-list:last-child { margin-bottom: 0 !important; }

.surcharge-parameter select {
    padding: 6px 8px !important;
    line-height: 1.3 !important;
}

/* --- Mobile --- */
@media (max-width: 768px) {
    .p-detail-inner-header .product-title,
    .p-detail-inner-header h1.product-title,
    .p-detail-inner-header-mobile .product-title,
    .p-detail-inner-header-mobile .h1.product-title {
        font-size: clamp(2.2rem, 7vw, 3.5rem) !important;
        letter-spacing: 1px !important;
        margin: 20px 0 15px 0 !important;
    }

    .product-subtitle {
        font-size: clamp(0.6rem, 2vw, 0.8rem) !important;
        letter-spacing: 3px !important;
        margin-left: 4px !important;
        display: block !important;
        margin-top: 5px !important;
    }
}

@media (max-width: 480px) {
    .p-detail-inner-header .product-title,
    .p-detail-inner-header h1.product-title,
    .p-detail-inner-header-mobile .product-title,
    .p-detail-inner-header-mobile .h1.product-title {
        font-size: clamp(1.8rem, 8vw, 3rem) !important;
    }

    .product-subtitle {
        font-size: clamp(0.5rem, 2.5vw, 0.7rem) !important;
        letter-spacing: 2px !important;
    }
}
