/* CIKEL Representaciones — hoja de estilos
   Identidad: blanco, negro y rojo del logo. Una sola familia (Archivo, Omnibus-Type),
   ancha y pesada en títulos, de ancho normal en texto. El rojo marca acciones,
   estados activos y el trazo de corte. La tizada animada es el único elemento llamativo. */

@font-face{font-family:Grotesk;src:url('/assets/fonts/grotesk.woff2') format('woff2-variations'),url('/assets/fonts/grotesk.woff2') format('woff2');font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap}

:root{
  --paper:#fff;--ink:#000;--text:#141414;--muted:#5c5f62;--rule:#dcdcd8;--table:#efefec;
  --red:#e00000;--red-dark:#b30000;--green:#178446;
  --margin:clamp(20px,5vw,72px);--max:1440px;
  --sans:Grotesk,Archivo,'Helvetica Neue',Arial,sans-serif;
  --ease-out:cubic-bezier(.22,1,.36,1);
  color:var(--text);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizeLegibility;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--paper)}
img,svg,canvas{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit;letter-spacing:inherit}
button{cursor:pointer;-webkit-tap-highlight-color:transparent}
h1,h2,h3,p,figure,ul,ol{margin:0}
h1,h2,h3{color:var(--ink);font-stretch:112%;font-weight:720;line-height:1;letter-spacing:-.025em;text-wrap:balance;overflow-wrap:break-word;hyphens:manual}
h1{font-size:clamp(38px,5vw,72px)}
h2{font-size:clamp(28px,3vw,44px);line-height:1.04}
h3{font-size:clamp(20px,1.7vw,24px);font-stretch:106%;font-weight:680;letter-spacing:-.012em;line-height:1.2}
p{max-width:66ch;text-wrap:pretty}
p+p{margin-top:1em}
.contact-block p+p,.stage-bar p+p,.footer p+p{margin-top:0}
::selection{background:var(--red);color:#fff}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
[hidden]{display:none!important}
.wrap{width:min(calc(100% - 2*var(--margin)),var(--max));margin-inline:auto}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:12px;left:12px;transform:translateY(-200%);z-index:100;background:var(--ink);color:#fff;padding:12px 18px;font-weight:600}
.skip-link:focus{transform:none}

/* Acciones */
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;font-size:15px;font-weight:620;line-height:1.2;border:1.5px solid transparent;text-align:center;transition:background-color .15s,color .15s,border-color .15s}
.button.primary{background:var(--red);color:#fff}
.button.primary:hover{background:var(--red-dark)}
.button.secondary{border-color:var(--ink);color:var(--ink)}
.button.secondary:hover{background:var(--ink);color:#fff}
.button.inverse{border-color:#fff;color:#fff}
.button.inverse:hover{background:#fff;color:var(--ink)}
.text-link{display:inline-block;font-size:15px;font-weight:620;color:var(--ink);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:6px;padding-block:6px;transition:color .15s}
.text-link:hover{color:var(--red)}
.lead{font-size:clamp(18px,1.4vw,20px);line-height:1.5}

/* Encabezado */
.site-header{background:var(--paper);border-bottom:1px solid var(--rule);position:relative;z-index:40}
.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{flex-shrink:0}
.brand img{width:69px;height:48px}
.navigation{display:flex;align-items:center;gap:clamp(20px,2.6vw,40px);font-size:15px;font-weight:570}
.navigation a{padding:10px 0;transition:color .15s}
.navigation a:hover,.navigation a[aria-current]{color:var(--red)}
.navigation .nav-contact{padding:9px 18px;border:1.5px solid var(--ink);color:var(--ink)}
.navigation .nav-contact:hover,.navigation .nav-contact[aria-current]{background:var(--ink);color:#fff}
.menu-button{display:none}

/* Portada */
.hero-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:24px 48px;align-items:end;padding-block:clamp(32px,4.4vw,64px) clamp(28px,3vw,44px)}
.hero h1{font-size:clamp(44px,6.1vw,96px);font-weight:790;line-height:.9;letter-spacing:-.04em;max-width:9.6em}
.hero-sub p{font-size:clamp(16px,1.25vw,18px);line-height:1.5;max-width:38ch;color:var(--text)}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;margin-top:22px}

.cutting-room{background:var(--table);border-block:1px solid var(--rule)}
#cutting-stage{position:relative;isolation:isolate;height:calc(min(100vw - 2*var(--margin),var(--max))*.2997 + 62px);max-height:60svh;min-height:240px;width:100%;touch-action:pan-y}
#cutting-stage canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;opacity:0;transition:opacity .35s}
.stage-ready #cutting-stage canvas{opacity:1}
#cutting-stage canvas:focus-visible{outline:2px solid var(--red);outline-offset:-2px}
.stage-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .3s}
.stage-ready .stage-fallback{opacity:0}

.stage-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px 32px;min-height:64px;padding-block:6px;border-top:1px solid var(--rule)}
.stage-controls{display:flex;margin-left:-12px}
.stage-controls button{position:relative;border:0;background:none;padding:12px 12px 16px;font-size:15px;font-weight:620;color:var(--muted);transition:color .15s}
.stage-controls button::before,.stage-controls button::after{content:'';position:absolute;left:12px;right:12px;bottom:8px;height:2px;background:#cfd0cc}
.stage-controls button::after{background:var(--red);transform-origin:left;transform:scaleX(var(--progress,0))}
.stage-controls button[aria-current=step]{color:var(--ink)}
.stage-controls button:hover{color:var(--ink)}
.stage-controls button:disabled{cursor:default;color:var(--muted)}
.stage-text{display:flex;align-items:baseline;gap:2px 14px;min-width:0;font-size:15px;line-height:1.35;max-width:none}
.stage-status{flex-shrink:0;min-width:11.5em;font-weight:640;color:var(--ink)}
.stage-hover{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:14px}
.stage-metric{display:flex;align-items:baseline;gap:10px;font-size:14px;line-height:1.35;color:var(--muted);white-space:nowrap}
.stage-metric strong{font-size:17px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;min-width:4.2em;text-align:right}
.stage-actions{display:flex;gap:8px}
.stage-button{display:inline-flex;align-items:center;gap:9px;height:40px;padding:0 14px;min-width:120px;justify-content:center;border:1px solid #c2c3bf;background:var(--paper);font-size:14px;font-weight:600;color:var(--ink);transition:border-color .15s}
.stage-button:hover{border-color:var(--ink)}
.stage-button:disabled{opacity:.55;cursor:default}
.stage-button[data-pause]::before{content:'';width:8px;height:11px;border-inline:2.5px solid currentColor}
.stage-button[data-playback=paused]::before{width:0;height:0;border:0;border-left:9px solid currentColor;border-block:6px solid transparent}
.stage-button[data-playback=ended]::before{width:14px;height:14px;border:0;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13.5 8A5.5 5.5 0 1 1 8 2.5h2.2' fill='none' stroke='%23000' stroke-width='2'/%3E%3Cpath d='M9 0l3.6 2.6L9 5.2z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13.5 8A5.5 5.5 0 1 1 8 2.5h2.2' fill='none' stroke='%23000' stroke-width='2'/%3E%3Cpath d='M9 0l3.6 2.6L9 5.2z'/%3E%3C/svg%3E") center/contain no-repeat}
.stage-zoom{width:40px;min-width:40px;justify-content:center;padding:0;position:relative}
.stage-zoom::before,.stage-zoom::after{content:'';position:absolute;width:14px;height:2px;background:currentColor;left:50%;top:50%;translate:-50% -50%}
.stage-zoom[data-zoom=in]::after{rotate:90deg}

/* Bloques de portada */
.statement{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:32px 64px;align-items:end;padding-block:clamp(72px,9vw,136px)}
.statement-text{font-size:clamp(24px,2.55vw,38px);line-height:1.2;letter-spacing:-.018em;font-weight:460;color:var(--ink);max-width:30ch}
.statement-aside p{font-size:16px;color:var(--muted);margin-bottom:14px}

.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:22px}
.section-head .text-link{white-space:nowrap}
.showcase{padding-bottom:clamp(72px,9vw,136px)}
.tabs{display:flex;border-bottom:1px solid var(--rule);margin-bottom:36px;overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs [role=tab]{position:relative;flex-shrink:0;background:none;border:0;padding:12px 0 16px;margin-right:clamp(24px,3vw,44px);font-size:clamp(20px,1.9vw,27px);font-stretch:110%;font-weight:680;letter-spacing:-.015em;color:#6b6e71;transition:color .15s}
.tabs [role=tab]:hover{color:var(--ink)}
.tabs [role=tab][aria-selected=true]{color:var(--ink)}
.tabs [role=tab][aria-selected=true]::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--red)}
.showcase-panel{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:32px 56px;align-items:center}
.showcase-photo,.product-photo,.detail-photo{position:relative;background:var(--table);overflow:hidden;aspect-ratio:3/2}
.showcase-photo img,.product-photo img,.detail-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:scale-down;padding:7%;mix-blend-mode:multiply}
[data-brand=gerber-accumark] img{object-fit:contain;padding:5%;mix-blend-mode:normal}
.product-kind{font-size:15px;color:var(--muted)}
.showcase-info .product-kind{margin-bottom:10px}
.showcase-info h3{font-size:clamp(28px,2.6vw,40px);font-stretch:112%;font-weight:730;letter-spacing:-.025em;line-height:1.02;margin-bottom:14px}
.showcase-info p:not(.product-kind){color:var(--text);max-width:40ch;margin-bottom:26px}

.brands{padding-bottom:clamp(72px,9vw,136px)}
.brand-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0 24px}
.brand-grid a{display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-height:128px;padding:16px 0 22px;border-top:1px solid var(--ink)}
.brand-name{font-size:clamp(20px,1.75vw,26px);font-stretch:112%;font-weight:730;letter-spacing:-.02em;line-height:1.05;color:var(--ink);transition:color .15s}
.brand-area{font-size:14px;color:var(--muted);line-height:1.35}
.brand-grid a:hover .brand-name{color:var(--red)}

.service-band{background:var(--ink);color:#fff;padding-block:clamp(72px,8vw,120px) clamp(56px,6vw,96px)}
.service-band :focus-visible{outline-color:#fff}
.service-copy{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:28px 64px;align-items:end;margin-bottom:clamp(44px,5vw,80px)}
.service-band h2{color:#fff;font-size:clamp(36px,4.6vw,72px);line-height:.94;letter-spacing:-.035em;font-weight:780;max-width:10em}
.service-band p{color:#d6d6d3;margin-bottom:24px;max-width:44ch}
.service-trazo{width:100%;height:auto}

.contact-band{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:28px 64px;align-items:end;padding-block:clamp(72px,8vw,120px)}
.contact-band h2{font-size:clamp(38px,4.8vw,72px);line-height:.94;letter-spacing:-.035em;font-weight:780;max-width:9em}
.contact-band p{color:var(--text);max-width:42ch}
.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:24px}
.contact-email{font-size:15px;font-weight:620;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:6px}
.contact-email:hover{color:var(--red)}
main>.contact-band:not(:first-child){border-top:1px solid var(--rule)}
.service-band+.contact-band{border-top:0}

/* Pie */
.footer{border-top:1px solid var(--ink);padding-block:44px 26px;font-size:15px}
.footer-main{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,5fr) minmax(0,3fr);gap:32px}
.footer-brand img{width:92px;height:64px}
.footer-contact p{max-width:none}
.footer-contact a:hover,.footer-nav a:hover,.footer-small a:hover{color:var(--red)}
.footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.footer-nav a{padding-block:6px}
.footer-contact a{display:inline-block;padding-block:4px}
.footer-small a{display:inline-block;padding-block:6px}
.footer-small{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;margin-top:40px;padding-top:18px;border-top:1px solid var(--rule);font-size:13px;color:var(--muted)}
.footer-small p{margin:0;max-width:none}
.footer-small a+a{margin-left:20px}
.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:50;width:52px;height:52px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;box-shadow:0 2px 10px rgba(0,0,0,.2);transition:transform .3s var(--ease-out),opacity .3s}
.whatsapp-float svg{width:25px}
.whatsapp-float:hover{background:#0f6b37}
.whatsapp-float.is-tucked{transform:translateY(96px);opacity:0;pointer-events:none}
body.menu-open .whatsapp-float{display:none}

/* Páginas interiores */
.breadcrumb{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:14px;color:var(--muted);margin-bottom:26px}
.breadcrumb>*{display:inline-block;padding-block:6px}
.breadcrumb a:hover{color:var(--red)}
.breadcrumb [aria-current]{color:var(--text)}
.page-intro{padding-block:clamp(40px,5vw,76px) clamp(32px,4vw,56px)}
.page-intro h1{max-width:16em}
.page-lead{font-size:clamp(18px,1.5vw,21px);line-height:1.5;color:var(--muted);margin-top:18px;max-width:54ch}

.catalog-section{padding-bottom:clamp(48px,6vw,88px)}
.filters{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:20px;border-bottom:1px solid var(--rule)}
.filters button{min-height:44px;padding:8px 16px;border:1px solid #c9cac6;background:var(--paper);font-size:15px;font-weight:570;transition:border-color .15s,background-color .15s}
.filters button:hover{border-color:var(--ink)}
.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.filter-status,.search-status{font-size:14px;color:var(--muted);padding:18px 0 22px;max-width:none}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 28px}
.product-card{display:block}
.product-card .product-photo{margin-bottom:18px}
.product-card h2{font-size:clamp(22px,1.8vw,26px);font-stretch:110%;font-weight:720;letter-spacing:-.02em;margin-bottom:8px;transition:color .15s}
.product-card p{font-size:15px;line-height:1.55;color:var(--muted)}
.product-card:hover h2{color:var(--red)}
.availability{font-size:15px;color:var(--muted);padding-top:48px}

.product-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px 56px;align-items:center;padding-block:clamp(20px,3vw,40px) clamp(28px,4vw,56px)}
.product-copy h1{font-size:clamp(40px,4.6vw,68px)}
.product-copy .product-kind{margin-top:14px}
.product-copy .lead{margin:22px 0 30px;max-width:36ch}
.detail-section{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:48px 9%;padding-block:clamp(48px,6vw,96px);border-top:1px solid var(--rule)}
.prose h2{font-size:clamp(26px,2.4vw,36px);margin-bottom:20px}
.prose h2:not(:first-child){margin-top:40px}
.prose p,.prose li{font-size:17px;line-height:1.7}
.prose ul{padding-left:1.1em;margin-top:18px}
.prose li+li{margin-top:8px}
.prose li::marker{color:var(--red)}
.prose a{text-decoration:underline;text-underline-offset:4px}
.prose a:hover{color:var(--red)}
.product-aside{border-top:1.5px solid var(--ink);padding-top:18px;align-self:start}
.product-aside h2{font-size:22px;font-stretch:108%;margin-bottom:10px}
.link-list{list-style:none;padding:0;margin-bottom:20px}
.link-list a{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 0;border-bottom:1px solid var(--rule);font-size:15px;font-weight:570;transition:color .15s}
.link-list a:hover{color:var(--red)}
.link-list span{font-size:13px;color:var(--muted);flex-shrink:0}
.product-aside>p{font-size:15px;color:var(--muted);margin-bottom:22px}
.product-aside>.text-link{display:table;margin-top:14px}

.about-story,.about-work{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:28px 64px;padding-block:clamp(48px,6vw,88px);border-top:1px solid var(--rule)}
.about-work .text-link{margin-top:18px}
.people{padding-block:clamp(48px,6vw,88px);border-top:1px solid var(--rule)}
.people>h2{margin-bottom:clamp(28px,3vw,44px)}
.people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 56px}
.people-grid article{border-top:1.5px solid var(--ink);padding-top:18px}
.people-grid h3{font-size:clamp(24px,2.2vw,32px);font-stretch:112%;font-weight:730;letter-spacing:-.025em}
.person-role{font-size:15px;color:var(--muted);margin-top:6px}
.people-grid article p:last-child{margin-top:14px}

.steps{padding-bottom:clamp(40px,5vw,72px)}
.step-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 28px}
.step-list li{border-top:1.5px solid var(--ink);padding-top:16px}
.step-number{display:block;font-size:15px;font-weight:700;color:var(--red);font-variant-numeric:tabular-nums;margin-bottom:32px}
.step-list h2{font-size:clamp(22px,1.9vw,28px);margin-bottom:10px}
.step-list p{font-size:15px;line-height:1.55;color:var(--muted)}
.service-figure{background:var(--table);padding-block:clamp(28px,3vw,44px) 22px}
.service-figure img{width:100%;height:auto}
.service-figure figcaption{font-size:14px;color:var(--muted);margin-top:14px}
.service-preparation{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px 64px;padding-block:clamp(56px,7vw,104px)}
.service-preparation .button{margin-top:26px}

