/* LT Generators. Inner-page component layer. Loads after site-v2.css and inherits its tokens,
   grounds, type roles, buttons, tiles, tags, rows, photos and shadows.
   Components here: page hero, sticky section nav, article + aside layout, prose, FAQ,
   spec tables, brand tier grid, video facade grid, post grid, testimonial grid, CTA band. */

/* ---------- PAGE HERO ---------- */
.phero{position:relative;padding-top:calc(var(--nav-h) + 56px);padding-bottom:64px;--gx:18%;--gy:30%;
  background:radial-gradient(70% 60% at var(--gx) var(--gy),rgba(217,161,43,.12),rgba(217,161,43,0) 70%),linear-gradient(180deg,#0B1220,#0D1526)}
.phero-steel{background:radial-gradient(70% 60% at var(--gx) var(--gy),rgba(111,155,217,.12),rgba(111,155,217,0) 70%),linear-gradient(180deg,#0B1220,#0D1526)}
.phero-verd{background:radial-gradient(70% 60% at var(--gx) var(--gy),rgba(79,163,126,.12),rgba(79,163,126,0) 70%),linear-gradient(180deg,#0B1220,#0D1526)}
.phero .grid{align-items:center}
.phero-copy{grid-column:1 / span 7}
.phero-copy .crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-family:var(--font-mono);font-weight:500;font-size:12px;line-height:1;text-transform:uppercase;color:var(--mist)}
.phero-copy .crumbs a{color:var(--mist);text-decoration:none}
.phero-copy .crumbs a:hover{color:var(--paper)}
.phero-copy .crumbs .ic{width:14px;height:14px;vertical-align:0;opacity:.7}
.phero-copy .h1{font-size:64px;margin-top:28px}
.phero-copy .lede{margin-top:20px;max-width:34em;color:var(--paper)}
.phero-copy .btn-row{margin-top:36px}
.phero-side{grid-column:8 / -1;align-self:end}
.phero-side .photo{box-shadow:var(--shadow-panel)}
.phero-side .photo-45{aspect-ratio:4/5}
.phero-facts{grid-column:1 / -1;margin-top:56px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(245,244,240,.10)}
.phero-facts li{display:flex;align-items:center;gap:12px;padding:20px 24px;border-left:1px solid rgba(245,244,240,.10);font-family:var(--font-mono);font-weight:500;font-size:12px;line-height:1.4;text-transform:uppercase}
.phero-facts li:first-child{border-left:0;padding-left:0}
.phero-facts .ic{width:20px;height:20px;color:var(--brass);vertical-align:0}
@media (max-width:1279px){.phero-copy .h1{font-size:52px}.phero-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.phero-facts li:nth-child(odd){border-left:0;padding-left:0}.phero-facts li:nth-child(n+3){border-top:1px solid rgba(245,244,240,.10)}}
@media (max-width:1023px){.phero-copy,.phero-side{grid-column:1 / -1}.phero-side{margin-top:40px}.phero-side .photo-45{aspect-ratio:3/2}.phero{padding-top:calc(var(--nav-h) + 32px);padding-bottom:48px}}
@media (max-width:719px){.phero-copy .h1{font-size:40px}.phero-facts{grid-template-columns:1fr}.phero-facts li{border-left:0;padding:14px 0;border-top:1px solid rgba(245,244,240,.10)}.phero-facts li:first-child{border-top:0}}

/* ---------- STICKY SECTION NAV ---------- */
.subnav{position:sticky;top:var(--nav-h);z-index:40;background:rgba(245,244,240,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--hairline-light)}
.subnav .wrap{display:flex;align-items:center;gap:8px;height:56px;overflow-x:auto;scrollbar-width:none}
.subnav .wrap::-webkit-scrollbar{display:none}
.subnav a{flex:0 0 auto;display:inline-flex;align-items:center;height:36px;padding:0 14px;border-radius:0;font-size:14px;line-height:1;font-weight:500;color:var(--midnight);text-decoration:none;border:1px solid transparent;transition:background-color .15s,border-color .15s}
.subnav a:hover{background:rgba(11,18,32,.05)}
.subnav a.is-active{background:var(--midnight);color:var(--paper)}
.subnav .spacer{flex:1 1 auto}
.subnav .btn{height:36px;padding:0 14px;font-size:14px}
@media (max-width:719px){.subnav .btn{display:none}}

/* ---------- SECTIONS ---------- */
.psec{padding-top:96px;padding-bottom:96px}
.psec + .psec{padding-top:0}
.psec .head{grid-column:1 / span 8}
.psec .head .lede{margin-top:20px}
.psec-rule .wrap::before{content:"";display:block;height:1px;background:var(--rule);margin-bottom:64px}
@media (max-width:1023px){.psec .head{grid-column:1 / -1}}
@media (max-width:719px){.psec{padding-top:64px;padding-bottom:64px}.psec-rule .wrap::before{margin-bottom:40px}}

/* Article + aside */
.art{grid-column:1 / span 7}
.aside{grid-column:9 / -1;align-self:start;position:sticky;top:calc(var(--nav-h) + 24px)}
.aside-card{background:var(--surface);border:1px solid var(--hairline-light);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-card)}
.aside-card .label{margin-bottom:20px}
.aside-card .h3{margin-bottom:8px}
.aside-card .btn{width:100%;margin-top:20px}
.aside-card .phone{margin-top:20px;font-size:24px;line-height:1.2;font-weight:600;letter-spacing:-.01em}
.aside-card .phone a{display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none}
.aside-card .phone .ic{color:var(--brass-deep);width:22px;height:22px;vertical-align:0}
.aside-card .fine{margin-top:16px;font-family:var(--font-mono);font-weight:500;font-size:12px;line-height:1.5;text-transform:uppercase;color:var(--midnight);opacity:.7}
.aside-card + .aside-card{margin-top:16px}
.aside-list{display:flex;flex-direction:column}
.aside-list a{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--hairline-light);color:inherit;text-decoration:none;font-size:16px;line-height:20px;font-weight:500}
.aside-list a:first-child{border-top:0;padding-top:0}
.aside-list a:hover{text-decoration:underline;text-underline-offset:4px}
.aside-list .ic{color:var(--brass-deep)}
@media (max-width:1023px){.art,.aside{grid-column:1 / -1}.aside{position:static;margin-top:48px}}

/* Prose */
.prose{max-width:66ch}
.prose p + p{margin-top:1em}
.prose .h2{margin-top:64px}
.prose .h3{margin-top:40px}
.prose .h2 + p,.prose .h3 + p{margin-top:16px}
.prose ul{margin-top:16px;display:flex;flex-direction:column;gap:10px}
.prose ul li{display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:12px;align-items:start}
.prose ul li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--brass);margin:9px 0 0 4px}
.prose ol{margin-top:16px;counter-reset:n;display:flex;flex-direction:column;gap:12px}
.prose ol li{counter-increment:n;display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:12px;align-items:baseline}
.prose ol li::before{content:counter(n,decimal-leading-zero);font-family:var(--font-mono);font-weight:500;font-size:12px;line-height:1;text-transform:uppercase;color:var(--brass-deep)}
.prose a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.prose .callout{margin-top:32px;padding:24px 28px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--hairline-light);box-shadow:var(--shadow-card);display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:16px;align-items:start}
.prose .callout p{margin:0}
.prose .callout .tile{margin-top:-2px}
.prose figure{margin:40px 0 0}
.prose figcaption{margin-top:12px;font-family:var(--font-mono);font-weight:500;font-size:12px;line-height:1.5;text-transform:uppercase;opacity:.7}
.prose .photo{box-shadow:var(--shadow-card)}

