/* DTH KLTR Brand. Concrete wall, black posters, the red tag, blackletter headlines.
   Tokens live on body.dkb; the theme's own palette variables are remapped to them. */

body.dkb{
  --dk-wall:#cfcbc2;
  --dk-ink:#121212;
  --dk-paper:#f4f1e9;
  --dk-red:#cc0000;
  --dk-red-deep:#9b0000;
  --dk-candle:#e9a23b;
  --dk-display:"Grenze Gotisch","Old English Text MT",Georgia,serif;
  --dk-sans:"Archivo","Helvetica Neue",Arial,sans-serif;
  --dk-pad:var(--wp--style--root--padding-left,24px);
  --dk-wide:var(--wp--style--global--wide-size,1100px);

  --wp--preset--color--color-1:var(--dk-paper);
  --wp--preset--color--color-2:#000;
  --wp--preset--color--color-3:var(--dk-red);
  --wp--preset--color--dark:var(--dk-ink);
  --wp--preset--color--light:var(--dk-paper);
  --wp--preset--color--contrast:var(--dk-ink);
  --wp--preset--gradient--gradient-one:linear-gradient(#000,#000);

  background-color:var(--dk-wall);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='320'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .11 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  color:var(--dk-ink);
  font-family:var(--dk-sans);
  font-size:17px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
body.dkb ::selection{background:var(--dk-red);color:#fff}
body.dkb :focus-visible{outline:3px solid var(--dk-candle);outline-offset:3px}
body.dkb .wp-site-blocks>*{margin-block-start:0}
body.dkb .entry-content>*{margin-block-start:0}

/* Type */
/* Blackletter is for short lines only: the hero, the closing line, page names. Long titles use the condensed sans. */
body.dkb h1,
body.dkb .wp-block-post-title{
  font-family:var(--dk-sans);
  font-stretch:66%;
  font-weight:800;
  font-size:clamp(2.25rem,6vw,3.75rem) !important;
  line-height:.98;
  letter-spacing:-.02em;
  text-align:left;
  color:var(--dk-ink);
  text-wrap:balance;
}
body.dkb.page h1.wp-block-post-title,
body.dkb h1.wp-block-query-title{
  font-family:var(--dk-display);
  font-stretch:100%;
  font-weight:900;
  font-size:clamp(3.25rem,10vw,6rem) !important;
  line-height:.88;
  letter-spacing:0;
}
body.dkb h2,
body.dkb h3,
body.dkb h4{
  font-family:var(--dk-sans);
  font-stretch:72%;
  font-weight:800;
  line-height:1.05;
  letter-spacing:-.01em;
  color:inherit;
}
body.dkb h2{font-size:clamp(1.75rem,4.4vw,2.75rem)}
body.dkb h3{font-size:1.5rem}
body.dkb h4{font-size:1.2rem}
body.dkb p{max-width:66ch}
body.dkb .entry-content a:not(.wp-element-button):not(.wp-block-button__link),
body.dkb .wp-block-post-excerpt a,
body.dkb .woocommerce-breadcrumb a{
  color:inherit;
  text-decoration:underline;
  text-decoration-color:var(--dk-red);
  text-decoration-thickness:2px;
  text-underline-offset:3px;
}
body.dkb .entry-content a:not(.wp-element-button):not(.wp-block-button__link):hover{color:var(--dk-red)}

/* Buttons: flat, heavy, square */
body.dkb .wp-element-button,
body.dkb .wp-block-button__link,
body.dkb .woocommerce a.button,
body.dkb .woocommerce button.button,
body.dkb .wc-block-components-button:not(.is-link){
  font-family:var(--dk-sans);
  font-stretch:78%;
  font-weight:800;
  font-size:1.0625rem;
  line-height:1.1;
  letter-spacing:.01em;
  padding:.95em 1.7em;
  border:2px solid #000;
  border-radius:0 !important;
  background:#000;
  color:var(--dk-paper);
  text-decoration:none;
  transition:background-color .12s,color .12s,border-color .12s;
}
body.dkb .wp-element-button:hover,
body.dkb .wp-block-button__link:hover,
body.dkb .woocommerce a.button:hover,
body.dkb .woocommerce button.button:hover,
body.dkb .wc-block-components-button:not(.is-link):hover{
  background:var(--dk-red);
  border-color:var(--dk-red);
  color:#fff;
}
body.dkb .dk-btn-red .wp-block-button__link,
body.dkb .woocommerce button.single_add_to_cart_button.button{background:var(--dk-red);border-color:var(--dk-red);color:#fff}
body.dkb .dk-btn-red .wp-block-button__link:hover{background:var(--dk-paper);border-color:var(--dk-paper);color:var(--dk-ink)}
body.dkb .woocommerce button.single_add_to_cart_button.button:hover{background:#000;border-color:#000;color:var(--dk-paper)}
body.dkb .dk-btn-ghost .wp-block-button__link{background:transparent;border-color:var(--dk-paper);color:var(--dk-paper)}
body.dkb .dk-btn-ghost .wp-block-button__link:hover{background:var(--dk-paper);color:var(--dk-ink)}
body.dkb .dk-btn-paper .wp-block-button__link{background:var(--dk-paper);border-color:var(--dk-paper);color:var(--dk-ink)}
body.dkb .dk-btn-paper .wp-block-button__link:hover{background:var(--dk-red);border-color:var(--dk-red);color:#fff}
body.dkb .is-style-outline .wp-block-button__link,
body.dkb .wp-block-button.is-style-outline>.wp-block-button__link{background:transparent;color:var(--dk-ink);border-color:#000}
body.dkb .is-style-outline .wp-block-button__link:hover{background:#000;color:var(--dk-paper)}
body.dkb .wp-block-buttons{gap:12px}

/* Header */
body.dkb .dk-header{border-bottom:3px solid #000;padding-block:12px}
body.dkb .dk-header__row{align-items:center;gap:16px}
body.dkb .dk-header .wp-block-site-logo img{display:block;width:150px;height:auto}
body.dkb .wp-block-navigation{font-family:var(--dk-sans);font-stretch:78%;font-weight:700;font-size:1.0625rem}
body.dkb .dk-nav .wp-block-navigation__container{gap:28px}
body.dkb .wp-block-navigation .wp-block-navigation-item__content{color:inherit;text-decoration:none;padding-block:6px;border-bottom:3px solid transparent}
body.dkb .wp-block-navigation .wp-block-navigation-item__content:hover,
body.dkb .wp-block-navigation .current-menu-item>.wp-block-navigation-item__content{border-bottom-color:var(--dk-red)}
body.dkb .wp-block-navigation__responsive-container-open,
body.dkb .wp-block-navigation__responsive-container-close{color:inherit;padding:8px}
body.dkb .wp-block-navigation__responsive-container-open svg,
body.dkb .wp-block-navigation__responsive-container-close svg{width:30px;height:30px}
body.dkb .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open{background-color:#000 !important;color:var(--dk-paper) !important;padding:24px var(--dk-pad)}
body.dkb .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:18px}
body.dkb .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-family:var(--dk-display);font-weight:900;font-size:2.75rem;line-height:1}

/* Hero: a black poster on the wall */
body.dkb .dk-hero{background:#000;color:var(--dk-paper);padding:clamp(40px,8vw,104px) var(--dk-pad) clamp(56px,9vw,120px);overflow:hidden}
body.dkb .dk-hero__inner{max-width:var(--dk-wide);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(32px,6vw,88px);align-items:center}
body.dkb .dk-hero__inner>*{margin:0}
body.dkb .dk-hero__copy>*{margin-block:0}
body.dkb h1.dk-hero__title{font-family:var(--dk-display);font-stretch:100%;font-weight:900;color:var(--dk-paper);font-size:clamp(3.75rem,13.5vw,9rem) !important;line-height:.84;letter-spacing:-.01em;text-wrap:balance}
body.dkb .dk-hero__lede{font-size:clamp(1.0625rem,2.1vw,1.3125rem);line-height:1.45;max-width:36ch;margin-top:clamp(20px,3vw,36px)}
body.dkb .dk-hero__actions{margin-top:clamp(24px,3.5vw,40px);gap:12px}

/* Tribute cards: a photo taped to the wall, name, sunrise and sunset */
body.dkb .dk-card{position:relative;background:var(--dk-paper);color:var(--dk-ink);padding:12px 12px 18px}
body.dkb .dk-card__img{display:block;background:#ddd}
body.dkb .dk-card__photo{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
body.dkb .dk-card__body{padding:14px 4px 0}
body.dkb .dk-card__name{font-family:var(--dk-sans);font-stretch:68%;font-weight:800;font-size:1.875rem;line-height:1;letter-spacing:-.01em;margin:0}
body.dkb .entry-content .dk-card__name a:not(.wp-element-button):not(.wp-block-button__link){color:inherit;text-decoration:none}
body.dkb .dk-card__name a:hover{color:var(--dk-red)}
body.dkb .dk-card__price{font-weight:800;font-stretch:80%;font-size:1.25rem;margin:10px 0 0}
body.dkb .dk-dates{display:flex;flex-wrap:wrap;gap:2px 18px;margin:8px 0 0;font-size:.9375rem;line-height:1.3;max-width:none}
body.dkb .dk-dates__k{color:#5d5a54}
body.dkb .dk-dates time{font-weight:700;font-variant-numeric:tabular-nums}
body.dkb .dk-dates--page{font-size:1.0625rem;margin:14px 0 0;padding-top:12px;border-top:3px solid #000}
body.dkb .dk-dates--grid{font-size:.875rem;gap:0 14px}

body.dkb .dk-feature{max-width:420px;justify-self:end;width:100%}
body.dkb .dk-feature .dk-card{transform:rotate(2.2deg);box-shadow:0 30px 60px -20px rgba(0,0,0,.9)}
body.dkb .dk-feature .dk-card::before{content:"";position:absolute;top:-14px;left:50%;width:112px;height:30px;margin-left:-56px;background:rgba(226,218,190,.82);transform:rotate(-3deg);box-shadow:0 1px 2px rgba(0,0,0,.35)}

/* Statement */
body.dkb .dk-statement{padding-block:clamp(56px,9vw,128px) clamp(40px,6vw,80px);display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(20px,5vw,72px);align-items:end}
body.dkb .dk-statement>*{margin:0}
body.dkb .dk-statement__big{font-stretch:66%;font-size:clamp(2.125rem,6.2vw,4.5rem);line-height:.98;letter-spacing:-.02em;text-wrap:balance}

/* Three plain facts on a ruled line */
body.dkb .dk-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:3px solid #000;margin-bottom:clamp(56px,9vw,120px)}
body.dkb .dk-fact{margin:0;padding:22px 28px 0 0}
body.dkb .dk-fact+.dk-fact{padding-left:28px;border-left:1px solid rgba(0,0,0,.35)}
body.dkb .dk-fact>*{margin-block:0}
body.dkb .dk-fact p{margin-top:8px}

/* More tributes */
body.dkb .dk-drops{margin-bottom:clamp(56px,9vw,120px)}
body.dkb .dk-drops__title{margin:0 0 24px}
body.dkb .dk-drops__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:28px}

/* Closing band */
body.dkb .dk-band{background:var(--dk-paper);color:var(--dk-ink);padding-block:clamp(56px,9vw,120px);padding-inline:max(var(--dk-pad),calc((100% - var(--dk-wide))/2 + var(--dk-pad)))}
body.dkb .dk-band>*{margin:0}
body.dkb .dk-band__title{font-family:var(--dk-display);font-stretch:100%;font-weight:900;font-size:clamp(3rem,10vw,7rem);line-height:.86;letter-spacing:0}
body.dkb .dk-band p{font-size:1.1875rem;margin-top:24px;max-width:50ch}
body.dkb .dk-band .wp-block-buttons{margin-top:28px}
body.dkb .dk-band .wp-block-button__link{background:#000;border-color:#000;color:var(--dk-paper)}
body.dkb .dk-band .wp-block-button__link:hover{background:var(--dk-red);border-color:var(--dk-red);color:#fff}

/* Inner pages */
body.dkb .hostinger-ai-page-title{text-align:left}
body.dkb .dk-prose{padding-bottom:clamp(40px,6vw,72px)}
body.dkb .dk-prose>*{margin-block:0}
body.dkb .dk-prose>*+*{margin-top:18px}
body.dkb .dk-prose>h2{margin-top:44px}
body.dkb .dk-prose>h2:first-child{margin-top:0}
body.dkb .dk-rules{border-top:3px solid #000;margin-top:36px;padding:0}
body.dkb .dk-rules>*{margin:0;padding:18px 0;border-bottom:1px solid rgba(0,0,0,.35)}
body.dkb .dk-rules h3{margin:0}
body.dkb .dk-rules p{margin:6px 0 0}
body.dkb .dk-posts{padding-bottom:clamp(48px,7vw,96px)}
body.dkb .dk-posts .wp-block-post-template{gap:32px}
body.dkb .dk-posts .wp-block-post-title{font-stretch:72%;font-size:1.5rem !important;line-height:1.08;letter-spacing:-.01em}
body.dkb .entry-content .dk-posts .wp-block-post-title a:not(.wp-element-button):not(.wp-block-button__link){color:inherit;text-decoration:none}
body.dkb .dk-posts .wp-block-post-title a:hover{color:var(--dk-red)}
body.dkb .dk-posts .wp-block-post-excerpt{margin-top:8px}
body.dkb input[type=text],
body.dkb input[type=email],
body.dkb input[type=tel],
body.dkb input[type=number],
body.dkb textarea,
body.dkb select{font-family:var(--dk-sans);font-size:1rem;color:var(--dk-ink);background:#fff;border:2px solid #000;border-radius:0;padding:.7em .8em}

/* Blog post */
body.dkb.single-post .wp-block-post-featured-image img{border-radius:0 !important}
body.dkb.single-post .wp-site-blocks>.wp-block-group>.alignwide{max-width:var(--wp--style--global--content-size,700px)}
body.dkb.single-post .entry-content{padding-top:8px}
body.dkb.single-post .entry-content>*+*{margin-top:18px}
body.dkb.single-post .entry-content>h2{margin-top:40px}

/* Shop grid */
body.dkb .woocommerce-breadcrumb{font-size:.9375rem;color:#3d3b37;padding-top:20px}
body.dkb.woocommerce main,
body.dkb.woocommerce-page main{padding-bottom:clamp(48px,7vw,96px)}
body.dkb.home main{padding-bottom:0}
body.dkb .wc-block-product-template{gap:28px}
body.dkb li.wc-block-product{background:var(--dk-paper);padding:12px 12px 18px;text-align:left}
body.dkb li.wc-block-product .wc-block-components-product-image{margin:0 0 14px}
body.dkb li.wc-block-product .wc-block-components-product-image img{aspect-ratio:1/1;object-fit:cover;width:100%;height:auto;border-radius:0}
body.dkb li.wc-block-product .wp-block-post-title{font-stretch:68%;font-size:1.625rem !important;line-height:1;letter-spacing:-.01em;margin:0}
body.dkb li.wc-block-product .wp-block-post-title a{color:inherit;text-decoration:none}
body.dkb li.wc-block-product .wp-block-post-title a:hover{color:var(--dk-red)}
body.dkb li.wc-block-product .wc-block-components-product-price{text-align:left;font-weight:800;font-stretch:80%;font-size:1.25rem !important;margin:10px 0 14px}
body.dkb li.wc-block-product .wp-block-button{text-align:left;margin:0}
body.dkb li.wc-block-product .wp-block-button__link{display:block;width:100%;text-align:center;font-size:1rem}
body.dkb .woocommerce-result-count,
body.dkb .woocommerce-ordering select{font-size:.9375rem}

/* Product page */
body.dkb.single-product h1.wp-block-post-title{font-size:clamp(2.5rem,6.4vw,4.25rem) !important;line-height:.95;margin:0}
body.dkb.single-product .wp-block-woocommerce-product-price .wc-block-components-product-price{font-weight:800;font-stretch:80%;font-size:1.875rem !important;line-height:1}
body.dkb.single-product .woocommerce-product-gallery__image img{border-radius:0}
body.dkb.single-product .woocommerce-product-gallery{background:var(--dk-paper);padding:12px;box-sizing:border-box;max-width:100%}
body.dkb.single-product table.variations{border:0;margin:0 0 16px}
body.dkb.single-product table.variations th,
body.dkb.single-product table.variations td{display:block;padding:0;text-align:left;border:0}
body.dkb.single-product table.variations label{font-weight:800;font-stretch:80%;font-size:1.0625rem;display:block;margin-bottom:6px}
body.dkb.single-product table.variations select{width:100%;max-width:340px;min-height:54px;font-size:1.0625rem !important;font-weight:600}
body.dkb.single-product .reset_variations{font-size:.9375rem;margin-left:10px}
body.dkb.single-product .single_variation_wrap>a[onclick]{display:inline-block;margin-bottom:14px;color:var(--dk-ink) !important;font-weight:600;text-decoration:underline;text-decoration-color:var(--dk-red);text-decoration-thickness:2px;text-underline-offset:3px}
body.dkb.single-product form.cart .quantity .qty{min-height:54px;width:76px;text-align:center}
body.dkb.single-product form.cart .single_add_to_cart_button{min-height:54px;flex:1 1 220px}
body.dkb.single-product .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
body.dkb .woocommerce-tabs ul.tabs li a{font-family:var(--dk-sans);font-stretch:78%;font-weight:800;font-size:1.0625rem;color:inherit}
body.dkb .woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--dk-red)}
body.dkb .woocommerce-message,
body.dkb .woocommerce-info,
body.dkb .woocommerce-error,
body.dkb .wc-block-components-notice-banner{border-radius:0}

/* Footer */
body.dkb .dk-footer{background:#000;color:var(--dk-paper);padding-block:clamp(48px,7vw,80px) 28px}
body.dkb .dk-footer__row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;align-items:start}
body.dkb .dk-footer__row>*{margin:0}
body.dkb .dk-footer__brand>*{margin-block:0}
body.dkb .dk-footer__brand p{margin-top:28px;max-width:34ch;font-size:1.0625rem}
body.dkb .dk-slap{display:inline-block;background:#fff;padding:14px 18px;border-radius:10px;transform:rotate(-3deg)}
body.dkb .dk-slap img{display:block;width:190px;height:auto}
body.dkb .dk-footer .wp-block-navigation{font-size:1.1875rem}
body.dkb .dk-footer .wp-block-navigation__container{gap:8px}
body.dkb .dk-footer .dk-legal{font-size:.875rem;color:#a9a59c;max-width:var(--dk-wide);margin:48px auto 0;padding-top:18px;border-top:1px solid #3a3835}

@media (max-width:781px){
  body.dkb .dk-hero__inner{grid-template-columns:minmax(0,1fr)}
  body.dkb .dk-feature{justify-self:center;max-width:340px;margin-top:12px}
  body.dkb .dk-statement{grid-template-columns:minmax(0,1fr)}
  body.dkb .dk-facts{grid-template-columns:minmax(0,1fr)}
  body.dkb .dk-fact{padding:18px 0}
  body.dkb .dk-fact+.dk-fact{padding-left:0;border-left:0;border-top:1px solid rgba(0,0,0,.35)}
  body.dkb .dk-footer__row{grid-template-columns:minmax(0,1fr)}
  body.dkb .dk-hero__actions .wp-block-button{flex:1 1 auto}
  body.dkb .dk-hero__actions .wp-block-button__link{display:block;text-align:center}
}
@media (prefers-reduced-motion:reduce){
  body.dkb *{transition:none !important}
}

/* Contact form and footer links */
body.dkb .dk-contact{background:var(--dk-paper);padding:clamp(24px,5vw,40px);margin-top:8px}
body.dkb .dk-contact__form{display:grid;gap:14px;max-width:560px}
body.dkb .dk-contact label{display:grid;gap:6px;font-weight:700;font-stretch:80%}
body.dkb .dk-contact input,
body.dkb .dk-contact textarea{width:100%;box-sizing:border-box;font-weight:400;font-stretch:100%}
body.dkb .dk-contact textarea{min-height:140px}
body.dkb .dk-contact button{justify-self:start;cursor:pointer}
body.dkb .dk-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
body.dkb .dk-contact__ok,
body.dkb .dk-contact__err{font-weight:700;margin:0 0 16px;padding:12px 14px;border-left:6px solid #000;background:#fff}
body.dkb .dk-contact__err{border-left-color:var(--dk-red)}
body.dkb .dk-footer .dk-legal a{color:inherit;margin-left:14px}