.resources{padding-bottom:clamp(56px,7vw,104px)}
.search-label{display:block;max-width:560px;font-size:14px;font-weight:620;color:var(--ink)}
.search-label input{display:block;width:100%;margin-top:10px;padding:12px 0;border:0;border-bottom:1.5px solid var(--ink);border-radius:0;background:transparent;font-size:19px;font-weight:450;outline:none}
.search-label input::placeholder{color:#85888b}
.search-label input:focus-visible{border-bottom-color:var(--red);box-shadow:0 1.5px 0 var(--red)}
.resource-list{list-style:none;padding:0;border-top:1px solid var(--ink)}
.resource-entry a{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr) minmax(0,2fr);gap:8px 32px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--rule)}
.resource-entry h2{font-size:clamp(20px,1.7vw,24px);font-stretch:108%;letter-spacing:-.015em;transition:color .15s}
.resource-entry p{font-size:15px;color:var(--muted)}
.resource-count{font-size:14px;color:var(--muted);text-align:right}
.resource-entry a:hover h2{color:var(--red)}
.document-layout{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:48px 9%;padding-bottom:clamp(56px,7vw,104px)}
.document-images{display:grid;gap:16px;background:var(--table);padding:clamp(16px,2vw,28px);margin-bottom:36px}
.document-images.is-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.document-images.is-grid img:first-child{grid-column:1/-1}
.document-images.is-odd img:last-child{grid-column:1/-1}
.document-images img{width:100%;height:auto;max-height:440px;object-fit:contain;mix-blend-mode:multiply}

