/*
Theme Name:        GLOSS. Skin (Child)
Theme URI:         https://glossskin.sg/
Description:       GeneratePress child theme for GLOSS. Skin Singapore — Jet Plasma skin rejuvenation. Implements the Penpot-derived design system (navy + cyan→fuchsia gradient, League Spartan / Heebo / Playfair) with brand component primitives consumable from GenerateBlocks.
Author:            GLOSS. Skin Singapore
Author URI:        https://glossskin.sg/
Template:          generatepress
Version:           1.0.0
Requires at least: 6.5
Tested up to:      6.9
Requires PHP:      7.4
License:           GNU General Public License v2 or later
License URI:       http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:       grossskin
Tags:              custom-colors, custom-menu, custom-logo, featured-images, threaded-comments, translation-ready, e-commerce
*/

/* -----------------------------------------------------------
   This file is intentionally minimal.
   GeneratePress auto-enqueues it as the `generate-child` style
   handle (see inc/general.php), with `generate-style` as a
   dependency, so it loads AFTER the parent stylesheet.

   All real styles are split into purpose-specific files and
   enqueued from functions.php:

     - assets/css/tokens.css        (design tokens / CSS vars)
     - assets/css/components.css    (Gloss component primitives)
     - assets/css/editor.css        (block editor styles)

   Keep this file for tiny, theme-wide overrides only.
   ----------------------------------------------------------- */

:root {
	color-scheme: light;
}

body {
	font-family: var(--gs-font-body, 'Heebo', system-ui, sans-serif);
	color: var(--gs-text-body, #485E84);
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.site-title {
	font-family: var(--gs-font-display, 'League Spartan', system-ui, sans-serif);
	color: var(--gs-text-primary, #1A4969);
}

/* Full-width layout — releases the global 1400px grid-container.
   Why: the site uses GP one-container mode (#page.grid-container caps at
   1400px), which prevents alignfull sections from spanning the viewport.
   Applied per page via body.page-id-* so existing contained pages stay
   contained. Header/nav keep their own .grid-container caps.
   Pages: 47 (About), 54 (Our Services), 57 (2026 GS Promotion · Plasma + PRX Trial),
          62 (Enzyme Peel), 64 (Gloss Hot Plasma), 72 (Gloss Plasma), 74 (Light Therapy).
   Add new IDs here when introducing alignfull layouts. */
body.home #page.grid-container,
body.home #page.grid-container > .site-content,
body.home .site-content > .content-area,
body.home .content-area > .site-main,
body.page-id-47 #page.grid-container,
body.page-id-47 #page.grid-container > .site-content,
body.page-id-47 .site-content > .content-area,
body.page-id-47 .content-area > .site-main,
body.page-id-54 #page.grid-container,
body.page-id-54 #page.grid-container > .site-content,
body.page-id-54 .site-content > .content-area,
body.page-id-54 .content-area > .site-main,
body.page-id-57 #page.grid-container,
body.page-id-57 #page.grid-container > .site-content,
body.page-id-57 .site-content > .content-area,
body.page-id-57 .content-area > .site-main,
body.page-id-62 #page.grid-container,
body.page-id-62 #page.grid-container > .site-content,
body.page-id-62 .site-content > .content-area,
body.page-id-62 .content-area > .site-main,
body.page-id-64 #page.grid-container,
body.page-id-64 #page.grid-container > .site-content,
body.page-id-64 .site-content > .content-area,
body.page-id-64 .content-area > .site-main,
body.page-id-72 #page.grid-container,
body.page-id-72 #page.grid-container > .site-content,
body.page-id-72 .site-content > .content-area,
body.page-id-72 .content-area > .site-main,
body.page-id-74 #page.grid-container,
body.page-id-74 #page.grid-container > .site-content,
body.page-id-74 .site-content > .content-area,
body.page-id-74 .content-area > .site-main {
	max-width: none;
	width: 100%;
	padding-left: 0;
	padding-right: 0;
}

body.home .inside-article,
body.home .entry-content,
body.page-id-47 .inside-article,
body.page-id-47 .entry-content,
body.page-id-54 .inside-article,
body.page-id-54 .entry-content,
body.page-id-57 .inside-article,
body.page-id-57 .entry-content,
body.page-id-62 .inside-article,
body.page-id-62 .entry-content,
body.page-id-64 .inside-article,
body.page-id-64 .entry-content,
body.page-id-72 .inside-article,
body.page-id-72 .entry-content,
body.page-id-74 .inside-article,
body.page-id-74 .entry-content {
	padding: 0;
	margin: 0;
	max-width: none;
}

/* Ensure alignfull blocks reach the viewport edges. */
body.home .entry-content > .alignfull,
body.page-id-47 .entry-content > .alignfull,
body.page-id-54 .entry-content > .alignfull,
body.page-id-57 .entry-content > .alignfull,
body.page-id-62 .entry-content > .alignfull,
body.page-id-64 .entry-content > .alignfull,
body.page-id-72 .entry-content > .alignfull,
body.page-id-74 .entry-content > .alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}
