/*
Theme Name: Singularis — Atelier
Theme URI: https://shop.singularislab.com
Description: Thème enfant Astra pour Atelier Singularis. Direction « atelier / établi » : papier kraft, encre, rouille, grotesque massif + mono technique, traits de découpe.
Author: Atelier Singularis
Template: astra
Version: 2.5
*/

/* ============================================================
   ATELIER SINGULARIS — Design system « Atelier / établi »
   ============================================================ */
:root{
	--kraft:   #EAE3D2;   /* papier kraft, fond */
	--kraft-2: #E1D8C2;   /* sections / cartes */
	--paper:   #F4EFE3;   /* zones claires */
	--ink:     #1C1A17;   /* encre */
	--ink-soft:#3D3833;
	--stone:   #6E665A;   /* texte secondaire */
	--rust:    #B5572B;   /* accent rouille/ocre */
	--rust-deep:#8F4220;
	--line:    #C9BFA8;   /* filets */

	--display:"Bricolage Grotesque","Arial Narrow",sans-serif;
	--sans:"Hanken Grotesk",-apple-system,"Segoe UI",sans-serif;
	--mono:"IBM Plex Mono",ui-monospace,monospace;

	--maxw:1200px;
	--gutter:clamp(1.25rem,4vw,3.5rem);
	--ease:cubic-bezier(.22,.61,.36,1);
	--cut: repeating-linear-gradient(90deg,var(--line) 0 8px,transparent 8px 16px);
}

html{scroll-behavior:smooth}
body,.ast-container,.site{
	background-color:var(--kraft);
	color:var(--ink-soft);
	font-family:var(--sans);
	font-size:17px;line-height:1.65;letter-spacing:.004em;
	-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
::selection{background:var(--rust);color:var(--paper)}

h1,h2,h3,h4,.entry-title,.site-title,.widget-title{
	font-family:var(--display);
	color:var(--ink);font-weight:700;line-height:.98;
	letter-spacing:-.02em;text-transform:uppercase;
}
h1{font-size:clamp(2.6rem,6.5vw,5rem)}
h2{font-size:clamp(1.9rem,4vw,3rem)}
h3{font-size:clamp(1.2rem,2vw,1.5rem)}
p{margin:0 0 1.2em}
a{color:var(--ink);text-decoration:none;transition:color .25s var(--ease)}
a:hover{color:var(--rust)}

/* Label / eyebrow mono technique */
.eyebrow,.singularis-eyebrow{
	font-family:var(--mono);font-size:.72rem;font-weight:500;
	letter-spacing:.18em;text-transform:uppercase;color:var(--rust-deep);
	display:inline-flex;align-items:center;gap:.6rem;
}
.singularis-eyebrow::before{content:"//";color:var(--rust)}

/* Trait de découpe (pointillé) */
.singularis-rule{height:2px;border:0;background:var(--cut);width:120px;margin:1.4rem 0}

.ast-container,.site-content .ast-container{max-width:var(--maxw)}

/* ---------- En-tête (aligné sur la barre compacte de la vitrine) ---------- */
.site-header,.ast-primary-header-bar,.main-header-bar,
.ast-main-header-wrap,.main-header-bar-wrap{
	background:var(--kraft) !important;box-shadow:none !important;
}
.ast-primary-header-bar{border-bottom:2px solid var(--ink) !important}
.main-header-bar{border-bottom:0 !important;padding-top:0 !important;padding-bottom:0 !important}
.ast-primary-header-bar .site-primary-header-wrap,
.ast-primary-header-bar .ast-flex{min-height:62px}
.ast-logo-title-inline .site-branding,.site-branding{padding:0}
.site-title,.site-title a{
	font-family:var(--display) !important;font-weight:800 !important;
	letter-spacing:.01em !important;font-size:1.25rem !important;line-height:1.1 !important;
	color:var(--ink) !important;text-transform:uppercase !important;
}
/* tagline masquée pour une marque nette comme la vitrine */
.site-header .site-description,.ast-site-title-wrap .site-description{display:none !important}
.main-header-menu .menu-link,.ast-builder-menu .menu-link{
	font-family:var(--mono) !important;font-size:.76rem !important;font-weight:500 !important;
	letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--ink-soft) !important;
}
.main-header-menu .menu-link:hover,.ast-builder-menu .menu-link:hover{color:var(--rust) !important}
.main-header-menu .current-menu-item > .menu-link{color:var(--rust) !important}
/* icônes Astra (panier/compte) à l'encre */
.ast-header-account-wrap .ast-icon,.ast-cart-menu-wrap .ast-icon,.ast-header-woo-cart{color:var(--ink) !important}

