/* Shared editorial hierarchy. Colours, alignment, content and application widgets stay authoritative. */
body.ac-atelier {
 --atelier-type-h1:clamp(34px,4.3vw,60px);
 --atelier-type-h2:clamp(28px,3.2vw,40px);
 --atelier-type-h3:clamp(22px,2.3vw,28px);
 --atelier-type-card:clamp(22px,2vw,26px);
}
body.ac-atelier #Content h1,body.ac-atelier #Subheader h1,body.ac-atelier .ac-home-custom-hero h1,body.ac-atelier .ac-home-intro h1 {
 --atelier-heading-size:var(--atelier-type-h1); --atelier-heading-leading:1.12;
 --atelier-heading-tracking:-.035em; --atelier-heading-before:0px; --atelier-heading-after:24px;
}
body.ac-atelier #Content h2 {
 --atelier-heading-size:var(--atelier-type-h2); --atelier-heading-leading:1.2;
 --atelier-heading-tracking:-.03em; --atelier-heading-before:0px; --atelier-heading-after:24px;
}
body.ac-atelier #Content h3 {
 --atelier-heading-size:var(--atelier-type-h3); --atelier-heading-leading:1.3;
 --atelier-heading-tracking:-.02em; --atelier-heading-before:24px; --atelier-heading-after:16px;
}
body.ac-atelier #Content h4 {
 --atelier-heading-size:22px; --atelier-heading-leading:1.35;
 --atelier-heading-tracking:-.015em; --atelier-heading-before:20px; --atelier-heading-after:12px;
}
body.ac-atelier #Content h5 {
 --atelier-heading-size:20px; --atelier-heading-leading:1.4;
 --atelier-heading-tracking:0em; --atelier-heading-before:20px; --atelier-heading-after:12px;
}
body.ac-atelier #Content h6 {
 --atelier-heading-size:18px; --atelier-heading-leading:1.5;
 --atelier-heading-tracking:0em; --atelier-heading-before:20px; --atelier-heading-after:12px;
}
/* Include the specific template selectors to supersede their old important font declarations. */
body.ac-atelier #Content :is(h1,h2,h3,h4,h5,h6,.ac-visual-hero h1,.ac-catalog-card h2.woocommerce-loop-product__title):not(:where(.altacl-v2-booking *,[role=dialog] *,.ywgc-popup *,.ywgc-product-as-present-container *)),
body.ac-atelier #Subheader h1,
body.ac-atelier .ac-home-custom-hero h1,
body.ac-atelier .ac-home-intro h1 {
 font:var(--atelier-heading-weight,400) var(--atelier-heading-size)/var(--atelier-heading-leading) Georgia,'Times New Roman',serif!important;
 letter-spacing:var(--atelier-heading-tracking)!important;
 margin-block:var(--atelier-heading-before) var(--atelier-heading-after)!important;
 max-width:100%; overflow-wrap:break-word;
}
body.ac-atelier #Content :is(h1,h2,h3,h4,h5,h6):not(:where(.altacl-v2-booking *,[role=dialog] *,.ywgc-popup *,.ywgc-product-as-present-container *))>a {
 font:inherit!important; letter-spacing:inherit!important;
}
/* A title inside a card keeps a compact size regardless of its source heading level. */
body.ac-atelier #Content :is(.ac-directory-card h2,.ac-about-person h3,.ac-news-card__title,.ac-catalog-card h2.woocommerce-loop-product__title,.ac-detail-related-card :is(h2,h3),ul.products li.product :is(h2,h3,h4),.photo_box :is(h2,h3),.ac-video-card h2,.ac-social-card__heading :is(h2,h3),.ac-faq-item summary h2,.gift-this-product-heading) {
 --atelier-heading-size:var(--atelier-type-card); --atelier-heading-leading:1.35;
 --atelier-heading-tracking:-.02em; --atelier-heading-before:0px; --atelier-heading-after:16px;
}
/* Keep the agreed bold treatment of the description and related-products headings. */
body.ac-atelier #Content :is(.altaclinic-product-description__title,.altaclinic-product-page>:is(.related,.upsells).products>h2) {
 --atelier-heading-size:var(--atelier-type-card); --atelier-heading-leading:1.35; --atelier-heading-weight:600;
}
body.ac-atelier #Content .ac-visual-hero h1 { --atelier-heading-after:0px; }
body.ac-atelier .ac-home-custom-hero h1 { --atelier-heading-after:0px; }
body.ac-atelier #Content :is(.ac-about-section__heading,.ac-news-section-heading,.ac-contact-section-heading) { padding-bottom:0; margin-bottom:24px; }
body.ac-atelier #Content :is(.ac-about-section__heading,.ac-news-section-heading,.ac-contact-section-heading) h2,
body.ac-atelier #Content .ac-faq-item summary h2 { --atelier-heading-after:0px!important; }
body.ac-atelier #Content :is(.ac-news-prose,.wpb_text_column) :is(h2,h3,h4,h5,h6) { --atelier-heading-before:28px; }
body.ac-atelier #Content :is(.ac-news-prose,.wpb_text_column)>:is(h2,h3,h4,h5,h6):first-child { --atelier-heading-before:0px; }
/* Hero subtitles use the same reading size without affecting dates, buttons or form controls. */
body.ac-atelier #Content .ac-visual-hero__lead { margin-top:20px; font:400 17px/1.7 'Open Sans',Arial,Tahoma,sans-serif; letter-spacing:normal; }
body.ac-atelier #Content .ac-visual-hero__lead p,
body.ac-atelier .ac-home-intro>p { font:400 17px/1.7 'Open Sans',Arial,Tahoma,sans-serif; letter-spacing:normal; margin-block:0 12px; }
body.ac-atelier #Content .ac-visual-hero__lead p:last-child,body.ac-atelier .ac-home-intro>p:last-child { margin-bottom:0; }
body.ac-atelier #Content .ac-visual-hero__lead .titolo-t { font:inherit!important; letter-spacing:normal; }
@media(max-width:760px) {
 body.ac-atelier { --atelier-type-h1:clamp(30px,8.3vw,42px); --atelier-type-h2:28px; --atelier-type-h3:24px; --atelier-type-card:22px; }
 body.ac-atelier #Content h1,body.ac-atelier #Subheader h1,body.ac-atelier .ac-home-custom-hero h1,body.ac-atelier .ac-home-intro h1 { --atelier-heading-after:20px; }
 body.ac-atelier #Content .ac-visual-hero h1 { --atelier-heading-after:0px; }
 body.ac-atelier .ac-home-custom-hero h1 { --atelier-heading-after:0px; }
 body.ac-atelier #Content h2 { --atelier-heading-after:20px; }
 body.ac-atelier #Content :is(.ac-about-section__heading,.ac-news-section-heading,.ac-contact-section-heading) { margin-bottom:20px; }
 body.ac-atelier #Content .ac-visual-hero__lead { margin-top:16px; }
 body.ac-atelier #Content .ac-visual-hero__lead p,body.ac-atelier .ac-home-intro>p { font-size:16px; line-height:1.7; }
}

