/* Direção visual World Layers: forma, contraste e espaço para as peças. */
:root{--navy:#010440;--ink:#171735;--purple:#5317a6;--purple-dark:#3d0c82;--muted:#62647b;--line:#e8e1f0;--lavender:#f2ecf8;--soft:#faf8fc;--radius:18px}
body{font-family:Manrope,'Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.65;background:var(--soft)}
h1,h2,h3,h4,.card-name,.category-caption strong{font-family:'Space Grotesk',Manrope,sans-serif;letter-spacing:-.035em}
h1,h2,h3,h4{font-weight:700;text-wrap:balance}p{text-wrap:pretty}
.wrap{width:100%;max-width:1408px;padding-inline:clamp(20px,4vw,56px)}
.section{padding-block:clamp(48px,6vw,88px)}
.eyebrow{font-weight:650;letter-spacing:.12em!important}.eyebrow.ink{color:var(--purple)!important}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7b4bbf;outline-offset:4px}
.topbar{letter-spacing:.025em;background:var(--navy)}
.header{border:0;background:#fff}.header .header-row{grid-template-columns:108px minmax(180px,530px) auto;gap:32px;padding-block:12px}
.mobile-menu-button{display:none}.featured-section{border:0}.featured-section .section-title{margin-top:0}
.header .brand-logo{width:80px;height:80px;filter:none}.header-actions a{min-height:44px}
.search{background:var(--soft);border:1px solid var(--line);border-radius:14px}.search input{min-height:48px}
.nav{gap:clamp(12px,2vw,28px);padding-bottom:16px;flex-wrap:wrap}.nav a{min-height:44px;display:flex;align-items:center;font-weight:550}
.nav .nav-holiday,.nav a.nav-holiday{color:var(--purple);text-shadow:none;font-weight:650}
.nav .nav-holiday:before,.nav a.nav-holiday:before{content:none}
.nav a[aria-current=page]{color:var(--purple);background:var(--lavender);border-radius:10px;padding-inline:12px}
.hero,.hero-inner{min-height:610px}.hero{background:var(--navy)}
.hero:after{background:linear-gradient(90deg,rgba(1,4,64,.85),rgba(1,4,64,.45) 43%,transparent 75%)}
.hero-copy{max-width:650px;padding-block:64px}.hero h1{font-size:clamp(3.3rem,5.5vw,5.3rem);line-height:1.04}
.hero h1 span{background:none;-webkit-text-fill-color:#c1a9d9;color:#c1a9d9}
.hero .hero-description{font-size:1.125rem;max-width:520px;font-weight:400;color:#eeeaf5}
.btn,.hero .btn{border-radius:12px;min-height:48px;padding:13px 22px;background:var(--purple);border-color:var(--purple);color:#fff;box-shadow:none;font-weight:650}
.btn:hover,.hero .btn:hover{background:var(--purple-dark);border-color:var(--purple-dark);box-shadow:none;transform:translateY(-2px)}
.btn-outline{background:transparent;color:var(--purple);border-color:#c1a9d9}.btn-outline:hover{background:var(--lavender);color:var(--purple-dark);border-color:var(--purple)}
.hero .btn-outline{background:transparent;border-color:#c1a9d9;color:#fff}.hero .btn-outline:hover{background:#ffffff15;border-color:#fff}
.hero-details{gap:14px 22px}.hero-details span{border:0;padding:0;white-space:normal}.hero-details svg{color:#c1a9d9}
.section-title{gap:24px;margin-bottom:32px}.section-title h2{font-size:clamp(2rem,3.4vw,3.1rem)}.section-aside{max-width:230px;line-height:1.6;color:var(--muted)}
.categories{gap:22px}.category-card .photo{border:0;box-shadow:none;border-radius:18px;background:#fff}
.category-caption{padding:16px 0 0}.category-caption strong{font-size:1rem;font-weight:650}.category-caption span{margin-top:5px}
.product-grid{gap:28px}.product-card{border:0;border-radius:18px;box-shadow:none;background:#fff;transition:transform .2s,box-shadow .2s}
.product-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px #0104400d}
.card-image,.card-image .photo-cutout,.card-image .photo-context{background:#fff}.gallery-main .photo-cutout{background:#f2ecf8}
.card-body{padding:20px}.card-category{letter-spacing:.04em;font-size:.75rem;color:var(--muted)}
.card-name{font-size:1rem;line-height:1.45;min-height:2.9em;letter-spacing:-.02em;font-weight:650}.card-price{font-size:1.25rem;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.card-actions{gap:10px;padding-top:18px}.card-actions button,.card-actions a{min-height:44px;font-size:.8125rem;border-radius:10px;line-height:1.4}
.card-add{border-color:#c1a9d9}.card-buy{background:var(--purple);border-color:var(--purple)}.card-buy:hover{background:var(--purple-dark);border-color:var(--purple-dark)}
.product-tag{background:#fff;color:var(--purple);box-shadow:none;border:0}
.holiday-strip{box-shadow:none;margin-bottom:0;border-radius:22px}.holiday-copy b{border:0}.holiday-copy .eyebrow{color:#eeeaf5!important}
.personal-banner .btn{border-radius:999px;font-weight:600}



.process-section:before,.process-section:after{content:none}

.creation-studio{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(32px,5vw,70px);margin-top:64px;padding:clamp(32px,5vw,70px);overflow:hidden;background:radial-gradient(circle at 88% 15%,#5031a3 0,#17115d 36%,#010440 75%);color:#fff;border-radius:28px}
.creation-intro{position:relative;z-index:1}.creation-studio .eyebrow{color:#cfc1f1!important}.creation-studio h2{font-size:clamp(2.8rem,4.6vw,4.6rem);line-height:1.03;letter-spacing:-.06em}.creation-studio h2 span{color:#d1b9fb}.creation-studio .creation-intro>p:not(.eyebrow){max-width:420px;margin:26px 0 28px;color:#e1dcf1;font-size:1rem}
.creation-studio .btn{display:inline-flex;align-items:center;gap:14px;background:#fff;color:var(--navy);border-color:#fff;font-weight:700}.creation-studio .btn svg{width:19px;height:19px}.creation-studio .btn:hover{background:#e6dcfb;border-color:#e6dcfb;color:var(--navy)}
.creation-steps{position:relative;z-index:1;list-style:none;display:grid;gap:12px;margin:0;padding:0;min-width:0}.creation-steps li{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:20px;min-height:112px;padding:20px 24px;background:#fff;color:var(--ink);border-radius:16px;box-shadow:0 12px 28px #01044020;transition:transform .25s ease,box-shadow .25s ease}.creation-steps li:hover{transform:translateY(-3px);box-shadow:0 18px 32px #01044030}
.creation-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:14px;background:#eee7fa;color:var(--purple)}.creation-icon svg{width:38px;height:38px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.creation-steps h3{font-size:1.15rem;line-height:1.25;letter-spacing:-.03em}.creation-steps p{color:#55516f;margin:7px 0 0;font-size:.875rem;line-height:1.45}
.about-faq{gap:64px}.faq summary{min-height:56px}.faq details{border:0;background:#fff;border-radius:14px;padding-inline:22px;margin-bottom:12px}.faq details p{color:var(--muted);padding-bottom:18px}
.footer{background:var(--navy);padding-block:64px 28px}.footer:before,.footer:after,.whatsapp-float:before{content:none}
.footer-grid{grid-template-columns:1fr .8fr .8fr 1.2fr;gap:32px}.footer-grid>*,.footer-social-card span{min-width:0}
.footer-brand-block .brand-logo{width:150px;height:150px;filter:none}.footer-brand-block .footer-tagline{background:none;color:#c1a9d9;-webkit-text-fill-color:currentColor;font-size:1rem;letter-spacing:.02em}
.footer-links{padding:0;border:0}.footer-links h4 svg{border:0;filter:none;color:#c1a9d9;padding:0;width:24px;height:24px}.footer-links a{padding:0;min-height:32px}
.footer-links a:after,.footer-mobile-links a:after{content:none}.footer-social-card{background:#f2ecf810;border:0;box-shadow:none;border-radius:18px;min-height:0;padding:28px;gap:16px}
.footer-social-card>svg{border:0;filter:none;padding:0;width:32px;height:32px;color:#c1a9d9}.footer-social-card b{border:0;padding-bottom:0;overflow-wrap:anywhere}.footer-social-card small{margin-top:16px}
.footer-bottom{border:0;margin-top:32px}.whatsapp-float,.whatsapp-personalize{background:var(--purple);border:0;box-shadow:0 8px 24px #01044020}.whatsapp-float:hover,.whatsapp-personalize:hover{background:var(--purple-dark);box-shadow:none}
.filters,.summary-box{border:0;border-radius:18px;background:var(--lavender)}.page-heading p,.product-info .description{max-width:65ch}.field input,.field select,.field textarea{border-radius:10px;min-height:48px}
.gallery-main .photo{border:0;border-radius:20px}.product-info h1{line-height:1.15}.product-accordions{gap:24px}
@media(max-width:1100px) and (min-width:761px){.header .header-row{grid-template-columns:88px minmax(180px,1fr) auto;gap:24px}.header-actions{gap:14px}.header-actions .action-label{display:none}.footer-grid{grid-template-columns:1fr 1fr}.catalog-layout{grid-template-columns:180px minmax(0,1fr)}.catalog-main .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .header .header-row{grid-template-columns:44px 1fr auto;gap:12px;padding-block:8px}.mobile-menu-button{display:grid;width:44px;height:44px}.header .brand-logo{width:64px;height:64px}.header .brand{justify-self:start}.header-actions a{min-width:44px;justify-content:center}.header-actions .account-link{display:flex}.header-actions .action-label{display:none}.header-row>.search{grid-column:1/-1;grid-row:2;margin:0 0 8px}.search input{font-size:16px}
 .nav{display:none;overflow:visible}.nav.open{display:grid;grid-template-columns:1fr 1fr;padding:8px 20px 20px;gap:4px;border:0}.nav a{padding:12px;font-size:.875rem;white-space:normal;min-height:48px;border-radius:10px}.nav .nav-custom{margin:0}
 .hero{min-height:0;display:flex;flex-direction:column}.hero:after{display:none}.hero-inner{min-height:0;order:0;padding:0 24px;position:relative;display:block}.hero-copy{padding:40px 0 32px;width:100%;max-width:none}.hero h1{font-size:clamp(2.6rem,10.7vw,4rem);line-height:1.06}.hero .hero-description{font-size:1rem;margin:22px 0 26px;max-width:420px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;max-width:none}.hero-actions .btn{flex:1 1 180px;font-size:.9375rem;min-height:50px;padding:13px 16px}.hero-details{gap:12px 20px;margin-top:24px}.hero-details span{font-size:.8125rem}
 .hero-backdrop{content:normal;position:relative;inset:auto;order:1;z-index:0;height:auto;aspect-ratio:1.65;width:100%;object-fit:cover;object-position:right center}.desktop-break{display:none}
 .section-title{align-items:flex-start;gap:16px}.section-title .btn{min-height:44px;font-size:.8125rem;max-width:140px;padding:10px 12px;flex-shrink:0}.section-title h2{font-size:2rem}.categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.categories .category-card:last-child{border:0;border-radius:16px;background:#fff}.category-caption strong{font-size:.9375rem;min-height:0}.category-caption span{font-size:.8125rem}.category-section{padding-bottom:48px}.featured-section{padding-top:48px;padding-bottom:48px}
 .product-grid,.catalog-main .product-grid{gap:24px 14px}.card-body{padding:14px 12px}.card-name{font-size:.9375rem;min-height:2.9em}.card-price{font-size:1.125rem}.card-actions{padding-top:14px}.card-actions button,.card-actions a{min-height:44px;font-size:.8125rem}.card-bottom{flex-wrap:wrap;align-items:flex-start}.card-note{font-size:.75rem}
 .holiday-strip{min-height:340px;margin:0;border-radius:18px}.holiday-copy{min-height:340px;padding:28px}.creation-studio{grid-template-columns:1fr;margin-top:48px;padding:32px 20px;border-radius:20px;gap:34px}.creation-studio h2{font-size:clamp(2.7rem,11vw,4rem)}.creation-studio .btn{width:100%;justify-content:center}.creation-steps{gap:10px}.creation-steps li{grid-template-columns:50px minmax(0,1fr);gap:13px;min-height:0;padding:16px;border-radius:15px}.creation-icon{width:50px;height:50px;border-radius:12px}.creation-icon svg{width:30px;height:30px}.creation-steps h3{font-size:1.05rem}.creation-steps p{font-size:.8125rem}.about-faq{gap:28px;padding-block:48px}
 .footer{padding-block:40px 24px}.footer-mobile-brand .brand-logo{filter:none}.footer-benefits,.footer-benefits span,.footer-mobile-links,.footer-mobile-bottom{border:0}.footer-mobile-links{gap:24px}.footer-mobile-links a{min-height:44px;display:flex;align-items:center;padding:0;font-size:.9375rem}.footer-mobile-social a{background:#ffffff0c;border:0;min-height:48px}.footer-benefits b{font-size:.75rem}.footer-mobile-brand h3 span{color:#c1a9d9}.footer-mobile-bottom{padding-bottom:48px}
 .field input,.field select,.field textarea,.sort{font-size:16px}.catalog-toolbar{flex-wrap:wrap}.sort{max-width:100%}.form-grid{grid-template-columns:1fr}.product-form-actions .btn{min-height:50px}.whatsapp-float{bottom:18px;right:16px}.toast{bottom:84px}.bottom-buy{padding-right:80px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.product-route .toast{bottom:150px}
}
@media(max-width:360px){.wrap{padding-inline:16px}.header .header-row{gap:8px}.header-actions{gap:0}.hero-inner{padding-inline:20px}.hero h1{font-size:2.6rem}.section-title{flex-wrap:wrap}.card-body{padding:12px 10px}.card-actions a,.card-actions button{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.topbar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 28px;padding:10px 20px;letter-spacing:0}
.topbar strong{font-size:.9375rem;font-weight:800}.topbar a{font-size:.8125rem;text-decoration:underline;text-underline-offset:3px;padding:4px 0}
.whatsapp-float svg{display:block;width:28px;height:28px;fill:currentColor;stroke:none;filter:none;flex:none}
@media(max-width:760px){.topbar{flex-direction:column;gap:0}.whatsapp-float{width:56px;height:56px;min-width:56px;min-height:56px;padding:0;box-shadow:none;filter:none;backdrop-filter:none;transform:none}.whatsapp-float:hover{transform:none;box-shadow:none}}
/* Textos alternativos por tela (ex.: banner "Seu nome"): o mobile segue o layout aprovado para celular. */
.only-mobile{display:none}
@media(max-width:760px){.only-desktop{display:none}.only-mobile{display:revert}}

/* Encomendas: conversa direta e etapas em uma lista leve. */
.creation-studio{background:#f1eaf8;color:var(--ink);border:1px solid #e3d7ef;border-radius:20px}
.creation-studio .eyebrow{color:var(--purple)!important;font-size:.75rem;letter-spacing:.1em!important}
.creation-studio h2{font-size:clamp(2.3rem,4.2vw,4rem);letter-spacing:-.045em;line-height:1.08}
.creation-studio h2 span{color:var(--purple)}
.creation-studio .creation-intro>p:not(.eyebrow){color:#55516f;line-height:1.65;margin:22px 0 26px}
.creation-studio .btn{background:var(--purple);color:#fff;border-color:var(--purple);font-size:.875rem}
.creation-studio .btn:hover{background:var(--purple-dark);color:#fff;border-color:var(--purple-dark)}
/* Etapas: cartões brancos com número em destaque e uma linha ligando um passo ao outro. */
.creation-steps{gap:12px}
.creation-steps li{position:relative;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:16px;min-height:0;padding:20px 22px;background:#fff;border:1px solid #e6dcf3;border-radius:16px;box-shadow:0 12px 26px -20px #3b1a7a66}
.creation-steps li:not(:last-child):after{content:'';position:absolute;left:43px;top:64px;bottom:-13px;width:2px;background:linear-gradient(#cdb9df,#cdb9df00)}
.creation-steps li:hover{transform:translateY(-2px);box-shadow:0 16px 30px -20px #3b1a7a88}
.creation-icon{width:44px;height:44px;border:0;border-radius:50%;background:linear-gradient(135deg,var(--purple),#8b5cf6);color:#fff;font-size:.875rem;font-weight:800;box-shadow:0 8px 16px -8px var(--purple)}
.creation-steps h3{margin-top:2px}
@media(max-width:760px){.creation-studio{padding:28px 18px;gap:22px;border-radius:18px}.creation-studio h2{font-size:clamp(2rem,8.5vw,2.8rem)}.creation-studio .creation-intro>p:not(.eyebrow){font-size:.9375rem}.creation-studio .btn{padding:13px 12px;gap:8px}.creation-steps li{padding:18px 16px;gap:14px}.creation-steps li:not(:last-child):after{left:37px;top:62px}.creation-steps h3{font-size:1rem}.creation-steps p{font-size:.875rem;line-height:1.55}}


.hero-mobile-exact{display:none}
@media(max-width:760px){
 .hero>.hero-backdrop,.hero>.hero-inner{display:none}
 .hero-mobile-exact{display:block;position:relative;width:100%}
 .hero-mobile-exact>img{display:block;width:100%;height:auto}
 .hero-mobile-exact .hero-mobile-accessible{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .hero-mobile-exact>a{position:absolute;left:23.8%;width:52.4%;height:5.3%;border-radius:999px;z-index:1}
 .hero-mobile-shop{top:29.6%}.hero-mobile-custom{top:35.8%}
 .hero-mobile-exact>a:focus-visible{outline:3px solid #fff;outline-offset:3px}
}


.holiday-picture{display:contents}
@media(max-width:760px){
 .holiday-strip{display:block;min-height:0;border-radius:0;background:transparent}
 .holiday-strip:after,.holiday-strip .holiday-copy{display:none}
 .holiday-strip .holiday-picture{display:block}
 .holiday-strip .holiday-picture img{display:block;position:static;width:100%;height:auto;aspect-ratio:971/1619;object-fit:contain;transform:none}
}


/* Animações de rolagem: entradas em cascata, variações laterais/zoom, barra de progresso e parallax leve. */
@media(prefers-reduced-motion:no-preference){
 .motion-ready .reveal{opacity:0;transform:translate3d(0,42px,0);filter:blur(6px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1),filter .8s ease;transition-delay:var(--reveal-delay,0s);will-change:opacity,transform}
 .motion-ready .reveal-left{transform:translate3d(-56px,0,0)}
 .motion-ready .reveal-right{transform:translate3d(56px,0,0)}
 .motion-ready .reveal-zoom{transform:scale(.92)}
 .motion-ready .reveal.visible{opacity:1;transform:none;filter:none}
 .motion-ready .product-card.reveal .card-image img,.motion-ready .category-card.reveal .photo img{transform:scale(1.12);transition:transform 1.2s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0s)}
 .motion-ready .product-card.reveal.visible .card-image img,.motion-ready .category-card.reveal.visible .photo img{transform:none}
 .motion-ready .section-title h2 span,.motion-ready .personal-copy h2 span,.motion-ready .creation-studio h2 span{background:linear-gradient(90deg,currentColor 50%,#d1b9fb 50%) 100% 0/200% 100% no-repeat;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;transition:background-position 1.1s cubic-bezier(.2,.7,.2,1) .25s}
 .motion-ready .visible h2 span,.motion-ready .visible.section-title h2 span{background-position:0 0}
 .creation-steps li .creation-icon{transition:transform .5s cubic-bezier(.3,1.6,.5,1) calc(var(--reveal-delay,0s) + .2s)}
 .motion-ready .creation-steps li.reveal:not(.visible) .creation-icon{transform:scale(0)}
 .scroll-progress{position:fixed;inset:0 0 auto;z-index:9999;height:3px;background:linear-gradient(90deg,#5b21b6,#a78bfa,#ec4899);transform-origin:0 50%;transform:scaleX(0);pointer-events:none}
 .parallax{will-change:transform}
}
