/* Coleção de Natal — estilos isolados do restante catálogo. */
.dm-natal{--nt-label:color-mix(in srgb,var(--cor-creme) 40%,var(--cor-branco));background:var(--cor-creme);color:var(--cor-castanho);overflow-x:clip}
.nt-width{width:min(1184px,calc(100% - 36px));margin-inline:auto}
.nt-trim{height:clamp(44px,14vw,60px);max-width:600px;margin-inline:auto;position:relative;overflow:hidden;pointer-events:none}
.nt-trim::before{content:"";position:absolute;top:clamp(-28px,-4.6vw,-14px);left:0;width:100%;aspect-ratio:2172/724;background:url('../images/natal/grinalda.webp') center top/100% auto no-repeat;opacity:.92}
.nt-trim i{position:absolute;left:var(--x);top:var(--drop);width:8px;height:10px;border-radius:50%;background:radial-gradient(circle at 30% 25%,var(--cor-creme),var(--cor-terracota-escuro) 65%);box-shadow:0 1px 2px rgba(122,90,79,.15)}
.nt-trim i::before{content:"";position:absolute;bottom:100%;left:3.5px;height:7px;width:1px;background:var(--cor-dourado)}
.nt-trim .nt-gold{background:radial-gradient(circle at 30% 25%,var(--cor-creme),var(--cor-dourado) 60%,var(--cor-dourado-texto))}
.nt-top{position:relative;padding-top:5px;isolation:isolate}
.nt-top::before{content:"";position:absolute;inset:0 -18px;z-index:-1;pointer-events:none;background:radial-gradient(circle at 18px 26px,var(--cor-branco) 0 1.7px,transparent 2.4px);background-size:137px 151px;mask-image:var(--nt-mask,none)}
.nt-banner-wrap{position:relative;margin-bottom:12px}
.nt-banner{display:flex;align-items:center;position:relative;isolation:isolate;overflow:hidden;border-radius:12px;height:108px;padding:26px 15px 0;box-shadow:0 4px 12px rgba(122,90,79,.13),0 0 14px rgba(220,178,120,.2);text-decoration:none!important}
.nt-banner::after{content:"";position:absolute;inset:0;z-index:3;border:3px solid var(--cor-dourado);border-radius:inherit;pointer-events:none}
.nt-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}
.nt-banner strong{font-size:16px;font-weight:600;color:var(--cor-cta-texto);width:53%;line-height:1.2;text-shadow:0 1px 2px rgba(255,255,255,.85)}
.nt-banner-wrap .dm-catalog-breadcrumbs,.nt-banner-wrap .breadcrumbs{position:absolute;left:16px;top:8px;z-index:4;margin:0;padding:0;font-size:11px;color:var(--cor-castanho);line-height:1.3}
.nt-banner-wrap .bc-sep{margin-inline:6px}
.nt-banner-wrap nav a{color:var(--cor-castanho);display:inline-flex;align-items:center;min-height:32px}
.nt-categories{position:relative;isolation:isolate;padding-bottom:10px}
.nt-categories::before{content:"";position:absolute;inset:0 -18px;z-index:-1;pointer-events:none;background:url('../images/natal/neve.svg') center/100% 100% no-repeat;mask-image:var(--nt-mask,none)}
.nt-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}
.nt-section-heading h2{font-size:18px;line-height:1.2;font-weight:600;margin:0}
.nt-arrows{display:flex;flex-shrink:0}
.nt-arrows button{width:44px;height:44px;position:relative;border:0;background:transparent;color:var(--cor-castanho);font-size:18px;cursor:pointer}
.nt-arrows button::before{content:"";position:absolute;inset:6px;border:1px solid var(--cor-dourado);border-radius:10px}
.nt-arrows button:disabled{opacity:.35;cursor:default}
.nt-track{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,auto);grid-auto-columns:clamp(96px,min(calc((100% - 24px)/2.35),calc((100svh - 412px)*.375)),146px);gap:8px 12px;overflow-x:auto;overscroll-behavior-x:contain;padding:4px 4px 8px;margin:-4px;scrollbar-width:none;scroll-behavior:smooth;min-width:0}
.nt-track::-webkit-scrollbar{display:none}
.nt-card{display:block;min-width:0;border:1px solid var(--cor-dourado);border-radius:12px;overflow:hidden;background:var(--nt-label);color:var(--cor-castanho);text-decoration:none!important;box-shadow:0 3px 7px rgba(122,90,79,.10);transition:box-shadow .3s ease}
.nt-card:hover{box-shadow:0 5px 12px rgba(122,90,79,.24)}
.nt-card[aria-current]{box-shadow:0 0 0 2px var(--cor-castanho)}
.nt-card-image{display:block;aspect-ratio:3/4;overflow:hidden}
.nt-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.nt-card:hover img{transform:scale(1.035)}
.nt-card-name{display:flex;align-items:center;justify-content:center;min-height:40px;padding:5px 4px;font-size:12px;line-height:1.2;text-align:center;font-weight:600}
.nt-products{background:var(--cor-branco);border-top:1px solid var(--cor-borda);padding:18px 0 24px;scroll-margin-top:15px}
.nt-results{display:flex;align-items:center;justify-content:space-between;gap:12px}
.nt-results h2{font-size:23px;line-height:1.2;font-weight:600;margin:0}.nt-results>span{font-size:12px;white-space:nowrap}
.nt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:4px;margin:10px 0 14px}
.nt-sort-group{display:flex;align-items:center;min-width:0}.nt-sort{display:flex;align-items:center;min-width:0;margin:0}
.nt-sort select{max-width:190px;min-width:0;min-height:44px;border:0;background:transparent;padding:6px 3px;font-family:inherit;font-size:12px;color:var(--cor-castanho)}
.nt-sort-submit{font-family:inherit;padding:6px;border:1px solid var(--cor-borda);background:var(--cor-creme);border-radius:8px}
.dm-natal.nt-enhanced .nt-sort-submit{display:none}
.nt-filter{position:relative}.nt-filter summary{display:grid;place-items:center;width:44px;height:44px;list-style:none;cursor:pointer}.nt-filter summary::-webkit-details-marker{display:none}
.nt-filter svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.5;fill:var(--cor-branco)}
.nt-filter-panel{position:absolute;top:46px;left:0;z-index:5;width:240px;max-width:calc(100vw - 48px);padding:12px;background:var(--cor-branco);border:1px solid var(--cor-borda);border-radius:12px;box-shadow:0 6px 22px rgba(122,90,79,.14)}
.nt-filter-panel a{display:flex;align-items:center;min-height:44px;padding:6px 10px;color:var(--cor-castanho)}.nt-filter-panel [aria-current]{background:var(--cor-creme);border-radius:8px}
.nt-grid-controls{display:flex;gap:2px;flex-shrink:0}.nt-grid-controls button{width:44px;height:44px;position:relative;isolation:isolate;display:grid;place-items:center;border:0;background:transparent;color:var(--cor-castanho);cursor:pointer}
.nt-grid-controls button::before{content:"";position:absolute;inset:4px;z-index:-1;border:1px solid var(--cor-borda);border-radius:10px;background:var(--cor-branco)}.nt-grid-controls [aria-pressed=true]::before{background:var(--cor-creme);border-color:var(--cor-castanho)}
.nt-grid-controls svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.3}
.nt-clear{display:flex;justify-content:flex-end;margin-bottom:12px;font-size:12px}.nt-clear a{padding:10px 0;color:var(--cor-castanho);text-decoration:underline}
.dm-natal .col-grid{padding:0;gap:24px 12px;grid-template-columns:repeat(2,minmax(0,1fr))}.dm-natal .col-grid[data-columns="1"]{grid-template-columns:minmax(0,1fr)}
.dm-natal .col-card__name{font-size:14px;line-height:1.35}.dm-natal .col-card__price{font-size:13px}.dm-natal .col-pagination{padding-inline:0}
.nt-editorial{padding-block:32px}.nt-editorial>h2{font-size:24px;margin-bottom:16px}.nt-editorial a{text-decoration:underline}.nt-editorial .dm-archive-editorial{padding-inline:0}
@media(max-height:620px) and (max-width:600px){.nt-banner{height:96px}.nt-banner strong{font-size:14px}.nt-section-heading h2{font-size:17px}}
@media(max-width:360px){.nt-sort select{max-width:145px;font-size:11px}}
@media(min-width:861px){.nt-width{width:min(1184px,calc(100% - 96px))}.nt-banner{height:165px}.nt-banner img{object-position:center 56%}.nt-banner strong{font-size:25px}.nt-track{grid-template-rows:auto;grid-auto-columns:calc((100% - 72px)/7);gap:16px 12px}.nt-card-name{font-size:14px;min-height:46px}.nt-section-heading h2{font-size:23px}.nt-banner-wrap{margin-bottom:24px}.dm-natal .col-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.nt-grid-controls{display:none}}
@media(prefers-reduced-motion:reduce){.nt-card,.nt-card img{transition:none}.nt-track{scroll-behavior:auto}}
