@font-face{font-family:'Work Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/worksans-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/worksans-600.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/worksans-600.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/worksans-600.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/archivo-700.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Archivo';font-style:normal;font-weight:900;font-display:swap;src:url(/assets/fonts/archivo-900.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

:root{color-scheme:light dark;--bg:#F7F8FA;--panel:#FFFFFF;--panel2:#EEF1F4;--ink:#16202A;--muted:#556270;--line:#DCE1E6;--brand:#12283A;--link:#1D5FB4;--focus:#1D5FB4;--teal:#12283A;--amber:#1D5FB4;--amberink:#FFFFFF;--onband:#F7F8FA;--skytint:#A9CBF2;--shadow:0 18px 46px rgba(18,40,58,.10)}
@media(prefers-color-scheme:dark){:root{--bg:#141D23;--panel:#1B2730;--panel2:#233039;--ink:#F6F4EE;--muted:#A9B8C0;--line:#34434D;--brand:#F6F4EE;--link:#7DB0F5;--focus:#7DB0F5;--teal:#1C3A5C;--amber:#7DB0F5;--amberink:#0B1520;--onband:#F6F4EE;--skytint:#A9CBF2;--shadow:0 20px 55px rgba(0,0,0,.4)}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:"Work Sans",sans-serif;line-height:1.5}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 50%,transparent);outline-offset:3px}.wrap{width:min(1200px,calc(100% - 40px));margin:auto}.site-nav{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-inner{height:66px;display:flex;align-items:center;justify-content:flex-end;gap:8px}.nav-link{border:0;background:transparent;color:var(--muted);padding:10px 14px;text-decoration:none;border-radius:4px;font-weight:600;cursor:pointer}.nav-link:hover,.nav-link.active{color:var(--link);background:color-mix(in srgb,var(--link) 10%,transparent)}.page{display:none}.page.active{display:block}.eyebrow{display:inline-block;background:var(--amber);color:var(--amberink);border-radius:2px;padding:6px 11px;font-size:.75rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.hero{min-height:auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(36px,6vw,90px);align-items:center;padding-block:clamp(36px,5vw,72px)}h1,h2,h3{font-family:"Archivo",sans-serif;font-weight:700}h1{text-transform:uppercase;letter-spacing:-.02em;font-weight:900}.hero h1{font-size:clamp(2.7rem,5.4vw,5rem);line-height:.96;letter-spacing:-.045em;color:var(--brand);margin:22px 0 26px}.lead{font-size:clamp(1.08rem,2vw,1.32rem);max-width:690px;color:var(--muted);margin:0}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border:1px solid var(--amber);background:var(--amber);color:var(--amberink);text-decoration:none;font-weight:700;border-radius:3px;cursor:pointer}.button.secondary{background:transparent;color:var(--brand);border-color:var(--brand)}.portrait-wrap{position:relative}.portrait-wrap:before{content:"";position:absolute;inset:-18px 18px 18px -18px;border:1px solid var(--amber)}.portrait{position:relative;display:block;width:100%;aspect-ratio:4/4.65;object-fit:cover;object-position:center top}.identity{margin-top:18px;color:var(--muted);font-size:.92rem}.home-band{background:var(--teal);color:var(--onband);padding:clamp(54px,7vw,84px) 0}.home-band h2{color:var(--skytint);font-size:clamp(2.1rem,4vw,4rem);line-height:1.02;margin:0}.home-band p{font-size:1.05rem;max-width:650px;color:var(--onband)}.band-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 22px}.areas a{border-bottom:1px solid var(--skytint);padding:10px 0;text-decoration:none;white-space:nowrap}@media(max-width:640px){.areas{grid-template-columns:repeat(2,minmax(0,1fr))}}.areas a:hover{color:var(--skytint);border-bottom-width:2px}.areas a:hover{color:var(--skytint);border-bottom-width:2px}.section-shell{padding:clamp(48px,6vw,80px) 0}.page-intro{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end;padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:26px}.page-intro h1,.page-intro h2{font-size:clamp(2.8rem,5vw,5.4rem);line-height:.96;color:var(--brand);margin:14px 0}.page-intro p{margin:0;color:var(--muted);max-width:720px}.catalog-stamp{text-align:right;color:var(--muted);font-size:.88rem}.catalog-stamp strong{display:block;color:var(--brand);font-family:"Archivo",sans-serif;font-weight:900;font-size:1.65rem}.app-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start}.filter-shell{background:var(--panel);border-top:3px solid var(--amber);border-left:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:sticky;top:86px}.filter-head{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid var(--line)}.filter-head h2{font-size:1.5rem;color:var(--brand);margin:0}.clear{border:0;background:transparent;color:var(--link);text-decoration:underline;cursor:pointer}.filter-body{padding:4px 18px 18px}.field{padding:15px 0;border-bottom:1px solid var(--line)}.field:last-child{border-bottom:0}.field label,.field-label{display:block;font-size:.79rem;font-weight:700;margin-bottom:7px}.control{width:100%;min-height:44px;border:1px solid var(--line);border-radius:2px;background:var(--bg);color:var(--ink);padding:9px 11px}.range-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.choice-grid.three{grid-template-columns:repeat(3,1fr)}.seg input{position:absolute;opacity:0;pointer-events:none}.seg label{margin:0;text-align:center;padding:9px 4px;background:var(--bg);border:1px solid var(--line);cursor:pointer}.seg input:checked+label{background:var(--amber);border-color:var(--amber);color:var(--amberink)}.check{display:grid!important;grid-template-columns:auto 1fr auto;gap:9px;align-items:start;margin:0!important;padding:7px 2px;cursor:pointer;font-size:.86rem!important;font-weight:500!important}.check input{accent-color:var(--amber);margin-top:3px}.builder-list,.community-list{max-height:210px;overflow:auto;padding-right:4px}.builder-count,.community-count{color:var(--muted);font-size:.75rem}.community-city{display:block;color:var(--muted);font-size:.75rem}.community-help,.community-empty{font-size:.75rem;color:var(--muted);margin:6px 0 0}.mobile-filter-toggle{display:none}.results-head{display:flex;gap:24px;justify-content:space-between;align-items:end;margin-bottom:18px}.result-summary h2{font-size:2.15rem;color:var(--brand);line-height:1;margin:0 0 6px}.result-summary p{margin:0;color:var(--muted)}.sort-wrap{min-width:210px}.sort-wrap label{display:block;font-size:.75rem;font-weight:700;margin-bottom:5px}.notice{background:var(--amber);color:var(--amberink);padding:16px 18px;margin-bottom:20px;border-radius:2px}.notice strong{font-family:"Archivo",sans-serif;font-weight:700;font-size:1.12rem}.notice p{margin:4px 0 0;font-size:.88rem}.active-chips{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px}.chip{border:1px solid var(--line);padding:5px 9px;color:var(--muted);font-size:.78rem}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.card{display:block;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--amber);padding:19px;color:inherit;text-decoration:none;min-width:0}.card--link:hover{border-color:var(--amber);box-shadow:var(--shadow)}.card-top{display:flex;gap:15px;justify-content:space-between;align-items:start;flex-wrap:wrap}.card h3{font-size:1.52rem;line-height:1.05;color:var(--brand);margin:0 0 4px;overflow-wrap:break-word}.builder{color:var(--muted);font-size:.84rem}.price{color:var(--brand);font-weight:700;text-align:right;font-size:.95rem;white-space:nowrap}.price small{display:block;color:var(--muted);font-size:.75rem;font-weight:500}.specs{display:flex;flex-wrap:wrap;gap:0;margin:15px 0 12px;font-size:.78rem;color:var(--muted)}.specs span:not(:last-child):after{content:"·";margin:0 6px}.desc{font-size:.88rem;margin:0;color:var(--muted)}.confirmed{font-size:.75rem;color:var(--brand);font-weight:700;margin:10px 0 0}.card-foot{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-top:16px}.view-link{color:var(--link);text-decoration:underline;font-weight:700;font-size:.84rem}.approx{color:var(--muted);font-size:.75rem}.load-wrap{text-align:center;margin:24px}.footer-note{color:var(--muted);font-size:.76rem}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(34px,7vw,90px);align-items:start}.contact-copy h1,.contact-copy h2{font-size:clamp(3rem,6vw,6rem);line-height:.96;color:var(--brand);margin:18px 0}.contact-copy>p{font-size:1.12rem;color:var(--muted);max-width:620px}.contact-card{background:var(--teal);color:var(--onband);padding:clamp(26px,4vw,44px);border-top:4px solid var(--skytint)}.contact-card h2{font-size:2rem;color:var(--skytint);margin:0 0 18px}.contact-row{display:block;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.22);text-decoration:none}.contact-row:last-child{border-bottom:0}.contact-row small{display:block;color:var(--onband);margin-bottom:3px}.contact-row strong{font-size:1.05rem;text-decoration:underline;text-decoration-color:var(--skytint);text-underline-offset:4px}.license{margin-top:30px;color:var(--muted);font-size:.82rem}.empty{grid-column:1/-1;text-align:center;padding:55px 20px;background:var(--panel);border:1px solid var(--line)}.empty h3{font-size:2rem;color:var(--brand);margin:0 0 8px}.load{border:1px solid var(--link);background:transparent;color:var(--link);padding:10px 16px;font-weight:700;cursor:pointer}.nav-social{display:flex;gap:4px;margin-left:8px;padding-left:12px;border-left:1px solid var(--line)}.social-link{display:inline-flex;align-items:center;gap:7px;padding:9px 10px;color:var(--link);text-decoration:none;font-size:.78rem;font-weight:700;border-radius:3px}.social-link:hover{background:color-mix(in srgb,var(--link) 10%,transparent)}.social-link svg{width:17px;height:17px;fill:currentColor}.media-section{padding:clamp(54px,7vw,90px) 0}.media-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;margin-bottom:28px}.media-heading h2{font-size:clamp(2.4rem,5vw,4.5rem);line-height:1;margin:12px 0 0;color:var(--brand)}.media-heading p{max-width:520px;color:var(--muted);margin:0}.featured-video{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);background:var(--panel);border-top:3px solid var(--amber)}.video-frame{position:relative;aspect-ratio:16/9;background:#0b0c0b}.video-frame iframe,.embed-card iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.featured-copy{padding:clamp(24px,4vw,44px);align-self:center}.featured-copy h3{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.08;color:var(--brand);margin:10px 0 14px}.featured-copy p{color:var(--muted);margin:0 0 20px}.source-note{font-size:.75rem;color:var(--muted)}.instagram-band{margin-top:54px}.instagram-band-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:20px}.instagram-band h3{font-size:2rem;color:var(--brand);margin:0}.instagram-band p{margin:5px 0 0;color:var(--muted)}.instagram-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.embed-card{position:relative;height:560px;background:var(--panel2);border:1px solid var(--line);overflow:hidden}.embed-card>a{position:absolute;left:0;right:0;bottom:0;z-index:0;padding:14px;background:var(--panel);color:var(--link);font-weight:700;text-align:center}.embed-card iframe{z-index:1}.videos-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.video-card{background:var(--panel);border-top:3px solid var(--amber)}.video-card-copy{padding:18px}.video-card h3{font-size:1.45rem;line-height:1.15;color:var(--brand);margin:0 0 9px}.video-meta{font-size:.78rem;color:var(--muted);margin:0 0 12px}.video-card a,.tour-copy a{color:var(--link);font-weight:700}.tour-spotlight{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--amber);margin:0 0 20px}.tour-copy{padding:20px;align-self:center}.tour-copy h3{font-size:1.6rem;line-height:1.08;color:var(--brand);margin:4px 0 9px}.tour-copy p{font-size:.84rem;color:var(--muted);margin:0 0 12px}.site-footer{border-top:1px solid var(--line);padding:28px 0;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-social{display:flex;gap:8px;flex-wrap:wrap}.footer-copy{font-size:.78rem}.contact-socials{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.contact-socials .button{border-color:var(--skytint);color:var(--skytint);background:transparent}.contact-socials .button:hover{background:var(--skytint);color:var(--teal)}
.tool-layout{display:grid;grid-template-columns:minmax(270px,.75fr) minmax(0,1.25fr);gap:26px;align-items:start}.tool-panel{background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--amber);padding:clamp(20px,3vw,32px)}.tool-panel h2,.tool-panel h3{color:var(--brand);margin:0 0 12px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tool-field{margin-bottom:20px}.tool-field label,.tool-label{display:flex;justify-content:space-between;gap:12px;font-weight:700;font-size:.86rem;margin-bottom:8px}.tool-field small,.tool-help{display:block;color:var(--muted);font-size:.76rem;margin-top:6px}.tool-range{width:100%;accent-color:var(--amber)}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0}.toggle{position:relative;width:54px;height:30px;flex:0 0 auto;border:1px solid var(--line);border-radius:18px;background:var(--panel2);cursor:pointer;padding:0}.toggle:after{content:"";position:absolute;width:22px;height:22px;left:3px;top:3px;background:var(--muted);border-radius:50%;transition:transform .18s}.toggle[aria-pressed="true"]{background:var(--amber)}.toggle[aria-pressed="true"]:after{transform:translateX(24px);background:var(--amberink)}.total-box{background:var(--teal);color:var(--onband);padding:clamp(24px,4vw,38px);margin-bottom:18px}.total-box small{color:var(--onband)}.total-number{font-family:"Archivo",sans-serif;font-weight:900;color:var(--skytint);font-size:clamp(3rem,6vw,5rem);line-height:1;margin:8px 0}.breakdown{margin:0}.breakdown-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.2)}.breakdown-row:last-child{border:0}.gap-copy{font-size:1.05rem;margin:18px 0}.warning-box{border:2px solid var(--amber);padding:14px 16px;margin-bottom:20px;color:var(--ink);background:color-mix(in srgb,var(--amber) 10%,var(--panel))}.warning-box strong{color:var(--ink)}.buydown-table{width:100%;border-collapse:collapse;margin:18px 0}.buydown-table th,.buydown-table td{text-align:left;padding:11px 8px;border-bottom:1px solid var(--line)}.buydown-table th:last-child,.buydown-table td:last-child{text-align:right}.lead-form{margin-top:28px;padding-top:26px;border-top:1px solid var(--line)}.lead-form h3{font-size:clamp(1.55rem,3vw,2.2rem);line-height:1.12}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-field label{display:block;font-weight:700;font-size:.78rem;margin-bottom:5px}.form-field.full{grid-column:1/-1}.form-status{min-height:24px;color:var(--brand);font-weight:700;margin:12px 0 0}.quiz-shell{max-width:880px;margin:auto}.quiz-progress{display:flex;justify-content:center;gap:9px;margin:0 0 26px}.progress-dot{width:10px;height:10px;border-radius:50%;background:var(--line)}.progress-dot.active{background:var(--amber)}.quiz-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.back-button{border:0;background:transparent;color:var(--link);font-weight:700;cursor:pointer;padding:8px 0}.quiz-question h2{font-size:clamp(2rem,5vw,3.6rem);line-height:1.05}.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0}.quiz-option{min-height:62px;text-align:left;padding:13px 15px;border:1px solid var(--line);border-radius:2px;background:var(--bg);color:var(--ink);cursor:pointer;font-weight:600}.quiz-option:hover,.quiz-option.selected{border-color:var(--amber);background:color-mix(in srgb,var(--amber) 12%,var(--panel))}.quiz-next{display:flex;justify-content:flex-end}.quiz-results{margin-top:28px}.match-card{background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--amber);padding:20px;margin-bottom:12px}.match-card h3{font-size:1.55rem;margin:0 0 4px}.match-meta,.match-reason{color:var(--muted);font-size:.86rem}.match-meta{margin:0 0 12px}.match-reason{margin:12px 0}.match-link{color:var(--link);font-weight:700}.tradeoff{padding:16px;background:var(--panel2);margin:15px 0}.quiz-note{color:var(--muted);font-size:.82rem}.hp-field{position:absolute!important;left:-9999px!important}.rate-source{font-size:.75rem;color:var(--muted)}
@media(max-width:1020px){.nav-social{display:none}.nav-link{padding-inline:10px}}
@media(max-width:820px){.wrap{width:min(100% - 28px,1200px)}.hero{grid-template-columns:1fr;min-height:auto;padding-block:55px}.portrait-wrap{width:min(430px,90%);margin:20px auto 0}.band-grid,.contact-grid,.page-intro,.app-layout{grid-template-columns:1fr}.page-intro{align-items:start}.catalog-stamp{text-align:left}.mobile-filter-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid var(--line);border-top:3px solid var(--amber);background:var(--panel);color:var(--ink);font-weight:700}.filter-shell{display:none;position:static}.filters.open .filter-shell{display:block}.cards{grid-template-columns:1fr}.results-head{align-items:start;flex-direction:column}.sort-wrap{width:100%}.nav-inner{justify-content:center}.nav-link{padding-inline:12px}.home-band{padding-block:50px}.band-grid{gap:24px}.media-heading,.featured-video,.tour-spotlight{grid-template-columns:1fr}.instagram-grid{grid-template-columns:1fr}.embed-card{height:680px}.videos-grid{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}.nav-social .social-label{display:none}.nav-social{margin-left:2px;padding-left:5px}}
@media(max-width:620px){.nav-inner{height:auto;display:grid;grid-template-columns:repeat(3,1fr);padding:6px 0}.nav-link{text-align:center}.tool-layout,.tool-grid,.form-grid,.quiz-options{grid-template-columns:1fr}.form-field.full{grid-column:auto}.quiz-next .button{width:100%}}
@media(max-width:460px){.hero h1{font-size:3rem}.actions{flex-direction:column}.button{width:100%}.page-intro h1{font-size:2.75rem}.card-top{display:block}.price{text-align:left;margin-top:10px}.contact-card{padding:24px 19px}.choice-grid{grid-template-columns:repeat(2,1fr)}.nav-inner{gap:0}.nav-link{padding-inline:8px;font-size:.78rem}.social-link{padding:8px 5px}.instagram-band-head{align-items:flex-start;flex-direction:column}.embed-card{height:590px}.contact-socials{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ===== Added 2026-09-21: wordmark, YouTube link cards, Texas notices, consent, policy pages ===== */
.brand{margin-right:auto;font-family:"Archivo",Georgia,sans-serif;font-weight:900;text-transform:uppercase;font-size:1.15rem;color:var(--brand);text-decoration:none;letter-spacing:-.01em;padding:8px 6px;white-space:nowrap}
@media(max-width:1020px){.site-nav:not(.site-nav-simple) .brand{display:none}}
.portrait-wrap picture{display:block}

/* YouTube link cards (videos open on YouTube; nothing is embedded) */
a.video-frame{display:block;color:inherit;text-decoration:none;overflow:hidden}
.video-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
a.video-frame:hover img,.yt-fill:hover img{transform:scale(1.03)}
.yt-fill{position:absolute;inset:0;display:block;overflow:hidden}
.yt-play{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:10px;background:rgba(14,42,37,.88);color:var(--onband);border-radius:999px;padding:7px 15px 7px 9px;font-weight:700;font-size:.9rem;line-height:1.2}
.yt-play::before{content:"\25B6\FE0E";display:inline-grid;place-items:center;width:30px;height:21px;border-radius:6px;background:#e62117;color:#fff;font-size:.75rem}
.yt-channel{background:radial-gradient(circle at 30% 20%,#1b332c,#0A1512 70%)}
.yt-channel-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;color:var(--onband);padding:20px}
.yt-channel-inner strong{font-family:"Archivo",sans-serif;font-weight:900;font-size:clamp(1.3rem,2.4vw,1.9rem);color:var(--skytint)}
.yt-channel-inner small{font-size:.95rem;color:var(--onband)}
.yt-play.big{position:static;width:78px;height:54px;border-radius:15px;padding:0;background:#e62117;justify-content:center;margin-bottom:8px}
.yt-play.big::before{background:none;width:auto;height:auto;font-size:1.5rem}
.video-card-copy .yt-link,.tour-copy .yt-link{display:inline-block;margin:0 18px 8px 0}
.featured-copy .actions{margin-top:0}

/* Texas notices + footer */
.notices{border-top:1px solid var(--line);background:var(--panel2);padding:26px 0}
.notices-title{margin:0 0 12px;font-family:"Work Sans",sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.notice-links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 36px}
.notice-links a{font-size:1.05rem;font-weight:600;color:var(--ink);text-decoration:underline;text-decoration-color:var(--amber);text-underline-offset:4px;line-height:1.35}
.site-footer .footer-inner{align-items:flex-start}
.footer-name,.footer-broker{margin:0;font-size:.95rem;color:var(--ink)}
.footer-broker{margin-top:2px;font-weight:700}
.footer-eho{display:flex;align-items:center;gap:8px;margin:12px 0 0;font-size:.9rem;color:var(--ink)}
.footer-links{display:flex;flex-wrap:wrap;gap:4px 20px;justify-content:flex-end}
.footer-links a{font-size:.95rem;font-weight:700;color:var(--link);text-decoration:none;padding:8px 4px}
.footer-links a:hover{text-decoration:underline}
.footer-fine{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}
.footer-fine p{margin:0 0 6px;max-width:80ch}
@media(max-width:820px){.footer-links{justify-content:flex-start}}

/* Forms: consent + disclaimers */
.consent-note{margin:16px 0 10px;max-width:62ch;font-size:.85rem;color:var(--muted)}
.consent-note a{color:var(--ink);text-underline-offset:3px}
.consent-check{display:flex;align-items:flex-start;gap:10px;margin:0 0 16px;max-width:62ch;font-size:.85rem;color:var(--muted);cursor:pointer}
.consent-check input{flex:none;width:20px;height:20px;margin-top:2px;accent-color:var(--amber)}
.rate-source.legal-note{margin-top:8px;font-size:.8rem}

/* Policy / 404 pages */
.site-nav-simple .nav-inner{justify-content:space-between}
.doc{max-width:780px;margin:0 auto;padding:clamp(36px,6vw,84px) 0}
.doc h1{font-size:clamp(2.2rem,4.6vw,3.6rem);line-height:1.02;color:var(--brand);margin:14px 0 10px}
.doc h2{font-family:"Archivo",Georgia,sans-serif;font-weight:700;font-size:1.5rem;color:var(--brand);margin:34px 0 10px}
.doc p,.doc li{color:var(--ink);max-width:70ch}
.doc ul{padding-left:1.2rem}
.doc .updated{color:var(--muted);margin:0 0 26px}
.doc a{color:var(--ink);text-underline-offset:3px}.doc a.button{color:var(--amberink);text-decoration:none}.doc a.button.secondary{color:var(--brand)}
.doc h3{font-family:"Archivo",Georgia,sans-serif;font-weight:700;font-size:1.18rem;color:var(--ink);margin:22px 0 8px}
.doc .legal-note{font-size:.82rem;color:var(--muted);border-left:2px solid var(--line);padding-left:12px;margin:22px 0}
.doc .cta-box{background:var(--panel2);border-top:3px solid var(--amber);padding:24px;margin:36px 0 0}
.doc .cta-box h2{margin-top:0}
.doc .cta-box .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.blog-card{border-bottom:1px solid var(--line);padding:22px 0}
.blog-card:first-of-type{padding-top:6px}
.blog-card h2{font-family:"Archivo",Georgia,sans-serif;font-weight:700;font-size:1.5rem;margin:0 0 8px}
.blog-card h2 a{color:var(--brand);text-decoration:none}
.blog-card h2 a:hover{text-decoration:underline}
.blog-card p{margin:0;color:var(--muted)}

.portrait{height:auto}

/* Sheet-driven blog feed (assets/blog.js) — reuses the site's card language: panel surface,
   hairline border, amber top accent, --brand headings. */
.blog-feed-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
@media(max-width:820px){.blog-feed-grid{grid-template-columns:1fr}}
.blog-feed-card{display:block;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--amber);text-decoration:none;color:inherit;overflow:hidden;transition:transform .15s ease,border-color .15s ease}
.blog-feed-card:hover{border-color:var(--amber);transform:translateY(-2px)}
.blog-feed-card:hover .blog-feed-card-copy h2{text-decoration:underline}
.blog-read-more{display:inline-block;margin-top:8px;font-weight:700;font-size:.92rem;color:var(--amber)}
.blog-feed-thumb{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--panel2)}
.blog-feed-card-copy{padding:18px}
.blog-feed-card-copy h2{font-size:1.35rem;line-height:1.15;color:var(--brand);margin:0 0 8px}
.blog-feed-card-copy p{color:var(--muted);margin:0 0 10px;font-size:.92rem}
.blog-post-hero{display:block;width:100%;max-height:420px;object-fit:cover;margin:18px 0;border:1px solid var(--line)}
#blog .page-intro[hidden]{display:none}
.blog-post-body{max-width:70ch;color:var(--ink);margin:20px 0}
.blog-post-body p,.blog-post-body ul,.blog-post-body ol,.blog-post-body blockquote{margin:0 0 16px;line-height:1.6}
.blog-post-body h2{font-family:"Archivo",Georgia,sans-serif;font-weight:700;font-size:1.5rem;color:var(--brand);margin:30px 0 10px}
.blog-post-body h3,.blog-post-body h4{color:var(--brand);margin:22px 0 8px}
.blog-post-body a{color:var(--link)}
.blog-post-body img{max-width:100%;height:auto;display:block;margin:16px 0}
.blog-post-body blockquote{border-left:2px solid var(--amber);padding-left:14px;color:var(--muted)}
.blog-post-body table{width:100%;border-collapse:collapse;margin:0 0 16px;font-size:.92rem;display:block;overflow-x:auto}
.blog-post-body th,.blog-post-body td{text-align:left;vertical-align:top;padding:9px 8px;border-bottom:1px solid var(--line);white-space:normal;min-width:6.5rem}
.blog-post-body th{color:var(--brand)}
.blog-state{color:var(--muted)}

/* Confirmation text used to go dark-on-dark in dark mode; --brand now flips (teal on
   light, bone on dark) so it stays readable in both modes without a manual override. */
.site-nav-simple .nav-link{white-space:nowrap}

/* ===== Review fixes: touch targets, skip link ===== */
/* The old light-mode-only button/link contrast overrides are gone: --amber/--amberink
   (buttons, chips) and --skytint (band accents) are fixed, non-flipping tokens chosen to
   clear AA/AAA in both color schemes, so no per-mode patch is needed anymore. */
.skip-link{position:absolute;left:12px;top:-80px;z-index:100;padding:12px 18px;border:2px solid var(--brand);border-radius:4px;background:var(--panel);color:var(--ink);font-weight:700;text-decoration:none}
.skip-link:focus{top:12px}
main:focus{outline:none}
.video-card-copy a,.tour-copy .yt-link,.catalog-stamp a,.footer-links a,.notice-links a{display:inline-flex;align-items:center;min-height:44px}
input[type="range"]{min-height:44px}
.consent-check input{width:24px;height:24px}
.path-section{padding:clamp(54px,7vw,90px) 0}
.path-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:28px}
.path-card{background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--amber);padding:22px;display:flex;flex-direction:column;gap:10px}
.path-card .eyebrow{align-self:flex-start}
.path-card h3{margin:0;font-size:1.3rem;text-transform:uppercase;letter-spacing:.01em}
.path-card p{margin:0 0 6px;color:var(--muted);font-size:.92rem}
.path-card .button{margin-top:auto;align-self:flex-start}
.footer-areas{font-size:.85rem;margin:0 0 12px}
.testimonials{padding:clamp(40px,5vw,64px) 0}
.testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}
@media(max-width:1024px){.path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.path-grid,.testimonial-grid{grid-template-columns:1fr}}

