/* Boutique: lujo editorial. Serif grande, mucho aire, líneas finas y foto protagonista. */
.t-boutique{font-size:1.0625rem}
.t-boutique .site-header__inner{grid-template-columns:1fr auto 1fr;grid-template-areas:"search brand ." "nav nav nav";row-gap:14px;padding-top:26px;padding-bottom:14px}
.t-boutique .brand{grid-area:brand;justify-self:center}
.t-boutique .site-search{grid-area:search}
.t-boutique .site-nav{grid-area:nav;justify-content:center;gap:4px 34px}
.t-boutique .site-nav a{font-size:.875rem;letter-spacing:.08em;font-weight:500}
.t-boutique .brand__name{font-size:2.125rem;font-weight:500;letter-spacing:.06em}
.t-boutique .announce{background:var(--text);color:var(--bg);letter-spacing:.1em;font-size:.75rem}
.t-boutique h1,.t-boutique h2,.t-boutique h3{font-weight:500}

.t-boutique .hero{padding:32px 0 88px}
.t-boutique .hero__inner{display:grid;grid-template-columns:repeat(12,1fr);align-items:end;min-height:min(74vh,700px)}
.t-boutique .hero__art{grid-column:5/13;grid-row:1;align-self:stretch;background:var(--primary);outline:1px solid var(--accent);outline-offset:-28px}
.t-boutique .hero__copy{grid-column:1/8;grid-row:1;z-index:1;padding:40px 40px 40px 0;background:var(--bg)}
.t-boutique .hero__title{font-size:clamp(3rem,1.6rem + 5.6vw,6.5rem);line-height:.98;letter-spacing:-.015em;margin-bottom:22px}
.t-boutique .hero__subtitle{font-size:1.1875rem;max-width:38ch;margin-bottom:32px;color:var(--soft)}
.t-boutique .btn{background:transparent;color:var(--text);padding:12px 0;border-bottom:1px solid var(--text);letter-spacing:.08em;font-size:.875rem}
.t-boutique .btn:hover{filter:none;color:var(--primary);border-color:var(--primary)}

.t-boutique .block{padding:96px 0}
.t-boutique .block__title{font-size:clamp(2.125rem,1.4rem + 2.4vw,3.375rem);text-align:center;margin-bottom:48px}
.t-boutique .collection__head{flex-direction:column;align-items:center;text-align:center}
.t-boutique .collection__head .block__title{margin-bottom:10px}
.t-boutique .collection__all{font-size:.875rem;letter-spacing:.08em}

.t-boutique .categories__list{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 44px}
.t-boutique .category{font-family:var(--font-heading),serif;font-size:1.875rem;font-weight:500;font-style:italic}
.t-boutique .category__mark{display:none}
.t-boutique .category:hover{color:var(--primary)}
.t-boutique .category--image{width:240px;font-size:1.5rem;text-align:center}

.t-boutique .products{gap:48px 28px}
.t-boutique .product__media{background:var(--surface)}
.t-boutique .product__placeholder{color:var(--accent)}
.t-boutique .product__name{font-family:var(--font-heading),serif;font-size:1.3125rem;font-weight:500}
.t-boutique .product__price{font-weight:400;letter-spacing:.04em;font-size:.9375rem}

.t-boutique .benefits__list{gap:48px}
.t-boutique .benefit{border-top:1px solid var(--text);padding-top:18px}
.t-boutique .benefit__title{font-size:1.5rem}
.t-boutique .faq .wrap{max-width:780px}
.t-boutique .faq__item summary{font-family:var(--font-heading),serif;font-size:1.375rem;font-weight:500}

.t-boutique .category-hero{text-align:center;padding-bottom:56px}
.t-boutique .category-hero .crumbs{justify-content:center}
.t-boutique .category-hero__intro{margin-left:auto;margin-right:auto}
.t-boutique .category-hero--image{text-align:left}
.t-boutique .category-hero--image .crumbs{justify-content:flex-start}
.t-boutique .pdp__title{font-size:clamp(2.25rem,1.5rem + 2.4vw,3.5rem)}
.t-boutique .pdp__price{font-weight:400;letter-spacing:.03em}
.t-boutique .pdp__soon{border-left-color:var(--accent)}

.t-boutique .site-footer{text-align:center}
.t-boutique .site-footer__inner{flex-direction:column;align-items:center}
.t-boutique .site-footer__name{font-size:1.75rem;font-weight:500;letter-spacing:.06em}

@media (max-width:860px){
  .t-boutique .site-header__inner{grid-template-columns:1fr auto;grid-template-areas:"brand search" "nav nav"}
  .t-boutique .brand{justify-self:start}
  .t-boutique .site-nav{justify-content:flex-start}
  .t-boutique .hero__inner{grid-template-columns:1fr;min-height:0}
  .t-boutique .hero__art{grid-column:1;grid-row:1;min-height:260px}
  .t-boutique .hero__copy{grid-column:1;grid-row:2;padding:28px 0 0}
}
.t-boutique .footer-grid .social-links,.t-boutique .footer-pay{justify-content:center}
.t-boutique .footer-logo{margin:0 auto}
.t-boutique .footer-text{margin-left:auto;margin-right:auto}
.t-boutique .newsletter{margin:0 auto}
/* La búsqueda vive dentro de los iconos: es el bloque de iconos el que ocupa su sitio en la cabecera. */
.t-boutique .site-tools{grid-area:search;justify-self:start}
@media (max-width:860px){.t-boutique .site-tools{justify-self:end}}
.t-boutique .product__off{background:var(--text);color:var(--bg);font-weight:500;letter-spacing:.08em}
@media (max-width:640px){.t-boutique .categories__list{gap:20px 12px}.t-boutique .category--image{width:calc(50% - 6px);font-size:1.125rem}}
@media (max-width:640px){.t-boutique .categories__list li{width:calc(50% - 6px)}.t-boutique .category--image{width:100%}}
@media (max-width:860px){.t-boutique .categories__list{gap:16px 10px}.t-boutique .categories__list li{width:calc(33.33% - 7px)}.t-boutique .category--image{width:100%;font-size:1rem}}

/* Fase J — firma: titular editorial enorme; en ordenador, la compra es una barra de tinta que sube desde el pie de la foto. */
.t-boutique .hero__title{font-size:clamp(3.25rem,1.2rem + 7vw,8rem);line-height:.92}
.t-boutique .product__cta{background:var(--text);color:var(--bg)}
@media (hover:hover) and (pointer:fine){
  .t-boutique .product__buy{left:0;right:0;bottom:0}
  .t-boutique .product__cta{width:100%;height:46px;border-radius:0;box-shadow:none;font-weight:500;letter-spacing:.06em}
  .t-boutique .product__cta svg{display:none}
  .t-boutique .product__cta-text{position:static;width:auto;height:auto;clip:auto}
  .t-boutique .product__cta:not(.product__cta--off):hover{transform:none;background:var(--primary);color:var(--on-primary)}
}
/* Fase J: la acción de compra (ficha y carrito) es sólida, no un enlace. */
.t-boutique .pdp__actions .btn,.t-boutique .summary .btn,.t-boutique .pay-step .btn{background:var(--text);color:var(--bg);border:0;padding:16px 28px;text-align:center}
.t-boutique{--radius-card:0}
