/* Readable type at normal browser zoom, including compact mobile layouts. */
body{font-size:17px;--muted:#4c5d64}
.eyebrow,.hero .eyebrow,.section-head .eyebrow,.tech-copy .eyebrow{font-size:14px;letter-spacing:1.3px;line-height:1.7}
.brand i{font-size:10px;letter-spacing:1.6px}
.header .nav-section,.header .nav-cta{font-size:15px}
.hero-description{font-size:19px;line-height:1.8}
.hero-equipment-list{font-size:17px;line-height:1.7;max-width:570px;gap:10px 20px}
.hero-rental-period{font-size:16px;color:#c4d2d7;line-height:1.75;max-width:530px}
.hero-actions{gap:28px;flex-wrap:wrap}
.button,.text-link,.tech-copy .text-link{font-size:16px}
.button{min-height:50px;padding:15px 23px}
.hero-notes{font-size:14px;color:#c0ced3;flex-wrap:wrap;gap:10px 25px}
.instrument-label{font-size:14px;letter-spacing:1px;color:#e0e8eb;top:28px;right:0;line-height:1.7;max-width:100%;text-align:center}
.instrument-label .dot{width:7px;height:7px}
.technical-note{font-size:12px;color:#c2d0d7;letter-spacing:.6px;bottom:3px}
.product-caption>span{font-size:13px;letter-spacing:1px}
.product-caption strong span{font-size:14px;color:#d2dce0;letter-spacing:.6px}
.hero-bottom{font-size:13px;color:#c2d0d7;letter-spacing:.8px;gap:20px;line-height:1.7}
.trust-strip p{font-size:16px}
.period{font-size:13px;letter-spacing:.5px}
.section-head>p{font-size:17px;line-height:1.8;max-width:440px}
.catalog-controls{align-items:flex-start;gap:18px;flex-wrap:wrap;overflow:visible}
.filters{gap:12px 25px;flex-wrap:wrap}
.filters button{font-size:16px;min-height:52px;color:#4c6068;padding:12px 0;font-weight:500}
.filters button.active{font-weight:700}
.filters span{font-size:14px;color:#536872;margin-left:9px}
.catalog-note{font-size:13px;letter-spacing:.5px;color:#526872;padding:15px 0;line-height:1.7}
.product-image{height:265px}
.product-image img{height:205px}
.product .product-type{font-size:12px!important;color:#3f584d;background:#f1f5efdd;letter-spacing:.7px}
.product-number{font-size:13px;color:#52695e}
.product-brand{font-size:13px;color:#526b5c;letter-spacing:1px}
.product h3{font-size:28px}
.product-description{font-size:16px;line-height:1.7;min-height:82px}
.tags span{font-size:13px;padding:5px 9px;line-height:1.6}
.product-footer{gap:15px;flex-wrap:wrap}
.detail-button{font-size:14px;min-height:40px}
.quote-product{font-size:15px;min-height:40px}
.fine-print{font-size:14px;color:#53635c;line-height:1.8}
.photo-reference{position:absolute;bottom:0;left:0;right:0;padding:6px 10px;background:#e2e9dfef;color:#405749;font-size:13px;line-height:1.5;text-align:center;z-index:2}
.product-image:has(.photo-reference) img{height:190px;margin-bottom:20px}
.photo-reference-dialog{font-size:15px;line-height:1.7;padding:12px 15px;background:#edf2e8;border-radius:4px;color:#405749}
.tech-photo>span{font-size:14px;letter-spacing:1px}
.tech-copy>p:not(.eyebrow){font-size:17px;line-height:1.8}
.tech-tabs{gap:14px 25px;flex-wrap:wrap}
.tech-tabs button{font-size:14px;line-height:1.7;min-height:48px;color:#c1d1d8}
#tech-description{font-size:16px;line-height:1.8;color:#c7d4da;min-height:185px}
#tech-description h3{font-size:22px;line-height:1.5}
.steps h3{font-size:23px}
.steps p{font-size:17px;line-height:1.8}
.conditions-heading .eyebrow{font-size:13px;letter-spacing:1px}
.conditions-heading>p:last-child{font-size:16px;line-height:1.8;color:#485e48}
.conditions-list h4{font-size:17px;line-height:1.5}
.conditions-list p{font-size:15px;line-height:1.8;color:#485e48}
.condition-icon{font-size:12px;width:32px;height:32px}
.rental-conditions{grid-template-columns:.8fr 1.7fr;gap:32px}
.quote-copy>p,.location{font-size:17px!important;line-height:1.8}
.contact-line{font-size:21px;overflow-wrap:anywhere}
.contact-line span{font-size:13px;letter-spacing:1px}
form>p{font-size:16px}
legend,form label{font-size:15px}
.equipment-choices label{font-size:14px;padding:10px 8px;line-height:1.5}
.equipment-choices input{width:16px;height:16px;flex-shrink:0}
input:not([type=checkbox]),textarea,select{font-size:16px;min-height:48px;line-height:1.5;padding:12px}
.conditions-form-link{font-size:15px;line-height:1.7}
.form-note,#form-status,#email-fallback{font-size:14px;line-height:1.8}
.whatsapp-button,#copy-message{font-size:16px;min-height:48px}
.faq summary{font-size:18px;line-height:1.6}
.faq details p{font-size:17px;line-height:1.8}
.footer-top p{font-size:16px}
.footer-top>a:last-child,.footer-bottom,.footer-bottom>span:last-child{font-size:13px;line-height:1.8;letter-spacing:.4px}
.dialog-body{font-size:17px;line-height:1.8}
.dialog-body a.source{font-size:15px}
@media(max-width:1100px) and (min-width:761px){
 .header .nav-section,.header .nav-cta{font-size:14px;padding-left:13px;padding-right:13px}
 .header{padding-left:3%;padding-right:3%}
 .brand{font-size:28px}
 .brand i{font-size:9px}
 .instrument-label{font-size:13px;letter-spacing:.5px}
 .technical-note{font-size:11px}
 .trust-strip{gap:25px;flex-wrap:wrap}
 .rental-conditions{grid-template-columns:1fr;gap:28px}
 .conditions-heading>p:last-child{max-width:660px}
 .hero-equipment-list{font-size:16px}
 .equipment-choices{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
 .header{padding-top:20px;padding-bottom:16px}
 .header .nav-section{font-size:14px;padding:10px 7px}
 .header .nav-cta{font-size:13px;padding:8px 8px 8px 13px;gap:10px;top:21px}
 .brand i{font-size:9px;letter-spacing:1px}
 .eyebrow,.hero .eyebrow,.section-head .eyebrow,.tech-copy .eyebrow{font-size:13px;letter-spacing:1px}
 .hero-description{font-size:18px}
 .hero-equipment-list{font-size:16px;max-width:100%;gap:9px 17px}
 .hero-rental-period{font-size:15px;max-width:100%}
 .hero-actions{gap:19px;margin-top:27px}
 .hero-actions .text-link{font-size:16px}
 .hero-notes{font-size:14px;margin-top:28px}
 .hero-copy{padding-bottom:10px}
 .hero-product{height:450px}
 .hero-product>img{height:270px}
 .instrument-label{font-size:13px;letter-spacing:.5px;top:20px;left:0;right:0}
 .technical-note{font-size:11px;letter-spacing:.2px;left:0;right:0;text-align:center;bottom:8px}
 .product-caption{bottom:45px;left:10px;right:10px}
 .product-caption strong span{font-size:13px}
 .hero-bottom{font-size:12px;flex-direction:column;gap:7px;letter-spacing:.5px}
 .trust-strip>p{font-size:16px}
 .period{font-size:12px}
 .section-head>p{font-size:17px;margin-top:20px}
 .catalog-controls{overflow:visible;display:block}
 .filters{gap:4px 19px;flex-wrap:wrap}
 .filters button{font-size:16px;white-space:normal;text-align:left;min-height:48px}
 .filters span{font-size:13px;margin-left:7px}
 .catalog-note{display:block;font-size:13px;padding:13px 0}
 .products{grid-template-columns:1fr;gap:22px}
 .product-image{height:260px}
 .product-image img{height:205px;width:85%}
 .product .product-type{font-size:12px!important;top:13px!important;left:13px!important}
 .product-number{font-size:13px;top:17px;right:14px}
 .product-body{padding:23px}
 .product h3{font-size:28px}
 .product-description{font-size:16px;min-height:0}
 .product-footer{display:flex;align-items:center;justify-content:space-between;margin-top:20px}
 .quote-product{margin:0;font-size:15px}
 .detail-button{font-size:14px}
 .tags span{font-size:13px;padding:5px 9px}
 .fine-print{font-size:14px}
 .tech-copy>p:not(.eyebrow){font-size:17px}
 .tech-tabs{gap:8px 18px;flex-wrap:wrap}
 .tech-tabs button{font-size:14px}
 #tech-description{font-size:16px;min-height:0;margin-bottom:22px}
 #tech-description h3{font-size:21px}
 .tech-copy .text-link{font-size:16px}
 .conditions-heading .eyebrow{font-size:13px}
 .conditions-heading>p:last-child{font-size:16px}
 .rental-conditions{grid-template-columns:1fr;padding:24px;gap:26px}
 .conditions-list h4{font-size:18px}
 .conditions-list p{font-size:16px}
 .conditions-list{gap:25px}
 form{padding:24px}
 .form-row{grid-template-columns:1fr;gap:0}
 .equipment-choices label{font-size:14px;padding:10px 7px}
 .conditions-form-link{font-size:14px}
 .contact-line{font-size:20px}
 .faq summary{font-size:17px}
 .footer-top{gap:25px}
 .footer-top p{font-size:16px}
 .footer-top>a:last-child,.footer-bottom,.footer-bottom>span:last-child{font-size:13px}
 .submit{font-size:16px;gap:12px}
}
.product-image:has(.photo-reference) img{width:95%;height:220px;object-fit:cover;object-position:center;margin-bottom:20px}
@media(max-width:420px){.header .brand i{display:none}.header .brand{font-size:25px;padding-left:33px}.header .brand-symbol{font-size:34px}.header .nav-cta{font-size:13px}}
