/* =============================================================
   Amarilis Neves - L'Atelier Lux
   Estética compartida entre la landing "L'Atelier Lux" y las
   páginas de WooCommerce (Tienda, producto, carrito, checkout,
   mi cuenta), para que ambas usen el mismo header, footer,
   tipografía y paleta de colores.
   ============================================================= */

:root{
  --cream:        #F3EEE3;
  --cream-dark:   #EAE2D2;
  --sand:         #DCCFB6;
  --ink:          #2C241C;
  --brown:        #6E5A44;
  --brown-deep:   #4A3B2C;
  --espresso:     #3A2E22;
  --gold:         #AD8A54;
  --line:         rgba(58,46,34,.18);
  --radius-lg: 2px;
}

.amarilis-lux *{ box-sizing:border-box; }
.amarilis-lux{
  background:var(--cream);
  color:var(--ink);
  font-family:'Jost',sans-serif;
  font-weight:300;
  line-height:1.5;
  overflow-x:hidden;
}
.amarilis-lux h1,.amarilis-lux h2,.amarilis-lux h3{
  font-family:'Cormorant Garamond',serif;
  font-weight:400;
  letter-spacing:.03em;
  margin:0;
  color:var(--espresso);
}
.amarilis-lux .eyebrow{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;
  font-size:1rem;
  letter-spacing:.35em;
  color:var(--brown);
  text-transform:uppercase;
}
.amarilis-lux .wrap{ max-width:1240px; margin:0 auto; padding:0 40px; }
.amarilis-lux a{ color:inherit; text-decoration:none; }
.amarilis-lux img{ display:block; max-width:100%; }
.amarilis-lux .ph{
  background:linear-gradient(135deg,var(--sand),var(--cream-dark));
  display:flex; align-items:center; justify-content:center;
  color:var(--brown); font-family:'Jost'; font-size:.75rem; letter-spacing:.15em;
  text-transform:uppercase; text-align:center; padding:20px;
}
.amarilis-lux .btn{
  display:inline-block;
  background:var(--espresso);
  color:var(--cream);
  padding:16px 34px;
  font-size:.75rem;
  letter-spacing:.25em;
  text-transform:uppercase;
  border:1px solid var(--espresso);
  transition:background .3s ease,color .3s ease;
}
.amarilis-lux .btn:hover{ background:transparent; color:var(--espresso); }
.amarilis-lux .btn-outline{
  background:transparent; color:var(--espresso); border:1px solid var(--espresso);
}
.amarilis-lux .btn-outline:hover{ background:var(--espresso); color:var(--cream); }

/* ---------- HEADER ---------- */
.al-header{
  position:relative; z-index:20;
  border-bottom:1px solid var(--line);
  background:var(--cream);
}
.al-header .wrap{
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  padding-top:26px; padding-bottom:26px; gap:24px;
}
.al-header .wrap > .al-logo{ justify-self:start; }
.al-header .wrap > .al-title{ justify-self:center; }
.al-header .wrap > .al-title ~ div{ justify-self:end; }
.al-logo{
  font-family:'Cormorant Garamond',serif;
  letter-spacing:.35em;
  font-size:.95rem;
  text-transform:uppercase;
  white-space:nowrap;
}
.al-title{
  text-align:center;
  font-family:'Cormorant Garamond',serif;
  letter-spacing:.15em;
  font-size:.95rem;
  text-transform:uppercase;
  line-height:1.4;
}
.al-nav{ display:flex; align-items:center; gap:60px; }
.al-cart-link{
  display:inline-flex; align-items:center;
  position:absolute; right:40px; top:50%; transform:translateY(-50%);
}
.al-cart-link svg{ width:18px; height:18px; stroke:var(--ink); }
.amarilis-lux a,
.amarilis-lux a:visited{ color:inherit; }
.al-nav a{
  font-size:.72rem; letter-spacing:.15em; text-transform:uppercase;
  padding-bottom:4px; border-bottom:1px solid transparent;
}
.al-nav a,
.al-nav a:visited,
.al-nav a:hover,
.al-nav a:active{ color:var(--ink) !important; }
.al-nav a:hover{ border-color:var(--brown); }
.al-icons{ display:flex; gap:20px; align-items:center; }
.al-icons svg{ width:18px; height:18px; stroke:var(--ink); }
.al-burger{ display:none; background:none; border:0; cursor:pointer; }
.al-burger svg{ width:24px; height:24px; stroke:var(--ink); }

