/*
 * Correctifs publics persistants.
 * Ce fichier est chargé après Webpack Encore et n'est pas supprimé par yarn build.
 */

/* Le sélecteur historique ".print-stamps-header h2, h3" rendait tous les h3 blancs. */
body h3,
body h4,
body h5,
body h6 {
    color: #111827;
}

/* Titres placés sur de vrais fonds sombres. */
.header-top h1,
.header-top h2,
.header-top h3,
.header-top h4,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.sub-hero h1,
.sub-hero h2,
.sub-hero h3,
.it-services h1,
.it-services h2,
.it-services h3,
.it-service-card h3,
.contact-hero h1,
.contact-hero h2,
.contact-hero h3,
.contact-hero-card h3,
.print-hero h1,
.print-hero h2,
.print-hero h3,
.print-hero-card h3,
.print-stamps h1,
.print-stamps h2,
.print-stamps h3,
.stamp-card h3,
.print-cta h1,
.print-cta h2,
.print-cta h3,
.device-showcase h1,
.device-showcase h2,
.device-showcase h3 {
    color: #ffffff !important;
}

/* Texte des cartes et sections claires. */
.key-item,
.service-item,
.service-card,
.stamp-item,
.computer-service-card,
.expert-block,
.print-offer,
.print-aside-box,
.print-service-card,
.contact-card,
.contact-info,
.info-box,
.product-detail,
.product-info,
.product-description,
.iphone-card,
.brand-card,
.review-card {
    color: #111827;
}

.key-item h1,
.key-item h2,
.key-item h3,
.service-item h1,
.service-item h2,
.service-item h3,
.service-card h1,
.service-card h2,
.service-card h3,
.stamp-item h1,
.stamp-item h2,
.stamp-item h3,
.computer-service-card h1,
.computer-service-card h2,
.computer-service-card h3,
.expert-block h1,
.expert-block h2,
.expert-block h3,
.print-offer h1,
.print-offer h2,
.print-offer h3,
.print-aside-box h1,
.print-aside-box h2,
.print-aside-box h3,
.print-service-card h1,
.print-service-card h2,
.print-service-card h3,
.contact-card h1,
.contact-card h2,
.contact-card h3,
.contact-info h1,
.contact-info h2,
.contact-info h3,
.info-box h1,
.info-box h2,
.info-box h3,
.product-detail h1,
.product-detail h2,
.product-detail h3,
.product-info h1,
.product-info h2,
.product-info h3,
.product-description h1,
.product-description h2,
.product-description h3,
.iphone-card h1,
.iphone-card h2,
.iphone-card h3,
.brand-card h1,
.brand-card h2,
.brand-card h3,
.review-card h1,
.review-card h2,
.review-card h3,
.contact-map-block h3,
.lcd-text h3,
.services-section h3 {
    color: #111827 !important;
}

/* Position de l’image centrale sur ordinateur. */
@media (min-width: 769px) {
    .how-phones {
        display: block;
        filter: drop-shadow(0 20px 45px rgba(0, 0, 0, .25));
        height: auto;
        transform: translateY(-106px);
        width: min(750px, 90vw);
    }
}

/* Prix principal de la fiche téléphone : intervention + tarif de départ. */
.product-starting-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.25rem 0.45rem;
    margin: 0.45rem 0 1.4rem;
    color: #475467 !important;
    font-size: 0.9rem;
    line-height: 1.45;
}

.product-starting-price-service {
    width: 100%;
    color: #111827;
    font-size: 0.95rem;
    font-weight: 700;
}

.product-starting-price-from {
    color: #667085;
    font-weight: 600;
}

.product-starting-price strong {
    color: #fdba00;
    font-size: clamp(1.45rem, 3vw, 1.85rem);
    font-weight: 800;
    letter-spacing: -0.02em;
}

/* Les images WhatsApp sont stockées hors de build pour survivre à yarn build. */
.whatsapp-nav-icon,
.hero-whatsapp-icon {
    display: block !important;
    object-fit: contain;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
}

/* Liens sans soulignement et accent demandé. */
a,
a:hover,
a:focus,
a:focus-visible {
    text-decoration: none !important;
}

.footer a,
.header-top a,
.reviews-all-link,
.review-read-more {
    color: #edaf00 !important;
}

/* Sélecteur d'appareils : chaque visuel occupe la même zone sans déformation. */
.device-option-image {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none;
    object-fit: contain;
    mix-blend-mode: multiply;
    transform: translateZ(0);
}

