/* DALPYRO — raccords PrestaShop.
   Les styles de la maquette sont dans assets/css/pages/*.css (générés par tools/build-theme-css.py)
   et chargés par page dans _partials/head.tpl. Ce fichier ne contient que ce qui est propre à
   PrestaShop : neutralisation du thème parent, recherche, panier, formulaires. */

@font-face {
  font-family: "Material Icons"; font-style: normal; font-weight: 400; font-display: swap;
  src: url(../../../classic/assets/css/12a47ed5fd5585f0f422.woff2) format("woff2"), url(../../../classic/assets/css/f2a0933406f783065152.woff) format("woff");
}
.material-icons {
  display: inline-block; font-family: "Material Icons"; font-style: normal; font-weight: 400; line-height: 1; font-size: 20px;
  text-transform: none; letter-spacing: normal; white-space: nowrap; word-wrap: normal; vertical-align: middle; font-feature-settings: "liga";
}

/* ----- Neutralisation du gabarit classic (pages de la maquette ; les pages PrestaShop gardent la grille classic) ----- */
body:not(.dalpyro-ps-page) :is(#wrapper, #content-wrapper, #main, #content, .container, .row, .page-content, .page-content.card, .card-block) {
  max-width: none !important;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  margin: 0;
  background: transparent;
  box-shadow: none;
  border: 0;
  float: none;
}
#wrapper { overflow: visible; padding: 0; }
header#header { all: unset; display: block; }
body { margin: 0; }
a { color: inherit; }
#header .header-nav, #header .header-top, .header-banner, #_desktop_logo, #_mobile_logo,
#_desktop_top_menu, #_desktop_user_info, #_desktop_cart, #_desktop_currency_selector,
#_desktop_language_selector, #_desktop_contact_link, .menu.js-top-menu,
.displayNav, #footer .container > .row, body:not(.dalpyro-ps-page) .page-footer, .copyright .container,
#js-product-list-top, #search_filters_wrapper, #search_filters, #left-column, #right-column,
.js-qv-mask, .scroll-box-arrows { display: none !important; }
body#index .crumb, body#index .info-crumb, body#index #notifications { display: none !important; }
#notifications:not(:has(.alert)) { display: none; }
#notifications { padding: 12px 5%; }
#notifications .container { padding: 0; }
#notifications .alert { padding: 14px 18px; border-left: 3px solid #e82d91; background: #fbf4e7; margin: 0; font-size: 13px; }
#notifications ul { list-style: none; margin: 0; padding: 0; }
.ps-hidden-by-js { display: none !important; }
body:not(.dalpyro-ps-page) :is(.modal, .modal-backdrop) { display: none !important; }
#content-wrapper, #wrapper { display: block; }
.page-header { margin: 0; }

