.casa-mobile-total{display:none}
@media(max-width:760px){
body.casa-mobile-tool{padding-bottom:calc(82px + env(safe-area-inset-bottom))!important;background:#f6f8f5}
.casa-mobile-tool .page{background-image:none!important;padding-bottom:20px!important}
.casa-mobile-tool .inner,.casa-mobile-tool .wrap{width:calc(100% - 24px)!important;max-width:100%!important;margin-inline:auto!important}
.casa-mobile-tool .top{width:calc(100% - 28px);padding:12px 0!important}
.casa-mobile-tool .top .logo{width:160px!important;height:auto}
.casa-mobile-tool .top .nav a:not(.pill){display:none}
.casa-mobile-tool .top .nav{display:flex!important;gap:0!important;font-size:12px}
.casa-mobile-tool .steps{font-size:10px!important;gap:6px!important;margin:10px 0!important;overflow-x:auto;white-space:nowrap}
.casa-mobile-tool .steps>*{flex-shrink:0}
.casa-mobile-tool .hero{padding:16px 0!important;margin:0 0 14px!important;min-height:0!important;background:none!important}
.casa-mobile-tool .hero h1{font-size:29px!important;line-height:1.1!important;letter-spacing:-.8px!important;margin:7px 0 10px!important}
.casa-mobile-tool .hero>div{font-size:11px;letter-spacing:.04em}
.casa-mobile-tool .hero p{font-size:15px!important;line-height:1.45!important;margin:0!important}
.casa-mobile-tool .box,.casa-mobile-tool .card,.casa-mobile-tool .config{padding:16px!important;border-radius:14px!important;margin-bottom:12px!important;min-width:0}
.casa-mobile-tool .setup-card,.casa-mobile-tool .finish-card,.casa-mobile-tool .access-card,.casa-mobile-tool .general-compact,.casa-mobile-tool .tech-fees{display:block!important}
.casa-mobile-tool .step-badge{display:none!important}
.casa-mobile-tool .section-title,.casa-mobile-tool .card h2,.casa-mobile-tool .box h2{font-size:20px!important;line-height:1.25!important;margin:0 0 8px!important}
.casa-mobile-tool .setup-sub,.casa-mobile-tool .q small,.casa-mobile-tool .muted,.casa-mobile-tool .setup-ready{font-size:13px!important;line-height:1.4!important}
.casa-mobile-tool .setup-sub{margin-bottom:10px!important}
.casa-mobile-tool input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]),.casa-mobile-tool select{font-size:16px!important;min-height:44px!important;box-sizing:border-box;max-width:100%;border-radius:9px!important}
.casa-mobile-tool input[type=checkbox],.casa-mobile-tool input[type=radio]{accent-color:#438020}
.casa-mobile-tool .location-field input{padding-left:38px!important}
.casa-mobile-tool .address-field{margin-top:10px!important}
.casa-mobile-tool .suggestions{max-height: min(40dvh,260px);overflow-y:auto;overscroll-behavior:contain;z-index:60}
.casa-mobile-tool .suggestions>*{font-size:15px!important;min-height:44px}
.casa-mobile-tool .finish-options,.casa-mobile-tool .access-options{gap:6px!important;margin-top:10px!important}
.casa-mobile-tool .finish-choice label,.casa-mobile-tool .access-option{font-size:13px!important;min-height:44px!important;padding:10px 5px!important}
.casa-mobile-tool .room-buttons{gap:8px!important;margin:10px 0!important}
.casa-mobile-tool .add-room{min-height:48px!important;padding:12px!important;font-size:15px!important;border-radius:10px!important}
.casa-mobile-tool .room-add-icon{width:24px!important}.casa-mobile-tool .plus-mini{font-size:23px!important}
.casa-mobile-tool .room-head{padding:12px!important}.casa-mobile-tool .room-title{font-size:20px!important}
.casa-mobile-tool .room-kicker{display:none!important}.casa-mobile-tool .room-context{font-size:13px!important;color:#b42328!important;font-weight:650}
.casa-mobile-tool .room-custom>summary{color:#b42328!important;font-size:15px!important;font-weight:750!important;line-height:1.35!important;padding:13px 12px!important;min-height:46px!important}
.casa-mobile-tool .room-custom .edit-pencil{color:inherit!important}
.casa-mobile-tool .general-grid{gap:0!important}
.casa-mobile-tool .general-item{display:grid!important;grid-template-columns:20px minmax(0,1fr) 78px!important;gap:8px!important;border:0!important;border-bottom:1px solid #e2e8e3!important;border-radius:0!important;padding:9px 0!important;min-height:60px!important;background:transparent!important}
.casa-mobile-tool .general-item label{font-size:14px!important;line-height:1.3!important}.casa-mobile-tool .general-icon{font-size:19px!important}
.casa-mobile-tool .general-item input,.casa-mobile-tool .general-item select{width:78px!important;padding:7px!important}
.casa-mobile-tool .add-workbar{gap:8px!important;padding:12px 0 0!important;flex-wrap:wrap}
.casa-mobile-tool .add-work-btn{font-size:13px!important;min-height:42px;padding:9px!important}
.casa-mobile-disclosure{border:1px solid #e1e7e2;border-radius:14px;background:#fff;margin:0 0 12px;overflow:hidden}
.casa-mobile-disclosure>summary{font-size:17px;font-weight:750;padding:16px;cursor:pointer;line-height:1.3;min-height:50px}
.casa-mobile-disclosure>.box{border:0!important;margin:0!important;padding-top:0!important}
.casa-mobile-disclosure .section-title{display:none}
.casa-mobile-tool .summary-side,.casa-mobile-tool .live-summary{border-radius:14px!important;overflow:hidden}
.casa-mobile-tool .summary-head{padding:16px!important}.casa-mobile-tool .summary-body{padding:6px 16px!important}
.casa-mobile-tool .summary-title{font-size:21px!important}.casa-mobile-tool .summary-meta,.casa-mobile-tool .summary-empty{font-size:13px!important}
.casa-mobile-tool .summary-row b,.casa-mobile-tool .summary-row strong{font-size:14px!important}.casa-mobile-tool .summary-row small{font-size:12px!important}
.casa-mobile-tool .summary-total{padding:16px!important}.casa-mobile-tool .summary-total strong{font-size:30px!important}
.casa-mobile-tool .summary-identity{padding:12px 16px!important;font-size:12px!important;line-height:1.4}
.casa-mobile-tool .summary-actions{padding:12px!important}.casa-mobile-tool .summary-action{font-size:14px!important;min-height:46px!important;padding:10px!important}
.casa-mobile-tool .future-companies{display:none!important}
.casa-mobile-tool .company-panel{width:100%!important;margin:18px 0!important;padding:16px!important;border-radius:14px!important}
.casa-mobile-tool .company-panel h2{font-size:21px!important;line-height:1.2}.casa-mobile-tool .company-panel>p,.casa-mobile-tool .company-empty{font-size:13px!important;line-height:1.4}
.casa-mobile-tool .livebar{display:none!important}
.casa-mobile-total{position:fixed;display:flex;align-items:center;justify-content:space-between;gap:12px;left:0;right:0;bottom:0;z-index:80;background:#263b2e;color:white;padding:10px 16px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -3px 14px #17201c18}
.casa-mobile-total small{display:block;font-size:11px;color:#dae3dc}.casa-mobile-total strong{display:block;font-size:23px;line-height:1.15;margin-top:2px}
.casa-mobile-total a{display:block;color:#17201c;background:#b8ef54;border-radius:8px;padding:11px 13px;font-size:14px;font-weight:750;text-decoration:none;white-space:nowrap}
.casa-mobile-total[hidden],.casa-mobile-tool .livebar[hidden]{display:none!important}
.casa-mobile-tool.casa-keyboard-open .casa-mobile-total{display:none!important}
.casa-mobile-tool [id]{scroll-margin-bottom:100px}
body.casa-mobile-home .hero{display:flex!important;flex-direction:column;min-height:0!important;padding:0!important;background:none!important}
.casa-mobile-home .hero-inner{padding:26px 0 20px!important;width:calc(100% - 32px)!important}
.casa-mobile-home .hero h1{font-size:40px!important;line-height:1.02!important;letter-spacing:-1.7px!important;margin:16px 0!important}
.casa-mobile-home .hero .eyebrow{font-size:10px!important}.casa-mobile-home .hero .lead{font-size:16px!important;line-height:1.45!important}
.casa-mobile-home .hero-cta{margin-top:18px!important;font-size:16px!important;padding:13px 18px!important}
.casa-mobile-home .promise{display:none!important}
.casa-mobile-home .casa-home-photo{display:block;width:100%;height:200px;object-fit:cover;object-position:center 48%}
.casa-mobile-home .home-categories,.casa-mobile-home .energy-categories{padding:24px 0!important}
.casa-mobile-home .category-heading h2{font-size:28px!important}.casa-mobile-home .category-heading p{font-size:15px!important;line-height:1.4}
.casa-mobile-home .photo-card,.casa-mobile-home .energy-grid .photo-card{height:170px!important;border-radius:14px!important}
.casa-mobile-home .photo-title,.casa-mobile-home .energy-grid .photo-title{font-size:20px!important}.casa-mobile-home .photo-sub{font-size:13px!important}
.casa-mobile-home .photo-arrow{width:38px!important;height:38px!important}
}
.casa-home-photo{display:none}
@media print{.casa-mobile-total{display:none!important}.casa-mobile-tool{padding-bottom:0!important}}

@media(max-width:760px){.casa-has-mobile-total .sticky{display:none!important}}
@media(max-width:760px){.casa-mobile-tool .room-head{background:#f0f7e9!important;color:#17201c!important}.casa-mobile-tool .room-head .room-price,.casa-mobile-tool .room-head .room-title{color:#17201c!important}}

/* V2: remove repeated instructions only on the apartment mobile configurator. */
@media(max-width:760px){
body.casa-mobile-tool:has(#roomBuilder) .hero>div:first-child,
body.casa-mobile-tool:has(#roomBuilder) .hero>p,
body.casa-mobile-tool:has(#roomBuilder) .setup-card .setup-sub,
body.casa-mobile-tool:has(#roomBuilder) #setupReady:not(.ready),
body.casa-mobile-tool:has(#roomBuilder) .finish-card .setup-sub,
body.casa-mobile-tool:has(#roomBuilder) .access-card .setup-sub,
body.casa-mobile-tool:has(#roomBuilder) .room-builder-head>.q,
body.casa-mobile-tool:has(#roomBuilder) .room-context{display:none!important}
body.casa-mobile-tool:has(#roomBuilder) .hero{padding:10px 0!important;margin-bottom:8px!important}
body.casa-mobile-tool:has(#roomBuilder) .hero h1{margin:0!important}
body.casa-mobile-tool:has(#roomBuilder) .room-builder-head{margin-bottom:8px!important}
body.casa-mobile-tool:has(#roomBuilder) .room-identity{row-gap:0!important}
}

/* V3: guide the first required selection and make incomplete room notices clear. */
@media(max-width:760px){
body.casa-mobile-tool:has(#roomBuilder) .setup-card:not(:has(#setupReady.ready)) #comune{border:2px solid #639d24!important;background:#f4fbe9!important;box-shadow:0 0 0 3px #b8ef5438!important}
body.casa-mobile-tool:has(#roomBuilder) .setup-card:not(:has(#setupReady.ready)) #comune:focus-visible{outline:2px solid #4f8420;outline-offset:3px}
body.casa-mobile-tool:has(#roomBuilder) .room-empty-note{display:none!important}
body.casa-mobile-tool:has(#roomBuilder) #summaryBody .summary-empty,
body.casa-mobile-tool:has(#roomBuilder) #liveHint{color:#b42328!important;font-weight:650!important}
}

/* V4: the same concise mobile presentation across all CASA tools. */
.redoo-casa-data-notice{position:static;display:block;font:12px/1.45 system-ui;color:#55665b;max-width:1160px;margin:20px auto;padding:12px 16px}
@media(max-width:760px){
.casa-mobile-tool .hero>div:first-child:not(:has(h1)),.casa-mobile-tool .hero .eyebrow,.casa-mobile-tool .hero p,.casa-mobile-tool .casa-mobile-redundant,.casa-mobile-tool .room-empty-note,.casa-mobile-tool .room-context{display:none!important}
.casa-mobile-tool .hero{padding:10px 0!important;margin-bottom:8px!important}.casa-mobile-tool .hero h1{margin:0!important}
.casa-mobile-tool .hero-inner{padding:0!important;width:100%!important}
.casa-mobile-tool .casa-town-pending{border:2px solid #639d24!important;background:#f4fbe9!important;box-shadow:0 0 0 3px #b8ef5438!important}
.casa-mobile-tool .casa-town-pending:focus-visible{outline:2px solid #4f8420;outline-offset:3px}
.casa-mobile-tool .qhead,.casa-mobile-tool .bp-head{gap:0!important;margin-bottom:12px!important}
.casa-mobile-tool .qhead>.num,.casa-mobile-tool .bp-head>.num{display:none!important}
.casa-mobile-tool .qhead strong,.casa-mobile-tool .bp-head strong{font-size:20px!important;line-height:1.25!important}
.casa-mobile-tool .qbody{padding:14px!important}.casa-mobile-tool .qcard{border-radius:14px!important;margin-bottom:12px!important}
.casa-mobile-tool .qhead{padding:14px 14px 0!important}
.casa-mobile-tool .bp-head small{display:none!important}
.casa-mobile-tool .casa-mobile-disclosure:has(.bath-personal)>summary{color:#b42328!important}
.casa-mobile-tool .casa-mobile-disclosure>.bath-personal{border:0!important;margin:0!important;padding:0 14px 14px!important}
.casa-mobile-tool .casa-mobile-disclosure .bath-personal>.bp-head{display:none!important}
.casa-mobile-tool .bp-title{font-size:14px!important}.casa-mobile-tool .bp-field{font-size:14px!important}
.casa-mobile-tool .bp-choice{padding:9px 0!important}.casa-mobile-tool .bp-choice b{font-size:15px!important}
.casa-mobile-tool .bp-choice small{font-size:12px!important}.casa-mobile-tool .bp-note{font-size:12px!important;line-height:1.4!important}
.casa-mobile-tool .choice label,.casa-mobile-tool .finish label{padding:12px!important;min-height:46px!important}
.casa-mobile-tool .choice label strong,.casa-mobile-tool .finish label strong{font-size:15px!important}
.casa-mobile-tool .choice label small,.casa-mobile-tool .finish label small{font-size:12px!important;line-height:1.35}
.casa-mobile-tool .summary-empty,.casa-mobile-tool .ls-empty{color:#b42328!important;font-weight:650}
}
@media(max-width:760px){
.casa-mobile-tool .start{background-image:none!important;width:calc(100% - 24px)!important;padding:12px 0 20px!important}
.casa-mobile-tool .live-layout{width:100%!important;gap:12px!important}
.casa-mobile-tool .live-layout .config{padding:0!important;gap:12px!important}
.casa-mobile-tool .question{padding:14px!important;border-radius:14px!important}
.casa-mobile-tool .question .qhead{padding:0!important}
.casa-mobile-tool .settings-grid label{font-size:14px!important;min-height:44px!important}
.casa-mobile-tool .ls-row{font-size:13px!important;line-height:1.4}.casa-mobile-tool .ls-meta,.casa-mobile-tool .live-wait{font-size:13px!important;line-height:1.4}
.casa-mobile-tool .ls-action{font-size:14px!important;min-height:46px!important}.casa-mobile-tool .ls-note,.casa-mobile-tool .ls-identity span{font-size:12px!important;line-height:1.4}.casa-mobile-tool .ls-identity b{font-size:13px!important}
}

/* The first required municipality is also clear on desktop. */
.casa-mobile-tool .casa-town-pending{border:2px solid #639d24!important;background:#f4fbe9!important;box-shadow:0 0 0 3px #b8ef5438!important}
.casa-mobile-tool .redoo-site-header,.casa-mobile-tool .redoo-site-footer{width:100%;box-sizing:border-box}
