/* Native horizontal scrolling keeps swipe and trackpad interaction available. */
.brand-mark{display:block;width:37px;height:40px;object-fit:contain;flex-shrink:0}
.footer-brand{display:flex;align-items:center;gap:11px}
.footer-brand .brand-mark{width:27px;height:30px}
.contact-heading{justify-content:flex-start;gap:20px}
.contact-heading>span{margin-left:auto}
.contact-mark{width:40px;height:44px;object-fit:contain}
.photo-filters{position:absolute;overflow:hidden;pointer-events:none}
.photo-loading img,.lightbox-stage .loading-photo{filter:url(#loading-light) saturate(.92);object-position:50% 58%}
.miniature{object-fit:contain;pointer-events:none;user-select:none;width:134px;height:134px;flex-shrink:0}
.section-aside{display:flex;align-items:center;gap:24px}
.section-aside .section-intro{font-size:12px}
.mini-plywood{width:125px;height:125px;transform:rotate(-5deg)}
.mini-pallet{width:125px;height:125px}
.carousel{min-width:0}
.carousel .section-heading{margin-bottom:12px}
.carousel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.carousel-hint{font-size:11px;line-height:1.6;color:var(--muted)}
.carousel-controls{display:flex;align-items:center;gap:8px;width:100%}
.carousel-counter{font-size:11px;font-variant-numeric:tabular-nums;min-width:97px;text-align:left;margin-right:auto;letter-spacing:.3px}
.carousel-controls button{width:46px;height:46px;border:1px solid var(--line);background:transparent;display:grid;place-items:center;font-size:23px;transition:background .18s,color .18s,border-color .18s}
.carousel-controls button:not(:disabled):hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.carousel-controls button:disabled{opacity:.25;cursor:default}
.carousel-track{display:flex;gap:24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;position:relative;padding:5px 5px 18px;margin:-5px -5px -18px;scroll-padding-inline:5px}
.carousel-track::-webkit-scrollbar{display:none}
.carousel-track:focus-visible{outline:2px solid var(--blue);outline-offset:7px}
.carousel-item{flex:0 0 38%;min-width:0;scroll-snap-align:start;scroll-margin-inline:0}
.material-card .photo-frame{height:auto;aspect-ratio:1.05}
.material-caption{padding-top:20px}
.material-caption p{min-height:38px;font-size:12px;max-width:300px}
.material-caption h3{font-size:32px}
.warehouse-section.section{padding-top:0;padding-bottom:30px}
.warehouse-slide{flex-basis:43%}
.warehouse-slide .photo-frame{height:auto;aspect-ratio:.86}
.warehouse-slide figcaption{display:flex;justify-content:space-between;gap:16px;font-size:11px;margin-top:15px}
.warehouse-slide figcaption>span:last-child{font-size:9px;letter-spacing:.4px;color:var(--muted);white-space:nowrap}
.warehouse-drive{position:relative;height:104px;margin-top:14px}
.warehouse-drive::after{content:"";position:absolute;inset:auto 0 9px;height:1px;background:var(--line);pointer-events:none}
.warehouse-forklift-position{position:absolute;left:0;bottom:8px;width:112px;height:92px;z-index:1;transform:translate3d(var(--forklift-x,0px),0,0)}
.warehouse-drive .miniature-forklift,.warehouse-drive .mini-forklift{width:100%;height:100%}
.warehouse-drive .mini-forklift{transform:scaleX(var(--forklift-facing,-1))}
@media(max-width:760px){.warehouse-drive{height:88px;margin-top:12px}.warehouse-forklift-position{width:90px;height:76px}}
.warehouse-bottom{padding-top:25px}
.dispatch-detail{display:flex;align-items:center;gap:18px;font-size:11px;letter-spacing:0}
.mini-forklift{width:105px;height:105px}
.service-notes{align-items:end;gap:28px}
.delivery-note{position:relative;padding-top:90px}
.mini-truck{position:absolute;width:140px;height:115px;top:-25px;left:-5px}
.mobile-actions{display:none}
@media(max-width:1100px){
  .section-aside{gap:14px}
  .mini-plywood,.mini-pallet{width:100px;height:100px}
  .section-aside .section-intro{font-size:11px}
  .carousel-item{flex-basis:43%}
  .warehouse-slide{flex-basis:46%}
}
@media(max-width:760px){
  .brand .brand-mark{width:29px;height:32px}
  .materials.section{padding-top:36px;padding-bottom:40px}
  .price-section.section{padding-top:32px;padding-bottom:58px}
  .carousel .section-heading{display:flex;align-items:center;gap:10px;margin-bottom:10px}
  .section-aside .section-intro{display:none}
  .mini-plywood,.mini-pallet{width:90px;height:90px}
  .carousel-toolbar{gap:10px;margin-bottom:17px}
  .carousel-hint{font-size:10px;max-width:150px}
  .carousel-controls{gap:6px}
  .carousel-counter{min-width:68px;margin-right:auto;font-size:10px;letter-spacing:0}
  .carousel-controls button{width:44px;height:44px;font-size:22px}
  .carousel-track{gap:17px}
  .carousel-item{flex-basis:86%}
  .material-card .photo-frame{aspect-ratio:1.02;height:auto}
  .material-caption h3{font-size:30px}
  .material-caption p{font-size:12px;min-height:35px}
  .warehouse-section.section{padding-top:0;padding-bottom:0}
  #warehouse .section-heading{align-items:center}
  #warehouse .mini-pallet{width:76px;height:76px}
  .warehouse-slide{flex-basis:86%}
  .warehouse-slide .photo-frame{aspect-ratio:.83}
  .warehouse-slide figcaption{font-size:10px}
  .warehouse-bottom{padding-top:16px;align-items:center;gap:12px}
  .dispatch-detail{gap:9px}
  .dispatch-detail p{font-size:9px;max-width:100px;line-height:1.6}
  .mini-forklift{width:70px;height:80px}
  .warehouse-bottom a{font-size:10px;max-width:120px;line-height:1.6}
  .warehouse-bottom a span{margin-left:5px}
  .mini-truck{width:125px;height:100px;top:-15px}
  .delivery-note{padding-top:83px}
  .service-notes{margin-top:30px;align-items:end}
  .contact-mark{width:30px;height:33px}
}
@media(max-width:390px){
  .carousel-hint{font-size:9px;max-width:105px}
  .carousel-counter{min-width:61px;font-size:9px}
  .carousel-controls button{width:44px;height:44px}
  .mini-plywood{width:64px;height:72px;transform:none}
  #warehouse .mini-pallet{width:66px;height:72px}
  .carousel .section-heading .eyebrow{font-size:8px;letter-spacing:.7px}
  .mini-forklift{width:58px;height:70px}
  .dispatch-detail{gap:7px}
  .dispatch-detail p{max-width:90px;font-size:8px}
}
@media(prefers-reduced-motion:reduce){.carousel-controls button{transition:none}}

/* Mobile is the primary browsing experience. Keep the next action within reach. */
@media(max-width:760px){
  html{scroll-padding-bottom:90px}
  body{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
  .mobile-actions{display:grid;grid-template-columns:1fr 1.12fr;gap:10px;position:fixed;z-index:20;bottom:0;left:0;right:0;padding:10px max(var(--gutter),env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--paper)}
  .mobile-actions a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px;min-height:50px;font-size:13px;font-weight:700}
  .mobile-actions a:first-child{border:1px solid var(--line)}
  .mobile-contact{background:var(--blue);color:#fff}
  .mobile-actions span{font-size:22px;line-height:1}
  .lightbox-open .mobile-actions{visibility:hidden}
  .menu-toggle{min-height:44px;min-width:60px}
  .hero-description{font-size:14px}
  .material-caption>a,.price-bottom>a{display:grid;place-items:center;min-width:44px;min-height:44px}
  .price-card{grid-template-columns:.75fr 1fr;column-gap:20px}
  .price-card>.photo-frame{height:100%;min-height:255px}
  .price-card>p:not(.price-date){font-size:13px;line-height:1.6}
  .price-card .price-date{font-size:11px;line-height:1.7}
  .price-bottom strong{font-size:26px;line-height:1.15}
  .price-bottom small{display:block;font-size:11px;margin-top:5px}
  .price-card>h3{font-size:26px}
  .price-card>.tiny-label{font-size:9px;line-height:1.6;letter-spacing:.35px}
  .price-card:nth-child(2) .photo-frame img{scale:1.3;transform-origin:50% 80%}
  .price-disclaimer{font-size:11px;line-height:1.8}
  .fine-print{font-size:11px;line-height:1.7}
  .service-lead{font-size:14px}
  .service-notes p{font-size:12px;line-height:1.8}
  .service-notes strong{font-size:14px}
  .faq summary{font-size:14px}
  .faq details p{font-size:13px}
  .warehouse-slide figcaption{font-size:12px;line-height:1.6}
  .dispatch-detail p{font-size:11px;max-width:110px}
  .warehouse-bottom a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
  .text-link,.lightbox-close{min-height:44px}
}
@media(max-width:390px){
  .price-card{column-gap:16px}
  .price-bottom strong{font-size:24px}
  .carousel-hint{font-size:10px}
  .dispatch-detail p{font-size:10px;max-width:90px}
  .warehouse-bottom a{font-size:11px}
  .mobile-actions a{font-size:12px;padding:12px}
}
