:root { --ink:#373879; --ink-soft:#5b5b95; --lavender:#b49af5; --sky:#8fa6f7; --mint:#7edbd4; --pink:#ffc1e3; --rose:#e49dda; --paper:#fff; --line:#e5ddfb; --muted:#72739d; --shadow:0 18px 50px rgba(82, 69, 141, .10); --radius:26px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-width:320px; overflow-x:hidden; color:var(--ink); font-family:Poppins, sans-serif; background:var(--paper); }
img { max-width:100%; display:block; }
a { color:inherit; text-decoration:none; }
button, input, select, textarea { font:inherit; }
button { cursor:pointer; }
.sr-only { position:absolute; width:1px; height:1px; margin:-1px; clip:rect(0,0,0,0); overflow:hidden; white-space:nowrap; }
.skip-link { position:absolute; left:14px; top:-60px; z-index:99; padding:10px 14px; border-radius:10px; color:#fff; background:var(--ink); transition:top .2s; }
.skip-link:focus { top:14px; }
.section-shell { width:min(1240px, calc(100% - 48px)); margin-inline:auto; }
.section { padding:120px 0; }
.site-header { position:sticky; top:16px; z-index:20; display:flex; align-items:center; justify-content:space-between; gap:32px; width:min(1360px, calc(100% - 48px)); min-height:88px; margin:16px auto 0; padding:12px 22px; border:1px solid rgba(180,154,245,.18); border-radius:28px; background:rgba(255,255,255,.90); box-shadow:0 10px 30px rgba(79,66,139,.08); backdrop-filter:blur(18px); }
.brand { display:block; flex:0 0 auto; }
.brand img { width:196px; height:58px; object-fit:contain; object-position:left center; }
.site-nav { display:flex; align-items:center; justify-content:flex-end; gap:28px; font-size:14px; font-weight:600; }
.site-nav > a:not(.button) { position:relative; }
.site-nav > a:not(.button)::after { content:""; position:absolute; right:0; bottom:-7px; left:0; height:2px; scale:0 1; background:var(--lavender); transition:scale .2s; transform-origin:right; }
.site-nav > a:not(.button):hover::after { scale:1; transform-origin:left; }
.nav-toggle { display:none; border:0; color:var(--ink); background:none; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:54px; padding:0 22px; border:1px solid transparent; border-radius:16px; color:#fff; background:#7652d8; box-shadow:0 10px 20px rgba(118,82,216,.22); font-size:15px; font-weight:700; transition:transform .2s, box-shadow .2s, background .2s; }
.button:hover { transform:translateY(-2px); background:#6944cd; box-shadow:0 14px 26px rgba(118,82,216,.28); }
.button svg { width:18px; }
.button-small { min-height:44px; padding:0 16px; border-radius:13px; }
.text-link { display:inline-flex; align-items:center; gap:8px; border:0; padding:0; color:#6750c9; background:transparent; font-size:14px; font-weight:700; text-decoration:underline; text-decoration-color:#c8bbf9; text-underline-offset:6px; }
.text-link svg { width:17px; transition:transform .2s; }
.text-link:hover svg { transform:translate(3px,-2px); }
.hero { display:grid; grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr); align-items:center; gap:28px; min-height:660px; padding:64px 0 34px; }
.hero-copy { position:relative; z-index:1; padding:30px 0 30px 18px; }
h1,h2,h3 { margin:0; font-family:Nunito, sans-serif; letter-spacing:-.035em; }
h1 { max-width:590px; font-size:clamp(3.15rem, 6vw, 5.65rem); line-height:.96; color:#6a51cf; }
.hero-copy p { max-width:520px; margin:28px 0; color:var(--ink); font-size:18px; line-height:1.62; }
.hero-copy p span { color:#43c9c1; font-weight:700; }.hero-copy p b { color:#e98dbf; }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; }
.hero-art { align-self:stretch; min-height:500px; display:flex; align-items:center; justify-content:center; }
.hero-art img { width:100%; max-height:560px; object-fit:contain; border-radius:10px; mix-blend-mode:multiply; }
.trust-strip { display:grid; grid-template-columns:repeat(3,1fr); margin-top:12px; padding:12px 20px; border:1px solid #eeeaf9; border-radius:var(--radius); box-shadow:var(--shadow); }
.trust-strip article { display:flex; align-items:center; gap:14px; min-height:88px; padding:8px 22px; }.trust-strip article+article { border-left:1px solid var(--line); }.trust-icon { display:grid; place-items:center; flex:none; width:48px; height:48px; border:1px solid; border-radius:16px; }.trust-icon svg { width:22px; }.lavender{color:#8a66e7;border-color:#d8cbfb;background:#faf8ff}.pink{color:#e78ab9;border-color:#ffd5e9;background:#fff9fc}.mint{color:#39b9b1;border-color:#c7f1ee;background:#f7fffe}.trust-strip strong { display:block; font-size:14px; }.trust-strip small { display:block; margin-top:2px; color:var(--muted); font-size:12px; }
.section-heading { max-width:630px; }.section-heading.centered { margin-inline:auto; text-align:center; }.section-heading h2 { font-size:clamp(2.25rem,4vw,3.65rem); line-height:1.04; }.section-heading p { margin:16px 0 0; color:var(--muted); font-size:16px; line-height:1.65; }
.intro-section { padding-bottom:95px; }.category-showcase { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:52px; }.category-item { position:relative; min-height:250px; padding:28px 24px; overflow:hidden; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:0 8px 30px rgba(92,77,151,.04); transition:transform .25s, box-shadow .25s; }.category-item:hover { transform:translateY(-7px); box-shadow:var(--shadow); }.category-item:nth-child(2){margin-top:35px}.category-item:nth-child(3){margin-top:12px}.category-item:nth-child(4){margin-top:47px}.category-index { display:block; color:var(--sky); font-family:Nunito, sans-serif; font-size:46px; font-weight:900; opacity:.55; }.category-item h3 { margin-top:32px; font-size:24px; line-height:1.1; }.category-item p { min-height:50px; margin:11px 0 16px; color:var(--muted); font-size:13px; line-height:1.55; }
.process-band { position:relative; overflow:hidden; padding:100px 0; color:var(--ink); background:linear-gradient(117deg,#e8ddff 0%,#e4f8f6 46%,#dce6ff 100%); }.process-band::before,.process-band::after{content:"✦";position:absolute;color:#fff;font-size:90px;opacity:.82}.process-band::before{top:45px;left:6%}.process-band::after{right:7%;bottom:45px}.process-list { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; max-width:1040px; margin:50px auto 28px; padding:0; list-style:none; counter-reset:steps; }.process-list li { position:relative; padding:0 16px; text-align:center; }.process-list li:not(:last-child)::after { content:""; position:absolute; top:42px; left:65%; width:68%; border-top:2px dashed rgba(96,83,184,.45); }.process-list span { position:absolute; top:-4px; left:calc(50% - 38px); display:grid; place-items:center; width:22px; height:22px; border-radius:50%; color:#fff; background:#8c6ee7; font-size:12px; font-weight:700; }.process-list i { display:grid; place-items:center; width:80px; height:80px; margin:0 auto 16px; border:1px solid rgba(255,255,255,.9); border-radius:28px; color:#805edb; background:rgba(255,255,255,.78); box-shadow:0 8px 22px rgba(73,63,142,.08); }.process-list h3 { font-size:20px; }.process-list p { margin:7px auto 0; max-width:175px; color:var(--ink-soft); font-size:13px; line-height:1.45; }.market-note { display:flex; justify-content:center; align-items:center; gap:9px; margin:34px 0 0; font-size:15px; }.market-note svg { width:19px; color:#33bdb4; }.market-note strong:first-of-type{color:#2ebdb5}.market-note strong:last-of-type{color:#e58cbc}
.catalog-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; }.filter-row { display:flex; flex-wrap:wrap; gap:9px; margin:36px 0 30px; }.filter-button { padding:10px 17px; border:1px solid #d9cef8; border-radius:999px; color:var(--ink); background:#fff; font-size:13px; font-weight:600; transition:.2s; }.filter-button:hover,.filter-button.is-active { border-color:#8764df; color:#fff; background:#8764df; box-shadow:0 7px 15px rgba(135,100,223,.18); }.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }.product-card { display:flex; flex-direction:column; min-width:0; padding-bottom:18px; }.product-image { aspect-ratio:1.1; overflow:hidden; border:1px solid var(--line); border-radius:22px; background:#f7f4fd; }.product-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }.product-card:hover .product-image img { transform:scale(1.055); }.product-card-meta { display:flex; justify-content:space-between; gap:8px; margin-top:14px; color:#7971a0; font-size:11px; text-transform:uppercase; letter-spacing:.09em; }.product-card h3 { margin:7px 0 6px; font-size:22px; }.product-price { margin-bottom:14px; color:#35bbb3; font-size:15px; }.product-card .text-link { margin-top:auto; align-self:flex-start; }
.custom-section { padding-top:35px; }.custom-form-wrap { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); overflow:hidden; border:1px solid #ded8f8; border-radius:32px; background:linear-gradient(137deg,#fdfcff 20%,#f7fbff 100%); box-shadow:var(--shadow); }.custom-copy { padding:58px; }.custom-copy h2 { font-size:clamp(2.35rem,4vw,3.7rem); line-height:1.02; }.custom-copy>p { margin:18px 0 30px; color:var(--muted); font-size:14px; line-height:1.65; }.custom-copy form { display:grid; grid-template-columns:1fr 1fr; gap:15px; }.field-group { min-width:0; }.field-group.full { grid-column:1 / -1; }.field-group label { display:block; margin-bottom:7px; font-size:12px; font-weight:700; }.field-group label span { color:var(--muted); font-weight:400; } input,select,textarea { width:100%; border:1px solid #ded8f8; border-radius:12px; padding:12px 13px; outline:0; color:var(--ink); background:#fff; font-size:13px; transition:border-color .2s, box-shadow .2s; } textarea { min-height:104px; resize:vertical; } input:focus,select:focus,textarea:focus { border-color:#9273e7; box-shadow:0 0 0 4px #f0ebff; }.custom-copy .button { grid-column:1 / -1; width:max-content; }.form-status { grid-column:1 / -1; min-height:20px; margin:0; color:#397a76; font-size:12px; line-height:1.4; }.idea-visual { display:flex; flex-direction:column; justify-content:center; min-height:100%; padding:34px; background:linear-gradient(145deg,#f5f1ff,#ebfbfa); }.idea-visual img { width:100%; border-radius:18px; }.visual-caption { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:7px 10px; margin-top:12px; color:var(--ink); font-size:12px; font-weight:600; }.visual-caption i { width:18px; color:#8466df; }.visual-caption span:not(:last-child) { margin-right:11px; }
.faq-section { padding:120px 0; }.faq-list { max-width:860px; margin:44px auto 0; }.faq-list details { border-bottom:1px solid var(--line); }.faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:23px 4px; cursor:pointer; font-family:Nunito,sans-serif; font-size:21px; font-weight:800; list-style:none; }.faq-list summary::-webkit-details-marker { display:none; }.faq-list summary svg { width:20px; color:#9174e5; transition:transform .2s; }.faq-list details[open] summary svg { transform:rotate(45deg); }.faq-list p { max-width:650px; margin:0 0 22px; color:var(--muted); font-size:14px; line-height:1.65; }.site-footer { border-top:1px solid var(--line); background:#fbfaff; }.footer-inner { display:flex; align-items:center; justify-content:space-between; gap:28px; min-height:130px; }.footer-inner .brand img { width:145px; height:55px; }.footer-inner p { color:var(--muted); font-size:13px; }.admin-link { color:#a391d6; font-size:11px; font-weight:600; }
.reveal { animation:rise .7s both; }.hero-art.reveal { animation-delay:.12s; } @keyframes rise { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
@media (max-width:980px){.site-header{width:min(100% - 28px,1360px);top:8px;margin-top:8px}.site-nav{gap:16px}.site-nav>a:not(.button){display:none}.hero{grid-template-columns:1fr;min-height:auto;padding-top:52px}.hero-copy{padding-left:0}.hero-art{min-height:300px;order:-1}.hero-art img{max-height:410px}.category-showcase{grid-template-columns:repeat(2,1fr)}.category-item:nth-child(n){margin-top:0}.process-list{gap:7px}.custom-copy{padding:38px}.custom-form-wrap{grid-template-columns:1fr}.idea-visual{min-height:360px}.product-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:660px){.section-shell{width:min(100% - 32px,1240px)}.site-header{min-height:70px;padding:7px 13px;border-radius:20px}.brand img{width:150px;height:49px}.nav-toggle{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#faf8ff}.site-nav{position:absolute;top:calc(100% + 8px);right:0;left:0;display:none;align-items:stretch;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.site-nav.is-open{display:flex;flex-direction:column}.site-nav>a:not(.button){display:block;padding:10px}.nav-cta{margin-top:5px}.hero{gap:6px;padding:25px 0 8px}.hero-copy{order:2;padding:15px 0 25px}h1{font-size:clamp(3rem,14vw,4.6rem)}.hero-copy p{margin:20px 0;font-size:16px}.hero-art{min-height:220px;order:1}.hero-art img{max-height:285px}.trust-strip{grid-template-columns:1fr;margin-top:18px;padding:4px 16px}.trust-strip article{min-height:70px;padding:8px}.trust-strip article+article{border-top:1px solid var(--line);border-left:0}.section{padding:84px 0}.section-heading h2{font-size:2.5rem}.category-showcase{grid-template-columns:1fr;gap:12px;margin-top:32px}.category-item{min-height:190px}.category-item h3{margin-top:18px}.process-band{padding:78px 0}.process-list{grid-template-columns:1fr 1fr;margin-top:38px}.process-list li{padding-bottom:18px}.process-list li:not(:last-child)::after{display:none}.catalog-heading{align-items:flex-start;flex-direction:column;gap:15px}.product-grid{grid-template-columns:1fr;gap:28px}.product-image{aspect-ratio:1.4}.custom-form-wrap{border-radius:24px}.custom-copy{padding:30px 20px}.custom-copy form{grid-template-columns:1fr}.field-group.full{grid-column:auto}.custom-copy .button{width:100%}.idea-visual{min-height:250px;padding:18px}.faq-section{padding:84px 0}.faq-list{margin-top:30px}.faq-list summary{font-size:18px}.footer-inner{align-items:flex-start;flex-direction:column;gap:7px;padding:24px 0}.footer-inner .brand img{width:135px}.footer-inner p{margin:0}.admin-link{margin-top:5px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none}.button,.text-link svg,.product-image img{transition:none}}

/* Compact brand lockup for navigation; the official square mark stays intact beside it. */
.brand-header { display:flex; align-items:center; gap:8px; min-width:195px; }
.brand-header img { width:55px; height:55px; }
.brand-word { display:grid; gap:1px; line-height:1; white-space:nowrap; }
.brand-word strong { color:#6e55d3; font-family:Nunito,sans-serif; font-size:19px; font-weight:900; letter-spacing:-.06em; }
.brand-word em { color:#e891bd; font-size:8px; font-style:normal; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.footer-inner .brand-header img { width:46px; height:46px; }
@media (max-width:660px) { .brand-header{min-width:0}.brand-header img{width:42px;height:42px}.brand-word strong{font-size:16px}.footer-inner .brand-header img{width:42px;height:42px} }

.reference-upload { position:relative; }.file-input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }.reference-upload-label { display:flex!important; align-items:center; gap:13px; min-height:78px; margin:0!important; padding:13px 15px; border:1px dashed #b8a8ea; border-radius:14px; color:var(--ink); background:#fbfaff; cursor:pointer; transition:border-color .2s,background .2s,transform .2s; }.reference-upload-label:hover,.file-input:focus-visible+.reference-upload-label { border-color:#8160dc; background:#f4efff; }.upload-icon { display:grid; place-items:center; flex:0 0 auto; width:38px; height:38px; border-radius:12px; color:#7858d4; background:#ede7ff; }.upload-icon svg,.upload-arrow { width:18px; }.reference-upload-label strong,.reference-upload-label small { display:block; }.reference-upload-label strong { font-size:13px; }.reference-upload-label small { margin-top:3px; color:var(--muted); font-size:11px; font-weight:400; }.upload-arrow { margin-left:auto; color:#9075df; }.reference-preview { display:flex; align-items:center; gap:11px; min-height:78px; padding:9px 11px; border:1px solid #c5eee9; border-radius:14px; background:#f7fffc; }.reference-preview img { width:58px; height:58px; border-radius:10px; object-fit:cover; }.reference-preview strong,.reference-preview small { display:block; max-width:290px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.reference-preview strong { font-size:12px; }.reference-preview small { margin-top:3px; color:#4f837d; font-size:10px; }.reference-preview button { display:grid; place-items:center; width:34px; height:34px; margin-left:auto; border:0; border-radius:10px; color:#7768a0; background:#f1edfb; }.reference-preview button:hover { color:#a75c80; background:#ffeef6; }.send-options { grid-column:1/-1; padding:16px; border:1px solid #d8cef6; border-radius:15px; background:#fbfaff; }.send-options p { margin:0 0 12px; color:var(--muted); font-size:12px; line-height:1.5; }.send-options-actions { display:flex; flex-wrap:wrap; gap:9px; }.send-options .button { width:auto; }.send-options .button.email-action { border-color:#d9cef8; color:#654cc4; background:#fff; box-shadow:none; }.send-options .button.email-action:hover { background:#f2edff; }.send-options .button.whatsapp-action { border-color:#bdeadc; color:#217b62; background:#f6fffb; box-shadow:none; }.send-options .button.whatsapp-action:hover { background:#eafff6; }.send-options-note { display:flex; align-items:flex-start; gap:7px; margin-top:10px!important; color:#68728d!important; font-size:10px!important; }.send-options-note svg { flex:0 0 auto; width:14px; color:#8668dc; }
@media (max-width:660px){.send-options-actions{display:grid;grid-template-columns:1fr}.send-options .button{width:100%}.reference-preview strong,.reference-preview small{max-width:185px}}

.footer-contact{display:grid;gap:7px}.footer-contact>strong{font-family:Nunito,sans-serif;font-size:13px}.contact-links{display:flex;flex-wrap:wrap;gap:9px}.contact-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid #e2dcf5;border-radius:11px;color:#65548f;background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s}.contact-icon:hover{transform:translateY(-2px);border-color:#9e8ae5;box-shadow:0 7px 14px rgba(86,66,154,.12)}.contact-icon svg{width:18px;height:18px}.contact-icon.whatsapp{color:#259e72;border-color:#bdeada;background:#f7fffc}.contact-icon.email{color:#7156ca;border-color:#ddd3fa;background:#fbfaff}.contact-icon.instagram{color:#ce4e88;border-color:#f5c6dc;background:#fff8fc}.contact-icon.facebook{color:#4267b2;border-color:#cfdaff;background:#f8faff}.contact-icon.tiktok{color:#252535;border-color:#dfdff0;background:#fcfcff}.contact-icon.tiktok svg{filter:drop-shadow(-1px 0 #50e6e0)}.contact-icon.is-not-linked{opacity:.78;cursor:default}.footer-inner{padding:24px 0}@media(max-width:980px){.footer-inner{align-items:flex-start;flex-wrap:wrap}.footer-contact{order:4;width:100%}}@media(max-width:660px){.footer-contact{width:100%}.contact-links{gap:7px}.contact-icon{width:33px;height:33px}}