/* Feature list with icon tiles (rows-ic already exists in v2) */
.feature-grid{grid-column:1 / -1;margin-top:64px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gutter)}
.feature{background:var(--surface);border:1px solid var(--hairline-light);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-card)}
.feature .h3{margin-top:20px;font-size:20px}
.feature p{margin-top:10px;font-size:16px;line-height:1.5}
.feature-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.feature-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1023px){.feature-grid,.feature-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:719px){.feature-grid,.feature-4,.feature-2{grid-template-columns:1fr}.feature-grid{margin-top:40px}}

/* Numbered spec table (two columns of rows) */
.spec{grid-column:1 / -1;margin-top:48px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--gutter)}
.spec .row{padding:16px 0}
@media (max-width:719px){.spec{grid-template-columns:1fr}}

/* Brand tiers */
.tiers{grid-column:1 / -1;margin-top:64px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gutter)}
.tier{background:var(--surface);border:1px solid var(--hairline-light);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:16px}
.tier .h3{font-size:22px}
.tier .tag,.post-body .tag,.testi .who .tag,.feature .tag{align-self:flex-start}
.tier .rows{margin-top:auto}
.tier .row{padding:12px 0;font-size:16px;line-height:1.45}
.tier-brass{border-color:var(--tint-brass-bd);background:linear-gradient(180deg,#FFFDF7,#FFFFFF)}
@media (max-width:1023px){.tiers{grid-template-columns:1fr}}

/* FAQ */
.faq{grid-column:1 / span 8;margin-top:48px}
.faq details{border-top:1px solid var(--hairline-light)}
.faq details:last-child{border-bottom:1px solid var(--hairline-light)}
.faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) 40px;column-gap:16px;align-items:center;padding:22px 0;font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary .tile{transition:transform .2s;font-family:var(--font-sans);font-size:24px;line-height:1;font-weight:400}
.faq details[open] summary .tile{transform:rotate(45deg)}
.faq details[open] summary .tile{color:var(--brass-deep)}
.faq .a{padding:0 56px 28px 0;max-width:66ch}
.faq .a p + p{margin-top:1em}
.faq-side{grid-column:10 / -1;margin-top:48px}
@media (max-width:1023px){.faq,.faq-side{grid-column:1 / -1}.faq summary{font-size:18px;padding:18px 0}.faq .a{padding-right:0}}

/* Video facade grid */
.videos{grid-column:1 / -1;margin-top:64px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gutter)}
.video{border-radius:var(--r-lg);overflow:hidden;background:var(--midnight);box-shadow:var(--shadow-card);position:relative;aspect-ratio:16/9;border:0;padding:0;cursor:pointer;display:block;width:100%}
.video img{width:100%;height:100%;object-fit:cover;opacity:.92;transition:opacity .2s,transform .4s}
.video:hover img{opacity:1;transform:scale(1.02)}
.video .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;background:linear-gradient(180deg,var(--brass-light),var(--brass));box-shadow:0 1px 0 rgba(255,255,255,.3) inset,0 12px 32px -8px rgba(0,0,0,.6);display:grid;place-items:center;color:var(--midnight)}
.video .play::after{content:"";width:0;height:0;border-style:solid;border-width:12px 0 12px 20px;border-color:transparent transparent transparent var(--midnight);margin-left:4px}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-cap{margin-top:14px}
.video-cap .h3{font-size:20px}
.video-cap p{margin-top:6px}
@media (max-width:719px){.videos{grid-template-columns:1fr;margin-top:40px}}

