/* Shared compact Smart Life layout. Keep controls comfortable on touch screens. */
header,main,footer{width:min(1240px,calc(100% - 40px))}
header{padding:14px 0;gap:14px}.brand{font-size:20px}.brand-mark,.mark{width:34px;height:34px;font-size:22px}
.hero{height:auto;min-height:0;border-radius:16px;padding:0}
.hero-copy,.home-hero-copy{padding:18px 24px}
.hero h1{font-size:32px;line-height:1.15;margin:0 0 8px;letter-spacing:-.8px}
.hero .eyebrow{font-size:10px;margin:0 0 8px;letter-spacing:1.5px}
.hero .intro,.hero p:last-child{font-size:14px;line-height:1.5;margin:0}
.hero:has(.hero-photo){height:240px;min-height:0}.hero-photo{height:240px;min-height:0}
.hero-photo img{height:230px;min-height:0}
.hero:has(.home-hero-photo){height:190px;min-height:0}.home-hero-photo{height:190px}.home-hero-photo img{height:180px}
section{margin-top:22px}.section-heading,.heading{margin-bottom:12px;gap:12px}
h2{font-size:20px;line-height:1.3}.heading h2{font-size:20px}
.grid{gap:12px}.card{padding:15px;min-height:120px;border-radius:13px}
.card h3{font-size:16px;line-height:1.35;margin:10px 0 6px}.card p{font-size:14px;line-height:1.5;margin-bottom:8px}
.icon{width:30px;height:30px;font-size:19px}.person{min-height:0;padding:14px}.person h3{margin:0 0 3px}
.contact-card{padding:17px;min-height:0}.contact-card>h3{min-height:0;margin:0 0 8px}.contact-card .details{gap:0}
.contact-card .contact-link{min-height:44px;padding:8px 0}.contact-card .address{padding-top:8px}
.manual-card,.knowledge-card{min-height:120px}.manual-card .manual-open{margin-top:8px;padding:9px 0}
.system-card,.instruction{min-height:0}.system-photo img,.no-photo{height:110px}
.instruction-photo img{height:95px}.construction-photo img{height:360px}
.app-group{margin-top:16px;padding-top:12px}.app-group-title{margin:0 0 10px;font-size:15px}
.knowledge-nav,.section-nav{margin-top:14px;gap:8px}.section-nav button,.knowledge-nav a{padding:9px 12px;min-height:44px}
.budget-filters{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(130px,1fr)) auto;gap:8px;margin-top:12px}
.budget-filters input,.budget-filters select,.budget-filters button{padding:10px 12px;min-height:44px;font-size:14px}
.budget-table{margin-top:10px}.budget-table th,.budget-table td,.cost-table th,.cost-table td{padding:9px 12px}
.budget-table td button{padding:6px 9px;min-height:36px;margin:2px;font-size:13px}
.budget-sum{margin:9px 0 0;font-size:14px}#querini-count,#catuzzi-count{margin:10px 0;font-size:13px}
#querini-status:empty,#catuzzi-status:empty{display:none}
.tasks{gap:10px}.task{padding:13px;line-height:1.5}.instructions{margin-top:12px}
.join{padding:17px 20px;margin-top:22px}.join h2{font-size:18px}.join p{margin-top:5px}
.style-prompt{padding:16px;margin-top:14px}
footer{padding:18px 0;align-items:center}footer>a{padding:10px 16px;min-height:44px}
/* The financial application has a separate layout, so only reduce its spacing. */
#app>.summary{margin-top:12px;margin-bottom:12px}#app .summary-item{min-height:74px;padding:12px 15px}
#app .summary-value{font-size:24px}#app .filter-bar{padding:12px}#app .table-wrap{margin-top:16px}
@media(max-width:1000px){.budget-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-filters input[type=search]{grid-column:1/-1}}
@media(max-width:750px){.hero:has(.home-hero-photo){height:auto}.home-hero-copy{padding:18px 20px}.home-hero-photo{height:160px}.home-hero-photo img{height:150px}}
@media(max-width:560px){
 header,main,footer{width:calc(100% - 24px)}header{padding:12px 0}.hero h1{font-size:27px}
 .hero-copy,.home-hero-copy{padding:17px 18px}.hero:has(.hero-photo){height:auto}.hero-photo{height:170px}.hero-photo img{height:160px}
 section{margin-top:18px}.card{padding:14px;min-height:0}.grid{gap:10px}
 .contact-card{padding:16px}.card p{font-size:14px}.card h3{font-size:16px}
 .budget-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-filters input[type=search],.budget-filters button{grid-column:1/-1}
 .budget-table td{padding:6px 0}.budget-table td button{min-height:44px}.budget-table tbody tr{padding:12px}
 .task{padding:12px}.construction-photo img{height:250px}footer{padding:16px 0}
 #app .summary-item{min-height:68px;padding:10px 12px}#app .summary-value{font-size:21px}
}

