/* Mobile layout review v120. Desktop remains unchanged. */
@media(max-width:760px){
 body .guide-page{min-width:0}
 body.guide-page .guide-overview{grid-template-columns:1fr;gap:12px;margin-bottom:24px}
 body.guide-page .guide-overview>div{display:grid;grid-template-columns:86px minmax(0,1fr);grid-template-rows:auto auto;column-gap:18px;row-gap:4px;text-align:left;align-items:center;padding:22px 20px;border-radius:20px}
 body.guide-page .guide-overview .benefit-icon{grid-row:1/3;width:82px;height:82px;margin:0;position:relative}
 body.guide-page .guide-overview strong{font-size:18px;line-height:1.5;align-self:end}
 body.guide-page .guide-overview p{font-size:14px;line-height:1.65;margin:0;max-width:none;align-self:start;word-break:keep-all}
 body.guide-page .guide-overview p br{display:none}
 .home-numbers{grid-template-columns:1fr;gap:0;margin:12px auto 24px;padding:0 12px}
 .home-numbers article{grid-template-columns:100px minmax(0,1fr);grid-template-rows:auto auto;column-gap:24px;row-gap:3px;justify-items:start;padding:22px 16px;border-bottom:1px solid #ededf2}
 .home-numbers article:last-child{border-bottom:0}
 .home-numbers .metric-icon{grid-row:1/3;width:120px;height:96px;transform:scale(.8);transform-origin:left center}
 .home-numbers strong{font-size:42px;align-self:end;line-height:1.15}
 .home-numbers strong span{font-size:19px}
 .home-numbers h3{font-size:15px;line-height:1.6;align-self:start}
 .home-steps{grid-template-columns:1fr;gap:12px}
 .home-steps article{display:grid;grid-template-columns:86px minmax(0,1fr);column-gap:18px;padding:22px}
 .home-steps article>div{grid-row:1/3;flex-direction:column;justify-content:center;gap:8px}
 .home-steps article:after{display:none!important}
 .home-steps h3{margin:8px 0 6px;font-size:18px}.home-steps p{margin:0;font-size:14px;line-height:1.7}
 .home-steps article>div>span{font-size:32px}
 .home-heading h2,#services .home-heading h2,#consult .home-heading h2{font-size:26px!important;line-height:1.45!important;word-break:keep-all}
 .home-heading p{font-size:14px;word-break:keep-all}
 .review-compact{width:calc(100vw - 64px);flex-basis:calc(100vw - 64px);height:350px;grid-template-columns:1fr;grid-template-rows:32px 84px minmax(0,1fr);gap:12px;padding:16px}
 .review-card-top{grid-column:auto}.review-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;align-items:center}.review-photo-grid img{width:100%;height:auto;aspect-ratio:1}.review-fulltext p{font-size:14px;line-height:1.7}
 body .compact-footer .footer-grid{grid-template-columns:1fr;gap:24px}
 body .compact-footer .footer-column a{min-height:32px;display:flex;align-items:center}
 body .compact-footer .footer-column p{line-height:1.7}
 input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px!important;max-width:100%;box-sizing:border-box}
 .scope-grid,.info-grid,.booking-track,.process-grid,.service-cards{grid-template-columns:1fr!important}
 .approval-flow{flex-wrap:wrap;line-height:1.7}
}
@media(max-width:520px){
 body .service-nav{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:12px 8px;padding:14px 12px}
 body .service-nav .nav-menu{grid-column:1/-1;order:3;display:flex;flex-wrap:wrap;justify-content:center;gap:2px;width:100%;overflow:visible}
 body .service-nav .nav-menu a{min-height:40px;display:flex;align-items:center;padding:8px;font-size:12px;box-sizing:border-box}
 body .service-nav .nav-quote{font-size:12px;gap:6px;padding-left:9px;margin:0;min-height:44px}
 body .service-nav .nav-quote>span,body .service-nav .nav-quote .quote-speed{font-size:12px}
 body .service-nav .nav-logo{width:108px;height:24px}body .service-nav .nav-logo img{width:153px;height:153px;left:-22px;top:-65.5px}
 body .service-nav .nav-quote b{width:24px;height:24px}
 .floating-quote{max-width:calc(100vw - 24px)}
 .brand-closing{padding:30px 20px!important}.brand-closing h2{font-size:24px!important;word-break:keep-all}
}
@media(max-width:360px){body .service-nav .nav-logo{width:90px;height:21px}body .service-nav .nav-logo img{width:128px;height:128px;left:-18px;top:-55px}body.guide-page .guide-overview>div{padding:18px 14px;grid-template-columns:72px minmax(0,1fr);column-gap:12px}body.guide-page .guide-overview .benefit-icon{width:70px;height:70px}body.guide-page .guide-overview strong{font-size:16px}.home-numbers article{column-gap:12px;padding-left:0;padding-right:0}.home-numbers strong{font-size:38px}}