/* ----- Recherche dans l'en-tête ----- */
.dalpyro-header-search { position: relative; display: inline-flex; align-items: center; }
.dalpyro-header-search #search_widget { display: block !important; margin: 0; float: none; min-width: 0; width: auto; }
.dalpyro-header-search form { position: relative; margin: 0; width: auto; }
.dalpyro-header-search i.material-icons, .dalpyro-header-search .clear { display: none; }
.dalpyro-header-search #search_widget form input[type="text"] {
  border: 0; border-bottom: 1px solid transparent; border-radius: 0; background: transparent; box-shadow: none;
  color: inherit; width: 96px; text-align: right; height: auto; font: inherit; letter-spacing: inherit; text-transform: uppercase;
  padding: 2px 0; margin: 0; outline: 0; transition: width .25s, border-color .25s;
}
.dalpyro-header-search #search_widget form input[type="text"]:focus,
.dalpyro-header-search #search_widget form input[type="text"]:not(:placeholder-shown) { width: 150px; text-align: left; border-bottom-color: currentColor; text-transform: none; }
.dalpyro-header-search #search_widget form input::placeholder { color: inherit; opacity: 1; }
.dalpyro-header-search button { display: none; }
.ui-autocomplete.searchbar-autocomplete { z-index: 60; background: #fbf4e7; border: 1px solid #17382f30; list-style: none; padding: 8px 0; margin: 0; max-width: 360px; }
.ui-autocomplete.searchbar-autocomplete li a { display: block; padding: 8px 16px; font: 13px Arial, sans-serif; color: #17382f; text-decoration: none; }
.ui-autocomplete.searchbar-autocomplete li a:hover, .ui-autocomplete .ui-state-focus { background: #17382f; color: #fbf4e7; }

/* ----- Listes de produits (catégories, recherche) ----- */
.pagination, .sort-by-row, .faceted-overlay { padding: 20px 0; font-size: 12px; }

/* ----- Fiche produit : raccords PrestaShop et variantes de la maquette ----- */
body#product .product-container { max-width: none; padding: 0; }
body#product .product-actions, body#product .product-add-to-cart, body#product .product-prices { margin: 0; }
body#product .buy { cursor: pointer; }
body#product .product-add-to-cart .bootstrap-touchspin, body#product .product-add-to-cart .input-group-btn-vertical { display: none !important; }
body#product .buy span { float: none; }
body#product #cart .cart-link { display: inline-block; margin-left: 18px; font-size: 12px; letter-spacing: .12em; text-decoration: underline; }
body#product .ref-dal-trefle .picture img { object-position: 70% center; }
body#product .ref-dal-trefle .picture.detail img { transform-origin: 50% 68%; }
body#product .ref-dal-boucles .story img { object-position: top; }

/* ----- Pages CMS et contact ----- */
.article-body img { max-width: 100%; height: auto; }
.contact-form-block { margin-top: 45px; padding-top: 10px; border-top: 1px solid #17382f25; }
.contact-form-block .form-group { margin-bottom: 18px; }
.contact-form-block label, .contact-form-block .form-control-label { display: block; font-size: 12px; letter-spacing: .06em; margin-bottom: 6px; }
.contact-form-block input[type="text"], .contact-form-block input[type="email"], .contact-form-block select, .contact-form-block textarea {
  width: 100%; padding: 12px 14px; border: 1px solid #17382f55; background: #fffdf8; color: #17382f; font: 15px Arial, sans-serif; border-radius: 0;
}
.contact-form-block textarea { min-height: 160px; }
.contact-form-block .btn, .contact-form-block input[type="submit"] {
  padding: 16px 24px; background: #17382f; color: #fbf4e7; border: 0; border-radius: 0;
  font: 12px Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; cursor: pointer;
}
.contact-form-block .btn:hover, .contact-form-block input[type="submit"]:hover { background: #285447; }
.contact-form-block .form-control-comment, .contact-form-block .bootstrap-filestyle, .contact-form-block .group-span-filestyle { font-size: 11px; color: #52665b; }
.contact-form-block .col-md-3, .contact-form-block .col-md-6, .contact-form-block .col-md-9 { width: 100%; max-width: none; padding: 0; float: none; }
.contact-form-block h3 { display: none; }
.contact-form-block .alert { padding: 14px 18px; border-left: 3px solid #e82d91; background: #fbf4e7; margin: 0 0 20px; list-style: none; }

/* ----- Pages PrestaShop sans équivalent dans la maquette (panier, commande, compte…) -----
   La mise en page vient de classic/assets/css/theme.css (chargé uniquement sur ces pages) ;
   ici, seulement l'habillage DALPYRO. */
.dalpyro-ps-page { font: 15px/1.6 Arial, sans-serif; color: #17382f; }
.dalpyro-ps-wrap { max-width: 1280px; margin: 0 auto; padding: 45px 5% 70px; overflow-x: clip; }
.page-not-found .not-found-links { display: flex; gap: 24px; justify-content: center; margin: 22px 0 0; }
.page-not-found .not-found-links a { color: #17382f; text-decoration: underline; text-underline-offset: 4px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.dalpyro-ps-wrap .row { margin-left: -15px; margin-right: -15px; }
.dalpyro-ps-page .checkout-step .step-number { background: #17382f; color: #fbf4e7; }
.dalpyro-ps-page .checkout-step.-current .step-title, .dalpyro-ps-page .checkout-step .step-title { text-transform: none; font: normal 24px Georgia, serif; }
.dalpyro-ps-page .checkout-step .done { color: #17382f; }
.dalpyro-ps-page#checkout #wrapper, .dalpyro-ps-page #wrapper { background: transparent; box-shadow: none; padding-top: 0; }
.dalpyro-ps-page #main a { color: #17382f; }
.dalpyro-ps-page #main a:hover { color: #a72165; }
.dalpyro-ps-page #main .btn-primary, .dalpyro-ps-page #main a.btn-primary { color: #fbf4e7; }
.dalpyro-ps-page .info-crumb a { color: inherit; }
.dalpyro-ps-page .price, .dalpyro-ps-page .product-price, .dalpyro-ps-page .current-price, .dalpyro-ps-page .product-line-info .price { color: #17382f; }
.dalpyro-ps-page .site-footer, .dalpyro-ps-page .site-footer p { color: #fbf4e7; }
.dalpyro-ps-page .page-header h1, .dalpyro-ps-page #main > h1, .dalpyro-ps-page h1.h1, .dalpyro-ps-page .page-header .h1 {
  font: normal clamp(34px, 4vw, 56px)/1.1 Georgia, serif; letter-spacing: -.03em; margin: 0 0 30px; text-transform: none; color: #17382f;
}
.dalpyro-ps-page h2, .dalpyro-ps-page .h2, .dalpyro-ps-page h3, .dalpyro-ps-page .h3, .dalpyro-ps-page .h4, .dalpyro-ps-page .step-title {
  font-family: Georgia, serif; font-weight: normal; text-transform: none; color: #17382f; letter-spacing: -.01em;
}
.dalpyro-ps-page .card, .dalpyro-ps-page .page-content.card, .dalpyro-ps-page .checkout-step, .dalpyro-ps-page .cart-summary, .dalpyro-ps-page .cart-container {
  background: #fbf4e7; border: 1px solid #17382f22; border-radius: 0; box-shadow: none;
}
.dalpyro-ps-page .btn-primary, .dalpyro-ps-page .btn-primary:disabled, .dalpyro-ps-page .btn-primary.disabled {
  background: #17382f; border: 0; border-radius: 0; color: #fbf4e7; font: 12px Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; padding: 15px 22px;
}
.dalpyro-ps-page .btn-primary:hover, .dalpyro-ps-page .btn-primary:focus { background: #285447; color: #fbf4e7; }
.dalpyro-ps-page .btn-secondary, .dalpyro-ps-page .btn-tertiary, .dalpyro-ps-page .btn-outline-primary {
  background: transparent; color: #17382f; border: 1px solid #17382f; border-radius: 0; text-transform: uppercase; letter-spacing: .1em; font-size: 12px;
}
.dalpyro-ps-page .form-control, .dalpyro-ps-page select.form-control { background: #fffdf8; border: 1px solid #17382f55; border-radius: 0; color: #17382f; }
.dalpyro-ps-page .form-control:focus { border-color: #17382f; outline: 2px solid #e82d9140; }
.dalpyro-ps-page .custom-checkbox input[type=checkbox]+span, .dalpyro-ps-page .custom-radio { border-color: #17382f; }
.dalpyro-ps-page .custom-radio input[type=radio]:checked+span { background-color: #17382f; }
.dalpyro-ps-page .custom-checkbox input[type=checkbox]+span .checkbox-checked { color: #17382f; }
.dalpyro-ps-page .alert { border-radius: 0; border: 0; border-left: 3px solid #e82d91; background: #fbf4e7; color: #17382f; }
.dalpyro-ps-page .alert-danger { border-left-color: #b3261e; }
.dalpyro-ps-page .product-line-grid img, .dalpyro-ps-page .product-line-grid-left img { background: #fff; }
.dalpyro-ps-page .product-line-info a.label { font: 20px Georgia, serif; }
.dalpyro-ps-page .cart-summary-line .label, .dalpyro-ps-page .cart-summary-line .value { color: #17382f; }
.dalpyro-ps-page .cart-total .label, .dalpyro-ps-page .cart-total .value { font-weight: 600; }
.dalpyro-ps-page .page-my-account #content .links a span.link-item, .dalpyro-ps-page #my-account .links a span.link-item {
  background: #fbf4e7; border-top: 2px solid #ffacd2; box-shadow: none; font: 18px Georgia, serif; color: #17382f; text-transform: none;
}
.dalpyro-ps-page #my-account .links a i { color: #a72165; }
.dalpyro-ps-page .page-footer { padding: 20px 0 0; }
.dalpyro-ps-page .page-footer a { text-decoration: underline; text-underline-offset: 4px; }
.dalpyro-ps-page .table { background: transparent; }
.dalpyro-ps-page .table thead th, .dalpyro-ps-page .thead-default th { background: #17382f; color: #fbf4e7; font-weight: normal; letter-spacing: .06em; }
.dalpyro-ps-page .step-number { font-family: Georgia, serif; }
.dalpyro-ps-page #checkout-personal-information-step .nav-inline .nav-link.active { color: #17382f; border-bottom: 1px solid #17382f; }
.dalpyro-ps-page .block-promo .promo-code, .dalpyro-ps-page .promo-code-button { background: transparent; }
.dalpyro-ps-page .js-mailalert { display: none; }
