/*
Theme Name: Right Now Dumpster
Theme URI: https://rightnowdumpster.com
Author: Right Now Marketing Group
Author URI: https://rightnowdumpster.com
Description: Standalone, plugin-free WordPress theme for a nationwide roll-off dumpster rental business. On activation it builds a 4-page website (Home, About, Dumpster Sizes, Contact) from core Gutenberg blocks, so every page stays editable with the normal Edit Page screen. Business details resolve at render time through a {{token}} system driven by the Right Now Dumpster settings page.
Version: 2.0.0
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rightnow-dumpster
*/

/* ============================================================
   DESIGN TOKENS
   ============================================================ */
:root {
	/* Palette - navy and royal blue family */
	--rnd-navy-950:   #0b1636;
	--rnd-navy-900:   #101f4c;
	--rnd-navy:       #16295f;   /* brand primary */
	--rnd-blue:       #1e3a8a;   /* brand secondary, buttons */
	--rnd-blue-500:   #2f56c9;
	--rnd-blue-400:   #5b82e6;
	--rnd-sky:        #9cbcff;   /* accent on dark backgrounds */
	--rnd-tint-200:   #dbe7ff;
	--rnd-tint-100:   #eaf1ff;
	--rnd-tint-50:    #f5f8ff;

	--rnd-ink:        #0d1736;
	--rnd-body:       #38446a;
	--rnd-muted:      #55618a;   /* 5.9:1 on white */
	--rnd-line:       #d8e1f5;

	--rnd-bg:         #ffffff;
	--rnd-ok:         #0f7a4d;
	--rnd-err:        #b3261e;

	--rnd-font-head:  "Sora", "Segoe UI", system-ui, -apple-system, sans-serif;
	--rnd-font-body:  "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;

	--rnd-wrap:       1200px;
	--rnd-radius:     20px;
	--rnd-radius-sm:  12px;
	--rnd-shadow:     0 1px 2px rgba(16, 31, 76, .06), 0 12px 32px -12px rgba(16, 31, 76, .22);
	--rnd-shadow-lg:  0 2px 4px rgba(16, 31, 76, .08), 0 28px 60px -20px rgba(16, 31, 76, .38);
	--rnd-ease:       cubic-bezier(.2, .7, .2, 1);
}

/* ============================================================
   BASE
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
	margin: 0;
	background: var(--rnd-bg);
	color: var(--rnd-body);
	font-family: var(--rnd-font-body);
	font-size: 1.0625rem;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

img, svg, video { max-width: 100%; height: auto; }
svg { display: block; }

h1, h2, h3, h4 {
	margin: 0 0 .6em;
	color: var(--rnd-ink);
	font-family: var(--rnd-font-head);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -.02em;
}
h1 { font-size: clamp(2.25rem, 5.2vw, 4rem); }
h2 { font-size: clamp(1.75rem, 3.6vw, 2.75rem); }
h3 { font-size: clamp(1.15rem, 1.8vw, 1.4rem); letter-spacing: -.01em; }
h1 em, h2 em { font-style: normal; color: var(--rnd-blue-500); }

p { margin: 0 0 1.1em; }
a { color: var(--rnd-blue); text-underline-offset: .18em; }
a:hover { color: var(--rnd-navy); }

:focus-visible {
	outline: 3px solid var(--rnd-blue-400);
	outline-offset: 3px;
	border-radius: 4px;
}

.skip-link {
	position: absolute;
	left: -9999px;
	top: 8px;
	z-index: 200;
	background: var(--rnd-navy);
	color: #fff;
	padding: .75rem 1.25rem;
	border-radius: 999px;
}
.skip-link:focus { left: 12px; }

.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	margin: -1px; padding: 0; border: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

::selection { background: var(--rnd-blue); color: #fff; }

body.rnd-nav-open { overflow: hidden; }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
