/* Bloques de la portada — medidas del demo aprobado */

/* Baldosas de categorías (hero) */
.dm-kach{display:grid;gap:17px;grid-template-columns:repeat(2,minmax(0,1fr))}
.dm-kach--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.dm-kach--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.dm-kach__tile{position:relative;display:block;aspect-ratio:1/1;border-radius:18px;overflow:hidden;
	background:var(--surface-media,#EEF1F5);border:1px solid var(--line-soft,rgba(26,32,44,.07));
	box-shadow:0 10px 30px -18px rgba(26,32,44,.35);text-decoration:none;
	transition:transform .4s var(--ease-brand,cubic-bezier(.22,.61,.36,1)),box-shadow .4s var(--ease-brand,cubic-bezier(.22,.61,.36,1))}
.dm-kach__tile:hover{transform:translateY(-4px);box-shadow:0 22px 40px -22px rgba(26,32,44,.45)}
.dm-kach__img,.dm-kach__ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.dm-kach__label{position:absolute;left:14px;bottom:14px;padding:6px 10px;border-radius:8px;
	background:#fff;color:var(--ink,#1A202C);font-size:.74rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;line-height:1}

/* Oferta del mes */
.dm-angebot{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);background:#fff;border-radius:18px;overflow:hidden;border:1px solid var(--line-soft,rgba(26,32,44,.07));
	box-shadow:0 24px 60px -28px rgba(26,32,44,.28)}
.dm-angebot__img{position:relative;display:block;min-height:420px;background:var(--surface-media,#EEF1F5)}
.dm-angebot .dm-angebot__img img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;display:block}
.dm-angebot__ribbon{position:absolute;top:16px;left:16px;z-index:2;padding:7px 13px;border-radius:100px;
	background:var(--sale,#D9342B);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;line-height:1.6}
.dm-angebot__body{padding:60px;display:flex;flex-direction:column;align-items:flex-start}
.dm-angebot__eyebrow{margin:0;display:flex;align-items:center;gap:.7em;line-height:1.65;color:var(--brand-deep,#8A2A1A);
	font-size:.74rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase}
.dm-angebot__eyebrow::before{content:"";width:26px;height:1px;background:currentColor}
.dm-angebot__title{margin:.3em 0 .55em;font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,3.6vw,2.9rem);font-weight:400;
	line-height:1.08;letter-spacing:-.012em;color:var(--ink,#1A202C)}
.dm-angebot__lead{margin:0 0 1.7em;color:var(--ink-soft,#4A5568);font-size:1.0625rem;line-height:1.65;max-width:34em}
.dm-angebot__price{margin:0 0 24px;display:flex;align-items:baseline;gap:16px}
.dm-angebot__price b{font-family:Fraunces,Georgia,serif;font-size:clamp(2.4rem,4.2vw,3.4rem);font-weight:500;line-height:1.65;color:var(--ink,#1A202C)}
.dm-angebot__price s{color:var(--ink-soft,#4A5568);font-size:1.15rem;font-weight:300}
.dm-angebot__meta{margin:0 0 30px;padding:21px 0 0;border-top:1px solid var(--line,rgba(26,32,44,.13));
	display:flex;gap:26px;width:100%}
.dm-angebot__meta div{display:flex;flex-direction:column}
.dm-angebot__meta dt{font-family:Fraunces,Georgia,serif;font-size:1.1rem;font-weight:500;line-height:1.65;color:var(--ink,#1A202C)}
.dm-angebot__meta dd{margin:0;color:var(--ink-soft,#4A5568);font-size:.86rem;line-height:1.65}
.dm-angebot__btn{margin-top:0;display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:100px;border:1px solid transparent;line-height:1.65;
	background:var(--brand,#B82105);color:#fff;font-size:.95rem;font-weight:600;text-decoration:none;
	transition:background .2s var(--ease-brand,cubic-bezier(.22,.61,.36,1))}
.dm-angebot__btn:hover{background:var(--brand-deep,#8A2A1A);color:#fff}

@media (max-width:900px){
	.dm-angebot{grid-template-columns:1fr}
	.dm-angebot__img{min-height:260px}
	.dm-angebot__body{padding:32px}
}
@media (max-width:560px){.dm-kach--3,.dm-kach--4{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Etiquetas de sección (eyebrow) y titular del hero, como en el demo */
.dm-eyebrow p{display:flex;align-items:center;gap:.7em;margin:0}
.dm-eyebrow p::before{content:"";width:2em;height:1px;background:currentColor;flex:0 0 auto}
.dm-hero__h1 em{font-style:italic;color:var(--brand,#B82105)}
.dm-holz__img img{width:100%;height:557px;object-fit:cover;border-radius:18px}

/* Tarjeta de contacto (fondo de marca): enlaces en blanco */
.dm-kontakt a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
.dm-kontakt a:hover{border-bottom-color:#fff}
.dm-kontakt .elementor-widget-text-editor{margin:0}
.dm-cinfo p{margin:0}
.dm-cinfo .dm-cinfo__l{font-size:.74rem;font-weight:300;letter-spacing:.16em;line-height:1.65;text-transform:uppercase;color:rgba(255,255,255,.65);margin:0 0 3px}
.dm-cinfo .dm-cinfo__v{font-weight:600}

/* Aviso de la barra de servicio: casita a cada lado, como el demo */
.dm-topnote p{display:flex;align-items:center;gap:7px;margin:0}
.dm-topnote i{font-size:14px;color:var(--brand,#B82105)}

/* Tablet y móvil: medidas del demo */
@media (max-width:1024px){
	.dm-kach{gap:14px}
	.dm-angebot__body{padding:34px}
	.dm-angebot__img{min-height:300px}
}
@media (max-width:767px){
	.dm-angebot__btn{padding:11px 22px;font-size:.92rem}
	.dm-kach{gap:10px}
	.dm-cinfo{margin:0}
}

/* Importes largos en la oferta de la Home: no se parten ni se salen; la cifra se reduce
   con el ancho del bloque y el precio tachado pasa debajo si no cabe. */
.dm-angebot__body{container-type:inline-size}
.dm-angebot__price{flex-wrap:wrap;row-gap:0;max-width:100%}
.dm-angebot__price b,.dm-angebot__price s{white-space:nowrap}
.dm-angebot__price b{font-size:min(clamp(2.4rem,4.2vw,3.4rem),12cqi)}
