.contractor-home { --copper: #ad643b; --lime: #d4e3ac; --blueprint: #183a32; }
.contractor-home p[data-editorial] { font-size: 16px; line-height: 1.85; margin: 0px 0px 22px; }
.contractor-home p[data-editorial] a { text-decoration: underline; text-underline-offset: 3px; }
.contractor-home h2 { font-family: Arial, Helvetica, sans-serif; font-weight: 650; letter-spacing: -0.045em; font-size: clamp(30px, 3.1vw, 46px); line-height: 1.12; }
.contractor-home .eyebrow { color: var(--copper); }
.contractor-home .section { padding: 88px 0px; }
.contractor-home .button { border-radius: 5px; }
.contractor-home .home-hero { min-height: 610px; }
.contractor-home .hero-inner { padding-top: 65px; padding-bottom: 75px; }
.contractor-home .hero-copy { max-width: 650px; }
.contractor-home .hero-copy h1 { font-size: clamp(43px, 4.4vw, 67px); }
.contractor-home .hero-copy .eyebrow { color: rgb(233, 188, 145); }
.contractor-home .proof { background: rgb(233, 230, 219); }
.contractor-home .proof-grid > div { padding: 28px 25px; }
.contractor-home .proof-grid strong { font-size: 15px; }
.contractor-home .proof-grid p { font-size: 13px; line-height: 1.6; }
.contractor-home .inquiry { background: rgb(241, 239, 231); }
.contractor-home .inquiry-panel { border: 1px solid rgb(210, 214, 199); border-radius: 10px; background: white; box-shadow: rgb(223, 223, 210) 12px 12px 0px; padding: 32px; }
.contractor-home .inquiry-panel .form-fallback { background: rgb(241, 243, 234); border-radius: 6px; padding: 25px; }
.construction-heading { display: flex; align-items: flex-start; gap: 22px; margin-bottom: 35px; max-width: 940px; }
.construction-heading h2 { margin: 0px; }
.construction-heading .eyebrow { margin: 2px 0px 14px; }
.section-number { font: 500 14px / 1.2 "Courier New", monospace; color: var(--copper); border-top: 2px solid; padding-top: 11px; min-width: 42px; letter-spacing: 0.06em; }
.intro-composition { display: grid; grid-template-columns: 1.12fr 1fr; gap: 65px; align-items: center; }
.contractor-intro { background: radial-gradient(at 100% 50%, rgb(226, 231, 213), transparent 50%); }
.drawing-panel { margin: 0px; padding: 24px; color: rgb(220, 234, 201); background: var(--blueprint); border-radius: 12px; box-shadow: rgb(214, 217, 201) 16px 16px 0px; transform: rotate(1.5deg); border: 1px solid rgb(101, 128, 109); }
.drawing-top { display: flex; justify-content: space-between; font: 11px / 1.4 "Courier New", monospace; letter-spacing: 0.08em; border-bottom: 1px solid rgba(255, 255, 255, 0.19); padding-bottom: 15px; }
.drawing-panel svg { display: block; width: 100%; height: auto; margin: 15px 0px; }
.drawing-panel figcaption { font: 12px / 1.6 Arial; color: rgb(209, 221, 204); border-top: 1px solid rgba(255, 255, 255, 0.19); padding-top: 15px; }
.service-composition { background: rgb(235, 233, 224); }
.portfolio-label { display: flex; justify-content: space-between; gap: 20px; align-items: center; border-top: 1px solid rgb(165, 174, 159); padding-top: 18px; margin-bottom: 32px; font: 11px / 1.5 "Courier New", monospace; letter-spacing: 0.12em; color: rgb(82, 96, 79); }
.portfolio-label a { font-weight: bold; text-decoration: underline; text-underline-offset: 4px; }
.contractor-home .home-category-grid { gap: 30px; }
.construction-card { background: rgb(255, 253, 247); border: 1px solid rgb(212, 216, 203); border-radius: 10px; overflow: hidden; box-shadow: rgba(37, 54, 43, 0.03) 0px 10px 25px; }
.service-photo { position: relative; overflow: hidden; }
.contractor-home .service-photo img { height: 290px; margin: 0px; object-fit: cover; width: 100%; }
.photo-index { position: absolute; bottom: 0px; left: 0px; background: var(--forest); color: rgb(229, 237, 206); padding: 10px 18px; font: 15px "Courier New", monospace; }
.service-body { padding: 32px; }
.contractor-home .service-body h2 { font-size: 31px; margin: 0px 0px 23px; }
.service-body .text-link { display: inline-block; margin-top: 4px; }
.directory-bar { border-top: 1px solid rgb(196, 203, 187); margin-top: 35px; padding-top: 26px; display: flex; justify-content: space-between; align-items: center; gap: 30px; }
.directory-bar > span { font-size: 13px; color: rgb(89, 99, 82); max-width: 650px; }
.construction-core { position: relative; background: linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px) 0% 0% / 36px 36px, linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px), rgb(24, 58, 50); color: rgb(244, 245, 233); overflow: hidden; }
.construction-core .construction-heading .eyebrow, .construction-core .section-number { color: rgb(214, 179, 138); }
.construction-core .construction-heading { max-width: 1000px; }
.construction-stages { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 40px 0px 30px; }
.construction-stage { padding: 30px; background: rgba(36, 70, 61, 0.95); border: 1px solid rgba(107, 138, 114, 0.37); border-radius: 8px; }
.stage-top { display: flex; align-items: center; gap: 20px; margin-bottom: 22px; }
.stage-top > span { color: rgb(211, 226, 171); font: 400 42px / 0.95 Georgia, serif; }
.stage-top strong { font-size: 17px; line-height: 1.4; color: rgb(240, 242, 223); }
.contractor-home .construction-stage p { color: rgb(223, 232, 219); margin-bottom: 0px; }
.construction-core .button { background: rgb(220, 231, 183); color: rgb(24, 58, 50); border-color: rgb(220, 231, 183); }
.finish-grid { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 55px; align-items: start; }
.prep-card { border: 1px solid rgb(209, 213, 200); border-radius: 9px; background: rgb(233, 237, 223); padding: 32px; position: relative; }
.contractor-home .finish-grid h3 { font-size: 23px; line-height: 1.3; font-weight: 600; margin: 0px 0px 24px; }
.material-lines { display: flex; gap: 7px; margin-bottom: 28px; height: 42px; align-items: center; }
.material-lines i { display: block; width: 65px; height: 28px; border: 1px solid rgb(112, 132, 102); transform: skewY(-15deg); background: repeating-linear-gradient(90deg, transparent 0px, transparent 9px, rgba(112, 132, 102, 0.19) 9px, rgba(112, 132, 102, 0.19) 10px); }
.material-lines i:nth-child(2) { height: 36px; background: rgb(167, 184, 145); }
.material-lines i:nth-child(3) { height: 42px; background: rgb(219, 208, 183); }
.finish-copy { padding-top: 8px; }
.photo-composition { background: rgb(231, 227, 216); }
.photo-composition .gallery-grid { grid-template-columns: 1.15fr 1fr 1fr; gap: 22px; }
.photo-composition .gallery-grid img { height: 310px; object-fit: cover; border-radius: 7px; }
.photo-composition figcaption { font-size: 12px; line-height: 1.6; margin-top: 12px; max-width: 330px; }
.neighborhood-composition { background: rgb(250, 249, 243); }
.neighborhood-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.era-card { border: 1px solid rgb(208, 215, 201); border-radius: 10px; padding: 34px; background: rgb(240, 237, 227); }
.era-card.newer { background: rgb(232, 238, 225); }
.era-top { position: relative; display: flex; flex-direction: column; margin-bottom: 25px; padding-bottom: 24px; border-bottom: 1px solid rgb(185, 194, 173); }
.era-top > span { font: 11px "Courier New", monospace; letter-spacing: 0.12em; color: rgb(82, 102, 78); }
.era-top strong { font: 400 clamp(65px, 7vw, 96px) / 1.1 Georgia, serif; color: rgb(53, 88, 67); margin: 18px 0px 6px; letter-spacing: -0.06em; }
.era-top small { font-size: 12px; color: rgb(93, 100, 89); }
.permit-panel { margin-top: 34px; border-width: 1px 1px 1px 5px; border-style: solid; border-color: rgb(205, 213, 197) rgb(205, 213, 197) rgb(205, 213, 197) rgb(168, 119, 73); border-image: none; padding: 30px; background: white; border-radius: 0px 8px 8px 0px; }
.permit-title { display: flex; gap: 18px; align-items: center; margin-bottom: 20px; }
.permit-title h3 { margin: 0px; font-size: 25px; }
.permit-mark { font-size: 36px; color: rgb(168, 119, 73); }
.permit-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.contractor-home .permit-columns p { font-size: 15px; line-height: 1.8; margin: 0px; }
.estimate-composition { background: rgb(233, 237, 226); }
.estimate-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 23px; }
.estimate-card { background: rgb(252, 252, 246); border: 1px solid rgb(204, 213, 194); border-radius: 8px; padding: 27px; }
.estimate-card > strong { display: block; font-size: 19px; line-height: 1.35; margin-bottom: 20px; border-bottom: 2px solid rgb(188, 152, 110); padding-bottom: 16px; }
.contractor-home .estimate-card p { font-size: 15px; margin-bottom: 0px; }
.contractor-home .home-faq { background: rgb(252, 252, 246); border: 1px solid rgb(204, 213, 194); border-radius: 8px; padding: 0px 28px; margin-top: 30px; }
.contractor-home .home-faq details:first-child { border-top: 0px; }
.contractor-home .home-faq details:last-child { border-bottom: 0px; }
.contractor-home .home-faq .faq-answer { max-width: 880px; }
.contractor-home .areas { background: rgb(32, 61, 53); }
.contractor-home .areas h2 { font-size: 38px; }
.contractor-home .cta-band { position: relative; background: rgb(220, 229, 197); padding: 85px 0px; overflow: hidden; }
.contractor-home .cta-band::after { content: "+"; position: absolute; right: 5%; top: 10px; font: 300 250px / 1 Arial; color: rgba(32, 61, 53, 0.043); pointer-events: none; }
.contractor-home .cta-band h2 { font-size: clamp(35px, 4vw, 57px); max-width: 800px; }
@media (max-width: 1000px) {
  .intro-composition { gap: 35px; }
  .construction-heading { gap: 15px; }
  .permit-columns { grid-template-columns: 1fr; }
  .estimate-grid { grid-template-columns: 1fr; }
  .estimate-card { padding: 25px; }
  .service-body { padding: 26px; }
  .contractor-home .service-body h2 { font-size: 28px; }
  .finish-grid { gap: 30px; }
  .drawing-panel { padding: 17px; box-shadow: rgb(214, 217, 201) 9px 9px 0px; }
}
@media (max-width: 760px) {
  .contractor-home .section { padding: 55px 0px; }
  .contractor-home .hero-copy h1 { font-size: 43px; }
  .contractor-home .hero-inner { padding-top: 48px; padding-bottom: 92px; }
  .contractor-home .home-hero { min-height: 650px; }
  .contractor-home .proof-grid > div { padding: 22px 0px; }
  .intro-composition, .construction-stages, .finish-grid, .neighborhood-grid { grid-template-columns: 1fr; }
  .drawing-panel { transform: none; margin-top: 8px; }
  .construction-heading { gap: 13px; margin-bottom: 28px; }
  .section-number { min-width: 30px; font-size: 12px; }
  .contractor-home h2 { font-size: 31px; }
  .contractor-home .inquiry-panel { padding: 23px; box-shadow: rgb(223, 223, 210) 7px 7px 0px; }
  .contractor-home .home-category-grid { gap: 24px; }
  .contractor-home .service-photo img { height: 245px; }
  .service-body { padding: 24px; }
  .contractor-home .service-body h2 { font-size: 28px; }
  .directory-bar { flex-direction: column; align-items: flex-start; }
  .portfolio-label { font-size: 10px; letter-spacing: 0.07em; }
  .construction-stage { padding: 24px; }
  .construction-stages { gap: 18px; }
  .stage-top > span { font-size: 36px; }
  .prep-card, .era-card { padding: 25px; }
  .finish-copy { padding-top: 0px; }
  .photo-composition .gallery-grid { grid-template-columns: 1fr; }
  .photo-composition .gallery-grid img { height: auto; aspect-ratio: 4 / 3; }
  .permit-panel { padding: 22px; }
  .permit-title h3 { font-size: 22px; }
  .permit-columns { gap: 20px; }
  .contractor-home .home-faq { padding: 0px 20px; }
  .contractor-home .home-faq summary h3 { font-size: 20px; }
  .contractor-home .areas h2 { font-size: 31px; }
  .contractor-home .cta-band { padding: 55px 0px; }
}
.drawing-panel.refined-plan { transform: none; border-radius: 5px; padding: 22px; background: rgb(22, 55, 47); box-shadow: rgba(24, 58, 50, 0.1) 0px 18px 45px; border: 1px solid rgb(100, 129, 114); }
.refined-plan svg { margin: 14px 0px 3px; }
.refined-plan figcaption { font-size: 12px; line-height: 1.7; }
.refined-plan .drawing-top { font-size: 10px; letter-spacing: 0.09em; }
.floor-detail { margin: 0px 0px 30px; padding: 20px; background: rgb(250, 249, 243); border: 1px solid rgb(200, 206, 189); border-radius: 5px; }
.detail-kicker { display: flex; justify-content: space-between; gap: 10px; font: 10px / 1.5 "Courier New", monospace; letter-spacing: 0.06em; color: rgb(81, 99, 79); border-bottom: 1px solid rgb(217, 221, 206); padding-bottom: 12px; }
.floor-detail svg { display: block; width: 100%; height: auto; margin: 8px 0px 0px; }
.floor-key { counter-reset: floor 0; list-style: none; padding: 0px; margin: 0px 0px 17px; }
.floor-key li { counter-increment: floor 1; position: relative; padding: 11px 0px 11px 32px; border-top: 1px solid rgb(220, 224, 212); }
.floor-key li::before { content: counter(floor); position: absolute; left: 0px; top: 13px; background: rgb(32, 61, 53); color: white; border-radius: 50%; width: 21px; height: 21px; text-align: center; font: 11px / 21px Arial; }
.floor-key strong { display: block; font-size: 13px; line-height: 1.5; }
.floor-key span { display: block; font-size: 12px; line-height: 1.65; color: rgb(82, 96, 79); margin-top: 3px; }
.floor-detail figcaption { font-size: 11px; line-height: 1.65; color: rgb(102, 112, 93); border-top: 1px solid rgb(217, 221, 206); padding-top: 13px; }
@media (max-width: 760px) {
  .drawing-panel.refined-plan { padding: 16px; }
  .floor-detail { padding: 14px; margin-left: -10px; margin-right: -10px; }
  .detail-kicker { font-size: 9px; letter-spacing: 0px; }
  .refined-plan .drawing-top { font-size: 9px; }
}

