/* ============================================================
   LOJA COLABORATIVA — CASA JANELA
   CSS fiel ao design original (Bricolage Grotesque + Space Grotesk)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,600;12..96,700;12..96,800&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root{
  --lime:#cdec00;
  --lime-deep:#b4d000;
  --ink:#14172a;
  --navy:#2d4285;
  --navy-deep:#24346a;
  --indigo:#2d4285;
  --paper:#f3efe2;
  --paper-2:#ece6d4;
  --pop:#ff4d2e;
  --white:#ffffff;
  --r-arch:240px;
  --maxw:1320px;
  --f-display:'Bricolage Grotesque',sans-serif;
  --f-body:'Space Grotesk',sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--f-body);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
::selection{background:var(--lime);color:var(--ink)}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
img{display:block;max-width:100%}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}

.mono-label{font-family:var(--f-body);font-weight:600;text-transform:uppercase;letter-spacing:.18em;font-size:12px;}

/* =========================================================
   NAV
   ========================================================= */
.nav{position:sticky;top:0;z-index:50;background:var(--navy);border-bottom:3px solid var(--ink);}
.nav__inner{display:flex;align-items:center;justify-content:space-between;height:74px;width:100%;}
/* Logo e actions com flex:1 garantem que os links fiquem exatamente no centro */
.nav__logo{display:flex;align-items:center;gap:15px;flex:1 1 0%;min-width:0;}
.nav__logo img{height:50px;width:auto;max-width:180px;flex-shrink:0;}
.nav__logo .lockup{display:flex;flex-direction:column;line-height:1}
.nav__logo .lockup b{font-family:var(--f-display);font-weight:800;color:var(--lime);font-size:15px;letter-spacing:-.01em;white-space:nowrap}
.nav__logo .lockup span{color:#fff;opacity:.7;font-size:10px;letter-spacing:.22em;text-transform:uppercase;margin-top:3px}
.nav__links{display:flex;align-items:center;gap:30px;flex:0 0 auto;}
.nav__links a{color:#fff;font-weight:500;font-size:15px;position:relative;padding:4px 0}
.nav__links a::after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--lime);transition:right .25s ease;}
.nav__links a:hover::after,.nav__links a.is-active::after{right:0}
.nav__links a.is-active{color:var(--lime)}
.nav__actions{display:flex;align-items:center;gap:14px;flex:1 1 0%;justify-content:flex-end;}
.cart-btn{display:flex;align-items:center;gap:9px;background:var(--lime);color:var(--ink);font-weight:700;font-size:14px;padding:11px 18px;border-radius:100px;transition:transform .15s ease,background .15s ease;}
.cart-btn:hover{transform:translateY(-2px);background:#fff}
.cart-btn .count{background:var(--ink);color:var(--lime);min-width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;}
.nav__burger{display:none;color:#fff}
@media(max-width:840px){
  .nav__links{display:none}
  .nav__burger{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.1)}
  .nav__logo .lockup{display:none}
}

/* =========================================================
   TICKER
   ========================================================= */
.ticker{background:var(--lime);color:var(--ink);border-bottom:3px solid var(--ink);overflow:hidden;white-space:nowrap;padding:10px 0;}
.ticker__track{display:inline-flex;gap:0;animation:slide 28s linear infinite}
.ticker:hover .ticker__track{animation-play-state:paused}
.ticker span{font-family:var(--f-display);font-weight:700;font-size:17px;text-transform:uppercase;letter-spacing:.02em;padding:0 22px;display:inline-flex;align-items:center;gap:22px;}
.ticker span::after{content:"✦";color:var(--ink);font-size:13px}
@keyframes slide{to{transform:translateX(-50%)}}

/* =========================================================
   HERO
   ========================================================= */
.hero{position:relative;background:var(--navy);color:var(--white);overflow:hidden;padding-bottom:0}
.hero__arcade{display:flex;width:100%;height:18px}
.hero__arcade i{flex:1;background:var(--lime);border-radius:0 0 999px 999px;margin:0 3px}
.hero__inner{padding-top:60px;position:relative;z-index:2}
.hero__col{max-width:620px}
@media(max-width:1024px){.hero__col{max-width:100%}}
.hero__kicker{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;border:2px solid var(--lime);color:var(--lime);font-size:11px;border-radius:100px;padding:8px 16px;margin-bottom:28px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;}
.hero__title{font-family:var(--f-display);font-weight:800;font-size:clamp(46px,8.4vw,124px);line-height:.86;letter-spacing:-.03em;text-transform:uppercase;}
.hero__title .out{-webkit-text-stroke:2px var(--lime);color:transparent;}
.hero__title .lime{color:var(--lime)}
.hero__sub{max-width:560px;margin-top:30px;font-size:clamp(16px,1.5vw,20px);line-height:1.5;color:#cfd2e6;}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px;padding-bottom:54px}
.hero__windows{position:absolute;right:-2%;top:130px;bottom:0;width:38%;display:flex;gap:14px;align-items:flex-end;z-index:1;pointer-events:none;}
.hero__windows .w{flex:1;border-radius:var(--r-arch) var(--r-arch) 0 0;border:3px solid var(--lime);position:relative;}
.hero__windows .w::before{content:"";position:absolute;inset:14px;border-radius:inherit;border:2px solid rgba(205,236,0,.25);}
.hero__windows .w:nth-child(1){height:62%}
.hero__windows .w:nth-child(2){height:88%;background:linear-gradient(180deg,var(--lime),transparent 70%);opacity:.12}
.hero__windows .w:nth-child(3){height:74%}
@media(max-width:1024px){.hero__windows{display:none}}

/* =========================================================
   BUTTONS
   ========================================================= */
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15px;padding:15px 26px;border-radius:100px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,color .15s ease;}
.btn--lime{background:var(--lime);color:var(--ink)}
.btn--lime:hover{transform:translateY(-2px);box-shadow:0 10px 0 -2px var(--lime-deep)}
.btn--ghost{border:2px solid #4a4f70;color:#fff}
.btn--ghost:hover{border-color:var(--lime);color:var(--lime)}

/* =========================================================
   FILTRO POR ARTISTA
   ========================================================= */
.filterbar{background:var(--paper);border-bottom:2px solid var(--ink);padding:22px 0}
.filterbar__inner{display:flex;align-items:center;gap:14px}
@media(max-width:680px){.filterbar__inner{flex-wrap:wrap}}
.filterbar .lbl{font-family:var(--f-display);font-weight:800;font-size:18px;text-transform:uppercase;margin-right:6px;white-space:nowrap;flex-shrink:0}
.chip{border:2px solid var(--ink);background:transparent;color:var(--ink);border-radius:100px;padding:9px 18px;font-weight:600;font-size:14px;white-space:nowrap;transition:all .15s ease;display:inline-flex;align-items:center;gap:8px;flex-shrink:0;}
.chip:hover{background:var(--ink);color:var(--white)}
.chip.active,.chip--on{background:var(--lime);border-color:var(--ink);color:var(--ink)}
.chip.active:hover,.chip--on:hover{background:var(--lime);color:var(--ink)}
.chip .dot{width:9px;height:9px;border-radius:50%}
.chipscroll{position:relative;flex:1;min-width:0;display:flex;align-items:center}
.chiprow{display:flex;gap:10px;overflow-x:auto;flex:1;min-width:0;padding:4px 2px;-ms-overflow-style:none;scrollbar-width:none;}
.chiprow::-webkit-scrollbar{display:none}
.chipscroll__arr{flex-shrink:0;width:38px;height:38px;border-radius:50%;border:2px solid var(--ink);background:var(--paper);color:var(--ink);font-size:20px;font-weight:700;display:grid;place-items:center;transition:all .15s ease;cursor:pointer;}
.chipscroll__arr:hover{background:var(--ink);color:var(--lime)}
.chipscroll__arr--l{margin-right:8px}
.chipscroll__arr--r{margin-left:8px}
@media(max-width:680px){.chipscroll__arr{display:none}}

/* =========================================================
   SECTION HEADERS
   ========================================================= */
.section{padding:78px 0}
.section--ink{background:var(--navy);color:#fff}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:42px}
.sec-head h2{font-family:var(--f-display);font-weight:800;font-size:clamp(34px,5vw,64px);line-height:.9;letter-spacing:-.02em;text-transform:uppercase;}
.sec-head .tag{font-family:var(--f-body);font-weight:600;color:var(--indigo);text-transform:uppercase;letter-spacing:.16em;font-size:13px;margin-bottom:10px;display:block}
.section--ink .sec-head .tag{color:var(--lime)}
.sec-head p{max-width:380px;color:inherit;opacity:.7;font-size:15px;line-height:1.5}

/* =========================================================
   GRID DE PRODUTOS
   ========================================================= */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
@media(max-width:1100px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.grid{grid-template-columns:repeat(2,1fr)}}

.card{background:var(--white);border:2.5px solid var(--ink);border-radius:var(--r-arch) var(--r-arch) 18px 18px;overflow:hidden;display:flex;flex-direction:column;position:relative;transition:transform .18s ease,box-shadow .18s ease;}
.card:hover{transform:translateY(-6px);box-shadow:10px 12px 0 0 var(--ink)}
.card__media{display:block;position:relative;aspect-ratio:3/3.4;border-radius:calc(var(--r-arch) - 3px) calc(var(--r-arch) - 3px) 0 0;overflow:hidden;}
.card__stretch{position:absolute;inset:0;z-index:1}
.card__media .pane{position:absolute;inset:0}
.card__media .pane::before,.card__media .pane::after{content:"";position:absolute;background:rgba(20,23,42,.16)}
.card__media .pane::before{left:50%;top:0;bottom:0;width:2px;transform:translateX(-50%)}
.card__media .pane::after{top:46%;left:0;right:0;height:2px}
.card__ph-label{position:absolute;left:12px;bottom:12px;z-index:2;background:rgba(255,255,255,.92);border:1.5px solid var(--ink);border-radius:100px;padding:5px 11px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;}
.card__fav{position:absolute;right:12px;bottom:12px;z-index:3;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);border:1.5px solid var(--ink);display:grid;place-items:center;font-size:15px;transition:all .15s ease;}
.card__fav:hover,.card__fav.on{background:var(--pop);color:#fff;border-color:var(--pop)}
.card__body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:10px;flex:1}
.card__artist{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--indigo)}
.card__artist:hover{text-decoration:underline}
.card__artist .dot{width:9px;height:9px;border-radius:50%}
.card__name{display:block;font-family:var(--f-display);font-weight:700;font-size:18px;line-height:1.05;letter-spacing:-.01em}
.card__name:hover{color:var(--indigo)}
.card__foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:6px}
.card__price{font-family:var(--f-display);font-weight:800;font-size:20px}
.card__price small{font-weight:500;font-size:12px;opacity:.55;display:block;font-family:var(--f-body)}
.card__add{background:var(--ink);color:var(--lime);font-weight:700;font-size:13px;border-radius:100px;padding:10px 16px;transition:all .15s ease;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;}
.card__add:hover{background:var(--lime);color:var(--ink)}

/* imagem real do produto */
.card__media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}

/* placeholder art por cor do artista (usado quando sem imagem) */
.card__art{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.card__art-cat{position:absolute;left:12px;bottom:12px;z-index:2;background:rgba(255,255,255,.92);border:1.5px solid var(--ink);border-radius:100px;padding:5px 11px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}

/* =========================================================
   ARTISTAS (grid de cards)
   ========================================================= */
.artists-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:900px){.artists-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.artists-grid{grid-template-columns:1fr}}

