/* Shared phone layout. Brand and content are preserved; spacing and controls adapt. */
@media(max-width:600px){
 html{scroll-padding-bottom:100px}body{font-size:17px;overflow-wrap:break-word}input,textarea,select{font-size:17px!important;max-width:100%}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}img,svg{max-width:100%}
 .wrap,.shell{width:calc(100% - 32px);margin-inline:auto}.test-environment-banner{padding:8px 16px!important;font-size:14px!important;line-height:1.5!important}body:has(>.test-environment-banner)>.prototype-bar{display:none}
 .site-header.shell{min-height:72px;padding-block:14px;gap:12px;align-items:center}.site-header .brand{font-size:27px;gap:8px}.site-header .brand img{width:31px;height:31px}.header-links{gap:8px!important}.header-links #account-entry{min-height:44px;font-size:16px;padding:10px 12px}.header-links [data-info=how],.header-links>a[href="/ohje"]{display:none}
 .step-nav{padding-block:10px;margin-bottom:0}.step-nav ol{gap:9px}.step-link{gap:6px;font-size:14px;min-height:40px}.step-index{width:26px;height:26px}.existing-offer-entry{padding:10px 16px;margin:0;text-align:center;font-size:16px;line-height:1.5}body:has(.step-nav:not([hidden])) .existing-offer-entry{display:none}
 .flow{padding-block:22px 40px}.page-heading,.page-heading.companies-heading,.page-heading.form-heading{margin:0 0 24px}.page-heading h1{font-size:35px!important;line-height:1.12!important;letter-spacing:-1px!important}.page-heading p{font-size:17px!important;line-height:1.6!important;margin-top:14px!important}.page-heading .eyebrow{font-size:13px!important;margin-top:0!important;margin-bottom:12px!important}.home-heading{padding-top:0}.audience-switch{margin:18px auto 12px}.audience-switch button{font-size:16px;min-height:46px}.trust-lead{font-size:15px;margin:12px auto 18px!important;min-height:44px}
 .category-grid,.category-grid[data-audience=housing]{grid-template-columns:1fr!important;grid-auto-rows:1fr;gap:12px}.category-grid .category-button.category-text{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:14px;row-gap:0;min-height:0;height:100%;padding:18px 18px 0;border-radius:18px;box-shadow:0 4px 16px #20201e08;text-align:left}.category-button.category-text>.service-icon{width:30px;height:30px;margin:3px 0 0}.category-button.category-text>.category-copy{margin-bottom:16px}.category-button.category-text .category-copy strong{font-size:23px;line-height:1.25;min-height:0}.category-button.category-text .category-copy small{font-size:16px;line-height:1.5;margin-top:6px}.category-button.category-text>.category-action{grid-column:1/-1;width:calc(100% + 36px);margin:0 -18px;min-height:48px;padding:10px 18px;font-size:16px}.category-action>span{width:25px;height:25px;font-size:19px}
 .area-summary{padding:14px 16px;border-radius:16px;gap:7px;margin-bottom:12px}.area-summary p{font-size:17px;line-height:1.5}.area-summary .area-subtitle{display:none}.area-summary .text-link{font-size:16px;min-height:40px;padding:6px 0}.postcode-search{gap:14px}.postcode-search input{font-size:24px!important}.form-help{font-size:16px;line-height:1.6}.example-note{font-size:15px!important;line-height:1.55!important;padding:13px 15px!important;margin-block:14px!important}.selection-toolbar{font-size:16px;margin-top:16px}.selection-hint{font-size:16px;margin-block:12px}
 .company-grid{grid-template-columns:1fr;gap:14px;grid-auto-rows:auto}.company-grid .company-card{min-height:0;border-radius:18px}.company-grid .company-choice{padding:18px 18px 12px;min-height:0;gap:10px}.company-grid .company-monogram{width:28px;height:28px;font-size:18px}.company-grid .company-text strong{font-size:25px;line-height:1.2}.company-grid .company-text small{font-size:16px;line-height:1.5;margin-top:8px}.company-grid .company-text .company-area{font-size:15px!important;line-height:1.5!important}.company-grid .company-actions{margin:0 18px 12px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.company-grid .company-actions .text-link{font-size:15px;line-height:1.5;min-height:46px;padding:8px 0}.company-select-action{min-height:54px;padding:12px 18px;font-size:17px}.company-select-icon{width:27px;height:27px;font-size:21px}.company-note{font-size:16px;line-height:1.6}
 .sticky-actions{padding:10px 0 max(10px,env(safe-area-inset-bottom));backdrop-filter:blur(12px)}.sticky-actions .action-row{gap:10px}.sticky-actions .back-button{font-size:15px;padding:8px 0;min-height:48px}.selection-bottom{gap:12px}.selection-count{font-size:15px;white-space:nowrap}.sticky-actions .primary-button{font-size:16px;padding:12px 18px;min-height:50px;gap:9px}.simple-promise{padding-block:26px}.simple-promise p{font-size:23px}.simple-promise span{font-size:17px}.site-footer{padding-block:24px;gap:12px}.site-footer>div{gap:4px 18px;justify-content:flex-start}.site-footer a,.site-footer button{font-size:16px;min-height:44px}
 .selected-home .hero{padding-top:30px;padding-bottom:22px}.selected-home .hero h1{font-size:43px;line-height:1.06;letter-spacing:-1.6px}.selected-home .hero p{font-size:18px;line-height:1.6;margin-top:18px}.selected-home .role-section{padding-top:12px}.selected-home .role-section .roles{grid-auto-rows:auto;gap:14px}.selected-home .role-section .role{min-height:0;padding:21px 22px 0;border-radius:18px}.selected-home .role-section .role h3{font-size:31px;margin-top:12px}.selected-home .role-section .role p{font-size:17px;line-height:1.6;margin:13px 0 20px}.selected-home .role-section .role-action{min-height:58px;margin-inline:-22px;padding:12px 20px;font-size:17px}.selected-home .role-section .role-action>span{width:28px;height:28px;font-size:22px}.home-timeline{padding-block:30px}.partner-check-line{padding:21px 19px}.partner-check-line h2{font-size:27px}
 .account-shell{padding-inline:16px;margin-top:25px}.account-card{padding:21px 18px}.account-shell h1{font-size:36px}.shell.thread{padding-inline:0}header:has(.site-brand){flex-wrap:wrap;gap:10px;padding:16px}header .site-brand strong{font-size:27px}header nav{gap:6px 16px;font-size:16px;flex-wrap:wrap}.next-step{padding:18px!important}.next-step h2{font-size:26px}.next-step p{font-size:17px;line-height:1.6}.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
}
@media(max-width:360px){.page-heading h1{font-size:32px!important}.step-link{font-size:13px}.company-grid .company-text strong{font-size:23px}.sticky-actions .primary-button{padding-inline:13px}.selection-bottom{gap:8px}}
.mobile-home-title,.mobile-home-lead{display:none}@media(max-width:600px){.desktop-home-title,.desktop-home-lead{display:none}.mobile-home-title,.mobile-home-lead{display:inline}.existing-offer-entry{display:none}.home-heading h1{font-size:38px!important}.home-heading p{font-size:17px!important}.page-heading.home-heading{margin-bottom:18px}.home-heading{padding-top:0!important}}

.company-quality{display:flex;align-items:center;gap:18px}#comparison-table th:first-child{position:sticky;left:0;background:#fff7ef;z-index:1;min-width:140px}#comparison-table td{min-width:210px}#admin-revenue details{margin:24px 0}.rating-taps{display:flex;gap:8px}.rating-taps label{position:relative}.rating-taps input{position:absolute;opacity:0}.rating-taps span{display:grid;place-items:center;min-width:48px;min-height:48px;border:1px solid #ddd;border-radius:10px}.rating-taps input:checked+span{background:#c34716;color:#fff}.rating-taps input:focus-visible+span{outline:3px solid #20201e;outline-offset:3px}@media(max-width:700px){#comparison-table th:first-child{min-width:110px}#comparison-table td{min-width:170px}#admin-revenue .grid{grid-template-columns:1fr}}

@media(max-width:700px){#comparison-table.pair-view table,#comparison-table.pair-view thead,#comparison-table.pair-view tbody{display:block;width:100%}#comparison-table.pair-view tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#comparison-table.pair-view th,#comparison-table.pair-view td{min-width:0!important;width:auto!important;max-width:none!important;white-space:normal!important;overflow-wrap:anywhere;padding:12px 10px;box-sizing:border-box}#comparison-table.pair-view tbody th:first-child{grid-column:1/-1;position:static;background:#fff5ec}#comparison-table.pair-view thead th:first-child{display:none}#comparison-table.pair-view thead th{position:static;font-size:16px}#comparison-table.pair-view td{vertical-align:top;font-size:15px}#comparison-table th:first-child{white-space:normal;width:110px;max-width:150px}}