.al-navbar{
  border-top:1px solid var(--line);
}
.al-navbar .wrap{
  position:relative; display:flex; justify-content:center;
  padding-top:14px; padding-bottom:14px;
}

/* ---------- HERO ---------- */
.al-hero{ padding:70px 0 0; }
.al-hero .grid{
  display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center;
}
.al-hero h1{ font-size:2.6rem; margin:10px 0 6px; }
.al-hero .sub{
  font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.3rem;
  color:var(--brown); margin-bottom:22px; letter-spacing:.02em;
}
.al-hero .ingredients{ font-size:.85rem; letter-spacing:.03em; color:var(--brown-deep); margin-bottom:22px; }
.al-hero .desc{ font-size:.85rem; color:var(--ink); opacity:.85; margin-bottom:30px; max-width:420px; }
.al-hero .desc b{ display:block; font-weight:500; margin-bottom:4px; }

.al-hero-visual{ position:relative; }
.al-hero-visual .bottle{
  aspect-ratio:3/4; border-radius:var(--radius-lg); overflow:hidden;
}
.al-badges{
  position:absolute; right:-10px; top:50%; transform:translateY(-50%);
  display:flex; flex-direction:column; gap:18px;
}
.al-badge{
  display:flex; align-items:center; gap:12px; background:var(--cream);
  padding:10px 18px 10px 10px; border:1px solid var(--line);
}
.al-badge .ic{
  width:38px; height:38px; border-radius:50%; border:1px solid var(--gold);
  display:flex; align-items:center; justify-content:center; flex:none;
}
.al-badge .ic svg{ width:18px; height:18px; stroke:var(--gold); }
.al-badge span{ font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; }

/* ---------- PACKAGING BANNER ---------- */
.al-banner{ margin-top:70px; aspect-ratio:21/9; overflow:hidden; display:grid; grid-template-columns:1fr 1fr; gap:0; }
.al-banner img{ width:100%; height:100%; object-fit:cover; display:block; }
.al-banner img:nth-child(2){ object-position: center 100%; }
.al-banner .ph{ width:100%; height:100%; }

/* ---------- FEATURE STRIP ---------- */
.al-features{ background:var(--cream-dark); margin-top:70px; }
.al-features .grid{
  display:grid; grid-template-columns:repeat(4,1fr);
}
.al-feature{
  padding:44px 30px; text-align:center; border-right:1px solid var(--line);
}
.al-feature:last-child{ border-right:0; }
.al-feature svg{ width:30px; height:30px; stroke:var(--brown); margin-bottom:16px; }
.al-feature h3{ font-size:1.05rem; text-transform:uppercase; letter-spacing:.08em; margin-bottom:8px; }
.al-feature p{ font-size:.78rem; color:var(--brown-deep); opacity:.8; margin:0; }

/* ---------- SPLIT SECTIONS ---------- */
.al-split{ padding:90px 0; }
.al-split .grid{ display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.al-split.reverse .grid{ direction:rtl; }
.al-split.reverse .grid > *{ direction:ltr; }
.al-split .visual{ aspect-ratio:4/3; border-radius:var(--radius-lg); overflow:hidden; }
.al-split .visual img{ width:100%; height:100%; object-fit:cover; }
.al-split .visual.tall{ aspect-ratio:4/5; }
.al-split .visual.contain{ aspect-ratio:auto; background:var(--cream-dark); }
.al-split .visual.contain img{ height:auto; object-fit:contain; }
.al-split h2{ font-size:2.1rem; text-transform:uppercase; letter-spacing:.05em; margin-bottom:18px; }
.al-split p{ font-size:.9rem; color:var(--ink); opacity:.85; max-width:420px; margin-bottom:28px; }

/* ---------- TRUST STRIP ---------- */
.al-trust{ background:var(--cream-dark); padding:56px 0; text-align:center; }
.al-trust h3{
  font-size:1.1rem; text-transform:uppercase; letter-spacing:.1em; margin-bottom:40px;
}
.al-trust .grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:20px; }
.al-trust .item svg{ width:26px; height:26px; stroke:var(--brown); margin-bottom:12px; }
.al-trust .item p{
  font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; color:var(--brown-deep); margin:0;
}

