/*
Theme Name: Elite Coat
Theme URI: https://example.com/elite-coat
Author: Elite Coat
Author URI: https://example.com/elite-coat
Description: A block theme for Elite Coat, a painting and surface-finishing service provider based in Faisalabad, Punjab, Pakistan. Editorial layouts, a signature before-and-after project comparison block, and WhatsApp-first enquiry actions. Built entirely with WordPress core blocks and the Site Editor.
Requires at least: 6.6
Tested up to: 6.7
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: elite-coat
Tags: block-patterns, block-styles, full-site-editing, one-column, two-columns, wide-blocks, custom-colors, custom-logo, custom-menu, editor-style, featured-images, threaded-comments, translation-ready, portfolio
*/

/* ---------------------------------------------------------------------------
   Elite Coat — theme-level CSS
   ---------------------------------------------------------------------------
   This file is deliberately close to empty. Almost every visual decision in
   this theme lives in theme.json or in the controls of the block editor, so
   that the site owner can change it without touching code.

   Only five things live here, and all five are impossible to express as block
   controls. Each rule is described in README.md under
   "Documented theme-level styling":

   1. Web font loading fallback stacks (the fonts are enqueued in
      inc/setup.php; these rules only soften the swap while they load).
   2. Focus visibility. WordPress core does not expose a :focus-visible style
      through theme.json, and keyboard users need an obvious focus ring.
   3. text-wrap: balance on headings, so long editorial headlines do not leave
      a single orphaned word on the last line.
   4. Sticky header. Template parts carry no position support, so there is no
      Sticky control to reach for; the header is pinned here instead, with a
      z-index so the before / after block's positioned photographs cannot
      paint over it. Delete the rule to let the header scroll away.
   5. The site blocks wrapper adds an automatic top margin above every
      top-level block, which would push the full-bleed sand footer away from
      the section above it. There is no core control for that outer margin.

   Nothing in this file targets a class that an editor has to type. No rule
   here depends on classes being added to text, buttons or backgrounds.
--------------------------------------------------------------------------- */

/* 1. Font rendering while webfonts load. */
:root {
	--elitecoat-font-display: "Fraunces", "Iowan Old Style", Georgia, "Times New Roman", serif;
	--elitecoat-font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* 2. Visible focus for keyboard users on links, buttons and form fields. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
.wp-block-navigation__responsive-container-open:focus-visible,
.wp-block-navigation__responsive-container-close:focus-visible,
[tabindex]:focus-visible {
	outline: 3px solid var(--wp--preset--color--clay);
	outline-offset: 3px;
	border-radius: 2px;
}

/* On dark sections the clay ring can be hard to see, so fall back to ochre. */
.has-ink-background-color a:focus-visible,
.has-ink-background-color button:focus-visible,
.has-ink-background-color input:focus-visible,
.has-graphite-background-color a:focus-visible,
.has-graphite-background-color button:focus-visible,
.has-graphite-background-color input:focus-visible {
	outline-color: var(--wp--preset--color--ochre);
}

/* 3. Balanced headline line breaks. Ignored by browsers that do not support it. */
h1,
h2,
h3,
.wp-block-post-title,
.wp-block-query-title {
	text-wrap: balance;
}

p,
.wp-block-post-excerpt__excerpt {
	text-wrap: pretty;
}

/* 4. Sticky header stacking order and offset.
      Template parts have no "position" block support, so there is no Sticky
      control on the header and no is-position-sticky class to style. Instead
      the theme pins the header (the first top-level template part) so project
      photography can never scroll over it. The offset honours the WordPress
      admin bar on the front end. To unpin the header, delete this rule. */
.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > .wp-block-template-part:first-child {
	position: sticky;
	top: var(--wp-admin--admin-bar--position-offset, 0px);
	z-index: 100;
}

/* 5. The site blocks wrapper adds an automatic top margin to every top-level
      block. The footer is a full-bleed sand band that must sit flush against
      the section above it, and there is no core control for that outer margin. */
.wp-site-blocks > footer.wp-block-template-part {
	margin-block-start: 0;
}