/* Administration directe des tarifs sur la fiche téléphone. */
.services-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
    margin-bottom: 1rem;
}

.services-section-heading h3 {
    margin: 0 !important;
}

.services-admin-heading-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.service-add-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: 32px;
    padding: 0.35rem 0.75rem;
    border: 1px solid #111827;
    border-radius: 999px;
    background: #111827;
    color: #ffffff;
    font: inherit;
    font-size: 0.76rem;
    font-weight: 800;
    cursor: pointer;
    transition: background 0.16s ease, border-color 0.16s ease, transform 0.16s ease;
}

.service-add-button svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    pointer-events: none;
}

.service-add-button:hover,
.service-add-button:focus-visible {
    border-color: #edaf00;
    background: #edaf00;
    color: #111827;
    outline: none;
    transform: translateY(-1px);
}

.service-add-button:disabled {
    opacity: 0.5;
    cursor: wait;
    transform: none;
}

.admin-inline-badge {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0.25rem 0.65rem;
    border: 1px solid rgba(237, 175, 0, 0.42);
    border-radius: 999px;
    background: rgba(255, 215, 0, 0.12);
    color: #744d00;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.service-line-admin {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 0.8rem;
    min-height: 58px;
    padding: 0.55rem 0.65rem 0.55rem 0.9rem;
    background: #ffffff;
    border-color: rgba(17, 24, 39, 0.1);
    box-shadow: 0 7px 22px rgba(17, 24, 39, 0.055);
}

.service-line-admin .service-name {
    min-width: 0;
    font-weight: 650;
    overflow-wrap: anywhere;
}

.service-line-admin .service-price {
    color: #fdba00;
    white-space: nowrap;
}

.service-admin-actions {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding-left: 0.35rem;
    border-left: 1px solid rgba(17, 24, 39, 0.09);
}

.service-admin-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 1px solid rgba(17, 24, 39, 0.12);
    border-radius: 9px;
    background: #ffffff;
    color: #111827;
    cursor: pointer;
    box-shadow: none;
    transition: border-color 0.16s ease, background 0.16s ease, transform 0.16s ease;
}

.service-admin-button svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none;
}

.service-admin-button:hover,
.service-admin-button:focus-visible {
    border-color: #edaf00;
    background: #fff8df;
    color: #edaf00;
    transform: translateY(-1px);
}

.service-edit-button {
    background: #111827;
    border-color: #111827;
    color: #ffffff;
}

.service-edit-button:hover,
.service-edit-button:focus-visible {
    background: #edaf00;
    border-color: #edaf00;
    color: #111827;
}

.service-admin-button:disabled {
    opacity: 0.28;
    cursor: not-allowed;
    transform: none;
}

/* Boutons WhatsApp des pages produit et ordinateur. */
.whatsapp-quote-button,
.whatsapp-question-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    min-height: 50px;
    border-color: #075e54 !important;
    background: #075e54 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    box-shadow: 0 10px 24px rgba(7, 94, 84, 0.23);
}

.whatsapp-quote-button:hover,
.whatsapp-quote-button:focus-visible,
.whatsapp-question-button:hover,
.whatsapp-question-button:focus-visible {
    border-color: #064e46 !important;
    background: #064e46 !important;
    color: #ffffff !important;
}


.whatsapp-quote-button span,
.whatsapp-question-button span {
    color: #ffffff !important;
}

.product-starting-price-empty strong {
    color: #fdba00 !important;
}

.whatsapp-cta-icon {
    display: block !important;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    object-fit: contain;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
}

/* SweetAlert2 cohérent avec le style minimaliste du site. */
.swal2-popup {
    border-radius: 20px !important;
    font-family: inherit !important;
}

.swal2-title {
    color: #111827 !important;
}

.swal2-input {
    border-color: rgba(17, 24, 39, 0.18) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    color: #111827 !important;
}

.swal2-input:focus {
    border-color: #edaf00 !important;
    box-shadow: 0 0 0 3px rgba(237, 175, 0, 0.18) !important;
}

.swal2-confirm {
    border-radius: 10px !important;
    background: #111827 !important;
}

.swal2-cancel {
    border-radius: 10px !important;
}

.swal-service-label {
    display: block;
    margin: 0.85rem 1.5rem 0.25rem;
    color: #344054;
    font-size: 0.78rem;
    font-weight: 800;
    text-align: left;
}