/* ---------- Boutons ---------- */
.button,button,input[type="submit"],
.ast-button,.wp-block-button__link,
.woocommerce a.button,.woocommerce button.button,
.woocommerce .single_add_to_cart_button,
.woocommerce #respond input#submit,.wc-block-components-button{
	font-family:var(--mono) !important;font-size:.78rem !important;font-weight:600 !important;
	letter-spacing:.1em !important;text-transform:uppercase !important;
	background:var(--ink) !important;color:var(--kraft) !important;
	border:2px solid var(--ink) !important;border-radius:0 !important;
	padding:.85em 1.8em !important;box-shadow:4px 4px 0 rgba(28,26,23,.18) !important;
	transition:transform .15s var(--ease),box-shadow .15s var(--ease),background .25s var(--ease),color .25s var(--ease) !important;
}
.button:hover,button:hover,input[type="submit"]:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce .single_add_to_cart_button:hover,.wc-block-components-button:hover{
	background:var(--rust) !important;border-color:var(--rust) !important;color:var(--paper) !important;
	transform:translate(2px,2px) !important;box-shadow:2px 2px 0 rgba(28,26,23,.18) !important;
}
.singularis-btn-ghost{background:transparent !important;color:var(--ink) !important;box-shadow:none !important}
.singularis-btn-ghost:hover{background:var(--ink) !important;color:var(--kraft) !important}

/* ---------- Grille produits ---------- */
.woocommerce ul.products{gap:clamp(1.4rem,3vw,2.4rem)}
.woocommerce ul.products li.product{
	background:var(--paper);border:2px solid var(--ink);
	padding:1rem 1rem 1.5rem;text-align:left;
	transition:transform .15s var(--ease),box-shadow .15s var(--ease);
	box-shadow:5px 5px 0 rgba(28,26,23,.12);
}
.woocommerce ul.products li.product:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--rust)}
.woocommerce ul.products li.product img{margin-bottom:1rem;background:var(--kraft-2);border-bottom:1px dashed var(--line)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
	font-family:var(--display) !important;font-weight:700;text-transform:uppercase;
	font-size:1.05rem !important;color:var(--ink) !important;padding:0 !important;line-height:1.05;letter-spacing:-.01em;
}
.woocommerce ul.products li.product .price{color:var(--rust-deep) !important;font-family:var(--mono);font-size:.92rem !important;font-weight:500}
.woocommerce ul.products li.product .price ins{text-decoration:none;color:var(--ink)}
.woocommerce span.onsale{
	background:var(--rust) !important;color:var(--paper) !important;border-radius:0 !important;
	font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;
	min-height:auto;min-width:auto;padding:.3em .6em;line-height:1;
}

/* ---------- Fiche produit ---------- */
.woocommerce div.product p.price,.woocommerce div.product span.price{
	color:var(--ink) !important;font-family:var(--mono);font-weight:600;font-size:1.5rem !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border:0;border-bottom:2px solid var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom:2px solid var(--rust)}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;color:var(--stone)}