/* Editorial body copy only: navigation, commerce controls, forms and embedded apps keep their sizing. */
body.ac-atelier { --atelier-copy-size:17px; --atelier-copy-leading:1.75; --atelier-copy-gap:18px; }
body.ac-atelier #Content p:not(:where(nav *,form *,.wpcf7 *,.altacl-v2-booking *,[role=dialog] *,.ywgc-popup *,.ywgc-product-as-present-container *,.price,.saved-sale,.stock,.woocommerce-result-count,.woocommerce-info,.woocommerce-message,.woocommerce-error,.ac-catalog-controls *,.ac-news-meta *,.ac-news-pagination *,.woocommerce-notices-wrapper *,.autocomplete-suggestions *)),
body.ac-atelier #Content :is(.wpb_text_column,.ac-news-prose,.ac-contact-prose,.ac-faq-answer) :is(li,blockquote,dd,dt):not(:where(form *,.wpcf7 *,.altacl-v2-booking *,[role=dialog] *,.ywgc-popup *,.ywgc-product-as-present-container *,ul.products *)) {
 font-family:'Open Sans',Arial,Tahoma,sans-serif!important;
 font-size:var(--atelier-copy-size)!important; line-height:var(--atelier-copy-leading)!important; letter-spacing:normal!important;
}
body.ac-atelier #Content p:not(:where(nav *,form *,.wpcf7 *,.altacl-v2-booking *,[role=dialog] *,.ywgc-popup *,.ywgc-product-as-present-container *,.price,.saved-sale,.stock,.woocommerce-result-count,.woocommerce-info,.woocommerce-message,.woocommerce-error,.ac-catalog-controls *,.ac-news-meta *,.ac-news-pagination *,.woocommerce-notices-wrapper *,.autocomplete-suggestions *)) { margin-block:0 var(--atelier-copy-gap)!important; }
body.ac-atelier #Content p:last-child:not(:where(nav *,form *,.wpcf7 *,.altacl-v2-booking *,[role=dialog] *,.ywgc-popup *,.ywgc-product-as-present-container *,.price,.saved-sale,.stock,.woocommerce-result-count,.woocommerce-info,.woocommerce-message,.woocommerce-error,.ac-catalog-controls *,.ac-news-meta *,.ac-news-pagination *,.woocommerce-notices-wrapper *,.autocomplete-suggestions *)) { margin-bottom:0!important; }
body.ac-atelier #Content :is(.wpb_text_column,.ac-news-prose,.ac-contact-prose,.ac-faq-answer) :is(p,li) :is(span,em,strong,b):not(:where(.altacl-v2-booking *,form *,ul.products *,[role=dialog] *)) { font-family:inherit!important; font-size:inherit!important; line-height:inherit!important; letter-spacing:inherit!important; }
body.ac-atelier #Content :is(.wpb_text_column,.ac-news-prose,.ac-contact-prose,.ac-faq-answer) :is(ul,ol):not(:where(nav *,form *,ul.products,.altacl-v2-booking *)) { margin-block:0 var(--atelier-copy-gap); }
body.ac-atelier #Content :is(.wpb_text_column,.ac-news-prose,.ac-contact-prose,.ac-faq-answer) li:not(:where(form *,ul.products *,.altacl-v2-booking *)) { margin-block:0 8px; padding-block:0; }
body.ac-atelier .ac-home-custom-hero p,body.ac-atelier .ac-home-intro>p { font:400 var(--atelier-copy-size)/var(--atelier-copy-leading) 'Open Sans',Arial,Tahoma,sans-serif; margin-block:0 var(--atelier-copy-gap); }
@media(max-width:760px) { body.ac-atelier { --atelier-copy-size:16px; --atelier-copy-gap:16px; } }

/* Commerce titles use a compact scale; editorial page headings keep their hierarchy. */
body.ac-atelier #Content .altaclinic-product-page .summary h1.product_title {
 --atelier-heading-size:clamp(32px,3vw,38px); --atelier-heading-leading:1.2;
 --atelier-heading-tracking:-.025em; --atelier-heading-after:18px;
}
body.ac-atelier #Content .ac-catalog-card h2.woocommerce-loop-product__title {
 --atelier-heading-size:22px; --atelier-heading-leading:1.3; --atelier-heading-after:16px;
}
body.ac-atelier #Content .ac-catalog-products--single .ac-catalog-card h2.woocommerce-loop-product__title {
 --atelier-heading-size:28px; --atelier-heading-leading:1.25;
}
@media(max-width:760px) {
 body.ac-atelier #Content .altaclinic-product-page .summary h1.product_title { --atelier-heading-size:28px; --atelier-heading-after:16px; }
 body.ac-atelier #Content .ac-catalog-card h2.woocommerce-loop-product__title { --atelier-heading-size:20px; }
 body.ac-atelier #Content .ac-catalog-products--single .ac-catalog-card h2.woocommerce-loop-product__title { --atelier-heading-size:22px; }
}