.swal2-popup .swal-service-input {
    width: calc(100% - 3rem);
    margin: 0.2rem 1.5rem 0.35rem;
}

@media (max-width: 767.98px) {
    .services-section-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .services-admin-heading-actions {
        width: 100%;
        justify-content: space-between;
    }

    .service-line-admin {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .service-line-admin .service-price {
        grid-column: 2;
        grid-row: 1;
    }

    .service-admin-actions {
        grid-column: 1 / -1;
        justify-content: flex-end;
        padding-top: 0.45rem;
        padding-left: 0;
        border-top: 1px solid rgba(17, 24, 39, 0.08);
        border-left: 0;
    }

    .whatsapp-quote-button,
    .whatsapp-question-button {
        width: 100%;
    }
}

/* Accueil : le dernier bloc sombre est directement collé au footer. */
.page-home .footer {
    margin-top: 0 !important;
}

/* Avis Google : un seul avis par slide, sans hauteur vide héritée des autres avis. */
.page-home .reviews-track {
    align-items: flex-start;
}

.page-home .reviews-viewport {
    transition: height 0.35s ease;
}

.page-home .reviews-group {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
    padding-inline: clamp(0.25rem, 5vw, 4.5rem) !important;
}

.page-home .review-card {
    width: 100%;
    height: auto !important;
    min-height: 0;
}

/* Respiration supplémentaire entre WhatsApp et l'icône de connexion. */
.whatsapp-nav-link + .icon {
    margin-left: 0.35rem;
}

@media (max-width: 767.98px) {
    .page-home .reviews-section {
        padding: 3rem 0 2.75rem;
    }

    .page-home .reviews-section .container {
        width: min(100% - 1.5rem, 1350px);
        padding-inline: 0;
    }

    .page-home .reviews-header {
        margin-bottom: 1.75rem;
    }

    .page-home .reviews-slider {
        margin-top: 1.4rem;
    }

    .page-home .reviews-group {
        padding: 0.2rem 0.15rem !important;
    }

    .page-home .review-card {
        padding: 1.55rem 1.25rem !important;
        border-radius: 20px;
        gap: 0.85rem;
    }

    .page-home .review-text {
        max-height: 10rem;
        font-size: 1rem;
        line-height: 1.55;
    }

    .page-home .review-footer {
        margin-top: 0.55rem;
    }

    .page-home .review-author {
        align-items: flex-start;
    }

    .page-home .review-meta {
        gap: 0.1rem 0.35rem;
    }

    .page-home .review-badge,
    .page-home .review-visit {
        font-size: 0.74rem;
        letter-spacing: 0.08em;
    }

    .page-home .reviews-prev {
        left: 0.55rem;
    }

    .page-home .reviews-next {
        right: 0.55rem;
    }

    .page-home .reviews-nav {
        width: 40px;
        height: 40px;
        z-index: 3;
    }

    .whatsapp-nav-link + .icon {
        margin-left: 0.45rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-home .reviews-viewport {
        transition: none;
    }
}

/* ============================================================
   Correctifs VIP v8 : mobile, compte, avis et ajout intervention
   ============================================================ */

/* Évite le zoom automatique d’iOS quand le champ de recherche reçoit le focus. */
.page-home .device-picker-input {
    touch-action: manipulation;
}

@media (max-width: 767.98px) {
    .page-home .device-picker-input {
        font-size: 16px !important;
    }
}

/* Bouton iPhone compatible avec les moteurs WebKit/Chromium intégrés,
   y compris DuckDuckGo mobile. */
.page-home .iphone-all-wrapper {
    display: block !important;
    width: 100%;
    padding: 0 1rem;
    box-sizing: border-box;
    text-align: center;
}

.page-home .iphone-all-btn {
    display: inline-block !important;
    width: auto;
    max-width: 100%;
    min-height: 50px;
    margin: 0 auto;
    padding: 0.95rem 1.65rem;
    box-sizing: border-box;
    border: 1px solid #111111 !important;
    border-radius: 999px;
    background: #111111 !important;
    color: #ffffff !important;
    font-size: 0.88rem;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: 0.08em;
    text-align: center;
    text-transform: uppercase;
    white-space: normal;
    overflow-wrap: anywhere;
    -webkit-appearance: none;
    appearance: none;
}

.page-home .iphone-all-btn:hover,
.page-home .iphone-all-btn:focus-visible {
    border-color: #edaf00 !important;
    background: #edaf00 !important;
    color: #111111 !important;
}

@media (max-width: 767.98px) {
    .page-home .iphone-all-wrapper {
        padding-inline: 0.75rem;
    }

    .page-home .iphone-all-btn {
        display: block !important;
        width: 100% !important;
        max-width: 430px;
        min-height: 52px;
        padding: 0.9rem 1rem;
        font-size: 0.82rem;
        letter-spacing: 0.055em;
    }
}

/* Tous les avis conservent la même hauteur.
   "Lire plus" ouvre le texte complet dans la zone de texte avec défilement,
   sans modifier la hauteur de la carte ni déplacer le reste de la page. */
.page-home .reviews-slider {
    --review-card-height: 400px;
}

.page-home .reviews-viewport,
.page-home .reviews-track,
.page-home .reviews-group {
    height: var(--review-card-height) !important;
}

.page-home .reviews-track {
    align-items: stretch !important;
}

.page-home .reviews-group {
    align-items: stretch !important;
    box-sizing: border-box;
}

.page-home .review-card {
    width: 100%;
    height: 100% !important;
    min-height: 0 !important;
    max-height: var(--review-card-height);
    overflow: hidden;
    box-sizing: border-box;
}

.page-home .review-text {
    display: -webkit-box;
    flex: 1 1 auto;
    min-height: 0;
    max-height: none !important;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    line-clamp: 6;
}

.page-home .review-card.is-expanded .review-text {
    display: block;
    max-height: none !important;
    overflow-x: hidden;
    overflow-y: auto;
    padding-right: 0.35rem;
    -webkit-line-clamp: unset;
    line-clamp: unset;
    scrollbar-gutter: stable;
}

.page-home .review-footer {
    flex: 0 0 auto;
    margin-top: 0 !important;
}

.page-home .review-read-more {
    flex: 0 0 auto;
}

@media (max-width: 767.98px) {
    .page-home .reviews-slider {
        --review-card-height: 430px;
    }

    .page-home .review-text {
        -webkit-line-clamp: 7;
        line-clamp: 7;
    }
}

@media (max-width: 390px) {
    .page-home .reviews-slider {
        --review-card-height: 450px;
    }
}

/* Fenêtres d’administration : sélection claire des interventions existantes. */
.swal2-popup .swal2-select {
    width: calc(100% - 3rem);
    min-height: 50px;
    margin: 0.5rem 1.5rem 0.75rem;
    border: 1px solid rgba(17, 24, 39, 0.18);
    border-radius: 12px;
    background: #ffffff;
    color: #111827;
    font: inherit;
    font-size: 1rem;
}

.swal2-popup .swal2-select:focus {
    border-color: #edaf00;
    box-shadow: 0 0 0 3px rgba(237, 175, 0, 0.18);
    outline: 0;
}

.swal-service-help {
    margin: 0.25rem 1.5rem 0.75rem;
    color: #667085;
    font-size: 0.86rem;
    line-height: 1.5;
    text-align: left;
}

@media (max-width: 767.98px) {
    .swal2-popup .swal2-input,
    .swal2-popup .swal2-select {
        font-size: 16px !important;
    }
}


/* Accueil : bloc Samsung cohérent avec la sélection iPhone. */
.page-home .samsung-section {
    background: #f4f4f5 !important;
}

.page-home .samsung-section .iphone-card {
    border-color: rgba(17, 24, 39, 0.08);
}

/* Les grandes listes de modèles ne calculent que les cartes proches du viewport. */
.models-section .iphone-card {
    content-visibility: auto;
    contain-intrinsic-size: 260px 330px;
}

.models-section .iphone-image {
    object-fit: contain;
}

/* Action de corbeille disponible uniquement en mode administrateur. */
.product-trash-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: 32px;
    padding: 0.35rem 0.75rem;
    border: 1px solid rgba(180, 35, 24, 0.35);
    border-radius: 999px;
    background: #fff4f2;
    color: #b42318;
    font: inherit;
    font-size: 0.76rem;
    font-weight: 800;
    cursor: pointer;
    transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease, transform 0.16s ease;
}

.product-trash-button svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none;
}