/* ---------- Perso & cadeau ---------- */
.boutique-perso,.boutique-cadeau{
	border:2px solid var(--ink) !important;border-radius:0 !important;
	background:var(--paper) !important;padding:1.4rem !important;
}
.boutique-cadeau{background:var(--kraft-2) !important;border-color:var(--rust) !important}
.boutique-perso label,.boutique-cadeau label{font-weight:600;color:var(--ink);font-family:var(--mono);font-size:.86rem}
.boutique-perso input[type="text"],.boutique-perso textarea,.boutique-perso select{
	border:2px solid var(--line) !important;border-radius:0 !important;background:var(--paper);padding:.6em .8em;font-family:var(--sans);
}
.boutique-perso input:focus,.boutique-perso textarea:focus,.boutique-perso select:focus{outline:none;border-color:var(--rust) !important}

/* ---------- Champs formulaires ---------- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container .select2-selection{border:2px solid var(--line) !important;border-radius:0 !important;background:var(--paper)}

/* ---------- Pied de page (bloc 3 colonnes + barre copyright, continu) ---------- */
.sg-foot{background:var(--ink);color:var(--kraft);border-top:2px dashed var(--rust);font-family:var(--mono);padding:clamp(2.5rem,6vw,4rem) var(--gutter) 1.5rem}
.sg-foot__wrap{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}
.sg-foot__col h4{font-family:var(--display);color:var(--kraft);font-weight:700;text-transform:uppercase;font-size:1.1rem;margin-bottom:.9rem}
.sg-foot__col p,.sg-foot__col li{font-size:.86rem;line-height:1.7}
.sg-foot__col .muted{color:#A9A18E}
.sg-foot__col ul{list-style:none;padding:0;margin:0}
.sg-foot__col li{margin-bottom:.5rem}
.sg-foot a{color:var(--kraft) !important}
.sg-foot a:hover{color:var(--rust) !important}
@media (max-width:780px){.sg-foot__wrap{grid-template-columns:1fr}}

/* Barre copyright Astra : raccordée sous le bloc (pas de double filet) */
.site-footer,.ast-small-footer,.footer-sml-layout-1,.site-below-footer-wrap{
	background:var(--ink) !important;color:#A9A18E !important;
	border-top:1px solid #3a3833 !important;font-family:var(--mono);font-size:.8rem;letter-spacing:.03em;
}
.site-footer a,.ast-small-footer a,.site-below-footer-wrap a{color:#A9A18E !important}
.site-footer a:hover,.site-below-footer-wrap a:hover{color:var(--rust) !important}
.ast-footer-copyright p{margin:0}

/* ---------- Pages éditoriales ---------- */
.entry-content h2{margin-top:2em}
.entry-content ul{list-style:none;padding-left:0}
.entry-content ul li{position:relative;padding-left:1.6em;margin-bottom:.6em}
.entry-content ul li::before{content:"▸";position:absolute;left:0;top:0;color:var(--rust);font-size:.9em}

/* ============================================================
   PAGE D'ACCUEIL (front-page.php)
   ============================================================ */
.sg-hero{
	padding:clamp(3rem,8vw,7rem) var(--gutter) clamp(2.5rem,5vw,4rem);
	border-bottom:2px solid var(--ink);position:relative;
	background:
		linear-gradient(var(--kraft),var(--kraft)),
		var(--kraft);
}
.sg-hero__inner{max-width:var(--maxw);margin:0 auto}
.sg-cutline{height:2px;background:var(--cut);margin:1.2rem 0 1.8rem}
.sg-hero__title{font-size:clamp(3rem,10vw,7rem);line-height:.9;margin:.3rem 0 0;color:var(--ink)}
.sg-hero__title .rust{color:var(--rust)}
.sg-hero__lead{max-width:50ch;margin:1.6rem 0 2.2rem;color:var(--ink-soft);font-size:1.1rem}
.sg-hero__cta{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}
.sg-spec{font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;color:var(--stone);margin-left:.4rem}

.sg-section{padding:clamp(3.5rem,8vw,6rem) var(--gutter)}
.sg-section--ink{background:var(--ink);color:var(--kraft)}
.sg-section--paper{background:var(--paper)}
.sg-wrap{max-width:var(--maxw);margin:0 auto}
.sg-section__head{max-width:62ch;margin-bottom:2.8rem}
.sg-section--ink h2{color:var(--kraft)}
.sg-section--ink .singularis-eyebrow{color:#D98A5E}

/* Bloc savoir-faire / gammes (2 colonnes techniques) */
.sg-savoir{display:grid;grid-template-columns:1fr 1fr;gap:0;border:2px solid var(--ink)}
.sg-savoir__col{padding:clamp(1.6rem,3vw,2.6rem)}
.sg-savoir__col:first-child{border-right:2px dashed var(--line)}
.sg-savoir h3{margin:.6rem 0 .8rem}
.sg-savoir ul{list-style:none;padding:0;font-family:var(--mono);font-size:.88rem}
.sg-savoir li{padding:.45em 0;border-bottom:1px dashed var(--line);display:flex;justify-content:space-between;gap:1rem}
.sg-savoir li span{color:var(--rust-deep)}

/* Gammes en cartes */
.sg-gammes{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:1rem}
.sg-gamme{border:2px solid var(--ink);background:var(--kraft);padding:1.6rem;box-shadow:5px 5px 0 rgba(28,26,23,.12);transition:transform .15s var(--ease),box-shadow .15s var(--ease)}
.sg-gamme:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--rust)}
.sg-gamme__num{font-family:var(--mono);font-size:.8rem;color:var(--rust);letter-spacing:.1em}
.sg-gamme h3{margin:.6rem 0 .5rem}
.sg-gamme p{color:var(--stone);font-size:.95rem;margin-bottom:1rem}
.sg-gamme__link{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);border-bottom:2px solid var(--rust);padding-bottom:2px}