/* ---------- QUOTE BANNER ---------- */
.al-quote{
  background:var(--brown-deep); color:var(--cream); text-align:center; padding:56px 0;
}
.al-quote .eyebrow{
  display:block; color:var(--gold); margin-bottom:16px;
}
.al-quote p{
  font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.3rem; letter-spacing:.03em; margin:0;
}

/* ---------- INTRO / MANIFESTO ---------- */
.al-intro{ padding:90px 0; text-align:center; }
.al-intro .wrap{ max-width:760px; }
.al-intro .eyebrow{ display:block; margin-bottom:18px; }
.al-intro h2{ font-size:1.9rem; margin-bottom:26px; }
.al-intro p{ font-size:.95rem; color:var(--ink); opacity:.85; margin-bottom:18px; }
.al-intro p:last-child{ margin-bottom:0; }

/* ---------- RITUAL STEPS ---------- */
.al-ritual{ background:var(--espresso); color:var(--cream); padding:90px 0; text-align:center; }
.al-ritual .wrap{ max-width:620px; }
.al-ritual .eyebrow{ display:block; color:var(--gold); margin-bottom:20px; }
.al-ritual p{
  font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.2rem;
  letter-spacing:.02em; line-height:1.9; margin-bottom:16px;
}
.al-ritual p:last-child{ margin-bottom:0; }

/* ---------- FOOTER STRIP ---------- */
.al-footer-strip{ background:#8A7355; color:var(--cream); padding:50px 0; }
.al-footer-strip .grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:30px; }
.al-fitem{ display:flex; align-items:center; gap:16px; }
.al-fitem svg{ width:28px; height:28px; stroke:var(--cream); flex:none; }
.al-fitem p{ font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; margin:0; line-height:1.4; }

/* ---------- reveal on scroll ---------- */
.al-reveal{ opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease; }
.al-reveal.is-visible{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){
  .al-reveal{ opacity:1; transform:none; transition:none; }
}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .al-banner{ aspect-ratio:4/3; }
  .al-hero .grid,
  .al-split .grid{ grid-template-columns:1fr; gap:34px; }
  .al-split.reverse .grid{ direction:ltr; }
  .al-features .grid{ grid-template-columns:repeat(2,1fr); }
  .al-feature{ border-right:0; border-bottom:1px solid var(--line); }
  .al-trust .grid{ grid-template-columns:repeat(2,1fr); }
  .al-footer-strip .grid{ grid-template-columns:1fr; }
  .al-nav{
    position:fixed; inset:0 0 0 30%; background:var(--cream);
    flex-direction:column; padding:100px 30px; gap:24px;
    transform:translateX(100%); transition:transform .35s ease; z-index:30;
  }
  .al-nav.open{ transform:translateX(0); }
  .al-burger{ display:block; }
  .al-badges{ position:static; flex-direction:row; flex-wrap:wrap; margin-top:20px; }
}
@media (max-width:560px){
  .al-header .wrap{ display:flex; flex-wrap:wrap; }
  .al-title{ order:3; width:100%; text-align:left; margin-top:10px; }
  .al-hero h1{ font-size:1.9rem; }
}

/* =============================================================
   WOOCOMMERCE — Tienda, producto, carrito, checkout, mi cuenta
   Mismos colores/tipografía que L'Atelier Lux. Todo queda dentro
   del <body class="amarilis-lux ...">, así que se apoya en las
   variables y reglas base de arriba.
   ============================================================= */

.amarilis-lux #primary.content-area{
  max-width:1240px;
  margin:0 auto;
  padding:60px 40px 100px;
}

.amarilis-lux .woocommerce-notices-wrapper{ margin-bottom:24px; }
.amarilis-lux .woocommerce-message,
.amarilis-lux .woocommerce-info,
.amarilis-lux .woocommerce-error,
.amarilis-lux .woocommerce-noreviews{
  background:var(--cream-dark);
  border:1px solid var(--line);
  border-top:3px solid var(--gold);
  color:var(--ink);
  padding:16px 20px;
  font-size:.85rem;
  list-style:none;
  margin:0 0 24px;
}
.amarilis-lux .woocommerce-error{ border-top-color:var(--brown-deep); }
.amarilis-lux .woocommerce-message a,
.amarilis-lux .woocommerce-error a{
  text-decoration:underline;
}