.button,.account-nav .button{padding:8px 12px;min-height:38px;font-size:13px;gap:8px}@media(max-width:560px){.button,.account-nav .button{min-height:44px;padding:7px 11px}}

body[data-smart-life-compact] h1{font-size:30px;line-height:1.2;margin:14px 0}body[data-smart-life-compact] h2{font-size:21px;margin-top:20px;margin-bottom:10px}body[data-smart-life-compact] .container,body[data-smart-life-compact] .width-container,body[data-smart-life-compact] .page{padding-top:18px;padding-bottom:18px}body[data-smart-life-compact] button,body[data-smart-life-compact] .btn{padding:8px 12px;min-height:40px}body[data-smart-life-compact] td,body[data-smart-life-compact] th{padding:8px 10px}.hero:has(.home-hero-photo){grid-template-columns:65% 35%;height:196px}.home-hero-photo{height:196px}.home-hero-photo img{height:186px}.hero:has(.hero-photo){grid-template-columns:65% 35%;height:247px}.hero-photo{height:247px}.hero-photo img{height:237px}@media(max-width:750px){.hero:has(.home-hero-photo){grid-template-columns:1fr;height:auto}.home-hero-photo{height:165px}.home-hero-photo img{height:155px}}@media(max-width:560px){.hero:has(.hero-photo){grid-template-columns:1fr;height:auto}.hero-photo{height:175px}.hero-photo img{height:165px}body[data-smart-life-compact] button,body[data-smart-life-compact] .btn{min-height:44px}body[data-smart-life-compact] h1{font-size:25px}}
.hero:has(.home-hero-photo){height:210px}.home-hero-photo{height:210px}.home-hero-photo img{height:200px}.hero:has(.hero-photo){height:264px}.hero-photo{height:264px}.hero-photo img{height:254px}@media(max-width:750px){.hero:has(.home-hero-photo){height:auto}.home-hero-photo{height:177px}.home-hero-photo img{height:167px}}@media(max-width:560px){.hero:has(.hero-photo){height:auto}.hero-photo{height:187px}.hero-photo img{height:177px}}

.hero:has(.home-hero-photo){height:225px}.home-hero-photo{height:225px}.home-hero-photo img{height:215px}.hero:has(.hero-photo){height:282px}.hero-photo{height:282px}.hero-photo img{height:272px}@media(max-width:750px){.hero:has(.home-hero-photo){height:auto}.home-hero-photo{height:189px}.home-hero-photo img{height:179px}}@media(max-width:560px){.hero:has(.hero-photo){height:auto}.hero-photo{height:200px}.hero-photo img{height:190px}}

.hero:has(.home-hero-photo){grid-template-columns:67.1% 32.9%;height:241px}.home-hero-photo{height:241px}.home-hero-photo img{height:231px}.hero:has(.hero-photo){grid-template-columns:67.1% 32.9%;height:302px}.hero-photo{height:302px}.hero-photo img{height:292px}@media(max-width:750px){.hero:has(.home-hero-photo){grid-template-columns:1fr;height:auto}.home-hero-photo{height:202px}.home-hero-photo img{height:192px}}@media(max-width:560px){.hero:has(.hero-photo){grid-template-columns:1fr;height:auto}.hero-photo{height:214px}.hero-photo img{height:204px}}
