/* Platform-independent brand and controls; mobile refinements. */
button{color:inherit;-webkit-appearance:none;appearance:none}button.button{color:#fff}button.button.light,button.button.outline{color:var(--ink)}
.logo{gap:10px;flex-shrink:0;letter-spacing:0;line-height:1;color:var(--ink)}
.brand-symbol{width:42px;height:42px;display:block;flex-shrink:0;overflow:visible}
.brand-wordmark{display:flex;flex-direction:column;gap:7px;font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:19px;letter-spacing:2.6px;line-height:1}
.logo>.brand-wordmark>span{font-size:7.5px;letter-spacing:3.4px;line-height:1;margin:0;font-weight:700}
.ui-icon{width:1em;height:1em;display:inline-block;vertical-align:-.13em;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;overflow:visible;pointer-events:none}
.button .ui-icon{width:18px;height:18px}.round-arrow .ui-icon,.link-arrow .ui-icon{width:16px;height:16px}
.heart .ui-icon{width:20px;height:20px}.heart.saved .ui-icon{fill:currentColor}
.favorite-top{display:inline-flex;align-items:center;justify-content:center;line-height:1}.favorite-top .ui-icon{width:23px;height:23px;stroke-width:1.5}
.tracking>.ui-icon{width:19px;height:19px;vertical-align:middle;margin-right:6px}
#menu-toggle{padding:10px;line-height:1;color:var(--ink)}#menu-toggle>.ui-icon{width:23px;height:23px;stroke-width:1.8}
.announcement button,.close{display:inline-flex;align-items:center;justify-content:center;padding:10px;line-height:1;color:var(--ink)}.announcement button>.ui-icon,.close>.ui-icon{width:18px;height:18px}
.hero-bottom a .ui-icon{width:11px;height:11px;margin-left:3px}.brands .ui-icon{width:11px;height:11px}
header nav{min-width:0}.header-actions{flex-shrink:0}.hero-content{min-width:0}.hero-content h1{overflow-wrap:normal}
dialog{box-sizing:border-box}.close{z-index:2}.hero-content .eyebrow{line-height:1.7}.eyebrow:before{flex-shrink:0}
@media(min-width:851px) and (max-width:1250px){header{gap:22px;padding-left:3%;padding-right:3%}header nav{gap:14px;font-size:11px}.header-actions{gap:12px}.header-actions>.tracking{display:none}.logo .brand-symbol{width:36px;height:36px}.brand-wordmark{font-size:17px;letter-spacing:2px}.logo>.brand-wordmark>span{font-size:7px;letter-spacing:2.8px}}
@media(max-width:850px){
 header{height:72px;gap:12px;border-bottom:0;padding:0 max(18px,env(safe-area-inset-right)) 0 max(18px,env(safe-area-inset-left))}
 header .logo{gap:9px}.brand-symbol{width:35px;height:35px}.brand-wordmark{font-size:17px;letter-spacing:2.1px;gap:6px}.logo>.brand-wordmark>span{font-size:6.8px;letter-spacing:2.9px}
 .header-actions{gap:5px}.header-actions>.tracking{display:none}.favorite-top,#menu-toggle{width:44px;height:44px;min-width:44px}
 .favorite-top sup{display:grid;place-items:center;min-width:15px;height:15px;top:1px;right:1px;background:var(--paper);border-radius:10px;font-size:9px;font-weight:600;line-height:1;color:var(--ink)}
 header nav{top:72px;left:0;right:0;padding:16px 22px 28px;max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px);border-top:1px solid var(--line);overscroll-behavior:contain}header nav.open{max-height:calc(100dvh - 72px)}
 .nav-drop>button{font-size:14px}.mega{max-height:none;padding:12px 15px}.mega a{font-size:12px;min-height:44px}.mega b{font-size:11px}
 .hero{margin:0 12px;min-height:570px;border-radius:8px}.hero-content{padding:44px 28px 116px;width:100%}.hero-content h1{max-width:550px;font-size:clamp(40px,7.2vw,58px);letter-spacing:-2px;line-height:1.1;margin:25px 0 22px}.hero p{font-size:14px;line-height:1.8;max-width:390px;margin-bottom:27px}
 .hero-bottom{left:28px;right:28px;bottom:24px}.hero-bottom a{display:inline-flex;align-items:center;min-height:36px;font-size:10px;letter-spacing:.5px;white-space:nowrap}.hero-bottom div{gap:20px;flex-wrap:wrap}
 .hero:after{background:linear-gradient(90deg,rgba(7,20,22,.88),rgba(9,22,24,.38))}.hero-img{object-position:60% center}
 .button{min-height:50px;font-size:13px}.hero-content>.button{justify-content:space-between;min-width:260px;gap:20px}
 .search-panel{border-radius:0 0 8px 8px;padding:24px}.field label{font-size:11px}.field input,.field select{font-size:16px;min-height:48px}.search-top{gap:10px 16px}.search-top b{font-size:16px;line-height:1.5}.country-button{font-size:11px;min-height:40px}
 .section-heading p,.step p,.direction p,.content-card p{font-size:13px}.car h3{line-height:1.4}.link-arrow{white-space:normal;line-height:1.6}.consent{font-size:11px;line-height:1.7}.cookies p{font-size:12px}.cookies .button{min-height:44px}
 dialog{padding-top:42px;max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px)}.close{top:3px;right:3px;min-width:44px;min-height:44px}.gallery-modal{padding-top:42px}.zoom-photo{max-height:65vh;max-height:65dvh}
 .spec-table{gap:12px}.spec-table div{min-width:0;overflow-wrap:anywhere}.damage-map{flex-wrap:wrap}.request-layout .utility{min-width:0}
}
@media(max-width:520px){
 .announcement{min-height:32px;padding:7px 42px;font-size:10px;line-height:1.5}.announcement button{right:4px;top:0;min-height:32px;width:38px;padding:6px}
 .hero{min-height:555px}.hero-content{padding:38px 24px 110px}.hero-content .eyebrow{font-size:8px;letter-spacing:1.55px;max-width:290px}.hero-content h1{font-size:clamp(32px,9.45vw,48px);letter-spacing:-1.6px;line-height:1.12;margin-top:24px;margin-bottom:24px}.hero p{font-size:13px;line-height:1.85;max-width:295px;margin-bottom:28px}.hero-content>.button{width:100%;min-width:0;max-width:325px;min-height:52px;padding:15px 20px;font-size:12px}
 .hero-bottom{left:24px;right:24px;bottom:20px}.hero-bottom div{gap:14px}.hero-bottom a{font-size:9px;letter-spacing:.3px}.hero-bottom a .ui-icon{width:10px;height:10px;margin-left:2px}
 .search-panel{padding:23px 18px}.search-fields{gap:16px 12px}.search-top{gap:9px 13px}.search-top b{font-size:16px;letter-spacing:-.3px}.country-button{font-size:10px}.search-fields>.field:nth-child(4){min-width:0}
 section,.page{padding:44px 22px}.catalog-section{padding-top:0}.home-packages{padding-top:0}.section-heading{gap:10px;align-items:start;flex-wrap:wrap}.section-heading h2{font-size:28px;letter-spacing:-1px;line-height:1.2}.section-heading .link-arrow{margin:0 0 10px;font-size:11px}.brands small{letter-spacing:0;font-size:8px}.brands button{font-size:15px}
 .consult{padding:36px 24px}.consult h2{font-size:31px;line-height:1.15}.consult p{font-size:13px}.lead-form{gap:16px}.lead-form input,.lead-form select{min-height:50px}.country-faq{padding-top:14px}.category-copy h2{font-size:26px}.page h1{font-size:32px;line-height:1.15;letter-spacing:-1px;overflow-wrap:anywhere}.page-intro{font-size:13px;line-height:1.85}
 .footer-top .logo{gap:9px}.footer-grid a,.footer-grid p{font-size:12px;line-height:2.4}.footer-top .button{width:100%}.footer-bottom{font-size:10px}.footer-grid{column-gap:24px}
}
@media(max-width:360px){
 header{padding-left:14px;padding-right:14px;gap:8px}.header-actions{gap:0}.brand-symbol{width:31px;height:31px}.brand-wordmark{font-size:15px;letter-spacing:1.9px}.logo>.brand-wordmark>span{font-size:6px;letter-spacing:2.6px}.logo{gap:7px}
 .hero-content{padding-left:20px;padding-right:20px}.hero-content h1{font-size:32px;letter-spacing:-1.5px}.hero-content .eyebrow{font-size:7px;letter-spacing:1.2px}.hero-bottom{left:20px;right:20px}.hero-bottom div{gap:10px}.hero-bottom a{font-size:8px}.search-panel{padding-left:16px;padding-right:16px}.country-button{font-size:9px}.search-top{gap:6px 11px}section,.page{padding-left:18px;padding-right:18px}.brands button{font-size:13px}
}
@media(max-height:500px) and (max-width:850px){.hero{min-height:500px}.hero-content{padding-top:35px}.hero-content h1{font-size:40px}.hero p{font-size:12px}dialog{max-height:calc(100dvh - 20px)}}
