:root{--brand-color-primary:#829ea9;--brand-color-secondary:#2e2e2e}
html,body{height:100%;margin:0}
body{margin:0;font-family:'Figtree',sans-serif;color:var(--brand-color-secondary);background:#fff}
a{color:var(--brand-color-secondary);text-decoration:none}
:where(a):hover{color:var(--brand-color-primary)}
::placeholder{color:#a3a3a3}
[hidden]{display:none !important}
header{position:sticky;top:0;z-index:40;border-bottom:1px solid transparent}
body[data-scrolled] header{border-bottom:1px solid #d8dde0}
.site-main{display:flex;flex-direction:column;flex:1 0 auto}
body[data-nav="find-local-pros"] nav a[data-nav="find-local-pros"],body[data-nav="projects"] nav a[data-nav="projects"],body[data-nav="videos"] nav a[data-nav="videos"],body[data-nav="magazine"] nav a[data-nav="magazine"]{color:var(--brand-color-primary);text-decoration:underline;text-decoration-color:var(--brand-color-primary);text-decoration-thickness:2px;text-underline-offset:8px}
body[data-nav="search"] nav a[data-nav="search"]>span{border-color:var(--brand-color-primary)}
body[data-nav="search"] nav a[data-nav="search"]>span>span{background:var(--brand-color-primary)}
body[data-page="videos"] .city-option{cursor:pointer;color:var(--brand-color-secondary);font-weight:400;background:transparent}
body[data-page="videos"] .city-option.is-active{color:var(--brand-color-primary);font-weight:600;background:#f2f5f6}
.faqs-inner{display:flex;flex-direction:column;gap:10px}
.faqs-head .eyebrow-light{display:none}
.faqs-head .h2-light{margin:0 0 8px;font-size:24px;font-weight:600}
.faq-item{border:1px solid #e5e8ea;padding:16px 18px;background:#fff}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:0;padding:0;border:0;background:none;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;color:inherit;text-align:left;line-height:inherit}
.faq-sign{color:var(--brand-color-primary);font-size:18px;font-weight:400}
.faq-answer p{margin:12px 0 0;font-size:14px;color:#5c5c5c;line-height:1.6}
.faq-q[aria-expanded="false"]+.faq-answer{display:none}
.bx-1{display:flex;align-items:center;gap:14px}
.lnk-1{display:flex}
.img-1{height:36px}
.det-1{position:relative}
.sum-1{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:14px;letter-spacing:1.2px;font-weight:600;color:var(--brand-color-primary);text-transform:uppercase}
.sp-1{width:7px;height:7px;border-right:1.5px solid var(--brand-color-primary);border-bottom:1.5px solid var(--brand-color-primary);transform:rotate(45deg);display:inline-block;margin-top:-4px}
.bx-2{position:absolute;top:26px;left:0;background:#fff;border:1px solid #e5e8ea;border-radius:8px;box-shadow:0 8px 24px rgba(46,46,46,0.12);padding:6px;min-width:170px}
.bx-3{padding:9px 12px;font-size:14px;font-weight:600;color:var(--brand-color-primary);background:#f2f5f6;border-radius:6px}
.bx-4{padding:9px 12px;font-size:14px;color:#a3a3a3}
.nav-1{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:500}
.lnk-2{display:inline-flex}
.sp-2{width:13.8px;height:13.8px;border:2px solid #a3a3a3;border-radius:50%;position:relative;display:inline-block;flex-shrink:0}
.sp-3{position:absolute;width:2px;height:6.4px;background:#a3a3a3;transform:rotate(-45deg);left:12.9px;top:11px}
.img-2{width:28.2px;height:28.2px;cursor:pointer;display:block}
.bx-5{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}
.bx-6{display:flex;flex-direction:column;gap:14px}
.img-3{height:34px;align-self:flex-start;filter:brightness(0) invert(1)}
.txt-1{margin:0;font-size:14px;line-height:1.5}
.frm-1{display:flex;gap:8px;margin-top:4px}
.inp-1{flex:1;border:none;padding:10px 12px;font-family:'Figtree',sans-serif;font-size:13px;color:var(--brand-color-secondary)}
.btn-1{background:var(--brand-color-primary);color:#fff;border:none;padding:10px 18px;font-family:'Figtree',sans-serif;font-size:11px;letter-spacing:1.5px;cursor:pointer;border-radius:20px}
.bx-7{display:flex;flex-direction:column;gap:20px;align-items:flex-start;padding-top:6px}
.bx-8{display:flex;gap:12px}
.lnk-3{width:30px;height:30px;border:1.5px solid #fff;border-radius:50%;display:flex;align-items:center;justify-content:center}
.lnk-4{display:block}
.img-4{height:44px;display:block}
.bx-9{display:flex;flex-direction:column;gap:8px;font-size:14px}
.sp-4{font-size:12px;letter-spacing:2px;font-weight:700;margin-bottom:4px}
.lnk-5{color:#fff}
.bx-10{margin:36px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,0.35);display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:12px;color:#fff}
.bx-11{display:flex;gap:18px;align-items:center}
.art-1{padding:0 0 64px}
.bx-12{display:grid;grid-template-rows:auto 1fr 1fr;margin:0 24px}
.bx-13{grid-area:1/1/3/2;background:#5482cc}
.bx-14{grid-area:1/1/2/2;position:relative}
.bx-15{width:min(990px,calc(100% - 80px));margin:0 auto;padding:56px 0 36px}
.hd1-1{margin:0 0 6px;font-size:44px;font-weight:500;line-height:1.15;color:#fff;text-wrap:pretty}
.txt-2{margin:10px 0 0;font-size:17px;color:#fff}
.bx-16{grid-area:2/1/4/2;position:relative}
.bx-17{width:min(990px,calc(100% - 80px));margin:0 auto}
.img-5{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.bx-18{height:36px}
.bx-19{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.sp-5{font-size:12px;letter-spacing:2px;font-weight:700;color:#5c5c5c}
.bx-20{font-size:17px;line-height:1.75}
.txt-3{margin:0 0 18px}
.bx-21{margin:20px 0;display:flex;gap:12px}
.img-6{flex:1.5544 1 0;min-width:0;width:0;height:auto;display:block}
.img-7{flex:1.3514 1 0;min-width:0;width:0;height:auto;display:block}
.bx-22{margin:14px 0 32px;padding:28px 24px;border-top:2px solid #5482cc;border-bottom:2px solid #5482cc;text-align:center}
.txt-4{margin:0;font-size:24px;line-height:1.45;color:#3a64a8;font-weight:500;text-wrap:pretty}
.img-8{flex:1.3782 1 0;min-width:0;width:0;height:auto;display:block}
.img-9{flex:0.9796 1 0;min-width:0;width:0;height:auto;display:block}
.img-10{flex:1.4531 1 0;min-width:0;width:0;height:auto;display:block}
.img-11{flex:0.7475 1 0;min-width:0;width:0;height:auto;display:block}
.img-12{flex:0.8935 1 0;min-width:0;width:0;height:auto;display:block}
.txt-5{margin:0}
.bx-23{margin-top:40px;border:1px solid #e5e8ea;background:#f8fafa;padding:28px 32px;display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.img-13{width:150px;flex-shrink:0;display:block;background:#fff;border:1px solid #d8dde0;padding:14px 18px;box-sizing:border-box}
.bx-24{display:flex;flex-direction:column;gap:6px;flex:1;min-width:220px}
.sp-6{font-size:11px;letter-spacing:2px;font-weight:700;color:#a3a3a3}
.sp-7{font-size:20px;font-weight:600}
.sp-8{font-size:14px;color:#5c5c5c;line-height:1.6}
.sec-1{max-width:1200px;width:100%;margin:0 auto;box-sizing:border-box;padding:8px 40px 56px}
.bx-25{border-top:1px solid #e5e8ea;padding-top:28px}
.bx-26{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:22px}
.hd2-1{margin:0;font-size:24px;font-weight:600}
.bx-27{display:flex;align-items:center;gap:18px}
.lnk-6{font-size:12px;letter-spacing:1.5px;font-weight:600;color:var(--brand-color-primary)}
.bx-28{display:flex;gap:8px}
.btn-2{width:36px;height:36px;border-radius:50%;border:1px solid #d8dde0;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.sp-9{width:8px;height:8px;border-left:2px solid var(--brand-color-primary);border-bottom:2px solid var(--brand-color-primary);transform:rotate(45deg);display:inline-block;margin-left:3px}
.sp-10{width:8px;height:8px;border-right:2px solid var(--brand-color-primary);border-bottom:2px solid var(--brand-color-primary);transform:rotate(-45deg);display:inline-block;margin-right:3px}
.bx-29{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding-bottom:4px}
.lnk-7{display:flex;flex-direction:column;gap:10px;flex:0 0 calc((100% - 48px)/3);scroll-snap-align:start}
.sp-11{font-size:10px;letter-spacing:1.5px;color:#a3a3a3;font-weight:700}
.sp-12{font-size:16px;font-weight:600;line-height:1.35;margin-top:-4px}
.bx-30{grid-area:1/1/3/2;background:#4e95c4}
.txt-6{margin:10px 0 0;font-size:17px;color:rgba(255,255,255,0.9)}
.bx-31{display:flex;flex-direction:column;gap:2px}
.hd2-2{margin:32px 0 10px;font-size:22px;font-weight:600;line-height:1.3}
.img-14{width:100%;height:auto;display:block;margin:20px 0 24px}
.bx-32{margin:14px 0 18px;padding:28px 24px;border-top:2px solid #4e95c4;border-bottom:2px solid #4e95c4;text-align:center}
.txt-7{margin:0;font-size:24px;line-height:1.45;color:#2f6f99;font-weight:500;text-wrap:pretty}
.lnk-8{flex-shrink:0;display:block}
.img-15{width:241px;display:block;background:#fff;border:1px solid #d8dde0;padding:16px 14px;box-sizing:border-box}
.bx-33{display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-size:13px;font-weight:600;color:var(--brand-color-primary);margin-top:6px}
.lnk-9{color:var(--brand-color-primary)}
.lnk-10{width:32px;height:32px;display:flex;align-items:center;justify-content:center}
.sp-13{font-size:13px;color:#a3a3a3}
.img-16{width:100%;display:block;margin:14px 0 24px}
.bx-34{margin:14px 0;padding:28px 24px;border-top:2px solid #4e95c4;border-bottom:2px solid #4e95c4;text-align:center}
.txt-8{margin:0;font-size:24px;line-height:1.45;color:#4e95c4;font-weight:500;text-wrap:pretty}
.txt-9{margin:10px 0 0;font-size:13px;letter-spacing:2px;color:#a3a3a3}
.bx-35{margin:28px 0;background:#f2f7fb;border:1px solid #d9e6f0;padding:28px 32px}
.txt-10{margin:0 0 16px;font-size:13px;letter-spacing:2px;font-weight:700;color:#4e95c4}
.ol-1{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:10px;font-size:16px;line-height:1.6}
.bx-36{grid-area:1/1/3/2;background:#af9776}
.hd2-3{margin:34px 0 16px;font-size:22px;font-weight:700;letter-spacing:0.5px;color:var(--brand-color-secondary);text-wrap:pretty}
.bx-37{margin:20px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.img-17{width:100%;aspect-ratio:5/3;object-fit:cover;display:block}
.bx-38{margin:14px 0;padding:28px 24px;border-top:2px solid #af9776;border-bottom:2px solid #af9776;text-align:center}
.txt-11{margin:0;font-size:24px;line-height:1.45;color:#8a6f47;font-weight:500;text-wrap:pretty}
.bx-39{margin:20px 0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.img-18{width:100%;aspect-ratio:713/778;object-fit:cover;display:block}
.img-19{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.img-20{width:100%;height:auto;display:block;margin:20px 0}
.img-21{width:100%;aspect-ratio:1082/880;object-fit:cover;display:block}
.img-22{width:100%;height:auto;display:block;margin:20px 0 0}
.img-23{width:200px;display:block;background:#fff;border:1px solid #d8dde0;padding:12px 16px;box-sizing:border-box}
.bx-40{grid-area:1/1/3/2;background:#5b697e}
.txt-12{margin:10px 0 0;font-size:17px;color:rgba(255,255,255,0.85)}
.img-24{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.bx-41{margin:14px 0;padding:28px 24px;border-top:2px solid #5b697e;border-bottom:2px solid #5b697e;text-align:center}
.txt-13{margin:0;font-size:24px;line-height:1.45;color:#5b697e;font-weight:500;text-wrap:pretty}
.bx-42{margin:14px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.img-25{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;margin:20px 0}
.img-26{width:150px;display:block;border:1px solid #d8dde0}
.bx-43{grid-area:1/1/3/2;background:#040f85}
.img-27{width:100%;aspect-ratio:488/740;object-fit:cover;display:block}
.bx-44{margin:14px 0;padding:28px 24px;border-top:2px solid #040f85;border-bottom:2px solid #040f85;text-align:center}
.txt-14{margin:0;font-size:24px;line-height:1.45;color:#040f85;font-weight:500;text-wrap:pretty}
.img-28{width:100%;aspect-ratio:7/10;object-fit:cover;display:block}
.img-29{width:180px;display:block;background:#fff;border:1px solid #d8dde0;padding:12px 16px;box-sizing:border-box}
.bx-45{grid-area:1/1/3/2;background:#06038d}
.img-30{float:right;width:220px;margin:4px 0 20px 28px;border:1px solid #d8dde0;display:block}
.bx-46{aspect-ratio:4/3;background:repeating-linear-gradient(45deg,#eef1f2,#eef1f2 12px,#e4e9eb 12px,#e4e9eb 24px);display:flex;align-items:center;justify-content:center}
.sp-14{font-family:monospace;font-size:11px;color:#a3a3a3}
.bx-47{margin:14px 0;padding:28px 24px;border-top:2px solid #06038d;border-bottom:2px solid #06038d;text-align:center}
.txt-15{margin:0;font-size:24px;line-height:1.45;color:#06038d;font-weight:500;text-wrap:pretty}
.bx-48{margin:14px 0;aspect-ratio:16/9;background:repeating-linear-gradient(45deg,#eef1f2,#eef1f2 12px,#e4e9eb 12px,#e4e9eb 24px);display:flex;align-items:center;justify-content:center}
.img-31{width:224px;display:block;background:#fff;border:1px solid #d8dde0;padding:12px 16px;box-sizing:border-box}
.bx-49{grid-area:1/1/3/2;background:#3b3b3b}
.bx-50{margin:14px 0;padding:28px 24px;border-top:2px solid #3b3b3b;border-bottom:2px solid #3b3b3b;text-align:center}
.txt-16{margin:0;font-size:24px;line-height:1.45;color:#3b3b3b;font-weight:500;text-wrap:pretty}
.img-32{width:150px;display:block;background:#fff;border:1px solid #d8dde0;padding:12px 16px;box-sizing:border-box}
.bx-51{grid-area:1/1/3/2;background:#034694}
.bx-52{margin:14px 0;padding:28px 24px;border-top:2px solid #034694;border-bottom:2px solid #034694;text-align:center}
.txt-17{margin:0;font-size:24px;line-height:1.45;color:#034694;font-weight:500;text-wrap:pretty}
.img-33{width:200px;display:block;background:#fff;border:1px solid #d8dde0;padding:10px 14px;box-sizing:border-box}
.bx-53{grid-area:1/1/3/2;background:#c49b61}
.bx-54{margin:14px 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.bx-55{margin:14px 0;padding:28px 24px;border-top:2px solid #c49b61;border-bottom:2px solid #c49b61;text-align:center}
.txt-18{margin:0;font-size:24px;line-height:1.45;color:#c49b61;font-weight:500;text-wrap:pretty}
.bx-56{margin:14px 0 24px;display:grid;grid-template-columns:1fr 1.6fr;gap:12px}
.img-34{width:100%;height:100%;object-fit:cover;display:block;min-height:0}
.bx-57{grid-area:1/1/3/2;background:#9d1612}
.bx-58{margin:14px 0;padding:28px 24px;border-top:2px solid #9d1612;border-bottom:2px solid #9d1612;text-align:center}
.txt-19{margin:0;font-size:24px;line-height:1.45;color:#9d1612;font-weight:500;text-wrap:pretty}
.img-35{width:241px;display:block;background:#fff;border:1px solid #d8dde0;padding:10px 14px;box-sizing:border-box}
.bx-59{grid-area:1/1/3/2;background:#89401e}
.bx-60{margin:14px 0;padding:28px 24px;border-top:2px solid #89401e;border-bottom:2px solid #89401e;text-align:center}
.txt-20{margin:0;font-size:24px;line-height:1.45;color:#89401e;font-weight:500;text-wrap:pretty}
.bx-61{grid-area:1/1/3/2;background:#000}
.img-36{flex:0.7271 1 0;min-width:0;width:0;height:auto;display:block}
.img-37{flex:0.8550 1 0;min-width:0;width:0;height:auto;display:block}
.bx-62{margin:14px 0 32px;padding:28px 24px;border-top:2px solid #000;border-bottom:2px solid #000;text-align:center}
.txt-21{margin:0;font-size:24px;line-height:1.45;color:#000;font-weight:500;text-wrap:pretty}
.img-38{flex:1.4458 1 0;min-width:0;width:0;height:auto;display:block}
.img-39{flex:1.0517 1 0;min-width:0;width:0;height:auto;display:block}
.img-40{flex:0.7179 1 0;min-width:0;width:0;height:auto;display:block}
.img-41{flex:0.7414 1 0;min-width:0;width:0;height:auto;display:block}
.img-42{flex:0.8239 1 0;min-width:0;width:0;height:auto;display:block}
.img-43{width:150px;display:block;background:#fff;border:1px solid #d8dde0;padding:14px 18px;box-sizing:border-box}
.bx-63{grid-area:1/1/3/2;background:#d8c99e}
.hd1-2{margin:0 0 6px;font-size:44px;font-weight:500;line-height:1.15;color:var(--brand-color-secondary);text-wrap:pretty}
.txt-22{margin:10px 0 0;font-size:17px;color:var(--brand-color-secondary)}
.img-44{flex:1.0972 1 0;min-width:0;width:0;height:auto;display:block}
.img-45{flex:0.9378 1 0;min-width:0;width:0;height:auto;display:block}
.bx-64{margin:14px 0 32px;padding:28px 24px;border-top:2px solid #d8c99e;border-bottom:2px solid #d8c99e;text-align:center}
.txt-23{margin:0;font-size:24px;line-height:1.45;color:#6e5f33;font-weight:500;text-wrap:pretty}
.img-46{flex:2.0260 1 0;min-width:0;width:0;height:auto;display:block}
.img-47{flex:1.4448 1 0;min-width:0;width:0;height:auto;display:block}
.img-48{flex:1.6667 1 0;min-width:0;width:0;height:auto;display:block}
.img-49{flex:0.8881 1 0;min-width:0;width:0;height:auto;display:block}
.img-50{width:150px;display:block}
.bx-65{grid-area:1/1/3/2;background:#314667}
.img-51{width:100%;aspect-ratio:4/3;object-fit:contain;background:#f2f5f6;display:block}
.bx-66{margin:14px 0;padding:28px 24px;border-top:2px solid #314667;border-bottom:2px solid #314667;text-align:center}
.txt-24{margin:0;font-size:24px;line-height:1.45;color:#314667;font-weight:500;text-wrap:pretty}
.img-52{width:170px;display:block;background:#fff;border:1px solid #d8dde0;padding:10px 14px;box-sizing:border-box}
.bx-67{grid-area:1/1/3/2;background:#1d4791}
.bx-68{margin:20px 0;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:12px}
.img-53{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.bx-69{margin:14px 0;padding:28px 24px;border-top:2px solid #1d4791;border-bottom:2px solid #1d4791;text-align:center}
.txt-25{margin:0;font-size:24px;line-height:1.45;color:#1d4791;font-weight:500;text-wrap:pretty}
.sec-2{position:relative;margin:0 24px;overflow:hidden}
.bx-70{width:100%;height:497px;overflow:hidden;position:relative;background:var(--brand-color-secondary)}
.img-54{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ifr-1{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;min-width:calc(497px * 1.7778);aspect-ratio:16/9;border:none;pointer-events:none}
.bx-71{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.bx-72{background:rgba(130,158,169,0.95);padding:44px 60px;text-align:center;max-width:650px;width:100%}
.hd1-3{margin:0;font-size:42px;font-weight:400;color:#fff;letter-spacing:0.5px}
.txt-26{margin:12px 0 24px;font-size:17px;color:#fff;font-weight:300}
.str-1{font-weight:700}
.frm-2{display:flex;align-items:center;background:#fff;border-radius:4px;padding:0 14px;height:44px;max-width:440px;margin:0 auto}
.inp-2{flex:1;border:none;outline:none;font-family:'Figtree',sans-serif;font-size:14px;color:var(--brand-color-secondary);background:transparent}
.sp-15{width:15px;height:15px;border:2px solid #a3a3a3;border-radius:50%;position:relative;display:inline-block}
.sp-16{position:absolute;width:2px;height:7px;background:#a3a3a3;transform:rotate(-45deg);left:14px;top:12px}
.lnk-11{position:absolute;right:20px;bottom:20px;display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--brand-color-secondary);padding:10px 22px 10px 10px;border-radius:26px;font-size:16px;font-weight:500;box-shadow:0 2px 10px rgba(0,0,0,0.18)}
.img-55{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1.5px solid #d8dde0}
.sp-17{color:#5c5c5c;font-size:17px;line-height:1}
.sec-3{padding:56px 40px 8px}
.bx-73{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.hd2-4{margin:0;font-size:28px;font-weight:500}
.bx-74{position:relative}
.btn-3{position:absolute;left:-16px;top:50%;transform:translateY(-50%);z-index:2;width:48px;height:48px;border-radius:50%;border:none;background:#fff;box-shadow:0 2px 12px rgba(46,46,46,0.22);cursor:pointer;color:var(--brand-color-secondary);font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0 0 3px}
.btn-4{position:absolute;right:-16px;top:50%;transform:translateY(-50%);z-index:2;width:48px;height:48px;border-radius:50%;border:none;background:#fff;box-shadow:0 2px 12px rgba(46,46,46,0.22);cursor:pointer;color:var(--brand-color-secondary);font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0 0 3px}
.bx-75{display:flex;gap:20px;overflow-x:auto;scrollbar-width:none;scroll-behavior:smooth;scroll-snap-type:x mandatory}
.lnk-12{flex:0 0 calc((100% - 100px)/6);min-width:160px;box-sizing:border-box;scroll-snap-align:start;border:1px solid #e5e8ea;background:#fff}
.img-56{width:100%;aspect-ratio:5/4;object-fit:cover;object-position:center;display:block}
.bx-76{padding:14px 14px 16px;font-size:16px;font-weight:500;line-height:1.3}
.bx-77{display:flex;gap:24px;overflow-x:auto;scrollbar-width:none;scroll-behavior:smooth;scroll-snap-type:x mandatory}
.bx-78{flex:0 0 calc((100% - 48px)/3);min-width:280px;scroll-snap-align:start;border:1px solid #e5e8ea;background:#fff}
.bx-79{position:relative;cursor:pointer}
.bx-80{width:100%;aspect-ratio:16/9;background:#eef1f2}
.img-57{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.bx-81{position:absolute;right:14px;bottom:14px;width:36px;height:36px;border-radius:50%;background:rgba(46,46,46,0.85);display:flex;align-items:center;justify-content:center}
.sp-18{width:0;height:0;border-left:11px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}
.bx-82{display:flex;align-items:center;gap:10px;padding:12px 14px 16px}
.img-58{width:32px;height:32px;border-radius:50%;flex-shrink:0;border:1px solid #e5e8ea;box-sizing:border-box;object-fit:cover;object-position:center;display:block}
.bx-83{display:flex;flex-direction:column;gap:2px;min-width:0}
.sp-19{font-size:15px;font-weight:600}
.sec-4{padding:56px 40px 96px}
.bx-84{display:flex;gap:32px;overflow-x:auto;scrollbar-width:none;scroll-behavior:smooth;scroll-snap-type:x mandatory}
.lnk-13{display:block;flex:0 0 calc((100% - 64px)/3);min-width:300px;box-sizing:border-box;scroll-snap-align:start;border:1px solid #e5e8ea;background:#fff}
.img-59{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center;display:block}
.sp-20{position:absolute;right:14px;bottom:14px;background:var(--brand-color-secondary);color:#fff;font-size:11px;letter-spacing:1.5px;padding:7px 14px;border-radius:20px}
.bx-85{padding:16px 18px 20px}
.hd3-1{margin:0 0 8px;font-size:22px;font-weight:600}
.txt-27{margin:0;font-size:14px;color:#5c5c5c;line-height:1.55}
.bx-86{position:relative;aspect-ratio:16/9;background:var(--brand-color-secondary)}
.ifr-2{position:absolute;inset:0;width:100%;height:100%;border:none}
.sec-5{padding:40px 40px 12px;width:100%;box-sizing:border-box}
.hd1-4{margin:0 0 8px;font-size:36px;font-weight:500}
.txt-28{margin:0 0 28px;font-size:16px;color:#5c5c5c}
.frm-3{display:flex;align-items:center;background:#fff;border:1px solid #d8dde0;border-radius:4px;padding:0 14px;height:44px;max-width:440px;margin-bottom:36px}
.bx-87{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;padding-bottom:56px}
.lnk-14{border:1px solid #e5e8ea;background:#fff;display:block}
.img-60{width:100%;height:140px;object-fit:cover;display:block}
.bx-88{padding:14px 14px 16px;font-size:15px;font-weight:500;line-height:1.35}
.sec-6{padding:40px 40px 64px;width:100%;box-sizing:border-box}
.bx-89{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.bx-90{border:1px solid #e5e8ea;background:#fff;display:flex;flex-direction:column}
.img-61{width:100%;height:100%;object-fit:cover;display:block}
.lnk-15{display:flex;align-items:center;gap:10px;padding:12px 14px 16px}
.img-62{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0;display:block;border:1px solid #e5e8ea;box-sizing:border-box}
.bx-91{flex:1;background:#e4e9eb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;min-height:0}
.bx-92{width:300px;height:250px;max-width:100%;background:#fff;border:1px dashed #c9d1d5;display:flex;align-items:center;justify-content:center}
.sp-21{font-family:monospace;font-size:12px;letter-spacing:1px;color:#a3a3a3}
.sp-22{font-size:9px;letter-spacing:2px;color:#a3a3a3}
.bx-93{display:flex;justify-content:center;margin-top:36px}
.btn-5{background:#fff;color:var(--brand-color-primary);border:1px solid var(--brand-color-primary);padding:13px 36px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;border-radius:24px}
.txt-29{margin:0 0 24px;font-size:16px;color:#5c5c5c}
.frm-4{display:flex;align-items:center;background:#fff;border:1px solid #d8dde0;border-radius:4px;padding:0 14px;height:44px;max-width:440px;margin-bottom:32px}
.bx-94{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px}
.lnk-16{display:flex;flex-direction:column;flex:1}
.sp-23{position:absolute;left:14px;top:14px;background:#fff;color:var(--brand-color-secondary);font-size:10px;letter-spacing:1.5px;padding:6px 12px;border-radius:20px;font-weight:600}
.bx-95{padding:16px 18px 20px;display:flex;flex-direction:column;flex:1}
.txt-30{margin:0 0 12px;font-size:14px;color:#5c5c5c;line-height:1.55}
.sp-24{display:inline-flex;align-items:center;gap:6px;font-size:12px;letter-spacing:1.5px;font-weight:600;color:var(--brand-color-primary);margin-top:auto}
.sp-25{font-size:16px;line-height:1}
.bx-96{width:100%;max-width:300px;aspect-ratio:300/250;background:#fff;border:1px dashed #c9d1d5;display:flex;align-items:center;justify-content:center}
.bx-97{width:100%;aspect-ratio:16/9;background:repeating-linear-gradient(45deg,#eef1f2,#eef1f2 12px,#e4e9eb 12px,#e4e9eb 24px);display:flex;align-items:center;justify-content:center}
.frm-5{display:flex;align-items:center;background:#fff;border:1px solid #d8dde0;border-radius:4px;padding:0 14px;height:44px;max-width:440px;margin-bottom:20px}
.bx-98{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.bx-99{position:relative;aspect-ratio:4/3;background:repeating-linear-gradient(45deg,#f2f5f6,#f2f5f6 12px,#eef1f3 12px,#eef1f3 24px);display:flex;align-items:center;justify-content:center}
.sp-26{font-family:monospace;font-size:12px;color:#a3a3a3}
.bx-100{padding:12px 14px 14px}
.hd3-2{margin:0 0 4px;font-size:15px;font-weight:600;line-height:1.3}
.txt-31{margin:0;font-size:12px;color:#a3a3a3}
.bx-101{display:flex;justify-content:center;margin-top:32px}
.bx-102{text-align:center;padding:64px 0;color:#a3a3a3;font-size:15px}
.sec-7{padding:40px 40px 64px;width:100%;box-sizing:border-box;max-width:1450px;margin:0 auto;flex:1;display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:start}
.bx-103{min-width:0}
.frm-6{display:flex;align-items:center;background:#fff;border:1px solid #d8dde0;border-radius:4px;padding:0 14px;height:48px;max-width:560px;margin-bottom:12px}
.inp-3{flex:1;border:none;outline:none;font-family:'Figtree',sans-serif;font-size:15px;color:var(--brand-color-secondary);background:transparent}
.bx-104{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px}
.btn-6{font-size:12px;letter-spacing:0.2px;font-weight:600;font-family:'Figtree',sans-serif;cursor:pointer;color:#fff;background:var(--brand-color-primary);border:1px solid var(--brand-color-primary);padding:6px 14px;border-radius:16px;white-space:nowrap}
.btn-7{font-size:12px;letter-spacing:0.2px;font-weight:600;font-family:'Figtree',sans-serif;cursor:pointer;color:#5c5c5c;background:#f2f5f6;border:1px solid #f2f5f6;padding:6px 14px;border-radius:16px;white-space:nowrap}
.bx-105{display:flex;flex-direction:column;gap:44px}
.bx-106{border-bottom:2px solid var(--brand-color-secondary);padding-bottom:10px;margin-bottom:4px}
.hd2-5{margin:0;font-size:13px;letter-spacing:2.5px;font-weight:700}
.bx-107{display:flex;flex-direction:column}
.lnk-17{display:flex;align-items:center;gap:16px;padding:12px 4px;border-bottom:1px solid #eef1f2}
.bx-108{width:128px;aspect-ratio:16/9;flex-shrink:0;background:#eef1f2;overflow:hidden}
.bx-109{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.sp-27{font-size:16px;font-weight:600}
.sp-28{font-size:16px;color:var(--brand-color-primary)}
.bx-110{width:100%;height:100%;background:#fff;border:1px solid #e5e8ea;box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:10px}
.img-63{max-width:100%;max-height:100%;object-fit:contain;display:block}
.bx-111{width:100%;height:100%;background:repeating-linear-gradient(45deg,#f2f5f6,#f2f5f6 12px,#eef1f3 12px,#eef1f3 24px);display:flex;align-items:center;justify-content:center}
.sp-29{font-family:monospace;font-size:10px;color:#a3a3a3}
.bx-112{margin-top:24px}
.sp-30{font-size:12px;letter-spacing:2px;font-weight:700;color:#a3a3a3}
.bx-113{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.btn-8{background:#fff;color:#5c5c5c;border:1px solid #d8dde0;padding:9px 20px;font-family:'Figtree',sans-serif;font-size:13px;cursor:pointer;border-radius:20px}
.asd-1{position:sticky;top:24px;display:flex;flex-direction:column;align-items:center;gap:8px}
.img-64{width:300px;height:600px;display:block;border:1px solid #d8dde0}
.img-65{width:100%;height:300px;object-fit:cover;display:block}
.bx-114{background:rgba(130,158,169,0.95);padding:32px 60px;text-align:center;max-width:650px;width:100%;display:flex;flex-direction:column;gap:8px}
.sp-31{font-size:12px;letter-spacing:3px;color:#fff;font-weight:600}
.hd1-5{margin:0;font-size:44px;font-weight:400;color:#fff}
.sp-32{font-size:15px;color:#fff;font-weight:300}
.sec-8{max-width:1440px;width:100%;margin:0 auto;box-sizing:border-box;padding:72px 40px 64px;display:grid;grid-template-columns:1fr 330px;gap:40px;align-items:start}
.bx-115{display:flex;flex-direction:column;gap:48px;min-width:0}
.hd2-6{margin:0 0 18px;font-size:24px;font-weight:600}
.bx-116{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bx-117{border:1px solid #e5e8ea;background:#fff;display:flex;flex-direction:column;cursor:pointer}
.bx-118{padding:16px;display:flex;flex-direction:column;gap:6px;flex:1}
.bx-119{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sp-33{font-size:17px;font-weight:600}
.sp-34{font-size:10px;letter-spacing:1.5px;background:var(--brand-color-primary);color:#fff;padding:4px 9px;border-radius:12px;white-space:nowrap}
.txt-32{margin:2px 0 10px;font-size:14px;color:#5c5c5c;line-height:1.5}
.bx-120{margin-top:auto;display:flex;gap:18px}
.lnk-18{font-size:13px;font-weight:600;color:var(--brand-color-primary)}
.bx-121{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}
.bx-122{display:flex;align-items:center;gap:16px;padding:16px 4px;border-bottom:1px solid #eef1f2}
.bx-123{display:flex;align-items:center;gap:18px;white-space:nowrap}
.lnk-19{font-size:13px;color:#5c5c5c;display:inline-flex;align-items:center;gap:6px}
.sp-35{font-size:13px;color:#6b6b6b}
.asd-2{display:flex;flex-direction:column;gap:24px;align-self:stretch}
.bx-124{position:sticky;top:24px;display:flex;flex-direction:column;gap:16px}
.bx-125{border:1px solid #e5e8ea;background:#fff;padding:24px;display:flex;justify-content:center;align-items:center}
.lnk-20{display:block;width:100%}
.img-66{width:100%;height:120px;object-fit:contain;display:block}
.frm-7{border:1px solid #e5e8ea;background:#f7f9fa;padding:24px;display:flex;flex-direction:column;gap:12px}
.hd3-3{margin:0;font-size:19px;font-weight:600}
.txt-33{margin:0 0 4px;font-size:13px;color:#5c5c5c;line-height:1.5}
.inp-4{border:1px solid #d8dde0;padding:11px 12px;font-family:'Figtree',sans-serif;font-size:14px;background:#fff}
.ta-1{border:1px solid #d8dde0;padding:11px 12px;font-family:'Figtree',sans-serif;font-size:14px;resize:vertical;background:#fff}
.btn-9{background:#c4562a;color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer}
.sec-9{background:#c4562a;margin:0 24px}
.bx-126{max-width:1392px;width:100%;margin:0 auto;box-sizing:border-box;padding:48px 16px;display:flex;align-items:center;gap:20px}
.img-67{width:74px;height:74px;object-fit:cover;border-radius:50%;flex-shrink:0}
.sp-36{font-size:12px;letter-spacing:3px;color:rgba(255,255,255,0.85);font-weight:600}
.hd1-6{margin:4px 0 0;font-size:40px;font-weight:500;line-height:1.15;color:#fff;text-wrap:pretty}
.sec-10{max-width:1440px;width:100%;margin:0 auto;box-sizing:border-box;padding:44px 40px 64px;display:grid;grid-template-columns:1fr 330px;gap:40px;align-items:start}
.bx-127{display:flex;flex-direction:column;gap:44px;min-width:0}
.bx-128{width:64px;height:64px;border-radius:50%;background:rgba(46,46,46,0.85);display:flex;align-items:center;justify-content:center}
.sp-37{width:0;height:0;border-left:20px solid #fff;border-top:12px solid transparent;border-bottom:12px solid transparent;margin-left:5px}
.hd2-7{margin:0 0 14px;font-size:24px;font-weight:600}
.bx-129{font-size:16px;line-height:1.7;color:#3d3d3d;display:flex;flex-direction:column;gap:14px}
.hd2-8{margin:0 0 16px;font-size:24px;font-weight:600}
.bx-130{columns:3;column-gap:12px}
.bx-131{break-inside:avoid;margin-bottom:12px;cursor:pointer}
.img-68{width:100%;display:block}
.bx-132{width:100%;aspect-ratio:3/4;background:repeating-linear-gradient(45deg,#eef1f2,#eef1f2 12px,#e4e9eb 12px,#e4e9eb 24px);display:flex;align-items:center;justify-content:center}
.bx-133{width:100%;aspect-ratio:4/3;background:repeating-linear-gradient(45deg,#eef1f2,#eef1f2 12px,#e4e9eb 12px,#e4e9eb 24px);display:flex;align-items:center;justify-content:center}
.bx-134{width:100%;aspect-ratio:1/1;background:repeating-linear-gradient(45deg,#eef1f2,#eef1f2 12px,#e4e9eb 12px,#e4e9eb 24px);display:flex;align-items:center;justify-content:center}
.bx-135{position:fixed;inset:0;z-index:50;background:rgba(20,20,20,0.92);display:flex;align-items:center;justify-content:center}
.btn-10{position:absolute;left:24px;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:none;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,0.4);cursor:pointer;color:var(--brand-color-secondary);font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0 0 3px}
.bx-136{max-width:min(1100px,86vw);width:100%}
.img-69{width:100%;max-height:80vh;object-fit:contain;display:block}
.bx-137{width:100%;height:70vh;background:repeating-linear-gradient(45deg,#eef1f2,#eef1f2 12px,#e4e9eb 12px,#e4e9eb 24px);display:flex;align-items:center;justify-content:center}
.sp-38{font-family:monospace;font-size:13px;color:#a3a3a3}
.bx-138{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
.sp-39{color:#fff;font-size:13px;letter-spacing:1px}
.btn-11{background:none;border:none;color:#fff;font-size:13px;letter-spacing:1.5px;cursor:pointer;font-family:'Figtree',sans-serif}
.btn-12{position:absolute;right:24px;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:none;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,0.4);cursor:pointer;color:var(--brand-color-secondary);font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0 0 3px}
.bx-139{display:flex;justify-content:center;margin-top:20px}
.bx-140{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.bx-141{display:flex;align-items:center;gap:10px}
.sp-40{font-size:22px;font-weight:700}
.sp-41{color:#f4b400;font-size:17px;letter-spacing:2px}
.sp-42{opacity:0.4}
.bx-142{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bx-143{border:1px solid #e5e8ea;background:#fff;padding:20px;display:flex;flex-direction:column;gap:10px}
.bx-144{display:flex;align-items:center;gap:12px}
.sp-43{width:38px;height:38px;border-radius:50%;background:var(--brand-color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0}
.sp-44{font-size:14px;font-weight:600}
.sp-45{font-size:12px;color:#a3a3a3}
.sp-46{color:#f4b400;font-size:14px;letter-spacing:2px}
.txt-34{margin:0;font-size:14px;color:#5c5c5c;line-height:1.6}
.sp-47{width:38px;height:38px;border-radius:50%;background:#c4562a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0}
.sp-48{width:38px;height:38px;border-radius:50%;background:#5c5c5c;color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0}
.bx-145{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;font-size:15px;color:#3d3d3d}
.bx-146{display:grid;grid-template-columns:1fr 1fr;gap:24px;font-size:15px;color:#3d3d3d;line-height:1.7}
.lnk-21{display:inline-block;margin-top:20px;font-size:14px;font-weight:600;color:var(--brand-color-primary)}
.asd-3{align-self:stretch}
.img-70{width:100%;height:300px;object-fit:cover;display:block;background:#eef1f2}
.sp-49{font-size:17px;font-weight:600;color:#a3a3a3}
.bx-147{border:1px dashed #c9d1d5;background:#fff;padding:24px;display:flex;justify-content:center;align-items:center;height:120px;box-sizing:content-box}
.sp-50{font-family:monospace;font-size:12px;letter-spacing:1px;color:#a3a3a3;text-align:center}
.btn-13{background:#a3a3a3;color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer}
.sec-11{background:rgb(53,53,53);margin:0 24px;transition:background 0.4s}
.img-71{width:74px;height:74px;object-fit:cover;border-radius:50%;flex-shrink:0;background:#fff;border:1px solid #d8dde0;box-sizing:border-box}
.img-72{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#eef1f2}
.bx-148{font-size:16px;line-height:1.7;color:#3d3d3d}
.bx-149{columns:2;column-gap:12px}
.bx-150{break-inside:avoid;margin-bottom:12px}
.sp-51{width:38px;height:38px;border-radius:50%;background:#5c8a5c;color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0}
.bx-151{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;font-size:15px;color:#3d3d3d;line-height:1.7}
.sp-52{white-space:pre-line}
.bx-152{display:flex;gap:12px;align-items:center;margin-top:14px}
.bx-153{position:sticky;top:24px;display:flex;flex-direction:column;gap:24px}
.btn-14{background:rgb(53,53,53);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-12{background:rgb(19,57,105);margin:0 24px;transition:background 0.4s}
.bx-154{width:64px;height:64px;border-radius:50%;background:rgba(46,46,46,0.35);display:flex;align-items:center;justify-content:center}
.btn-15{background:rgb(19,57,105);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-13{background:rgb(33,41,86);margin:0 24px;transition:background 0.4s}
.btn-16{background:rgb(33,41,86);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-14{background:rgb(169,149,17);margin:0 24px;transition:background 0.4s}
.sp-53{width:38px;height:38px;border-radius:50%;background:#a3743d;color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0}
.btn-17{background:rgb(169,149,17);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-15{background:rgb(0,0,0);margin:0 24px;transition:background 0.4s}
.sp-54{width:38px;height:38px;border-radius:50%;background:#3d6b8a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0}
.btn-18{background:rgb(0,0,0);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-16{background:rgb(70,104,143);margin:0 24px;transition:background 0.4s}
.btn-19{background:rgb(70,104,143);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-17{background:rgb(140,140,140);margin:0 24px;transition:background 0.4s}
.btn-20{background:rgb(140,140,140);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-18{background:rgb(13,8,8);margin:0 24px;transition:background 0.4s}
.btn-21{background:rgb(13,8,8);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-19{background:rgb(1,1,1);margin:0 24px;transition:background 0.4s}
.btn-22{background:rgb(1,1,1);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-20{background:rgb(1,17,27);margin:0 24px;transition:background 0.4s}
.btn-23{background:rgb(1,17,27);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-21{background:rgb(77,92,83);margin:0 24px;transition:background 0.4s}
.btn-24{background:rgb(77,92,83);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-22{background:rgb(0,168,80);margin:0 24px;transition:background 0.4s}
.btn-25{background:rgb(0,168,80);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-23{background:rgb(110,10,49);margin:0 24px;transition:background 0.4s}
.btn-26{background:rgb(110,10,49);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-24{background:#d63732;margin:0 24px;transition:background 0.4s}
.btn-27{background:#d63732;color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-25{background:rgb(52,94,166);margin:0 24px;transition:background 0.4s}
.btn-28{background:rgb(52,94,166);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-26{background:rgb(123,3,216);margin:0 24px;transition:background 0.4s}
.btn-29{background:rgb(123,3,216);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-27{background:rgb(0,140,153);margin:0 24px;transition:background 0.4s}
.btn-30{background:rgb(0,140,153);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-28{background:rgb(16,77,142);margin:0 24px;transition:background 0.4s}
.btn-31{background:rgb(16,77,142);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-29{background:rgb(215,122,36);margin:0 24px;transition:background 0.4s}
.btn-32{background:rgb(215,122,36);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-30{background:rgb(49,58,69);margin:0 24px;transition:background 0.4s}
.btn-33{background:rgb(49,58,69);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-31{background:#70bfdf;margin:0 24px;transition:background 0.4s}
.btn-34{background:#70bfdf;color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-32{background:rgb(10,46,94);margin:0 24px;transition:background 0.4s}
.btn-35{background:rgb(10,46,94);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-33{background:rgb(0,92,166);margin:0 24px;transition:background 0.4s}
.btn-36{background:rgb(0,92,166);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-34{background:rgb(158,106,56);margin:0 24px;transition:background 0.4s}
.btn-37{background:rgb(158,106,56);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-35{background:rgb(9,70,150);margin:0 24px;transition:background 0.4s}
.btn-38{background:rgb(9,70,150);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-36{background:rgb(75,9,5);margin:0 24px;transition:background 0.4s}
.btn-39{background:rgb(75,9,5);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.sec-37{background:rgb(71,71,71);margin:0 24px;transition:background 0.4s}
.btn-40{background:rgb(71,71,71);color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
.page-wrap{min-height:100vh;display:flex;flex-direction:column}
.site-header{display:flex;align-items:center;justify-content:space-between;padding:14px 40px;background:#fff}
.site-footer{background:#a3a3a3;color:#fff;padding:48px 40px;margin-top:auto}
/* ==========================================================================
   FindHomeIdeas generator additions. APPENDED ONLY: every rule above this line is
   design/styles.css byte-for-byte (build.py verifies it). Add new rules below;
   never edit or renumber the design classes. Mobile rules live in responsive.css.
   ========================================================================== */
/* Brand pair for businesses without a curated design colour (CONTRACT 3.3).
   Mirrors the design's .sec-N (hero band) / .btn-N (lead-form button) pairs. */
.sec-38{background:#4f6b76;margin:0 24px;transition:background 0.4s}
.btn-41{background:#4f6b76;color:#fff;border:none;padding:13px;font-family:'Figtree',sans-serif;font-size:13px;letter-spacing:1.5px;font-weight:600;cursor:pointer;transition:background 0.4s}
/* Article + magazine (template-article-magazine.md 2.7) */
.g-list{margin:0 0 18px;padding-left:22px;display:flex;flex-direction:column;gap:8px}
.g-row-img{flex:var(--r,1) 1 0;min-width:0;width:0;height:auto;display:block}
.g-hero-contain{object-fit:contain;background:#f2f5f6}
.g-issue{margin:0 0 36px}
.g-issue-frame{display:block;width:100%;height:clamp(480px,60vw,860px);max-height:calc(100vh - 110px);border:0}   /* client, Oct 20 2026: the magazine fills the viewer */
/* Long-form legacy content (about, advertise, privacy ...): sanitized HTML inside one wrapper */
.g-prose{font-size:17px;line-height:1.75;color:#3d3d3d}
.g-prose p{margin:0 0 18px}
.g-prose h2{margin:32px 0 10px;font-size:22px;font-weight:600;line-height:1.3;color:var(--brand-color-secondary)}
.g-prose h3{margin:24px 0 8px;font-size:18px;font-weight:600;line-height:1.35;color:var(--brand-color-secondary)}
.g-prose ul,.g-prose ol{margin:0 0 18px;padding-left:22px}
.g-prose li{margin:0 0 6px}
.g-prose a{color:var(--brand-color-primary);text-decoration:underline;text-underline-offset:2px}
.g-prose img{max-width:100%;height:auto}
.g-prose iframe{display:block;max-width:100%;border:0}
/* Magazine: "Read the Current Issue" block placed after the article grid (pages/articles.py) */
.g-issue-top{margin:56px 0 0}
/* Business pages (pages/business.py): sanitized legacy about_html inside .bx-129.g-about */
.g-about ul,.g-about ol{margin:0;padding-left:22px}
.g-about li{margin:0 0 4px}
.g-about h3{margin:6px 0 -4px;font-size:18px;font-weight:600;line-height:1.35;color:var(--brand-color-secondary)}
.g-about a{color:var(--brand-color-primary);text-decoration:underline;text-underline-offset:2px}
/* Legacy pages (pages/legacy.py): media blocks in the main column and the aside card */
.g-img{display:block;width:100%;height:auto;margin:0 0 24px}
.g-block{margin:0 0 24px}
.g-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:0 0 24px}
.g-gallery img{display:block;width:100%;height:auto}
.g-badges{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:0 0 24px}
.g-badges img{display:block;height:48px;width:auto}
.g-card{border:1px solid #e5e8ea;background:#f7f9fa;padding:24px;display:flex;flex-direction:column;gap:12px}
.g-qr{display:block;width:100%;max-width:200px;height:auto;margin:0 auto}
.g-head .txt-29{margin-bottom:0}
/* QA fixes (appended; nothing above is renumbered) */
/* Article / about copy: legacy run-together words must wrap inside the column on phones */
.bx-20 p,.bx-20 li,.g-prose,.g-about{overflow-wrap:anywhere}
/* Search inputs: the design sets outline:none, so give them a visible focus ring (WCAG 2.4.7) */
.inp-2:focus-visible,.inp-3:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
/* /business/<slug>/#projects links: keep the heading clear of the sticky header (<=87px tall) */
section#projects{scroll-margin-top:96px}
/* Sticky side columns sit below the sticky header (65px) plus the design's 24px gap;
   responsive.css makes them static at <=1024px */
.bx-124{top:89px}
.bx-153{top:89px}
.asd-1{top:89px}
/* Search page: chips whose group has 0 results are disabled by site.js */
.btn-6:disabled,.btn-7:disabled{opacity:.5;cursor:default}
/* Visually hidden text (screen readers only): section headings that keep the outline h1 > h2 > h3 */
.g-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* FHI: home hero background-video Pause/Play toggle (WCAG 2.2.2) */
.hero-toggle{position:absolute;left:20px;top:20px;z-index:2;min-width:44px;min-height:44px;padding:8px 14px;border:0;border-radius:22px;background:#fff;color:var(--brand-color-secondary);font-family:inherit;font-size:14px;font-weight:500;line-height:1;box-shadow:0 2px 10px rgba(0,0,0,.18);cursor:pointer}
.hero-toggle:focus-visible{outline:3px solid var(--brand-color-secondary);outline-offset:2px}
/* Business reviews: real review texts run to 1,300+ characters (the design's samples were short).
   site.js clamps a long text to 8 lines (data-clamp) and adds a "Read more" toggle, so one long
   review no longer stretches its whole row; without JS the full text shows */
.txt-34[data-clamp]{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:8;line-clamp:8;overflow:hidden}
.g-more{align-self:flex-start;padding:0;border:0;background:none;font-family:inherit;font-size:13px;font-weight:600;color:var(--brand-color-secondary);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.g-more:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
/* Legacy pages' contact card (#f7f9fa): the brand-primary link colour is 2.7:1 there; use the dark brand colour (WCAG 1.4.3) */
.g-card .lnk-21{color:var(--brand-color-secondary)}
/* FHI: search page "Search all images" toggle and image results (pages/search.py, site.js).
   Cards reuse the Projects grid (.bx-98/.bx-90); the overlay reuses the business lightbox (.bx-135) */
.g-imgbar{display:flex;margin:-2px 0 18px}
.g-imgbtn{display:inline-flex;align-items:center;gap:8px;font-family:'Figtree',sans-serif;font-size:13px;font-weight:600;letter-spacing:.2px;color:var(--brand-color-secondary);background:#fff;border:1px solid var(--brand-color-secondary);padding:8px 16px;border-radius:18px;cursor:pointer;white-space:nowrap}
.g-imgbtn:hover{background:#f2f5f6}
.g-imgbtn[aria-pressed="true"]{color:#fff;background:var(--brand-color-secondary)}
.g-imgbtn[aria-pressed="true"] .g-imgbtn-ic{display:none}
.g-imgbtn:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
.g-imgbtn-ic{flex:none}
.g-imgs-status{margin:14px 0 20px;font-size:14px;color:#5c5c5c}
.g-imgs-status:empty{display:none}
.g-imgs-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.g-imgs-grid .bx-90:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
.g-lb-bar{gap:12px 20px;flex-wrap:wrap}
.g-lb-pro{color:#fff;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.g-lb-pro:focus-visible,.g-lb-bar .btn-11:focus-visible{outline:2px solid #fff;outline-offset:2px}
.g-inline{font-size:inherit;vertical-align:baseline}
/* FHI: sponsor portal (PORTAL.md). Lead-form spam trap kept off-screen; a filled 300x250 ad card
   drops the placeholder's dashed border; the lead form's send status line */
.g-hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.g-ad-on{border-style:solid;border-color:transparent;overflow:hidden}
.g-form-msg{margin:0 0 10px;font-size:13px;color:#2e2e2e}
/* FHI: Podcast page (pages/podcast.py, site.js). Cards reuse the Videos card (.bx-90 / .bx-79-.bx-81);
   the player overlay reuses the business lightbox (.bx-135 / .bx-136 / .bx-138); the nav underline
   repeats the design's rule for the other nav items */
body[data-nav="podcast"] nav a[data-nav="podcast"],body[data-nav="resource-guide"] nav a[data-nav="resource-guide"]{color:var(--brand-color-primary);text-decoration:underline;text-decoration-color:var(--brand-color-primary);text-decoration-thickness:2px;text-underline-offset:8px}
.g-ep{cursor:pointer}
.g-ep:hover .bx-81{background:var(--brand-color-primary)}
.g-ep-txt{display:flex;flex-direction:column;gap:4px;padding:12px 14px 16px}
.g-ep .bx-79:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
/* the video stays put and only the text under it scrolls, without a bar; the X sits at the top right
   as on photos and videos; phones get the whole screen (client, Oct 20 2026) */
.bx-135[data-pod-lb]{background:#161616}   /* solid: the page behind no longer shows through the description */
.g-pod-stage{position:relative;display:flex;flex-direction:column;max-width:min(1600px,94vw,calc((100vh - 230px) * 16 / 9));max-height:92vh}
.g-pod-stage>.bx-86{flex:none;border-radius:12px;overflow:hidden}
.g-pod-stage>.g-pod-info{flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:none;overscroll-behavior:contain}
.g-pod-stage>.g-pod-info::-webkit-scrollbar{display:none}
.g-pod-stage>.btn-11.g-lb-x{position:absolute;top:-14px;right:-14px}
@media (max-width:640px){
  .bx-135[data-pod-lb]{align-items:stretch}
  .bx-135[data-pod-lb] .bx-136.g-pod-stage{width:100%;max-width:none;height:100%;max-height:none;padding:64px 0 0;box-sizing:border-box}
  .g-pod-stage>.bx-86{border-radius:0}
  .g-pod-stage>.g-pod-info{padding:0 16px 32px}
  .g-pod-stage>.btn-11.g-lb-x{top:14px;right:14px;width:40px;height:40px}
}
/* FHI: video overlay (site.js click-to-play; client, Oct 20 2026): as large as the screen allows, so
   YouTube serves its highest quality; the X sits just outside the top right corner, as on photos */
.g-vlb-stage{position:relative;width:min(1600px,94vw,calc((100vh - 120px) * 16 / 9))}
.g-vlb .g-vlb-fig{width:100%}
.g-vlb-fig>.bx-86,.g-vlb-fig>iframe{border-radius:12px;overflow:hidden}
.g-vlb .g-vlb-stage>.btn-11.g-lb-x{position:absolute;top:-14px;right:-14px}
.g-vlb-title{margin:14px 2px 0;color:#fff;font-family:'Figtree',sans-serif;font-size:17px;font-weight:600;line-height:1.35}
.g-vlb-title:empty{display:none}
@media (max-width:640px){.g-vlb-stage{width:calc(100vw - 24px)}.g-vlb .g-vlb-stage>.btn-11.g-lb-x{top:-48px;right:0}}
.g-pod-stage .bx-86 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.g-pod-audio{position:absolute;left:12px;right:12px;bottom:12px;width:calc(100% - 24px)}
.g-pod-soon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(20,20,20,0.85);color:#fff;font-size:13px;font-weight:600;letter-spacing:1.5px;padding:10px 18px;border-radius:24px;white-space:nowrap}
.g-pod-info{color:#fff;margin-top:16px}
.g-pod-title{margin:0 0 4px;font-size:20px;font-weight:600;line-height:1.3}
.g-pod-meta{margin:0 0 8px;font-size:13px;color:#c9cdd0}
.g-pod-desc{margin:0;font-size:15px;line-height:1.55;color:#e8eaeb;white-space:pre-line}
.g-pod-desc:empty{display:none}
/* FHI: search v2 (pages/search.py, site.js; client call Oct 13 2026). A real SEARCH button; the
   photo row (12 photos, the matched sponsor's first) with refine chips; "Pros for this project"
   reuses the result rows (.lnk-17); the Photos view filters use the design's chip look (.btn-7) */
.g-sform{padding-right:5px}
.g-sform .inp-3{min-width:0}
.g-sbtn{flex:none;height:38px;padding:0 20px;border:none;border-radius:4px;background:var(--brand-color-primary);color:#fff;font-family:'Figtree',sans-serif;font-size:12px;font-weight:700;letter-spacing:1.5px;cursor:pointer}
.g-sbtn:hover{background:var(--brand-color-secondary)}
.g-sbtn:focus-visible,.g-sicon:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
.g-sicon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-right:-8px;padding:0;border:none;background:none;cursor:pointer;border-radius:50%}
.g-sicon:hover .sp-15{border-color:var(--brand-color-secondary)}
.g-sicon:hover .sp-16{background:var(--brand-color-secondary)}
.g-top{display:flex;flex-direction:column;gap:28px;margin-bottom:28px}
.g-prow-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;border-bottom:2px solid var(--brand-color-secondary);padding-bottom:10px;margin-bottom:12px}
.g-prow-title{display:inline-flex;align-items:baseline;gap:6px;padding:0;border:none;background:none;font-family:'Figtree',sans-serif;color:var(--brand-color-secondary);cursor:pointer}
.g-prow-title:hover .hd2-5,.g-prow-title:hover .g-prow-go{color:var(--brand-color-primary)}
.g-prow-title:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:3px}
.g-prow-count{font-size:13px;color:#5c5c5c}
.g-prow-go{font-size:16px;line-height:1}
.g-prow-sp{margin:0;font-size:13px;color:#5c5c5c}
.g-prow-sp a{color:var(--brand-color-secondary);font-weight:600}
.g-prow-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.g-prow-item{display:block;aspect-ratio:1/1;overflow:hidden;background:#eef1f2}
.g-prow-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.g-prow-item:hover img{transform:scale(1.04)}
.g-prow-item:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
.g-pv-head{margin-bottom:14px}
#search-images{scroll-margin-top:96px}
.g-prow{min-width:0}
/* "View all N photos" (client, Oct 2026: stand out more than the heading link) */
.g-prow-foot{display:flex;justify-content:center;margin-top:20px}
.g-prow-all{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:14px 36px;border:0;border-radius:24px;background:var(--brand-color-primary);color:#fff;font-family:'Figtree',sans-serif;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:background .2s}
.g-prow-all:hover{background:var(--brand-color-secondary)}
.g-prow-all:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:3px}
/* FHI: footer (client, Oct 2026): the design's four columns as they were, with the Home Builders
   logo on top and the social icons centred below it (the column shrinks to the logo's width, so
   the icons centre under it and the logo stays at the column's left edge). Wide screens: the
   columns stop at 1400px instead of spreading out. Desktop: the copyright row is inset 24px. */
.bx-7{justify-self:start;align-items:center}
.bx-5{max-width:1400px}
@media (min-width:1025px){
  .bx-10{padding-left:24px;padding-right:24px}
  /* Explore and TV Schedule sit further right inside their own columns (the newsletter and
     Home Builders columns don't move) */
  .bx-5>.bx-9{padding-left:35%}
  .bx-5>.bx-9:last-child{padding-left:15%}
}
/* Explore and TV Schedule shift right (client, Oct 2026): by up to 400px where the screen has
   room, keeping TV Schedule's text 100px+ from the right edge (the copyright links sit 64px in).
   The full 400px applies from about 1840px wide; at 1280-1440px there is only room for 0-32px.
   Above 1480px the columns are capped at 1400px, so the room grows 1:1 with the screen. The
   newsletter and Home Builders columns don't move. The footer clips the shifted (empty) column
   boxes so they can't cause a horizontal scrollbar. */
@media (min-width:1025px){
  .site-footer{overflow-x:clip}
  .bx-5>.bx-9{position:relative;left:max(0px,calc((100vw - 1280px)*0.2))}
}
@media (min-width:1481px){
  .bx-5>.bx-9{left:clamp(0px,calc(100vw - 1440px),400px)}
}

/* FHI: sponsorships (sponsor portal, PORTAL.md). Search Tile built from logo + photo + headline,
   native "Sponsored" cards, the Podcast "Presented by" row and the episode sponsor line. */
.g-tile{display:flex;flex-direction:column;width:300px;height:600px;box-sizing:border-box;border:1px solid #d8dde0;background:#fff;color:#1f2a30;text-decoration:none;overflow:hidden}
.g-tile-img{width:100%;height:200px;object-fit:cover;display:block}
.g-tile-logo{height:120px;display:flex;align-items:center;justify-content:center;padding:20px 28px 8px;box-sizing:border-box}
.g-tile-logo img{max-width:100%;max-height:92px;object-fit:contain;display:block}
.g-tile-name{font-size:20px;font-weight:700;text-align:center}
.g-tile-head{flex:1;margin:0;padding:12px 28px;font-size:24px;line-height:1.3;font-weight:600;text-align:center;display:flex;align-items:center;justify-content:center}
.g-tile-cta{margin:0 28px 28px;padding:14px 12px;border-radius:24px;background:var(--brand-color-primary);color:#fff;text-align:center;font-family:'Figtree',sans-serif;font-size:12px;letter-spacing:1.5px;font-weight:600}
.g-tile:hover .g-tile-cta,.g-tile:focus-visible .g-tile-cta{background:var(--brand-color-secondary)}
.g-native .lnk-16{color:inherit;text-decoration:none}
.g-native-logo{object-fit:contain;background:#fff}
.g-presented{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin:-4px 0 28px}
.g-presented-l{font-size:11px;letter-spacing:2px;font-weight:600;color:#7a8389}
.g-presented-logos{display:flex;align-items:center;flex-wrap:wrap;gap:12px 28px}
.g-presented-a{display:block}
.g-presented-a img{display:block;max-height:44px;max-width:160px;width:auto;object-fit:contain}
.g-pod-sponsor{color:#fff;font-weight:600}
.g-hero-badge{padding:8px 18px 8px 14px}
.g-hero-logo{display:block;height:36px;width:auto;max-width:180px;object-fit:contain}
/* FHI: links in FAQ answers (phone numbers, the business's website) */
.faq-answer a{color:var(--brand-color-primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.faq-answer a:hover,.faq-answer a:focus-visible{color:var(--brand-color-secondary)}
/* FHI: search filter bar (client, Oct 2026): dropdowns with checkboxes under the search box,
   for the results page and the Photos view; active filters as removable chips. */
.g-fbar{position:relative;margin:14px 0 22px;font-family:'Figtree',sans-serif}
.g-fbar-row{display:flex;flex-wrap:wrap;gap:8px}
.g-fdd{position:relative}
.g-fbtn{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;min-height:40px;padding:8px 14px;border:1px solid #d8dde0;border-radius:20px;background:#fff;color:#2e2e2e;font:inherit;font-size:14px;font-weight:500;cursor:pointer}
.g-fbtn:hover{border-color:#9aa5ab}
.g-fbtn[aria-expanded="true"]{border-color:var(--brand-color-secondary)}
.g-fbtn.is-on{border-color:var(--brand-color-primary);background:#f2f6f8}
.g-fbtn:focus-visible,.g-fchip:focus-visible,.g-fopt input:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
.g-fbtn-n{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--brand-color-primary);color:#fff;font-size:12px;font-weight:600;line-height:20px;text-align:center;box-sizing:border-box}
.g-fbtn-c{font-size:11px;color:#7a8389}
.g-fpop{position:absolute;z-index:20;top:calc(100% + 6px);left:0;width:280px;max-height:340px;overflow-y:auto;padding:8px;border:1px solid #d8dde0;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.g-fopt{display:flex;align-items:center;gap:10px;padding:8px;border-radius:8px;font-size:14px;cursor:pointer}
.g-fopt:hover{background:#f4f6f7}
.g-fopt input{width:18px;height:18px;margin:0;flex:none;accent-color:var(--brand-color-primary)}
.g-fopt-t{flex:1;min-width:0}
.g-fopt-n{color:#7a8389;font-size:12px}
.g-fact{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
.g-fact .g-more{align-self:center}     /* "Clear all" lines up with the chips (client, Oct 20 2026) */
.g-fchip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:0;border-radius:16px;background:#e8eef1;color:#2e2e2e;font:inherit;font-size:13px;cursor:pointer}
.g-fchip:hover{background:#dbe4e8}
.g-fchip-x{font-size:11px;color:#5c5c5c}
.g-fnone{font-size:13px;color:#7a8389}
@media (max-width:640px){
  .g-fbar-row{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px 2px}
  .g-fbar-row::-webkit-scrollbar{display:none}
  .g-fbtn{flex:none}
  .g-fdd{position:static}
  .g-fpop{left:0;right:0;width:auto}
}
/* FHI: search box focus (client, Oct 2026): on every search box (home, Search, Magazine, Projects,
   Videos, Podcast, Find Local Pros, 404) the ring goes round the whole box instead of the input
   alone, whose 2px offset ran into the button or magnifier icon. Browsers without :has keep the
   input's own ring. */
@supports selector(:has(a)){
  form[role="search"]:has(input:focus-visible){outline:2px solid var(--brand-color-secondary);outline-offset:2px}
  form[role="search"] input:focus-visible{outline:none}
}
/* FHI: card look (client, Oct 2026: the media tiles were "too large and clunky"; the new look was
   then approved for every tile). Keyed on <html data-media-layout> on every page: "2" (default) or
   "classic" (config.MEDIA_LAYOUT; ?layout=classic / ?layout=2 previews either on any page). The markup
   is the design's, so "classic" (or deleting this block) is the original exactly.
   - Every tile gets the same card: rounded corners, no border, a soft shadow that lifts on hover, and
     the media pages' type (smaller tiles: 14px titles; three-across tiles: the larger cards' type).
     Each grid keeps its own columns.
   - Videos, Magazine and Podcast (html[data-media-grid]) also get the approved grid: three larger
     cards across the top, then 5 across (2 then 3 on tablets, 1 then 2 on phones). */
[data-media-layout="2"] :is(.bx-90,.bx-117,.lnk-12,.bx-78,.lnk-13,.lnk-14,.lnk-7,.bx-143,.bx-131,.g-prow-item){border:0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.06),0 6px 18px rgba(0,0,0,.06);transition:box-shadow .2s,transform .2s}
[data-media-layout="2"] :is(.bx-90:not([data-ad]):not(.bx-121>*):not(.bx-116>*),.bx-117,.lnk-12,.bx-78,.lnk-13,.lnk-14,.lnk-7,.bx-131,.g-prow-item):hover{box-shadow:0 2px 4px rgba(0,0,0,.08),0 12px 28px rgba(0,0,0,.10);transform:translateY(-2px)}
[data-media-layout="2"] .g-prow-item{border-radius:10px}
/* sliders (home rows, More Articles): room inside the scroll box for the shadow and the lift */
[data-media-layout="2"] :is(.bx-75,.bx-77,.bx-84,.bx-29){padding:6px 6px 24px;margin:-6px -6px -24px;scroll-padding:0 6px}
/* smaller tiles: category tiles, Projects page and search photo cards */
[data-media-layout="2"] :is(.lnk-12 .bx-76,.lnk-14 .bx-88){padding:10px 12px 12px;font-size:14px;font-weight:600;line-height:1.35}
[data-media-layout="2"] .bx-98>.bx-90 .bx-100{padding:10px 12px 12px}
[data-media-layout="2"] .bx-98>.bx-90 .hd3-2{font-size:14px;line-height:1.35;margin:0 0 3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
[data-media-layout="2"] .bx-98>.bx-90 .txt-31{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* three-across tiles (home Videos and Magazine rows, More Articles): the larger cards' type */
[data-media-layout="2"] :is(.bx-78,.lnk-13,.lnk-7){border-radius:18px}
[data-media-layout="2"] .bx-78 .bx-82{align-items:flex-start;gap:10px;padding:14px 18px 16px}
[data-media-layout="2"] .bx-78 .img-58{margin-top:1px}
[data-media-layout="2"] .bx-78 .bx-83{gap:1px}
[data-media-layout="2"] .bx-78 .bx-81{width:44px;height:44px;right:14px;bottom:14px}
[data-media-layout="2"] .bx-78 .sp-18{border-left-width:13px;border-top-width:8px;border-bottom-width:8px;margin-left:3px}
[data-media-layout="2"] :is(.bx-78 .sp-19,.lnk-13 .hd3-1,.lnk-7 .sp-12){font-size:19px;line-height:1.3;font-weight:600;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
[data-media-layout="2"] .bx-78 .sp-13{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-media-layout="2"] .lnk-13 .sp-20{display:none}
[data-media-layout="2"] .lnk-13 .bx-85{padding:16px 20px 20px}
[data-media-layout="2"] .lnk-13 .txt-27{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0 0}
[data-media-layout="2"] .lnk-7{gap:0}
[data-media-layout="2"] .lnk-7 .sp-11{padding:16px 20px 0;font-size:11px;letter-spacing:1.2px;color:#4f6b77}
[data-media-layout="2"] .lnk-7 .sp-12{margin:6px 20px 20px}
/* media cards (Videos, Magazine, Podcast grids; the More Videos rows on business and market pages) */
[data-media-layout="2"] .bx-89 .bx-81{width:30px;height:30px;right:10px;bottom:10px}
[data-media-layout="2"] .bx-89 .sp-18{border-left-width:9px;border-top-width:6px;border-bottom-width:6px;margin-left:2px}
[data-media-layout="2"] .bx-89 .lnk-15{align-items:flex-start;gap:8px;padding:10px 12px 12px}
[data-media-layout="2"] .bx-89 .img-62{width:22px;height:22px;margin-top:1px}
[data-media-layout="2"] .bx-89 .g-ep-txt{gap:3px;padding:10px 12px 12px}
[data-media-layout="2"] :is(.bx-89,.bx-94) :is(.sp-19,.hd3-1){font-size:14px;line-height:1.35;font-weight:600;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
[data-media-layout="2"] :is(.bx-89,.bx-94) .sp-13{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-media-layout="2"] .bx-89 .bx-83{gap:1px}
[data-media-layout="2"] .bx-94 .bx-74{display:contents}
[data-media-layout="2"] .bx-94 .sp-23{position:static;order:1;background:none;padding:12px 14px 0;border-radius:0;font-size:10px;letter-spacing:1.2px;color:#4f6b77}
[data-media-layout="2"] .bx-94 .bx-95{order:2;padding:4px 14px 14px}
[data-media-layout="2"] .bx-94 :is(.txt-30,.sp-24){display:none}
[data-media-layout="2"] :is(.bx-89,.bx-94) .bx-91{padding:8px 10px;gap:4px}
[data-media-layout="2"] :is(.bx-89,.bx-94) :is(.bx-92,.bx-96){width:100%;max-width:300px;height:auto;aspect-ratio:300/250}
/* media pages: the larger cards are the top three on desktop, two on tablets, one on phones (each
   screen size styles exactly the cards it shows large) */
@media (min-width:1025px){
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(-n+3):not([data-ad]){border-radius:18px}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:nth-child(-n+3):not([data-ad]) :is(.lnk-15,.g-ep-txt){padding:14px 18px 16px;gap:10px}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:nth-child(-n+3):not([data-ad]) .img-62{width:32px;height:32px;display:block}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:nth-child(-n+3):not([data-ad]) .bx-81{width:44px;height:44px;right:14px;bottom:14px}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:nth-child(-n+3):not([data-ad]) .sp-18{border-left-width:13px;border-top-width:8px;border-bottom-width:8px;margin-left:3px}
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(-n+3):not([data-ad]) :is(.sp-19,.hd3-1){font-size:19px;line-height:1.3}
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(-n+3):not([data-ad]) .sp-13{font-size:13px}
[data-media-layout="2"][data-media-grid] .bx-94>.bx-90:nth-child(-n+3):not([data-ad]) .sp-23{padding:16px 20px 0;font-size:11px}
[data-media-layout="2"][data-media-grid] .bx-94>.bx-90:nth-child(-n+3):not([data-ad]) .bx-95{flex:0 0 auto;padding:6px 20px 20px}
[data-media-layout="2"][data-media-grid] .bx-94>.bx-90:nth-child(-n+3):not([data-ad]) .txt-30{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0 0;font-size:14px}
}
@media (min-width:641px) and (max-width:1024px){
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(-n+2):not([data-ad]){border-radius:18px}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:nth-child(-n+2):not([data-ad]) :is(.lnk-15,.g-ep-txt){padding:14px 18px 16px;gap:10px}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:nth-child(-n+2):not([data-ad]) .img-62{width:32px;height:32px;display:block}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:nth-child(-n+2):not([data-ad]) .bx-81{width:44px;height:44px;right:14px;bottom:14px}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:nth-child(-n+2):not([data-ad]) .sp-18{border-left-width:13px;border-top-width:8px;border-bottom-width:8px;margin-left:3px}
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(-n+2):not([data-ad]) :is(.sp-19,.hd3-1){font-size:19px;line-height:1.3}
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(-n+2):not([data-ad]) .sp-13{font-size:13px}
[data-media-layout="2"][data-media-grid] .bx-94>.bx-90:nth-child(-n+2):not([data-ad]) .sp-23{padding:16px 20px 0;font-size:11px}
[data-media-layout="2"][data-media-grid] .bx-94>.bx-90:nth-child(-n+2):not([data-ad]) .bx-95{flex:0 0 auto;padding:6px 20px 20px}
[data-media-layout="2"][data-media-grid] .bx-94>.bx-90:nth-child(-n+2):not([data-ad]) .txt-30{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0 0;font-size:14px}
}
@media (max-width:640px){
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:first-child:not([data-ad]){border-radius:18px}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:first-child:not([data-ad]) :is(.lnk-15,.g-ep-txt){padding:14px 18px 16px;gap:10px}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:first-child:not([data-ad]) .img-62{width:32px;height:32px;display:block}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:first-child:not([data-ad]) .bx-81{width:44px;height:44px;right:14px;bottom:14px}
[data-media-layout="2"][data-media-grid] .bx-89>.bx-90:first-child:not([data-ad]) .sp-18{border-left-width:13px;border-top-width:8px;border-bottom-width:8px;margin-left:3px}
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:first-child:not([data-ad]) :is(.sp-19,.hd3-1){font-size:18px;line-height:1.3}
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:first-child:not([data-ad]) .sp-13{font-size:13px}
[data-media-layout="2"][data-media-grid] .bx-94>.bx-90:first-child:not([data-ad]) .sp-23{padding:16px 20px 0;font-size:11px}
[data-media-layout="2"][data-media-grid] .bx-94>.bx-90:first-child:not([data-ad]) .bx-95{flex:0 0 auto;padding:6px 20px 20px}
[data-media-layout="2"][data-media-grid] .bx-94>.bx-90:first-child:not([data-ad]) .txt-30{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0 0;font-size:14px}
}
/* media pages: three larger cards across the top, then 5 across (a 15-column grid) */
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94){grid-template-columns:repeat(15,minmax(0,1fr));gap:28px 18px}
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90{grid-column:span 3}
[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(-n+3){grid-column:span 5}
@media (max-width:1024px){
  /* tablets: two larger cards, then 3 across */
  [data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94){grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 16px}
  [data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90,[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(3){grid-column:span 2}
  [data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(-n+2){grid-column:span 3}
}
@media (max-width:640px){
  /* phones: one larger card, then 2 across */
  [data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94){grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
  [data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90,[data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:nth-child(-n+3){grid-column:span 1}
  [data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:first-child:not([data-ad]){grid-column:span 2;grid-row:auto}
  [data-media-layout="2"][data-media-grid] :is(.bx-89,.bx-94)>.bx-90:not(:first-child) :is(.sp-19,.hd3-1){font-size:13px}
  [data-media-layout="2"][data-media-grid] .bx-89 .bx-90:not(:first-child) .lnk-15{padding:8px 10px 10px}
  [data-media-layout="2"][data-media-grid] .bx-89 .bx-90:not(:first-child) .img-62{display:none}
  [data-media-layout="2"][data-media-grid] .bx-94>.bx-90:not(:first-child) .sp-23{padding:10px 10px 0}
  [data-media-layout="2"][data-media-grid] .bx-94>.bx-90:not(:first-child) .bx-95{padding:3px 10px 10px}
  [data-media-layout="2"][data-media-grid] .bx-94>.bx-90:not(:first-child) .txt-30{display:none}
}
/* FHI: portal project caption in the business-gallery lightbox (site.js adds .g-lb-cap under the
   photo when the tile comes from a sponsor's project: the project's title and description). */
.g-lb-cap{display:flex;flex-direction:column;gap:4px;padding:12px 2px 2px;color:#fff;font-family:'Figtree',sans-serif;max-width:900px}
.g-lb-cap strong{font-size:16px;font-weight:600;line-height:1.3}
.g-lb-cap span{font-size:14px;line-height:1.5;color:rgba(255,255,255,.85)}
.g-lb-cap span:empty{display:none}
/* FHI: Find Local Pros directory (Resource Guide, client Oct 2026; pros.py _directory_section).
   Sponsored rows: a light panel, "Featured" tag, Google rating and Website / call-or-text /
   Directions / Reviews buttons. Other rows: name and phone only. .g-call is the call-or-text
   popup a sponsor's phone button opens (site.js). Text and filled buttons use the darker brand
   blue #4f6b77 (5.7:1 on white; the lighter #829ea9 is 2.8:1). */
.g-rg .g-rg-sub{margin:-10px 0 12px;font-size:14px;color:#6b6b6b}
.g-rg-sp{flex-wrap:wrap;gap:10px 16px;background:#f5f8f9;border:0;border-radius:12px;padding:16px 18px;margin:0 0 10px}
.g-rg-rate{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:#2e2e2e;text-decoration:none;width:max-content}
.g-rg-rate:hover .g-rg-count{text-decoration:underline}
.g-rg-star{color:#e8a200;font-size:15px;line-height:1}
.g-rg-count{font-weight:400;color:#6b6b6b}
.g-rg-acts{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.g-rg-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:1px solid #cfd9dd;border-radius:20px;background:#fff;font-size:13px;font-weight:600;color:#4f6b77;text-decoration:none;white-space:nowrap;line-height:1.2}
.g-rg-btn:hover{border-color:#4f6b77;color:#4f6b77}
.g-rg-call{font-variant-numeric:tabular-nums}
.g-rg-btn:focus-visible,.g-rg-rate:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
.g-rg-row:not(.g-rg-sp)+.g-rg-sp,.g-rg-sp+.g-rg-row:not(.g-rg-sp){margin-top:6px}
@media (max-width:640px){
  .g-rg-sp{padding:14px}
  .g-rg-acts{justify-content:flex-start}
}
.g-call{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(20,24,26,.55)}
.g-call[hidden]{display:none}
.g-call-box{position:relative;width:100%;max-width:360px;background:#fff;border-radius:16px;padding:28px 24px 22px;text-align:center;box-shadow:0 18px 50px rgba(0,0,0,.25);font-family:'Figtree',sans-serif}
.g-call-k{margin:0 0 6px;font-size:11px;letter-spacing:1.5px;font-weight:600;text-transform:uppercase;color:#4f6b77}
.g-call-t{margin:0 0 6px;font-size:19px;font-weight:600;line-height:1.3;color:#2e2e2e}
.g-call-n{margin:0 0 20px;font-size:24px;font-weight:600;color:#2e2e2e;letter-spacing:.3px}
.g-call-acts{display:flex;gap:10px}
.g-call-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 10px;border-radius:24px;font-size:14px;font-weight:600;letter-spacing:.5px;text-decoration:none;background:#4f6b77;color:#fff;border:1px solid #4f6b77}
.g-call-btn.g-call-alt{background:#fff;color:#4f6b77}
.g-call-btn:hover{color:#fff;background:#3f5761}
.g-call-btn.g-call-alt:hover{color:#4f6b77;background:#eef3f5}
.g-call-btn[hidden]{display:none}
.g-call-copy{margin-top:14px;background:none;border:0;padding:4px 6px;font:600 13px 'Figtree',sans-serif;color:#4f6b77;cursor:pointer;text-decoration:underline}
.g-call-x{position:absolute;top:8px;right:8px;width:36px;height:36px;border:0;background:none;font-size:24px;line-height:1;color:#6b6b6b;cursor:pointer;border-radius:50%}
.g-call-x:hover{background:#f0f3f4}
.g-call :focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
/* FHI patch (client, Oct 15 2026): "FAQs · <Sponsor>" above a category page's FAQs when they are the sponsor's own. */
.faqs-head .eyebrow-light[data-sponsor]{display:block;margin:0 0 6px;font-size:12px;letter-spacing:2px;font-weight:600;text-transform:uppercase;color:#5a7380}
/* FHI patch (client, Oct 15 2026): a category page without a sponsor has no lead form aside. */
.sec-8:has(>.asd-2[hidden]){grid-template-columns:minmax(0,1fr)}
/* FHI patch (client, Oct 15 2026): Find Local Pros category tiles show their square photos square (were cropped to 140px tall). */
.lnk-14 .img-60{height:auto;aspect-ratio:1/1}
/* FHI patch (client, Oct 15 2026): an open Featured Pros spot is empty space; hovering it shows a
   subtle "Advertise here" tile (a link once config.FLP_OPEN_SPOT_URL is set). Hidden where there is
   no hover or the row is one column (phones). */
.g-open{display:flex;min-height:200px;border-radius:14px;text-decoration:none;color:inherit}
.g-open-tile{flex:1;display:flex;align-items:center;justify-content:center;border:1px dashed #c9d1d5;border-radius:14px;background:#f7f9fa;color:#5a7380;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;opacity:0;transition:opacity .2s}
.g-open:hover .g-open-tile,a.g-open:focus-visible .g-open-tile{opacity:1}
a.g-open:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
@media (hover:none),(max-width:640px){.g-open{display:none}}
/* FHI patch (client, Oct 15 2026): photo lightboxes close from a round button at the photo's top-right
   corner (was "CLOSE" under the photo). The figure shrinks to the photo so the button sits on it. */
.g-lb-fig{position:relative;width:fit-content;max-width:100%;margin:0 auto}
.g-lb-fig .img-69{width:auto;max-width:100%;height:auto;max-height:80vh;margin:0 auto}
.g-lb-fig .bx-137{width:min(1100px,86vw)}
.btn-11.g-lb-x{position:absolute;top:-14px;right:-14px;z-index:2;width:36px;height:36px;border-radius:50%;background:#fff;color:var(--brand-color-secondary);box-shadow:0 2px 10px rgba(0,0,0,.4);font-size:16px;letter-spacing:0;line-height:1;display:flex;align-items:center;justify-content:center;padding:0}
.btn-11.g-lb-x:hover{background:#f0f3f4}
.btn-11.g-lb-x:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media (max-width:640px){.btn-11.g-lb-x{top:8px;right:8px}}
/* FHI patch (client, Oct 15 2026): Find Local Pros page tiles 7 across on desktop (8 was too small) (tablets and phones keep 3 / 2, responsive.css). */
@media (min-width:1025px){#find-local-pros .bx-87{grid-template-columns:repeat(7,minmax(0,1fr));gap:18px}#find-local-pros .lnk-14 .bx-88{font-size:13px;padding:9px 10px 11px}}
/* FHI patch (client, Oct 16 2026): Find Local Pros search box with an alphabetical Sort beside it. */
.g-flp-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:36px}
.g-flp-tools .frm-3{flex:1 1 280px;margin-bottom:0}
.g-sort{display:inline-flex;align-items:center;gap:10px;font-family:'Figtree',sans-serif;font-size:13px;color:#5a6a70}
.g-sort-l{font-weight:600;letter-spacing:1.2px;text-transform:uppercase;font-size:12px}
.g-sort-s{appearance:none;-webkit-appearance:none;height:46px;min-width:130px;padding:0 38px 0 14px;border:1px solid #d8dde0;border-radius:4px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%232e2e2e' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 14px center;font-family:'Figtree',sans-serif;font-size:14px;color:var(--brand-color-secondary);cursor:pointer}
.g-sort-s:focus-visible{outline:2px solid var(--brand-color-primary);outline-offset:2px}
/* FHI patch (client, Oct 16 2026): the home hero's pause control is a round icon button at the
   video's bottom left (pause bars; a play triangle when paused). */
.hero-toggle{top:auto;bottom:20px;width:44px;height:44px;min-width:0;padding:0;border-radius:50%;display:grid;place-items:center;font-size:0}
.hero-toggle::before{content:"";width:14px;height:16px;background:linear-gradient(90deg,currentColor 0 5px,transparent 5px 9px,currentColor 9px 14px)}
.hero-toggle.is-paused::before{width:0;height:0;background:none;border-left:14px solid currentColor;border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:4px}
/* FHI patch (client, Oct 16 2026): business logos look consistent: a fixed-height box, and the
   logo fills about 65% of it (75% at first; 10 points smaller on request) (its width or its height, whichever it reaches first). Logo files
   with a blank border are trimmed first (build/enrich/trim_logos.py). */
.bx-125{height:180px;padding:0}
.bx-125 .lnk-20{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.bx-125 .img-66{width:65%;height:65%;object-fit:contain}
/* FHI patch (client, Oct 16 2026): rounded corners everywhere, to match the rounded image tiles.
   14px for large boxes and media (the tiles' radius), 10-12px for boxes inside them, 8px for
   form fields, buttons and small thumbnails. Pills and round buttons keep their own radius. */
.site-main>.hero,.bx-40,.bx-23,.g-issue-frame,.g-card,.g-img,.bx-125,.frm-7,.video>.bx-79,.video>.bx-86,.img-64{border-radius:14px;overflow:hidden}
.bx-72,.bx-114,.faq-item,.g-ad-on,.img-69{border-radius:12px}
.frm-7 input:not([type=checkbox]):not([type=radio]),.frm-7 textarea,.frm-7 select,.ff-submit,.frm-3,.g-flp-tools .g-sort-s,.bx-108,.bx-110,.img-63{border-radius:8px}
.bx-108,.bx-110{overflow:hidden}
/* FHI patch (Oct 16 2026): Local Directory sponsor buttons in the Google Business Profile style:
   outlined pills with Google's grey border, dark gray icon and label (#3c4043, Google's button
   gray, 10:1 on white; client chose it over Google blue and the brand teal, Oct 17),
   order Website, Directions, Call. The Call pill shows the number, and just "Call" on phones. */
.g-rg-acts{gap:8px}
.g-rg-btn{gap:8px;height:36px;padding:0 16px 0 12px;border:1px solid #dadce0;border-radius:18px;background:#fff;color:#3c4043;font-size:14px;font-weight:500;line-height:1}
.g-rg-btn svg{flex:none;width:18px;height:18px}
.g-rg-btn:hover{border-color:#c4c7c5;background:#f8f9fa;color:#202124}
.g-rg-btn:focus-visible{outline:2px solid #3c4043;outline-offset:2px}
.g-rg-calltxt{display:none}
@media (max-width:640px){
  .g-rg-num{display:none}
  .g-rg-calltxt{display:inline}
}
/* FHI patch (Oct 17 2026): "Showing results for ..." when the search corrected a typo. */
.g-spell{margin:-6px 0 18px;font-size:15px;color:#5c5c5c}
.g-spell b{color:#2e2e2e;font-weight:600}
.g-spell a{color:#4f6b77;text-decoration:underline}
/* FHI patch (Oct 19 2026): an open Featured Pros spot is a button that opens the advertise form
   (pros.py _advertise_dialog); the tile still only shows on hover or keyboard focus. */
button.g-open{width:100%;padding:0;border:0;background:none;font:inherit;cursor:pointer;text-align:center}
button.g-open:focus-visible{outline:2px solid var(--brand-color-secondary);outline-offset:2px}
button.g-open:focus-visible .g-open-tile{opacity:1}
.g-open:hover .g-open-tile{background:#eef3f5;border-color:#829ea9}
.g-adv{width:min(680px,calc(100% - 32px));max-height:calc(100% - 32px);padding:0;border:0;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.25);color:#2e2e2e;font-family:'Figtree',sans-serif}
.g-adv::backdrop{background:rgba(20,24,26,.55)}
.g-adv-form{position:relative;padding:28px 28px 24px}
.g-adv-x{position:absolute;top:14px;right:14px;width:36px;height:36px;border:0;border-radius:50%;background:#f1f3f4;color:#3c4043;font-size:16px;cursor:pointer}
.g-adv-x:hover{background:#e3e6e8}
.g-adv-h{margin:0 40px 6px 0;font-size:24px;font-weight:600}
.g-adv-intro{margin:0 0 18px;font-size:14px;line-height:1.5;color:#5c5c5c}
.g-adv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.g-adv-f{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600;color:#3c4043}
.g-adv-wide{grid-column:1/-1}
.g-adv-f input,.g-adv-f select,.g-adv-f textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #d5dbde;border-radius:8px;background:#fff;font:inherit;font-weight:400;font-size:15px;color:#2e2e2e}
.g-adv-f textarea{resize:vertical;min-height:72px}
.g-adv-f input:focus,.g-adv-f select:focus,.g-adv-f textarea:focus{outline:2px solid #829ea9;outline-offset:0;border-color:#829ea9}
.g-adv-f [aria-invalid="true"]{border-color:#c5221f;background:#fdf3f2}
.g-adv-places{display:flex;flex-wrap:wrap;gap:8px 18px;margin:16px 0;padding:12px 14px;border:1px solid #e3e7e9;border-radius:10px}
.g-adv-places legend{padding:0 6px;font-size:13px;font-weight:600;color:#3c4043}
.g-adv-check{display:inline-flex;align-items:center;gap:7px;font-size:14px;cursor:pointer}
.g-adv-check input{width:16px;height:16px;accent-color:#4f6b77}
.g-adv-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.g-adv-msg{margin:14px 0 0;font-size:14px}
.g-adv-msg:empty{display:none}
.g-adv-ok{color:#137333}
.g-adv-bad{color:#c5221f}
.g-adv-acts{display:flex;justify-content:flex-end;margin-top:16px}
.g-adv-send{min-width:140px;height:46px;padding:0 24px;border:0;border-radius:8px;background:#4f6b77;color:#fff;font:inherit;font-size:14px;font-weight:700;letter-spacing:2px;cursor:pointer}
.g-adv-send:hover{background:#3f5965}
.g-adv-send:disabled{opacity:.7;cursor:default}
@media (max-width:640px){
  .g-adv-form{padding:22px 18px 18px}
  .g-adv-grid{grid-template-columns:1fr}
}
/* FHI patch (Oct 19 2026): Podcast page to the client design. Show header (cover art, eyebrow, title,
   intro, platform buttons), "All Episodes" with the search, then one row per episode. */
.g-pod{max-width:1180px;margin:0 auto;padding:56px 24px 80px;font-family:'Figtree',sans-serif;color:#2e2e2e}
.g-pod-show{display:grid;grid-template-columns:308px minmax(0,1fr);gap:52px;align-items:start;padding-bottom:56px;border-bottom:1px solid #e6eaec}
.g-pod-about{min-width:0}
.g-pod-art{aspect-ratio:1;border-radius:14px;background:#7a9faa;display:flex;align-items:center;justify-content:center;box-shadow:0 18px 40px rgba(46,62,70,.18)}
.g-pod-art img{width:80%;height:auto}
.g-pod-eyebrow{margin:6px 0 10px;font-size:15px;font-weight:700;letter-spacing:3px;color:#527985}
.g-pod-h1{margin:0 0 18px;font-size:60px;line-height:1.1;font-weight:500;letter-spacing:-.5px}
.g-pod-intro{margin:0 0 30px;max-width:780px;font-size:18px;line-height:1.75;color:#555}
.g-pod-links{display:flex;flex-wrap:wrap;gap:12px}
.g-pod-link{display:inline-flex;align-items:center;gap:12px;height:56px;padding:0 22px 0 12px;border:1px solid #dfe5e8;border-radius:28px;background:#fff;color:#2e2e2e;font-size:17px;font-weight:600;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.g-pod-link svg{width:32px;height:32px;flex:none}
.g-pod-link:hover{border-color:#b9c6cc;box-shadow:0 4px 14px rgba(0,0,0,.06)}
.g-pod-link:focus-visible{outline:2px solid #4f6b77;outline-offset:2px}
.g-pod .g-presented{margin-top:26px}
.g-pod-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:56px 0 24px}
.g-pod-h2{margin:0;font-size:32px;font-weight:500}
.g-pod-search{flex:0 1 436px;margin:0}
.g-pe-list{display:flex;flex-direction:column}
.g-pe{display:grid;grid-template-columns:512px minmax(0,1fr);gap:36px;align-items:start;padding:22px 0 44px;border-bottom:1px solid #e6eaec}
.g-pe+.g-pe{padding-top:36px}
.g-pe-body{min-width:0}
.g-pe[hidden]{display:none}
.g-pe-thumb{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#7a9faa;cursor:pointer}
.g-pe-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.g-pe-thumb:hover .g-pe-img{transform:scale(1.03)}
.g-pe-thumb:focus-visible{outline:3px solid #4f6b77;outline-offset:3px}
.g-pe-dur{position:absolute;left:16px;bottom:16px;padding:5px 9px;border-radius:6px;background:rgba(20,24,26,.78);color:#fff;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}
.g-pe-play{position:absolute;right:16px;bottom:14px;width:52px;height:52px;border-radius:50%;background:rgba(20,24,26,.85);transition:background .15s}
.g-pe-play::after{content:"";position:absolute;left:21px;top:16px;border-style:solid;border-width:10px 0 10px 15px;border-color:transparent transparent transparent #fff}
.g-pe-thumb:hover .g-pe-play{background:#000}
.g-pe-meta{margin:6px 0 10px;font-size:15px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:#527985}
.g-pe-title{margin:0 0 16px;font-size:28px;line-height:1.3;font-weight:600}
.g-pe-desc{margin:0 0 14px;font-size:17px;line-height:1.8;color:#555}
.g-pe-guest{margin:0 0 20px;font-size:16px;color:#3c4043}
.g-pe-guest b{font-weight:700;color:#2e2e2e}
.g-pe-audio{display:block;width:100%;max-width:667px;height:52px;margin:0 0 14px}
.g-pe-acts{display:flex;flex-wrap:wrap;gap:12px}
.g-pe-watch,.g-pe-btn{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 24px;border-radius:26px;font:inherit;font-size:15px;font-weight:700;letter-spacing:2px;text-decoration:none;cursor:pointer}
.g-pe-watch{border:0;background:#527985;color:#fff}
.g-pe-watch:hover{background:#456a76}
.g-pe-tri{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent #fff}
.g-pe-btn{border:1.5px solid #9fb5be;background:#fff;color:#527985}
.g-pe-btn:hover{border-color:#527985}
.g-pe-watch:focus-visible,.g-pe-btn:focus-visible{outline:2px solid #2e2e2e;outline-offset:2px}
.g-pe-list>[data-native]{margin:36px 0;max-width:512px}
@media (max-width:1024px){
  .g-pe{grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:28px}
  .g-pod-h1{font-size:48px}
}
@media (max-width:760px){
  .g-pod{padding:32px 16px 56px}
  .g-pod-show{grid-template-columns:1fr;gap:28px;padding-bottom:40px}
  .g-pod-art{width:200px}
  .g-pod-h1{font-size:40px}
  .g-pod-intro{font-size:16px}
  .g-pod-link{height:48px;font-size:15px;padding:0 18px 0 10px}
  .g-pod-link svg{width:28px;height:28px}
  .g-pod-head{flex-direction:column;align-items:stretch;margin:40px 0 16px}
  .g-pod-search{flex:none}
  .g-pe{grid-template-columns:1fr;gap:18px;padding:16px 0 32px}
  .g-pe+.g-pe{padding-top:28px}
  .g-pe-title{font-size:22px}
  .g-pe-desc{font-size:16px}
}
/* FHI patch (lightbox business card, client Oct 20 2026; site.js bizFill): who did the work, under the
   photo in the Projects and search lightboxes. The photo leaves room for it; the directory's pills. */
.bx-135:has(.g-lbiz:not([hidden])) .g-lb-fig .img-69{max-height:calc(100vh - 280px)}
.bx-135:has(.g-lbiz) > .btn-10,.bx-135:has(.g-lbiz) > .btn-12{top:var(--lb-mid,50%)}
.bx-136:has(> .g-lbiz){max-height:100vh;overflow-y:auto;scrollbar-width:none}
/* the scrolling stage clips what sticks out of it: room for the close button, which sits 14px above
   and right of the photo (client, Oct 20 2026: it was cut off) */
@media (min-width:641px){.bx-136:has(> .g-lbiz){box-sizing:border-box;padding:20px 20px 0}}
/* on the dark backdrop itself, light text and outline buttons (client, Oct 20 2026: no white box) */
.g-lbiz{display:flex;align-items:center;justify-content:space-between;gap:14px 24px;flex-wrap:wrap;margin:14px 0 0;padding:14px 2px 2px;border-top:1px solid rgba(255,255,255,.18);background:none;color:#fff;font-family:'Figtree',sans-serif}
.g-lbiz[hidden]{display:none}
.g-lbiz-id{display:flex;flex-direction:column;gap:3px;min-width:0}
.g-lbiz-k{font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:#a9c8d1}
.g-lbiz-name{font-size:19px;font-weight:600;line-height:1.25;color:#fff;text-decoration:none}
a.g-lbiz-name:hover{text-decoration:underline;text-underline-offset:3px}
.g-lbiz-rate{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:#fff;text-decoration:none;width:fit-content}
a.g-lbiz-rate:hover .g-lbiz-count{text-decoration:underline}
.g-lbiz-star{color:#fbbc04;font-size:15px}
.g-lbiz-count{color:rgba(255,255,255,.78)}
.g-lbiz-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.g-lbiz-pro{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 18px;border-radius:18px;background:#fff;color:#2f4f59;font-size:13px;font-weight:700;letter-spacing:1.6px;text-decoration:none}
.g-lbiz-pro:hover{background:#e6eef0}
.g-lbiz .g-rg-btn{background:transparent;border-color:rgba(255,255,255,.55);color:#fff}
.g-lbiz .g-rg-btn:hover{background:rgba(255,255,255,.12);border-color:#fff;color:#fff}
.g-lbiz-pro:focus-visible,.g-lbiz-name:focus-visible,.g-lbiz-rate:focus-visible,.g-lbiz .g-rg-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media (max-width:640px){
  .bx-135:has(.g-lbiz:not([hidden])) .g-lb-fig .img-69{max-height:calc(100vh - 330px)}
  .g-lbiz{flex-direction:column;align-items:stretch;gap:12px;padding:12px 0 0}
  .g-lbiz-name{font-size:17px}
  .g-lbiz-acts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .g-lbiz-pro{grid-column:1/-1;height:44px}
  .g-lbiz .g-rg-btn{justify-content:center;height:44px;padding:0 8px;gap:6px;font-size:13px}
}
/* FHI patch (client, Oct 20 2026): the Advertise dialog scrolls inside its rounded box with a thin
   rounded scrollbar (the browser's default one ran along the dialog's edge). */
.g-adv[open]{display:flex;flex-direction:column;overflow:hidden}
.g-adv-form{flex:1 1 auto;min-height:0;max-height:calc(100vh - 32px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c3ccd0 transparent}
.g-adv-form::-webkit-scrollbar{width:12px}
.g-adv-form::-webkit-scrollbar-track{background:transparent;margin:16px 0}
.g-adv-form::-webkit-scrollbar-thumb{background:#c3ccd0;border:3px solid transparent;border-radius:12px;background-clip:padding-box}
.g-adv-form::-webkit-scrollbar-thumb:hover{background-color:#a9b5ba}