/* Título de la tienda / categoría */
.amarilis-lux .woocommerce-products-header__title,
.amarilis-lux h1.page-title,
.amarilis-lux .woocommerce-page-title{
  font-size:2.2rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:34px;
}

.amarilis-lux .woocommerce-result-count,
.amarilis-lux .woocommerce-ordering{
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--brown-deep);
}
.amarilis-lux .woocommerce-ordering select{
  font-family:'Jost',sans-serif;
  border:1px solid var(--line);
  background:var(--cream);
  color:var(--ink);
  padding:8px 12px;
}

/* Grilla de productos */
.amarilis-lux ul.products{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:40px 30px;
  list-style:none;
  margin:0;
  padding:0;
}
@media (max-width:900px){
  .amarilis-lux ul.products{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .amarilis-lux ul.products{ grid-template-columns:1fr; }
}
.amarilis-lux ul.products li.product{
  text-align:center;
  list-style:none;
}
.amarilis-lux ul.products li.product a{ display:block; }
.amarilis-lux ul.products li.product img{
  width:100%;
  aspect-ratio:3/4;
  object-fit:cover;
  border-radius:var(--radius-lg);
  margin-bottom:18px;
}
.amarilis-lux ul.products li.product .woocommerce-loop-product__title{
  font-size:1.05rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:6px;
}
.amarilis-lux ul.products li.product .price{
  font-family:'Jost',sans-serif;
  font-size:.85rem;
  color:var(--brown-deep);
}
.amarilis-lux ul.products li.product .price del{ color:var(--brown); opacity:.6; }
.amarilis-lux ul.products li.product .price ins{ text-decoration:none; }
.amarilis-lux ul.products li.product .button{
  display:inline-block;
  margin-top:14px;
  background:transparent;
  color:var(--espresso);
  border:1px solid var(--espresso);
  padding:10px 22px;
  font-size:.7rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  transition:background .3s ease,color .3s ease;
}
.amarilis-lux ul.products li.product .button:hover{
  background:var(--espresso); color:var(--cream);
}
.amarilis-lux span.onsale{
  background:var(--brown-deep);
  color:var(--cream);
  font-size:.65rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:5px 10px;
  border-radius:0;
  min-height:0;
  min-width:0;
  line-height:1;
  top:10px; left:10px; right:auto;
}
.amarilis-lux .star-rating{ color:var(--gold); margin:0 auto 8px; }

.amarilis-lux .woocommerce-pagination ul.page-numbers{
  display:flex; justify-content:center; gap:10px; list-style:none; margin:50px 0 0; padding:0;
}
.amarilis-lux .woocommerce-pagination .page-numbers{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:36px; height:36px; padding:0 8px;
  border:1px solid var(--line); color:var(--ink);
  font-size:.78rem;
}
.amarilis-lux .woocommerce-pagination .page-numbers.current,
.amarilis-lux .woocommerce-pagination .page-numbers:hover{
  background:var(--espresso); color:var(--cream); border-color:var(--espresso);
}

/* ---------- Producto individual ---------- */
.amarilis-lux div.product{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:start;
}
@media (max-width:900px){
  .amarilis-lux div.product{ grid-template-columns:1fr; gap:34px; }
}
.amarilis-lux div.product > .woocommerce-tabs,
.amarilis-lux div.product > .related.products,
.amarilis-lux div.product > .upsells.products{
  grid-column:1 / -1;
}

.amarilis-lux .woocommerce-product-gallery{ position:relative; }
.amarilis-lux .woocommerce-product-gallery__wrapper{ margin:0; padding:0; list-style:none; }
.amarilis-lux .woocommerce-product-gallery__image,
.amarilis-lux .woocommerce-product-gallery__image--placeholder{
  border-radius:var(--radius-lg); overflow:hidden; background:var(--cream-dark);
}
.amarilis-lux .woocommerce-product-gallery__image img,
.amarilis-lux .woocommerce-product-gallery__image--placeholder img{
  width:100%; aspect-ratio:3/4; object-fit:cover;
}
.amarilis-lux .flex-control-thumbs{ display:flex; gap:12px; margin:16px 0 0; padding:0; list-style:none; }
.amarilis-lux .flex-control-thumbs li{ width:64px; }
.amarilis-lux .flex-control-thumbs img{
  border:1px solid var(--line); opacity:.6; cursor:pointer; transition:opacity .3s ease,border-color .3s ease;
}
.amarilis-lux .flex-control-thumbs img.flex-active,
.amarilis-lux .flex-control-thumbs img:hover{ opacity:1; border-color:var(--gold); }

.amarilis-lux div.product .woocommerce-product-gallery img{
  border-radius:var(--radius-lg);
}
.amarilis-lux div.product .woocommerce-product-rating{
  display:flex; align-items:center; gap:10px; margin-bottom:14px;
}
.amarilis-lux div.product .woocommerce-review-link{ font-size:.75rem; color:var(--brown); }
.amarilis-lux div.product .product_meta{
  margin-top:26px; padding-top:20px; border-top:1px solid var(--line);
  font-size:.72rem; letter-spacing:.05em; text-transform:uppercase; color:var(--brown);
}
.amarilis-lux div.product .product_meta > span{ display:block; margin-bottom:6px; }
.amarilis-lux div.product .product_meta a{ color:var(--brown-deep); text-decoration:underline; }
.amarilis-lux div.product .product_title{
  font-size:2.1rem;
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-bottom:10px;
}
.amarilis-lux div.product p.price,
.amarilis-lux div.product span.price{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;
  font-size:1.4rem;
  color:var(--brown-deep);
  margin-bottom:18px;
  display:block;
}
.amarilis-lux div.product .woocommerce-product-details__short-description{
  font-size:.9rem; color:var(--ink); opacity:.85; margin-bottom:24px;
}
.amarilis-lux div.product .woocommerce-product-details__short-description p{ margin:0 0 12px; }

.amarilis-lux div.product form.cart{
  display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:30px;
}
.amarilis-lux div.product .quantity .qty{
  width:70px; padding:14px 10px; text-align:center;
  border:1px solid var(--line); background:var(--cream);
  color:var(--ink); font-family:'Jost',sans-serif;
}
.amarilis-lux div.product .single_add_to_cart_button,
.amarilis-lux div.product .button.alt,
.amarilis-lux .wc-proceed-to-checkout .checkout-button{
  display:inline-block;
  background:var(--espresso) !important;
  color:var(--cream) !important;
  padding:16px 34px;
  font-size:.75rem;
  letter-spacing:.25em;
  text-transform:uppercase;
  border:1px solid var(--espresso) !important;
  border-radius:0 !important;
  transition:background .3s ease,color .3s ease;
}
.amarilis-lux div.product .single_add_to_cart_button:hover,
.amarilis-lux div.product .button.alt:hover,
.amarilis-lux .wc-proceed-to-checkout .checkout-button:hover{
  background:transparent !important; color:var(--espresso) !important;
}

.amarilis-lux .woocommerce-tabs ul.tabs{
  display:flex; gap:30px; list-style:none; margin:40px 0 0; padding:0 0 14px;
  border-bottom:1px solid var(--line);
}
.amarilis-lux .woocommerce-tabs ul.tabs li{ margin:0; }
.amarilis-lux .woocommerce-tabs ul.tabs li a{
  font-size:.75rem; letter-spacing:.15em; text-transform:uppercase; color:var(--brown);
}
.amarilis-lux .woocommerce-tabs ul.tabs li.active a{ color:var(--espresso); }
.amarilis-lux .woocommerce-tabs .panel{ padding:26px 0; font-size:.9rem; color:var(--ink); opacity:.85; }

.amarilis-lux .related.products{ margin-top:80px; }
.amarilis-lux .related.products > h2{
  font-size:1.9rem; text-transform:uppercase; letter-spacing:.05em; margin-bottom:34px; text-align:center;
}

/* ---------- Carrito ---------- */
.amarilis-lux table.shop_table{
  width:100%; border-collapse:collapse; margin-bottom:30px;
  font-size:.85rem;
}
.amarilis-lux table.shop_table th{
  text-align:left; text-transform:uppercase; letter-spacing:.08em; font-size:.72rem;
  color:var(--brown-deep); border-bottom:1px solid var(--line); padding:14px 10px;
}
.amarilis-lux table.shop_table td{
  padding:18px 10px; border-bottom:1px solid var(--line); vertical-align:middle;
}
.amarilis-lux table.shop_table td.product-thumbnail img{
  width:70px; border-radius:var(--radius-lg);
}
.amarilis-lux .cart .quantity .qty{
  width:60px; padding:10px; border:1px solid var(--line); background:var(--cream); text-align:center;
}
.amarilis-lux .cart_totals h2{
  font-size:1.5rem; text-transform:uppercase; letter-spacing:.05em; margin-bottom:18px;
}
.amarilis-lux .cart_totals table{ width:100%; font-size:.85rem; }
.amarilis-lux .cart_totals table th,
.amarilis-lux .cart_totals table td{ padding:12px 0; border-bottom:1px solid var(--line); }
.amarilis-lux .coupon .input-text{
  padding:12px 14px; border:1px solid var(--line); background:var(--cream); margin-right:10px;
}
.amarilis-lux button[name="apply_coupon"],
.amarilis-lux button[name="update_cart"]{
  background:transparent; border:1px solid var(--espresso); color:var(--espresso);
  padding:12px 24px; font-size:.7rem; letter-spacing:.15em; text-transform:uppercase;
}
.amarilis-lux button[name="apply_coupon"]:hover,
.amarilis-lux button[name="update_cart"]:hover{ background:var(--espresso); color:var(--cream); }

/* ---------- Checkout ---------- */
.amarilis-lux #customer_details{ margin-bottom:30px; }
.amarilis-lux .woocommerce-billing-fields h3,
.amarilis-lux #order_review_heading{
  font-size:1.5rem; text-transform:uppercase; letter-spacing:.05em; margin-bottom:20px;
}
.amarilis-lux .form-row label{
  font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; color:var(--brown-deep);
}
.amarilis-lux .form-row .required{ color:var(--brown-deep); }
.amarilis-lux input.input-text,
.amarilis-lux textarea,
.amarilis-lux select,
.amarilis-lux .select2-selection{
  border:1px solid var(--line) !important;
  background:var(--cream) !important;
  color:var(--ink) !important;
  padding:12px 14px !important;
  font-family:'Jost',sans-serif;
  border-radius:0 !important;
}
.amarilis-lux #order_review table.shop_table{ background:var(--cream-dark); padding:10px; }
.amarilis-lux #place_order{
  width:100%;
  background:var(--espresso) !important;
  color:var(--cream) !important;
  padding:18px 34px !important;
  font-size:.78rem !important;
  letter-spacing:.2em !important;
  text-transform:uppercase;
  border:1px solid var(--espresso) !important;
  border-radius:0 !important;
}
.amarilis-lux #place_order:hover{ background:transparent !important; color:var(--espresso) !important; }

