/* Professional desktop / dedicated mobile UI. Applied after existing site styles. */
:root{--cream:#fff;--paper:#fff;--line:#dbe5df;--shadow:0 8px 24px rgba(10,55,37,.08)}
html,body{background:#fff!important}
/* Remove old full-width yellow wash without removing the brand's orange accents. */
.hero,.hero-section,.hub-section.tint,.promo-box,.welcome-section{background:#f6f9f7!important}
.hero::before,.hero::after{opacity:.35}
.category-section,.hub-section{background:#fff!important}
.icon-tile picture,.icon-tile picture img{display:block}
@media(min-width:800px){
 body{font-size:18px;line-height:1.55}
 .wrap{max-width:1280px}
 .category-section{padding:46px 30px 64px}
 .icon-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1150px}
 .icon-tile{flex-direction:row;justify-content:flex-start;gap:18px;text-align:left;min-height:104px;padding:20px 22px;border-radius:14px;border:1px solid #dbe5df;box-shadow:0 3px 12px rgba(10,55,37,.045);transition:box-shadow .2s,transform .2s}
 .icon-tile picture{width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:12px;background:#edf5f0}
 .icon-tile picture img{width:30px!important;height:30px!important;border-radius:0!important;object-fit:contain!important}
 .icon-tile .lbl{font-size:1rem;font-weight:700;letter-spacing:0;text-transform:none}
 .icon-tile:hover,.icon-tile:focus-visible{box-shadow:0 8px 25px rgba(10,55,37,.12);border-color:#8ebba1}
 .hub-section .section-head,.category-section .section-head{max-width:820px;margin-left:auto;margin-right:auto}
 .a4-row{align-items:start;gap:24px}
}
@media(max-width:799px){
 .icon-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 .icon-tile{min-height:118px;padding:12px 5px;border-radius:16px}
 .icon-tile picture img{width:70px!important;height:70px!important;object-fit:contain}
 .icon-tile .lbl{font-size:.76rem;line-height:1.25}
 .category-section{padding:32px 14px 44px}
}
@media(max-width:390px){.icon-tile picture img{width:58px!important;height:58px!important}}