.project-process{background:#f1efe6}.process-title{max-width:850px;margin-bottom:38px}.process-title h2{margin:0}.workflow-board{padding:30px 34px;background:radial-gradient(ellipse at 50% 0,#2e5044,transparent 65%),#17382f;border:1px solid #52715f;border-radius:12px;box-shadow:0 18px 40px #183a3215;color:#edf1df}.scene-label,.scene-foot{display:flex;justify-content:space-between;align-items:center;gap:20px}.scene-label{font:10px/1.5 'Courier New',monospace;letter-spacing:.09em;color:#b7cbb3;border-bottom:1px solid #81977945;padding-bottom:20px}.scene-foot{border-top:1px solid #81977945;padding-top:22px;margin-top:28px}.scene-foot p{font-size:12px;line-height:1.7;color:#bdcdb5;margin:0;max-width:600px}.replay-build{font:12px Arial;color:#eff4df;background:#294c3d;border:1px solid #809675;border-radius:5px;padding:11px 15px;cursor:pointer;white-space:nowrap}.replay-build:focus-visible{outline:3px solid #edba81;outline-offset:4px}.workflow-phases{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.workflow-phase{position:relative;min-width:0}.workflow-art{height:190px;display:flex;align-items:center;justify-content:center;background:linear-gradient(#ffffff05,#ffffff00);border-radius:8px}.workflow-art svg{height:180px;width:205px;max-width:100%;display:block}.workflow-lines{fill:none;stroke:#dee7cd;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.workflow-lines .accent{stroke:#d9ad78}.workflow-lines .solid{fill:#244537;stroke:#b9d29a}.workflow-lines .ink{stroke:#dcebbf;stroke-width:2.8}.workflow-node{position:relative;height:44px;display:flex;align-items:center;margin:15px 0 20px}.workflow-node:before{content:'';height:1px;background:#6b8565;position:absolute;left:42px;right:-28px;top:21px}.workflow-phase:last-child .workflow-node:before{right:0}.workflow-node span{position:relative;z-index:1;border:1px solid #a9c387;background:#244735;color:#e4edc5;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font:14px 'Courier New',monospace}.contractor-home .workflow-phase h3{font:600 21px/1.35 Arial;margin:0 0 12px;color:#f2f3e9}.workflow-phase p{font:14px/1.8 Arial;margin:0;color:#c6d4bd}.workflow-board.is-playing .workflow-lines{animation:workflow-draw 1.1s calc(var(--phase)*.9s) ease-out both}.workflow-board.is-playing .workflow-node span{animation:workflow-light 1s calc(var(--phase)*.9s) ease-out both}.workflow-board.is-playing .workflow-node:after{content:'';height:3px;position:absolute;left:44px;right:-28px;top:20px;background:#dfb37b;transform-origin:left;animation:workflow-connect .8s calc(var(--phase)*.9s + .3s) ease-out both}.workflow-board .workflow-phase:last-child .workflow-node:after{right:0}@keyframes workflow-draw{from{opacity:.18;stroke-dasharray:600;stroke-dashoffset:600;translate:0 9px}to{opacity:1;stroke-dasharray:600;stroke-dashoffset:0;translate:0 0}}@keyframes workflow-light{from{background:#244735;box-shadow:0 0 0 0 #d6b57c00}to{background:#4c6540;box-shadow:0 0 0 5px #d6b57c13}}@keyframes workflow-connect{from{scale:0 1;opacity:.3}to{scale:1 1;opacity:1}}@media(max-width:1000px){.workflow-phases{gap:20px}.workflow-node:before,.workflow-board.is-playing .workflow-node:after{right:-20px}.workflow-board{padding:25px}.contractor-home .workflow-phase h3{font-size:18px}}@media(max-width:760px){.workflow-board{padding:21px}.scene-label{font-size:9px;align-items:flex-start}.scene-label span:last-child{max-width:90px;text-align:right}.workflow-phases{grid-template-columns:1fr;gap:27px}.workflow-phase{display:grid;grid-template-columns:45px 1fr;column-gap:14px;border-bottom:1px solid #80977940;padding-bottom:25px}.workflow-art{grid-column:1/-1;height:180px;margin-bottom:10px}.workflow-node{grid-column:1;grid-row:2/4;margin:0;align-self:start}.workflow-node:before,.workflow-board.is-playing .workflow-node:after{display:none}.contractor-home .workflow-phase h3{grid-column:2;font-size:21px;margin:0 0 9px}.workflow-phase p{grid-column:2}.workflow-phase:last-child{border-bottom:0;padding-bottom:0}.scene-foot{align-items:flex-start;flex-direction:column}.scene-foot p{font-size:12px}}@media(prefers-reduced-motion:reduce){.workflow-board.is-playing .workflow-lines,.workflow-board.is-playing .workflow-node span,.workflow-board.is-playing .workflow-node:after{animation:none!important}.workflow-board.is-playing .workflow-node:after{display:none}.replay-build{display:none}}

.realistic-floor-art{display:block;width:100%;height:auto;margin:18px 0 22px}

/* Project-led composition, November 2026. Original photos remain unaltered. */
.contractor-home .home-hero{min-height:660px}.contractor-home .hero-photo img{object-position:65% center}.work-opening{background:#f4f1e9;padding:75px 0 85px}.work-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}.contractor-home .work-heading h2{font-size:clamp(30px,3.3vw,48px);line-height:1.12;max-width:650px;margin:10px 0 0}.work-heading .text-link{white-space:nowrap}.work-mosaic{display:grid;grid-template-columns:1.55fr 1fr;grid-template-rows:270px 270px;gap:18px}.work-shot{margin:0;position:relative;overflow:hidden;background:#203d35}.work-shot a{display:block;width:100%;height:100%}.work-shot img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.work-shot a:hover img{transform:scale(1.025)}.work-shot a:focus-visible{outline:4px solid #e9bb80;outline-offset:-5px}.work-shot figcaption{position:absolute;bottom:0;left:0;right:0;padding:50px 22px 20px;background:linear-gradient(transparent,#102a24e8);color:#fff;font:500 14px/1.5 Arial;pointer-events:none;letter-spacing:.02em}.work-wide{grid-row:1/3}.work-wide img{object-position:55% center}.contractor-home .inquiry{background:#203d35;color:#fff}.contractor-home .inquiry h2{color:#fff}.contractor-home .inquiry .split{align-items:center;gap:70px}.contractor-home .inquiry .text-link{color:#e9bb80}.inquiry-detail{border-top:1px solid #ffffff40;margin-top:40px;padding-top:25px;max-width:420px}.inquiry-detail span{font:11px Arial;letter-spacing:.14em;color:#e9bb80}.inquiry-detail p{font-size:16px;line-height:1.8}.contractor-home .inquiry-panel{background:white;color:#203d35;padding:28px;border-radius:3px}.contractor-home .inquiry-panel h3{margin:0 0 12px;font-size:24px}.contractor-home .inquiry-panel .text-link{color:#203d35;font-size:13px}.lead_crm_iframe{display:block;width:100%;border:0;height:560px;max-width:100%}.contractor-home .home-category-grid{display:flex;flex-direction:column;gap:60px}.contractor-home .construction-card{display:grid;grid-template-columns:1fr 1.05fr;background:transparent;border:0;box-shadow:none;align-items:center;gap:48px}.contractor-home .construction-card:nth-child(even) .service-photo{order:2}.contractor-home .construction-card .service-photo{height:100%;min-height:490px}.contractor-home .construction-card .service-photo img{height:100%;min-height:490px;object-fit:cover}.contractor-home .construction-card .service-body{padding:20px 0}.contractor-home .construction-card h2{font-size:34px}.contractor-home .construction-card p{font-size:16px;line-height:1.85}.build-photo-story{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;margin:40px 0;align-items:center}.build-photo-story .work-shot{height:360px}.build-photo-story h3{font-size:30px;line-height:1.2;max-width:400px}.build-photo-story p{max-width:440px}.work-details{background:#183b31;color:#fff}.work-details h2,.work-details .text-link{color:#fff}.work-details .eyebrow{color:#e5b57e}.detail-mosaic{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:260px 260px;gap:18px}.detail-lead{grid-row:1/3}.detail-lead img{object-position:45% center}
@media(max-width:1000px){.contractor-home .construction-card{gap:28px}.contractor-home .inquiry .split{gap:30px}.work-mosaic{grid-template-rows:230px 230px}.work-heading{align-items:start;flex-direction:column;gap:18px}}
@media(max-width:760px){.contractor-home .home-hero{min-height:590px}.contractor-home .hero-photo img{object-position:62% center}.work-opening{padding:45px 0}.work-mosaic{grid-template-columns:1fr;grid-template-rows:auto;gap:14px}.work-wide{grid-row:auto}.work-shot{height:280px}.work-wide{height:380px}.work-shot figcaption{padding:40px 16px 16px;font-size:13px}.contractor-home .inquiry .split{gap:32px}.contractor-home .inquiry-panel{padding:18px 9px}.contractor-home .inquiry-panel h3,.contractor-home .inquiry-panel .form-direct{margin-left:14px}.inquiry-detail{margin-top:24px}.contractor-home .construction-card{display:flex;flex-direction:column;gap:0;align-items:stretch}.contractor-home .construction-card:nth-child(even) .service-photo{order:0}.contractor-home .construction-card .service-photo,.contractor-home .construction-card .service-photo img{height:310px;min-height:0}.contractor-home .construction-card .service-body{padding:26px 0 0}.contractor-home .home-category-grid{gap:42px}.contractor-home .construction-card h2{font-size:29px}.build-photo-story{grid-template-columns:1fr;gap:18px}.build-photo-story .work-shot{height:300px}.build-photo-story h3{font-size:27px}.detail-mosaic{grid-template-columns:1fr;grid-template-rows:auto;gap:14px}.detail-lead{grid-row:auto;height:370px}.work-heading .text-link{white-space:normal}.work-details{padding:45px 0}}
@media(prefers-reduced-motion:reduce){.work-shot img{transition:none}.work-shot a:hover img{transform:none}}

.contractor-home section[id]{scroll-margin-top:110px}.contractor-home .text-link{display:inline-flex;align-items:center;min-height:44px} .menu-toggle,.button,.mobile-call{min-height:44px} .contractor-home .home-answer summary{min-height:56px} @media(max-width:760px){.contractor-home section[id]{scroll-margin-top:85px}}

.contractor-home .inquiry p{color:#e2e9df}.contractor-home .inquiry .eyebrow{color:#e9bb80}.contractor-home .inquiry-panel p{color:#203d35}.contractor-home .inquiry-panel h3{font-family:Arial,sans-serif}

/* Separate material illustration from the reading columns. */
.finish-material-panel{margin:0 0 38px}.finish-material-panel .floor-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:44px;align-items:center;padding:28px 34px;margin:0;background:#edf0e4}.finish-material-panel .detail-kicker{grid-column:1/-1}.finish-material-panel .realistic-floor-art{grid-column:1;grid-row:2/4;max-height:360px;object-fit:contain;margin:20px 0}.finish-material-panel .floor-key{grid-column:2;margin:22px 0 0}.finish-material-panel .floor-key li{padding-top:16px;padding-bottom:16px}.finish-material-panel .floor-key strong{font-size:15px}.finish-material-panel .floor-key span{font-size:14px}.finish-material-panel figcaption{grid-column:2;font-size:12px;padding-top:14px;margin-bottom:14px}.finish-reading-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}.contractor-home .finish-reading-grid h3{font-size:25px;line-height:1.3;margin:0 0 22px;min-height:65px}.finish-reading-grid p{margin:0 0 22px}.finish-renovation{display:grid;grid-template-columns:.75fr 1.6fr;gap:38px;border-top:1px solid #cdd4c4;margin-top:22px;padding-top:30px}.contractor-home .finish-renovation h3{font-size:24px;line-height:1.3;margin:0}.finish-renovation p{margin:0}.faq-section-heading{margin-top:60px;border-top:1px solid #cdd4c4;padding-top:40px}.contractor-home .faq-section-heading h2{font-size:36px;line-height:1.2;margin:8px 0 24px}.contractor-home .home-faq{display:block;max-width:100%;margin-top:0}.home-answer summary:focus-visible{outline:3px solid #ad713e;outline-offset:3px}.contractor-home .faq-answer p{max-width:850px}
@media(max-width:760px){.finish-material-panel .floor-detail{grid-template-columns:1fr;padding:18px;margin:0;gap:0}.finish-material-panel .detail-kicker,.finish-material-panel .realistic-floor-art,.finish-material-panel .floor-key,.finish-material-panel figcaption{grid-column:1;grid-row:auto}.finish-material-panel .realistic-floor-art{max-height:310px;margin:16px 0}.finish-material-panel .floor-key{margin:0}.finish-reading-grid{grid-template-columns:1fr;gap:24px}.contractor-home .finish-reading-grid h3{min-height:0;font-size:24px;margin-bottom:18px}.finish-renovation{grid-template-columns:1fr;gap:18px;margin-top:10px}.faq-section-heading{margin-top:36px;padding-top:30px}.contractor-home .faq-section-heading h2{font-size:29px}.contractor-home .home-answer summary h3{font-size:19px}}

/* Editorial decision lists, within existing reading columns. */
.contractor-home .editorial-list{list-style:disc outside;margin:18px 0 24px;padding-left:1.35em;color:inherit;line-height:1.75}.contractor-home .editorial-list li{display:list-item;margin:0 0 12px;padding-left:.2em;font-size:inherit}.contractor-home .editorial-list li::marker{color:#ad713e}.contractor-home .editorial-list li strong{display:inline;font-size:inherit;color:inherit;font-weight:700}.contractor-home .editorial-list+p{margin-top:0}@media(max-width:760px){.contractor-home .editorial-list{padding-left:1.2em;margin:16px 0 22px}.contractor-home .editorial-list li{margin-bottom:12px}}