.product-trash-button:hover,
.product-trash-button:focus-visible {
    border-color: #b42318;
    background: #b42318;
    color: #ffffff;
    outline: none;
    transform: translateY(-1px);
}

.product-trash-button:disabled {
    opacity: 0.55;
    cursor: wait;
    transform: none;
}

@media (max-width: 767.98px) {
    .services-admin-heading-actions {
        justify-content: flex-start;
    }

    .product-trash-button,
    .service-add-button {
        flex: 1 1 auto;
    }
}


/* Fiche téléphone : actions administrateur discrètes et séparées du contenu commercial. */
.product-top-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.product-top-row .breadcrumb {
    min-width: 0;
    margin: 0;
}

.product-admin-top-actions {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
}

.product-trash-button.product-trash-button-compact {
    width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
    padding: 0;
    border-color: rgba(180, 35, 24, 0.2);
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 6px 18px rgba(17, 24, 39, 0.06);
    opacity: 0.8;
}

.product-trash-button.product-trash-button-compact:hover,
.product-trash-button.product-trash-button-compact:focus-visible {
    opacity: 1;
}

.product-image {
    position: relative;
}

.product-image-edit-button {
    position: absolute;
    top: 0.7rem;
    right: 0.7rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: 34px;
    padding: 0.42rem 0.72rem;
    border: 1px solid rgba(17, 24, 39, 0.14);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.92);
    color: #111827;
    box-shadow: 0 8px 24px rgba(17, 24, 39, 0.1);
    font: inherit;
    font-size: 0.74rem;
    font-weight: 800;
    cursor: pointer;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.product-image-edit-button svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.product-image-edit-button:hover,
