:root {
	--rns-max-width: 1200px;
	--rns-space: 1.5rem;
	--rns-text: #1f2937;
	--rns-bg: #ffffff;
	--rns-muted: #f3f4f6;
	--rns-accent: #0f5fa8;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	color: var(--rns-text);
	background: var(--rns-bg);
	font-family: Arial, Helvetica, sans-serif;
	line-height: 1.6;
}
img { max-width: 100%; height: auto; }
a { color: var(--rns-accent); }
.site-container {
	width: min(100% - 2rem, var(--rns-max-width));
	margin-inline: auto;
}
.site-header, .site-footer { padding: 1rem 0; }
.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}
.primary-navigation ul {
	display: flex;
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.menu-toggle { display: none; }
.site-main { min-height: 60vh; padding-block: 3rem; }
.hero { padding: 6rem 0; background: var(--rns-muted); }
.content-card { padding: 1.5rem 0; border-bottom: 1px solid #ddd; }
.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
.screen-reader-text:focus {
	position: fixed;
	top: 1rem;
	left: 1rem;
	width: auto;
	height: auto;
	padding: .75rem 1rem;
	clip: auto;
	background: #fff;
	z-index: 100000;
}
@media (max-width: 768px) {
	.menu-toggle { display: inline-block; }
	.primary-navigation { display: none; }
	.primary-navigation.is-open { display: block; }
	.primary-navigation ul { flex-direction: column; }
	.site-header__inner { align-items: flex-start; }
}

.rns-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}
.rns-card {
	overflow: hidden;
	border: 1px solid #e5e7eb;
	border-radius: .75rem;
	background: #fff;
}
.rns-card__image {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
}
.rns-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.rns-card__body { padding: 1.25rem; }
.rns-card__title { margin-top: 0; }
.rns-button {
	display: inline-block;
	padding: .7rem 1rem;
	border-radius: .4rem;
	background: var(--rns-accent);
	color: #fff;
	text-decoration: none;
}
.rns-single__featured-image { margin-block: 1.5rem; }

@media (max-width: 900px) {
	.rns-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.rns-grid { grid-template-columns: 1fr; }
}

.home-section{padding-block:4rem}.home-section:nth-of-type(even){background:var(--rns-muted)}
.home-section__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}
.home-section__header h2{margin:0}