/* ---------- Carrito y Checkout (bloques de WooCommerce) ----------
   Las páginas "Carrito" y "Finalizar compra" de este sitio usan los
   bloques nuevos de WooCommerce (wc-block-cart / wc-block-checkout),
   no el shortcode clásico, así que se estilizan aparte. */
.amarilis-lux .wc-block-cart,
.amarilis-lux .wc-block-checkout{
  font-family:'Jost',sans-serif;
  color:var(--ink);
}
.amarilis-lux .wc-block-components-checkout-step__title,
.amarilis-lux .wc-block-cart__empty-cart__title,
.amarilis-lux .wc-block-components-panel .wc-block-components-panel__button,
.amarilis-lux h2.wp-block-heading{
  font-family:'Cormorant Garamond',serif;
  font-weight:400;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--espresso);
}

/* Filas de producto en el carrito */
.amarilis-lux .wc-block-cart-items{ border-top:1px solid var(--line); }
.amarilis-lux .wc-block-cart-items__header{
  text-transform:uppercase; letter-spacing:.08em; font-size:.7rem; color:var(--brown-deep);
}
.amarilis-lux .wc-block-cart-items__row{
  border-bottom:1px solid var(--line); padding-top:20px; padding-bottom:20px;
}
.amarilis-lux .wc-block-components-product-image img,
.amarilis-lux .wc-block-cart-item__image img{
  border-radius:var(--radius-lg);
}
.amarilis-lux .wc-block-components-product-name{
  color:var(--espresso); font-size:.95rem; letter-spacing:.03em; text-transform:uppercase;
}
.amarilis-lux .wc-block-components-product-metadata,
.amarilis-lux .wc-block-components-product-metadata__description{
  color:var(--brown); font-size:.78rem;
}
.amarilis-lux .wc-block-components-formatted-money-amount{
  font-family:'Cormorant Garamond',serif; font-style:italic; color:var(--brown-deep);
}
.amarilis-lux .wc-block-cart-item__remove-link,
.amarilis-lux .wc-block-components-product-metadata__description a{
  color:var(--brown); text-decoration:underline; font-size:.75rem;
}
.amarilis-lux .wc-block-components-quantity-selector{
  border:1px solid var(--line); border-radius:0; background:var(--cream);
}
.amarilis-lux .wc-block-components-quantity-selector__input{
  background:transparent; color:var(--ink); font-family:'Jost',sans-serif;
}
.amarilis-lux .wc-block-components-quantity-selector__button{ color:var(--brown-deep); }

