/* ByThomas Commerce Core 1.24.1 — legal, privacy and cookie pages */
.btc-legal-page{--legal-paper:#fbf8f5;--legal-surface:#f4ece7;--legal-line:#e5d9d2;--legal-ink:#1d1715;--legal-muted:#736761;--legal-accent:#8e6d60;color:var(--legal-ink);background:var(--legal-paper)}
.btc-legal-page *{box-sizing:border-box;min-width:0}
.btc-legal-hero{padding:68px 0 58px;background:linear-gradient(180deg,#f3e8e1 0%,#f8f2ee 100%);border-bottom:1px solid var(--legal-line)}
.btc-legal-hero__inner{max-width:1040px}
.btc-legal-eyebrow{display:block;margin:0 0 18px;color:#896c61;font:750 12px/1.2 var(--btc-sans);letter-spacing:.16em;text-transform:uppercase}
.btc-legal-hero h1{max-width:820px;margin:0;color:var(--legal-ink);font:500 clamp(46px,5.7vw,76px)/.96 var(--btc-serif);letter-spacing:-.045em;text-wrap:balance}
.btc-legal-hero p{max-width:780px;margin:30px 0 0;color:#675b55;font:400 17px/1.72 var(--btc-sans);text-wrap:pretty}
.btc-legal-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:28px;padding-top:22px;border-top:1px solid rgba(99,74,64,.16);color:#7d6c64;font:600 13px/1.4 var(--btc-sans)}
.btc-legal-meta a{color:var(--legal-ink)!important;text-decoration:none!important;border-bottom:1px solid #ad9185}
.btc-legal-section{padding:58px 0 86px}
.btc-legal-layout{display:grid;grid-template-columns:minmax(210px,250px) minmax(0,1fr);gap:60px;align-items:start}
.btc-legal-nav{position:sticky;top:110px;display:grid;gap:4px;padding:20px 0;border-top:1px solid var(--legal-line);border-bottom:1px solid var(--legal-line)}
.btc-legal-nav strong{margin:0 0 8px;color:#7c675e;font:750 11px/1.2 var(--btc-sans);letter-spacing:.14em;text-transform:uppercase}
.btc-legal-nav a{display:flex;align-items:center;min-height:38px;padding:4px 0;color:#5c504a!important;text-decoration:none!important;font:620 14px/1.4 var(--btc-sans);transition:color .2s ease,transform .2s ease}
.btc-legal-nav a.is-active{color:var(--legal-ink)!important;font-weight:760}
.btc-legal-nav a.is-active::before{content:"";width:6px;height:6px;margin-right:9px;border-radius:50%;background:var(--legal-accent);flex:0 0 6px}
.btc-legal-nav a:focus-visible,.btc-legal-reference-links a:focus-visible,.btc-legal-contact a:focus-visible{outline:2px solid #8e6d60;outline-offset:4px;border-radius:4px}
.btc-legal-content{display:grid;gap:20px}
.btc-legal-block{scroll-margin-top:clamp(110px,10vw,145px);padding:34px 36px;border:1px solid var(--legal-line);border-radius:18px;background:#fffdfa}
.btc-legal-index{display:grid;place-items:center;width:34px;height:34px;margin:0 0 24px;border:1px solid #d8c5ba;border-radius:50%;color:#84695f;font:700 11px/1 var(--btc-sans)}
.btc-legal-block h2,.btc-legal-contact h2{margin:0 0 22px;color:var(--legal-ink);font:500 clamp(28px,3vw,38px)/1.06 var(--btc-serif);letter-spacing:-.035em;text-wrap:balance}
.btc-legal-block h3{margin:0 0 9px;color:var(--legal-ink);font:700 15px/1.35 var(--btc-sans)}
.btc-legal-block p,.btc-legal-block li,.btc-legal-contact p,.btc-legal-identity{color:var(--legal-muted);font:400 15px/1.78 var(--btc-sans);text-wrap:pretty}
.btc-legal-block p{margin:0}
.btc-legal-update-note{margin-top:22px!important;padding-top:20px;border-top:1px solid var(--legal-line)}
.btc-legal-block p+p,.btc-legal-block p+.btc-legal-list,.btc-legal-list+p,.btc-legal-block p+.btc-legal-note,.btc-legal-note+p{margin-top:18px}
.btc-legal-block a{color:#4b3630!important;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.btc-legal-list{display:grid;gap:11px;margin:0;padding-left:20px}
.btc-legal-list li::marker{color:#96766a}
.btc-legal-note{margin-top:20px;padding:17px 18px;border-left:3px solid #9d7b6f;border-radius:0 10px 10px 0;background:var(--legal-surface);color:#61524b;font:500 14px/1.65 var(--btc-sans)}
.btc-legal-note strong{color:var(--legal-ink)}
.btc-legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.btc-legal-grid>div{padding:20px;border:1px solid #eaded7;border-radius:13px;background:#fdf9f6}
.btc-legal-grid p{font-size:14px;line-height:1.65}
.btc-legal-rows{display:grid;margin-top:2px;border-top:1px solid var(--legal-line)}
.btc-legal-rows>div{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:24px;padding:18px 0;border-bottom:1px solid var(--legal-line)}
.btc-legal-rows strong{color:#362a26;font:700 14px/1.5 var(--btc-sans)}
.btc-legal-rows span{color:var(--legal-muted);font:400 14px/1.65 var(--btc-sans)}
.btc-legal-contact{margin-top:22px;padding:26px;border-radius:14px;background:#211916;color:#fff}
.btc-legal-contact .btc-legal-eyebrow{color:#cdb8ad}
.btc-legal-contact h2{color:#fff}
.btc-legal-contact p{color:#d7cac4}
.btc-legal-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:22px 0 0;border-top:1px solid rgba(255,255,255,.14)}
.btc-legal-identity>div{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.btc-legal-identity>div:nth-child(odd){padding-right:18px}
.btc-legal-identity>div:nth-child(even){padding-left:18px;border-left:1px solid rgba(255,255,255,.14)}
.btc-legal-identity dt{margin:0 0 5px;color:#bfa99f;font:700 11px/1.3 var(--btc-sans);letter-spacing:.08em;text-transform:uppercase}
.btc-legal-identity dd{margin:0;color:#fff;font:550 14px/1.55 var(--btc-sans);overflow-wrap:anywhere}
.btc-legal-identity a{color:#fff!important;text-decoration:none!important;border-bottom:1px solid rgba(255,255,255,.45)}
.btc-legal-contact__actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:22px}
.btc-legal-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid rgba(255,255,255,.38);border-radius:999px;color:#fff!important;text-decoration:none!important;font:700 13px/1 var(--btc-sans)}
.btc-legal-btn--primary{background:#fff!important;color:#211916!important;border-color:#fff!important}
.btc-legal-block--references{background:#f5ede8}
.btc-legal-reference-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.btc-legal-reference-links a{display:inline-flex;align-items:center;min-height:40px;padding:0 13px;border:1px solid #d9c7bd;border-radius:999px;color:#4b3932!important;background:#fffaf7;text-decoration:none!important;font:650 12.5px/1 var(--btc-sans)}
.btc-cookie-list{display:grid;gap:10px;margin-top:20px}
.btc-cookie-list>div{display:grid;grid-template-columns:minmax(190px,.8fr) 100px minmax(0,1.6fr);align-items:center;gap:16px;padding:16px 18px;border:1px solid var(--legal-line);border-radius:12px;background:#fdf9f6}
.btc-cookie-list code{color:#332722;font:650 13px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-wrap:anywhere}
.btc-cookie-list span{color:#876e64;font:700 12px/1.4 var(--btc-sans)}
.btc-cookie-list p{font-size:13.5px;line-height:1.6}

@media(hover:hover) and (pointer:fine){
  .btc-legal-nav a:hover,.btc-legal-meta a:hover{color:#8e6d60!important}
  .btc-legal-reference-links a:hover{transform:translateY(-1px);border-color:#bda297;background:#fff}
  .btc-legal-btn:hover{transform:translateY(-1px)}
}
@media(max-width:1024px){
  .btc-legal-hero{padding:54px 0 48px}
  .btc-legal-section{padding:46px 0 70px}
  .btc-legal-layout{grid-template-columns:1fr;gap:26px}
  .btc-legal-nav{position:relative;top:auto;display:flex;overflow-x:auto;gap:8px;padding:0 0 12px;border-top:0;scrollbar-width:none}
  .btc-legal-nav::-webkit-scrollbar{display:none}
  .btc-legal-nav strong{display:none}
  .btc-legal-nav a{flex:0 0 auto;min-height:42px;padding:0 14px;border:1px solid var(--legal-line);border-radius:999px;background:#fffdfa}
  .btc-legal-nav a.is-active{background:#211916;color:#fff!important;border-color:#211916}
  .btc-legal-nav a.is-active::before{display:none}
}
@media(max-width:680px){
  .btc-legal-hero{padding:42px 0 38px;text-align:left}
  .btc-legal-hero h1{font-size:clamp(38px,11vw,50px);line-height:.98}
  .btc-legal-hero p{margin-top:24px;font-size:15.5px;line-height:1.68}
  .btc-legal-meta{align-items:flex-start;flex-direction:column;gap:10px;margin-top:23px;padding-top:18px}
  .btc-legal-section{padding:30px 0 52px}
  .btc-legal-layout{gap:18px}
  .btc-legal-content{gap:14px}
  .btc-legal-block{padding:24px 18px;border-radius:14px}
  .btc-legal-index{margin-bottom:18px}
  .btc-legal-block h2,.btc-legal-contact h2{margin-bottom:18px;font-size:29px}
  .btc-legal-block p,.btc-legal-block li,.btc-legal-contact p{font-size:14.5px;line-height:1.72}
  .btc-legal-grid{grid-template-columns:1fr}
  .btc-legal-grid>div{padding:17px}
  .btc-legal-rows>div{grid-template-columns:1fr;gap:5px;padding:16px 0}
  .btc-legal-contact{padding:21px 18px}
  .btc-legal-identity{grid-template-columns:1fr}
  .btc-legal-identity>div:nth-child(odd),.btc-legal-identity>div:nth-child(even){padding:14px 0;border-left:0}
  .btc-legal-contact__actions{display:grid;grid-template-columns:1fr}
  .btc-legal-btn{width:100%}
  .btc-cookie-list>div{grid-template-columns:1fr;gap:6px;padding:15px}
}


/* =========================================================
   ByThomas Commerce Core 1.24.1 — legal page contrast + wrapping fix
   ========================================================= */
/* Let desktop descriptions use the available editorial width instead of
   wrapping early because of the old 780px cap / pretty wrapping. */
.btc-legal-hero p{
  max-width:1040px;
  text-wrap:wrap;
}
.btc-legal-contact>div:first-child p{
  max-width:960px;
  text-wrap:wrap;
}

/* Legal CTAs need explicit state ownership. Generic theme/link states must not
   turn the WhatsApp action dark against the espresso card. */
.btc-legal-btn{
  transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease;
}
body.btc-core-active .btc-legal-contact a.btc-legal-btn--whatsapp,
body.btc-core-active .btc-legal-contact a.btc-legal-btn--whatsapp:link,
body.btc-core-active .btc-legal-contact a.btc-legal-btn--whatsapp:visited,
body.btc-core-active .btc-legal-contact a.btc-legal-btn--whatsapp:active,
body.btc-core-active .btc-legal-contact a.btc-legal-btn--whatsapp:focus{
  display:inline-flex;
  align-items:center;
  gap:9px;
  border-color:#0f7d43!important;
  background:#0f7d43!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  box-shadow:0 10px 24px rgba(5,72,36,.24);
}
body.btc-core-active .btc-legal-contact a.btc-legal-btn--whatsapp::before{
  content:"";
  width:17px;
  height:17px;
  flex:0 0 17px;
  background:#fff!important;
  -webkit-mask:url('../icons/whatsapp-figma.svg') center/contain no-repeat;
  mask:url('../icons/whatsapp-figma.svg') center/contain no-repeat;
}
body.btc-core-active .btc-legal-contact a.btc-legal-btn--primary,
body.btc-core-active .btc-legal-contact a.btc-legal-btn--primary:link,
body.btc-core-active .btc-legal-contact a.btc-legal-btn--primary:visited{
  background:#fff!important;
  border-color:#fff!important;
  color:#211916!important;
  -webkit-text-fill-color:#211916!important;
  opacity:1!important;
}
@media(hover:hover) and (pointer:fine){
  body.btc-core-active .btc-legal-contact a.btc-legal-btn--whatsapp:hover{
    border-color:#096a38!important;
    background:#096a38!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:0 13px 28px rgba(5,72,36,.3);
    transform:translateY(-2px);
  }
  body.btc-core-active .btc-legal-contact a.btc-legal-btn--primary:hover{
    background:#f8f0eb!important;
    border-color:#f8f0eb!important;
    color:#211916!important;
    -webkit-text-fill-color:#211916!important;
    transform:translateY(-2px);
  }
}
body.btc-core-active .btc-legal-contact a.btc-legal-btn--whatsapp:focus-visible,
body.btc-core-active .btc-legal-contact a.btc-legal-btn--primary:focus-visible{
  outline:2px solid #e8c8b8!important;
  outline-offset:4px!important;
}

@media(min-width:1025px){
  .btc-legal-hero__inner{max-width:1120px}
}
@media(max-width:1024px){
  .btc-legal-hero p,.btc-legal-contact>div:first-child p{max-width:none}
}

/* =========================================================
   ByThomas Commerce Core 1.32.6 — legal mobile presentation alignment
   ========================================================= */
@media(max-width:680px){
  /* The hero and short contact presentation are centered on mobile. Long legal
     paragraphs and structured rows intentionally stay left-aligned for reading. */
  .btc-legal-hero,
  .btc-legal-hero__inner{
    text-align:center!important;
  }
  .btc-legal-hero h1,
  .btc-legal-hero p{
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .btc-legal-meta{
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .btc-legal-index{
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .btc-legal-block h2,
  .btc-legal-contact h2,
  .btc-legal-contact>.btc-legal-eyebrow{
    text-align:center!important;
  }
  .btc-legal-contact>div:first-child>p{
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .btc-legal-contact__actions{
    justify-items:center!important;
  }
  .btc-legal-block p,
  .btc-legal-block li,
  .btc-legal-grid,
  .btc-legal-rows,
  .btc-cookie-list,
  .btc-legal-identity{
    text-align:left!important;
  }
}