/* Réassurance — bandeau technique */
.sg-specs{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:2px solid var(--rust);border-bottom:2px solid var(--rust)}
.sg-specs__item{padding:1.8rem 1.4rem;border-right:1px dashed rgba(234,227,210,.25)}
.sg-specs__item:last-child{border-right:0}
.sg-specs__item .k{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#D98A5E;display:block;margin-bottom:.5rem}
.sg-specs__item .v{font-family:var(--display);font-size:1.6rem;text-transform:uppercase;color:var(--kraft)}

.sg-cta{text-align:center;padding:clamp(4rem,9vw,7rem) var(--gutter);background:var(--rust);color:var(--paper)}
.sg-cta h2{color:var(--paper);max-width:20ch;margin:.6rem auto 1.6rem}
.sg-cta .singularis-eyebrow{color:var(--paper)}
.sg-cta .singularis-eyebrow::before{content:"//";color:var(--paper)}

/* Apparition */
@keyframes sg-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.sg-rise{opacity:0;animation:sg-rise .8s var(--ease) forwards}
.sg-rise[data-d="1"]{animation-delay:.05s}.sg-rise[data-d="2"]{animation-delay:.15s}.sg-rise[data-d="3"]{animation-delay:.27s}.sg-rise[data-d="4"]{animation-delay:.39s}
@media (prefers-reduced-motion:reduce){.sg-rise{animation:none;opacity:1}}

@media (max-width:880px){.sg-savoir,.sg-gammes{grid-template-columns:1fr}.sg-savoir__col:first-child{border-right:0;border-bottom:2px dashed var(--line)}.sg-specs{grid-template-columns:repeat(2,1fr)}}
@media (max-width:540px){.sg-specs{grid-template-columns:1fr}}

/* ============================================================
   FORÇAGE — rediriger la palette & les polices Astra
   (Astra impose fond blanc #FFF + bleu #046bd2 + Cardo/Inter)
   ============================================================ */
:root{
	--ast-global-color-0:#B5572B;  /* accent → rouille */
	--ast-global-color-1:#8F4220;  /* accent foncé */
	--ast-global-color-2:#1C1A17;  /* texte */
	--ast-global-color-3:#1C1A17;  /* titres */
	--ast-global-color-4:#EAE3D2;  /* FOND (était blanc) → kraft */
	--ast-global-color-5:#E1D8C2;  /* fond alterné */
	--ast-global-color-6:#1C1A17;  /* sombre */
	--ast-global-color-7:#C9BFA8;  /* bordures */
	--ast-global-color-8:#1C1A17;
}
/* Fond garanti (body + wrappers Astra, pas les sections custom) */
body,#page,.site,.site-content,.ast-separate-container,
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post,
.woocommerce-page:not(.home) #content{background-color:var(--kraft) !important}
/* Polices forcées (Astra → Cardo/Inter par défaut) */
body,.ast-container,input,textarea,select,button{font-family:var(--sans) !important}
h1,h2,h3,h4,h5,h6,.site-title,.site-title a,.entry-title,
.woocommerce-loop-product__title,.product_title,.widget-title,
.sg-hero__title,.sg-gamme h3,.sg-savoir h3{font-family:var(--display) !important}
.menu-link,.ast-builder-menu .menu-link,.ast-footer-copyright,
.sg-foot,.eyebrow,.singularis-eyebrow,.sg-spec,.price{font-family:var(--mono) !important}
/* Texte courant à l'encre (sans toucher boutons/liens stylés) */
body,.entry-content,.ast-container > p,.woocommerce-page p{color:var(--ink-soft)}

/* ============================================================
   WOOCOMMERCE — pages boutique/produit/panier en style « établi »
   (sinon rendu Astra+Woo par défaut, tranche avec la vitrine)
   ============================================================ */
/* Fond kraft partout, suppression des boîtes blanches Astra */
body,#page,.site,.site-content,#content,
.ast-separate-container,.ast-plain-container,.ast-narrow-container,
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post,
.woocommerce-page,.woocommerce{background-color:var(--kraft) !important}
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post{
	box-shadow:none !important;border:0 !important;padding-top:1rem !important;
}
/* En-tête de la boutique (titre + tri + compteur) */
.woocommerce-products-header,.ast-archive-description{margin-bottom:2rem}
.woocommerce-products-header__title,.ast-archive-title,
.woocommerce-page h1,.entry-title{
	font-family:var(--display) !important;text-transform:uppercase;letter-spacing:-.01em;color:var(--ink) !important;
}
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{font-family:var(--mono) !important;font-size:.82rem;color:var(--stone)}
.woocommerce .woocommerce-ordering select,
.woocommerce-page select{border:2px solid var(--line) !important;border-radius:0 !important;background:var(--paper);font-family:var(--mono);font-size:.82rem;padding:.4em .6em}
/* Fil d'ariane */
.woocommerce-breadcrumb{font-family:var(--mono) !important;font-size:.76rem;letter-spacing:.06em;color:var(--stone);text-transform:uppercase}
.woocommerce-breadcrumb a{color:var(--rust-deep)}
/* Fiche produit : galerie + résumé */
.woocommerce div.product .product_title{font-family:var(--display) !important;text-transform:uppercase}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:1.05rem}
.woocommerce #reviews,.woocommerce div.product .woocommerce-tabs{margin-top:2rem}
/* Panier / commande */
.woocommerce table.shop_table{border:2px solid var(--ink) !important;border-radius:0 !important;background:var(--paper)}
.woocommerce table.shop_table th{font-family:var(--mono);text-transform:uppercase;font-size:.78rem;letter-spacing:.08em}
.woocommerce .cart_totals,.woocommerce-checkout #payment{background:var(--paper) !important;border:2px solid var(--ink) !important;border-radius:0 !important}
.woocommerce-info,.woocommerce-message,.woocommerce-error{border-top-color:var(--rust) !important;background:var(--paper) !important;font-family:var(--mono);font-size:.85rem}
/* Widgets de la barre latérale éventuelle */
.widget-title,.wp-block-heading{font-family:var(--display) !important;text-transform:uppercase}
/* Pages éditoriales (Pro, FAQ, Atelier, Contact) en kraft sans boîte */
.page .entry-content,.page .ast-article-single{background:transparent !important}