.rns-detail-section { padding-block: 2rem; border-top: 1px solid #e5e7eb; }
.rns-feature-list { display: grid; gap: .75rem; padding-left: 1.25rem; }
.rns-two-column { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }
.rns-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.rns-form label { display: grid; gap: .4rem; font-weight: 600; }
.rns-form input, .rns-form textarea {
	width: 100%; padding: .8rem; border: 1px solid #cbd5e1; border-radius: .35rem; font: inherit;
}
.rns-honeypot { position: absolute; left: -9999px; }
.rns-notice { padding: 1rem; margin-bottom: 1rem; background: #f3f4f6; }
.rns-notice--success { border-left: 4px solid currentColor; }
@media (max-width: 768px) {
	.rns-two-column, .rns-form-grid { grid-template-columns: 1fr; }
}

.rns-search-form { display: grid; grid-template-columns: 1fr auto auto; gap: .75rem; margin-block: 1.5rem; }
.rns-search-form input, .rns-search-form select, .rns-sort-form select {
	min-height: 44px; padding: .65rem .8rem; border: 1px solid #cbd5e1; border-radius: .35rem; font: inherit;
}
.rns-sort-form { display: flex; justify-content: flex-end; margin-bottom: 1.5rem; }
@media (max-width: 700px) {
	.rns-search-form { grid-template-columns: 1fr; }
	.rns-sort-form { justify-content: flex-start; }
}

:focus-visible {
	outline: 3px solid currentColor;
	outline-offset: 3px;
}
.menu-toggle {
	min-height: 44px;
	min-width: 44px;
}
.rns-button {
	min-height: 44px;
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
}
@media print {
	.site-header, .site-footer, .menu-toggle, .rns-form, .rns-search-form, .rns-sort-form { display: none !important; }
	body { color: #000; background: #fff; }
	a { color: inherit; text-decoration: underline; }
}

:root{--rns-nav-bg:#002244;--rns-nav-hover:#004080;--rns-nav-accent:#0066cc;--rns-footer-bg:#111827}body{padding-top:118px}.rns-original-header{position:fixed;inset:0 0 auto;z-index:9999;box-shadow:0 4px 12px #0003}.rns-topbar{background:var(--rns-nav-hover);color:#fff;font-size:.875rem}.rns-topbar__inner{min-height:34px;display:flex;align-items:center;justify-content:space-between}.rns-topbar__contact,.rns-topbar__social{display:flex;gap:1.5rem}.rns-topbar a{color:#fff;text-decoration:none}.rns-mainnav{background:var(--rns-nav-bg)}.rns-mainnav__inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.rns-brand{display:flex;align-items:center;gap:.75rem;color:#fff;text-decoration:none}.rns-brand img{height:48px;width:auto}.rns-brand__copy{display:grid;line-height:1.2}.rns-brand__copy strong span{color:#16a34a}.rns-brand__copy small{color:#d1d5db}.rns-navlinks{display:flex;align-items:center;gap:1.5rem}.rns-navlinks>a,.rns-dropdown__top>a{color:#fff;text-decoration:none;font-weight:600;white-space:nowrap}.rns-navlinks a:hover,.rns-navlinks a.is-active{color:var(--rns-nav-accent)}.rns-dropdown{position:relative}.rns-dropdown__top{display:flex;align-items:center}.rns-submenu-toggle{border:0;background:transparent;color:#fff;padding:.3rem;cursor:pointer}.rns-dropdown__menu{position:absolute;top:calc(100% + 1.2rem);left:0;width:320px;padding:.5rem 0;background:#fff;border-radius:.5rem;box-shadow:0 18px 45px #0003;opacity:0;visibility:hidden;transform:translateY(-5px);transition:.2s}.rns-dropdown:hover .rns-dropdown__menu,.rns-dropdown:focus-within .rns-dropdown__menu,.rns-dropdown.is-open .rns-dropdown__menu{opacity:1;visibility:visible;transform:none}.rns-dropdown__menu a,.rns-dropdown__menu span{display:block;padding:.65rem 1rem;color:#374151;text-decoration:none;font-size:.9rem}.rns-dropdown__menu a:hover{background:#eff6ff;color:var(--rns-nav-accent)}.rns-dropdown__all{font-weight:700;border-bottom:1px solid #e5e7eb}.rns-quote-button{padding:.7rem 1.4rem;background:var(--rns-nav-accent);border-radius:.5rem;color:#fff!important}.rns-mobile-toggle{display:none;border:0;background:transparent;width:44px;height:44px;padding:10px}.rns-mobile-toggle i{display:block;height:2px;background:#fff;margin:5px 0}.rns-original-footer{background:var(--rns-footer-bg);color:#fff;padding:4rem 0 0}.rns-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}.rns-footer-company>p,.rns-original-footer li,.rns-original-footer a{color:#9ca3af}.rns-original-footer a{text-decoration:none}.rns-footer-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.rns-footer-brand img{height:42px;width:auto;filter:brightness(0) invert(1)}.rns-footer-brand div{display:grid}.rns-footer-brand small{color:#9ca3af}.rns-original-footer ul{list-style:none;padding:0;display:grid;gap:.75rem}.rns-social-icons{display:flex;gap:.75rem}.rns-social-icons span{width:34px;height:34px;display:grid;place-items:center;border-radius:.45rem;background:#2563eb}.rns-footer-bottom{border-top:1px solid #1f2937;margin-top:3rem;padding:1.75rem 0;text-align:center}.rns-footer-bottom p{margin:0;color:#9ca3af}
@media(max-width:1023px){.rns-topbar__social{display:none}.rns-mobile-toggle{display:block}.rns-mainnav__inner{position:relative}.rns-navlinks{display:none;position:absolute;top:100%;left:0;right:0;padding:1rem;background:var(--rns-nav-bg);flex-direction:column;align-items:stretch;gap:.25rem;max-height:calc(100vh - 118px);overflow:auto}.rns-navlinks.is-open{display:flex}.rns-navlinks>a,.rns-dropdown__top>a{padding:.65rem 0}.rns-dropdown__top{justify-content:space-between}.rns-dropdown__menu{position:static;width:auto;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border-left:2px solid #ffffff40;border-radius:0;margin-left:.5rem;background:transparent}.rns-dropdown:hover .rns-dropdown__menu,.rns-dropdown:focus-within .rns-dropdown__menu{display:none}.rns-dropdown.is-open .rns-dropdown__menu{display:block}.rns-dropdown__menu a,.rns-dropdown__menu span{color:#e5e7eb}.rns-footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.rns-topbar__inner{justify-content:center}.rns-topbar__contact{gap:.6rem;font-size:.72rem;flex-wrap:wrap;justify-content:center;padding:.3rem 0}.rns-brand__copy strong{font-size:.78rem}.rns-brand__copy small{font-size:.68rem}.rns-brand img{height:40px}.rns-footer-grid{grid-template-columns:1fr}}

/* Phase 9C: Original homepage conversion */
.rns-home { overflow: hidden; }
.rns-hero-slider { position: relative; height: min(720px, calc(100vh - 118px)); min-height: 560px; background: #0f172a; }
.rns-hero-slide { position: absolute; inset: 0; display: grid; align-items: center; background-size: cover; background-position: center; opacity: 0; visibility: hidden; transition: opacity .8s ease; }
.rns-hero-slide.is-active { opacity: 1; visibility: visible; }
.rns-hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,34,68,.94) 0%, rgba(0,34,68,.76) 48%, rgba(0,34,68,.25) 100%); }
.rns-hero-content { position: relative; z-index: 1; color: #fff; }
.rns-hero-content > * { max-width: 760px; }
.rns-hero-eyebrow, .rns-section-kicker { margin: 0 0 .75rem; color: #2563eb; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; font-size: .82rem; }
.rns-hero-eyebrow { color: #60a5fa; }
.rns-hero-content h1 { margin: 0; font-size: clamp(2.5rem, 5.5vw, 5rem); line-height: 1.05; letter-spacing: -.035em; }
.rns-hero-content > p:not(.rns-hero-eyebrow) { margin: 1.5rem 0 0; font-size: clamp(1rem, 1.7vw, 1.25rem); color: #e5e7eb; }
.rns-hero-actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2rem; }
.rns-home-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: .8rem 1.35rem; border-radius: .4rem; font-weight: 700; text-decoration: none; transition: transform .2s ease, background .2s ease; }
.rns-home-btn:hover { transform: translateY(-2px); }
.rns-home-btn--primary { background: #2563eb; color: #fff; }
.rns-home-btn--primary:hover { background: #1d4ed8; color: #fff; }
.rns-home-btn--outline { border: 1px solid rgba(255,255,255,.75); color: #fff; }
.rns-home-btn--outline:hover { background: #fff; color: #002244; }
.rns-hero-dots { position: absolute; z-index: 3; left: 50%; bottom: 2rem; transform: translateX(-50%); display: flex; gap: .6rem; }
.rns-hero-dots button { width: 11px; height: 11px; padding: 0; border: 1px solid #fff; border-radius: 50%; background: transparent; cursor: pointer; }
.rns-hero-dots button.is-active { background: #fff; }

.rns-home-section { padding: 6rem 0; }
.rns-home-section--soft { background: #f8fafc; }
.rns-home-two-col { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 4rem; }
.rns-home-image { position: relative; }
.rns-home-image > img { display: block; width: 100%; min-height: 480px; object-fit: cover; border-radius: .75rem; }
.rns-experience-badge { position: absolute; right: -1.5rem; bottom: 2rem; display: grid; width: 180px; padding: 1.25rem; border-radius: .65rem; background: #2563eb; color: #fff; box-shadow: 0 18px 40px rgba(37,99,235,.25); }
.rns-experience-badge strong { font-size: 2.25rem; line-height: 1; }
.rns-experience-badge span { margin-top: .5rem; font-size: .85rem; }
.rns-about-home h2, .rns-section-heading h2, .rns-home-contact h2 { margin: 0; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.15; color: #0f172a; }
.rns-about-home p { color: #64748b; }
.rns-stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 2rem 0; }
.rns-stat-grid div { display: grid; padding: 1rem; border-left: 3px solid #2563eb; background: #f8fafc; }
.rns-stat-grid strong { color: #002244; font-size: 1.65rem; }
.rns-stat-grid span { color: #64748b; font-size: .85rem; }

.rns-section-heading { max-width: 700px; margin: 0 auto 3rem; text-align: center; }
.rns-section-heading > p:last-child { color: #64748b; }
.rns-original-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1.5rem; }
.rns-original-card { overflow: hidden; border: 1px solid #e2e8f0; border-radius: .65rem; background: #fff; box-shadow: 0 8px 30px rgba(15,23,42,.06); transition: transform .25s ease, box-shadow .25s ease; }
.rns-original-card:hover { transform: translateY(-5px); box-shadow: 0 18px 40px rgba(15,23,42,.12); }
.rns-original-card__image { display: block; aspect-ratio: 16/10; overflow: hidden; background: #e2e8f0; }
.rns-original-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.rns-original-card:hover .rns-original-card__image img { transform: scale(1.04); }
.rns-original-card__body { padding: 1.5rem; }
.rns-original-card h3 { margin: 0 0 .75rem; font-size: 1.25rem; }
.rns-original-card h3 a { color: #0f172a; text-decoration: none; }
.rns-original-card p { color: #64748b; }
.rns-text-link { color: #2563eb; font-weight: 700; text-decoration: none; }
.rns-original-card--placeholder { min-height: 190px; }
.rns-section-action { margin-top: 2.5rem; text-align: center; }

.rns-why-section { background: #002244; color: #fff; }
.rns-section-heading--light h2 { color: #fff; }
.rns-benefit-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; }
.rns-benefit-grid > div { padding: 2rem 1.5rem; border: 1px solid rgba(255,255,255,.12); border-radius: .65rem; background: rgba(255,255,255,.06); }
.rns-benefit-grid span { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 1.25rem; border-radius: .5rem; background: #2563eb; font-weight: 800; }
.rns-benefit-grid h3 { margin: 0 0 .75rem; }
.rns-benefit-grid p { margin: 0; color: #cbd5e1; }

.rns-trust-strip { padding: 2.5rem 0; background: #f1f5f9; }
.rns-trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.rns-trust-grid div { display: grid; place-items: center; text-align: center; }
.rns-trust-grid strong { color: #2563eb; font-size: 1.7rem; }
.rns-trust-grid span { color: #475569; font-size: .85rem; }

.rns-home-contact { background: #fff; }
.rns-home-contact-details { margin-top: 2rem; }
.rns-home-form-card { padding: 2rem; border-radius: .75rem; background: #f8fafc; box-shadow: 0 16px 45px rgba(15,23,42,.08); }

@media (max-width: 950px) {
	.rns-home-two-col { grid-template-columns: 1fr; gap: 3rem; }
	.rns-original-card-grid { grid-template-columns: repeat(2, 1fr); }
	.rns-benefit-grid { grid-template-columns: repeat(2, 1fr); }
	.rns-experience-badge { right: 1rem; }
}
@media (max-width: 650px) {
	.rns-hero-slider { min-height: 600px; height: calc(100vh - 118px); }
	.rns-hero-overlay { background: rgba(0,34,68,.82); }
	.rns-home-section { padding: 4rem 0; }
	.rns-original-card-grid, .rns-benefit-grid, .rns-trust-grid { grid-template-columns: 1fr; }
	.rns-stat-grid { grid-template-columns: 1fr 1fr 1fr; }
	.rns-home-image > img { min-height: 360px; }
}

/* Phase 9D: About and Contact pages */
.rns-page-hero { position: relative; min-height: 390px; display: grid; align-items: center; background-size: cover; background-position: center; color: #fff; }
.rns-page-hero--about { background-image: url('../images/original-site/office_1753091833812.jpg'); }
.rns-page-hero--contact { background-image: url('../images/original-site/home_1753091833813.jpg'); }
.rns-page-hero__overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,34,68,.94), rgba(0,34,68,.62)); }
.rns-page-hero__content { position: relative; z-index: 1; }
.rns-page-hero__content h1 { margin: 0; font-size: clamp(2.5rem, 5vw, 4.5rem); line-height: 1.05; }
.rns-page-hero__content > p:last-child { max-width: 720px; margin-top: 1rem; color: #e2e8f0; font-size: 1.1rem; }
.rns-page-editor-content { margin-top: 1.5rem; }
.rns-about-value-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.rns-about-value-grid article { padding: 2rem; border: 1px solid #e2e8f0; border-radius: .7rem; background: #fff; box-shadow: 0 10px 30px rgba(15,23,42,.05); }
.rns-about-value-grid article > span { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 1.25rem; border-radius: .5rem; background: #eff6ff; color: #2563eb; font-size: 1.5rem; font-weight: 800; }
.rns-about-value-grid h3 { margin: 0 0 .75rem; color: #0f172a; }
.rns-about-value-grid p { margin: 0; color: #64748b; }
.rns-benefit-grid--light > div { background: #fff; border-color: #e2e8f0; color: #0f172a; box-shadow: 0 10px 30px rgba(15,23,42,.05); }
.rns-benefit-grid--light > div p { color: #64748b; }
.rns-about-cta { padding: 4rem 0; background: #002244; color: #fff; }
.rns-about-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.rns-about-cta h2 { margin: 0; font-size: clamp(1.8rem, 3.5vw, 2.8rem); }

.rns-contact-layout { display: grid; grid-template-columns: .85fr 1.35fr; gap: 2rem; align-items: stretch; }
.rns-contact-info-panel { padding: 2.25rem; border-radius: .75rem; background: #002244; color: #fff; }
.rns-contact-info-panel > p { color: #cbd5e1; }
.rns-contact-info-item { display: grid; grid-template-columns: 44px 1fr; gap: 1rem; align-items: start; padding: 1.25rem 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.rns-contact-info-item > span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: .5rem; background: #2563eb; }
.rns-contact-info-item div { display: grid; gap: .25rem; }
.rns-contact-info-item a, .rns-contact-info-item p { color: #dbeafe; text-decoration: none; margin: 0; }
.rns-contact-hours { margin-top: 1.5rem; padding: 1rem; border-radius: .5rem; background: rgba(255,255,255,.07); }
.rns-contact-hours p { margin: .4rem 0 0; color: #cbd5e1; }
.rns-contact-form-panel { padding: 2.25rem; border: 1px solid #e2e8f0; border-radius: .75rem; background: #fff; box-shadow: 0 14px 40px rgba(15,23,42,.07); }
.rns-contact-form-panel h3, .rns-contact-info-panel h3 { margin-top: 0; font-size: 1.6rem; }
.rns-contact-map { padding: 0 0 6rem; }
.rns-map-placeholder { min-height: 320px; display: grid; place-items: center; align-content: center; text-align: center; padding: 2rem; border-radius: .75rem; background: #f1f5f9; border: 1px solid #e2e8f0; }
.rns-map-placeholder > span { font-size: 2.5rem; color: #2563eb; }
.rns-map-placeholder h2 { margin: .75rem 0 .25rem; }
.rns-map-placeholder p { margin: .25rem 0; color: #475569; }
.rns-map-note { font-size: .85rem; }

@media (max-width: 850px) {
	.rns-about-value-grid, .rns-contact-layout { grid-template-columns: 1fr; }
	.rns-about-cta__inner { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 650px) {
	.rns-page-hero { min-height: 330px; }
	.rns-about-value-grid { grid-template-columns: 1fr; }
	.rns-contact-info-panel, .rns-contact-form-panel { padding: 1.5rem; }
}

/* Phase 9E: Services archive and detail pages */
.rns-service-hero { background-image: url('../images/original-site/electrical-panel_1753091833814.jpg'); }
.rns-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.75rem; }
.rns-service-card { overflow:hidden; border:1px solid #e2e8f0; border-radius:.75rem; background:#fff; box-shadow:0 10px 32px rgba(15,23,42,.07); transition:.25s ease; }
.rns-service-card:hover { transform:translateY(-5px); box-shadow:0 20px 45px rgba(15,23,42,.12); }
.rns-service-card__image { display:block; aspect-ratio:16/10; overflow:hidden; background:#e2e8f0; }
.rns-service-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.rns-service-card:hover img { transform:scale(1.04); }
.rns-service-card__fallback { width:100%; height:100%; display:grid; place-items:center; font-size:3rem; color:#2563eb; background:#eff6ff; }
.rns-service-card__body { padding:1.5rem; }
.rns-service-card__body h2 { margin:0 0 .75rem; font-size:1.3rem; }
.rns-service-card__body h2 a { color:#0f172a; text-decoration:none; }
.rns-service-card__body p { color:#64748b; }
.rns-service-cta { padding:4rem 0; background:#002244; color:#fff; }
.rns-service-cta h2 { margin:0; font-size:clamp(1.8rem,3.5vw,2.8rem); }
.rns-empty-state { padding:4rem 2rem; text-align:center; border:1px dashed #cbd5e1; border-radius:.75rem; background:#f8fafc; }

.rns-service-detail-hero { position:relative; min-height:520px; display:grid; align-items:center; overflow:hidden; background:#002244; color:#fff; }
.rns-service-detail-hero__bg { position:absolute; inset:0; background-size:cover; background-position:center; }
.rns-service-detail-hero__overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,34,68,.96),rgba(0,34,68,.66),rgba(0,34,68,.35)); }
.rns-service-detail-hero__content { position:relative; z-index:1; }
.rns-service-detail-hero__content > * { max-width:780px; }
.rns-service-detail-hero h1 { margin:.5rem 0 1rem; font-size:clamp(2.6rem,5vw,4.8rem); line-height:1.05; }
.rns-service-detail-hero__content > p:not(.rns-section-kicker) { color:#e2e8f0; font-size:1.1rem; margin-bottom:2rem; }
.rns-back-link { color:#bfdbfe; text-decoration:none; font-weight:700; }
.rns-service-detail-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,.8fr); gap:3rem; align-items:start; }
.rns-detail-block { margin-bottom:3rem; }
.rns-detail-block h2 { font-size:clamp(1.7rem,3vw,2.4rem); color:#0f172a; }
.rns-detail-block--soft { padding:2rem; border-radius:.75rem; background:#f8fafc; }
.rns-structured-content ul { padding-left:1.25rem; }
.rns-structured-content li { margin:.55rem 0; }
.rns-service-sidebar { position:sticky; top:145px; display:grid; gap:1.5rem; }
.rns-service-sidebar__card { padding:1.5rem; border:1px solid #e2e8f0; border-radius:.75rem; background:#fff; box-shadow:0 10px 30px rgba(15,23,42,.06); }
.rns-service-sidebar__card h3 { margin-top:0; }
.rns-service-sidebar__card nav { display:grid; }
.rns-service-sidebar__card nav a { display:flex; justify-content:space-between; gap:1rem; padding:.8rem 0; border-bottom:1px solid #e2e8f0; color:#334155; text-decoration:none; }
.rns-service-sidebar__card nav a:hover { color:#2563eb; }
.rns-service-sidebar__card--blue { background:#002244; color:#fff; border:0; }
.rns-service-sidebar__card--blue p { color:#cbd5e1; }
.rns-service-process { padding:5rem 0; background:#002244; color:#fff; }
.rns-process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.25rem; }
.rns-process-grid > div { padding:1.75rem; border:1px solid rgba(255,255,255,.12); border-radius:.7rem; background:rgba(255,255,255,.05); }
.rns-process-grid strong { color:#60a5fa; font-size:2rem; }
.rns-process-grid h3 { margin:.8rem 0; }
.rns-process-grid p { margin:0; color:#cbd5e1; }

@media(max-width:950px){
	.rns-service-grid{grid-template-columns:repeat(2,1fr)}
	.rns-service-detail-layout{grid-template-columns:1fr}
	.rns-service-sidebar{position:static}
	.rns-process-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
	.rns-service-grid,.rns-process-grid{grid-template-columns:1fr}
	.rns-service-detail-hero{min-height:460px}
}

/* Phase 9F: Products archive and detail pages */
.rns-product-hero { background-image:url('../images/original-site/plc-panel_1753091833815.jpg'); }
.rns-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.75rem; }
.rns-product-card { overflow:hidden; border:1px solid #e2e8f0; border-radius:.75rem; background:#fff; box-shadow:0 10px 32px rgba(15,23,42,.07); transition:.25s ease; }
.rns-product-card:hover { transform:translateY(-5px); box-shadow:0 20px 45px rgba(15,23,42,.12); }
.rns-product-card__image { display:block; aspect-ratio:4/3; overflow:hidden; background:#f1f5f9; }
.rns-product-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.rns-product-card:hover img { transform:scale(1.04); }
.rns-product-card__fallback { width:100%; height:100%; display:grid; place-items:center; font-size:3rem; color:#2563eb; background:#eff6ff; }
.rns-product-card__body { padding:1.5rem; }
.rns-product-card__body h2 { margin:0 0 .75rem; font-size:1.3rem; }
.rns-product-card__body h2 a { color:#0f172a; text-decoration:none; }
.rns-product-card__body p { color:#64748b; }
.rns-product-cta { padding:4rem 0; background:#002244; color:#fff; }
.rns-product-cta h2 { margin:0; font-size:clamp(1.8rem,3.5vw,2.8rem); }

.rns-product-intro { padding:5rem 0; background:#fff; }
.rns-back-link--dark { display:inline-block; margin-bottom:2rem; color:#2563eb; }
.rns-product-intro__grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:4rem; align-items:center; }
.rns-product-gallery { overflow:hidden; min-height:460px; display:grid; place-items:center; border:1px solid #e2e8f0; border-radius:.8rem; background:#f8fafc; box-shadow:0 15px 45px rgba(15,23,42,.08); }
.rns-product-gallery img { width:100%; height:100%; max-height:580px; object-fit:cover; }
.rns-product-gallery__fallback { font-size:6rem; color:#2563eb; }
.rns-product-summary h1 { margin:.4rem 0 1.25rem; color:#0f172a; font-size:clamp(2.5rem,5vw,4.5rem); line-height:1.05; }
.rns-product-lead { color:#64748b; font-size:1.1rem; line-height:1.8; }
.rns-product-highlights { display:grid; gap:.7rem; margin:1.75rem 0; }
.rns-product-highlights span { color:#334155; font-weight:700; }
.rns-product-contact-btn { border:1px solid #cbd5e1; color:#0f172a; background:#fff; }
.rns-product-contact-btn:hover { border-color:#2563eb; color:#2563eb; }
.rns-product-detail-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,.8fr); gap:3rem; align-items:start; }
.rns-product-info-box { padding:2rem; border:1px solid #dbeafe; border-radius:.75rem; background:#eff6ff; }
.rns-specification-content table { width:100%; border-collapse:collapse; }
.rns-specification-content th,.rns-specification-content td { padding:.85rem 1rem; border:1px solid #e2e8f0; text-align:left; }
.rns-specification-content tr:nth-child(even) { background:#f8fafc; }
.rns-product-quality { padding:5rem 0; background:#002244; color:#fff; }

@media(max-width:950px){
	.rns-product-grid{grid-template-columns:repeat(2,1fr)}
	.rns-product-intro__grid,.rns-product-detail-layout{grid-template-columns:1fr}
	.rns-product-gallery{min-height:360px}
}
@media(max-width:650px){
	.rns-product-grid{grid-template-columns:1fr}
	.rns-product-intro{padding:3.5rem 0}
	.rns-product-gallery{min-height:280px}
}

/* Phase 9G final responsive/accessibility hardening */
html{scroll-behavior:smooth}img{max-width:100%;height:auto}
.rns-home-btn:focus-visible,.rns-navlinks a:focus-visible,.rns-submenu-toggle:focus-visible,.rns-mobile-toggle:focus-visible,.rns-hero-dots button:focus-visible{outline:3px solid currentColor;outline-offset:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(max-width:480px){body{overflow-x:hidden}.rns-hero-content h1,.rns-service-detail-hero h1,.rns-product-summary h1{overflow-wrap:anywhere}.rns-stat-grid{grid-template-columns:1fr}.rns-hero-actions{align-items:stretch;flex-direction:column}.rns-hero-actions .rns-home-btn{width:100%}}

/* Phase 9I map embed */
.rns-map-embed{overflow:hidden;border-radius:18px;box-shadow:0 10px 35px rgba(15,23,42,.08)}.rns-map-embed iframe{display:block;width:100%;min-height:360px}

/* Phase 9J detailed content */
.rns-migrated-content{max-width:850px}
.rns-detail-lead{font-size:1.2rem;line-height:1.8;color:#334155;margin:0 0 2rem}
.rns-detail-section{padding:0 0 2rem;margin:0 0 2rem;border-bottom:1px solid #e2e8f0}
.rns-detail-section h2,.rns-detail-cta h2{font-size:clamp(1.55rem,2.5vw,2.15rem);line-height:1.2;margin:0 0 1rem;color:#0f172a}
.rns-detail-section p,.rns-detail-list{font-size:1.05rem;line-height:1.75;color:#475569}
.rns-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1.5rem;padding:0;margin:1.25rem 0 0;list-style:none}
.rns-detail-list li{position:relative;padding-left:1.6rem}
.rns-detail-list li:before{content:"✓";position:absolute;left:0;font-weight:800;color:#2563eb}
.rns-detail-cta{padding:2rem;border-radius:18px;background:#f1f5f9;margin-top:1rem}
.rns-detail-cta p{font-size:1.05rem;line-height:1.7;color:#475569}
@media(max-width:700px){.rns-detail-list{grid-template-columns:1fr}.rns-detail-cta{padding:1.5rem}}