.contact-page{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:48px 8%;padding-bottom:clamp(56px,7vw,104px)}
.contact-block{border-top:1px solid var(--rule);padding:20px 0 26px}
.contact-block:first-child{border-top-color:var(--ink)}
.contact-label{font-size:14px;color:var(--muted);margin-bottom:6px}
.contact-block>a,.contact-value{display:inline-block;font-size:clamp(28px,3vw,44px);font-stretch:110%;font-weight:700;letter-spacing:-.025em;line-height:1.1;color:var(--ink);transition:color .15s}
.contact-block>a:hover{color:var(--red)}
.contact-sub{font-size:15px;margin-top:8px}
.contact-sub a{text-decoration:underline;text-underline-offset:4px}
.contact-sub a:hover{color:var(--red)}
.aside-link{margin-bottom:18px}
.product-crumb{padding-top:clamp(24px,3vw,40px)}
.product-crumb .breadcrumb{margin-bottom:0}
.contact-notes{background:var(--table);padding:clamp(24px,3vw,40px);align-self:start}
.contact-notes h2{font-size:clamp(24px,2.2vw,32px);margin-bottom:16px}
.contact-notes p,.contact-notes li{font-size:16px}
.contact-notes ul{padding-left:1.1em;margin:14px 0 26px}
.contact-notes li::marker{color:var(--red)}
.legal{padding-bottom:clamp(56px,7vw,104px)}
.legal h2{font-size:24px;font-stretch:108%;margin:36px 0 12px}
.legal h2:first-child{margin-top:0}
.legal ul{padding-left:1.1em}
.empty-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;padding-bottom:clamp(72px,9vw,136px)}