/* Post grid */
.posts{grid-column:1 / -1;margin-top:64px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gutter)}
.post{background:var(--surface);border:1px solid var(--hairline-light);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-card);display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}
.post:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}
.post .photo{border-radius:0;aspect-ratio:3/2}
.post-body{padding:24px 24px 28px;display:flex;flex-direction:column;gap:12px;flex:1 1 auto}
.post-body .h3{font-size:20px}
.post-body .h3 a{color:inherit;text-decoration:none}
.post-body .h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.post-body .meta{font-family:var(--font-mono);font-weight:500;font-size:12px;line-height:1.5;text-transform:uppercase;opacity:.7;margin-top:auto}
.post-feat{grid-column:1 / -1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter)}
.post-feat .photo{grid-column:1 / span 7;aspect-ratio:3/2}
.post-feat .post-body{grid-column:8 / -1;padding:8px 0}
@media (max-width:1023px){.posts{grid-template-columns:repeat(2,minmax(0,1fr))}.post-feat .photo,.post-feat .post-body{grid-column:1 / -1}.post-feat .post-body{padding:20px 0 0}}
@media (max-width:719px){.posts{grid-template-columns:1fr;margin-top:40px}}

/* Testimonials */
.testi{grid-column:1 / -1;margin-top:64px;columns:2;column-gap:var(--gutter)}
.testi figure{break-inside:avoid;margin:0 0 var(--gutter);background:var(--surface);border:1px solid var(--hairline-light);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-card)}
.testi blockquote{margin:0;text-wrap:pretty}
.testi figcaption{display:flex;align-items:center;gap:14px;margin-top:20px}
.testi figcaption .who{display:flex;flex-direction:column;gap:4px}
.testi figcaption .mono{opacity:.75}
.testi .initials{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:transparent;border:1px solid var(--tint-brass-bd);color:var(--brass-deep);font-family:var(--font-mono);font-weight:500;font-size:13px;flex:0 0 auto}
.testi-feat{grid-column:1 / -1;margin-top:64px}
@media (max-width:1023px){.testi{columns:1}}

