/* Shared mobile layout: explicit navigation surfaces, readable forms, contained data grids. */
html{scroll-padding-top:90px}body{overflow-wrap:break-word}main,section,article,form,fieldset,.panel,.admin-content,.cms-editor-column{min-width:0}img,video,canvas{max-width:100%}h1,h2,h3{overflow-wrap:anywhere;line-height:1.25}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font-size:16px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #dfb844;outline-offset:3px}button{cursor:pointer}button[disabled]{cursor:wait}.nav-shade,.admin-nav-close,.mobile-admin-toggle{display:none}.sidebar nav{min-height:0}.sidebar-foot{flex-shrink:0}.table-wrap{max-width:100%;overflow:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.kanban{max-width:100%;min-width:0}.product-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:12px 0}.product-thumbnails button{flex:0 0 76px;width:76px;min-height:76px;border:2px solid transparent;background:white;padding:2px}.product-thumbnails button[aria-pressed=true]{border-color:#205541}.product-thumbnails button img{width:68px;height:68px;object-fit:contain}.detail-media>[data-product-main]{height:480px;object-fit:contain}.product-detail-images{max-width:1000px;margin:0 auto;padding:24px}.product-detail-images img{display:block;width:100%;height:auto;margin-bottom:12px}.detail-copy .lead,.detail-copy dd,.detail-copy p{overflow-wrap:anywhere}.page-title{padding-top:56px}.page-title h1{font-size:clamp(30px,4vw,56px);line-height:1.25}.product-detail{padding-top:56px}.detail-copy h1{font-size:clamp(30px,4vw,54px);line-height:1.25}.admin-content .panel{max-width:100%}.pim-panel{margin-top:0}.pim-card{overflow-wrap:anywhere}.pim-image img{max-height:160px}
@media(max-width:1100px){.main-nav{gap:12px;font-size:14px}.main-nav .language-form select{max-width:120px}.site-header .brand-copy{font-size:16px}}
@media(max-width:900px){
 .site-header{height:72px;min-height:72px;padding:0 16px;position:sticky;top:0;z-index:101;background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;transform:none;isolation:auto}
 .site-header .brand{min-width:0;max-width:calc(100% - 88px);gap:9px}.site-header .brand-copy{font-size:15px;line-height:1.3}.site-header .brand-copy small{font-size:10px;letter-spacing:.12em}.site-header .brand-mark{width:38px;height:38px;flex:0 0 38px}
 .menu-toggle{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;min-height:44px;min-width:72px;padding:8px;border:1px solid #d2ddd7;border-radius:8px;background:white;color:#183b2e;font-size:16px}.menu-toggle i{display:none}
 .main-nav{display:none;position:fixed;inset:72px 0 0;top:var(--mobile-nav-top,72px);height:auto;max-height:none;margin:0;padding:20px 20px max(30px,env(safe-area-inset-bottom));background:#fff;z-index:102;overflow-y:auto;overscroll-behavior:contain;align-items:stretch;gap:6px;box-shadow:0 12px 25px #142a201f}
 .main-nav.open{display:flex;flex-direction:column}.main-nav>a,.main-nav>a:nth-child(2),.main-nav>a:nth-child(3){display:flex!important;flex:none;align-items:center;min-height:52px;height:auto;width:100%;padding:13px 14px;border-bottom:1px solid #e3eae6;font-size:18px;line-height:1.5;letter-spacing:normal;white-space:normal}.main-nav>a:after{display:none!important}.main-nav .nav-cta{background:#205541;color:#fff;border-radius:8px;justify-content:space-between;margin-top:10px}.main-nav .language-form{display:block;margin:12px 0}.main-nav .language-form select{width:100%;max-width:none;min-height:48px;font-size:16px;padding:10px}
 body.menu-open,body.admin-nav-open{overflow:hidden;overscroll-behavior:none}.preview-banner+.site-header{top:0}
 .sidebar{position:fixed!important;inset:0 auto 0 0!important;width:min(88vw,320px)!important;height:100dvh!important;max-height:100vh;padding:20px 16px!important;transform:translateX(-110%);visibility:hidden;display:flex!important;flex-direction:column;z-index:302;overflow:hidden;transition:transform .18s ease}
 .sidebar nav{display:flex!important;flex-direction:column;grid-template-columns:none!important;gap:5px;overflow-y:auto;margin-top:12px;padding-right:4px;flex:1}.sidebar nav a{font-size:16px!important;line-height:1.5!important;padding:12px!important;min-height:48px;flex-shrink:0}.sidebar .nav-label{font-size:14px;display:block;line-height:1.5;padding-top:10px}.sidebar-foot{display:flex!important;font-size:14px;gap:8px}.sidebar-foot button{min-width:44px;min-height:44px}.admin-brand{padding:0 0 14px;font-size:15px}.admin-brand small{font-size:10px}.admin-nav-open .sidebar{transform:none;visibility:visible}.admin-nav-close{display:block;align-self:flex-end;color:white;border:1px solid #859b91;background:transparent;border-radius:6px;min-height:44px;padding:8px 14px;margin-bottom:14px}
 .nav-shade{position:fixed;inset:0;border:0;background:#001d14aa;z-index:301;width:100%;height:100%;padding:0}.admin-nav-open .nav-shade{display:block}.mobile-admin-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:44px;min-width:64px;padding:8px 10px;border:1px solid #bac9c1;background:white;border-radius:7px;color:#183b2e}
 .admin-main{margin-left:0!important;width:100%;min-width:0}.topbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:flex-start;gap:12px;height:auto!important;min-height:76px;padding:12px 16px!important;background:white}.topbar>div{min-width:0}.topbar strong{font-size:18px;line-height:1.4}.topbar small{font-size:13px;line-height:1.5}.top-actions{display:none}.admin-content{padding:18px 16px!important}.dashboard-grid,.content-workspace,.cms-workspace,.two-columns,.quote-layout,.tool-shell{grid-template-columns:minmax(0,1fr)!important}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.span2{grid-column:auto}.cms-pages nav{grid-template-columns:1fr!important}.cms-pages nav a{grid-template-columns:24px minmax(0,1fr)!important;min-height:52px}.cms-pages nav a b{font-size:16px}.cms-pages nav a small{font-size:13px}.cms-pages-head{padding:16px}.cms-page-head,.cms-command,.cms-data-links{padding:18px;align-items:stretch;flex-direction:column}.cms-page-head h1{font-size:26px}.cms-media-fields{grid-template-columns:1fr}.cms-fields,.form-grid,.field-grid{grid-template-columns:minmax(0,1fr)!important}.admin-form{padding:18px!important}.admin-form label,.public-form label{font-size:16px}.admin-form input,.admin-form select,.admin-form textarea,.public-form input,.public-form select,.public-form textarea{max-width:100%;min-width:0;font-size:16px;line-height:1.5;min-height:46px}.admin-form input[type=checkbox],.public-form input[type=checkbox]{min-height:20px;min-width:20px;width:20px;height:20px;flex:0 0 20px}.admin-button,.button,.small-button,summary{min-height:44px;line-height:1.5;white-space:normal}.checks{gap:16px}.checks label{display:flex;align-items:center;gap:8px;line-height:1.5}.panel-head{padding:16px;gap:12px;flex-wrap:wrap}.panel-head h2{font-size:20px}.panel-head p,.panel-head small{font-size:14px}.sticky-save{position:static;gap:14px;padding:16px}.publish-actions{display:flex;flex-wrap:wrap;gap:10px}.publish-actions>*{min-width:120px;flex:1}.cms-head-actions{display:flex;flex-wrap:wrap;gap:10px}.cms-head-actions>*{min-width:120px;flex:1}.table-wrap table{min-width:680px}.table-wrap th,.table-wrap td{font-size:14px;padding:12px}.table-wrap button,.table-wrap select{min-height:44px;font-size:16px}.table-wrap:focus-visible{outline:3px solid #dfb844}.kanban{grid-template-columns:repeat(10,minmax(260px,80vw));scroll-snap-type:x proximity}.kanban-col{scroll-snap-align:start}.kanban-col article h4{font-size:16px}.kanban-col article p{font-size:14px}.kanban select{font-size:16px;min-height:44px}.panel>form:not(.admin-form){max-width:100%}.product-admin-grid{grid-template-columns:1fr!important}
}
@media(max-width:600px){
 body{font-size:16px;line-height:1.6}.hero-content h1,.page-title h1,.tool-hero h1,.thanks h1{font-size:34px!important;line-height:1.2!important;letter-spacing:-.02em;word-break:normal}.hero,.hero-content{min-width:0}.hero-content{padding:40px 20px}.hero-grid{grid-template-columns:1fr}.hero-metrics{gap:12px;flex-wrap:wrap}.hero-metrics div{min-width:0}.hero-metrics b{font-size:22px}.hero-metrics span{font-size:12px;line-height:1.5}.section,.video-story,.tool-hero,.tool-shell,.quote-layout,.final-cta,.thanks{padding-left:20px;padding-right:20px}.section{padding-top:48px;padding-bottom:48px}.section h2,.video-story h2,.final-cta h2{font-size:30px;line-height:1.25}.page-title{padding:38px 20px 28px}.page-title p{font-size:16px}.product-detail{grid-template-columns:1fr;gap:24px;padding:32px 20px}.detail-media{position:static}.detail-media>[data-product-main]{height:340px}.detail-copy h1{font-size:32px;line-height:1.25}.detail-copy dl{grid-template-columns:1fr}.detail-copy dt{font-size:14px;letter-spacing:0}.detail-copy dd{font-size:16px;line-height:1.5}.product-detail-images{padding:20px}.filters{gap:8px;flex-wrap:nowrap;max-width:100%}.filters a{min-height:44px;font-size:16px;padding:10px 16px;flex-shrink:0}.product-grid{grid-template-columns:1fr!important}.product-card{opacity:1;transform:none}.public-form{padding:20px!important}.public-form .form-grid{gap:18px}.public-form button[type=submit]{width:100%}.recommendation{grid-template-columns:65px minmax(0,1fr);gap:15px}.estimate-result{padding:22px}.estimate-result h2{font-size:30px;overflow-wrap:anywhere}.site-footer{grid-template-columns:1fr!important;padding:40px 20px}.footer-lead,.footer-meta{grid-column:auto!important}.site-footer a{display:block;min-height:44px;padding:8px 0}.privacy-grid article{padding:24px}.cookie-banner{padding:18px}.cookie-banner button{font-size:16px}.metrics article{padding:16px}.metrics b{font-size:25px;overflow-wrap:anywhere}.metrics small,.metrics span{font-size:13px}.pim-fields,.pim-products{grid-template-columns:1fr}.pim-images{grid-template-columns:repeat(2,minmax(0,1fr))}.pim-toolbar{align-items:stretch}.pim-toolbar>input,.pim-toolbar>select{width:100%;min-width:0}.pim-toolbar>button{flex:1 1 auto}.pim-image>div button{min-height:44px;min-width:44px}.pim-upload{width:100%}.pim-upload input{max-width:100%;width:100%;font-size:14px}.pim-heading>div{min-width:0}.pim-heading h1{font-size:26px;line-height:1.35}.pim-variant{grid-template-columns:1fr}.pim-variant input{font-size:16px}.pim-panel{padding:16px}
}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}