.artist-card{border:2.5px solid rgba(255,255,255,.18);border-radius:var(--r-arch) var(--r-arch) 18px 18px;overflow:hidden;background:var(--navy-deep);transition:transform .18s ease,border-color .18s ease;}
.artist-card:hover{transform:translateY(-6px);border-color:var(--lime)}
.artist-card__top{height:118px;border-radius:calc(var(--r-arch)) calc(var(--r-arch)) 0 0;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:14px;text-decoration:none;}
.artist-card__avatar{width:64px;height:64px;border-radius:50%;border:3px solid var(--ink);display:grid;place-items:center;font-family:var(--f-display);font-weight:800;font-size:26px;color:var(--ink);background:var(--lime);position:relative;z-index:2;}
.artist-card__avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.artist-card__body{padding:18px 18px 20px;color:#fff}
.artist-card__name{font-family:var(--f-display);font-weight:800;font-size:22px;letter-spacing:-.01em;color:#fff;display:block}
.artist-card__handle{color:var(--lime);font-size:13px;font-weight:600;margin-top:2px}
.artist-card__desc{color:#bfc3da;font-size:14px;line-height:1.5;margin-top:12px}
.artist-card__tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.artist-card__tags span{border:1.5px solid rgba(255,255,255,.22);border-radius:100px;padding:5px 11px;font-size:11px;font-weight:600;color:#dfe2f2}
.artist-card__link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:var(--lime);font-weight:700;font-size:14px}
.artist-card__link:hover{gap:12px}

/* =========================================================
   COMUNIDADE / NEWSLETTER
   ========================================================= */
.comm{background:var(--lime);color:var(--ink);position:relative;overflow:hidden}
.comm__inner{padding-top:80px;padding-bottom:80px;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
@media(max-width:860px){.comm__inner{grid-template-columns:1fr;gap:34px}}
.comm h2{font-family:var(--f-display);font-weight:800;font-size:clamp(36px,6vw,80px);line-height:.86;letter-spacing:-.02em;text-transform:uppercase}
.comm p{font-size:17px;line-height:1.5;margin-top:18px;max-width:440px}
.comm__form{display:flex;gap:10px;margin-top:28px;flex-wrap:wrap}
.comm__form input{flex:1;min-width:200px;border:2.5px solid var(--ink);background:#fff;border-radius:100px;padding:15px 22px;font-family:var(--f-body);font-size:15px;font-weight:500;}
.comm__form input:focus{outline:none;box-shadow:4px 4px 0 0 var(--ink)}
.comm__btn{background:var(--ink);color:var(--lime);font-weight:700;font-size:15px;border-radius:100px;padding:15px 28px;transition:transform .15s ease;cursor:pointer;}
.comm__btn:hover{transform:translateY(-2px)}
.comm__social{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}
.comm__social a{display:inline-flex;align-items:center;gap:9px;border:2.5px solid var(--ink);border-radius:100px;padding:11px 18px;font-weight:700;font-size:14px;background:#fff;transition:all .15s ease}
.comm__social a:hover{background:var(--ink);color:var(--lime)}
.comm__panel{background:var(--navy);border-radius:26px;padding:34px;color:#fff;position:relative;overflow:hidden;}
.comm__panel::before{content:"";position:absolute;left:0;right:0;top:0;height:8px;background:repeating-linear-gradient(90deg,var(--lime) 0 16px,transparent 16px 22px)}
.comm__panel h3{font-family:var(--f-display);font-weight:800;font-size:24px;color:var(--lime);text-transform:uppercase;margin-bottom:16px}
.comm__hours{display:flex;flex-direction:column;gap:0}
.comm__hours .row{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:14px}
.comm__hours .row b{color:#fff;font-weight:600;white-space:nowrap}
.comm__hours .row span{color:#bfc3da;text-align:right}
.comm__hours .row--note{justify-content:flex-start}
.comm__hours .row--note span{color:var(--lime);text-align:left;font-weight:600;font-size:13px}

/* =========================================================
   FOOTER
   ========================================================= */
.foot{background:var(--navy);color:#fff;padding-top:0}
.foot__fence{display:flex;width:100%;height:26px}
.foot__fence i{flex:1;background:var(--lime);border-radius:999px 999px 0 0;margin:0 2px}
.foot__inner{padding-top:64px;padding-bottom:30px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
@media(max-width:760px){.foot__inner{grid-template-columns:1fr;gap:30px}}
.foot__brand img{height:54px;margin-bottom:18px}
.foot__brand p{color:#bfc3da;font-size:14px;line-height:1.6;max-width:320px}
.foot__col h4{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:15px;letter-spacing:.04em;margin-bottom:16px;color:var(--lime)}
.foot__col a{display:block;color:#cfd2e6;font-size:14px;padding:6px 0;transition:color .15s ease}
.foot__col a:hover{color:var(--lime)}
.foot__bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:22px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#8d92b0;font-size:13px}

/* =========================================================
   PÁGINA DO ARTISTA
   ========================================================= */
.artisthero{color:#fff;position:relative;overflow:hidden;border-bottom:3px solid var(--ink)}
.artisthero__inner{padding:60px 0;display:flex;gap:32px;align-items:center}
@media(max-width:760px){.artisthero__inner{flex-direction:column;align-items:flex-start;gap:22px;padding:40px 0}}
.artisthero__av{width:128px;height:128px;border-radius:50%;border:4px solid var(--ink);background:var(--lime);display:grid;place-items:center;font-family:var(--f-display);font-weight:800;font-size:56px;color:var(--ink);flex-shrink:0;overflow:hidden;}
.artisthero__av img{width:100%;height:100%;object-fit:cover}
.artisthero__txt h1{font-family:var(--f-display);font-weight:800;font-size:clamp(40px,6vw,76px);line-height:.92;letter-spacing:-.02em;text-transform:uppercase}
.artisthero__handle{display:inline-block;margin-top:10px;background:rgba(0,0,0,.25);border:1.5px solid rgba(255,255,255,.4);border-radius:100px;padding:6px 14px;font-weight:600;font-size:14px}
.artisthero__bio{margin-top:18px;max-width:60ch;font-size:16px;line-height:1.6;color:rgba(255,255,255,.92)}
.artisthero__tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.artisthero__tags span{border:1.5px solid rgba(255,255,255,.45);border-radius:100px;padding:6px 13px;font-size:12px;font-weight:600}

/* =========================================================
   WOOCOMMERCE — checkout, conta, sacola
   ========================================================= */
.woocommerce-page .wrap,
.woocommerce .wrap{padding-top:40px;padding-bottom:80px}

/* esconde o estilo padrão do WC */
.woocommerce-notices-wrapper{}

.woocommerce form .form-row label{font-size:13px;font-weight:600;color:var(--indigo);display:block;margin-bottom:7px}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea{border:2px solid var(--ink);border-radius:12px;padding:13px 15px;font-family:var(--f-body);font-size:15px;font-weight:500;background:var(--paper);width:100%;}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row select:focus{outline:none;box-shadow:3px 3px 0 0 var(--ink);background:#fff}

.woocommerce #place_order,
.woocommerce button.button.alt,
.woocommerce a.button.alt{background:var(--lime)!important;color:var(--ink)!important;font-family:var(--f-display)!important;font-weight:800!important;font-size:17px!important;text-transform:uppercase!important;letter-spacing:.02em!important;border-radius:100px!important;border:none!important;padding:16px 30px!important;width:100%!important;transition:transform .15s ease!important;}
.woocommerce #place_order:hover,.woocommerce button.button.alt:hover{transform:translateY(-2px)!important}
.woocommerce button.button{background:var(--ink)!important;color:var(--lime)!important;border-radius:100px!important;font-weight:700!important;}

.woocommerce table.shop_table{width:100%;border-collapse:collapse;font-size:15px}
.woocommerce table.shop_table th{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.08em;padding:12px;border-bottom:2px solid var(--ink);color:var(--indigo)}
.woocommerce table.shop_table td{padding:14px 12px;border-bottom:1px solid rgba(20,23,42,.1)}
.woocommerce .cart-subtotal td,.woocommerce .order-total td{font-family:var(--f-display);font-weight:800;font-size:20px}
.woocommerce .order-total td{color:var(--lime);background:var(--navy);padding:14px 12px;border-radius:12px}

.woocommerce .woocommerce-message{background:var(--lime)!important;border-top-color:var(--ink)!important;border-radius:12px!important;color:var(--ink)!important;font-weight:600!important;}
.woocommerce .woocommerce-error{border-top-color:var(--pop)!important;border-radius:12px!important;}

.woocommerce span.onsale{background:var(--pop)!important;color:#fff!important;border-radius:100px!important;font-family:var(--f-body)!important;font-size:11px!important;font-weight:700!important;}


/* breadcrumbs */
.woocommerce .woocommerce-breadcrumb{font-size:13px;font-weight:600;color:var(--indigo);padding:22px 0}

/* =========================================================
   PÁGINA GENÉRICA (políticas)
   ========================================================= */
.page-content{padding:4rem 0;max-width:760px}
.page-content h1{font-family:var(--f-display);font-weight:800;font-size:clamp(34px,5vw,56px);line-height:.92;letter-spacing:-.02em;text-transform:uppercase;margin-bottom:2rem}
.page-content h2{font-family:var(--f-display);font-weight:700;margin:2rem 0 1rem;font-size:1.4rem}
.page-content p{margin-bottom:1rem;color:#3a3d52;line-height:1.8}

/* =========================================================
   TOAST
   ========================================================= */
.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(120%);background:var(--ink);color:var(--lime);border:2px solid var(--lime);padding:14px 22px;border-radius:100px;font-weight:700;font-size:14px;z-index:90;transition:transform .3s cubic-bezier(.2,.9,.3,1.2);box-shadow:0 12px 30px rgba(0,0,0,.3);}
.toast.show{transform:translateX(-50%) translateY(0)}

/* =========================================================
   UTILITÁRIOS
   ========================================================= */
@media(max-width:767px){.hide-mobile{display:none!important}}
@media(min-width:768px){.hide-desktop{display:none!important}}

/* =========================================================
   PDP — PÁGINA DE PRODUTO
   ========================================================= */
.pdp{padding:40px 0 80px}
.pdp__crumb{font-size:13px;color:#8d92b0;margin-bottom:32px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pdp__crumb a{color:#8d92b0;transition:color .15s}
.pdp__crumb a:hover{color:var(--ink)}

.pdp__grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;margin-bottom:64px}
@media(max-width:768px){.pdp__grid{grid-template-columns:1fr;gap:32px}}

/* Mídia */
.pdp__img-wrap{border-radius:var(--r-arch) var(--r-arch) 24px 24px;overflow:hidden;aspect-ratio:3/4;position:relative;display:flex;align-items:center;justify-content:center}
.pdp__main-img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:opacity .3s}
.pdp__no-img{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.pdp__placeholder-initial{font-family:var(--f-display);font-size:120px;font-weight:900;opacity:.25}
.pdp__thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.pdp__thumb{width:72px;height:72px;border-radius:12px;overflow:hidden;border:2px solid transparent;cursor:pointer;padding:0;transition:border-color .15s}
.pdp__thumb img{width:100%;height:100%;object-fit:cover}
.pdp__thumb--active,.pdp__thumb:hover{border-color:var(--ink)}

/* Info */
.pdp__artist{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#8d92b0;margin-bottom:12px;transition:color .15s}
.pdp__artist:hover{color:var(--ink)}
.pdp__title{font-family:var(--f-display);font-size:clamp(28px,4vw,42px);font-weight:800;line-height:1.1;margin-bottom:20px}
.pdp__price{display:flex;align-items:baseline;gap:10px;margin-bottom:20px}
.pdp__price .woocommerce-Price-amount{font-family:var(--f-display);font-size:32px;font-weight:800;color:var(--ink)}
.pdp__price small{font-size:13px;color:#8d92b0}
.pdp__short-desc{font-size:15px;line-height:1.7;color:#3a3d52;margin-bottom:24px}
.pdp__short-desc p{margin-bottom:8px}

/* ── Cart form ─────────────────────────────────────────── */
.cj-cart-form{display:flex;flex-direction:column;gap:14px}

/* Stepper */
.cj-qty-wrap{display:flex;align-items:stretch;border:2px solid var(--ink);border-radius:14px;overflow:hidden;width:fit-content;background:#fff}
.cj-qty-btn{width:46px;font-size:22px;font-weight:900;background:none;border:none;cursor:pointer;color:var(--ink);font-family:var(--f-display);transition:background .15s;flex-shrink:0;padding:0}
.cj-qty-btn:hover{background:var(--lime)}
.cj-qty-input{width:58px;text-align:center;border:none;border-left:2px solid var(--ink);border-right:2px solid var(--ink);font-family:var(--f-display);font-size:18px;font-weight:800;color:var(--ink);background:#fff;-moz-appearance:textfield;outline:none;padding:12px 0}
.cj-qty-input::-webkit-inner-spin-button,.cj-qty-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* Botão adicionar */
.cj-add-btn{display:block;width:100%;background:var(--lime);color:var(--ink);font-family:var(--f-display);font-weight:800;font-size:17px;text-transform:uppercase;letter-spacing:.06em;border-radius:100px;padding:18px 32px;border:none;cursor:pointer;transition:transform .15s,box-shadow .15s;line-height:1}
.cj-add-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(205,236,0,.45)}
.pdp__cart-form .single_add_to_cart_button:hover{transform:translateY(-2px)!important}
.pdp__out-of-stock{background:#ece6d4;border:2px solid var(--ink);border-radius:16px;padding:18px 22px;font-weight:700;text-align:center;color:#8d92b0}

/* Variações — seletores de atributo */
.cj-variations{display:flex;flex-direction:column;gap:14px;margin-bottom:4px}
.cj-var-row{display:flex;flex-direction:column;gap:6px}
.cj-var-row label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#8d92b0}
.cj-var-select-wrap{display:flex;align-items:center;gap:12px}
.cj-var-select-wrap select{flex:1;border:2px solid var(--ink);border-radius:12px;padding:12px 40px 12px 16px;font-family:var(--f-body);font-size:15px;font-weight:600;color:var(--ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z' fill='%2314172a'/%3E%3C/svg%3E") no-repeat right 12px center;-webkit-appearance:none;appearance:none;cursor:pointer;transition:border-color .15s}
.cj-var-select-wrap select:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(45,66,133,.15)}
.reset_variations{font-size:12px;color:#8d92b0;text-decoration:none;white-space:nowrap;transition:color .15s;display:none}
.reset_variations:hover{color:var(--ink)}

/* Variação selecionada: preço/stock atualizado pelo JS */
.woocommerce-variation{margin-bottom:10px;font-size:14px;color:var(--ink)}
.woocommerce-variation .price .woocommerce-Price-amount{font-family:var(--f-display);font-size:24px;font-weight:800}
.woocommerce-variation .stock{font-weight:600;font-size:13px}

/* Container do botão: sempre visível — WC JS controla via classe disabled no botão */
.woocommerce-variation-add-to-cart{display:block}
/* Botão desabilitado: antes de selecionar variação válida */
.cj-add-btn.disabled,.cj-add-btn.wc-variation-selection-needed{opacity:.4;cursor:not-allowed}

/* Avisos WC (erro ao tentar adicionar sem variação) */
.woocommerce-notices-wrapper .woocommerce-error,.woocommerce-notices-wrapper .woocommerce-message,.woocommerce-notices-wrapper .woocommerce-info{list-style:none;margin:0 0 16px;padding:14px 18px;border-radius:14px;font-size:14px;font-weight:600}
.woocommerce-notices-wrapper .woocommerce-error{background:#ffe5e5;border:2px solid #e53e3e;color:#c53030}
.woocommerce-notices-wrapper .woocommerce-message{background:#f0ffe0;border:2px solid var(--lime);color:var(--ink)}
.woocommerce-notices-wrapper .woocommerce-info{background:#e8ecff;border:2px solid var(--navy);color:var(--navy)}

/* Meta */
.pdp__meta{margin-top:24px;padding-top:20px;border-top:1px solid rgba(20,23,42,.1);display:flex;flex-direction:column;gap:8px;font-size:13px;color:#8d92b0}
.pdp__meta b{color:var(--ink);font-weight:700}
.pdp__meta a{color:var(--navy);font-weight:600}

/* Badges */
.pdp__badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.pdp__badges span{font-size:12px;font-weight:600;background:#ece6d4;border-radius:100px;padding:7px 14px;color:#3a3d52}

/* Descrição */
.pdp__description{margin-bottom:56px;padding:32px;background:#fff;border-radius:24px;border:2px solid rgba(20,23,42,.08)}
.pdp__section-title{font-family:var(--f-display);font-size:22px;font-weight:800;margin-bottom:20px;color:var(--ink)}
.pdp__desc-body{font-size:15px;line-height:1.8;color:#3a3d52}
.pdp__desc-body p{margin-bottom:12px}

/* Bloco do artista */
.pdp__artist-block{background:#fff;border-radius:24px;padding:28px;margin-bottom:56px;border:2px solid rgba(20,23,42,.08)}
.pdp__artist-head{display:flex;align-items:center;gap:16px;margin-bottom:14px}
.pdp__artist-photo,.pdp__artist-initial{width:56px;height:56px;border-radius:50%;object-fit:cover;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--f-display);font-size:22px;font-weight:900;color:#fff}
.pdp__artist-name{font-family:var(--f-display);font-weight:800;font-size:17px;display:block}
.pdp__artist-handle{font-size:13px;color:#8d92b0}
.pdp__artist-bio{font-size:14px;line-height:1.7;color:#3a3d52;margin-bottom:16px}
.pdp__artist-actions{display:flex;gap:10px;flex-wrap:wrap}

/* Botões auxiliares */
.btn--sm{font-size:13px!important;padding:10px 18px!important}
.btn--ghost{border:2px solid var(--ink)!important;color:var(--ink)!important;background:transparent!important;border-radius:100px;font-family:var(--f-display);font-weight:700;font-size:15px;padding:13px 24px;transition:background .15s,color .15s;display:inline-flex;align-items:center}
.btn--ghost:hover{background:var(--ink)!important;color:var(--lime)!important}

/* Relacionados */
.pdp__related{margin-bottom:56px}
.grid--4{grid-template-columns:repeat(4,1fr)!important}
@media(max-width:900px){.grid--4{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:480px){.grid--4{grid-template-columns:1fr 1fr!important}}

/* =========================================================
   PAGE WRAPPER (page.php)
   ========================================================= */
main.page-content{padding:48px 0 80px}
main.page-content h1{font-family:var(--f-display);font-size:clamp(28px,4vw,42px);font-weight:800;line-height:1.1;margin-bottom:32px;color:var(--ink)}
.entry-content{font-size:16px;line-height:1.8;color:#3a3d52}

/* =========================================================
   MINHA CONTA — Formulário de login/registro
   ========================================================= */
.woocommerce-form-login,.woocommerce-form-register{
  max-width:480px;margin:40px auto;
  background:#fff;border:2px solid rgba(20,23,42,.1);border-radius:24px;padding:40px;
}
.woocommerce-form-login .woocommerce-form__label,
.woocommerce-form-register .woocommerce-form__label{
  font-weight:700;font-size:13px;color:var(--navy);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;display:block
}
.woocommerce-form-login .woocommerce-Input--text,
.woocommerce-form-register .woocommerce-Input--text{
  border:2px solid var(--ink)!important;border-radius:12px!important;
  padding:13px 15px!important;font-family:var(--f-body)!important;font-size:15px!important;
  background:var(--paper)!important;width:100%!important;box-sizing:border-box!important;
}
.woocommerce-form-login .woocommerce-Input--text:focus,
.woocommerce-form-register .woocommerce-Input--text:focus{
  outline:none!important;box-shadow:3px 3px 0 0 var(--lime)!important;
}
.woocommerce-form-login .form-row,.woocommerce-form-register .form-row{margin-bottom:16px}

/* Botão de login */
.woocommerce-form-login__submit,.woocommerce-form-register__submit{
  background:var(--lime)!important;color:var(--ink)!important;
  font-family:var(--f-display)!important;font-weight:800!important;font-size:16px!important;
  text-transform:uppercase!important;letter-spacing:.06em!important;
  border-radius:100px!important;padding:15px 32px!important;border:none!important;
  cursor:pointer!important;width:100%!important;transition:transform .15s!important;
}
.woocommerce-form-login__submit:hover,.woocommerce-form-register__submit:hover{transform:translateY(-2px)!important}
.woocommerce-LostPassword{text-align:center;margin-top:12px;font-size:13px}
.woocommerce-LostPassword a{color:var(--navy);font-weight:600}

/* =========================================================
   CART BLOCK (WooCommerce Blocks) — fiel ao Claude Design Sacola
   Estrutura React após hydration:
     .wc-block-components-sidebar-layout
       .wc-block-components-main.wc-block-cart__main  (esquerda)
       .wc-block-components-sidebar.wc-block-cart__sidebar  (direita/navy)
   ========================================================= */

/* Oculta express payment, cross-sells e calculadora Classic (legado) */
.woocommerce-shipping-calculator,
.wp-block-woocommerce-cart-express-payment-block,
.wp-block-woocommerce-product-collection{display:none!important}

/* ── Frete nativo WC Blocks 10.x — seção visível ─────── */
.wc-block-cart__sidebar .wc-block-components-totals-shipping,
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-shipping-block{
  display:block!important;
  margin-top:16px!important;
}

/* TotalsItem precisa de flex-wrap para a description (CEP/alterar) aparecer abaixo */
.wc-block-cart__sidebar .wc-block-components-totals-item{
  flex-wrap:wrap!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-item__description{
  flex:0 0 100%!important;width:100%!important;
  padding-top:6px!important;
}

/* Textos da seção de frete → branco */
.wc-block-cart__sidebar .wc-block-components-totals-shipping *,
.wc-block-cart__sidebar .wc-block-components-totals-footer-item--shipping *{
  color:#fff!important;
}

/* Botão "Alterar CEP" / "Calcular frete" (WC Blocks 10.x: __change-address-button) */
.wc-block-cart__sidebar .wc-block-components-totals-shipping__change-address-button,
.wc-block-cart__sidebar .wc-block-components-totals-shipping__change-address__link,
.wc-block-cart__sidebar .wc-block-components-totals-shipping button,
.wc-block-cart__sidebar .wc-block-components-totals-shipping a{
  color:var(--lime)!important;font-size:13px!important;font-weight:700!important;
  text-decoration:underline!important;background:none!important;border:none!important;
  cursor:pointer!important;padding:0!important;display:inline!important;
}

/* Form de CEP (fieldset com inputs de endereço) */
.wc-block-cart__sidebar .wc-block-components-totals-shipping__fieldset{
  display:block!important;margin-top:12px!important;
  border:none!important;padding:0!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-shipping__fieldset input,
.wc-block-cart__sidebar .wc-block-components-totals-shipping__fieldset select{
  background:rgba(255,255,255,.12)!important;
  border:1.5px solid rgba(255,255,255,.3)!important;
  border-radius:100px!important;color:#fff!important;
  padding:10px 16px!important;font-size:14px!important;
  font-family:var(--f-body)!important;width:100%!important;
  margin-bottom:8px!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-shipping__fieldset input::placeholder{
  color:rgba(255,255,255,.4)!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-shipping__fieldset button[type="submit"],
.wc-block-cart__sidebar .wc-block-components-totals-shipping__options button[type="submit"]{
  background:var(--lime)!important;color:var(--ink)!important;
  border:none!important;border-radius:100px!important;
  font-weight:700!important;cursor:pointer!important;
  padding:10px 20px!important;font-size:14px!important;width:100%!important;
  margin-top:4px!important;display:block!important;
}

/* Cada opção de frete: card com fundo translúcido */
.wc-block-cart__sidebar .wc-block-components-radio-control__option{
  background:rgba(255,255,255,.1)!important;
  border:1.5px solid rgba(255,255,255,.2)!important;
  border-radius:12px!important;
  padding:10px 14px!important;
  margin-bottom:8px!important;
  cursor:pointer!important;
  transition:background .15s,border-color .15s!important;
  display:flex!important;align-items:center!important;gap:10px!important;
}
.wc-block-cart__sidebar .wc-block-components-radio-control__option:hover{
  background:rgba(255,255,255,.2)!important;
  border-color:rgba(255,255,255,.5)!important;
}
.wc-block-cart__sidebar .wc-block-components-radio-control__option--checked{
  background:var(--lime)!important;border-color:var(--lime)!important;
}
.wc-block-cart__sidebar .wc-block-components-radio-control__option--checked *{
  color:var(--ink)!important;
}
/* Preço do método: label e preço lado a lado */
.wc-block-cart__sidebar .wc-block-components-shipping-rates-control .wc-block-components-radio-control__label-group{
  display:flex!important;justify-content:space-between!important;width:100%!important;align-items:center!important;
}
/* Radio input */
.wc-block-cart__sidebar .wc-block-components-radio-control input[type="radio"]{
  accent-color:var(--lime)!important;width:16px!important;height:16px!important;flex-shrink:0!important;
}
/* Título da seção de frete */
.wc-block-cart__sidebar .wc-block-components-totals-footer-item__label{
  font-family:var(--f-body)!important;font-size:11px!important;
  text-transform:uppercase!important;letter-spacing:.18em!important;
  font-weight:700!important;opacity:.55!important;
}

/* ── 2 colunas ──
   SERVER (is-loading): .wp-block-woocommerce-filled-cart-block
   REACT (hydrated):   .wc-block-components-sidebar-layout:not(skeleton)
   IMPORTANTE: excluir .wc-block-cart--skeleton para não quebrar o layout */

/* Esconder skeleton explicitamente */
.wc-block-components-sidebar-layout.wc-block-cart--skeleton{display:none!important}

.wp-block-woocommerce-filled-cart-block,
.wc-block-components-sidebar-layout:not(.wc-block-cart--skeleton){
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:40px!important;
  align-items:flex-start!important;
  width:100%!important;
}

/* Coluna esquerda: itens — 60% */
.wp-block-woocommerce-cart-items-block,
.wc-block-cart__main,
.wc-block-components-main.wc-block-cart__main{
  flex:3 1 0%!important;
  min-width:0!important;
}
/* Coluna esquerda: checkout — 60% */
.wc-block-components-main.wc-block-checkout__main,
.wp-block-woocommerce-checkout-fields-block{
  flex:3 1 0%!important;
  min-width:0!important;
}

/* Coluna direita: resumo/navy — 40% */
.wp-block-woocommerce-cart-totals-block,
.wc-block-cart__sidebar,
.wc-block-components-sidebar.wc-block-cart__sidebar{
  flex:2 1 0%!important;
  min-width:0!important;
}
/* Coluna direita: checkout — 40% */
.wc-block-components-sidebar.wc-block-checkout__sidebar,
.wp-block-woocommerce-checkout-totals-block{
  flex:2 1 0%!important;
  min-width:0!important;
}

@media(max-width:860px){
  .wp-block-woocommerce-filled-cart-block,
  .wc-block-components-sidebar-layout:not(.wc-block-cart--skeleton){flex-direction:column!important;flex-wrap:wrap!important}
  .wp-block-woocommerce-cart-items-block,
  .wp-block-woocommerce-cart-totals-block,
  .wc-block-cart__main,.wc-block-components-main,
  .wc-block-cart__sidebar,.wc-block-components-sidebar,
  .wp-block-woocommerce-checkout-fields-block,
  .wp-block-woocommerce-checkout-totals-block{flex:1 1 100%!important}
}

/* ── Tabela de itens (reset WC defaults) ── */
table.wc-block-cart-items,
.wc-block-cart-items{
  width:100%!important;border:none!important;border-collapse:collapse!important;
  background:none!important;border-radius:0!important;border-bottom:none!important;
}
.wc-block-cart-items__header,
.wc-block-cart-items thead,
.wc-block-cart-items thead th{display:none!important}

/* ── Cada linha de item: grid 3 cols — imagem | info | preço ──
   WC renderiza como <tr class="wc-block-cart-items__row wc-block-cart-item">
   display:grid funciona em <tr> em navegadores modernos */
.wc-block-cart-items__row,
.wc-block-cart-item{
  display:grid!important;
  grid-template-columns:96px 1fr auto!important;
  gap:18px!important;
  align-items:center!important;
  padding:20px 0!important;
  border-top:none!important;
  border-bottom:2px solid rgba(20,23,42,.14)!important;
  background:none!important;
}
/* Primeiro item: borda-topo ink */
.wc-block-cart-items tbody tr:first-child,
.wc-block-cart-items .wc-block-cart-items__row:first-child{
  border-top:2px solid var(--ink)!important;
}
/* Células: reset padding do WC */
.wc-block-cart-items__row td,
.wc-block-cart-item td{padding:0!important;border-top:none!important;}

/* ── Col 1: Imagem arco ── */
.wc-block-cart-item__image{
  display:block!important;padding:0!important;
  width:96px!important;vertical-align:middle!important;
}
.wc-block-cart-item__image a{
  display:block!important;width:96px!important;height:104px!important;
  overflow:hidden!important;border-radius:48px 48px 8px 8px!important;
  border:2px solid var(--ink)!important;
}
.wc-block-cart-item__image img,
.wc-block-cart-item__image a img{
  border-radius:48px 48px 8px 8px!important;
  width:96px!important;height:104px!important;
  object-fit:cover!important;display:block!important;
}

/* ── Col 2: Info do produto ── */
.wc-block-cart-item__product,
.wc-block-cart-item__wrap{
  display:flex!important;flex-direction:column!important;
  padding:0!important;vertical-align:middle!important;
}
/* Nome do produto */
.wc-block-components-product-name,
.wc-block-cart-items__row .wc-block-components-product-name{
  font-family:var(--f-display)!important;font-weight:700!important;font-size:18px!important;
  color:var(--ink)!important;line-height:1.05!important;
  text-decoration:none!important;display:block!important;
  max-width:none!important;
}
.wc-block-components-product-name:hover{color:var(--indigo)!important}
/* Metadata (variações) */
.wc-block-components-product-metadata{
  font-size:12px!important;font-weight:600!important;color:var(--indigo)!important;
  margin-top:5px!important;
}
/* Qty + remove wrapper */
.wc-block-cart-item__quantity{
  display:flex!important;flex-direction:row!important;
  align-items:center!important;gap:12px!important;
  margin-top:10px!important;
}
/* Qty stepper: pílula ink */
.wc-block-components-quantity-selector{
  border:2.5px solid var(--ink)!important;border-radius:100px!important;
  display:inline-flex!important;align-items:center!important;
  overflow:hidden!important;background:#fff!important;
  width:fit-content!important;
}
.wc-block-components-quantity-selector button{
  width:34px!important;height:34px!important;
  background:none!important;border:none!important;
  font-size:20px!important;font-weight:700!important;color:var(--ink)!important;
  display:grid!important;place-items:center!important;cursor:pointer!important;
  padding:0!important;line-height:1!important;
}
.wc-block-components-quantity-selector button:hover{background:var(--paper)!important}
.wc-block-components-quantity-selector input[type="number"]{
  width:40px!important;text-align:center!important;height:34px!important;
  border:none!important;
  border-left:1.5px solid rgba(20,23,42,.2)!important;
  border-right:1.5px solid rgba(20,23,42,.2)!important;
  border-radius:0!important;padding:0 4px!important;
  font-family:var(--f-display)!important;font-weight:700!important;font-size:15px!important;
  background:none!important;color:var(--ink)!important;
}
.wc-block-components-quantity-selector input::-webkit-outer-spin-button,
.wc-block-components-quantity-selector input::-webkit-inner-spin-button{-webkit-appearance:none!important}
.wc-block-components-quantity-selector input[type=number]{-moz-appearance:textfield!important}
/* Link remover */
.wc-block-cart-item__remove-link{
  background:none!important;border:none!important;padding:0!important;
  color:#9a3b2b!important;font-size:11px!important;font-weight:700!important;
  text-transform:uppercase!important;letter-spacing:.05em!important;
  cursor:pointer!important;text-decoration:underline!important;
  width:auto!important;height:auto!important;
}
.wc-block-cart-item__remove-link svg{display:none!important}
.wc-block-cart-item__remove-link::after{content:"Remover"!important}

/* ── Col 3: Preço ── */
.wc-block-cart-item__total{
  font-family:var(--f-display)!important;font-weight:800!important;font-size:20px!important;
  color:var(--ink)!important;text-align:right!important;
  white-space:nowrap!important;padding:0!important;vertical-align:middle!important;
  display:flex!important;flex-direction:column!important;align-items:flex-end!important;
}
.wc-block-cart-item__total .woocommerce-Price-amount,
.wc-block-cart-item__total .wc-block-components-formatted-money-amount{
  font-family:var(--f-display)!important;font-weight:800!important;font-size:20px!important;
}

/* ── SIDEBAR NAVY (direita) ──
   React: .wc-block-cart__sidebar  /  Server: .wp-block-woocommerce-cart-totals-block  */
.wc-block-cart__sidebar,
.wp-block-woocommerce-cart-totals-block{
  background:var(--navy)!important;
  color:#fff!important;
  border-radius:26px!important;
  padding:28px!important;
  overflow:hidden!important;
  position:sticky!important;
  top:96px!important;
  border:none!important;
  margin:0!important;
}
/* Faixa lime dashes no topo */
.wc-block-cart__sidebar::before,
.wp-block-woocommerce-cart-totals-block::before{
  content:""!important;
  position:absolute!important;left:0!important;right:0!important;top:0!important;
  height:8px!important;
  background:repeating-linear-gradient(90deg,var(--lime) 0 16px,transparent 16px 22px)!important;
  pointer-events:none!important;z-index:2!important;
}
/* Reset inner blocks (evitar navy dentro do navy) */
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block,
.wp-block-woocommerce-cart-totals-block .wp-block-woocommerce-cart-order-summary-block{
  background:none!important;border:none!important;margin:0!important;padding:0!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-wrapper,
.wp-block-woocommerce-cart-totals-block .wc-block-components-totals-wrapper{
  background:none!important;border:none!important;padding:0!important;
  border-radius:0!important;overflow:visible!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-wrapper::before,
.wp-block-woocommerce-cart-totals-block .wc-block-components-totals-wrapper::before{
  display:none!important;
}

/* Título do sidebar */
.wc-block-cart__sidebar h2,
.wc-block-cart__sidebar .wc-block-cart__totals-title,
.wp-block-woocommerce-cart-totals-block h2{
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:20px!important;color:var(--lime)!important;
  text-transform:uppercase!important;
  padding-top:8px!important;margin-bottom:18px!important;
  background:none!important;border:none!important;
  display:block!important;text-align:left!important;width:100%!important;
}

/* Linhas: subtotal, desconto, etc. */
.wc-block-cart__sidebar .wc-block-components-totals-item{
  display:flex!important;flex-wrap:wrap!important;justify-content:space-between!important;
  align-items:baseline!important;
  padding:10px 0!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  font-size:15px!important;color:#cfd2e6!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-item__label{font-weight:600!important;color:#cfd2e6!important}
.wc-block-cart__sidebar .wc-block-components-totals-item__value{
  font-family:var(--f-display)!important;font-weight:700!important;color:#fff!important;
}
/* Total final */
.wc-block-cart__sidebar .wc-block-components-totals-footer-item{
  border:none!important;margin-top:18px!important;padding-top:14px!important;
  display:flex!important;justify-content:space-between!important;align-items:baseline!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
  font-size:14px!important;color:#bfc3da!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:32px!important;color:var(--lime)!important;
}

/* Cupom */
.wc-block-cart__sidebar .wc-block-components-totals-coupon__form,
.wc-block-components-totals-coupon__form{
  display:flex!important;gap:10px!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-coupon input{
  border:2px solid rgba(255,255,255,.3)!important;border-radius:100px!important;
  padding:11px 16px!important;background:rgba(255,255,255,.1)!important;
  color:#fff!important;font-size:14px!important;flex:1!important;
}
.wc-block-cart__sidebar .wc-block-components-totals-coupon input::placeholder{color:rgba(255,255,255,.5)!important}
.wc-block-cart__sidebar .wc-block-components-totals-coupon__button,
.wc-block-components-totals-coupon__button{
  background:var(--lime)!important;color:var(--ink)!important;
  border-radius:100px!important;padding:11px 18px!important;
  font-family:var(--f-display)!important;font-weight:800!important;font-size:13px!important;
  border:none!important;cursor:pointer!important;
}

/* Botão "Finalizar compra" */
.wc-block-cart__sidebar .wc-block-components-checkout-button,
.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block a,
.wp-block-woocommerce-proceed-to-checkout-block button{
  background:var(--lime)!important;color:var(--ink)!important;
  font-family:var(--f-display)!important;font-weight:800!important;font-size:17px!important;
  text-transform:uppercase!important;letter-spacing:.06em!important;
  border-radius:100px!important;padding:18px 32px!important;border:none!important;
  width:100%!important;cursor:pointer!important;text-align:center!important;
  transition:transform .15s,box-shadow .15s!important;display:block!important;
  margin-top:22px!important;
}
.wc-block-cart__sidebar .wc-block-components-checkout-button:hover,
.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block a:hover,
.wp-block-woocommerce-proceed-to-checkout-block button:hover{
  transform:translateY(-2px)!important;box-shadow:0 8px 24px rgba(205,236,0,.4)!important
}
/* Métodos de pagamento aceitos: oculta (não tem no design) */
.wp-block-woocommerce-cart-accepted-payment-methods-block{
  margin-top:12px!important;
  display:flex!important;flex-wrap:wrap!important;gap:6px!important;
  justify-content:center!important;
}
.wp-block-woocommerce-cart-accepted-payment-methods-block img{
  height:22px!important;width:auto!important;opacity:.5!important;
}

/* =========================================================
   TÍTULO E BREADCRUMB DE PÁGINAS WOO (page.php)
   ========================================================= */
.cj-crumbs{padding:22px 0 0;font-size:13px;font-weight:600;color:var(--indigo);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cj-crumbs a{color:var(--indigo);transition:color .15s}
.cj-crumbs a:hover{text-decoration:underline}
.cj-crumbs__sep{opacity:.4}
.cj-page-title{padding:12px 0 28px}
.cj-page-title small{display:block;font-family:var(--f-body);font-weight:600;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:var(--indigo);margin-bottom:6px}
.cj-page-title h1{font-family:var(--f-display);font-weight:800;font-size:clamp(36px,6vw,68px);line-height:.92;letter-spacing:-.02em;text-transform:uppercase;color:var(--ink)}

/* =========================================================
   CHECKOUT — WooCommerce Blocks
   Estrutura React após hydration:
     .wc-block-components-sidebar-layout.wc-block-checkout
       .wc-block-components-main.wc-block-checkout__main  (form)
       .wc-block-components-sidebar.wc-block-checkout__sidebar (resumo/navy)
   ========================================================= */

/* Layout 2-col do checkout coberto pelo .wc-block-components-sidebar-layout acima.
   Especificidades do checkout: */
.wc-block-checkout__main,
.wp-block-woocommerce-checkout-fields-block{
  display:flex!important;flex-direction:column!important;gap:32px!important;
}
@media(max-width:900px){
  .wc-block-checkout__sidebar,
  .wp-block-woocommerce-checkout-totals-block,
  .wc-block-checkout__main,
  .wp-block-woocommerce-checkout-fields-block{position:static!important}
}

/* Oculta express payment */
.wp-block-woocommerce-checkout-express-payment-block{display:none!important}

/* ── Cada inner block = co-block ── */
.wc-block-components-checkout-step,
.wp-block-woocommerce-checkout-contact-information-block,
.wp-block-woocommerce-checkout-shipping-method-block,
.wp-block-woocommerce-checkout-pickup-options-block,
.wp-block-woocommerce-checkout-billing-address-block,
.wp-block-woocommerce-checkout-shipping-address-block,
.wp-block-woocommerce-checkout-shipping-methods-block,
.wp-block-woocommerce-checkout-payment-block,
.wp-block-woocommerce-checkout-additional-information-block,
.wp-block-woocommerce-checkout-order-note-block{
  border:2.5px solid var(--ink)!important;
  border-radius:20px!important;
  padding:24px!important;
  background:#fff!important;
  margin:0!important;
}
/* Actions e terms: sem card */
.wp-block-woocommerce-checkout-actions-block,
.wp-block-woocommerce-checkout-terms-block{
  border:none!important;background:none!important;
  padding:0!important;border-radius:0!important;margin:0!important;
}

/* Heading do step */
.wc-block-components-checkout-step__heading{
  display:flex!important;align-items:center!important;
  gap:10px!important;margin-bottom:18px!important;
  border:none!important;padding:0!important;background:none!important;
}
/* Número do step: círculo ink/lime */
.wc-block-components-checkout-step__step-number{
  width:30px!important;height:30px!important;border-radius:50%!important;
  background:var(--ink)!important;color:var(--lime)!important;
  display:grid!important;place-items:center!important;
  font-size:14px!important;font-weight:800!important;font-family:var(--f-display)!important;
  flex-shrink:0!important;border:none!important;
}
/* Título do step */
.wc-block-components-checkout-step__title{
  font-family:var(--f-display)!important;font-weight:800!important;font-size:20px!important;
  text-transform:uppercase!important;color:var(--ink)!important;
  letter-spacing:-.01em!important;line-height:1!important;
}
/* H2 dentro dos blocos */
.wp-block-woocommerce-checkout-contact-information-block h2,
.wp-block-woocommerce-checkout-billing-address-block h2,
.wp-block-woocommerce-checkout-payment-block h2{
  font-family:var(--f-display)!important;font-weight:800!important;font-size:18px!important;
  text-transform:uppercase!important;color:var(--ink)!important;margin-bottom:16px!important;
}

/* ── Inputs e labels ── */
.wc-block-components-text-input input,
.wc-block-components-select select,
.wc-block-components-textarea textarea,
.wc-block-components-country-select__select{
  border:2px solid var(--ink)!important;border-radius:12px!important;
  padding:13px 15px!important;font-family:var(--f-body)!important;
  font-size:15px!important;font-weight:500!important;
  background:var(--paper)!important;width:100%!important;box-sizing:border-box!important;
  color:var(--ink)!important;
}
.wc-block-components-text-input input:focus,
.wc-block-components-select select:focus,
.wc-block-components-country-select__select:focus{
  outline:none!important;box-shadow:3px 3px 0 0 var(--ink)!important;background:#fff!important;
}
.wc-block-components-text-input label,
.wc-block-components-label,
.wc-block-components-select__label,
.wc-block-components-country-select__label{
  font-size:13px!important;font-weight:600!important;color:var(--indigo)!important;
  margin-bottom:6px!important;display:block!important;
}

/* Espaçamento entre campos dentro dos cards (address form) */
.wc-block-components-address-form,
.wc-block-components-form{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px 18px!important;
}
/* Campos full-width: email, endereço, complemento, CEP */
.wc-block-components-address-form .wc-block-components-text-input:has(input[autocomplete*="email"]),
.wc-block-components-address-form .wc-block-components-text-input:has(input[autocomplete*="street-address"]),
.wc-block-components-address-form .wc-block-components-text-input:has(input[autocomplete*="address-line"]),
.wc-block-components-address-form .wc-block-components-text-input:has(input[id*="address_2"]),
.wc-block-components-address-form .wc-block-components-text-input:has(input[id*="additional"]),
.wc-block-components-address-form .wc-block-components-country-input,
.wc-block-components-form > .wc-block-components-text-input{
  grid-column:1/-1!important;
}
/* Wrapper de cada campo: garante que label + input ficam empilhados */
.wc-block-components-text-input,
.wc-block-components-select,
.wc-block-components-country-input{
  display:flex!important;flex-direction:column!important;gap:0!important;
}
/* Espaçamento entre campos simples sem address-form wrapper */
.wc-block-components-checkout-step__content .wc-block-components-text-input + .wc-block-components-text-input,
.wc-block-components-checkout-step__content > * + *{
  margin-top:14px!important;
}

/* ── Métodos de entrega: choice cards ── */
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;
  list-style:none!important;padding:0!important;margin:0!important;
}
@media(max-width:560px){
  .wc-block-components-shipping-rates-control__package .wc-block-components-radio-control{grid-template-columns:1fr!important;}
}
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option{
  border:2.5px solid var(--ink)!important;border-radius:14px!important;padding:14px 16px!important;
  background:#fff!important;cursor:pointer!important;transition:background .15s!important;
  display:flex!important;align-items:flex-start!important;gap:10px!important;margin:0!important;
}
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option:hover{background:var(--paper-2)!important;}
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option--checked{background:var(--lime)!important;}
.wc-block-components-radio-control__label{font-family:var(--f-display)!important;font-weight:800!important;font-size:15px!important;color:var(--ink)!important;display:block!important;}
.wc-block-components-radio-control__description{font-size:12.5px!important;color:#3a3d52!important;margin-top:2px!important;display:block!important;}
.wc-block-components-radio-control input[type="radio"]{accent-color:var(--ink)!important}

/* Pickup options: choice cards */
.wc-block-components-collection-method-options,
.wc-block-checkout__pickup-options{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;
  list-style:none!important;padding:0!important;margin:0!important;
}
.wc-block-components-collection-method-option{
  border:2.5px solid var(--ink)!important;border-radius:14px!important;padding:14px 16px!important;
  background:#fff!important;cursor:pointer!important;transition:background .15s!important;margin:0!important;
}
.wc-block-components-collection-method-option--selected{background:var(--lime)!important;}
.wc-block-components-collection-method-option b,
.wc-block-components-collection-method-option strong{font-family:var(--f-display)!important;font-weight:800!important;font-size:16px!important;display:block!important;margin-bottom:3px!important;}
.wc-block-components-collection-method-option small{font-size:12.5px!important;color:#3a3d52!important;}

/* Pagamento: choice cards */
.wc-block-components-payment-method-options{list-style:none!important;padding:0!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}
@media(max-width:560px){.wc-block-components-payment-method-options{grid-template-columns:1fr!important}}
.wc-block-components-payment-method-option{
  border:2.5px solid var(--ink)!important;border-radius:14px!important;padding:16px!important;
  background:#fff!important;transition:background .15s!important;cursor:pointer!important;margin:0!important;
}
.wc-block-components-payment-method-option:hover{background:var(--paper-2)!important}
.wc-block-components-payment-method-option--selected{background:var(--lime)!important}
.wc-block-components-payment-method-option__label-wrapper label{font-family:var(--f-display)!important;font-weight:800!important;font-size:16px!important;cursor:pointer!important}
.wc-block-components-payment-method-option input[type="radio"]{accent-color:var(--ink)}
.wc-block-components-payment-method-option__content{
  margin-top:12px!important;padding:14px!important;
  background:var(--paper)!important;border:2px dashed var(--ink)!important;border-radius:12px!important;
  font-size:14px!important;color:#3a3d52!important;
}

/* ── SIDEBAR CHECKOUT (navy) ──
   React: .wc-block-checkout__sidebar
   Server: .wp-block-woocommerce-checkout-totals-block               */
.wc-block-checkout__sidebar,
.wp-block-woocommerce-checkout-totals-block{
  background:var(--navy)!important;color:#fff!important;
  border-radius:26px!important;padding:28px!important;
  overflow:hidden!important;position:relative!important;border:none!important;margin:0!important;
}
.wc-block-checkout__sidebar::before,
.wp-block-woocommerce-checkout-totals-block::before{
  content:""!important;position:absolute!important;left:0!important;right:0!important;top:0!important;
  height:8px!important;
  background:repeating-linear-gradient(90deg,var(--lime) 0 16px,transparent 16px 22px)!important;
  pointer-events:none!important;z-index:1!important;
}
/* Reset inner blocks dentro da sidebar checkout */
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block,
.wp-block-woocommerce-checkout-totals-block .wp-block-woocommerce-checkout-order-summary-block{
  background:none!important;border:none!important;padding:0!important;margin:0!important;
}
.wc-block-checkout__sidebar .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout-totals-block .wc-block-components-totals-wrapper{
  background:none!important;border:none!important;padding:0!important;
  border-radius:0!important;overflow:visible!important;
}
.wc-block-checkout__sidebar .wc-block-components-totals-wrapper::before{display:none!important;}

/* Título "Seu pedido" */
.wc-block-checkout__sidebar .wc-block-components-order-summary__toggle-text,
.wc-block-checkout__sidebar .wc-block-components-order-summary-button-panel__button,
.wc-block-checkout__sidebar h2{
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:20px!important;color:var(--lime)!important;
  text-transform:uppercase!important;
  background:none!important;border:none!important;
  padding:6px 0 16px!important;display:block!important;width:100%!important;text-align:left!important;
}

/* Itens do resumo */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item{
  display:grid!important;
  grid-template-columns:56px 1fr auto!important;
  gap:12px!important;
  align-items:start!important;
  padding:14px 0!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  font-size:14px!important;color:#cfd2e6!important;
}
/* Imagem do produto no resumo */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__image{
  grid-column:1!important;
  width:56px!important;height:64px!important;
  overflow:hidden!important;border-radius:28px 28px 6px 6px!important;
  border:1.5px solid rgba(255,255,255,.25)!important;flex-shrink:0!important;
}
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__image img{
  width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;
}
/* Badge de quantidade (círculo) */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__quantity{
  position:absolute!important;top:-6px!important;right:-6px!important;
  background:var(--lime)!important;color:var(--ink)!important;
  width:20px!important;height:20px!important;border-radius:50%!important;
  font-size:11px!important;font-weight:800!important;display:grid!important;place-items:center!important;
  font-family:var(--f-display)!important;
}
/* Wraper da imagem: relative para o badge */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__image{
  position:relative!important;
}
/* Descrição (nome + preço) */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__description{
  grid-column:2!important;display:flex!important;flex-direction:column!important;gap:4px!important;
}
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__name{
  font-family:var(--f-display)!important;font-weight:700!important;
  font-size:15px!important;color:#fff!important;line-height:1.15!important;
}
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__individual-price{
  font-family:var(--f-body)!important;font-weight:500!important;
  font-size:13px!important;color:#bfc3da!important;
}
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__individual-prices{
  display:flex!important;flex-direction:column!important;gap:2px!important;
}
/* Preço total do item (coluna direita) */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__full-price{
  grid-column:3!important;
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:16px!important;color:#fff!important;
  text-align:right!important;white-space:nowrap!important;
}
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__full-price .woocommerce-Price-amount{
  color:#fff!important;font-family:var(--f-display)!important;font-weight:800!important;
}

/* Linhas de totais */
.wc-block-checkout__sidebar .wc-block-components-totals-item{
  display:flex!important;justify-content:space-between!important;
  padding:10px 0!important;border-bottom:1px solid rgba(255,255,255,.12)!important;
  font-size:15px!important;color:#cfd2e6!important;
}
.wc-block-checkout__sidebar .wc-block-components-totals-item__label{font-weight:600!important;color:#cfd2e6!important}
.wc-block-checkout__sidebar .wc-block-components-totals-item__value{font-family:var(--f-display)!important;font-weight:700!important;color:#fff!important}

/* Total final */
.wc-block-checkout__sidebar .wc-block-components-totals-footer-item{
  border:none!important;margin-top:18px!important;padding-top:14px!important;
  display:flex!important;justify-content:space-between!important;align-items:baseline!important;
}
.wc-block-checkout__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
  font-size:14px!important;color:#bfc3da!important;
}
.wc-block-checkout__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-family:var(--f-display)!important;font-weight:800!important;font-size:32px!important;color:var(--lime)!important;
}

/* ── Botão "Finalizar pedido" ── */
.wc-block-components-checkout-place-order-button{
  width:100%!important;margin-top:22px!important;
  background:var(--lime)!important;color:var(--ink)!important;
  font-family:var(--f-display)!important;font-weight:800!important;font-size:17px!important;
  text-transform:uppercase!important;letter-spacing:.02em!important;
  border-radius:100px!important;padding:18px 32px!important;
  border:none!important;cursor:pointer!important;display:block!important;
  transition:transform .15s ease,box-shadow .15s ease!important;
}
.wc-block-components-checkout-place-order-button:hover{
  transform:translateY(-2px)!important;box-shadow:0 8px 24px rgba(205,236,0,.4)!important;
}

/* Link "Voltar ao carrinho" */
.wc-block-components-checkout-return-to-cart-button{
  display:block!important;text-align:center!important;margin-top:14px!important;
  color:#bfc3da!important;font-size:13px!important;font-weight:600!important;
  background:none!important;border:none!important;cursor:pointer!important;
}
.wc-block-components-checkout-return-to-cart-button:hover{color:var(--lime)!important}

/* Notificações */
.wc-block-components-notices .wc-block-components-notice-banner{
  background:var(--lime)!important;border-radius:12px!important;border:2px solid var(--ink)!important;
  color:var(--ink)!important;font-weight:600!important;padding:14px 18px!important;margin-bottom:20px!important;
}
.wc-block-components-notices .wc-block-components-notice-banner--error{
  background:#fff!important;border-color:var(--pop)!important;color:var(--pop)!important;
}

/* Checkbox */
.wc-block-components-checkbox input[type="checkbox"]{accent-color:var(--ink)}
.wc-block-components-checkbox label{font-size:14px;font-weight:600;color:var(--ink)}

/* =========================================================
   MINHA CONTA
   ========================================================= */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px 1fr;gap:40px;align-items:start}
@media(max-width:768px){.woocommerce-account .woocommerce{grid-template-columns:1fr}}

.woocommerce-MyAccount-navigation{background:#fff;border:2px solid rgba(20,23,42,.1);border-radius:20px;overflow:hidden;position:sticky;top:90px}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0}
.woocommerce-MyAccount-navigation ul li a{display:block;padding:14px 20px;font-weight:600;font-size:14px;color:var(--ink);border-bottom:1px solid rgba(20,23,42,.06);transition:background .15s,color .15s}
.woocommerce-MyAccount-navigation ul li a:hover,.woocommerce-MyAccount-navigation ul li.is-active a{background:var(--lime);color:var(--ink)}
.woocommerce-MyAccount-navigation ul li:last-child a{border-bottom:none}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a{color:#e74c3c}

.woocommerce-MyAccount-content{background:#fff;border:2px solid rgba(20,23,42,.1);border-radius:20px;padding:32px}
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3{font-family:var(--f-display);font-weight:800;margin-bottom:20px;color:var(--ink)}

/* Login/Register forms */
.woocommerce-account .woocommerce-form input{border:2px solid var(--ink);border-radius:12px;padding:13px 15px;font-family:var(--f-body);font-size:15px;background:var(--paper);width:100%}
.woocommerce-account .woocommerce-form input:focus{outline:none;box-shadow:3px 3px 0 0 var(--lime)}
.woocommerce-account .woocommerce-form .woocommerce-Button,
.woocommerce-account .woocommerce-Button.button{
  background:var(--lime)!important;color:var(--ink)!important;
  font-family:var(--f-display)!important;font-weight:800!important;
  border-radius:100px!important;padding:14px 28px!important;border:none!important;
  cursor:pointer!important;font-size:15px!important;
}

/* Tabela de pedidos */
.woocommerce-orders-table{width:100%;border-collapse:collapse;font-size:14px}
.woocommerce-orders-table th{font-family:var(--f-display);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:12px;border-bottom:2px solid var(--ink);color:var(--navy)}
.woocommerce-orders-table td{padding:14px 12px;border-bottom:1px solid rgba(20,23,42,.08)}
.woocommerce-orders-table .woocommerce-button{background:var(--ink);color:var(--lime);border-radius:100px;padding:6px 14px;font-size:12px;font-weight:700}

/* =========================================================
   PÁGINAS ESTÁTICAS (políticas, etc.)
   Exclui cart/checkout/account — têm layout próprio
   ========================================================= */
.page-template-default:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) .entry-content,
.single-page .entry-content{
  max-width:720px;margin:48px auto 80px;padding:0 28px;
}
.entry-content h2{font-family:var(--f-display);font-weight:800;font-size:22px;margin:32px 0 12px;color:var(--ink)}
.entry-content p,.entry-content li{font-size:16px;line-height:1.8;color:#3a3d52;margin-bottom:10px}
.entry-content ul,.entry-content ol{padding-left:24px;margin-bottom:16px}
.entry-content strong{color:var(--ink)}

/* =========================================================
   WRAPPER PARA PÁGINAS WOO (carrinho, checkout, minha conta)
   Usa body classes (mais confiável que is_woocommerce())
   ========================================================= */
main.woo-page{padding:48px 0 80px}
main.woo-page .entry-content{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;}

/* Garante largura máxima para cart/checkout via body class */
.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-account .entry-content{
  max-width:none!important;padding:0!important;margin:0!important;width:100%!important;
}

/* Remove max-width nos blocos WC */
.woocommerce-cart .wp-block-woocommerce-cart,
.woocommerce-checkout .wp-block-woocommerce-checkout,
main.woo-page .woocommerce,
main.woo-page .wc-block-cart,
main.woo-page .wc-block-checkout,
main.woo-page .wp-block-woocommerce-cart,
main.woo-page .wp-block-woocommerce-checkout{
  max-width:none!important;padding:0!important;width:100%!important;
}

/* Oculta descrição curta do produto nos itens do carrinho */
.wc-block-cart-item__product .wc-block-components-product-metadata__description,
.wc-block-cart-item__product .wc-block-components-product-metadata p,
.wc-block-cart-item__product .wc-block-components-product-metadata a:not(.wc-block-components-product-name){
  display:none!important;
}

/* =========================================================
   CARRINHO — Shortcode clássico (fallback)
   ========================================================= */
.woocommerce-cart-form{width:100%}

/* Layout 2 colunas: tabela + totais */
.woocommerce-cart .woocommerce{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:start}
@media(max-width:900px){.woocommerce-cart .woocommerce{grid-template-columns:1fr}}

/* Tabela de itens */
.woocommerce table.cart{width:100%;border-collapse:collapse;background:#fff;border:2px solid rgba(20,23,42,.1);border-radius:20px;overflow:hidden}
.woocommerce table.cart thead th{background:var(--navy);color:var(--lime);font-family:var(--f-display);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:14px 16px}
.woocommerce table.cart td.product-thumbnail img{border-radius:12px;width:72px;height:72px;object-fit:cover}
.woocommerce table.cart td.product-name a{font-family:var(--f-display);font-weight:700;font-size:15px;color:var(--ink)}
.woocommerce table.cart td.product-name a:hover{color:var(--navy)}
.woocommerce table.cart td.product-remove a{color:#8d92b0;font-size:22px;font-weight:700;transition:color .15s}
.woocommerce table.cart td.product-remove a:hover{color:var(--pop)}

/* Stepper de quantidade no carrinho */
.woocommerce .quantity input.qty{border:2px solid var(--ink);border-radius:10px;padding:10px 12px;font-family:var(--f-display);font-weight:800;font-size:15px;width:72px;text-align:center;background:#fff}

/* Cupom e botão atualizar */
.woocommerce .coupon{display:flex;gap:10px;flex-wrap:wrap}
.woocommerce .coupon input#coupon_code{border:2px solid var(--ink);border-radius:100px;padding:13px 20px;font-family:var(--f-body);font-size:14px;flex:1;min-width:140px}
.woocommerce .coupon input#coupon_code:focus{outline:none;box-shadow:3px 3px 0 0 var(--lime)}
.woocommerce .coupon .button,.woocommerce button[name="update_cart"]{background:var(--ink)!important;color:var(--lime)!important;border-radius:100px!important;padding:13px 22px!important;font-weight:700!important;font-size:14px!important;border:none!important;cursor:pointer!important}

/* Totais do carrinho */
.cart-collaterals{width:100%!important}
.cart_totals{background:#fff;border:2px solid rgba(20,23,42,.1);border-radius:20px;padding:28px;position:sticky;top:80px}
.cart_totals h2{font-family:var(--f-display);font-weight:800;font-size:20px;margin-bottom:20px;color:var(--ink)}
.cart_totals table{width:100%;border-collapse:collapse}
.cart_totals table th{font-weight:700;font-size:13px;color:var(--navy);padding:10px 0;border-bottom:1px solid rgba(20,23,42,.06);white-space:nowrap;padding-right:16px}
.cart_totals table td{padding:10px 0;border-bottom:1px solid rgba(20,23,42,.06)}
.cart_totals .order-total th,.cart_totals .order-total td{font-family:var(--f-display);font-weight:800;font-size:20px;border:none;padding-top:16px}
.cart_totals .order-total td .woocommerce-Price-amount{color:var(--navy)}
.wc-proceed-to-checkout{margin-top:20px}
.wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;background:var(--lime)!important;color:var(--ink)!important;font-family:var(--f-display)!important;font-weight:800!important;font-size:16px!important;text-transform:uppercase!important;letter-spacing:.06em!important;border-radius:100px!important;padding:18px 32px!important;transition:transform .15s,box-shadow .15s!important;}
.wc-proceed-to-checkout a.checkout-button:hover{transform:translateY(-2px)!important;box-shadow:0 8px 24px rgba(205,236,0,.4)!important}

/* =========================================================
   CHECKOUT CLAUDE DESIGN — Classic shortcode override
   Layout: .cj-checkout (flex) → __main 60% + __sidebar 40%
   Fiel ao design-reference.md (Checkout.html)
   ========================================================= */

/* Layout 2 colunas */
.cj-checkout{
  display:flex!important;flex-wrap:wrap!important;gap:40px!important;align-items:flex-start!important;
  width:100%!important;
}
@media(max-width:900px){
  .cj-checkout{flex-direction:column!important;}
}
/* Avisos/erros que o WC injeta dentro do form.checkout (flex) → linha cheia no topo,
   senão viram uma 3ª coluna e esmagam o layout (bug do "desconfigurou ao pagar") */
.cj-checkout > .woocommerce-NoticeGroup,
.cj-checkout > .woocommerce-error,
.cj-checkout > .woocommerce-message,
.cj-checkout > .woocommerce-info{
  flex:0 0 100%!important;width:100%!important;order:-1!important;margin:0!important;
}

/* Coluna esquerda: steps (60%) */
.cj-checkout__main{
  flex:3 1 0%!important;min-width:0!important;
  display:flex!important;flex-direction:column!important;gap:28px!important;
}

/* Coluna direita: summary navy (40%) */
.cj-checkout__sidebar{
  flex:2 1 0%!important;min-width:0!important;
  position:sticky!important;top:96px!important;
}

/* ── Card de step (co-block) ── */
.co-block{
  border:2.5px solid var(--ink)!important;
  border-radius:20px!important;
  padding:24px!important;
  background:#fff!important;
}

/* Cabeçalho do step */
.co-block__head{
  display:flex!important;align-items:center!important;gap:10px!important;
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:20px!important;text-transform:uppercase!important;
  color:var(--ink)!important;letter-spacing:-.01em!important;
  margin-bottom:20px!important;padding-bottom:14px!important;
  border-bottom:2px solid rgba(20,23,42,.08)!important;
}

/* Número circular */
.co-step-n{
  width:30px!important;height:30px!important;border-radius:50%!important;
  background:var(--ink)!important;color:var(--lime)!important;
  display:grid!important;place-items:center!important;
  font-size:14px!important;font-weight:800!important;font-family:var(--f-display)!important;
  flex-shrink:0!important;
}

/* ── Campos do formulário dentro dos cards ── */
.co-block .form-row{margin-bottom:14px!important;}
.co-block .form-row:last-child{margin-bottom:0!important;}
.co-block .form-row.form-row-first{
  float:left!important;width:calc(50% - 7px)!important;clear:left!important;
}
.co-block .form-row.form-row-last{
  float:right!important;width:calc(50% - 7px)!important;
}
.co-block .form-row.form-row-wide{
  float:none!important;clear:both!important;width:100%!important;
}
.co-block::after{content:"";display:table!important;clear:both!important;}

.co-block label{
  font-size:13px!important;font-weight:600!important;
  color:var(--indigo)!important;display:block!important;margin-bottom:6px!important;
}
.co-block input.input-text,
.co-block select,
.co-block textarea{
  border:2px solid var(--ink)!important;border-radius:12px!important;
  padding:13px 15px!important;font-family:var(--f-body)!important;
  font-size:15px!important;font-weight:500!important;
  background:var(--paper)!important;width:100%!important;box-sizing:border-box!important;
  color:var(--ink)!important;
}
.co-block input.input-text:focus,
.co-block select:focus{
  outline:none!important;box-shadow:3px 3px 0 0 var(--ink)!important;background:#fff!important;
}

/* ── Select2 (campo Estado é enhanced pelo WC) — match com o tema ── */
.co-block .select2-container{width:100%!important;}
.co-block .select2-container--default .select2-selection--single{
  border:2px solid var(--ink)!important;border-radius:12px!important;
  height:auto!important;min-height:50px!important;
  padding:12px 15px!important;background:var(--paper)!important;
  display:flex!important;align-items:center!important;
}
.co-block .select2-container--default .select2-selection--single .select2-selection__rendered{
  color:var(--ink)!important;padding:0!important;line-height:1.3!important;
  font-family:var(--f-body)!important;font-size:15px!important;font-weight:500!important;
}
.co-block .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:100%!important;top:0!important;right:12px!important;
}
.co-block .select2-container--default.select2-container--focus .select2-selection--single,
.co-block .select2-container--default.select2-container--open .select2-selection--single{
  box-shadow:3px 3px 0 0 var(--ink)!important;background:#fff!important;
}
/* Painel de opções do select2 */
.select2-dropdown{
  border:2px solid var(--ink)!important;border-radius:12px!important;overflow:hidden!important;
  font-family:var(--f-body)!important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted{
  background:var(--lime)!important;color:var(--ink)!important;
}
.select2-container--default .select2-search--dropdown .select2-search__field{
  border:2px solid var(--ink)!important;border-radius:8px!important;
}

/* ── Métodos de envio: choice cards ── */
.co-block .woocommerce-shipping-methods{
  list-style:none!important;padding:0!important;margin:0!important;
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;
}
@media(max-width:600px){
  .co-block .woocommerce-shipping-methods{grid-template-columns:1fr!important;}
}
.co-block .woocommerce-shipping-methods li{
  border:2.5px solid var(--ink)!important;border-radius:14px!important;
  padding:16px!important;background:#fff!important;
  cursor:pointer!important;transition:background .15s!important;margin:0!important;
}
.co-block .woocommerce-shipping-methods li:has(input:checked){background:var(--lime)!important;}
.co-block .woocommerce-shipping-methods li:hover:not(:has(input:checked)){background:var(--paper-2)!important;}
.co-block .woocommerce-shipping-methods li input[type="radio"]{accent-color:var(--ink);margin-right:8px;}
.co-block .woocommerce-shipping-methods li label{
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:16px!important;color:var(--ink)!important;
  cursor:pointer!important;margin:0!important;display:flex!important;
  flex-direction:column!important;gap:3px!important;
}
.co-block .woocommerce-shipping-methods li label .woocommerce-Price-amount{
  font-size:13px!important;font-weight:600!important;color:#3a3d52!important;
}

/* ── Métodos de pagamento: choice cards ── */
.co-block--payment #payment ul.payment_methods{
  list-style:none!important;padding:0!important;margin:0!important;
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;
}
@media(max-width:600px){
  .co-block--payment #payment ul.payment_methods{grid-template-columns:1fr!important;}
}
.co-block--payment #payment ul.payment_methods li{
  border:2.5px solid var(--ink)!important;border-radius:14px!important;
  padding:16px!important;background:#fff!important;
  cursor:pointer!important;transition:background .15s!important;margin:0!important;
  display:flex!important;flex-direction:column!important;gap:0!important;
}
.co-block--payment #payment ul.payment_methods li.active,
.co-block--payment #payment ul.payment_methods li:has(input:checked){background:var(--lime)!important;}
.co-block--payment #payment ul.payment_methods li:hover:not(.active){background:var(--paper-2)!important;}
/* Oculta só o radio seletor do método (não inputs do formulário do MP) */
.co-block--payment #payment ul.payment_methods li > input[name="payment_method"]{display:none!important;}
.co-block--payment #payment ul.payment_methods li label{
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:16px!important;color:var(--ink)!important;
  cursor:pointer!important;margin:0!important;display:block!important;
}
.co-block--payment #payment ul.payment_methods li label img{display:none!important;}
/* Descrição abaixo do nome do método */
.co-block--payment #payment ul.payment_methods li label + small,
.co-block--payment #payment ul.payment_methods li .about_paymethod{
  font-size:12.5px!important;color:#3a3d52!important;margin-top:4px!important;display:block!important;
}

/* Content box do método selecionado — block (flex quebrava o form do Mercado Pago) */
.co-block--payment #payment div.payment_box{
  display:block!important;
  margin-top:14px!important;padding:16px!important;
  background:var(--paper)!important;
  border:2px dashed var(--ink)!important;border-radius:14px!important;
  font-size:14px!important;color:#3a3d52!important;
  width:100%!important;box-sizing:border-box!important;
}
.co-block--payment #payment div.payment_box::before{display:none!important;}

/* ── Formulário do Mercado Pago (Cartão + Pix) dentro do payment_box ── */
.co-block--payment .payment_box .mp-checkout-container,
.co-block--payment .payment_box .mp-checkout-custom-container,
.co-block--payment .payment_box .mp-checkout-pix-container,
.co-block--payment .payment_box #mp-checkout-custom-root,
.co-block--payment .payment_box #mp-checkout-pix-root{
  width:100%!important;max-width:100%!important;margin:0!important;
}
/* Inputs nativos do MP (não-iframe) seguem o estilo do tema */
.co-block--payment .payment_box input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
.co-block--payment .payment_box select{
  border:2px solid var(--ink)!important;border-radius:10px!important;
  padding:11px 13px!important;font-family:var(--f-body)!important;font-size:14px!important;
  background:#fff!important;color:var(--ink)!important;width:100%!important;box-sizing:border-box!important;
}
/* Labels do MP */
.co-block--payment .payment_box label{
  font-size:12.5px!important;font-weight:600!important;color:var(--indigo)!important;margin-bottom:5px!important;
}
/* Respeita as classes de visibilidade do MP (senão o spinner reserva ~288px vazios) */
.co-block--payment .payment_box .mp-display-none,
.co-block--payment .payment_box .mp-hidden{display:none!important;}
/* Spinner do cartão (quando visível): centraliza */
.co-block--payment .payment_box .mp-checkout-custom-load:not(.mp-display-none):not(.mp-hidden){
  display:flex!important;justify-content:center!important;padding:24px 0!important;
}
/* Botão "carteira Mercado Pago" (upsell de login MP) — esconde; usamos o CTA do sidebar */
.co-block--payment .payment_box .mp-wallet-button-container-wrapper{display:none!important;}
/* Pix: imagem do template menor e centralizada */
.co-block--payment .payment_box .mp-pix-template-image img,
.co-block--payment .payment_box pix-template img{max-width:120px!important;height:auto!important;}
.co-block--payment .payment_box .mp-pix-template-title{
  font-family:var(--f-display)!important;font-weight:800!important;font-size:15px!important;color:var(--ink)!important;
}

/* Botão submit REAL (oculto visualmente, accionado pelo CTA do sidebar) */
.cj-hidden-submit,
.woocommerce-checkout #place_order.cj-hidden-submit,
.co-block--payment #place_order.cj-hidden-submit{
  position:absolute!important;
  width:1px!important;height:1px!important;overflow:hidden!important;
  opacity:0!important;pointer-events:none!important;
}
/* Caso o filtro não capture, esconde diretamente */
.co-block--payment .place-order{
  position:absolute!important;width:1px!important;height:1px!important;
  overflow:hidden!important;opacity:0!important;pointer-events:none!important;
}

/* Terms & privacy: oculta */
.woocommerce-terms-and-conditions-wrapper{display:none!important;}
.woocommerce-privacy-policy-text{display:none!important;}

/* Campos ocultos (país para cálculo Melhor Envio — não aparece visualmente) */
.form-row.cj-field-hidden{display:none!important;}

/* Dica abaixo do título do step */
.cj-block-hint{
  font-size:13.5px!important;color:#6b6f86!important;
  margin:-8px 0 18px!important;font-weight:500!important;
}
/* Wrapper de campos: limpa floats do WC */
.cj-fields::after{content:""!important;display:table!important;clear:both!important;}

/* ── Avisos WooCommerce (notices) — estilo do tema ── */
.woocommerce-notices-wrapper:empty{display:none!important;}
.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
  list-style:none!important;margin:0 0 18px!important;
  padding:14px 18px!important;border-radius:14px!important;
  border:2px solid var(--ink)!important;background:#fff!important;
  font-family:var(--f-body)!important;font-size:14px!important;font-weight:600!important;
  color:var(--ink)!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:14px!important;flex-wrap:wrap!important;box-shadow:none!important;
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before{display:none!important;}
.woocommerce-message{background:#eaf7c8!important;border-color:var(--ink)!important;}
.woocommerce-info{background:var(--paper-2)!important;border-color:rgba(20,23,42,.25)!important;}
.woocommerce-error{background:#ffe0d4!important;border-color:#c0392b!important;color:#7a1d10!important;}
.woocommerce-error li{list-style:none!important;margin:0!important;}
/* Botão/link dentro do aviso (ex.: "Ver carrinho") */
.woocommerce-message a.button,
.woocommerce-info a.button{
  background:var(--ink)!important;color:var(--lime)!important;
  border:none!important;border-radius:100px!important;
  padding:8px 16px!important;font-size:13px!important;font-weight:700!important;
  text-transform:none!important;white-space:nowrap!important;flex-shrink:0!important;
}
/* Toggle de cupom no checkout */
.woocommerce-form-coupon-toggle .woocommerce-info{
  background:var(--paper-2)!important;
}
/* No checkout, esconde o aviso "produto adicionado ao carrinho" (tem botão "Ver carrinho").
   Mantém mensagens de cupom aplicado (sem botão) e erros. */
body.woocommerce-checkout .woocommerce-message:has(a.button){display:none!important;}

/* ── Summary navy (co-summary) ── */
.co-summary{
  background:var(--navy)!important;color:#fff!important;
  border-radius:26px!important;padding:28px!important;
  overflow:hidden!important;position:relative!important;
}
.co-summary::before{
  content:""!important;position:absolute!important;
  left:0!important;right:0!important;top:0!important;height:8px!important;
  background:repeating-linear-gradient(90deg,var(--lime) 0 16px,transparent 16px 22px)!important;
  pointer-events:none!important;
}

/* Título "SEU PEDIDO" */
.co-summary__title{
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:20px!important;color:var(--lime)!important;
  text-transform:uppercase!important;
  padding-top:8px!important;margin-bottom:18px!important;
  background:none!important;border:none!important;
}

/* Linhas de itens */
.co-summary__lines{margin-bottom:0!important;}
.co-summary__line{
  display:flex!important;justify-content:space-between!important;gap:12px!important;
  padding:10px 0!important;border-bottom:1px solid rgba(255,255,255,.12)!important;
  font-size:15px!important;color:#cfd2e6!important;
}
.co-summary__line-label{flex:1!important;min-width:0!important;}
.co-summary__line-value{
  font-family:var(--f-display)!important;font-weight:700!important;
  color:#fff!important;white-space:nowrap!important;
  font-size:15px!important;
}
.co-summary__line--shipping .co-summary__line-label{color:#bfc3da!important;}

/* Total destaque */
.co-summary__total{
  display:flex!important;justify-content:space-between!important;
  align-items:baseline!important;margin-top:18px!important;padding-top:14px!important;
}
.co-summary__total-label{font-size:14px!important;color:#bfc3da!important;}
.co-summary__total-value,
.co-summary__total-value .woocommerce-Price-amount{
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:32px!important;color:var(--lime)!important;
}

/* CTA "CONFIRMAR PEDIDO" */
.cj-confirm-btn{
  display:block!important;width:100%!important;margin-top:22px!important;
  background:var(--lime)!important;color:var(--ink)!important;
  font-family:var(--f-display)!important;font-weight:800!important;
  font-size:17px!important;text-transform:uppercase!important;letter-spacing:.04em!important;
  border-radius:100px!important;padding:18px 32px!important;
  border:none!important;cursor:pointer!important;text-align:center!important;
  transition:transform .15s,box-shadow .15s!important;
}
.cj-confirm-btn:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 8px 24px rgba(205,236,0,.4)!important;
}

/* Link "← Voltar à sacola" */
.cj-back-btn{
  display:block!important;text-align:center!important;margin-top:14px!important;
  color:#bfc3da!important;font-size:13px!important;font-weight:600!important;
  background:none!important;border:none!important;cursor:pointer!important;
  width:100%!important;padding:0!important;
}
.cj-back-btn:hover{color:var(--lime)!important;}

/* =========================================================
   CALCULADORA DE FRETE NA SACOLA (.cj-frete)
   Widget custom ligado ao data store wc/store/cart (assets/js/cart-shipping.js).
   Vive dentro da sidebar navy do carrinho em blocos.
   ========================================================= */
.cj-frete{
  margin:16px 0 4px!important;
  padding-top:16px!important;
  border-top:1.5px solid rgba(255,255,255,.15)!important;
}
.cj-frete__title{
  font-family:var(--f-body)!important;font-weight:700!important;
  font-size:11px!important;text-transform:uppercase!important;
  letter-spacing:.16em!important;color:rgba(255,255,255,.6)!important;
  margin-bottom:10px!important;
}
.cj-frete__row{display:flex!important;gap:8px!important;}
.cj-frete__cep{
  flex:1!important;min-width:0!important;
  background:rgba(255,255,255,.12)!important;
  border:1.5px solid rgba(255,255,255,.3)!important;
  border-radius:100px!important;color:#fff!important;
  padding:11px 18px!important;font-size:14px!important;
  font-family:var(--f-body)!important;letter-spacing:.04em!important;
}
.cj-frete__cep::placeholder{color:rgba(255,255,255,.45)!important;}
.cj-frete__cep:focus{outline:none!important;border-color:var(--lime)!important;background:rgba(255,255,255,.18)!important;}
.cj-frete__btn{
  flex:0 0 auto!important;
  background:var(--lime)!important;color:var(--ink)!important;
  border:none!important;border-radius:100px!important;
  font-weight:800!important;cursor:pointer!important;
  padding:11px 22px!important;font-size:14px!important;
  font-family:var(--f-display)!important;letter-spacing:.02em!important;
  transition:filter .15s!important;
}
.cj-frete__btn:hover{filter:brightness(1.05)!important;}
.cj-frete__msg{
  font-size:12.5px!important;color:rgba(255,255,255,.7)!important;
  margin-top:8px!important;min-height:0!important;
}
.cj-frete__msg.is-err{color:#ffd2c2!important;}
.cj-frete__rates{
  display:flex!important;flex-direction:column!important;gap:8px!important;
  margin-top:12px!important;
}
.cj-frete__opt{
  display:flex!important;align-items:center!important;gap:10px!important;
  padding:11px 14px!important;cursor:pointer!important;
  background:rgba(255,255,255,.08)!important;
  border:1.5px solid rgba(255,255,255,.18)!important;
  border-radius:12px!important;transition:background .15s,border-color .15s!important;
}
.cj-frete__opt:hover{background:rgba(255,255,255,.15)!important;border-color:rgba(255,255,255,.4)!important;}
.cj-frete__opt.is-sel{background:var(--lime)!important;border-color:var(--lime)!important;}
.cj-frete__opt input[type="radio"]{accent-color:var(--ink)!important;width:16px!important;height:16px!important;flex-shrink:0!important;margin:0!important;}
.cj-frete__opt-info{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;width:100%!important;min-width:0!important;}
.cj-frete__opt-name{font-size:13px!important;font-weight:600!important;color:#fff!important;line-height:1.3!important;}
.cj-frete__opt-price{font-family:var(--f-display)!important;font-weight:800!important;font-size:14px!important;color:var(--lime)!important;white-space:nowrap!important;flex-shrink:0!important;}
.cj-frete__opt.is-sel .cj-frete__opt-name,
.cj-frete__opt.is-sel .cj-frete__opt-price{color:var(--ink)!important;}

/* =========================================================
   CHECKOUT — Sidebar: força texto branco em todos os elementos
   ========================================================= */

/* Todos os textos diretos dentro da sidebar checkout */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__full-price,
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__name,
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__quantity-badge,
.wc-block-checkout__sidebar .wc-block-components-order-summary__toggle-text,
.wc-block-checkout__sidebar .wc-block-components-totals-coupon__description,
.wc-block-checkout__sidebar .wc-block-components-totals-discount__coupon-list-item,
.wc-block-checkout__sidebar p,
.wc-block-checkout__sidebar span:not(.wc-block-components-totals-footer-item .wc-block-components-totals-item__value){
  color:#cfd2e6!important;
}

/* Preços dos itens no resumo */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__individual-price,
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__full-price .woocommerce-Price-amount{
  color:#fff!important;font-family:var(--f-display)!important;font-weight:700!important;
}

/* Link "Adicionar cupons" */
.wc-block-checkout__sidebar .wc-block-components-totals-coupon__button-toggle{
  color:var(--lime)!important;font-weight:700!important;
  background:none!important;border:none!important;cursor:pointer!important;
  font-size:14px!important;text-decoration:underline!important;
}

/* Imagens dos itens no resumo: menor e arredondado */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__image{
  border-radius:12px 12px 4px 4px!important;
  overflow:hidden!important;border:1.5px solid rgba(255,255,255,.2)!important;
}

/* =========================================================
   CHECKOUT — Cabeçalhos das seções com linha separadora
   ========================================================= */
.wc-block-components-checkout-step__heading{
  padding-bottom:14px!important;
  border-bottom:2px solid rgba(20,23,42,.08)!important;
  margin-bottom:20px!important;
}
.wp-block-woocommerce-checkout-contact-information-block h2,
.wp-block-woocommerce-checkout-billing-address-block h2,
.wp-block-woocommerce-checkout-shipping-address-block h2,
.wp-block-woocommerce-checkout-payment-block h2{
  padding-bottom:14px!important;
  border-bottom:2px solid rgba(20,23,42,.08)!important;
  margin-bottom:20px!important;
}

/* =========================================================
   PEDIDO RECEBIDO (thank you) — Casa Janela
   ========================================================= */
.cj-thankyou{
  max-width:760px;margin:0 auto;padding:8px 0 64px;text-align:center;
}
.cj-ty__check{
  width:92px;height:92px;border-radius:50%;
  background:var(--lime);border:3px solid var(--ink);
  color:var(--ink);display:flex;align-items:center;justify-content:center;
  margin:0 auto 26px;box-shadow:6px 6px 0 0 var(--ink);
}
.cj-ty__kicker{
  font-family:var(--f-body);font-weight:600;text-transform:uppercase;
  letter-spacing:.2em;font-size:12px;color:var(--navy);
}
.cj-ty__title{
  font-family:var(--f-display);font-weight:800;
  font-size:clamp(40px,7vw,66px);line-height:.92;color:var(--ink);
  text-transform:uppercase;letter-spacing:-.02em;margin:10px 0 18px;
}
.cj-ty__badge{
  display:inline-block;background:var(--ink);color:var(--lime);
  font-family:var(--f-body);font-weight:700;font-size:14px;letter-spacing:.08em;
  padding:9px 22px;border-radius:100px;
}
.cj-ty__msg{
  font-family:var(--f-body);font-size:16px;line-height:1.65;color:#4a4f6a;
  max-width:480px;margin:22px auto 0;
}
.cj-ty__spark{color:var(--lime);-webkit-text-stroke:.4px var(--ink);}

/* Botões */
.cj-ty__actions{
  display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:34px 0 8px;
}
.cj-ty__btn{
  display:inline-block;font-family:var(--f-display);font-weight:800;font-size:16px;
  padding:16px 34px;border-radius:100px;transition:transform .15s,box-shadow .15s,background .15s;
}
.cj-ty__btn--lime{background:var(--lime);color:var(--ink);}
.cj-ty__btn--lime:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(205,236,0,.45);}
.cj-ty__btn--ghost{background:transparent;color:var(--ink);border:2.5px solid var(--ink);}
.cj-ty__btn--ghost:hover{background:var(--ink);color:#fff;}

/* ── Card do Pix (QR do Mercado Pago restyled) ── */
.cj-ty__pix{
  position:relative;overflow:hidden;
  background:#fff;border:2.5px solid var(--ink);border-radius:24px;
  padding:30px 26px 26px;margin:34px auto 6px;max-width:560px;
}
.cj-ty__pix::before{
  content:"";position:absolute;left:0;right:0;top:0;height:8px;
  background:repeating-linear-gradient(90deg,var(--lime) 0 16px,transparent 16px 22px);
}
/* Reset do markup do Mercado Pago dentro do card */
.cj-ty__pix .mp-details-pix-container,
.cj-ty__pix .mp-checkout-pix-container,
.cj-ty__pix [class*="mp-row"],
.cj-ty__pix [class*="mp-col"]{
  width:100%!important;max-width:100%!important;margin:0 auto!important;
  float:none!important;padding:0!important;text-align:center!important;display:block!important;
}
.cj-ty__pix .mp-details-pix-title,
.cj-ty__pix .mp-details-pix-qr-title{
  font-family:var(--f-display)!important;font-weight:800!important;font-size:18px!important;
  color:var(--ink)!important;margin:0 0 4px!important;text-transform:none!important;
}
.cj-ty__pix .mp-details-pix-qr-subtitle,
.cj-ty__pix .mp-details-pix-qr-description{
  font-family:var(--f-body)!important;color:#6b6f86!important;font-size:13px!important;margin:0 0 14px!important;
}
.cj-ty__pix .mp-details-pix-amount,
.cj-ty__pix .mp-details-pix-qr-value{
  font-family:var(--f-display)!important;font-weight:800!important;font-size:26px!important;
  color:var(--navy)!important;margin:6px 0 12px!important;
}
.cj-ty__pix .mp-details-pix-qr-img,
.cj-ty__pix .mp-details-pix-img{
  display:flex!important;justify-content:center!important;margin:0 auto 14px!important;
}
.cj-ty__pix .mp-details-pix-qr-img img,
.cj-ty__pix .mp-details-pix-img img,
.cj-ty__pix img[src*="qr"]{
  width:190px!important;height:auto!important;
  border:2px solid var(--ink)!important;border-radius:16px!important;
  padding:8px!important;background:#fff!important;
}
/* Passos "Como pagar com Pix" */
.cj-ty__pix .mp-steps-congrats{list-style:none!important;margin:12px 0 0!important;padding:0!important;display:flex!important;flex-direction:column!important;gap:12px!important}
.cj-ty__pix .mp-details-list{display:flex!important;align-items:center!important;gap:14px!important;text-align:left!important}
/* Número do passo: círculo ink/lime — NÃO herda estilo de input */
.cj-ty__pix .mp-details-list .mp-details-pix-number-p{
  width:34px!important;height:34px!important;min-width:34px!important;flex-shrink:0!important;
  border-radius:50%!important;background:var(--ink)!important;color:var(--lime)!important;
  font-family:var(--f-display)!important;font-weight:800!important;font-size:15px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;margin:0!important;border:none!important;word-break:normal!important;
}
.cj-ty__pix .mp-details-list-description{
  font-family:var(--f-body)!important;font-size:14px!important;
  color:var(--ink)!important;margin:0!important;flex:1!important;line-height:1.45!important;
}
/* Código copia-e-cola — só input/textarea, não o número do passo */
.cj-ty__pix textarea,
.cj-ty__pix input[type="text"],
.cj-ty__pix .mp-qr-input{
  font-family:'Space Grotesk',monospace!important;font-size:11px!important;
  color:#4a4f6a!important;background:var(--paper)!important;
  border:2px solid rgba(20,23,42,.15)!important;border-radius:12px!important;
  padding:12px 14px!important;word-break:break-all!important;
  width:100%!important;box-sizing:border-box!important;margin:8px 0!important;line-height:1.5!important;
}
/* Botão copiar */
.cj-ty__pix .mp-details-pix-button,
.cj-ty__pix button{
  background:var(--lime)!important;color:var(--ink)!important;
  font-family:var(--f-display)!important;font-weight:800!important;font-size:15px!important;
  border:none!important;border-radius:100px!important;padding:13px 26px!important;
  cursor:pointer!important;margin-top:6px!important;width:auto!important;display:inline-block!important;
}
.cj-ty__pix .mp-details-pix-button:hover,
.cj-ty__pix button:hover{background:var(--lime-deep)!important;}
/* Esconde "como pagar com pix" passos duplicados e logos extras do MP, se houver */
.cj-ty__pix .mp-checkout-pix-test-mode{font-size:11px!important;color:#a00!important;}

/* ── Resumo do pedido ── */
.cj-ty__summary{
  text-align:left;max-width:520px;margin:40px auto 0;
  background:#fff;border:2px solid rgba(20,23,42,.12);border-radius:20px;padding:24px 26px;
}
.cj-ty__sum-head{
  display:flex;justify-content:space-between;gap:12px;
  font-family:var(--f-body);font-size:12px;font-weight:600;letter-spacing:.05em;
  text-transform:uppercase;color:#8b8fa3;padding-bottom:14px;margin-bottom:6px;
  border-bottom:1px solid rgba(20,23,42,.08);
}
.cj-ty__line{
  display:flex;justify-content:space-between;gap:12px;padding:9px 0;
  font-size:15px;color:var(--ink);
}
.cj-ty__line-label{flex:1;min-width:0;}
.cj-ty__line-value{font-family:var(--f-display);font-weight:700;white-space:nowrap;}
.cj-ty__line--muted{color:#6b6f86;border-top:1px solid rgba(20,23,42,.06);}
.cj-ty__total{
  display:flex;justify-content:space-between;align-items:baseline;
  margin-top:8px;padding-top:14px;border-top:2px solid var(--ink);
}
.cj-ty__total span{font-size:14px;color:#6b6f86;}
.cj-ty__total strong{font-family:var(--f-display);font-weight:800;font-size:26px;color:var(--navy);}
.cj-ty__ship{margin-top:20px;padding-top:18px;border-top:1px solid rgba(20,23,42,.08);}
.cj-ty__ship-label{
  display:block;font-family:var(--f-body);font-size:11px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:#8b8fa3;margin-bottom:6px;
}
.cj-ty__ship address{font-style:normal;font-size:14px;line-height:1.6;color:var(--ink);}

/* ══ PAGINAÇÃO (archive, taxonomy, vitrine) ════════════════ */
/* ul.page-numbers e nav: reset — seletores específicos só em li > .page-numbers */
.woocommerce-pagination,
.navigation.pagination{margin-top:52px;text-align:center;background:none}
.woocommerce-pagination ul.page-numbers,
.navigation.pagination .nav-links{list-style:none;margin:0 auto;padding:0;background:none;display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;width:auto}
.woocommerce-pagination ul.page-numbers li{list-style:none;margin:0;padding:0;background:none}
/* Estilo dos itens individuais: li > a/span com .page-numbers */
.woocommerce-pagination ul.page-numbers li .page-numbers,
.navigation.pagination .nav-links a.page-numbers,
.navigation.pagination .nav-links span.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;border:2px solid var(--ink);border-radius:100px;font-family:var(--f-display);font-weight:700;font-size:15px;color:var(--ink);text-decoration:none;transition:all .15s ease;background:none}
.woocommerce-pagination ul.page-numbers li a.page-numbers:hover,
.navigation.pagination .nav-links a.page-numbers:hover{background:var(--ink);color:var(--lime)}
.woocommerce-pagination ul.page-numbers li .page-numbers.current,
.navigation.pagination .nav-links .page-numbers.current{background:var(--lime);border-color:var(--ink);color:var(--ink)}
.woocommerce-pagination ul.page-numbers li .page-numbers.dots,
.navigation.pagination .nav-links .page-numbers.dots{border:none;background:none;min-width:auto;letter-spacing:.1em}
.woocommerce-pagination ul.page-numbers li a.page-numbers.next,
.woocommerce-pagination ul.page-numbers li a.page-numbers.prev,
.navigation.pagination .nav-links a.page-numbers.next,
.navigation.pagination .nav-links a.page-numbers.prev{font-size:18px;font-weight:800}

/* ══ ARTIST HERO (taxonomy-artista.php) ════════════════════ */
.artist-hero{background:var(--navy);color:#fff;overflow:hidden}
.artist-hero__arcade{display:flex;width:100%;height:18px}
.artist-hero__arcade i{flex:1;border-radius:0 0 999px 999px;margin:0 3px}
.artist-hero__inner{display:flex;gap:48px;align-items:center;padding:52px 0 60px}
.artist-hero__avatar{width:148px;height:148px;flex-shrink:0;border-radius:50%;border:4px solid var(--lime);overflow:hidden;display:grid;place-items:center;font-family:var(--f-display);font-weight:800;font-size:56px;color:var(--ink)}
.artist-hero__avatar img{width:100%;height:100%;object-fit:cover}
.artist-hero__meta{flex:1;min-width:0}
.artist-hero__kicker{display:inline-flex;align-items:center;gap:10px;border:2px solid var(--lime);color:var(--lime);font-size:11px;border-radius:100px;padding:8px 16px;margin-bottom:22px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.artist-hero__name{font-family:var(--f-display);font-weight:800;font-size:clamp(40px,6vw,88px);line-height:.88;letter-spacing:-.03em;text-transform:uppercase;color:#fff}
.artist-hero__bio{max-width:540px;margin-top:22px;font-size:clamp(15px,1.4vw,18px);line-height:1.55;color:#cfd2e6}
.artist-hero__cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.artist-hero__count{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.2);border-radius:100px;padding:7px 16px;font-size:13px;font-weight:600;color:#dfe2f2;margin-top:20px}
@media(max-width:700px){
  .artist-hero__inner{flex-direction:column;align-items:flex-start;gap:28px;padding:36px 0 44px}
  .artist-hero__avatar{width:100px;height:100px;font-size:40px}
}
.cj-ty__ship-phone{display:block;margin-top:4px;font-size:14px;color:#6b6f86;}
