/* Restore the client-approved composition without changing application behavior. */
@layer restored {
  .preview-notice { background:#10110f; color:#fff; text-align:center; padding:10px 16px; font-size:11px; letter-spacing:.06em; }
  :root { --orange:#ff5b19; --ink:#10110f; --paper:#f7f6f2; --muted:#61635d; }
  body { background:var(--paper); }
  .site-header { max-width:1440px; height:142px; padding:5px 36px; gap:36px; }
  .logo,.logo img { width:148px; height:132px; }
  .site-header nav { flex:1; justify-content:center; gap:clamp(18px,2.3vw,35px); font-weight:400; font-size:13px; }
  .site-header nav>.account-link { margin-left:auto; font-size:12px; }
  .site-header nav>.button { min-height:52px; padding:16px 25px; font-size:13px; }
  .site-header nav>a[aria-current] { text-decoration:underline; text-decoration-color:var(--orange); text-underline-offset:8px; color:var(--ink); }
  .button { border-radius:0; font-weight:600; }
  .button>span { font-size:23px; line-height:1; }
  .home-main { max-width:1440px; padding:0; container-type:inline-size; }
  .approved-hero { display:grid; grid-template-columns:8% 39% 53%; min-height:510px; }
  .approved-rail { background:var(--orange); display:flex; flex-direction:column; padding:27px 24px 34px; gap:22px; }
  .rail-number { font-family:var(--display); font-size:52px; line-height:1; }
  .rail-line { flex:1; min-height:100px; width:1px; background:var(--ink); }
  .rail-words { font-size:9px; letter-spacing:.2em; line-height:1.8; }
  .rail-dash { width:24px; height:1px; background:var(--ink); margin-top:8px; }
  .approved-copy { padding:43px 20px 25px 26px; position:relative; z-index:1; display:flex; flex-direction:column; }
  .approved-copy h1 { font-size:clamp(64px,9.7cqw,140px); line-height:.99; letter-spacing:-.035em; margin:0 0 20px; color:#080908; }
  .approved-copy h1>span { display:block; white-space:nowrap; width:max-content; transform:scaleX(.87); transform-origin:left; text-shadow:3px 0 var(--paper),-3px 0 var(--paper); }
  .approved-intro { font-family:Georgia,'Times New Roman',serif; font-size:clamp(14px,1.35cqw,20px); line-height:1.4; color:var(--ink); margin:0 0 26px; }
  .approved-action { display:flex; align-items:center; gap:20px; justify-content:space-between; }
  .approved-action .button { font-size:15px; padding:16px 28px; min-height:57px; gap:24px; }
  .approved-action>p { border-left:1px solid #92948c; padding-left:30px; margin:0 14px 0 0; font-size:8px; letter-spacing:.25em; line-height:1.8; color:var(--ink); }
  .approved-location { font-size:8px; letter-spacing:.12em; margin:24px 0 0; color:var(--muted); }
  .approved-images { display:grid; grid-template-columns:2.2fr 1fr; gap:3px; min-width:0; }
  .approved-images figure { position:relative; min-width:0; overflow:hidden; }
  .approved-images img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
  .approved-exterior img { object-position:53% 55%; }
  .approved-kitchen img { object-position:58% center; }
  .approved-images figcaption { position:absolute; bottom:15px; left:18px; right:12px; color:white; font-size:8px; letter-spacing:.15em; line-height:1.8; text-shadow:0 1px 4px #000; }
  .approved-exterior figcaption { width:max-content; max-width:calc(100% - 30px); background:#10110fa6; padding:4px 7px; font-size:7px; }
  .approved-kitchen figcaption:before { content:''; display:block; height:1px; width:24px; background:white; margin-bottom:14px; }
  .approved-services { display:grid; grid-template-columns:41% 59%; padding:28px 36px 27px; color:var(--paper); background:var(--ink); }
  .approved-services-copy { padding:7px 20px 0 0; }
  .approved-services .eyebrow { display:flex; align-items:center; gap:12px; color:var(--paper); font-size:8px; font-weight:400; letter-spacing:.2em; margin-bottom:15px; }
  .approved-services .eyebrow>span { width:30px; height:1px; background:var(--paper); }
  .approved-services h2 { font-size:clamp(30px,4.45cqw,64px); line-height:1.04; margin-bottom:12px; }
  .approved-services-copy>p:not(.eyebrow) { font:16px/1.5 Georgia,serif; color:#dfdfd8; margin-bottom:15px; }
  .whole-home-link { display:inline-block; color:#ff9668; font-size:11px; }
  .whole-home-link span { margin-left:12px; }
  .approved-service-gallery { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; align-content:start; }
  .approved-service-tile { min-width:0; text-decoration:none!important; }
  .approved-service-tile>div { overflow:hidden; aspect-ratio: .84; }
  .approved-service-tile img { width:100%; height:100%; object-fit:cover; transition:transform .35s; }
  .approved-service-tile:hover img { transform:scale(1.04); }
  .flooring-tile img { object-position:74% 100%; transform:scale(2.6); transform-origin:75% 100%; }
  .flooring-tile:hover img { transform:scale(2.7); }
  .approved-service-tile h3 { font:14px/1.3 Arial,sans-serif; margin:12px 0 0; letter-spacing:0; }
  .approved-service-tile>span { font-size:20px; line-height:1.2; }
  .service-photo-note { grid-column:1/-1; font-size:8px; color:#aaa; margin:2px 0 0; }
  .home-pathways { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:42px 36px; gap:30px; }
  .home-pathways>a { border-right:1px solid var(--line); padding-right:30px; text-decoration:none; }
  .home-pathways>a:last-child { border:0; }
  .home-pathways .index { display:block; font-size:9px; margin-bottom:18px; color:var(--muted); }
  .home-pathways h2 { font-size:34px; margin-bottom:12px; }
  .home-pathways p { font-size:12px; max-width:310px; margin-bottom:17px; }
  .home-pathways a:hover .text-link { text-decoration:underline; text-underline-offset:4px; }
  .home-journal { padding:30px 36px 55px; }
  .home-page footer { margin-top:0; }
  .page-heading { border-left:6px solid var(--orange); padding:30px 0 30px 27px; margin:30px 0 40px; max-width:900px; }
  .page-heading h1 { color:var(--ink); }
  .footer-inner,.footer-bottom { max-width:1440px; }
  .footer-email { font-size:14px; overflow-wrap:anywhere; user-select:all; cursor:text; }
  .home-editorial { padding:62px 48px; }
  .home-editorial h2 { font-size:clamp(36px,4.2vw,60px); line-height:1.05; }
  .home-editorial p { font-size:15px; line-height:1.8; }
  .home-editorial .eyebrow { font-size:10px; line-height:1.5; }
  .editorial-split { display:grid; grid-template-columns:1fr 1.05fr; gap:58px; align-items:center; }
  .editorial-picture { position:relative; height:100%; min-height:470px; }
  .editorial-picture img { width:100%; height:100%; position:absolute; object-fit:cover; }
  .editorial-picture>span { position:absolute; bottom:15px; left:15px; color:white; background:#10110fbf; padding:5px 8px; font-size:8px; letter-spacing:.1em; }
  .scope-section { border-top:1px solid var(--line); }
  .scope-section .section-top>p { max-width:340px; margin-bottom:0; }
  .scope-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin-top:35px; }
  .scope-columns article { border-top:3px solid var(--orange); padding-top:22px; }
  .scope-columns .index { font-size:9px; color:var(--muted); }
  .scope-columns h3 { margin:16px 0 14px; font-size:24px; }
  .scope-columns p { font-size:14px; }
  .scope-columns a { display:block; font-size:12px; font-weight:700; margin-top:10px; }
  .planning-band { display:grid; grid-template-columns:1fr 1fr; gap:75px; background:#eae8df; }
  .planning-band>div>p { max-width:460px; }
  .planning-band ol { padding-left:25px; margin:0; }
  .planning-band li { padding:0 0 20px 12px; margin-bottom:20px; border-bottom:1px solid #c8c6ba; font-size:15px; color:var(--muted); line-height:1.7; }
  .planning-band li:last-child { margin-bottom:0; }
  .planning-band li::marker { color:var(--ink); font-weight:700; }
  .planning-band li strong { color:var(--ink); display:block; }
  .home-questions { display:grid; grid-template-columns:.85fr 1.15fr; gap:65px; border-bottom:1px solid var(--line); }
  .home-questions>div:first-child p { max-width:350px; }
  .home-questions details p { font-size:14px; }
  .home-questions details a { text-decoration:underline; text-underline-offset:3px; }
  .reading-block { padding:38px 0; margin:12px 0 35px; border-top:1px solid var(--line); }
  .reading-block>p { max-width:800px; font-size:15px; line-height:1.85; }
  .reading-block h2 { max-width:800px; font-size:40px; }
  .reading-block h3 { margin:30px 0 14px; }
  .reading-block li { font-size:15px; line-height:1.7; color:var(--muted); margin-bottom:10px; }
  .reading-block a { text-decoration:underline; text-underline-offset:3px; }
  .checklist-columns { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
  .checklist-columns ul { padding-left:20px; }
  .comparison-wrap { max-width:100%; overflow-x:auto; margin:30px 0; border:1px solid var(--line); }
  .comparison-wrap table { width:100%; border-collapse:collapse; text-align:left; font-size:14px; }
  .comparison-wrap caption { text-align:left; padding:16px 20px; font-size:12px; background:#eae8df; font-weight:700; }
  .comparison-wrap th,.comparison-wrap td { padding:18px 20px; border-bottom:1px solid var(--line); vertical-align:top; }
  .comparison-wrap thead { background:var(--ink); color:var(--paper); }
  .comparison-wrap tbody th { width:30%; }
  .comparison-wrap td { color:var(--muted); }
  .comparison-wrap td:last-child { width:25%; }
  .article-contents { padding:24px; background:#eae8df; margin-bottom:38px; }
  .article-contents strong { display:block; font-size:13px; margin-bottom:12px; }
  .article-contents ol { padding-left:19px; margin:0; display:grid; gap:7px; }
  .article-contents a { font-size:13px; text-decoration:none!important; }
  .article-contents a:hover { text-decoration:underline!important; }
  .article-section { scroll-margin-top:25px; }
  .article-section p { line-height:1.9; }
  .related-reading { border-top:3px solid var(--orange); padding:26px 0 15px; margin-top:42px; }
  .related-reading h2 { font-size:32px; }
  .related-reading .eyebrow { margin-bottom:12px; }
  .related-reading ul { list-style:none; padding:0; }
  .related-reading li { padding:12px 0; border-bottom:1px solid var(--line); font-size:14px; }
  .related-reading a { display:flex; justify-content:space-between; gap:16px; }
  .local-resource-grid { display:grid; grid-template-columns:1fr; gap:22px; margin:25px 0; }
  .local-resource-grid article { padding:26px; border:1px solid var(--line); background:#fffdf8; }
  .local-resource-grid h3 { margin-top:14px; }
  .local-resource-grid p { font-size:14px; line-height:1.85; }
  .local-resource-grid a { display:block; font-size:13px; margin-top:15px; }
  .article-layout .reading-block h2 { font-size:34px; }
  .article-layout .reading-block .small { font-size:11px; }
  @media(max-width:900px) {
    .home-editorial { padding:45px 30px; }
    .editorial-split,.home-questions { gap:32px; }
    .planning-band { gap:38px; }
    .scope-columns { gap:22px; }
    .scope-columns h3 { font-size:21px; }
    .scope-section .section-top { align-items:start; flex-direction:column; }
    .scope-section .section-top>p { max-width:100%; }
  }
  @media(max-width:650px) {
    .home-editorial { padding:38px 22px; }
    .editorial-split,.planning-band,.home-questions,.scope-columns,.checklist-columns { grid-template-columns:1fr; gap:28px; }
    .editorial-picture { min-height:0; height:280px; }
    .home-editorial h2 { font-size:38px; }
    .home-editorial p { font-size:14px; }
    .scope-columns { margin-top:28px; }
    .scope-columns h3 { font-size:23px; }
    .home-questions>div:first-child p { max-width:100%; }
    .planning-band li { font-size:14px; }
    .reading-block h2 { font-size:33px; }
    .reading-block { padding-top:28px; margin-bottom:20px; }
    .reading-block>p,.reading-block li { font-size:14px; }
    .checklist-columns { gap:0; }
    .checklist-columns ul { margin:0; }
    .comparison-wrap table { font-size:12px; }
    .comparison-wrap th,.comparison-wrap td { padding:12px 10px; overflow-wrap:anywhere; }
    .comparison-wrap caption { padding:12px; }
    .article-contents { padding:20px; }
    .related-reading h2 { font-size:29px; }
    .local-resource-grid article { padding:20px; }
    .article-section p { font-size:14px; }
  }
  @media(min-width:1440px) { .approved-hero { min-height:520px; } }
  @media(max-width:1100px) {
    .site-header { height:122px; gap:24px; padding-inline:26px; }
    .logo,.logo img { width:123px; height:110px; }
    .site-header nav { gap:18px; font-size:12px; }
    .site-header nav>.button { padding:13px 16px; font-size:12px; }
    .approved-hero { min-height:430px; grid-template-columns:7% 42% 51%; }
    .approved-rail { padding:26px 15px; }
    .rail-words { writing-mode:vertical-rl; transform:rotate(180deg); font-size:8px; }
    .rail-words br { display:none; }
    .approved-copy { padding:40px 18px 24px 23px; }
    .approved-copy h1 { font-size:10cqw; }
    .approved-action .button { padding:15px 20px; font-size:13px; }
    .approved-action>p { padding-left:16px; margin:0; font-size:7px; }
    .approved-services { padding:26px; grid-template-columns:39% 61%; }
    .approved-services-copy>p:not(.eyebrow) { font-size:13px; }
    .approved-service-gallery { gap:9px; }
    .approved-service-tile h3 { font-size:12px; }
    .home-pathways { padding:34px 26px; gap:24px; }
    .home-pathways>a { padding-right:24px; }
    .home-pathways h2 { font-size:29px; }
  }
  @media(max-width:800px) {
    .site-header { height:110px; position:relative; z-index:10; padding:6px 22px; }
    .logo,.logo img { width:113px; height:98px; }
    #menu-toggle { display:flex; align-items:center; gap:18px; border:1px solid var(--ink); background:transparent; padding:10px 16px; font-size:12px; }
    .site-header nav { display:none; position:absolute; inset:110px 0 auto; flex-direction:column; align-items:stretch; gap:0; padding:20px 25px; background:var(--paper); border-bottom:1px solid var(--ink); box-shadow:0 15px 20px #0001; }
    .site-header nav.open { display:flex; }
    .site-header nav>a { padding:12px 0; }
    .site-header nav>.account-link { margin:0; border:0; padding-left:0; }
    .site-header nav>.button { padding:15px; margin-top:10px; }
    .approved-copy { padding-top:34px; padding-left:19px; }
    .approved-action>p { display:none; }
    .approved-hero { min-height:365px; }
    .approved-services { grid-template-columns:1fr; gap:24px; padding:30px 26px; }
    .approved-services h2 { font-size:43px; }
    .approved-services-copy>p:not(.eyebrow) { font-size:16px; }
    .approved-service-gallery { gap:14px; }
    .approved-service-tile h3 { font-size:14px; }
    .home-pathways { gap:18px; }
    .home-pathways>a { padding-right:16px; }
    .home-pathways h2 { font-size:25px; }
  }
  @media(max-width:560px) {
    .approved-hero { grid-template-columns:37px minmax(0,1fr); min-height:0; }
    .approved-rail { grid-row:1/3; padding:22px 10px; gap:24px; }
    .rail-number { font-size:28px; }
    .rail-line { min-height:70px; }
    .rail-dash { width:17px; }
    .rail-words { line-height:1.5; font-size:7px; letter-spacing:.22em; }
    .approved-copy { padding:26px 16px 22px; }
    .approved-copy h1 { font-size:17.2cqw; letter-spacing:-.035em; margin-bottom:17px; line-height:1; }
    .approved-copy h1>span { transform:scaleX(.88); text-shadow:none; }
    .approved-intro { font-size:14px; margin-bottom:23px; }
    .approved-action .button { padding:15px 20px; min-height:51px; font-size:13px; }
    .approved-location { font-size:7px; margin-top:20px; letter-spacing:.07em; }
    .approved-images { grid-column:2; height:270px; grid-template-columns:1.65fr 1fr; }
    .approved-images figcaption { left:10px; bottom:10px; font-size:7px; }
    .approved-exterior figcaption { font-size:6px; max-width:calc(100% - 20px); }
    .approved-services { padding:32px 22px 24px; gap:27px; }
    .approved-services h2 { font-size:clamp(32px,9.5vw,49px); }
    .approved-services-copy { padding:0; }
    .approved-service-gallery { grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px 11px; }
    .approved-service-tile h3 { font-size:12px; margin-top:9px; }
    .service-photo-note { font-size:8px; margin-top:4px; }
    .home-pathways { grid-template-columns:1fr; padding:12px 22px 18px; gap:0; }
    .home-pathways>a { padding:28px 0; border:0; border-bottom:1px solid var(--line); }
    .home-pathways h2 { font-size:34px; }
    .home-pathways p { max-width:100%; font-size:13px; }
    .home-journal { padding:25px 22px 40px; }
    .page-heading { padding:18px 0 18px 17px; margin:24px 0 30px; border-left-width:4px; }
    .page-heading h1 { font-size:clamp(32px,9.8vw,46px); overflow-wrap:anywhere; }
    .page-heading .intro { font-size:14px; }
  }
  .library-feature { display:grid; grid-template-columns:1fr 1fr; background:var(--ink); color:var(--paper); margin:0 0 32px; }
  .library-feature figure { margin:0; position:relative; min-height:340px; }
  .library-feature img { width:100%; height:100%; object-fit:cover; position:absolute; }
  .library-feature figcaption { position:absolute; bottom:0; left:0; right:0; padding:10px 14px; font-size:10px; background:#000b; }
  .library-feature>div { padding:42px; align-self:center; }
  .library-feature h2 { font-size:clamp(32px,4vw,55px); line-height:1.05; }
  .library-feature p { color:inherit; }
  .library-feature .eyebrow { color:var(--orange); }
  .library-feature .button { margin-top:12px; }
  .topic-nav { display:flex; flex-wrap:wrap; gap:10px; padding:20px 0; border-block:1px solid var(--line); }
  .topic-nav a { padding:11px 15px; font-size:13px; border:1px solid var(--line); text-decoration:none; }
  .topic-nav a:hover,.topic-nav a:focus-visible { background:var(--ink); color:var(--paper); }
  .library-topic { padding:42px 0 12px; scroll-margin-top:30px; }
  .library-topic .section-top { margin-bottom:24px; }
  .library-topic h2 { font-size:clamp(30px,3.5vw,44px); }
  .library-topic .guide-card { display:flex; flex-direction:column; }
  .library-topic .guide-card h3 { font-size:27px; }
  .library-topic .guide-card .text-link { margin-top:auto; padding-top:15px; }
  .reading-meta { font-size:12px; color:var(--muted); margin-bottom:30px; }
  .article-layout aside>a:not(.button) { display:block; margin-top:20px; }
  .guide-checklist { background:var(--ink); color:var(--paper); padding:30px; margin:36px 0; }
  .guide-checklist li { margin:14px 0; line-height:1.6; }
  .guide-checklist .eyebrow { color:var(--orange); }
  .guide-sources { border-block:1px solid var(--line); padding:24px 0; margin:32px 0; }
  .guide-sources a { text-decoration:underline; text-underline-offset:3px; }
  .research-status { margin:35px 0; }
  .research-status dt { font-weight:700; margin-top:18px; }
  .research-status dd { margin:8px 0 20px; max-width:85ch; line-height:1.7; }
  .research-status .table-wrap { overflow-x:auto; margin-block:24px; }
  .research-status table { width:100%; border-collapse:collapse; }
  .research-status th,.research-status td { padding:14px; border:1px solid var(--line); text-align:left; vertical-align:top; overflow-wrap:anywhere; }
  .research-status caption { text-align:left; padding:12px 0; }
  .research-status li { margin:15px 0; line-height:1.6; }
  @media(max-width:700px) {
    .library-feature { grid-template-columns:1fr; }
    .library-feature figure { min-height:240px; }
    .library-feature>div { padding:25px; }
    .topic-nav a { font-size:12px; }
    .library-topic { padding-top:32px; }
    .guide-checklist { padding:22px; }
    .research-status th,.research-status td { font-size:12px; padding:9px; }
  }
  @media(prefers-reduced-motion:reduce) { .approved-service-tile img { transition:none; } }
}