/* Stats row on light ground */
.stats{grid-column:1 / -1;margin-top:64px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.stats li{padding:0 32px;border-left:1px solid var(--hairline-light)}
.stats li:first-child{border-left:0;padding-left:0}
.stats .n{font-size:56px;line-height:1;font-weight:500;letter-spacing:-.03em}
.stats .rule{height:1px;background:linear-gradient(90deg,var(--brass) 0,var(--brass) 48px,var(--hairline-light) 48px);margin-top:12px}
.stats .cap{margin-top:14px;max-width:32ch}
@media (max-width:1023px){.stats{grid-template-columns:1fr;margin-top:48px}.stats li{padding:20px 0;border-left:0;border-top:1px solid var(--hairline-light)}.stats li:first-child{border-top:0;padding-top:0}}

/* Inline form panel on light ground (contact, survey, careers) */
.panel-light{grid-column:1 / span 7;background:var(--surface);border:1px solid var(--hairline-light);border-radius:var(--r-lg);padding:40px;box-shadow:var(--shadow-card)}
.panel-light .field label{color:var(--midnight)}
.panel-light .field input,.panel-light .field textarea,.panel-light .field select{background:var(--paper);color:var(--midnight);border:1px solid var(--hairline-light);box-shadow:none}
.panel-light .field select{width:100%;height:52px;border-radius:var(--r);font-family:var(--font-sans);font-size:16px;font-weight:500;padding:0 16px;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--midnight) 50%),linear-gradient(135deg,var(--midnight) 50%,transparent 50%);background-position:calc(100% - 20px) 24px,calc(100% - 15px) 24px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.panel-light .field input:hover,.panel-light .field textarea:hover{border-color:var(--midnight)}
.panel-light .field input:focus-visible,.panel-light .field textarea:focus-visible,.panel-light .field select:focus-visible{outline:0;border-color:var(--brass-deep);box-shadow:0 0 0 3px rgba(217,161,43,.25)}
.panel-light .seg button{border-color:var(--hairline-light);background:var(--paper);color:var(--midnight)}
.panel-light .seg button[aria-pressed="true"]{background:var(--midnight);color:var(--paper);border-color:var(--midnight);box-shadow:none}
.panel-light .panel-head{border-bottom-color:var(--hairline-light)}
.panel-light .panel-head p{color:var(--midnight);opacity:.75}
.panel-light .panel-head p b{color:var(--midnight)}
.panel-light .demo{color:var(--midnight);opacity:.6}
.choices{display:flex;flex-wrap:wrap;gap:8px}
.choices label{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:0;border:1px solid var(--hairline-light);background:var(--paper);font-size:16px;line-height:20px;font-weight:500;cursor:pointer}
.choices input,.rating input{width:18px;height:18px;min-height:0;padding:0;margin:0;border:0;background:none;box-shadow:none;border-radius:0;flex:0 0 auto}
.choices input{accent-color:var(--brass-deep)}
.panel .choices label{background:rgba(11,18,32,.5);border-color:rgba(245,244,240,.14);color:var(--paper)}
.panel .choices label:hover{border-color:rgba(245,244,240,.3)}
.panel .choices input{accent-color:var(--brass)}
.panel fieldset.field{border:0;padding:0;margin:0;min-width:0}
.panel fieldset.field legend{padding:0;margin-bottom:8px;color:var(--paper)}
.rating{display:flex;gap:8px}
.rating label{display:grid;place-items:center;width:52px;height:52px;border-radius:var(--r);border:1px solid var(--hairline-light);background:var(--paper);font-weight:500;cursor:pointer}
.rating input{position:absolute;opacity:0;pointer-events:none}
.rating input:checked + span{background:var(--midnight);color:var(--paper);border-radius:var(--r);width:100%;height:100%;display:grid;place-items:center}
.rating input:focus-visible + span{outline:2px solid var(--brass-deep);outline-offset:2px}
@media (max-width:1023px){.panel-light{grid-column:1 / -1;padding:24px}}