.incentive-list{margin-top:6px}
.incentive-row{display:flex;gap:14px;align-items:flex-start;padding:14px 0}
.incentive-row+.incentive-row{border-top:1px solid var(--line)}
.incentive-value{flex:0 0 auto;background:var(--amber);color:var(--amberink);font-weight:700;font-size:.82rem;padding:6px 10px;border-radius:2px;overflow-wrap:anywhere}
@media(min-width:641px){.incentive-value{flex:0 1 auto;max-width:38%}}
.incentive-body{flex:1;min-width:0}
.incentive-body strong{color:var(--brand);font-size:1.02rem}
.incentive-body p{margin:6px 0 0;font-size:.86rem;color:var(--muted)}
.incentive-meta{font-size:.76rem!important}
.incentive-note{font-size:.88rem;color:var(--muted);margin:12px 0 0}
#incentiveCards .chip{flex:0 0 auto;align-self:flex-start}
.library-h2{font-size:1.9rem;color:var(--brand);margin:36px 0 16px}.library-h2:first-of-type{margin-top:6px}
.form-field.wide{grid-column:1/-1}.contact-photo{width:100%;height:auto;display:block;border-radius:3px;margin-bottom:22px}.next-steps{margin:26px 0 30px;padding:20px;background:var(--panel);border-top:3px solid var(--amber)}.next-steps h2{font-size:1.25rem;color:var(--brand);margin:0 0 10px}.next-steps ol{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--muted)}.next-steps li strong{color:var(--ink)}
@media(max-width:1100px){.nav-inner{flex-wrap:wrap;height:auto;padding-block:10px;row-gap:4px}.site-nav .brand{margin-right:auto}}
.path-more{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 26px;margin-top:24px}.path-more-label{color:var(--muted);font-size:.85rem;font-weight:700}.path-more a{font-weight:700;color:var(--link);font-size:.95rem}
.episode-card{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--amber);padding:18px;margin:18px 0 8px}.episode-player iframe{border:0;border-radius:12px;display:block}.episode-meta{color:var(--muted);font-size:.8rem;margin:0 0 6px}.episode-copy h3{margin:0 0 8px;font-size:1.3rem;color:var(--brand)}.episode-copy p{margin:0 0 10px;color:var(--muted)}
.video-facade{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--onband);font-weight:700;text-decoration:none}.video-facade .facade-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.video-facade:has(.facade-thumb):before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6),rgba(0,0,0,.12))}.video-facade .yt-play,.video-facade>span:not(.yt-play){position:relative}.video-facade>span:not(.yt-play){text-shadow:0 1px 8px rgba(0,0,0,.7)}