/* Totales / cupón (barra lateral) */
.amarilis-lux .wc-block-components-totals-wrapper{
  border-top:1px solid var(--line);
}
.amarilis-lux .wc-block-components-totals-item__label,
.amarilis-lux .wc-block-components-totals-item__value{
  font-size:.85rem; color:var(--ink);
}
.amarilis-lux .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.amarilis-lux .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1.2rem; color:var(--brown-deep);
}
.amarilis-lux .wc-block-components-panel{
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.amarilis-lux .wc-block-components-totals-coupon__input input,
.amarilis-lux .wc-block-components-text-input input,
.amarilis-lux .wc-block-components-textarea textarea,
.amarilis-lux .wc-block-components-combobox__input{
  border:1px solid var(--line) !important;
  background:var(--cream) !important;
  color:var(--ink) !important;
  border-radius:0 !important;
  font-family:'Jost',sans-serif;
}
.amarilis-lux .wc-block-components-text-input label,
.amarilis-lux .wc-block-components-radio-control__option-layout{
  font-family:'Jost',sans-serif;
}

/* Botones (Aplicar cupón, Ir a pagar, Realizar el pedido, +/- cantidad) */
.amarilis-lux .wc-block-components-button,
.amarilis-lux .wc-block-components-checkout-place-order-button{
  background:var(--espresso) !important;
  color:var(--cream) !important;
  border:1px solid var(--espresso) !important;
  border-radius:0 !important;
  font-size:.72rem !important;
  letter-spacing:.2em;
  text-transform:uppercase;
  box-shadow:none !important;
  transition:background .3s ease,color .3s ease;
}
.amarilis-lux .wc-block-components-button:hover,
.amarilis-lux .wc-block-components-checkout-place-order-button:hover{
  background:transparent !important; color:var(--espresso) !important;
}
.amarilis-lux .wc-block-components-button.wp-element-button.contained,
.amarilis-lux .wc-block-cart__submit-container .wc-block-components-button{
  width:100%;
  padding:16px 20px !important;
}
/* Botón +/- de cantidad: que no herede el estilo sólido de los botones principales */
.amarilis-lux .wc-block-components-quantity-selector .wc-block-components-button{
  background:transparent !important; color:var(--ink) !important; border:none !important;
}

.amarilis-lux .wc-block-cart__empty-cart__title{ margin-bottom:10px; }

/* ---------- Mi cuenta ---------- */
.amarilis-lux .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; }
.amarilis-lux .woocommerce-MyAccount-navigation li{
  border-bottom:1px solid var(--line);
}
.amarilis-lux .woocommerce-MyAccount-navigation a{
  display:block; padding:12px 0; font-size:.78rem; letter-spacing:.1em; text-transform:uppercase;
}
.amarilis-lux .woocommerce-MyAccount-navigation li.is-active a{ color:var(--brown-deep); }
