/* Maps WordPress block markup onto Tartiflette Design System styles. */
body{background:var(--cream)}
.wp-site-blocks{min-height:100vh;display:flex;flex-direction:column}
.wp-site-blocks>main{flex:1}
:where(h1,h2,h3,h4,h5,h6) em,.wp-block-post-title em{color:var(--brick)}
h1,h2,h3,h4,.wp-block-post-title,.wp-block-query-title{text-wrap:balance}
p{text-wrap:pretty}

/* Masthead */
.tf-topstrip{border-bottom:var(--hairline) solid var(--rule-soft);font:400 var(--mono-s)/1.3 var(--font-mono);color:var(--muted)}
.tf-topstrip p{margin:0}
.tf-masthead{border-bottom:var(--keyline) solid var(--ink)}
.wp-block-site-title{margin:0;line-height:1}
.wp-block-site-title a{display:inline-flex;align-items:baseline;gap:.04em;font-family:var(--font-wordmark);color:var(--brick)!important;text-transform:lowercase;text-decoration:none!important;transform:rotate(var(--wordmark-rotate));transform-origin:left center;white-space:nowrap}
.wp-block-site-title a::after{content:".co.uk";color:var(--ink);font-size:.5em}
.tf-nav .wp-block-navigation-item__content{font:700 var(--ui-m)/1 var(--font-ui);letter-spacing:var(--ui-tracking);text-transform:uppercase;text-decoration:none!important;padding-bottom:4px;border-bottom:3px solid transparent}
.tf-nav .current-menu-item>.wp-block-navigation-item__content,.tf-nav .wp-block-navigation-item__content[aria-current]{color:var(--brick);border-bottom-color:var(--brick)}
.tf-nav .wp-block-navigation-item__content:hover{color:var(--brick)}
.wp-block-search__button{background:transparent!important;color:var(--ink)!important;border:0!important;box-shadow:none!important;padding:8px!important}
.wp-block-search__button:hover{background:var(--ink)!important;color:var(--cream)!important}
.wp-block-search__input{font:400 var(--body-s)/1.3 var(--font-body);background:var(--paper);border:var(--keyline) solid var(--ink)!important;border-radius:var(--radius-sm);padding:10px 12px}

/* Section heads: label sitting on a 2px rule */
.tf-section-head{border-top:var(--keyline) solid var(--ink);padding-top:12px!important;margin-bottom:24px}
.tf-section-head p{margin:0}
.tf-section-head a{text-decoration:none}

/* Text styles */
.is-style-label,.tf-label-text{font:var(--text-label);font-size:var(--ui-m);letter-spacing:var(--ui-tracking);text-transform:uppercase}
.is-style-standfirst,.wp-block-post-excerpt.is-style-standfirst .wp-block-post-excerpt__excerpt{font:italic 400 var(--body-l)/1.5 var(--font-body);color:var(--muted);max-width:58ch}
.is-style-data,.tf-byline,.tf-byline *{font:400 var(--mono-m)/1.4 var(--font-mono)}
.tf-byline{border-top:var(--keyline) solid var(--ink);border-bottom:var(--hairline) solid var(--rule-soft);padding:12px 0!important;color:var(--ink)}
.tf-byline p,.tf-byline div{margin:0}
.tf-byline .wp-block-post-author-name::before{content:"By "}
.tf-meta,.tf-meta *{font:400 var(--mono-s)/1.4 var(--font-mono);color:var(--muted)}
.wp-element-caption,figcaption{font:400 var(--mono-s)/1.4 var(--font-mono);color:var(--muted);margin-top:10px;text-align:left}