/* ---------- CTA BAND (end of every inner page) ---------- */
.cta-band{padding-top:96px;padding-bottom:96px;background:radial-gradient(60% 50% at 80% 30%,rgba(217,161,43,.10),rgba(217,161,43,0) 70%),linear-gradient(180deg,#0B1220,#0D1526)}
.cta-band .grid{align-items:center}
.cta-copy{grid-column:1 / span 7}
.cta-copy .lede{margin-top:20px;max-width:34em}
.cta-actions{grid-column:9 / -1;display:flex;flex-direction:column;gap:12px}
.cta-actions .btn{width:100%}
.cta-actions .fine{font-family:var(--font-mono);font-weight:500;font-size:12px;line-height:1.5;text-transform:uppercase;color:var(--mist);text-align:center;margin-top:4px}
@media (max-width:1023px){.cta-copy,.cta-actions{grid-column:1 / -1}.cta-actions{margin-top:32px}}
@media (max-width:719px){.cta-band{padding-top:64px;padding-bottom:64px}}

/* Current page in nav */
.nav-links a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;text-decoration-color:var(--brass)}
.menu-list a[aria-current="page"] .tile{color:var(--brass)}

/* ---------- FOLDED PAGE STYLES ---------- */

/* folded from accessories.html */
/* Scoped, fold into pages.css later: full-width section head below 1024px, and a data table inside .prose set in the existing type roles. */
@media (max-width:1023px){.page-accessories .psec .head{grid-column:1 / -1}}
.page-accessories .table-wrap{margin-top:24px;overflow-x:auto}
.page-accessories .prose table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.4}
@media (max-width:719px){.page-accessories .prose table{font-size:14px}.page-accessories .prose th,.page-accessories .prose td{padding-right:10px}}
.page-accessories .prose th,.page-accessories .prose td{padding:12px 16px 12px 0;border-top:1px solid var(--hairline-light);text-align:left;vertical-align:top}
.page-accessories .prose thead th{font-family:var(--font-mono);font-weight:500;font-size:12px;line-height:1.4;text-transform:uppercase;border-top:0;padding-top:0}
.page-accessories .prose tbody th{font-weight:600}
.page-accessories .prose td{font-feature-settings:"kern","tnum","lnum"}
.page-accessories .prose tr:last-child th,.page-accessories .prose tr:last-child td{border-bottom:1px solid var(--hairline-light)}
.page-accessories .prose table + p{margin-top:12px}
.page-accessories .prose caption{text-align:left;padding-bottom:12px}

/* folded from blog.html */
.page-blog .post .photo-tile{display:grid;place-items:center}
.page-blog .post-body .tag{align-self:flex-start}
.page-blog .post-feat .post-body{padding:24px 24px 28px 0}
@media (max-width:1023px){.page-blog .post-feat .post-body{padding:24px 24px 28px}}