@media(max-width:760px){
 body.guide-page .guide-overview>div:nth-child(n){display:grid;grid-template-columns:86px minmax(0,1fr);grid-template-rows:auto auto;column-gap:18px;row-gap:4px;text-align:left;align-items:center;padding:22px 20px}
 body.guide-page .guide-overview .benefit-icon{grid-column:1;grid-row:1/3}
 body.guide-page .guide-overview strong{grid-column:2;grid-row:1}
 body.guide-page .guide-overview p{grid-column:2;grid-row:2}
 body.guide-page .guide-overview p br{display:initial}body.guide-page .guide-overview p br:after{content:' '}
 body .home-steps article{padding:22px;align-items:center}body .home-steps h3{align-self:end}body .home-steps p{align-self:start}body .home-steps article>div>span{font-size:32px;line-height:1}
 .comparison-grid{grid-template-columns:1fr!important}
}

@media(max-width:760px){#consult .home-steps article>div{height:auto;min-height:100px}#consult .home-steps article>div>span{font-size:30px}#consult .home-steps h3{margin:0 0 8px;font-size:18px}#consult .home-steps p{font-size:14px}.step-guide{min-width:0}.step-guide-copy{min-width:0;overflow-wrap:anywhere}.step-guide-copy strong,.step-guide-copy p,.step-guide-copy span{white-space:normal!important;word-break:keep-all}}
@media(max-width:760px){.choice{min-width:0!important;overflow-wrap:anywhere}.choice strong{white-space:normal!important;word-break:keep-all}.choices{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v125: centered single-column mobile presentation */
@media(max-width:760px){
body.guide-page .guide-overview>div:nth-child(n){display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:24px 20px}
body.guide-page .guide-overview strong,body.guide-page .guide-overview p{align-self:center;text-align:center}
body.guide-page .guide-overview .benefit-icon{margin:0 auto 4px}
.home-numbers article{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:24px 16px}
.home-numbers .metric-icon{transform:scale(.8);transform-origin:center}.home-numbers strong,.home-numbers h3{align-self:center;text-align:center}
#consult .home-steps article{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:24px}
#consult .home-steps article>div{display:flex;flex-direction:column;align-items:center;height:auto;min-height:0;gap:12px}
#consult .home-steps h3,#consult .home-steps p{align-self:center;text-align:center;margin:0}
.home-service{align-items:center;text-align:center}.home-service .service-bottom{width:100%;flex-direction:column;align-items:center;gap:12px}.home-service .service-link{margin-left:0}
.home-cases .compare-caption{text-align:center}.home-cases .compare-caption>div{justify-content:center}
.service-cards .service-card{text-align:center;justify-items:center}.service-cards .card-art{margin-left:auto;margin-right:auto}.service-cards .card-action{justify-content:center}
.scope-grid article,.info-grid article,.booking-track article,.process-grid article{text-align:center}.room-heading,.process-top{justify-content:center}
body .compact-footer .footer-grid{text-align:center;justify-items:center}body .compact-footer .footer-identity img{margin:auto}body .compact-footer .footer-slogan{text-align:center;margin-left:auto;margin-right:auto}body .compact-footer .footer-column{align-items:center}body .compact-footer .footer-copyright{text-align:center}
}
@media(max-width:760px){body .home-heading,body .home-heading>div{text-align:center!important;align-items:center!important}body .home-heading>a,body .home-text-link{display:table!important;margin:16px auto 0!important;float:none!important;position:static!important;text-align:center!important}body .compare-caption{display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:10px}body .compare-caption h2{margin:0!important}body .compare-caption>div{display:flex;justify-content:center;flex-wrap:wrap;gap:5px}body .home-caption,body .angle-note{text-align:center!important}}
@media(max-width:760px){body #reviews .review-window{padding:10px 14px 18px}body #reviews .review-compact{width:calc(100vw - 84px);flex-basis:calc(100vw - 84px);max-width:370px;height:auto;min-height:250px;grid-template-columns:minmax(0,1fr);grid-template-rows:32px auto auto;gap:14px;padding:16px;border-radius:18px;align-self:center}body #reviews .review-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;align-content:start}body #reviews .review-photo-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}body #reviews .review-fulltext{max-height:170px;min-height:70px;padding:0 2px;overflow-y:auto}body #reviews .review-fulltext p{font-size:14px;line-height:1.75;word-break:normal}body #reviews .review-card-top{min-width:0;gap:8px}body #reviews .review-card-top strong{font-size:13px}body #reviews .review-rating{flex-shrink:0}body #reviews.home-reviews{padding-bottom:12px!important}}
/* v126: visually grouped form headings on desktop and mobile */
body #content .step-heading,body .dedicated-step-heading{justify-content:flex-start;gap:22px;flex-wrap:nowrap;align-items:center}
body #content .step-heading>div{flex-basis:auto;flex:1}
body #content .step-heading>.step-art,body .dedicated-step-heading>.wizard-art{order:-1;flex-shrink:0;margin:0!important}
body .dedicated-step-heading>.wizard-art{width:96px;height:96px;flex-basis:96px}
@media(max-width:760px){body #content .step-heading,body .dedicated-step-heading{flex-direction:column;justify-content:center;align-items:center;gap:16px;text-align:center;margin-bottom:14px}body #content .step-heading>.step-art{order:-1;transform:scale(1.2);margin:12px auto!important}body #content .step-heading .art-new-5.step-art{width:120px!important;height:112px!important}body .dedicated-step-heading>.wizard-art{width:108px;height:108px;flex-basis:108px;margin:0 auto!important}body #content .step-heading h2,body .dedicated-step-heading h2{font-size:24px!important;line-height:1.45;word-break:keep-all;margin:8px 0!important}body #content .step-heading+.desc,body .dedicated-step-desc{text-align:center;margin-bottom:24px}body #content .step-guide{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:22px 18px}body #content .step-guide .guide-art{margin:auto;transform:scale(1.1)}body #content .step-guide-copy{text-align:center}body #content .step-guide-copy span{display:block;margin-top:8px}}
@media(max-width:760px){body .service-nav{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding-top:18px;padding-bottom:12px}body .service-nav .nav-quote{display:none!important}body .service-nav .nav-brand{margin:0 auto}body .service-nav .nav-menu{margin:0;justify-content:center;width:100%;flex-wrap:wrap}}
/* v128 area control: preserve readable numeric display */
body .size-number{display:flex;align-items:center;justify-content:center;gap:8px;margin:18px auto 8px;max-width:100%;min-width:0}
body .size-number #sizeNumber{flex:0 1 180px;width:180px;max-width:calc(100% - 80px);min-width:0;height:72px;min-height:72px;padding:0 4px;font-family:Montserrat,Pretendard,sans-serif;font-size:48px!important;font-weight:800;line-height:1.25;letter-spacing:-1px;text-align:right;border:0;background:transparent;box-sizing:border-box}
body .size-number #sizeUnit{flex:0 0 66px;width:66px;min-width:66px;height:48px;min-height:48px;padding:0 4px;font-size:22px!important;font-weight:700;line-height:1.3;border:0;background-color:transparent}
body .size-panel #converted{margin:0 0 26px;line-height:1.5}body .size-panel #sizeRange{display:block;margin:14px 0 0;min-width:0;width:100%;box-sizing:border-box}body .size-panel .size-help{line-height:1.7;word-break:keep-all}
body .size-number #sizeNumber{field-sizing:content;flex:0 1 auto;width:auto;min-width:2ch;max-width:calc(100% - 74px);text-align:center}
/* v129 shared mobile gutters and larger navigation */
@media(max-width:760px){body{margin:0}body .service-nav{width:100%;max-width:none;box-sizing:border-box;padding-left:20px!important;padding-right:20px!important}body .service-nav .nav-menu{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:2px;min-width:0}body .service-nav .nav-menu a{font-size:clamp(12px,3.5vw,17px);padding:10px 3px;white-space:nowrap;flex:0 1 auto;justify-content:center;letter-spacing:-.6px}body main.material-main,body main.service-main,body main.quote-choice,body .layout>main{box-sizing:border-box;width:100%;max-width:100%;margin-left:auto!important;margin-right:auto!important;padding-left:20px!important;padding-right:20px!important}body .layout{width:100%;max-width:100%;margin-left:0;margin-right:0}body .landing-footer.compact-footer{padding-left:20px!important;padding-right:20px!important}}
/* v130 shared photo upload alignment, desktop and mobile */
body .upload,body .site-upload{ text-align:center!important }
body .upload{display:flex!important;flex-direction:column;align-items:center!important;justify-content:center;gap:8px}
body .upload small{display:block;text-align:center!important}
body .upload input[type=file],body .site-upload input[type=file]{display:block!important;width:min(100%,300px)!important;max-width:100%;box-sizing:border-box;margin:8px auto 0!important;padding:0!important;font-size:13px!important;text-align:center}
body .site-upload>p,body #site-photo-error{text-align:center!important}
/* v131 breathing room inside active navigation */
body .service-nav .nav-menu a[aria-current=page]{padding-left:14px!important;padding-right:14px!important}
@media(max-width:760px){body .service-nav .nav-menu{gap:2px}body .service-nav .nav-menu a{font-size:clamp(11px,3.35vw,17px);letter-spacing:-.7px}body .service-nav .nav-menu a[aria-current=page]{padding-left:12px!important;padding-right:12px!important}}
body .upload{position:relative}body .upload input.centered-file-input[type=file]{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;opacity:0;overflow:hidden;clip-path:inset(50%)}body .upload .file-display{display:flex;justify-content:center;align-items:center;gap:12px;width:100%;margin:8px auto 0;text-align:center;flex-wrap:wrap;font-size:14px}body .upload .file-display-button{background:#eeedf6;color:#1c1952;padding:12px 16px;border-radius:9px;white-space:nowrap}body .upload .file-display-name{color:#1c1952;white-space:nowrap}body .upload:focus-within .file-display-button{outline:2px solid #1c1952;outline-offset:3px}
body .filters{display:flex!important;flex-wrap:wrap;justify-content:center!important;align-items:center;gap:8px;width:100%;box-sizing:border-box;margin-left:auto!important;margin-right:auto!important}
@media(pointer:coarse){body #reviews .review-window{overflow-x:auto!important;touch-action:pan-x pan-y!important;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;overscroll-behavior-x:contain}body #reviews .review-compact{scroll-snap-align:center}body #reviews .review-fulltext{touch-action:pan-x pan-y!important}body #reviews .review-set[aria-hidden=true]{display:none!important}}
/* v134 calendar controls */
body .calendar-head{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px}body .calendar-head>strong{grid-column:2;grid-row:1;text-align:center;white-space:nowrap;font-size:18px}body .calendar-head>div{display:contents}body .calendar-head button{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0;font-size:28px;line-height:1;grid-row:1}body .calendar-head button:first-child{grid-column:1}body .calendar-head button:last-child{grid-column:3}
body .choices-service .choice:last-child{justify-content:center!important;align-items:center!important;text-align:center!important}body .choices-service .choice:last-child>div{flex:0 1 auto!important;text-align:center!important}
body #count{display:none!important}body .filters+.angle-note{text-align:center!important;margin:16px auto 24px!important;width:100%;line-height:1.6}
body .filters button img{width:28px;height:28px;object-fit:contain}body .filters .filter-cabinet{display:inline-block;flex-shrink:0;width:21px;height:28px;background-image:url('assets/storage-icons-lossless.webp');background-size:376.47059% 278.26087%;background-position:49.46809% 13.41463%;vertical-align:middle}