/* Kicker tags (post terms) */
.wp-block-post-terms.is-style-tag a,.wp-block-post-terms.is-style-tag-outline a{display:inline-flex;align-items:center;font:700 var(--ui-s)/1 var(--font-ui);letter-spacing:var(--ui-tracking);text-transform:uppercase;padding:5px 8px 4px;border-radius:var(--radius-sm);background:var(--saffron);color:var(--ink)!important;text-decoration:none!important}
.wp-block-post-terms.is-style-tag a:hover{background:var(--saffron-dark)}
.wp-block-post-terms.is-style-tag-outline a{background:transparent;box-shadow:inset 0 0 0 var(--keyline) var(--ink)}
.wp-block-post-terms.is-style-tag-outline a:hover{background:var(--cream-2)}
.wp-block-post-terms .wp-block-post-terms__separator{display:inline-block;width:6px;font-size:0}

/* Images */
.is-style-keyline img,.wp-block-post-featured-image.is-style-keyline img,.wp-block-post-featured-image.is-style-keyline .wp-block-post-featured-image__placeholder{border:var(--keyline) solid var(--ink);border-radius:var(--radius-sm)}
.wp-block-post-featured-image.is-style-bleed,.wp-block-image.is-style-bleed{margin-left:0;margin-right:0}
.is-style-bleed img{border-top:var(--keyline) solid var(--ink);border-bottom:var(--keyline) solid var(--ink);border-radius:0;display:block;width:100%}
.is-style-product img,.wp-block-post-featured-image.is-style-product img{background:#fff;border:var(--keyline) solid var(--ink);border-radius:var(--radius-sm);object-fit:contain!important;padding:8%}
.wp-block-post-featured-image__placeholder,.tf-ph{background:var(--glacier)!important;border:var(--keyline) solid var(--ink)}
/* Design system rule: no overlays or gradients on imagery. */
.wp-block-post-featured-image__overlay,.wp-block-cover__background{display:none!important}

/* Story cards in Query Loops (unboxed, on the cream ground) */
.tf-story .wp-block-post-title a{text-decoration:none}
.tf-story .wp-block-post-title a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;color:var(--ink)}
.tf-story .wp-block-post-excerpt{font:italic 400 var(--body-s)/1.5 var(--font-body);color:var(--muted)}
.tf-story .wp-block-post-excerpt p{margin:0}
.tf-list>li{border-top:var(--hairline) solid var(--ink);padding-top:14px}
.tf-list-strong>li{border-top:var(--keyline) solid var(--ink);padding-top:16px}
.tf-rows>li{border-bottom:var(--hairline) solid var(--rule-soft);padding:24px 0}

/* Field notes */
.tf-note{display:grid!important;grid-template-columns:120px minmax(0,1fr);gap:24px;border-bottom:var(--hairline) solid var(--ink);padding:28px 0!important}
@media (max-width:600px){.tf-note{grid-template-columns:1fr;gap:8px}}

/* Callouts (group block styles) */
.wp-block-group.is-style-note,.wp-block-group.is-style-aside,.wp-block-group.is-style-warning,.wp-block-group.is-style-safety,.wp-block-group.is-style-card{border:var(--keyline) solid var(--ink);border-radius:var(--radius-sm);padding:var(--space-4) var(--space-5) var(--space-5)!important;background:var(--paper);font:400 var(--body-s)/1.55 var(--font-body)}
.wp-block-group.is-style-card{padding:var(--space-5)!important}
.wp-block-group.is-style-note{background:var(--glacier)}
.wp-block-group.is-style-aside{background:transparent;border-style:dashed;font-style:italic}
.wp-block-group.is-style-warning{background:var(--saffron)}
.wp-block-group.is-style-safety{border-color:var(--brick)}
.wp-block-group.is-style-safety .is-style-label{color:var(--brick)}
.wp-block-group:is(.is-style-note,.is-style-warning,.is-style-safety)>.is-style-label{padding-bottom:10px;border-bottom:var(--hairline) solid currentColor;margin-bottom:12px}
.wp-block-group:is(.is-style-note,.is-style-aside,.is-style-warning,.is-style-safety,.is-style-card) p{margin:0 0 .6em}
.wp-block-group:is(.is-style-note,.is-style-aside,.is-style-warning,.is-style-safety,.is-style-card) p:last-child{margin:0}

