/* Owner-authorized visual corrections. No layout clipping or blanket green-button override. */
.cse-site .cse-journal-feed{border:0;margin-top:0;padding-block:0 100px}.cse-site .cse-journal-page>.elementor-element{margin-bottom:20px}.cse-site .cse-journal-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--cse-component-gap,32px);align-items:stretch;margin:32px 0}.cse-journal-card{min-width:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}.cse-journal-card .cse-journal-image{display:block;aspect-ratio:3/2;overflow:hidden}.cse-site .cse-journal-card img{height:100%;width:100%;object-fit:cover}.cse-journal-copy{padding:24px 0;display:flex;flex:1;flex-direction:column;gap:18px}.cse-site .cse-journal-card :is(h2,h3){font-family:var(--cse-card-font,inherit);font-size:var(--cse-card-size,32px);line-height:1.15;margin:0;letter-spacing:-.025em}.cse-site .cse-journal-card p{font-size:var(--cse-body-size,18px);line-height:1.65;margin:0}.cse-site .cse-journal-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:14px;line-height:1.5}.cse-journal-meta span{border-left:1px solid var(--line);padding-left:12px}.cse-read-more{margin-top:auto;align-self:start;min-height:44px;display:inline-flex;gap:24px;align-items:center;border-bottom:1px solid currentColor;font-size:16px}.hearthline .cse-journal-card{border:0}.hearthline .cse-journal-card img{border-radius:140px 140px 0 0}.civicgrid .cse-journal-copy{padding:24px;border:1px solid var(--line);border-top:0}.ironpeak .cse-journal-card{border-top:4px solid var(--accent)}
.cse-site .cse-home-chapter{padding-block:var(--cse-section-space,88px)}.cse-site .cse-home-chapter h2{max-width:18ch}.cse-site .cse-home-chapter p{max-width:62ch}.cse-site .cse-home-chapter .cse-chapter-copy{gap:28px}.cse-site .cse-home-chapter .cse-picture img{width:100%;aspect-ratio:4/3;object-fit:cover}.cse-site .cse-chapter-copy>.elementor-widget-button{width:auto;align-self:start}.cse-site .cse-home-journal h2{max-width:24ch}.cse-site .cse-home-journal{border-top:1px solid var(--line)}.cse-site .cse-contact-image img{width:100%;aspect-ratio:16/7;object-fit:cover}.cse-site .cse-context-image img{aspect-ratio:3/2;object-fit:cover;width:100%}.cse-site .cse-context-caption{font-size:14px;line-height:1.6;max-width:65ch}
/* The roofing identity is light, with charcoal technical bands and controlled burnt-orange actions. */
body.cse-site.ironpeak.cse-roof-light{--ink:var(--e-global-color-39d0d0b,#202a2c);--paper:var(--e-global-color-454b1fa,#f6f5ef);--accent:var(--e-global-color-528de0a,#a93813);--line:var(--e-global-color-b0f30fd,#bec7c4)}.cse-site.ironpeak.cse-roof-light .iron-field p{color:inherit}.cse-site.ironpeak.cse-roof-light .iron-action{background:#e8eee9;color:var(--ink);border-left:6px solid var(--accent)}.cse-site.ironpeak.cse-roof-light .iron-system{background:#202a2c;color:#fff}.cse-site.ironpeak.cse-roof-light .iron-footer{background:#e8eee9;color:var(--ink)}.cse-site.ironpeak.cse-roof-light .iron-footer .hairline{--line:#bec7c4}.cse-site.ironpeak.cse-roof-light .iron-service{border-bottom:1px solid var(--line)}
/* Distinct brand-level interactions; native Elementor local controls retain precedence. */
.cse-site.hearthline .button .elementor-button{border-radius:var(--cse-button-radius,2px) 24px 2px 24px;padding-inline:28px}.cse-site.civicgrid .button .elementor-button{border-left:5px solid var(--accent)}.cse-site.atlas .text-link .elementor-button:hover{letter-spacing:.01em}.cse-site .cse-read-more:hover{gap:30px}.cse-site .cse-footer-legal{gap:20px}.cse-site .cse-footer-legal .elementor-button{font-size:14px}
.cse-menu-heading,.cse-menu-backdrop{display:none}.cse-menu-toggle .cse-menu-symbol{font-size:24px;line-height:1;margin-right:10px}.cse-site .cse-menu .current-menu-item>a{font-weight:600;text-decoration:underline;text-underline-offset:.3em}
@media(max-width:1024px){
 .cse-site .cse-journal-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.cse-site .cse-home-chapter{padding-block:64px}
 .cse-site .cse-collapse-tablet .cse-menu-panel{display:block;position:fixed;inset:0 0 0 auto;width:min(590px,100%);height:100dvh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:36px 40px;z-index:100002;background:var(--paper);color:var(--ink);visibility:hidden;opacity:0;transform:translateX(24px);transition:transform .3s ease,opacity .25s,visibility .3s;border:0;box-shadow:-20px 0 80px #0002}
 .cse-site .cse-collapse-tablet .cse-menu-panel.is-open{visibility:visible;opacity:1;transform:none}.cse-site .cse-collapse-tablet .cse-menu{display:block;counter-reset:nav}.cse-site .cse-collapse-tablet .cse-menu>li>a{font-size:clamp(24px,4vw,38px);line-height:1.3;padding-block:18px;border-bottom:1px solid var(--line)}
 .cse-site .cse-collapse-tablet .cse-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:24px}.cse-site .cse-menu-heading p{font-size:16px}.cse-site .cse-menu-close{font:32px/1 Arial,sans-serif;width:48px;height:48px;background:transparent;color:inherit;border:1px solid currentColor;border-radius:50%}.cse-site .cse-collapse-tablet:has(.is-open) .cse-menu-backdrop{display:block;position:fixed;inset:0;border:0;background:#101a245c;z-index:100001;width:100%;height:100dvh}
 .cse-menu-open{overflow:hidden}.cse-site.ironpeak .cse-collapse-tablet .cse-menu-panel{inset:0;width:100%;border-left:12px solid var(--accent);background:#f6f5ef;color:#202a2c;transform:translateY(-14px)}.cse-site.ironpeak .cse-collapse-tablet .cse-menu-panel.is-open{transform:none}.cse-site.ironpeak .cse-collapse-tablet .cse-menu>li>a{text-transform:uppercase;font-family:"Barlow Condensed",sans-serif;font-size:36px}
 .cse-site.hearthline .cse-collapse-tablet .cse-menu-panel{inset:auto 0 0;width:100%;height:92dvh;border-radius:28px 28px 0 0;background:#f7f3e9;transform:translateY(24px)}.cse-site.hearthline .cse-collapse-tablet .cse-menu-panel.is-open{transform:none}.cse-site.hearthline .cse-collapse-tablet .cse-menu>li>a{font-family:"Cormorant Garamond",Georgia,serif;font-size:38px}
 .cse-site.civicgrid .cse-collapse-tablet .cse-menu-panel{inset:0 auto 0 0;background:#102e43;color:#f5f8f8;border-top:8px solid #a2e8db;transform:translateX(-24px)}.cse-site.civicgrid .cse-collapse-tablet .cse-menu-panel.is-open{transform:none}.cse-site.civicgrid .cse-collapse-tablet .cse-menu>li>a::before{counter-increment:nav;content:'0' counter(nav);font-size:14px;color:#a2e8db;margin-right:24px}.cse-site .cse-menu .sub-menu{min-width:0}
}
@media(max-width:767px){.cse-site .cse-journal-cards{grid-template-columns:minmax(0,1fr)}.cse-site .cse-home-chapter{padding-block:48px}.cse-site .cse-collapse-tablet .cse-menu-panel{padding:24px}.cse-site .cse-journal-card :is(h2,h3){font-size:30px}.cse-site .cse-contact-image img{aspect-ratio:4/3}.cse-site .cse-menu-toggle{min-height:48px}.cse-site .cse-journal-feed{padding-bottom:56px}}
.cse-error-page{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;padding-block:80px 120px}.cse-error-number{display:block;font-size:clamp(100px,16vw,230px);line-height:1;letter-spacing:-.08em;color:var(--accent);margin-block:24px}.cse-error-page h1{font-size:clamp(38px,4vw,64px);margin-bottom:24px;max-width:15ch}.cse-error-photo img{height:650px;object-fit:cover}.cse-error-links{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:32px}.cse-error-ironpeak{grid-template-columns:1.3fr 1fr}.cse-error-ironpeak .cse-error-number{font-family:"Barlow Condensed",sans-serif}.cse-error-hearthline .cse-error-photo{order:-1}.cse-error-hearthline .cse-error-photo img{border-radius:260px 260px 0 0}.cse-error-civicgrid .cse-error-number{color:var(--ink);border-left:8px solid var(--accent);padding-left:24px}.cse-error-civicgrid .cse-error-photo img{height:500px}
@media(max-width:767px){.cse-error-page,.cse-error-ironpeak{grid-template-columns:minmax(0,1fr);gap:40px;padding-block:45px 65px}.cse-error-photo img{height:340px}.cse-error-hearthline .cse-error-photo{order:0}.cse-error-page .cse-search>div{flex-wrap:wrap}}
@media(prefers-reduced-motion:no-preference){.cse-site .cse-in-view{animation:cse-reveal .45s ease both}.cse-site.hearthline .cse-in-view{animation-duration:.6s}.cse-read-more{transition:gap .2s}.cse-journal-card img{transition:transform .35s}.cse-journal-card:hover img{transform:scale(1.015)}@keyframes cse-reveal{from{opacity:.75;transform:translateY(10px)}to{opacity:1;transform:none}}}
.cse-site.elementor-editor-active .cse-in-view{animation:none}

/* Legacy paragraph color declarations must inherit each native widget's chosen color on the lighter roofing surfaces. */
.cse-site.ironpeak .elementor-widget-text-editor p{color:inherit}
.cse-site .cse-search>div{display:flex;gap:12px}.cse-site .cse-search input{flex:1 1 0;min-width:0;width:0}.cse-site .cse-search button{flex:0 0 auto;white-space:nowrap;min-width:88px}

.cse-site .cse-journal-card .cse-journal-meta{font-size:var(--cse-meta-size,14px);line-height:1.5}
/* Comparison actions inherit the native component typography; the legacy mobile12px rule must not win. */
.cse-site .cse-comparison button{font-size:inherit;min-height:48px;min-width:48px}