/* Incentives mobile fix (2026-10-04): stack incentive rows on phones — badge
   + type chip share the top line, headline + details take the full line below
   instead of squeezing into a thin column. */
@media(max-width:640px){
  .incentive-row{flex-wrap:wrap;row-gap:10px}
  .incentive-value{order:1;max-width:100%}
  #incentiveCards .chip{order:2;margin-left:auto;align-self:center}
  .incentive-body{order:3;flex:1 1 100%}
  .card-foot{flex-wrap:wrap}
}

/* Nav overflow fix (2026-10-04): between 1100px and ~1500px wide the 11 links no
   longer fit on one line and spilled off the left edge, hiding the wordmark and
   Home. Let the row wrap instead, and tighten link padding on mid-size screens. */
@media(min-width:1101px){
  .site-nav:not(.site-nav-simple) .nav-inner{flex-wrap:wrap;height:auto;min-height:66px;padding-block:6px;row-gap:2px}
}
@media(min-width:1101px) and (max-width:1500px){
  .site-nav:not(.site-nav-simple) .nav-link{padding-inline:10px}
}
/* Mobile overflow fix (2026-10-05): the home hero glow pokes 40px past the right edge, and the
   contact headline word "manageable." at 3rem is wider than a 375px column. Clip the sideways
   spill (clip, not hidden, so nothing becomes a scroll container) and shrink the contact headline. */
