/* Routine skin care (includes/routine-page.php): testata, guida all'uso con la tabella, prodotti numerati come passi,
   prodotti in più, modulo ed Esplora. Colori e caratteri Atelier; schede prodotto come in "La cura continua". */
.ac-rt { --rt-ink:#342e29; --rt-muted:#665d54; --rt-accent:#715545; --rt-paper:#fbf8f3; --rt-card:#f2ebe1; --rt-light:#fffdf9; --rt-line:#ded3c4; --rt-blush:#f5e6e1; --rt-ease:cubic-bezier(.22,1,.36,1); }
@media (prefers-reduced-motion:no-preference) { html:has(#Content.ac-rt) { scroll-behavior:smooth; } }
body:has(#Content.ac-rt) #Subheader { display:none; }
body.ac-atelier #Content.ac-rt { padding:28px 0 clamp(64px,8vw,104px); background:var(--rt-paper); color:var(--rt-ink); letter-spacing:normal; overflow:clip; }
.ac-rt,.ac-rt * { box-sizing:border-box; }
.ac-rt-shell { width:min(1200px, calc(100% - 96px)); margin-inline:auto; }
.ac-rt p { text-wrap:pretty; }
.ac-rt-eyebrow { display:block; margin:0 0 12px; font-size:12.5px; font-weight:600; letter-spacing:.14em; line-height:1.5; text-transform:uppercase; color:var(--rt-accent); }
body.ac-atelier #Content.ac-rt h2 { --atelier-heading-size:clamp(30px,3.4vw,44px); --atelier-heading-before:0px; --atelier-heading-after:0px; color:var(--rt-ink); }

/* Testata: i pulsanti sotto il testo, della stessa larghezza. */
.ac-rt .ac-rt-actions { display:flex; flex-direction:column; align-items:stretch; gap:12px; width:min(100%, 380px); margin:28px 0 0; }
.ac-rt .ac-rt-actions:empty { display:none; }
.ac-rt .ac-rt-actions .ac-tx-button { margin:0; justify-content:space-between; }

/* Guida all'uso: titolo e nota a sinistra, la tabella su carta chiara a destra. */
.ac-rt-guide { display:grid; grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:clamp(28px,5vw,64px); align-items:start; margin:clamp(48px,7vw,88px) 0 0; }
.ac-rt-guide__head { position:sticky; top:calc(var(--ac-header-visible, 88px) + 24px); }
body.ac-atelier #Content.ac-rt .ac-rt-guide__head p { --atelier-copy-size:16px; --atelier-copy-leading:1.75; margin:16px 0 0!important; color:var(--rt-muted); }
body.ac-atelier #Content.ac-rt .ac-rt-guide__head .ac-rt-guide__note { padding:14px 18px; border-radius:16px; background:var(--rt-blush); font-size:14.5px!important; color:var(--rt-accent); }
.ac-rt-guide__table { margin:0; padding:clamp(14px,2vw,24px); border-radius:28px; background:var(--rt-light); box-shadow:0 0 0 1px var(--rt-line), 0 30px 60px rgb(52 46 41 / 8%); }
.ac-rt-guide__table>a { display:block; border-radius:16px; overflow:hidden; cursor:zoom-in; }
.ac-rt-guide__image { display:block; width:100%; height:auto; transition:transform .6s var(--rt-ease); }
.ac-rt-guide__table figcaption { display:flex; justify-content:flex-end; margin:16px 0 0; }
body.ac-atelier #Content.ac-rt .ac-rt-guide__table figcaption .ac-tx-button { margin:0; }

/* Prodotti: titolo con il numero dei passi, schede numerate nell'ordine d'uso. */
.ac-rt-products { margin:clamp(64px,9vw,120px) 0 0; scroll-margin-top:calc(var(--ac-header-visible, 88px) + 24px); }
.ac-rt-products__head { display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:12px 32px; }
body.ac-atelier #Content.ac-rt .ac-rt-products__count { margin:0!important; font-size:13px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--rt-muted); }
body.ac-atelier #Content.ac-rt .ac-rt-steps,body.ac-atelier #Content.ac-rt .ac-rt-shelf { margin:24px 0 0; padding:clamp(18px,2.4vw,28px); border:0; border-radius:28px; background:var(--rt-card); }
body.ac-atelier #Content.ac-rt :is(.ac-rt-steps,.ac-rt-shelf) .woocommerce ul.products { grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; }
body.ac-atelier #Content.ac-rt .ac-rt-steps ul.products { counter-reset:rt-step; }
body.ac-atelier #Content.ac-rt .ac-rt-steps ul.products li.product { counter-increment:rt-step; }
body.ac-atelier #Content.ac-rt .ac-rt-steps ul.products li.product::before { content:counter(rt-step); position:absolute; z-index:2; top:14px; left:14px; display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:var(--rt-ink); color:var(--rt-paper); font:400 19px/1 Georgia,'Times New Roman',serif; box-shadow:0 8px 18px rgb(52 46 41 / 22%); pointer-events:none; }
.ac-rt-all { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px 32px; margin:20px 0 0; padding:clamp(22px,3vw,32px); border-radius:24px; background:var(--rt-ink); color:var(--rt-paper); }
body.ac-atelier #Content.ac-rt .ac-rt-all p { margin:0!important; font:400 clamp(22px,2.4vw,28px)/1.3 Georgia,'Times New Roman',serif; color:var(--rt-paper); }
body.ac-atelier #Content.ac-rt .ac-rt-all .ac-tx-button--primary { margin:0; background:var(--rt-paper)!important; color:var(--rt-ink)!important; border-color:var(--rt-paper)!important; }
body.ac-atelier #Content.ac-rt .ac-rt-empty { margin:24px 0 0!important; padding:clamp(22px,3vw,32px); border-radius:24px; background:var(--rt-card); font-size:16px; color:var(--rt-muted); }

/* Prodotti in più, modulo. */
.ac-rt-extra { margin:clamp(56px,8vw,96px) 0 0; }
.ac-rt-contact { margin:clamp(56px,8vw,104px) 0 0; }
.ac-rt-contact__card { margin:24px 0 0; padding:clamp(24px,3.6vw,48px); border-radius:28px; background:var(--rt-card); }
.ac-rt #ac-page-explore { margin-top:clamp(56px,8vw,104px); }

@media (hover:hover) and (pointer:fine) {
 .ac-rt-guide__table>a:hover .ac-rt-guide__image { transform:scale(1.015); }
}
@media (max-width:1000px) {
 .ac-rt-guide { grid-template-columns:1fr; }
 .ac-rt-guide__head { position:static; }
 body.ac-atelier #Content.ac-rt :is(.ac-rt-steps,.ac-rt-shelf) .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
 .ac-rt-shell { width:calc(100% - 32px); }
 .ac-rt .ac-rt-actions { width:100%; }
 .ac-rt-guide__table { border-radius:22px; }
 body.ac-atelier #Content.ac-rt .ac-rt-guide__table figcaption .ac-tx-button { width:100%; justify-content:space-between; }
 body.ac-atelier #Content.ac-rt :is(.ac-rt-steps,.ac-rt-shelf) { padding:14px; border-radius:22px; }
 .ac-rt-all { border-radius:22px; }
 body.ac-atelier #Content.ac-rt .ac-rt-all .ac-tx-button { width:100%; justify-content:center; }
 .ac-rt-contact__card { padding:22px 18px; border-radius:22px; }
}
@media (max-width:420px) {
 body.ac-atelier #Content.ac-rt :is(.ac-rt-steps,.ac-rt-shelf) .woocommerce ul.products { grid-template-columns:1fr; }
}
