/* Mobile application layer. Desktop layouts remain untouched. */
.mobile-tabbar{display:none}
.wood-hero__mobile-collage{display:none}

@media (max-width:768px){
  :root{--m-paper:#f5f2eb;--m-ink:#20211c;--m-line:rgba(32,33,28,.13);--m-accent:#b44535;--m-bar:rgba(249,247,242,.92)}
  html{overflow-x:hidden;scroll-padding-top:70px}
  body{width:100%;overflow-x:hidden;padding-bottom:0;background:var(--m-paper);-webkit-tap-highlight-color:transparent}
  main{overflow:hidden}
  img,video{max-width:100%}
  button,a,input,select,textarea{touch-action:manipulation}
  input,select,textarea{font-size:16px!important}

  .mobile-tabbar{position:fixed!important;z-index:1000;left:10px!important;right:auto!important;bottom:max(8px,env(safe-area-inset-bottom));width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;height:64px;box-sizing:border-box!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:center;padding:5px!important;margin:0!important;border:1px solid rgba(32,33,28,.14);border-radius:21px;background:var(--m-bar);box-shadow:0 12px 36px rgba(23,24,20,.18);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .mobile-tabbar a{height:52px;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:16px;color:#74766f;text-decoration:none;font:500 8px/1 Jura,Arial,sans-serif;letter-spacing:0}
  .mobile-tabbar a[aria-current="page"]{background:#292a22;color:#fff}
  .mobile-tabbar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

  /* One compact top bar across all visual systems. */
  .site-header,.header,.product-header,.mc-header{position:relative!important;top:auto!important;z-index:50!important;width:100%!important;height:64px!important;min-height:64px!important;padding:0 16px!important;background:rgba(247,247,244,.96)!important;border-bottom:1px solid var(--m-line)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
  .site-header{display:flex!important;align-items:center!important;justify-content:space-between!important}
  .site-header .brand,.header .logo,.product-header .product-brand,.mc-header .mc-brand{min-width:0;white-space:nowrap}
  .site-header .brand{font-size:23px!important}
  .site-header .brand-logo,.header .logo img,.product-header img,.mc-header img{width:34px!important;height:34px!important;flex:0 0 34px}
  .site-header .menu-toggle,.site-header .nav,.site-header .header-link,.header .nav-links,.product-header nav,.product-header .back-link,.mc-header nav,.mc-header .mc-back{display:none!important}
  .header .nav{height:64px!important;padding:0!important;display:flex!important;align-items:center!important}
  .header .logo{width:auto!important;margin:0!important}
  .header .logo-text{font-size:21px!important}

  /* Home: immersive first screen, compact feed-like sections. */
  .hero{min-height:calc(100svh - 64px)!important;padding:0 18px!important;border-radius:0 0 24px 24px}
  .hero-copy{width:100%;max-width:100%;padding:42px 0 38px!important;margin:0!important}
  .hero h1{max-width:350px;font-size:clamp(47px,14vw,64px)!important;line-height:.94!important;letter-spacing:-.065em!important}
  .hero .lead{max-width:320px;font-size:13px;line-height:1.65}
  .hero-index,.vertical-note{display:none!important}
  .section{padding:54px 18px!important}
  .section-heading{gap:20px!important;margin-bottom:34px!important}
  .section h2{font-size:clamp(40px,12vw,54px)!important;line-height:1!important}
  .section-heading>p{font-size:13px;line-height:1.7}
  .collection-list{padding:0 12px 18px;border:0;background:transparent}
  .collection-row,.collection-row--reverse{margin:0 0 12px;border:1px solid var(--m-line)!important;border-radius:22px;overflow:hidden;background:#f8f6f1}
  .collection-row .collection-image,.collection-row--reverse .collection-image{order:1!important}
  .collection-row .collection-copy,.collection-row--reverse .collection-copy{order:2!important}
  .collection-copy{min-height:0!important;padding:23px 20px 21px!important}
  .collection-number{top:18px!important;right:20px!important}
  .collection-type{margin:0 0 14px!important}
  .collection-copy h3{font-size:34px!important;line-height:.98!important;margin:0 0 12px!important}
  .collection-description{font-size:12px;line-height:1.55;margin:0 0 16px!important}
  .collection-link{padding-bottom:7px!important}
  .collection-image{height:76vw!important;max-height:400px!important}
  .manifesto,.process,.contact{border-radius:24px 24px 0 0}
  .manifesto{padding:54px 20px!important}
  .manifesto blockquote{font-size:38px!important;margin:48px 0 34px!important}
  .ink-stamp{display:none}
  .process-photo img{height:105vw!important;max-height:520px!important;border-radius:18px}
  .contact{padding:54px 18px 34px!important}
  .contact h2{font-size:42px!important;margin:36px 0 18px!important}
  .contact-form{margin-top:38px!important}
  .contact-form label{padding:16px 0!important}
  .form-submit,.submit-btn,.request-form button[type="submit"]{width:100%!important;min-height:54px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px;margin-top:24px!important;padding:0 18px!important;border:1px solid #292a22!important;border-radius:16px!important;background:#292a22!important;color:#fff!important;box-shadow:0 9px 24px rgba(28,29,24,.14);font:500 10px/1 Jura,Arial,sans-serif!important;letter-spacing:.12em!important;text-transform:uppercase;cursor:pointer;transition:transform .18s ease,background .18s ease,opacity .18s ease}
  .form-submit::before,.form-submit::after,.submit-btn::before,.submit-btn::after,.request-form button[type="submit"]::before,.request-form button[type="submit"]::after{content:none!important;display:none!important}
  .form-submit b,.submit-btn b,.request-form button[type="submit"] b{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:10px;background:rgba(255,255,255,.12);color:#fff!important;font-size:17px!important;line-height:1}
  .form-submit:active,.submit-btn:active,.request-form button[type="submit"]:active{transform:scale(.985)}
  .form-submit:disabled,.submit-btn:disabled,.request-form button[type="submit"]:disabled{opacity:.5;box-shadow:none;cursor:wait}
  .contact .form-submit{border-color:#f3efe7!important;background:#f3efe7!important;color:#20211c!important}
  .contact .form-submit b{background:rgba(32,33,28,.1);color:#b44535!important}
  footer{padding-bottom:30px!important}

  /* Wood catalogue becomes a stack of tactile product cards. */
  .wood-page{background:#fff!important}
  .wood-hero{padding-top:0!important;min-height:700px!important;border-radius:0 0 24px 24px;overflow:hidden}
  .wood-hero__inner{min-height:700px!important}
  .breadcrumbs{top:22px!important;max-width:100%;overflow:hidden;white-space:nowrap}
  .wood-hero__content{width:100%;min-width:0;padding:72px 8px 236px!important}
  .wood-hero__grain{display:none}
  .wood-hero h1{font-size:50px!important;line-height:.94!important;overflow-wrap:normal}
  .wood-hero__lead{width:100%!important;max-width:100%!important;padding-right:8px;font-size:13px!important;line-height:1.62!important;overflow-wrap:anywhere}
  .wood-hero__mobile-collage{position:absolute;left:0;right:0;bottom:14px;height:204px;display:grid;grid-template-columns:1.14fr .86fr;grid-template-rows:1fr 1fr;gap:6px}
  .wood-hero__mobile-shot{position:relative;display:block;min-width:0;min-height:0;overflow:hidden;border-radius:13px;background:#d8d2c6}
  .wood-hero__mobile-shot--horeca{grid-row:1/3}
  .wood-hero__mobile-shot img{width:100%;height:100%;object-fit:cover;filter:saturate(.76) contrast(.97)}
  .wood-hero__mobile-shot--horeca img{object-fit:contain;object-position:center;transform:rotate(90deg) scale(1.8)}
  .wood-hero__mobile-shot--maker img{object-position:left center}
  .wood-hero__mobile-shot--stand img{object-position:center 61%}
  .wood-hero__mobile-shot--maker{grid-column:1;grid-row:1/3}.wood-hero__mobile-shot--horeca{grid-column:2;grid-row:1}.wood-hero__mobile-shot--stand{grid-column:2;grid-row:2}.wood-hero__mobile-shot--maker img{object-fit:cover;object-position:center 48%}.wood-hero__mobile-shot--maker:hover img{transform:scale(1.025)}
  .wood-hero__mobile-shot span{position:absolute;left:8px;bottom:8px;padding:5px 7px;border-radius:7px;background:rgba(247,247,244,.9);color:var(--m-ink);font:500 8px/1 Jura,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
  .collection-intro,.craft-section{padding:52px 18px!important;background:#fff}
  .intro-grid h2,.craft-grid h2,.wood-cta h2{font-size:40px!important}
  .intro-grid>p{font-size:14px!important;line-height:1.7!important}
  .product-story,.product-story--maker{height:clamp(470px,124vw,560px)!important;grid-template-rows:minmax(0,1.78fr) minmax(0,1fr)!important;margin:0 12px 12px;border:1px solid rgba(32,33,28,.2);border-radius:20px;overflow:hidden;background:#fff!important;box-shadow:0 5px 16px rgba(27,28,23,.07)}
  .product-story:first-of-type{margin-top:8px}
  .product-story__image{order:1!important;height:auto!important;max-height:none!important;min-height:0}
  .product-story--stand .product-story__image img{object-position:center!important;transform:none}
  .product-story__content,.product-story--maker .product-story__content,.product-story--horeca .product-story__content{order:2!important;min-height:0!important;padding:16px 18px!important;background:rgb(228,222,211)!important;color:var(--m-ink)!important;overflow:hidden}
  .product-kicker,.product-story--maker .product-kicker{margin:0 0 7px!important;color:#77786f!important}
  .product-story h2{font-size:30px!important;line-height:.95!important;margin:0 0 8px!important}
  .product-copy,.product-story--maker .product-copy{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:12px!important;line-height:1.5!important;margin:0 0 8px!important;color:#65655b!important}
  .wood-species,.maker-options,.engraving-note{display:none!important}
  .product-story .product-link,.product-story--maker .product-link{margin-top:auto;padding-bottom:5px;color:var(--m-ink)!important;border-color:var(--m-ink)!important;font-size:11px}
  .wood-cta{padding:64px 18px!important}

  /* Product detail: no autoplay media, use editorial still covers. */
  .pd-video{height:100svh!important;min-height:640px!important;background-color:#24241f;background-position:center;background-size:cover;background-repeat:no-repeat;border-radius:0 0 24px 24px}
  .pd-video>video{display:none!important}
  .pd-video:has(source[src*="phone-optimized.mp4"]){background-image:linear-gradient(180deg,rgba(12,13,10,.28),rgba(12,13,10,.12) 45%,rgba(12,13,10,.75)),url('../img/stand-card-09.webp')}
  .pd-video:has(source[src*="MM_video"]){background-image:linear-gradient(180deg,rgba(12,13,10,.38),rgba(12,13,10,.12) 42%,rgba(12,13,10,.78)),url('../img/mmg5.webp');background-position:center 46%}
  .pd-video--horeca{background-image:linear-gradient(180deg,rgba(12,13,10,.38),rgba(12,13,10,.12) 42%,rgba(12,13,10,.78)),url('../img/horeca-organizer-engraving.webp');background-position:center 70%}
  .pd-topnav{height:64px!important;padding:0 16px!important}
  .pd-brand{min-width:0;font-size:20px!important;white-space:nowrap}
  .pd-brand img{width:34px!important;height:34px!important}
  .pd-hero-copy{left:18px!important;right:18px!important;bottom:96px!important}
  .pd-hero-copy h1{max-width:100%;font-size:clamp(42px,12.8vw,54px)!important;line-height:.94!important;letter-spacing:-.055em!important;margin-bottom:22px!important;overflow-wrap:normal}
  .pd-eyebrow{font-size:9px;margin-bottom:18px}
  .pd-hero-side{padding-left:16px!important;max-width:100%!important}
  .pd-hero-side p{display:-webkit-box;max-width:calc(100vw - 54px);-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:12px;line-height:1.55;margin-bottom:0}
  .pd-down{display:none!important}
  .pd-subnav{height:58px;top:0}
  .pd-subnav strong{font-size:16px}
  .pd-intro,.pd-benefits,.pd-order{padding:52px 0!important}
  .pd-intro-grid{gap:30px!important}
  .pd-intro h2,.pd-material h2,.pd-order h2{font-size:40px!important}
  .pd-intro-copy>p{font-size:14px!important;line-height:1.7!important;margin-bottom:28px!important}
  .pd-section-tag{margin-bottom:24px}
  .pd-gallery{padding:0!important;margin:12px;border-radius:22px;overflow:hidden}
  .pd-gallery.pd-gallery--stand>.pd-shell{width:100%!important}
  .pd-gallery--stand .pd-gallery-aside{padding:38px 18px 28px!important}
  .pd-gallery-aside h2{font-size:38px!important}
  .pd-gallery--stand .pd-gallery-visual,.pd-gallery--stand .pd-rail{width:100%!important}
  .pd-gallery--stand .pd-rail{height:calc((100vw - 24px) * 1.18)!important;max-height:620px}
  .pd-gallery--stand .pd-gallery-aside .pd-gallery-controls{left:auto!important;right:18px!important;bottom:18px!important;transform:none!important;border-radius:18px}
  .pd-gallery-controls button{width:44px!important;height:44px!important}
  .pd-benefits article,.pd-benefits article+article{padding:22px 0!important}
  .pd-benefits h3{margin:28px 0 10px!important}
  .pd-material{margin:12px;border-radius:22px;overflow:hidden}
  .pd-material-media{min-height:78vw!important;max-height:430px}
  .pd-material-copy{padding:42px 20px!important}
  .pd-material-media--video video{display:block!important}
  .pd-use-grid{margin:0 12px 12px;border:1px solid var(--m-line);border-radius:20px;overflow:hidden;background:#fff}
  .pd-use-grid article{padding:24px 18px!important}
  .pd-use-grid h3{margin:22px 0 8px!important}
  .pd-footer{padding:34px 18px 26px!important}

  /* HoReCa and workshops share the same mobile reading rhythm. */
  .product-hero,.mc-hero{min-height:0!important;background:#f7f7f4}
  .hero-copy,.mc-hero-copy{padding:44px 18px 38px!important;overflow:hidden}
  .hero-copy h1,.mc-hero h1{max-width:100%;font-size:clamp(45px,13.5vw,58px)!important;line-height:.98!important;letter-spacing:-.06em!important;overflow-wrap:normal}
  .hero-copy>p,.mc-lead{width:100%!important;max-width:100%!important;font-size:13px!important;line-height:1.7!important;overflow-wrap:anywhere}
  .hero-photo,.mc-hero-visual{height:64svh!important;max-height:560px;border-radius:0 0 24px 24px;overflow:hidden}
  .product-intro,.mc-intro,.technical,.customization,.request,.mc-schedule,.mc-gallery,.service-cta-section,.registration-section{padding:52px 18px!important}
  .product-intro h2,.mc-intro h2,.technical h2,.customization h2,.request h2,.mc-section-head h2,.mc-gallery h2,.registration-section h2{font-size:40px!important;line-height:1.02!important}
  .use-cases,.custom-list,.mc-principles{margin-left:12px!important;margin-right:12px!important;border:1px solid var(--m-line);border-radius:20px;overflow:hidden;background:#fff}
  .use-cases article{min-height:160px!important;padding:24px 18px!important}
  .calendar-container,.workshops-list{padding:16px!important;border-radius:18px}
  .gallery-slider{height:105vw!important;max-height:500px!important;border-radius:20px;overflow:hidden}
  .registration-form,.request-form{margin-top:38px!important}
  .registration-form input,.registration-form select,.registration-form textarea,.request-form input,.request-form textarea{min-height:48px}
  .cta-button-large{width:112px!important;height:112px!important;margin-top:32px!important}
  .mc-footer,body>footer{padding-bottom:28px!important}
}

@media (max-width:380px){
  .mobile-tabbar{left:7px!important;width:calc(100vw - 14px)!important;max-width:calc(100vw - 14px)!important}
  .mobile-tabbar a{font-size:8px}
  .site-header .brand{font-size:21px!important}
  .pd-brand{font-size:18px!important}
  .pd-hero-copy{bottom:92px!important}
  .pd-hero-copy h1{font-size:42px!important}
  .hero-copy h1,.mc-hero h1{font-size:44px!important}
}

@media (prefers-reduced-motion:reduce){
  .mobile-tabbar{backdrop-filter:none}
}