main{overflow-x:clip}
.contact-copy{min-width:0}
@media(max-width:480px){.contact-copy h1,.contact-copy h2{font-size:clamp(2.2rem,10vw,3rem);overflow-wrap:break-word}}

/* ---- v68: hide-on-scroll nav + dropdown menus ---- */
.site-nav{transition:transform .28s ease}
.site-nav.nav-hidden{transform:translateY(-102%)}
.nav-tab{position:fixed;top:0;left:50%;transform:translate(-50%,-130%);z-index:60;border:1px solid var(--line);border-top:0;background:var(--bg);color:var(--brand);border-radius:0 0 12px 12px;padding:9px 26px 11px;cursor:pointer;box-shadow:var(--shadow);transition:transform .28s ease}
.nav-tab.show{transform:translate(-50%,0)}
.nav-tab svg{width:16px;height:16px;display:block}
.nav-item{position:relative}
.nav-toggle{display:inline-flex;align-items:center;gap:6px}
.nav-toggle svg{width:11px;height:11px;transition:transform .18s ease}
.nav-item.open .nav-toggle svg{transform:rotate(180deg)}
.nav-item.active>.nav-toggle{color:var(--link);background:color-mix(in srgb,var(--link) 10%,transparent)}
.nav-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:240px;background:var(--panel,var(--bg));border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:6px;display:none;z-index:70}
.nav-menu.align-right{left:auto;right:0}
.nav-item.open .nav-menu{display:block}
.nav-menu .nav-link{display:block;white-space:nowrap}
@media (hover:hover) and (pointer:fine){.nav-item:hover .nav-menu{display:block}}
@media (prefers-reduced-motion:reduce){.site-nav,.nav-tab,.nav-toggle svg{transition:none}}
/* ---- v68: neighborhood quick-filter CTAs ---- */
.nh-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.plan-cta{margin:20px 0 0}

