:root{--hb-ink:#17202a;--hb-cream:#f7f3ec;--hb-paper:#fffdf9;--hb-line:rgba(23,32,42,.13);--hb-muted:#6e706e;--hb-accent:#d99a6c;--hb-green:#3e6b5b}
*{box-sizing:border-box}.product-page{background:var(--hb-cream);color:var(--hb-ink);font-family:"DM Sans",sans-serif}.product-page button,.product-page a{font:inherit}.product-nav{position:sticky;top:0;z-index:50;height:72px;padding:0 clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,253,249,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--hb-line)}.product-brand{display:flex;align-items:center;gap:10px;color:var(--hb-ink);font-size:14px;font-weight:700;letter-spacing:.02em}.product-brand-mark{display:grid;place-items:center;width:28px;height:28px;border:2px solid var(--hb-ink);border-radius:8px;font-weight:700}.product-nav-links{display:flex;gap:28px;font-size:13px}.product-nav-links a{color:var(--hb-ink)}.product-nav-buy{padding:12px 18px;border-radius:10px;background:var(--hb-ink);color:white;font-weight:700;font-size:13px}.product-hero{max-width:1500px;margin:0 auto;padding:42px clamp(18px,4vw,64px) 36px;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(380px,.85fr);gap:34px}.product-gallery{min-width:0}.gallery-main{height:min(650px,58vw);min-height:480px;position:relative;overflow:hidden;border-radius:22px;background:#e7e1d7}.gallery-main>img{width:100%;height:100%;object-fit:cover}.gallery-overlay-copy{position:absolute;left:34px;bottom:34px;display:flex;flex-direction:column;gap:9px;color:#fff;text-shadow:0 2px 15px rgba(0,0,0,.35)}.gallery-overlay-copy span{font-size:11px;letter-spacing:.22em;font-weight:700}.gallery-overlay-copy strong{font:500 clamp(28px,3.5vw,58px)/1.02 "Playfair Display",serif}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.9);font-size:28px;cursor:pointer}.gallery-prev{left:18px}.gallery-next{right:18px}.gallery-thumbs{display:flex;gap:10px;margin-top:12px;overflow:auto;padding-bottom:4px}.gallery-thumb{flex:0 0 92px;height:70px;border:1px solid var(--hb-line);border-radius:10px;background:white;padding:3px;cursor:pointer;overflow:hidden}.gallery-thumb.active{border:2px solid var(--hb-accent)}.gallery-thumb img{width:100%;height:100%;object-fit:cover;border-radius:7px}.gallery-ui-thumb{display:grid;place-items:center;background:#18222b;color:white}.gallery-ui-thumb span{font-size:11px;font-weight:700}.purchase-panel{align-self:start;background:var(--hb-paper);border:1px solid var(--hb-line);border-radius:20px;padding:34px;position:sticky;top:92px;box-shadow:0 20px 60px rgba(23,32,42,.07)}.rating-row{display:flex;align-items:center;gap:10px;font-size:12px;margin-bottom:18px}.stars{letter-spacing:2px}.rating-note{color:var(--hb-muted)}.purchase-panel h1{font:500 clamp(38px,4vw,60px)/1.02 "Playfair Display",serif;margin:0 0 18px}.product-lead{font-size:16px;line-height:1.65;color:#4e5352;margin:0 0 28px}.license-label{font-size:10px;letter-spacing:.16em;font-weight:700;margin-bottom:9px}.license-switcher{display:grid;gap:10px}.license-option{width:100%;display:grid;grid-template-columns:18px 1fr auto;gap:11px;align-items:center;text-align:left;padding:16px;border:1px solid var(--hb-line);border-radius:12px;background:white;cursor:pointer}.license-option.selected{border:2px solid var(--hb-accent);padding:15px;background:#fff9f3}.radio-dot{width:15px;height:15px;border:1.5px solid #777;border-radius:50%;position:relative}.selected .radio-dot:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--hb-ink)}.license-copy{display:flex;flex-direction:column;gap:4px}.license-copy b{font-size:14px}.license-copy small{font-size:11px;color:var(--hb-muted)}.license-option>strong,.price-stack strong{font-size:24px}.price-stack{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.price-stack em{font-style:normal;font-size:9px;padding:4px 7px;border-radius:99px;background:#f0d2b9;font-weight:700}.purchase-points{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:20px 0;margin:0;list-style:none;border-bottom:1px solid var(--hb-line)}.purchase-points li{font-size:12px;color:#444}.purchase-points li:before{content:"✓";font-weight:700;margin-right:7px}.buy-button,.final-buy{display:flex;align-items:center;justify-content:center;gap:15px;width:100%;margin-top:18px;padding:17px;border-radius:10px;background:var(--hb-ink);color:white;font-weight:700}.checkout-trust{display:flex;justify-content:space-between;gap:8px;margin-top:13px;font-size:9px;color:#6a6d6b}.demo-intro{max-width:1500px;margin:0 auto;padding:100px clamp(18px,4vw,64px) 60px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;background:#eeebf6}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:700;margin:0 0 14px;color:#6f6257}.demo-intro h2,.value-copy h2,.history-copy h2,.cost-copy h2,.device-section h2,.reviews-section h2,.faq-section h2,.final-purchase h2{font:500 clamp(38px,4.5vw,68px)/1.02 "Playfair Display",serif;margin:0 0 18px}.demo-intro p{max-width:620px;line-height:1.65;color:#515452}.demo-intro-actions{display:flex;gap:10px;margin-top:24px}.dark-pill,.light-pill,.text-link{border:0;border-radius:9px;padding:13px 17px;cursor:pointer}.dark-pill{background:var(--hb-ink);color:#fff;font-weight:700}.light-pill{background:#fff;border:1px solid var(--hb-line)}.demo-callout{position:relative}.demo-badge{position:absolute;top:-14px;right:15px;z-index:3;background:#fff;padding:7px 10px;border-radius:99px;font-size:9px;font-weight:700;box-shadow:0 5px 20px rgba(0,0,0,.1)}.mini-app-preview{display:grid;grid-template-columns:120px 1fr;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 25px 70px rgba(23,32,42,.13);min-height:340px}.mini-sidebar{background:#17202a;color:white;padding:22px 14px;display:flex;flex-direction:column;gap:12px;font-size:10px}.mini-sidebar span{padding:7px;border-radius:6px}.mini-sidebar .active{background:#35404b}.mini-main{padding:22px}.mini-top{display:flex;justify-content:space-between;align-items:center;font-size:16px}.avatar,.demo-avatar,.demo-user-avatar{display:grid;place-items:center;border-radius:50%;background:#d9a37d;color:#fff;font-weight:700}.avatar{width:28px;height:28px;font-size:9px}.mini-home{display:flex;gap:15px;align-items:center;padding:20px 0}.mini-home img{width:90px;height:65px;object-fit:cover;border-radius:9px}.mini-home small{display:block;color:#777;font-size:10px;margin-top:5px}.mini-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mini-stats i{font-style:normal;padding:13px 8px;background:#f7f4ee;border-radius:8px}.mini-stats b,.mini-stats small{display:block}.mini-stats b{font-size:18px}.mini-stats small{font-size:8px;color:#777;margin-top:3px}.demo-app-wrap{max-width:1500px;margin:0 auto;padding:70px clamp(18px,4vw,64px);background:#fff}.demo-app{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:720px;border-radius:20px;overflow:hidden;background:#f7f8f7;box-shadow:0 25px 90px rgba(23,32,42,.14);border:1px solid rgba(23,32,42,.12)}.demo-sidebar{background:#17202a;color:#fff;padding:22px 14px;display:flex;flex-direction:column}.demo-brand{display:flex;gap:9px;align-items:center;font-size:13px;font-weight:700;padding:4px 9px 24px}.demo-house-icon{font-size:19px}.demo-profile{display:flex;gap:9px;align-items:center;padding:10px 9px 18px;border-bottom:1px solid rgba(255,255,255,.1)}.demo-avatar,.demo-user-avatar{width:34px;height:34px;font-size:10px}.demo-profile b,.demo-profile small{display:block}.demo-profile b{font-size:12px}.demo-profile small{font-size:9px;color:#aab1b5;margin-top:3px}.demo-nav{display:grid;gap:3px;padding-top:18px}.demo-nav-item{border:0;background:transparent;color:#c8ced1;text-align:left;padding:11px 10px;border-radius:7px;font-size:11px;cursor:pointer}.demo-nav-item.active,.demo-nav-item:hover{background:#33404a;color:#fff}.demo-sidebar-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding-top:14px;display:grid;gap:6px}.demo-sidebar-bottom button{border:0;background:transparent;color:#aeb5b8;text-align:left;padding:8px 10px;font-size:10px;cursor:pointer}.demo-sidebar-bottom span{font-size:9px;color:#7f898f;padding:8px 10px}.demo-main{min-width:0;padding:30px 34px}.demo-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.demo-eyebrow{font-size:9px;letter-spacing:.18em;color:#777}.demo-topbar h3{margin:5px 0 0;font-size:26px}.demo-top-actions{display:flex;align-items:center;gap:12px}.demo-mode-pill{font-size:9px;padding:7px 10px;background:#fff2ed;color:#9b4c2e;border:1px solid #f1c9b7;border-radius:99px}.demo-user-avatar{width:31px;height:31px}.demo-page{display:none}.demo-page.active{display:block}.demo-property-card{display:grid;grid-template-columns:170px 1fr auto;gap:20px;align-items:center;background:#fff;border:1px solid #e2e4e2;border-radius:13px;padding:15px;margin-bottom:15px}.demo-property-card img{width:170px;height:115px;object-fit:cover;border-radius:8px}.demo-property-info h4{font-size:22px;margin:5px 0}.demo-property-info p,.demo-property-info span{font-size:11px;color:#6b706e;margin:0 0 5px}.demo-property-info .demo-label,.demo-label{font-size:9px;letter-spacing:.16em;color:#808583}.demo-property-card button{border:1px solid #dfe2df;background:#fff;padding:8px 12px;border-radius:7px;font-size:10px}.demo-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.demo-stat-grid article{background:#fff;border:1px solid #e2e4e2;border-radius:12px;padding:17px;display:grid;gap:4px}.demo-stat-grid .stat-icon{font-size:16px}.demo-stat-grid b{font-size:27px}.demo-stat-grid small{color:#777;font-size:10px}.demo-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.demo-card{background:#fff;border:1px solid #e2e4e2;border-radius:12px;padding:18px}.demo-card .card-head{display:flex;justify-content:space-between;gap:15px}.demo-card h4{margin:0;font-size:13px}.demo-card .card-head span,.demo-card>small{font-size:9px;color:#888}.demo-card>strong{display:block;font-size:27px;margin-top:12px}.card-head button{border:0;background:none;color:#3e6b5b;font-size:10px;cursor:pointer}.recent-card{margin-top:12px}.activity-row{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #eef0ee}.activity-row:last-child{border-bottom:0}.activity-row img{width:48px;height:34px;object-fit:cover;border-radius:6px}.activity-row b{font-size:11px;display:block}.activity-row small{font-size:9px;color:#888}.activity-row strong{font-size:11px}.demo-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.demo-section-head h4{font-size:26px;margin:5px 0}.demo-section-head p{font-size:11px;color:#777;margin:0}.demo-primary{border:0;background:var(--hb-ink);color:white;border-radius:8px;padding:11px 14px;font-size:10px;font-weight:700;cursor:pointer}.record-list{display:grid;gap:10px}.record-card{display:grid;grid-template-columns:95px 1fr auto;gap:15px;background:#fff;border:1px solid #e2e4e2;border-radius:12px;padding:12px;align-items:center}.record-card img{width:95px;height:72px;object-fit:cover;border-radius:7px}.record-card b{display:block;font-size:12px}.record-card small{display:block;font-size:9px;color:#777;margin-top:5px}.record-meta{display:flex;gap:12px;margin-top:10px;color:#777;font-size:8px}.record-card strong{font-size:14px}.status{display:inline-block;padding:4px 7px;border-radius:99px;background:#e7f3e9;color:#3c7750;font-size:8px;margin-top:7px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.details-grid>div{background:#fff;border:1px solid #e2e4e2;border-radius:10px;padding:18px}.details-grid span,.details-grid b{display:block}.details-grid span{font-size:9px;color:#888}.details-grid b{font-size:14px;margin-top:5px}.timeline-count{font-size:10px;color:#777}.demo-timeline{position:relative;max-width:900px;padding-left:70px}.demo-timeline:before{content:"";position:absolute;left:44px;top:8px;bottom:8px;width:1px;background:#cfd4d1}.timeline-event{position:relative;display:grid;grid-template-columns:58px 1fr;gap:12px;margin-bottom:8px}.timeline-year{font-size:11px;font-weight:700;padding-top:14px}.timeline-dot{position:absolute;left:-30px;top:16px;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#d99a6c;box-shadow:0 0 0 1px #d99a6c}.timeline-card{background:#fff;border:1px solid #e2e4e2;border-radius:9px;padding:11px 13px;display:flex;justify-content:space-between;gap:12px}.timeline-card b{font-size:11px}.timeline-card small{display:block;font-size:8px;color:#888;margin-top:3px}.timeline-card strong{font-size:10px}.demo-mobile-tabs{display:none}.value-section{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;min-height:560px;background:#f5efe7}.value-image img{width:100%;height:100%;object-fit:cover}.value-copy{padding:80px clamp(30px,6vw,90px);display:flex;flex-direction:column;justify-content:center}.value-copy>p:not(.eyebrow){line-height:1.75;color:#565b58;max-width:560px}.read-more button{border:0;background:none;padding:0;font-weight:700;cursor:pointer}.read-more-content{display:none;color:#666;max-width:560px}.read-more.open .read-more-content{display:block}.read-more.open button span{display:inline-block;transform:rotate(180deg)}.history-section{max-width:1500px;margin:0 auto;padding:100px clamp(18px,6vw,90px);display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;background:#fff}.history-copy p:not(.eyebrow){line-height:1.7;color:#5d625f}.text-link{background:none;padding:0;font-weight:700}.history-line{display:flex;flex-direction:column;justify-content:center;gap:0;border-left:1px solid #cfd4d1}.history-node{position:relative;padding:13px 0 13px 28px;display:grid;grid-template-columns:70px 1fr;gap:10px}.history-node:before{content:"";position:absolute;left:-6px;top:20px;width:11px;height:11px;border-radius:50%;background:#d99a6c;border:2px solid #fff;box-shadow:0 0 0 1px #d99a6c}.history-node b{font-size:13px}.history-node span{font-size:12px;color:#666}.cost-section{max-width:1500px;margin:0 auto;padding:100px clamp(18px,6vw,90px);background:#17202a;color:#fff}.cost-section .eyebrow{color:#cbb8a7}.cost-copy p:not(.eyebrow){color:#ccd1d0;max-width:620px;line-height:1.7}.cost-compare{display:grid;grid-template-columns:1fr 70px 1fr 1fr;gap:14px;align-items:stretch;margin-top:40px}.cost-compare>div{border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:25px}.cost-compare span,.cost-compare small{display:block;color:#aeb7b6;font-size:11px}.cost-compare b{display:block;font:500 40px "Playfair Display",serif;margin:12px 0}.cost-compare .compare-arrow{display:grid;place-items:center;border:0;color:#aaa}.cost-compare .highlight{background:#fff;color:#17202a;border-color:#fff}.cost-compare .highlight span,.cost-compare .highlight small{color:#6b706e}.cost-compare .family{background:#f0d2b9}.cost-note{font-size:10px;color:#9fa7a5;margin-top:18px}.device-section{max-width:1500px;margin:0 auto;padding:100px clamp(18px,6vw,90px);display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#f1eee8}.device-section p:not(.eyebrow){line-height:1.7;color:#5c615f}.device-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.device-cards div{padding:28px;background:#fff;border:1px solid var(--hb-line);border-radius:12px}.device-cards b{font:500 40px "Playfair Display",serif;display:block}.device-cards span{font-size:12px}.reviews-section,.faq-section{max-width:1500px;margin:0 auto;padding:100px clamp(18px,6vw,90px);background:#fff}.section-heading{margin-bottom:35px}.section-heading>p:not(.eyebrow){color:#666}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.review-grid article{border:1px solid var(--hb-line);border-radius:13px;padding:25px}.review-stars{letter-spacing:2px;margin-bottom:12px}.review-grid p{line-height:1.65;color:#4e5352}.review-grid b{font-size:11px}.faq-section{background:#f7f4ee}.faq-list{display:grid;gap:8px}.faq-list details{background:#fff;border:1px solid var(--hb-line);border-radius:10px;padding:0 18px}.faq-list summary{cursor:pointer;list-style:none;padding:17px 0;font-weight:600;font-size:13px}.faq-list summary::-webkit-details-marker{display:none}.faq-list p{color:#666;font-size:12px;line-height:1.7;padding:0 0 18px;margin:0}.final-purchase{max-width:1500px;margin:0 auto;padding:80px clamp(18px,6vw,90px);background:#182229;color:#fff;display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:center}.final-purchase .eyebrow{color:#cdb9a8}.final-purchase p:not(.eyebrow){color:#cbd1cf}.final-plans{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:stretch}.final-plan{border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;border-radius:10px;padding:16px;text-align:left;cursor:pointer}.final-plan span,.final-plan b,.final-plan small{display:block}.final-plan b{font:500 30px "Playfair Display",serif;margin:8px 0}.final-plan small{font-size:9px;color:#aab3b1}.final-plan em{font-style:normal;background:#f0d2b9;color:#17202a;padding:3px 6px;border-radius:99px;font-size:8px;margin-left:4px}.final-plan.selected{border-color:#e1a978;background:rgba(217,154,108,.1)}.final-buy{width:auto;min-width:170px;margin:0;align-self:center}.sticky-buy{position:fixed;z-index:100;left:18px;right:18px;bottom:16px;display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:10px 12px;background:rgba(255,253,249,.97);border:1px solid var(--hb-line);border-radius:14px;box-shadow:0 15px 50px rgba(23,32,42,.2);transform:translateY(calc(100% + 30px));opacity:0;transition:.25s ease;pointer-events:none}.sticky-buy.visible{transform:none;opacity:1;pointer-events:auto}.sticky-brand{display:flex;align-items:center;gap:9px}.sticky-brand small{display:block;color:#777;font-size:9px;margin-top:2px}.sticky-plan{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:10px;padding-left:12px;border-left:1px solid var(--hb-line);font-size:11px}.sticky-plan b{font-size:17px}.sticky-plan em{font-style:normal;background:#f0d2b9;padding:2px 5px;border-radius:99px;font-size:8px}.sticky-plan a{padding:9px 12px;background:#17202a;color:white;border-radius:7px;font-weight:700;font-size:10px}.demo-modal{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:20px}.demo-modal.open{display:flex}.demo-modal-backdrop{position:absolute;inset:0;background:rgba(23,32,42,.6);backdrop-filter:blur(4px)}.demo-modal-card{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;background:#fffdf9;border-radius:18px;padding:34px;box-shadow:0 30px 100px rgba(0,0,0,.3)}.modal-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:28px;cursor:pointer}.demo-modal-eyebrow{font-size:10px;letter-spacing:.16em;color:#9b4c2e;font-weight:700}.demo-modal-card h2{font:500 34px "Playfair Display",serif;margin:10px 0}.demo-modal-card p{color:#5e6360;line-height:1.7}.modal-ok{margin-top:10px}.demo-form{display:grid;gap:12px;margin:18px 0}.demo-form label{font-size:10px;font-weight:700}.demo-form input,.demo-form textarea,.demo-form select{width:100%;padding:11px;border:1px solid #d8ddd9;border-radius:8px;background:#fff;font:inherit}.demo-form textarea{min-height:90px}.demo-form button{border:0;background:#d9a37d;color:#17202a;border-radius:8px;padding:12px;font-weight:700}.print-report{display:none}
@media(max-width:1050px){.product-hero{grid-template-columns:1fr}.purchase-panel{position:relative;top:auto}.demo-intro,.value-section,.history-section,.device-section,.final-purchase{grid-template-columns:1fr}.cost-compare{grid-template-columns:1fr 1fr}.cost-compare .compare-arrow{display:none}.final-plans{grid-template-columns:1fr 1fr}.final-buy{grid-column:1/-1}.product-nav-links{display:none}.demo-app{grid-template-columns:190px 1fr}.demo-main{padding:24px}.demo-stat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.product-nav{height:62px}.product-nav-buy{padding:9px 12px;font-size:11px}.product-hero{padding-top:15px}.gallery-main{min-height:390px;height:75vw}.gallery-overlay-copy{left:20px;bottom:20px}.gallery-overlay-copy strong{font-size:32px}.purchase-panel{padding:22px}.purchase-panel h1{font-size:40px}.purchase-points{grid-template-columns:1fr}.demo-intro{padding-top:65px}.mini-app-preview{grid-template-columns:82px 1fr}.mini-sidebar{font-size:8px;padding:15px 8px}.mini-main{padding:15px}.demo-app{display:block;min-height:0}.demo-sidebar{display:none}.demo-mobile-tabs{display:flex;gap:5px;overflow:auto;margin:-5px -5px 18px;padding:5px}.demo-mobile-tabs button{white-space:nowrap;border:1px solid #dfe3e0;background:#fff;border-radius:7px;padding:8px 10px;font-size:9px}.demo-mobile-tabs button.active{background:#17202a;color:#fff}.demo-topbar{margin-bottom:15px}.demo-mode-pill{display:none}.demo-main{padding:16px}.demo-property-card{grid-template-columns:90px 1fr}.demo-property-card img{width:90px;height:70px}.demo-property-card button{display:none}.demo-stat-grid{gap:7px}.demo-stat-grid article{padding:12px}.demo-two-col,.review-grid{grid-template-columns:1fr}.record-card{grid-template-columns:70px 1fr}.record-card img{width:70px;height:58px}.demo-section-head{align-items:start;flex-direction:column}.details-grid{grid-template-columns:1fr}.demo-timeline{padding-left:52px}.demo-timeline:before{left:30px}.timeline-event{grid-template-columns:44px 1fr}.timeline-dot{left:-24px}.timeline-card{padding:10px}.sticky-buy{left:8px;right:8px;bottom:8px;grid-template-columns:1fr 1fr;padding:7px}.sticky-brand{display:none}.sticky-plan{border-left:0;padding:0;grid-template-columns:auto auto auto;gap:6px}.sticky-plan a{padding:8px}.final-plans{grid-template-columns:1fr}.final-buy{grid-column:auto}.value-copy,.history-section,.device-section,.reviews-section,.faq-section,.final-purchase{padding-top:70px;padding-bottom:70px}.cost-compare{grid-template-columns:1fr}.cost-compare .highlight{grid-column:auto}.history-line{margin-top:10px}.product-page{padding-bottom:75px}}
@media print{body>*:not(.print-report){display:none!important}.print-report{display:block!important;padding:40px;font-family:Arial,sans-serif;color:#111}.print-report h1{font-size:28px}.print-report table{width:100%;border-collapse:collapse}.print-report th,.print-report td{border-bottom:1px solid #ccc;padding:8px;text-align:left;font-size:11px}}

.avatar-img{object-fit:cover;overflow:hidden}

/* v20 demo fidelity: mirrors the real HomeBook app structure shown in the product demo. */
.demo-brand{position:relative;display:grid!important;grid-template-columns:32px 1fr;grid-template-rows:auto auto;align-items:center;gap:0 8px}.demo-brand .demo-house-icon{grid-row:1 / span 2}.demo-brand small{font-size:10px;color:#8a938f;letter-spacing:0;grid-column:2}.demo-profiles{margin:14px 0 16px;padding:10px;border:1px solid #dfe4e1;border-radius:10px;background:#fff}.demo-profile-head{display:flex;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:.14em;color:#73807a;margin:2px 3px 8px}.demo-profile-head span:last-child{letter-spacing:0;font-size:8px}.demo-home-switch{width:100%;display:grid;grid-template-columns:28px 1fr 16px;align-items:center;gap:8px;border:1px solid transparent;background:#fff;border-radius:7px;padding:7px 6px;text-align:left;color:#17202a;font:600 11px inherit;cursor:pointer}.demo-home-switch.active{background:#eef6f2;border-color:#9ccbb8}.demo-home-switch img{width:22px;height:22px;object-fit:cover;border-radius:5px}.demo-home-switch b{color:#3e6b5b}.demo-add-home{width:100%;border:1px dashed #dfe4e1;background:#fff;color:#718078;border-radius:7px;padding:7px;font-size:10px;cursor:pointer;margin-top:4px}.demo-property-card{display:grid!important;grid-template-columns:36% 1fr auto;gap:0;min-height:220px}.demo-property-card>img{width:100%;height:100%;min-height:220px;object-fit:cover;border-radius:10px 0 0 10px}.demo-property-info{padding:24px 24px 18px}.demo-property-info h4{font-size:19px;line-height:1.25;margin:6px 0 8px}.demo-property-info p{margin:0 0 20px;color:#5f6c66}.demo-property-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:12px}.demo-property-grid span,.demo-room-layout span{display:block;font-size:8px;letter-spacing:.15em;color:#718079;margin-bottom:5px}.demo-property-grid b,.demo-room-layout b{font-size:12px}.demo-room-layout{margin-top:16px}.demo-property-card>button{align-self:start;margin:22px 18px 0 0;border:1px solid #d8dfdb;background:#fff;border-radius:7px;padding:8px 12px;color:#33443d;font-weight:600}.demo-three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.demo-three-col .demo-card{min-height:92px}.dashboard-timeline-card{min-height:190px}.dashboard-timeline-summary{display:flex;flex-direction:column;align-items:center;justify-content:center;height:115px}.dashboard-timeline-summary strong{font-size:24px}.dashboard-timeline-summary span{font-size:11px;color:#7a8580;margin-top:7px}.demo-page-subtitle{margin:2px 0 0;color:#66746d;font-size:12px}.demo-sidebar-bottom{gap:7px!important}.demo-sidebar-bottom button{font-size:10px!important}.record-card{display:grid!important;grid-template-columns:90px 1fr auto;gap:18px;align-items:start;padding:18px!important;border:1px solid #dfe4e1!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;min-height:142px}.record-card img{width:90px!important;height:90px!important;object-fit:cover!important;border-radius:7px!important}.record-card>div{min-width:0}.record-card b{font-size:16px}.record-card p{font-size:11px;color:#6b7771;margin:9px 0 12px;line-height:1.5}.record-card>strong{font-size:14px;white-space:nowrap}.record-meta{display:flex!important;gap:12px!important;flex-wrap:wrap!important;color:#75817b!important;font-size:9px!important}.record-meta span::before{content:'• ';color:#9aa49f}.demo-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.demo-settings-card{padding:24px;text-align:center;min-height:180px}.demo-settings-card h4{font-size:19px;margin:8px 0}.demo-settings-card p{font-size:12px;line-height:1.55;color:#69766f}.demo-settings-card select{width:180px;padding:10px 12px;border:1px solid #d9dfdc;border-radius:8px;background:#fff;margin:8px auto 10px}.demo-settings-card small{display:block;color:#849089;font-size:9px;line-height:1.4}.demo-home-timeline{max-width:720px;margin:0 auto;padding:30px 0 50px}.demo-timeline-year{margin-bottom:70px}.demo-timeline-year-label{width:80px;height:80px;margin:0 auto 38px;display:flex;align-items:center;justify-content:center;font-size:25px;font-weight:700;background:#fff;border-radius:50%;position:relative;z-index:2}.demo-timeline-events{position:relative}.demo-timeline-events::before{content:'';position:absolute;top:-38px;bottom:0;left:50%;width:1px;background:#d9dedb;transform:translateX(-50%)}.demo-timeline-event{position:relative;display:grid;grid-template-columns:1fr 28px 1fr;align-items:center;width:100%;min-height:70px;border:0;background:transparent;padding:8px 0;color:#17202a;cursor:pointer;font:inherit}.demo-timeline-event .timeline-event-month{grid-column:1;justify-self:end;padding-right:22px;color:#7a8580;font-size:11px}.demo-timeline-event .timeline-event-name{grid-column:1;justify-self:end;padding-right:22px;margin-top:18px;text-align:right;font-size:14px;font-weight:600}.demo-timeline-event .timeline-event-dot{grid-column:2;grid-row:1/span 2;justify-self:center;width:8px;height:8px;border:2px solid #fff;border-radius:50%;background:#8b9591;box-shadow:0 0 0 1px #cdd3d0;z-index:2}.demo-timeline-event.right{direction:rtl}.demo-timeline-event.right .timeline-event-month,.demo-timeline-event.right .timeline-event-name{grid-column:3;justify-self:start;padding-right:0;padding-left:22px;text-align:left;direction:ltr}.demo-timeline-event:hover .timeline-event-dot{background:#3e6b5b;transform:scale(1.25)}.pdf-demo-preview{display:flex;flex-direction:column;gap:12px}.pdf-demo-preview iframe{width:100%;height:560px;border:1px solid #dfe4e1;border-radius:8px;background:#fff}.pdf-download-link{display:inline-flex!important;width:max-content;text-decoration:none!important;color:#fff!important}.demo-nav-item[data-demo-page="settings"]{margin-top:4px;border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.demo-mode-pill{white-space:nowrap}.demo-main{background:#f7f6f2!important}.demo-card,.demo-property-card,.details-grid>div{border-color:#dfe4e1!important}
@media(max-width:900px){.demo-property-card{grid-template-columns:1fr}.demo-property-card>img{border-radius:10px 10px 0 0;height:180px;min-height:180px}.demo-property-card>button{position:absolute;right:10px;top:190px}.demo-property-grid{grid-template-columns:repeat(2,1fr)}.demo-three-col,.demo-settings-grid{grid-template-columns:1fr}.record-card{grid-template-columns:70px 1fr}.record-card>strong{grid-column:2}.record-card img{width:70px!important;height:70px!important}.demo-timeline-event{min-height:62px}.demo-timeline-event .timeline-event-name{font-size:12px}}

.record-card.no-photo{grid-template-columns:1fr auto}.record-card.no-photo>div{padding-left:4px}

.review-placeholder{display:inline-flex;padding:6px 9px;border:1px solid #d9dfdc;border-radius:999px;font-size:9px;letter-spacing:.12em;color:#64716b;margin-bottom:12px}.review-grid h3{font-size:18px;line-height:1.25;margin:0 0 8px}.mini-homes{display:flex;flex-direction:column;gap:3px;padding:5px 0 8px;margin-bottom:5px;border-bottom:1px solid rgba(255,255,255,.08)}.mini-homes span{font-size:8px;padding:3px 4px;border-radius:4px}.mini-homes .active{background:rgba(255,255,255,.08)}

/* v21: real-app product media and fidelity */
.product-nav-actions{display:flex;align-items:center;gap:12px}
.product-language{display:flex;align-items:center;gap:4px;border:1px solid var(--hb-line);border-radius:10px;padding:8px 9px;background:#fffdf9;color:var(--hb-ink);font-size:11px}
.product-language select{border:0;background:transparent;color:inherit;font:inherit;outline:none;cursor:pointer}
.app-gallery-main{background:#f2f4f1;display:flex;align-items:center;justify-content:center}
.app-gallery-main>img{object-fit:contain;padding:28px;width:100%;height:100%}
.app-gallery-copy{left:28px;bottom:24px;padding:10px 14px;border-radius:10px;background:rgba(23,32,42,.78);text-shadow:none;backdrop-filter:blur(8px)}
.app-gallery-copy strong{font-family:"DM Sans",sans-serif;font-size:18px;font-weight:600;line-height:1.15}
.app-shot-thumb{background:#f7f7f5!important}
.app-shot-thumb img{object-fit:contain!important;background:#f7f7f5}
.gallery-disclosure{margin:8px 2px 0;color:#7b817e;font-size:10px}
.real-details-card{background:#fff;border:1px solid #dfe4e1;border-radius:11px;padding:25px;max-width:900px}
.real-details-card h5{font-size:17px;margin:0 0 25px}
.real-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.real-details-grid>label,.real-photo-field{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:600;color:#6d7772}
.real-details-grid input,.real-details-grid select{width:100%;border:1px solid #d9dedc;border-radius:7px;padding:12px;background:#fff;color:#17202a;font:13px "DM Sans",sans-serif}
.real-details-grid input:disabled,.real-details-grid select:disabled{opacity:1}
.real-photo-field{grid-column:1/-1}
.real-photo-field>span{display:block}
.real-file-row{display:flex;align-items:center;gap:10px}
.fake-file-button{width:max-content;border:1px solid #d9dedc;background:#fff;border-radius:7px;padding:10px 13px;color:#34413c;font-size:11px}
.real-file-row small{font-size:11px;font-weight:400;color:#69746f}
.real-photo-field p{font-size:10px;font-weight:400;line-height:1.5;margin:0;color:#68736e}
.real-property-photo{width:180px;height:120px;object-fit:cover;border-radius:8px;border:1px solid #d9dedc}
.real-room-section{margin-top:28px}
.real-room-section h6{font-size:13px;font-weight:500;letter-spacing:.02em;margin:0 0 12px}
.real-room-section>select{width:180px;padding:11px 12px;border:1px solid #d9dedc;border-radius:8px;background:#fff;color:#17202a;margin-bottom:14px}
.real-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 12px}
.real-feature-grid label{display:flex;align-items:center;gap:9px;min-height:40px;padding:9px 11px;border:1px solid #d9dedc;border-radius:8px;background:#fff;color:#17202a;font-size:11px;font-weight:400}
.real-feature-grid input{width:16px;height:16px;accent-color:#3e6b5b}
.real-form-note{font-size:10px;color:#74807b;margin:12px 0 0;line-height:1.5}
.real-save-button{border:0;background:#17202a;color:#fff;padding:11px 16px;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;margin-top:28px}
@media(max-width:900px){.real-details-grid{grid-template-columns:1fr}.real-photo-field{grid-column:auto}.real-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.product-nav-actions{gap:6px}.product-language{padding:7px}.product-nav-buy{padding:9px 10px}.gallery-main>img{padding:10px}.app-gallery-copy{left:14px;bottom:14px}.real-feature-grid{grid-template-columns:1fr}}

.demo-brand{position:relative;flex-wrap:wrap}.demo-brand-icon{width:25px;height:25px;border-radius:7px;object-fit:cover}.demo-brand>small{width:100%;margin-left:34px;margin-top:-17px;color:#7f898f;font-size:8px;font-weight:400}

.activity-no-photo{width:42px;height:34px;border-radius:6px;border:1px solid #dfe4e1;background:#f3f5f3;display:block}

/* v22: app-accurate product media, document filters, static Home Details and real PDF preview */
.product-language{font-weight:600;min-width:76px;justify-content:center}
.product-language:before{content:"Language";font-size:9px;letter-spacing:.06em;color:#747b77;margin-right:2px}
.real-details-static{background:#fff;border:1px solid #dfe4e1;border-radius:11px;padding:26px;max-width:980px}
.real-details-static-head h5{font-size:26px;margin:7px 0 4px}
.real-details-static-head p{font-size:12px;color:#68736e;margin:0 0 24px}
.real-details-static-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.real-details-static-grid article{min-height:76px;padding:16px;border:1px solid #dfe4e1;border-radius:9px;background:#fff}
.real-details-static-grid small{display:block;color:#77817d;font-size:9px;margin-bottom:8px}
.real-details-static-grid strong{font-size:14px;line-height:1.35}
.details-demo-note{margin:18px 0 0;padding:13px 15px;background:#f7f6f2;border-radius:8px;color:#6d7772;font-size:10px;line-height:1.5}
.real-details-static>.demo-primary{margin-top:16px}
.document-filters-demo{display:flex;gap:7px;margin:16px 0 12px}
.document-filter-demo{border:1px solid #d9dfdc;background:#fff;color:#5d6963;border-radius:8px;padding:9px 14px;font-size:10px;cursor:pointer}
.document-filter-demo.active{background:#17202a;color:#fff;border-color:#17202a}
.review-grid{align-items:stretch}
.review-card{overflow:hidden;padding:0!important;background:#fff}
.review-visual{position:relative;height:165px;overflow:hidden;background:#eee}
.review-visual img{width:100%;height:100%;object-fit:cover}
.review-stars{position:absolute;left:16px;bottom:14px;background:#fff;border-radius:999px;padding:7px 10px;letter-spacing:2px;font-size:12px;color:#b46e3e;box-shadow:0 6px 18px rgba(0,0,0,.12)}
.review-card h3{font-size:17px!important;line-height:1.45!important;padding:22px 24px 28px;margin:0!important;font-weight:600}
.pdf-demo-preview{gap:14px}
.pdf-demo-preview iframe{height:min(70vh,760px);background:#eef0ed}
.pdf-download-link{align-self:flex-start}
@media(max-width:700px){
  .product-language:before{content:""}
  .real-details-static-grid{grid-template-columns:1fr}
  .document-filters-demo{overflow:auto;padding-bottom:3px}
  .document-filter-demo{white-space:nowrap}
  .review-visual{height:150px}
}

.purchase-sentinel{height:1px;width:100%;pointer-events:none}.sticky-buy.visible{display:grid}

/* V24 — mobile demo keeps the real HomeBook left navigation instead of a top tab strip. */
@media(max-width:700px){
  .demo-app{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    min-height:760px;
    align-items:stretch;
  }
  .demo-sidebar{
    display:flex;
    position:sticky;
    top:70px;
    align-self:start;
    height:calc(100vh - 82px);
    max-height:760px;
    overflow-y:auto;
    padding:14px 7px;
    scrollbar-width:thin;
  }
  .demo-brand{
    gap:5px;
    padding:4px 4px 14px;
    font-size:9px;
    flex-wrap:wrap;
  }
  .demo-brand-icon{width:20px;height:20px}
  .demo-brand span{font-size:9px}
  .demo-brand small{display:none}
  .demo-profiles{padding-bottom:8px}
  .demo-profile-head{font-size:7px}
  .demo-home-switch{padding:6px 4px;font-size:8px;gap:4px}
  .demo-home-switch img{width:24px;height:20px}
  .demo-add-home{font-size:7px;padding:6px 3px}
  .demo-nav{gap:2px;padding-top:8px}
  .demo-nav-item{
    padding:9px 5px;
    font-size:8px;
    line-height:1.15;
    white-space:normal;
  }
  .demo-sidebar-bottom{padding-top:8px;gap:2px}
  .demo-sidebar-bottom button{padding:6px 5px;font-size:7px;line-height:1.2}
  .demo-sidebar-bottom span{padding:6px 5px;font-size:7px}
  .demo-mobile-tabs{display:none!important}
  .demo-main{padding:14px 10px;min-width:0;overflow:hidden}
  .demo-topbar{margin-bottom:14px}
  .demo-topbar h3{font-size:20px}
  .demo-topbar .demo-page-subtitle{font-size:9px;line-height:1.45}
  .demo-top-actions{display:none}
  .demo-property-card{grid-template-columns:78px minmax(0,1fr);gap:10px;padding:10px}
  .demo-property-card img{width:78px;height:62px}
  .demo-property-info h4{font-size:15px;line-height:1.15}
  .demo-property-info p,.demo-property-info span{font-size:8px}
  .demo-property-grid{gap:7px}
  .demo-property-grid span{font-size:7px}
  .demo-property-grid b{font-size:9px}
  .demo-room-layout span{font-size:7px}
  .demo-room-layout b{font-size:8px}
  .demo-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .demo-stat-grid b{font-size:21px}
  .demo-three-col{grid-template-columns:1fr}
  .demo-two-col{grid-template-columns:1fr}
  .record-card{grid-template-columns:58px minmax(0,1fr)}
  .record-card img{width:58px!important;height:52px!important}
}

/* V25 — the demo behaves like the real app: fixed shell, internal content scroll. */
.demo-app-wrap{position:relative}
.demo-close{display:none}
.demo-app{height:min(780px,calc(100vh - 150px));min-height:0;overflow:hidden}
.demo-sidebar{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}
.demo-main{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}
.demo-topbar{position:sticky;top:-30px;z-index:8;background:#f7f6f2;padding-top:1px;padding-bottom:12px}

@media(max-width:700px){
  .demo-app-wrap{display:none}
  .demo-app-wrap.is-open{
    display:block;
    position:fixed;
    inset:0;
    z-index:1000;
    width:100vw;
    height:100dvh;
    padding:0;
    margin:0;
    background:#f7f6f2;
    overflow:hidden;
    border:0;
    border-radius:0;
  }
  .demo-app-wrap.is-open .demo-app{
    width:100%;
    height:100%;
    min-height:0;
    border:0;
    border-radius:0;
    box-shadow:none;
    grid-template-columns:112px minmax(0,1fr);
  }
  .demo-close{
    display:grid;
    place-items:center;
    position:absolute;
    top:10px;
    right:10px;
    z-index:30;
    width:34px;
    height:34px;
    border:1px solid rgba(23,32,42,.18);
    border-radius:50%;
    background:rgba(255,253,249,.96);
    color:#17202a;
    font-size:24px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 5px 18px rgba(23,32,42,.14);
  }
  .demo-app-wrap.is-open .demo-sidebar{
    position:relative;
    top:auto;
    height:100%;
    max-height:none;
    overflow-y:auto;
    padding-bottom:24px;
  }
  .demo-app-wrap.is-open .demo-main{
    height:100%;
    overflow-y:auto;
    padding:14px 10px 40px;
    overscroll-behavior:contain;
  }
  .demo-app-wrap.is-open .demo-topbar{
    top:-14px;
    padding-top:14px;
    padding-bottom:14px;
  }
  .demo-app-wrap.is-open .demo-top-actions{display:none}
  .demo-mobile-tabs{display:none!important}
}

/* Keep the sticky purchase bar independent of the page content and impossible to clip. */
.sticky-buy{position:fixed!important;bottom:16px!important;left:18px!important;right:18px!important;z-index:500!important}
@media(max-width:700px){
  .sticky-buy{left:8px!important;right:8px!important;bottom:8px!important;z-index:500!important}
}


/* V26 — mobile demo density: preserve the real app shell, but size its UI for a phone viewport. */
@media(max-width:700px){
  .demo-app-wrap.is-open .demo-app{
    grid-template-columns:96px minmax(0,1fr)!important;
  }
  .demo-app-wrap.is-open .demo-sidebar{
    width:96px!important;
    padding:10px 6px 18px!important;
    font-size:8px!important;
  }
  .demo-app-wrap.is-open .demo-brand{
    grid-template-columns:22px 1fr!important;
    gap:0 5px!important;
    padding:2px 2px 10px!important;
    font-size:8px!important;
  }
  .demo-app-wrap.is-open .demo-brand-icon{width:18px!important;height:18px!important}
  .demo-app-wrap.is-open .demo-brand span{font-size:8px!important;line-height:1.05!important}
  .demo-app-wrap.is-open .demo-profiles{
    margin:8px 0 10px!important;
    padding:7px 5px!important;
    border-radius:8px!important;
  }
  .demo-app-wrap.is-open .demo-profile-head{font-size:6px!important;margin:1px 2px 5px!important}
  .demo-app-wrap.is-open .demo-profile-head span:last-child{font-size:6px!important}
  .demo-app-wrap.is-open .demo-home-switch{
    grid-template-columns:22px 1fr 9px!important;
    gap:4px!important;
    padding:5px 3px!important;
    font-size:8px!important;
    line-height:1.1!important;
  }
  .demo-app-wrap.is-open .demo-home-switch img{width:19px!important;height:19px!important}
  .demo-app-wrap.is-open .demo-add-home{font-size:8px!important;padding:5px 2px!important}
  .demo-app-wrap.is-open .demo-nav{gap:1px!important;padding-top:5px!important}
  .demo-app-wrap.is-open .demo-nav-item{
    padding:8px 4px!important;
    font-size:8.5px!important;
    line-height:1.1!important;
    border-radius:6px!important;
  }
  .demo-app-wrap.is-open .demo-sidebar-bottom{gap:1px!important;padding-top:6px!important}
  .demo-app-wrap.is-open .demo-sidebar-bottom button,
  .demo-app-wrap.is-open .demo-sidebar-bottom span{
    padding:5px 3px!important;
    font-size:6.5px!important;
    line-height:1.15!important;
  }
  .demo-app-wrap.is-open .demo-main{
    padding:12px 9px 28px!important;
  }
  .demo-app-wrap.is-open .demo-topbar{
    margin-bottom:10px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
    top:-10px!important;
  }
  .demo-app-wrap.is-open .demo-eyebrow{font-size:7px!important}
  .demo-app-wrap.is-open .demo-topbar h3{font-size:17px!important;line-height:1.08!important;margin:4px 0 0!important}
  .demo-app-wrap.is-open .demo-topbar .demo-page-subtitle{font-size:7.5px!important;line-height:1.3!important}

  /* The previous max-width:900 rule forced a 180px property image on mobile. */
  .demo-app-wrap.is-open .demo-property-card{
    grid-template-columns:72px minmax(0,1fr)!important;
    gap:9px!important;
    min-height:0!important;
    padding:9px!important;
    margin-bottom:10px!important;
  }
  .demo-app-wrap.is-open .demo-property-card>img{
    width:72px!important;
    height:108px!important;
    min-height:108px!important;
    border-radius:7px!important;
  }
  .demo-app-wrap.is-open .demo-property-info{padding:3px 2px 3px 0!important}
  .demo-app-wrap.is-open .demo-property-info h4{
    font-size:13px!important;
    line-height:1.08!important;
    margin:3px 0 6px!important;
  }
  .demo-app-wrap.is-open .demo-property-info p{font-size:7px!important;line-height:1.25!important;margin:0 0 9px!important}
  .demo-app-wrap.is-open .demo-property-info .demo-label,
  .demo-app-wrap.is-open .demo-property-grid span,
  .demo-app-wrap.is-open .demo-room-layout span{font-size:5.5px!important;line-height:1.1!important}
  .demo-app-wrap.is-open .demo-property-grid{gap:5px!important;margin-top:7px!important}
  .demo-app-wrap.is-open .demo-property-grid b{font-size:7.5px!important;line-height:1.1!important}
  .demo-app-wrap.is-open .demo-room-layout{margin-top:8px!important}
  .demo-app-wrap.is-open .demo-room-layout b{font-size:7px!important;line-height:1.15!important}
  .demo-app-wrap.is-open .demo-property-card>button{display:none!important}

  .demo-app-wrap.is-open .demo-stat-grid{gap:6px!important}
  .demo-app-wrap.is-open .demo-stat-grid article{padding:9px!important;border-radius:9px!important;gap:2px!important}
  .demo-app-wrap.is-open .demo-stat-grid .stat-icon{font-size:11px!important}
  .demo-app-wrap.is-open .demo-stat-grid b{font-size:18px!important;line-height:1!important}
  .demo-app-wrap.is-open .demo-stat-grid small{font-size:7px!important}
  .demo-app-wrap.is-open .demo-two-col{gap:7px!important;margin:7px 0!important}
  .demo-app-wrap.is-open .demo-card{padding:10px!important;border-radius:9px!important}
  .demo-app-wrap.is-open .demo-card h4{font-size:10px!important}
  .demo-app-wrap.is-open .demo-card .card-head span,
  .demo-app-wrap.is-open .demo-card>small{font-size:7px!important}
  .demo-app-wrap.is-open .demo-card>strong{font-size:18px!important}
  .demo-app-wrap.is-open .record-card{
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:9px!important;
    min-height:0!important;
    padding:9px!important;
  }
  .demo-app-wrap.is-open .record-card img{width:48px!important;height:44px!important}
  .demo-app-wrap.is-open .record-card b{font-size:10px!important;line-height:1.15!important}
  .demo-app-wrap.is-open .record-card p{font-size:7px!important;line-height:1.35!important;margin:5px 0 7px!important}
  .demo-app-wrap.is-open .record-card>strong{font-size:8px!important}
  .demo-app-wrap.is-open .record-meta{font-size:6.5px!important;gap:6px!important}
  .demo-app-wrap.is-open .demo-section-head{gap:7px!important;margin-bottom:10px!important}
  .demo-app-wrap.is-open .demo-section-head h4{font-size:15px!important}
  .demo-app-wrap.is-open .demo-section-head p{font-size:7.5px!important;line-height:1.35!important}
  .demo-app-wrap.is-open .demo-primary{font-size:7.5px!important;padding:7px 9px!important}
}

/* V26 — make the sticky purchase CTA unambiguous once the hero purchase area has been passed. */
.sticky-buy.visible{
  transform:translateY(0)!important;
  opacity:1!important;
  pointer-events:auto!important;
  visibility:visible!important;
}


/* V27 — mobile CTA containment + clearer 20-year price comparison. */
.demo-intro-actions{flex-wrap:wrap;min-width:0}
.demo-intro-actions button{min-width:0;max-width:100%}
.cost-compare-reference{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.28)!important}
.cost-compare-reference span{color:#d9dfdd!important;font-weight:600}
.cost-compare-reference b{font-size:48px!important}
.cost-compare .highlight{position:relative}
.cost-compare .highlight:before{content:'HOMEBOOK PRICE';position:absolute;top:12px;right:14px;font-size:8px;letter-spacing:.14em;font-weight:700;color:#7a6659}
.cost-compare .family:before{content:'HOMEBOOK FAMILY PRICE'}
@media(max-width:700px){
  .demo-intro-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%;gap:9px}
  .demo-intro-actions .dark-pill,.demo-intro-actions .light-pill{width:100%;min-height:58px;white-space:normal;line-height:1.2}
  .cost-compare-reference b{font-size:42px!important}
  .cost-compare .highlight:before{top:10px;right:12px;font-size:7px}
}


/* V28 — premium pricing comparison, complete testimonial localization, and mobile overflow containment. */
html,body{max-width:100%;overflow-x:hidden}
.product-page,.product-page *{min-width:0}
.cost-compare{grid-template-columns:minmax(0,1fr) 72px minmax(0,1.55fr);align-items:stretch;gap:14px}
.cost-compare-reference{display:flex;flex-direction:column;justify-content:center;min-height:190px}
.cost-compare-reference b{font-size:52px!important}
.compare-arrow{display:grid;place-items:center!important;align-self:stretch!important}
.compare-arrow span{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(255,255,255,.32);border-radius:50%;background:#d9c7b4;color:#17202a!important;font-size:11px!important;font-weight:800!important;letter-spacing:.08em}
.homebook-price-group{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative;padding-top:24px}
.homebook-price-group-label{position:absolute;top:0;left:2px;color:#d8c6b3;font-size:9px;font-weight:800;letter-spacing:.16em}
.cost-compare .highlight{min-width:0;background:#fff;color:#17202a;border-color:#fff;padding:25px}
.cost-compare .highlight:before{display:none}
.cost-compare .highlight.family{background:#e9dccd;border-color:#e9dccd;color:#17202a}
.cost-compare .highlight span,.cost-compare .highlight small{color:#686e6b}
.cost-compare .highlight b{font-size:46px}
.cost-note{max-width:900px}
.sticky-buy{min-width:0;max-width:1180px;margin:0 auto}
.sticky-plan{min-width:0}
.sticky-plan span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:700px){
  .cost-compare{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:28px}
  .cost-compare-reference{min-height:150px}
  .cost-compare-reference b{font-size:42px!important}
  .compare-arrow{height:54px}
  .compare-arrow span{width:46px;height:46px}
  .homebook-price-group{grid-template-columns:1fr;gap:10px;padding-top:28px}
  .homebook-price-group-label{top:2px;font-size:8px}
  .cost-compare .highlight{padding:21px}
  .cost-compare .highlight b{font-size:40px}
  .sticky-buy{left:8px!important;right:8px!important;bottom:8px!important;width:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:6px!important;padding:6px!important;overflow:hidden}
  .sticky-plan{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;gap:5px!important;align-items:center!important;border-left:0!important;padding:0 3px!important;min-width:0!important}
  .sticky-plan span{font-size:8px!important;line-height:1.1!important;white-space:normal!important;max-height:24px}
  .sticky-plan b{font-size:15px!important;white-space:nowrap}
  .sticky-plan em{font-size:6.5px!important;padding:2px 3px!important;margin-left:2px}
  .sticky-plan a{padding:7px 8px!important;font-size:8px!important;white-space:nowrap}
  .sticky-brand{display:none!important}
  .review-grid{grid-template-columns:1fr}
  .review-card h3{font-size:14px;line-height:1.55}
}


/* FINAL RELEASE — keep the product gallery source-of-truth aligned with its thumbnails. */
.app-gallery-main>img{object-fit:contain;padding:28px;width:100%;height:100%;}
.app-gallery-main>img.gallery-house-image{object-fit:cover;padding:0;}
.gallery-thumbs{display:flex!important;visibility:visible!important;opacity:1!important;}
.sticky-buy.visible{display:grid!important;visibility:visible!important;opacity:1!important;transform:translateY(0)!important;pointer-events:auto!important;}
@media(max-width:700px){
  .gallery-thumbs{display:flex!important;overflow-x:auto!important;}
  .gallery-thumb{flex-basis:82px;height:62px;}
  .app-gallery-main>img{padding:10px;}
  .app-gallery-main>img.gallery-house-image{padding:0;}
}

/* V31 — final mobile modal layering and readable text. */
.demo-modal{z-index:5000!important;isolation:isolate;}
.demo-modal-backdrop{z-index:0;}
.demo-modal-card{z-index:1;}
@media(max-width:700px){
  .demo-modal{padding:12px!important;z-index:5000!important;}
  .demo-modal-card{width:min(100%,520px)!important;max-height:calc(100dvh - 24px)!important;padding:26px 20px 22px!important;border-radius:16px!important;overflow:auto!important;}
  .demo-modal-card h2{font-size:30px!important;line-height:1.08!important;margin:9px 0 12px!important;}
  .demo-modal-card p{font-size:15px!important;line-height:1.55!important;margin:0 0 10px!important;}
  .demo-modal-eyebrow{font-size:9px!important;line-height:1.2!important;}
  .modal-ok{margin-top:10px!important;padding:11px 16px!important;}
  .pdf-demo-preview{gap:10px!important;}
  .pdf-demo-preview iframe{height:min(58dvh,560px)!important;min-height:300px!important;}
  .rating-row{display:grid!important;grid-template-columns:1fr!important;align-items:start!important;gap:7px!important;margin-bottom:18px!important;}
  .rating-row strong{font-size:12px!important;}
  .rating-note{font-size:11px!important;line-height:1.4!important;max-width:100%!important;}
  .purchase-badge{display:inline-block!important;width:max-content!important;max-width:100%!important;white-space:normal!important;line-height:1.25!important;}
  .purchase-panel h1{font-size:39px!important;line-height:1.04!important;}
  .purchase-panel{padding:24px 20px!important;}
}