/* Masque les placeholders par défaut de WooCommerce (police Cardo, jamais utilisée par notre design) */
.has-cardo-font-family{display:none !important}
.woocommerce-products-header + .wp-block-spacer,
.wc-block-product-collection-no-results{display:none !important}

/* ============================================================
   ÉDITEUR DE PERSONNALISATION (designer live Fabric.js)
   ============================================================ */
.sg-designer{border:2px solid var(--ink);background:var(--paper);padding:1.2rem;margin:0 0 1.4rem}
.sg-designer__title{font-family:var(--display);text-transform:uppercase;font-weight:700;font-size:1.05rem;color:var(--ink);margin:0 0 .9rem}
.sg-designer__tabs{display:flex;gap:0;margin-bottom:.8rem}
.sg-tab{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;background:var(--kraft);color:var(--ink);border:2px solid var(--ink);padding:.5em 1.2em;cursor:pointer}
.sg-tab.active{background:var(--ink);color:var(--kraft)}
.sg-tab + .sg-tab{border-left:0}
.sg-designer__stage{display:flex;justify-content:center;background:var(--kraft-2);border:1px dashed var(--line);padding:.6rem;margin-bottom:.8rem}
.sg-designer__stage canvas{max-width:100%;height:auto}
.sg-designer__tools{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.sg-tool{font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;background:var(--ink);color:var(--kraft);border:2px solid var(--ink);padding:.55em 1em;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}
.sg-tool:hover{background:var(--rust);border-color:var(--rust)}
.sg-tool--del{background:transparent;color:var(--ink)}
.sg-tool--del:hover{background:var(--ink);color:var(--kraft)}
.sg-tool--sel{background:var(--paper);color:var(--ink);text-transform:none}
.sg-designer__hint{font-size:.85rem;color:var(--stone);margin:.8rem 0 0;font-style:italic}

/* ============================================================
   STUDIO DE PERSONNALISATION (page /personnaliser/ plein écran)
   ============================================================ */
.sg-studio-page{max-width:1280px;margin:0 auto;padding:clamp(1.5rem,4vw,3rem) var(--gutter)}
.sg-studio-head{max-width:60ch;margin-bottom:2rem}
.sg-studio-head h1{font-size:clamp(2rem,5vw,3.4rem);margin:.4rem 0 .6rem}
.sg-studio-head p{color:var(--stone)}
.sg-studio{display:grid;grid-template-columns:1fr 340px;gap:2rem;align-items:start}
.sg-studio__canvas{border:2px solid var(--ink);background:var(--kraft-2);padding:1rem}
.sg-studio__stage{display:flex;justify-content:center;background:var(--kraft);border:1px dashed var(--line)}
.sg-studio__stage canvas{max-width:100%;height:auto}
.sg-studio__panel{position:sticky;top:90px;display:flex;flex-direction:column;gap:1.4rem;border:2px solid var(--ink);background:var(--paper);padding:1.4rem}
.sg-step{display:flex;flex-direction:column;gap:.6rem}
.sg-step__n{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rust-deep)}
.sg-select{font-family:var(--sans);border:2px solid var(--ink);border-radius:0;background:#fff;padding:.6em .8em;font-size:.95rem;width:100%}
.sg-select--sm{font-size:.85rem;padding:.45em .6em}
.sg-studio__foot{border-top:2px dashed var(--line);padding-top:1.2rem;gap:1rem}
.sg-studio__price{display:flex;align-items:baseline;justify-content:space-between}
.sg-studio__price strong{font-family:var(--display);font-size:1.8rem;color:var(--ink)}
.sg-studio__add{width:100%;justify-content:center;text-align:center}
#sg-cart-form{margin:0}
/* Bouton « Personnaliser » sur la fiche produit */
.sg-perso-cta{display:inline-block;margin:0 0 1rem;background:var(--rust) !important;border-color:var(--rust) !important;color:var(--paper) !important}
.sg-perso-cta:hover{background:var(--ink) !important;border-color:var(--ink) !important}
@media (max-width:820px){.sg-studio{grid-template-columns:1fr}.sg-studio__panel{position:static}}
