/*
Theme Name: Eco York Studio
Theme URI: https://www.ecoyork.com/
Author: Eco York, LLC
Author URI: https://www.ecoyork.com/
Description: The official Eco York website theme — a clean, fast, classic PHP theme for the York, PA digital studio. Custom mega-menu navigation, a block-editor (Gutenberg) homepage built from Eco York patterns, brand color controls, sub-page templates for services, industries, products, free tools and contact, an EcoSignal shortcode drop-in for the audit areas, and built-in performance + security hardening. Designed and owned by Eco York, LLC.
Version: 1.22.83
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: Proprietary — © Eco York, LLC. All rights reserved.
License URI: https://www.ecoyork.com/
Text Domain: ecoyork
Tags: business, custom-menu, custom-logo, custom-colors, block-patterns, featured-images, full-width-template, blog, two-columns, translation-ready

== Changelog ==
See CHANGELOG.md for the full history.

1.15.0
- Typography: added a “Custom” font option — enter any family name (heading and/or body) plus an optional stylesheet URL (Google Fonts css2 or self-hosted @font-face) to load it.
- Every homepage section now carries a unique CSS class (ey-section--services, --proof, --process, --audit, --products, --testimonials, --tools, --insights) so the team can target any section from Appearance → Additional CSS.

1.14.0
- Added Customizer controls for the design team: Typography (swap heading & body fonts from a curated list of 11 families, plus a heading-size setting) and Layout & Spacing (a site-wide section-spacing control from Compact to Spacious). Fonts load automatically; defaults keep the current look.

1.13.6
- Founder photo now pinned to its natural 4:5 portrait shape, so it fills the frame edge-to-edge and shows the whole shot with no cropping at any screen width.

1.13.5
- Founder photo now always shows the full shot at any screen width (fit-to-frame on a navy background) instead of cropping the bottom on wider viewports.

1.13.4
- Founder photo reverted to the full-frame fit (shows the whole shot — scooter included — with the head clear) to match the approved design, instead of the zoomed-in crop.

1.13.3
- Founder photo now framed as an upper-body portrait (zoomed + top-anchored) so it reads as an intentional founder shot instead of the full-body scooter photo on the taller section.

1.13.2
- Founder photo framing: raised the crop so the head is fully in frame (was cropping the top). Applies to the founder band and the small strategist avatars in the audit card and CTA.

1.13.1
- Homepage proof section: the portfolio / recent-work grid now sits in its own separated band (light surface, labeled header, spaced cards) so it no longer collides with the dark results/stats panel above it. Reduces the “busy” feel the team flagged.

1.12.0
- New Results custom post type: add/edit client case results (name, industry, link, blurb, logo via Featured Image, and four impact stats) in the admin. The homepage Featured Result band now rotates through them with dots. Seeded with six real results (House of Gains, Riddle’s Appliance, Advantage Home Exteriors, Gem Boutique, Evolve Kitchen & Bath, Energy Design Systems).

1.11.1
- Added a Featured Result band to the Work section with real client numbers (defaults to House of Gains: +127% revenue, +160% organic traffic, 43% faster LCP, 33% revenue from new users). Fully editable in Customize → Section Copy; clear the client name to hide it.

1.11.0
- Positioning upgrades to disarm skeptical buyers: hero “honesty” line; a new “Why not do it yourself?” section (tools vs strategy/time vs local-human team); and a risk-reversal strip (no long-term contracts, honest fit, clear pricing). All editable in Customize → Eco York Studio.

1.10.8
- Mobile header: removed the empty gap beside the Schedule button — logo now sits left with phone, Schedule and the hamburger packed neatly to the right.

1.10.7
- Mobile header fix: on small phones the phone number collapses to its icon so the row can't overflow and hide the hamburger; the ☰ menu button is always visible.

1.10.6
- Mobile header no longer has a blank gap: it now shows a tap-to-call phone number and the Schedule button next to the hamburger.

1.10.5
- Mobile fix: the hamburger menu now appears on phones (a CSS source-order bug had kept it hidden), the desktop links/mega panels hide cleanly, and the mobile menu now lists your real navigation (top-level + sub-items) plus Free audit / Schedule buttons.

1.10.4
- Homepage EcoSignal spotlight now always shows the sample score report (with CTAs) instead of repeating the live audit form — the form appears once, in the hero.

1.10.3
- KC Cleanup: added handlers for contact-info items, skill/progress bars, portfolio grids (→ image gallery) and decorative animated SVGs. Only JS carousels/sliders now remain for manual rebuild.

1.10.2
- KC Cleanup: tabs now convert to native Details (accordion) blocks — each tab becomes an expandable panel (first one open), keeping all content accessible since WordPress has no core tabs block.

1.10.1
- KC Cleanup: added services-box and call-to-action handlers, and corrected the “elements found” scanner so it accurately shows which modules are converted (accordions, pricing, testimonials, team, video were already handled but showed as unconverted).

1.10.0
- KC Cleanup now converts the remaining common modules: testimonials → quote blocks (with author/company), team members → photo + name + role cards, and video modules → native YouTube/Vimeo embeds.

1.9.9
- KC Cleanup: background colors now carry over on colored columns (e.g. the Basic/Pro/Elite plan cards), not just full-width rows, and gradient backgrounds are preserved correctly. Dark backgrounds get readable white text.

1.9.8
- KC Cleanup: pricing tables now convert to clean, editable pricing cards (title, price, feature checklist, button) using standard core blocks — styled in this theme, readable in any standard theme.

1.9.7
- KC Cleanup: accordions / toggles (e.g. FAQ) now convert to native WordPress Details blocks, preserving expand/collapse instead of flattening to text.

1.9.6
- KC Cleanup: Crumina check-lists now convert to a branded checklist (teal check, readable on dark sections); added a scanner that lists every KingComposer/Crumina module found across your pages and flags which ones the tool converts.

1.9.5
- KC Cleanup: migrated buttons now use the brand button style (teal); the EcoSignal audit widget is swapped for your EcoSignal shortcode; and KingComposer section background colors (e.g. the dark audit band) carry over to the converted page.

1.9.4
- Fixed delayed/blank first paint: section reveals now animate in via CSS on load instead of waiting for JavaScript, so the top of the page shows immediately even with WP Rocket's Delay JS enabled.

1.9.3
- KC Cleanup: fixed two-column rows that were skipped when a column contained a nested column block; counters now count up on scroll; added a "Convert ALL pages" button to migrate everything in one pass.

1.9.2
- KC Cleanup now detects KingComposer's HTML format (class="kc_row", crumina-module), not just [kc_*] shortcodes — so all your real builder pages are listed. Backup drafts are excluded from the list and no longer nest.

1.9.1
- KC Cleanup now reports how many blocks a conversion produced (or warns if zero), so it's clear whether a page actually converted.

1.9.0
- Big KC Cleanup upgrade: the converter now understands KingComposer's saved HTML (not just shortcodes). It maps kc_column widths to real Columns blocks, info-boxes to icon+heading+text, counters to stat blocks, headings/buttons/images to their blocks, keeps custom raw-code sections intact, and turns Gravity Forms into their shortcode.

1.8.1
- KC Cleanup now shows a "Raw content preview" + character count per page, to diagnose pages that don't convert (e.g. content stored outside the page body).

1.8.0
- Sub-page headers now use the page's Featured Image as a photo background (with a navy overlay for legibility) across all templates; pages with no Featured Image keep the solid-navy header.
- KingComposer Cleanup now converts counters (kc_counter / crum_counter) into branded stat blocks; charts are flagged for manual re-add (data-driven, can't be auto-migrated).

1.7.0
- New KingComposer Cleanup tool (Appearance → KC Cleanup): converts legacy [kc_*]/[vc_*] pages into editable Gutenberg blocks, preserving row/column layout (mapped to Columns blocks), headings, images and buttons. Applies a chosen theme template and backs up the original to Trash.

1.6.0
- Mega-menu panels now match the design per type: Industries shows a list plus a "More industries" chip block on the right; Free tools and Company render as full-width bordered grids; "What we do" columns have cycling header colors (teal/orange/navy). Menu now uses the demo's Space Grotesk type.

1.5.3
- Mega-menu link sub-labels now stack under the link name (were running inline) so the panels match the design.

1.5.2
- "Populate sample content & menu" now force-rebuilds the Primary menu so the 3-level structure and descriptions regenerate without manually deleting the old menu first.

1.5.1
- Seeded Primary menu is now 3 levels (top → group → links) with descriptions, so it reproduces the designed mega-menu out of the box. Each link resolves to your real page/product/post by title match, falling back to home.

1.5.0
- Header mega-menu now renders from your assigned WordPress menu (Appearance → Menus → Primary): top-level items become mega panels, their child links fill the columns, and the menu item Description field becomes the sub-label.
- Added a "Latest insights" homepage section that pulls your latest blog posts automatically.

1.4.1
- Restyled the editable WordPress header menu (Primary) dropdowns to match the designed nav: surface background, teal top accent, display-font links and hover states.

1.4.0
- Testimonials, Products and Free Tools are now editable custom post types; the homepage pulls from them (falls back to defaults). Sample entries are seeded on activation, or via Appearance → Eco York Setup → Populate sample content.
- Header navigation can now use a real, editable WordPress menu (Appearance → Menus → Primary). A Primary menu is seeded on first install; the built-in mega-menu shows when no menu is assigned.

1.3.0
- Homepage "Work" section now pulls live from your Portfolio (auto-detects the portfolio/case-study post type) showing real cover images, titles and categories, linked to each project. Falls back to placeholders if none found. New Customizer fields: item count, "all case studies" link, and an advanced post-type override.

1.2.2
- Customizer-first: the welcome notice now points to the Customizer as the recommended way to edit the homepage. Added a one-click "Use the built-in design" action that clears Home page content so the designed homepage renders. The block-build option is kept as advanced.

1.2.1
- Homepage setup now raises its own memory/time limits to avoid fatal errors on hosts with a low PHP memory_limit and many active plugins.

1.2.0
- One-click homepage setup: after activating, an admin notice (and Appearance → Eco York Setup) builds the Home page from editable Eco York blocks and sets it as the front page; old content is backed up to Trash.
- Fixed full-width: removed the leftover 1320px cap so the homepage truly fills the screen.

1.1.1
- Homepage now renders the built-in design unless the Home page is built with real Gutenberg block patterns. Leftover KingComposer / classic content is ignored instead of dumped.

1.1.0 (removed the 1320px frame cap).
- Native block-editor homepage: each section is an editable Eco York block pattern, plus a one-click "Full Homepage" pattern. No page builder required.
- Performance: deferred theme JS, emoji scripts disabled, trimmed <head>, Google Fonts preconnect.
- Security: XML-RPC disabled, REST API user-enumeration blocked, WP version hidden, safe default headers. All toggles filterable.
- Renamed theme to "Eco York Studio" and set authorship to Eco York, LLC.

1.0.0
- Initial release: homepage, mega-menu nav, Customizer-editable content + brand colors, sub-page templates, EcoSignal shortcode drop-in, blog templates.
*/

/* All component styles live in assets/css/main.css (enqueued by functions.php).
   This file holds the required theme header plus a minimal reset so the theme
   renders sanely even before main.css loads. */

*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{background:#EEF2F6;color:#0D1B2A;font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
