:root { --cream:#f8f1e9; --paper:#fffdfa; --nude:#f5e7dc; --gold:#b9956e; --gold-light:#e5d3bd; --brown:#674a36; --deep:#443126; --line:#eadbd0; --shadow:0 14px 36px rgba(68,49,38,.1); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:120px; }
body { margin:0; background:var(--cream); color:var(--brown); font-family:Arial, Helvetica, sans-serif; }
body:has(dialog[open]) { overflow:hidden; }
a { color:inherit; text-decoration:none; }
button, input { font:inherit; }
button { cursor:pointer; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:fixed; top:-60px; left:20px; z-index:100; background:var(--deep); color:#fff; padding:12px 16px; }
.skip-link:focus { top:20px; }
.site-header { position:sticky; top:0; z-index:50; display:grid; grid-template-columns:minmax(300px,1fr) auto minmax(210px,1fr); align-items:center; min-height:112px; gap:28px; padding:8px max(32px,calc((100vw - 1500px)/2)); border-bottom:1px solid #bea47f; background:rgba(218,198,180,.9); box-shadow:0 4px 14px rgba(68,49,38,.12); backdrop-filter:blur(11px); }
.brand { display:flex; align-items:center; justify-self:start; gap:14px; min-width:0; }
.brand-logo { width:96px; height:96px; flex:none; object-fit:contain; }
.brand-wordmark { display:flex; flex-direction:column; color:var(--deep); font-family:Georgia, 'Times New Roman', serif; font-size:23px; letter-spacing:.16em; line-height:.85; text-transform:uppercase; }
.brand-wordmark em { margin:6px 0 0 7px; color:#94734c; font-size:19px; font-style:italic; letter-spacing:.24em; text-transform:none; }
.main-nav { display:flex; grid-column:2; align-items:center; justify-content:center; gap:50px; }
.main-nav a { position:relative; padding:10px 0; color:var(--brown); font-size:14px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.main-nav a::after { position:absolute; bottom:2px; left:0; width:0; height:1px; background:var(--brown); content:""; transition:width .25s ease; }
.main-nav a:hover::after, .main-nav a:focus-visible::after { width:100%; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:47px; border:1px solid #d8c2a1; border-radius:999px; background:linear-gradient(110deg,#fcf5ef,#f0dece,#f7ecd9,#fcf5ef); background-size:240% 100%; padding:0 21px; color:var(--deep); box-shadow:0 6px 15px rgba(68,49,38,.1); font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; transition:transform .25s ease, box-shadow .25s ease, background-position .45s ease; }
.button:hover, .button:focus-visible { background-position:100% 50%; box-shadow:0 10px 20px rgba(68,49,38,.18); transform:translateY(-2px); }
.header-whatsapp { grid-column:3; justify-self:end; }
.menu-toggle { display:none; border:0; background:transparent; }
.hero { position:relative; max-width:1340px; min-height:600px; margin:0 auto; overflow:hidden; background:var(--deep); isolation:isolate; }
.hero-image, .hero-overlay { position:absolute; inset:0; width:100%; height:100%; }
.hero-image { object-fit:cover; filter:brightness(.68) saturate(.82); }
.hero-overlay { background:linear-gradient(90deg,rgba(44,30,22,.8),rgba(68,49,38,.56) 55%,rgba(68,49,38,.28)); z-index:1; }
.hero-content { position:relative; z-index:2; display:flex; min-height:600px; flex-direction:column; align-items:center; justify-content:center; width:min(900px,100%); margin:0 auto; padding:70px 35px; color:var(--paper); text-align:center; }
.eyebrow { margin:0 0 14px; color:#a77f54; font-size:10px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.eyebrow.light { color:#f4dbc5; }
h1, h2, h3 { font-family:Georgia, 'Times New Roman', serif; font-weight:400; }
.hero h1 { max-width:850px; margin:0; color:#fffaf6; font-size:clamp(50px,6vw,87px); line-height:.97; letter-spacing:-.06em; text-shadow:0 3px 20px rgba(20,13,10,.32); }
.hero-copy { max-width:570px; margin:26px auto 30px; color:#fff9f4; font-size:15px; line-height:1.7; }
.button.bright { background:#fffdfa; }
.text-link { display:inline-flex; align-items:center; gap:8px; margin-top:20px; border-bottom:1px solid currentColor; padding-bottom:5px; font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.text-link.light { color:#fffaf6; }
.hero-note { position:absolute; z-index:2; right:29px; bottom:24px; margin:0; color:#fff8f2; font-family:Georgia, 'Times New Roman', serif; font-size:18px; font-style:italic; text-shadow:0 1px 8px #312017; }
.benefits { display:flex; max-width:1240px; justify-content:space-between; gap:20px; margin:0 auto; padding:30px 28px; }
.benefits p { display:flex; align-items:center; gap:8px; margin:0; font-size:11px; font-weight:700; }
.benefits span { color:var(--gold); font-size:14px; }
.catalogue-section { max-width:1280px; margin:55px auto 0; padding:0 28px 105px; }
.cosmetics-section { margin-top:0; border-top:1px solid var(--line); padding-top:68px; }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:36px; }
.section-heading h2, .about-copy h2, .contact-section h2, .dialog-header h2 { max-width:650px; margin:0; color:var(--brown); font-size:clamp(35px,3.5vw,55px); line-height:1.03; letter-spacing:-.05em; }
.section-heading > p { max-width:300px; margin:0 0 4px; font-size:13px; line-height:1.65; }
.product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:19px; }
.product-card { display:flex; min-width:0; flex-direction:column; overflow:hidden; border:1px solid var(--line); background:var(--paper); box-shadow:0 6px 16px rgba(68,49,38,.05); cursor:pointer; transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.product-card:hover { border-color:#d2b994; box-shadow:var(--shadow); transform:translateY(-5px); }
.product-visual { position:relative; aspect-ratio:.94; overflow:hidden; background:#faf6f2; }
.product-visual > img, .cosmetic-visual { display:block; width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.product-card:hover .product-visual > img, .product-card:hover .cosmetic-visual { transform:scale(1.04); }
.product-visual > span { position:absolute; z-index:2; top:12px; left:12px; border-radius:999px; background:var(--paper); padding:6px 9px; font-size:8px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.cosmetic-visual { background-color:#f5e9e2; background-repeat:no-repeat; background-size:300% 200%; }
.cosmetic-visual.sponge-tile { display:grid; grid-template-columns:repeat(3,1fr); grid-template-rows:repeat(2,1fr); gap:7px; padding:12%; background:linear-gradient(145deg,#fffdfd,#f8d9df 50%,#f5e0b0); background-size:cover; }
.cosmetic-visual.sponge-tile i { position:relative; display:block; overflow:hidden; border:1px solid rgba(255,255,255,.86); background:linear-gradient(140deg,rgba(255,255,255,.75),rgba(255,205,220,.3)); box-shadow:0 5px 12px rgba(93,31,58,.12),inset 0 0 12px rgba(255,255,255,.7); }.cosmetic-visual.sponge-tile i::after { position:absolute; top:16%; left:20%; width:60%; height:69%; border-radius:53% 47% 51% 49% / 42% 43% 57% 58%; box-shadow:inset 8px 0 10px rgba(255,255,255,.24),0 4px 7px rgba(93,31,58,.14); content:""; transform:rotate(10deg); }.cosmetic-visual.sponge-tile i:nth-child(1)::after { background:#f6d589; }.cosmetic-visual.sponge-tile i:nth-child(2)::after { background:#f23a5a; }.cosmetic-visual.sponge-tile i:nth-child(3)::after { background:#f46b26; }.cosmetic-visual.sponge-tile i:nth-child(4)::after { background:#f6b0bd; }.cosmetic-visual.sponge-tile i:nth-child(5)::after { background:#d91248; }.cosmetic-visual.sponge-tile i:nth-child(6)::after { background:#f6a8b7; }
.cosmetic-visual.oil-rose,.cosmetic-visual.oil-hazelnut,.cosmetic-visual.oil-coconut { position:relative; overflow:hidden; background:linear-gradient(135deg,#fff8fa,#f4d6dd 56%,#efd89e); background-size:cover; }
.cosmetic-visual.oil-rose::before,.cosmetic-visual.oil-hazelnut::before,.cosmetic-visual.oil-coconut::before { position:absolute; bottom:10%; left:33%; width:34%; height:61%; border-radius:28% 28% 18% 18%; box-shadow:0 12px 20px rgba(75,35,53,.2),inset 9px 0 12px rgba(255,255,255,.24); content:""; }
.cosmetic-visual.oil-rose::after,.cosmetic-visual.oil-hazelnut::after,.cosmetic-visual.oil-coconut::after { position:absolute; top:20%; left:39%; width:22%; height:13%; border-radius:5px 5px 3px 3px; background:linear-gradient(90deg,#af7b1e,#e0bc61,#a9761d); box-shadow:0 2px 2px rgba(75,35,53,.13); content:""; }
.cosmetic-visual.oil-rose::before { background:linear-gradient(90deg,#cf4e68,#fa9a9b,#ba3c5a); }.cosmetic-visual.oil-hazelnut::before { background:linear-gradient(90deg,#75411f,#bf7d42,#603519); }.cosmetic-visual.oil-coconut::before { background:linear-gradient(90deg,#e4c7ab,#fffdf5,#caa780); }
.cosmetic-visual.oil-photo,.cosmetic-visual.razor-photo { background-position:center; background-size:cover; }
.cosmetic-visual.sponge-photo,.cosmetic-visual.lotion-photo,.cosmetic-visual.collection-photo { background-color:#fff; background-position:center; background-repeat:no-repeat; background-size:contain; }
.cosmetic-visual.lotion-selection { display:flex; align-items:end; justify-content:space-evenly; gap:6%; padding:9% 8%; background:linear-gradient(135deg,#fffdfd,#f6d7e0 63%,#efd99e); background-size:cover; }.cosmetic-visual.lotion-selection i { position:relative; display:block; width:18%; height:76%; border-radius:11% 11% 6% 6%; box-shadow:inset 7px 0 9px rgba(255,255,255,.28),0 9px 15px rgba(77,31,53,.2); }.cosmetic-visual.lotion-selection i::before { position:absolute; top:-7%; left:-5%; width:110%; height:10%; border-radius:4px 4px 2px 2px; background:#222029; content:""; }.cosmetic-visual.lotion-selection i::after { position:absolute; top:29%; left:12%; width:76%; color:#fffaf8; content:"apiderm"; font-family:Georgia,'Times New Roman',serif; font-size:clamp(7px,1vw,12px); font-weight:700; text-align:center; }.cosmetic-visual.lotion-selection i:nth-child(1) { background:linear-gradient(90deg,#f5a4bc,#f02887,#efa6b8); }.cosmetic-visual.lotion-selection i:nth-child(2) { background:linear-gradient(90deg,#d18a94,#ce2038,#e88391); }.cosmetic-visual.lotion-selection i:nth-child(3) { background:linear-gradient(90deg,#c49aeb,#8144bd,#c6a0e7); }.cosmetic-visual.lotion-selection i:nth-child(4) { background:linear-gradient(90deg,#e9d8cb,#b9654b,#efb7a8); }
.cosmetic-visual[class*="lotion-"] { position:relative; overflow:hidden; background:linear-gradient(135deg,#fffafd,#f5d6df 63%,#efda9f); background-size:cover; }
.cosmetic-visual[class*="lotion-"]::before { position:absolute; bottom:6%; left:31%; width:38%; height:78%; border-radius:7% 7% 15% 15%; box-shadow:0 13px 20px rgba(75,35,53,.22),inset 7px 0 10px rgba(255,255,255,.22); content:""; }
.cosmetic-visual[class*="lotion-"]::after { position:absolute; bottom:4%; left:29%; width:42%; height:12%; border-radius:2px 2px 8px 8px; background:linear-gradient(90deg,#211b22,#4e3b44,#211b22); content:""; }
.cosmetic-visual[class*="lotion-"] strong,.cosmetic-visual[class*="lotion-"] span { position:absolute; z-index:1; left:35%; width:30%; color:#fff8ef; font-family:Georgia,'Times New Roman',serif; text-align:center; text-shadow:0 1px 2px rgba(45,19,28,.28); }.cosmetic-visual[class*="lotion-"] strong { top:26%; font-size:clamp(10px,1.3vw,15px); }.cosmetic-visual[class*="lotion-"] span { top:45%; font-size:clamp(8px,1vw,12px); line-height:1.06; }
.cosmetic-visual.lotion-rose::before { background:linear-gradient(90deg,#f5bcc4,#fb5c9b,#e6a6b0); }.cosmetic-visual.lotion-plum::before { background:linear-gradient(90deg,#d77b8f,#cf2844,#e98195); }.cosmetic-visual.lotion-rose-maria::before { background:linear-gradient(90deg,#b66b4f,#c27649,#edb7a7); }.cosmetic-visual.lotion-orchid::before { background:linear-gradient(90deg,#c6a3eb,#7d48bc,#c9a7ec); }.cosmetic-visual.lotion-strawberry::before { background:linear-gradient(90deg,#f68375,#fa2c1e,#f48f8d); }.cosmetic-visual.lotion-cherry::before { background:linear-gradient(90deg,#fffdf7,#bf5c4b,#e9dfd4); }.cosmetic-visual.lotion-melinda::before { background:linear-gradient(90deg,#e795c8,#aa3678,#de91c1); }.cosmetic-visual.lotion-baba::before { background:linear-gradient(90deg,#ff9fcb,#f12f91,#f6a5cc); }
.product-info { display:flex; flex:1; flex-direction:column; padding:18px; }
.product-brand { margin:0 0 7px; color:#a47d55; font-size:9px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.product-info h3 { min-height:48px; margin:0; font-size:21px; line-height:1.13; letter-spacing:-.025em; }
.product-size { margin:10px 0 0; color:#a47d55; font-size:12px; }
.product-price { margin:6px 0 0; color:#a77a1f; font-size:15px; font-weight:700; }
.product-availability { margin:5px 0 0; color:#8e5370; font-size:10px; font-weight:700; }
.product-notes { min-height:37px; margin:8px 0 18px; font-size:12px; line-height:1.45; }
.product-cta { display:inline-flex; min-height:35px; align-items:center; justify-content:center; gap:7px; margin-top:auto; border-radius:999px; background:#25d366; padding:0 12px; color:#fff; font-size:9px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; transition:background .2s ease, transform .2s ease, box-shadow .2s ease; }
.product-cta:hover { background:#1dad57; box-shadow:0 7px 14px rgba(29,173,87,.25); color:#fff; transform:translateY(-1px); }
.product-variants { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin:9px 0 20px; }.product-variants > span { width:100%; color:#a77a1f; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }.variant-option { min-height:30px; border:1px solid #e3bd75; border-radius:999px; background:#fffafc; padding:7px 10px; color:var(--brown); font-size:10px; line-height:1.2; text-align:left; transition:background .2s ease,color .2s ease,border-color .2s ease; }.variant-option:hover,.variant-option.is-selected { border-color:#c7942e; background:#f4dfa8; color:var(--deep); }.product-detail-copy .product-variants { width:100%; gap:11px; margin:12px 0 22px; }.product-detail-copy .product-variants > span { font-size:11px; }.product-detail-copy .variant-option { min-height:39px; padding:9px 13px; font-size:12px; }
.catalogue-button { display:flex; width:fit-content; min-width:232px; margin:30px auto 0; }
.about-section { display:grid; grid-template-columns:1fr 1fr; max-width:1280px; margin:0 auto; background:#fdf9f5; }
.about-image-wrap { min-height:480px; overflow:hidden; }
.about-image-wrap img { width:100%; height:100%; object-fit:cover; }
.about-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:clamp(48px,7vw,100px); }
.about-copy > p:not(.eyebrow), .contact-section p:not(.eyebrow) { max-width:510px; margin:20px 0 0; font-size:14px; line-height:1.75; }
.about-points { display:flex; flex-wrap:wrap; gap:20px; margin-top:28px; font-size:11px; font-weight:700; }
.about-points span::first-letter { color:var(--gold); }
.contact-section { display:flex; max-width:1100px; align-items:center; justify-content:space-between; gap:55px; margin:95px auto; padding:0 28px; }
.contact-button { flex:none; }
footer { background:var(--deep); color:#fff8f2; }
.footer-main { display:flex; max-width:1280px; align-items:center; justify-content:space-between; gap:36px; margin:0 auto; padding:43px 28px; }
.footer-main > p { max-width:225px; margin:0; color:#f1ded0; font-size:13px; line-height:1.6; }
.footer-socials { display:flex; flex-wrap:wrap; gap:8px; max-width:280px; }.footer-social { display:inline-flex; min-height:36px; align-items:center; gap:7px; border:1px solid rgba(255,255,255,.42); border-radius:999px; padding:0 11px; color:#fff9f2; font-size:9px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }.footer-social svg { width:15px; height:15px; flex:none; fill:currentColor; }.footer-social:not(.is-pending):hover { border-color:#f3cf83; background:rgba(255,255,255,.1); color:#f3cf83; }.footer-social.is-pending { cursor:default; opacity:.78; }
.footer-brand .brand-wordmark { color:#fff8f2; }.footer-brand .brand-wordmark em { color:#e1c5a7; }
.footer-main nav { display:flex; flex-wrap:wrap; gap:24px; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.footer-bottom { display:flex; max-width:1280px; justify-content:space-between; gap:12px; margin:0 auto; border-top:1px solid rgba(255,255,255,.25); padding:17px 28px; color:#f1ded0; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.floating-whatsapp, .chat-assistant { position:fixed; z-index:45; bottom:22px; }
.floating-whatsapp { right:22px; }
.chat-assistant { left:22px; }.chat-launcher, .floating-whatsapp { display:inline-flex; min-height:47px; align-items:center; justify-content:center; gap:8px; border:1px solid #d8c2a1; border-radius:999px; background:linear-gradient(110deg,#fcf5ef,#f0dece,#f7ecd9,#fcf5ef); background-size:240% 100%; padding:0 18px; color:var(--deep); box-shadow:0 6px 15px rgba(68,49,38,.12); font-size:10px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; transition:transform .25s ease, box-shadow .25s ease, background-position .4s ease; }.chat-launcher:hover, .floating-whatsapp:hover { background-position:100% 50%; box-shadow:0 10px 20px rgba(68,49,38,.18); transform:translateY(-2px); }
.whatsapp-icon { width:17px; height:17px; flex:none; fill:currentColor; }
.chat-panel { position:absolute; bottom:58px; left:0; display:flex; width:min(360px,calc(100vw - 32px)); height:445px; flex-direction:column; overflow:hidden; border:1px solid #e1d2c2; background:#fff; box-shadow:0 20px 44px rgba(68,49,38,.22); }.chat-panel[hidden] { display:none; }
.chat-header { display:flex; align-items:center; justify-content:space-between; padding:16px 18px; background:var(--deep); color:#fff8f2; }.chat-close,.dialog-close { border:0; background:transparent; color:inherit; font-size:28px; line-height:1; }
.chat-messages { display:flex; min-height:0; flex:1; flex-direction:column; gap:10px; overflow-y:auto; padding:16px; background:#fcfaf8; }.assistant-message,.user-message { max-width:87%; margin:0; padding:10px 12px; font-size:12px; line-height:1.5; }.assistant-message { align-self:flex-start; border:1px solid var(--line); border-radius:4px 14px 14px; background:#fff; }.user-message { align-self:flex-end; border-radius:14px 4px 14px 14px; background:var(--brown); color:#fff; }
.chat-suggestions { display:flex; flex-wrap:wrap; gap:7px; border-top:1px solid var(--line); padding:10px 14px; background:#fff; }.chat-suggestions button { border:1px solid #dfcdb7; border-radius:999px; background:#fcf8f5; padding:6px 8px; color:var(--brown); font-size:9px; font-weight:700; }.chat-suggestions button:hover { background:var(--nude); }
.chat-form { display:flex; gap:8px; border-top:1px solid var(--line); padding:12px 14px; }.chat-form input { min-width:0; flex:1; border:1px solid #dfcdb7; border-radius:999px; outline:none; padding:0 13px; }.chat-form input:focus { border-color:var(--gold); box-shadow:0 0 0 3px #efdfce; }.chat-form button { width:39px; height:39px; border:0; border-radius:50%; background:var(--deep); color:#fff; }
.catalogue-dialog { width:min(1260px,calc(100vw - 36px)); max-height:calc(100dvh - 52px); border:0; background:var(--cream); color:var(--brown); box-shadow:0 25px 75px rgba(35,24,18,.35); padding:clamp(24px,4vw,55px); }.catalogue-dialog::backdrop { background:rgba(49,35,26,.68); backdrop-filter:blur(3px); }.dialog-header { display:flex; align-items:start; justify-content:space-between; gap:24px; }.dialog-close { width:40px; height:40px; flex:none; color:var(--brown); }.dialog-copy { margin:12px 0 34px; font-size:14px; }.full-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.product-dialog { position:relative; width:min(1040px,calc(100vw - 36px)); max-height:calc(100dvh - 52px); overflow:auto; border:0; background:var(--paper); color:var(--brown); box-shadow:0 25px 75px rgba(35,24,18,.35); padding:0; }.product-dialog::backdrop { background:rgba(75,23,49,.7); backdrop-filter:blur(3px); }.product-dialog-close { position:absolute; z-index:3; top:16px; right:16px; display:grid; width:42px; height:42px; place-items:center; border:0; border-radius:50%; background:rgba(255,255,255,.92); color:var(--deep); font-size:29px; line-height:1; box-shadow:0 5px 16px rgba(75,23,49,.18); }.product-dialog-close:hover { transform:scale(1.06); }.product-dialog #product-detail { display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.86fr); min-height:620px; }.product-detail-visual { min-height:620px; overflow:hidden; background:#f8dfe6; }.product-detail-visual img,.product-detail-visual .cosmetic-visual { width:100%; height:100%; object-fit:cover; }.product-detail-visual .cosmetic-visual { min-height:620px; background-size:cover; }.product-detail-visual .cosmetic-visual.oil-photo,.product-detail-visual .cosmetic-visual.sponge-photo,.product-detail-visual .cosmetic-visual.lotion-photo { background-color:#fff; background-repeat:no-repeat; background-size:contain; }.product-detail-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:clamp(38px,6vw,76px); }.product-detail-copy h2 { max-width:430px; margin:0; color:var(--brown); font-family:Georgia,'Times New Roman',serif; font-size:clamp(36px,4vw,57px); font-weight:400; line-height:1.02; letter-spacing:-.055em; }.product-detail-size { margin:16px 0 0; color:#b27a18; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }.product-detail-price { margin:10px 0 0; color:#a77a1f; font-family:Georgia,'Times New Roman',serif; font-size:25px; font-weight:700; }.product-detail-description { margin:26px 0; font-size:15px; line-height:1.75; }.product-detail-facts { width:100%; margin:0; border-top:1px solid var(--line); }.product-detail-facts div { display:grid; grid-template-columns:130px 1fr; gap:14px; border-bottom:1px solid var(--line); padding:13px 0; }.product-detail-facts dt { color:#b27a18; font-size:9px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }.product-detail-facts dd { margin:0; font-size:13px; }.detail-whatsapp { display:inline-flex; min-height:48px; align-items:center; justify-content:center; margin-top:28px; border-radius:999px; background:#25d366; padding:0 21px; color:#fff; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; transition:background .2s ease,transform .2s ease; }.detail-whatsapp:hover { background:#1dad57; color:#fff; transform:translateY(-2px); }
@media (max-width:1000px) { .site-header { grid-template-columns:minmax(210px,1fr) auto minmax(176px,1fr); gap:16px; padding:8px 24px; }.brand-logo { width:78px; height:78px; }.brand-wordmark { font-size:18px; }.brand-wordmark em { font-size:15px; }.main-nav { gap:23px; }.main-nav a { font-size:11px; }.header-whatsapp { padding:0 14px; font-size:8px; }.product-grid,.full-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:720px) { html { scroll-padding-top:90px; }.site-header { display:flex; min-height:88px; justify-content:space-between; gap:10px; padding:6px 16px; }.brand { gap:8px; }.brand-logo { width:72px; height:72px; }.brand-wordmark { font-size:14px; letter-spacing:.12em; }.brand-wordmark em { margin:3px 0 0 4px; font-size:12px; }.header-whatsapp { display:none; }.menu-toggle { display:flex; width:43px; height:43px; flex-direction:column; align-items:center; justify-content:center; gap:5px; }.menu-toggle i { display:block; width:23px; height:1px; background:var(--deep); }.main-nav { position:absolute; top:100%; right:0; left:0; display:none; flex-direction:column; gap:0; border-bottom:1px solid #bea47f; background:#ead7c5; padding:10px 20px 20px; }.main-nav.is-open { display:flex; }.main-nav a { width:100%; padding:14px 0; font-size:12px; text-align:center; }.hero,.hero-content { min-height:520px; }.hero-content { padding:50px 24px; }.hero h1 { font-size:clamp(45px,13vw,64px); }.hero-image { object-position:62% center; }.hero-note { right:18px; bottom:18px; font-size:15px; }.benefits { align-items:flex-start; flex-direction:column; gap:14px; padding:25px 24px; }.catalogue-section { margin-top:27px; padding:0 20px 65px; }.cosmetics-section { margin-top:0; padding-top:42px; }.section-heading,.contact-section,.footer-main { align-items:flex-start; flex-direction:column; }.section-heading { gap:18px; margin-bottom:26px; }.section-heading > p { margin:0; }.product-grid,.full-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }.product-info { padding:14px; }.product-info h3 { min-height:58px; font-size:18px; }.product-notes { min-height:54px; margin-bottom:14px; font-size:11px; }.about-section { grid-template-columns:1fr; }.about-image-wrap { min-height:330px; }.about-copy { padding:52px 26px; }.contact-section { gap:27px; margin:65px auto; padding:0 24px; }.contact-button { width:100%; }.footer-main { gap:24px; padding:35px 24px; }.footer-bottom { flex-wrap:wrap; padding:15px 24px; }.floating-whatsapp,.chat-assistant { bottom:16px; }.floating-whatsapp { right:16px; min-height:45px; padding:0 14px; }.chat-assistant { left:16px; }.chat-launcher { min-height:45px; padding:0 14px; font-size:9px; }.chat-panel { bottom:55px; }.catalogue-dialog { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); padding:24px 16px; }.dialog-copy { margin-bottom:22px; }.dialog-header h2 { font-size:32px; } }

/* Paleta Claudia Essenza: rosa suave, dourado luminoso e vinho para contraste. */
:root { --cream:#fff4f7; --paper:#fffafd; --nude:#f8dfe6; --gold:#c7942e; --gold-light:#f0d7a1; --brown:#713d54; --deep:#4b2335; --line:#eccbd6; --shadow:0 14px 36px rgba(93,38,62,.13); }
body { background:radial-gradient(circle at 12% 0%, #f7d6e1 0, transparent 25%), radial-gradient(circle at 90% 20%, #f4e3ba 0, transparent 23%), var(--cream); }
.site-header { border-bottom-color:#d5a33d; background:linear-gradient(100deg,rgba(249,220,230,.94),rgba(247,230,194,.88),rgba(249,220,230,.94)); box-shadow:0 4px 16px rgba(93,38,62,.14); }
.brand-wordmark em, .eyebrow, .product-brand, .product-size { color:#b27a18; }
.button, .chat-launcher, .floating-whatsapp { border-color:#d8ad59; background:linear-gradient(110deg,#fff7fa,#f4ccd9,#f6dda5,#fff7fa); color:var(--deep); box-shadow:0 7px 17px rgba(140,71,95,.16); }
.button.bright { border-color:#e7c77f; background:linear-gradient(110deg,#fffafa,#f9dce5,#f7e4b6); }
.button:hover, .button:focus-visible, .chat-launcher:hover, .floating-whatsapp:hover { box-shadow:0 11px 24px rgba(140,71,95,.25); }
.hero-overlay { background:linear-gradient(90deg,rgba(66,22,43,.83),rgba(125,48,79,.62) 54%,rgba(179,111,116,.38)); }
.hero .eyebrow.light { color:#ffe4b2; }.hero h1 { text-shadow:0 3px 20px rgba(75,23,49,.44); }.hero-note { color:#ffe7b8; text-shadow:0 1px 9px #4b2335; }
.benefits span, .about-points span::first-letter { color:#c7942e; }
.product-card { background:linear-gradient(160deg,#fffafd,#fff4f7); box-shadow:0 7px 18px rgba(93,38,62,.07); }.product-card:hover { border-color:#d7a23c; }
.product-visual { background:#fbedf1; }.product-visual > span { color:var(--deep); background:#fff9fb; }.cosmetic-visual { background-color:#f8dfe6; }
.product-cta:hover { color:#ae7418; }.cosmetics-section { border-top-color:#e7bdca; }
.about-section { background:linear-gradient(115deg,#fff8fb,#f9deea 52%,#f8e7bd); }.footer-main, footer, .chat-header { background:linear-gradient(105deg,#4b2335,#713d54); }.footer-brand .brand-wordmark em { color:#f3cf83; }
.chat-panel { border-color:#e5bdc9; box-shadow:0 20px 44px rgba(75,23,49,.24); }.chat-messages { background:#fff7fa; }.assistant-message { border-color:#eccbd6; }.user-message, .chat-form button { background:linear-gradient(135deg,#713d54,#4b2335); }.chat-suggestions button, .chat-form input { border-color:#e0afbd; background:#fff8fa; }.chat-form input:focus { border-color:#c7942e; box-shadow:0 0 0 3px #f7dce4; }
.catalogue-dialog { background:#fff4f7; color:var(--brown); }.catalogue-dialog::backdrop { background:rgba(75,23,49,.67); }
@media (max-width:720px) { .main-nav { border-bottom-color:#d5a33d; background:#f8dfe6; } }
@media (max-width:720px) { .product-dialog { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); }.product-dialog #product-detail { grid-template-columns:1fr; min-height:0; }.product-detail-visual,.product-detail-visual .cosmetic-visual { min-height:320px; }.product-detail-copy { padding:36px 25px; }.product-detail-copy h2 { font-size:38px; }.product-detail-facts div { grid-template-columns:1fr; gap:5px; }.detail-whatsapp { width:100%; }.product-dialog-close { top:12px; right:12px; } }

/* Direção visual: rosa predominante; dourado reservado aos controles de ação. */
:root { --cream:#fff0f6; --paper:#fff9fc; --nude:#f9dce8; --gold:#c8912d; --gold-light:#f6dea0; --brown:#74364f; --deep:#531f38; --line:#efc7d7; --shadow:0 15px 38px rgba(119,43,76,.14); }
body { background:radial-gradient(circle at 8% 0%,#f5bfd4 0,transparent 29%),radial-gradient(circle at 92% 25%,#f9d4e2 0,transparent 27%),#fff0f6; }
.site-header { border-bottom-color:#e3a8bd; background:linear-gradient(102deg,rgba(255,219,233,.96),rgba(248,203,221,.9),rgba(255,224,236,.96)); }
.brand-wordmark em,.eyebrow,.product-brand,.product-size,.product-price,.product-detail-size,.product-detail-price { color:#9d5070; }
.hero .eyebrow.light { color:#f7d3e2; }.benefits span,.about-points span::first-letter { color:#c55d88; }
.product-card { background:linear-gradient(155deg,#fffafd,#fcedf4); }.product-visual { background:#f9dce8; }.about-section { background:linear-gradient(115deg,#fff8fb,#f9dbe7 54%,#f4c9db); }
.button,.button.bright,.chat-launcher,.floating-whatsapp,.product-cta,.detail-whatsapp,.chat-form button { border:1px solid #c28a28; background:linear-gradient(112deg,#fff0bd,#dba73c 47%,#f7d781 100%); color:#4e2634; box-shadow:0 7px 17px rgba(148,96,23,.22); }
.button:hover,.button:focus-visible,.chat-launcher:hover,.floating-whatsapp:hover,.product-cta:hover,.detail-whatsapp:hover { background:linear-gradient(112deg,#f8df92,#c88d24 47%,#f0c760 100%); color:#4e2634; box-shadow:0 11px 24px rgba(148,96,23,.3); }
.product-cta,.detail-whatsapp { color:#4e2634; }.product-cta:hover,.detail-whatsapp:hover { color:#4e2634; }
.footer-main,footer,.chat-header { background:linear-gradient(105deg,#5a203d,#933f67); }.footer-social { border-color:#c28a28; background:linear-gradient(112deg,#fff0bd,#dba73c 47%,#f7d781); color:#4e2634; }.footer-social:not(.is-pending):hover { border-color:#a87316; background:linear-gradient(112deg,#f8df92,#c88d24 47%,#f0c760); color:#4e2634; }
.chat-suggestions button,.variant-option { border-color:#c28a28; background:linear-gradient(112deg,#fff4c8,#e4ba5b,#f7dda0); color:#4e2634; }.chat-suggestions button:hover,.variant-option:hover,.variant-option.is-selected { border-color:#a87316; background:linear-gradient(112deg,#f8df92,#c88d24,#f0c760); color:#4e2634; }
.catalogue-dialog { background:#fff3f8; }.product-dialog { background:#fff9fc; }.product-detail-visual { background:#fbe0ea; }
.product-detail-visual .cosmetic-visual.collection-photo { background-color:#fff; background-repeat:no-repeat; background-size:contain; }