/* ---- v74: mobile nav alignment + tappable filter button ---- */
/* Nav: on phones the 5 links wrapped into an unbalanced 3+2 grid. Center them
   as a wrapping flex row instead, so each row sits balanced on its own. */
@media(max-width:620px){
  .nav-inner{height:auto;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 6px;padding:8px 0}
}
/* Filter toggle: it read as a static bar. Give it real button affordances —
   a filter icon, a count badge, and a chevron that flips when the panel opens. */
@media(max-width:820px){
  .mobile-filter-toggle{border:1px solid var(--amber);border-radius:12px;box-shadow:var(--shadow);cursor:pointer}
  .mobile-filter-toggle:active{transform:translateY(1px)}
  .mobile-filter-toggle .toggle-left{display:inline-flex;align-items:center;gap:9px}
  .mobile-filter-toggle .toggle-left svg{width:17px;height:17px}
  .mobile-filter-toggle .toggle-right{display:inline-flex;align-items:center;gap:9px}
  .mobile-filter-toggle .chev{width:12px;height:12px;color:var(--muted);transition:transform .18s ease}
  .filters.open .mobile-filter-toggle .chev{transform:rotate(180deg)}
  #filterCount{font-size:.8rem;font-weight:700;color:var(--brand);background:color-mix(in srgb,var(--amber) 22%,transparent);border:1px solid var(--amber);border-radius:999px;padding:3px 10px;white-space:nowrap}
}
/* Text inside colored boxes on .doc pages keeps the box's light text color (was forced to --ink). */.doc .notice p,.doc .notice li,.doc .notice a,.doc .total-box p,.doc .total-box li,.doc .total-box a{color:inherit}
/* Phone nav: 3 per row, second row centered, every label centered in its slot. */@media(max-width:620px){.site-nav:not(.site-nav-simple) .nav-inner{display:flex;flex-wrap:wrap;justify-content:center;column-gap:0}.site-nav:not(.site-nav-simple) .nav-inner>.nav-link,.site-nav:not(.site-nav-simple) .nav-inner>.nav-item{flex:0 0 33.333%;box-sizing:border-box}.site-nav:not(.site-nav-simple) .nav-item{display:flex;justify-content:center}.site-nav:not(.site-nav-simple) .nav-item>.nav-toggle{width:100%;justify-content:center}}
