/* Final visual layer: loaded after the legacy stylesheet. */
.contact-section{min-height:780px;margin:0 clamp(12px,3vw,48px);padding:clamp(55px,7vw,105px);border-radius:32px 32px 0 0;background:linear-gradient(90deg,rgba(250,246,243,.98),rgba(250,246,243,.91) 50%,rgba(250,246,243,.18)),url("assets/generated/contact-background.jpg") 74% center/cover no-repeat;color:var(--ink);overflow:hidden}
.contact-panel{width:min(720px,100%);padding:clamp(30px,4vw,58px);border:1px solid rgba(255,255,255,.8);border-radius:28px;background:rgba(255,253,251,.84);box-shadow:0 28px 80px rgba(62,43,54,.14);backdrop-filter:blur(22px) saturate(1.15)}
.contact-panel::before{content:"✦  ASESORÍA PERSONAL";display:inline-flex;margin-bottom:22px;padding:8px 13px;border-radius:999px;background:linear-gradient(120deg,#eee7fa,#fde7ed);color:var(--wine);font-size:8px;font-weight:700;letter-spacing:.14em}
.contact-panel .eyebrow{display:none}.contact-panel h2{margin:0 0 18px;color:var(--ink);font-size:clamp(43px,4.7vw,72px)}.contact-panel>p:not(.eyebrow){color:var(--muted)}
.contact-grid{gap:14px}.contact-grid label{gap:7px;color:var(--wine)}
.contact-grid input,.contact-grid select,.contact-grid textarea{min-height:52px;padding:14px 16px;border:1px solid #e7dcda;border-radius:14px;background:rgba(255,255,255,.84);color:var(--ink);transition:.2s}
.contact-grid textarea{min-height:112px}.contact-grid select{color-scheme:light}.contact-grid input::placeholder,.contact-grid textarea::placeholder{color:#aa9b98}
.contact-grid input:focus,.contact-grid select:focus,.contact-grid textarea:focus{border-color:var(--lavender);background:#fff;box-shadow:0 0 0 4px rgba(169,149,217,.14)}
.contact-panel .button{min-height:52px;padding-inline:24px;color:#fff;background:linear-gradient(110deg,var(--wine),#b63e6b 58%,#9f84d0);box-shadow:0 13px 28px rgba(125,41,59,.2)}#contact-message{color:var(--wine);font-weight:600}
body>footer{position:relative;margin:0 clamp(12px,3vw,48px) 24px;padding:82px clamp(28px,5vw,78px) 28px;border-radius:0 0 32px 32px;background:radial-gradient(circle at 9% 0,rgba(220,74,120,.2),transparent 23rem),radial-gradient(circle at 92% 14%,rgba(169,149,217,.25),transparent 24rem),linear-gradient(135deg,#261d2d,#34243e 54%,#231c2c);box-shadow:0 30px 70px rgba(37,25,42,.16)}
body>footer::before{content:"";position:absolute;inset:0 5vw auto;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent)}
.footer-brand img{width:76px;height:58px;padding:7px;border-radius:16px;background:rgba(255,255,255,.08)}.footer-brand h2{margin-top:17px;font-size:34px}.footer-brand p{max-width:270px;font-size:12px;line-height:1.65}
.footer-seals{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.footer-seals span{padding:7px 10px;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:#d9cedd;font-size:8px;letter-spacing:.08em;text-transform:uppercase}
.footer-links a{position:relative;width:fit-content;color:#bfb1c5}.footer-links a::after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background:linear-gradient(90deg,#df6c91,#b29be0);transition:width .25s}.footer-links a:hover::after{width:100%}
.newsletter form{min-height:50px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07)}.newsletter input{color:#fff}.newsletter input::placeholder{color:#a99cae}.newsletter button{width:44px;height:44px;margin-right:3px}
.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-top:34px;padding-top:24px;border-top:1px solid rgba(255,255,255,.09);color:#918497;font-size:9px;letter-spacing:.06em}.footer-bottom .copyright{position:static;grid-column:auto;margin:0;padding:0;border:0}
@media(max-width:820px){.contact-section{margin-inline:12px;padding:65px 18px;border-radius:24px 24px 0 0;background-position:62% center}.contact-panel{padding:32px 20px;border-radius:21px}.contact-panel h2{font-size:45px}body>footer{margin:0 12px 16px;padding:64px 24px 25px;border-radius:0 0 24px 24px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}}

/* Mobile: prevent the experience title from being clipped by legacy columns. */
@media(max-width:820px){
  .experience{display:flex;min-height:0;margin:0 12px 60px;flex-direction:column;grid-template-columns:none;border-radius:20px;overflow:hidden}
  .experience-image{width:100%;height:68vw;min-height:280px;max-height:430px;flex:none;background-position:center 42%}
  .experience-copy{width:100%;min-width:0;min-height:0;padding:52px 24px 58px;box-sizing:border-box;overflow:visible}
  .experience-copy h2{width:100%;max-width:100%;margin:0 0 22px;font-size:clamp(38px,11.5vw,50px);line-height:1.02;letter-spacing:-.035em;overflow-wrap:normal;word-break:normal}
  .experience-copy>p:not(.eyebrow){max-width:100%;margin-bottom:8px;line-height:1.75}
  .experience-copy a{max-width:100%;margin-top:24px;line-height:1.5}
}
@media(max-width:380px){.experience-copy{padding-inline:20px}.experience-copy h2{font-size:36px}}

/* Product discovery: featured selection on home and complete shopping landing. */
.catalog-all-link{display:flex;width:max-content;margin:36px auto 0;align-items:center;gap:22px}
.products-hero{display:none}
.site-header nav a.active{color:var(--wine)}
.site-header nav a.active::after{width:100%}
.products-page .hero,.products-page .benefits,.products-page .experience,.products-page .quiz{display:none}
.products-page .products-hero{position:relative;display:grid;min-height:560px;margin:24px clamp(12px,3vw,48px) 0;padding:clamp(60px,8vw,118px);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:40px;border-radius:32px;overflow:hidden;color:#fff;background:linear-gradient(90deg,rgba(31,23,37,.95),rgba(46,31,50,.76) 52%,rgba(46,31,50,.2)),url("assets/generated/perfumes-hero.webp") center 45%/cover no-repeat}
.products-hero::after{content:"";position:absolute;inset:22px;border:1px solid rgba(255,255,255,.16);border-radius:22px;pointer-events:none}
.products-hero-copy{position:relative;z-index:1;max-width:790px}.products-hero .eyebrow{color:#eadfe9}.products-hero h1{margin:18px 0 24px;font-family:"Playfair Display",serif;font-size:clamp(54px,7vw,98px);font-weight:500;line-height:.94;letter-spacing:-.045em}.products-hero h1 em{color:#e8c8d5;font-weight:500}.products-hero-copy>p:not(.eyebrow){max-width:610px;margin-bottom:32px;color:#ded3df;font-size:14px;line-height:1.8}.products-hero .button-light{border-color:rgba(255,255,255,.25);color:#fff;background:rgba(255,255,255,.1);backdrop-filter:blur(12px)}
.products-hero-stat{position:relative;z-index:1;display:flex;align-items:flex-end;gap:14px;padding:24px 28px;border:1px solid rgba(255,255,255,.17);border-radius:20px;background:rgba(32,21,35,.42);backdrop-filter:blur(15px)}.products-hero-stat strong{font-family:"Playfair Display",serif;font-size:70px;font-weight:500;line-height:.8}.products-hero-stat span{color:#d9cedd;font-size:9px;line-height:1.5;letter-spacing:.12em;text-transform:uppercase}
.products-page .collection{padding-top:clamp(70px,8vw,120px)}.products-page .catalog-all-link{display:none}
.products-page .carousel-actions,.products-page .carousel-dots{display:none!important}
.products-page .carousel-viewport{overflow:visible;scroll-snap-type:none}
.products-page .collection .product-grid{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3vw,44px)}
.products-page .collection .product-card{width:auto;min-width:0;scroll-snap-align:none}
@media(max-width:820px){.products-page .products-hero{min-height:560px;margin-top:12px;padding:70px 28px 44px;grid-template-columns:1fr;align-content:end;background-position:61% center;border-radius:24px}.products-hero::after{inset:12px;border-radius:16px}.products-hero h1{font-size:clamp(48px,14vw,68px)}.products-hero-stat{width:max-content;padding:18px 20px}.products-hero-stat strong{font-size:54px}.catalog-all-link{margin-top:28px}}
@media(max-width:1050px){.products-page .collection .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.products-page .collection .product-grid{grid-template-columns:1fr;gap:42px}}