.product-image-edit-button:focus-visible {
    border-color: #fdba00;
    background: #fdba00;
    color: #111827;
    outline: none;
}

.product-image-edit-button:disabled {
    opacity: 0.55;
    cursor: wait;
}

/* Avis Google : trois cartes côte à côte sur ordinateur, une seule sur mobile. */
@media (min-width: 768px) {
    .page-home .reviews-group {
        flex: 0 0 33.333333% !important;
        width: 33.333333% !important;
        padding: 0.4rem 0.65rem !important;
    }
}

@media (max-width: 767.98px) {
    .page-home .reviews-group {
        flex: 0 0 100% !important;
        width: 100% !important;
        padding: 0.4rem 0.25rem !important;
    }

    .product-top-row {
        align-items: flex-start;
    }

    .product-trash-button.product-trash-button-compact {
        flex: 0 0 36px;
    }

    .product-image-edit-button {
        top: 0.45rem;
        right: 0.45rem;
        padding: 0.4rem 0.58rem;
    }
}

/* Harmonisation visuelle des téléphones, même avec des fichiers source différents. */
.page-home .iphone-card,
.models-section .iphone-card {
    overflow: hidden;
}

.page-home .iphone-card .iphone-image,
.models-section .iphone-card .iphone-image {
    display: block;
    width: 100% !important;
    max-width: 190px !important;
    height: 220px !important;
    max-height: none !important;
    margin: 0 auto 1.4rem !important;
    object-fit: contain !important;
    object-position: center !important;
    mix-blend-mode: multiply;
    transform: scale(1.06) translateZ(0);
    transform-origin: center;
}

.product-detail .product-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: clamp(390px, 46vw, 560px);
    padding: clamp(0.75rem, 2vw, 1.5rem);
    overflow: hidden;
}

.product-detail .product-image .phone-image {
    display: block;
    width: min(100%, 430px) !important;
    height: clamp(360px, 43vw, 520px) !important;
    max-width: 430px !important;
    max-height: 520px !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    object-position: center !important;
    mix-blend-mode: multiply;
    transform: scale(1.05) translateZ(0);
    transform-origin: center;
}

@media (max-width: 767.98px) {
    .page-home .iphone-card .iphone-image,
    .models-section .iphone-card .iphone-image {
        max-width: 140px !important;
        height: 170px !important;
        margin-bottom: 1rem !important;
        transform: scale(1.04) translateZ(0);
    }

    .product-detail .product-image {
        min-height: 350px;
        padding: 0.75rem;
    }

    .product-detail .product-image .phone-image {
        width: min(100%, 300px) !important;
        height: 330px !important;
        max-width: 300px !important;
        max-height: 330px !important;
        transform: scale(1.03) translateZ(0);
    }
}

@media (max-width: 420px) {
    .page-home .iphone-card .iphone-image,
    .models-section .iphone-card .iphone-image {
        max-width: 124px !important;
        height: 150px !important;
    }

    .product-detail .product-image {
        min-height: 315px;
    }

    .product-detail .product-image .phone-image {
        height: 295px !important;
        max-height: 295px !important;
    }
}

