/*
Theme Name: Summit Rescue
Author: Codex
Description: A responsive emergency-services WordPress starter theme.
Version: 1.0.2
Text Domain: summit-rescue
*/

:root { --navy:#0b1e2d; --red:#c92632; --ice:#edf3f6; --ink:#172531; --max:1180px; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:#fff; font:16px/1.65 Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { color:#fff; background:var(--navy); }
.hero { height:360px; min-height:360px; background-color:var(--navy); background-image:linear-gradient(90deg,rgba(3,16,27,.15),rgba(3,16,27,.55)),var(--hero-image); background-position:center; background-size:cover; position:relative; }
.hero-inner { width:min(var(--max), calc(100% - 48px)); min-height:360px; margin:auto; display:flex; justify-content:flex-end; align-items:flex-start; padding:54px 0; }
.brand { max-width:470px; text-align:right; text-shadow:0 2px 16px rgba(0,0,0,.65); }
.site-title { margin:0; font-size:clamp(2.1rem,5vw,4.5rem); line-height:.96; letter-spacing:.035em; text-transform:uppercase; font-weight:800; }
.tagline { margin:15px 0 0; font-size:clamp(1rem,1.8vw,1.35rem); letter-spacing:.1em; text-transform:uppercase; }
.primary-nav { background:var(--navy); border-top:1px solid rgba(255,255,255,.22); }
.nav-inner { min-height:62px; width:min(var(--max), calc(100% - 48px)); margin:auto; display:flex; justify-content:flex-end; align-items:center; }
.menu-toggle { display:none; color:#fff; background:transparent; border:0; padding:13px 0 13px 18px; font:700 .9rem Arial; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; }
.menu-toggle span, .menu-toggle:before, .menu-toggle:after { content:''; display:block; width:25px; height:2px; margin:5px 0; background:#fff; }
.menu { display:flex; justify-content:flex-end; gap:0; margin:0; padding:0; list-style:none; }
.menu a { display:block; padding:20px 19px; color:#fff; font-weight:700; font-size:.87rem; letter-spacing:.07em; text-transform:uppercase; }
.menu a:hover, .menu .current-menu-item a { background:var(--red); }
.site-main { width:min(var(--max), calc(100% - 48px)); margin:0 auto; padding:62px 0; }
.intro { max-width:760px; margin-bottom:46px; }
.eyebrow { color:var(--red); font-size:.8rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
h1,h2,h3 { line-height:1.15; } h1 { font-size:2.5rem; margin:.3rem 0 .9rem; } h2 { font-size:1.4rem; margin:0 0 .65rem; }
.services { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.service { padding:30px; border-top:5px solid var(--red); background:var(--ice); }
.service p { margin:0; }
.site-footer { background:#06131d; padding:26px 24px; color:#cbd5db; text-align:center; font-size:.9rem; }
@media (max-width: 700px) {
  .hero,.hero-inner { height:290px; min-height:290px; } .hero-inner { width:min(100% - 32px, var(--max)); padding:37px 0; }
  .brand { max-width:100%; } .site-title { font-size:2.4rem; } .tagline { font-size:.85rem; }
  .nav-inner { width:min(100% - 32px, var(--max)); min-height:58px; flex-wrap:wrap; }
  .menu-toggle { display:block; margin-left:auto; font-size:0; } .menu-toggle span { margin:5px 0; }
  .menu { display:none; width:100%; flex-direction:column; padding:0 0 14px; } .menu.is-open { display:flex; }
  .menu a { padding:12px 0; } .services { grid-template-columns:1fr; } .site-main { width:min(100% - 32px, var(--max)); padding:42px 0; }
}