/* Pantallas grandes */
@media (min-width:1600px){.hero h1{font-size:100px}}

/* Notebooks bajas */
@media (min-width:861px) and (max-height:820px){.hero-head{padding-block:28px 24px}.hero h1{font-size:clamp(44px,5.4vw,84px)}#cutting-stage{max-height:52svh}}

@media (max-width:1180px){
  .stage-bar{column-gap:20px}
  .stage-status{min-width:10.5em}
  .stage-hover{display:none}
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .step-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:860px){
  body.menu-open{overflow:hidden}
  .header-inner{height:68px}
  .brand img{width:60px;height:42px}
  .menu-button{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:8px 0 8px 12px;border:0;background:none;font-size:15px;font-weight:620}
  .menu-icon{position:relative;width:20px;height:12px;border-block:2px solid currentColor;transition:border-color .2s}
  .menu-icon::after{content:'';position:absolute;left:0;right:0;top:3px;height:2px;background:currentColor;transition:rotate .2s}
  .menu-button[aria-expanded=true] .menu-icon{border-color:transparent}
  .menu-button[aria-expanded=true] .menu-icon::before{content:'';position:absolute;left:0;right:0;top:3px;height:2px;background:currentColor;rotate:45deg}
  .menu-button[aria-expanded=true] .menu-icon::after{rotate:-45deg}
  .navigation{display:none;position:absolute;top:68px;left:0;right:0;height:calc(100svh - 68px);flex-direction:column;align-items:stretch;gap:0;padding:12px var(--margin) 32px;background:var(--paper);border-top:1px solid var(--rule);font-size:24px;font-stretch:110%;font-weight:700;letter-spacing:-.02em}
  .navigation.is-open{display:flex}
  .navigation a{padding:14px 0;border-bottom:1px solid var(--rule)}
  .navigation .nav-contact{margin-top:24px;padding:14px 18px;text-align:center;font-size:17px;font-stretch:100%;letter-spacing:0;background:var(--ink);color:#fff}
  .hero-head{grid-template-columns:1fr;gap:18px}
  .hero h1{font-size:clamp(42px,11.6vw,72px)}
  .hero-sub p{max-width:46ch}
  #cutting-stage{height:clamp(220px,60vw,300px);max-height:none}
  .stage-bar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'tabs tabs' 'text actions' 'metric actions';padding-block:4px 12px;row-gap:0}
  .stage-controls{grid-area:tabs}
  .stage-text{grid-area:text;flex-direction:column;gap:0}
  .stage-hover{display:block}
  .stage-metric{grid-area:metric;font-size:13px}
  .stage-metric strong{font-size:14px;min-width:0;text-align:left}
  .stage-actions{grid-area:actions;align-self:center}
  .stage-button{min-width:0}
  .brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
  .tabs{flex-wrap:wrap;column-gap:0}
  .tabs [role=tab]{margin-right:22px}
  .statement,.service-copy,.contact-band,.service-preparation,.about-story,.about-work{grid-template-columns:1fr}
  .showcase-panel{grid-template-columns:1fr;gap:22px}
  .product-hero{grid-template-columns:1fr}
  .product-hero .detail-photo{order:-1}
  .detail-section,.document-layout,.contact-page{grid-template-columns:1fr}
  .resource-entry a{grid-template-columns:minmax(0,1fr) auto}
  .resource-entry p{grid-column:1;grid-row:2}
  .resource-count{grid-column:2;grid-row:1}
  .footer-main{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
}

@media (max-width:560px){
  body{font-size:16px}
  .page-intro h1,.product-copy h1{font-size:clamp(32px,9vw,44px);font-stretch:104%}
  .brand-grid a{min-height:112px}
  .catalog-grid,.people-grid,.step-list{grid-template-columns:1fr}
  .catalog-grid{gap:44px}
  .document-images.is-grid{grid-template-columns:1fr}
  .figure-scroll{overflow-x:auto;scrollbar-width:thin}
  .service-figure img{width:760px;max-width:none}
  .stage-button[data-pause]{padding:0 12px}
  .stage-hover{font-size:13px}
  .footer-main{grid-template-columns:1fr}
  .footer-small{flex-direction:column}
  .whatsapp-float{right:14px;bottom:14px;width:50px;height:50px}
  .prose p,.prose li{font-size:16px}
}

@media (max-width:360px){
  .stage-controls{margin-left:-10px}
  .stage-controls button{padding-inline:10px;font-size:14px}
  .stage-controls button::before,.stage-controls button::after{left:10px;right:10px}
  .hero-actions{gap:10px 20px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
