/* Shared readable type scale. Original Jost family and heading hierarchy are retained. */
body.v4-site{--v4-type-body:16px;--v4-type-small:14px;--v4-type-meta:13px;font-size:16px;line-height:1.7;color:#c3d7e5}
body.v4-site :is(p,.hero-subtitle,.hero-description,.section-description,.section-subtitle,.article-summary,.article-content,.rich-content,.message-text){font-size:16px!important;line-height:1.8!important;color:#b4cbdb}
body.v4-site :is(.eyebrow,.section-label,.hero-label,.article-meta,.article-category,.article-date,.article-views,.breadcrumb,.message-time,.product-pagination-info){font-size:13px!important;line-height:1.6!important;color:#a4c0d3}
body.v4-site :is(.btn,.button,.submit-btn,.contact-tab,.text-link,.pagination-btn,.page-number,.category-button,.file-upload-btn){font-size:14px!important;line-height:1.5!important}
body.v4-site :is(input,textarea,select){font-size:16px!important;line-height:1.5}
body.v4-site :is(.form-group label,.form-label){font-size:16px!important;line-height:1.5!important;color:#c7dce9}
body.v4-site :is(.footer p,.footer a,.footer .text-link,.copyright,.footer .copyright span,.v4-footer-link){font-size:14px!important;line-height:1.7!important}
body.v4-site .footer h4{font-size:16px;line-height:1.5}
body.v4-site :is(.v4-product-page .product-intro,.product-intro){font-size:15px!important;line-height:1.7!important;color:#b2cbdc!important}
body.v4-site :is(.product-name a,.v4-wishlist .shop_table .product-name a.title){font-size:16px!important;line-height:1.6!important;overflow-wrap:anywhere}
body.v4-site :is(.v4-catalog .category-tree a,.v4-catalog .category-name,.v4-catalog .category-item,.v4-catalog .category-header,.select-form .title){font-size:15px!important;line-height:1.6!important}
body.v4-site :is(.v4-wishlist .shop_table th,.v4-wishlist .product-actions .button,.v4-wishlist .product-name p){font-size:14px!important;line-height:1.5!important}
body.v4-site :is(.v4-product-detail .tab-link,.v4-product-detail .tab-panel p,.v4-product-detail .description p,.v4-product-detail .product_meta,.v4-product-detail table,.v4-product-detail li){font-size:16px!important;line-height:1.7!important}
body.v4-site :is(.v4-communication .chat-header .status,.v4-communication .product-modal .product-description,.v4-communication .product-info p){font-size:14px!important;line-height:1.6!important}
body.v4-site :is(.v4-communication .message-text,.v4-communication .product-modal .product-name,.v4-communication .product-info h4){font-size:16px!important;line-height:1.7!important}
body.v4-site .v4-communication .message-time{font-size:13px!important}
body.v4-site .v4-product-detail .product-name{height:auto;max-height:none}
.v4-shell-host #navbar :is(.v4-contact-item,.v4-utility-links a){font-size:12px!important;line-height:1.5}
.v4-shell-host #navbar :is(.navlinks>a,.v4-nav-dropdown>summary,.v4-nav-dropdown>summary>a){font-size:18px!important;line-height:1.5}
.v4-shell-host #navbar :is(.v4-nav-panel a,.v4-nav-categories .v4-category-tree a,.v4-nav-categories .v4-category-tree summary){font-size:16px!important;line-height:1.6}
.v4-shell-host #navbar .v4-nav-dropdown>summary>span{font-size:12px}
.v4-shell-host #navbar :is(.v4-category-trigger,.v4-category-option,.v4-search-quote){font-size:14px!important;line-height:1.5}
.v4-shell-host #navbar .v4-header-search input{font-size:16px!important}
.v4-shell-host #navbar :is(.future-menu-panel a,.future-menu-panel button,.future-menu-panel em){font-size:15px!important;line-height:1.6}
.v3-home .cin-title{padding-top:calc(var(--v4-header-height,230px) + 36px)!important}
body.v3-home :is(.cin-title p,.marine-copy p,.craft-copy>p,.v3-systems-head p,.showroom-inspector p,.v3-journal .news-card p,.v4-service-grid p){font-size:16px!important;line-height:1.8!important;color:#b7cede}
body.v3-home :is(.cin-chapter,.cin-spec small,.cin-corner-label,.cin-caption,.belt-guidance,.object-number,.object-code,.showroom-inspector .inspector-label,.product-belt-controls,.v3-series-links a){font-size:13px!important;line-height:1.6!important}
body.v3-home .cin-spec b{font-size:19px;line-height:1.4}
body.v3-home :is(.v4-discovery-link strong,.v4-service-grid h3){font-size:17px;line-height:1.5}
body.v3-home :is(.v4-discovery-link small,.product-belt .object-type){font-size:14px!important;line-height:1.5!important;color:#aac8da}
body.v3-home .product-belt .object-type{height:auto;min-height:42px;max-height:none}
body.v3-home :is(.cin-corner-label,.cin-caption){overflow-wrap:anywhere;max-width:100%}
@media(min-width:761px) and (max-width:1100px){
.v4-shell-host #navbar :is(.navlinks>a,.v4-nav-dropdown>summary,.v4-nav-dropdown>summary>a){font-size:14px!important}
.v4-shell-host #navbar .navlinks{gap:12px}
.v4-shell-host #navbar .future-menu summary{font-size:0!important;width:44px;min-width:44px;padding:0;display:flex;justify-content:center;align-items:center;height:36px}.v4-shell-host #navbar .future-menu summary span{font-size:20px}
}
@media(max-width:760px){
.v4-shell-host #navbar :is(.navlinks>a,.v4-nav-dropdown>summary,.v4-nav-dropdown>summary>a){font-size:17px!important}
.v4-shell-host #navbar .v4-nav-panel a{font-size:16px!important}
.v4-shell-host #navbar .v4-search-quote{font-size:12px!important;padding:0 10px;gap:6px}
.v4-shell-host #navbar .v4-category-trigger{font-size:14px!important;padding:0 9px}
.v4-unified-mobile-dock a{font-size:13px;line-height:1.35}
.v3-home .cin-title p{max-width:100%!important}
.v3-home .cin-chapters{gap:10px}.v3-home .cin-chapter{min-width:0;white-space:normal;font-size:14px!important}
.v3-home .cin-spec small{font-size:12px!important;white-space:normal}
.v3-home .cin-corner-label,.v3-home .cin-caption{font-size:12px!important;line-height:1.5}
.v3-home .showroom-space{min-height:390px}.v3-home .showroom-inspector{min-height:290px}
body.v4-site .v4-catalog #productList .product-item .product-name{height:auto!important;min-height:0!important;max-height:none!important}
body.v4-site .v4-catalog #productList .product-item .product-name a{font-size:11px!important;-webkit-line-clamp:2;line-height:1.4!important;font-weight:400}
body.v4-site .v4-catalog #productList .product-item .product-intro{font-size:10px!important;line-height:1.35!important;color:#b2cbdc!important;-webkit-line-clamp:2;margin-top:3px!important}
body.v4-site .v4-wishlist .product-actions .button{white-space:normal;min-height:44px}
body.v4-site .v4-communication .message-content{max-width:88%}
body.v4-site .v4-communication .product-modal .product-info h4{font-size:15px!important}
}

/* Secondary labels are readable text too, rather than miniature decorative type. */
body.v3-home :is(.coordinate,.spatial-guidance,.spatial-guidance span,.inspector-index,.idle-guide,.belt-position,.showroom-exit>span,.showroom-exit>a,.v4-discovery-index,.image-caption,.craft-line>span,.v4-service-grid>article>span,.v3-section-index,.cin-chapter>span){font-size:13px!important;line-height:1.6!important;color:#a9c5d8}
body.v3-home .craft-line strong{font-size:16px!important;line-height:1.6}
.v4-shell-host #navbar .future-menu summary>span{font-size:20px!important}
@media(max-width:760px){body.v3-home .showroom-exit{flex-wrap:wrap;gap:12px 20px}body.v3-home .showroom-exit>span{flex-basis:100%}body.v3-home .showroom-exit>a{font-size:14px!important}}

/* Override legacy ID-based catalog typography, including AJAX-rendered cards. */
body.v4-catalog #productList .product-item .product-name a,body.v4-catalog #productList .product-name a{font-size:16px!important;line-height:1.6!important}
body.v4-catalog #productList .product-item .product-intro{font-size:15px!important;line-height:1.7!important;color:#b2cbdc!important}
body.v4-catalog :is(.chosen-container,.chosen-single,.chosen-single span,.chosen-results li){font-size:15px!important;line-height:1.6!important}
body.v4-site .v4-catalog-intro>span{font-size:13px!important;line-height:1.6!important;color:#a4c0d3}
body.v4-wishlist #empty-wishlist>a{font-size:15px!important;line-height:1.6!important}
.v4-shell-host #navbar .future-menu-panel small{font-size:13px!important}

body.v3-home .inspector-specs>div{min-width:0}body.v3-home .inspector-specs small{font-size:13px!important;line-height:1.6;white-space:normal;overflow-wrap:anywhere}body.v3-home .inspector-specs strong{font-size:16px!important;line-height:1.6;overflow-wrap:anywhere}body.v3-home .inspector-contact{font-size:15px!important;line-height:1.6}
body.v4-site :is(.tabs button,.modal .tabs button,.modal .v4-resource-links a,.modal .v4-resource-links button){font-size:15px!important;line-height:1.6!important}body.v4-site .modal label{font-size:16px!important}

/* Expanded type must have real layout space on narrow screens. */
@media(max-width:760px){
body.v4-site :is(h1,h2){line-height:1.18!important;overflow-wrap:anywhere}body.v4-site h3{line-height:1.3!important;overflow-wrap:anywhere}
.v3-home .showroom-space{min-height:420px}.v3-home .product-belt-viewport{inset:38px 12px;padding:18px 0}.v3-home .product-belt .spatial-object{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-height:260px;height:auto;padding:38px 10px 18px}.v3-home .product-belt .spatial-object img{display:block;flex:0 0 145px}.v3-home .product-belt .object-type{margin:0;min-height:42px;flex:0 0 auto;overflow-wrap:anywhere}
body.v4-catalog .shop-top-control .chosen-container .chosen-single{box-sizing:border-box!important;display:flex;align-items:center;min-height:48px;height:auto!important;padding:10px 34px 10px 12px!important;line-height:1.5!important;overflow:visible;white-space:normal}
body.v4-catalog .shop-top-control .chosen-single span{display:block;flex:1;min-width:0;margin:0;white-space:normal!important;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.5!important}
body.v4-catalog .shop-top-control .chosen-single div{position:absolute;right:10px;top:50%;width:18px;height:18px;transform:translateY(-50%)}
body.v4-catalog .shop-top-control .chosen-results li{white-space:normal;overflow-wrap:anywhere;min-height:44px;box-sizing:border-box;padding:10px 12px!important;line-height:1.5!important}
.v4-shell-host #navbar .navlinks.open,.v4-shell-host #navbar .future-menu-panel{max-height:calc(100svh - var(--v4-header-height,300px) - 80px)}
}

@media(max-width:760px){
.v4-shell-host #navbar .v4-category-trigger>span:first-child{min-width:0;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.2}
body.v4-catalog .shop-top-control .chosen-single div b{margin-left:0!important;width:18px;height:18px}
body.v4-wishlist .shop_table{display:block!important;box-sizing:border-box;width:100%!important;max-width:100%;border:0}
body.v4-wishlist .shop_table thead{display:none!important}
body.v4-wishlist .shop_table tbody{display:grid!important;grid-template-columns:minmax(0,1fr);gap:18px;width:100%}
body.v4-wishlist .shop_table tbody tr.cart_item{display:grid!important;grid-template-columns:minmax(0,1fr);gap:16px;box-sizing:border-box;width:100%!important;padding:16px;background:#112737;border:1px solid #7197ad44}
body.v4-wishlist .shop_table tr.cart_item td{display:block;box-sizing:border-box;width:100%!important;max-width:none;padding:0!important;border:0!important;min-width:0}
body.v4-wishlist .shop_table tr.cart_item td.product-remove{display:none!important}
body.v4-wishlist .shop_table .product-thumbnail a{display:block;width:100%}
body.v4-wishlist .shop_table .product-thumbnail img{display:block;width:100%!important;max-width:100%!important;height:180px!important;object-fit:contain;box-sizing:border-box;background:#fff;padding:10px}
body.v4-wishlist .shop_table .product-name a.title{display:block;width:100%;font-size:16px!important;line-height:1.6!important;white-space:normal;overflow-wrap:anywhere}
body.v4-wishlist .shop_table .product-intro{max-width:none!important;margin-top:10px!important;line-height:1.7!important}
body.v4-wishlist .product-actions{display:flex!important;flex-wrap:wrap;gap:8px;align-items:stretch;margin-top:16px}
body.v4-wishlist .product-actions .button{display:flex;align-items:center;justify-content:center;gap:6px;flex:1 1 72px;min-height:44px;padding:10px!important;font-size:14px!important;line-height:1.5!important;white-space:normal}
body.v4-wishlist .product-actions .btn-remove-favorite{display:grid;place-items:center;flex:0 0 44px;min-height:44px;background:#1b3e56;border:1px solid #729fb755;box-sizing:border-box}
}

@media(max-width:760px){
body.v4-wishlist #wishlist-table tr.cart_item{padding:16px!important;border:1px solid #7197ad44!important;margin:0;overflow:visible}
body.v4-wishlist #wishlist-table tr.cart_item td.product-thumbnail{width:100%!important;min-width:0!important;max-width:none!important}
body.v4-wishlist #wishlist-table .product-thumbnail img{width:100%!important;max-width:100%!important;height:180px!important;object-fit:contain!important}
body.v4-wishlist #wishlist-table .product-actions{flex-direction:row!important;align-items:stretch;flex-wrap:wrap}
body.v4-wishlist #wishlist-table .product-actions .button{display:flex!important;flex:1 1 64px;min-width:0;width:auto!important;min-height:44px;height:auto!important}
body.v4-wishlist #wishlist-table .product-actions .btn-remove-favorite{display:grid!important;width:44px!important;height:44px!important;min-height:44px;flex:0 0 44px}
}

@media(max-width:760px){body.v4-wishlist #wishlist-table .product-actions .button{padding:8px 6px!important;font-size:14px!important;line-height:1.5!important;gap:5px}body.v4-wishlist #wishlist-table .product-actions .button i{font-size:14px!important;line-height:1!important;margin:0!important}}

@media(max-width:760px){
.v4-shell-host #navbar .navlinks.open{position:absolute!important;top:100%!important;left:0!important;right:0!important;width:auto!important;min-width:0;z-index:60;margin:0!important;box-sizing:border-box;max-height:calc(100svh - var(--v4-header-height,300px) - 80px);overflow-y:auto;overflow-x:hidden;background:#152c3d}
.v4-shell-host #navbar .navlinks.open>.v4-nav-dropdown{width:100%;min-width:0}.v4-shell-host #navbar .navlinks.open>a{width:100%;box-sizing:border-box}
.v3-home .inspector-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px}.v3-home .inspector-actions>.btn{flex:1 1 150px;min-width:0;justify-content:space-between;gap:10px;padding:12px 14px;min-height:48px}.v3-home .inspector-actions>.btn svg{flex:0 0 20px;width:20px;height:20px}.v3-home .inspector-actions>.icon-btn{flex:0 0 48px;width:48px;min-height:48px;height:auto}
body.v4-site :is(.form-control,#messageInput,.submit-btn,.contact-tab){scroll-margin-top:calc(var(--v4-header-height,300px) + 16px);scroll-margin-bottom:90px}
}

@media(max-width:760px){
.v4-shell-host #navbar .v4-category-trigger>span:first-child{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-height:2.4em;overflow:hidden}
body.v4-communication .product-modal .product-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:15px!important;line-height:1.5!important;max-height:none;height:auto;text-align:left;overflow-wrap:anywhere}
body.v4-communication .product-modal .product-description{font-size:14px!important;line-height:1.6!important;text-align:left}
body.v4-communication .product-modal .product-item{align-items:flex-start}.v4-communication .product-modal .product-item img{flex-shrink:0}
}

@media(max-width:760px){body.v4-communication .product-modal .product-item .product-info h4{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:15px!important;line-height:1.5!important;max-height:none;height:auto;text-align:left;overflow-wrap:anywhere;margin:0 0 8px}body.v4-communication .product-modal .product-item .product-info p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:14px!important;line-height:1.6!important;text-align:left;overflow-wrap:anywhere;margin:0}}

@media(max-width:760px){body.v4-product-detail .tab-details-product .tab-link{display:flex!important;flex-wrap:wrap;gap:8px;padding:0;margin-left:0;margin-right:0}body.v4-product-detail .tab-details-product .tab-link>li{flex:1 1 120px;min-width:0;margin:0!important;float:none}body.v4-product-detail .tab-details-product .tab-link>li>a{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:44px;padding:10px;font-size:16px!important;line-height:1.5!important;text-align:center}}

/* Desktop utility information needs the same readable scale as other site controls. */
@media(min-width:761px){
.v4-shell-host #navbar :is(.v4-contact-item,.v4-utility-links a){font-size:16px!important;line-height:1.6}
.v4-shell-host #navbar .v4-contact-row{min-height:46px;padding-top:9px;padding-bottom:9px;gap:24px;flex-wrap:wrap}
.v4-shell-host #navbar .v4-contact-items{min-width:0;flex-wrap:wrap;gap:12px 24px}
.v4-shell-host #navbar .v4-contact-item svg{width:17px;height:17px;flex-shrink:0}
.v4-shell-host #navbar .v4-utility-links{flex-shrink:0;gap:24px}
.v4-shell-host #navbar .v4-utility-links svg{width:19px;height:19px;flex-shrink:0}
}

/* Match the original site's 18px primary reading and product-name scale. */
body.v4-site{--v4-type-body:18px;--v4-type-small:16px;--v4-type-meta:14px;font-size:18px}
body.v4-site :is(p,.hero-subtitle,.hero-description,.section-description,.section-subtitle,.article-summary,.article-content,.rich-content,.message-text,.form-group label,.form-label){font-size:18px!important;line-height:1.75!important}
body.v4-site :is(.btn,.button,.submit-btn,.contact-tab,.text-link,.pagination-btn,.page-number,.category-button,.file-upload-btn){font-size:16px!important;line-height:1.5!important}
body.v3-home :is(.cin-title p,.marine-copy p,.craft-copy>p,.v3-systems-head p,.showroom-inspector p,.v3-journal .news-card p,.v4-service-grid p){font-size:18px!important;line-height:1.75!important}
body.v4-site :is(.product-name a,.v4-wishlist .shop_table .product-name a.title),body.v4-catalog #productList .product-item .product-name a,body.v4-catalog #productList .product-name a{font-size:18px!important;line-height:1.6!important}
body.v4-catalog #productList .product-item .product-intro,body.v4-site .product-intro{font-size:16px!important;line-height:1.7!important}
.v4-shell-host #navbar :is(.v4-category-trigger,.v4-category-option,.v4-search-quote){font-size:16px!important}
body.v3-home :is(.object-code,.object-number,.cin-chapter,.cin-chapter>span,.cin-spec small,.showroom-exit>a,.inspector-specs small){font-size:14px!important}
body.v3-home :is(.object-type,.inspector-contact,.v4-discovery-link small){font-size:16px!important}
body.v4-site :is(.footer p,.footer a,.footer .text-link,.copyright,.footer .copyright span,.v4-footer-link){font-size:16px!important}
@media(min-width:761px){.v4-shell-host #navbar :is(.v4-contact-item,.v4-utility-links a){font-size:18px!important}.v4-shell-host #navbar .v4-contact-item{white-space:normal}.v4-shell-host #navbar .v4-contact-items{flex-wrap:wrap}}
@media(max-width:760px){
.v4-shell-host #navbar .v4-search-quote{font-size:14px!important;padding:0 10px}.v4-shell-host #navbar .v4-category-trigger{font-size:15px!important}
body.v4-catalog #productList .product-name{height:auto!important;min-height:86px!important;max-height:none!important}
body.v4-wishlist #wishlist-table .product-actions .button{font-size:15px!important}
body.v3-home .cin-title p{max-width:100%!important}body.v3-home .cin-title .btn{white-space:normal;min-height:48px;height:auto;line-height:1.5!important}
}