/* folded from careers.html */
.page-careers .prose figure .photo{max-width:500px}

/* folded from commercial.html */
/* Scoped fixes, fold into pages.css later: the section head spans all 12 columns below 1024px, and a tag inside a flex-column tier keeps its own width. */
@media (max-width:1023px){.page-commercial .psec .head{grid-column:1 / -1}}
.page-commercial .tier .tag{align-self:flex-start}

/* folded from contact.html */
.page-contact .art{grid-column:1 / span 5}
.page-contact .panel{grid-column:7 / -1}
.page-contact .photo iframe{display:block;width:100%;height:100%;border:0}
.page-contact .prose .callout .h3{margin-top:0;font-size:20px}
.page-contact .prose .callout p + p{margin-top:6px}
.page-contact .prose .callout a{text-decoration:none}
.page-contact .prose .callout a:hover{text-decoration:underline;text-underline-offset:4px}
.page-contact .prose .video + figcaption{margin-top:14px}
.page-contact fieldset.field{border:0;padding:0;margin:0;min-width:0}
.page-contact fieldset.field legend{padding:0;margin-bottom:8px;color:var(--paper)}
.page-contact .panel #prop-label{color:var(--paper)}
.page-contact .choices label{color:var(--midnight)}
.page-contact .choices input{width:18px;height:18px;padding:0;margin:0;background:none;border:0;box-shadow:none}
@media (max-width:1023px){.page-contact .art{grid-column:1 / -1}.page-contact .panel{grid-column:1 / -1;margin-top:48px}}

/* folded from faqs.html */
/* fold into pages.css: section heads go full width below the desktop grid */
    @media (max-width:1023px){.page-faqs .psec .head{grid-column:1 / -1}}
    .page-faqs .faq .a ul + p{margin-top:1em}

/* folded from financing.html */
/* fold into pages.css: section heads go full width below the desktop grid */
    @media (max-width:1023px){.page-financing .psec .head{grid-column:1 / -1}}

/* folded from maintenance.html */
/* fold into pages.css: section heads go full width below the desktop grid */
    @media (max-width:1023px){.page-maintenance .psec .head{grid-column:1 / -1}}

/* folded from outages.html */
/* fold into pages.css: section heads go full width below the desktop grid */
    @media (max-width:1023px){.page-outages .psec .head{grid-column:1 / -1}}

/* folded from residential.html */
/* Scoped fixes, fold into pages.css later: the section head spans all 12 columns below 1024px, and a tag inside a flex-column tier keeps its own width. */
@media (max-width:1023px){.page-residential .psec .head{grid-column:1 / -1}}
.page-residential .tier .tag{align-self:flex-start}

/* folded from survey.html */
.page-survey .panel-light .h3{font-size:20px;margin-top:12px}
.page-survey .panel-light .field .small{color:var(--midnight)}
.page-survey .rating{flex-wrap:wrap}
.page-survey .rating label{width:auto;position:relative}
.page-survey .rating label span{display:grid;place-items:center;height:100%;width:100%;padding:0 16px;font-size:15px;line-height:1.2}
.page-survey .rating input:checked + span{padding:0 16px}
.page-survey .panel-light .fine{grid-column:1 / -1;margin-top:4px;text-align:center;font-family:var(--font-mono);font-weight:500;font-size:12px;line-height:1.5;text-transform:uppercase;color:var(--midnight);opacity:.7}
.page-survey .panel-light .fine a{color:inherit}
.page-survey fieldset.field{border:0;padding:0;margin:0;min-width:0}
.page-survey fieldset.field legend{padding:0;margin-bottom:8px}
.page-survey .choices input{width:18px;height:18px;padding:0;margin:0;background:none;border:0;box-shadow:none}
.page-survey .rating input{width:1px;height:1px;margin:0;padding:0;border:0}

/* folded from testimonials.html */
.page-testimonials .testi .who .tag{align-self:flex-start;margin-top:6px}
.page-testimonials .testi .initials .ic{width:18px;height:18px}