/* Pull quote */
.wp-block-pullquote{margin:var(--space-7) 0;padding:var(--space-5) 0;border-top:var(--keyline) solid var(--ink);border-bottom:var(--keyline) solid var(--ink);text-align:left}
.wp-block-pullquote blockquote{margin:0}
.wp-block-pullquote p{font:italic 400 var(--display-s)/1.08 var(--font-display)!important;letter-spacing:var(--display-tracking);margin:0}
.wp-block-pullquote p::before{content:"\201C";color:var(--brick)}.wp-block-pullquote p::after{content:"\201D";color:var(--brick)}
.wp-block-pullquote cite{display:block;margin-top:var(--space-4);font:400 var(--mono-s)/1.4 var(--font-mono);color:var(--muted);font-style:normal}
.wp-block-pullquote.is-style-large p{font-size:var(--display-m)!important}
.wp-block-pullquote.is-style-brick p{color:var(--brick)}

/* Spec table */
.wp-block-table.is-style-spec{background:var(--glacier);border:var(--keyline) solid var(--ink);border-radius:var(--radius-sm);overflow-x:auto;display:flex;flex-direction:column-reverse}
.wp-block-table.is-style-spec figcaption{margin:0;padding:12px 16px;border-bottom:var(--keyline) solid var(--ink);font:700 var(--ui-s)/1.2 var(--font-ui);letter-spacing:var(--ui-tracking);text-transform:uppercase;color:var(--ink)}
.wp-block-table.is-style-spec table{width:100%;border-collapse:collapse;border:0}
.wp-block-table.is-style-spec th{font:700 var(--ui-s)/1.2 var(--font-ui);letter-spacing:var(--ui-tracking);text-transform:uppercase;text-align:left;padding:10px 16px;border:0;border-bottom:var(--hairline) solid var(--ink)}
.wp-block-table.is-style-spec td{font:400 var(--mono-m)/1.35 var(--font-mono);padding:9px 16px;border:0;border-bottom:var(--hairline) solid var(--glacier-2)}
.wp-block-table.is-style-spec tr:last-child td{border-bottom:0}
.wp-block-table.is-style-spec thead{border:0}
.wp-block-table.is-style-spec .has-text-align-right{text-align:right}

/* Buttons */
.wp-element-button,.wp-block-button__link{transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease)}
.wp-element-button:active,.wp-block-button__link:active{transform:translate(2px,2px);box-shadow:none!important}
.wp-block-button.is-style-secondary .wp-block-button__link{background:var(--paper);color:var(--ink)}
.wp-block-button.is-style-secondary .wp-block-button__link:hover{background:var(--cream-2)}
.wp-block-button.is-style-accent .wp-block-button__link{background:var(--saffron);color:var(--ink)}
.wp-block-button.is-style-accent .wp-block-button__link:hover{background:var(--saffron-dark)}

/* Drop cap */
.has-drop-cap:not(:focus)::first-letter{font:400 6.4em/.8 var(--font-display);color:var(--brick);margin:.08em .12em 0 0}

/* Newsletter band: the one loud surface */
.tf-newsletter{background:var(--brick);color:var(--cream);border:var(--keyline) solid var(--ink);border-radius:var(--radius-sm)}
.tf-newsletter h2{color:var(--cream)}

/* Pagination */
.wp-block-query-pagination{border-top:var(--keyline) solid var(--ink);padding-top:16px;font:400 var(--mono-m)/1 var(--font-mono)}
.wp-block-query-pagination a,.wp-block-query-pagination .current{padding:8px 11px;border:var(--keyline) solid transparent;border-radius:var(--radius-sm);text-decoration:none}
.wp-block-query-pagination .current{border-color:var(--ink);background:var(--paper)}
.wp-block-query-pagination a:hover{background:var(--cream-2)}

/* Sidebar facts list */
.tf-facts p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:8px 0;border-bottom:var(--hairline) solid var(--rule-soft);font:400 var(--mono-m)/1.3 var(--font-mono)}
.tf-sticky{position:sticky;top:24px;align-self:flex-start}
